mirror of
https://gitlab.com/freepascal.org/lazarus/lazarus.git
synced 2025-10-03 03:40:02 +02:00
TTreeView: implement DoCreateNodeClass. Allows descendants to override the class of the nodes without the need to use the (exposed) OnCreateNodeClass event.
git-svn-id: trunk@48183 -
This commit is contained in:
parent
1a431d94fa
commit
e92ce63e0c
@ -3337,6 +3337,7 @@ type
|
||||
procedure CreateWnd; override;
|
||||
procedure Delete(Node: TTreeNode); virtual;
|
||||
procedure DestroyWnd; override;
|
||||
procedure DoCreateNodeClass(var NewNodeClass: TTreeNodeClass); virtual;
|
||||
procedure DoEndDrag(Target: TObject; X, Y: Integer); override;
|
||||
function DoMouseWheel(Shift: TShiftState; WheelDelta: Integer;
|
||||
MousePos: TPoint): Boolean; override;
|
||||
|
@ -3185,6 +3185,12 @@ begin
|
||||
FLastVertScrollInfo.cbSize := 0;
|
||||
end;
|
||||
|
||||
procedure TCustomTreeView.DoCreateNodeClass(var NewNodeClass: TTreeNodeClass);
|
||||
begin
|
||||
if Assigned(OnCreateNodeClass) then
|
||||
OnCreateNodeClass(Self,NewNodeClass);
|
||||
end;
|
||||
|
||||
procedure TCustomTreeView.BeginAutoDrag;
|
||||
begin
|
||||
BeginDrag(False);
|
||||
@ -5165,8 +5171,7 @@ begin
|
||||
if Result = nil then
|
||||
begin
|
||||
NewNodeClass:=TTreeNode;
|
||||
if Assigned(OnCreateNodeClass) then
|
||||
OnCreateNodeClass(Self,NewNodeClass);
|
||||
DoCreateNodeClass(NewNodeClass);
|
||||
Result := NewNodeClass.Create(Items);
|
||||
end;
|
||||
end;
|
||||
|
Loading…
Reference in New Issue
Block a user