UPD: Make Layout configuration page as TFrame.

This commit is contained in:
cobines 2011-08-31 04:51:41 +00:00
commit 073175af8c
7 changed files with 422 additions and 333 deletions

View file

@ -204,7 +204,7 @@
<PackageName Value="viewerpackage"/>
</Item7>
</RequiredPackages>
<Units Count="124">
<Units Count="125">
<Unit0>
<Filename Value="doublecmd.lpr"/>
<IsPartOfProject Value="True"/>
@ -968,6 +968,13 @@
<ResourceBaseClass Value="Frame"/>
<UnitName Value="fOptionsHotkeys"/>
</Unit123>
<Unit124>
<Filename Value="frames\foptionslayout.pas"/>
<IsPartOfProject Value="True"/>
<ComponentName Value="frmOptionsLayout"/>
<ResourceBaseClass Value="Frame"/>
<UnitName Value="fOptionsLayout"/>
</Unit124>
</Units>
</ProjectOptions>
<CompilerOptions>

View file

@ -418,243 +418,6 @@ object frmOptions: TfrmOptions
object pgPlugins: TPage
end
object pgLayout: TPage
ClientWidth = 701
ClientHeight = 463
object gbScreenLayout: TGroupBox
Left = 10
Height = 408
Top = 6
Width = 673
Anchors = [akTop, akLeft, akRight]
AutoSize = True
Caption = ' Screen layout '
ChildSizing.LeftRightSpacing = 12
ChildSizing.TopBottomSpacing = 6
ClientHeight = 390
ClientWidth = 669
TabOrder = 0
object cbShowMainMenu: TCheckBox
Left = 12
Height = 17
Top = 6
Width = 98
Caption = 'Show main menu'
TabOrder = 0
end
object cbShowMainToolBar: TCheckBox
AnchorSideTop.Control = cbShowMainMenu
AnchorSideTop.Side = asrBottom
Left = 12
Height = 17
Top = 25
Width = 98
BorderSpacing.Top = 2
Caption = 'Show &button bar'
TabOrder = 1
end
object cbShowDiskPanel: TCheckBox
AnchorSideTop.Control = cbFlatToolBar
AnchorSideTop.Side = asrBottom
Left = 12
Height = 17
Top = 63
Width = 111
BorderSpacing.Top = 2
Caption = 'Show &drive buttons'
OnChange = cbShowDiskPanelChange
TabOrder = 3
end
object cbShowDriveMenuButton: TCheckBox
AnchorSideTop.Control = cbFlatDiskPanel
AnchorSideTop.Side = asrBottom
Left = 12
Height = 17
Top = 120
Width = 135
BorderSpacing.Top = 2
Caption = 'Show d&rive menu button'
TabOrder = 6
end
object cbShowCurDir: TCheckBox
AnchorSideTop.Control = cbShowTabs
AnchorSideTop.Side = asrBottom
Left = 12
Height = 17
Top = 196
Width = 128
BorderSpacing.Top = 2
Caption = 'Show &current directory'
TabOrder = 10
end
object cbShowTabHeader: TCheckBox
AnchorSideTop.Control = cbShowCurDir
AnchorSideTop.Side = asrBottom
Left = 12
Height = 17
Top = 215
Width = 121
BorderSpacing.Top = 2
Caption = 'Show &tabstop header'
TabOrder = 11
end
object cbShowStatusBar: TCheckBox
AnchorSideTop.Control = cbShowTabHeader
AnchorSideTop.Side = asrBottom
Left = 12
Height = 17
Top = 234
Width = 96
BorderSpacing.Top = 2
Caption = 'Show &status bar'
TabOrder = 12
end
object cbShowCmdLine: TCheckBox
AnchorSideTop.Control = cbShowStatusBar
AnchorSideTop.Side = asrBottom
Left = 12
Height = 17
Top = 253
Width = 111
BorderSpacing.Top = 2
Caption = 'Show command &line'
TabOrder = 13
end
object cbShowKeysPanel: TCheckBox
AnchorSideTop.Control = cbShowCmdLine
AnchorSideTop.Side = asrBottom
Left = 12
Height = 17
Top = 272
Width = 146
BorderSpacing.Top = 2
Caption = 'Show &function key buttons'
TabOrder = 14
end
object cbFlatDiskPanel: TCheckBox
AnchorSideTop.Control = cbTwoDiskPanels
AnchorSideTop.Side = asrBottom
Left = 28
Height = 17
Top = 101
Width = 76
BorderSpacing.Top = 2
Caption = 'Flat buttons'
Enabled = False
TabOrder = 5
end
object cbTwoDiskPanels: TCheckBox
AnchorSideTop.Control = cbShowDiskPanel
AnchorSideTop.Side = asrBottom
Left = 28
Height = 17
Top = 82
Width = 313
BorderSpacing.Top = 2
Caption = 'Show two drive button bars (fixed width, above file windows)'
Enabled = False
TabOrder = 4
end
object cbShowTabs: TCheckBox
AnchorSideTop.Control = cbFreespaceInd
AnchorSideTop.Side = asrBottom
Left = 12
Height = 17
Top = 177
Width = 99
BorderSpacing.Top = 2
Caption = 'Sho&w folder tabs'
TabOrder = 9
end
object cbFlatInterface: TCheckBox
AnchorSideTop.Control = cbShowKeysPanel
AnchorSideTop.Side = asrBottom
Left = 12
Height = 17
Top = 291
Width = 82
BorderSpacing.Top = 2
Caption = 'Flat interface'
TabOrder = 15
end
object cbFlatToolBar: TCheckBox
AnchorSideTop.Control = cbShowMainToolBar
AnchorSideTop.Side = asrBottom
Left = 28
Height = 17
Top = 44
Width = 76
BorderSpacing.Top = 2
Caption = 'Flat buttons'
TabOrder = 2
end
object cbLogWindow: TCheckBox
AnchorSideTop.Control = cbFlatInterface
AnchorSideTop.Side = asrBottom
Left = 12
Height = 17
Top = 310
Width = 100
BorderSpacing.Top = 2
Caption = 'Show log window'
TabOrder = 16
end
object cbTermWindow: TCheckBox
AnchorSideTop.Control = cbLogWindow
AnchorSideTop.Side = asrBottom
Left = 12
Height = 17
Top = 329
Width = 124
BorderSpacing.Top = 2
Caption = 'Show terminal window'
OnChange = cbTermWindowChange
TabOrder = 17
end
object cbFreespaceInd: TCheckBox
AnchorSideTop.Control = cbShowDriveFreeSpace
AnchorSideTop.Side = asrBottom
Left = 12
Height = 17
Top = 158
Width = 209
BorderSpacing.Top = 2
Caption = 'Show free space indicator on drive label'
TabOrder = 8
end
object cbProgInMenuBar: TCheckBox
AnchorSideTop.Control = cbTermWindow
AnchorSideTop.Side = asrBottom
Left = 12
Height = 17
Top = 348
Width = 190
BorderSpacing.Top = 2
Caption = 'Show common progress in menu bar'
TabOrder = 18
end
object cbPanelOfOperations: TCheckBox
AnchorSideTop.Control = cbProgInMenuBar
AnchorSideTop.Side = asrBottom
Left = 12
Height = 17
Top = 367
Width = 205
BorderSpacing.Top = 2
Caption = 'Show panel of operation in background'
TabOrder = 19
end
object cbShowDriveFreeSpace: TCheckBox
AnchorSideTop.Control = cbShowDriveMenuButton
AnchorSideTop.Side = asrBottom
Left = 12
Height = 17
Top = 139
Width = 123
BorderSpacing.Top = 2
Caption = 'Show free space label'
TabOrder = 7
end
end
end
object pgFileOp: TPage
ClientWidth = 701

