From ab14a8bac3368fc2c1005bcc33009b65a0c728f2 Mon Sep 17 00:00:00 2001 From: isanae <14251494+isanae@users.noreply.github.com> Date: Sun, 4 Aug 2019 07:51:12 -0400 Subject: moved recent directories to Settings use global cache variable instead of an instance inside a function --- src/settings.cpp | 39 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) (limited to 'src/settings.cpp') diff --git a/src/settings.cpp b/src/settings.cpp index 44aa56ba..cfc5c1d7 100644 --- a/src/settings.cpp +++ b/src/settings.cpp @@ -764,6 +764,45 @@ void Settings::writePluginBlacklist() m_Settings.endArray(); } +std::map Settings::getRecentDirectories() const +{ + std::map map; + + const int size = m_Settings.beginReadArray("recentDirectories"); + + for (int i=0; i& map) +{ + m_Settings.remove("recentDirectories"); + m_Settings.beginWriteArray("recentDirectories"); + + int index = 0; + for (auto&& p : map) { + m_Settings.setArrayIndex(index); + m_Settings.setValue("name", p.first); + m_Settings.setValue("directory", p.second); + + ++index; + } + + m_Settings.endArray(); +} + GeometrySettings& Settings::geometry() { return m_Geometry; -- cgit v1.3.1