aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTed Gould <ted@canonical.com>2009-04-14 23:35:56 -0500
committerTed Gould <ted@canonical.com>2009-04-14 23:35:56 -0500
commit0fd3f0a9812693dc73c67a5de6e4ce101f736acf (patch)
tree10188fbd21594eb8ffbdf92a92726203e099e5a1
parent2cd914b84826b3ca7229a3b1d2c2613a25076858 (diff)
downloadlibdbusmenu-0fd3f0a9812693dc73c67a5de6e4ce101f736acf.tar.gz
libdbusmenu-0fd3f0a9812693dc73c67a5de6e4ce101f736acf.tar.bz2
libdbusmenu-0fd3f0a9812693dc73c67a5de6e4ce101f736acf.zip
Building the DBus bindings
-rw-r--r--.bzrignore2
-rw-r--r--libdbusmenu-glib/Makefile.am23
-rw-r--r--libdbusmenu-glib/dbus-menu.xml70
3 files changed, 94 insertions, 1 deletions
diff --git a/.bzrignore b/.bzrignore
index cd6e8f9..1ecdd00 100644
--- a/.bzrignore
+++ b/.bzrignore
@@ -16,3 +16,5 @@ libdbusmenu-qt/dbusmenu-qt.pc
libdbusmenu-qt/libdbusmenu-qt.la
libdbusmenu-qt/libdbusmenu_qt_la-test.lo
libdbusmenu-glib/libdbusmenu_glib_la-menuitem.lo
+dbusmenu-client.h
+dbusmenu-server.h
diff --git a/libdbusmenu-glib/Makefile.am b/libdbusmenu-glib/Makefile.am
index 758de05..59a6e8c 100644
--- a/libdbusmenu-glib/Makefile.am
+++ b/libdbusmenu-glib/Makefile.am
@@ -1,6 +1,7 @@
EXTRA_DIST = \
- dbusmenu-glib.pc.in
+ dbusmenu-glib.pc.in \
+ dbus-menu.xml
lib_LTLIBRARIES = \
libdbusmenu-glib.la
@@ -11,6 +12,8 @@ libdbusmenu_glibinclude_HEADERS = \
menuitem.h
libdbusmenu_glib_la_SOURCES = \
+ dbusmenu-server.h \
+ dbusmenu-client.h \
menuitem.c
libdbusmenu_glib_la_LDFLAGS = \
@@ -27,3 +30,21 @@ libdbusmenu_glib_la_LIBADD = \
pkgconfig_DATA = dbusmenu-glib.pc
pkgconfigdir = $(libdir)/pkgconfig
+BUILT_SOURCES = \
+ dbusmenu-client.h \
+ dbusmenu-server.h
+
+dbusmenu-server.h: dbus-menu.xml
+ dbus-binding-tool \
+ --prefix=_dbusmenu_server \
+ --mode=glib-server \
+ --output=dbusmenu-server.h \
+ $(srcdir)/dbus-menu.xml
+
+dbusmenu-client.h: dbus-menu.xml
+ dbus-binding-tool \
+ --prefix=_dbusmenu_client \
+ --mode=glib-client \
+ --output=dbusmenu-client.h \
+ $(srcdir)/dbus-menu.xml
+
diff --git a/libdbusmenu-glib/dbus-menu.xml b/libdbusmenu-glib/dbus-menu.xml
new file mode 100644
index 0000000..7c41ac2
--- /dev/null
+++ b/libdbusmenu-glib/dbus-menu.xml
@@ -0,0 +1,70 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+A library to allow applictions to provide simple indications of
+information to be displayed to users of the application through the
+interface shell.
+
+Copyright 2009 Canonical Ltd.
+
+Authors:
+ Ted Gould <ted@canonical.com>
+
+This program is free software: you can redistribute it and/or modify it
+under the terms of either or both of the following licenses:
+
+1) the GNU Lesser General Public License version 3, as published by the
+Free Software Foundation; and/or
+2) the GNU Lesser General Public License version 2.1, as published by
+the Free Software Foundation.
+
+This program is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranties of
+MERCHANTABILITY, SATISFACTORY QUALITY or FITNESS FOR A PARTICULAR
+PURPOSE. See the applicable version of the GNU Lesser General Public
+License for more details.
+
+You should have received a copy of both the GNU Lesser General Public
+License version 3 and version 2.1 along with this program. If not, see
+<http://www.gnu.org/licenses/>
+-->
+<node name="/">
+ <interface name="org.freedesktop.dbusmenu">
+
+<!-- Properties -->
+ <property name="layout" type="s" access="read"/>
+
+<!-- Functions -->
+ <method name="GetProperty">
+ <arg type="u" name="id" direction="in" />
+ <arg type="s" name="property" direction="in" />
+ <arg type="s" name="value" direction="out" />
+ </method>
+ <method name="GetProperties">
+ <arg type="u" name="id" direction="in" />
+ <arg type="as" name="property" direction="in" />
+ <arg type="a(ss)" name="value" direction="out" />
+ </method>
+ <method name="Call">
+ <arg type="u" name="id" direction="in" />
+ </method>
+ <method name="ListProperties">
+ <arg type="u" name="id" direction="in" />
+ <arg type="as" name="properties" direction="out" />
+ </method>
+
+<!-- Signals -->
+ <signal name="IdPropUpdate">
+ <arg type="u" name="id" direction="out" />
+ <arg type="s" name="prop" direction="out" />
+ <arg type="s" name="value" direction="out" />
+ </signal>
+ <signal name="IdUpdate">
+ <arg type="u" name="id" direction="out" />
+ </signal>
+ <signal name="LayoutUpdate">
+ </signal>
+
+<!-- End of interesting stuff -->
+
+ </interface>
+</node>