diff --git a/doomsday/sdk/libappfw/src/widgets/directoryarraywidget.cpp b/doomsday/sdk/libappfw/src/widgets/directoryarraywidget.cpp index c331040272..bb76c1418c 100644 --- a/doomsday/sdk/libappfw/src/widgets/directoryarraywidget.cpp +++ b/doomsday/sdk/libappfw/src/widgets/directoryarraywidget.cpp @@ -20,12 +20,15 @@ #include "de/BaseGuiApp" #include "de/BaseWindow" +#include #include #include #include namespace de { +static String const CFG_LAST_FOLDER("resource.latestDirectory"); + DENG2_PIMPL_NOREF(DirectoryArrayWidget) {}; @@ -39,16 +42,17 @@ DirectoryArrayWidget::DirectoryArrayWidget(Variable &variable, String const &nam // Use a native dialog to select the IWAD folder. DENG2_BASE_GUI_APP->beginNativeUIMode(); - QFileDialog dlg(nullptr, - tr("Select Folder"), - ".", ""); + QFileDialog dlg(nullptr, tr("Select Folder"), + Config::get().gets(CFG_LAST_FOLDER, "."), ""); dlg.setFileMode(QFileDialog::Directory); dlg.setReadOnly(true); //dlg.setNameFilter("*.wad"); dlg.setLabelText(QFileDialog::Accept, tr("Select")); if (dlg.exec()) { - elementsMenu().items() << makeItem(TextValue(dlg.selectedFiles().at(0))); + String dir = dlg.selectedFiles().at(0); + Config::get().set(CFG_LAST_FOLDER, dir.fileNamePath()); + elementsMenu().items() << makeItem(TextValue(dir)); setVariableFromWidget(); }