Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/supermerill/SuperSlicer.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEnrico Turri <enricoturri@seznam.cz>2019-07-12 16:36:01 +0300
committerEnrico Turri <enricoturri@seznam.cz>2019-07-12 16:36:01 +0300
commitde88db59180822ddffd3b94bbd7b370a4971f196 (patch)
tree2c27d94c82142ad13ebaa6382d6a00a99601450e /src/slic3r/GUI/AppConfig.cpp
parentcc70c8dff9c6b9395845caba0542954276081613 (diff)
#2616 - Added Recent projects item to File menu
Diffstat (limited to 'src/slic3r/GUI/AppConfig.cpp')
-rw-r--r--src/slic3r/GUI/AppConfig.cpp27
1 files changed, 27 insertions, 0 deletions
diff --git a/src/slic3r/GUI/AppConfig.cpp b/src/slic3r/GUI/AppConfig.cpp
index 3b6210058..dfdc79677 100644
--- a/src/slic3r/GUI/AppConfig.cpp
+++ b/src/slic3r/GUI/AppConfig.cpp
@@ -229,6 +229,33 @@ std::string AppConfig::get_last_dir() const
return std::string();
}
+std::vector<std::string> AppConfig::get_recent_projects() const
+{
+ std::vector<std::string> ret;
+ const auto it = m_storage.find("recent_projects");
+ if (it != m_storage.end())
+ {
+ for (const std::map<std::string, std::string>::value_type& item : it->second)
+ {
+ ret.push_back(item.second);
+ }
+ }
+ return ret;
+}
+
+void AppConfig::set_recent_projects(const std::vector<std::string>& recent_projects)
+{
+ auto it = m_storage.find("recent_projects");
+ if (it == m_storage.end())
+ it = m_storage.insert(std::map<std::string, std::map<std::string, std::string>>::value_type("recent_projects", std::map<std::string, std::string>())).first;
+
+ it->second.clear();
+ for (unsigned int i = 0; i < (unsigned int)recent_projects.size(); ++i)
+ {
+ it->second[std::to_string(i + 1)] = recent_projects[i];
+ }
+}
+
void AppConfig::update_config_dir(const std::string &dir)
{
this->set("recent", "config_directory", dir);