View file

@ -12,27 +12,6 @@ TFRMOPTIONS.LBLLOGFONT.CAPTION=Log font
TFRMOPTIONS.BTNSELLOGFNT.CAPTION=...
TFRMOPTIONS.LBLVIEWERBOOKFONT.CAPTION=Viewer Book Font
TFRMOPTIONS.BTNSELVIEWERBOOKFNT.CAPTION=...
TFRMOPTIONS.GBSCREENLAYOUT.CAPTION= Screen layout
TFRMOPTIONS.CBSHOWMAINMENU.CAPTION=Show main menu
TFRMOPTIONS.CBSHOWMAINTOOLBAR.CAPTION=Show &button bar
TFRMOPTIONS.CBSHOWDISKPANEL.CAPTION=Show &drive buttons
TFRMOPTIONS.CBSHOWDRIVEMENUBUTTON.CAPTION=Show d&rive menu button
TFRMOPTIONS.CBSHOWCURDIR.CAPTION=Show &current directory
TFRMOPTIONS.CBSHOWTABHEADER.CAPTION=Show &tabstop header
TFRMOPTIONS.CBSHOWSTATUSBAR.CAPTION=Show &status bar
TFRMOPTIONS.CBSHOWCMDLINE.CAPTION=Show command &line
TFRMOPTIONS.CBSHOWKEYSPANEL.CAPTION=Show &function key buttons
TFRMOPTIONS.CBFLATDISKPANEL.CAPTION=Flat buttons
TFRMOPTIONS.CBTWODISKPANELS.CAPTION=Show two drive button bars (fixed width, above file windows)
TFRMOPTIONS.CBSHOWTABS.CAPTION=Sho&w folder tabs
TFRMOPTIONS.CBFLATINTERFACE.CAPTION=Flat interface
TFRMOPTIONS.CBFLATTOOLBAR.CAPTION=Flat buttons
TFRMOPTIONS.CBLOGWINDOW.CAPTION=Show log window
TFRMOPTIONS.CBTERMWINDOW.CAPTION=Show terminal window
TFRMOPTIONS.CBFREESPACEIND.CAPTION=Show free space indicator on drive label
TFRMOPTIONS.CBPROGINMENUBAR.CAPTION=Show common progress in menu bar
TFRMOPTIONS.CBPANELOFOPERATIONS.CAPTION=Show panel of operation in background
TFRMOPTIONS.CBSHOWDRIVEFREESPACE.CAPTION=Show free space label
TFRMOPTIONS.GBCOPYBUFFERSIZE.CAPTION=&Buffer size for files:
TFRMOPTIONS.LBLCOPYBUFFERSIZE.CAPTION=Buffer size (Kb):
TFRMOPTIONS.GBGENERALOPTIONS.CAPTION=General options

