mirror of
https://gitlab.com/freepascal.org/lazarus/lazarus.git
synced 2025-04-22 01:59:34 +02:00
anchordocking: fixed nested GetSiteInfo
git-svn-id: trunk@26340 -
This commit is contained in:
parent
ac56a26e10
commit
afab0bd0c4
@ -4036,7 +4036,7 @@ begin
|
||||
|
||||
CanDock:=(Client is TAnchorDockHostSite)
|
||||
and not DockMaster.AutoFreedIfControlIsRemoved(Self,Client);
|
||||
debugln(['TAnchorDockHostSite.GetSiteInfo ',DbgSName(Self),' ',dbgs(BoundsRect),' ',Caption,' CanDock=',CanDock,' PtIn=',PtInRect(InfluenceRect,MousePos)]);
|
||||
//debugln(['TAnchorDockHostSite.GetSiteInfo ',DbgSName(Self),' ',dbgs(BoundsRect),' ',Caption,' CanDock=',CanDock,' PtIn=',PtInRect(InfluenceRect,MousePos)]);
|
||||
|
||||
if Assigned(OnGetSiteInfo) then
|
||||
OnGetSiteInfo(Self, Client, InfluenceRect, MousePos, CanDock);
|
||||
|
@ -383,6 +383,7 @@ procedure TDockPerformer.DragMove(APosition: TPoint);
|
||||
begin
|
||||
CanDock := True;
|
||||
AControl.GetSiteInfo(FDockObject.Control, ARect, APosition, CanDock);
|
||||
//debugln(['FindDockSiteAtPosition ',DbgSName(AControl),' CanDock=',CanDock,' PtIn=',PtInRect(ARect, APosition)]);
|
||||
if CanDock and PtInRect(ARect, APosition) then
|
||||
QualifyingSites.Add(AControl);
|
||||
end;
|
||||
@ -392,11 +393,11 @@ procedure TDockPerformer.DragMove(APosition: TPoint);
|
||||
begin
|
||||
// if a parent and a child has qualified remove the parent
|
||||
for i:=QualifyingSites.Count-1 downto 0 do begin
|
||||
debugln(['FindDockSiteAtPosition qualified: ',DbgSName(TWinControl(QualifyingSites[i]))]);
|
||||
for j:=i+1 to QualifyingSites.Count-1 do begin
|
||||
//debugln(['FindDockSiteAtPosition qualified: ',DbgSName(TWinControl(QualifyingSites[i])),' ',TWinControl(QualifyingSites[i]).Caption]);
|
||||
for j:=0 to QualifyingSites.Count-1 do begin
|
||||
if TWinControl(QualifyingSites[i]).IsParentOf(TWinControl(QualifyingSites[j]))
|
||||
then begin
|
||||
debugln(['FindDockSiteAtPosition isparentof ',DbgSName(TWinControl(QualifyingSites[j]))]);
|
||||
//debugln(['FindDockSiteAtPosition isparentof ',DbgSName(TWinControl(QualifyingSites[j])),' ',TWinControl(QualifyingSites[j]).Caption]);
|
||||
QualifyingSites.Delete(i);
|
||||
break;
|
||||
end;
|
||||
|
Loading…
Reference in New Issue
Block a user