diff options
Diffstat (limited to 'widgets/misc')
35 files changed, 801 insertions, 530 deletions
diff --git a/widgets/misc/ChangeLog b/widgets/misc/ChangeLog index 492646360e..6b302ca415 100644 --- a/widgets/misc/ChangeLog +++ b/widgets/misc/ChangeLog @@ -1,3 +1,43 @@ +2008-05-22 Matthew Barnes <mbarnes@redhat.com> + + ** Fixes part of bug #534360 + + * e-activity-handler.h: + * e-attachment-bar.h: + * e-attachment.c: + * e-calendar-item.c: + * e-calendar-item.h: + * e-calendar.h: + * e-canvas-background.h: + * e-canvas-vbox.h: + * e-canvas.c: + * e-canvas.h: + * e-cell-date-edit.c: + * e-cell-date-edit.h: + * e-combo-button.c: + * e-combo-button.h: + * e-config-page.h: + * e-dateedit.c: + * e-dateedit.h: + * e-dropdown-button.c: + * e-dropdown-button.h: + * e-filter-bar.c: + * e-gui-utils.c: + * e-gui-utils.h: + * e-image-chooser.c: + * e-map.c: + * e-map.h: + * e-multi-config-dialog.h: + * e-popup-menu.h: + * e-printable.h: + * e-reflow.h: + * e-send-options.h: + * e-task-bar.h: + * e-task-widget.h: + * e-url-entry.c: + * e-url-entry.h: + Migrate from deprecated GtkObject symbols to GObject equivalents. + 2008-05-14 Matthew Barnes <mbarnes@redhat.com> ** Fixes bug #311042, Patch by Milan Crha diff --git a/widgets/misc/e-activity-handler.h b/widgets/misc/e-activity-handler.h index 98ba6c38da..8b105720e7 100644 --- a/widgets/misc/e-activity-handler.h +++ b/widgets/misc/e-activity-handler.h @@ -33,10 +33,10 @@ extern "C" { #endif /* __cplusplus */ #define E_TYPE_ACTIVITY_HANDLER (e_activity_handler_get_type ()) -#define E_ACTIVITY_HANDLER(obj) (GTK_CHECK_CAST ((obj), E_TYPE_ACTIVITY_HANDLER, EActivityHandler)) -#define E_ACTIVITY_HANDLER_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), E_TYPE_ACTIVITY_HANDLER, EActivityHandlerClass)) -#define E_IS_ACTIVITY_HANDLER(obj) (GTK_CHECK_TYPE ((obj), E_TYPE_ACTIVITY_HANDLER)) -#define E_IS_ACTIVITY_HANDLER_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((obj), E_TYPE_ACTIVITY_HANDLER)) +#define E_ACTIVITY_HANDLER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), E_TYPE_ACTIVITY_HANDLER, EActivityHandler)) +#define E_ACTIVITY_HANDLER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), E_TYPE_ACTIVITY_HANDLER, EActivityHandlerClass)) +#define E_IS_ACTIVITY_HANDLER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), E_TYPE_ACTIVITY_HANDLER)) +#define E_IS_ACTIVITY_HANDLER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((obj), E_TYPE_ACTIVITY_HANDLER)) typedef struct _EActivityHandler EActivityHandler; @@ -57,7 +57,7 @@ struct _EActivityHandlerClass { }; -GtkType e_activity_handler_get_type (void); +GType e_activity_handler_get_type (void); EActivityHandler *e_activity_handler_new (void); diff --git a/widgets/misc/e-attachment-bar.h b/widgets/misc/e-attachment-bar.h index d975b24633..1cd8bca475 100644 --- a/widgets/misc/e-attachment-bar.h +++ b/widgets/misc/e-attachment-bar.h @@ -66,7 +66,7 @@ struct _EAttachmentBarClass { }; -GtkType e_attachment_bar_get_type (void); +GType e_attachment_bar_get_type (void); GtkWidget *e_attachment_bar_new (GtkAdjustment *adj); void e_attachment_bar_to_multipart (EAttachmentBar *bar, CamelMultipart *multipart, diff --git a/widgets/misc/e-attachment.c b/widgets/misc/e-attachment.c index 27729b396f..b48d528428 100644 --- a/widgets/misc/e-attachment.c +++ b/widgets/misc/e-attachment.c @@ -885,8 +885,5 @@ e_attachment_edit (EAttachment *attachment, GtkWidget *parent) /* make sure that when the parent gets hidden/closed that our windows also close */ parent = gtk_widget_get_toplevel (parent); - gtk_signal_connect_while_alive (GTK_OBJECT (parent), "destroy", (GCallback) close_cb, dialog_data, - GTK_OBJECT (dialog_data->dialog)); - gtk_signal_connect_while_alive (GTK_OBJECT (parent), "hide", (GCallback) close_cb, dialog_data, - GTK_OBJECT (dialog_data->dialog)); + gtk_window_set_destroy_with_parent (GTK_WINDOW (dialog_data->dialog), TRUE); } diff --git a/widgets/misc/e-calendar-item.c b/widgets/misc/e-calendar-item.c index 8b3b3a474d..73e201e694 100644 --- a/widgets/misc/e-calendar-item.c +++ b/widgets/misc/e-calendar-item.c @@ -56,13 +56,15 @@ static const int e_calendar_item_days_in_month[12] = { && ((year) % 4 == 0 && ((year) % 100 != 0 || (year) % 400 == 0))) ? 1 : 0) -static void e_calendar_item_destroy (GtkObject *o); -static void e_calendar_item_get_arg (GtkObject *o, - GtkArg *arg, - guint arg_id); -static void e_calendar_item_set_arg (GtkObject *o, - GtkArg *arg, - guint arg_id); +static void e_calendar_item_dispose (GObject *object); +static void e_calendar_item_get_property(GObject *object, + guint property_id, + GValue *value, + GParamSpec *pspec); +static void e_calendar_item_set_property(GObject *object, + guint property_id, + const GValue *value, + GParamSpec *pspec); static void e_calendar_item_realize (GnomeCanvasItem *item); static void e_calendar_item_unrealize (GnomeCanvasItem *item); static void e_calendar_item_unmap (GnomeCanvasItem *item); @@ -203,29 +205,29 @@ static void e_calendar_item_set_selection_if_emission (ECalendarItem *calitem, /* Our arguments. */ enum { - ARG_0, - ARG_YEAR, - ARG_MONTH, - ARG_X1, - ARG_Y1, - ARG_X2, - ARG_Y2, - ARG_FONT_DESC, - ARG_WEEK_NUMBER_FONT, - ARG_WEEK_NUMBER_FONT_DESC, - ARG_ROW_HEIGHT, - ARG_COLUMN_WIDTH, - ARG_MINIMUM_ROWS, - ARG_MINIMUM_COLUMNS, - ARG_MAXIMUM_ROWS, - ARG_MAXIMUM_COLUMNS, - ARG_WEEK_START_DAY, - ARG_SHOW_WEEK_NUMBERS, - ARG_MAXIMUM_DAYS_SELECTED, - ARG_DAYS_TO_START_WEEK_SELECTION, - ARG_MOVE_SELECTION_WHEN_MOVING, - ARG_PRESERVE_DAY_WHEN_MOVING, - ARG_DISPLAY_POPUP + PROP_0, + PROP_YEAR, + PROP_MONTH, + PROP_X1, + PROP_Y1, + PROP_X2, + PROP_Y2, + PROP_FONT_DESC, + PROP_WEEK_NUMBER_FONT, + PROP_WEEK_NUMBER_FONT_DESC, + PROP_ROW_HEIGHT, + PROP_COLUMN_WIDTH, + PROP_MINIMUM_ROWS, + PROP_MINIMUM_COLUMNS, + PROP_MAXIMUM_ROWS, + PROP_MAXIMUM_COLUMNS, + PROP_WEEK_START_DAY, + PROP_SHOW_WEEK_NUMBERS, + PROP_MAXIMUM_DAYS_SELECTED, + PROP_DAYS_TO_START_WEEK_SELECTION, + PROP_MOVE_SELECTION_WHEN_MOVING, + PROP_PRESERVE_DAY_WHEN_MOVING, + PROP_DISPLAY_POPUP }; enum { @@ -244,90 +246,284 @@ G_DEFINE_TYPE (ECalendarItem, e_calendar_item, GNOME_TYPE_CANVAS_ITEM) static void e_calendar_item_class_init (ECalendarItemClass *class) { - GtkObjectClass *object_class; + GObjectClass *object_class; GnomeCanvasItemClass *item_class; - object_class = GTK_OBJECT_CLASS (class); - item_class = GNOME_CANVAS_ITEM_CLASS (class); + object_class = G_OBJECT_CLASS (class); + object_class->dispose = e_calendar_item_dispose; + object_class->get_property = e_calendar_item_get_property; + object_class->set_property = e_calendar_item_set_property; - gtk_object_add_arg_type ("ECalendarItem::year", - GTK_TYPE_INT, GTK_ARG_READWRITE, - ARG_YEAR); - gtk_object_add_arg_type ("ECalendarItem::month", - GTK_TYPE_INT, GTK_ARG_READWRITE, - ARG_MONTH); - gtk_object_add_arg_type ("ECalendarItem::x1", - GTK_TYPE_DOUBLE, GTK_ARG_READWRITE, - ARG_X1); - gtk_object_add_arg_type ("ECalendarItem::y1", - GTK_TYPE_DOUBLE, GTK_ARG_READWRITE, - ARG_Y1); - gtk_object_add_arg_type ("ECalendarItem::x2", - GTK_TYPE_DOUBLE, GTK_ARG_READWRITE, - ARG_X2); - gtk_object_add_arg_type ("ECalendarItem::y2", - GTK_TYPE_DOUBLE, GTK_ARG_READWRITE, - ARG_Y2); - gtk_object_add_arg_type ("ECalendarItem::font_desc", - GTK_TYPE_POINTER, GTK_ARG_READWRITE, - ARG_FONT_DESC); - gtk_object_add_arg_type ("ECalendarItem::week_number_font_desc", - GTK_TYPE_POINTER, GTK_ARG_READWRITE, - ARG_WEEK_NUMBER_FONT_DESC); - gtk_object_add_arg_type ("ECalendarItem::row_height", - GTK_TYPE_INT, GTK_ARG_READABLE, - ARG_ROW_HEIGHT); - gtk_object_add_arg_type ("ECalendarItem::column_width", - GTK_TYPE_INT, GTK_ARG_READABLE, - ARG_COLUMN_WIDTH); - gtk_object_add_arg_type ("ECalendarItem::minimum_rows", - GTK_TYPE_INT, GTK_ARG_READWRITE, - ARG_MINIMUM_ROWS); - gtk_object_add_arg_type ("ECalendarItem::minimum_columns", - GTK_TYPE_INT, GTK_ARG_READWRITE, - ARG_MINIMUM_COLUMNS); - gtk_object_add_arg_type ("ECalendarItem::maximum_rows", - GTK_TYPE_INT, GTK_ARG_READWRITE, - ARG_MAXIMUM_ROWS); - gtk_object_add_arg_type ("ECalendarItem::maximum_columns", - GTK_TYPE_INT, GTK_ARG_READWRITE, - ARG_MAXIMUM_COLUMNS); - gtk_object_add_arg_type ("ECalendarItem::week_start_day", - GTK_TYPE_INT, GTK_ARG_READWRITE, - ARG_WEEK_START_DAY); - gtk_object_add_arg_type ("ECalendarItem::show_week_numbers", - GTK_TYPE_BOOL, GTK_ARG_READWRITE, - ARG_SHOW_WEEK_NUMBERS); - gtk_object_add_arg_type ("ECalendarItem::maximum_days_selected", - GTK_TYPE_INT, GTK_ARG_READWRITE, - ARG_MAXIMUM_DAYS_SELECTED); - gtk_object_add_arg_type ("ECalendarItem::days_to_start_week_selection", - GTK_TYPE_INT, GTK_ARG_READWRITE, - ARG_DAYS_TO_START_WEEK_SELECTION); - gtk_object_add_arg_type ("ECalendarItem::move_selection_when_moving", - GTK_TYPE_BOOL, GTK_ARG_READWRITE, - ARG_MOVE_SELECTION_WHEN_MOVING); - gtk_object_add_arg_type ("ECalendarItem::preserve_day_when_moving", - GTK_TYPE_BOOL, GTK_ARG_READWRITE, - ARG_PRESERVE_DAY_WHEN_MOVING); - gtk_object_add_arg_type ("ECalendarItem::display_popup", - GTK_TYPE_BOOL, GTK_ARG_READWRITE, - ARG_DISPLAY_POPUP); + item_class = GNOME_CANVAS_ITEM_CLASS (class); + item_class->realize = e_calendar_item_realize; + item_class->unrealize = e_calendar_item_unrealize; + item_class->unmap = e_calendar_item_unmap; + item_class->update = e_calendar_item_update; + item_class->draw = e_calendar_item_draw; + item_class->point = e_calendar_item_point; + item_class->event = e_calendar_item_event; + item_class->bounds = e_calendar_item_bounds; + + class->date_range_changed = NULL; + class->selection_changed = NULL; + class->selection_preview_changed = NULL; + + g_object_class_install_property ( + object_class, + PROP_YEAR, + g_param_spec_int ( + "year", + NULL, + NULL, + G_MININT, + G_MAXINT, + 0, + G_PARAM_READWRITE)); + + g_object_class_install_property ( + object_class, + PROP_MONTH, + g_param_spec_int ( + "month", + NULL, + NULL, + G_MININT, + G_MAXINT, + 0, + G_PARAM_READWRITE)); + + g_object_class_install_property ( + object_class, + PROP_X1, + g_param_spec_double ( + "x1", + NULL, + NULL, + -G_MAXDOUBLE, + G_MAXDOUBLE, + 0., + G_PARAM_READWRITE)); + + g_object_class_install_property ( + object_class, + PROP_Y1, + g_param_spec_double ( + "y1", + NULL, + NULL, + -G_MAXDOUBLE, + G_MAXDOUBLE, + 0., + G_PARAM_READWRITE)); + + g_object_class_install_property ( + object_class, + PROP_X2, + g_param_spec_double ( + "x2", + NULL, + NULL, + -G_MAXDOUBLE, + G_MAXDOUBLE, + 0., + G_PARAM_READWRITE)); + + g_object_class_install_property ( + object_class, + PROP_Y2, + g_param_spec_double ( + "y2", + NULL, + NULL, + -G_MAXDOUBLE, + G_MAXDOUBLE, + 0., + G_PARAM_READWRITE)); + + g_object_class_install_property ( + object_class, + PROP_FONT_DESC, + g_param_spec_boxed ( + "font_desc", + NULL, + NULL, + PANGO_TYPE_FONT_DESCRIPTION, + G_PARAM_READWRITE)); + + g_object_class_install_property ( + object_class, + PROP_WEEK_NUMBER_FONT_DESC, + g_param_spec_boxed ( + "week_number_font_desc", + NULL, + NULL, + PANGO_TYPE_FONT_DESCRIPTION, + G_PARAM_READWRITE)); + + g_object_class_install_property ( + object_class, + PROP_ROW_HEIGHT, + g_param_spec_int ( + "row_height", + NULL, + NULL, + G_MININT, + G_MAXINT, + 0, + G_PARAM_READABLE)); + + g_object_class_install_property ( + object_class, + PROP_COLUMN_WIDTH, + g_param_spec_int ( + "column_width", + NULL, + NULL, + G_MININT, + G_MAXINT, + 0, + G_PARAM_READABLE)); + + g_object_class_install_property ( + object_class, + PROP_MINIMUM_ROWS, + g_param_spec_int ( + "minimum_rows", + NULL, + NULL, + G_MININT, + G_MAXINT, + 0, + G_PARAM_READWRITE)); + + g_object_class_install_property ( + object_class, + PROP_MINIMUM_COLUMNS, + g_param_spec_int ( + "minimum_columns", + NULL, + NULL, + G_MININT, + G_MAXINT, + 0, + G_PARAM_READWRITE)); + + g_object_class_install_property ( + object_class, + PROP_MAXIMUM_ROWS, + g_param_spec_int ( + "maximum_rows", + NULL, + NULL, + G_MININT, + G_MAXINT, + 0, + G_PARAM_READWRITE)); + + g_object_class_install_property ( + object_class, + PROP_MAXIMUM_COLUMNS, + g_param_spec_int ( + "maximum_columns", + NULL, + NULL, + G_MININT, + G_MAXINT, + 0, + G_PARAM_READWRITE)); + + g_object_class_install_property ( + object_class, + PROP_WEEK_START_DAY, + g_param_spec_int ( + "week_start_day", + NULL, + NULL, + G_MININT, + G_MAXINT, + 0, + G_PARAM_READWRITE)); + + g_object_class_install_property ( + object_class, + PROP_SHOW_WEEK_NUMBERS, + g_param_spec_boolean ( + "show_week_numbers", + NULL, + NULL, + TRUE, + G_PARAM_READWRITE)); + + g_object_class_install_property ( + object_class, + PROP_MAXIMUM_DAYS_SELECTED, + g_param_spec_int ( + "maximum_days_selected", + NULL, + NULL, + G_MININT, + G_MAXINT, + 0, + G_PARAM_READWRITE)); + + g_object_class_install_property ( + object_class, + PROP_DAYS_TO_START_WEEK_SELECTION, + g_param_spec_int ( + "days_to_start_week_selection", + NULL, + NULL, + G_MININT, + G_MAXINT, + 0, + G_PARAM_READWRITE)); + + g_object_class_install_property ( + object_class, + PROP_MOVE_SELECTION_WHEN_MOVING, + g_param_spec_boolean ( + "move_selection_when_moving", + NULL, + NULL, + TRUE, + G_PARAM_READWRITE)); + + g_object_class_install_property ( + object_class, + PROP_PRESERVE_DAY_WHEN_MOVING, + g_param_spec_boolean ( + "preserve_day_when_moving", + NULL, + NULL, + TRUE, + G_PARAM_READWRITE)); + + g_object_class_install_property ( + object_class, + PROP_DISPLAY_POPUP, + g_param_spec_boolean ( + "display_popup", + NULL, + NULL, + TRUE, + G_PARAM_READWRITE)); e_calendar_item_signals[DATE_RANGE_CHANGED] = - gtk_signal_new ("date_range_changed", - GTK_RUN_FIRST, - GTK_CLASS_TYPE (object_class), - G_STRUCT_OFFSET (ECalendarItemClass, date_range_changed), - gtk_marshal_NONE__NONE, - GTK_TYPE_NONE, 0); + g_signal_new ("date_range_changed", + G_TYPE_FROM_CLASS (object_class), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (ECalendarItemClass, date_range_changed), + NULL, NULL, + g_cclosure_marshal_VOID__VOID, + G_TYPE_NONE, 0); e_calendar_item_signals[SELECTION_CHANGED] = - gtk_signal_new ("selection_changed", - GTK_RUN_FIRST, - GTK_CLASS_TYPE (object_class), - G_STRUCT_OFFSET (ECalendarItemClass, selection_changed), - gtk_marshal_NONE__NONE, - GTK_TYPE_NONE, 0); + g_signal_new ("selection_changed", + G_TYPE_FROM_CLASS (object_class), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (ECalendarItemClass, selection_changed), + NULL, NULL, + g_cclosure_marshal_VOID__VOID, + G_TYPE_NONE, 0); e_calendar_item_signals[SELECTION_PREVIEW_CHANGED] = g_signal_new ("selection_preview_changed", G_TYPE_FROM_CLASS (object_class), @@ -337,24 +533,6 @@ e_calendar_item_class_init (ECalendarItemClass *class) g_cclosure_marshal_VOID__VOID, G_TYPE_NONE, 0); - object_class->destroy = e_calendar_item_destroy; - object_class->get_arg = e_calendar_item_get_arg; - object_class->set_arg = e_calendar_item_set_arg; - - /* GnomeCanvasItem method overrides */ - item_class->realize = e_calendar_item_realize; - item_class->unrealize = e_calendar_item_unrealize; - item_class->unmap = e_calendar_item_unmap; - item_class->update = e_calendar_item_update; - item_class->draw = e_calendar_item_draw; - item_class->point = e_calendar_item_point; - item_class->event = e_calendar_item_event; - item_class->bounds = e_calendar_item_bounds; - - class->date_range_changed = NULL; - class->selection_changed = NULL; - class->selection_preview_changed = NULL; - e_calendar_item_a11y_init (); } @@ -416,11 +594,11 @@ e_calendar_item_init (ECalendarItem *calitem) static void -e_calendar_item_destroy (GtkObject *o) +e_calendar_item_dispose (GObject *object) { ECalendarItem *calitem; - calitem = E_CALENDAR_ITEM (o); + calitem = E_CALENDAR_ITEM (object); e_calendar_item_set_style_callback (calitem, NULL, NULL, NULL); e_calendar_item_set_get_time_callback (calitem, NULL, NULL, NULL); @@ -447,228 +625,229 @@ e_calendar_item_destroy (GtkObject *o) if (calitem->selecting_axis) g_free (calitem->selecting_axis); - if (GTK_OBJECT_CLASS (e_calendar_item_parent_class)->destroy) - (* GTK_OBJECT_CLASS (e_calendar_item_parent_class)->destroy) (o); + + G_OBJECT_CLASS (e_calendar_item_parent_class)->dispose (object); } static void -e_calendar_item_get_arg (GtkObject *o, GtkArg *arg, guint arg_id) +e_calendar_item_get_property (GObject *object, + guint property_id, + GValue *value, + GParamSpec *pspec) { ECalendarItem *calitem; - calitem = E_CALENDAR_ITEM (o); + calitem = E_CALENDAR_ITEM (object); - switch (arg_id) { - case ARG_YEAR: - GTK_VALUE_INT (*arg) = calitem->year; - break; - case ARG_MONTH: - GTK_VALUE_INT (*arg) = calitem->month; - break; - case ARG_X1: - GTK_VALUE_DOUBLE (*arg) = calitem->x1; - break; - case ARG_Y1: - GTK_VALUE_DOUBLE (*arg) = calitem->y1; - break; - case ARG_X2: - GTK_VALUE_DOUBLE (*arg) = calitem->x2; - break; - case ARG_Y2: - GTK_VALUE_DOUBLE (*arg) = calitem->y2; - break; - case ARG_FONT_DESC: - GTK_VALUE_BOXED (*arg) = calitem->font_desc; - break; - case ARG_WEEK_NUMBER_FONT_DESC: - GTK_VALUE_BOXED (*arg) = calitem->week_number_font_desc; - break; - case ARG_ROW_HEIGHT: + switch (property_id) { + case PROP_YEAR: + g_value_set_int (value, calitem->year); + return; + case PROP_MONTH: + g_value_set_int (value, calitem->month); + return; + case PROP_X1: + g_value_set_double (value, calitem->x1); + return; + case PROP_Y1: + g_value_set_double (value, calitem->y1); + return; + case PROP_X2: + g_value_set_double (value, calitem->x2); + return; + case PROP_Y2: + g_value_set_double (value, calitem->y2); + return; + case PROP_FONT_DESC: + g_value_set_boxed (value, calitem->font_desc); + return; + case PROP_WEEK_NUMBER_FONT_DESC: + g_value_set_boxed (value, calitem->week_number_font_desc); + return; + case PROP_ROW_HEIGHT: e_calendar_item_recalc_sizes (calitem); - GTK_VALUE_INT (*arg) = calitem->min_month_height; - break; - case ARG_COLUMN_WIDTH: + g_value_set_int (value, calitem->min_month_height); + return; + case PROP_COLUMN_WIDTH: e_calendar_item_recalc_sizes (calitem); - GTK_VALUE_INT (*arg) = calitem->min_month_width; - break; - case ARG_MINIMUM_ROWS: - GTK_VALUE_INT (*arg) = calitem->min_rows; - break; - case ARG_MINIMUM_COLUMNS: - GTK_VALUE_INT (*arg) = calitem->min_cols; - break; - case ARG_MAXIMUM_ROWS: - GTK_VALUE_INT (*arg) = calitem->max_rows; - break; - case ARG_MAXIMUM_COLUMNS: - GTK_VALUE_INT (*arg) = calitem->max_cols; - break; - case ARG_WEEK_START_DAY: - GTK_VALUE_INT (*arg) = calitem->week_start_day; - break; - case ARG_SHOW_WEEK_NUMBERS: - GTK_VALUE_BOOL (*arg) = calitem->show_week_numbers; - break; - case ARG_MAXIMUM_DAYS_SELECTED: - GTK_VALUE_INT (*arg) = e_calendar_item_get_max_days_sel (calitem); - break; - case ARG_DAYS_TO_START_WEEK_SELECTION: - GTK_VALUE_INT (*arg) = e_calendar_item_get_days_start_week_sel (calitem); - break; - case ARG_MOVE_SELECTION_WHEN_MOVING: - GTK_VALUE_BOOL (*arg) = calitem->move_selection_when_moving; - break; - case ARG_PRESERVE_DAY_WHEN_MOVING: - GTK_VALUE_BOOL (*arg) = calitem->preserve_day_when_moving; - break; - case ARG_DISPLAY_POPUP: - GTK_VALUE_BOOL (*arg) = e_calendar_item_get_display_popup (calitem); - break; - default: - g_warning ("Invalid arg"); + g_value_set_int (value, calitem->min_month_width); + return; + case PROP_MINIMUM_ROWS: + g_value_set_int (value, calitem->min_rows); + return; + case PROP_MINIMUM_COLUMNS: + g_value_set_int (value, calitem->min_cols); + return; + case PROP_MAXIMUM_ROWS: + g_value_set_int (value, calitem->max_rows); + return; + case PROP_MAXIMUM_COLUMNS: + g_value_set_int (value, calitem->max_cols); + return; + case PROP_WEEK_START_DAY: + g_value_set_int (value, calitem->week_start_day); + return; + case PROP_SHOW_WEEK_NUMBERS: + g_value_set_boolean (value, calitem->show_week_numbers); + return; + case PROP_MAXIMUM_DAYS_SELECTED: + g_value_set_int (value, e_calendar_item_get_max_days_sel (calitem)); + return; + case PROP_DAYS_TO_START_WEEK_SELECTION: + g_value_set_int (value, e_calendar_item_get_days_start_week_sel (calitem)); + return; + case PROP_MOVE_SELECTION_WHEN_MOVING: + g_value_set_boolean (value, calitem->move_selection_when_moving); + return; + case PROP_PRESERVE_DAY_WHEN_MOVING: + g_value_set_boolean (value, calitem->preserve_day_when_moving); + return; + case PROP_DISPLAY_POPUP: + g_value_set_boolean (value, e_calendar_item_get_display_popup (calitem)); + return; } + + G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec); } static void -e_calendar_item_set_arg (GtkObject *o, GtkArg *arg, guint arg_id) +e_calendar_item_set_property (GObject *object, + guint property_id, + const GValue *value, + GParamSpec *pspec) { GnomeCanvasItem *item; ECalendarItem *calitem; PangoFontDescription *font_desc; - gboolean need_update = FALSE; gdouble dvalue; gint ivalue; gboolean bvalue; - item = GNOME_CANVAS_ITEM (o); - calitem = E_CALENDAR_ITEM (o); + item = GNOME_CANVAS_ITEM (object); + calitem = E_CALENDAR_ITEM (object); - switch (arg_id){ - case ARG_YEAR: - ivalue = GTK_VALUE_INT (*arg); + switch (property_id) { + case PROP_YEAR: + ivalue = g_value_get_int (value); e_calendar_item_set_first_month (calitem, ivalue, calitem->month); - break; - case ARG_MONTH: - ivalue = GTK_VALUE_INT (*arg); + return; + case PROP_MONTH: + ivalue = g_value_get_int (value); e_calendar_item_set_first_month (calitem, calitem->year, ivalue); - break; - case ARG_X1: - dvalue = GTK_VALUE_DOUBLE (*arg); + return; + case PROP_X1: + dvalue = g_value_get_double (value); if (calitem->x1 != dvalue) { calitem->x1 = dvalue; - need_update = TRUE; + gnome_canvas_item_request_update (item); } - break; - case ARG_Y1: - dvalue = GTK_VALUE_DOUBLE (*arg); + return; + case PROP_Y1: + dvalue = g_value_get_double (value); if (calitem->y1 != dvalue) { calitem->y1 = dvalue; - need_update = TRUE; + gnome_canvas_item_request_update (item); } - break; - case ARG_X2: - dvalue = GTK_VALUE_DOUBLE (*arg); + return; + case PROP_X2: + dvalue = g_value_get_double (value); if (calitem->x2 != dvalue) { calitem->x2 = dvalue; - need_update = TRUE; + gnome_canvas_item_request_update (item); } - break; - case ARG_Y2: - dvalue = GTK_VALUE_DOUBLE (*arg); + return; + case PROP_Y2: + dvalue = g_value_get_double (value); if (calitem->y2 != dvalue) { calitem->y2 = dvalue; - need_update = TRUE; + gnome_canvas_item_request_update (item); } - break; - case ARG_FONT_DESC: - font_desc = GTK_VALUE_BOXED (*arg); + return; + case PROP_FONT_DESC: + font_desc = g_value_get_boxed (value); if (calitem->font_desc) pango_font_description_free (calitem->font_desc); calitem->font_desc = pango_font_description_copy (font_desc); - need_update = TRUE; - break; - case ARG_WEEK_NUMBER_FONT_DESC: - font_desc = GTK_VALUE_BOXED (*arg); + gnome_canvas_item_request_update (item); + return; + case PROP_WEEK_NUMBER_FONT_DESC: + font_desc = g_value_get_boxed (value); if (calitem->week_number_font_desc) pango_font_description_free (calitem->week_number_font_desc); calitem->week_number_font_desc = pango_font_description_copy (font_desc); - need_update = TRUE; - break; - case ARG_MINIMUM_ROWS: - ivalue = GTK_VALUE_INT (*arg); + gnome_canvas_item_request_update (item); + return; + case PROP_MINIMUM_ROWS: + ivalue = g_value_get_int (value); ivalue = MAX (1, ivalue); if (calitem->min_rows != ivalue) { calitem->min_rows = ivalue; - need_update = TRUE; + gnome_canvas_item_request_update (item); } - break; - case ARG_MINIMUM_COLUMNS: - ivalue = GTK_VALUE_INT (*arg); + return; + case PROP_MINIMUM_COLUMNS: + ivalue = g_value_get_int (value); ivalue = MAX (1, ivalue); if (calitem->min_cols != ivalue) { calitem->min_cols = ivalue; - need_update = TRUE; + gnome_canvas_item_request_update (item); } - break; - case ARG_MAXIMUM_ROWS: - ivalue = GTK_VALUE_INT (*arg); + return; + case PROP_MAXIMUM_ROWS: + ivalue = g_value_get_int (value); if (calitem->max_rows != ivalue) { calitem->max_rows = ivalue; - need_update = TRUE; + gnome_canvas_item_request_update (item); } - break; - case ARG_MAXIMUM_COLUMNS: - ivalue = GTK_VALUE_INT (*arg); + return; + case PROP_MAXIMUM_COLUMNS: + ivalue = g_value_get_int (value); if (calitem->max_cols != ivalue) { calitem->max_cols = ivalue; - need_update = TRUE; + gnome_canvas_item_request_update (item); } - break; - case ARG_WEEK_START_DAY: - ivalue = GTK_VALUE_INT (*arg); + return; + case PROP_WEEK_START_DAY: + ivalue = g_value_get_int (value); if (calitem->week_start_day != ivalue) { calitem->week_start_day = ivalue; - need_update = TRUE; + gnome_canvas_item_request_update (item); } - break; - case ARG_SHOW_WEEK_NUMBERS: - bvalue = GTK_VALUE_BOOL (*arg); + return; + case PROP_SHOW_WEEK_NUMBERS: + bvalue = g_value_get_boolean (value); if (calitem->show_week_numbers != bvalue) { calitem->show_week_numbers = bvalue; - need_update = TRUE; + gnome_canvas_item_request_update (item); } - break; - case ARG_MAXIMUM_DAYS_SELECTED: - ivalue = GTK_VALUE_INT (*arg); + return; + case PROP_MAXIMUM_DAYS_SELECTED: + ivalue = g_value_get_int (value); e_calendar_item_set_max_days_sel (calitem, ivalue); - break; - case ARG_DAYS_TO_START_WEEK_SELECTION: - ivalue = GTK_VALUE_INT (*arg); + return; + case PROP_DAYS_TO_START_WEEK_SELECTION: + ivalue = g_value_get_int (value); e_calendar_item_set_days_start_week_sel (calitem, ivalue); - break; - case ARG_MOVE_SELECTION_WHEN_MOVING: - bvalue = GTK_VALUE_BOOL (*arg); + return; + case PROP_MOVE_SELECTION_WHEN_MOVING: + bvalue = g_value_get_boolean (value); calitem->move_selection_when_moving = bvalue; - break; - case ARG_PRESERVE_DAY_WHEN_MOVING: - bvalue = GTK_VALUE_BOOL (*arg); + return; + case PROP_PRESERVE_DAY_WHEN_MOVING: + bvalue = g_value_get_boolean (value); calitem->preserve_day_when_moving = bvalue; - break; - case ARG_DISPLAY_POPUP: - bvalue = GTK_VALUE_BOOL (*arg); + return; + case PROP_DISPLAY_POPUP: + bvalue = g_value_get_boolean (value); e_calendar_item_set_display_popup (calitem, bvalue); - break; - default: - g_warning ("Invalid arg"); + return; } - if (need_update) { - gnome_canvas_item_request_update (item); - } + G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec); } static void @@ -3195,7 +3374,7 @@ void e_calendar_item_set_style_callback (ECalendarItem *calitem, ECalendarItemStyleCallback cb, gpointer data, - GtkDestroyNotify destroy) + GDestroyNotify destroy) { g_return_if_fail (E_IS_CALENDAR_ITEM (calitem)); @@ -3246,14 +3425,12 @@ e_calendar_item_signal_emission_idle_cb (gpointer data) if (calitem->date_range_changed) { calitem->date_range_changed = FALSE; - gtk_signal_emit (GTK_OBJECT (calitem), - e_calendar_item_signals[DATE_RANGE_CHANGED]); + g_signal_emit (calitem, e_calendar_item_signals[DATE_RANGE_CHANGED], 0); } if (calitem->selection_changed) { calitem->selection_changed = FALSE; - gtk_signal_emit (GTK_OBJECT (calitem), - e_calendar_item_signals[SELECTION_CHANGED]); + g_signal_emit (calitem, e_calendar_item_signals[SELECTION_CHANGED], 0); } g_object_unref((calitem)); @@ -3270,7 +3447,7 @@ void e_calendar_item_set_get_time_callback (ECalendarItem *calitem, ECalendarItemGetTimeCallback cb, gpointer data, - GtkDestroyNotify destroy) + GDestroyNotify destroy) { g_return_if_fail (E_IS_CALENDAR_ITEM (calitem)); diff --git a/widgets/misc/e-calendar-item.h b/widgets/misc/e-calendar-item.h index c78d9d14ec..309e3ab23e 100644 --- a/widgets/misc/e-calendar-item.h +++ b/widgets/misc/e-calendar-item.h @@ -232,11 +232,11 @@ struct _ECalendarItem ECalendarItemStyleCallback style_callback; gpointer style_callback_data; - GtkDestroyNotify style_callback_destroy; + GDestroyNotify style_callback_destroy; ECalendarItemGetTimeCallback time_callback; gpointer time_callback_data; - GtkDestroyNotify time_callback_destroy; + GDestroyNotify time_callback_destroy; /* Colors for drawing. */ GdkColor colors[E_CALENDAR_ITEM_COLOR_LAST]; @@ -262,7 +262,7 @@ struct _ECalendarItemClass }; -GtkType e_calendar_item_get_type (void); +GType e_calendar_item_get_type (void); /* FIXME: months are 0-11 throughout, but 1-12 may be better. */ @@ -351,7 +351,7 @@ void e_calendar_item_mark_days (ECalendarItem *calitem, void e_calendar_item_set_style_callback (ECalendarItem *calitem, ECalendarItemStyleCallback cb, gpointer data, - GtkDestroyNotify destroy); + GDestroyNotify destroy); /* Sets a callback to use to get the current time. This is useful if the application needs to use its own timezone data rather than rely on the @@ -359,7 +359,7 @@ void e_calendar_item_set_style_callback (ECalendarItem *calitem, void e_calendar_item_set_get_time_callback (ECalendarItem *calitem, ECalendarItemGetTimeCallback cb, gpointer data, - GtkDestroyNotify destroy); + GDestroyNotify destroy); void e_calendar_item_normalize_date (ECalendarItem *calitem, gint *year, gint *month); diff --git a/widgets/misc/e-calendar.h b/widgets/misc/e-calendar.h index 3afff4bd52..a31fccceff 100644 --- a/widgets/misc/e-calendar.h +++ b/widgets/misc/e-calendar.h @@ -76,7 +76,7 @@ struct _ECalendarClass }; -GtkType e_calendar_get_type (void); +GType e_calendar_get_type (void); GtkWidget* e_calendar_new (void); void e_calendar_set_minimum_size (ECalendar *cal, diff --git a/widgets/misc/e-canvas-background.h b/widgets/misc/e-canvas-background.h index 94da38baf9..452f606429 100644 --- a/widgets/misc/e-canvas-background.h +++ b/widgets/misc/e-canvas-background.h @@ -65,7 +65,7 @@ struct _ECanvasBackgroundClass { /* Standard Gtk function */ -GtkType e_canvas_background_get_type (void); +GType e_canvas_background_get_type (void); G_END_DECLS diff --git a/widgets/misc/e-canvas-vbox.h b/widgets/misc/e-canvas-vbox.h index d78d358095..6fb7ab3852 100644 --- a/widgets/misc/e-canvas-vbox.h +++ b/widgets/misc/e-canvas-vbox.h @@ -83,7 +83,7 @@ struct _ECanvasVboxClass */ void e_canvas_vbox_add_item(ECanvasVbox *e_canvas_vbox, GnomeCanvasItem *item); void e_canvas_vbox_add_item_start(ECanvasVbox *e_canvas_vbox, GnomeCanvasItem *item); -GtkType e_canvas_vbox_get_type (void); +GType e_canvas_vbox_get_type (void); #ifdef __cplusplus } diff --git a/widgets/misc/e-canvas.c b/widgets/misc/e-canvas.c index 55b19ad2a3..6fc73f2e28 100644 --- a/widgets/misc/e-canvas.c +++ b/widgets/misc/e-canvas.c @@ -649,7 +649,7 @@ ec_style_set_recursive (GnomeCanvasItem *item, GtkStyle *previous_style) if (signal_id >= 1) { GSignalQuery query; g_signal_query (signal_id, &query); - if (query.return_type == GTK_TYPE_NONE && query.n_params == 1 && query.param_types[0] == GTK_TYPE_STYLE) { + if (query.return_type == G_TYPE_NONE && query.n_params == 1 && query.param_types[0] == GTK_TYPE_STYLE) { g_signal_emit (item, signal_id, 0, previous_style); } } diff --git a/widgets/misc/e-canvas.h b/widgets/misc/e-canvas.h index de0f0f361c..63b0fb3107 100644 --- a/widgets/misc/e-canvas.h +++ b/widgets/misc/e-canvas.h @@ -106,7 +106,7 @@ struct _ECanvasClass }; -GtkType e_canvas_get_type (void); +GType e_canvas_get_type (void); GtkWidget *e_canvas_new (void); /* Used to send all of the keystroke events to a specific item as well as diff --git a/widgets/misc/e-cell-date-edit.c b/widgets/misc/e-cell-date-edit.c index b61bb3ce1b..e54d5581f4 100644 --- a/widgets/misc/e-cell-date-edit.c +++ b/widgets/misc/e-cell-date-edit.c @@ -52,12 +52,14 @@ #include "e-calendar.h" static void e_cell_date_edit_destroy (GtkObject *object); -static void e_cell_date_edit_get_arg (GtkObject *o, - GtkArg *arg, - guint arg_id); -static void e_cell_date_edit_set_arg (GtkObject *o, - GtkArg *arg, - guint arg_id); +static void e_cell_date_edit_get_property (GObject *object, + guint property_id, + GValue *value, + GParamSpec *pspec); +static void e_cell_date_edit_set_property (GObject *object, + guint property_id, + const GValue *value, + GParamSpec *pspec); static gint e_cell_date_edit_do_popup (ECellPopup *ecp, GdkEvent *event, @@ -103,57 +105,114 @@ static void e_cell_date_edit_hide_popup (ECellDateEdit *ecde); /* Our arguments. */ enum { - ARG_0, - ARG_SHOW_TIME, - ARG_SHOW_NOW_BUTTON, - ARG_SHOW_TODAY_BUTTON, - ARG_ALLOW_NO_DATE_SET, - ARG_USE_24_HOUR_FORMAT, - ARG_LOWER_HOUR, - ARG_UPPER_HOUR + PROP_0, + PROP_SHOW_TIME, + PROP_SHOW_NOW_BUTTON, + PROP_SHOW_TODAY_BUTTON, + PROP_ALLOW_NO_DATE_SET, + PROP_USE_24_HOUR_FORMAT, + PROP_LOWER_HOUR, + PROP_UPPER_HOUR }; G_DEFINE_TYPE (ECellDateEdit, e_cell_date_edit, E_CELL_POPUP_TYPE) static void -e_cell_date_edit_class_init (ECellDateEditClass *ecdec) +e_cell_date_edit_class_init (ECellDateEditClass *class) { - GtkObjectClass *object_class = (GtkObjectClass *) ecdec; - ECellPopupClass *ecpc = (ECellPopupClass *) ecdec; - - gtk_object_add_arg_type ("ECellDateEdit::show_time", - GTK_TYPE_BOOL, GTK_ARG_READWRITE, - ARG_SHOW_TIME); - gtk_object_add_arg_type ("ECellDateEdit::show_now_button", - GTK_TYPE_BOOL, GTK_ARG_READWRITE, - ARG_SHOW_NOW_BUTTON); - gtk_object_add_arg_type ("ECellDateEdit::show_today_button", - GTK_TYPE_BOOL, GTK_ARG_READWRITE, - ARG_SHOW_TODAY_BUTTON); - gtk_object_add_arg_type ("ECellDateEdit::allow_no_date_set", - GTK_TYPE_BOOL, GTK_ARG_READWRITE, - ARG_ALLOW_NO_DATE_SET); - gtk_object_add_arg_type ("ECellDateEdit::use_24_hour_format", - GTK_TYPE_BOOL, GTK_ARG_READWRITE, - ARG_USE_24_HOUR_FORMAT); - gtk_object_add_arg_type ("ECellDateEdit::lower_hour", - GTK_TYPE_INT, GTK_ARG_READWRITE, - ARG_LOWER_HOUR); - gtk_object_add_arg_type ("ECellDateEdit::upper_hour", - GTK_TYPE_INT, GTK_ARG_READWRITE, - ARG_UPPER_HOUR); - - object_class->destroy = e_cell_date_edit_destroy; - object_class->get_arg = e_cell_date_edit_get_arg; - object_class->set_arg = e_cell_date_edit_set_arg; + GObjectClass *object_class; + GtkObjectClass *gtk_object_class; + ECellPopupClass *ecpc; + object_class = G_OBJECT_CLASS (class); + object_class->get_property = e_cell_date_edit_get_property; + object_class->set_property = e_cell_date_edit_set_property; + + gtk_object_class = GTK_OBJECT_CLASS (class); + gtk_object_class->destroy = e_cell_date_edit_destroy; + + ecpc = E_CELL_POPUP_CLASS (class); ecpc->popup = e_cell_date_edit_do_popup; + + g_object_class_install_property ( + object_class, + PROP_SHOW_TIME, + g_param_spec_boolean ( + "show_time", + NULL, + NULL, + TRUE, + G_PARAM_READWRITE)); + + g_object_class_install_property ( + object_class, + PROP_SHOW_NOW_BUTTON, + g_param_spec_boolean ( + "show_now_button", + NULL, + NULL, + TRUE, + G_PARAM_READWRITE)); + + g_object_class_install_property ( + object_class, + PROP_SHOW_TODAY_BUTTON, + g_param_spec_boolean ( + "show_today_button", + NULL, + NULL, + TRUE, + G_PARAM_READWRITE)); + + g_object_class_install_property ( + object_class, + PROP_ALLOW_NO_DATE_SET, + g_param_spec_boolean ( + "allow_no_date_set", + NULL, + NULL, + TRUE, + G_PARAM_READWRITE)); + + g_object_class_install_property ( + object_class, + PROP_USE_24_HOUR_FORMAT, + g_param_spec_boolean ( + "use_24_hour_format", + NULL, + NULL, + TRUE, + G_PARAM_READWRITE)); + + g_object_class_install_property ( + object_class, + PROP_LOWER_HOUR, + g_param_spec_int ( + "lower_hour", + NULL, + NULL, + G_MININT, + G_MAXINT, + 0, + G_PARAM_READWRITE)); + + g_object_class_install_property ( + object_class, + PROP_UPPER_HOUR, + g_param_spec_int ( + "upper_hour", + NULL, + NULL, + G_MININT, + G_MAXINT, + 24, + G_PARAM_READWRITE)); } static void -e_cell_date_edit_init (ECellDateEdit *ecde) +e_cell_date_edit_init (ECellDateEdit *ecde) { GtkWidget *frame, *vbox, *hbox, *vbox2; GtkWidget *scrolled_window, *list, *bbox; @@ -305,120 +364,113 @@ e_cell_date_edit_destroy (GtkObject *object) static void -e_cell_date_edit_get_arg (GtkObject *o, - GtkArg *arg, - guint arg_id) +e_cell_date_edit_get_property (GObject *object, + guint property_id, + GValue *value, + GParamSpec *pspec) { ECellDateEdit *ecde; - ecde = E_CELL_DATE_EDIT (o); - - switch (arg_id) { - case ARG_SHOW_TIME: - GTK_VALUE_BOOL (*arg) = GTK_WIDGET_VISIBLE (ecde->time_entry) ? TRUE : FALSE; - break; - case ARG_SHOW_NOW_BUTTON: - GTK_VALUE_BOOL (*arg) = GTK_WIDGET_VISIBLE (ecde->now_button) ? TRUE : FALSE; - break; - case ARG_SHOW_TODAY_BUTTON: - GTK_VALUE_BOOL (*arg) = GTK_WIDGET_VISIBLE (ecde->today_button) ? TRUE : FALSE; - break; - case ARG_ALLOW_NO_DATE_SET: - GTK_VALUE_BOOL (*arg) = GTK_WIDGET_VISIBLE (ecde->none_button) ? TRUE : FALSE; - break; - case ARG_USE_24_HOUR_FORMAT: - GTK_VALUE_BOOL (*arg) = ecde->use_24_hour_format; - break; - case ARG_LOWER_HOUR: - GTK_VALUE_INT (*arg) = ecde->lower_hour; - break; - case ARG_UPPER_HOUR: - GTK_VALUE_INT (*arg) = ecde->upper_hour; - break; - default: - g_warning ("Invalid arg"); + ecde = E_CELL_DATE_EDIT (object); + + switch (property_id) { + case PROP_SHOW_TIME: + g_value_set_boolean (value, GTK_WIDGET_VISIBLE (ecde->time_entry)); + return; + case PROP_SHOW_NOW_BUTTON: + g_value_set_boolean (value, GTK_WIDGET_VISIBLE (ecde->now_button)); + return; + case PROP_SHOW_TODAY_BUTTON: + g_value_set_boolean (value, GTK_WIDGET_VISIBLE (ecde->today_button)); + return; + case PROP_ALLOW_NO_DATE_SET: + g_value_set_boolean (value, GTK_WIDGET_VISIBLE (ecde->none_button)); + return; + case PROP_USE_24_HOUR_FORMAT: + g_value_set_boolean (value, ecde->use_24_hour_format); + return; + case PROP_LOWER_HOUR: + g_value_set_int (value, ecde->lower_hour); + return; + case PROP_UPPER_HOUR: + g_value_set_int (value, ecde->upper_hour); + return; } + + G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec); } static void -e_cell_date_edit_set_arg (GtkObject *o, - GtkArg *arg, - guint arg_id) +e_cell_date_edit_set_property (GObject *object, + guint property_id, + const GValue *value, + GParamSpec *pspec) { ECellDateEdit *ecde; gint ivalue; gboolean bvalue; - ecde = E_CELL_DATE_EDIT (o); + ecde = E_CELL_DATE_EDIT (object); - switch (arg_id){ - case ARG_SHOW_TIME: - bvalue = GTK_VALUE_BOOL (*arg); - if (bvalue) { + switch (property_id) { + case PROP_SHOW_TIME: + if (g_value_get_boolean (value)) { gtk_widget_show (ecde->time_entry); gtk_widget_show (ecde->time_list); } else { gtk_widget_hide (ecde->time_entry); gtk_widget_hide (ecde->time_list); } - break; - case ARG_SHOW_NOW_BUTTON: - bvalue = GTK_VALUE_BOOL (*arg); - if (bvalue) { + return; + case PROP_SHOW_NOW_BUTTON: + if (g_value_get_boolean (value)) { gtk_widget_show (ecde->now_button); } else { gtk_widget_hide (ecde->now_button); } - break; - case ARG_SHOW_TODAY_BUTTON: - bvalue = GTK_VALUE_BOOL (*arg); - if (bvalue) { + return; + case PROP_SHOW_TODAY_BUTTON: + if (g_value_get_boolean (value)) { gtk_widget_show (ecde->today_button); } else { gtk_widget_hide (ecde->today_button); } - break; - case ARG_ALLOW_NO_DATE_SET: - bvalue = GTK_VALUE_BOOL (*arg); - if (bvalue) { + return; + case PROP_ALLOW_NO_DATE_SET: + if (g_value_get_boolean (value)) { gtk_widget_show (ecde->none_button); } else { /* FIXME: What if we have no date set now. */ gtk_widget_hide (ecde->none_button); } - break; - case ARG_USE_24_HOUR_FORMAT: - bvalue = GTK_VALUE_BOOL (*arg); + return; + case PROP_USE_24_HOUR_FORMAT: + bvalue = g_value_get_boolean (value); if (ecde->use_24_hour_format != bvalue) { ecde->use_24_hour_format = bvalue; ecde->need_time_list_rebuild = TRUE; } - break; - case ARG_LOWER_HOUR: - ivalue = GTK_VALUE_INT (*arg); + return; + case PROP_LOWER_HOUR: + ivalue = g_value_get_int (value); ivalue = CLAMP (ivalue, 0, 24); if (ecde->lower_hour != ivalue) { ecde->lower_hour = ivalue; ecde->need_time_list_rebuild = TRUE; } - break; - case ARG_UPPER_HOUR: - ivalue = GTK_VALUE_INT (*arg); + return; + case PROP_UPPER_HOUR: + ivalue = g_value_get_int (value); ivalue = CLAMP (ivalue, 0, 24); if (ecde->upper_hour != ivalue) { ecde->upper_hour = ivalue; ecde->need_time_list_rebuild = TRUE; } - break; - default: - g_warning ("Invalid arg"); + return; } -#if 0 - if (ecde->need_time_list_rebuild && ecde->freeze_count == 0) - e_cell_date_edit_rebuild_time_list (ecde); -#endif + G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec); } @@ -949,7 +1001,7 @@ void e_cell_date_edit_set_get_time_callback (ECellDateEdit *ecde, ECellDateEditGetTimeCallback cb, gpointer data, - GtkDestroyNotify destroy) + GDestroyNotify destroy) { g_return_if_fail (E_IS_CELL_DATE_EDIT (ecde)); diff --git a/widgets/misc/e-cell-date-edit.h b/widgets/misc/e-cell-date-edit.h index c1253f30c9..33fff3746b 100644 --- a/widgets/misc/e-cell-date-edit.h +++ b/widgets/misc/e-cell-date-edit.h @@ -75,7 +75,7 @@ struct _ECellDateEdit { ECellDateEditGetTimeCallback time_callback; gpointer time_callback_data; - GtkDestroyNotify time_callback_destroy; + GDestroyNotify time_callback_destroy; }; struct _ECellDateEditClass { @@ -83,7 +83,7 @@ struct _ECellDateEditClass { }; -GtkType e_cell_date_edit_get_type (void); +GType e_cell_date_edit_get_type (void); ECell *e_cell_date_edit_new (void); @@ -100,7 +100,7 @@ void e_cell_date_edit_thaw (ECellDateEdit *ecde); void e_cell_date_edit_set_get_time_callback(ECellDateEdit *ecde, ECellDateEditGetTimeCallback cb, gpointer data, - GtkDestroyNotify destroy); + GDestroyNotify destroy); #endif /* _E_CELL_DATE_EDIT_H_ */ diff --git a/widgets/misc/e-combo-button.c b/widgets/misc/e-combo-button.c index 5b732e1299..541d476d2e 100644 --- a/widgets/misc/e-combo-button.c +++ b/widgets/misc/e-combo-button.c @@ -391,7 +391,7 @@ impl_released (GtkButton *button) gtk_button_clicked (button); if (! priv->menu_popped_up) - gtk_signal_emit (GTK_OBJECT (button), signals[ACTIVATE_DEFAULT]); + g_signal_emit (button, signals[ACTIVATE_DEFAULT], 0); } new_state = (button->in_button ? GTK_STATE_PRELIGHT : GTK_STATE_NORMAL); @@ -429,12 +429,13 @@ e_combo_button_class_init (EComboButtonClass *combo_button_class) button_class = GTK_BUTTON_CLASS (object_class); button_class->released = impl_released; - signals[ACTIVATE_DEFAULT] = gtk_signal_new ("activate_default", - GTK_RUN_FIRST, - GTK_CLASS_TYPE (object_class), - G_STRUCT_OFFSET (EComboButtonClass, activate_default), - gtk_marshal_NONE__NONE, - GTK_TYPE_NONE, 0); + signals[ACTIVATE_DEFAULT] = g_signal_new ("activate_default", + G_TYPE_FROM_CLASS (object_class), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (EComboButtonClass, activate_default), + NULL, NULL, + g_cclosure_marshal_VOID__VOID, + G_TYPE_NONE, 0); e_combo_button_a11y_init (); } diff --git a/widgets/misc/e-combo-button.h b/widgets/misc/e-combo-button.h index f14c2c7901..f8b27f7dde 100644 --- a/widgets/misc/e-combo-button.h +++ b/widgets/misc/e-combo-button.h @@ -62,7 +62,7 @@ struct _EComboButtonClass { }; -GtkType e_combo_button_get_type (void); +GType e_combo_button_get_type (void); void e_combo_button_construct (EComboButton *combo_button); GtkWidget *e_combo_button_new (void); diff --git a/widgets/misc/e-config-page.h b/widgets/misc/e-config-page.h index 812f357fe2..957d314d5b 100644 --- a/widgets/misc/e-config-page.h +++ b/widgets/misc/e-config-page.h @@ -57,7 +57,7 @@ struct _EConfigPageClass { }; -GtkType e_config_page_get_type (void); +GType e_config_page_get_type (void); GtkWidget *e_config_page_new (void); #ifdef __cplusplus diff --git a/widgets/misc/e-dateedit.c b/widgets/misc/e-dateedit.c index acfd0dfcc9..ca3c683cbe 100644 --- a/widgets/misc/e-dateedit.c +++ b/widgets/misc/e-dateedit.c @@ -125,7 +125,7 @@ struct _EDateEditPrivate { EDateEditGetTimeCallback time_callback; gpointer time_callback_data; - GtkDestroyNotify time_callback_destroy; + GDestroyNotify time_callback_destroy; gboolean twodigit_year_can_future; }; @@ -219,7 +219,7 @@ static GtkHBoxClass *parent_class; /** * e_date_edit_get_type: * - * Returns the GtkType for the EDateEdit widget + * Returns the GType for the EDateEdit widget */ GType e_date_edit_get_type (void) @@ -261,7 +261,7 @@ e_date_edit_class_init (EDateEditClass *class) G_STRUCT_OFFSET (EDateEditClass, changed), NULL, NULL, g_cclosure_marshal_VOID__VOID, - GTK_TYPE_NONE, 0); + G_TYPE_NONE, 0); object_class->dispose = e_date_edit_dispose; @@ -2153,7 +2153,7 @@ void e_date_edit_set_get_time_callback (EDateEdit *dedit, EDateEditGetTimeCallback cb, gpointer data, - GtkDestroyNotify destroy) + GDestroyNotify destroy) { EDateEditPrivate *priv; diff --git a/widgets/misc/e-dateedit.h b/widgets/misc/e-dateedit.h index 29005a575b..e9a3d715c7 100644 --- a/widgets/misc/e-dateedit.h +++ b/widgets/misc/e-dateedit.h @@ -180,7 +180,7 @@ void e_date_edit_set_twodigit_year_can_future (EDateEdit *dedit, void e_date_edit_set_get_time_callback (EDateEdit *dedit, EDateEditGetTimeCallback cb, gpointer data, - GtkDestroyNotify destroy); + GDestroyNotify destroy); GtkWidget* e_date_edit_get_entry (EDateEdit *dedit); diff --git a/widgets/misc/e-dropdown-button.c b/widgets/misc/e-dropdown-button.c index 4054e4a254..dad8cc723f 100644 --- a/widgets/misc/e-dropdown-button.c +++ b/widgets/misc/e-dropdown-button.c @@ -207,9 +207,9 @@ e_dropdown_button_construct (EDropdownButton *dropdown_button, priv->menu = GTK_WIDGET (menu); - gtk_signal_connect_while_alive (GTK_OBJECT (priv->menu), "deactivate", - G_CALLBACK (menu_deactivate_cb), - dropdown_button, GTK_OBJECT (dropdown_button)); + g_signal_connect_object (priv->menu, "deactivate", + G_CALLBACK (menu_deactivate_cb), + dropdown_button, 0); } /** diff --git a/widgets/misc/e-dropdown-button.h b/widgets/misc/e-dropdown-button.h index 3e531dfcae..2571913e2d 100644 --- a/widgets/misc/e-dropdown-button.h +++ b/widgets/misc/e-dropdown-button.h @@ -57,7 +57,7 @@ struct _EDropdownButtonClass { }; -GtkType e_dropdown_button_get_type (void); +GType e_dropdown_button_get_type (void); void e_dropdown_button_construct (EDropdownButton *dropdown_button, const char *label_text, GtkMenu *menu); diff --git a/widgets/misc/e-filter-bar.c b/widgets/misc/e-filter-bar.c index 20d85d8f63..2e01ed4097 100644 --- a/widgets/misc/e-filter-bar.c +++ b/widgets/misc/e-filter-bar.c @@ -924,24 +924,24 @@ class_init (EFilterBarClass *klass) pspec = g_param_spec_string ("state", NULL, NULL, NULL, G_PARAM_READWRITE); g_object_class_install_property (object_class, PROP_STATE, pspec); - /*gtk_object_add_arg_type ("EFilterBar::query", GTK_TYPE_STRING, GTK_ARG_READABLE, ARG_QUERY);*/ + /*gtk_object_add_arg_type ("EFilterBar::query", G_TYPE_STRING, GTK_ARG_READABLE, ARG_QUERY);*/ #if 0 esb_signals [QUERY_CHANGED] = - gtk_signal_new ("query_changed", - GTK_RUN_LAST, + g_signal_new ("query_changed", + G_SIGNAL_RUN_LAST, object_class->type, G_STRUCT_OFFSET (EFilterBarClass, query_changed), - gtk_marshal_NONE__NONE, - GTK_TYPE_NONE, 0); + g_cclosure_marshal_VOID__VOID, + G_TYPE_NONE, 0); esb_signals [MENU_ACTIVATED] = - gtk_signal_new ("menu_activated", - GTK_RUN_LAST, + g_signal_new ("menu_activated", + G_SIGNAL_RUN_LAST, object_class->type, G_STRUCT_OFFSET (EFilterBarClass, menu_activated), g_cclosure_marshal_VOID__INT, - GTK_TYPE_NONE, 1, GTK_TYPE_INT); + G_TYPE_NONE, 1, G_TYPE_INT); gtk_object_class_add_signals (object_class, esb_signals, LAST_SIGNAL); #endif @@ -1007,24 +1007,27 @@ e_filter_bar_new_construct (RuleContext *context, } -GtkType +GType e_filter_bar_get_type (void) { - static GtkType type = 0; + static GType type = 0; - if (!type) { - static const GtkTypeInfo info = { - "EFilterBar", - sizeof (EFilterBar), + if (G_UNLIKELY (type == 0)) { + static const GTypeInfo type_info = { sizeof (EFilterBarClass), - (GtkClassInitFunc) class_init, - (GtkObjectInitFunc) init, - /* reserved_1 */ NULL, - /* reserved_2 */ NULL, - (GtkClassInitFunc) NULL, + (GBaseInitFunc) NULL, + (GBaseFinalizeFunc) NULL, + (GClassInitFunc) class_init, + (GClassFinalizeFunc) NULL, + NULL, /* class_data */ + sizeof (EFilterBar), + 0, /* n_preallocs */ + (GInstanceInitFunc) init, + NULL /* value_table */ }; - type = gtk_type_unique (e_search_bar_get_type (), &info); + type = g_type_register_static ( + e_search_bar_get_type (), "EFilterBar", &type_info, 0); } return type; diff --git a/widgets/misc/e-gui-utils.c b/widgets/misc/e-gui-utils.c index 3a827c430f..326e7b3ab6 100644 --- a/widgets/misc/e-gui-utils.c +++ b/widgets/misc/e-gui-utils.c @@ -164,11 +164,11 @@ e_container_change_tab_order(GtkContainer *container, GList *widgets) GList *list; list = g_list_copy(widgets); g_list_foreach(list, (GFunc) g_object_ref, NULL); - return gtk_signal_connect_full(GTK_OBJECT(container), "focus", - GTK_SIGNAL_FUNC(e_container_change_tab_order_callback), - NULL, list, - e_container_change_tab_order_destroy_notify, - FALSE, FALSE); + return g_signal_connect_data (container, "focus", + G_CALLBACK(e_container_change_tab_order_callback), + list, + (GClosureNotify) e_container_change_tab_order_destroy_notify, + 0); } struct widgetandint { diff --git a/widgets/misc/e-gui-utils.h b/widgets/misc/e-gui-utils.h index a4d0c3795f..7c23362223 100644 --- a/widgets/misc/e-gui-utils.h +++ b/widgets/misc/e-gui-utils.h @@ -47,7 +47,7 @@ gint e_container_change_tab_order (GtkContainer *container, gboolean e_glade_xml_connect_widget (GladeXML *gui, char *name, char *signal, - GtkSignalFunc cb, + GCallback cb, gpointer closure); gboolean e_glade_xml_set_sensitive (GladeXML *gui, char *name, diff --git a/widgets/misc/e-image-chooser.c b/widgets/misc/e-image-chooser.c index f3fb4070ba..b80da133ec 100644 --- a/widgets/misc/e-image-chooser.c +++ b/widgets/misc/e-image-chooser.c @@ -139,7 +139,7 @@ e_image_chooser_class_init (EImageChooserClass *klass) G_STRUCT_OFFSET (EImageChooserClass, changed), NULL, NULL, g_cclosure_marshal_VOID__VOID, - GTK_TYPE_NONE, 0); + G_TYPE_NONE, 0); /* object_class->set_property = e_image_chooser_set_property; diff --git a/widgets/misc/e-map.c b/widgets/misc/e-map.c index 44051101c4..3c7005dc00 100644 --- a/widgets/misc/e-map.c +++ b/widgets/misc/e-map.c @@ -132,29 +132,30 @@ static GtkWidgetClass *parent_class; * Return value: The type ID of the #EMap class. **/ -GtkType +GType e_map_get_type (void) { - static GtkType e_map_type = 0; + static GType type = 0; - if (!e_map_type) - { - static const GtkTypeInfo e_map_info = - { - "EMap", - sizeof (EMap), + if (G_UNLIKELY (type == 0)) { + static const GTypeInfo type_info = { sizeof (EMapClass), - (GtkClassInitFunc) e_map_class_init, - (GtkObjectInitFunc) e_map_init, - NULL, /* reserved_1 */ - NULL, /* reserved_2 */ - (GtkClassInitFunc) NULL + (GBaseInitFunc) NULL, + (GBaseFinalizeFunc) NULL, + (GClassInitFunc) e_map_class_init, + (GClassFinalizeFunc) NULL, + NULL, /* class_data */ + sizeof (EMap), + 0, /* n_preallocs */ + (GInstanceInitFunc) e_map_init, + NULL /* value_table */ }; - e_map_type = gtk_type_unique (GTK_TYPE_WIDGET, &e_map_info); + type = g_type_register_static ( + GTK_TYPE_WIDGET, "EMap", &type_info, 0); } - return e_map_type; + return type; } /* Class initialization function for the map view */ diff --git a/widgets/misc/e-map.h b/widgets/misc/e-map.h index 6632a6e2a1..9b67a24e6f 100644 --- a/widgets/misc/e-map.h +++ b/widgets/misc/e-map.h @@ -69,7 +69,7 @@ struct _EMapPoint /* --- Widget --- */ -GtkType e_map_get_type (void); +GType e_map_get_type (void); EMap *e_map_new (void); diff --git a/widgets/misc/e-multi-config-dialog.h b/widgets/misc/e-multi-config-dialog.h index 5b4258341c..0847576ab5 100644 --- a/widgets/misc/e-multi-config-dialog.h +++ b/widgets/misc/e-multi-config-dialog.h @@ -59,7 +59,7 @@ struct _EMultiConfigDialogClass { }; -GtkType e_multi_config_dialog_get_type (void); +GType e_multi_config_dialog_get_type (void); GtkWidget *e_multi_config_dialog_new (void); void e_multi_config_dialog_add_page (EMultiConfigDialog *dialog, diff --git a/widgets/misc/e-popup-menu.h b/widgets/misc/e-popup-menu.h index 88e08de05f..7153e36efd 100644 --- a/widgets/misc/e-popup-menu.h +++ b/widgets/misc/e-popup-menu.h @@ -97,7 +97,7 @@ typedef struct _EPopupMenu EPopupMenu; struct _EPopupMenu { char *name; char *pixname; - GtkSignalFunc fn; + GCallback fn; EPopupMenu *submenu; guint32 disable_mask; diff --git a/widgets/misc/e-printable.h b/widgets/misc/e-printable.h index b79e042d08..cadefc81c0 100644 --- a/widgets/misc/e-printable.h +++ b/widgets/misc/e-printable.h @@ -61,7 +61,7 @@ typedef struct { gboolean (*will_fit) (EPrintable *etm, GtkPrintContext *context, gdouble width, gdouble max_height, gboolean quantized); } EPrintableClass; -GtkType e_printable_get_type (void); +GType e_printable_get_type (void); EPrintable *e_printable_new (void); diff --git a/widgets/misc/e-reflow.h b/widgets/misc/e-reflow.h index 1a11ddbddc..6bf750d038 100644 --- a/widgets/misc/e-reflow.h +++ b/widgets/misc/e-reflow.h @@ -138,7 +138,7 @@ struct _EReflowClass * should also do an ECanvas parent reflow request if its size * changes. */ -GtkType e_reflow_get_type (void); +GType e_reflow_get_type (void); #ifdef __cplusplus } diff --git a/widgets/misc/e-send-options.h b/widgets/misc/e-send-options.h index c096d4696c..9817ff61b1 100644 --- a/widgets/misc/e-send-options.h +++ b/widgets/misc/e-send-options.h @@ -27,10 +27,10 @@ #include <time.h> #define E_TYPE_SENDOPTIONS_DIALOG (e_sendoptions_dialog_get_type ()) -#define E_SENDOPTIONS_DIALOG(obj) (GTK_CHECK_CAST ((obj), E_TYPE_SENDOPTIONS_DIALOG, ESendOptionsDialog)) -#define E_SENDOPTIONS_DIALOG_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), E_TYPE_SENDOPTIONS_DIALOG, ESendOptionsDialogClass)) -#define E_IS_SENDOPTIONS_DIALOG(obj) (GTK_CHECK_TYPE ((obj), E_TYPE_SENDOPTIONS_DIALOG)) -#define E_IS_SENDOPTIONS_DIALOG_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), E_TYPE_SENDOPTIONS_DIALOG)) +#define E_SENDOPTIONS_DIALOG(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), E_TYPE_SENDOPTIONS_DIALOG, ESendOptionsDialog)) +#define E_SENDOPTIONS_DIALOG_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), E_TYPE_SENDOPTIONS_DIALOG, ESendOptionsDialogClass)) +#define E_IS_SENDOPTIONS_DIALOG(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), E_TYPE_SENDOPTIONS_DIALOG)) +#define E_IS_SENDOPTIONS_DIALOG_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), E_TYPE_SENDOPTIONS_DIALOG)) typedef struct _ESendOptionsDialog ESendOptionsDialog; typedef struct _ESendOptionsDialogClass ESendOptionsDialogClass; diff --git a/widgets/misc/e-task-bar.h b/widgets/misc/e-task-bar.h index 4cacf4cf79..0ef0c18049 100644 --- a/widgets/misc/e-task-bar.h +++ b/widgets/misc/e-task-bar.h @@ -33,10 +33,10 @@ extern "C" { #endif /* __cplusplus */ #define E_TYPE_TASK_BAR (e_task_bar_get_type ()) -#define E_TASK_BAR(obj) (GTK_CHECK_CAST ((obj), E_TYPE_TASK_BAR, ETaskBar)) -#define E_TASK_BAR_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), E_TYPE_TASK_BAR, ETaskBarClass)) -#define E_IS_TASK_BAR(obj) (GTK_CHECK_TYPE ((obj), E_TYPE_TASK_BAR)) -#define E_IS_TASK_BAR_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((obj), E_TYPE_TASK_BAR)) +#define E_TASK_BAR(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), E_TYPE_TASK_BAR, ETaskBar)) +#define E_TASK_BAR_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), E_TYPE_TASK_BAR, ETaskBarClass)) +#define E_IS_TASK_BAR(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), E_TYPE_TASK_BAR)) +#define E_IS_TASK_BAR_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((obj), E_TYPE_TASK_BAR)) typedef struct _ETaskBar ETaskBar; @@ -54,7 +54,7 @@ struct _ETaskBarClass { }; -GtkType e_task_bar_get_type (void); +GType e_task_bar_get_type (void); void e_task_bar_construct (ETaskBar *task_bar); GtkWidget *e_task_bar_new (void); diff --git a/widgets/misc/e-task-widget.h b/widgets/misc/e-task-widget.h index eb7efa017e..5d1864050c 100644 --- a/widgets/misc/e-task-widget.h +++ b/widgets/misc/e-task-widget.h @@ -32,10 +32,10 @@ extern "C" { #endif /* __cplusplus */ #define E_TYPE_TASK_WIDGET (e_task_widget_get_type ()) -#define E_TASK_WIDGET(obj) (GTK_CHECK_CAST ((obj), E_TYPE_TASK_WIDGET, ETaskWidget)) -#define E_TASK_WIDGET_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), E_TYPE_TASK_WIDGET, ETaskWidgetClass)) -#define E_IS_TASK_WIDGET(obj) (GTK_CHECK_TYPE ((obj), E_TYPE_TASK_WIDGET)) -#define E_IS_TASK_WIDGET_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((obj), E_TYPE_TASK_WIDGET)) +#define E_TASK_WIDGET(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), E_TYPE_TASK_WIDGET, ETaskWidget)) +#define E_TASK_WIDGET_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), E_TYPE_TASK_WIDGET, ETaskWidgetClass)) +#define E_IS_TASK_WIDGET(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), E_TYPE_TASK_WIDGET)) +#define E_IS_TASK_WIDGET_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((obj), E_TYPE_TASK_WIDGET)) typedef struct _ETaskWidget ETaskWidget; @@ -54,7 +54,7 @@ struct _ETaskWidgetClass { }; -GtkType e_task_widget_get_type (void); +GType e_task_widget_get_type (void); void e_task_widget_construct (ETaskWidget *task_widget, GdkPixbuf *icon_pixbuf, const char *component_id, diff --git a/widgets/misc/e-url-entry.c b/widgets/misc/e-url-entry.c index 1b921f07b0..1ee2ddbf79 100644 --- a/widgets/misc/e-url-entry.c +++ b/widgets/misc/e-url-entry.c @@ -36,56 +36,56 @@ struct _EUrlEntryPrivate { GtkWidget *button; }; -static void class_init (EUrlEntryClass *klass); +static void class_init (EUrlEntryClass *class); static void init (EUrlEntry *url_entry); -static void destroy (GtkObject *obj); +static void finalize (GObject *object); static void button_clicked_cb (GtkWidget *widget, gpointer data); static void entry_changed_cb (GtkEditable *editable, gpointer data); static gboolean mnemonic_activate (GtkWidget *widget, gboolean group_cycling); -static GtkHBoxClass *parent_class = NULL; +static gpointer parent_class = NULL; -GtkType +GType e_url_entry_get_type (void) { - static GtkType type = 0; - - if (type == 0) - { - static const GtkTypeInfo info = - { - "EUrlEntry", - sizeof (EUrlEntry), - sizeof (EUrlEntryClass), - (GtkClassInitFunc) class_init, - (GtkObjectInitFunc) init, - /* reserved_1 */ NULL, - /* reserved_2 */ NULL, - (GtkClassInitFunc) NULL, - }; - - type = gtk_type_unique (gtk_hbox_get_type (), &info); - } - - return type; + static GType type = 0; + + if (G_UNLIKELY (type == 0)) { + static const GTypeInfo type_info = { + sizeof (EUrlEntryClass), + (GBaseInitFunc) NULL, + (GBaseFinalizeFunc) NULL, + (GClassInitFunc) class_init, + (GClassFinalizeFunc) NULL, + NULL, /* class_data */ + sizeof (EUrlEntry), + 0, /* n_preallocs */ + (GInstanceInitFunc) init, + NULL /* value_table */ + }; + + type = g_type_register_static ( + GTK_TYPE_HBOX, "EUrlEntry", &type_info, 0); + } + + return type; } static void -class_init (EUrlEntryClass *klass) +class_init (EUrlEntryClass *class) { - GtkObjectClass *object_class; + GObjectClass *object_class; GtkWidgetClass *widget_class; - object_class = GTK_OBJECT_CLASS (klass); - widget_class = GTK_WIDGET_CLASS (klass); - - parent_class = g_type_class_ref(gtk_hbox_get_type ()); + parent_class = g_type_class_peek_parent (class); - object_class->destroy = destroy; + object_class = G_OBJECT_CLASS (class); + object_class->finalize = finalize; + widget_class = GTK_WIDGET_CLASS (class); widget_class->mnemonic_activate = mnemonic_activate; } @@ -119,17 +119,17 @@ init (EUrlEntry *url_entry) } static void -destroy (GtkObject *obj) +finalize (GObject *object) { EUrlEntry *url_entry; - url_entry = E_URL_ENTRY (obj); + url_entry = E_URL_ENTRY (object); if (url_entry->priv) { g_free (url_entry->priv); url_entry->priv = NULL; } - GTK_OBJECT_CLASS (parent_class)->destroy (obj); + G_OBJECT_CLASS (parent_class)->finalize (object); } /* GtkWidget::mnemonic_activate() handler for the EUrlEntry */ diff --git a/widgets/misc/e-url-entry.h b/widgets/misc/e-url-entry.h index f124c72a58..5a9a3ad13e 100644 --- a/widgets/misc/e-url-entry.h +++ b/widgets/misc/e-url-entry.h @@ -58,7 +58,7 @@ struct _EUrlEntryClass { -GtkType e_url_entry_get_type (void); +GType e_url_entry_get_type (void); GtkWidget *e_url_entry_new (void); GtkWidget *e_url_entry_get_entry (EUrlEntry *url_entry); |