View file

@ -81,7 +81,6 @@ type
cbProcessComments: TCheckBox;
cbTabsConfirmCloseAll: TCheckBox;
cbTabsLockedAsterisk: TCheckBox;
cbTermWindow: TCheckBox;
cbGridVertLine: TCheckBox;
cbGridHorzLine: TCheckBox;
cbShowWarningMessages: TCheckBox;
@ -96,10 +95,6 @@ type
cbToolsRunInTerminal: TCheckBox;
cbToolsKeepTerminalOpen: TCheckBox;
cbToolsUseExternalProgram: TCheckBox;
cbFreespaceInd: TCheckBox;
cbProgInMenuBar: TCheckBox;
cbPanelOfOperations: TCheckBox;
cbShowDriveFreeSpace: TCheckBox;
cbSaveThubnails: TCheckBox;
cbShowMainMenu: TCheckBox;
cbPartialNameSearch: TCheckBox;
@ -304,8 +299,6 @@ type
procedure btnDelColumnsSetClick(Sender: TObject);
procedure btnEditColumnsSetClick(Sender: TObject);
procedure btnNewColumnsSetClick(Sender: TObject);
procedure cbShowDiskPanelChange(Sender: TObject);
procedure cbTermWindowChange(Sender: TObject);
procedure edtEditorFontSizeChange(Sender: TObject);
procedure edtMainFontSizeChange(Sender: TObject);
procedure edtViewerFontSizeChange(Sender: TObject);
@ -348,7 +341,7 @@ uses
uTypes, StrUtils, uFindEx, uKeyboard,
fMaskInputDlg, uSearchTemplate, uMultiArc, uFile, uDebug,
fOptionsPlugins, fOptionsToolTips, fOptionsColors, fOptionsLanguage,
fOptionsBehaviour, fOptionsTools, fOptionsHotkeys;
fOptionsBehaviour, fOptionsTools, fOptionsHotkeys, fOptionsLayout;
const
stgArchiveTitle = 0;
@ -448,27 +441,6 @@ begin
{$endif}
end;
procedure TfrmOptions.cbShowDiskPanelChange(Sender: TObject);
begin
cbTwoDiskPanels.Enabled := cbShowDiskPanel.Checked;
cbFlatDiskPanel.Enabled := cbShowDiskPanel.Checked;
end;
procedure TfrmOptions.cbTermWindowChange(Sender: TObject);
begin
if cbTermWindow.Checked then
begin
cbShowCmdLine.Tag:= Integer(cbShowCmdLine.Checked);
cbShowCmdLine.Checked:= True;
cbShowCmdLine.Enabled:= False;
end
else
begin
cbShowCmdLine.Checked:= Boolean(cbShowCmdLine.Tag);
cbShowCmdLine.Enabled:= True;
end;
end;
procedure TfrmOptions.edtEditorFontSizeChange(Sender: TObject);
begin
edtEditorFont.Font.Size := edtEditorFontSize.Value;
@ -986,29 +958,6 @@ procedure TfrmOptions.LoadConfig;
var
I: LongInt;
begin
{ Layout page }
cbShowMainMenu.Checked := gMainMenu;
cbShowMainToolBar.Checked := gButtonBar;
cbFlatToolBar.Checked := gToolBarFlat;
cbShowDiskPanel.Checked := gDriveBar1;
cbTwoDiskPanels.Checked := gDriveBar2;
cbFlatDiskPanel.Checked := gDriveBarFlat;
cbShowDriveMenuButton.Checked := gDriveMenuButton;
cbShowTabs.Checked := gDirectoryTabs;
cbShowCurDir.Checked := gCurDir;
cbShowTabHeader.Checked := gTabHeader;
cbShowStatusBar.Checked := gStatusBar;
cbShowCmdLine.Checked := gCmdLine or gTermWindow;
cbShowCmdLine.Enabled:= not gTermWindow;
cbShowKeysPanel.Checked := gKeyButtons;
cbFlatInterface.Checked := gInterfaceFlat;
cbLogWindow.Checked := gLogWindow;
cbTermWindow.Checked := gTermWindow;
cbShowDriveFreeSpace.Checked := gDriveFreeSpace;
cbFreespaceInd.Checked := gDriveInd;
cbProgInMenuBar.Checked := gProgInMenuBar;
cbPanelOfOperations.Checked := gPanelOfOp;
{ File operations }
edtCopyBufferSize.Text:= IntToStr(gCopyBlockSize div 1024);
cbSkipFileOpError.Checked:= gSkipFileOpError;
@ -1144,28 +1093,6 @@ var
I: LongInt;
NeedsRestart: Boolean = False;
begin
{ Layout page }
gMainMenu := cbShowMainMenu.Checked;
gButtonBar := cbShowMainToolBar.Checked;
gToolBarFlat := cbFlatToolBar.Checked;
gDriveBar1 := cbShowDiskPanel.Checked;
gDriveBar2 := cbTwoDiskPanels.Checked;
gDriveBarFlat := cbFlatDiskPanel.Checked;
gDriveMenuButton := cbShowDriveMenuButton.Checked;
gDirectoryTabs := cbShowTabs.Checked;
gCurDir := cbShowCurDir.Checked;
gTabHeader := cbShowTabHeader.Checked;
gStatusBar := cbShowStatusBar.Checked;
gCmdLine := cbShowCmdLine.Checked;
gKeyButtons := cbShowKeysPanel.Checked;
gInterfaceFlat := cbFlatInterface.Checked;
gLogWindow := cbLogWindow.Checked;
gTermWindow := cbTermWindow.Checked;
gDriveFreeSpace := cbShowDriveFreeSpace.Checked;
gDriveInd := cbFreespaceInd.Checked;
gProgInMenuBar := cbProgInMenuBar.Checked;
gPanelOfOp := cbPanelOfOperations.Checked;
{ Fonts }
with gFonts[dcfMain] do
begin

