dbusmenu-qt 0.9.2
Loading...
Searching...
No Matches
dbusmenuexporter.h
1/* This file is part of the dbusmenu-qt library
2 Copyright 2009 Canonical
3 Author: Aurelien Gateau <aurelien.gateau@canonical.com>
4
5 This library is free software; you can redistribute it and/or
6 modify it under the terms of the GNU Library General Public
7 License (LGPL) as published by the Free Software Foundation;
8 either version 2 of the License, or (at your option) any later
9 version.
10
11 This library is distributed in the hope that it will be useful,
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14 Library General Public License for more details.
15
16 You should have received a copy of the GNU Library General Public License
17 along with this library; see the file COPYING.LIB. If not, write to
18 the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
19 Boston, MA 02110-1301, USA.
20*/
21#ifndef DBUSMENUEXPORTER_H
22#define DBUSMENUEXPORTER_H
23
24// Qt
25#include <QtCore/QObject>
26#include <QtDBus/QDBusConnection>
27
28// Local
29#include <dbusmenu_export.h>
30
31class QAction;
32class QMenu;
33
34class DBusMenuExporterPrivate;
35
39class DBUSMENU_EXPORT DBusMenuExporter : public QObject
40{
41 Q_OBJECT
42public:
48 DBusMenuExporter(const QString &dbusObjectPath, QMenu *menu, const QDBusConnection &dbusConnection = QDBusConnection::sessionBus());
49
50 virtual ~DBusMenuExporter();
51
56 void activateAction(QAction *action);
57
64 void setStatus(const QString &status);
65
70 QString status() const;
71
72protected:
79 virtual QString iconNameForAction(QAction *action);
80
81private Q_SLOTS:
82 void doUpdateActions();
83 void doEmitLayoutUpdated();
84 void slotActionDestroyed(QObject*);
85
86private:
87 Q_DISABLE_COPY(DBusMenuExporter)
88 DBusMenuExporterPrivate *const d;
89
90 friend class DBusMenuExporterPrivate;
91 friend class DBusMenuExporterDBus;
92 friend class DBusMenu;
93};
94
95#endif /* DBUSMENUEXPORTER_H */
Definition: dbusmenuexporter.h:40
void activateAction(QAction *action)
void setStatus(const QString &status)
QString status() const
DBusMenuExporter(const QString &dbusObjectPath, QMenu *menu, const QDBusConnection &dbusConnection=QDBusConnection::sessionBus())
virtual QString iconNameForAction(QAction *action)