Add migration code that removes obsolete style settings
[quassel.git] / src / uisupport / uistyle.cpp
index 72920ba..7482b93 100644 (file)
 #include "uistylesettings.h"
 #include "util.h"
 
 #include "uistylesettings.h"
 #include "util.h"
 
+// FIXME remove with migration code
+#include <QSettings>
+#include "global.h"
+
 UiStyle::UiStyle(const QString &settingsKey) : _settingsKey(settingsKey) {
   // register FormatList if that hasn't happened yet
   // FIXME I don't think this actually avoids double registration... then again... does it hurt?
 UiStyle::UiStyle(const QString &settingsKey) : _settingsKey(settingsKey) {
   // register FormatList if that hasn't happened yet
   // FIXME I don't think this actually avoids double registration... then again... does it hurt?
@@ -32,6 +36,24 @@ UiStyle::UiStyle(const QString &settingsKey) : _settingsKey(settingsKey) {
     Q_ASSERT(QVariant::nameToType("UiStyle::FormatList") != QVariant::Invalid);
   }
 
     Q_ASSERT(QVariant::nameToType("UiStyle::FormatList") != QVariant::Invalid);
   }
 
+  // FIXME remove migration at some point
+  // We remove old settings if we find them, since they conflict
+#ifdef Q_WS_MAC
+  QSettings mys(QCoreApplication::organizationDomain(), Global::clientApplicationName);
+#else
+  QSettings mys(QCoreApplication::organizationName(), Global::clientApplicationName);
+#endif
+  mys.beginGroup("QtUi");
+  if(mys.childGroups().contains("Colors")) {
+    qDebug() << "Removing obsolete UiStyle settings!";
+    mys.endGroup();
+    mys.remove("Ui");
+    mys.remove("QtUiStyle");
+    mys.remove("QtUiStyleNew");
+    mys.remove("QtUi/Colors");
+    mys.sync();
+  }
+
   _defaultFont = QFont("Monospace", QApplication::font().pointSize());
 
   // Default format
   _defaultFont = QFont("Monospace", QApplication::font().pointSize());
 
   // Default format