View file

@ -0,0 +1,241 @@
inherited frmOptionsLayout: TfrmOptionsLayout
Height = 588
Width = 784
ClientHeight = 588
ClientWidth = 784
object gbScreenLayout: TGroupBox[0]
Left = 10
Height = 572
Top = 6
Width = 756
Anchors = [akTop, akLeft, akRight]
AutoSize = True
Caption = ' Screen layout '
ChildSizing.LeftRightSpacing = 12
ChildSizing.TopBottomSpacing = 6
ClientHeight = 550
ClientWidth = 752
TabOrder = 0
object cbShowMainMenu: TCheckBox
Left = 12
Height = 25
Top = 6
Width = 146
Caption = 'Show main menu'
TabOrder = 0
end
object cbShowMainToolBar: TCheckBox
AnchorSideTop.Control = cbShowMainMenu
AnchorSideTop.Side = asrBottom
Left = 12
Height = 25
Top = 33
Width = 140
BorderSpacing.Top = 2
Caption = 'Show &button bar'
TabOrder = 1
end
object cbShowDiskPanel: TCheckBox
AnchorSideTop.Control = cbFlatToolBar
AnchorSideTop.Side = asrBottom
Left = 12
Height = 25
Top = 87
Width = 158
BorderSpacing.Top = 2
Caption = 'Show &drive buttons'
OnChange = cbShowDiskPanelChange
TabOrder = 3
end
object cbShowDriveMenuButton: TCheckBox
AnchorSideTop.Control = cbFlatDiskPanel
AnchorSideTop.Side = asrBottom
Left = 12
Height = 25
Top = 168
Width = 194
BorderSpacing.Top = 2
Caption = 'Show d&rive menu button'
TabOrder = 6
end
object cbShowCurDir: TCheckBox
AnchorSideTop.Control = cbShowTabs
AnchorSideTop.Side = asrBottom
Left = 12
Height = 25
Top = 276
Width = 179
BorderSpacing.Top = 2
Caption = 'Show &current directory'
TabOrder = 10
end
object cbShowTabHeader: TCheckBox
AnchorSideTop.Control = cbShowCurDir
AnchorSideTop.Side = asrBottom
Left = 12
Height = 25
Top = 303
Width = 171
BorderSpacing.Top = 2
Caption = 'Show &tabstop header'
TabOrder = 11
end
object cbShowStatusBar: TCheckBox
AnchorSideTop.Control = cbShowTabHeader
AnchorSideTop.Side = asrBottom
Left = 12
Height = 25
Top = 330
Width = 136
BorderSpacing.Top = 2
Caption = 'Show &status bar'
TabOrder = 12
end
object cbShowCmdLine: TCheckBox
AnchorSideTop.Control = cbShowStatusBar
AnchorSideTop.Side = asrBottom
Left = 12
Height = 25
Top = 357
Width = 165
BorderSpacing.Top = 2
Caption = 'Show command &line'
TabOrder = 13
end
object cbShowKeysPanel: TCheckBox
AnchorSideTop.Control = cbShowCmdLine
AnchorSideTop.Side = asrBottom
Left = 12
Height = 25
Top = 384
Width = 208
BorderSpacing.Top = 2
Caption = 'Show &function key buttons'
TabOrder = 14
end
object cbFlatDiskPanel: TCheckBox
AnchorSideTop.Control = cbTwoDiskPanels
AnchorSideTop.Side = asrBottom
Left = 28
Height = 25
Top = 141
Width = 109
BorderSpacing.Top = 2
Caption = 'Flat buttons'
Enabled = False
TabOrder = 5
end
object cbTwoDiskPanels: TCheckBox
AnchorSideTop.Control = cbShowDiskPanel
AnchorSideTop.Side = asrBottom
Left = 28
Height = 25
Top = 114
Width = 437
BorderSpacing.Top = 2
Caption = 'Show two drive button bars (fixed width, above file windows)'
Enabled = False
TabOrder = 4
end
object cbShowTabs: TCheckBox
AnchorSideTop.Control = cbFreespaceInd
AnchorSideTop.Side = asrBottom
Left = 12
Height = 25
Top = 249
Width = 141
BorderSpacing.Top = 2
Caption = 'Sho&w folder tabs'
TabOrder = 9
end
object cbFlatInterface: TCheckBox
AnchorSideTop.Control = cbShowKeysPanel
AnchorSideTop.Side = asrBottom
Left = 12
Height = 25
Top = 411
Width = 116
BorderSpacing.Top = 2
Caption = 'Flat interface'
TabOrder = 15
end
object cbFlatToolBar: TCheckBox
AnchorSideTop.Control = cbShowMainToolBar
AnchorSideTop.Side = asrBottom
Left = 28
Height = 25
Top = 60
Width = 109
BorderSpacing.Top = 2
Caption = 'Flat buttons'
TabOrder = 2
end
object cbLogWindow: TCheckBox
AnchorSideTop.Control = cbFlatInterface
AnchorSideTop.Side = asrBottom
Left = 12
Height = 25
Top = 438
Width = 145
BorderSpacing.Top = 2
Caption = 'Show log window'
TabOrder = 16
end
object cbTermWindow: TCheckBox
AnchorSideTop.Control = cbLogWindow
AnchorSideTop.Side = asrBottom
Left = 12
Height = 25
Top = 465
Width = 181
BorderSpacing.Top = 2
Caption = 'Show terminal window'
OnChange = cbTermWindowChange
TabOrder = 17
end
object cbFreespaceInd: TCheckBox
AnchorSideTop.Control = cbShowDriveFreeSpace
AnchorSideTop.Side = asrBottom
Left = 12
Height = 25
Top = 222
Width = 296
BorderSpacing.Top = 2
Caption = 'Show free space indicator on drive label'
TabOrder = 8
end
object cbProgInMenuBar: TCheckBox
AnchorSideTop.Control = cbTermWindow
AnchorSideTop.Side = asrBottom
Left = 12
Height = 25
Top = 492
Width = 274
BorderSpacing.Top = 2
Caption = 'Show common progress in menu bar'
TabOrder = 18
end
object cbPanelOfOperations: TCheckBox
AnchorSideTop.Control = cbProgInMenuBar
AnchorSideTop.Side = asrBottom
Left = 12
Height = 25
Top = 519
Width = 293
BorderSpacing.Top = 2
Caption = 'Show panel of operation in background'
TabOrder = 19
end
object cbShowDriveFreeSpace: TCheckBox
AnchorSideTop.Control = cbShowDriveMenuButton
AnchorSideTop.Side = asrBottom
Left = 12
Height = 25
Top = 195
Width = 175
BorderSpacing.Top = 2
Caption = 'Show free space label'
TabOrder = 7
end
end
end

