win: Accept parent window in ShowOpenDialog.

This commit is contained in:
Cheng Zhao 2013-09-24 10:13:43 +08:00
parent ac76017702
commit 53c6d51d56

View file

@ -162,7 +162,8 @@ class FileDialog {
SetDefaultFolder(default_path);
}
bool Show(HWND window) {
bool Show(atom::NativeWindow* parent_window) {
HWND window = parent_window ? parent_window->GetNativeWindow() : NULL;
return dialog_->DoModal(window) == IDOK;
}
@ -198,7 +199,8 @@ class FileDialog {
} // namespace
bool ShowOpenDialog(const std::string& title,
bool ShowOpenDialog(atom::NativeWindow* parent_window,
const std::string& title,
const base::FilePath& default_path,
int properties,
std::vector<base::FilePath>* paths) {
@ -214,7 +216,7 @@ bool ShowOpenDialog(const std::string& title,
options,
std::vector<std::wstring>(),
std::vector<std::wstring>());
if (!open_dialog.Show(::GetActiveWindow()))
if (!open_dialog.Show(parent_window))
return false;
ATL::CComPtr<IShellItemArray> items;
@ -247,7 +249,7 @@ bool ShowOpenDialog(const std::string& title,
return true;
}
bool ShowSaveDialog(atom::NativeWindow* window,
bool ShowSaveDialog(atom::NativeWindow* parent_window,
const std::string& title,
const base::FilePath& default_path,
base::FilePath* path) {
@ -263,7 +265,7 @@ bool ShowSaveDialog(atom::NativeWindow* window,
FOS_FORCEFILESYSTEM | FOS_PATHMUSTEXIST | FOS_OVERWRITEPROMPT,
file_ext,
std::vector<std::wstring>());
if (!save_dialog.Show(window->GetNativeWindow()))
if (!save_dialog.Show(parent_window))
return false;
wchar_t file_name[MAX_PATH];