summaryrefslogtreecommitdiff
path: root/src/settings.cpp
diff options
context:
space:
mode:
authorisanae <14251494+isanae@users.noreply.github.com>2019-08-03 03:28:33 -0400
committerisanae <14251494+isanae@users.noreply.github.com>2019-08-04 06:09:48 -0400
commitcc3a16c6e9d58ed68a31be52f9fe2ef1d514ff5f (patch)
tree375f33d361babf9ebecf291d5592af62057906b5 /src/settings.cpp
parent7eed0450e84cc465b0d163a64ebb4d410db688c4 (diff)
moved geometry handling to mod info and overwrite dialogs
Diffstat (limited to 'src/settings.cpp')
-rw-r--r--src/settings.cpp66
1 files changed, 66 insertions, 0 deletions
diff --git a/src/settings.cpp b/src/settings.cpp
index 1f5abb2a..73595ac9 100644
--- a/src/settings.cpp
+++ b/src/settings.cpp
@@ -120,6 +120,16 @@ void Settings::processUpdates(
m_Settings.endGroup();
}
+ if (lastVersion < QVersionNumber(2, 2, 1)) {
+ m_Settings.remove("mod_info_tabs");
+ m_Settings.remove("mod_info_conflict_expanders");
+ m_Settings.remove("mod_info_conflicts");
+ m_Settings.remove("mod_info_advanced_conflicts");
+ m_Settings.remove("mod_info_conflicts_overwrite");
+ m_Settings.remove("mod_info_conflicts_noconflict");
+ m_Settings.remove("mod_info_conflicts_overwritten");
+ }
+
if (lastVersion < QVersionNumber(2, 2, 2)) {
// log splitter is gone, it's a dock now
m_Settings.remove("log_split");
@@ -876,6 +886,62 @@ void GeometrySettings::setProfilesDialog(const QByteArray& v)
m_Settings.setValue("geometry/ProfilesDialog", v);
}
+std::optional<QByteArray> GeometrySettings::getOverwriteDialog() const
+{
+ return getOptional<QByteArray>(m_Settings, "geometry/__overwriteDialog");
+}
+
+void GeometrySettings::setOverwriteDialog(const QByteArray& v)
+{
+ m_Settings.setValue("geometry/__overwriteDialog", v);
+}
+
+std::optional<QByteArray> GeometrySettings::getModInfoDialog() const
+{
+ return getOptional<QByteArray>(m_Settings, "geometry/ModInfoDialog");
+}
+
+void GeometrySettings::setModInfoDialog(const QByteArray& v) const
+{
+ m_Settings.setValue("geometry/ModInfoDialog", v);
+}
+
+QStringList GeometrySettings::getModInfoTabOrder() const
+{
+ QStringList v;
+
+ if (m_Settings.contains("mod_info_tabs")) {
+ // old byte array from 2.2.0
+ QDataStream stream(m_Settings.value("mod_info_tabs").toByteArray());
+
+ int count = 0;
+ stream >> count;
+
+ for (int i=0; i<count; ++i) {
+ QString s;
+ stream >> s;
+ v.push_back(s);
+ }
+ } else {
+ // string list since 2.2.1
+ QString string = m_Settings.value("mod_info_tab_order").toString();
+ QTextStream stream(&string);
+
+ while (!stream.atEnd()) {
+ QString s;
+ stream >> s;
+ v.push_back(s);
+ }
+ }
+
+ return v;
+}
+
+void GeometrySettings::setModInfoTabOrder(const QString& names)
+{
+ m_Settings.setValue("mod_info_tab_order", names);
+}
+
std::optional<int> GeometrySettings::getMainWindowMonitor() const
{
return getOptional<int>(m_Settings, "window_monitor");