View file

@ -0,0 +1,21 @@
TFRMOPTIONSLAYOUT.GBSCREENLAYOUT.CAPTION= Screen layout
TFRMOPTIONSLAYOUT.CBSHOWMAINMENU.CAPTION=Show main menu
TFRMOPTIONSLAYOUT.CBSHOWMAINTOOLBAR.CAPTION=Show &button bar
TFRMOPTIONSLAYOUT.CBSHOWDISKPANEL.CAPTION=Show &drive buttons
TFRMOPTIONSLAYOUT.CBSHOWDRIVEMENUBUTTON.CAPTION=Show d&rive menu button
TFRMOPTIONSLAYOUT.CBSHOWCURDIR.CAPTION=Show &current directory
TFRMOPTIONSLAYOUT.CBSHOWTABHEADER.CAPTION=Show &tabstop header
TFRMOPTIONSLAYOUT.CBSHOWSTATUSBAR.CAPTION=Show &status bar
TFRMOPTIONSLAYOUT.CBSHOWCMDLINE.CAPTION=Show command &line
TFRMOPTIONSLAYOUT.CBSHOWKEYSPANEL.CAPTION=Show &function key buttons
TFRMOPTIONSLAYOUT.CBFLATDISKPANEL.CAPTION=Flat buttons
TFRMOPTIONSLAYOUT.CBTWODISKPANELS.CAPTION=Show two drive button bars (fixed width, above file windows)
TFRMOPTIONSLAYOUT.CBSHOWTABS.CAPTION=Sho&w folder tabs
TFRMOPTIONSLAYOUT.CBFLATINTERFACE.CAPTION=Flat interface
TFRMOPTIONSLAYOUT.CBFLATTOOLBAR.CAPTION=Flat buttons
TFRMOPTIONSLAYOUT.CBLOGWINDOW.CAPTION=Show log window
TFRMOPTIONSLAYOUT.CBTERMWINDOW.CAPTION=Show terminal window
TFRMOPTIONSLAYOUT.CBFREESPACEIND.CAPTION=Show free space indicator on drive label
TFRMOPTIONSLAYOUT.CBPROGINMENUBAR.CAPTION=Show common progress in menu bar
TFRMOPTIONSLAYOUT.CBPANELOFOPERATIONS.CAPTION=Show panel of operation in background
TFRMOPTIONSLAYOUT.CBSHOWDRIVEFREESPACE.CAPTION=Show free space label

