Docs: PropertyStorage finished, many questions remain

git-svn-id: trunk@33059 -
This commit is contained in:
dodi 2011-10-23 22:08:09 +00:00
parent 0abf333b88
commit ac416a3a38

View File

@ -41,20 +41,20 @@
</element> </element>
<!-- alias type Visibility: default --> <!-- alias type Visibility: default -->
<element name="TStoredType"> <element name="TStoredType">
<short>[?]</short> <short>An AnsiString or Variant, holding the property values.[?]</short>
<descr/> <descr/>
<seealso/> <seealso/>
</element> </element>
<!-- procedure type Visibility: default --> <!-- procedure type Visibility: default -->
<element name="TStoredValueEvent"> <element name="TStoredValueEvent">
<short>Type of an TStoredValue.OnRestore notification handler.</short> <short>Type of an TStoredValue.OnSave and OnRestore notification handler.</short>
<descr>Called after a property has been restored. <descr>Called before a property is saved, after a it has been restored.
</descr> </descr>
<seealso/> <seealso/>
</element> </element>
<!-- argument Visibility: default --> <!-- argument Visibility: default -->
<element name="TStoredValueEvent.Sender"> <element name="TStoredValueEvent.Sender">
<short>The value object.</short> <short>[?]</short>
</element> </element>
<!-- argument Visibility: default --> <!-- argument Visibility: default -->
<element name="TStoredValueEvent.Value"> <element name="TStoredValueEvent.Value">
@ -62,7 +62,7 @@
</element> </element>
<!-- object Visibility: default --> <!-- object Visibility: default -->
<element name="TStoredValue"> <element name="TStoredValue">
<short>[?]</short> <short>A key/value pair, representing an property value, with added Save/Restore features.</short>
<descr/> <descr/>
<errors/> <errors/>
<seealso/> <seealso/>
@ -81,12 +81,11 @@
<element name="TStoredValue.GetStoredValues.Result"><short/></element> <element name="TStoredValue.GetStoredValues.Result"><short/></element>
<!-- function Visibility: protected --> <!-- function Visibility: protected -->
<element name="TStoredValue.GetDisplayName"> <element name="TStoredValue.GetDisplayName">
<short>[?]</short> <short>Overridden to return FName/Name.</short>
<descr/> <descr/>
<errors/> <errors/>
<seealso/> <seealso/>
</element> </element>
<!-- function result Visibility: default -->
<element name="TStoredValue.GetDisplayName.Result"><short/></element> <element name="TStoredValue.GetDisplayName.Result"><short/></element>
<!-- procedure Visibility: protected --> <!-- procedure Visibility: protected -->
<element name="TStoredValue.SetDisplayName" link="TStoredValue.Name"/> <element name="TStoredValue.SetDisplayName" link="TStoredValue.Name"/>
@ -99,64 +98,73 @@
<element name="TStoredValue.Assign.Source"><short/></element> <element name="TStoredValue.Assign.Source"><short/></element>
<!-- procedure Visibility: public --> <!-- procedure Visibility: public -->
<element name="TStoredValue.Clear"> <element name="TStoredValue.Clear">
<short>[?]</short> <short>Sets Value to the empty string.</short>
<descr/> <descr/>
<errors/> <errors/>
<seealso/> <seealso/>
</element> </element>
<!-- procedure Visibility: public --> <!-- procedure Visibility: public -->
<element name="TStoredValue.Save"> <element name="TStoredValue.Save">
<short>[?]</short> <short>Saves the value, after invocation of the OnSave handler.
</short>
<descr/> <descr/>
<errors/> <errors/>
<seealso/> <seealso>
<link id="TStoredValue.OnSave"/>
<link id="TStoredValue.StoredValues"/>
</seealso>
</element> </element>
<!-- procedure Visibility: public --> <!-- procedure Visibility: public -->
<element name="TStoredValue.Restore"> <element name="TStoredValue.Restore">
<short>[?]</short> <short>Reads the value and notifies the OnRestore handler.</short>
<descr/> <descr/>
<errors/> <errors/>
<seealso/> <seealso>
<link id="TStoredValue.OnRestore"/>
<link id="TStoredValue.StoredValues"/>
</seealso>
</element> </element>
<!-- property Visibility: public --> <!-- property Visibility: public -->
<element name="TStoredValue.StoredValues"> <element name="TStoredValue.StoredValues">
<short>[?]</short> <short>The Collection containing this object.</short>
<descr/> <descr>The collection has a Storage property,
used to Save and Restore the value.
</descr>
<seealso/> <seealso/>
</element> </element>
<!-- property Visibility: published --> <!-- property Visibility: published -->
<element name="TStoredValue.Name"> <element name="TStoredValue.Name">
<short>[?]</short> <short>The name of the property.</short>
<descr/> <descr/>
<seealso/> <seealso/>
</element> </element>
<!-- property Visibility: published --> <!-- property Visibility: published -->
<element name="TStoredValue.Value"> <element name="TStoredValue.Value">
<short>[?]</short> <short>The value of the property (as String or Variant).</short>
<descr/> <descr/>
<seealso/> <seealso/>
</element> </element>
<!-- property Visibility: published --> <!-- property Visibility: published -->
<element name="TStoredValue.KeyString"> <element name="TStoredValue.KeyString">
<short>[?]</short> <short>Encryption key, empty for no encryption.</short>
<descr/> <descr/>
<seealso/> <seealso/>
</element> </element>
<!-- property Visibility: published --> <!-- property Visibility: published -->
<element name="TStoredValue.OnSave"> <element name="TStoredValue.OnSave">
<short>[?]</short> <short>This handler is invoked before the value is stored.</short>
<descr/> <descr/>
<seealso/> <seealso/>
</element> </element>
<!-- property Visibility: published --> <!-- property Visibility: published -->
<element name="TStoredValue.OnRestore"> <element name="TStoredValue.OnRestore">
<short>[?]</short> <short>This handler is invoked after the value has been loaded.</short>
<descr/> <descr/>
<seealso/> <seealso/>
</element> </element>
<!-- object Visibility: default --> <!-- object Visibility: default -->
<element name="TStoredValues"> <element name="TStoredValues">
<short>[?]</short> <short>A collection of property name/value pairs.</short>
<descr/> <descr/>
<errors/> <errors/>
<seealso/> <seealso/>
@ -192,58 +200,71 @@
<element name="TStoredValues.Create.AOwner"><short/></element> <element name="TStoredValues.Create.AOwner"><short/></element>
<!-- function Visibility: public --> <!-- function Visibility: public -->
<element name="TStoredValues.IndexOf"> <element name="TStoredValues.IndexOf">
<short>[?]</short> <short>Given the name of a property, returns the index of the Item object.
</short>
<descr/> <descr/>
<errors/> <errors/>
<seealso/> <seealso>
</seealso>
</element> </element>
<element name="TStoredValues.IndexOf.Result"><short/></element> <element name="TStoredValues.IndexOf.Result"><short/></element>
<element name="TStoredValues.IndexOf.AName"><short/></element> <element name="TStoredValues.IndexOf.AName"><short/></element>
<!-- procedure Visibility: public --> <!-- procedure Visibility: public -->
<element name="TStoredValues.SaveValues"> <element name="TStoredValues.SaveValues">
<short>[?]</short> <short>Saves all Items into Storage.</short>
<descr/> <descr/>
<errors/> <errors/>
<seealso/> <seealso>
<link id="TStoredValues.Storage"/>
</seealso>
</element> </element>
<!-- procedure Visibility: public --> <!-- procedure Visibility: public -->
<element name="TStoredValues.RestoreValues"> <element name="TStoredValues.RestoreValues">
<short>[?]</short> <short>Loads all existing Items from Storage.
<descr/> </short>
<descr>The named Items objects must have been created already.
</descr>
<errors/> <errors/>
<seealso/> <seealso>
<link id="TStoredValues.Storage"/>
</seealso>
</element> </element>
<!-- property Visibility: public --> <!-- property Visibility: public -->
<element name="TStoredValues.Storage"> <element name="TStoredValues.Storage">
<short>[?]</short> <short>The virtual storage object, used to Save and Restore the Values.
</short>
<descr/> <descr/>
<seealso/> <seealso/>
</element> </element>
<!-- property Visibility: public --> <!-- property Visibility: public -->
<element name="TStoredValues.Items"> <element name="TStoredValues.Items">
<short>[?]</short> <short>The indexed list of all key/value pairs.
</short>
<descr/> <descr/>
<seealso/> <seealso/>
</element> </element>
<element name="TStoredValues.Items.Index"><short/></element> <element name="TStoredValues.Items.Index"><short/></element>
<!-- property Visibility: public --> <!-- property Visibility: public -->
<element name="TStoredValues.Values"> <element name="TStoredValues.Values">
<short>[?]</short> <short>The list of key/value pairs, accessible by their key names.
</short>
<descr/> <descr/>
<seealso/> <seealso/>
</element> </element>
<element name="TStoredValues.Values.Name"><short/></element> <element name="TStoredValues.Values.Name"><short/></element>
<!-- property Visibility: public --> <!-- property Visibility: public -->
<element name="TStoredValues.StoredValue"> <element name="TStoredValues.StoredValue">
<short>[?]</short> <short>Retrieves the value for an given key name.</short>
<descr/> <descr/>
<seealso/> <seealso/>
</element> </element>
<element name="TStoredValues.StoredValue.Name"><short/></element> <element name="TStoredValues.StoredValue.Name"><short/></element>
<!-- object Visibility: default --> <!-- object Visibility: default -->
<element name="TPropertyStorageLink"> <element name="TPropertyStorageLink">
<short>[?]</short> <short>Links a storage object to a property collection.
<descr/> </short>
<descr>Not very useful by itself, Load/Save depends on installed handlers.
</descr>
<errors/> <errors/>
<seealso/> <seealso/>
</element> </element>
@ -259,14 +280,16 @@
<element name="TPropertyStorageLink.SetStorage.Value"><short/></element> <element name="TPropertyStorageLink.SetStorage.Value"><short/></element>
<!-- procedure Visibility: protected --> <!-- procedure Visibility: protected -->
<element name="TPropertyStorageLink.SaveProperties"> <element name="TPropertyStorageLink.SaveProperties">
<short>[?]</short> <short>Invokes the OnSave handler.
</short>
<descr/> <descr/>
<errors/> <errors/>
<seealso/> <seealso/>
</element> </element>
<!-- procedure Visibility: protected --> <!-- procedure Visibility: protected -->
<element name="TPropertyStorageLink.LoadProperties"> <element name="TPropertyStorageLink.LoadProperties">
<short>[?]</short> <short>Invokes the OnLoad handler.
</short>
<descr/> <descr/>
<errors/> <errors/>
<seealso/> <seealso/>
@ -275,32 +298,45 @@
<element name="TPropertyStorageLink.Destroy"/> <element name="TPropertyStorageLink.Destroy"/>
<!-- property Visibility: public --> <!-- property Visibility: public -->
<element name="TPropertyStorageLink.Storage"> <element name="TPropertyStorageLink.Storage">
<short>[?]</short> <short>Refers to the concrete Storage object.
</short>
<descr/> <descr/>
<seealso/> <seealso/>
</element> </element>
<!-- property Visibility: public --> <!-- property Visibility: public -->
<element name="TPropertyStorageLink.RootSection"> <element name="TPropertyStorageLink.RootSection">
<short>[?]</short> <short>The path to the root of the Storage object.
</short>
<descr/> <descr/>
<seealso/> <seealso/>
</element> </element>
<!-- property Visibility: public --> <!-- property Visibility: public -->
<element name="TPropertyStorageLink.OnSave"> <element name="TPropertyStorageLink.OnSave">
<short>[?]</short> <short>Supply your handler for saving all properties. [almost unused?]
</short>
<descr/> <descr/>
<seealso/> <seealso>
<link id="TPropertyStorageLink.SaveProperties"/>
<link id="TPropertyStorageLink.OnLoad"/>
</seealso>
</element> </element>
<!-- property Visibility: public --> <!-- property Visibility: public -->
<element name="TPropertyStorageLink.OnLoad"> <element name="TPropertyStorageLink.OnLoad">
<short>[?]</short> <short>Supply your handler for loading all properties. [almost unused?]
</short>
<descr/> <descr/>
<seealso/> <seealso>
<link id="TPropertyStorageLink.LoadProperties"/>
<link id="TPropertyStorageLink.OnSave"/>
</seealso>
</element> </element>
<!-- object Visibility: default --> <!-- object Visibility: default -->
<element name="TCustomPropertyStorage"> <element name="TCustomPropertyStorage">
<short>[?]</short> <short>Provides abstract means to Save/Restore properties.
<descr/> </short>
<descr>[...?]
There seem to exist multiple ways to implement a concrete storage[describe?]
</descr>
<errors/> <errors/>
<seealso/> <seealso/>
</element> </element>
@ -311,19 +347,19 @@
<element name="TCustomPropertyStorage.FActive" link="TCustomPropertyStorage.Active"/> <element name="TCustomPropertyStorage.FActive" link="TCustomPropertyStorage.Active"/>
<!-- variable Visibility: private --> <!-- variable Visibility: private -->
<element name="TCustomPropertyStorage.FLinks"> <element name="TCustomPropertyStorage.FLinks">
<short>[?]</short> <short>The list of linked property collections[?]</short>
<descr/> <descr/>
<seealso/> <seealso/>
</element> </element>
<!-- variable Visibility: private --> <!-- variable Visibility: private -->
<element name="TCustomPropertyStorage.FSaved"> <element name="TCustomPropertyStorage.FSaved">
<short>[?]</short> <short>True when everything has been saved[?]</short>
<descr/> <descr/>
<seealso/> <seealso/>
</element> </element>
<!-- variable Visibility: private --> <!-- variable Visibility: private -->
<element name="TCustomPropertyStorage.FRestored"> <element name="TCustomPropertyStorage.FRestored">
<short>[?]</short> <short>True when everything has been restored[?]</short>
<descr/> <descr/>
<seealso/> <seealso/>
</element> </element>
@ -332,7 +368,8 @@
<element name="TCustomPropertyStorage.FOnRestoreProperties" link="TCustomPropertyStorage.OnRestoreProperties"/> <element name="TCustomPropertyStorage.FOnRestoreProperties" link="TCustomPropertyStorage.OnRestoreProperties"/>
<!-- procedure Visibility: private --> <!-- procedure Visibility: private -->
<element name="TCustomPropertyStorage.AddLink"> <element name="TCustomPropertyStorage.AddLink">
<short>[?]</short> <short>Establish a connection to a property collection.
</short>
<descr/> <descr/>
<errors/> <errors/>
<seealso/> <seealso/>
@ -340,7 +377,8 @@
<element name="TCustomPropertyStorage.AddLink.ALink"><short/></element> <element name="TCustomPropertyStorage.AddLink.ALink"><short/></element>
<!-- procedure Visibility: private --> <!-- procedure Visibility: private -->
<element name="TCustomPropertyStorage.RemoveLink"> <element name="TCustomPropertyStorage.RemoveLink">
<short>[?]</short> <short>Drop the connection to a property collection.
</short>
<descr/> <descr/>
<errors/> <errors/>
<seealso/> <seealso/>
@ -348,49 +386,31 @@
<element name="TCustomPropertyStorage.RemoveLink.ALink"><short/></element> <element name="TCustomPropertyStorage.RemoveLink.ALink"><short/></element>
<!-- procedure Visibility: private --> <!-- procedure Visibility: private -->
<element name="TCustomPropertyStorage.NotifyLinks"> <element name="TCustomPropertyStorage.NotifyLinks">
<short>[?]</short> <short>Notifies all connected property collections.</short>
<descr/> <descr>[purpose?]
</descr>
<errors/> <errors/>
<seealso/> <seealso/>
</element> </element>
<element name="TCustomPropertyStorage.NotifyLinks.Operation"><short/></element> <element name="TCustomPropertyStorage.NotifyLinks.Operation"><short/></element>
<!-- procedure Visibility: private --> <!-- procedure Visibility: private -->
<element name="TCustomPropertyStorage.SetStoredValues"> <element name="TCustomPropertyStorage.SetStoredValues" link="TCustomPropertyStorage.StoredValues"/>
<short>[?]</short>
<descr/>
<errors/>
<seealso/>
</element>
<element name="TCustomPropertyStorage.SetStoredValues.Value"><short/></element> <element name="TCustomPropertyStorage.SetStoredValues.Value"><short/></element>
<!-- function Visibility: private --> <!-- function Visibility: private -->
<element name="TCustomPropertyStorage.GetStoredValue"> <element name="TCustomPropertyStorage.GetStoredValue" link="TCustomPropertyStorage.StoredValue"/>
<short>[?]</short>
<descr/>
<errors/>
<seealso/>
</element>
<element name="TCustomPropertyStorage.GetStoredValue.Result"><short/></element> <element name="TCustomPropertyStorage.GetStoredValue.Result"><short/></element>
<element name="TCustomPropertyStorage.GetStoredValue.AName"><short/></element> <element name="TCustomPropertyStorage.GetStoredValue.AName"><short/></element>
<!-- procedure Visibility: private --> <!-- procedure Visibility: private -->
<element name="TCustomPropertyStorage.SetStoredValue"> <element name="TCustomPropertyStorage.SetStoredValue" link="TCustomPropertyStorage.StoredValue"/>
<short>[?]</short>
<descr/>
<errors/>
<seealso/>
</element>
<element name="TCustomPropertyStorage.SetStoredValue.AName"><short/></element> <element name="TCustomPropertyStorage.SetStoredValue.AName"><short/></element>
<element name="TCustomPropertyStorage.SetStoredValue.Value"><short/></element> <element name="TCustomPropertyStorage.SetStoredValue.Value"><short/></element>
<!-- function Visibility: protected --> <!-- function Visibility: protected -->
<element name="TCustomPropertyStorage.GetRoot"> <element name="TCustomPropertyStorage.GetRoot" link="TCustomPropertyStorage.Root"/>
<short>[?]</short>
<descr/>
<errors/>
<seealso/>
</element>
<element name="TCustomPropertyStorage.GetRoot.Result"><short/></element> <element name="TCustomPropertyStorage.GetRoot.Result"><short/></element>
<!-- function Visibility: protected --> <!-- function Visibility: protected -->
<element name="TCustomPropertyStorage.RootSection"> <element name="TCustomPropertyStorage.RootSection">
<short>[?]</short> <short>Constructs the path name to this section, from the Owners of the Root object.
</short>
<descr/> <descr/>
<errors/> <errors/>
<seealso/> <seealso/>
@ -398,21 +418,21 @@
<element name="TCustomPropertyStorage.RootSection.Result"><short/></element> <element name="TCustomPropertyStorage.RootSection.Result"><short/></element>
<!-- procedure Visibility: protected --> <!-- procedure Visibility: protected -->
<element name="TCustomPropertyStorage.SaveProperties"> <element name="TCustomPropertyStorage.SaveProperties">
<short>[?]</short> <short>Saves all linked property collections[?]</short>
<descr/> <descr/>
<errors/> <errors/>
<seealso/> <seealso/>
</element> </element>
<!-- procedure Visibility: protected --> <!-- procedure Visibility: protected -->
<element name="TCustomPropertyStorage.RestoreProperties"> <element name="TCustomPropertyStorage.RestoreProperties">
<short>[?]</short> <short>Restores all linked property collections[?]</short>
<descr/> <descr/>
<errors/> <errors/>
<seealso/> <seealso/>
</element> </element>
<!-- procedure Visibility: protected --> <!-- procedure Visibility: protected -->
<element name="TCustomPropertyStorage.GetPropertyList"> <element name="TCustomPropertyStorage.GetPropertyList">
<short>[?]</short> <short>Builds a list of all linked propery collections[?]</short>
<descr/> <descr/>
<errors/> <errors/>
<seealso/> <seealso/>
@ -420,15 +440,18 @@
<element name="TCustomPropertyStorage.GetPropertyList.List"><short/></element> <element name="TCustomPropertyStorage.GetPropertyList.List"><short/></element>
<!-- procedure Visibility: protected --> <!-- procedure Visibility: protected -->
<element name="TCustomPropertyStorage.FinishPropertyList"> <element name="TCustomPropertyStorage.FinishPropertyList">
<short>[?]</short> <short>set Objects (i.e. the component of each property)[?]</short>
<descr/> <descr>[?]Reads the Strings[] in the list,
retrieves and stores the associated Root or Component object in Objects[].
</descr>
<errors/> <errors/>
<seealso/> <seealso/>
</element> </element>
<element name="TCustomPropertyStorage.FinishPropertyList.List"><short/></element> <element name="TCustomPropertyStorage.FinishPropertyList.List"><short/></element>
<!-- function Visibility: protected --> <!-- function Visibility: protected -->
<element name="TCustomPropertyStorage.DoReadInteger"> <element name="TCustomPropertyStorage.DoReadInteger">
<short>[?]</short> <short>Reads an integer value, stored as a string.
</short>
<descr/> <descr/>
<errors/> <errors/>
<seealso/> <seealso/>
@ -439,28 +462,49 @@
<element name="TCustomPropertyStorage.DoReadInteger.DefaultValue"><short/></element> <element name="TCustomPropertyStorage.DoReadInteger.DefaultValue"><short/></element>
<!-- function Visibility: protected --> <!-- function Visibility: protected -->
<element name="TCustomPropertyStorage.DoReadString"> <element name="TCustomPropertyStorage.DoReadString">
<short>[?]</short> <short>Default OnReadString handler, must be overridden!
<descr/> </short>
<descr>[How to implement an OnReadString handler?]
[template where?]
</descr>
<errors/> <errors/>
<seealso/> <seealso/>
</element> </element>
<element name="TCustomPropertyStorage.DoReadString.Result"><short/></element> <element name="TCustomPropertyStorage.DoReadString.Result">
<element name="TCustomPropertyStorage.DoReadString.Section"><short/></element> <short>The previously stored string.</short>
<element name="TCustomPropertyStorage.DoReadString.Ident"><short/></element> </element>
<element name="TCustomPropertyStorage.DoReadString.DefaultValue"><short/></element> <element name="TCustomPropertyStorage.DoReadString.Section">
<short>[?]</short>
</element>
<element name="TCustomPropertyStorage.DoReadString.Ident">
<short>[?]</short>
</element>
<element name="TCustomPropertyStorage.DoReadString.DefaultValue">
<short>The default value, when no string was stored.</short>
</element>
<!-- procedure Visibility: protected --> <!-- procedure Visibility: protected -->
<element name="TCustomPropertyStorage.DoWriteString"> <element name="TCustomPropertyStorage.DoWriteString">
<short>[?]</short> <short>Default OnWriteString handler, must be overridden!
<descr/> </short>
<descr>[How to implement an OnWriteString handler?]
[template where?]
</descr>
<errors/> <errors/>
<seealso/> <seealso/>
</element> </element>
<element name="TCustomPropertyStorage.DoWriteString.Section"><short/></element> <element name="TCustomPropertyStorage.DoWriteString.Section">
<element name="TCustomPropertyStorage.DoWriteString.Ident"><short/></element> <short>The name of the section.</short>
<element name="TCustomPropertyStorage.DoWriteString.Value"><short/></element> </element>
<element name="TCustomPropertyStorage.DoWriteString.Ident">
<short>The name (key) of the property.</short>
</element>
<element name="TCustomPropertyStorage.DoWriteString.Value">
<short>The value string to store.</short>
</element>
<!-- procedure Visibility: protected --> <!-- procedure Visibility: protected -->
<element name="TCustomPropertyStorage.DoWriteInteger"> <element name="TCustomPropertyStorage.DoWriteInteger">
<short>[?]</short> <short>Writes an Integer value as a String.
</short>
<descr/> <descr/>
<errors/> <errors/>
<seealso/> <seealso/>
@ -471,7 +515,8 @@
<!-- procedure Visibility: protected --> <!-- procedure Visibility: protected -->
<element name="TCustomPropertyStorage.DoEraseSections"> <element name="TCustomPropertyStorage.DoEraseSections">
<short>[?]</short> <short>[?]</short>
<descr/> <descr>Must be overridden [how?]
</descr>
<errors/> <errors/>
<seealso/> <seealso/>
</element> </element>
@ -483,21 +528,55 @@
<element name="TCustomPropertyStorage.Destroy"/> <element name="TCustomPropertyStorage.Destroy"/>
<!-- procedure Visibility: public --> <!-- procedure Visibility: public -->
<element name="TCustomPropertyStorage.Save"> <element name="TCustomPropertyStorage.Save">
<short>[?]</short> <short>Saves all linked property collections[?]</short>
<descr/> <descr>
<p>
Uses SaveProperties and [or?] StoredValues.SaveValues to do the actual work.
At least one of these should be implemented. [supply links?]
</p><p>
All linked property collections are notified,
when everything has been stored, or to actually store their values[???].
</p><p>
The OnSavingProperties handler is invoked before the properties are stored,
OnSaveProperties afterwards.
</p>
</descr>
<errors/> <errors/>
<seealso/> <seealso>
<link id="TCustomPropertyStorage.SaveProperties"/>
<link id="TCustomPropertyStorage.OnSaveProperties"/>
<link id="TCustomPropertyStorage.OnSavingProperties"/>
<link id="TCustomPropertyStorage.StoredValues"/>
<link id="TCustomPropertyStorage.NotifyLinks"/>
</seealso>
</element> </element>
<!-- procedure Visibility: public --> <!-- procedure Visibility: public -->
<element name="TCustomPropertyStorage.Restore"> <element name="TCustomPropertyStorage.Restore">
<short>[?]</short> <short>Restores all linked property collections[?]</short>
<descr/> <descr>
<p>
Uses RestoreProperties and [or?] StoredValues.RestoreValues to do the actual work.
At least one of these should be implemented. [supply links?]
</p><p>
All linked property collections are notified,
when everything has been restored, or to actually restore the values[???].
</p><p>
The OnRestoringProperties handler is invoked before the properties are restored,
OnRestoreProperties afterwards.
</p>
</descr>
<errors/> <errors/>
<seealso/> <seealso>
<link id="TCustomPropertyStorage.RestoreProperties"/>
<link id="TCustomPropertyStorage.OnRestoreProperties"/>
<link id="TCustomPropertyStorage.OnRestoringProperties"/>
<link id="TCustomPropertyStorage.StoredValues"/>
<link id="TCustomPropertyStorage.NotifyLinks"/>
</seealso>
</element> </element>
<!-- procedure Visibility: protected --> <!-- procedure Visibility: protected -->
<element name="TCustomPropertyStorage.StorageNeeded"> <element name="TCustomPropertyStorage.StorageNeeded">
<short>[?]</short> <short>Override this to provied a storage object[???]</short>
<descr/> <descr/>
<errors/> <errors/>
<seealso/> <seealso/>
@ -505,14 +584,15 @@
<element name="TCustomPropertyStorage.StorageNeeded.ReadOnly"><short/></element> <element name="TCustomPropertyStorage.StorageNeeded.ReadOnly"><short/></element>
<!-- procedure Visibility: protected --> <!-- procedure Visibility: protected -->
<element name="TCustomPropertyStorage.FreeStorage"> <element name="TCustomPropertyStorage.FreeStorage">
<short>[?]</short> <short>Override this method to release your storage.[???]</short>
<descr/> <descr/>
<errors/> <errors/>
<seealso/> <seealso/>
</element> </element>
<!-- function Visibility: public --> <!-- function Visibility: public -->
<element name="TCustomPropertyStorage.ReadBoolean"> <element name="TCustomPropertyStorage.ReadBoolean">
<short>[?]</short> <short>Reads an Boolean value, stored as a string.
</short>
<descr> <descr>
</descr> </descr>
<errors> <errors>
@ -531,7 +611,8 @@
</element> </element>
<!-- function Visibility: public --> <!-- function Visibility: public -->
<element name="TCustomPropertyStorage.ReadString"> <element name="TCustomPropertyStorage.ReadString">
<short>[?]</short> <short>Reads an String value from the RootSection.
</short>
<descr/> <descr/>
<errors/> <errors/>
<seealso/> <seealso/>
@ -542,7 +623,8 @@
<element name="TCustomPropertyStorage.ReadString.DefaultValue"><short/></element> <element name="TCustomPropertyStorage.ReadString.DefaultValue"><short/></element>
<!-- function Visibility: public --> <!-- function Visibility: public -->
<element name="TCustomPropertyStorage.ReadInteger"> <element name="TCustomPropertyStorage.ReadInteger">
<short>[?]</short> <short>Reads an integer value, stored as a string, from the RootSection.
</short>
<descr/> <descr/>
<errors/> <errors/>
<seealso/> <seealso/>
@ -552,7 +634,8 @@
<element name="TCustomPropertyStorage.ReadInteger.DefaultValue"><short/></element> <element name="TCustomPropertyStorage.ReadInteger.DefaultValue"><short/></element>
<!-- procedure Visibility: public --> <!-- procedure Visibility: public -->
<element name="TCustomPropertyStorage.ReadRect"> <element name="TCustomPropertyStorage.ReadRect">
<short>[?]</short> <short>Reads an TRect record, stored as a string.
</short>
<descr> <descr>
</descr> </descr>
<errors> <errors>
@ -571,7 +654,8 @@
</element> </element>
<!-- procedure Visibility: public --> <!-- procedure Visibility: public -->
<element name="TCustomPropertyStorage.ReadStrings"> <element name="TCustomPropertyStorage.ReadStrings">
<short>[?]</short> <short>Reads a list of strings, stored with a Count value.
</short>
<descr> <descr>
</descr> </descr>
<errors> <errors>
@ -580,17 +664,20 @@
</seealso> </seealso>
</element> </element>
<element name="TCustomPropertyStorage.ReadStrings.Ident"> <element name="TCustomPropertyStorage.ReadStrings.Ident">
<short></short> <short>The name of the list property.
</short>
</element> </element>
<element name="TCustomPropertyStorage.ReadStrings.List"> <element name="TCustomPropertyStorage.ReadStrings.List">
<short></short> <short>The list to which the strings are added.
</short>
</element> </element>
<element name="TCustomPropertyStorage.ReadStrings.DefaultList"> <element name="TCustomPropertyStorage.ReadStrings.DefaultList">
<short></short> <short>A list of default values, used when nothing was stored yet.
</short>
</element> </element>
<!-- procedure Visibility: public --> <!-- procedure Visibility: public -->
<element name="TCustomPropertyStorage.WriteString"> <element name="TCustomPropertyStorage.WriteString">
<short>[?]</short> <short>Writes an string into the RootSection.</short>
<descr/> <descr/>
<errors/> <errors/>
<seealso/> <seealso/>
@ -599,7 +686,7 @@
<element name="TCustomPropertyStorage.WriteString.Value"><short/></element> <element name="TCustomPropertyStorage.WriteString.Value"><short/></element>
<!-- procedure Visibility: public --> <!-- procedure Visibility: public -->
<element name="TCustomPropertyStorage.WriteInteger"> <element name="TCustomPropertyStorage.WriteInteger">
<short>[?]</short> <short>Writes an integer into the RootSection.</short>
<descr/> <descr/>
<errors/> <errors/>
<seealso/> <seealso/>
@ -608,7 +695,7 @@
<element name="TCustomPropertyStorage.WriteInteger.Value"><short/></element> <element name="TCustomPropertyStorage.WriteInteger.Value"><short/></element>
<!-- procedure Visibility: public --> <!-- procedure Visibility: public -->
<element name="TCustomPropertyStorage.WriteBoolean"> <element name="TCustomPropertyStorage.WriteBoolean">
<short>[?]</short> <short>Writes an boolean value into the RootSection.</short>
<descr> <descr>
</descr> </descr>
<errors> <errors>
@ -624,7 +711,7 @@
</element> </element>
<!-- procedure Visibility: public --> <!-- procedure Visibility: public -->
<element name="TCustomPropertyStorage.WriteRect"> <element name="TCustomPropertyStorage.WriteRect">
<short>[?]</short> <short>Writes an TRect record into the RootSection.</short>
<descr> <descr>
</descr> </descr>
<errors> <errors>
@ -640,7 +727,7 @@
</element> </element>
<!-- procedure Visibility: public --> <!-- procedure Visibility: public -->
<element name="TCustomPropertyStorage.WriteStrings"> <element name="TCustomPropertyStorage.WriteStrings">
<short>[?]</short> <short>Writes a list of strings into the RootSection.</short>
<descr> <descr>
</descr> </descr>
<errors> <errors>
@ -659,7 +746,9 @@
<short>[?]</short> <short>[?]</short>
<descr/> <descr/>
<errors/> <errors/>
<seealso/> <seealso>
<link id="TCustomPropertyStorage.DoEraseSections"/>
</seealso>
</element> </element>
<!-- property Visibility: public --> <!-- property Visibility: public -->
<element name="TCustomPropertyStorage.StoredValue"> <element name="TCustomPropertyStorage.StoredValue">
@ -670,7 +759,7 @@
<element name="TCustomPropertyStorage.StoredValue.AName"><short/></element> <element name="TCustomPropertyStorage.StoredValue.AName"><short/></element>
<!-- property Visibility: public --> <!-- property Visibility: public -->
<element name="TCustomPropertyStorage.Root"> <element name="TCustomPropertyStorage.Root">
<short>[?]</short> <short>[the Owner ?]</short>
<descr/> <descr/>
<seealso/> <seealso/>
</element> </element>
@ -688,7 +777,7 @@
</element> </element>
<!-- property Visibility: public --> <!-- property Visibility: public -->
<element name="TCustomPropertyStorage.OnSavingProperties"> <element name="TCustomPropertyStorage.OnSavingProperties">
<short>[?]</short> <short>Handler called at the begin of Save. [purpose?]</short>
<descr> <descr>
</descr> </descr>
<seealso> <seealso>
@ -696,13 +785,13 @@
</element> </element>
<!-- property Visibility: public --> <!-- property Visibility: public -->
<element name="TCustomPropertyStorage.OnSaveProperties"> <element name="TCustomPropertyStorage.OnSaveProperties">
<short>[?]</short> <short>Handler called at the end of Save. [purpose?]</short>
<descr/> <descr/>
<seealso/> <seealso/>
</element> </element>
<!-- property Visibility: public --> <!-- property Visibility: public -->
<element name="TCustomPropertyStorage.OnRestoringProperties"> <element name="TCustomPropertyStorage.OnRestoringProperties">
<short>[?]</short> <short>Handler called at the begin of Restore. [purpose?]</short>
<descr> <descr>
</descr> </descr>
<seealso> <seealso>
@ -710,7 +799,7 @@
</element> </element>
<!-- property Visibility: public --> <!-- property Visibility: public -->
<element name="TCustomPropertyStorage.OnRestoreProperties"> <element name="TCustomPropertyStorage.OnRestoreProperties">
<short>[?]</short> <short>Handler called at the end of Restore. [purpose?]</short>
<descr/> <descr/>
<seealso/> <seealso/>
</element> </element>