summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTomas Bzatek <tbzatek@users.sourceforge.net>2009-09-23 16:45:02 +0200
committerTomas Bzatek <tbzatek@users.sourceforge.net>2009-09-23 16:45:02 +0200
commitf790fca808d7fa61f7a4444d529485d4163dbff9 (patch)
treeac816618d42f353ab9d3313a296dde106e56a6df
parent7893012e96ba90ec6d82bdd349b1193bd251f7ea (diff)
downloadtuxcmd-f790fca808d7fa61f7a4444d529485d4163dbff9.tar.xz
Preserve checkbox states in Search dialog
-rw-r--r--UConfig.pas15
-rw-r--r--UMain.pas9
2 files changed, 23 insertions, 1 deletions
diff --git a/UConfig.pas b/UConfig.pas
index 6990e33..f31394f 100644
--- a/UConfig.pas
+++ b/UConfig.pas
@@ -101,7 +101,8 @@ var ConfPanelSep, ConfRowHeight, ConfRowHeightReal, ConfNumHistoryItems,
ConfLinkItemDefaultColors, ConfDotFileItemDefaultColors, ConfLynxLikeMotion, ConfSizeGroupRequestZeroDigits,
ConfDisableFileTips, ConfInsMoveDown, ConfSpaceMovesDown, ConfShowFuncButtons, ConfSelectAllDirs, ConfOctalPerm: boolean;
ConfMounterUseFSTab, ConfShowTextUIDs, ConfMounterPushDown, ConfSavePanelTabs, ConfDuplicateTabWarning,
- ConfOpenConnectionsWarning, ConfSortDirectoriesLikeFiles, ConfQuickRenameSkipExt, ConfRightClickSelect: boolean;
+ ConfOpenConnectionsWarning, ConfSortDirectoriesLikeFiles, ConfQuickRenameSkipExt, ConfRightClickSelect,
+ ConfSearchFilterCaseSensitive, ConfSearchOtherFS, ConfSearchArchives, ConfSearchTextCaseSensitive: boolean;
ConfShowMounterBar: integer;
ConfColumnSizes, ConfColumnIDs: array[1..ConstNumPanelColumns] of integer;
@@ -264,6 +265,10 @@ begin
ConfConnMgrSortColumn := -1;
ConfConnMgrSortType := 2;
ConfConnMgrColumn1Width := 230;
+ ConfSearchFilterCaseSensitive := False;
+ ConfSearchOtherFS := False;
+ ConfSearchArchives := False;
+ ConfSearchTextCaseSensitive := False;
// Setup default values for colors
@@ -338,6 +343,10 @@ begin
SearchHistory.Add(IniFile.ReadString('SearchHistory', Format('Item%d', [j]), ''));
end;
ConfShowMounterBar := IniFile.ReadInteger(ConfProfileName, 'ShowMounterBar', ConfShowMounterBar);
+ ConfSearchFilterCaseSensitive := IniFile.ReadBool(ConfProfileName, 'SearchFilterCaseSensitive', ConfSearchFilterCaseSensitive);
+ ConfSearchOtherFS := IniFile.ReadBool(ConfProfileName, 'SearchOtherFS', ConfSearchOtherFS);
+ ConfSearchArchives := IniFile.ReadBool(ConfProfileName, 'SearchArchives', ConfSearchArchives);
+ ConfSearchTextCaseSensitive := IniFile.ReadBool(ConfProfileName, 'SearchTextCaseSensitive', ConfSearchTextCaseSensitive);
finally
try IniFile.Free; except end;
@@ -396,6 +405,10 @@ begin
for i := 0 to SearchHistory.Count - 1 do
IniFile.WriteString('SearchHistory', Format('Item%d', [i]), SearchHistory[i]);
IniFile.WriteInteger(ConfProfileName, 'ShowMounterBar', ConfShowMounterBar);
+ IniFile.WriteBool(ConfProfileName, 'SearchFilterCaseSensitive', ConfSearchFilterCaseSensitive);
+ IniFile.WriteBool(ConfProfileName, 'SearchOtherFS', ConfSearchOtherFS);
+ IniFile.WriteBool(ConfProfileName, 'SearchArchives', ConfSearchArchives);
+ IniFile.WriteBool(ConfProfileName, 'SearchTextCaseSensitive', ConfSearchTextCaseSensitive);
except
on E: Exception do DebugMsg(['*** Error: Cannot save user settings (', E.ClassName, '): ', E.Message]);
diff --git a/UMain.pas b/UMain.pas
index 318f53e..0eabe42 100644
--- a/UMain.pas
+++ b/UMain.pas
@@ -6094,6 +6094,11 @@ begin
FSearch.Engine := Engine;
FSearch.SearchInEntry.Text := StrToUTF8(ExcludeTrailingPathDelimiter(Engine.Path));
if Length(FSearch.SearchInEntry.Text) < 1 then FSearch.SearchInEntry.Text := '/';
+ FSearch.CaseSensitiveMatchCheckButton.Checked := ConfSearchFilterCaseSensitive;
+ FSearch.StayCurrentFSCheckButton.Checked := ConfSearchOtherFS;
+ FSearch.SearchArchivesCheckButton.Checked := ConfSearchArchives;
+ FSearch.CaseSensitiveCheckButton.Checked := ConfSearchTextCaseSensitive;
+
case FSearch.Run of
mbOK: ;
mbApply: begin
@@ -6125,6 +6130,10 @@ begin
end;
end;
finally
+ ConfSearchFilterCaseSensitive := FSearch.CaseSensitiveMatchCheckButton.Checked;
+ ConfSearchOtherFS := FSearch.StayCurrentFSCheckButton.Checked;
+ ConfSearchArchives := FSearch.SearchArchivesCheckButton.Checked;
+ ConfSearchTextCaseSensitive := FSearch.CaseSensitiveCheckButton.Checked;
FSearch.Free;
Application.ProcessMessages;
InternalLockInit(False);