Class TCastleVector2Persistent

Unit

Declaration

type TCastleVector2Persistent = class(TCastleComponent)

Description

TVector2 record represented as a TPersistent descendant, to be able to visually edit it (in Lazarus and Delphi visual designer, and Castle Game Engine visual designer) and to serialize it.

Normal user code does not need to deal with this class or it's instances. Instead directly operate on TVector2 values, which is faster and more natural. TVector2 are simple records, so they are naturally copied on assignment, and various operators like additions work in a natural way too.

Hierarchy

Overview

Fields

Public InternalGetValue: TGetVector2Event;
Public InternalSetValue: TSetVector2Event;
Public InternalDefaultValue: TVector2;

Methods

Protected procedure Loaded; override;
Public constructor Create(const AOwner: TComponent = nil); reintroduce;
Public function HasDefaultValue: Boolean;
Public function PropertySections(const PropertyName: String): TPropertySections; override;

Properties

Public property Value: TVector2 read GetValue write SetValue;
Published property X: Single read GetX write SetX stored XIsStored nodefault;
Published property Y: Single read GetY write SetY stored YIsStored nodefault;

Description

Fields

Public InternalGetValue: TGetVector2Event;
 
Public InternalSetValue: TSetVector2Event;
 
Public InternalDefaultValue: TVector2;

Default value, just like Pascal "default" property attribute, is only used to decide which vector components to write to file.

It is your responsibility to make sure that this is really the default (right after creation) state of the object, and the deserialization will just not modify components not specified (it will not reset them to InternalDefaultValue value).

Methods

Protected procedure Loaded; override;
 
Public constructor Create(const AOwner: TComponent = nil); reintroduce;
 
Public function HasDefaultValue: Boolean;
 
Public function PropertySections(const PropertyName: String): TPropertySections; override;
 

Properties

Public property Value: TVector2 read GetValue write SetValue;
 
Published property X: Single read GetX write SetX stored XIsStored nodefault;
 
Published property Y: Single read GetY write SetY stored YIsStored nodefault;
 

Generated by PasDoc 0.16.0.