aboutsummaryrefslogtreecommitdiff
path: root/src/common/qdbusactiongroup.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/common/qdbusactiongroup.h')
-rw-r--r--src/common/qdbusactiongroup.h21
1 files changed, 7 insertions, 14 deletions
diff --git a/src/common/qdbusactiongroup.h b/src/common/qdbusactiongroup.h
index f2b2033..723094c 100644
--- a/src/common/qdbusactiongroup.h
+++ b/src/common/qdbusactiongroup.h
@@ -35,13 +35,13 @@ class QDBusActionGroup : public QObject, public QDBusObject
Q_PROPERTY(QString busName READ busName WRITE setBusName NOTIFY busNameChanged)
Q_PROPERTY(QString objectPath READ objectPath WRITE setObjectPath NOTIFY objectPathChanged)
Q_PROPERTY(int status READ status NOTIFY statusChanged)
- Q_PROPERTY(int count READ count NOTIFY countChanged)
public:
QDBusActionGroup(QObject *parent=0);
~QDBusActionGroup();
- int count() const;
+ void updateActionState(const QString &actionName, const QVariant &state);
+ bool hasAction(const QString &actionName);
Q_INVOKABLE QStateAction *action(const QString &actionName);
@@ -50,25 +50,20 @@ Q_SIGNALS:
void busNameChanged(const QString &busNameChanged);
void objectPathChanged(const QString &objectPath);
void statusChanged(ConnectionStatus status);
- void countChanged(int count);
-
+ void actionAppear(const QString &actionName);
+ void actionVanish(const QString &actionName);
+ void actionStateChanged(const QString &actionName, QVariant state);
public Q_SLOTS:
void start();
void stop();
-
protected:
virtual void serviceAppear(GDBusConnection *connection);
virtual void serviceVanish(GDBusConnection *connection);
-
-private Q_SLOTS:
- void onActionTriggered();
-
private:
GActionGroup *m_actionGroup;
- QSet<QStateAction*> m_actions;
int m_signalActionAddId;
int m_signalActionRemovedId;
int m_signalStateChangedId;
@@ -77,12 +72,10 @@ private:
void setIntBusType(int busType);
void setActionGroup(GDBusActionGroup *ag);
- QStateAction *addAction(const char *actionName, bool create);
- void removeAction(const char *actionName, bool erase);
- void updateAction(const char *actionName, GVariant *state);
- void clear();
QStateAction *actionImpl(const QString &actionName);
+ void clear();
+
// glib slots
static void onActionAdded(GDBusActionGroup *ag, gchar *actionName, gpointer data);
static void onActionRemoved(GDBusActionGroup *ag, gchar *actionName, gpointer data);