@@ -326,6 +326,8 @@ TClipboardFormats = class(TStringList)
326326 const APlusSelectedHotBM :TBitmap; const AMinusBM : TBitmap; const AMinusHotBM : TBitmap;
327327 const AMinusSelectedHotBM :TBitmap; var ASize : TSize) of object;
328328
329+ TVTColumnHeaderSpanningEvent = procedure(Sender: TVTHeader; Column: TColumnIndex; var Count: Cardinal) of object;
330+
329331 // search, sort
330332 TVTCompareEvent = procedure(Sender: TBaseVirtualTree; Node1, Node2: PVirtualNode; Column: TColumnIndex;
331333 var Result: Integer) of object;
@@ -680,6 +682,7 @@ TBaseVirtualTree = class abstract(TVTBaseAncestor)
680682 // not covered by any node
681683 FOnMeasureItem: TVTMeasureItemEvent; // Triggered when a node is about to be drawn and its height was not yet
682684 // determined by the application.
685+ FOnColumnHeaderSpanning: TVTColumnHeaderSpanningEvent; // triggered before the header column area been create for painting
683686 FOnGetUserClipboardFormats: TVTGetUserClipboardFormatsEvent; // gives application/descendants the opportunity to
684687 // add own clipboard formats on the fly
685688 FOnPaintText: TVTPaintText; // triggered before either normal or fixed text is painted to allow
@@ -1055,6 +1058,7 @@ TBaseVirtualTree = class abstract(TVTBaseAncestor)
10551058 procedure DoStructureChange(Node: PVirtualNode; Reason: TChangeReason); virtual;
10561059 procedure DoTimerScroll; virtual;
10571060 procedure DoUpdating(State: TVTUpdateState); virtual;
1061+ procedure DoColumnHeaderSpanning(Column: TColumnIndex; var Count: Cardinal); virtual;
10581062 function DoValidateCache: Boolean; virtual;
10591063 procedure DragAndDrop(AllowedEffects: DWord; const DataObject: TVTDragDataObject; var DragEffect: Integer); virtual;
10601064 procedure DragCanceled; override;
@@ -1375,6 +1379,7 @@ TBaseVirtualTree = class abstract(TVTBaseAncestor)
13751379 property OnStateChange: TVTStateChangeEvent read FOnStateChange write FOnStateChange;
13761380 property OnStructureChange: TVTStructureChangeEvent read FOnStructureChange write FOnStructureChange;
13771381 property OnUpdating: TVTUpdatingEvent read FOnUpdating write FOnUpdating;
1382+ property OnColumnHeaderSpanning: TVTColumnHeaderSpanningEvent read FOnColumnHeaderSpanning write FOnColumnHeaderSpanning;
13781383 public
13791384 constructor Create(AOwner: TComponent); override;
13801385 destructor Destroy; override;
@@ -9671,6 +9676,14 @@ procedure TBaseVirtualTree.DoColumnDblClick(Column: TColumnIndex; Shift: TShiftS
96719676
96729677//----------------------------------------------------------------------------------------------------------------------
96739678
9679+ procedure TBaseVirtualTree.DoColumnHeaderSpanning(Column: TColumnIndex; var Count: Cardinal);
9680+ begin
9681+ if Assigned(FOnColumnHeaderSpanning) then
9682+ FOnColumnHeaderSpanning(Self.Header, Column, Count);
9683+ end;
9684+
9685+ //----------------------------------------------------------------------------------------------------------------------
9686+
96749687procedure TBaseVirtualTree.DoColumnResize(Column: TColumnIndex);
96759688
96769689var
0 commit comments