/***************************************************************** KWin - the KDE window manager This file is part of the KDE project. Copyright (C) 2007 Rivo Laks You can Freely distribute this program under the GNU General Public License. See the file "COPYING" for the exact licensing terms. ******************************************************************/ #include "zoom_config.h" #include #include #include #include #include #include #include #include #ifndef KDE_USE_FINAL KWIN_EFFECT_CONFIG_FACTORY #endif namespace KWin { ZoomEffectConfig::ZoomEffectConfig(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; a = static_cast< KAction* >( actionCollection->addAction( KStandardAction::ZoomIn )); a->setGlobalShortcut(KShortcut(Qt::META + Qt::Key_Equal)); a = static_cast< KAction* >( actionCollection->addAction( KStandardAction::ZoomOut )); a->setGlobalShortcut(KShortcut(Qt::META + Qt::Key_Minus)); a = static_cast< KAction* >( actionCollection->addAction( KStandardAction::ActualSize )); a->setGlobalShortcut(KShortcut(Qt::META + Qt::Key_0)); mShortcutEditor = new KShortcutsEditor(actionCollection, this, KShortcutsEditor::GlobalAction, KShortcutsEditor::LetterShortcutsDisallowed); connect(mShortcutEditor, SIGNAL(keyChange()), this, SLOT(changed())); layout->addWidget(mShortcutEditor); layout->addStretch(); load(); } ZoomEffectConfig::~ZoomEffectConfig() { kDebug() ; } void ZoomEffectConfig::load() { kDebug() ; KCModule::load(); emit changed(false); } void ZoomEffectConfig::save() { kDebug() ; KCModule::save(); emit changed(false); EffectsHandler::sendReloadMessage( "zoom" ); } void ZoomEffectConfig::defaults() { kDebug() ; mShortcutEditor->allDefault(); emit changed(true); } } // namespace #include "zoom_config.moc"