From 1b2b4bb4f3ecc034a6e9364d8768e50b167a9680 Mon Sep 17 00:00:00 2001 From: Tomas Bzatek Date: Tue, 24 Dec 2024 12:41:48 +0100 Subject: Rough GTK3 port --- UPreferences.pas | 1126 ++++++++++++++++++++++++++++++++++-------------------- 1 file changed, 703 insertions(+), 423 deletions(-) (limited to 'UPreferences.pas') diff --git a/UPreferences.pas b/UPreferences.pas index 008ecf5..f66c1eb 100644 --- a/UPreferences.pas +++ b/UPreferences.pas @@ -22,13 +22,13 @@ unit UPreferences; interface uses - gtk2, pango, SysUtils, Classes, GTKControls, GTKForms, GTKStdCtrls, GTKExtCtrls, - GTKUtils, GTKDialogs, GTKPixbuf, GTKClasses, GTKMenus, ULibc, - UGnome; + SysUtils, Classes, lazgdk3, lazgtk3, lazpango1, GTKControls, GTKForms, GTKStdCtrls, GTKExtCtrls, + GTKUtils, GTKDialogs, GTKPixbuf, GTKClasses, GTKMenus, + ULibc; type TFPreferences = class(TGTKDialog) - TitleFrame, ListFontFrame: TGTKFrame; + TitleFrame: TGTKFrame; TitleLabel: TGTKLabel; TitleEventBox: TGTKEventBox; TitleIcon: TGTKImage; @@ -36,7 +36,7 @@ type Notebook: TGTKNotebook; GeneralPage, ColorsPage, FontsPage, PanelsPage, ApplicationsPage, ExperimentalPage: TGTKVBox; RowHeightLabel, NumHistoryItemsLabel, ViewerLabel, EditorLabel, TerminalLabel, GeneralLabel2, ExternalAppsLabel, FontsLabel2, - ListFontLabel, ListFontPreview, ColorsLabel2, ForegroundLabel, BackgroundLabel, PanelsLabel2, ApplicationsLabel2, + ListFontLabel, ColorsLabel2, ForegroundLabel, BackgroundLabel, PanelsLabel2, ApplicationsLabel2, ExperimentalLabel2, PanelsLabel3, PanelsLabel4: TGTKLabel; NormalItemFGColorLabel, ActiveItemFGColorLabel, InactiveItemFGColorLabel, SelectedItemFGColorLabel, LinkItemFGColorLabel, DotFileItemFGColorLabel: TGTKLabel; @@ -50,48 +50,45 @@ type LinkItemFGColorDefault, DotFileItemFGColorDefault: TGTKCheckButton; HBox1, HBox2, HBox3, HBox4: TGTKHBox; VBox1: TGTKVBox; - ViewerCombo, EditorCombo, TerminalCombo: TGTKCombo; - ViewerBrowseButton, EditorBrowseButton, TerminalBrowseButton, ChangeFontButton: TGTKButton; + ViewerCommandComboBox, EditorCommandComboBox, TerminalCommandComboBox: TGTKComboBoxEntry; + ViewerBrowseButton, EditorBrowseButton, TerminalBrowseButton: TGTKButton; NormalItemFGColorButton, ActiveItemFGColorButton, InactiveItemFGColorButton, SelectedItemFGColorButton, LinkItemFGColorButton, - DotFileItemFGColorButton, NormalItemBGColorButton, ActiveItemBGColorButton, InactiveItemBGColorButton: TGnomeColorButton; - Table1, Table2, Table3, Table4, Table5, Table6: TGTKTable; + DotFileItemFGColorButton, NormalItemBGColorButton, ActiveItemBGColorButton, InactiveItemBGColorButton: TGTKColorButton; + Grid1, Grid2, Grid3, Grid4, Grid5, Grid6: TGTKGrid; RowHeightSpinEdit, NumHistoryItemsSpinEdit: TGTKSpinEdit; SizeFormatLabel: TGTKLabel; - SizeFormatOptionMenu: TGTKOptionMenu; - miSizeFormat1, miSizeFormat2, miSizeFormat3, miSizeFormat4, miSizeFormat5, miSizeFormat6: TGTKMenuItem; + SizeFormatComboBox: TGTKComboBoxText; UseInternalViewerCheckBox: TGTKCheckButton; ViewerLabel2, EditorLabel2, TerminalLabel2, CmdLineBehaviourLabel: TGTKLabel; - ViewerOptionMenu, EditorOptionMenu, TerminalOptionMenu: TGTKOptionMenu; - miViewerTerminalDetect, miViewerAlwaysTerminal, miViewerNoTerminal, - miEditorTerminalDetect, miEditorAlwaysTerminal, miEditorNoTerminal, - miTerminalDetect, miAlwaysTerminal, miNoTerminal: TGTKMenuItem; + ViewerX11AppComboBox, EditorX11AppComboBox, CmdLineBehaviourComboBox: TGTKComboBoxText; ShowTextUIDsCheckBox: TGTKCheckButton; DateFormatLabel: TGTKLabel; - DateFormatOptionMenu: TGTKOptionMenu; + DateFormatComboBox: TGTKComboBoxText; CustomDateFormatEntry: TGTKEntry; TimeFormatLabel: TGTKLabel; - TimeFormatOptionMenu: TGTKOptionMenu; + TimeFormatComboBox: TGTKComboBoxText; CustomTimeFormatEntry: TGTKEntry; DateTimeFormatLabel: TGTKLabel; - DateTimeFormatOptionMenu: TGTKOptionMenu; + DateTimeFormatComboBox: TGTKComboBoxText; QuickSearchLabel: TGTKLabel; - QuickSearchOptionMenu: TGTKOptionMenu; + QuickSearchComboBox: TGTKComboBoxText; SortDirectoriesLikeFilesCheckBox: TGTKCheckButton; TempPathLabel, VFSTempPathLabel: TGTKLabel; VFSTempPathEntry: TGTKEntry; QuickRenameSkipExtCheckBox: TGTKCheckButton; RightClickSelectCheckBox: TGTKCheckButton; + ListFontButton: TGTKFontButton; procedure FormCreate(Sender: TObject); override; procedure FormDestroy(Sender: TObject); procedure FormKeyDown(Sender: TObject; Key: Word; Shift: TShiftState; var Accept: boolean); procedure ViewerBrowseButtonClick(Sender: TObject); procedure DefaultFontCheckBoxToggled(Sender: TObject); - procedure ChangeFontButtonClick(Sender: TObject); procedure ColorButtonDefaultsToggled(Sender: TObject); procedure DefaultRowHeightCheckBoxToggled(Sender: TObject); procedure UseInternalViewerCheckBoxToggled(Sender: TObject); - procedure DateTimeFormatOptionMenuChanged(Sender: TObject); + procedure DateTimeFormatComboBoxChanged(Sender: TObject); + procedure ListFontButtonFontNameChanged(Sender: TObject); private DefaultGTKFont, LocalListFont: string; FormatTime: time_t; @@ -111,24 +108,25 @@ uses ULocale, UCoreUtils, UConfig; procedure TFPreferences.FormCreate(Sender: TObject); var i: integer; - Item: TGTKMenuItem; + VBox: TGTKVBox; begin SetDefaultSize(450, 600); Caption := LANGPreferences_Caption; Buttons := [mbOK, mbCancel]; - ShowSeparator := False; TitleEventBox := TGTKEventBox.Create(Self); TitleLabel := TGTKLabel.Create(Self); TitleLabel.Caption := LANGPreferences_TitleLabel_Caption; TitleLabel.UseMarkup := True; TitleLabel.XAlign := 0; - TitleLabel.XPadding := 0; - TitleLabel.YPadding := 3; + TitleLabel.MarginStart := 0; + TitleLabel.MarginEnd := 0; + TitleLabel.MarginTop := 3; + TitleLabel.MarginBottom := 3; TitleEventBox.ControlState := csPrelight; TitleFrame := TGTKFrame.CreateWithoutLabel(Self); TitleFrame.ShadowType := stShadowOut; TitleIcon := TGTKImage.Create(Self); - TitleIcon.SetFromStock('gtk-preferences', isLargeToolbar); + TitleIcon.SetFromIconName('gtk-preferences', isLargeToolbar); TitleHBox := TGTKHBox.Create(Self); TitleHBox.Homogeneous := False; TitleHBox.AddControlEx(TGTKVBox.Create(Self), False, False, 5); @@ -166,164 +164,203 @@ begin GeneralPage.AddControlEx(TGTKVBox.Create(Self), False, False, 5); GeneralLabel2 := TGTKLabel.Create(Self); GeneralLabel2.XAlign := 0; - GeneralLabel2.XPadding := 10; + GeneralLabel2.MarginStart := 10; + GeneralLabel2.MarginEnd := 10; GeneralLabel2.Caption := Format('%s', [LANGPreferences_GeneralPage]); GeneralLabel2.UseMarkup := True; GeneralPage.AddControlEx(GeneralLabel2, False, False, 5); - Table2 := TGTKTable.Create(Self); - Table2.SetRowColCount(8, 5); - GeneralPage.AddControlEx(Table2, False, False, 0); + Grid2 := TGTKGrid.Create(Self); + GeneralPage.AddControlEx(Grid2, False, False, 0); ClearROAttr := TGTKCheckButton.CreateWithLabel(Self, LANGPreferences_ClearReadonlyAttribute); - Table2.AddControlEx(1, 0, 3, 1, ClearROAttr, [taoShrink, taoFill], [taoShrink, taoExpand, taoFill], 0, 2); + ClearROAttr.MarginTop := 2; + ClearROAttr.MarginBottom := 2; + Grid2.AddControl(1, 0, 3, 1, ClearROAttr); SelectAllDirectoriesCheckBox := TGTKCheckButton.CreateWithLabel(Self, LANGPreferencesSelectAllDirectoriesCheckBox_Caption); - Table2.AddControlEx(1, 1, 3, 1, SelectAllDirectoriesCheckBox, [taoShrink, taoFill], [taoShrink, taoExpand, taoFill], 0, 2); + SelectAllDirectoriesCheckBox.MarginTop := 2; + SelectAllDirectoriesCheckBox.MarginBottom := 2; + Grid2.AddControl(1, 1, 3, 1, SelectAllDirectoriesCheckBox); NewStyleAltOCheckBox := TGTKCheckButton.CreateWithLabel(Self, LANGPreferencesNewStyleAltOCheckBox_Caption); NewStyleAltOCheckBox.Tooltip := LANGPreferencesNewStyleAltOCheckBox_Tooltip; - Table2.AddControlEx(1, 2, 3, 1, NewStyleAltOCheckBox, [taoShrink, taoFill], [taoShrink, taoExpand, taoFill], 0, 2); + NewStyleAltOCheckBox.MarginTop := 2; + NewStyleAltOCheckBox.MarginBottom := 2; + Grid2.AddControl(1, 2, 3, 1, NewStyleAltOCheckBox); ShowFuncButtonsCheckBox := TGTKCheckButton.CreateWithLabel(Self, LANGPreferencesShowFuncButtonsCheckBox_Caption); - Table2.AddControlEx(1, 3, 3, 1, ShowFuncButtonsCheckBox, [taoShrink, taoFill], [taoShrink, taoExpand, taoFill], 0, 2); + ShowFuncButtonsCheckBox.MarginTop := 2; + ShowFuncButtonsCheckBox.MarginBottom := 2; + Grid2.AddControl(1, 3, 3, 1, ShowFuncButtonsCheckBox); NumHistoryItemsLabel := TGTKLabel.Create(Self); NumHistoryItemsLabel.Caption := LANGPreferences_NumHistoryItems; NumHistoryItemsLabel.XAlign := 0; + NumHistoryItemsLabel.MarginTop := 2; + NumHistoryItemsLabel.MarginBottom := 2; NumHistoryItemsSpinEdit := TGTKSpinEdit.Create(Self); NumHistoryItemsSpinEdit.Digits := 0; + NumHistoryItemsSpinEdit.MarginStart := 10; + NumHistoryItemsSpinEdit.MarginEnd := 10; + NumHistoryItemsSpinEdit.MarginTop := 2; + NumHistoryItemsSpinEdit.MarginBottom := 2; NumHistoryItemsLabel.FocusControl := NumHistoryItemsSpinEdit; NumHistoryItemsLabel.UseUnderline := True; - Table2.AddControlEx(0, 4, 1, 1, TGTKVBox.Create(Self), [taoShrink], [taoShrink, taoExpand, taoFill], 15, 2); - Table2.AddControlEx(1, 4, 1, 1, NumHistoryItemsLabel, [taoShrink, taoFill], [taoShrink, taoExpand, taoFill], 0, 2); - Table2.AddControlEx(2, 4, 1, 1, NumHistoryItemsSpinEdit, [taoShrink, taoFill], [taoShrink, taoExpand, taoFill], 10, 2); + VBox := TGTKVBox.Create(Self); + VBox.MarginStart := 15; + VBox.MarginEnd := 15; + VBox.MarginTop := 2; + VBox.MarginBottom := 2; + Grid2.AddControl(0, 4, 1, 1, VBox); + Grid2.AddControl(1, 4, 1, 1, NumHistoryItemsLabel); + Grid2.AddControl(2, 4, 1, 1, NumHistoryItemsSpinEdit); RowHeightLabel := TGTKLabel.Create(Self); RowHeightLabel.Caption := LANGPreferences_RowHeight; RowHeightLabel.XAlign := 0; + RowHeightLabel.MarginTop := 2; + RowHeightLabel.MarginBottom := 2; RowHeightSpinEdit := TGTKSpinEdit.Create(Self); RowHeightSpinEdit.Digits := 0; + RowHeightSpinEdit.MarginStart := 10; + RowHeightSpinEdit.MarginEnd := 10; + RowHeightSpinEdit.MarginTop := 2; + RowHeightSpinEdit.MarginBottom := 2; RowHeightLabel.FocusControl := RowHeightSpinEdit; RowHeightLabel.UseUnderline := True; DefaultRowHeightCheckBox := TGTKCheckButton.CreateWithLabel(Self, LANGPreferences_Default); DefaultRowHeightCheckBox.OnToggled := @DefaultRowHeightCheckBoxToggled; - Table2.AddControlEx(1, 5, 1, 1, RowHeightLabel, [taoShrink, taoFill], [taoShrink, taoExpand, taoFill], 0, 2); - Table2.AddControlEx(2, 5, 1, 1, RowHeightSpinEdit, [taoFill, taoExpand], [taoShrink, taoExpand, taoFill], 10, 2); - Table2.AddControlEx(3, 5, 1, 1, DefaultRowHeightCheckBox, [taoFill, taoExpand], [taoShrink, taoExpand, taoFill], 10, 2); - Table2.AddControlEx(4, 5, 1, 1, TGTKVBox.Create(Self), [taoShrink], [taoShrink, taoExpand, taoFill], 8, 2); + DefaultRowHeightCheckBox.MarginStart := 10; + DefaultRowHeightCheckBox.MarginEnd := 10; + DefaultRowHeightCheckBox.MarginTop := 2; + DefaultRowHeightCheckBox.MarginBottom := 2; + VBox := TGTKVBox.Create(Self); + VBox.MarginStart := 8; + VBox.MarginEnd := 8; + VBox.MarginTop := 2; + VBox.MarginBottom := 2; + Grid2.AddControl(1, 5, 1, 1, RowHeightLabel); + Grid2.AddControl(2, 5, 1, 1, RowHeightSpinEdit); + Grid2.AddControl(3, 5, 1, 1, DefaultRowHeightCheckBox); + Grid2.AddControl(4, 5, 1, 1, VBox); SizeFormatLabel := TGTKLabel.Create(Self); SizeFormatLabel.Caption := LANGPreferencesSizeFormatLabel_Caption; SizeFormatLabel.XAlign := 0; SizeFormatLabel.UseUnderline := True; - SizeFormatOptionMenu := TGTKOptionMenu.Create(Self); - SizeFormatLabel.FocusControl := SizeFormatOptionMenu; - miSizeFormat1 := TGTKMenuItem.CreateTyped(Self, itLabel); - miSizeFormat1.Caption := Format('%s (%s)', [LANGPreferencesmiSizeFormat1, FormatSize(123456, 0, 0)]); - miSizeFormat2 := TGTKMenuItem.CreateTyped(Self, itLabel); - miSizeFormat2.Caption := FormatSize(123456, 0, 1); - miSizeFormat3 := TGTKMenuItem.CreateTyped(Self, itLabel); - miSizeFormat3.Caption := FormatSize(123456, 0, 2); - miSizeFormat4 := TGTKMenuItem.CreateTyped(Self, itLabel); - miSizeFormat4.Caption := FormatSize(123456, 0, 3); - miSizeFormat5 := TGTKMenuItem.CreateTyped(Self, itLabel); - miSizeFormat5.Caption := FormatSize(123456, 0, 4); - miSizeFormat6 := TGTKMenuItem.CreateTyped(Self, itLabel); - miSizeFormat6.Caption := LANGPreferencesmiSizeFormat6; - SizeFormatOptionMenu.Items.Add(miSizeFormat1); - SizeFormatOptionMenu.Items.Add(miSizeFormat2); - SizeFormatOptionMenu.Items.Add(miSizeFormat3); - SizeFormatOptionMenu.Items.Add(miSizeFormat4); - SizeFormatOptionMenu.Items.Add(miSizeFormat5); - SizeFormatOptionMenu.Items.Add(miSizeFormat6); - Table2.AddControl(0, 7, 1, 1, TGTKVBox.Create(Self), 0, 4); - Table2.AddControlEx(1, 8, 1, 1, SizeFormatLabel, [taoShrink, taoFill], [taoShrink, taoExpand, taoFill], 0, 2); - Table2.AddControlEx(2, 8, 2, 1, SizeFormatOptionMenu, [taoShrink, taoFill], [taoShrink, taoExpand, taoFill], 10, 2); - - TerminalOptionMenu := TGTKOptionMenu.Create(Self); - miTerminalDetect := TGTKMenuItem.CreateTyped(Self, itLabel); - miTerminalDetect.Caption := LANGPreferencesAutodetectXApp; - miAlwaysTerminal := TGTKMenuItem.CreateTyped(Self, itLabel); - miAlwaysTerminal.Caption := LANGPreferencesAlwaysRunInTerminal; - miNoTerminal := TGTKMenuItem.CreateTyped(Self, itLabel); - miNoTerminal.Caption := LANGPreferencesNeverRunInTerminal; - TerminalOptionMenu.Items.Add(miTerminalDetect); - TerminalOptionMenu.Items.Add(miAlwaysTerminal); - TerminalOptionMenu.Items.Add(miNoTerminal); + SizeFormatLabel.MarginTop := 2; + SizeFormatLabel.MarginBottom := 2; + SizeFormatComboBox := TGTKComboBoxText.Create(Self); + SizeFormatLabel.FocusControl := SizeFormatComboBox; + SizeFormatComboBox.AppendItem(Format('%s (%s)', [LANGPreferencesmiSizeFormat1, FormatSize(123456, 0, 0)])); + SizeFormatComboBox.AppendItem(FormatSize(123456, 0, 1)); + SizeFormatComboBox.AppendItem(FormatSize(123456, 0, 2)); + SizeFormatComboBox.AppendItem(FormatSize(123456, 0, 3)); + SizeFormatComboBox.AppendItem(FormatSize(123456, 0, 4)); + SizeFormatComboBox.AppendItem(LANGPreferencesmiSizeFormat6); + SizeFormatComboBox.MarginStart := 10; + SizeFormatComboBox.MarginEnd := 10; + SizeFormatComboBox.MarginTop := 2; + SizeFormatComboBox.MarginBottom := 2; + VBox := TGTKVBox.Create(Self); + VBox.MarginTop := 4; + VBox.MarginBottom := 4; + Grid2.AddControl(0, 7, 1, 1, VBox); + Grid2.AddControl(1, 8, 1, 1, SizeFormatLabel); + Grid2.AddControl(2, 8, 2, 1, SizeFormatComboBox); + + CmdLineBehaviourComboBox := TGTKComboBoxText.Create(Self); + CmdLineBehaviourComboBox.AppendItem(LANGPreferencesAutodetectXApp); + CmdLineBehaviourComboBox.AppendItem(LANGPreferencesAlwaysRunInTerminal); + CmdLineBehaviourComboBox.AppendItem(LANGPreferencesNeverRunInTerminal); + CmdLineBehaviourComboBox.MarginStart := 10; + CmdLineBehaviourComboBox.MarginEnd := 10; + CmdLineBehaviourComboBox.MarginTop := 2; + CmdLineBehaviourComboBox.MarginBottom := 2; CmdLineBehaviourLabel := TGTKLabel.Create(Self); CmdLineBehaviourLabel.Caption := LANGPreferencesCmdLineBehaviourLabel_Caption; CmdLineBehaviourLabel.XAlign := 0; - CmdLineBehaviourLabel.FocusControl := TerminalOptionMenu; + CmdLineBehaviourLabel.MarginTop := 2; + CmdLineBehaviourLabel.MarginBottom := 2; + CmdLineBehaviourLabel.FocusControl := CmdLineBehaviourComboBox; CmdLineBehaviourLabel.UseUnderline := True; - Table2.AddControlEx(1, 6, 1, 1, CmdLineBehaviourLabel, [taoShrink, taoFill], [taoShrink, taoExpand, taoFill], 0, 2); - Table2.AddControlEx(2, 6, 2, 1, TerminalOptionMenu, [taoShrink, taoFill], [taoShrink, taoExpand, taoFill], 10, 2); + Grid2.AddControl(1, 6, 1, 1, CmdLineBehaviourLabel); + Grid2.AddControl(2, 6, 2, 1, CmdLineBehaviourComboBox); FormatTime := libc_time(nil); DateFormatLabel := TGTKLabel.Create(Self); DateFormatLabel.Caption := LANGPreferences_DateFormatLabel_Caption; DateFormatLabel.XAlign := 0; + DateFormatLabel.MarginTop := 2; + DateFormatLabel.MarginBottom := 2; DateFormatLabel.UseUnderline := True; - DateFormatOptionMenu := TGTKOptionMenu.Create(Self); - DateFormatLabel.FocusControl := DateFormatOptionMenu; - Item := TGTKMenuItem.CreateTyped(Self, itLabel); - Item.Caption := Format('%s (%s)', [LANGPreferences_System, FormatDate(FormatTime, False, True, -1, 0, -1)]); - DateFormatOptionMenu.Items.Add(Item); - for i := 1 to 14 do begin - Item := TGTKMenuItem.CreateTyped(Self, itLabel); - Item.Caption := FormatDate(FormatTime, False, True, -1, i, -1); - DateFormatOptionMenu.Items.Add(Item); - end; - Item := TGTKMenuItem.CreateTyped(Self, itLabel); - Item.Caption := LANGPreferences_Custom; - DateFormatOptionMenu.Items.Add(Item); - DateFormatOptionMenu.OnChanged := @DateTimeFormatOptionMenuChanged; - Table2.AddControlEx(1, 9, 1, 1, DateFormatLabel, [taoShrink, taoFill], [taoShrink, taoExpand, taoFill], 0, 2); - Table2.AddControlEx(2, 9, 2, 1, DateFormatOptionMenu, [taoShrink, taoFill], [taoShrink, taoExpand, taoFill], 10, 2); + DateFormatComboBox := TGTKComboBoxText.Create(Self); + DateFormatLabel.FocusControl := DateFormatComboBox; + DateFormatComboBox.AppendItem(Format('%s (%s)', [LANGPreferences_System, FormatDate(FormatTime, False, True, -1, 0, -1)])); + for i := 1 to 14 do + DateFormatComboBox.AppendItem(FormatDate(FormatTime, False, True, -1, i, -1)); + DateFormatComboBox.AppendItem(LANGPreferences_Custom); + DateFormatComboBox.OnChanged := @DateTimeFormatComboBoxChanged; + DateFormatComboBox.MarginStart := 10; + DateFormatComboBox.MarginEnd := 10; + DateFormatComboBox.MarginTop := 2; + DateFormatComboBox.MarginBottom := 2; + Grid2.AddControl(1, 9, 1, 1, DateFormatLabel); + Grid2.AddControl(2, 9, 2, 1, DateFormatComboBox); CustomDateFormatEntry := TGTKEntry.Create(Self); CustomDateFormatEntry.Enabled := False; CustomDateFormatEntry.Tooltip := LANGPreferences_CustomDateFormatEntry_Tooltip; - CustomDateFormatEntry.OnChanged := @DateTimeFormatOptionMenuChanged; - Table2.AddControlEx(2, 10, 2, 1, CustomDateFormatEntry, [taoShrink], [taoShrink], 10, 2); + CustomDateFormatEntry.OnChanged := @DateTimeFormatComboBoxChanged; + CustomDateFormatEntry.MarginStart := 10; + CustomDateFormatEntry.MarginEnd := 10; + CustomDateFormatEntry.MarginTop := 2; + CustomDateFormatEntry.MarginBottom := 2; + Grid2.AddControl(2, 10, 2, 1, CustomDateFormatEntry); TimeFormatLabel := TGTKLabel.Create(Self); TimeFormatLabel.Caption := LANGPreferences_TimeFormatLabel_Caption; TimeFormatLabel.XAlign := 0; + TimeFormatLabel.MarginTop := 2; + TimeFormatLabel.MarginBottom := 2; TimeFormatLabel.UseUnderline := True; - TimeFormatOptionMenu := TGTKOptionMenu.Create(Self); - TimeFormatLabel.FocusControl := TimeFormatOptionMenu; - Item := TGTKMenuItem.CreateTyped(Self, itLabel); - Item.Caption := Format('%s (%s)', [LANGPreferences_System, FormatDate(FormatTime, True, False, 0, -1, -1)]); - TimeFormatOptionMenu.Items.Add(Item); - for i := 1 to 11 do begin - Item := TGTKMenuItem.CreateTyped(Self, itLabel); - Item.Caption := FormatDate(FormatTime, True, False, i, -1, -1); - TimeFormatOptionMenu.Items.Add(Item); - end; - Item := TGTKMenuItem.CreateTyped(Self, itLabel); - Item.Caption := LANGPreferences_Custom; - TimeFormatOptionMenu.Items.Add(Item); - TimeFormatOptionMenu.OnChanged := @DateTimeFormatOptionMenuChanged; - Table2.AddControlEx(1, 11, 1, 1, TimeFormatLabel, [taoShrink, taoFill], [taoShrink, taoExpand, taoFill], 0, 2); - Table2.AddControlEx(2, 11, 2, 1, TimeFormatOptionMenu, [taoShrink, taoFill], [taoShrink, taoExpand, taoFill], 10, 2); + TimeFormatComboBox := TGTKComboBoxText.Create(Self); + TimeFormatLabel.FocusControl := TimeFormatComboBox; + TimeFormatComboBox.AppendItem(Format('%s (%s)', [LANGPreferences_System, FormatDate(FormatTime, True, False, 0, -1, -1)])); + for i := 1 to 11 do + TimeFormatComboBox.AppendItem(FormatDate(FormatTime, True, False, i, -1, -1)); + TimeFormatComboBox.AppendItem(LANGPreferences_Custom); + TimeFormatComboBox.OnChanged := @DateTimeFormatComboBoxChanged; + TimeFormatComboBox.MarginStart := 10; + TimeFormatComboBox.MarginEnd := 10; + TimeFormatComboBox.MarginTop := 2; + TimeFormatComboBox.MarginBottom := 2; + Grid2.AddControl(1, 11, 1, 1, TimeFormatLabel); + Grid2.AddControl(2, 11, 2, 1, TimeFormatComboBox); CustomTimeFormatEntry := TGTKEntry.Create(Self); CustomTimeFormatEntry.Enabled := False; CustomTimeFormatEntry.Tooltip := LANGPreferences_CustomTimeFormatEntry_Tooltip; - CustomTimeFormatEntry.OnChanged := @DateTimeFormatOptionMenuChanged; - Table2.AddControlEx(2, 12, 2, 1, CustomTimeFormatEntry, [taoShrink], [taoShrink], 10, 2); + CustomTimeFormatEntry.OnChanged := @DateTimeFormatComboBoxChanged; + CustomTimeFormatEntry.MarginStart := 10; + CustomTimeFormatEntry.MarginEnd := 10; + CustomTimeFormatEntry.MarginTop := 2; + CustomTimeFormatEntry.MarginBottom := 2; + Grid2.AddControl(2, 12, 2, 1, CustomTimeFormatEntry); DateTimeFormatLabel := TGTKLabel.Create(Self); DateTimeFormatLabel.Caption := LANGPreferences_DateTimeFormatLabel_Caption; DateTimeFormatLabel.XAlign := 0; + DateTimeFormatLabel.MarginTop := 2; + DateTimeFormatLabel.MarginBottom := 2; DateTimeFormatLabel.UseUnderline := True; - DateTimeFormatOptionMenu := TGTKOptionMenu.Create(Self); - DateTimeFormatLabel.FocusControl := DateTimeFormatOptionMenu; - Item := TGTKMenuItem.CreateTyped(Self, itLabel); - Item.Caption := FormatDate(FormatTime, True, True, -1, -1, 0); - DateTimeFormatOptionMenu.Items.Add(Item); - Item := TGTKMenuItem.CreateTyped(Self, itLabel); - Item.Caption := FormatDate(FormatTime, True, True, -1, -1, 1); - DateTimeFormatOptionMenu.Items.Add(Item); - Table2.AddControlEx(1, 13, 1, 1, DateTimeFormatLabel, [taoShrink, taoFill], [taoShrink, taoExpand, taoFill], 0, 2); - Table2.AddControlEx(2, 13, 2, 1, DateTimeFormatOptionMenu, [taoShrink, taoFill], [taoShrink, taoExpand, taoFill], 10, 2); + DateTimeFormatComboBox := TGTKComboBoxText.Create(Self); + DateTimeFormatLabel.FocusControl := DateTimeFormatComboBox; + DateTimeFormatComboBox.AppendItem(FormatDate(FormatTime, True, True, -1, -1, 0)); + DateTimeFormatComboBox.AppendItem(FormatDate(FormatTime, True, True, -1, -1, 1)); + DateTimeFormatComboBox.MarginStart := 10; + DateTimeFormatComboBox.MarginEnd := 10; + DateTimeFormatComboBox.MarginTop := 2; + DateTimeFormatComboBox.MarginBottom := 2; + Grid2.AddControl(1, 13, 1, 1, DateTimeFormatLabel); + Grid2.AddControl(2, 13, 2, 1, DateTimeFormatComboBox); // ********* PAGE Panels @@ -331,349 +368,612 @@ begin PanelsPage.AddControlEx(TGTKVBox.Create(Self), False, False, 5); PanelsLabel2 := TGTKLabel.Create(Self); PanelsLabel2.XAlign := 0; - PanelsLabel2.XPadding := 10; + PanelsLabel2.MarginStart := 10; + PanelsLabel2.MarginEnd := 10; PanelsLabel2.Caption := Format('%s', [LANGPreferencesFeatures]); PanelsLabel2.UseMarkup := True; PanelsPage.AddControlEx(PanelsLabel2, False, False, 5); - Table5 := TGTKTable.Create(Self); - Table5.SetRowColCount(19, 2); - PanelsPage.AddControlEx(Table5, False, False, 0); + Grid5 := TGTKGrid.Create(Self); + PanelsPage.AddControlEx(Grid5, False, False, 0); DisableMouseRename := TGTKCheckButton.CreateWithLabel(Self, LANGPreferences_DisableMouseRenaming); DisableMouseRename.Tooltip := LANGPreferencesDisableMouseRename_Tooltip; - Table5.AddControl(0, 0, 2, 1, DisableMouseRename, 30, 2); + DisableMouseRename.MarginStart := 30; + DisableMouseRename.MarginEnd := 30; + DisableMouseRename.MarginTop := 2; + DisableMouseRename.MarginBottom := 2; QuickRenameSkipExtCheckBox := TGTKCheckButton.CreateWithLabel(Self, LANGPreferences_QuickRenameSkipExtCheckBox); QuickRenameSkipExtCheckBox.Tooltip := LANGPreferences_QuickRenameSkipExtCheckBox_Tooltip; - Table5.AddControl(0, 1, 2, 1, QuickRenameSkipExtCheckBox, 30, 2); + QuickRenameSkipExtCheckBox.MarginStart := 30; + QuickRenameSkipExtCheckBox.MarginEnd := 30; + QuickRenameSkipExtCheckBox.MarginTop := 2; + QuickRenameSkipExtCheckBox.MarginBottom := 2; RightClickSelectCheckBox := TGTKCheckButton.CreateWithLabel(Self, LANGPreferences_RightClickSelectCheckBox); RightClickSelectCheckBox.Tooltip := LANGPreferences_RightClickSelectCheckBox_Tooltip; - Table5.AddControl(0, 2, 2, 1, RightClickSelectCheckBox, 30, 2); + RightClickSelectCheckBox.MarginStart := 30; + RightClickSelectCheckBox.MarginEnd := 30; + RightClickSelectCheckBox.MarginTop := 2; + RightClickSelectCheckBox.MarginBottom := 2; DisableFileTipsCheckBox := TGTKCheckButton.CreateWithLabel(Self, LANGPreferencesDisableFileTipsCheckBox_Caption); DisableFileTipsCheckBox.Tooltip := LANGPreferencesDisableFileTipsCheckBox_Tooltip; - Table5.AddControl(0, 3, 2, 1, DisableFileTipsCheckBox, 30, 2); + DisableFileTipsCheckBox.MarginStart := 30; + DisableFileTipsCheckBox.MarginEnd := 30; + DisableFileTipsCheckBox.MarginTop := 2; + DisableFileTipsCheckBox.MarginBottom := 2; SortDirectoriesLikeFilesCheckBox := TGTKCheckButton.CreateWithLabel(Self, LANGPreferences_SortDirectoriesLikeFilesCheckBox); SortDirectoriesLikeFilesCheckBox.Tooltip := LANGPreferences_SortDirectoriesLikeFilesCheckBox_Tooltip; - Table5.AddControl(0, 4, 2, 1, SortDirectoriesLikeFilesCheckBox, 30, 2); - Table5.AddControl(0, 5, 2, 1, TGTKVBox.Create(Self), 0, 7); + SortDirectoriesLikeFilesCheckBox.MarginStart := 30; + SortDirectoriesLikeFilesCheckBox.MarginEnd := 30; + SortDirectoriesLikeFilesCheckBox.MarginTop := 2; + SortDirectoriesLikeFilesCheckBox.MarginBottom := 2; + VBox := TGTKVBox.Create(Self); + VBox.MarginTop := 7; + VBox.MarginBottom := 7; + Grid5.AddControl(0, 0, 2, 1, DisableMouseRename); + Grid5.AddControl(0, 1, 2, 1, QuickRenameSkipExtCheckBox); + Grid5.AddControl(0, 2, 2, 1, RightClickSelectCheckBox); + Grid5.AddControl(0, 3, 2, 1, DisableFileTipsCheckBox); + Grid5.AddControl(0, 4, 2, 1, SortDirectoriesLikeFilesCheckBox); + Grid5.AddControl(0, 5, 2, 1, VBox); PanelsLabel3 := TGTKLabel.Create(Self); - PanelsLabel3.XAlign := 0; - PanelsLabel3.XPadding := 0; PanelsLabel3.Caption := Format('%s', [LANGPreferencesShow]); PanelsLabel3.UseMarkup := True; - Table5.AddControl(0, 6, 2, 1, PanelsLabel3, 10, 2); + PanelsLabel3.XAlign := 0; + PanelsLabel3.MarginStart := 10; + PanelsLabel3.MarginEnd := 10; + PanelsLabel3.MarginTop := 2; + PanelsLabel3.MarginBottom := 2; + Grid5.AddControl(0, 6, 2, 1, PanelsLabel3); ShowFiletypeIcons := TGTKCheckButton.CreateWithLabel(Self, LANGPreferences_ShowFiletypeIconsInList); - Table5.AddControl(0, 7, 2, 1, ShowFiletypeIcons, 30, 2); + ShowFiletypeIcons.MarginStart := 30; + ShowFiletypeIcons.MarginEnd := 30; + ShowFiletypeIcons.MarginTop := 2; + ShowFiletypeIcons.MarginBottom := 2; DirsInBoldCheckBox := TGTKCheckButton.CreateWithLabel(Self, LANGPreferencesDirsInBoldCheckBox_Caption); - Table5.AddControl(0, 8, 2, 1, DirsInBoldCheckBox, 30, 2); + DirsInBoldCheckBox.MarginStart := 30; + DirsInBoldCheckBox.MarginEnd := 30; + DirsInBoldCheckBox.MarginTop := 2; + DirsInBoldCheckBox.MarginBottom := 2; DisableDirectoryBracketsCheckBox := TGTKCheckButton.CreateWithLabel(Self, LANGPreferencesDisableDirectoryBracketsCheckBox_Caption); - Table5.AddControl(0, 9, 2, 1, DisableDirectoryBracketsCheckBox, 30, 2); + DisableDirectoryBracketsCheckBox.MarginStart := 30; + DisableDirectoryBracketsCheckBox.MarginEnd := 30; + DisableDirectoryBracketsCheckBox.MarginTop := 2; + DisableDirectoryBracketsCheckBox.MarginBottom := 2; OctalPermissionsCheckBox := TGTKCheckButton.CreateWithLabel(Self, LANGPreferencesOctalPermissionsCheckBox_Caption); OctalPermissionsCheckBox.Tooltip := LANGPreferencesOctalPermissionsCheckBox_Tooltip; - Table5.AddControl(0, 10, 2, 1, OctalPermissionsCheckBox, 30, 2); + OctalPermissionsCheckBox.MarginStart := 30; + OctalPermissionsCheckBox.MarginEnd := 30; + OctalPermissionsCheckBox.MarginTop := 2; + OctalPermissionsCheckBox.MarginBottom := 2; ShowTextUIDsCheckBox := TGTKCheckButton.CreateWithLabel(Self, LANGShowTextUIDsCheckBox_Caption); ShowTextUIDsCheckBox.Tooltip := LANGShowTextUIDsCheckBox_Tooltip; - Table5.AddControl(0, 11, 2, 1, ShowTextUIDsCheckBox, 30, 2); - Table5.AddControl(0, 12, 2, 1, TGTKVBox.Create(Self), 0, 7); + ShowTextUIDsCheckBox.MarginStart := 30; + ShowTextUIDsCheckBox.MarginEnd := 30; + ShowTextUIDsCheckBox.MarginTop := 2; + ShowTextUIDsCheckBox.MarginBottom := 2; + VBox := TGTKVBox.Create(Self); + VBox.MarginTop := 7; + VBox.MarginBottom := 7; + Grid5.AddControl(0, 7, 2, 1, ShowFiletypeIcons); + Grid5.AddControl(0, 8, 2, 1, DirsInBoldCheckBox); + Grid5.AddControl(0, 9, 2, 1, DisableDirectoryBracketsCheckBox); + Grid5.AddControl(0, 10, 2, 1, OctalPermissionsCheckBox); + Grid5.AddControl(0, 11, 2, 1, ShowTextUIDsCheckBox); + Grid5.AddControl(0, 12, 2, 1, VBox); PanelsLabel4 := TGTKLabel.Create(Self); - PanelsLabel4.XAlign := 0; - PanelsLabel4.XPadding := 0; PanelsLabel4.Caption := Format('%s', [LANGPreferencesMovement]); PanelsLabel4.UseMarkup := True; - Table5.AddControl(0, 13, 2, 1, PanelsLabel4, 10, 2); + PanelsLabel4.XAlign := 0; + PanelsLabel4.MarginStart := 10; + PanelsLabel4.MarginEnd := 10; + PanelsLabel4.MarginTop := 2; + PanelsLabel4.MarginBottom := 2; + Grid5.AddControl(0, 13, 2, 1, PanelsLabel4); LynxLikeMotionCheckBox := TGTKCheckButton.CreateWithLabel(Self, LANGPreferencesLynxLikeMotionCheckBox_Caption); - Table5.AddControl(0, 14, 2, 1, LynxLikeMotionCheckBox, 30, 2); + LynxLikeMotionCheckBox.MarginStart := 30; + LynxLikeMotionCheckBox.MarginEnd := 30; + LynxLikeMotionCheckBox.MarginTop := 2; + LynxLikeMotionCheckBox.MarginBottom := 2; InsertMovesDownCheckBox := TGTKCheckButton.CreateWithLabel(Self, LANGPreferencesInsertMovesDownCheckBox_Caption); - Table5.AddControl(0, 15, 2, 1, InsertMovesDownCheckBox, 30, 2); + InsertMovesDownCheckBox.MarginStart := 30; + InsertMovesDownCheckBox.MarginEnd := 30; + InsertMovesDownCheckBox.MarginTop := 2; + InsertMovesDownCheckBox.MarginBottom := 2; SpaceMovesDownCheckBox := TGTKCheckButton.CreateWithLabel(Self, LANGPreferencesSpaceMovesDownCheckBox_Caption); - Table5.AddControl(0, 16, 2, 1, SpaceMovesDownCheckBox, 30, 2); + SpaceMovesDownCheckBox.MarginStart := 30; + SpaceMovesDownCheckBox.MarginEnd := 30; + SpaceMovesDownCheckBox.MarginTop := 2; + SpaceMovesDownCheckBox.MarginBottom := 2; + VBox := TGTKVBox.Create(Self); + VBox.MarginTop := 2; + VBox.MarginBottom := 2; + Grid5.AddControl(0, 14, 2, 1, LynxLikeMotionCheckBox); + Grid5.AddControl(0, 15, 2, 1, InsertMovesDownCheckBox); + Grid5.AddControl(0, 16, 2, 1, SpaceMovesDownCheckBox); + Grid5.AddControl(0, 17, 2, 1, VBox); QuickSearchLabel := TGTKLabel.Create(Self); QuickSearchLabel.Caption := LANGPreferences_QuickSearchLabel_Caption; - QuickSearchLabel.XAlign := 0; QuickSearchLabel.UseUnderline := True; - QuickSearchOptionMenu := TGTKOptionMenu.Create(Self); - QuickSearchOptionMenu.Tooltip := LANGPreferences_QuickSearchOptionMenu_Tooltip; - QuickSearchLabel.FocusControl := QuickSearchOptionMenu; - Item := TGTKMenuItem.CreateTyped(Self, itLabel); - Item.Caption := LANGPreferences_QuickSearch_Option1; - QuickSearchOptionMenu.Items.Add(Item); - Item := TGTKMenuItem.CreateTyped(Self, itLabel); - Item.Caption := LANGPreferences_QuickSearch_Option2; - QuickSearchOptionMenu.Items.Add(Item); - Item := TGTKMenuItem.CreateTyped(Self, itLabel); - Item.Caption := LANGPreferences_QuickSearch_Option3; - QuickSearchOptionMenu.Items.Add(Item); - Item := TGTKMenuItem.CreateTyped(Self, itLabel); - Item.Caption := LANGPreferences_QuickSearch_Option4; - QuickSearchOptionMenu.Items.Add(Item); - Table5.AddControl(0, 17, 2, 1, TGTKVBox.Create(Self), 0, 2); - Table5.AddControlEx(0, 18, 1, 1, QuickSearchLabel, [taoShrink], [taoShrink], 35, 2); - Table5.AddControlEx(1, 18, 1, 1, QuickSearchOptionMenu, [taoExpand, taoFill], [taoShrink, taoExpand, taoFill], 20, 2); + QuickSearchLabel.XAlign := 0; + QuickSearchLabel.MarginStart := 35; + QuickSearchLabel.MarginEnd := 35; + QuickSearchLabel.MarginTop := 2; + QuickSearchLabel.MarginBottom := 2; + QuickSearchComboBox := TGTKComboBoxText.Create(Self); + QuickSearchComboBox.Tooltip := LANGPreferences_QuickSearchOptionMenu_Tooltip; + QuickSearchLabel.FocusControl := QuickSearchComboBox; + QuickSearchComboBox.AppendItem(LANGPreferences_QuickSearch_Option1); + QuickSearchComboBox.AppendItem(LANGPreferences_QuickSearch_Option2); + QuickSearchComboBox.AppendItem(LANGPreferences_QuickSearch_Option3); + QuickSearchComboBox.AppendItem(LANGPreferences_QuickSearch_Option4); + QuickSearchComboBox.MarginStart := 20; + QuickSearchComboBox.MarginEnd := 20; + QuickSearchComboBox.MarginTop := 2; + QuickSearchComboBox.MarginBottom := 2; + Grid5.AddControl(0, 18, 1, 1, QuickSearchLabel); + Grid5.AddControl(1, 18, 1, 1, QuickSearchComboBox); // ********* PAGE Applications ApplicationsPage.AddControlEx(TGTKVBox.Create(Self), False, False, 5); - Table1 := TGTKTable.Create(Self); - Table1.SetRowColCount(5, 5); - ApplicationsPage.AddControlEx(Table1, False, True, 5); + Grid1 := TGTKGrid.Create(Self); + ApplicationsPage.AddControlEx(Grid1, False, True, 5); ViewerLabel := TGTKLabel.Create(Self); ViewerLabel.XAlign := 0; - ViewerLabel.XPadding := 10; + ViewerLabel.MarginStart := 10; + ViewerLabel.MarginEnd := 10; ViewerLabel.Caption := Format('%s', [LANGPreferencesViewer]); ViewerLabel.UseMarkup := True; - Table1.AddControlEx(0, 0, 5, 1, ViewerLabel, [taoShrink, taoFill], [taoShrink, taoExpand, taoFill], 0, 0); - Table1.AddControlEx(0, 1, 5, 1, TGTKVBox.Create(Self), [taoShrink, taoFill], [taoShrink, taoExpand, taoFill], 0, 2); + VBox := TGTKVBox.Create(Self); + VBox.MarginTop := 2; + VBox.MarginBottom := 2; + Grid1.AddControl(0, 0, 5, 1, ViewerLabel); + Grid1.AddControl(0, 1, 5, 1, VBox); - ViewerCombo := TGTKCombo.Create(Self); + ViewerCommandComboBox := TGTKComboBoxEntry.Create(Self); for i := 1 to Length(ConfViewersApps) do - ViewerCombo.Items.Append(ConfViewersApps[i]); + ViewerCommandComboBox.AppendItem(ConfViewersApps[i]); + ViewerCommandComboBox.MarginStart := 10; + ViewerCommandComboBox.MarginEnd := 10; + ViewerCommandComboBox.MarginTop := 2; + ViewerCommandComboBox.MarginBottom := 2; ViewerBrowseButton := TGTKButton.Create(Self); ViewerBrowseButton.Caption := Format(' %s ', [LANGBrowseButton_Caption]); ViewerBrowseButton.OnClick := @ViewerBrowseButtonClick; + ViewerBrowseButton.MarginStart := 10; + ViewerBrowseButton.MarginEnd := 10; + ViewerBrowseButton.MarginTop := 2; + ViewerBrowseButton.MarginBottom := 2; ViewerLabel2 := TGTKLabel.Create(Self); ViewerLabel2.Caption := LANGPreferencesCommandSC; - ViewerLabel2.XAlign := 0; - ViewerLabel2.FocusControl := ViewerCombo.Entry; + ViewerLabel2.FocusControl := ViewerCommandComboBox.Entry; ViewerLabel2.UseUnderline := True; + ViewerLabel2.XAlign := 0; + ViewerLabel2.MarginTop := 2; + ViewerLabel2.MarginBottom := 2; UseInternalViewerCheckBox := TGTKCheckButton.CreateWithLabel(Self, LANGPreferencesUseInternalViewer); UseInternalViewerCheckBox.OnToggled := @UseInternalViewerCheckBoxToggled; - ViewerOptionMenu := TGTKOptionMenu.Create(Self); - miViewerTerminalDetect := TGTKMenuItem.CreateTyped(Self, itLabel); - miViewerTerminalDetect.Caption := LANGPreferencesAutodetectXApp; - miViewerAlwaysTerminal := TGTKMenuItem.CreateTyped(Self, itLabel); - miViewerAlwaysTerminal.Caption := LANGPreferencesAlwaysRunInTerminal; - miViewerNoTerminal := TGTKMenuItem.CreateTyped(Self, itLabel); - miViewerNoTerminal.Caption := LANGPreferencesNeverRunInTerminal; - ViewerOptionMenu.Items.Add(miViewerTerminalDetect); - ViewerOptionMenu.Items.Add(miViewerAlwaysTerminal); - ViewerOptionMenu.Items.Add(miViewerNoTerminal); - - Table1.AddControlEx(0, 2, 1, 1, TGTKVBox.Create(Self), [taoShrink], [taoShrink, taoExpand, taoFill], 12, 2); - Table1.AddControlEx(1, 2, 1, 1, ViewerLabel2, [taoShrink, taoFill], [taoShrink, taoExpand, taoFill], 0, 2); - Table1.AddControlEx(2, 2, 3, 1, ViewerCombo, [taoExpand, taoFill], [taoShrink, taoExpand, taoFill], 10, 2); - Table1.AddControlEx(4, 3, 1, 1, ViewerBrowseButton, [taoShrink, taoFill], [taoShrink, taoExpand, taoFill], 10, 2); - Table1.AddControlEx(3, 3, 1, 1, ViewerOptionMenu, [taoExpand, taoFill], [taoShrink, taoExpand, taoFill], 10, 2); - Table1.AddControlEx(0, 4, 5, 1, UseInternalViewerCheckBox, [taoShrink, taoFill], [taoShrink, taoExpand, taoFill], 30, 2); + UseInternalViewerCheckBox.MarginStart := 30; + UseInternalViewerCheckBox.MarginEnd := 30; + UseInternalViewerCheckBox.MarginTop := 2; + UseInternalViewerCheckBox.MarginBottom := 2; + ViewerX11AppComboBox := TGTKComboBoxText.Create(Self); + ViewerX11AppComboBox.AppendItem(LANGPreferencesAutodetectXApp); + ViewerX11AppComboBox.AppendItem(LANGPreferencesAlwaysRunInTerminal); + ViewerX11AppComboBox.AppendItem(LANGPreferencesNeverRunInTerminal); + ViewerX11AppComboBox.MarginStart := 10; + ViewerX11AppComboBox.MarginEnd := 10; + ViewerX11AppComboBox.MarginTop := 2; + ViewerX11AppComboBox.MarginBottom := 2; + VBox := TGTKVBox.Create(Self); + VBox.MarginStart := 12; + VBox.MarginEnd := 12; + VBox.MarginTop := 2; + VBox.MarginBottom := 2; + Grid1.AddControl(0, 2, 1, 1, VBox); + Grid1.AddControl(1, 2, 1, 1, ViewerLabel2); + Grid1.AddControl(2, 2, 3, 1, ViewerCommandComboBox); + Grid1.AddControl(4, 3, 1, 1, ViewerBrowseButton); + Grid1.AddControl(3, 3, 1, 1, ViewerX11AppComboBox); + Grid1.AddControl(0, 4, 5, 1, UseInternalViewerCheckBox); EditorLabel := TGTKLabel.Create(Self); - EditorLabel.XAlign := 0; - EditorLabel.XPadding := 10; EditorLabel.Caption := Format('%s', [LANGPreferencesEditor]); EditorLabel.UseMarkup := True; - Table1.AddControlEx(0, 5, 5, 1, TGTKVBox.Create(Self), [taoShrink, taoFill], [taoShrink, taoExpand, taoFill], 0, 13); - Table1.AddControlEx(0, 6, 5, 1, EditorLabel, [taoShrink, taoFill], [taoShrink, taoExpand, taoFill], 0, 0); - Table1.AddControlEx(0, 7, 5, 1, TGTKVBox.Create(Self), [taoShrink, taoFill], [taoShrink, taoExpand, taoFill], 0, 2); - - EditorCombo := TGTKCombo.Create(Self); + EditorLabel.XAlign := 0; + EditorLabel.MarginStart := 10; + EditorLabel.MarginEnd := 10; + VBox := TGTKVBox.Create(Self); + VBox.MarginTop := 13; + VBox.MarginBottom := 13; + Grid1.AddControl(0, 5, 5, 1, VBox); + Grid1.AddControl(0, 6, 5, 1, EditorLabel); + VBox := TGTKVBox.Create(Self); + VBox.MarginTop := 2; + VBox.MarginBottom := 2; + Grid1.AddControl(0, 7, 5, 1, VBox); + + EditorCommandComboBox := TGTKComboBoxEntry.Create(Self); for i := 1 to Length(ConfEditorApps) do - EditorCombo.Items.Append(ConfEditorApps[i]); + EditorCommandComboBox.AppendItem(ConfEditorApps[i]); + EditorCommandComboBox.MarginStart := 10; + EditorCommandComboBox.MarginEnd := 10; + EditorCommandComboBox.MarginTop := 2; + EditorCommandComboBox.MarginBottom := 2; EditorBrowseButton := TGTKButton.Create(Self); EditorBrowseButton.Caption := Format(' %s ', [LANGBrowseButton_Caption]); EditorBrowseButton.OnClick := @ViewerBrowseButtonClick; + EditorBrowseButton.MarginStart := 10; + EditorBrowseButton.MarginEnd := 10; + EditorBrowseButton.MarginTop := 2; + EditorBrowseButton.MarginBottom := 2; EditorLabel2 := TGTKLabel.Create(Self); EditorLabel2.Caption := LANGPreferencesCommandSC; - EditorLabel2.XAlign := 0; - EditorLabel2.FocusControl := EditorCombo.Entry; + EditorLabel2.FocusControl := EditorCommandComboBox.Entry; EditorLabel2.UseUnderline := True; - EditorOptionMenu := TGTKOptionMenu.Create(Self); - miEditorTerminalDetect := TGTKMenuItem.CreateTyped(Self, itLabel); - miEditorTerminalDetect.Caption := LANGPreferencesAutodetectXApp; - miEditorAlwaysTerminal := TGTKMenuItem.CreateTyped(Self, itLabel); - miEditorAlwaysTerminal.Caption := LANGPreferencesAlwaysRunInTerminal; - miEditorNoTerminal := TGTKMenuItem.CreateTyped(Self, itLabel); - miEditorNoTerminal.Caption := LANGPreferencesNeverRunInTerminal; - EditorOptionMenu.Items.Add(miEditorTerminalDetect); - EditorOptionMenu.Items.Add(miEditorAlwaysTerminal); - EditorOptionMenu.Items.Add(miEditorNoTerminal); - - Table1.AddControlEx(0, 8, 1, 1, TGTKVBox.Create(Self), [taoShrink], [taoShrink, taoExpand, taoFill], 12, 2); - Table1.AddControlEx(1, 8, 1, 1, EditorLabel2, [taoShrink, taoFill], [taoShrink, taoExpand, taoFill], 0, 2); - Table1.AddControlEx(2, 8, 3, 1, EditorCombo, [taoExpand, taoFill], [taoShrink, taoExpand, taoFill], 10, 2); - Table1.AddControlEx(4, 9, 1, 1, EditorBrowseButton, [taoShrink, taoFill], [taoShrink, taoExpand, taoFill], 10, 2); - Table1.AddControlEx(3, 9, 1, 1, EditorOptionMenu, [taoExpand, taoFill], [taoShrink, taoExpand, taoFill], 10, 2); + EditorLabel2.XAlign := 0; + EditorLabel2.MarginTop := 2; + EditorLabel2.MarginBottom := 2; + EditorX11AppComboBox := TGTKComboBoxText.Create(Self); + EditorX11AppComboBox.AppendItem(LANGPreferencesAutodetectXApp); + EditorX11AppComboBox.AppendItem(LANGPreferencesAlwaysRunInTerminal); + EditorX11AppComboBox.AppendItem(LANGPreferencesNeverRunInTerminal); + EditorX11AppComboBox.MarginStart := 10; + EditorX11AppComboBox.MarginEnd := 10; + EditorX11AppComboBox.MarginTop := 2; + EditorX11AppComboBox.MarginBottom := 2; + VBox := TGTKVBox.Create(Self); + VBox.MarginStart := 12; + VBox.MarginEnd := 12; + VBox.MarginTop := 2; + VBox.MarginBottom := 2; + Grid1.AddControl(0, 8, 1, 1, VBox); + Grid1.AddControl(1, 8, 1, 1, EditorLabel2); + Grid1.AddControl(2, 8, 3, 1, EditorCommandComboBox); + Grid1.AddControl(4, 9, 1, 1, EditorBrowseButton); + Grid1.AddControl(3, 9, 1, 1, EditorX11AppComboBox); TerminalLabel := TGTKLabel.Create(Self); - TerminalLabel.XAlign := 0; - TerminalLabel.XPadding := 10; TerminalLabel.Caption := Format('%s', [LANGPreferencesTerminal]); TerminalLabel.UseMarkup := True; - Table1.AddControlEx(0, 10, 5, 1, TGTKVBox.Create(Self), [taoShrink, taoFill], [taoShrink, taoExpand, taoFill], 0, 13); - Table1.AddControlEx(0, 11, 5, 1, TerminalLabel, [taoShrink, taoFill], [taoShrink, taoExpand, taoFill], 0, 0); - Table1.AddControlEx(0, 12, 5, 1, TGTKVBox.Create(Self), [taoShrink, taoFill], [taoShrink, taoExpand, taoFill], 0, 2); - - TerminalCombo := TGTKCombo.Create(Self); + TerminalLabel.XAlign := 0; + TerminalLabel.MarginStart := 10; + TerminalLabel.MarginEnd := 10; + VBox := TGTKVBox.Create(Self); + VBox.MarginTop := 13; + VBox.MarginBottom := 13; + Grid1.AddControl(0, 10, 5, 1, VBox); + Grid1.AddControl(0, 11, 5, 1, TerminalLabel); + VBox := TGTKVBox.Create(Self); + VBox.MarginTop := 2; + VBox.MarginBottom := 2; + Grid1.AddControl(0, 12, 5, 1, VBox); + + TerminalCommandComboBox := TGTKComboBoxEntry.Create(Self); for i := 1 to Length(ConfTerminalApps) do - TerminalCombo.Items.Append(ConfTerminalApps[i]); + TerminalCommandComboBox.AppendItem(ConfTerminalApps[i]); + TerminalCommandComboBox.MarginStart := 10; + TerminalCommandComboBox.MarginEnd := 10; + TerminalCommandComboBox.MarginTop := 2; + TerminalCommandComboBox.MarginBottom := 2; TerminalBrowseButton := TGTKButton.Create(Self); TerminalBrowseButton.Caption := Format(' %s ', [LANGBrowseButton_Caption]); TerminalBrowseButton.OnClick := @ViewerBrowseButtonClick; + TerminalBrowseButton.MarginStart := 10; + TerminalBrowseButton.MarginEnd := 10; + TerminalBrowseButton.MarginTop := 2; + TerminalBrowseButton.MarginBottom := 2; TerminalLabel2 := TGTKLabel.Create(Self); TerminalLabel2.Caption := LANGPreferencesCommandSC; TerminalLabel2.XAlign := 0; - TerminalLabel2.FocusControl := TerminalCombo.Entry; + TerminalLabel2.MarginTop := 2; + TerminalLabel2.MarginBottom := 2; + TerminalLabel2.FocusControl := TerminalCommandComboBox.Entry; TerminalLabel2.UseUnderline := True; - - Table1.AddControlEx(0, 13, 1, 1, TGTKVBox.Create(Self), [taoShrink], [taoShrink, taoExpand, taoFill], 12, 2); - Table1.AddControlEx(1, 13, 1, 1, TerminalLabel2, [taoShrink, taoFill], [taoShrink, taoExpand, taoFill], 0, 2); - Table1.AddControlEx(2, 13, 3, 1, TerminalCombo, [taoExpand, taoFill], [taoShrink, taoExpand, taoFill], 10, 2); - Table1.AddControlEx(4, 14, 1, 1, TerminalBrowseButton, [taoShrink, taoFill], [taoShrink, taoExpand, taoFill], 10, 2); + TerminalLabel2.XAlign := 0; + TerminalLabel2.MarginTop := 2; + TerminalLabel2.MarginBottom := 2; + VBox := TGTKVBox.Create(Self); + VBox.MarginStart := 12; + VBox.MarginEnd := 12; + VBox.MarginTop := 2; + VBox.MarginBottom := 2; + Grid1.AddControl(0, 13, 1, 1, VBox); + Grid1.AddControl(1, 13, 1, 1, TerminalLabel2); + Grid1.AddControl(2, 13, 3, 1, TerminalCommandComboBox); + Grid1.AddControl(4, 14, 1, 1, TerminalBrowseButton); TempPathLabel := TGTKLabel.Create(Self); - TempPathLabel.XAlign := 0; - TempPathLabel.XPadding := 10; TempPathLabel.Caption := Format('%s', [LANGPreferences_TempPathLabel_Caption]); TempPathLabel.UseMarkup := True; - Table1.AddControlEx(0, 15, 5, 1, TGTKVBox.Create(Self), [taoShrink, taoFill], [taoShrink, taoExpand, taoFill], 0, 13); - Table1.AddControlEx(0, 16, 5, 1, TempPathLabel, [taoShrink, taoFill], [taoShrink, taoExpand, taoFill], 0, 0); - Table1.AddControlEx(0, 17, 5, 1, TGTKVBox.Create(Self), [taoShrink, taoFill], [taoShrink, taoExpand, taoFill], 0, 2); + TempPathLabel.XAlign := 0; + TempPathLabel.MarginStart := 10; + TempPathLabel.MarginEnd := 10; + VBox := TGTKVBox.Create(Self); + VBox.MarginTop := 13; + VBox.MarginBottom := 13; + Grid1.AddControl(0, 15, 5, 1, VBox); + Grid1.AddControl(0, 16, 5, 1, TempPathLabel); + VBox := TGTKVBox.Create(Self); + VBox.MarginTop := 2; + VBox.MarginBottom := 2; + Grid1.AddControl(0, 17, 5, 1, VBox); VFSTempPathLabel := TGTKLabel.Create(Self); VFSTempPathLabel.Caption := LANGPreferences_VFSTempPathLabel_Caption; - VFSTempPathLabel.XAlign := 0; VFSTempPathLabel.UseUnderline := True; + VFSTempPathLabel.XAlign := 0; + VFSTempPathLabel.MarginTop := 2; + VFSTempPathLabel.MarginBottom := 2; VFSTempPathEntry := TGTKEntry.Create(Self); VFSTempPathEntry.Tooltip := LANGPreferences_VFSTempPathEntry_Tooltip; + VFSTempPathEntry.MarginStart := 10; + VFSTempPathEntry.MarginEnd := 10; + VFSTempPathEntry.MarginTop := 2; + VFSTempPathEntry.MarginBottom := 2; VFSTempPathLabel.FocusControl := VFSTempPathEntry; - Table1.AddControlEx(0, 18, 1, 1, TGTKVBox.Create(Self), [taoShrink], [taoShrink, taoExpand, taoFill], 12, 2); - Table1.AddControlEx(1, 18, 1, 1, VFSTempPathLabel, [taoShrink, taoFill], [taoShrink, taoExpand, taoFill], 0, 2); - Table1.AddControlEx(2, 18, 4, 1, VFSTempPathEntry, [taoExpand, taoFill], [taoShrink, taoExpand, taoFill], 10, 2); + VBox := TGTKVBox.Create(Self); + VBox.MarginStart := 12; + VBox.MarginEnd := 12; + VBox.MarginTop := 2; + VBox.MarginBottom := 2; + Grid1.AddControl(0, 18, 1, 1, VBox); + Grid1.AddControl(1, 18, 1, 1, VFSTempPathLabel); + Grid1.AddControl(2, 18, 4, 1, VFSTempPathEntry); // ********* PAGE Fonts FontsPage.AddControlEx(TGTKVBox.Create(Self), False, False, 5); FontsLabel2 := TGTKLabel.Create(Self); - FontsLabel2.XAlign := 0; - FontsLabel2.XPadding := 10; FontsLabel2.Caption := Format('%s', [LANGPreferences_FontsPage]); FontsLabel2.UseMarkup := True; + FontsLabel2.XAlign := 0; + FontsLabel2.MarginStart := 10; + FontsLabel2.MarginEnd := 10; FontsPage.AddControlEx(FontsLabel2, False, False, 5); - Table3 := TGTKTable.Create(Self); - Table3.SetRowColCount(2, 4); - FontsPage.AddControlEx(Table3, False, False, 0); + Grid3 := TGTKGrid.Create(Self); + FontsPage.AddControlEx(Grid3, False, False, 0); ListFontLabel := TGTKLabel.Create(Self); ListFontLabel.Caption := LANGPreferences_ListFont; ListFontLabel.XAlign := 0; - ListFontFrame := TGTKFrame.CreateWithoutLabel(Self); - ListFontFrame.ShadowType := stEtchedIn; - ListFontPreview := TGTKLabel.Create(Self); - ListFontPreview.Caption := 'Luxi Sans, 10'; - ListFontFrame.AddControl(ListFontPreview); - ChangeFontButton := TGTKButton.Create(Self); - ChangeFontButton.Caption := LANGPreferences_Change; - ChangeFontButton.OnClick := @ChangeFontButtonClick; + ListFontLabel.MarginStart := 5; + ListFontLabel.MarginEnd := 5; + ListFontLabel.MarginTop := 2; + ListFontLabel.MarginBottom := 2; + ListFontButton := TGTKFontButton.Create(Self); + ListFontButton.OnFontNameChanged := @ListFontButtonFontNameChanged; + ListFontButton.MarginStart := 10; + ListFontButton.MarginEnd := 10; + ListFontButton.MarginTop := 2; + ListFontButton.MarginBottom := 2; DefaultFontCheckBox := TGTKCheckButton.CreateWithLabel(Self, LANGPreferences_UseDefaultFont); DefaultFontCheckBox.OnToggled := @DefaultFontCheckBoxToggled; - - Table3.AddControlEx(0, 0, 1, 1, TGTKVBox.Create(Self), [taoShrink], [taoShrink, taoExpand, taoFill], 12, 2); - Table3.AddControlEx(1, 0, 1, 1, ListFontLabel, [taoShrink, taoFill], [taoShrink, taoExpand, taoFill], 5, 2); - Table3.AddControlEx(2, 0, 1, 1, ListFontFrame, [taoExpand, taoFill], [taoShrink, taoExpand, taoFill], 2, 2); - Table3.AddControlEx(3, 0, 1, 1, ChangeFontButton, [taoShrink, taoFill], [taoShrink, taoExpand, taoFill], 10, 2); - Table3.AddControlEx(1, 1, 3, 1, DefaultFontCheckBox, [taoShrink, taoFill], [taoShrink, taoExpand, taoFill], 10, 4); + DefaultFontCheckBox.MarginStart := 10; + DefaultFontCheckBox.MarginEnd := 10; + DefaultFontCheckBox.MarginTop := 4; + DefaultFontCheckBox.MarginBottom := 4; + VBox := TGTKVBox.Create(Self); + VBox.MarginStart := 12; + VBox.MarginEnd := 12; + VBox.MarginTop := 2; + Grid3.AddControl(0, 0, 1, 1, VBox); + Grid3.AddControl(1, 0, 1, 1, ListFontLabel); + Grid3.AddControl(2, 0, 2, 1, ListFontButton); + Grid3.AddControl(1, 1, 3, 1, DefaultFontCheckBox); // ********* PAGE Colors ColorsPage.AddControlEx(TGTKVBox.Create(Self), False, False, 5); ColorsLabel2 := TGTKLabel.Create(Self); - ColorsLabel2.XAlign := 0; - ColorsLabel2.XPadding := 10; ColorsLabel2.Caption := Format('%s', [LANGPreferences_ColorsPage]); ColorsLabel2.UseMarkup := True; + ColorsLabel2.XAlign := 0; + ColorsLabel2.MarginStart := 10; + ColorsLabel2.MarginEnd := 10; ColorsPage.AddControlEx(ColorsLabel2, False, False, 5); - Table4 := TGTKTable.Create(Self); - Table4.SetRowColCount(7, 8); - ColorsPage.AddControlEx(Table4, False, False, 0); + Grid4 := TGTKGrid.Create(Self); + ColorsPage.AddControlEx(Grid4, False, False, 0); ForegroundLabel := TGTKLabel.Create(Self); ForegroundLabel.Caption := LANGPreferences_Foreground; + ForegroundLabel.MarginStart := 5; + ForegroundLabel.MarginEnd := 5; + ForegroundLabel.MarginTop := 2; + ForegroundLabel.MarginBottom := 2; BackgroundLabel := TGTKLabel.Create(Self); BackgroundLabel.Caption := LANGPreferences_Background; - Table4.AddControl(1, 0, 3, 1, ForegroundLabel, 5, 2); - Table4.AddControl(4, 0, 3, 1, BackgroundLabel, 5, 2); + BackgroundLabel.MarginStart := 5; + BackgroundLabel.MarginEnd := 5; + BackgroundLabel.MarginTop := 2; + BackgroundLabel.MarginBottom := 2; + Grid4.AddControl(1, 0, 3, 1, ForegroundLabel); + Grid4.AddControl(4, 0, 3, 1, BackgroundLabel); NormalItemFGColorLabel := TGTKLabel.Create(Self); - NormalItemFGColorLabel.XAlign := 0; NormalItemFGColorLabel.Caption := LANGPreferences_NormalItem; - NormalItemFGColorButton := TGnomeColorButton.Create(Self); + NormalItemFGColorLabel.XAlign := 0; + NormalItemFGColorLabel.MarginStart := 30; + NormalItemFGColorLabel.MarginEnd := 30; + NormalItemFGColorLabel.MarginTop := 2; + NormalItemFGColorLabel.MarginBottom := 2; + NormalItemFGColorButton := TGTKColorButton.Create(Self); NormalItemFGColorButton.SetSizeRequest(30, -1); - NormalItemBGColorButton := TGnomeColorButton.Create(Self); + NormalItemFGColorButton.MarginStart := 5; + NormalItemFGColorButton.MarginEnd := 5; + NormalItemFGColorButton.MarginTop := 2; + NormalItemFGColorButton.MarginBottom := 2; + NormalItemBGColorButton := TGTKColorButton.Create(Self); NormalItemBGColorButton.SetSizeRequest(30, -1); + NormalItemBGColorButton.MarginStart := 5; + NormalItemBGColorButton.MarginEnd := 5; + NormalItemBGColorButton.MarginTop := 2; + NormalItemBGColorButton.MarginBottom := 2; NormalItemFGColorDefault := TGTKCheckButton.CreateWithLabel(Self, LANGPreferences_Default); NormalItemFGColorDefault.Tooltip := LANGPreferences_SetToDefaultToUseGTKThemeColors; NormalItemFGColorDefault.OnToggled := @ColorButtonDefaultsToggled; - Table4.AddControl(0, 1, 1, 1, NormalItemFGColorLabel, 30, 2); - Table4.AddControl(2, 1, 1, 1, NormalItemFGColorButton, 5, 2); - Table4.AddControl(5, 1, 1, 1, NormalItemBGColorButton, 5, 2); - Table4.AddControl(7, 1, 1, 1, NormalItemFGColorDefault, 10, 2); + NormalItemFGColorDefault.MarginStart := 10; + NormalItemFGColorDefault.MarginEnd := 10; + NormalItemFGColorDefault.MarginTop := 2; + NormalItemFGColorDefault.MarginBottom := 2; + Grid4.AddControl(0, 1, 1, 1, NormalItemFGColorLabel); + Grid4.AddControl(2, 1, 1, 1, NormalItemFGColorButton); + Grid4.AddControl(5, 1, 1, 1, NormalItemBGColorButton); + Grid4.AddControl(7, 1, 1, 1, NormalItemFGColorDefault); ActiveItemFGColorLabel := TGTKLabel.Create(Self); ActiveItemFGColorLabel.Caption := LANGPreferences_Cursor; ActiveItemFGColorLabel.XAlign := 0; - ActiveItemFGColorButton := TGnomeColorButton.Create(Self); - ActiveItemBGColorButton := TGnomeColorButton.Create(Self); + ActiveItemFGColorLabel.MarginStart := 30; + ActiveItemFGColorLabel.MarginEnd := 30; + ActiveItemFGColorLabel.MarginTop := 2; + ActiveItemFGColorLabel.MarginBottom := 2; + ActiveItemFGColorButton := TGTKColorButton.Create(Self); + ActiveItemFGColorButton.MarginStart := 5; + ActiveItemFGColorButton.MarginEnd := 5; + ActiveItemFGColorButton.MarginTop := 2; + ActiveItemFGColorButton.MarginBottom := 2; + ActiveItemBGColorButton := TGTKColorButton.Create(Self); + ActiveItemBGColorButton.MarginStart := 5; + ActiveItemBGColorButton.MarginEnd := 5; + ActiveItemBGColorButton.MarginTop := 2; + ActiveItemBGColorButton.MarginBottom := 2; ActiveItemFGColorDefault := TGTKCheckButton.CreateWithLabel(Self, LANGPreferences_Default); ActiveItemFGColorDefault.Tooltip := LANGPreferences_SetToDefaultToUseGTKThemeColors; ActiveItemFGColorDefault.OnToggled := @ColorButtonDefaultsToggled; - Table4.AddControl(0, 2, 1, 1, ActiveItemFGColorLabel, 30, 2); - Table4.AddControl(2, 2, 1, 1, ActiveItemFGColorButton, 5, 2); - Table4.AddControl(5, 2, 1, 1, ActiveItemBGColorButton, 5, 2); - Table4.AddControl(7, 2, 1, 1, ActiveItemFGColorDefault, 10, 2); + ActiveItemFGColorDefault.MarginStart := 10; + ActiveItemFGColorDefault.MarginEnd := 10; + ActiveItemFGColorDefault.MarginTop := 2; + ActiveItemFGColorDefault.MarginBottom := 2; + Grid4.AddControl(0, 2, 1, 1, ActiveItemFGColorLabel); + Grid4.AddControl(2, 2, 1, 1, ActiveItemFGColorButton); + Grid4.AddControl(5, 2, 1, 1, ActiveItemBGColorButton); + Grid4.AddControl(7, 2, 1, 1, ActiveItemFGColorDefault); InactiveItemFGColorLabel := TGTKLabel.Create(Self); InactiveItemFGColorLabel.Caption := LANGPreferences_InactiveItem; InactiveItemFGColorLabel.XAlign := 0; - InactiveItemFGColorButton := TGnomeColorButton.Create(Self); - InactiveItemBGColorButton := TGnomeColorButton.Create(Self); + InactiveItemFGColorLabel.MarginStart := 30; + InactiveItemFGColorLabel.MarginEnd := 30; + InactiveItemFGColorLabel.MarginTop := 2; + InactiveItemFGColorLabel.MarginBottom := 2; + InactiveItemFGColorButton := TGTKColorButton.Create(Self); + InactiveItemFGColorButton.MarginStart := 5; + InactiveItemFGColorButton.MarginEnd := 5; + InactiveItemFGColorButton.MarginTop := 2; + InactiveItemFGColorButton.MarginBottom := 2; + InactiveItemBGColorButton := TGTKColorButton.Create(Self); + InactiveItemBGColorButton.MarginStart := 5; + InactiveItemBGColorButton.MarginEnd := 5; + InactiveItemBGColorButton.MarginTop := 2; + InactiveItemBGColorButton.MarginBottom := 2; InactiveItemFGColorDefault := TGTKCheckButton.CreateWithLabel(Self, LANGPreferences_Default); InactiveItemFGColorDefault.Tooltip := LANGPreferences_SetToDefaultToUseGTKThemeColors; InactiveItemFGColorDefault.OnToggled := @ColorButtonDefaultsToggled; - Table4.AddControl(0, 3, 1, 1, InactiveItemFGColorLabel, 30, 2); - Table4.AddControl(2, 3, 1, 1, InactiveItemFGColorButton, 5, 2); - Table4.AddControl(5, 3, 1, 1, InactiveItemBGColorButton, 5, 2); - Table4.AddControl(7, 3, 1, 1, InactiveItemFGColorDefault, 10, 2); + InactiveItemFGColorDefault.MarginStart := 10; + InactiveItemFGColorDefault.MarginEnd := 10; + InactiveItemFGColorDefault.MarginTop := 2; + InactiveItemFGColorDefault.MarginBottom := 2; + Grid4.AddControl(0, 3, 1, 1, InactiveItemFGColorLabel); + Grid4.AddControl(2, 3, 1, 1, InactiveItemFGColorButton); + Grid4.AddControl(5, 3, 1, 1, InactiveItemBGColorButton); + Grid4.AddControl(7, 3, 1, 1, InactiveItemFGColorDefault); SelectedItemFGColorLabel := TGTKLabel.Create(Self); SelectedItemFGColorLabel.Caption := LANGPreferences_SelectedItem; SelectedItemFGColorLabel.XAlign := 0; - SelectedItemFGColorButton := TGnomeColorButton.Create(Self); - Table4.AddControl(0, 4, 1, 1, SelectedItemFGColorLabel, 30, 2); - Table4.AddControl(2, 4, 1, 1, SelectedItemFGColorButton, 5, 2); + SelectedItemFGColorLabel.MarginStart := 30; + SelectedItemFGColorLabel.MarginEnd := 30; + SelectedItemFGColorLabel.MarginTop := 2; + SelectedItemFGColorLabel.MarginBottom := 2; + SelectedItemFGColorButton := TGTKColorButton.Create(Self); + SelectedItemFGColorButton.MarginStart := 5; + SelectedItemFGColorButton.MarginEnd := 5; + SelectedItemFGColorButton.MarginTop := 2; + SelectedItemFGColorButton.MarginBottom := 2; + Grid4.AddControl(0, 4, 1, 1, SelectedItemFGColorLabel); + Grid4.AddControl(2, 4, 1, 1, SelectedItemFGColorButton); LinkItemFGColorLabel := TGTKLabel.Create(Self); LinkItemFGColorLabel.Caption := LANGPreferences_LinkItem; LinkItemFGColorLabel.XAlign := 0; - LinkItemFGColorButton := TGnomeColorButton.Create(Self); + LinkItemFGColorLabel.MarginStart := 30; + LinkItemFGColorLabel.MarginEnd := 30; + LinkItemFGColorLabel.MarginTop := 2; + LinkItemFGColorLabel.MarginBottom := 2; + LinkItemFGColorButton := TGTKColorButton.Create(Self); + LinkItemFGColorButton.MarginStart := 5; + LinkItemFGColorButton.MarginEnd := 5; + LinkItemFGColorButton.MarginTop := 2; + LinkItemFGColorButton.MarginBottom := 2; LinkItemFGColorDefault := TGTKCheckButton.CreateWithLabel(Self, LANGPreferences_Default); LinkItemFGColorDefault.Tooltip := LANGPreferences_LinkItemHint; LinkItemFGColorDefault.OnToggled := @ColorButtonDefaultsToggled; - Table4.AddControl(0, 5, 1, 1, LinkItemFGColorLabel, 30, 2); - Table4.AddControl(2, 5, 1, 1, LinkItemFGColorButton, 5, 2); - Table4.AddControl(7, 5, 1, 1, LinkItemFGColorDefault, 10, 2); + LinkItemFGColorDefault.MarginStart := 10; + LinkItemFGColorDefault.MarginEnd := 10; + LinkItemFGColorDefault.MarginTop := 2; + LinkItemFGColorDefault.MarginBottom := 2; + Grid4.AddControl(0, 5, 1, 1, LinkItemFGColorLabel); + Grid4.AddControl(2, 5, 1, 1, LinkItemFGColorButton); + Grid4.AddControl(7, 5, 1, 1, LinkItemFGColorDefault); DotFileItemFGColorLabel := TGTKLabel.Create(Self); DotFileItemFGColorLabel.Caption := LANGPreferences_DotFileItem; DotFileItemFGColorLabel.XAlign := 0; - DotFileItemFGColorButton := TGnomeColorButton.Create(Self); + DotFileItemFGColorLabel.MarginStart := 30; + DotFileItemFGColorLabel.MarginEnd := 30; + DotFileItemFGColorLabel.MarginTop := 2; + DotFileItemFGColorLabel.MarginBottom := 2; + DotFileItemFGColorButton := TGTKColorButton.Create(Self); + DotFileItemFGColorButton.MarginStart := 5; + DotFileItemFGColorButton.MarginEnd := 5; + DotFileItemFGColorButton.MarginTop := 2; + DotFileItemFGColorButton.MarginBottom := 2; DotFileItemFGColorDefault := TGTKCheckButton.CreateWithLabel(Self, LANGPreferences_Default); DotFileItemFGColorDefault.Tooltip := LANGPreferences_DotFileItemHint; DotFileItemFGColorDefault.OnToggled := @ColorButtonDefaultsToggled; - Table4.AddControl(0, 6, 1, 1, DotFileItemFGColorLabel, 30, 2); - Table4.AddControl(2, 6, 1, 1, DotFileItemFGColorButton, 5, 2); - Table4.AddControl(7, 6, 1, 1, DotFileItemFGColorDefault, 10, 2); - - Table4.AddControl(1, 6, 1, 1, TGTKVBox.Create(Self), 2, 2); - Table4.AddControl(3, 6, 1, 1, TGTKVBox.Create(Self), 2, 2); - Table4.AddControl(4, 6, 1, 1, TGTKVBox.Create(Self), 2, 2); - Table4.AddControl(6, 6, 1, 1, TGTKVBox.Create(Self), 2, 2); + DotFileItemFGColorDefault.MarginStart := 10; + DotFileItemFGColorDefault.MarginEnd := 10; + DotFileItemFGColorDefault.MarginTop := 2; + DotFileItemFGColorDefault.MarginBottom := 2; + Grid4.AddControl(0, 6, 1, 1, DotFileItemFGColorLabel); + Grid4.AddControl(2, 6, 1, 1, DotFileItemFGColorButton); + Grid4.AddControl(7, 6, 1, 1, DotFileItemFGColorDefault); + + VBox := TGTKVBox.Create(Self); + VBox.MarginStart := 2; + VBox.MarginEnd := 2; + VBox.MarginTop := 2; + VBox.MarginBottom := 2; + Grid4.AddControl(1, 6, 1, 1, VBox); + VBox := TGTKVBox.Create(Self); + VBox.MarginStart := 2; + VBox.MarginEnd := 2; + VBox.MarginTop := 2; + VBox.MarginBottom := 2; + Grid4.AddControl(3, 6, 1, 1, VBox); + VBox := TGTKVBox.Create(Self); + VBox.MarginStart := 2; + VBox.MarginEnd := 2; + VBox.MarginTop := 2; + VBox.MarginBottom := 2; + Grid4.AddControl(4, 6, 1, 1, VBox); + VBox := TGTKVBox.Create(Self); + VBox.MarginStart := 2; + VBox.MarginEnd := 2; + VBox.MarginTop := 2; + VBox.MarginBottom := 2; + Grid4.AddControl(6, 6, 1, 1, VBox); // ********* PAGE Experimental @@ -681,7 +981,8 @@ begin ExperimentalPage.AddControlEx(TGTKVBox.Create(Self), False, False, 5); ExperimentalLabel2 := TGTKLabel.Create(Self); ExperimentalLabel2.XAlign := 0; - ExperimentalLabel2.XPadding := 10; + ExperimentalLabel2.MarginStart := 10; + ExperimentalLabel2.MarginEnd := 10; ExperimentalLabel2.Caption := Format('%s', [LANGPreferencesExperimentalFeatures]); ExperimentalLabel2.UseMarkup := True; ExperimentalPage.AddControlEx(ExperimentalLabel2, False, False, 5); @@ -694,7 +995,7 @@ begin ExperimentalWarningLabel.LineWrap := True; ExperimentalWarningLabel.SetSizeRequest(300, -1); ExperimentalWarningIcon := TGTKImage.Create(Self); - ExperimentalWarningIcon.SetFromStock('gtk-dialog-warning', isDialog); + ExperimentalWarningIcon.SetFromIconName('gtk-dialog-warning', isDialog); HBox4.AddControlEx(TGTKVBox.Create(Self), False, False, 12); HBox4.AddControlEx(ExperimentalWarningIcon, False, False, 7); HBox4.AddControlEx(ExperimentalWarningLabel, True, True, 7); @@ -702,19 +1003,30 @@ begin ExperimentalPage.AddControlEx(HBox4, False, False, 5); ExperimentalPage.AddControlEx(TGTKVBox.Create(Self), False, False, 10); - Table6 := TGTKTable.Create(Self); - Table6.SetRowColCount(3, 1); - ExperimentalPage.AddControlEx(Table6, False, False, 0); + Grid6 := TGTKGrid.Create(Self); + ExperimentalPage.AddControlEx(Grid6, False, False, 0); FocusRefreshCheckBox := TGTKCheckButton.CreateWithLabel(Self, LANGPreferencesFocusRefreshCheckBox_Caption); FocusRefreshCheckBox.Tooltip := LANGPreferencesFocusRefreshCheckBox_Tooltip; - Table6.AddControl(0, 0, 1, 1, FocusRefreshCheckBox, 30, 2); + FocusRefreshCheckBox.MarginStart := 30; + FocusRefreshCheckBox.MarginEnd := 30; + FocusRefreshCheckBox.MarginTop := 2; + FocusRefreshCheckBox.MarginBottom := 2; + Grid6.AddControl(0, 0, 1, 1, FocusRefreshCheckBox); WMCompatModeCheckBox := TGTKCheckButton.CreateWithLabel(Self, LANGPreferencesWMCompatModeCheckBox_Caption); WMCompatModeCheckBox.Tooltip := LANGPreferencesWMCompatModeCheckBox_Tooltip; - Table6.AddControl(0, 1, 1, 1, WMCompatModeCheckBox, 30, 2); + WMCompatModeCheckBox.MarginStart := 30; + WMCompatModeCheckBox.MarginEnd := 30; + WMCompatModeCheckBox.MarginTop := 2; + WMCompatModeCheckBox.MarginBottom := 2; + Grid6.AddControl(0, 1, 1, 1, WMCompatModeCheckBox); CompatUseLibcSystemCheckBox := TGTKCheckButton.CreateWithLabel(Self, LANGPreferencesCompatUseLibcSystemCheckBox_Caption); CompatUseLibcSystemCheckBox.Tooltip := LANGPreferencesCompatUseLibcSystemCheckBox_Tooltip; - Table6.AddControl(0, 2, 1, 1, CompatUseLibcSystemCheckBox, 30, 2); + CompatUseLibcSystemCheckBox.MarginStart := 30; + CompatUseLibcSystemCheckBox.MarginEnd := 30; + CompatUseLibcSystemCheckBox.MarginTop := 2; + CompatUseLibcSystemCheckBox.MarginBottom := 2; + Grid6.AddControl(0, 2, 1, 1, CompatUseLibcSystemCheckBox); // ****************** @@ -724,7 +1036,7 @@ end; procedure TFPreferences.FormKeyDown(Sender: TObject; Key: Word; Shift: TShiftState; var Accept: boolean); begin -// if Key = GDK_ESCAPE then ModalResult := mbCancel; +// if Key = GDK_KEY_Escape then ModalResult := mbCancel; end; procedure TFPreferences.FormDestroy(Sender: TObject); @@ -732,33 +1044,27 @@ begin end; -procedure TFPreferences.DateTimeFormatOptionMenuChanged(Sender: TObject); -var Item: TGTKMenuItem; - OldIndex: integer; +procedure TFPreferences.DateTimeFormatComboBoxChanged(Sender: TObject); +var OldIndex: integer; begin - CustomTimeFormatEntry.Enabled := TimeFormatOptionMenu.ItemIndex = TimeFormatOptionMenu.Items.Count - 1; - CustomDateFormatEntry.Enabled := DateFormatOptionMenu.ItemIndex = DateFormatOptionMenu.Items.Count - 1; - - OldIndex := DateTimeFormatOptionMenu.ItemIndex; - DateTimeFormatOptionMenu.Items.Clear; - Item := TGTKMenuItem.CreateTyped(Self, itLabel); - Item.Caption := FormatDate(FormatTime, True, True, TimeFormatOptionMenu.ItemIndex, DateFormatOptionMenu.ItemIndex, 0, CustomDateFormatEntry.Text, CustomTimeFormatEntry.Text); - DateTimeFormatOptionMenu.Items.Add(Item); - Item := TGTKMenuItem.CreateTyped(Self, itLabel); - Item.Caption := FormatDate(FormatTime, True, True, TimeFormatOptionMenu.ItemIndex, DateFormatOptionMenu.ItemIndex, 1, CustomDateFormatEntry.Text, CustomTimeFormatEntry.Text); - DateTimeFormatOptionMenu.Items.Add(Item); - DateTimeFormatOptionMenu.ItemIndex := OldIndex; + CustomTimeFormatEntry.Enabled := TimeFormatComboBox.ItemIndex = 12; + CustomDateFormatEntry.Enabled := DateFormatComboBox.ItemIndex = 15; + + OldIndex := DateTimeFormatComboBox.ItemIndex; + DateTimeFormatComboBox.ClearItems; + DateTimeFormatComboBox.AppendItem(FormatDate(FormatTime, True, True, TimeFormatComboBox.ItemIndex, DateFormatComboBox.ItemIndex, 0, CustomDateFormatEntry.Text, CustomTimeFormatEntry.Text)); + DateTimeFormatComboBox.AppendItem(FormatDate(FormatTime, True, True, TimeFormatComboBox.ItemIndex, DateFormatComboBox.ItemIndex, 1, CustomDateFormatEntry.Text, CustomTimeFormatEntry.Text)); + DateTimeFormatComboBox.ItemIndex := OldIndex; end; (********************************************************************************************************************************) procedure TFPreferences.ViewerBrowseButtonClick(Sender: TObject); procedure BrowseForFile(ToControl: TGTKEntry); - var Dialog: TGTKFileSelectionDialog; + var Dialog: TGTKFileChooserDialog; begin - Dialog := TGTKFileSelectionDialog.CreateWithTitle(Self, LANGPreferences_BrowseForApplication); + Dialog := TGTKFileChooserDialog.CreateWithTitle(Self, LANGPreferences_BrowseForApplication); try - Dialog.ShowFileOpButtons := False; Dialog.FileName := ToControl.Text; if Byte(Dialog.Run) = 251 then ToControl.Text := Dialog.FileName; finally @@ -767,54 +1073,28 @@ procedure TFPreferences.ViewerBrowseButtonClick(Sender: TObject); end; begin - if Sender = ViewerBrowseButton then BrowseForFile(ViewerCombo.Entry) - else if Sender = EditorBrowseButton then BrowseForFile(EditorCombo.Entry) - else if Sender = TerminalBrowseButton then BrowseForFile(TerminalCombo.Entry); + if Sender = ViewerBrowseButton then BrowseForFile(ViewerCommandComboBox.Entry) + else if Sender = EditorBrowseButton then BrowseForFile(EditorCommandComboBox.Entry) + else if Sender = TerminalBrowseButton then BrowseForFile(TerminalCommandComboBox.Entry); end; procedure TFPreferences.DefaultFontCheckBoxToggled(Sender: TObject); var FontDesc: PPangoFontDescription; begin ListFontLabel.Enabled := not DefaultFontCheckBox.Checked; - ChangeFontButton.Enabled := not DefaultFontCheckBox.Checked; - ListFontFrame.Enabled := not DefaultFontCheckBox.Checked; - if DefaultFontCheckBox.Checked then begin - gtk_widget_modify_font(ListFontPreview.FWidget, nil); - ListFontPreview.Caption := Format(LANGPreferences_DefaultS, [DefaultGTKFont]); - end else begin - FontDesc := pango_font_description_from_string(PChar(LocalListFont)); - gtk_widget_modify_font(ListFontPreview.FWidget, FontDesc); - ListFontPreview.Caption := LocalListFont; - end; + ListFontButton.Enabled := not DefaultFontCheckBox.Checked; + if ListFontButton.Enabled then ListFontButton.FontName := LocalListFont + else ListFontButton.FontName := DefaultGTKFont; end; -procedure TFPreferences.ChangeFontButtonClick(Sender: TObject); - - procedure ChangeFont(ToControl: TGTKLabel); - var Dialog: TGTKFontSelectionDialog; - FontDesc: PPangoFontDescription; - begin - Dialog := TGTKFontSelectionDialog.CreateWithTitle(Self, LANGPreferences_SelectFont); - try - Dialog.FontName := ToControl.Caption; - if Byte(Dialog.Run) = 251 then begin - ToControl.Caption := Dialog.FontName; - FontDesc := pango_font_description_from_string(PChar(Dialog.FontName)); - gtk_widget_modify_font(ToControl.FWidget, FontDesc); -// g_object_unref(FontDesc); // *** - cannot unref, causes SIGSEGV - LocalListFont := Dialog.FontName; - end; - finally - Dialog.Free; - end; - end; - +procedure TFPreferences.ListFontButtonFontNameChanged(Sender: TObject); begin - if Sender = ChangeFontButton then ChangeFont(ListFontPreview); + if ListFontButton.Enabled then LocalListFont := ListFontButton.FontName; end; procedure TFPreferences.ColorButtonDefaultsToggled(Sender: TObject); begin +{ if NormalItemFGColorDefault.Checked then NormalItemFGColorButton.SetDefaultColor else NormalItemFGColorButton.UnsetDefaultColor; if NormalItemFGColorDefault.Checked then NormalItemBGColorButton.SetDefaultColor @@ -831,6 +1111,7 @@ begin else LinkItemFGColorButton.UnsetDefaultColor; if DotFileItemFGColorDefault.Checked then DotFileItemFGColorButton.SetDefaultColor else DotFileItemFGColorButton.UnsetDefaultColor; +} end; procedure TFPreferences.DefaultRowHeightCheckBoxToggled(Sender: TObject); @@ -841,15 +1122,14 @@ end; procedure TFPreferences.UseInternalViewerCheckBoxToggled(Sender: TObject); begin - ViewerCombo.Enabled := not UseInternalViewerCheckBox.Checked; + ViewerCommandComboBox.Enabled := not UseInternalViewerCheckBox.Checked; ViewerLabel2.Enabled := not UseInternalViewerCheckBox.Checked; ViewerBrowseButton.Enabled := not UseInternalViewerCheckBox.Checked; - ViewerOptionMenu.Enabled := not UseInternalViewerCheckBox.Checked; + ViewerX11AppComboBox.Enabled := not UseInternalViewerCheckBox.Checked; end; (********************************************************************************************************************************) procedure TFPreferences.AssignDefaultValues; -var AColor: TGDKColor; begin DefaultGTKFont := pango_font_description_to_string(pango_context_get_font_description(gtk_widget_get_pango_context(FWidget))); LocalListFont := ConfPanelFont; @@ -864,29 +1144,29 @@ begin ClearROAttr.Checked := ConfClearReadOnlyAttr; DisableMouseRename.Checked := ConfDisableMouseRename; ShowFiletypeIcons.Checked := ConfUseFileTypeIcons; - ViewerCombo.Entry.Text := StrToUTF8(ConfViewer); - EditorCombo.Entry.Text := StrToUTF8(ConfEditor); - TerminalCombo.Entry.Text := StrToUTF8(ConfTerminalCommand); + ViewerCommandComboBox.Entry.Text := StrToUTF8(ConfViewer); + EditorCommandComboBox.Entry.Text := StrToUTF8(ConfEditor); + TerminalCommandComboBox.Entry.Text := StrToUTF8(ConfTerminalCommand); DefaultFontCheckBox.Checked := ConfUseSystemFont; - if not StringToGDKColor(ConfNormalItemFGColor, AColor) then StringToGDKColor(ConfDefaultNormalItemFGColor, AColor); - NormalItemFGColorButton.Color := AColor; - if not StringToGDKColor(ConfNormalItemBGColor, AColor) then StringToGDKColor(ConfDefaultNormalItemBGColor, AColor); - NormalItemBGColorButton.Color := AColor; - if not StringToGDKColor(ConfActiveItemFGColor, AColor) then StringToGDKColor(ConfDefaultActiveItemFGColor, AColor); - ActiveItemFGColorButton.Color := AColor; - if not StringToGDKColor(ConfActiveItemBGColor, AColor) then StringToGDKColor(ConfDefaultActiveItemBGColor, AColor); - ActiveItemBGColorButton.Color := AColor; - if not StringToGDKColor(ConfInactiveItemFGColor, AColor) then StringToGDKColor(ConfDefaultInactiveItemFGColor, AColor); - InactiveItemFGColorButton.Color := AColor; - if not StringToGDKColor(ConfInactiveItemBGColor, AColor) then StringToGDKColor(ConfDefaultInactiveItemBGColor, AColor); - InactiveItemBGColorButton.Color := AColor; - if not StringToGDKColor(ConfSelectedItemFGColor, AColor) then StringToGDKColor(ConfDefaultSelectedItemFGColor, AColor); - SelectedItemFGColorButton.Color := AColor; - if not StringToGDKColor(ConfLinkItemFGColor, AColor) then StringToGDKColor(ConfDefaultLinkItemFGColor, AColor); - LinkItemFGColorButton.Color := AColor; - if not StringToGDKColor(ConfDotFileItemFGColor, AColor) then StringToGDKColor(ConfDefaultDotFileItemFGColor, AColor); - DotFileItemFGColorButton.Color := AColor; + if ValidateColorString(ConfNormalItemFGColor) then NormalItemFGColorButton.Color := ConfNormalItemFGColor + else NormalItemFGColorButton.Color := ConfDefaultNormalItemFGColor; + if ValidateColorString(ConfNormalItemBGColor) then NormalItemBGColorButton.Color := ConfNormalItemBGColor + else NormalItemBGColorButton.Color := ConfDefaultNormalItemBGColor; + if ValidateColorString(ConfActiveItemFGColor) then ActiveItemFGColorButton.Color := ConfActiveItemFGColor + else ActiveItemFGColorButton.Color := ConfDefaultActiveItemFGColor; + if ValidateColorString(ConfActiveItemBGColor) then ActiveItemBGColorButton.Color := ConfActiveItemBGColor + else ActiveItemBGColorButton.Color := ConfDefaultActiveItemBGColor; + if ValidateColorString(ConfInactiveItemFGColor) then InactiveItemFGColorButton.Color := ConfInactiveItemFGColor + else InactiveItemFGColorButton.Color := ConfDefaultInactiveItemFGColor; + if ValidateColorString(ConfInactiveItemBGColor) then InactiveItemBGColorButton.Color := ConfInactiveItemBGColor + else InactiveItemBGColorButton.Color := ConfDefaultInactiveItemBGColor; + if ValidateColorString(ConfSelectedItemFGColor) then SelectedItemFGColorButton.Color := ConfSelectedItemFGColor + else SelectedItemFGColorButton.Color := ConfDefaultSelectedItemFGColor; + if ValidateColorString(ConfLinkItemFGColor) then LinkItemFGColorButton.Color := ConfLinkItemFGColor + else LinkItemFGColorButton.Color := ConfDefaultLinkItemFGColor; + if ValidateColorString(ConfDotFileItemFGColor) then DotFileItemFGColorButton.Color := ConfDotFileItemFGColor + else DotFileItemFGColorButton.Color := ConfDefaultDotFileItemFGColor; NormalItemFGColorDefault.Checked := ConfNormalItemDefaultColors; ActiveItemFGColorDefault.Checked := ConfCursorDefaultColors; @@ -897,8 +1177,8 @@ begin SelectAllDirectoriesCheckBox.Checked := ConfSelectAllDirs; NewStyleAltOCheckBox.Checked := ConfNewStyleAltO; ShowFuncButtonsCheckBox.Checked := ConfShowFuncButtons; - SizeFormatOptionMenu.ItemIndex := ConfSizeFormat; - TerminalOptionMenu.ItemIndex := ConfCmdLineTerminalBehaviour; + SizeFormatComboBox.ItemIndex := ConfSizeFormat; + CmdLineBehaviourComboBox.ItemIndex := ConfCmdLineTerminalBehaviour; DisableFileTipsCheckBox.Checked := ConfDisableFileTips; DirsInBoldCheckBox.Checked := ConfDirsInBold; DisableDirectoryBracketsCheckBox.Checked := ConfDisableDirectoryBrackets; @@ -908,18 +1188,18 @@ begin InsertMovesDownCheckBox.Checked := ConfInsMoveDown; SpaceMovesDownCheckBox.Checked := ConfSpaceMovesDown; UseInternalViewerCheckBox.Checked := ConfUseInternalViewer; - ViewerOptionMenu.ItemIndex := ConfViewerTerminalBehaviour; - EditorOptionMenu.ItemIndex := ConfEditorTerminalBehaviour; + ViewerX11AppComboBox.ItemIndex := ConfViewerTerminalBehaviour; + EditorX11AppComboBox.ItemIndex := ConfEditorTerminalBehaviour; FocusRefreshCheckBox.Checked := ConfFocusRefresh; WMCompatModeCheckBox.Checked := ConfWMCompatMode; CompatUseLibcSystemCheckBox.Checked := ConfUseLibcSystem; CustomTimeFormatEntry.Text := ConfCustomTimeFormat; CustomDateFormatEntry.Text := ConfCustomDateFormat; - DateFormatOptionMenu.ItemIndex := ConfDateFormat; - TimeFormatOptionMenu.ItemIndex := ConfTimeFormat; - DateTimeFormatOptionMenu.ItemIndex := ConfDateTimeFormat; - QuickSearchOptionMenu.ItemIndex := ConfQuickSearchActivationKey; + DateFormatComboBox.ItemIndex := ConfDateFormat; + TimeFormatComboBox.ItemIndex := ConfTimeFormat; + DateTimeFormatComboBox.ItemIndex := ConfDateTimeFormat; + QuickSearchComboBox.ItemIndex := ConfQuickSearchActivationKey; SortDirectoriesLikeFilesCheckBox.Checked := ConfSortDirectoriesLikeFiles; VFSTempPathEntry.Text := StrToUTF8(ConfTempPath); QuickRenameSkipExtCheckBox.Checked := ConfQuickRenameSkipExt; @@ -928,7 +1208,7 @@ begin DefaultFontCheckBoxToggled(Self); ColorButtonDefaultsToggled(Self); UseInternalViewerCheckBoxToggled(Self); - DateTimeFormatOptionMenuChanged(Self); + DateTimeFormatComboBoxChanged(Self); end; procedure TFPreferences.SaveSettings; @@ -938,7 +1218,7 @@ begin else x := -1; RebuildListViews := (ConfRowHeight <> x) or (ConfUseFileTypeIcons <> ShowFiletypeIcons.Checked) or (ConfUseSystemFont <> DefaultFontCheckBox.Checked) or - ((not DefaultFontCheckBox.Checked) and (ConfPanelFont <> ListFontPreview.Caption)); + ((not DefaultFontCheckBox.Checked) and (ConfPanelFont <> ListFontButton.FontName)); RebuildIcons := ConfRowHeight <> x; ConfRowHeight := x; @@ -946,21 +1226,21 @@ begin ConfClearReadOnlyAttr := ClearROAttr.Checked; ConfDisableMouseRename := DisableMouseRename.Checked; ConfUseFileTypeIcons := ShowFiletypeIcons.Checked; - ConfViewer := UTF8ToStr(ViewerCombo.Entry.Text); - ConfEditor := UTF8ToStr(EditorCombo.Entry.Text); - ConfTerminalCommand := UTF8ToStr(TerminalCombo.Entry.Text); + ConfViewer := UTF8ToStr(ViewerCommandComboBox.Entry.Text); + ConfEditor := UTF8ToStr(EditorCommandComboBox.Entry.Text); + ConfTerminalCommand := UTF8ToStr(TerminalCommandComboBox.Entry.Text); ConfUseSystemFont := DefaultFontCheckBox.Checked; - if not ConfUseSystemFont then ConfPanelFont := ListFontPreview.Caption; - - ConfNormalItemFGColor := GDKColorToString(NormalItemFGColorButton.Color); - ConfNormalItemBGColor := GDKColorToString(NormalItemBGColorButton.Color); - ConfActiveItemFGColor := GDKColorToString(ActiveItemFGColorButton.Color); - ConfActiveItemBGColor := GDKColorToString(ActiveItemBGColorButton.Color); - ConfInactiveItemFGColor := GDKColorToString(InactiveItemFGColorButton.Color); - ConfInactiveItemBGColor := GDKColorToString(InactiveItemBGColorButton.Color); - ConfSelectedItemFGColor := GDKColorToString(SelectedItemFGColorButton.Color); - ConfLinkItemFGColor := GDKColorToString(LinkItemFGColorButton.Color); - ConfDotFileItemFGColor := GDKColorToString(DotFileItemFGColorButton.Color); + if not ConfUseSystemFont then ConfPanelFont := ListFontButton.FontName; + + ConfNormalItemFGColor := NormalItemFGColorButton.Color; + ConfNormalItemBGColor := NormalItemBGColorButton.Color; + ConfActiveItemFGColor := ActiveItemFGColorButton.Color; + ConfActiveItemBGColor := ActiveItemBGColorButton.Color; + ConfInactiveItemFGColor := InactiveItemFGColorButton.Color; + ConfInactiveItemBGColor := InactiveItemBGColorButton.Color; + ConfSelectedItemFGColor := SelectedItemFGColorButton.Color; + ConfLinkItemFGColor := LinkItemFGColorButton.Color; + ConfDotFileItemFGColor := DotFileItemFGColorButton.Color; ConfNormalItemDefaultColors := NormalItemFGColorDefault.Checked; ConfCursorDefaultColors := ActiveItemFGColorDefault.Checked; @@ -970,8 +1250,8 @@ begin ConfSelectAllDirs := SelectAllDirectoriesCheckBox.Checked; ConfNewStyleAltO := NewStyleAltOCheckBox.Checked; - ConfSizeFormat := SizeFormatOptionMenu.ItemIndex; - ConfCmdLineTerminalBehaviour := TerminalOptionMenu.ItemIndex; + ConfSizeFormat := SizeFormatComboBox.ItemIndex; + ConfCmdLineTerminalBehaviour := CmdLineBehaviourComboBox.ItemIndex; ConfDirsInBold := DirsInBoldCheckBox.Checked; ConfDisableDirectoryBrackets := DisableDirectoryBracketsCheckBox.Checked; ConfOctalPerm := OctalPermissionsCheckBox.Checked; @@ -980,8 +1260,8 @@ begin ConfInsMoveDown := InsertMovesDownCheckBox.Checked; ConfSpaceMovesDown := SpaceMovesDownCheckBox.Checked; ConfUseInternalViewer := UseInternalViewerCheckBox.Checked; - ConfViewerTerminalBehaviour := ViewerOptionMenu.ItemIndex; - ConfEditorTerminalBehaviour := EditorOptionMenu.ItemIndex; + ConfViewerTerminalBehaviour := ViewerX11AppComboBox.ItemIndex; + ConfEditorTerminalBehaviour := EditorX11AppComboBox.ItemIndex; ConfFocusRefresh := FocusRefreshCheckBox.Checked; ConfWMCompatMode := WMCompatModeCheckBox.Checked; ConfUseLibcSystem := CompatUseLibcSystemCheckBox.Checked; @@ -990,10 +1270,10 @@ begin ConfCustomTimeFormat := CustomTimeFormatEntry.Text; ConfCustomDateFormat := CustomDateFormatEntry.Text; - ConfDateFormat := DateFormatOptionMenu.ItemIndex; - ConfTimeFormat := TimeFormatOptionMenu.ItemIndex; - ConfDateTimeFormat := DateTimeFormatOptionMenu.ItemIndex; - ConfQuickSearchActivationKey := QuickSearchOptionMenu.ItemIndex; + ConfDateFormat := DateFormatComboBox.ItemIndex; + ConfTimeFormat := TimeFormatComboBox.ItemIndex; + ConfDateTimeFormat := DateTimeFormatComboBox.ItemIndex; + ConfQuickSearchActivationKey := QuickSearchComboBox.ItemIndex; ConfSortDirectoriesLikeFiles := SortDirectoriesLikeFilesCheckBox.Checked; ConfTempPath := UTF8ToStr(VFSTempPathEntry.Text); ConfQuickRenameSkipExt := QuickRenameSkipExtCheckBox.Checked; -- cgit v1.2.3