gnome-panel r11389 - trunk/applets/clock
- From: vuntz svn gnome org
- To: svn-commits-list gnome org
- Subject: gnome-panel r11389 - trunk/applets/clock
- Date: Tue, 9 Dec 2008 03:47:28 +0000 (UTC)
Author: vuntz
Date: Tue Dec 9 03:47:28 2008
New Revision: 11389
URL: http://svn.gnome.org/viewvc/gnome-panel?rev=11389&view=rev
Log:
2008-12-09 Vincent Untz <vuntz gnome org>
* obox.[ch]: (clock_obox_finalize), (clock_obox_class_init),
(clock_obox_init), (get_class): g_type_class_peek() does not create a
type if the class wasn't used before, so we need to call
g_type_class_ref() (and later, g_type_class_unref())
Modified:
trunk/applets/clock/ChangeLog
trunk/applets/clock/obox.c
trunk/applets/clock/obox.h
Modified: trunk/applets/clock/obox.c
==============================================================================
--- trunk/applets/clock/obox.c (original)
+++ trunk/applets/clock/obox.c Tue Dec 9 03:47:28 2008
@@ -38,12 +38,28 @@
G_DEFINE_TYPE (ClockOBox, clock_obox, GTK_TYPE_BOX)
static void
+clock_obox_finalize (GObject *object)
+{
+ ClockOBox *obox;
+
+ obox = CLOCK_OBOX (object);
+
+ g_type_class_unref (obox->hbox_type);
+ g_type_class_unref (obox->vbox_type);
+
+ G_OBJECT_CLASS (clock_obox_parent_class)->finalize (object);
+}
+
+static void
clock_obox_class_init (ClockOBoxClass *class)
{
+ GObjectClass *gobject_class;
GtkWidgetClass *widget_class;
+ gobject_class = (GObjectClass*) class;
widget_class = (GtkWidgetClass*) class;
+ gobject_class->finalize = clock_obox_finalize;
widget_class->size_request = clock_obox_size_request;
widget_class->size_allocate = clock_obox_size_allocate;
}
@@ -53,6 +69,9 @@
{
obox->orientation = GTK_ORIENTATION_HORIZONTAL;
obox->reverse_order = FALSE;
+
+ obox->hbox_type = g_type_class_ref (GTK_TYPE_HBOX);
+ obox->vbox_type = g_type_class_ref (GTK_TYPE_VBOX);
}
GtkWidget*
@@ -73,10 +92,10 @@
switch (obox->orientation)
{
case GTK_ORIENTATION_HORIZONTAL:
- klass = GTK_WIDGET_CLASS (g_type_class_peek (GTK_TYPE_HBOX));
+ klass = GTK_WIDGET_CLASS (obox->hbox_type);
break;
case GTK_ORIENTATION_VERTICAL:
- klass = GTK_WIDGET_CLASS (g_type_class_peek (GTK_TYPE_VBOX));
+ klass = GTK_WIDGET_CLASS (obox->vbox_type);
break;
default:
g_assert_not_reached ();
Modified: trunk/applets/clock/obox.h
==============================================================================
--- trunk/applets/clock/obox.h (original)
+++ trunk/applets/clock/obox.h Tue Dec 9 03:47:28 2008
@@ -52,6 +52,9 @@
GtkOrientation orientation;
gboolean reverse_order;
+
+ gpointer hbox_type;
+ gpointer vbox_type;
};
struct _ClockOBoxClass
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]