summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLars Knoll <lars.knoll@nokia.com>2011-06-23 13:05:08 +0200
committerLars Knoll <lars.knoll@nokia.com>2011-06-23 13:05:08 +0200
commitb4898c4c1dfd33bda2157efe4e8e20f1717b3fd4 (patch)
tree8400f32a7fd3d144f295592de8a96679f8eeb060
parent2b4a7726ee4578d934d4191c22bfaa2c34af0195 (diff)
downloadqttools-b4898c4c1dfd33bda2157efe4e8e20f1717b3fd4.tar.gz
Add a --bus command line argument
Added a command line argument to specify the bus to use. Reviewed-by: Thiago
-rw-r--r--src/qdbus/qdbus/qdbus.cpp9
-rw-r--r--src/qdbus/qdbusviewer/main.cpp12
2 files changed, 19 insertions, 2 deletions
diff --git a/src/qdbus/qdbus/qdbus.cpp b/src/qdbus/qdbus/qdbus.cpp
index 14b4b9e05..2c6ab53bb 100644
--- a/src/qdbus/qdbus/qdbus.cpp
+++ b/src/qdbus/qdbus/qdbus.cpp
@@ -59,7 +59,7 @@ static bool printArgumentsLiterally = false;
static void showUsage()
{
- printf("Usage: qdbus [--system] [--literal] [servicename] [path] [method] [args]\n"
+ printf("Usage: qdbus [--system] [--bus busaddress] [--literal] [servicename] [path] [method] [args]\n"
"\n"
" servicename the service to connect to (e.g., org.freedesktop.DBus)\n"
" path the path to the object (e.g., /)\n"
@@ -71,7 +71,9 @@ static void showUsage()
"\n"
"Options:\n"
" --system connect to the system bus\n"
- " --literal print replies literally\n");
+ " --bus busaddress connect to a custom bus\n"
+ " --literal print replies literally\n"
+ );
}
static void printArg(const QVariant &v)
@@ -454,6 +456,9 @@ int main(int argc, char **argv)
if (arg == QLatin1String("--system")) {
connection = QDBusConnection::systemBus();
connectionOpened = true;
+ } else if (arg == QLatin1String("--bus")) {
+ connection = QDBusConnection::connectToBus(args.takeFirst(), "QDBus");
+ connectionOpened = true;
} else if (arg == QLatin1String("--literal")) {
printArgumentsLiterally = true;
} else if (arg == QLatin1String("--help")) {
diff --git a/src/qdbus/qdbusviewer/main.cpp b/src/qdbus/qdbusviewer/main.cpp
index 37d2c86c3..8dd6807e4 100644
--- a/src/qdbus/qdbusviewer/main.cpp
+++ b/src/qdbus/qdbusviewer/main.cpp
@@ -65,6 +65,18 @@ int main(int argc, char *argv[])
mainWidget->addTab(sessionBusViewer, QObject::tr("Session Bus"));
mainWidget->addTab(systemBusViewer, QObject::tr("System Bus"));
+ QStringList args = app.arguments();
+ while (args.count()) {
+ QString arg = args.takeFirst();
+ if (arg == QLatin1String("--bus")) {
+ QDBusConnection connection = QDBusConnection::connectToBus(args.takeFirst(), "QDBusViewer");
+ if (connection.isConnected()) {
+ QDBusViewer *customBusViewer = new QDBusViewer(connection);
+ mainWidget->addTab(customBusViewer, QObject::tr("Custom Bus"));
+ }
+ }
+ }
+
QMenu *fileMenu = mw.menuBar()->addMenu(QObject::tr("&File"));
QAction *quitAction = fileMenu->addAction(QObject::tr("&Quit"), &mw, SLOT(close()));
Q_UNUSED(quitAction);