svn path=/trunk/KDE/kdebase/workspace/; revision=736226remotes/origin/Plasma/5.0
parent
2a88854a01
commit
f8ec94079b
5 changed files with 167 additions and 0 deletions
@ -0,0 +1,83 @@ |
||||
/*****************************************************************
|
||||
KWin - the KDE window manager |
||||
This file is part of the KDE project. |
||||
|
||||
Copyright (C) 2007 Rivo Laks <rivolaks@hot.ee> |
||||
|
||||
You can Freely distribute this program under the GNU General Public |
||||
License. See the file "COPYING" for the exact licensing terms. |
||||
******************************************************************/ |
||||
|
||||
#include "invert_config.h" |
||||
|
||||
#include <kwineffects.h> |
||||
|
||||
#include <klocale.h> |
||||
#include <kdebug.h> |
||||
#include <KActionCollection> |
||||
#include <kaction.h> |
||||
#include <KShortcutsEditor> |
||||
#include <KGlobalAccel> |
||||
|
||||
#include <QVBoxLayout> |
||||
#ifndef KDE_USE_FINAL |
||||
KWIN_EFFECT_CONFIG_FACTORY |
||||
#endif |
||||
namespace KWin |
||||
{ |
||||
|
||||
InvertEffectConfig::InvertEffectConfig(QWidget* parent, const QVariantList& args) : |
||||
KCModule(EffectFactory::componentData(), parent, args) |
||||
{ |
||||
KGlobalAccel::self()->overrideMainComponentData(componentData()); |
||||
kDebug() ; |
||||
|
||||
QVBoxLayout* layout = new QVBoxLayout(this); |
||||
KActionCollection* actionCollection = new KActionCollection( this, KComponentData("kwin") ); |
||||
KAction* a = static_cast<KAction*>(actionCollection->addAction( "Invert" )); |
||||
a->setText( i18n("Toggle Invert effect" )); |
||||
a->setGlobalShortcut( KShortcut( Qt::CTRL + Qt::Key_F6 )); |
||||
|
||||
mShortcutEditor = new KShortcutsEditor(actionCollection, this, |
||||
KShortcutsEditor::GlobalAction, KShortcutsEditor::LetterShortcutsDisallowed); |
||||
connect(mShortcutEditor, SIGNAL(keyChange()), this, SLOT(changed())); |
||||
layout->addWidget(mShortcutEditor); |
||||
|
||||
layout->addStretch(); |
||||
|
||||
load(); |
||||
} |
||||
|
||||
InvertEffectConfig::~InvertEffectConfig() |
||||
{ |
||||
kDebug() ; |
||||
} |
||||
|
||||
void InvertEffectConfig::load() |
||||
{ |
||||
kDebug() ; |
||||
KCModule::load(); |
||||
|
||||
emit changed(false); |
||||
} |
||||
|
||||
void InvertEffectConfig::save() |
||||
{ |
||||
kDebug() ; |
||||
KCModule::save(); |
||||
|
||||
emit changed(false); |
||||
EffectsHandler::sendReloadMessage( "invert" ); |
||||
} |
||||
|
||||
void InvertEffectConfig::defaults() |
||||
{ |
||||
kDebug() ; |
||||
mShortcutEditor->allDefault(); |
||||
emit changed(true); |
||||
} |
||||
|
||||
|
||||
} // namespace
|
||||
|
||||
#include "invert_config.moc" |
||||
@ -0,0 +1,41 @@ |
||||
/*****************************************************************
|
||||
KWin - the KDE window manager |
||||
This file is part of the KDE project. |
||||
|
||||
Copyright (C) 2007 Rivo Laks <rivolaks@hot.ee> |
||||
|
||||
You can Freely distribute this program under the GNU General Public |
||||
License. See the file "COPYING" for the exact licensing terms. |
||||
******************************************************************/ |
||||
|
||||
#ifndef KWIN__CONFIG_H |
||||
#define KWIN__CONFIG_H |
||||
|
||||
#define KDE3_SUPPORT |
||||
#include <kcmodule.h> |
||||
#undef KDE3_SUPPORT |
||||
|
||||
class KShortcutsEditor; |
||||
|
||||
namespace KWin |
||||
{ |
||||
|
||||
class InvertEffectConfig : public KCModule |
||||
{ |
||||
Q_OBJECT |
||||
public: |
||||
explicit InvertEffectConfig(QWidget* parent = 0, const QVariantList& args = QVariantList()); |
||||
~InvertEffectConfig(); |
||||
|
||||
public slots: |
||||
virtual void save(); |
||||
virtual void load(); |
||||
virtual void defaults(); |
||||
|
||||
private: |
||||
KShortcutsEditor* mShortcutEditor; |
||||
}; |
||||
|
||||
} // namespace
|
||||
|
||||
#endif |
||||
Loading…
Reference in new issue