aboutsummaryrefslogtreecommitdiff
path: root/src-qt5/core/libLumina/LDesktopUtils.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src-qt5/core/libLumina/LDesktopUtils.cpp')
-rw-r--r--src-qt5/core/libLumina/LDesktopUtils.cpp17
1 files changed, 17 insertions, 0 deletions
diff --git a/src-qt5/core/libLumina/LDesktopUtils.cpp b/src-qt5/core/libLumina/LDesktopUtils.cpp
index a46f03d0..d76c68e9 100644
--- a/src-qt5/core/libLumina/LDesktopUtils.cpp
+++ b/src-qt5/core/libLumina/LDesktopUtils.cpp
@@ -9,6 +9,7 @@
#include <QDesktopWidget>
#include <QApplication>
#include <QScreen>
+#include <QSettings>
#include "LuminaThemes.h"
@@ -526,3 +527,19 @@ int LDesktopUtils::VersionStringToNumber(QString version){
//NOTE: This format allows numbers to be anywhere from 0->999 without conflict
return (maj*1000000 + mid*1000 + min);
}
+
+void LDesktopUtils::MigrateDesktopSettings(QSettings *settings, QString fromID, QString toID){
+ //desktop-ID
+ QStringList keys = settings->allKeys();
+ QStringList filter = keys.filter("desktop-"+fromID+"/");
+ for(int i=0; i<filter.length(); i++){
+ settings->setValue("desktop-"+toID+"/"+filter[i].section("/",1,-1), settings->value(filter[i]));
+ settings->remove(filter[i]);
+ }
+ //panel_ID.[number]
+ filter = keys.filter("panel_"+fromID+".");
+ for(int i=0; i<filter.length(); i++){
+ settings->setValue("panel_"+toID+"."+ filter[i].section("/",0,0).section(".",-1)+"/"+filter[i].section("/",1,-1), settings->value(filter[i]));
+ settings->remove(filter[i]);
+ }
+}
bgstack15