diff --git a/extern/igfd/ImGuiFileDialog.cpp b/extern/igfd/ImGuiFileDialog.cpp index 63ae3b879..328bccb31 100644 --- a/extern/igfd/ImGuiFileDialog.cpp +++ b/extern/igfd/ImGuiFileDialog.cpp @@ -3993,7 +3993,13 @@ namespace IGFD } else { fdi.SelectFileName(prFileDialogInternal, vInfos); if (prFileDialogInternal.puDLGselFun!=NULL) { - prFileDialogInternal.puDLGselFun(GetFilePathName().c_str()); + std::string argPath; + for (auto& i: GetSelection()) { + argPath=i.second; + } + if (!argPath.empty()) { + prFileDialogInternal.puDLGselFun(argPath.c_str()); + } } } } diff --git a/src/gui/gui.cpp b/src/gui/gui.cpp index fc2de66c5..3a1931b65 100644 --- a/src/gui/gui.cpp +++ b/src/gui/gui.cpp @@ -1759,7 +1759,14 @@ void FurnaceGUI::openFileDialog(FurnaceGUIFileDialogs type) { "all files", ".*"}, "compatible files{.fur,.dmf,.mod},another option{.wav,.ttf},.*", workingDirTest, - dpiScale + dpiScale, + [](const char* path) { + if (path!=NULL) { + logI("Callback Result: %s",path); + } else { + logI("Callback Result: NULL"); + } + } ); break; case GUI_FILE_TEST_OPEN_MULTI: @@ -1772,7 +1779,13 @@ void FurnaceGUI::openFileDialog(FurnaceGUIFileDialogs type) { "compatible files{.fur,.dmf,.mod},another option{.wav,.ttf},.*", workingDirTest, dpiScale, - NULL, + [](const char* path) { + if (path!=NULL) { + logI("Callback Result: %s",path); + } else { + logI("Callback Result: NULL"); + } + }, true ); break;