Juan Lang : cryptui: Skip the file page in CryptUIWizImport when the import source isn't a file .
Alexandre Julliard
julliard at winehq.org
Tue Dec 23 13:41:27 CST 2008
Module: wine
Branch: master
Commit: 9f6c54335595bec84b49c521f5c3925d20a2b141
URL: http://source.winehq.org/git/wine.git/?a=commit;h=9f6c54335595bec84b49c521f5c3925d20a2b141
Author: Juan Lang <juan.lang at gmail.com>
Date: Mon Dec 22 19:17:52 2008 -0800
cryptui: Skip the file page in CryptUIWizImport when the import source isn't a file.
---
dlls/cryptui/main.c | 69 +++++++++++++++++++++++++++++---------------------
1 files changed, 40 insertions(+), 29 deletions(-)
diff --git a/dlls/cryptui/main.c b/dlls/cryptui/main.c
index a7f8a1b..c578b35 100644
--- a/dlls/cryptui/main.c
+++ b/dlls/cryptui/main.c
@@ -4006,6 +4006,7 @@ static BOOL show_import_ui(DWORD dwFlags, HWND hwndParent,
PROPSHEETHEADERW hdr;
PROPSHEETPAGEW pages[4];
struct ImportWizData data;
+ int nPages = 0;
FIXME("\n");
@@ -4019,34 +4020,44 @@ static BOOL show_import_ui(DWORD dwFlags, HWND hwndParent,
data.hDestCertStore = hDestCertStore;
memset(&pages, 0, sizeof(pages));
- pages[0].dwSize = sizeof(pages[0]);
- pages[0].hInstance = hInstance;
- pages[0].u.pszTemplate = MAKEINTRESOURCEW(IDD_IMPORT_WELCOME);
- pages[0].pfnDlgProc = import_welcome_dlg_proc;
- pages[0].dwFlags = PSP_HIDEHEADER;
-
- pages[1].dwSize = sizeof(pages[1]);
- pages[1].hInstance = hInstance;
- pages[1].u.pszTemplate = MAKEINTRESOURCEW(IDD_IMPORT_FILE);
- pages[1].pfnDlgProc = import_file_dlg_proc;
- pages[1].dwFlags = PSP_USEHEADERTITLE | PSP_USEHEADERSUBTITLE;
- pages[1].pszHeaderTitle = MAKEINTRESOURCEW(IDS_IMPORT_FILE_TITLE);
- pages[1].pszHeaderSubTitle = MAKEINTRESOURCEW(IDS_IMPORT_FILE_SUBTITLE);
- pages[1].lParam = (LPARAM)&data;
-
- pages[2].dwSize = sizeof(pages[2]);
- pages[2].hInstance = hInstance;
- pages[2].u.pszTemplate = MAKEINTRESOURCEW(IDD_IMPORT_STORE);
- pages[2].pfnDlgProc = import_store_dlg_proc;
- pages[2].dwFlags = PSP_USEHEADERTITLE | PSP_USEHEADERSUBTITLE;
- pages[2].pszHeaderTitle = MAKEINTRESOURCEW(IDS_IMPORT_STORE_TITLE);
- pages[2].pszHeaderSubTitle = MAKEINTRESOURCEW(IDS_IMPORT_STORE_SUBTITLE);
-
- pages[3].dwSize = sizeof(pages[3]);
- pages[3].hInstance = hInstance;
- pages[3].u.pszTemplate = MAKEINTRESOURCEW(IDD_IMPORT_FINISH);
- pages[3].pfnDlgProc = import_finish_dlg_proc;
- pages[3].dwFlags = PSP_HIDEHEADER;
+ pages[nPages].dwSize = sizeof(pages[0]);
+ pages[nPages].hInstance = hInstance;
+ pages[nPages].u.pszTemplate = MAKEINTRESOURCEW(IDD_IMPORT_WELCOME);
+ pages[nPages].pfnDlgProc = import_welcome_dlg_proc;
+ pages[nPages].dwFlags = PSP_HIDEHEADER;
+ nPages++;
+
+ if (!pImportSrc ||
+ pImportSrc->dwSubjectChoice == CRYPTUI_WIZ_IMPORT_SUBJECT_FILE)
+ {
+ pages[nPages].dwSize = sizeof(pages[0]);
+ pages[nPages].hInstance = hInstance;
+ pages[nPages].u.pszTemplate = MAKEINTRESOURCEW(IDD_IMPORT_FILE);
+ pages[nPages].pfnDlgProc = import_file_dlg_proc;
+ pages[nPages].dwFlags = PSP_USEHEADERTITLE | PSP_USEHEADERSUBTITLE;
+ pages[nPages].pszHeaderTitle = MAKEINTRESOURCEW(IDS_IMPORT_FILE_TITLE);
+ pages[nPages].pszHeaderSubTitle =
+ MAKEINTRESOURCEW(IDS_IMPORT_FILE_SUBTITLE);
+ pages[nPages].lParam = (LPARAM)&data;
+ nPages++;
+ }
+
+ pages[nPages].dwSize = sizeof(pages[0]);
+ pages[nPages].hInstance = hInstance;
+ pages[nPages].u.pszTemplate = MAKEINTRESOURCEW(IDD_IMPORT_STORE);
+ pages[nPages].pfnDlgProc = import_store_dlg_proc;
+ pages[nPages].dwFlags = PSP_USEHEADERTITLE | PSP_USEHEADERSUBTITLE;
+ pages[nPages].pszHeaderTitle = MAKEINTRESOURCEW(IDS_IMPORT_STORE_TITLE);
+ pages[nPages].pszHeaderSubTitle =
+ MAKEINTRESOURCEW(IDS_IMPORT_STORE_SUBTITLE);
+ nPages++;
+
+ pages[nPages].dwSize = sizeof(pages[0]);
+ pages[nPages].hInstance = hInstance;
+ pages[nPages].u.pszTemplate = MAKEINTRESOURCEW(IDD_IMPORT_FINISH);
+ pages[nPages].pfnDlgProc = import_finish_dlg_proc;
+ pages[nPages].dwFlags = PSP_HIDEHEADER;
+ nPages++;
memset(&hdr, 0, sizeof(hdr));
hdr.dwSize = sizeof(hdr);
@@ -4058,7 +4069,7 @@ static BOOL show_import_ui(DWORD dwFlags, HWND hwndParent,
else
hdr.pszCaption = MAKEINTRESOURCEW(IDS_IMPORT_WIZARD);
hdr.u3.ppsp = pages;
- hdr.nPages = 4;
+ hdr.nPages = nPages;
PropertySheetW(&hdr);
if (data.freeSource &&
data.importSrc.dwSubjectChoice == CRYPTUI_WIZ_IMPORT_SUBJECT_CERT_STORE)
More information about the wine-cvs
mailing list