Make a branch to make krunner Good Enough For Aaron™.
[kdebase/uwolfer.git] / workspace / plasma / applets / kickoff / simpleapplet / simpleapplet.h
blob87a91ce263a2e71d268261b009effa43328308b4
1 /*
2 Copyright 2007 Robert Knight <robertknight@gmail.com>
4 This library is free software; you can redistribute it and/or
5 modify it under the terms of the GNU Library General Public
6 License as published by the Free Software Foundation; either
7 version 2 of the License, or (at your option) any later version.
9 This library is distributed in the hope that it will be useful,
10 but WITHOUT ANY WARRANTY; without even the implied warranty of
11 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 Library General Public License for more details.
14 You should have received a copy of the GNU Library General Public License
15 along with this library; see the file COPYING.LIB. If not, write to
16 the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
17 Boston, MA 02110-1301, USA.
20 #ifndef SIMPLEAPPLET_H
21 #define SIMPLEAPPLET_H
23 // Plasma
24 #include <plasma/applet.h>
26 class QAction;
28 class MenuLauncherApplet : public Plasma::Applet
30 Q_OBJECT
31 Q_ENUMS(ViewType)
32 Q_ENUMS(FormatType)
33 public:
35 enum ViewType {
36 Combined = 0,
37 Favorites,
38 Applications,
39 Computer,
40 RecentlyUsed,
41 Leave
44 enum FormatType {
45 Name = 0,
46 Description,
47 NameDescription,
48 DescriptionName
51 MenuLauncherApplet(QObject *parent, const QVariantList &args);
52 virtual ~MenuLauncherApplet();
54 void init();
56 void constraintsUpdated(Plasma::Constraints constraints);
58 Qt::Orientations expandingDirections() const;
60 virtual QList<QAction*> contextActions();
62 public slots:
63 void showConfigurationInterface();
64 void switchMenuStyle();
66 protected slots:
67 void configAccepted();
68 void toggleMenu(bool pressed);
69 void actionTriggered(QAction *action);
71 private:
72 class Private;
73 Private * const d;
76 K_EXPORT_PLASMA_APPLET(menulauncher, MenuLauncherApplet)
78 #endif