From dbe8efc5060a737bfa999b61e8d1c3174675945f Mon Sep 17 00:00:00 2001 From: Mathieu Doucet <doucetm@ornl.gov> Date: Wed, 28 Sep 2011 14:14:08 +0000 Subject: [PATCH] Pick proper default for default save directory Re #2901 --- Code/Mantid/Framework/Kernel/src/ConfigService.cpp | 9 +++++++-- Code/Mantid/MantidQt/API/src/ManageUserDirectories.cpp | 4 +++- 2 files changed, 10 insertions(+), 3 deletions(-) diff --git a/Code/Mantid/Framework/Kernel/src/ConfigService.cpp b/Code/Mantid/Framework/Kernel/src/ConfigService.cpp index cb63f219f42..d6fabadf095 100644 --- a/Code/Mantid/Framework/Kernel/src/ConfigService.cpp +++ b/Code/Mantid/Framework/Kernel/src/ConfigService.cpp @@ -175,7 +175,6 @@ ConfigServiceImpl::ConfigServiceImpl() : m_ConfigPaths.insert(std::make_pair("pythonscripts.directory", true)); m_ConfigPaths.insert(std::make_pair("pythonscripts.directories", true)); m_ConfigPaths.insert(std::make_pair("ManagedWorkspace.FilePath", true)); - m_ConfigPaths.insert(std::make_pair("defaultsave.directory", false)); m_ConfigPaths.insert(std::make_pair("datasearch.directories", true)); m_ConfigPaths.insert(std::make_pair("pythonalgorithms.directories", true)); m_ConfigPaths.insert(std::make_pair("icatDownload.directory", true)); @@ -662,8 +661,14 @@ std::string ConfigServiceImpl::defaultConfig() const void ConfigServiceImpl::updateConfig(const std::string& filename, const bool append, const bool update_caches) { - //std::cout << "Properties file loaded: " << filename << std::endl; loadConfig(filename, append); + + //Ensure that the default save directory makes sense + std::string save_dir = getString("defaultsave.directory"); + if (Poco::trimInPlace(save_dir).size() == 0) { + setString("defaultsave.directory", Poco::Path::home()); + } + if (update_caches) { // Only configure logging once diff --git a/Code/Mantid/MantidQt/API/src/ManageUserDirectories.cpp b/Code/Mantid/MantidQt/API/src/ManageUserDirectories.cpp index 7c239e63465..6fd4e74b470 100644 --- a/Code/Mantid/MantidQt/API/src/ManageUserDirectories.cpp +++ b/Code/Mantid/MantidQt/API/src/ManageUserDirectories.cpp @@ -215,7 +215,9 @@ void ManageUserDirectories::moveDown() void ManageUserDirectories::selectSaveDir() { QSettings settings; - QString lastDirectory = settings.value("ManageUserSettings/last_directory", "").toString(); + QString lastDirectory = m_uiForm.leDefaultSave->text(); + if ( lastDirectory.trimmed() == "" ) + lastDirectory = settings.value("ManageUserSettings/last_directory", "").toString(); QString newDir = QFileDialog::getExistingDirectory(this, tr("Select New Default Save Directory"), -- GitLab