diff --git a/effects/blur/CMakeLists.txt b/effects/blur/CMakeLists.txt index 698b25426b..c0ddcf0741 100644 --- a/effects/blur/CMakeLists.txt +++ b/effects/blur/CMakeLists.txt @@ -6,6 +6,8 @@ set( kwin4_effect_builtins_sources ${kwin4_effect_builtins_sources} blur/blur.cpp blur/blurshader.cpp ) +kde4_add_kcfg_files(kwin4_effect_builtins_sources blur/blurconfig.kcfgc) + # .desktop files install( FILES blur/blur.desktop @@ -19,6 +21,8 @@ set( kwin4_effect_builtins_config_sources ${kwin4_effect_builtins_config_sources blur/blur_config.cpp blur/blur_config.ui ) +kde4_add_kcfg_files(kwin4_effect_builtins_config_sources blur/blurconfig.kcfgc) + # .desktop files install( FILES blur/blur_config.desktop diff --git a/effects/blur/blur.cpp b/effects/blur/blur.cpp index d58cd2728b..2b32b3a49c 100644 --- a/effects/blur/blur.cpp +++ b/effects/blur/blur.cpp @@ -20,12 +20,13 @@ #include "blur.h" #include "blurshader.h" +// KConfigSkeleton +#include "blurconfig.h" #include #include #include -#include #include namespace KWin @@ -86,11 +87,11 @@ void BlurEffect::reconfigure(ReconfigureFlags flags) { Q_UNUSED(flags) - KConfigGroup cg = EffectsHandler::effectConfig("Blur"); - int radius = qBound(2, cg.readEntry("BlurRadius", 12), 14); + BlurConfig::self()->readConfig(); + int radius = qBound(2, BlurConfig::blurRadius(), 14); shader->setRadius(radius); - m_shouldCache = cg.readEntry("CacheTexture", true); + m_shouldCache = BlurConfig::cacheTexture(); windows.clear(); diff --git a/effects/blur/blur.kcfg b/effects/blur/blur.kcfg new file mode 100644 index 0000000000..282b175532 --- /dev/null +++ b/effects/blur/blur.kcfg @@ -0,0 +1,15 @@ + + + + + + 12 + + + true + + + diff --git a/effects/blur/blur_config.cpp b/effects/blur/blur_config.cpp index 6d7c41c206..2a11d1a7be 100644 --- a/effects/blur/blur_config.cpp +++ b/effects/blur/blur_config.cpp @@ -18,6 +18,8 @@ */ #include "blur_config.h" +// KConfigSkeleton +#include "blurconfig.h" #include @@ -30,8 +32,7 @@ BlurEffectConfig::BlurEffectConfig(QWidget *parent, const QVariantList &args) : KCModule(EffectFactory::componentData(), parent, args) { ui.setupUi(this); - connect(ui.slider, SIGNAL(valueChanged(int)), SLOT(valueChanged(int))); - connect(ui.checkBox, SIGNAL(stateChanged(int)), SLOT(valueChanged(int))); + addConfig(BlurConfig::self(), this); load(); } @@ -40,40 +41,13 @@ BlurEffectConfig::~BlurEffectConfig() { } -void BlurEffectConfig::load() -{ - KCModule::load(); - KConfigGroup cg = EffectsHandler::effectConfig("Blur"); - ui.slider->setValue(cg.readEntry("BlurRadius", 12) / 2); - ui.checkBox->setChecked(cg.readEntry("CacheTexture", true)); - emit changed(false); -} - void BlurEffectConfig::save() { KCModule::save(); - KConfigGroup cg = EffectsHandler::effectConfig("Blur"); - cg.writeEntry("BlurRadius", ui.slider->value() * 2); - cg.writeEntry("CacheTexture", ui.checkBox->isChecked()); - cg.sync(); - - emit changed(false); EffectsHandler::sendReloadMessage("blur"); } -void BlurEffectConfig::defaults() -{ - emit changed(true); -} - -void BlurEffectConfig::valueChanged(int value) -{ - Q_UNUSED(value) - emit changed(true); -} - } // namespace KWin #include "blur_config.moc" - diff --git a/effects/blur/blur_config.h b/effects/blur/blur_config.h index 6dddd9e404..bc33efc9d3 100644 --- a/effects/blur/blur_config.h +++ b/effects/blur/blur_config.h @@ -35,11 +35,6 @@ public: ~BlurEffectConfig(); void save(); - void load(); - void defaults(); - -private slots: - void valueChanged(int value); private: ::Ui::BlurEffectConfig ui; diff --git a/effects/blur/blur_config.ui b/effects/blur/blur_config.ui index c55f7045ad..9bc3a23986 100644 --- a/effects/blur/blur_config.ui +++ b/effects/blur/blur_config.ui @@ -44,7 +44,7 @@ - + 1 @@ -75,7 +75,7 @@ - + diff --git a/effects/blur/blurconfig.kcfgc b/effects/blur/blurconfig.kcfgc new file mode 100644 index 0000000000..4fb3fe58ed --- /dev/null +++ b/effects/blur/blurconfig.kcfgc @@ -0,0 +1,5 @@ +File=blur.kcfg +ClassName=BlurConfig +NameSpace=KWin +Singleton=true +Mutators=true