From 70215e3682345243301d410fc0072f294006403c Mon Sep 17 00:00:00 2001 From: Mounir IDRASSI Date: Wed, 27 May 2015 00:12:46 +0200 Subject: Windows: GUI modifications around PIN field --- src/Mount/Mount.c | 29 +++++++++++++---------------- src/Mount/Resource.h | 11 ++++------- 2 files changed, 17 insertions(+), 23 deletions(-) (limited to 'src/Mount') diff --git a/src/Mount/Mount.c b/src/Mount/Mount.c index 7f8cbca2..ef116199 100644 --- a/src/Mount/Mount.c +++ b/src/Mount/Mount.c @@ -2390,14 +2390,7 @@ BOOL CALLBACK PasswordDlgProc (HWND hwndDlg, UINT msg, WPARAM wParam, LPARAM lPa SendMessage (GetDlgItem (hwndDlg, IDC_CACHE), BM_SETCHECK, bCacheInDriver ? BST_CHECKED:BST_UNCHECKED, 0); SendMessage (GetDlgItem (hwndDlg, IDC_PIN), EM_LIMITTEXT, MAX_PIN, 0); - if (*pin > 0) - { - /* display the given PIN */ - char szTmp[MAX_PIN + 1]; - StringCbPrintfA(szTmp, sizeof(szTmp), "%d", *pin); - - SetDlgItemText (hwndDlg, IDC_PIN, szTmp); - } + SetPin (hwndDlg, IDC_PIN, *pin); SetCheckBox (hwndDlg, IDC_KEYFILES_ENABLE, KeyFilesEnable); @@ -2499,14 +2492,7 @@ BOOL CALLBACK PasswordDlgProc (HWND hwndDlg, UINT msg, WPARAM wParam, LPARAM lPa EnableWindow (GetDlgItem (hwndDlg, IDC_KEYFILES_ENABLE), FALSE); EnableWindow (GetDlgItem (hwndDlg, IDC_KEYFILES), FALSE); - if (*pin >= 0) - { - /* display the given PIN */ - char szTmp[MAX_PIN + 1]; - StringCbPrintfA(szTmp, sizeof(szTmp), "%d", *pin); - - SetDlgItemText (hwndDlg, IDC_PIN, szTmp); - } + SetPin (hwndDlg, IDC_PIN, *pin); bPrebootPasswordDlgMode = TRUE; } @@ -3026,13 +3012,19 @@ BOOL CALLBACK MountOptionsDlgProc (HWND hwndDlg, UINT msg, WPARAM wParam, LPARAM EnableWindow (GetDlgItem (hwndDlg, IDC_KEYFILES_ENABLE_HIDVOL_PROT), protect); EnableWindow (GetDlgItem (hwndDlg, IDT_PKCS5_PRF), protect); EnableWindow (GetDlgItem (hwndDlg, IDC_PKCS5_PRF_ID), protect); + EnableWindow (GetDlgItem (hwndDlg, IDT_PIN), protect); + EnableWindow (GetDlgItem (hwndDlg, IDC_PIN), protect); + EnableWindow (GetDlgItem (hwndDlg, IDC_PIN_HELP), protect); SetCheckBox (hwndDlg, IDC_KEYFILES_ENABLE_HIDVOL_PROT, hidVolProtKeyFilesParam.EnableKeyFiles); SendDlgItemMessage (hwndDlg, IDC_PASSWORD_PROT_HIDVOL, EM_LIMITTEXT, MAX_PASSWORD, 0); + SendDlgItemMessage (hwndDlg, IDC_PIN, EM_LIMITTEXT, MAX_PIN, 0); if (mountOptions->ProtectedHidVolPassword.Length > 0) SetWindowText (GetDlgItem (hwndDlg, IDC_PASSWORD_PROT_HIDVOL), (LPSTR) mountOptions->ProtectedHidVolPassword.Text); + + SetPin (hwndDlg, IDC_PIN, mountOptions->ProtectedHidVolPin); ToHyperlink (hwndDlg, IDC_LINK_HIDVOL_PROTECTION_INFO); @@ -3127,6 +3119,8 @@ BOOL CALLBACK MountOptionsDlgProc (HWND hwndDlg, UINT msg, WPARAM wParam, LPARAM mountOptions->ProtectedHidVolPkcs5Prf = (int) SendMessage (GetDlgItem (hwndDlg, IDC_PKCS5_PRF_ID), CB_GETITEMDATA, SendMessage (GetDlgItem (hwndDlg, IDC_PKCS5_PRF_ID), CB_GETCURSEL, 0, 0), 0); + + mountOptions->ProtectedHidVolPin = GetPin (hwndDlg, IDC_PIN); } // Cleanup @@ -3165,6 +3159,9 @@ BOOL CALLBACK MountOptionsDlgProc (HWND hwndDlg, UINT msg, WPARAM wParam, LPARAM EnableWindow (GetDlgItem (hwndDlg, IDC_KEYFILES_ENABLE_HIDVOL_PROT), protect); EnableWindow (GetDlgItem (hwndDlg, IDT_PKCS5_PRF), protect); EnableWindow (GetDlgItem (hwndDlg, IDC_PKCS5_PRF_ID), protect); + EnableWindow (GetDlgItem (hwndDlg, IDT_PIN), protect); + EnableWindow (GetDlgItem (hwndDlg, IDC_PIN), protect); + EnableWindow (GetDlgItem (hwndDlg, IDC_PIN_HELP), protect); return 1; } diff --git a/src/Mount/Resource.h b/src/Mount/Resource.h index 857ef197..05109fcc 100644 --- a/src/Mount/Resource.h +++ b/src/Mount/Resource.h @@ -163,12 +163,9 @@ #define IDC_PKCS5_OLD_PRF_ID 1139 #define IDC_TRUECRYPT_MODE 1140 #define IDC_PREF_TEMP_CACHE_ON_MULTIPLE_MOUNT 1141 -#define IDT_PIN 1142 -#define IDC_PIN 1143 -#define IDC_PIN_HELP 1144 -#define IDT_OLD_PIN 1145 -#define IDC_OLD_PIN 1146 -#define IDC_OLD_PIN_HELP 1147 +#define IDT_OLD_PIN 1142 +#define IDC_OLD_PIN 1143 +#define IDC_OLD_PIN_HELP 1144 #define IDM_HELP 40001 #define IDM_ABOUT 40002 #define IDM_UNMOUNT_VOLUME 40003 @@ -244,7 +241,7 @@ #define _APS_NO_MFC 1 #define _APS_NEXT_RESOURCE_VALUE 119 #define _APS_NEXT_COMMAND_VALUE 40068 -#define _APS_NEXT_CONTROL_VALUE 1148 +#define _APS_NEXT_CONTROL_VALUE 1145 #define _APS_NEXT_SYMED_VALUE 101 #endif #endif -- cgit v1.2.3