diff options
author | Thiago Macieira <thiago.macieira@trolltech.com> | 2006-04-10 10:56:50 +0000 |
---|---|---|
committer | Thiago Macieira <thiago.macieira@trolltech.com> | 2006-04-10 10:56:50 +0000 |
commit | b52b3c14fe4253ef95df69382fc2e040aa0c1fc0 (patch) | |
tree | ab6e543184e5f16cbc13d428358a3220ecbdb58e | |
parent | 58da365adf2773203a2d8fdcb65c8d89ff113dac (diff) |
* qt/examples/listnames.cpp:
* qt/examples/Makefile.am: Three ways to list the names on the
bus.
-rw-r--r-- | ChangeLog | 5 | ||||
-rw-r--r-- | qt/examples/Makefile.am | 3 | ||||
-rw-r--r-- | qt/examples/listnames.cpp | 61 |
3 files changed, 68 insertions, 1 deletions
@@ -1,5 +1,10 @@ 2006-04-10 Thiago Macieira <thiago.macieira@trolltech.com> + * qt/examples/listnames.cpp: + * qt/examples/Makefile.am: Three ways to list the names on the + bus. +2006-04-10 Thiago Macieira <thiago.macieira@trolltech.com> + * test/qt/tst_hal.cpp: Remove the waiting, since it's not needed anymore. Requires Qt 4.1.3 to work properly. (r528148) diff --git a/qt/examples/Makefile.am b/qt/examples/Makefile.am index 9528e39..7906f28 100644 --- a/qt/examples/Makefile.am +++ b/qt/examples/Makefile.am @@ -17,9 +17,10 @@ CHAT=chat endif -noinst_PROGRAMS = hello dbus ping pong complexping complexpong $(CHAT) +noinst_PROGRAMS = hello listnames dbus ping pong complexping complexpong $(CHAT) hello_SOURCES = hello.cpp dbus_SOURCES = dbus.cpp +listnames_SOURCES = listnames.cpp ping_SOURCES = ping.cpp pong_SOURCES = pong.cpp pong.h diff --git a/qt/examples/listnames.cpp b/qt/examples/listnames.cpp new file mode 100644 index 0000000..27703f5 --- /dev/null +++ b/qt/examples/listnames.cpp @@ -0,0 +1,61 @@ +/* -*- C++ -*- + * + * Copyright (C) 2006 Trolltech AS. All rights reserved. + * Author: Thiago Macieira <thiago.macieira@trolltech.com> + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software Foundation, + * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + * + */ + +#include <dbus/qdbus.h> +#include <QtCore/QCoreApplication> +#include <QtCore/QDebug> +#include <QtCore/QStringList> + +void method1() +{ + QDBusReply<QStringList> reply = QDBus::sessionBus().busService()->listNames(); + if (reply.isError()) { + qDebug() << "Error:" << reply.error().message(); + exit(1); + } + foreach (QString name, reply.value()) + qDebug() << name; +} + +void method2() +{ + QDBusInterface *dbus_iface; + QDBusConnection &bus = QDBus::sessionBus(); + dbus_iface = bus.findInterface("org.freedesktop.DBus", "/org/freedesktop/DBus", + "org.freedesktop.DBus"); + qDebug() << dbus_iface->call("ListNames").first(); +} + +void method3() +{ + qDebug() << QDBus::sessionBus().busService()->listNames().value(); +} + +int main(int argc, char **argv) +{ + QCoreApplication app(argc, argv); + + method1(); + method2(); + method3(); + + return 0; +} |