From 434bc25ed6b3f458f3bf119e76bd8b2bcffe5178 Mon Sep 17 00:00:00 2001 From: Matthew Barnes Date: Mon, 11 Aug 2008 17:04:32 +0000 Subject: ** Fixes bug #546892 2008-08-11 Matthew Barnes ** Fixes bug #546892 * e-util/e-icon-factory.c (e_icon_factory_get_image): Kill this function. Use gtk_image_new_from_icon_name(). * e-util/e-icon-factory.c (e_icon_factory_get_icon_list): Kill this function. Use gtk_window_set_icon_name(). * widgets/misc/e-activity-handler.c: * widgets/misc/e-task-widget.c: Purge the GdkPixbuf arguments from the API. We've been ignoring them since the spinner icon was added. * addressbook/gui/contact-editor/e-contact-editor-fullname.c: * addressbook/gui/contact-editor/e-contact-editor-im.c: * addressbook/gui/contact-editor/e-contact-editor-address.c: * calendar/gui/alarm-notify/alarm-notify-dialog.c: * calendar/gui/dialogs/alarm-dialog.c: * calendar/gui/dialogs/alarm-list-dialog.c: * calendar/gui/dialogs/cal-attachment-select-file.c: * calendar/gui/dialogs/changed-comp.c: * calendar/gui/dialogs/delete-error.c: * calendar/gui/dialogs/select-source-dialog.c: * mail/mail-send-recv.c: * mail/message-tag-followup.c: * widgets/misc/e-combo-button.c: * widgets/misc/e-info-label.c: * widgets/misc/e-url-entry.c: * widgets/misc/e-task-widget.c: Prefer gtk_window_set_icon_name() over gtk_window_set_icon_list(). * addressbook/gui/contact-editor/e-contact-editor-im.c: * calendar/gui/dialogs/event-page.c: * calendar/gui/e-timezone-entry.c: * e-util/e-gui-utils.c: * e-util/e-popup.c: * plugins/import-ics-attachments/icsimporter.c: * plugins/itip-formatter/itip-view.c: * mail/em-folder-browser.c: * mail/em-format-html-display.c: * mail/mail-send-recv.c: * mail/message-tag-followup.c: Prefer gtk_image_new_from_icon_name() over e_icon_factory_get_image(). * calendar/gui/alarm-notify/alarm-queue.c: * plugins/mail-notification/mail-notification.c: Prefer gtk_status_icon_set_from_icon_name() over gtk_status_icon_set_from_pixbuf(). * addressbook/gui/component/addressbook-view.c: * calendar/gui/e-calendar-table.c: * calendar/gui/e-calendar-view.c: * calendar/gui/e-memo-table.c: * mail/mail-mt.c: e_activity_handler_operation_started() no longer takes a GdkPixbuf. It was ignoring the pixbuf anyway ever since we added a spinner icon. svn path=/trunk/; revision=35958 --- widgets/misc/e-task-widget.c | 73 +++++++++++++++----------------------------- 1 file changed, 25 insertions(+), 48 deletions(-) (limited to 'widgets/misc/e-task-widget.c') diff --git a/widgets/misc/e-task-widget.c b/widgets/misc/e-task-widget.c index 74b0ba6891..bb2ec2747e 100644 --- a/widgets/misc/e-task-widget.c +++ b/widgets/misc/e-task-widget.c @@ -26,7 +26,6 @@ #include "e-task-widget.h" #include "e-spinner.h" -#include #include @@ -36,7 +35,6 @@ struct _ETaskWidgetPrivate { char *component_id; - GdkPixbuf *icon_pixbuf; GtkWidget *label; GtkWidget *box; GtkWidget *image; @@ -49,24 +47,6 @@ G_DEFINE_TYPE (ETaskWidget, e_task_widget, GTK_TYPE_EVENT_BOX) /* GObject methods. */ -static void -impl_dispose (GObject *object) -{ - ETaskWidget *task_widget; - ETaskWidgetPrivate *priv; - - task_widget = E_TASK_WIDGET (object); - - priv = task_widget->priv; - - if (priv->icon_pixbuf != NULL) { - g_object_unref (priv->icon_pixbuf); - priv->icon_pixbuf = NULL; - } - - (* G_OBJECT_CLASS (e_task_widget_parent_class)->dispose) (object); -} - static void impl_finalize (GObject *object) { @@ -88,7 +68,6 @@ e_task_widget_class_init (ETaskWidgetClass *klass) { GObjectClass *object_class = G_OBJECT_CLASS (klass); - object_class->dispose = impl_dispose; object_class->finalize = impl_finalize; } @@ -100,7 +79,6 @@ e_task_widget_init (ETaskWidget *task_widget) priv = g_new (ETaskWidgetPrivate, 1); priv->component_id = NULL; - priv->icon_pixbuf = NULL; priv->label = NULL; priv->image = NULL; priv->box = NULL; @@ -137,15 +115,12 @@ prepare_popup (ETaskWidget *widget, GdkEventButton *event) void e_task_widget_construct (ETaskWidget *task_widget, - GdkPixbuf *icon_pixbuf, const char *component_id, const char *information, void (*cancel_func) (gpointer data), gpointer data) { ETaskWidgetPrivate *priv; - /*GdkPixmap *pixmap; - GdkBitmap *mask;*/ GtkWidget *box; GtkWidget *frame; @@ -169,15 +144,10 @@ e_task_widget_construct (ETaskWidget *task_widget, gtk_widget_set_size_request (box, 1, -1); - /* FIXME: Experimenting Spinner widget instead of an image. REWORK THIS */ - /* priv->icon_pixbuf = g_object_ref (icon_pixbuf); */ - - /* gdk_pixbuf_render_pixmap_and_mask (icon_pixbuf, &pixmap, &mask, 128); */ priv->box = gtk_hbox_new (FALSE, 0); priv->image = e_spinner_new (); e_spinner_set_size (E_SPINNER (priv->image), GTK_ICON_SIZE_SMALL_TOOLBAR); e_spinner_start (E_SPINNER (priv->image)); - /* gtk_image_new_from_pixmap (pixmap, mask); */ gtk_widget_show (priv->image); gtk_widget_show (priv->box); gtk_box_pack_start (GTK_BOX (priv->box), priv->image, FALSE, TRUE, 0); @@ -187,9 +157,16 @@ e_task_widget_construct (ETaskWidget *task_widget, gtk_widget_show (priv->label); gtk_box_pack_start (GTK_BOX (box), priv->label, TRUE, TRUE, 0); if (cancel_func) { - GtkWidget *image = e_icon_factory_get_image ("gtk-stop", E_ICON_SIZE_MENU); + GdkPixbuf *pixbuf; + GtkWidget *image; GtkWidget *tool; + pixbuf = gtk_icon_theme_load_icon ( + gtk_icon_theme_get_default (), + "gtk-stop", 16, 0, NULL); + image = gtk_image_new_from_pixbuf (pixbuf); + g_object_unref (pixbuf); + tool = (GtkWidget *) gtk_tool_button_new (image, NULL); gtk_box_pack_end (GTK_BOX (box), tool, FALSE, TRUE, 0); gtk_widget_show_all (tool); @@ -198,9 +175,6 @@ e_task_widget_construct (ETaskWidget *task_widget, priv->cancel_func = cancel_func; priv->data = data; g_signal_connect (tool, "clicked", G_CALLBACK (button_press_event_cb), task_widget); - /* g_object_unref (pixmap); - if (mask) - g_object_unref (mask); */ g_signal_connect (task_widget, "button-press-event", G_CALLBACK (prepare_popup), task_widget); } @@ -209,34 +183,31 @@ e_task_widget_construct (ETaskWidget *task_widget, } GtkWidget * -e_task_widget_new_with_cancel (GdkPixbuf *icon_pixbuf, - const char *component_id, - const char *information, - void (*cancel_func) (gpointer data), - gpointer data) +e_task_widget_new_with_cancel (const char *component_id, + const char *information, + void (*cancel_func) (gpointer data), + gpointer data) { ETaskWidget *task_widget; g_return_val_if_fail (information != NULL, NULL); task_widget = g_object_new (e_task_widget_get_type (), NULL); - e_task_widget_construct (task_widget, icon_pixbuf, component_id, information, cancel_func, data); + e_task_widget_construct (task_widget, component_id, information, cancel_func, data); return GTK_WIDGET (task_widget); } GtkWidget * -e_task_widget_new (GdkPixbuf *icon_pixbuf, - const char *component_id, +e_task_widget_new (const char *component_id, const char *information) { ETaskWidget *task_widget; - g_return_val_if_fail (icon_pixbuf != NULL, NULL); g_return_val_if_fail (information != NULL, NULL); task_widget = g_object_new (e_task_widget_get_type (), NULL); - e_task_widget_construct (task_widget, icon_pixbuf, component_id, information, NULL, NULL); + e_task_widget_construct (task_widget, component_id, information, NULL, NULL); return GTK_WIDGET (task_widget); } @@ -245,14 +216,20 @@ GtkWidget * e_task_widget_update_image (ETaskWidget *task_widget, const char *stock, const char *text) { - GtkWidget *img, *tool; + GtkWidget *image, *tool; + GdkPixbuf *pixbuf; + + pixbuf = gtk_icon_theme_load_icon ( + gtk_icon_theme_get_default (), + stock, 16, 0, NULL); + image = gtk_image_new_from_pixbuf (pixbuf); + g_object_unref (pixbuf); - img = e_icon_factory_get_image (stock, E_ICON_SIZE_MENU); - tool = (GtkWidget *) gtk_tool_button_new (img, NULL); + tool = (GtkWidget *) gtk_tool_button_new (image, NULL); gtk_box_pack_start (GTK_BOX(task_widget->priv->box), tool, FALSE, TRUE, 0); gtk_widget_show_all (task_widget->priv->box); gtk_widget_hide (task_widget->priv->image); - task_widget->priv->image = img; + task_widget->priv->image = image; gtk_label_set_text (GTK_LABEL (task_widget->priv->label), text); return tool; -- cgit v1.2.3