Reference THeaderBar
Declared in Codebot.Controls.Scrolling.pas on line 93
THeaderBar is a row of resizable column headers
THeaderBar = class(TSurfaceGraphicControl)
protected
procedure CaptureChanged; override;
function ThemeAware: Boolean; override;
procedure Draw; override;
{ Invoke OnColumnClick }
procedure ColumnClick(Column: THeaderColumn); virtual;
{ Invoke OnColumnResize }
procedure ColumnResize(Column: THeaderColumn); virtual;
{ Invoke OnColumnSelect }
procedure ColumnSelect(Column: THeaderColumn); virtual;
procedure MouseLeave; override;
procedure MouseDown(Button: TMouseButton; Shift: TShiftState; X, Y: Integer); override;
procedure MouseMove(Shift: TShiftState; X, Y: Integer); override;
procedure MouseUp(Button: TMouseButton; Shift: TShiftState; X, Y: Integer); override;
public
{ Create a new header bar }
constructor Create(AOwner: TComponent); override;
destructor Destroy; override;
{ Return the bounds of a column }
function GetColumnRect(Index: Integer): TRectI;
{ Return the bounds of the resize grip of a column }
function GetSizingRect(Index: Integer): TRectI;
{ Return the widths of the visible columns }
function GetColWidths: IntArray;
{ The index of the column under the mouse or -1 }
property HotIndex: Integer read GetHotIndex;
{ The horizontal scroll offset }
property ScrollLeft: Integer read FScrollLeft write SetScrollLeft;
{ The total width of the visible columns }
property ScrollWidth: Integer read GetScrollWidth;
{ The selected column }
property Selected: THeaderColumn read FSelected write SetSelected;
published
{ The columns }
property Columns: THeaderColumns read FColumns write SetColumns;
{ When true the column under the mouse is highlighted }
property HotTrack: Boolean read FHotTrack write SetHotTrack default True;
property Align;
property Anchors;
property AutoSize;
property BorderSpacing;
property Constraints;
property Color;
property DragCursor;
property DragMode;
property Enabled;
property ParentShowHint;
property PopupMenu;
property ThemeName;
property ShowHint;
property Visible;
{ OnColumnClick is invoked when a column is clicked }
property OnColumnClick: THeaderColumnEvent read FOnColumnClick write FOnColumnClick;
{ OnColumnResize is invoked when a column is resized }
property OnColumnResize: THeaderColumnEvent read FOnColumnResize write FOnColumnResize;
{ OnColumnSelect is invoked when a column is selected }
property OnColumnSelect: THeaderColumnEvent read FOnColumnSelect write FOnColumnSelect;
property OnChangeBounds;
property OnClick;
property OnDblClick;
property OnDragDrop;
property OnDragOver;
property OnEndDrag;
property OnDraw;
property OnMouseDown;
property OnMouseEnter;
property OnMouseLeave;
property OnMouseMove;
property OnMouseUp;
property OnMouseWheel;
property OnMouseWheelDown;
property OnMouseWheelUp;
property OnResize;
property OnStartDrag;
end;See also
TRectI in Codebot.Graphics.Types.pas
TSurfaceGraphicControl in Codebot.Controls.pas