mirror of
https://github.com/rizonesoft/Notepad3.git
synced 2026-06-11 21:03:05 +08:00
+enh: add option to auto-load most recent file from file history
This commit is contained in:
parent
62dbee5dd8
commit
b4e9c91a3f
@ -373,88 +373,89 @@
|
||||
#define IDC_SAVEMRU 18048
|
||||
#define IDC_REMOVE 18049
|
||||
#define IDC_REMEMBERSEARCHPATTERN 18050
|
||||
#define IDC_STYLELIST 18051
|
||||
#define IDC_DEFAULTSCHEME 18052
|
||||
#define IDC_AUTOSELECT 18053
|
||||
#define IDC_STYLELABEL_ROOT 18054
|
||||
#define IDC_STYLEEDIT_ROOT 18055
|
||||
#define IDC_STYLELABEL 18056
|
||||
#define IDC_STYLEFORE 18057
|
||||
#define IDC_STYLEBACK 18058
|
||||
#define IDC_STYLEFONT 18059
|
||||
#define IDC_PREVIEW 18060
|
||||
#define IDC_STYLEDEFAULT 18061
|
||||
#define IDC_PREVSTYLE 18062
|
||||
#define IDC_NEXTSTYLE 18063
|
||||
#define IDC_IMPORT 18064
|
||||
#define IDC_EXPORT 18065
|
||||
#define IDC_TITLE 18066
|
||||
#define IDC_STYLEEDIT 18067
|
||||
#define IDC_PRINTER 18068
|
||||
#define IDC_FAVORITESDIR 18069
|
||||
#define IDC_GETFAVORITESDIR 18070
|
||||
#define IDC_FAVORITESDESCR 18071
|
||||
#define IDC_PWD_EDIT1 18072
|
||||
#define IDC_PWD_EDIT2 18073
|
||||
#define IDC_PWD_EDIT3 18074
|
||||
#define IDC_PWD_CHECK1 18075
|
||||
#define IDC_PWD_CHECK2 18076
|
||||
#define IDC_PWD_CHECK3 18077
|
||||
#define IDC_PWD_CHECK4 18078
|
||||
#define IDC_PWD_STATMPW 18079
|
||||
#define IDC_COLUMNWRAP 18080
|
||||
#define IDC_INFOBOXTEXT 18081
|
||||
#define IDC_INFOBOXCHECK 18082
|
||||
#define IDC_INFOBOXICON 18083
|
||||
#define IDC_VERSION 18084
|
||||
#define IDC_SCI_VERSION 18085
|
||||
#define IDC_COMPILER 18086
|
||||
#define IDC_COPYRIGHT 18087
|
||||
#define IDC_WEBPAGE2 18088
|
||||
#define IDC_WEBPAGE 18089
|
||||
#define IDR_RIZBITMAP 18090
|
||||
#define IDC_RIZONEBMP 18091
|
||||
#define IDC_COPYVERSTRG 18092
|
||||
#define IDC_RICHEDITABOUT 18093
|
||||
#define IDC_TRANSL_AUTH 18094
|
||||
#define IDC_TRANSPARENT 18095
|
||||
#define IDC_TAB_WIDTH 18096
|
||||
#define IDC_INDENT_DEPTH 18097
|
||||
#define IDC_TAB_AS_SPC 18098
|
||||
#define IDC_TAB_INDENTS 18099
|
||||
#define IDC_BACKTAB_INDENTS 18100
|
||||
#define IDC_WARN_INCONSISTENT_INDENTS 18101
|
||||
#define IDC_AUTO_DETECT_INDENTS 18102
|
||||
#define IDC_CMDLINEHELP 18103
|
||||
#define IDC_STYLEEDIT_HELP 18104
|
||||
#define IDC_RELIABLE_DETECTION_RES 18105
|
||||
#define IDC_LINE_TEXT 18106
|
||||
#define IDC_COLUMN_TEXT 18107
|
||||
#define IDC_INDENT_WIDTH_TAB 18108
|
||||
#define IDC_INDENT_WIDTH_SPC 18109
|
||||
#define IDC_INDENT_SUM_TAB 18110
|
||||
#define IDC_INDENT_SUM_SPC 18111
|
||||
#define IDC_INDENT_SUM_MIX 18112
|
||||
#define IDC_INDENT_BY_TABS 18113
|
||||
#define IDC_INDENT_BY_SPCS 18114
|
||||
#define IDC_INDENT_TAB_MODX 18115
|
||||
#define IDC_INDENT_SPC_MODX 18116
|
||||
#define IDC_ADDFAV_FILES 18117
|
||||
#define IDC_INFO_GROUPBOX 18118
|
||||
#define IDC_MULTIEDGELINE 18119
|
||||
#define IDC_SHOWEDGELINE 18120
|
||||
#define IDC_BACKGRDCOLOR 18121
|
||||
#define IDC_CLEAR_LIST 18122
|
||||
#define IDC_FINDESCCTRLCHR 18123
|
||||
#define IDC_REPLESCCTRLCHR 18124
|
||||
#define IDC_AUTOSAVE_ENABLE 18125
|
||||
#define IDC_AUTOSAVE_INTERVAL 18126
|
||||
#define IDC_AUTOSAVE_SUSPEND 18127
|
||||
#define IDC_AUTOSAVE_SHUTDOWN 18128
|
||||
#define IDC_AS_BACKUP_ENABLE 18129
|
||||
#define IDC_AS_BACKUP_AUTOSAVE 18130
|
||||
#define IDC_AS_BACKUP_SIDEBYSIDE 18131
|
||||
#define IDC_AS_BACKUP_OPENFOLDER 18132
|
||||
#define IDC_AUTOLOAD_MRU_FILE 18051
|
||||
#define IDC_STYLELIST 18052
|
||||
#define IDC_DEFAULTSCHEME 18053
|
||||
#define IDC_AUTOSELECT 18054
|
||||
#define IDC_STYLELABEL_ROOT 18055
|
||||
#define IDC_STYLEEDIT_ROOT 18056
|
||||
#define IDC_STYLELABEL 18057
|
||||
#define IDC_STYLEFORE 18058
|
||||
#define IDC_STYLEBACK 18059
|
||||
#define IDC_STYLEFONT 18060
|
||||
#define IDC_PREVIEW 18061
|
||||
#define IDC_STYLEDEFAULT 18062
|
||||
#define IDC_PREVSTYLE 18063
|
||||
#define IDC_NEXTSTYLE 18064
|
||||
#define IDC_IMPORT 18065
|
||||
#define IDC_EXPORT 18066
|
||||
#define IDC_TITLE 18067
|
||||
#define IDC_STYLEEDIT 18068
|
||||
#define IDC_PRINTER 18069
|
||||
#define IDC_FAVORITESDIR 18070
|
||||
#define IDC_GETFAVORITESDIR 18071
|
||||
#define IDC_FAVORITESDESCR 18072
|
||||
#define IDC_PWD_EDIT1 18073
|
||||
#define IDC_PWD_EDIT2 18074
|
||||
#define IDC_PWD_EDIT3 18075
|
||||
#define IDC_PWD_CHECK1 18076
|
||||
#define IDC_PWD_CHECK2 18077
|
||||
#define IDC_PWD_CHECK3 18078
|
||||
#define IDC_PWD_CHECK4 18079
|
||||
#define IDC_PWD_STATMPW 18080
|
||||
#define IDC_COLUMNWRAP 18081
|
||||
#define IDC_INFOBOXTEXT 18082
|
||||
#define IDC_INFOBOXCHECK 18083
|
||||
#define IDC_INFOBOXICON 18084
|
||||
#define IDC_VERSION 18085
|
||||
#define IDC_SCI_VERSION 18086
|
||||
#define IDC_COMPILER 18087
|
||||
#define IDC_COPYRIGHT 18088
|
||||
#define IDC_WEBPAGE2 18089
|
||||
#define IDC_WEBPAGE 18090
|
||||
#define IDR_RIZBITMAP 18091
|
||||
#define IDC_RIZONEBMP 18092
|
||||
#define IDC_COPYVERSTRG 18093
|
||||
#define IDC_RICHEDITABOUT 18094
|
||||
#define IDC_TRANSL_AUTH 18095
|
||||
#define IDC_TRANSPARENT 18096
|
||||
#define IDC_TAB_WIDTH 18097
|
||||
#define IDC_INDENT_DEPTH 18098
|
||||
#define IDC_TAB_AS_SPC 18099
|
||||
#define IDC_TAB_INDENTS 18100
|
||||
#define IDC_BACKTAB_INDENTS 18101
|
||||
#define IDC_WARN_INCONSISTENT_INDENTS 18102
|
||||
#define IDC_AUTO_DETECT_INDENTS 18103
|
||||
#define IDC_CMDLINEHELP 18104
|
||||
#define IDC_STYLEEDIT_HELP 18105
|
||||
#define IDC_RELIABLE_DETECTION_RES 18106
|
||||
#define IDC_LINE_TEXT 18107
|
||||
#define IDC_COLUMN_TEXT 18108
|
||||
#define IDC_INDENT_WIDTH_TAB 18109
|
||||
#define IDC_INDENT_WIDTH_SPC 18110
|
||||
#define IDC_INDENT_SUM_TAB 18111
|
||||
#define IDC_INDENT_SUM_SPC 18112
|
||||
#define IDC_INDENT_SUM_MIX 18113
|
||||
#define IDC_INDENT_BY_TABS 18114
|
||||
#define IDC_INDENT_BY_SPCS 18115
|
||||
#define IDC_INDENT_TAB_MODX 18116
|
||||
#define IDC_INDENT_SPC_MODX 18117
|
||||
#define IDC_ADDFAV_FILES 18118
|
||||
#define IDC_INFO_GROUPBOX 18119
|
||||
#define IDC_MULTIEDGELINE 18120
|
||||
#define IDC_SHOWEDGELINE 18121
|
||||
#define IDC_BACKGRDCOLOR 18122
|
||||
#define IDC_CLEAR_LIST 18123
|
||||
#define IDC_FINDESCCTRLCHR 18124
|
||||
#define IDC_REPLESCCTRLCHR 18125
|
||||
#define IDC_AUTOSAVE_ENABLE 18126
|
||||
#define IDC_AUTOSAVE_INTERVAL 18127
|
||||
#define IDC_AUTOSAVE_SUSPEND 18128
|
||||
#define IDC_AUTOSAVE_SHUTDOWN 18129
|
||||
#define IDC_AS_BACKUP_ENABLE 18130
|
||||
#define IDC_AS_BACKUP_AUTOSAVE 18131
|
||||
#define IDC_AS_BACKUP_SIDEBYSIDE 18132
|
||||
#define IDC_AS_BACKUP_OPENFOLDER 18133
|
||||
|
||||
#define IDC_RADIO_BTN_A 18200
|
||||
#define IDC_RADIO_BTN_B 18201
|
||||
@ -812,14 +813,15 @@
|
||||
#define IDM_SET_SAVEBEFORERUNNINGTOOLS 42030
|
||||
#define IDM_SET_NOSAVERECENT 42031
|
||||
#define IDM_SET_NOSAVEFINDREPL 42032
|
||||
#define IDM_SET_SAVESETTINGS 42033
|
||||
#define IDM_SET_SAVESETTINGSNOW 42034
|
||||
#define IDM_SET_AUTOCOMPLETEWORDS 42035
|
||||
#define IDM_SET_AUTOCLEXKEYWORDS 42036
|
||||
#define IDM_SET_ALTERNATE_WORD_SEPS 42037
|
||||
#define IDM_SET_NOPRESERVECARET 42038
|
||||
#define IDM_SET_MUTE_MESSAGEBEEP 42039
|
||||
#define IDM_SET_EVALTINYEXPRONSEL 42040
|
||||
#define IDM_SET_AUTOLOAD_MRU_FILE 42033
|
||||
#define IDM_SET_SAVESETTINGS 42034
|
||||
#define IDM_SET_SAVESETTINGSNOW 42035
|
||||
#define IDM_SET_AUTOCOMPLETEWORDS 42036
|
||||
#define IDM_SET_AUTOCLEXKEYWORDS 42037
|
||||
#define IDM_SET_ALTERNATE_WORD_SEPS 42038
|
||||
#define IDM_SET_NOPRESERVECARET 42039
|
||||
#define IDM_SET_MUTE_MESSAGEBEEP 42040
|
||||
#define IDM_SET_EVALTINYEXPRONSEL 42041
|
||||
|
||||
#define IDM_HELP_ABOUT 43000
|
||||
#define IDM_HELP_CMD 43001
|
||||
|
||||
@ -254,16 +254,16 @@ BEGIN
|
||||
PUSHBUTTON "Abbrechen",IDCANCEL,7,74,50,14
|
||||
END
|
||||
|
||||
IDD_MUI_FILEMRU DIALOGEX 0, 0, 269, 160
|
||||
IDD_MUI_FILEMRU DIALOGEX 0, 0, 269, 172
|
||||
STYLE DS_SETFONT | DS_MODALFRAME | DS_FIXEDSYS | WS_POPUP | WS_CAPTION | WS_SYSMENU
|
||||
CAPTION "Zuletzt geöffnete Dateien"
|
||||
FONT 9, "Segoe UI", 400, 0, 0x1
|
||||
BEGIN
|
||||
CONTROL "",IDC_FILEMRU,"SysListView32",LVS_REPORT | LVS_SINGLESEL | LVS_SHOWSELALWAYS | LVS_SHAREIMAGELISTS | LVS_AUTOARRANGE | LVS_NOCOLUMNHEADER | WS_BORDER | WS_TABSTOP,7,7,255,97
|
||||
CONTROL "&Letzte Caret Position merken.",IDC_PRESERVECARET,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,7,119,120,10
|
||||
CONTROL "&Speichere Historie beim Beenden.",IDC_SAVEMRU,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,7,107,120,10
|
||||
CONTROL "&Letztes Suchmuster merken.",IDC_REMEMBERSEARCHPATTERN,
|
||||
"Button",BS_AUTOCHECKBOX | WS_TABSTOP,7,130,120,10
|
||||
CONTROL "&Letzte Caret Position merken.",IDC_PRESERVECARET,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,7,119,120,10
|
||||
CONTROL "&Letztes Suchmuster merken.",IDC_REMEMBERSEARCHPATTERN,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,7,131,120,10
|
||||
CONTROL "&Lade letzte Datei beim Start autom.",IDC_AUTOLOAD_MRU_FILE,"Button", BS_AUTOCHECKBOX | WS_TABSTOP,7,143,120,10
|
||||
CONTROL "Verwerfen", IDC_REMOVE, "Button", BS_DEFSPLITBUTTON | WS_TABSTOP | WS_DISABLED, 212, 107, 50, 14
|
||||
DEFPUSHBUTTON "OK",IDOK,154,139,50,14,WS_DISABLED
|
||||
PUSHBUTTON "Schließen",IDCANCEL,212,139,50,14
|
||||
|
||||
@ -492,6 +492,7 @@ BEGIN
|
||||
MENUITEM "Letzte Dateien merken", IDM_SET_NOSAVERECENT
|
||||
MENUITEM "Textposition speichern", IDM_SET_NOPRESERVECARET
|
||||
MENUITEM "Suchbegriffe speichern", IDM_SET_NOSAVEFINDREPL
|
||||
MENUITEM "Letzte Datei beim Start laden", IDM_SET_AUTOLOAD_MRU_FILE
|
||||
END
|
||||
POPUP "&Fenster"
|
||||
BEGIN
|
||||
|
||||
@ -254,16 +254,16 @@ BEGIN
|
||||
PUSHBUTTON "Cancel",IDCANCEL,7,74,50,14
|
||||
END
|
||||
|
||||
IDD_MUI_FILEMRU DIALOGEX 0, 0, 269, 160
|
||||
IDD_MUI_FILEMRU DIALOGEX 0, 0, 269, 172
|
||||
STYLE DS_SETFONT | DS_MODALFRAME | DS_FIXEDSYS | WS_POPUP | WS_CAPTION | WS_SYSMENU
|
||||
CAPTION "Open Recent File"
|
||||
FONT 9, "Segoe UI", 400, 0, 0x1
|
||||
BEGIN
|
||||
CONTROL "",IDC_FILEMRU,"SysListView32",LVS_REPORT | LVS_SINGLESEL | LVS_SHOWSELALWAYS | LVS_SHAREIMAGELISTS | LVS_AUTOARRANGE | LVS_NOCOLUMNHEADER | WS_BORDER | WS_TABSTOP,7,7,255,97
|
||||
CONTROL "&Preserve caret position.",IDC_PRESERVECARET,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,7,119,96,10
|
||||
CONTROL "&Save recent file list on exit.",IDC_SAVEMRU,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,7,107,96,10
|
||||
CONTROL "&Remember search pattern.",IDC_REMEMBERSEARCHPATTERN,
|
||||
"Button",BS_AUTOCHECKBOX | WS_TABSTOP,7,130,96,10
|
||||
CONTROL "&Save recent file list on exit.",IDC_SAVEMRU,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,7,107,120,10
|
||||
CONTROL "&Preserve caret position.",IDC_PRESERVECARET,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,7,119,120,10
|
||||
CONTROL "&Remember search pattern.",IDC_REMEMBERSEARCHPATTERN,"Button",BS_AUTOCHECKBOX|WS_TABSTOP,7,131,120,10
|
||||
CONTROL "&Autoload most recent file on startup.",IDC_AUTOLOAD_MRU_FILE,"Button",BS_AUTOCHECKBOX|WS_TABSTOP,7,143,120,10
|
||||
CONTROL "Discard", IDC_REMOVE, "Button", BS_DEFSPLITBUTTON | WS_TABSTOP | WS_DISABLED, 212, 107, 50, 14
|
||||
DEFPUSHBUTTON "OK",IDOK,154,139,50,14,WS_DISABLED
|
||||
PUSHBUTTON "Close",IDCANCEL,212,139,50,14
|
||||
|
||||
@ -492,6 +492,7 @@ BEGIN
|
||||
MENUITEM "Remember &Recent Files", IDM_SET_NOSAVERECENT
|
||||
MENUITEM "Preserve &Caret Position", IDM_SET_NOPRESERVECARET
|
||||
MENUITEM "Remember &Search Pattern", IDM_SET_NOSAVEFINDREPL
|
||||
MENUITEM "&Autoload Recent File", IDM_SET_AUTOLOAD_MRU_FILE
|
||||
END
|
||||
POPUP "W&indow"
|
||||
BEGIN
|
||||
|
||||
@ -1432,6 +1432,7 @@ void LoadSettings()
|
||||
GET_BOOL_VALUE_FROM_INISECTION(SaveRecentFiles, true);
|
||||
GET_BOOL_VALUE_FROM_INISECTION(PreserveCaretPos, false);
|
||||
GET_BOOL_VALUE_FROM_INISECTION(SaveFindReplace, false);
|
||||
GET_BOOL_VALUE_FROM_INISECTION(AutoLoadMRUFile, false);
|
||||
GET_BOOL_VALUE_FROM_INISECTION(DocReadOnlyMode, false);
|
||||
|
||||
Defaults.EFR_Data.bFindClose = false;
|
||||
@ -1885,7 +1886,7 @@ static bool _SaveSettings(bool bForceSaveSettings)
|
||||
SAVE_VALUE_IF_NOT_EQ_DEFAULT(Bool, SaveRecentFiles);
|
||||
SAVE_VALUE_IF_NOT_EQ_DEFAULT(Bool, PreserveCaretPos);
|
||||
SAVE_VALUE_IF_NOT_EQ_DEFAULT(Bool, SaveFindReplace);
|
||||
SAVE_VALUE_IF_NOT_EQ_DEFAULT(Bool, SaveFindReplace);
|
||||
SAVE_VALUE_IF_NOT_EQ_DEFAULT(Bool, AutoLoadMRUFile);
|
||||
SAVE_VALUE_IF_NOT_EQ_DEFAULT(Bool, DocReadOnlyMode);
|
||||
|
||||
if (Settings.EFR_Data.bFindClose != Defaults.EFR_Data.bFindClose) {
|
||||
|
||||
@ -2255,7 +2255,7 @@ static INT_PTR CALLBACK FileMRUDlgProc(HWND hwnd, UINT umsg, WPARAM wParam, LPAR
|
||||
SetExplorerTheme(GetDlgItem(hwnd, IDCANCEL));
|
||||
SetExplorerTheme(GetDlgItem(hwnd, IDC_REMOVE));
|
||||
SetExplorerTheme(GetDlgItem(hwnd, IDC_RESIZEGRIP));
|
||||
int const ctl[] = { IDC_SAVEMRU, IDC_PRESERVECARET, IDC_REMEMBERSEARCHPATTERN, IDC_STATIC };
|
||||
int const ctl[] = { IDC_SAVEMRU, IDC_PRESERVECARET, IDC_REMEMBERSEARCHPATTERN, IDC_AUTOLOAD_MRU_FILE, IDC_STATIC };
|
||||
for (int i = 0; i < COUNTOF(ctl); ++i) {
|
||||
SetWindowTheme(GetDlgItem(hwnd, ctl[i]), L"", L""); // remove theme for BS_AUTORADIOBUTTON
|
||||
}
|
||||
@ -2301,6 +2301,7 @@ static INT_PTR CALLBACK FileMRUDlgProc(HWND hwnd, UINT umsg, WPARAM wParam, LPAR
|
||||
CheckDlgButton(hwnd, IDC_SAVEMRU, SetBtn(Settings.SaveRecentFiles));
|
||||
CheckDlgButton(hwnd, IDC_PRESERVECARET, SetBtn(Settings.PreserveCaretPos));
|
||||
CheckDlgButton(hwnd, IDC_REMEMBERSEARCHPATTERN, SetBtn(Settings.SaveFindReplace));
|
||||
CheckDlgButton(hwnd, IDC_AUTOLOAD_MRU_FILE, SetBtn(Settings.AutoLoadMRUFile));
|
||||
|
||||
DialogEnableControl(hwnd, IDC_PRESERVECARET, Settings.SaveRecentFiles);
|
||||
|
||||
@ -2319,8 +2320,9 @@ static INT_PTR CALLBACK FileMRUDlgProc(HWND hwnd, UINT umsg, WPARAM wParam, LPAR
|
||||
}
|
||||
|
||||
Settings.SaveRecentFiles = IsButtonChecked(hwnd, IDC_SAVEMRU);
|
||||
Settings.SaveFindReplace = IsButtonChecked(hwnd, IDC_REMEMBERSEARCHPATTERN);
|
||||
Settings.PreserveCaretPos = IsButtonChecked(hwnd, IDC_PRESERVECARET);
|
||||
Settings.SaveFindReplace = IsButtonChecked(hwnd, IDC_REMEMBERSEARCHPATTERN);
|
||||
Settings.AutoLoadMRUFile = IsButtonChecked(hwnd, IDC_AUTOLOAD_MRU_FILE);
|
||||
|
||||
Path_Release(hFilePath);
|
||||
|
||||
@ -2340,6 +2342,7 @@ static INT_PTR CALLBACK FileMRUDlgProc(HWND hwnd, UINT umsg, WPARAM wParam, LPAR
|
||||
hdwp = DeferCtlPos(hdwp, hwnd, IDC_SAVEMRU, 0, dy, SWP_NOSIZE);
|
||||
hdwp = DeferCtlPos(hdwp, hwnd, IDC_PRESERVECARET, 0, dy, SWP_NOSIZE);
|
||||
hdwp = DeferCtlPos(hdwp, hwnd, IDC_REMEMBERSEARCHPATTERN, 0, dy, SWP_NOSIZE);
|
||||
hdwp = DeferCtlPos(hdwp, hwnd, IDC_AUTOLOAD_MRU_FILE, 0, dy, SWP_NOSIZE);
|
||||
EndDeferWindowPos(hdwp);
|
||||
ListView_SetColumnWidth(hwndLV, 0, LVSCW_AUTOSIZE_USEHEADER);
|
||||
}
|
||||
|
||||
@ -1076,6 +1076,7 @@ int WINAPI wWinMain(_In_ HINSTANCE hInstance, _In_opt_ HINSTANCE hPrevInstance,
|
||||
StringCchCat(s_wchWndClass, COUNTOF(s_wchWndClass), L"B");
|
||||
}
|
||||
|
||||
// INI File Handling
|
||||
FindIniFile();
|
||||
TestIniFile();
|
||||
DWORD dwFileSize = 0UL;
|
||||
@ -1087,7 +1088,9 @@ int WINAPI wWinMain(_In_ HINSTANCE hInstance, _In_opt_ HINSTANCE hPrevInstance,
|
||||
}
|
||||
LoadSettings();
|
||||
|
||||
// set AppUserModelID
|
||||
// Autoload recent file on close
|
||||
CheckAutoLoadMostRecent();
|
||||
|
||||
PrivateSetCurrentProcessExplicitAppUserModelID(Settings2.AppUserModelID);
|
||||
|
||||
(void)CoInitializeEx(NULL, COINIT_APARTMENTTHREADED | COINIT_SPEED_OVER_MEMORY);
|
||||
@ -4281,6 +4284,7 @@ LRESULT MsgInitMenu(HWND hwnd, WPARAM wParam, LPARAM lParam)
|
||||
CheckCmd(hmenu, IDM_SET_NOSAVERECENT, Settings.SaveRecentFiles);
|
||||
CheckCmd(hmenu, IDM_SET_NOPRESERVECARET, Settings.PreserveCaretPos);
|
||||
CheckCmd(hmenu, IDM_SET_NOSAVEFINDREPL, Settings.SaveFindReplace);
|
||||
CheckCmd(hmenu, IDM_SET_AUTOLOAD_MRU_FILE, Settings.AutoLoadMRUFile);
|
||||
|
||||
CheckCmd(hmenu, IDM_SET_EVALTINYEXPRONSEL, Settings.EvalTinyExprOnSelection);
|
||||
|
||||
@ -6298,6 +6302,11 @@ LRESULT MsgCommand(HWND hwnd, UINT umsg, WPARAM wParam, LPARAM lParam)
|
||||
break;
|
||||
|
||||
|
||||
case IDM_SET_AUTOLOAD_MRU_FILE:
|
||||
Settings.AutoLoadMRUFile = !Settings.AutoLoadMRUFile;
|
||||
break;
|
||||
|
||||
|
||||
case IDM_SET_SAVEBEFORERUNNINGTOOLS:
|
||||
Settings.SaveBeforeRunningTools = !Settings.SaveBeforeRunningTools;
|
||||
break;
|
||||
@ -9151,7 +9160,6 @@ void ParseCommandLine()
|
||||
FreeMem(lpFileBuf);
|
||||
}
|
||||
}
|
||||
|
||||
// Continue with next argument
|
||||
if (bContinue) {
|
||||
StringCchCopy(lp3, len, lp2);
|
||||
@ -9164,6 +9172,26 @@ void ParseCommandLine()
|
||||
}
|
||||
|
||||
|
||||
//=============================================================================
|
||||
//
|
||||
// CheckAutoLoadMostRecent()
|
||||
//
|
||||
void CheckAutoLoadMostRecent()
|
||||
{
|
||||
// Add most recent from file history
|
||||
if (Path_IsEmpty(s_pthArgFilePath) && Settings.AutoLoadMRUFile) {
|
||||
if (MRU_Count(Globals.pFileMRU) > 0) {
|
||||
LPWSTR const szFileBuf = Path_WriteAccessBuf(s_pthArgFilePath, PATHLONG_MAX_CCH); // reserve buffer
|
||||
int const cchFileBuf = (int)Path_GetBufCount(s_pthArgFilePath);
|
||||
MRU_Enum(Globals.pFileMRU, 0, szFileBuf, cchFileBuf);
|
||||
Path_Sanitize(s_pthArgFilePath);
|
||||
Path_UnQuoteSpaces(s_pthArgFilePath);
|
||||
Path_AbsoluteFromApp(s_pthArgFilePath, true);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
//=============================================================================
|
||||
//
|
||||
// _DelayUpdateStatusbar()
|
||||
@ -10090,6 +10118,7 @@ void UpdateSaveSettingsCmds()
|
||||
EnableCmd(hmenu, IDM_SET_NOSAVERECENT, bCanSav);
|
||||
EnableCmd(hmenu, IDM_SET_NOPRESERVECARET, Settings.SaveRecentFiles && bCanSav);
|
||||
EnableCmd(hmenu, IDM_SET_NOSAVEFINDREPL, bCanSav);
|
||||
EnableCmd(hmenu, IDM_SET_AUTOLOAD_MRU_FILE, bCanSav);
|
||||
|
||||
DrawMenuBar(Globals.hwndMain);
|
||||
}
|
||||
|
||||
@ -123,6 +123,7 @@ void SetNotifyIconTitle(HWND hwnd);
|
||||
void SetSavePoint();
|
||||
|
||||
void ParseCommandLine();
|
||||
void CheckAutoLoadMostRecent();
|
||||
void ShowZoomCallTip();
|
||||
void ShowWrapAroundCallTip(bool forwardSearch);
|
||||
|
||||
|
||||
@ -558,6 +558,7 @@ typedef struct SETTINGS_T {
|
||||
bool SaveRecentFiles;
|
||||
bool PreserveCaretPos;
|
||||
bool SaveFindReplace;
|
||||
bool AutoLoadMRUFile;
|
||||
int PathNameFormat;
|
||||
bool WordWrap;
|
||||
int WordWrapMode;
|
||||
|
||||
@ -151,7 +151,7 @@ inline LPCWSTR _Win10BuildToReleaseId(const DWORD build)
|
||||
#if defined(_MSC_VER)
|
||||
#if (_MSC_VER == 1933)
|
||||
#if (_MSC_FULL_VER >= 193331630)
|
||||
#define VER_CPL MS Visual C++ 2022 v17.3.(4-5)
|
||||
#define VER_CPL MS Visual C++ 2022 v17.3.(4-6)
|
||||
#elif (_MSC_FULL_VER >= 193331629)
|
||||
#define VER_CPL MS Visual C++ 2022 v17.3.(0-3)
|
||||
#endif
|
||||
|
||||
Loading…
Reference in New Issue
Block a user