aboutsummaryrefslogtreecommitdiff
path: root/libindicator/indicator-service.c
diff options
context:
space:
mode:
authorTed Gould <ted@gould.cx>2011-01-07 12:59:25 -0600
committerTed Gould <ted@gould.cx>2011-01-07 12:59:25 -0600
commit844bccb51d71d21c1b2b06332b52ffb030dd7722 (patch)
tree0615ea8617a3360902c181b86a9c4d12b8a58956 /libindicator/indicator-service.c
parent6ff24e119e625d2217203a64ae4d4003a9ccae09 (diff)
downloadlibayatana-indicator-844bccb51d71d21c1b2b06332b52ffb030dd7722.tar.gz
libayatana-indicator-844bccb51d71d21c1b2b06332b52ffb030dd7722.tar.bz2
libayatana-indicator-844bccb51d71d21c1b2b06332b52ffb030dd7722.zip
Setting up the VTable
Diffstat (limited to 'libindicator/indicator-service.c')
-rw-r--r--libindicator/indicator-service.c23
1 files changed, 20 insertions, 3 deletions
diff --git a/libindicator/indicator-service.c b/libindicator/indicator-service.c
index 21da089..39b1332 100644
--- a/libindicator/indicator-service.c
+++ b/libindicator/indicator-service.c
@@ -79,9 +79,6 @@ enum {
PROP_VERSION
};
-static GDBusNodeInfo * node_info = NULL;
-static GDBusInterfaceInfo * interface_info = NULL;
-
/* The strings so that they can be slowly looked up. */
#define PROP_NAME_S "name"
#define PROP_VERSION_S "version"
@@ -99,7 +96,18 @@ static void indicator_service_finalize (GObject *object);
static void set_property (GObject * object, guint prop_id, const GValue * value, GParamSpec * pspec);
static void get_property (GObject * object, guint prop_id, GValue * value, GParamSpec * pspec);
static void try_and_get_name (IndicatorService * service);
+static void bus_method_call (GDBusConnection * connection, const gchar * sender, const gchar * path, const gchar * interface, const gchar * method, GVariant * params, GDBusMethodInvocation * invocation, gpointer user_data);
+
+/* GDBus Stuff */
+static GDBusNodeInfo * node_info = NULL;
+static GDBusInterfaceInfo * interface_info = NULL;
+static GDBusInterfaceVTable interface_table = {
+ method_call: bus_method_call,
+ get_property: NULL, /* No properties */
+ set_property: NULL /* No properties */
+};
+/* THE define */
G_DEFINE_TYPE (IndicatorService, indicator_service, G_TYPE_OBJECT);
static void
@@ -366,6 +374,15 @@ get_property (GObject * object, guint prop_id, GValue * value, GParamSpec * pspe
return;
}
+/* A method has been called from our dbus inteface. Figure out what it
+ is and dispatch it. */
+static void
+bus_method_call (GDBusConnection * connection, const gchar * sender, const gchar * path, const gchar * interface, const gchar * method, GVariant * params, GDBusMethodInvocation * invocation, gpointer user_data)
+{
+
+ return;
+}
+
/* A function to remove the signals on a proxy before we destroy
it because in this case we've stopped caring. */
static gboolean