Skip to content

Commit

Permalink
[Window] Dialog::SaveFile のデフォルトファイル名 #1199
Browse files Browse the repository at this point in the history
  • Loading branch information
Reputeless committed Jun 30, 2024
1 parent 50c5a9c commit 7be009e
Show file tree
Hide file tree
Showing 5 changed files with 11 additions and 5 deletions.
3 changes: 2 additions & 1 deletion Siv3D/include/Siv3D/Dialog.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -44,10 +44,11 @@ namespace s3d
/// @param filters ダイアログに表示するファイルの拡張子のフィルタ
/// @param defaultDirectory ダイアログで表示するデフォルトディレクトリ。空の場合は OS のデフォルト
/// @param title ダイアログのタイトル。空の場合は OS のデフォルト
/// @param defaultFileName ダイアログに表示するデフォルトのファイル名
/// @remark この関数はファイルの保存は行いません。戻り値をファイル保存系の関数と組み合わせて使ってください。
/// @return 選択されたファイルパス。選択されなかった場合は none
[[nodiscard]]
Optional<FilePath> SaveFile(const Array<FileFilter>& filters = {}, FilePathView defaultDirectory = U"", StringView title = U"");
Optional<FilePath> SaveFile(const Array<FileFilter>& filters = {}, FilePathView defaultDirectory = U"", StringView title = U"", StringView defaultFileName = U"");

/// @brief フォルダ選択ダイアログを表示し、選択されたフォルダを返します。
/// @param defaultDirectory ダイアログで表示するデフォルトディレクトリ。空の場合は OS のデフォルト
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -96,7 +96,7 @@ namespace s3d
}
}

Optional<FilePath> SaveFile(const Array<FileFilter>& filters, const FilePathView defaultPath, const StringView)
Optional<FilePath> SaveFile(const Array<FileFilter>& filters, const FilePathView defaultPath, const StringView, const StringView)
{
if (not g_dialogInitialized)
{
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -71,7 +71,7 @@ namespace s3d
}
}

Optional<FilePath> SaveFile(const Array<FileFilter>& filters, const FilePathView defaultPath, const StringView title)
Optional<FilePath> SaveFile(const Array<FileFilter>& filters, const FilePathView defaultPath, const StringView title, const StringView defaultFileName)
{
// [Siv3D Web NoSupport]
return (none);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -251,7 +251,7 @@ namespace s3d
}
}

Optional<FilePath> SaveFile(const Array<FileFilter>& filters, const FilePathView defaultPath, const StringView title)
Optional<FilePath> SaveFile(const Array<FileFilter>& filters, const FilePathView defaultPath, const StringView title, const StringView defaultFileName)
{
ComPtr<IFileSaveDialog> fileSaveDialog;

Expand Down Expand Up @@ -279,6 +279,11 @@ namespace s3d
// Append file extension
fileSaveDialog->SetDefaultExtension(L"");

if (defaultFileName)
{
fileSaveDialog->SetFileName(defaultFileName.toWstr().c_str());
}

if (HRESULT result = fileSaveDialog->Show(static_cast<HWND>(SIV3D_ENGINE(Window)->getHandle()));
SUCCEEDED(result))
{
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -155,7 +155,7 @@ static bool SetDefaultPath(NSSavePanel* dialog, const FilePathView defaultPath)
}
}

Optional<FilePath> SaveFile(const Array<FileFilter>& filters, const FilePathView defaultPath, const StringView)
Optional<FilePath> SaveFile(const Array<FileFilter>& filters, const FilePathView defaultPath, const StringView, const StringView)
{
@autoreleasepool
{
Expand Down

0 comments on commit 7be009e

Please sign in to comment.