aboutsummaryrefslogtreecommitdiff
path: root/src/common/qdbusmenumodel.cpp
diff options
context:
space:
mode:
authorRenato Araujo Oliveira Filho <renato.filho@canonical.com>2012-09-11 17:57:08 -0300
committerRenato Araujo Oliveira Filho <renato.filho@canonical.com>2012-09-11 17:57:08 -0300
commit6bacc0d5db885a72202cb7f80e505642a36052d4 (patch)
tree608aa95f959b9e362d7813476e59d37c6c07ddf6 /src/common/qdbusmenumodel.cpp
parent31f8103187d2e27b1bb76eaed10dc9c9be226c90 (diff)
downloadqmenumodel-6bacc0d5db885a72202cb7f80e505642a36052d4.tar.gz
qmenumodel-6bacc0d5db885a72202cb7f80e505642a36052d4.tar.bz2
qmenumodel-6bacc0d5db885a72202cb7f80e505642a36052d4.zip
Splitted qmenumodel plugin in two libraries to make it testable.
Create unit test for qmenumodel library.
Diffstat (limited to 'src/common/qdbusmenumodel.cpp')
-rw-r--r--src/common/qdbusmenumodel.cpp66
1 files changed, 66 insertions, 0 deletions
diff --git a/src/common/qdbusmenumodel.cpp b/src/common/qdbusmenumodel.cpp
new file mode 100644
index 0000000..6e35c85
--- /dev/null
+++ b/src/common/qdbusmenumodel.cpp
@@ -0,0 +1,66 @@
+#include "qdbusmenumodel.h"
+#include <QDebug>
+
+QDBusMenuModel::QDBusMenuModel(QObject *parent)
+ :QMenuModel(0, parent)
+{
+}
+
+QDBusMenuModel::~QDBusMenuModel()
+{
+}
+
+void QDBusMenuModel::start()
+{
+ QDBusObject::connect();
+}
+
+void QDBusMenuModel::stop()
+{
+ QDBusObject::disconnect();
+}
+
+void QDBusMenuModel::serviceVanish(GDBusConnection *)
+{
+ setMenuModel(NULL);
+}
+
+void QDBusMenuModel::serviceAppear(GDBusConnection *connection)
+{
+ GMenuModel *model = reinterpret_cast<GMenuModel*>(g_dbus_menu_model_get(connection,
+ busName().toLatin1(),
+ objectPath().toLatin1()));
+ setMenuModel(model);
+ if (model == NULL) {
+ stop();
+ }
+}
+
+/*
+void QDBusMenuModel::busTypeChanged(BusType)
+{
+ busTypeChanged();
+}
+
+void QDBusMenuModel::busNameChanged(const QString &)
+{
+ busNameChanged();
+}
+
+void QDBusMenuModel::objectPathChanged(const QString &objectPath)
+{
+ objectPathChanged();
+}
+
+void QDBusMenuModel::statusChanged(ConnectionStatus status)
+{
+ statusChanged();
+}
+*/
+
+void QDBusMenuModel::setIntBusType(int busType)
+{
+ if ((busType > None) && (busType < LastBusType)) {
+ setBusType(static_cast<BusType>(busType));
+ }
+}