Sign in Join
FPDoc Onlineexperiment

TDockTree class

In unit Controls

A tree of TDockZone instances where each docked window has one tree.

Declaration

pascal
TDockTree = class(TDockManager)

Inheritance

  1. TDockTree
  2. TDockManager
  3. TPersistent

Descends from it: TLazDockTree

Description

TDockTree is a TDockManager descendant with a simple docking manager that allows docking a control into another using Align=alClient to fill the whole client area.

In this class, Docking means: Combining several windows into one. And, a window can be a TCustomForm instance, a floating (undocked) control, or a TDockForm instance. A window can be docked to another to the left, right, top, bottom, or "into". The source docking window will be resized to fit to the target docking window.

A docking manager supporting multiple controls per docksite (aka a layout) can be found in the ldocktree.pas unit.

TAnchorDockManager which supports multiple controls with a more flexible layout, store and restore, and more options can be found in the anchordocking package.

See also

Properties

DockZoneClasspublicThe class type for the dock zones in this tree.
DockSitepublicThe parent control whose docked clients are managed.
RootZonepublicThe root zone for the DockTree.

Methods

HitTestprotectedReturns the control and the part of the dockzone at the given coordinates.
PaintDockFrameprotectedPaints the dock header of the zone containing AControl.
UpdateAllprotectedUpdates the internal TDockTreeFlags to reflect the update status for the control
SetDockZoneClassprotected
CreatepublicConstructor for the class instance.
DestroypublicDestructor for the class instance.
BeginUpdatepublicStarts an update process for the class instance.
EndUpdatepublicFinishes an update process for the class instance.
AdjustDockRectpublicAdjusts the zone rectangle for AControl.
GetControlBoundspublicReturns the zone bounds of a docked control.
InsertControlpublicPositions DropCtl relative Control, using the alignment specified by InsertAt.
LoadFromStreampublicHas an empty implementation in TDockTree.
MessageHandlerpublicHas an empty implementation in TDockTree.
PositionDockRectpublicDetermines the DockRect while dragging a control over the docksite.
RemoveControlpublicRemoves the undocked control from the docksite layout.
SaveToStreampublicSaves the docksite layout to Stream.
SetReplacingControlpublicSpecifies the control to be replaced subsequently.
ResetBoundspublicRefreshes the layout for the dock site.
PaintSitepublicHandles special painting of the docksite.
DumpLayoutpublicStores the layout in a file.

Fields

FRootZoneprotected

Inherited

From TDockManager (4)

AutoFreeByControl CanBeDoubleDocked GetDockEdge IsEnabledControl

An experiment, built from Lazarus main 2dfa93c66e of 10-22-2026. Not the official Lazarus documentation.