mirror of
https://gitlab.com/freepascal.org/lazarus/lazarus.git
synced 2025-09-04 00:00:24 +02:00
DockedFormEditor: Remove tab Anchors when disabled per option at runtime.
git-svn-id: trunk@65106 -
This commit is contained in:
parent
730c781eff
commit
5f52e17206
@ -228,16 +228,12 @@ end;
|
|||||||
procedure TDockedTabMaster.OptionsModified;
|
procedure TDockedTabMaster.OptionsModified;
|
||||||
var
|
var
|
||||||
LPageCtrl: TSourcePageControl;
|
LPageCtrl: TSourcePageControl;
|
||||||
LPageIndex: Integer;
|
|
||||||
begin
|
begin
|
||||||
LPageCtrl := SourceWindows.LastActivePageControl;
|
LPageCtrl := SourceWindows.LastActivePageControl;
|
||||||
LPageIndex := LPageCtrl.PageIndex;
|
|
||||||
DesignForms.RemoveAllAnchorDesigner;
|
DesignForms.RemoveAllAnchorDesigner;
|
||||||
SourceWindows.ShowCodeTabSkipCurrent(nil, nil);
|
SourceWindows.ShowCodeTabSkipCurrent(nil, nil);
|
||||||
SourceWindows.RefreshAllPageControls;
|
SourceWindows.RefreshAllPageControls;
|
||||||
TDockedMainIDE.EditorActivated(SourceWindows.LastActiveSourceEditor);
|
TDockedMainIDE.EditorActivated(SourceWindows.LastActiveSourceEditor);
|
||||||
if LPageIndex = 0 then Exit;
|
|
||||||
LPageCtrl.TabIndex := LPageIndex;
|
|
||||||
LPageCtrl.OnChange(LPageCtrl);
|
LPageCtrl.OnChange(LPageCtrl);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
@ -61,6 +61,7 @@ type
|
|||||||
function DesignerPageActive: Boolean;
|
function DesignerPageActive: Boolean;
|
||||||
function FormPageActive: Boolean;
|
function FormPageActive: Boolean;
|
||||||
procedure RemoveDesignPages;
|
procedure RemoveDesignPages;
|
||||||
|
procedure RemoveTabSheetAnchors;
|
||||||
procedure InitPage;
|
procedure InitPage;
|
||||||
procedure RefreshResizer;
|
procedure RefreshResizer;
|
||||||
procedure ShowCode;
|
procedure ShowCode;
|
||||||
@ -240,11 +241,17 @@ end;
|
|||||||
procedure TSourcePageControl.RemoveDesignPages;
|
procedure TSourcePageControl.RemoveDesignPages;
|
||||||
begin
|
begin
|
||||||
{$IFDEF DEBUGDOCKEDFORMEDITOR} DebugLn('TSourcePageControls.RemoveDesignPages'); {$ENDIF}
|
{$IFDEF DEBUGDOCKEDFORMEDITOR} DebugLn('TSourcePageControls.RemoveDesignPages'); {$ENDIF}
|
||||||
FreeAndNil(FTabSheetAnchors);
|
RemoveTabSheetAnchors;
|
||||||
FreeAndNil(FTabSheetDesigner);
|
FreeAndNil(FTabSheetDesigner);
|
||||||
ShowTabs := False;
|
ShowTabs := False;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
procedure TSourcePageControl.RemoveTabSheetAnchors;
|
||||||
|
begin
|
||||||
|
if not Assigned(FTabSheetAnchors) then Exit;
|
||||||
|
FreeAndNil(FTabSheetAnchors);
|
||||||
|
end;
|
||||||
|
|
||||||
procedure TSourcePageControl.InitPage;
|
procedure TSourcePageControl.InitPage;
|
||||||
begin
|
begin
|
||||||
ShowTabs := PageCount > 1;
|
ShowTabs := PageCount > 1;
|
||||||
|
@ -435,6 +435,8 @@ begin
|
|||||||
begin
|
begin
|
||||||
LPageCtrl.TabPosition := DockedOptions.TabPosition;
|
LPageCtrl.TabPosition := DockedOptions.TabPosition;
|
||||||
LPageCtrl.RefreshResizer;
|
LPageCtrl.RefreshResizer;
|
||||||
|
if not DockedOptions.AnchorTabVisible then
|
||||||
|
LPageCtrl.RemoveTabSheetAnchors;
|
||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user