Class TX3DSimpleMultField

Unit

Declaration

type generic TX3DSimpleMultField<TItem;TSingleField;TItemList> = class(TX3DMultField)

Description

X3D field with a list of values. This is an ancestor of most multiple-value X3D fields.

Hierarchy

Overview

Methods

Public constructor Create(const AParentNode: TX3DFileItem; const AExposed: boolean; const AName: string; const InitialContent: array of TItem);
Public constructor CreateUndefined(const AParentNode: TX3DFileItem; const AExposed: boolean; const AName: string); override;
Public destructor Destroy; override;
Public procedure Assign(Source: TPersistent); override;
Public procedure AssignValue(Source: TX3DField); override;
Public procedure AssignDefaultValueFromValue; override;
Public procedure UnassignDefaultValue; override;
Public procedure ParseValue(Lexer: TX3DLexer; Reader: TX3DReader); override;
Public function Equals(SecondValue: TX3DField): boolean; override;
Public function EqualsDefaultValue: boolean; override;
Public procedure ParseXMLAttributeLexer(Lexer: TX3DLexer; Reader: TX3DReader); override;
Public procedure Send(const AValue: array of TItem); overload;
Public procedure Send(const AValue: TItemList); overload;

Properties

Public property Items: TItemList read GetItems write SetItems;
Public property ItemsSafe[Index:Integer]: TItem read GetItemsSafe write SetItemsSafe;

Description

Methods

Public constructor Create(const AParentNode: TX3DFileItem; const AExposed: boolean; const AName: string; const InitialContent: array of TItem);
 
Public constructor CreateUndefined(const AParentNode: TX3DFileItem; const AExposed: boolean; const AName: string); override;
 
Public destructor Destroy; override;
 
Public procedure Assign(Source: TPersistent); override;

Copy another field value, default value and other properties.

Public procedure AssignValue(Source: TX3DField); override;
 
Public procedure AssignDefaultValueFromValue; override;
 
Public procedure UnassignDefaultValue; override;
 
Public procedure ParseValue(Lexer: TX3DLexer; Reader: TX3DReader); override;

Parse MF field. This class handles parsing fully, usually no need to override this more in descendants. It uses TSingleField.Parse method.

Public function Equals(SecondValue: TX3DField): boolean; override;

Checks equality between this and SecondValue field. In addition to inherited(Equals), this checks the actual contents of the items. Note that floating-point values are compared with some tolerance for errors by this method.

Public function EqualsDefaultValue: boolean; override;
 
Public procedure ParseXMLAttributeLexer(Lexer: TX3DLexer; Reader: TX3DReader); override;
 
Public procedure Send(const AValue: array of TItem); overload;

Set the field's value in a correct way (by sending X3D event, or at least notifying the parent scene).

Public procedure Send(const AValue: TItemList); overload;
 

Properties

Public property Items: TItemList read GetItems write SetItems;
 
Public property ItemsSafe[Index:Integer]: TItem read GetItemsSafe write SetItemsSafe;

Access items, making nice warning in case of an invalid index. In case of an invalid index, getting will return default value (filled with zeroes), setting will do nothing, and both will emit user-friendly WritelnWarning.


Generated by PasDoc 0.16.0.