aboutsummaryrefslogtreecommitdiff
path: root/libdbusmenu-gtk
diff options
context:
space:
mode:
authorTed Gould <ted@canonical.com>2009-06-23 22:58:59 -0500
committerTed Gould <ted@canonical.com>2009-06-23 22:58:59 -0500
commitef09b6addc6fe5df82f3fded6f7b4b86377ef37f (patch)
treeec3fb1b42856c2b8a6c04c25b3240d930aa7d020 /libdbusmenu-gtk
parent97e210b1ec378e4e895e35035ec85146de62de2a (diff)
downloadlibdbusmenu-ef09b6addc6fe5df82f3fded6f7b4b86377ef37f.tar.gz
libdbusmenu-ef09b6addc6fe5df82f3fded6f7b4b86377ef37f.tar.bz2
libdbusmenu-ef09b6addc6fe5df82f3fded6f7b4b86377ef37f.zip
Okay, now we're rebuilding this client thingy.
Diffstat (limited to 'libdbusmenu-gtk')
-rw-r--r--libdbusmenu-gtk/client.c70
-rw-r--r--libdbusmenu-gtk/client.h12
2 files changed, 43 insertions, 39 deletions
diff --git a/libdbusmenu-gtk/client.c b/libdbusmenu-gtk/client.c
index 4074947..8ee1718 100644
--- a/libdbusmenu-gtk/client.c
+++ b/libdbusmenu-gtk/client.c
@@ -43,39 +43,39 @@ enum {
};
/* Private */
-typedef struct _DbusmenuGtkMenuPrivate DbusmenuGtkMenuPrivate;
-struct _DbusmenuGtkMenuPrivate {
+typedef struct _DbusmenuGtkClientPrivate DbusmenuGtkClientPrivate;
+struct _DbusmenuGtkClientPrivate {
DbusmenuClient * client;
gchar * dbus_object;
gchar * dbus_name;
};
-#define DBUSMENU_GTKMENU_GET_PRIVATE(o) \
-(G_TYPE_INSTANCE_GET_PRIVATE ((o), DBUSMENU_GTKMENU_TYPE, DbusmenuGtkMenuPrivate))
+#define DBUSMENU_GTKCLIENT_GET_PRIVATE(o) \
+(G_TYPE_INSTANCE_GET_PRIVATE ((o), DBUSMENU_GTKCLIENT_TYPE, DbusmenuGtkClientPrivate))
/* Prototypes */
-static void dbusmenu_gtkmenu_class_init (DbusmenuGtkMenuClass *klass);
-static void dbusmenu_gtkmenu_init (DbusmenuGtkMenu *self);
-static void dbusmenu_gtkmenu_dispose (GObject *object);
-static void dbusmenu_gtkmenu_finalize (GObject *object);
+static void dbusmenu_gtkclient_class_init (DbusmenuGtkClientClass *klass);
+static void dbusmenu_gtkclient_init (DbusmenuGtkClient *self);
+static void dbusmenu_gtkclient_dispose (GObject *object);
+static void dbusmenu_gtkclient_finalize (GObject *object);
static void set_property (GObject * obj, guint id, const GValue * value, GParamSpec * pspec);
static void get_property (GObject * obj, guint id, GValue * value, GParamSpec * pspec);
/* Internal */
-static void build_client (DbusmenuGtkMenu * self);
+static void build_client (DbusmenuGtkClient * self);
/* GObject Stuff */
-G_DEFINE_TYPE (DbusmenuGtkMenu, dbusmenu_gtkmenu, GTK_TYPE_MENU);
+G_DEFINE_TYPE (DbusmenuGtkClient, dbusmenu_gtkclient, DBUSMENU_TYPE_CLIENT);
static void
-dbusmenu_gtkmenu_class_init (DbusmenuGtkMenuClass *klass)
+dbusmenu_gtkclient_class_init (DbusmenuGtkClientClass *klass)
{
GObjectClass *object_class = G_OBJECT_CLASS (klass);
- g_type_class_add_private (klass, sizeof (DbusmenuGtkMenuPrivate));
+ g_type_class_add_private (klass, sizeof (DbusmenuGtkClientPrivate));
- object_class->dispose = dbusmenu_gtkmenu_dispose;
- object_class->finalize = dbusmenu_gtkmenu_finalize;
+ object_class->dispose = dbusmenu_gtkclient_dispose;
+ object_class->finalize = dbusmenu_gtkclient_finalize;
object_class->set_property = set_property;
object_class->get_property = get_property;
@@ -94,9 +94,9 @@ dbusmenu_gtkmenu_class_init (DbusmenuGtkMenuClass *klass)
}
static void
-dbusmenu_gtkmenu_init (DbusmenuGtkMenu *self)
+dbusmenu_gtkclient_init (DbusmenuGtkClient *self)
{
- DbusmenuGtkMenuPrivate * priv = DBUSMENU_GTKMENU_GET_PRIVATE(self);
+ DbusmenuGtkClientPrivate * priv = DBUSMENU_GTKCLIENT_GET_PRIVATE(self);
priv->client = NULL;
@@ -107,23 +107,23 @@ dbusmenu_gtkmenu_init (DbusmenuGtkMenu *self)
}
static void
-dbusmenu_gtkmenu_dispose (GObject *object)
+dbusmenu_gtkclient_dispose (GObject *object)
{
- DbusmenuGtkMenuPrivate * priv = DBUSMENU_GTKMENU_GET_PRIVATE(object);
+ DbusmenuGtkClientPrivate * priv = DBUSMENU_GTKCLIENT_GET_PRIVATE(object);
if (priv->client != NULL) {
g_object_unref(G_OBJECT(priv->client));
priv->client = NULL;
}
- G_OBJECT_CLASS (dbusmenu_gtkmenu_parent_class)->dispose (object);
+ G_OBJECT_CLASS (dbusmenu_gtkclient_parent_class)->dispose (object);
return;
}
static void
-dbusmenu_gtkmenu_finalize (GObject *object)
+dbusmenu_gtkclient_finalize (GObject *object)
{
- DbusmenuGtkMenuPrivate * priv = DBUSMENU_GTKMENU_GET_PRIVATE(object);
+ DbusmenuGtkClientPrivate * priv = DBUSMENU_GTKCLIENT_GET_PRIVATE(object);
g_free(priv->dbus_object);
priv->dbus_object = NULL;
@@ -131,26 +131,26 @@ dbusmenu_gtkmenu_finalize (GObject *object)
g_free(priv->dbus_name);
priv->dbus_name = NULL;
- G_OBJECT_CLASS (dbusmenu_gtkmenu_parent_class)->finalize (object);
+ G_OBJECT_CLASS (dbusmenu_gtkclient_parent_class)->finalize (object);
return;
}
static void
set_property (GObject * obj, guint id, const GValue * value, GParamSpec * pspec)
{
- DbusmenuGtkMenuPrivate * priv = DBUSMENU_GTKMENU_GET_PRIVATE(obj);
+ DbusmenuGtkClientPrivate * priv = DBUSMENU_GTKCLIENT_GET_PRIVATE(obj);
switch (id) {
case PROP_DBUSNAME:
priv->dbus_name = g_value_dup_string(value);
if (priv->dbus_name != NULL && priv->dbus_object != NULL) {
- build_client(DBUSMENU_GTKMENU(obj));
+ build_client(DBUSMENU_GTKCLIENT(obj));
}
break;
case PROP_DBUSOBJECT:
priv->dbus_object = g_value_dup_string(value);
if (priv->dbus_name != NULL && priv->dbus_object != NULL) {
- build_client(DBUSMENU_GTKMENU(obj));
+ build_client(DBUSMENU_GTKCLIENT(obj));
}
break;
default:
@@ -164,7 +164,7 @@ set_property (GObject * obj, guint id, const GValue * value, GParamSpec * pspec)
static void
get_property (GObject * obj, guint id, GValue * value, GParamSpec * pspec)
{
- DbusmenuGtkMenuPrivate * priv = DBUSMENU_GTKMENU_GET_PRIVATE(obj);
+ DbusmenuGtkClientPrivate * priv = DBUSMENU_GTKCLIENT_GET_PRIVATE(obj);
switch (id) {
case PROP_DBUSNAME:
@@ -273,7 +273,7 @@ process_dbusmenu_menuitem (DbusmenuMenuitem * mi, GtkMenu * parentmenu)
/* Processing the layout being updated and handling
that and making it into a menu */
static void
-process_layout_change (DbusmenuClient * client, DbusmenuGtkMenu * gtkmenu)
+process_layout_change (DbusmenuClient * client, DbusmenuGtkClient * gtkmenu)
{
DbusmenuMenuitem * root = dbusmenu_client_get_root(client);
@@ -294,9 +294,9 @@ process_layout_change (DbusmenuClient * client, DbusmenuGtkMenu * gtkmenu)
/* Builds the client and connects all of the signals
up for it so that it's happy-happy */
static void
-build_client (DbusmenuGtkMenu * self)
+build_client (DbusmenuGtkClient * self)
{
- DbusmenuGtkMenuPrivate * priv = DBUSMENU_GTKMENU_GET_PRIVATE(self);
+ DbusmenuGtkClientPrivate * priv = DBUSMENU_GTKCLIENT_GET_PRIVATE(self);
if (priv->client == NULL) {
priv->client = dbusmenu_client_new(priv->dbus_name, priv->dbus_object);
@@ -312,19 +312,19 @@ build_client (DbusmenuGtkMenu * self)
/* Public API */
/**
- dbusmenu_gtkmenu_new:
+ dbusmenu_gtkclient_new:
@dbus_name: Name of the #DbusmenuServer on DBus
@dbus_name: Name of the object on the #DbusmenuServer
- Creates a new #DbusmenuGtkMenu object and creates a #DbusmenuClient
+ Creates a new #DbusmenuGtkClient object and creates a #DbusmenuClient
that connects across DBus to a #DbusmenuServer.
- Return value: A new #DbusmenuGtkMenu sync'd with a server
+ Return value: A new #DbusmenuGtkClient sync'd with a server
*/
-DbusmenuGtkMenu *
-dbusmenu_gtkmenu_new (gchar * dbus_name, gchar * dbus_object)
+DbusmenuGtkClient *
+dbusmenu_gtkclient_new (gchar * dbus_name, gchar * dbus_object)
{
- return g_object_new(DBUSMENU_GTKMENU_TYPE,
+ return g_object_new(DBUSMENU_GTKCLIENT_TYPE,
DBUSMENU_CLIENT_PROP_DBUS_OBJECT, dbus_object,
DBUSMENU_CLIENT_PROP_DBUS_NAME, dbus_name,
NULL);
diff --git a/libdbusmenu-gtk/client.h b/libdbusmenu-gtk/client.h
index d208d16..96846a4 100644
--- a/libdbusmenu-gtk/client.h
+++ b/libdbusmenu-gtk/client.h
@@ -31,17 +31,18 @@ License version 3 and version 2.1 along with this program. If not, see
#include <glib.h>
#include <glib-object.h>
+#include <libdbusmenu-glib/client.h>
G_BEGIN_DECLS
-#define DBUSMENU_GTKCLIENT_TYPE (dbusmenu_gtkmenu_get_type ())
+#define DBUSMENU_GTKCLIENT_TYPE (dbusmenu_gtkclient_get_type ())
#define DBUSMENU_GTKCLIENT(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), DBUSMENU_GTKCLIENT_TYPE, DbusmenuGtkClient))
#define DBUSMENU_GTKCLIENT_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), DBUSMENU_GTKCLIENT_TYPE, DbusmenuGtkClientClass))
#define DBUSMENU_IS_GTKCLIENT(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), DBUSMENU_GTKCLIENT_TYPE))
#define DBUSMENU_IS_GTKCLIENT_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), DBUSMENU_GTKCLIENT_TYPE))
#define DBUSMENU_GTKCLIENT_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), DBUSMENU_GTKCLIENT_TYPE, DbusmenuGtkClientClass))
-#define DBUSMENU_GTKCLIENT_SIGNAL_ROOT_CHANGED "root-changed"
+#define DBUSMENU_GTKCLIENT_SIGNAL_ROOT_CHANGED DBUSMENU_CLIENT_SIGNAL_ROOT_CHANGED
/**
DbusmenuGtkClientClass:
@@ -53,7 +54,10 @@ G_BEGIN_DECLS
*/
typedef struct _DbusmenuGtkClientClass DbusmenuGtkClientClass;
struct _DbusmenuGtkClientClass {
- GtkMenuClass parent_class;
+ DbusmenuClientClass parent_class;
+
+ /* Signals */
+ void (*root_changed) (DbusmenuMenuitem * newroot);
/* Reserved */
void (*reserved1) (void);
@@ -68,7 +72,7 @@ struct _DbusmenuGtkClientClass {
*/
typedef struct _DbusmenuGtkClient DbusmenuGtkClient;
struct _DbusmenuGtkClient {
- GtkMenu parent;
+ DbusmenuClient parent;
};
GType dbusmenu_gtkclient_get_type (void);