[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-commits
Subject:    [kdepim] /: Fix loading configured Grantlee header themes
From:       Dan_Vrátil <dvratil () redhat ! com>
Date:       2015-10-14 13:00:11
Message-ID: E1ZmLf9-0000nY-Bu () scm ! kde ! org
[Download RAW message or body]

Git commit 783d0c4670fcdf56080641a8a8d7165f76ce63f5 by Dan Vrátil.
Committed on 14/10/2015 at 12:58.
Pushed by dvratil into branch 'master'.

Fix loading configured Grantlee header themes

Now that we don't have fixed settings groups for theme types, we can no longer
use GrantleeTheme::GlobalSettings and instead have to work with the config
more directly. The handling of loading configured theme is now encapsulated in
ThemeManager and GlobalSettings has been removed as it's of no use anymore.

M  +0    -4    grantleetheme/src/CMakeLists.txt
D  +0    -8    grantleetheme/src/globalsettings_grantleetheme.kcfgc
D  +0    -18   grantleetheme/src/grantleetheme.kcfg
M  +21   -6    grantleetheme/src/grantleethememanager.cpp
M  +3    -0    grantleetheme/src/grantleethememanager.h
M  +1    -2    kaddressbook/mainwidget.cpp
M  +2    -2    kaddressbookgrantlee/src/widget/grantleecontactviewer.cpp
M  +2    -3    messageviewer/src/header/grantleeheaderstyleplugin/grantleeheaderstyleinterface.cpp


http://commits.kde.org/kdepim/783d0c4670fcdf56080641a8a8d7165f76ce63f5

diff --git a/grantleetheme/src/CMakeLists.txt b/grantleetheme/src/CMakeLists.txt
index 89b65bd..afd6665 100644
--- a/grantleetheme/src/CMakeLists.txt
+++ b/grantleetheme/src/CMakeLists.txt
@@ -12,10 +12,6 @@ set(libgrantleetheme_SRCS
 
 configure_file(config-grantleetheme.h.cmake \
${CMAKE_CURRENT_BINARY_DIR}/config-grantleetheme.h)  
-kconfig_add_kcfg_files(libgrantleetheme_SRCS
-  globalsettings_grantleetheme.kcfgc
-)
-
 ecm_qt_declare_logging_category(libgrantleetheme_SRCS HEADER grantleetheme_debug.h \
IDENTIFIER GRANTLEETHEME_LOG CATEGORY_NAME log_grantleetheme)  
 add_library(KF5GrantleeTheme ${libgrantleetheme_SRCS})
diff --git a/grantleetheme/src/globalsettings_grantleetheme.kcfgc \
b/grantleetheme/src/globalsettings_grantleetheme.kcfgc deleted file mode 100644
index 534d9f2..0000000
--- a/grantleetheme/src/globalsettings_grantleetheme.kcfgc
+++ /dev/null
@@ -1,8 +0,0 @@
-File=grantleetheme.kcfg
-ClassName=GrantleeSettings
-NameSpace=GrantleeTheme
-Visibility=GRANTLEETHEME_EXPORT
-Mutators=true
-Singleton=true
-ItemAccessors=true
-IncludeFiles=grantleetheme_export.h
diff --git a/grantleetheme/src/grantleetheme.kcfg \
b/grantleetheme/src/grantleetheme.kcfg deleted file mode 100644
index 485009f..0000000
--- a/grantleetheme/src/grantleetheme.kcfg
+++ /dev/null
@@ -1,18 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<kcfg xmlns="http://www.kde.org/standards/kcfg/1.0"
-xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-xsi:schemaLocation="http://www.kde.org/standards/kcfg/1.0 \
                http://www.kde.org/standards/kcfg/1.0/kcfg.xsd">
-
-   <group name="GrantleeTheme">
-    <entry name="grantleeMailThemeName" type="String" \
                key="grantlee-mail-theme-name">
-      <label></label>
-      <default></default>
-    </entry>
-    <entry name="grantleeAddressBookThemeName" type="String" \
                key="grantlee-addressbook-theme-name">
-      <label></label>
-      <default></default>
-    </entry>
-  </group>
-
-</kcfg>
-
diff --git a/grantleetheme/src/grantleethememanager.cpp \
b/grantleetheme/src/grantleethememanager.cpp index 99e97fd..7cb3a92 100644
--- a/grantleetheme/src/grantleethememanager.cpp
+++ b/grantleetheme/src/grantleethememanager.cpp
@@ -17,15 +17,15 @@
 
 #include "grantleethememanager.h"
 #include "grantleetheme_p.h"
-#include "globalsettings_grantleetheme.h"
 
 #include <KDirWatch>
+#include <KSharedConfig>
 #include <KConfigGroup>
-#include <KConfig>
 #include <KActionCollection>
 #include <KToggleAction>
 #include <KLocalizedString>
 #include <KNS3/DownloadDialog>
+#include <KCoreAddons/kaboutdata.h>
 #include <KActionMenu>
 #include <QDebug>
 #include <QAction>
@@ -68,7 +68,7 @@ public:
 
         // Migrate the old configuration format that only support mail and \
addressbook  // theming to the new generic format
-        KSharedConfig::Ptr config = GrantleeSettings::self()->sharedConfig();
+        KSharedConfig::Ptr config = KSharedConfig::openConfig();
         if (config->hasGroup(QStringLiteral("GrantleeTheme"))) {
             const KConfigGroup group = \
                config->group(QStringLiteral("GrantleeTheme"));
             const QString mailTheme = \
group.readEntry(QStringLiteral("grantleeMailThemeName")); @@ -212,9 +212,10 @@ \
public:  void selectTheme(KToggleAction *act)
     {
         if (act) {
-            KConfigGroup group = \
GrantleeSettings::self()->sharedConfig()->group(applicationType); +            \
KSharedConfig::Ptr config = KSharedConfig::openConfig(); +            KConfigGroup \
                group = config->group(applicationType);
             group.writeEntry(QStringLiteral("themeName"), act->data().toString());
-            GrantleeSettings::self()->save();
+            config->sync();
         }
     }
 
@@ -229,7 +230,8 @@ public:
 
     KToggleAction *actionForTheme()
     {
-        const KConfigGroup group = \
GrantleeSettings::self()->sharedConfig()->group(applicationType); +        const \
KSharedConfig::Ptr config = KSharedConfig::openConfig(); +        const KConfigGroup \
                group = config->group(applicationType);
         const QString themeName = group.readEntry(QStringLiteral("themeName"), \
QStringLiteral("default"));  
         if (themeName.isEmpty()) {
@@ -376,4 +378,17 @@ GrantleeTheme::Theme ThemeManager::loadTheme(const QString \
&themePath,  return theme;
 }
 
+QString ThemeManager::configuredThemeName() const
+{
+    return configuredThemeName(d->applicationType);
+}
+
+QString ThemeManager::configuredThemeName(const QString &themeType)
+{
+    const KSharedConfig::Ptr config = KSharedConfig::openConfig();
+    const KConfigGroup grp = config->group(themeType);
+    return grp.readEntry(QStringLiteral("themeName"));
+}
+
+
 #include "moc_grantleethememanager.cpp"
diff --git a/grantleetheme/src/grantleethememanager.h \
b/grantleetheme/src/grantleethememanager.h index 8f2ab7e..4af8069 100644
--- a/grantleetheme/src/grantleethememanager.h
+++ b/grantleetheme/src/grantleethememanager.h
@@ -54,6 +54,9 @@ public:
 
     void setDownloadNewStuffConfigFile(const QString &configFileName);
 
+    QString configuredThemeName() const;
+    static QString configuredThemeName(const QString &themeType);
+
     static QString pathFromThemes(const QString &path, const QString &themeName,
                                   const QString &defaultDesktopFilename);
     static GrantleeTheme::Theme loadTheme(const QString &themePath,
diff --git a/kaddressbook/mainwidget.cpp b/kaddressbook/mainwidget.cpp
index cc37519..77882e4 100644
--- a/kaddressbook/mainwidget.cpp
+++ b/kaddressbook/mainwidget.cpp
@@ -41,7 +41,6 @@
 #include "KaddressbookGrantlee/GrantleeContactFormatter"
 #include "KaddressbookGrantlee/GrantleeContactGroupFormatter"
 #include "grantleetheme/grantleethememanager.h"
-#include "globalsettings_grantleetheme.h"
 
 #include "Libkdepim/UiStateSaver"
 
@@ -970,7 +969,7 @@ void MainWidget::restoreSplitterStates()
 
 void MainWidget::initGrantleeThemeName()
 {
-    QString themeName = \
GrantleeTheme::GrantleeSettings::self()->grantleeAddressBookThemeName(); +    QString \
themeName = mGrantleeThemeManager->configuredThemeName();  if (themeName.isEmpty()) {
         themeName = QStringLiteral("default");
     }
diff --git a/kaddressbookgrantlee/src/widget/grantleecontactviewer.cpp \
b/kaddressbookgrantlee/src/widget/grantleecontactviewer.cpp index 183dc8e..0eaedea \
                100644
--- a/kaddressbookgrantlee/src/widget/grantleecontactviewer.cpp
+++ b/kaddressbookgrantlee/src/widget/grantleecontactviewer.cpp
@@ -17,8 +17,8 @@
 
 #include "grantleecontactviewer.h"
 #include "KaddressbookGrantlee/GrantleeContactFormatter"
-#include <globalsettings_grantleetheme.h>
 #include <KSharedConfig>
+
 #include <grantleetheme/grantleethememanager.h>
 
 using namespace KAddressBookGrantlee;
@@ -37,7 +37,7 @@ GrantleeContactViewer::~GrantleeContactViewer()
 
 QString GrantleeContactViewer::kaddressBookAbsoluteThemePath()
 {
-    QString themeName = \
GrantleeTheme::GrantleeSettings::self()->grantleeAddressBookThemeName(); +    QString \
themeName = GrantleeTheme::ThemeManager::configuredThemeName(QStringLiteral("addressbook"));
  if (themeName.isEmpty()) {
         themeName = QStringLiteral("default");
     }
diff --git a/messageviewer/src/header/grantleeheaderstyleplugin/grantleeheaderstyleinterface.cpp \
b/messageviewer/src/header/grantleeheaderstyleplugin/grantleeheaderstyleinterface.cpp \
                index de1ccab..816195d 100644
--- a/messageviewer/src/header/grantleeheaderstyleplugin/grantleeheaderstyleinterface.cpp
                
+++ b/messageviewer/src/header/grantleeheaderstyleplugin/grantleeheaderstyleinterface.cpp
 @@ -18,7 +18,6 @@
 #include "grantleeheaderstyleinterface.h"
 #include "header/headerstyleplugin.h"
 #include "header/headerstyle.h"
-#include "globalsettings_grantleetheme.h"
 #include <grantleetheme/grantleethememanager.h>
 #include <KToggleAction>
 
@@ -46,7 +45,7 @@ void GrantleeHeaderStyleInterface::createAction(KActionMenu *menu, \
QActionGroup  
     mThemeManager->setActionGroup(actionGroup);
     mThemeManager->setThemeMenu(menu);
-    const QString themeName = \
GrantleeTheme::GrantleeSettings::self()->grantleeMailThemeName(); +    const QString \
                themeName = mThemeManager->configuredThemeName();
     mHeaderStylePlugin->headerStyle()->setTheme(mThemeManager->theme(themeName));
     addActionToMenu(menu, actionGroup);
 }
@@ -61,7 +60,7 @@ void GrantleeHeaderStyleInterface::activateAction()
 
 void GrantleeHeaderStyleInterface::slotGrantleeHeaders()
 {
-    const QString themeName = \
GrantleeTheme::GrantleeSettings::self()->grantleeMailThemeName(); +    const QString \
                themeName = mThemeManager->configuredThemeName();
     mHeaderStylePlugin->headerStyle()->setTheme(mThemeManager->theme(themeName));
     slotStyleChanged();
 }


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic