From eb0e763b27fb33a649103b51b1fddfbe8524e495 Mon Sep 17 00:00:00 2001 From: Thanh Phu Date: Sun, 7 Jan 2024 04:39:35 +0900 Subject: [PATCH 1/8] Dvorak support --- .gitignore | 8 +++ Sources/OpenKey/engine/platforms/win32.h | 64 ++++++++++++------------ 2 files changed, 40 insertions(+), 32 deletions(-) create mode 100644 .gitignore diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..8590068 --- /dev/null +++ b/.gitignore @@ -0,0 +1,8 @@ +################################################################################ +# This .gitignore file was automatically created by Microsoft(R) Visual Studio. +################################################################################ + +/Sources/OpenKey/win32/OpenKey/.vs/OpenKey +/Sources/OpenKey/win32/OpenKey/x64/Debug +/Sources/OpenKey/win32/OpenKey/OpenKey/x64/Debug +, \ No newline at end of file diff --git a/Sources/OpenKey/engine/platforms/win32.h b/Sources/OpenKey/engine/platforms/win32.h index cabfabe..c2e0133 100644 --- a/Sources/OpenKey/engine/platforms/win32.h +++ b/Sources/OpenKey/engine/platforms/win32.h @@ -23,31 +23,31 @@ #define KEY_EMPTY 256 #define KEY_A 0x41 -#define KEY_B 0x42 -#define KEY_C 0x43 -#define KEY_D 0x44 -#define KEY_E 0x45 -#define KEY_F 0x46 -#define KEY_G 0x47 -#define KEY_H 0x48 -#define KEY_I 0x49 -#define KEY_J 0x4A -#define KEY_K 0x4B -#define KEY_L 0x4C +#define KEY_B 0x4E +#define KEY_C 0x49 +#define KEY_D 0x48 +#define KEY_E 0x44 +#define KEY_F 0x59 +#define KEY_G 0x55 +#define KEY_H 0x4A +#define KEY_I 0x47 +#define KEY_J 0x43 +#define KEY_K 0x56 +#define KEY_L 0x50 #define KEY_M 0x4D -#define KEY_N 0x4E -#define KEY_O 0x4F -#define KEY_P 0x50 -#define KEY_Q 0x51 -#define KEY_R 0x52 -#define KEY_S 0x53 -#define KEY_T 0x54 -#define KEY_U 0x55 -#define KEY_V 0x56 -#define KEY_W 0x57 -#define KEY_X 0x58 -#define KEY_Y 0x59 -#define KEY_Z 0x5A +#define KEY_N 0x4C +#define KEY_O 0x53 +#define KEY_P 0x52 +#define KEY_Q 0x58 +#define KEY_R 0x4F +#define KEY_S 0xBA +#define KEY_T 0x4B +#define KEY_U 0x46 +#define KEY_V 0xBE +#define KEY_W 0xBC +#define KEY_X 0x42 +#define KEY_Y 0x54 +#define KEY_Z 0xBF #define KEY_1 0x31 #define KEY_2 0x32 @@ -60,20 +60,20 @@ #define KEY_9 0x39 #define KEY_0 0x30 -#define KEY_LEFT_BRACKET 0xDB //note -#define KEY_RIGHT_BRACKET 0xDD +#define KEY_LEFT_BRACKET 0xBD //note +#define KEY_RIGHT_BRACKET 0xBB #define KEY_LEFT_SHIFT 160 #define KEY_RIGHT_SHIFT 161 #define KEY_DOT VK_OEM_PERIOD #define KEY_BACKQUOTE 220 -#define KEY_MINUS 189 -#define KEY_EQUALS 187 -#define KEY_BACK_SLASH 222 -#define KEY_SEMICOLON 186 -#define KEY_QUOTE 192 +#define KEY_MINUS 222 +#define KEY_EQUALS 221 +#define KEY_BACK_SLASH 220 +#define KEY_SEMICOLON 90 +#define KEY_QUOTE 81 #define KEY_COMMA VK_OEM_COMMA -#define KEY_SLASH 191 +#define KEY_SLASH 219 #endif //OPENKEY_WIN32_H \ No newline at end of file From cf70e8f822534223bb8589306201fbc096e350c7 Mon Sep 17 00:00:00 2001 From: Thanh Phu Date: Sun, 7 Jan 2024 04:40:59 +0900 Subject: [PATCH 2/8] Update gitignore --- .gitignore | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.gitignore b/.gitignore index 8590068..17cfa60 100644 --- a/.gitignore +++ b/.gitignore @@ -4,5 +4,6 @@ /Sources/OpenKey/win32/OpenKey/.vs/OpenKey /Sources/OpenKey/win32/OpenKey/x64/Debug +/Sources/OpenKey/win32/OpenKey/x64/Release /Sources/OpenKey/win32/OpenKey/OpenKey/x64/Debug -, \ No newline at end of file +/Sources/OpenKey/win32/OpenKey/OpenKey/x64/Release From f953e44b8621903629310d61fa7983495458ae86 Mon Sep 17 00:00:00 2001 From: Winston Lee Date: Fri, 15 Nov 2024 10:07:11 +0900 Subject: [PATCH 3/8] Add win32 ignore --- .gitignore | 9 +++++++++ 1 file changed, 9 insertions(+) create mode 100644 .gitignore diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..17cfa60 --- /dev/null +++ b/.gitignore @@ -0,0 +1,9 @@ +################################################################################ +# This .gitignore file was automatically created by Microsoft(R) Visual Studio. +################################################################################ + +/Sources/OpenKey/win32/OpenKey/.vs/OpenKey +/Sources/OpenKey/win32/OpenKey/x64/Debug +/Sources/OpenKey/win32/OpenKey/x64/Release +/Sources/OpenKey/win32/OpenKey/OpenKey/x64/Debug +/Sources/OpenKey/win32/OpenKey/OpenKey/x64/Release From 7a7980a07233431fa725509757ded0bdb8828e8d Mon Sep 17 00:00:00 2001 From: Winston Lee Date: Fri, 15 Nov 2024 10:07:18 +0900 Subject: [PATCH 4/8] Add allow other languages options to win32 --- Sources/OpenKey/win32/OpenKey/OpenKey/AppDelegate.cpp | 2 ++ .../OpenKey/win32/OpenKey/OpenKey/MainControlDialog.cpp | 7 +++++++ Sources/OpenKey/win32/OpenKey/OpenKey/OpenKey.cpp | 1 + Sources/OpenKey/win32/OpenKey/OpenKey/OpenKey.rc | 9 ++++++--- Sources/OpenKey/win32/OpenKey/OpenKey/stdafx.h | 1 + 5 files changed, 17 insertions(+), 3 deletions(-) diff --git a/Sources/OpenKey/win32/OpenKey/OpenKey/AppDelegate.cpp b/Sources/OpenKey/win32/OpenKey/OpenKey/AppDelegate.cpp index 4a5de15..140d6e4 100644 --- a/Sources/OpenKey/win32/OpenKey/OpenKey/AppDelegate.cpp +++ b/Sources/OpenKey/win32/OpenKey/OpenKey/AppDelegate.cpp @@ -37,6 +37,7 @@ int vTempOffSpelling = 0; int vAllowConsonantZFWJ = 0; int vQuickStartConsonant = 0; int vQuickEndConsonant = 0; +int vOtherLanguage = 1; int vRememberCode = 1; int vTempOffOpenKey = 0; @@ -193,6 +194,7 @@ void AppDelegate::onDefaultConfig() { APP_SET_DATA(vSupportMetroApp, 1); APP_SET_DATA(vRememberCode, 1); + APP_SET_DATA(vOtherLanguage, 1); APP_SET_DATA(vTempOffOpenKey, 0); APP_SET_DATA(vFixChromiumBrowser, 0); diff --git a/Sources/OpenKey/win32/OpenKey/OpenKey/MainControlDialog.cpp b/Sources/OpenKey/win32/OpenKey/OpenKey/MainControlDialog.cpp index 094cf48..5ce5256 100644 --- a/Sources/OpenKey/win32/OpenKey/OpenKey/MainControlDialog.cpp +++ b/Sources/OpenKey/win32/OpenKey/OpenKey/MainControlDialog.cpp @@ -141,6 +141,9 @@ void MainControlDialog::initDialog() { checkRememberTableCode = GetDlgItem(hTabPage1, IDC_CHECK_SMART_SWITCH_CODE); createToolTip(checkRememberTableCode, IDS_STRING_REMEMBER_TABLE_CODE); + checkAllowOtherLanguages = GetDlgItem(hTabPage1, IDC_CHECK_OTHER_LANGUAGES); + createToolTip(checkAllowOtherLanguages, IDS_STRING_OTHER_LANGUAGES); + checkTempOffOpenKey = GetDlgItem(hTabPage1, IDC_CHECK_TEMP_OFF_OPEN_KEY); createToolTip(checkTempOffOpenKey, IDS_STRING_TEMP_OFF_OPENKEY); @@ -343,6 +346,7 @@ void MainControlDialog::fillData() { SendMessage(checkQuickStartConsonant, BM_SETCHECK, vQuickStartConsonant ? 1 : 0, 0); SendMessage(checkQuickEndConsonant, BM_SETCHECK, vQuickEndConsonant ? 1 : 0, 0); SendMessage(checkRememberTableCode, BM_SETCHECK, vRememberCode ? 1 : 0, 0); + SendMessage(checkAllowOtherLanguages, BM_SETCHECK, vOtherLanguage ? 1 : 0, 0); SendMessage(checkTempOffOpenKey, BM_SETCHECK, vTempOffOpenKey ? 1 : 0, 0); SendMessage(checkSmartSwitchKey, BM_SETCHECK, vUseSmartSwitchKey ? 1 : 0, 0); @@ -511,6 +515,9 @@ void MainControlDialog::onCheckboxClicked(const HWND & hWnd) { } else if (hWnd == checkRememberTableCode) { val = (int)SendMessage(hWnd, BM_GETCHECK, 0, 0); APP_SET_DATA(vRememberCode, val ? 1 : 0); + } else if (hWnd == checkAllowOtherLanguages) { + val = (int)SendMessage(hWnd, BM_GETCHECK, 0, 0); + APP_SET_DATA(vOtherLanguage, val ? 1 : 0); } else if (hWnd == checkTempOffOpenKey) { val = (int)SendMessage(hWnd, BM_GETCHECK, 0, 0); APP_SET_DATA(vTempOffOpenKey, val ? 1 : 0); diff --git a/Sources/OpenKey/win32/OpenKey/OpenKey/OpenKey.cpp b/Sources/OpenKey/win32/OpenKey/OpenKey/OpenKey.cpp index aef5282..faa179c 100644 --- a/Sources/OpenKey/win32/OpenKey/OpenKey/OpenKey.cpp +++ b/Sources/OpenKey/win32/OpenKey/OpenKey/OpenKey.cpp @@ -107,6 +107,7 @@ void OpenKeyInit() { APP_GET_DATA(vCreateDesktopShortcut, 0); APP_GET_DATA(vCheckNewVersion, 0); APP_GET_DATA(vRememberCode, 1); + APP_GET_DATA(vOtherLanguage, 1); APP_GET_DATA(vTempOffOpenKey, 0); APP_GET_DATA(vFixChromiumBrowser, 0); diff --git a/Sources/OpenKey/win32/OpenKey/OpenKey/OpenKey.rc b/Sources/OpenKey/win32/OpenKey/OpenKey/OpenKey.rc index f4102c1..a4bf98f 100644 --- a/Sources/OpenKey/win32/OpenKey/OpenKey/OpenKey.rc +++ b/Sources/OpenKey/win32/OpenKey/OpenKey/OpenKey.rc @@ -205,6 +205,8 @@ BEGIN "Button",BS_AUTOCHECKBOX | WS_TABSTOP,7,50,95,10 CONTROL "Tự ghi nhớ bảng mã theo ứng dụng",IDC_CHECK_SMART_SWITCH_CODE, "Button",BS_AUTOCHECKBOX | WS_TABSTOP,7,88,130,10 + CONTROL "Cho phép gõ trong các ngôn ngữ khác",IDC_CHECK_OTHER_LANGUAGES, + "Button",BS_AUTOCHECKBOX | WS_TABSTOP,7,126,130,10 CONTROL "Tạm tắt OpenKey bằng phím Alt",IDC_CHECK_TEMP_OFF_OPEN_KEY, "Button",BS_AUTOCHECKBOX | WS_TABSTOP,151,88,123,10 END @@ -482,6 +484,8 @@ BEGIN IDS_STRING_CHECK_UPDATE "Kiểm tra bản mới mỗi lần khởi động OpenKey" IDS_STRING_REMEMBER_TABLE_CODE "OpenKey sẽ tự động ghi nhớ bạn đã dùng bảng mã nào cho ứng dụng nào, để lần sau khi chuyển qua ứng dụng đó, OpenKey sẽ tự động chuyển sang bảng mã đó cho bạn. Rất thích hợp cho các ứng dụng kỹ thuật như Photoshop, CAD,..." + IDS_STRING_OTHER_LANGUAGES + "Cho phép gõ tiếng Việt với các ngôn ngữ ngoài tiếng Anh" IDS_STRING_TEMP_OFF_OPENKEY "Bằng cách bấm phím Alt, OpenKey sẽ tạm ngừng hoạt động cho tới khi bạn gõ 1 từ mới." END @@ -508,9 +512,9 @@ BEGIN IDS_STRING_MACRO_AUTO_CAP "Tự động chuyển qua chữ hoa. VD: định nghĩa ""ko = không"", nếu gõ ""KO"" sẽ thành ""KHÔNG"", gõ ""Ko"" sẽ thành Không" IDS_STRING_START_CONSONANT - "Thay thế nhanh các phụ âm đầu như f, j, w bằng ph, gi, qu.
Ví dụ: fải→phải, jảng→giảng, wên→quên" + "Thay thế nhanh các phụ âm đầu như f, j, w bằng ph, gi, qu.Ví dụ: fải→phải, jảng→giảng, wên→quên" IDS_STRING_END_CONSONANT - "Thay thế nhanh các phụ âm cuối như g, h, k bằng ng, nh, ch.
Ví dụ: trươg→trương, nhah→nhanh, bák→bách" + "Thay thế nhanh các phụ âm cuối như g, h, k bằng ng, nh, ch.Ví dụ: trươg→trương, nhah→nhanh, bák→bách" END STRINGTABLE @@ -532,4 +536,3 @@ END ///////////////////////////////////////////////////////////////////////////// #endif // not APSTUDIO_INVOKED - diff --git a/Sources/OpenKey/win32/OpenKey/OpenKey/stdafx.h b/Sources/OpenKey/win32/OpenKey/OpenKey/stdafx.h index 37b5693..8960e21 100644 --- a/Sources/OpenKey/win32/OpenKey/OpenKey/stdafx.h +++ b/Sources/OpenKey/win32/OpenKey/OpenKey/stdafx.h @@ -83,5 +83,6 @@ extern int vCreateDesktopShortcut; extern int vRunAsAdmin; extern int vCheckNewVersion; extern int vRememberCode; +extern int vOtherLanguage; extern int vTempOffOpenKey; extern int vFixChromiumBrowser; \ No newline at end of file From d10523421bf7baa741bd31d081360c59045dc266 Mon Sep 17 00:00:00 2001 From: Thanh Phu Date: Wed, 11 Dec 2024 17:06:01 +0900 Subject: [PATCH 5/8] Fix build errors --- .gitignore | 1 + Sources/OpenKey/win32/OpenKey/OpenKey/MainControlDialog.cpp | 2 +- Sources/OpenKey/win32/OpenKey/OpenKey/MainControlDialog.h | 2 +- Sources/OpenKey/win32/OpenKey/OpenKey/resource.h | 2 ++ 4 files changed, 5 insertions(+), 2 deletions(-) diff --git a/.gitignore b/.gitignore index 17cfa60..7fd14bb 100644 --- a/.gitignore +++ b/.gitignore @@ -7,3 +7,4 @@ /Sources/OpenKey/win32/OpenKey/x64/Release /Sources/OpenKey/win32/OpenKey/OpenKey/x64/Debug /Sources/OpenKey/win32/OpenKey/OpenKey/x64/Release +/Sources/OpenKey/win32/OpenKey/OpenKeyUpdate/x64/Release diff --git a/Sources/OpenKey/win32/OpenKey/OpenKey/MainControlDialog.cpp b/Sources/OpenKey/win32/OpenKey/OpenKey/MainControlDialog.cpp index 5ce5256..5667403 100644 --- a/Sources/OpenKey/win32/OpenKey/OpenKey/MainControlDialog.cpp +++ b/Sources/OpenKey/win32/OpenKey/OpenKey/MainControlDialog.cpp @@ -346,7 +346,7 @@ void MainControlDialog::fillData() { SendMessage(checkQuickStartConsonant, BM_SETCHECK, vQuickStartConsonant ? 1 : 0, 0); SendMessage(checkQuickEndConsonant, BM_SETCHECK, vQuickEndConsonant ? 1 : 0, 0); SendMessage(checkRememberTableCode, BM_SETCHECK, vRememberCode ? 1 : 0, 0); - SendMessage(checkAllowOtherLanguages, BM_SETCHECK, vOtherLanguage ? 1 : 0, 0); + SendMessage(checkAllowOtherLanguages, BM_SETCHECK, vOtherLanguage ? 1 : 0, 0); SendMessage(checkTempOffOpenKey, BM_SETCHECK, vTempOffOpenKey ? 1 : 0, 0); SendMessage(checkSmartSwitchKey, BM_SETCHECK, vUseSmartSwitchKey ? 1 : 0, 0); diff --git a/Sources/OpenKey/win32/OpenKey/OpenKey/MainControlDialog.h b/Sources/OpenKey/win32/OpenKey/OpenKey/MainControlDialog.h index c261fd3..435d638 100644 --- a/Sources/OpenKey/win32/OpenKey/OpenKey/MainControlDialog.h +++ b/Sources/OpenKey/win32/OpenKey/OpenKey/MainControlDialog.h @@ -26,7 +26,7 @@ class MainControlDialog : public BaseDialog { checkAllowZWJF, checkTempOffSpelling, checkQuickStartConsonant, checkQuickEndConsonant; HWND checkSmartSwitchKey, checkCapsFirstChar, checkQuickTelex, checkUseMacro, checkUseMacroInEnglish; HWND checkCreateDesktopShortcut, checkCheckNewVersion, checkRunAsAdmin, checkSupportMetroApp, checkMacroAutoCaps; - HWND checkFixChromium, checkRememberTableCode, checkTempOffOpenKey; + HWND checkFixChromium, checkRememberTableCode, checkTempOffOpenKey, checkAllowOtherLanguages; HWND hUpdateButton; private: void initDialog(); diff --git a/Sources/OpenKey/win32/OpenKey/OpenKey/resource.h b/Sources/OpenKey/win32/OpenKey/OpenKey/resource.h index f896099..dc1f5b3 100644 --- a/Sources/OpenKey/win32/OpenKey/OpenKey/resource.h +++ b/Sources/OpenKey/win32/OpenKey/OpenKey/resource.h @@ -62,6 +62,7 @@ #define IDD_DIALOG_TAB_SYSTEM 147 #define IDD_DIALOG_OLD 148 #define IDD_DIALOG_TAB_INFO 149 +#define IDS_STRING_OTHER_LANGUAGES 150 #define IDC_COMBO1 1000 #define IDC_COMBO_INPUT_TYPE 1000 #define IDC_CHECK1 1001 @@ -180,6 +181,7 @@ #define IDS_STRING_MACRO_AUTO_CAP 1065 #define IDS_STRING_START_CONSONANT 1066 #define IDS_STRING_END_CONSONANT 1067 +#define IDC_CHECK_OTHER_LANGUAGES 1068 #define IDC_STATIC -1 // Next default values for new objects From 2b536ae106f2d3ce1efc27dddcc1a146e76a60d1 Mon Sep 17 00:00:00 2001 From: Thanh Phu Date: Wed, 11 Dec 2024 17:14:00 +0900 Subject: [PATCH 6/8] Update UI --- .../OpenKey/win32/OpenKey/OpenKey/OpenKey.aps | Bin 629712 -> 629704 bytes .../OpenKey/win32/OpenKey/OpenKey/OpenKey.rc | 27 +++++++++++------- 2 files changed, 16 insertions(+), 11 deletions(-) diff --git a/Sources/OpenKey/win32/OpenKey/OpenKey/OpenKey.aps b/Sources/OpenKey/win32/OpenKey/OpenKey/OpenKey.aps index 5d85b05bb8f67303f9dd12ea1199aea8ba945779..32975db61b27957174166b6dbf4be812aeebdc53 100644 GIT binary patch delta 4064 zcmaJ@YjjlA72fCGd7VrMc}y~y$z(Ed+&43zW0tr^4^N%^|?r(-)&1x*1^=Tpr3+&!D|1u&h_l0j0GlCKWzcXO;c9 z2eldtpHLM;ov>hy3#p}E0~QOg1R50ZyKDpNTc}TIR1E@E!H|+&DKxQj3+<$t9WiBC zmTTNggnJpZDDLB?IMRw~S~II!l|0HIq}sMrR0Y))D2FzdMRP3e8bB#wKCEEJ7r87Q z8un6T_j+I@dxXv^yh#I;3BU`hG^%iGbD+K+cS40$vkz&eWsSz5TmVIIGn*MVTMh%T z@7z|KqPj(6HD6fyU@iOO;(Yc}oRuXmi6iUSua{ccJ8|);of=cj3~h^HJ^M7yO*XJZ zvy*IOh31UZOlsu68V;irltJDXsX9s<_ucSsKdJL}IQ``EV$Iiwe<-0~yn zF)z=F>s?e1j|z5^Skk?L@-}DJRZ}i>l?1B2vw-qA+b~z zwmZkj-c8iY97A7pr(nj#9vH-Ka*@LH18WXi$qVe=6sI%- ztS{&!FR}!So4mw4mTYMhPeE-~bwphWzj&bj@KNk3Er;`}MQf-c6!gPfFT4y8u4rxz zH#UVEs{P=F3ovk_lf1@8EiUpp`>Q3(`P-;Tpd%D+UD*(*3b$9(w_!J7@4qo(NgXEA zLMt0hE7L_^5zKF$6%&4A&5a4==>;)iG(A5i_-r{b;fzf~kZ;%coV06vvNJMbJ}jds zDr}8T7L1&9G?187<2)Uc*fQ4_F=)VTlVTFdO(n_Kzs~09*kpo(70ikiMBZcD;;rnJ zS?^5yl8@QtxQvl+@{(hrBtqD_0$hPGrJT~ZouCzL{Isd6n7*ZBawY=+Msr$cAu_q!3V4-a|P$gc9!QqFWI zT%VYD?*qZVW5jji8}U-+bPF+3vs8!|^F_PlJ2JHmHQgtQZzgl6I1I|v$(E#~MW^F6 z8N|u9rKD!7n3f^dIa7YeQmj$G=AZ-p#!@n)ioReDDrQ<-QH9syj!sE!ZoU(l@x$eR zx04bhkwq+74+d%@fm(9$v{@_@0T&d2?qT;8fE-Z7j&T)V!UE4P2r{uv=I+eq+w3E)|<9E^%Y%k4BD!V>Ket09z^t#|K z_`tdO|7It$-v;9#tak9zD{0oiD+WH?OV5$q$nr<%^D+tZ<@+)9_Ycr)?%6~QeDMLg zfbTj$Yq5YR)EQZPkS0syKEAx4=KLst$Dj&Ftlfw>8TgBRSc|XdbK)yHhxG8*@nhPs z&AxI+QF!JLAG*uqFD)CpZNj5%)F6Qw?0uqDrO9DQ%PUe5;lx;kbA){wEA7#k+ z^#Pe@^r3b_Xom;+mqOcfT;@Z=vfY4j22aTR)swP40ka!Fqnjd4XNo&-p0c&2U0&cLI)w_yvw7)wJn(SG!n#jurPAj8pJF6@EWr;#bcjb@L!n zmt&w+B9M^G#X34={3u^Ch@0WLA*$G~DC9ZKls7HMRL0O=x}}-FH;5C+Qh@i zc@3qk7L+_FNyTlv^f2bTbR}=cyZrSk$}`qbo56#f7Fx>>3FV3Pl!rG^o3T>{=-x#6 z?9J#uA=s{TQGRxd;68%Vxh<4;-7dI=bp8&^W;fj&lq{)T>RIFAM zMI@JhbcFh(n!9+~5XS1h2kCbqMe`7*ckN!@j#~34`$VPUbj0!S5KVPI(Hm7@3*b-t WXvozA)bq!OXqMb}kn-aPsqMcmT4$F4 delta 3913 zcma)K`36Gnr0j+79g`88c3YT5Bh!HMRHbn)q!0 z*god%=iT%Dp7ZXz@4ovUmm>?WMiw5lunl8{`cj?@_qLWX4z8N+j=|oYgWW^JyL&_3 z?j4(l`+Gw}gWV0=hrGi*_@usOj<*P2y_{-T ziyOH`*Qq)|r96Sn3SEHVBC{cSyiO%ok!*wYvh3fAvJ#_>NAPoQ%I;RVmXoU-HlRLb ziSj65)e2KiP^DLsZikJs%9SDuRk6b+oJ`5V@QM`HBai0mHmm%yL(=1bEqFVn5Wh%C z!;+O+wiRnu8g!4TeKe-F3fP9Bl|`EEvV2CNIVl=?9B^u7f#wMrvlbfjWvmkV)Twk2 zZB@{ZmQ_W%kXoS|Xj=|DWVdq7F0ZpK)*euM=)Tyh;Yl1xHQ}z*G+eqW4X>_B(G99y zG`Qtf7{cjPgKk)@(72Y{;3@of>O$SFm{Qjf2sHcYlFG|r1gp~ul-+>)YR%Z0mVp;* zvv4FWeXi5(jyd)K-l)|nPXo?%8kO$=o^a~$PicAB?BZCEo~S$vxXW3jJV%OAd0q~P z(`0@@)r+9Bv9Y-`xPEnKJ(aA4z0o4cG&HjHB2J~7*mrRzy+nBlaCcpi@;$&)br$wA zHf1bO_Q^R>XThBrT3oRx4G(1G%2Q{u{rLL~3me5d8D`~xoK~)U1cq-GtUc(PE3)$;9lbNp(^2W{->gCOL z*x)eWM{ZN|5%o9*-JV8IfF3D_9gaSr_?lXp+XAuYj&uhcQ|ok2M+F>5pU13xA28&} zVL!mhd4Yi4g?t+s^y5VvW~`qNaUJ=h*-^Z6Tsu0UI(tW;4B zZ{kVm{}Eo&=CHS9mL8v7m{27pJG}isO1sxrAD|ouoOwX#^!X`V0Y3(;Z7}M8@_<_B z@wAX!1!r+%R&L(82UL&0fy8PEEb|tyam>pu z)J({cJymLuBU@PsKbJGYYc76=D!SyAIRicyl-eL77h-2id(ht;Y^ryG4L$%IsV-1H z1ibDw7hU>V_H+g0O6?D{H8%#=IvYFae#jA-1T;GgY-+q#cakMe)3v<$@l9TR+>ZCeuQD(H|LD(C`G)wFuH=`; zH?1-_;+n=U7@Amo*TbeW@m)CI{Ezsh)>`yReAl@m9mBnKTD&no{%l|$V|($Zaf`BR z_+^S=d~AU>{J7GR!APZVFzrM z?fz(cD5^KWcIolTsQd^k+hy9R(Bld+(h2gLOLn7_Nq{wzCoA|>j()sgS*wD>wu};h z6}kUyF1v50EV=!1{EW?;zzT3`j&3}u>X0%%RXv%?jCe|G!V~qi@~BXoM~fzYRbOH> zs#n=>Rz_g*&nQ>NLX$~txW70?9VXnAm6Ley@MuFmGvUGefsY!DGBA~u`?X`Pw@3!c zyz}L+KHHKMON=g%bE6C7y-Fv%#mw}=b#LUlm)$rsH%(rZ&+Be`Hw|9;>?V`DB6p44 z=g2)l?ul|wihOo6`LQ15pCJ4le1Oe}OC7v~*&^3E_zR3>izhny685|ho%~-?#4ah$ zi1#IQ&(gTXwmHy}1na=So{4iNC1Wtm4)t z{ua}U<30R6#kEFsZRU@%>PTcW*D>Mf<$k^^XqvXeTL>bYzO8AMNZV@43-!o#A=r}0C#6KJn)5M9BVwU*v znHOVbOQARv_O8ALG zzZN0loj;3F;;(LsFtP8Bm?pY4VwSiiS){)%c{Wp&5pT5#Kk?#-2oc>VMv1AXMVL5o zPD~SDnGmzYv%e7OLh|hyQARwSApFFWOGJp6c}t8EAAVDWiF?=fxoc^$hUT90zO#`+W&%Z7Prl1zcy zvhmj;ZV Date: Wed, 11 Dec 2024 17:19:15 +0900 Subject: [PATCH 7/8] Code formatting --- .../OpenKey/OpenKey/MainControlDialog.cpp | 1051 +++++++++-------- 1 file changed, 545 insertions(+), 506 deletions(-) diff --git a/Sources/OpenKey/win32/OpenKey/OpenKey/MainControlDialog.cpp b/Sources/OpenKey/win32/OpenKey/OpenKey/MainControlDialog.cpp index 5667403..eab2e7c 100644 --- a/Sources/OpenKey/win32/OpenKey/OpenKey/MainControlDialog.cpp +++ b/Sources/OpenKey/win32/OpenKey/OpenKey/MainControlDialog.cpp @@ -20,594 +20,633 @@ redistribute your new version, it MUST be open source. static Uint16 _lastKeyCode; -MainControlDialog::MainControlDialog(const HINSTANCE & hInstance, const int & resourceId) - : BaseDialog(hInstance, resourceId) { +MainControlDialog::MainControlDialog(const HINSTANCE& hInstance, const int& resourceId) + : BaseDialog(hInstance, resourceId) { } MainControlDialog::~MainControlDialog() { } void MainControlDialog::initDialog() { - HINSTANCE hIns = GetModuleHandleW(NULL); - //dialog icon - SET_DIALOG_ICON(IDI_APP_ICON); - - //set title version - TCHAR title[256]; - TCHAR titleBuffer[256]; - LoadString(hIns, IDS_MAIN_DIALOG_TITLE, title, 256); - wsprintfW(titleBuffer, title, OpenKeyHelper::getVersionString().c_str()); - SetWindowText(hDlg, titleBuffer); - - //input type - comboBoxInputType = GetDlgItem(hDlg, IDC_COMBO_INPUT_TYPE); - vector& inputType = OpenKeyManager::getInputType(); - for (int i = 0; i < inputType.size(); i++) { - SendMessage(comboBoxInputType, CB_ADDSTRING, i, reinterpret_cast(inputType[i])); - } - createToolTip(comboBoxInputType, IDS_STRING_INPUT); - - //code table - comboBoxTableCode = GetDlgItem(hDlg, IDC_COMBO_TABLE_CODE); - vector& tableCode = OpenKeyManager::getTableCode(); - for (int i = 0; i < tableCode.size(); i++) { - SendMessage(comboBoxTableCode, CB_ADDSTRING, i, reinterpret_cast(tableCode[i])); - } - createToolTip(comboBoxTableCode, IDS_STRING_CODE); - - //init tabview - hTab = GetDlgItem(hDlg, IDC_TAB_CONTROL); - TCITEM tci = { 0 }; - tci.mask = TCIF_TEXT; - tci.pszText = (LPWSTR)_T("Bộ gõ"); - TabCtrl_InsertItem(hTab, 0, &tci); - tci.pszText = (LPWSTR)_T("Gõ tắt"); - TabCtrl_InsertItem(hTab, 1, &tci); - tci.pszText = (LPWSTR)_T("Hệ thống"); - TabCtrl_InsertItem(hTab, 2, &tci); - tci.pszText = (LPWSTR)_T("Thông tin"); - TabCtrl_InsertItem(hTab, 3, &tci); - RECT r; - TabCtrl_GetItemRect(hTab, 0, &r); - TabCtrl_SetItemSize(hTab, r.right - r.left, (r.bottom - r.top) * 1.428f); + HINSTANCE hIns = GetModuleHandleW(NULL); + //dialog icon + SET_DIALOG_ICON(IDI_APP_ICON); + + //set title version + TCHAR title[256]; + TCHAR titleBuffer[256]; + LoadString(hIns, IDS_MAIN_DIALOG_TITLE, title, 256); + wsprintfW(titleBuffer, title, OpenKeyHelper::getVersionString().c_str()); + SetWindowText(hDlg, titleBuffer); + + //input type + comboBoxInputType = GetDlgItem(hDlg, IDC_COMBO_INPUT_TYPE); + vector& inputType = OpenKeyManager::getInputType(); + for (int i = 0; i < inputType.size(); i++) { + SendMessage(comboBoxInputType, CB_ADDSTRING, i, reinterpret_cast(inputType[i])); + } + createToolTip(comboBoxInputType, IDS_STRING_INPUT); + + //code table + comboBoxTableCode = GetDlgItem(hDlg, IDC_COMBO_TABLE_CODE); + vector& tableCode = OpenKeyManager::getTableCode(); + for (int i = 0; i < tableCode.size(); i++) { + SendMessage(comboBoxTableCode, CB_ADDSTRING, i, reinterpret_cast(tableCode[i])); + } + createToolTip(comboBoxTableCode, IDS_STRING_CODE); + + //init tabview + hTab = GetDlgItem(hDlg, IDC_TAB_CONTROL); + TCITEM tci = { 0 }; + tci.mask = TCIF_TEXT; + tci.pszText = (LPWSTR)_T("Bộ gõ"); + TabCtrl_InsertItem(hTab, 0, &tci); + tci.pszText = (LPWSTR)_T("Gõ tắt"); + TabCtrl_InsertItem(hTab, 1, &tci); + tci.pszText = (LPWSTR)_T("Hệ thống"); + TabCtrl_InsertItem(hTab, 2, &tci); + tci.pszText = (LPWSTR)_T("Thông tin"); + TabCtrl_InsertItem(hTab, 3, &tci); + RECT r; + TabCtrl_GetItemRect(hTab, 0, &r); + TabCtrl_SetItemSize(hTab, r.right - r.left, (r.bottom - r.top) * 1.428f); - //create tab page - hTabPage1 = CreateDialogParam(hIns, MAKEINTRESOURCE(IDD_DIALOG_TAB_GENERAL), hDlg, tabPageEventProc, (LPARAM)this); - hTabPage2 = CreateDialogParam(hIns, MAKEINTRESOURCE(IDD_DIALOG_TAB_MACRO), hDlg, tabPageEventProc, (LPARAM)this); - hTabPage3 = CreateDialogParam(hIns, MAKEINTRESOURCE(IDD_DIALOG_TAB_SYSTEM), hDlg, tabPageEventProc, (LPARAM)this); - hTabPage4 = CreateDialogParam(hIns, MAKEINTRESOURCE(IDD_DIALOG_TAB_INFO), hDlg, tabPageEventProc, (LPARAM)this); - RECT rc;//find tab control's rectangle - GetWindowRect(hTab, &rc); - POINT offset = { 0 }; - ScreenToClient(hDlg, &offset); - OffsetRect(&rc, offset.x, offset.y); //convert to client coordinates - rc.top += (LONG)((r.bottom - r.top) * 1.428f); - SetWindowPos(hTabPage1, 0, rc.left+1, rc.top+3, rc.right - rc.left - 5, rc.bottom - rc.top - 5, SWP_HIDEWINDOW); - SetWindowPos(hTabPage2, 0, rc.left + 1, rc.top + 3, rc.right - rc.left - 5, rc.bottom - rc.top - 6, SWP_HIDEWINDOW); - SetWindowPos(hTabPage3, 0, rc.left + 1, rc.top + 3, rc.right - rc.left - 5, rc.bottom - rc.top - 6, SWP_HIDEWINDOW); - SetWindowPos(hTabPage4, 0, rc.left + 1, rc.top + 3, rc.right - rc.left - 5, rc.bottom - rc.top - 6, SWP_HIDEWINDOW); - onTabIndexChanged(); + //create tab page + hTabPage1 = CreateDialogParam(hIns, MAKEINTRESOURCE(IDD_DIALOG_TAB_GENERAL), hDlg, tabPageEventProc, (LPARAM)this); + hTabPage2 = CreateDialogParam(hIns, MAKEINTRESOURCE(IDD_DIALOG_TAB_MACRO), hDlg, tabPageEventProc, (LPARAM)this); + hTabPage3 = CreateDialogParam(hIns, MAKEINTRESOURCE(IDD_DIALOG_TAB_SYSTEM), hDlg, tabPageEventProc, (LPARAM)this); + hTabPage4 = CreateDialogParam(hIns, MAKEINTRESOURCE(IDD_DIALOG_TAB_INFO), hDlg, tabPageEventProc, (LPARAM)this); + RECT rc;//find tab control's rectangle + GetWindowRect(hTab, &rc); + POINT offset = { 0 }; + ScreenToClient(hDlg, &offset); + OffsetRect(&rc, offset.x, offset.y); //convert to client coordinates + rc.top += (LONG)((r.bottom - r.top) * 1.428f); + SetWindowPos(hTabPage1, 0, rc.left + 1, rc.top + 3, rc.right - rc.left - 5, rc.bottom - rc.top - 5, SWP_HIDEWINDOW); + SetWindowPos(hTabPage2, 0, rc.left + 1, rc.top + 3, rc.right - rc.left - 5, rc.bottom - rc.top - 6, SWP_HIDEWINDOW); + SetWindowPos(hTabPage3, 0, rc.left + 1, rc.top + 3, rc.right - rc.left - 5, rc.bottom - rc.top - 6, SWP_HIDEWINDOW); + SetWindowPos(hTabPage4, 0, rc.left + 1, rc.top + 3, rc.right - rc.left - 5, rc.bottom - rc.top - 6, SWP_HIDEWINDOW); + onTabIndexChanged(); - checkCtrl = GetDlgItem(hDlg, IDC_CHECK_SWITCH_KEY_CTRL); - createToolTip(checkCtrl, IDS_STRING_CTRL); + checkCtrl = GetDlgItem(hDlg, IDC_CHECK_SWITCH_KEY_CTRL); + createToolTip(checkCtrl, IDS_STRING_CTRL); - checkAlt = GetDlgItem(hDlg, IDC_CHECK_SWITCH_KEY_ALT); - createToolTip(checkAlt, IDS_STRING_ALT); + checkAlt = GetDlgItem(hDlg, IDC_CHECK_SWITCH_KEY_ALT); + createToolTip(checkAlt, IDS_STRING_ALT); - checkWin = GetDlgItem(hDlg, IDC_CHECK_SWITCH_KEY_WIN); - createToolTip(checkWin, IDS_STRING_WIN); + checkWin = GetDlgItem(hDlg, IDC_CHECK_SWITCH_KEY_WIN); + createToolTip(checkWin, IDS_STRING_WIN); - checkShift = GetDlgItem(hDlg, IDC_CHECK_SWITCH_KEY_SHIFT); - createToolTip(checkShift, IDS_STRING_SHIFT); + checkShift = GetDlgItem(hDlg, IDC_CHECK_SWITCH_KEY_SHIFT); + createToolTip(checkShift, IDS_STRING_SHIFT); - textSwitchKey = GetDlgItem(hDlg, IDC_SWITCH_KEY_KEY); - createToolTip(textSwitchKey, IDS_STRING_SWITCH_KEY); + textSwitchKey = GetDlgItem(hDlg, IDC_SWITCH_KEY_KEY); + createToolTip(textSwitchKey, IDS_STRING_SWITCH_KEY); - checkBeep = GetDlgItem(hDlg, IDC_CHECK_SWITCH_KEY_BEEP); - createToolTip(checkBeep, IDS_STRING_BEEP); + checkBeep = GetDlgItem(hDlg, IDC_CHECK_SWITCH_KEY_BEEP); + createToolTip(checkBeep, IDS_STRING_BEEP); - checkVietnamese = GetDlgItem(hDlg, IDC_RADIO_METHOD_VIETNAMESE); - createToolTip(checkVietnamese, IDS_STRING_VIET); + checkVietnamese = GetDlgItem(hDlg, IDC_RADIO_METHOD_VIETNAMESE); + createToolTip(checkVietnamese, IDS_STRING_VIET); - checkEnglish = GetDlgItem(hDlg, IDC_RADIO_METHOD_ENGLISH); - createToolTip(checkEnglish, IDS_STRING_ENG); + checkEnglish = GetDlgItem(hDlg, IDC_RADIO_METHOD_ENGLISH); + createToolTip(checkEnglish, IDS_STRING_ENG); - /*--------end common---------*/ + /*--------end common---------*/ - checkModernOrthorgraphy = GetDlgItem(hTabPage1, IDC_CHECK_MODERN_ORTHORGRAPHY); - createToolTip(checkModernOrthorgraphy, IDS_STRING_MORDEN_ORTHORGRAPHY); + checkModernOrthorgraphy = GetDlgItem(hTabPage1, IDC_CHECK_MODERN_ORTHORGRAPHY); + createToolTip(checkModernOrthorgraphy, IDS_STRING_MORDEN_ORTHORGRAPHY); - checkFixRecommendBrowser = GetDlgItem(hTabPage1, IDC_CHECK_FIX_RECOMMEND_BROWSER); - createToolTip(checkFixRecommendBrowser, IDS_STRING_FIX_BROWSER); + checkFixRecommendBrowser = GetDlgItem(hTabPage1, IDC_CHECK_FIX_RECOMMEND_BROWSER); + createToolTip(checkFixRecommendBrowser, IDS_STRING_FIX_BROWSER); - checkSpelling = GetDlgItem(hTabPage1, IDC_CHECK_SPELLING); - createToolTip(checkSpelling, IDS_STRING_SPELLING_CHECK); + checkSpelling = GetDlgItem(hTabPage1, IDC_CHECK_SPELLING); + createToolTip(checkSpelling, IDS_STRING_SPELLING_CHECK); - checkRestoreIfWrongSpelling = GetDlgItem(hTabPage1, IDC_CHECK_RESTORE_IF_WRONG_SPELLING); - createToolTip(checkRestoreIfWrongSpelling, IDS_STRING_RESTORE_IF_WRONG_SPELLING); + checkRestoreIfWrongSpelling = GetDlgItem(hTabPage1, IDC_CHECK_RESTORE_IF_WRONG_SPELLING); + createToolTip(checkRestoreIfWrongSpelling, IDS_STRING_RESTORE_IF_WRONG_SPELLING); - checkAllowZWJF = GetDlgItem(hTabPage1, IDC_CHECK_ALLOW_ZJWF); - createToolTip(checkAllowZWJF, IDS_STRING_ALLOW_ZWFJ); + checkAllowZWJF = GetDlgItem(hTabPage1, IDC_CHECK_ALLOW_ZJWF); + createToolTip(checkAllowZWJF, IDS_STRING_ALLOW_ZWFJ); - checkTempOffSpelling = GetDlgItem(hTabPage1, IDC_CHECK_TEMP_OFF_SPELLING); - createToolTip(checkTempOffSpelling, IDS_STRING_TEMP_OFF_SPELLING); + checkTempOffSpelling = GetDlgItem(hTabPage1, IDC_CHECK_TEMP_OFF_SPELLING); + createToolTip(checkTempOffSpelling, IDS_STRING_TEMP_OFF_SPELLING); - checkSmartSwitchKey = GetDlgItem(hTabPage1, IDC_CHECK_SMART_SWITCH_KEY); - createToolTip(checkSmartSwitchKey, IDS_STRING_SMART_SWITCH_KEY); + checkSmartSwitchKey = GetDlgItem(hTabPage1, IDC_CHECK_SMART_SWITCH_KEY); + createToolTip(checkSmartSwitchKey, IDS_STRING_SMART_SWITCH_KEY); - checkCapsFirstChar = GetDlgItem(hTabPage1, IDC_CHECK_CAPS_FIRST_CHAR); - createToolTip(checkCapsFirstChar, IDS_STRING_CAPS_FIRST_CHAR); + checkCapsFirstChar = GetDlgItem(hTabPage1, IDC_CHECK_CAPS_FIRST_CHAR); + createToolTip(checkCapsFirstChar, IDS_STRING_CAPS_FIRST_CHAR); - checkRememberTableCode = GetDlgItem(hTabPage1, IDC_CHECK_SMART_SWITCH_CODE); - createToolTip(checkRememberTableCode, IDS_STRING_REMEMBER_TABLE_CODE); + checkRememberTableCode = GetDlgItem(hTabPage1, IDC_CHECK_SMART_SWITCH_CODE); + createToolTip(checkRememberTableCode, IDS_STRING_REMEMBER_TABLE_CODE); - checkAllowOtherLanguages = GetDlgItem(hTabPage1, IDC_CHECK_OTHER_LANGUAGES); - createToolTip(checkAllowOtherLanguages, IDS_STRING_OTHER_LANGUAGES); + checkAllowOtherLanguages = GetDlgItem(hTabPage1, IDC_CHECK_OTHER_LANGUAGES); + createToolTip(checkAllowOtherLanguages, IDS_STRING_OTHER_LANGUAGES); - checkTempOffOpenKey = GetDlgItem(hTabPage1, IDC_CHECK_TEMP_OFF_OPEN_KEY); - createToolTip(checkTempOffOpenKey, IDS_STRING_TEMP_OFF_OPENKEY); + checkTempOffOpenKey = GetDlgItem(hTabPage1, IDC_CHECK_TEMP_OFF_OPEN_KEY); + createToolTip(checkTempOffOpenKey, IDS_STRING_TEMP_OFF_OPENKEY); - /*------------end tab 1----------------*/ + /*------------end tab 1----------------*/ - checkQuickStartConsonant = GetDlgItem(hTabPage2, IDC_CHECK_QUICK_START_CONSONANT); - createToolTip(checkQuickStartConsonant, IDS_STRING_START_CONSONANT); + checkQuickStartConsonant = GetDlgItem(hTabPage2, IDC_CHECK_QUICK_START_CONSONANT); + createToolTip(checkQuickStartConsonant, IDS_STRING_START_CONSONANT); - checkQuickEndConsonant = GetDlgItem(hTabPage2, IDC_CHECK_QUICK_END_CONSONANT); - createToolTip(checkQuickEndConsonant, IDS_STRING_END_CONSONANT); + checkQuickEndConsonant = GetDlgItem(hTabPage2, IDC_CHECK_QUICK_END_CONSONANT); + createToolTip(checkQuickEndConsonant, IDS_STRING_END_CONSONANT); - checkQuickTelex = GetDlgItem(hTabPage2, IDC_CHECK_QUICK_TELEX); - createToolTip(checkQuickTelex, IDS_STRING_QUICK_TELEX); + checkQuickTelex = GetDlgItem(hTabPage2, IDC_CHECK_QUICK_TELEX); + createToolTip(checkQuickTelex, IDS_STRING_QUICK_TELEX); - checkUseMacro = GetDlgItem(hTabPage2, IDC_CHECK_USE_MACRO); - createToolTip(checkUseMacro, IDS_STRING_MACRO); + checkUseMacro = GetDlgItem(hTabPage2, IDC_CHECK_USE_MACRO); + createToolTip(checkUseMacro, IDS_STRING_MACRO); - checkUseMacroInEnglish = GetDlgItem(hTabPage2, IDC_CHECK_USE_MACRO_IN_ENGLISH); - createToolTip(checkUseMacroInEnglish, IDS_STRING_MACRO_IN_ENG); + checkUseMacroInEnglish = GetDlgItem(hTabPage2, IDC_CHECK_USE_MACRO_IN_ENGLISH); + createToolTip(checkUseMacroInEnglish, IDS_STRING_MACRO_IN_ENG); - checkMacroAutoCaps = GetDlgItem(hTabPage2, IDC_CHECK_AUTO_CAPS); - createToolTip(checkMacroAutoCaps, IDS_STRING_MACRO_AUTO_CAP); + checkMacroAutoCaps = GetDlgItem(hTabPage2, IDC_CHECK_AUTO_CAPS); + createToolTip(checkMacroAutoCaps, IDS_STRING_MACRO_AUTO_CAP); - hUpdateButton = GetDlgItem(hDlg, IDC_BUTTON_CHECK_UPDATE); + hUpdateButton = GetDlgItem(hDlg, IDC_BUTTON_CHECK_UPDATE); - /*------------end tab 2----------------*/ + /*------------end tab 2----------------*/ - checkModernIcon = GetDlgItem(hTabPage3, IDC_CHECK_MODERN_ICON); - createToolTip(checkModernIcon, IDS_STRING_MODERN_ICON); + checkModernIcon = GetDlgItem(hTabPage3, IDC_CHECK_MODERN_ICON); + createToolTip(checkModernIcon, IDS_STRING_MODERN_ICON); - checkShowOnStartup = GetDlgItem(hTabPage3, IDC_CHECK_SHOW_ON_STARTUP); - createToolTip(checkShowOnStartup, IDS_STRING_SHOW_ON_STARTUP); + checkShowOnStartup = GetDlgItem(hTabPage3, IDC_CHECK_SHOW_ON_STARTUP); + createToolTip(checkShowOnStartup, IDS_STRING_SHOW_ON_STARTUP); - checkRunWithWindows = GetDlgItem(hTabPage3, IDC_CHECK_RUN_WITH_WINDOWS); - createToolTip(checkRunWithWindows, IDS_STRING_RUN_ON_STARTUP); + checkRunWithWindows = GetDlgItem(hTabPage3, IDC_CHECK_RUN_WITH_WINDOWS); + createToolTip(checkRunWithWindows, IDS_STRING_RUN_ON_STARTUP); - checkCreateDesktopShortcut = GetDlgItem(hTabPage3, IDC_CHECK_CHECK_CREATE_SHORTCUT); - createToolTip(checkCreateDesktopShortcut, IDS_STRING_CREATE_DESKTOP); + checkCreateDesktopShortcut = GetDlgItem(hTabPage3, IDC_CHECK_CHECK_CREATE_SHORTCUT); + createToolTip(checkCreateDesktopShortcut, IDS_STRING_CREATE_DESKTOP); - checkRunAsAdmin = GetDlgItem(hTabPage3, IDC_CHECK_RUN_AS_ADMIN); - createToolTip(checkRunAsAdmin, IDS_STRING_RUN_AS_ADMIN); + checkRunAsAdmin = GetDlgItem(hTabPage3, IDC_CHECK_RUN_AS_ADMIN); + createToolTip(checkRunAsAdmin, IDS_STRING_RUN_AS_ADMIN); - checkCheckNewVersion = GetDlgItem(hTabPage3, IDC_CHECK_CHECK_UPDATE); - createToolTip(checkCheckNewVersion, IDS_STRING_CHECK_UPDATE); + checkCheckNewVersion = GetDlgItem(hTabPage3, IDC_CHECK_CHECK_UPDATE); + createToolTip(checkCheckNewVersion, IDS_STRING_CHECK_UPDATE); - checkSupportMetroApp = GetDlgItem(hTabPage3, IDC_CHECK_SUPPORT_METRO_APP); - createToolTip(checkSupportMetroApp, IDS_STRING_SUPPORT_METRO); + checkSupportMetroApp = GetDlgItem(hTabPage3, IDC_CHECK_SUPPORT_METRO_APP); + createToolTip(checkSupportMetroApp, IDS_STRING_SUPPORT_METRO); - checkUseClipboard = GetDlgItem(hTabPage3, IDC_CHECK_USE_CLIPBOARD); - createToolTip(checkUseClipboard, IDS_STRING_USE_CLIPBOARD); + checkUseClipboard = GetDlgItem(hTabPage3, IDC_CHECK_USE_CLIPBOARD); + createToolTip(checkUseClipboard, IDS_STRING_USE_CLIPBOARD); - checkFixChromium = GetDlgItem(hTabPage3, IDC_CHECK_FIX_CHROMIUM); - createToolTip(checkFixChromium, IDS_STRING_FIX_CHROMIUM); + checkFixChromium = GetDlgItem(hTabPage3, IDC_CHECK_FIX_CHROMIUM); + createToolTip(checkFixChromium, IDS_STRING_FIX_CHROMIUM); - /*------------end tab 3----------------*/ + /*------------end tab 3----------------*/ - SendDlgItemMessage(hDlg, IDBUTTON_OK, BM_SETIMAGE, IMAGE_ICON, (LPARAM)LoadIcon(hIns, MAKEINTRESOURCEW(IDI_ICON_OK_BUTTON))); - SendDlgItemMessage(hDlg, ID_BTN_DEFAULT, BM_SETIMAGE, IMAGE_ICON, (LPARAM)LoadIcon(hIns, MAKEINTRESOURCEW(IDI_ICON_DEFAULT_BUTTON))); - SendDlgItemMessage(hDlg, IDBUTTON_EXIT, BM_SETIMAGE, IMAGE_ICON, (LPARAM)LoadIcon(hIns, MAKEINTRESOURCEW(IDI_ICON_EXIT_BUTTON))); - fillData(); + SendDlgItemMessage(hDlg, IDBUTTON_OK, BM_SETIMAGE, IMAGE_ICON, (LPARAM)LoadIcon(hIns, MAKEINTRESOURCEW(IDI_ICON_OK_BUTTON))); + SendDlgItemMessage(hDlg, ID_BTN_DEFAULT, BM_SETIMAGE, IMAGE_ICON, (LPARAM)LoadIcon(hIns, MAKEINTRESOURCEW(IDI_ICON_DEFAULT_BUTTON))); + SendDlgItemMessage(hDlg, IDBUTTON_EXIT, BM_SETIMAGE, IMAGE_ICON, (LPARAM)LoadIcon(hIns, MAKEINTRESOURCEW(IDI_ICON_EXIT_BUTTON))); + fillData(); } INT_PTR MainControlDialog::eventProc(HWND hDlg, UINT uMsg, WPARAM wParam, LPARAM lParam) { - switch (uMsg) { - case WM_INITDIALOG: - this->hDlg = hDlg; - initDialog(); - return TRUE; - case WM_COMMAND: { - int wmId = LOWORD(wParam); - switch (wmId) { - case IDBUTTON_OK: - AppDelegate::getInstance()->closeDialog(this); - break; - case IDBUTTON_EXIT: - AppDelegate::getInstance()->onOpenKeyExit(); - break; - case ID_BTN_DEFAULT: { - int msgboxID = MessageBox( - hDlg, - _T("Bạn có chắc chắn muốn thiết lập lại cài đặt gốc?"), - _T("OpenKey"), - MB_ICONEXCLAMATION | MB_YESNO - ); - if (msgboxID == IDYES) { - AppDelegate::getInstance()->onDefaultConfig(); - } - break; - } - case IDC_BUTTON_MACRO_TABLE: - AppDelegate::getInstance()->onMacroTable(); - break; - case IDC_BUTTON_CHECK_UPDATE: - onUpdateButton(); - break; - case IDC_BUTTON_GO_SOURCE_CODE: - ShellExecute(NULL, _T("open"), _T("https://github.com/tuyenvm/OpenKey"), NULL, NULL, SW_SHOWNORMAL); - break; - default: - if (HIWORD(wParam) == CBN_SELCHANGE) { - this->onComboBoxSelected((HWND)lParam, LOWORD(wParam)); - } - else if (HIWORD(wParam) == BN_CLICKED) { - this->onCheckboxClicked((HWND)lParam); - } - else if (HIWORD(wParam) == EN_CHANGE) { - _lastKeyCode = OpenKeyManager::_lastKeyCode; - if (_lastKeyCode > 0) { - OpenKeyManager::_lastKeyCode = 0; - this->onCharacter((HWND)lParam, _lastKeyCode); - } - } - break; - } - break; - } - case WM_NOTIFY: { - switch (((LPNMHDR)lParam)->code) { - case TCN_SELCHANGE: - onTabIndexChanged(); - break; - case NM_CLICK: - case NM_RETURN: { - PNMLINK link = (PNMLINK)lParam; - if (link->hdr.idFrom == IDC_SYSLINK_HOME_PAGE) - ShellExecute(NULL, _T("open"), _T("http://open-key.org"), NULL, NULL, SW_SHOWNORMAL); - else if (link->hdr.idFrom == IDC_SYSLINK_FANPAGE) - ShellExecute(NULL, _T("open"), _T("https://www.facebook.com/OpenKeyVN"), NULL, NULL, SW_SHOWNORMAL); - else if (link->hdr.idFrom == IDC_SYSLINK_AUTHOR_EMAIL) - ShellExecute(NULL, _T("open"), _T("mailto:maivutuyen.91@gmail.com"), NULL, NULL, SW_SHOWNORMAL); - break; - } - } - break; - } - } - - return FALSE; + switch (uMsg) { + case WM_INITDIALOG: + this->hDlg = hDlg; + initDialog(); + return TRUE; + case WM_COMMAND: { + int wmId = LOWORD(wParam); + switch (wmId) { + case IDBUTTON_OK: + AppDelegate::getInstance()->closeDialog(this); + break; + case IDBUTTON_EXIT: + AppDelegate::getInstance()->onOpenKeyExit(); + break; + case ID_BTN_DEFAULT: { + int msgboxID = MessageBox( + hDlg, + _T("Bạn có chắc chắn muốn thiết lập lại cài đặt gốc?"), + _T("OpenKey"), + MB_ICONEXCLAMATION | MB_YESNO + ); + if (msgboxID == IDYES) { + AppDelegate::getInstance()->onDefaultConfig(); + } + break; + } + case IDC_BUTTON_MACRO_TABLE: + AppDelegate::getInstance()->onMacroTable(); + break; + case IDC_BUTTON_CHECK_UPDATE: + onUpdateButton(); + break; + case IDC_BUTTON_GO_SOURCE_CODE: + ShellExecute(NULL, _T("open"), _T("https://github.com/tuyenvm/OpenKey"), NULL, NULL, SW_SHOWNORMAL); + break; + default: + if (HIWORD(wParam) == CBN_SELCHANGE) { + this->onComboBoxSelected((HWND)lParam, LOWORD(wParam)); + } + else if (HIWORD(wParam) == BN_CLICKED) { + this->onCheckboxClicked((HWND)lParam); + } + else if (HIWORD(wParam) == EN_CHANGE) { + _lastKeyCode = OpenKeyManager::_lastKeyCode; + if (_lastKeyCode > 0) { + OpenKeyManager::_lastKeyCode = 0; + this->onCharacter((HWND)lParam, _lastKeyCode); + } + } + break; + } + break; + } + case WM_NOTIFY: { + switch (((LPNMHDR)lParam)->code) { + case TCN_SELCHANGE: + onTabIndexChanged(); + break; + case NM_CLICK: + case NM_RETURN: { + PNMLINK link = (PNMLINK)lParam; + if (link->hdr.idFrom == IDC_SYSLINK_HOME_PAGE) + ShellExecute(NULL, _T("open"), _T("http://open-key.org"), NULL, NULL, SW_SHOWNORMAL); + else if (link->hdr.idFrom == IDC_SYSLINK_FANPAGE) + ShellExecute(NULL, _T("open"), _T("https://www.facebook.com/OpenKeyVN"), NULL, NULL, SW_SHOWNORMAL); + else if (link->hdr.idFrom == IDC_SYSLINK_AUTHOR_EMAIL) + ShellExecute(NULL, _T("open"), _T("mailto:maivutuyen.91@gmail.com"), NULL, NULL, SW_SHOWNORMAL); + break; + } + } + break; + } + } + + return FALSE; } INT_PTR MainControlDialog::tabPageEventProc(HWND hDlg, UINT uMsg, WPARAM wParam, LPARAM lParam) { - if (uMsg == WM_INITDIALOG) { + if (uMsg == WM_INITDIALOG) { #ifdef _WIN64 - SetWindowLongPtr(hDlg, GWLP_USERDATA, lParam); + SetWindowLongPtr(hDlg, GWLP_USERDATA, lParam); #else - SetWindowLong(hDlg, GWL_USERDATA, lParam); + SetWindowLong(hDlg, GWL_USERDATA, lParam); #endif - return TRUE; - } else if (uMsg == WM_ERASEBKGND) { - return TRUE; - } else if ((uMsg == WM_CTLCOLORSTATIC || uMsg == WM_CTLCOLORBTN) && IsThemeActive()) { - SetBkMode((HDC)wParam, TRANSPARENT); - return (LRESULT)GetStockObject(COLOR_WINDOW + 1); - } else if (uMsg == WM_PAINT && IsThemeActive()) { - PAINTSTRUCT ps; - HDC hdc = BeginPaint(hDlg, &ps); - - // All painting occurs here, between BeginPaint and EndPaint. - FillRect(hdc, &ps.rcPaint, (HBRUSH)(COLOR_WINDOW+1)); - - EndPaint(hDlg, &ps); - - return 0; - } + return TRUE; + } + else if (uMsg == WM_ERASEBKGND) { + return TRUE; + } + else if ((uMsg == WM_CTLCOLORSTATIC || uMsg == WM_CTLCOLORBTN) && IsThemeActive()) { + SetBkMode((HDC)wParam, TRANSPARENT); + return (LRESULT)GetStockObject(COLOR_WINDOW + 1); + } + else if (uMsg == WM_PAINT && IsThemeActive()) { + PAINTSTRUCT ps; + HDC hdc = BeginPaint(hDlg, &ps); + + // All painting occurs here, between BeginPaint and EndPaint. + FillRect(hdc, &ps.rcPaint, (HBRUSH)(COLOR_WINDOW + 1)); + + EndPaint(hDlg, &ps); + + return 0; + } #ifdef _WIN64 - LONG_PTR attr = GetWindowLongPtr(hDlg, GWLP_USERDATA); + LONG_PTR attr = GetWindowLongPtr(hDlg, GWLP_USERDATA); #else - long attr = GetWindowLong(hDlg, GWL_USERDATA); + long attr = GetWindowLong(hDlg, GWL_USERDATA); #endif - if (attr != 0) { - return ((MainControlDialog*)attr)->eventProc(hDlg, uMsg, wParam, lParam); - } - return FALSE; + if (attr != 0) { + return ((MainControlDialog*)attr)->eventProc(hDlg, uMsg, wParam, lParam); + } + return FALSE; } void MainControlDialog::fillData() { - SendMessage(comboBoxInputType, CB_SETCURSEL, vInputType, 0); - SendMessage(comboBoxTableCode, CB_SETCURSEL, vCodeTable, 0); - - SendMessage(checkCtrl, BM_SETCHECK, HAS_CONTROL(vSwitchKeyStatus) ? 1 : 0, 0); - SendMessage(checkAlt, BM_SETCHECK, HAS_OPTION(vSwitchKeyStatus) ? 1 : 0, 0); - SendMessage(checkWin, BM_SETCHECK, HAS_COMMAND(vSwitchKeyStatus) ? 1 : 0, 0); - SendMessage(checkShift, BM_SETCHECK, HAS_SHIFT(vSwitchKeyStatus) ? 1 : 0, 0); - setSwitchKeyText(textSwitchKey, (vSwitchKeyStatus >> 24) & 0xFF); - SendMessage(checkBeep, BM_SETCHECK, HAS_BEEP(vSwitchKeyStatus) ? 1 : 0, 0); - - SendMessage(checkVietnamese, BM_SETCHECK, vLanguage, 0); - SendMessage(checkEnglish, BM_SETCHECK, !vLanguage, 0); - - SendMessage(checkModernOrthorgraphy, BM_SETCHECK, vUseModernOrthography ? 1 : 0, 0); - SendMessage(checkFixRecommendBrowser, BM_SETCHECK, vFixRecommendBrowser ? 1 : 0, 0); - SendMessage(checkShowOnStartup, BM_SETCHECK, vShowOnStartUp ? 1 : 0, 0); - SendMessage(checkRunWithWindows, BM_SETCHECK, vRunWithWindows ? 1 : 0, 0); - SendMessage(checkSpelling, BM_SETCHECK, vCheckSpelling ? 1 : 0, 0); - SendMessage(checkRestoreIfWrongSpelling, BM_SETCHECK, vRestoreIfWrongSpelling ? 1 : 0, 0); - SendMessage(checkModernIcon, BM_SETCHECK, vUseGrayIcon ? 1 : 0, 0); - SendMessage(checkAllowZWJF, BM_SETCHECK, vAllowConsonantZFWJ ? 1 : 0, 0); - SendMessage(checkTempOffSpelling, BM_SETCHECK, vTempOffSpelling ? 1 : 0, 0); - SendMessage(checkQuickStartConsonant, BM_SETCHECK, vQuickStartConsonant ? 1 : 0, 0); - SendMessage(checkQuickEndConsonant, BM_SETCHECK, vQuickEndConsonant ? 1 : 0, 0); - SendMessage(checkRememberTableCode, BM_SETCHECK, vRememberCode ? 1 : 0, 0); + SendMessage(comboBoxInputType, CB_SETCURSEL, vInputType, 0); + SendMessage(comboBoxTableCode, CB_SETCURSEL, vCodeTable, 0); + + SendMessage(checkCtrl, BM_SETCHECK, HAS_CONTROL(vSwitchKeyStatus) ? 1 : 0, 0); + SendMessage(checkAlt, BM_SETCHECK, HAS_OPTION(vSwitchKeyStatus) ? 1 : 0, 0); + SendMessage(checkWin, BM_SETCHECK, HAS_COMMAND(vSwitchKeyStatus) ? 1 : 0, 0); + SendMessage(checkShift, BM_SETCHECK, HAS_SHIFT(vSwitchKeyStatus) ? 1 : 0, 0); + setSwitchKeyText(textSwitchKey, (vSwitchKeyStatus >> 24) & 0xFF); + SendMessage(checkBeep, BM_SETCHECK, HAS_BEEP(vSwitchKeyStatus) ? 1 : 0, 0); + + SendMessage(checkVietnamese, BM_SETCHECK, vLanguage, 0); + SendMessage(checkEnglish, BM_SETCHECK, !vLanguage, 0); + + SendMessage(checkModernOrthorgraphy, BM_SETCHECK, vUseModernOrthography ? 1 : 0, 0); + SendMessage(checkFixRecommendBrowser, BM_SETCHECK, vFixRecommendBrowser ? 1 : 0, 0); + SendMessage(checkShowOnStartup, BM_SETCHECK, vShowOnStartUp ? 1 : 0, 0); + SendMessage(checkRunWithWindows, BM_SETCHECK, vRunWithWindows ? 1 : 0, 0); + SendMessage(checkSpelling, BM_SETCHECK, vCheckSpelling ? 1 : 0, 0); + SendMessage(checkRestoreIfWrongSpelling, BM_SETCHECK, vRestoreIfWrongSpelling ? 1 : 0, 0); + SendMessage(checkModernIcon, BM_SETCHECK, vUseGrayIcon ? 1 : 0, 0); + SendMessage(checkAllowZWJF, BM_SETCHECK, vAllowConsonantZFWJ ? 1 : 0, 0); + SendMessage(checkTempOffSpelling, BM_SETCHECK, vTempOffSpelling ? 1 : 0, 0); + SendMessage(checkQuickStartConsonant, BM_SETCHECK, vQuickStartConsonant ? 1 : 0, 0); + SendMessage(checkQuickEndConsonant, BM_SETCHECK, vQuickEndConsonant ? 1 : 0, 0); + SendMessage(checkRememberTableCode, BM_SETCHECK, vRememberCode ? 1 : 0, 0); SendMessage(checkAllowOtherLanguages, BM_SETCHECK, vOtherLanguage ? 1 : 0, 0); - SendMessage(checkTempOffOpenKey, BM_SETCHECK, vTempOffOpenKey ? 1 : 0, 0); - - SendMessage(checkSmartSwitchKey, BM_SETCHECK, vUseSmartSwitchKey ? 1 : 0, 0); - SendMessage(checkCapsFirstChar, BM_SETCHECK, vUpperCaseFirstChar ? 1 : 0, 0); - SendMessage(checkQuickTelex, BM_SETCHECK, vQuickTelex ? 1 : 0, 0); - SendMessage(checkUseMacro, BM_SETCHECK, vUseMacro ? 1 : 0, 0); - SendMessage(checkUseMacroInEnglish, BM_SETCHECK, vUseMacroInEnglishMode ? 1 : 0, 0); - - SendMessage(checkMacroAutoCaps, BM_SETCHECK, vAutoCapsMacro ? 1 : 0, 0); - SendMessage(checkSupportMetroApp, BM_SETCHECK, vSupportMetroApp ? 1 : 0, 0); - SendMessage(checkCreateDesktopShortcut, BM_SETCHECK, vCreateDesktopShortcut ? 1 : 0, 0); - SendMessage(checkRunAsAdmin, BM_SETCHECK, vRunAsAdmin ? 1 : 0, 0); - SendMessage(checkCheckNewVersion, BM_SETCHECK, vCheckNewVersion ? 1 : 0, 0); - SendMessage(checkUseClipboard, BM_SETCHECK, vSendKeyStepByStep ? 0 : 1, 0); - SendMessage(checkFixChromium, BM_SETCHECK, vFixChromiumBrowser ? 1 : 0, 0); - - EnableWindow(checkRestoreIfWrongSpelling, vCheckSpelling); - EnableWindow(checkAllowZWJF, vCheckSpelling); - EnableWindow(checkTempOffSpelling, vCheckSpelling); - EnableWindow(checkFixChromium, vFixRecommendBrowser); - - //tab info - wchar_t buffer[256]; - wsprintfW(buffer, _T("Phiên bản %s cho Windows - Ngày cập nhật: %s"), OpenKeyHelper::getVersionString().c_str(), _T(__DATE__)); - SendDlgItemMessage(hTabPage4, IDC_STATIC_APP_VERSION_INFO, WM_SETTEXT, 0, LPARAM(buffer)); + SendMessage(checkTempOffOpenKey, BM_SETCHECK, vTempOffOpenKey ? 1 : 0, 0); + + SendMessage(checkSmartSwitchKey, BM_SETCHECK, vUseSmartSwitchKey ? 1 : 0, 0); + SendMessage(checkCapsFirstChar, BM_SETCHECK, vUpperCaseFirstChar ? 1 : 0, 0); + SendMessage(checkQuickTelex, BM_SETCHECK, vQuickTelex ? 1 : 0, 0); + SendMessage(checkUseMacro, BM_SETCHECK, vUseMacro ? 1 : 0, 0); + SendMessage(checkUseMacroInEnglish, BM_SETCHECK, vUseMacroInEnglishMode ? 1 : 0, 0); + + SendMessage(checkMacroAutoCaps, BM_SETCHECK, vAutoCapsMacro ? 1 : 0, 0); + SendMessage(checkSupportMetroApp, BM_SETCHECK, vSupportMetroApp ? 1 : 0, 0); + SendMessage(checkCreateDesktopShortcut, BM_SETCHECK, vCreateDesktopShortcut ? 1 : 0, 0); + SendMessage(checkRunAsAdmin, BM_SETCHECK, vRunAsAdmin ? 1 : 0, 0); + SendMessage(checkCheckNewVersion, BM_SETCHECK, vCheckNewVersion ? 1 : 0, 0); + SendMessage(checkUseClipboard, BM_SETCHECK, vSendKeyStepByStep ? 0 : 1, 0); + SendMessage(checkFixChromium, BM_SETCHECK, vFixChromiumBrowser ? 1 : 0, 0); + + EnableWindow(checkRestoreIfWrongSpelling, vCheckSpelling); + EnableWindow(checkAllowZWJF, vCheckSpelling); + EnableWindow(checkTempOffSpelling, vCheckSpelling); + EnableWindow(checkFixChromium, vFixRecommendBrowser); + + //tab info + wchar_t buffer[256]; + wsprintfW(buffer, _T("Phiên bản %s cho Windows - Ngày cập nhật: %s"), OpenKeyHelper::getVersionString().c_str(), _T(__DATE__)); + SendDlgItemMessage(hTabPage4, IDC_STATIC_APP_VERSION_INFO, WM_SETTEXT, 0, LPARAM(buffer)); } void MainControlDialog::setSwitchKey(const unsigned short& code) { - vSwitchKeyStatus &= 0xFFFFFF00; - vSwitchKeyStatus |= code; - vSwitchKeyStatus &= 0x00FFFFFF; - vSwitchKeyStatus |= ((unsigned int)code << 24); - APP_SET_DATA(vSwitchKeyStatus, vSwitchKeyStatus); + vSwitchKeyStatus &= 0xFFFFFF00; + vSwitchKeyStatus |= code; + vSwitchKeyStatus &= 0x00FFFFFF; + vSwitchKeyStatus |= ((unsigned int)code << 24); + APP_SET_DATA(vSwitchKeyStatus, vSwitchKeyStatus); } -void MainControlDialog::onComboBoxSelected(const HWND & hCombobox, const int & comboboxId) { - if (hCombobox == comboBoxInputType) { - APP_SET_DATA(vInputType, (int)SendMessage(hCombobox, CB_GETCURSEL, 0, 0)); - } else if (hCombobox == comboBoxTableCode) { - APP_SET_DATA(vCodeTable, (int)SendMessage(hCombobox, CB_GETCURSEL, 0, 0)); - if (vRememberCode) { - setAppInputMethodStatus(OpenKeyHelper::getFrontMostAppExecuteName(), vLanguage | (vCodeTable << 1)); - saveSmartSwitchKeyData(); - } - } - SystemTrayHelper::updateData(); +void MainControlDialog::onComboBoxSelected(const HWND& hCombobox, const int& comboboxId) { + if (hCombobox == comboBoxInputType) { + APP_SET_DATA(vInputType, (int)SendMessage(hCombobox, CB_GETCURSEL, 0, 0)); + } + else if (hCombobox == comboBoxTableCode) { + APP_SET_DATA(vCodeTable, (int)SendMessage(hCombobox, CB_GETCURSEL, 0, 0)); + if (vRememberCode) { + setAppInputMethodStatus(OpenKeyHelper::getFrontMostAppExecuteName(), vLanguage | (vCodeTable << 1)); + saveSmartSwitchKeyData(); + } + } + SystemTrayHelper::updateData(); } -void MainControlDialog::onCheckboxClicked(const HWND & hWnd) { - int val = 0; - if (hWnd == checkCtrl) { - val = (int)SendMessage(checkCtrl, BM_GETCHECK, 0, 0); - vSwitchKeyStatus &= (~0x100); - vSwitchKeyStatus |= val << 8; - APP_SET_DATA(vSwitchKeyStatus, vSwitchKeyStatus); - } else if (hWnd == checkAlt) { - val = (int)SendMessage(checkAlt, BM_GETCHECK, 0, 0); - vSwitchKeyStatus &= (~0x200); - vSwitchKeyStatus |= val << 9; - APP_SET_DATA(vSwitchKeyStatus, vSwitchKeyStatus); - } else if (hWnd == checkWin) { - val = (int)SendMessage(checkWin, BM_GETCHECK, 0, 0); - vSwitchKeyStatus &= (~0x400); - vSwitchKeyStatus |= val << 10; - APP_SET_DATA(vSwitchKeyStatus, vSwitchKeyStatus); - } else if (hWnd == checkShift) { - val = (int)SendMessage(checkShift, BM_GETCHECK, 0, 0); - vSwitchKeyStatus &= (~0x800); - vSwitchKeyStatus |= val << 11; - APP_SET_DATA(vSwitchKeyStatus, vSwitchKeyStatus); - } else if (hWnd == checkBeep) { - val = (int)SendMessage(checkBeep, BM_GETCHECK, 0, 0); - vSwitchKeyStatus &= (~0x8000); - vSwitchKeyStatus |= val << 15; - APP_SET_DATA(vSwitchKeyStatus, vSwitchKeyStatus); - } else if (hWnd == checkVietnamese) { - val = (int)SendMessage(checkVietnamese, BM_GETCHECK, 0, 0); - APP_SET_DATA(vLanguage, val ? 1 : 0); - if (vUseSmartSwitchKey) { - setAppInputMethodStatus(OpenKeyHelper::getFrontMostAppExecuteName(), vLanguage | (vCodeTable << 1)); - saveSmartSwitchKeyData(); - } - } else if (hWnd == checkEnglish) { - val = (int)SendMessage(checkVietnamese, BM_GETCHECK, 0, 0); - APP_SET_DATA(vLanguage, val ? 1 : 0); - if (vUseSmartSwitchKey) { - setAppInputMethodStatus(OpenKeyHelper::getFrontMostAppExecuteName(), vLanguage | (vCodeTable << 1)); - saveSmartSwitchKeyData(); - } - } else if (hWnd == checkModernOrthorgraphy) { - val = (int)SendMessage(hWnd, BM_GETCHECK, 0, 0); - APP_SET_DATA(vUseModernOrthography, val ? 1 : 0); - } else if (hWnd == checkFixRecommendBrowser) { - val = (int)SendMessage(hWnd, BM_GETCHECK, 0, 0); - APP_SET_DATA(vFixRecommendBrowser, val ? 1 : 0); - EnableWindow(checkFixChromium, vFixRecommendBrowser); - } else if (hWnd == checkShowOnStartup) { - val = (int)SendMessage(hWnd, BM_GETCHECK, 0, 0); - APP_SET_DATA(vShowOnStartUp, val ? 1 : 0); - } else if (hWnd == checkRunWithWindows) { - val = (int)SendMessage(hWnd, BM_GETCHECK, 0, 0); - APP_SET_DATA(vRunWithWindows, val ? 1 : 0); - OpenKeyHelper::registerRunOnStartup(vRunWithWindows); - } else if (hWnd == checkSpelling) { - val = (int)SendMessage(hWnd, BM_GETCHECK, 0, 0); - APP_SET_DATA(vCheckSpelling, val ? 1 : 0); - vSetCheckSpelling(); - EnableWindow(checkRestoreIfWrongSpelling, vCheckSpelling); - EnableWindow(checkAllowZWJF, vCheckSpelling); - EnableWindow(checkTempOffSpelling, vCheckSpelling); - } else if (hWnd == checkRestoreIfWrongSpelling) { - val = (int)SendMessage(hWnd, BM_GETCHECK, 0, 0); - APP_SET_DATA(vRestoreIfWrongSpelling, val ? 1 : 0); - } else if (hWnd == checkUseClipboard) { - val = (int)SendMessage(hWnd, BM_GETCHECK, 0, 0); - APP_SET_DATA(vSendKeyStepByStep, val ? 0 : 1); - } else if (hWnd == checkSmartSwitchKey) { - val = (int)SendMessage(hWnd, BM_GETCHECK, 0, 0); - APP_SET_DATA(vUseSmartSwitchKey, val ? 1 : 0); - } else if (hWnd == checkCapsFirstChar) { - val = (int)SendMessage(hWnd, BM_GETCHECK, 0, 0); - APP_SET_DATA(vUpperCaseFirstChar, val ? 1 : 0); - } else if (hWnd == checkQuickTelex) { - val = (int)SendMessage(hWnd, BM_GETCHECK, 0, 0); - APP_SET_DATA(vQuickTelex, val ? 1 : 0); - } else if (hWnd == checkUseMacro) { - val = (int)SendMessage(hWnd, BM_GETCHECK, 0, 0); - APP_SET_DATA(vUseMacro, val ? 1 : 0); - } else if (hWnd == checkUseMacroInEnglish) { - val = (int)SendMessage(hWnd, BM_GETCHECK, 0, 0); - APP_SET_DATA(vUseMacroInEnglishMode, val ? 1 : 0); - } else if (hWnd == checkModernIcon) { - val = (int)SendMessage(hWnd, BM_GETCHECK, 0, 0); - APP_SET_DATA(vUseGrayIcon, val ? 1 : 0); - } else if (hWnd == checkAllowZWJF) { - val = (int)SendMessage(hWnd, BM_GETCHECK, 0, 0); - APP_SET_DATA(vAllowConsonantZFWJ, val ? 1 : 0); - } else if (hWnd == checkTempOffSpelling) { - val = (int)SendMessage(hWnd, BM_GETCHECK, 0, 0); - APP_SET_DATA(vTempOffSpelling, val ? 1 : 0); - } else if (hWnd == checkQuickStartConsonant) { - val = (int)SendMessage(hWnd, BM_GETCHECK, 0, 0); - APP_SET_DATA(vQuickStartConsonant, val ? 1 : 0); - } else if (hWnd == checkQuickEndConsonant) { - val = (int)SendMessage(hWnd, BM_GETCHECK, 0, 0); - APP_SET_DATA(vQuickEndConsonant, val ? 1 : 0); - } else if (hWnd == checkSupportMetroApp) { - val = (int)SendMessage(hWnd, BM_GETCHECK, 0, 0); - APP_SET_DATA(vSupportMetroApp, val ? 1 : 0); - } else if (hWnd == checkMacroAutoCaps) { - val = (int)SendMessage(hWnd, BM_GETCHECK, 0, 0); - APP_SET_DATA(vAutoCapsMacro, val ? 1 : 0); - } else if (hWnd == checkCreateDesktopShortcut) { - val = (int)SendMessage(hWnd, BM_GETCHECK, 0, 0); - APP_SET_DATA(vCreateDesktopShortcut, val ? 1 : 0); - //create desktop shortcut - if (val) - OpenKeyManager::createDesktopShortcut(); - } else if (hWnd == checkRunAsAdmin) { - val = (int)SendMessage(hWnd, BM_GETCHECK, 0, 0); - APP_SET_DATA(vRunAsAdmin, val ? 1 : 0); - requestRestartAsAdmin(); - } else if (hWnd == checkCheckNewVersion) { - val = (int)SendMessage(hWnd, BM_GETCHECK, 0, 0); - APP_SET_DATA(vCheckNewVersion, val ? 1 : 0); - } else if (hWnd == checkRememberTableCode) { - val = (int)SendMessage(hWnd, BM_GETCHECK, 0, 0); - APP_SET_DATA(vRememberCode, val ? 1 : 0); - } else if (hWnd == checkAllowOtherLanguages) { - val = (int)SendMessage(hWnd, BM_GETCHECK, 0, 0); - APP_SET_DATA(vOtherLanguage, val ? 1 : 0); - } else if (hWnd == checkTempOffOpenKey) { - val = (int)SendMessage(hWnd, BM_GETCHECK, 0, 0); - APP_SET_DATA(vTempOffOpenKey, val ? 1 : 0); - } else if (hWnd == checkFixChromium) { - val = (int)SendMessage(hWnd, BM_GETCHECK, 0, 0); - APP_SET_DATA(vFixChromiumBrowser, val ? 1 : 0); - } - SystemTrayHelper::updateData(); +void MainControlDialog::onCheckboxClicked(const HWND& hWnd) { + int val = 0; + if (hWnd == checkCtrl) { + val = (int)SendMessage(checkCtrl, BM_GETCHECK, 0, 0); + vSwitchKeyStatus &= (~0x100); + vSwitchKeyStatus |= val << 8; + APP_SET_DATA(vSwitchKeyStatus, vSwitchKeyStatus); + } + else if (hWnd == checkAlt) { + val = (int)SendMessage(checkAlt, BM_GETCHECK, 0, 0); + vSwitchKeyStatus &= (~0x200); + vSwitchKeyStatus |= val << 9; + APP_SET_DATA(vSwitchKeyStatus, vSwitchKeyStatus); + } + else if (hWnd == checkWin) { + val = (int)SendMessage(checkWin, BM_GETCHECK, 0, 0); + vSwitchKeyStatus &= (~0x400); + vSwitchKeyStatus |= val << 10; + APP_SET_DATA(vSwitchKeyStatus, vSwitchKeyStatus); + } + else if (hWnd == checkShift) { + val = (int)SendMessage(checkShift, BM_GETCHECK, 0, 0); + vSwitchKeyStatus &= (~0x800); + vSwitchKeyStatus |= val << 11; + APP_SET_DATA(vSwitchKeyStatus, vSwitchKeyStatus); + } + else if (hWnd == checkBeep) { + val = (int)SendMessage(checkBeep, BM_GETCHECK, 0, 0); + vSwitchKeyStatus &= (~0x8000); + vSwitchKeyStatus |= val << 15; + APP_SET_DATA(vSwitchKeyStatus, vSwitchKeyStatus); + } + else if (hWnd == checkVietnamese) { + val = (int)SendMessage(checkVietnamese, BM_GETCHECK, 0, 0); + APP_SET_DATA(vLanguage, val ? 1 : 0); + if (vUseSmartSwitchKey) { + setAppInputMethodStatus(OpenKeyHelper::getFrontMostAppExecuteName(), vLanguage | (vCodeTable << 1)); + saveSmartSwitchKeyData(); + } + } + else if (hWnd == checkEnglish) { + val = (int)SendMessage(checkVietnamese, BM_GETCHECK, 0, 0); + APP_SET_DATA(vLanguage, val ? 1 : 0); + if (vUseSmartSwitchKey) { + setAppInputMethodStatus(OpenKeyHelper::getFrontMostAppExecuteName(), vLanguage | (vCodeTable << 1)); + saveSmartSwitchKeyData(); + } + } + else if (hWnd == checkModernOrthorgraphy) { + val = (int)SendMessage(hWnd, BM_GETCHECK, 0, 0); + APP_SET_DATA(vUseModernOrthography, val ? 1 : 0); + } + else if (hWnd == checkFixRecommendBrowser) { + val = (int)SendMessage(hWnd, BM_GETCHECK, 0, 0); + APP_SET_DATA(vFixRecommendBrowser, val ? 1 : 0); + EnableWindow(checkFixChromium, vFixRecommendBrowser); + } + else if (hWnd == checkShowOnStartup) { + val = (int)SendMessage(hWnd, BM_GETCHECK, 0, 0); + APP_SET_DATA(vShowOnStartUp, val ? 1 : 0); + } + else if (hWnd == checkRunWithWindows) { + val = (int)SendMessage(hWnd, BM_GETCHECK, 0, 0); + APP_SET_DATA(vRunWithWindows, val ? 1 : 0); + OpenKeyHelper::registerRunOnStartup(vRunWithWindows); + } + else if (hWnd == checkSpelling) { + val = (int)SendMessage(hWnd, BM_GETCHECK, 0, 0); + APP_SET_DATA(vCheckSpelling, val ? 1 : 0); + vSetCheckSpelling(); + EnableWindow(checkRestoreIfWrongSpelling, vCheckSpelling); + EnableWindow(checkAllowZWJF, vCheckSpelling); + EnableWindow(checkTempOffSpelling, vCheckSpelling); + } + else if (hWnd == checkRestoreIfWrongSpelling) { + val = (int)SendMessage(hWnd, BM_GETCHECK, 0, 0); + APP_SET_DATA(vRestoreIfWrongSpelling, val ? 1 : 0); + } + else if (hWnd == checkUseClipboard) { + val = (int)SendMessage(hWnd, BM_GETCHECK, 0, 0); + APP_SET_DATA(vSendKeyStepByStep, val ? 0 : 1); + } + else if (hWnd == checkSmartSwitchKey) { + val = (int)SendMessage(hWnd, BM_GETCHECK, 0, 0); + APP_SET_DATA(vUseSmartSwitchKey, val ? 1 : 0); + } + else if (hWnd == checkCapsFirstChar) { + val = (int)SendMessage(hWnd, BM_GETCHECK, 0, 0); + APP_SET_DATA(vUpperCaseFirstChar, val ? 1 : 0); + } + else if (hWnd == checkQuickTelex) { + val = (int)SendMessage(hWnd, BM_GETCHECK, 0, 0); + APP_SET_DATA(vQuickTelex, val ? 1 : 0); + } + else if (hWnd == checkUseMacro) { + val = (int)SendMessage(hWnd, BM_GETCHECK, 0, 0); + APP_SET_DATA(vUseMacro, val ? 1 : 0); + } + else if (hWnd == checkUseMacroInEnglish) { + val = (int)SendMessage(hWnd, BM_GETCHECK, 0, 0); + APP_SET_DATA(vUseMacroInEnglishMode, val ? 1 : 0); + } + else if (hWnd == checkModernIcon) { + val = (int)SendMessage(hWnd, BM_GETCHECK, 0, 0); + APP_SET_DATA(vUseGrayIcon, val ? 1 : 0); + } + else if (hWnd == checkAllowZWJF) { + val = (int)SendMessage(hWnd, BM_GETCHECK, 0, 0); + APP_SET_DATA(vAllowConsonantZFWJ, val ? 1 : 0); + } + else if (hWnd == checkTempOffSpelling) { + val = (int)SendMessage(hWnd, BM_GETCHECK, 0, 0); + APP_SET_DATA(vTempOffSpelling, val ? 1 : 0); + } + else if (hWnd == checkQuickStartConsonant) { + val = (int)SendMessage(hWnd, BM_GETCHECK, 0, 0); + APP_SET_DATA(vQuickStartConsonant, val ? 1 : 0); + } + else if (hWnd == checkQuickEndConsonant) { + val = (int)SendMessage(hWnd, BM_GETCHECK, 0, 0); + APP_SET_DATA(vQuickEndConsonant, val ? 1 : 0); + } + else if (hWnd == checkSupportMetroApp) { + val = (int)SendMessage(hWnd, BM_GETCHECK, 0, 0); + APP_SET_DATA(vSupportMetroApp, val ? 1 : 0); + } + else if (hWnd == checkMacroAutoCaps) { + val = (int)SendMessage(hWnd, BM_GETCHECK, 0, 0); + APP_SET_DATA(vAutoCapsMacro, val ? 1 : 0); + } + else if (hWnd == checkCreateDesktopShortcut) { + val = (int)SendMessage(hWnd, BM_GETCHECK, 0, 0); + APP_SET_DATA(vCreateDesktopShortcut, val ? 1 : 0); + //create desktop shortcut + if (val) + OpenKeyManager::createDesktopShortcut(); + } + else if (hWnd == checkRunAsAdmin) { + val = (int)SendMessage(hWnd, BM_GETCHECK, 0, 0); + APP_SET_DATA(vRunAsAdmin, val ? 1 : 0); + requestRestartAsAdmin(); + } + else if (hWnd == checkCheckNewVersion) { + val = (int)SendMessage(hWnd, BM_GETCHECK, 0, 0); + APP_SET_DATA(vCheckNewVersion, val ? 1 : 0); + } + else if (hWnd == checkRememberTableCode) { + val = (int)SendMessage(hWnd, BM_GETCHECK, 0, 0); + APP_SET_DATA(vRememberCode, val ? 1 : 0); + } + else if (hWnd == checkAllowOtherLanguages) { + val = (int)SendMessage(hWnd, BM_GETCHECK, 0, 0); + APP_SET_DATA(vOtherLanguage, val ? 1 : 0); + } + else if (hWnd == checkTempOffOpenKey) { + val = (int)SendMessage(hWnd, BM_GETCHECK, 0, 0); + APP_SET_DATA(vTempOffOpenKey, val ? 1 : 0); + } + else if (hWnd == checkFixChromium) { + val = (int)SendMessage(hWnd, BM_GETCHECK, 0, 0); + APP_SET_DATA(vFixChromiumBrowser, val ? 1 : 0); + } + SystemTrayHelper::updateData(); } -void MainControlDialog::onCharacter(const HWND& hWnd, const UINT16 & keyCode) { - if (keyCode == 0) return; - if (hWnd == textSwitchKey) { - UINT16 code = GET_SWITCH_KEY(vSwitchKeyStatus); - if (keyCode == VK_DELETE || keyCode == VK_BACK) { - code = 0xFE; - } - else if (keyCodeToCharacter(keyCode) != 0) { - code = keyCode; - } - setSwitchKey(code); - setSwitchKeyText(hWnd, code); - } +void MainControlDialog::onCharacter(const HWND& hWnd, const UINT16& keyCode) { + if (keyCode == 0) return; + if (hWnd == textSwitchKey) { + UINT16 code = GET_SWITCH_KEY(vSwitchKeyStatus); + if (keyCode == VK_DELETE || keyCode == VK_BACK) { + code = 0xFE; + } + else if (keyCodeToCharacter(keyCode) != 0) { + code = keyCode; + } + setSwitchKey(code); + setSwitchKeyText(hWnd, code); + } } -void MainControlDialog::setSwitchKeyText(const HWND & hWnd, const UINT16 & keyCode) { - if (keyCode == KEY_SPACE) { - SetWindowText(hWnd, _T("Space")); - } else if (keyCode == 0xFE) { - SetWindowText(hWnd, _T("")); - } else { - Uint16 key[] = { keyCode, 0 }; - SetWindowText(hWnd, (LPCWSTR)&key); - } +void MainControlDialog::setSwitchKeyText(const HWND& hWnd, const UINT16& keyCode) { + if (keyCode == KEY_SPACE) { + SetWindowText(hWnd, _T("Space")); + } + else if (keyCode == 0xFE) { + SetWindowText(hWnd, _T("")); + } + else { + Uint16 key[] = { keyCode, 0 }; + SetWindowText(hWnd, (LPCWSTR)&key); + } } void MainControlDialog::onTabIndexChanged() { - int index = TabCtrl_GetCurSel(hTab); - ShowWindow(hTabPage1, (index == 0) ? SW_SHOW : SW_HIDE); - ShowWindow(hTabPage2, (index == 1) ? SW_SHOW : SW_HIDE); - ShowWindow(hTabPage3, (index == 2) ? SW_SHOW : SW_HIDE); - ShowWindow(hTabPage4, (index == 3) ? SW_SHOW : SW_HIDE); + int index = TabCtrl_GetCurSel(hTab); + ShowWindow(hTabPage1, (index == 0) ? SW_SHOW : SW_HIDE); + ShowWindow(hTabPage2, (index == 1) ? SW_SHOW : SW_HIDE); + ShowWindow(hTabPage3, (index == 2) ? SW_SHOW : SW_HIDE); + ShowWindow(hTabPage4, (index == 3) ? SW_SHOW : SW_HIDE); } void MainControlDialog::onUpdateButton() { - EnableWindow(hUpdateButton, false); - string newVersion; - if (OpenKeyManager::checkUpdate(newVersion)) { - WCHAR msg[256]; - wsprintf(msg, - TEXT("OpenKey Có phiên bản mới (%s), bạn có muốn cập nhật không?"), - utf8ToWideString(newVersion).c_str()); - - int msgboxID = MessageBox( - hDlg, - msg, - _T("OpenKey Update"), - MB_ICONEXCLAMATION | MB_YESNO - ); - if (msgboxID == IDYES) { - //Call OpenKeyUpdate - WCHAR path[MAX_PATH]; - GetCurrentDirectory(MAX_PATH, path); - wsprintf(path, TEXT("%s\\OpenKeyUpdate.exe"), path); - ShellExecute(0, L"", path, 0, 0, SW_SHOWNORMAL); - - AppDelegate::getInstance()->onOpenKeyExit(); - } - - } - else { - MessageBox(hDlg, _T("Bạn đang dùng phiên bản mới nhất!"), _T("OpenKey Update"), MB_OK); - } - EnableWindow(hUpdateButton, true); + EnableWindow(hUpdateButton, false); + string newVersion; + if (OpenKeyManager::checkUpdate(newVersion)) { + WCHAR msg[256]; + wsprintf(msg, + TEXT("OpenKey Có phiên bản mới (%s), bạn có muốn cập nhật không?"), + utf8ToWideString(newVersion).c_str()); + + int msgboxID = MessageBox( + hDlg, + msg, + _T("OpenKey Update"), + MB_ICONEXCLAMATION | MB_YESNO + ); + if (msgboxID == IDYES) { + //Call OpenKeyUpdate + WCHAR path[MAX_PATH]; + GetCurrentDirectory(MAX_PATH, path); + wsprintf(path, TEXT("%s\\OpenKeyUpdate.exe"), path); + ShellExecute(0, L"", path, 0, 0, SW_SHOWNORMAL); + + AppDelegate::getInstance()->onOpenKeyExit(); + } + + } + else { + MessageBox(hDlg, _T("Bạn đang dùng phiên bản mới nhất!"), _T("OpenKey Update"), MB_OK); + } + EnableWindow(hUpdateButton, true); } void MainControlDialog::requestRestartAsAdmin() { - OpenKeyHelper::registerRunOnStartup(false); - if (vRunAsAdmin && !IsUserAnAdmin()) { - int msgboxID = MessageBox( - hDlg, - _T("Bạn cần phải khởi động lại OpenKey để kích hoạt chế độ Admin!\nBạn có muốn khởi động lại OpenKey không?"), - _T("OpenKey"), - MB_ICONEXCLAMATION | MB_YESNO - ); - if (msgboxID == IDYES) { - PostQuitMessage(0); - ShellExecute(0, L"runas", OpenKeyHelper::getFullPath().c_str(), 0, 0, SW_SHOWNORMAL); - } - } else { - OpenKeyHelper::registerRunOnStartup(vRunWithWindows); - } + OpenKeyHelper::registerRunOnStartup(false); + if (vRunAsAdmin && !IsUserAnAdmin()) { + int msgboxID = MessageBox( + hDlg, + _T("Bạn cần phải khởi động lại OpenKey để kích hoạt chế độ Admin!\nBạn có muốn khởi động lại OpenKey không?"), + _T("OpenKey"), + MB_ICONEXCLAMATION | MB_YESNO + ); + if (msgboxID == IDYES) { + PostQuitMessage(0); + ShellExecute(0, L"runas", OpenKeyHelper::getFullPath().c_str(), 0, 0, SW_SHOWNORMAL); + } + } + else { + OpenKeyHelper::registerRunOnStartup(vRunWithWindows); + } } From c2a1f990280e3c28bc9e4f417fadb2c6928b9b40 Mon Sep 17 00:00:00 2001 From: Thanh Phu Date: Wed, 11 Dec 2024 17:20:54 +0900 Subject: [PATCH 8/8] Restore win32.h --- Sources/OpenKey/engine/platforms/win32.h | 64 ++++++++++++------------ 1 file changed, 32 insertions(+), 32 deletions(-) diff --git a/Sources/OpenKey/engine/platforms/win32.h b/Sources/OpenKey/engine/platforms/win32.h index c2e0133..cabfabe 100644 --- a/Sources/OpenKey/engine/platforms/win32.h +++ b/Sources/OpenKey/engine/platforms/win32.h @@ -23,31 +23,31 @@ #define KEY_EMPTY 256 #define KEY_A 0x41 -#define KEY_B 0x4E -#define KEY_C 0x49 -#define KEY_D 0x48 -#define KEY_E 0x44 -#define KEY_F 0x59 -#define KEY_G 0x55 -#define KEY_H 0x4A -#define KEY_I 0x47 -#define KEY_J 0x43 -#define KEY_K 0x56 -#define KEY_L 0x50 +#define KEY_B 0x42 +#define KEY_C 0x43 +#define KEY_D 0x44 +#define KEY_E 0x45 +#define KEY_F 0x46 +#define KEY_G 0x47 +#define KEY_H 0x48 +#define KEY_I 0x49 +#define KEY_J 0x4A +#define KEY_K 0x4B +#define KEY_L 0x4C #define KEY_M 0x4D -#define KEY_N 0x4C -#define KEY_O 0x53 -#define KEY_P 0x52 -#define KEY_Q 0x58 -#define KEY_R 0x4F -#define KEY_S 0xBA -#define KEY_T 0x4B -#define KEY_U 0x46 -#define KEY_V 0xBE -#define KEY_W 0xBC -#define KEY_X 0x42 -#define KEY_Y 0x54 -#define KEY_Z 0xBF +#define KEY_N 0x4E +#define KEY_O 0x4F +#define KEY_P 0x50 +#define KEY_Q 0x51 +#define KEY_R 0x52 +#define KEY_S 0x53 +#define KEY_T 0x54 +#define KEY_U 0x55 +#define KEY_V 0x56 +#define KEY_W 0x57 +#define KEY_X 0x58 +#define KEY_Y 0x59 +#define KEY_Z 0x5A #define KEY_1 0x31 #define KEY_2 0x32 @@ -60,20 +60,20 @@ #define KEY_9 0x39 #define KEY_0 0x30 -#define KEY_LEFT_BRACKET 0xBD //note -#define KEY_RIGHT_BRACKET 0xBB +#define KEY_LEFT_BRACKET 0xDB //note +#define KEY_RIGHT_BRACKET 0xDD #define KEY_LEFT_SHIFT 160 #define KEY_RIGHT_SHIFT 161 #define KEY_DOT VK_OEM_PERIOD #define KEY_BACKQUOTE 220 -#define KEY_MINUS 222 -#define KEY_EQUALS 221 -#define KEY_BACK_SLASH 220 -#define KEY_SEMICOLON 90 -#define KEY_QUOTE 81 +#define KEY_MINUS 189 +#define KEY_EQUALS 187 +#define KEY_BACK_SLASH 222 +#define KEY_SEMICOLON 186 +#define KEY_QUOTE 192 #define KEY_COMMA VK_OEM_COMMA -#define KEY_SLASH 219 +#define KEY_SLASH 191 #endif //OPENKEY_WIN32_H \ No newline at end of file