summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRemko Tronçon <git@el-tramo.be>2011-04-10 09:34:01 (GMT)
committerRemko Tronçon <git@el-tramo.be>2011-04-18 19:11:41 (GMT)
commitec3caf1179834f03c787f46cf44820885edbf4da (patch)
tree859b3d866bd2fac84e0a264756c7ec1d9dd0a678 /Swift/QtUI/swift-open-uri.cpp
parentfdfe10dc9dde522e82d381e4641eb98063c4b47f (diff)
downloadswift-ec3caf1179834f03c787f46cf44820885edbf4da.zip
swift-ec3caf1179834f03c787f46cf44820885edbf4da.tar.bz2
Implemented DBUS URI handler.
Diffstat (limited to 'Swift/QtUI/swift-open-uri.cpp')
-rw-r--r--Swift/QtUI/swift-open-uri.cpp30
1 files changed, 30 insertions, 0 deletions
diff --git a/Swift/QtUI/swift-open-uri.cpp b/Swift/QtUI/swift-open-uri.cpp
new file mode 100644
index 0000000..2d5ef19
--- /dev/null
+++ b/Swift/QtUI/swift-open-uri.cpp
@@ -0,0 +1,30 @@
+/*
+ * Copyright (c) 2011 Remko Tronçon
+ * Licensed under the GNU General Public License v3.
+ * See Documentation/Licenses/GPLv3.txt for more information.
+ */
+
+#include <QCoreApplication>
+#include <QDBusConnection>
+#include <QDBusMessage>
+#include <iostream>
+
+int main(int argc, char* argv[]) {
+ QCoreApplication app(argc, argv);
+
+ QDBusConnection bus = QDBusConnection::sessionBus();
+ if (!bus.isConnected()) {
+ return -1;
+ }
+ if (argc != 2) {
+ std::cerr << "Usage: " << argv[0] << " uri" << std::endl;
+ return -1;
+ }
+
+ QDBusMessage msg = QDBusMessage::createMethodCall("im.swift.Swift.URIHandler", "/", "im.swift.Swift.URIHandler", "openURI");
+ msg << argv[1];
+
+ bus.call(msg);
+
+ return 0;
+}