lcl: forgotten change

git-svn-id: trunk@19437 -
This commit is contained in:
paul 2009-04-15 07:25:50 +00:00
parent dea006ff6b
commit cf6f94ec98

View File

@ -493,8 +493,9 @@ type
procedure LoadFromStream(Stream: TStream); virtual; abstract;
procedure PaintSite(DC: HDC); virtual; abstract;
procedure MouseMessage(var Message: TLMessage); virtual; abstract;
procedure PositionDockRect(ADockObject: TDragDockObject); virtual; overload;
procedure PositionDockRect(Client, DropCtl: TControl; DropAlign: TAlign;
var DockRect: TRect); virtual; abstract;
var DockRect: TRect); virtual; abstract; overload;
procedure RemoveControl(Control: TControl); virtual; abstract;
procedure ResetBounds(Force: Boolean); virtual; abstract;
procedure SaveToStream(Stream: TStream); virtual; abstract;
@ -3504,6 +3505,25 @@ end;
{ TDockManager }
procedure TDockManager.PositionDockRect(ADockObject: TDragDockObject);
begin
(* for now: defer to old PositionDockRect.
Overridden methods should determine DropOnControl and DropAlign, before
calling inherited method.
*)
with ADockObject do
begin
if DropAlign = alNone then
begin
if DropOnControl <> nil then
DropAlign := DropOnControl.GetDockEdge(DropOnControl.ScreenToClient(DragPos))
else
DropAlign := Control.GetDockEdge(DragTargetPos);
end;
PositionDockRect(Control, DropOnControl, DropAlign, FDockRect);
end;
end;
function TDockManager.AutoFreeByControl: Boolean;
begin
Result := True;