View file

@ -0,0 +1,151 @@
{
Double Commander
-------------------------------------------------------------------------
Layout options page
Copyright (C) 2006-2011 Koblov Alexander (Alexx2000@mail.ru)
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
}
unit fOptionsLayout;
{$mode objfpc}{$H+}
interface
uses
Classes, SysUtils, StdCtrls,
fOptionsFrame;
type
{ TfrmOptionsLayout }
TfrmOptionsLayout = class(TOptionsEditor)
cbFlatDiskPanel: TCheckBox;
cbFlatInterface: TCheckBox;
cbFlatToolBar: TCheckBox;
cbFreespaceInd: TCheckBox;
cbLogWindow: TCheckBox;
cbPanelOfOperations: TCheckBox;
cbProgInMenuBar: TCheckBox;
cbShowCmdLine: TCheckBox;
cbShowCurDir: TCheckBox;
cbShowDiskPanel: TCheckBox;
cbShowDriveFreeSpace: TCheckBox;
cbShowDriveMenuButton: TCheckBox;
cbShowKeysPanel: TCheckBox;
cbShowMainMenu: TCheckBox;
cbShowMainToolBar: TCheckBox;
cbShowStatusBar: TCheckBox;
cbShowTabHeader: TCheckBox;
cbShowTabs: TCheckBox;
cbTermWindow: TCheckBox;
cbTwoDiskPanels: TCheckBox;
gbScreenLayout: TGroupBox;
procedure cbShowDiskPanelChange(Sender: TObject);
procedure cbTermWindowChange(Sender: TObject);
public
procedure Load; override;
function Save: TOptionsEditorSaveFlags; override;
end;
implementation
{$R *.lfm}
uses
uGlobs;
{ TfrmOptionsLayout }
procedure TfrmOptionsLayout.cbShowDiskPanelChange(Sender: TObject);
begin
cbTwoDiskPanels.Enabled := cbShowDiskPanel.Checked;
cbFlatDiskPanel.Enabled := cbShowDiskPanel.Checked;
end;
procedure TfrmOptionsLayout.cbTermWindowChange(Sender: TObject);
begin
if cbTermWindow.Checked then
begin
cbShowCmdLine.Tag:= Integer(cbShowCmdLine.Checked);
cbShowCmdLine.Checked:= True;
cbShowCmdLine.Enabled:= False;
end
else
begin
cbShowCmdLine.Checked:= Boolean(cbShowCmdLine.Tag);
cbShowCmdLine.Enabled:= True;
end;
end;
procedure TfrmOptionsLayout.Load;
begin
cbShowMainMenu.Checked := gMainMenu;
cbShowMainToolBar.Checked := gButtonBar;
cbFlatToolBar.Checked := gToolBarFlat;
cbShowDiskPanel.Checked := gDriveBar1;
cbTwoDiskPanels.Checked := gDriveBar2;
cbFlatDiskPanel.Checked := gDriveBarFlat;
cbShowDriveMenuButton.Checked := gDriveMenuButton;
cbShowTabs.Checked := gDirectoryTabs;
cbShowCurDir.Checked := gCurDir;
cbShowTabHeader.Checked := gTabHeader;
cbShowStatusBar.Checked := gStatusBar;
cbShowCmdLine.Checked := gCmdLine or gTermWindow;
cbShowCmdLine.Enabled:= not gTermWindow;
cbShowKeysPanel.Checked := gKeyButtons;
cbFlatInterface.Checked := gInterfaceFlat;
cbLogWindow.Checked := gLogWindow;
cbTermWindow.Checked := gTermWindow;
cbShowDriveFreeSpace.Checked := gDriveFreeSpace;
cbFreespaceInd.Checked := gDriveInd;
cbProgInMenuBar.Checked := gProgInMenuBar;
cbPanelOfOperations.Checked := gPanelOfOp;
end;
function TfrmOptionsLayout.Save: TOptionsEditorSaveFlags;
begin
Result := [];
gMainMenu := cbShowMainMenu.Checked;
gButtonBar := cbShowMainToolBar.Checked;
gToolBarFlat := cbFlatToolBar.Checked;
gDriveBar1 := cbShowDiskPanel.Checked;
gDriveBar2 := cbTwoDiskPanels.Checked;
gDriveBarFlat := cbFlatDiskPanel.Checked;
gDriveMenuButton := cbShowDriveMenuButton.Checked;
gDirectoryTabs := cbShowTabs.Checked;
gCurDir := cbShowCurDir.Checked;
gTabHeader := cbShowTabHeader.Checked;
gStatusBar := cbShowStatusBar.Checked;
gCmdLine := cbShowCmdLine.Checked;
gKeyButtons := cbShowKeysPanel.Checked;
gInterfaceFlat := cbFlatInterface.Checked;
gLogWindow := cbLogWindow.Checked;
gTermWindow := cbTermWindow.Checked;
gDriveFreeSpace := cbShowDriveFreeSpace.Checked;
gDriveInd := cbFreespaceInd.Checked;
gProgInMenuBar := cbProgInMenuBar.Checked;
gPanelOfOp := cbPanelOfOperations.Checked;
end;
initialization
RegisterOptionsEditor(optedLayout, TfrmOptionsLayout);
end.