From 1e2d4592308c3bff63c74c48b9e97b6d246d2b92 Mon Sep 17 00:00:00 2001 From: Ted Gould Date: Tue, 9 Jun 2009 10:59:51 -0500 Subject: Now we're building services. Snazy. --- src/status-service.c | 7 +++++++ 1 file changed, 7 insertions(+) create mode 100644 src/status-service.c (limited to 'src/status-service.c') diff --git a/src/status-service.c b/src/status-service.c new file mode 100644 index 0000000..63590c7 --- /dev/null +++ b/src/status-service.c @@ -0,0 +1,7 @@ + +int +main (int argc, char ** argv) +{ + + return 0; +} -- cgit v1.2.3 From b00bec83c75676a02eb6bebc2c51d5f0376dcf34 Mon Sep 17 00:00:00 2001 From: Ted Gould Date: Tue, 9 Jun 2009 17:00:07 -0500 Subject: Copying that code into the other two services. Now we're dbus-y. --- src/session-service.c | 37 ++++++++++++++++++++++++++++++++++++- src/status-service.c | 37 ++++++++++++++++++++++++++++++++++++- 2 files changed, 72 insertions(+), 2 deletions(-) (limited to 'src/status-service.c') diff --git a/src/session-service.c b/src/session-service.c index 63590c7..7a2ad27 100644 --- a/src/session-service.c +++ b/src/session-service.c @@ -1,7 +1,42 @@ +#include +#include + +#include +#include + +#include "dbus-shared-names.h" + +static DbusmenuMenuitem * root_menuitem = NULL; +static GMainLoop * mainloop = NULL; + int main (int argc, char ** argv) { + g_type_init(); + + DBusGConnection * connection = dbus_g_bus_get(DBUS_BUS_SESSION, NULL); + DBusGProxy * bus_proxy = dbus_g_proxy_new_for_name(connection, DBUS_SERVICE_DBUS, DBUS_PATH_DBUS, DBUS_INTERFACE_DBUS); + GError * error = NULL; + guint nameret = 0; - return 0; + if (!org_freedesktop_DBus_request_name(bus_proxy, INDICATOR_SESSION_DBUS_NAME, 0, &nameret, &error)) { + g_error("Unable to call to request name"); + return 1; + } + + if (nameret != DBUS_REQUEST_NAME_REPLY_PRIMARY_OWNER) { + g_error("Unable to get name"); + return 1; + } + + root_menuitem = dbusmenu_menuitem_new(); + DbusmenuServer * server = dbusmenu_server_new(INDICATOR_SESSION_DBUS_OBJECT); + dbusmenu_server_set_root(server, root_menuitem); + + mainloop = g_main_loop_new(NULL, FALSE); + g_main_loop_run(mainloop); + + return 0; } + diff --git a/src/status-service.c b/src/status-service.c index 63590c7..19bee49 100644 --- a/src/status-service.c +++ b/src/status-service.c @@ -1,7 +1,42 @@ +#include +#include + +#include +#include + +#include "dbus-shared-names.h" + +static DbusmenuMenuitem * root_menuitem = NULL; +static GMainLoop * mainloop = NULL; + int main (int argc, char ** argv) { + g_type_init(); + + DBusGConnection * connection = dbus_g_bus_get(DBUS_BUS_SESSION, NULL); + DBusGProxy * bus_proxy = dbus_g_proxy_new_for_name(connection, DBUS_SERVICE_DBUS, DBUS_PATH_DBUS, DBUS_INTERFACE_DBUS); + GError * error = NULL; + guint nameret = 0; - return 0; + if (!org_freedesktop_DBus_request_name(bus_proxy, INDICATOR_STATUS_DBUS_NAME, 0, &nameret, &error)) { + g_error("Unable to call to request name"); + return 1; + } + + if (nameret != DBUS_REQUEST_NAME_REPLY_PRIMARY_OWNER) { + g_error("Unable to get name"); + return 1; + } + + root_menuitem = dbusmenu_menuitem_new(); + DbusmenuServer * server = dbusmenu_server_new(INDICATOR_STATUS_DBUS_OBJECT); + dbusmenu_server_set_root(server, root_menuitem); + + mainloop = g_main_loop_new(NULL, FALSE); + g_main_loop_run(mainloop); + + return 0; } + -- cgit v1.2.3 From 913e99f4a2151b57412b1db3e2eb48b5050ff9fb Mon Sep 17 00:00:00 2001 From: Ted Gould Date: Wed, 10 Jun 2009 16:17:53 -0500 Subject: Using the defines and strings that were in our patches to FUSA. I wrote the code, so it is like other things © Canonical so there is no issue there. There is other code in FUSA that is not. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/status-service.c | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) (limited to 'src/status-service.c') diff --git a/src/status-service.c b/src/status-service.c index 19bee49..68b5685 100644 --- a/src/status-service.c +++ b/src/status-service.c @@ -1,4 +1,6 @@ +#include + #include #include @@ -7,6 +9,32 @@ #include "dbus-shared-names.h" +typedef enum +{ + STATUS_SERVICE_STATUS_ONLINE, + STATUS_SERVICE_STATUS_AWAY, + STATUS_SERVICE_STATUS_DND, + STATUS_SERVICE_STATUS_OFFLINE, + /* Leave as last */ + STATUS_SERVICE_STATUS_LAST +} +StatusServiceStatus; + +static const gchar * status_strings [STATUS_SERVICE_STATUS_LAST] = { + /* STATUS_SERVICE_STATUS_ONLINE, */ N_("Available"), + /* STATUS_SERVICE_STATUS_AWAY, */ N_("Away"), + /* STATUS_SERVICE_STATUS_DND */ N_("Busy"), + /* STATUS_SERVICE_STATUS_OFFLINE, */ N_("Offline") +}; + +static const gchar * status_icons[STATUS_SERVICE_STATUS_LAST] = { + /* STATUS_SERVICE_STATUS_ONLINE, */ "user-online", + /* STATUS_SERVICE_STATUS_AWAY, */ "user-away", + /* STATUS_SERVICE_STATUS_DND, */ "user-busy", + /* STATUS_SERVICE_STATUS_OFFLINE */ "user-offline" +}; + + static DbusmenuMenuitem * root_menuitem = NULL; static GMainLoop * mainloop = NULL; -- cgit v1.2.3 From bf4f01129a8fcec1b0dc800036ee3990436644bc Mon Sep 17 00:00:00 2001 From: Ted Gould Date: Wed, 10 Jun 2009 16:55:12 -0500 Subject: Building the menuitems --- src/status-service.c | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) (limited to 'src/status-service.c') diff --git a/src/status-service.c b/src/status-service.c index 68b5685..1615985 100644 --- a/src/status-service.c +++ b/src/status-service.c @@ -38,6 +38,27 @@ static const gchar * status_icons[STATUS_SERVICE_STATUS_LAST] = { static DbusmenuMenuitem * root_menuitem = NULL; static GMainLoop * mainloop = NULL; +gboolean +build_menu (gpointer data) +{ + DbusmenuMenuitem * root = DBUSMENU_MENUITEM(data); + g_return_val_if_fail(root != NULL, FALSE); + + StatusServiceStatus i; + for (i = STATUS_SERVICE_STATUS_ONLINE; i < STATUS_SERVICE_STATUS_LAST; i++) { + DbusmenuMenuitem * mi = dbusmenu_menuitem_new(); + + dbusmenu_menuitem_property_set(mi, "label", _(status_strings[i])); + dbusmenu_menuitem_property_set(mi, "icon", status_icons[i]); + + dbusmenu_menuitem_child_append(root, mi); + + g_debug("Built %s", status_strings[i]); + } + + return FALSE; +} + int main (int argc, char ** argv) { @@ -62,6 +83,8 @@ main (int argc, char ** argv) DbusmenuServer * server = dbusmenu_server_new(INDICATOR_STATUS_DBUS_OBJECT); dbusmenu_server_set_root(server, root_menuitem); + g_idle_add(build_menu, root_menuitem); + mainloop = g_main_loop_new(NULL, FALSE); g_main_loop_run(mainloop); -- cgit v1.2.3 From 257c07fe3c71a19a116a5d9f64e6ffb4e3f9fb0d Mon Sep 17 00:00:00 2001 From: Ted Gould Date: Wed, 10 Jun 2009 17:02:43 -0500 Subject: Connecting in a callback. --- src/status-service.c | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) (limited to 'src/status-service.c') diff --git a/src/status-service.c b/src/status-service.c index 1615985..840e164 100644 --- a/src/status-service.c +++ b/src/status-service.c @@ -38,7 +38,14 @@ static const gchar * status_icons[STATUS_SERVICE_STATUS_LAST] = { static DbusmenuMenuitem * root_menuitem = NULL; static GMainLoop * mainloop = NULL; -gboolean +static void +menu_click (DbusmenuMenuitem * mi, gpointer data) +{ + StatusServiceStatus stat = (StatusServiceStatus)GPOINTER_TO_INT(data); + +} + +static gboolean build_menu (gpointer data) { DbusmenuMenuitem * root = DBUSMENU_MENUITEM(data); @@ -50,6 +57,7 @@ build_menu (gpointer data) dbusmenu_menuitem_property_set(mi, "label", _(status_strings[i])); dbusmenu_menuitem_property_set(mi, "icon", status_icons[i]); + g_signal_connect(G_OBJECT(mi), DBUSMENU_MENUITEM_SIGNAL_ITEM_ACTIVATED, 0, GINT_TO_POINTER(i)); dbusmenu_menuitem_child_append(root, mi); -- cgit v1.2.3 From 6a310124ced26f2753c32ece249ca092214b73ee Mon Sep 17 00:00:00 2001 From: Ted Gould Date: Wed, 10 Jun 2009 17:17:25 -0500 Subject: Oops, forgot about invisible. I guess that's kinda expected though, as it's invisible. --- src/status-service.c | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) (limited to 'src/status-service.c') diff --git a/src/status-service.c b/src/status-service.c index 840e164..cd131a4 100644 --- a/src/status-service.c +++ b/src/status-service.c @@ -14,6 +14,7 @@ typedef enum STATUS_SERVICE_STATUS_ONLINE, STATUS_SERVICE_STATUS_AWAY, STATUS_SERVICE_STATUS_DND, + STATUS_SERVICE_STATUS_INVISIBLE, STATUS_SERVICE_STATUS_OFFLINE, /* Leave as last */ STATUS_SERVICE_STATUS_LAST @@ -21,17 +22,19 @@ typedef enum StatusServiceStatus; static const gchar * status_strings [STATUS_SERVICE_STATUS_LAST] = { - /* STATUS_SERVICE_STATUS_ONLINE, */ N_("Available"), - /* STATUS_SERVICE_STATUS_AWAY, */ N_("Away"), - /* STATUS_SERVICE_STATUS_DND */ N_("Busy"), - /* STATUS_SERVICE_STATUS_OFFLINE, */ N_("Offline") + /* STATUS_SERVICE_STATUS_ONLINE, */ N_("Available"), + /* STATUS_SERVICE_STATUS_AWAY, */ N_("Away"), + /* STATUS_SERVICE_STATUS_DND */ N_("Busy"), + /* STATUS_SERVICE_STATUS_INVISIBLE */ N_("Invisible"), + /* STATUS_SERVICE_STATUS_OFFLINE, */ N_("Offline") }; static const gchar * status_icons[STATUS_SERVICE_STATUS_LAST] = { - /* STATUS_SERVICE_STATUS_ONLINE, */ "user-online", - /* STATUS_SERVICE_STATUS_AWAY, */ "user-away", - /* STATUS_SERVICE_STATUS_DND, */ "user-busy", - /* STATUS_SERVICE_STATUS_OFFLINE */ "user-offline" + /* STATUS_SERVICE_STATUS_ONLINE, */ "user-online", + /* STATUS_SERVICE_STATUS_AWAY, */ "user-away", + /* STATUS_SERVICE_STATUS_DND, */ "user-busy", + /* STATUS_SERVICE_STATUS_INVISIBLE, */ "user-invisible", + /* STATUS_SERVICE_STATUS_OFFLINE */ "user-offline" }; -- cgit v1.2.3 From bac4397f4f402d3588b9fb6153bab8e6f320f8b7 Mon Sep 17 00:00:00 2001 From: Ted Gould Date: Thu, 11 Jun 2009 12:06:09 -0500 Subject: Moving the enum into the provider object and changing the name everywhere. --- src/status-provider.h | 24 ++++++++++++++++++------ src/status-service.c | 44 +++++++++++++++++--------------------------- 2 files changed, 35 insertions(+), 33 deletions(-) (limited to 'src/status-service.c') diff --git a/src/status-provider.h b/src/status-provider.h index bbc86f6..b20f4f0 100644 --- a/src/status-provider.h +++ b/src/status-provider.h @@ -13,6 +13,18 @@ G_BEGIN_DECLS #define IS_STATUS_PROVIDER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), STATUS_PROVIDER_TYPE)) #define STATUS_PROVIDER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), STATUS_PROVIDER_TYPE, StatusProviderClass)) +typedef enum +{ + STATUS_PROVIDER_STATUS_ONLINE, + STATUS_PROVIDER_STATUS_AWAY, + STATUS_PROVIDER_STATUS_DND, + STATUS_PROVIDER_STATUS_INVISIBLE, + STATUS_PROVIDER_STATUS_OFFLINE, + /* Leave as last */ + STATUS_PROVIDER_STATUS_LAST +} +StatusProviderStatus; + #define STATUS_PROVIDER_SIGNAL_STATUS_CHANGED "status-changed" typedef struct _StatusProvider StatusProvider; @@ -23,21 +35,21 @@ struct _StatusProvider { typedef struct _StatusProviderClass StatusProviderClass; struct _StatusProviderClass { /* Signals */ - void (*status_changed) (guint newstatus); + void (*status_changed) (StatusProviderStatus newstatus); /* Virtual Functions */ - void (*set_status) (StatusProvider * sp, guint newstatus); - guint (*get_status) (StatusProvider * sp); + void (*set_status) (StatusProvider * sp, StatusProviderStatus newstatus); + StatusProviderStatus (*get_status) (StatusProvider * sp); GObjectClass parent_class; }; GType status_provider_get_type (void); -void status_provider_set_status (StatusProvider * sp, guint status); -guint status_provider_get_status (StatusProvider * sp); +void status_provider_set_status (StatusProvider * sp, StatusProviderStatus status); +StatusProviderStatus status_provider_get_status (StatusProvider * sp); -void status_provider_emit_status_changed (StatusProvider * sp, guint newstatus); +void status_provider_emit_status_changed (StatusProvider * sp, StatusProviderStatus newstatus); G_END_DECLS diff --git a/src/status-service.c b/src/status-service.c index cd131a4..e839b16 100644 --- a/src/status-service.c +++ b/src/status-service.c @@ -9,32 +9,22 @@ #include "dbus-shared-names.h" -typedef enum -{ - STATUS_SERVICE_STATUS_ONLINE, - STATUS_SERVICE_STATUS_AWAY, - STATUS_SERVICE_STATUS_DND, - STATUS_SERVICE_STATUS_INVISIBLE, - STATUS_SERVICE_STATUS_OFFLINE, - /* Leave as last */ - STATUS_SERVICE_STATUS_LAST -} -StatusServiceStatus; - -static const gchar * status_strings [STATUS_SERVICE_STATUS_LAST] = { - /* STATUS_SERVICE_STATUS_ONLINE, */ N_("Available"), - /* STATUS_SERVICE_STATUS_AWAY, */ N_("Away"), - /* STATUS_SERVICE_STATUS_DND */ N_("Busy"), - /* STATUS_SERVICE_STATUS_INVISIBLE */ N_("Invisible"), - /* STATUS_SERVICE_STATUS_OFFLINE, */ N_("Offline") +#include "status-provider.h" + +static const gchar * status_strings [STATUS_PROVIDER_STATUS_LAST] = { + /* STATUS_PROVIDER_STATUS_ONLINE, */ N_("Available"), + /* STATUS_PROVIDER_STATUS_AWAY, */ N_("Away"), + /* STATUS_PROVIDER_STATUS_DND */ N_("Busy"), + /* STATUS_PROVIDER_STATUS_INVISIBLE */ N_("Invisible"), + /* STATUS_PROVIDER_STATUS_OFFLINE, */ N_("Offline") }; -static const gchar * status_icons[STATUS_SERVICE_STATUS_LAST] = { - /* STATUS_SERVICE_STATUS_ONLINE, */ "user-online", - /* STATUS_SERVICE_STATUS_AWAY, */ "user-away", - /* STATUS_SERVICE_STATUS_DND, */ "user-busy", - /* STATUS_SERVICE_STATUS_INVISIBLE, */ "user-invisible", - /* STATUS_SERVICE_STATUS_OFFLINE */ "user-offline" +static const gchar * status_icons[STATUS_PROVIDER_STATUS_LAST] = { + /* STATUS_PROVIDER_STATUS_ONLINE, */ "user-online", + /* STATUS_PROVIDER_STATUS_AWAY, */ "user-away", + /* STATUS_PROVIDER_STATUS_DND, */ "user-busy", + /* STATUS_PROVIDER_STATUS_INVISIBLE, */ "user-invisible", + /* STATUS_PROVIDER_STATUS_OFFLINE */ "user-offline" }; @@ -44,7 +34,7 @@ static GMainLoop * mainloop = NULL; static void menu_click (DbusmenuMenuitem * mi, gpointer data) { - StatusServiceStatus stat = (StatusServiceStatus)GPOINTER_TO_INT(data); + StatusProviderStatus status = (StatusProviderStatus)GPOINTER_TO_INT(data); } @@ -54,8 +44,8 @@ build_menu (gpointer data) DbusmenuMenuitem * root = DBUSMENU_MENUITEM(data); g_return_val_if_fail(root != NULL, FALSE); - StatusServiceStatus i; - for (i = STATUS_SERVICE_STATUS_ONLINE; i < STATUS_SERVICE_STATUS_LAST; i++) { + StatusProviderStatus i; + for (i = STATUS_PROVIDER_STATUS_ONLINE; i < STATUS_PROVIDER_STATUS_LAST; i++) { DbusmenuMenuitem * mi = dbusmenu_menuitem_new(); dbusmenu_menuitem_property_set(mi, "label", _(status_strings[i])); -- cgit v1.2.3 From 2cb1046794b8f2ef0a375d1d1061501473d43c73 Mon Sep 17 00:00:00 2001 From: Ted Gould Date: Thu, 11 Jun 2009 16:27:03 -0500 Subject: Starting to connect things together. Let's get some Pidgin in there. --- src/status-provider-pidgin.c | 6 ++++++ src/status-provider-pidgin.h | 1 + src/status-service.c | 9 +++++++++ 3 files changed, 16 insertions(+) (limited to 'src/status-service.c') diff --git a/src/status-provider-pidgin.c b/src/status-provider-pidgin.c index a0a2ba1..ef2bc63 100644 --- a/src/status-provider-pidgin.c +++ b/src/status-provider-pidgin.c @@ -65,6 +65,12 @@ status_provider_pidgin_finalize (GObject *object) return; } +StatusProvider * +status_provider_pidgin_new (void) +{ + return STATUS_PROVIDER(g_object_new(STATUS_PROVIDER_PIDGIN_TYPE, NULL)); +} + static void set_status (StatusProvider * sp, StatusProviderStatus status) { diff --git a/src/status-provider-pidgin.h b/src/status-provider-pidgin.h index 5d4459c..85077e8 100644 --- a/src/status-provider-pidgin.h +++ b/src/status-provider-pidgin.h @@ -27,6 +27,7 @@ struct _StatusProviderPidgin { }; GType status_provider_pidgin_get_type (void); +StatusProvider * status_provider_pidgin_new (void); G_END_DECLS diff --git a/src/status-service.c b/src/status-service.c index e839b16..901f46b 100644 --- a/src/status-service.c +++ b/src/status-service.c @@ -10,6 +10,15 @@ #include "dbus-shared-names.h" #include "status-provider.h" +#include "status-provider-pidgin.h" + +typedef StatusProvider * (*newfunc) (void); +#define STATUS_PROVIDER_CNT 1 +newfunc status_provider_newfuncs[STATUS_PROVIDER_CNT] = { + status_provider_pidgin_new +}; + +StatusProvider * status_providers[STATUS_PROVIDER_CNT] = { 0 }; static const gchar * status_strings [STATUS_PROVIDER_STATUS_LAST] = { /* STATUS_PROVIDER_STATUS_ONLINE, */ N_("Available"), -- cgit v1.2.3 From a14bc91016d9e85892cfb52002fe1debca53dc4a Mon Sep 17 00:00:00 2001 From: Ted Gould Date: Thu, 11 Jun 2009 16:39:22 -0500 Subject: Okay, let's use these providers. We're 733t now. --- src/status-service.c | 27 ++++++++++++++++++++++----- 1 file changed, 22 insertions(+), 5 deletions(-) (limited to 'src/status-service.c') diff --git a/src/status-service.c b/src/status-service.c index 901f46b..392b23a 100644 --- a/src/status-service.c +++ b/src/status-service.c @@ -14,11 +14,10 @@ typedef StatusProvider * (*newfunc) (void); #define STATUS_PROVIDER_CNT 1 -newfunc status_provider_newfuncs[STATUS_PROVIDER_CNT] = { +static newfunc status_provider_newfuncs[STATUS_PROVIDER_CNT] = { status_provider_pidgin_new }; - -StatusProvider * status_providers[STATUS_PROVIDER_CNT] = { 0 }; +static StatusProvider * status_providers[STATUS_PROVIDER_CNT] = { 0 }; static const gchar * status_strings [STATUS_PROVIDER_STATUS_LAST] = { /* STATUS_PROVIDER_STATUS_ONLINE, */ N_("Available"), @@ -41,10 +40,26 @@ static DbusmenuMenuitem * root_menuitem = NULL; static GMainLoop * mainloop = NULL; static void -menu_click (DbusmenuMenuitem * mi, gpointer data) +status_menu_click (DbusmenuMenuitem * mi, gpointer data) { StatusProviderStatus status = (StatusProviderStatus)GPOINTER_TO_INT(data); + int i; + for (i = 0; i < STATUS_PROVIDER_CNT; i++) { + status_provider_set_status(status_providers[i], status); + } + + return; +} + +static gboolean +build_providers (gpointer data) +{ + int i; + for (i = 0; i < STATUS_PROVIDER_CNT; i++) { + status_providers[i] = status_provider_newfuncs[i](); + } + return FALSE; } static gboolean @@ -59,7 +74,7 @@ build_menu (gpointer data) dbusmenu_menuitem_property_set(mi, "label", _(status_strings[i])); dbusmenu_menuitem_property_set(mi, "icon", status_icons[i]); - g_signal_connect(G_OBJECT(mi), DBUSMENU_MENUITEM_SIGNAL_ITEM_ACTIVATED, 0, GINT_TO_POINTER(i)); + g_signal_connect(G_OBJECT(mi), DBUSMENU_MENUITEM_SIGNAL_ITEM_ACTIVATED, G_CALLBACK(status_menu_click), GINT_TO_POINTER(i)); dbusmenu_menuitem_child_append(root, mi); @@ -89,6 +104,8 @@ main (int argc, char ** argv) return 1; } + g_idle_add(build_providers, NULL); + root_menuitem = dbusmenu_menuitem_new(); DbusmenuServer * server = dbusmenu_server_new(INDICATOR_STATUS_DBUS_OBJECT); dbusmenu_server_set_root(server, root_menuitem); -- cgit v1.2.3 From 9eb765152122a08ddfa95b150d9a7d5c46559356 Mon Sep 17 00:00:00 2001 From: Ted Gould Date: Fri, 12 Jun 2009 16:56:08 -0500 Subject: A quickly little object to put itself on DBus. --- src/Makefile.am | 2 ++ src/status-service-dbus.c | 56 +++++++++++++++++++++++++++++++++++++++++++++++ src/status-service-dbus.h | 31 ++++++++++++++++++++++++++ src/status-service.c | 2 ++ 4 files changed, 91 insertions(+) create mode 100644 src/status-service-dbus.c create mode 100644 src/status-service-dbus.h (limited to 'src/status-service.c') diff --git a/src/Makefile.am b/src/Makefile.am index a6a4dd5..1965fe9 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -20,6 +20,8 @@ libstatus_users_session_la_LIBADD = $(APPLET_LIBS) indicator_status_service_SOURCES = \ status-service.c \ + status-service-dbus.h \ + status-service-dbus.c \ status-service-server.h \ status-provider.h \ status-provider.c \ diff --git a/src/status-service-dbus.c b/src/status-service-dbus.c new file mode 100644 index 0000000..1eb94ca --- /dev/null +++ b/src/status-service-dbus.c @@ -0,0 +1,56 @@ +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif + +#include "status-service-dbus.h" + +static void status_service_dbus_class_init (StatusServiceDbusClass *klass); +static void status_service_dbus_init (StatusServiceDbus *self); +static void status_service_dbus_dispose (GObject *object); +static void status_service_dbus_finalize (GObject *object); +static void _status_service_server_watch (void); + +#include "status-service-server.h" + +G_DEFINE_TYPE (StatusServiceDbus, status_service_dbus, G_TYPE_OBJECT); + +static void +status_service_dbus_class_init (StatusServiceDbusClass *klass) +{ + GObjectClass *object_class = G_OBJECT_CLASS (klass); + + object_class->dispose = status_service_dbus_dispose; + object_class->finalize = status_service_dbus_finalize; + + return; +} + +static void +status_service_dbus_init (StatusServiceDbus *self) +{ + + return; +} + +static void +status_service_dbus_dispose (GObject *object) +{ + + G_OBJECT_CLASS (status_service_dbus_parent_class)->dispose (object); + return; +} + +static void +status_service_dbus_finalize (GObject *object) +{ + + G_OBJECT_CLASS (status_service_dbus_parent_class)->finalize (object); + return; +} + +static void +_status_service_server_watch (void) +{ + + return; +} diff --git a/src/status-service-dbus.h b/src/status-service-dbus.h new file mode 100644 index 0000000..1805dc5 --- /dev/null +++ b/src/status-service-dbus.h @@ -0,0 +1,31 @@ +#ifndef __STATUS_SERVICE_DBUS_H__ +#define __STATUS_SERVICE_DBUS_H__ + +#include +#include + +G_BEGIN_DECLS + +#define STATUS_SERVICE_DBUS_TYPE (status_service_dbus_get_type ()) +#define STATUS_SERVICE_DBUS(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), STATUS_SERVICE_DBUS_TYPE, StatusServiceDbus)) +#define STATUS_SERVICE_DBUS_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), STATUS_SERVICE_DBUS_TYPE, StatusServiceDbusClass)) +#define IS_STATUS_SERVICE_DBUS(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), STATUS_SERVICE_DBUS_TYPE)) +#define IS_STATUS_SERVICE_DBUS_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), STATUS_SERVICE_DBUS_TYPE)) +#define STATUS_SERVICE_DBUS_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), STATUS_SERVICE_DBUS_TYPE, StatusServiceDbusClass)) + +typedef struct _StatusServiceDbus StatusServiceDbus; +typedef struct _StatusServiceDbusClass StatusServiceDbusClass; + +struct _StatusServiceDbusClass { + GObjectClass parent_class; +}; + +struct _StatusServiceDbus { + GObject parent; +}; + +GType status_service_dbus_get_type (void); + +G_END_DECLS + +#endif diff --git a/src/status-service.c b/src/status-service.c index 392b23a..e31a0db 100644 --- a/src/status-service.c +++ b/src/status-service.c @@ -9,6 +9,8 @@ #include "dbus-shared-names.h" +#include "status-service-dbus.h" + #include "status-provider.h" #include "status-provider-pidgin.h" -- cgit v1.2.3