[Overview][Constants][Types][Classes][Procedures and functions][Index] Reference for unit 'LDockTree' (#lcl)

TLazDockForm

[Properties (by Name)] [Methods (by Name)] [Events (by Name)]

TLazDockForm - the default DockSite for a TLazDockTree and for TCustomAnchoredDockManager

Declaration

Source position: ldocktree.pas line 126

type TLazDockForm = class(TCustomForm)

protected

  procedure Notification(); override;

  

Notification - if the required operation is removal, sets MainControl to nil, then calls inherited Notification

  procedure UpdateMainControl;

  

UpdateMainControl - sets MainControl to a new value

  procedure MouseUp(); override;

  

MouseUp - calls inherited MouseUp then finds position and appropriate header

  procedure MouseDown(); override;

  

MouseDown - performs inherited MouseDpwn, then finds position and appropriate header

  procedure MouseMove(); override;

  

MouseMove - performs inherited Mousemove, then finds position and appropriate header

  procedure MouseLeave; override;

  

MouseLeave - performs inherited MouseLeave, and sets the local store of position to indicate absence of the mouse

  procedure PaintWindow(); override;

  

PaintWindow - calls inherited PaintWindow, then creates new canvas and handle at cursor position, inserts header caption, title and images

  procedure TrackMouse();

  

TrackMouse - finds position of the mouse, which part of the control it occupies (whether header or main part of control), and state of buttons

public

  constructor Create(); override;

  

Create - constructor for TLazDocForm: calls inherited Create, then fills in the header

  destructor Destroy; override;

  

Destroy - destructor for TLazDockForm: removes header then calls inherited Destroy

  function CloseQuery; override;

  

CloseQuery - calls inherited method, then asks all top level forms if form can close

  procedure UpdateCaption; virtual;

  

UpdateCaption - brings caption up-to-date if there have been changes

public

  class procedure UpdateMainControlInParents();

  

UpdateMainControlInParents - make sure all parents recognise the presence of MainControl

public

  function FindMainControlCandidate;

  

FindMainControlCandidate - finds forms and controls in the docktree heirarchy that could act as the MainControl

  function FindHeader();

  

FindHeader - identifies the part of the dock form that is the header, and returns a TControl

  procedure InsertControl(); override;

  

InsertControl - calls inherited method then updates the main control

  function IsDockedControl();

  

IsDockedControl - checks if control is a child, not a TLazDockSplitter and properly anchor docked; returns True if OK

  function ControlHasTitle();

  

ControlHasTitle - returns True if nominated control is visible, is a docked control and has a border spacing greter than zero

  function GetTitleRect();

  

GetTitleRect - returns the coordinates of the title retangle for the nominated control

  function GetTitleOrientation();

  

GetTitleOrientation - retrns the orientation (horizozntal or vertical) of the title in the nominated control

  property MainControl: TControl; [rw]

  

The identity of the MainControl in the docked form (used for the default caption)

end;

Inheritance

TLazDockForm

  

TLazDockForm - the default DockSite for a TLazDockTree and for TCustomAnchoredDockManager

|

TCustomForm

  

TCustomForm - the base type for TForm

|

TScrollingWinControl

  

TScrollingWinControl - a class of Window Control that has one or more scroll bars

|

TCustomControl

  

TCustomControl - a base class for many window controls

|

TWinControl

|

TControl

|

TLCLComponent

  

TLCLComponent - base class for LCL components

|

TComponent,IUnknown,IInterfaceComponentReference

|

TPersistent

|

TObject

Description

TLazDockForm - the default DockSite for a TLazDockTree and for TCustomAnchoredDockManager

Note: There are two docking managers:
      TLazDockTree uses TLazDockZone to allow docking in rows and columns.
      TCustomAnchoredDockManager does not use TLazDockZone and allows arbitrary layouts.   
The latest version of this document can be found at lazarus-ccr.sourceforge.net.