LCL: added TLazAccessibleObject enumerator

git-svn-id: trunk@35394 -
This commit is contained in:
mattias 2012-02-16 09:17:30 +00:00
parent f7827d2275
commit f1f99b4a6e
4 changed files with 27 additions and 1 deletions

View File

@ -54,7 +54,7 @@ type
{ TAvgLvlTreeNodeEnumerator - left to right, low to high } { TAvgLvlTreeNodeEnumerator - left to right, low to high }
TAvgLvlTreeNodeEnumerator = class TAvgLvlTreeNodeEnumerator = class
private protected
FTree: TAvgLvlTree; FTree: TAvgLvlTree;
FCurrent: TAvgLvlTreeNode; FCurrent: TAvgLvlTreeNode;
public public

View File

@ -14213,6 +14213,8 @@ End;
<element name="TWinControl.AutoSizeDelayedHandle"> <element name="TWinControl.AutoSizeDelayedHandle">
<short>Returns true if AutoSize should be skipped / delayed because of its handle.</short> <short>Returns true if AutoSize should be skipped / delayed because of its handle.</short>
</element> </element>
<element name="TLazAccessibleObject.GetEnumerator"><short>Default enumerator for the children</short>
</element>
</module> </module>
<!-- Controls --> <!-- Controls -->
</package> </package>

View File

@ -925,6 +925,17 @@ type
// The Child Accessible Objects are designed for non-TControl children // The Child Accessible Objects are designed for non-TControl children
// of a TCustomControl descendent, for example the items of a TTreeView // of a TCustomControl descendent, for example the items of a TTreeView
TLazAccessibleObject = class;
{ TLazAccessibleObjectEnumerator }
TLazAccessibleObjectEnumerator = class(TAvgLvlTreeNodeEnumerator)
private
function GetCurrent: TLazAccessibleObject;
public
property Current: TLazAccessibleObject read GetCurrent;
end;
{ TLazAccessibleObject } { TLazAccessibleObject }
TLazAccessibleObject = class TLazAccessibleObject = class
@ -972,6 +983,7 @@ type
property Position: TPoint read GetPosition write SetPosition; property Position: TPoint read GetPosition write SetPosition;
property Size: TSize read GetSize write SetSize; property Size: TSize read GetSize write SetSize;
property Handle: PtrInt read GetHandle write SetHandle; property Handle: PtrInt read GetHandle write SetHandle;
function GetEnumerator: TLazAccessibleObjectEnumerator;
end; end;
{* Note on TControl.Caption {* Note on TControl.Caption

View File

@ -26,6 +26,13 @@
{ $DEFINE CHECK_POSITION} { $DEFINE CHECK_POSITION}
{ TLazAccessibleObjectEnumerator }
function TLazAccessibleObjectEnumerator.GetCurrent: TLazAccessibleObject;
begin
Result:=TLazAccessibleObject(FCurrent.Data);
end;
{ TLazAccessibleObject } { TLazAccessibleObject }
function TLazAccessibleObject.GetHandle: PtrInt; function TLazAccessibleObject.GetHandle: PtrInt;
@ -253,6 +260,11 @@ begin
Result := OwnerControl.GetChildAccessibleObjectAtPos(APos); Result := OwnerControl.GetChildAccessibleObjectAtPos(APos);
end; end;
function TLazAccessibleObject.GetEnumerator: TLazAccessibleObjectEnumerator;
begin
Result:=TLazAccessibleObjectEnumerator.Create(FChildrenSortedForDataObject);
end;
{------------------------------------------------------------------------------ {------------------------------------------------------------------------------
TControl.AdjustSize TControl.AdjustSize