Please enable JavaScript to view this site.

 

Navigation: Appendices > Q++Studio > XML Identifiers > Internal Data Structures > Implementation > List

TBtnEditProperty — XML implementation

Scroll Prev Up Next More

This topic covers the implementation details of TBtnEditProperty.

 

Scope: cBtnEditProperty.pas; class derived from TSL_Property. Prepared from the curated implementation supplied for this review on 2 October 2026.

 

This supporting base class reads Version when present. It inherits the property envelope writer. Its constructor creates the text-blob list, sets Version=0 and clears the modified flag. No local SaveToXML implementation is supplied; follow TSL_Property for the inherited envelope.

 

Notation and shared helper rules: Reading this reference.

 

XML identity and composition

 

No literal rec_type value is emitted directly by the selected routines. A property envelope, an inherited writer or a delegated record can supply its identifying attributes.

 

Inherited implementation: TSL_Property. Follow it when the ordered behavior invokes inherited methods; inherited fields are not repeated as locally owned fields.

 

Exact XML fields and attributes

 

The paths below start at this record or property node. A slash identifies a child element; @ identifies an attribute. Curly braces mark a variable index or expression, not literal XML text. Initial values describe initialization; they do not establish what an omitted individual element does. The Implementation toggle below contains the supplied routines for exact branch order and conversions.

 

Version

 

XML representation: The text of the Version element.

 

Initial value: 0 (TBtnEditProperty.Create).

 

Reading: Converts the stored text to a number and assigns it to Version when the record node exists.

 

Export: No corresponding write is implemented locally. This can be a compatibility input or a field handled elsewhere.

 

Initialization and reset values

 

TBtnEditProperty.Create

 

Setting or temporary variable

Initial value

When it is assigned

Version

0

Always

ListTextBlobProps

THashedStringList.Create

Always

FWasModified

false

Always

 

This routine also calls inherited Create. See Implementation for their order and any conditional calls.

 

Storage declarations relevant to interpretation

 

These are in-memory member and property types, not a list of mandatory XML children. They retain array bounds, fixed buffers and selector types. The field reference above defines what is actually serialized.

 

Name

Declared type / bounds

Kind

ListTextBlobProps

THashedStringList

member

Version

integer

member

 

Implementation details

 

The Implementation toggle contains only TBtnEditProperty methods. Initializers and helpers belonging to other types are identified separately below. Shared XML-helper limitations are explained in Reading this reference.

 

Implementation