From 776188f249fa2360bafcc3083119efc9d82446b7 Mon Sep 17 00:00:00 2001 From: Gluzskiy Alexandr Date: Fri, 6 Aug 2010 21:49:52 +0300 Subject: modified: commonheaders.h modified: init.cpp deleted: lib/gpgme.exp deleted: lib/gpgme.lib renamed: lib/libgcrypt.def -> lib/libgcrypt-11.def renamed: lib/libgcrypt.exp -> lib/libgcrypt-11.exp new file: lib/libgcrypt-11.lib deleted: lib/libgcrypt.lib renamed: lib/gpgme.def -> lib/libgpgme-11.def new file: lib/libgpgme-11.exp modified: lib/libgpgme-11.lib renamed: lib/libksba.def -> lib/libksba-8.def renamed: lib/libksba.exp -> lib/libksba-8.exp new file: lib/libksba-8.lib deleted: lib/libksba.lib modified: main.cpp modified: new_gpg.rc modified: new_gpg.vcproj modified: new_gpg.vcproj.EVIL2.sss.user modified: options.cpp modified: resource.h modified: utilities.cpp modified: utilities.h --- options.cpp | 61 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 61 insertions(+) (limited to 'options.cpp') diff --git a/options.cpp b/options.cpp index 69b9938..6d223ee 100644 --- a/options.cpp +++ b/options.cpp @@ -20,6 +20,7 @@ extern HINSTANCE hInst; static BOOL CALLBACK DlgProcGpgOpts(HWND hwndDlg, UINT msg, WPARAM wParam, LPARAM lParam); +static BOOL CALLBACK DlgProcGpgBinOpts(HWND hwndDlg, UINT msg, WPARAM wParam, LPARAM lParam); int GpgOptInit(WPARAM wParam,LPARAM lParam) { @@ -33,6 +34,19 @@ int GpgOptInit(WPARAM wParam,LPARAM lParam) odp.flags=ODPF_BOLDGROUPS; odp.pfnDlgProc = DlgProcGpgOpts; CallService(MS_OPT_ADDPAGE,wParam,(LPARAM)&odp); + + ZeroMemory(&odp, sizeof(odp)); + + odp.cbSize = sizeof(odp); + odp.hInstance = hInst; + odp.pszTemplate = MAKEINTRESOURCEA(IDD_OPT_GPG_BIN); + odp.pszTitle = szModuleName; + odp.pszGroup = "Services"; + odp.pszTab = "GnuPG Variables"; + odp.flags=ODPF_BOLDGROUPS; + odp.pfnDlgProc = DlgProcGpgBinOpts; + CallService(MS_OPT_ADDPAGE,wParam,(LPARAM)&odp); + return 0; } @@ -78,4 +92,51 @@ static BOOL CALLBACK DlgProcGpgOpts(HWND hwndDlg, UINT msg, WPARAM wParam, LPARA } +static BOOL CALLBACK DlgProcGpgBinOpts(HWND hwndDlg, UINT msg, WPARAM wParam, LPARAM lParam) +{ + switch (msg) + { + case WM_INITDIALOG: + { + TranslateDialogDefault(hwndDlg); + SetDlgItemText(hwndDlg, IDC_BIN_PATH, UniGetContactSettingUtf(NULL, szModuleName, "szGpgBinPath", _T("gpg2.exe"))); + return TRUE; + } + + + case WM_COMMAND: + { + switch (LOWORD(wParam)) + { + case IDC_SET_BIN_PATH: + GetFilePath(_T("Choose gpg2.exe"), "szGpgBinPath", _T("*.exe"), _T("EXE Executables")); + SetDlgItemText(hwndDlg, IDC_BIN_PATH, UniGetContactSettingUtf(NULL, szModuleName, "szGpgBinPath", _T("gpg2.exe"))); + break; + default: + break; + } + + SendMessage(GetParent(hwndDlg), PSM_CHANGED, 0, 0); + break; + } + + case WM_NOTIFY: + { + switch (((LPNMHDR)lParam)->code) + { + + case PSN_APPLY: + { + TCHAR tmp[512]; + GetDlgItemText(hwndDlg, IDC_BIN_PATH, tmp, 512); + DBWriteContactSettingTString(NULL, szModuleName, "szGpgBinPath", tmp); + return TRUE; + } + } + } + break; + } + + return FALSE; +} -- cgit v1.2.3