Sign in Join
FPDoc Onlineexperiment

TRttiXMLConfig class

In unit Laz2_XMLCfg

Implements an XML configuration file with RTTI support.

Declaration

pascal
TRttiXMLConfig = class(TXMLConfig)

Inheritance

  1. TRttiXMLConfig
  2. TXMLConfig
  3. TComponent
  4. TPersistent
  5. TObject

Description

TRttiXMLConfig is a TXMLConfig descendant which implements support for reading and writing objects and their property values using RTTI (Run-Time Type Information). TRttiXMLConfig extends the ancestor class to include methods used to read and write objects, or just specific properties, using path specifiers supported in the class. See the TXMLConfig Path Syntax topic for more information about path specifiers in TXMLConfig.

Type information provided by RTTI (Run-Time Type Information) is used to determine the value and formatting used for supported data types. Supported RTTI type kinds include:

  • tkChar
  • tkWChar
  • tkSString
  • tkLString
  • tkAString
  • tkInteger
  • tkFloat
  • tkEnumeration
  • tkSet
  • tkBool
  • tkClass
Properties must be implemented with both getter and setter procedures to be available for use in TRttiXMLConfig. Properties which do not use both types of procedure are ignored.

See also

Properties

CheckPropertyDefaultpublic
WriteAllNestedObjectspublic

Methods

WritePropertyprotectedWrites a property value from an object to the specified path in the XML Document.
ReadPropertyprotectedStores the value for the specified path to a property in an object instance.
WriteObjectpublicStores property values from an object to the specified path in the document.
ReadObjectpublicStores property values from the specified path to an object instance.

Inherited

From TXMLConfig (46)

Clear Create CreateClean CreateWithSource DeletePath DeleteValue Destroy Document ExtendedToStr Filename FindChildNode FindNode Flush FreeDoc GetCachedPathNode GetChildCount GetExtendedValue GetListItemCount GetListItemXPath GetValue HasChildPaths HasPath InternalCleanNode InternalFindNode InvalidateCacheTilEnd InvalidatePathCache IsLegacyList Loaded Modified ReadFlags ReadFromStream ReadXMLFile SetDeleteExtendedValue SetDeleteValue SetExtendedValue SetPathNodeCache SetValue SizeOfTypeInfo StringToValueWithTypeInfo StrToExtended TDomNodeArray TNodeCache ValueWithTypeInfoToString WriteFlags WriteToStream WriteXMLFile

From TComponent (73)

_AddRef _Release BeforeDestruction CanObserve ChangeName ComObject ComponentCount ComponentIndex Components ComponentState ComponentStyle DefineProperties DesignInfo DestroyComponents Destroying ExecuteAction FindComponent FreeNotification FreeOnRelease GetChildOwner GetChildParent GetChildren GetDeltaStreams GetEnumerator GetIDsOfNames GetNamePath GetObservers GetOwner GetParentComponent GetTypeInfo GetTypeInfoCount HasParent iicrGetComponent InsertComponent Invoke IsImplementorOf Loading Name Notification ObserverAdded Observers OnGetDeltaStreams Owner PaletteCreated QueryInterface ReadDeltaState ReadDeltaStream ReadState ReferenceInterface RemoveComponent RemoveFreeNotification RemoveFreeNotifications SafeCallException SetAncestor SetChildOrder SetDesigning SetDesignInstance SetInline SetName SetParentComponent SetSubComponent Tag ToString TToStringNameMode UpdateAction Updated UpdateRegistry Updating ValidateContainer ValidateInsert ValidateRename VCLComObject WriteState

From TPersistent (5)

Assign AssignTo FPOAttachObserver FPODetachObserver FPONotifyObservers

From TObject (37)

AfterConstruction CheckDisposed ClassInfo ClassName ClassNameIs ClassParent ClassType CleanupInstance DefaultHandler DefaultHandlerStr Dispatch DispatchStr Disposed DisposeOf Equals FieldAddress Free FreeInstance GetDisposed GetHashCode GetInterface GetInterfaceByStr GetInterfaceEntry GetInterfaceEntryByStr GetInterfaceTable GetInterfaceWeak GetLastCastErrorInfo InheritsFrom InitInstance InstanceSize MethodAddress MethodName newinstance QualifiedClassName StringMessageTable SystemHasExtendedRTTI UnitName

An experiment, built from development snapshots. Not the official Free Pascal or Lazarus documentation.