Commit bb310d54 authored by Stefan Siebert's avatar Stefan Siebert Committed by Alexandre Julliard

comdlg32: GetOpenFileNameW - Create unicode windows.

parent 084458bc
...@@ -261,7 +261,7 @@ static BOOL WINAPI GetFileName95(FileOpenDlgInfos *fodInfos) ...@@ -261,7 +261,7 @@ static BOOL WINAPI GetFileName95(FileOpenDlgInfos *fodInfos)
/* Create the dialog from a template */ /* Create the dialog from a template */
if(!(hRes = FindResourceA(COMDLG32_hInstance,MAKEINTRESOURCEA(NEWFILEOPENORD),(LPSTR)RT_DIALOG))) if(!(hRes = FindResourceW(COMDLG32_hInstance,MAKEINTRESOURCEW(NEWFILEOPENORD),(LPCWSTR)RT_DIALOG)))
{ {
COMDLG32_SetCommDlgExtendedError(CDERR_FINDRESFAILURE); COMDLG32_SetCommDlgExtendedError(CDERR_FINDRESFAILURE);
return FALSE; return FALSE;
...@@ -285,11 +285,18 @@ static BOOL WINAPI GetFileName95(FileOpenDlgInfos *fodInfos) ...@@ -285,11 +285,18 @@ static BOOL WINAPI GetFileName95(FileOpenDlgInfos *fodInfos)
/* Some shell namespace extensions depend on COM being initialized. */ /* Some shell namespace extensions depend on COM being initialized. */
hr = OleInitialize(NULL); hr = OleInitialize(NULL);
lRes = DialogBoxIndirectParamA(COMDLG32_hInstance, if (fodInfos->unicode)
(LPDLGTEMPLATEA) template, lRes = DialogBoxIndirectParamW(COMDLG32_hInstance,
fodInfos->ofnInfos->hwndOwner, template,
FileOpenDlgProc95, fodInfos->ofnInfos->hwndOwner,
(LPARAM) fodInfos); FileOpenDlgProc95,
(LPARAM) fodInfos);
else
lRes = DialogBoxIndirectParamA(COMDLG32_hInstance,
(LPDLGTEMPLATEA) template,
fodInfos->ofnInfos->hwndOwner,
FileOpenDlgProc95,
(LPARAM) fodInfos);
if (SUCCEEDED(hr)) if (SUCCEEDED(hr))
OleUninitialize(); OleUninitialize();
...@@ -771,9 +778,14 @@ static HWND CreateTemplateDialog(FileOpenDlgInfos *fodInfos, HWND hwnd) ...@@ -771,9 +778,14 @@ static HWND CreateTemplateDialog(FileOpenDlgInfos *fodInfos, HWND hwnd)
return NULL; return NULL;
} }
} }
hChildDlg = CreateDialogIndirectParamA(hinst, template, hwnd, if (fodInfos->unicode)
IsHooked(fodInfos) ? (DLGPROC)fodInfos->ofnInfos->lpfnHook : FileOpenDlgProcUserTemplate, hChildDlg = CreateDialogIndirectParamW(hinst, template, hwnd,
(LPARAM)fodInfos->ofnInfos); IsHooked(fodInfos) ? (DLGPROC)fodInfos->ofnInfos->lpfnHook : FileOpenDlgProcUserTemplate,
(LPARAM)fodInfos->ofnInfos);
else
hChildDlg = CreateDialogIndirectParamA(hinst, template, hwnd,
IsHooked(fodInfos) ? (DLGPROC)fodInfos->ofnInfos->lpfnHook : FileOpenDlgProcUserTemplate,
(LPARAM)fodInfos->ofnInfos);
if(hChildDlg) if(hChildDlg)
{ {
ShowWindow(hChildDlg,SW_SHOW); ShowWindow(hChildDlg,SW_SHOW);
...@@ -1197,11 +1209,18 @@ static LRESULT FILEDLG95_InitControls(HWND hwnd) ...@@ -1197,11 +1209,18 @@ static LRESULT FILEDLG95_InitControls(HWND hwnd)
rectTB.left = rectlook.right; rectTB.left = rectlook.right;
rectTB.top = rectlook.top-1; rectTB.top = rectlook.top-1;
fodInfos->DlgInfos.hwndTB = CreateWindowExA(0, TOOLBARCLASSNAMEA, NULL, if (fodInfos->unicode)
WS_CHILD | WS_GROUP | WS_VISIBLE | WS_CLIPSIBLINGS | TBSTYLE_TOOLTIPS | CCS_NODIVIDER | CCS_NORESIZE, fodInfos->DlgInfos.hwndTB = CreateWindowExW(0, TOOLBARCLASSNAMEW, NULL,
rectTB.left, rectTB.top, WS_CHILD | WS_GROUP | WS_VISIBLE | WS_CLIPSIBLINGS | TBSTYLE_TOOLTIPS | CCS_NODIVIDER | CCS_NORESIZE,
rectTB.right - rectTB.left, rectTB.bottom - rectTB.top, rectTB.left, rectTB.top,
hwnd, (HMENU)IDC_TOOLBAR, COMDLG32_hInstance, NULL); rectTB.right - rectTB.left, rectTB.bottom - rectTB.top,
hwnd, (HMENU)IDC_TOOLBAR, COMDLG32_hInstance, NULL);
else
fodInfos->DlgInfos.hwndTB = CreateWindowExA(0, TOOLBARCLASSNAMEA, NULL,
WS_CHILD | WS_GROUP | WS_VISIBLE | WS_CLIPSIBLINGS | TBSTYLE_TOOLTIPS | CCS_NODIVIDER | CCS_NORESIZE,
rectTB.left, rectTB.top,
rectTB.right - rectTB.left, rectTB.bottom - rectTB.top,
hwnd, (HMENU)IDC_TOOLBAR, COMDLG32_hInstance, NULL);
SendMessageA(fodInfos->DlgInfos.hwndTB, TB_BUTTONSTRUCTSIZE, (WPARAM) sizeof(TBBUTTON), 0); SendMessageA(fodInfos->DlgInfos.hwndTB, TB_BUTTONSTRUCTSIZE, (WPARAM) sizeof(TBBUTTON), 0);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment