TValuePath

Immutable path that identifies a TValue

Inheritance

LevelAncestorDescription
1TObjectUltimate ancestor in a class hierarchy
2TBaseObjectA base class for objects that can be used instead of TObject.
3TReferenceCountedObjectObject that keeps track of the number of times it is referenced from other objects
4TValuePath

Source

Value.Path.pas (31)

Description

A TValue is often created in a context of other values. A TValuePath tracks all parent values leading up to last value. A common use for such a path is in a user interface where values are created and explored dynamically. Tracking parent values in a path can be used for:

  • Keeping the parent values alive as long as the child values need them to
  • Locating and exploring parent values
  • Creating contextual captions for child values

A TValuePath is an immutable object. A child path can be created using Extend.

Fields

ScopeVisibilityTypeNameDescription
InstanceprotectedTList<TValue>Values

Methods

ScopeVisibilityResultNameDescription
InstanceprotectedTInteger32GetLength()
InstanceprotectedTValueGetNodes(Index: TInteger32)
InstanceprotectedTValueGetReversedNodes(Index: TInteger32)
InstanceprotectedTValueGetLast()
InstanceprotectedTObjectExtractObject(Object_: TObject)
InstancepublicCreate(Elements: array of TValue)
InstancepublicDestroy()
InstancepublicTBooleanHandleEvent(Event: TEvent)
InstancepublicTValuePathExtend(Elements: array of TValue)
InstancepublicTValuePathGetAncestor(Count: TInteger32)
InstancepublicTObjectFind(Condition: TCondition<TObject>)
InstancepublicTBooleanContains(Object_: TObject)
InstancepublicTObjectQuery(Query: TQuery; FreeQuery: TBoolean)
InstancepublicTObjectExtractLastObject()