Skip to content

Commit ed636d2

Browse files
committed
improve
1 parent 6dc0a04 commit ed636d2

File tree

1 file changed

+43
-41
lines changed

1 file changed

+43
-41
lines changed

GUI.cpp

+43-41
Original file line numberDiff line numberDiff line change
@@ -793,15 +793,9 @@ void XgUpdateToolBarUI(HWND hwnd)
793793

794794
//////////////////////////////////////////////////////////////////////////////
795795

796-
// 設定を読み込む
797-
bool __fastcall XgLoadSettings(void)
796+
// 設定を初期化する
797+
void XgResetSettings(void)
798798
{
799-
int i, nDirCount = 0;
800-
WCHAR sz[MAX_PATH];
801-
WCHAR szFormat[32];
802-
DWORD dwValue;
803-
804-
// 初期化する。
805799
s_nMainWndX = CW_USEDEFAULT;
806800
s_nMainWndY = CW_USEDEFAULT;
807801
s_nMainWndCX = 475;
@@ -875,6 +869,20 @@ bool __fastcall XgLoadSettings(void)
875869

876870
xg_recently_used_files.clear();
877871

872+
xg_bChoosePAT = false;
873+
}
874+
875+
// 設定を読み込む。
876+
bool __fastcall XgLoadSettings(void)
877+
{
878+
int i, nDirCount = 0;
879+
WCHAR sz[MAX_PATH];
880+
WCHAR szFormat[32];
881+
DWORD dwValue;
882+
883+
// 初期化する。
884+
XgResetSettings();
885+
878886
// アプリ名キーを開く。
879887
MRegKey app_key(HKEY_CURRENT_USER, XG_REGKEY_APP, FALSE);
880888
if (app_key) {
@@ -1276,27 +1284,6 @@ bool __fastcall XgSaveSettings(void)
12761284
return true;
12771285
}
12781286

1279-
// 設定を消去する。
1280-
bool __fastcall XgEraseSettings(void) noexcept
1281-
{
1282-
// レジストリのアプリキーを削除する。
1283-
RegDeleteTreeDx(HKEY_CURRENT_USER, XG_REGKEY_APP);
1284-
1285-
// 黒マスの情報も消す。
1286-
xg_strBlackCellImage.clear();
1287-
if (xg_hbmBlackCell) {
1288-
::DeleteObject(xg_hbmBlackCell);
1289-
xg_hbmBlackCell = nullptr;
1290-
}
1291-
if (xg_hBlackCellEMF) {
1292-
::DeleteEnhMetaFile(xg_hBlackCellEMF);
1293-
xg_hBlackCellEMF = nullptr;
1294-
}
1295-
XgGetFileManager()->clear();
1296-
1297-
return true;
1298-
}
1299-
13001287
//////////////////////////////////////////////////////////////////////////////
13011288

13021289
// クロスワードをチェックする。
@@ -4886,6 +4873,28 @@ void XgUpdateRules(HWND hwnd)
48864873
::DrawMenuBar(hwnd);
48874874
}
48884875

4876+
// 設定を消去する。
4877+
void XgEraseSettings(void)
4878+
{
4879+
// 初期化する。
4880+
XgResetSettings();
4881+
4882+
// レジストリのアプリキーを削除する。
4883+
RegDeleteTreeDx(HKEY_CURRENT_USER, XG_REGKEY_APP);
4884+
4885+
// 黒マスの情報も消す。
4886+
xg_strBlackCellImage.clear();
4887+
if (xg_hbmBlackCell) {
4888+
::DeleteObject(xg_hbmBlackCell);
4889+
xg_hbmBlackCell = nullptr;
4890+
}
4891+
if (xg_hBlackCellEMF) {
4892+
::DeleteEnhMetaFile(xg_hBlackCellEMF);
4893+
xg_hBlackCellEMF = nullptr;
4894+
}
4895+
XgGetFileManager()->clear();
4896+
}
4897+
48894898
// 設定を消去する。
48904899
void MainWnd_OnEraseSettings(HWND hwnd)
48914900
{
@@ -4904,7 +4913,7 @@ void MainWnd_OnEraseSettings(HWND hwnd)
49044913
}
49054914

49064915
// 設定を消去する。
4907-
const bool bSuccess = XgEraseSettings();
4916+
XgEraseSettings();
49084917

49094918
// 初期化する。
49104919
XgLoadSettings();
@@ -4932,17 +4941,10 @@ void MainWnd_OnEraseSettings(HWND hwnd)
49324941
XgResetTheme(hwnd);
49334942
XgUpdateTheme(hwnd);
49344943

4935-
if (bSuccess) {
4936-
// メッセージを表示する。
4937-
XgCenterMessageBoxW(hwnd,
4938-
XgLoadStringDx1(IDS_ERASEDSETTINGS), XgLoadStringDx2(IDS_APPNAME),
4939-
MB_ICONINFORMATION);
4940-
} else {
4941-
// メッセージを表示する。
4942-
XgCenterMessageBoxW(hwnd,
4943-
XgLoadStringDx1(IDS_FAILERASESETTINGS), XgLoadStringDx2(IDS_APPNAME),
4944-
MB_ICONINFORMATION);
4945-
}
4944+
// メッセージを表示する。
4945+
XgCenterMessageBoxW(hwnd,
4946+
XgLoadStringDx1(IDS_ERASEDSETTINGS), XgLoadStringDx2(IDS_APPNAME),
4947+
MB_ICONINFORMATION);
49464948
}
49474949

49484950
// 縦と横を入れ替える。

0 commit comments

Comments
 (0)