From 11c190c6224d52bb94b4231a4b3ef423d48b07df Mon Sep 17 00:00:00 2001 From: henrypp Date: Sun, 28 Jan 2018 13:40:03 +0600 Subject: [PATCH] 2.0.1 --- CHANGELOG.md | 5 ++++ bin/History.txt | 5 ++++ bin/freeshooter.lng | Bin 2258 -> 2304 bytes bin/i18n/!example.txt | Bin 2570 -> 2646 bytes bin/i18n/Russian.ini | Bin 2826 -> 2910 bytes build.bat | 2 +- src/app.hpp | 4 +-- src/main.cpp | 37 ++++++++++++----------- src/main.hpp | 2 +- src/resource.hpp | 68 ++++++++++++++++++++++-------------------- src/resource.rc | 4 ++- 11 files changed, 71 insertions(+), 56 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 34c008f..b74c206 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,8 @@ +v2.0.1 (28 January 2018) +- revert "start minimized" option (issue #7) +- fixed hotkeys initialization in some cases +- fixed ui bugs + v2.0 (27 January 2018) + code rewritten on c++ + added clear window background feature (vista+) diff --git a/bin/History.txt b/bin/History.txt index 34c008f..b74c206 100644 --- a/bin/History.txt +++ b/bin/History.txt @@ -1,3 +1,8 @@ +v2.0.1 (28 January 2018) +- revert "start minimized" option (issue #7) +- fixed hotkeys initialization in some cases +- fixed ui bugs + v2.0 (27 January 2018) + code rewritten on c++ + added clear window background feature (vista+) diff --git a/bin/freeshooter.lng b/bin/freeshooter.lng index db9621e877536acd25f2a287dd21eddff384e5dd..3f86f19cf3d4be685c60fa8ab21ee479a49f2607 100644 GIT binary patch delta 252 zcmca4*dVmw6bqx}&67B3 z#CX1Z|94L2t8#lHnOcoLsKk)w+EFOFYngDVsBa1$3~8r#n4R_R!i5BE3~+!E##n|D zDDWU++QJD=nJG-sh6qExT_%d%02B7Nf8V1uT4YL7_~gi*=u;-gBA}~miUB>OBSL!1 pmF01_fg`R&Tv&23{WW~>X=b!}c`z(qUW|P;WV_Broc~j~`31>=ClLSu diff --git a/bin/i18n/!example.txt b/bin/i18n/!example.txt index 1e53de9fbf6b122e092320e3f63fcf0a9504f756..34ef2d93bd023666e8bd0843e015dcf6168f2ca9 100644 GIT binary patch delta 105 zcmeAYxhAq<1&ebqLkNQ-LlBVkW$PzK~G0O?`|JrLadkWG^r0CMsbD*ylh delta 41 tcmca6(j~HC1U4bE^8o@f+CRV3KTW~O85gMd{`71tbjZ#7Cip#tU65GDlB#^4lFh-1}sjKW7))+{8=`CW6xj)0O9KjF#rGn diff --git a/build.bat b/build.bat index 7a30b82..b1be5f9 100644 --- a/build.bat +++ b/build.bat @@ -1,4 +1,4 @@ @echo off cd ..\builder -build "Free Shooter" freeshooter 2.0 +build "Free Shooter" freeshooter 2.0.1 diff --git a/src/app.hpp b/src/app.hpp index acc4140..65f1511 100644 --- a/src/app.hpp +++ b/src/app.hpp @@ -6,8 +6,8 @@ #define APP_NAME L"Free Shooter" #define APP_NAME_SHORT L"freeshooter" -#define APP_VERSION L"2.0" -#define APP_VERSION_RES 2,0,0,0 +#define APP_VERSION L"2.0.1" +#define APP_VERSION_RES 2,0,1,0 #define APP_COPYRIGHT L"(c) 2009, 2010, 2018 " _APP_AUTHOR L". All Rights Reversed." #endif // __APP_H__ diff --git a/src/main.cpp b/src/main.cpp index 1ce4497..70edbe8 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -401,19 +401,16 @@ void _app_takeshot (HWND hwnd, EnumScreenshot mode) } } -void _app_hotkeyuninit (HWND hwnd) -{ - UnregisterHotKey (hwnd, HOTKEY_ID_FULLSCREEN); - UnregisterHotKey (hwnd, HOTKEY_ID_WINDOW); - UnregisterHotKey (hwnd, HOTKEY_ID_REGION); -} - void _app_hotkeyinit (HWND hwnd) { bool is_nofullscreen = false; bool is_nowindow = false; bool is_noregion = false; + UnregisterHotKey (hwnd, HOTKEY_ID_FULLSCREEN); + UnregisterHotKey (hwnd, HOTKEY_ID_WINDOW); + UnregisterHotKey (hwnd, HOTKEY_ID_REGION); + if (app.ConfigGet (L"HotkeyFullscreenEnabled", true).AsBool ()) { const UINT hk_fullscreen = app.ConfigGet (L"HotkeyFullscreen", HOTKEY_FULLSCREEN).AsUint (); @@ -761,8 +758,6 @@ INT_PTR CALLBACK HotkeysProc (HWND hwnd, UINT msg, WPARAM wparam, LPARAM lparam) { case WM_INITDIALOG: { - _app_hotkeyuninit (app.GetHWND ()); - // configure window _r_wnd_center (hwnd, GetParent (hwnd)); @@ -860,12 +855,6 @@ INT_PTR CALLBACK HotkeysProc (HWND hwnd, UINT msg, WPARAM wparam, LPARAM lparam) break; } - case WM_DESTROY: - { - _app_hotkeyinit (app.GetHWND ()); - break; - } - case WM_COMMAND: { if (HIWORD (wparam) == CBN_SELCHANGE && (LOWORD (wparam) == IDC_FULLSCREEN_CB || LOWORD (wparam) == IDC_WINDOW_CB || LOWORD (wparam) == IDC_REGION_CB)) @@ -888,9 +877,9 @@ INT_PTR CALLBACK HotkeysProc (HWND hwnd, UINT msg, WPARAM wparam, LPARAM lparam) const DWORD window_idx = (DWORD)SendDlgItemMessage (hwnd, IDC_WINDOW_CB, CB_GETCURSEL, 0, 0); const DWORD region_idx = (DWORD)SendDlgItemMessage (hwnd, IDC_REGION_CB, CB_GETCURSEL, 0, 0); - app.ConfigSet (L"HotkeyFullscreenEnabled", (fullscreen_idx > 0)); - app.ConfigSet (L"HotkeyWindowEnabled", (window_idx > 0)); - app.ConfigSet (L"HotkeyRegionEnabled", (region_idx > 0)); + app.ConfigSet (L"HotkeyFullscreenEnabled", bool (fullscreen_idx > 0)); + app.ConfigSet (L"HotkeyWindowEnabled", bool (window_idx > 0)); + app.ConfigSet (L"HotkeyRegionEnabled", bool (region_idx > 0)); if (fullscreen_idx > 0) { @@ -940,6 +929,8 @@ INT_PTR CALLBACK HotkeysProc (HWND hwnd, UINT msg, WPARAM wparam, LPARAM lparam) app.ConfigSet (L"HotkeyRegion", (DWORD)MAKEWORD (SendDlgItemMessage (hwnd, IDC_REGION_CB, CB_GETITEMDATA, region_idx, 0), modifiers)); } + _app_hotkeyinit (app.GetHWND ()); + // without break; } @@ -960,6 +951,7 @@ INT_PTR CALLBACK HotkeysProc (HWND hwnd, UINT msg, WPARAM wparam, LPARAM lparam) void _app_initdropdownmenu (HMENU hmenu, bool is_button) { + app.LocaleMenu (hmenu, IDS_STARTMINIMIZED_CHK, IDM_STARTMINIMIZED_CHK, false, nullptr); app.LocaleMenu (hmenu, IDS_LOADONSTARTUP_CHK, IDM_LOADONSTARTUP_CHK, false, nullptr); app.LocaleMenu (hmenu, IDS_CHECKUPDATES_CHK, IDM_CHECKUPDATES_CHK, false, nullptr); app.LocaleMenu (hmenu, IDS_COPYTOCLIPBOARD_CHK, IDM_COPYTOCLIPBOARD_CHK, false, nullptr); @@ -970,6 +962,7 @@ void _app_initdropdownmenu (HMENU hmenu, bool is_button) app.LocaleMenu (hmenu, IDS_IMAGEFORMAT, FORMAT_MENU, true, nullptr); app.LocaleMenu (hmenu, IDS_HOTKEYS, IDM_HOTKEYS, false, is_button ? L"...\tF3" : nullptr); + CheckMenuItem (hmenu, IDM_STARTMINIMIZED_CHK, MF_BYCOMMAND | (app.ConfigGet (L"IsStartMinimized", false).AsBool () ? MF_CHECKED : MF_UNCHECKED)); CheckMenuItem (hmenu, IDM_LOADONSTARTUP_CHK, MF_BYCOMMAND | (app.AutorunIsEnabled () ? MF_CHECKED : MF_UNCHECKED)); CheckMenuItem (hmenu, IDM_CHECKUPDATES_CHK, MF_BYCOMMAND | (app.ConfigGet (L"CheckUpdates", true).AsBool () ? MF_CHECKED : MF_UNCHECKED)); CheckMenuItem (hmenu, IDM_COPYTOCLIPBOARD_CHK, MF_BYCOMMAND | (app.ConfigGet (L"CopyToClipboard", false).AsBool () ? MF_CHECKED : MF_UNCHECKED)); @@ -1226,6 +1219,14 @@ INT_PTR CALLBACK DlgProc (HWND hwnd, UINT msg, WPARAM wparam, LPARAM lparam) break; } + case IDM_STARTMINIMIZED_CHK: + { + const bool new_val = !app.ConfigGet (L"IsStartMinimized", false).AsBool (); + app.ConfigSet (L"IsStartMinimized", new_val); + + break; + } + case IDM_LOADONSTARTUP_CHK: { const bool new_val = !app.AutorunIsEnabled (); diff --git a/src/main.hpp b/src/main.hpp index afdf02e..fac60fc 100644 --- a/src/main.hpp +++ b/src/main.hpp @@ -13,7 +13,7 @@ #define UID 1337 #define LANG_MENU 4 #define SETTINGS_MENU 6 -#define FORMAT_MENU 3 +#define FORMAT_MENU 4 #define WND_SLEEP 150 #define PEN_COLOR RGB(0,0,0) #define PEN_COLOR_BK RGB(255,255,255) diff --git a/src/resource.hpp b/src/resource.hpp index b0cda71..58967fc 100644 --- a/src/resource.hpp +++ b/src/resource.hpp @@ -77,19 +77,20 @@ #define IDM_TRAY_EXIT 149 // Settings Menu -#define IDM_LOADONSTARTUP_CHK 150 -#define IDM_CHECKUPDATES_CHK 151 -#define IDM_COPYTOCLIPBOARD_CHK 152 -#define IDM_PLAYSOUNDS_CHK 153 -#define IDM_INCLUDEMOUSECURSOR_CHK 154 -#define IDM_CLEARBACKGROUND_CHK 155 -#define IDM_DISABLEAEROONWND_CHK 156 -#define IDM_FORMAT_BMP 157 -#define IDM_FORMAT_JPG 158 -#define IDM_FORMAT_PNG 159 -#define IDM_FORMAT_GIF 160 -#define IDM_FORMAT_TIFF 161 -#define IDM_HOTKEYS 162 +#define IDM_STARTMINIMIZED_CHK 150 +#define IDM_LOADONSTARTUP_CHK 151 +#define IDM_CHECKUPDATES_CHK 152 +#define IDM_COPYTOCLIPBOARD_CHK 153 +#define IDM_PLAYSOUNDS_CHK 154 +#define IDM_INCLUDEMOUSECURSOR_CHK 155 +#define IDM_CLEARBACKGROUND_CHK 156 +#define IDM_DISABLEAEROONWND_CHK 157 +#define IDM_FORMAT_BMP 158 +#define IDM_FORMAT_JPG 159 +#define IDM_FORMAT_PNG 160 +#define IDM_FORMAT_GIF 161 +#define IDM_FORMAT_TIFF 162 +#define IDM_HOTKEYS 163 #define IDX_LANGUAGE 1000 @@ -116,31 +117,32 @@ #define IDS_HIDEME_CHK 16 #define IDS_CLASSICUI_CHK 17 -#define IDS_LOADONSTARTUP_CHK 18 -#define IDS_CHECKUPDATES_CHK 19 -#define IDS_COPYTOCLIPBOARD_CHK 20 -#define IDS_DISABLEAEROONWND_CHK 21 +#define IDS_STARTMINIMIZED_CHK 18 +#define IDS_LOADONSTARTUP_CHK 19 +#define IDS_CHECKUPDATES_CHK 20 +#define IDS_COPYTOCLIPBOARD_CHK 21 +#define IDS_DISABLEAEROONWND_CHK 22 -#define IDS_PLAYSOUNDS_CHK 22 -#define IDS_INCLUDEMOUSECURSOR_CHK 23 -#define IDS_CLEARBACKGROUND_CHK 24 +#define IDS_PLAYSOUNDS_CHK 23 +#define IDS_INCLUDEMOUSECURSOR_CHK 24 +#define IDS_CLEARBACKGROUND_CHK 25 -#define IDS_MODE_FULLSCREEN 25 -#define IDS_MODE_WINDOW 26 -#define IDS_MODE_REGION 27 +#define IDS_MODE_FULLSCREEN 26 +#define IDS_MODE_WINDOW 27 +#define IDS_MODE_REGION 28 -#define IDS_IMAGEFORMAT 28 -#define IDS_FOLDER 29 -#define IDS_QUICKSETTINGS 30 -#define IDS_MODE 31 -#define IDS_SCREENSHOT 32 -#define IDS_HOTKEYS 33 +#define IDS_IMAGEFORMAT 29 +#define IDS_FOLDER 30 +#define IDS_QUICKSETTINGS 31 +#define IDS_MODE 32 +#define IDS_SCREENSHOT 33 +#define IDS_HOTKEYS 34 -#define IDS_DISABLE 34 -#define IDS_WARNING_HOTKEYS 35 +#define IDS_DISABLE 35 +#define IDS_WARNING_HOTKEYS 36 -#define IDS_SAVE 36 -#define IDS_CANCEL 37 +#define IDS_SAVE 37 +#define IDS_CANCEL 38 // Wav #define IDW_MAIN 1 diff --git a/src/resource.rc b/src/resource.rc index 2c31865..f988a7f 100644 --- a/src/resource.rc +++ b/src/resource.rc @@ -75,6 +75,7 @@ IDM_SETTINGS MENU { POPUP "" { + MENUITEM " ", IDM_STARTMINIMIZED_CHK MENUITEM " ", IDM_LOADONSTARTUP_CHK MENUITEM " ", IDM_CHECKUPDATES_CHK MENUITEM SEPARATOR @@ -186,6 +187,7 @@ STRINGTABLE IDS_HIDEME_CHK "Hide main window before capture" IDS_CLASSICUI_CHK "Use classic interface (restart required)" + IDS_STARTMINIMIZED_CHK "Start minimized" IDS_LOADONSTARTUP_CHK "Load on system startup" IDS_CHECKUPDATES_CHK "Periodically check for updates (recommended)" IDS_COPYTOCLIPBOARD_CHK "Copy image to clipboard" @@ -194,7 +196,7 @@ STRINGTABLE IDS_FOLDER "Screenshots folder" IDS_QUICKSETTINGS "Quick settings" IDS_MODE "Mode" - IDS_IMAGEFORMAT "Image format" + IDS_IMAGEFORMAT "Save as..." IDS_PLAYSOUNDS_CHK "Play capture sound" IDS_INCLUDEMOUSECURSOR_CHK "Include mouse cursor"