Make a branch to make krunner Good Enough For Aaron™.
[kdebase/uwolfer.git] / workspace / kwin / effects / invert.cpp
bloba19a4246a5267fc2f9815e8f4e1b7bc50caa53ce
1 /********************************************************************
2 KWin - the KDE window manager
3 This file is part of the KDE project.
5 Copyright (C) 2007 Rivo Laks <rivolaks@hot.ee>
7 This program is free software; you can redistribute it and/or modify
8 it under the terms of the GNU General Public License as published by
9 the Free Software Foundation; either version 2 of the License, or
10 (at your option) any later version.
12 This program is distributed in the hope that it will be useful,
13 but WITHOUT ANY WARRANTY; without even the implied warranty of
14 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 GNU General Public License for more details.
17 You should have received a copy of the GNU General Public License
18 along with this program. If not, see <http://www.gnu.org/licenses/>.
19 *********************************************************************/
21 #include "invert.h"
23 #include <kactioncollection.h>
24 #include <kaction.h>
25 #include <klocale.h>
28 namespace KWin
31 KWIN_EFFECT( invert, InvertEffect )
32 KWIN_EFFECT_SUPPORTED( invert, ShaderEffect::supported() )
35 InvertEffect::InvertEffect() : QObject(), ShaderEffect("invert")
37 KActionCollection* actionCollection = new KActionCollection( this );
38 KAction* a = (KAction*)actionCollection->addAction( "Invert" );
39 a->setText( i18n("Toggle Invert Effect" ));
40 a->setGlobalShortcut(KShortcut(Qt::CTRL + Qt::META + Qt::Key_I));
41 connect(a, SIGNAL(triggered(bool)), this, SLOT(toggle()));
44 void InvertEffect::toggle()
46 setEnabled( !isEnabled());
49 } // namespace
51 #include "invert.moc"