You've already forked lazarus-ccr
manualdock: docked messages are no longer hidden, if there're no source window
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@1192 8e941d3f-bd1b-0410-a28a-d453659cc2b4
This commit is contained in:
@@ -96,7 +96,8 @@ begin
|
|||||||
if not (Assigned(SourceEditorManagerIntf) and Assigned(SourceEditorManagerIntf.ActiveSourceWindow))
|
if not (Assigned(SourceEditorManagerIntf) and Assigned(SourceEditorManagerIntf.ActiveSourceWindow))
|
||||||
or not Assigned(IDEMessagesWindow)
|
or not Assigned(IDEMessagesWindow)
|
||||||
then Exit;
|
then Exit;
|
||||||
if not Assigned(panel) then AllocControls(SourceEditorManagerIntf.ActiveSourceWindow);
|
if not Assigned(panel) then
|
||||||
|
AllocControls(SourceEditorManagerIntf.ActiveSourceWindow);
|
||||||
split.visible:=true;
|
split.visible:=true;
|
||||||
panel.visible:=true;
|
panel.visible:=true;
|
||||||
with IDEMessagesWindow do
|
with IDEMessagesWindow do
|
||||||
@@ -158,8 +159,7 @@ destructor TManualDocker.Destroy;
|
|||||||
begin
|
begin
|
||||||
if Assigned(panel) then UpdateDockState(MsgWnd, panel);
|
if Assigned(panel) then UpdateDockState(MsgWnd, panel);
|
||||||
SaveStates;
|
SaveStates;
|
||||||
split.Free;
|
DeallocControls;
|
||||||
panel.Free;
|
|
||||||
inherited Destroy;
|
inherited Destroy;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
@@ -184,11 +184,11 @@ end;
|
|||||||
procedure TManualDocker.AllocControls(AParent: TWinControl);
|
procedure TManualDocker.AllocControls(AParent: TWinControl);
|
||||||
begin
|
begin
|
||||||
FCurrentSrcWin := AParent;
|
FCurrentSrcWin := AParent;
|
||||||
panel := TPanel.Create(nil);
|
panel := TPanel.Create(AParent);
|
||||||
panel.Parent := AParent;
|
panel.Parent := AParent;
|
||||||
panel.BorderStyle := bsNone;
|
panel.BorderStyle := bsNone;
|
||||||
|
|
||||||
split := TSplitter.Create(nil);
|
split := TSplitter.Create(AParent);
|
||||||
split.Parent := AParent;
|
split.Parent := AParent;
|
||||||
|
|
||||||
RealignControls;
|
RealignControls;
|
||||||
@@ -196,8 +196,8 @@ end;
|
|||||||
|
|
||||||
procedure TManualDocker.DeallocControls;
|
procedure TManualDocker.DeallocControls;
|
||||||
begin
|
begin
|
||||||
FreeAndNil(split);
|
split:=nil;
|
||||||
FreeAndNil(panel);
|
panel:=nil;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TManualDocker.RealignControls;
|
procedure TManualDocker.RealignControls;
|
||||||
@@ -228,16 +228,13 @@ var
|
|||||||
begin
|
begin
|
||||||
IsDocked := MsgWnd.docked;
|
IsDocked := MsgWnd.docked;
|
||||||
if FCurrentSrcWin <> Sender then exit;
|
if FCurrentSrcWin <> Sender then exit;
|
||||||
if IsDocked then
|
if IsDocked then ChangeDocking(False);
|
||||||
ChangeDocking(False);
|
|
||||||
FCurrentSrcWin := nil;
|
|
||||||
DeallocControls;
|
DeallocControls;
|
||||||
|
FCurrentSrcWin := nil;
|
||||||
|
|
||||||
if IsDocked then begin
|
if IsDocked then begin
|
||||||
if (SourceEditorManagerIntf.SourceWindowCount >= 1) then
|
if (SourceEditorManagerIntf.SourceWindowCount >= 1) then
|
||||||
ChangeDocking(True)
|
ChangeDocking(True);
|
||||||
else
|
|
||||||
if Assigned(IDEMessagesWindow) then
|
|
||||||
IDEMessagesWindow.Hide;
|
|
||||||
MsgWnd.Docked := IsDocked;
|
MsgWnd.Docked := IsDocked;
|
||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
|
Reference in New Issue
Block a user