mirror of
https://gitlab.com/freepascal.org/lazarus/lazarus.git
synced 2025-08-10 14:16:25 +02:00
lcl: TPageControl: set dock site rectangle in DockOver and not in PositionDockRect since PositionDockRect used in other unrelated to dock over cases
git-svn-id: trunk@20092 -
This commit is contained in:
parent
a0897c76f4
commit
a8ae3b4f66
@ -279,9 +279,10 @@ type
|
||||
protected
|
||||
class procedure WSRegisterClass; override;
|
||||
procedure DoAddDockClient(Client: TControl; const ARect: TRect); override;
|
||||
procedure DockOver(Source: TDragDockObject; X, Y: Integer;
|
||||
State: TDragState; var Accept: Boolean); override;
|
||||
procedure DoRemoveDockClient(Client: TControl); override;
|
||||
function DoUndockClientMsg(NewTarget, Client: TControl):boolean; override;
|
||||
procedure PositionDockRect(DragDockObject: TDragDockObject); override;
|
||||
public
|
||||
constructor Create(TheOwner: TComponent); override;
|
||||
function FindNextPage(CurPage: TTabSheet;
|
||||
|
@ -95,6 +95,16 @@ begin
|
||||
end;
|
||||
end;
|
||||
|
||||
procedure TPageControl.DockOver(Source: TDragDockObject; X, Y: Integer;
|
||||
State: TDragState; var Accept: Boolean);
|
||||
var
|
||||
P: TPoint;
|
||||
begin
|
||||
P := Parent.ClientToScreen(Point(Left, Top));
|
||||
Source.DockRect := Rect(P.X, P.Y, P.X + Width, P.Y + Height);
|
||||
DoDockOver(Source, X, Y, State, Accept);
|
||||
end;
|
||||
|
||||
procedure TPageControl.DoRemoveDockClient(Client: TControl);
|
||||
begin
|
||||
// we cannot search for client page here since Client.Parent
|
||||
@ -108,14 +118,6 @@ begin
|
||||
Result := inherited DoUndockClientMsg(NewTarget, Client);
|
||||
end;
|
||||
|
||||
procedure TPageControl.PositionDockRect(DragDockObject: TDragDockObject);
|
||||
var
|
||||
P: TPoint;
|
||||
begin
|
||||
P := Parent.ClientToScreen(Point(Left, Top));
|
||||
DragDockObject.DockRect := Rect(P.X, P.Y, P.X + Width, P.Y + Height);
|
||||
end;
|
||||
|
||||
constructor TPageControl.Create(TheOwner: TComponent);
|
||||
begin
|
||||
PageClass:=TTabSheet;
|
||||
|
@ -1942,7 +1942,7 @@ begin
|
||||
{$else}
|
||||
EventBox := gtk_event_box_new;
|
||||
gtk_event_box_set_visible_window(PGtkEventBox(EventBox), False);
|
||||
TempWidget := CreateFixedClientWidget(false);
|
||||
TempWidget := CreateFixedClientWidget(False);
|
||||
gtk_container_add(GTK_CONTAINER(EventBox), TempWidget);
|
||||
gtk_container_add(GTK_CONTAINER(p), EventBox);
|
||||
gtk_widget_show(EventBox);
|
||||
|
Loading…
Reference in New Issue
Block a user