diff options
author | Matthew Barnes <mbarnes@redhat.com> | 2007-04-02 12:19:25 +0800 |
---|---|---|
committer | Matthew Barnes <mbarnes@src.gnome.org> | 2007-04-02 12:19:25 +0800 |
commit | b5365bc587c99c0eb18293c4e70029782a185d56 (patch) | |
tree | c28ff26a508bcb3195b7b74868540f3c9ffc1458 /calendar/gui/dialogs/cal-prefs-dialog.c | |
parent | 7dd3f720c743488c2aac7b6a1cfcdb97b1c1ac70 (diff) | |
download | gsoc2013-evolution-b5365bc587c99c0eb18293c4e70029782a185d56.tar.gz gsoc2013-evolution-b5365bc587c99c0eb18293c4e70029782a185d56.tar.zst gsoc2013-evolution-b5365bc587c99c0eb18293c4e70029782a185d56.zip |
** Fixes bug #373116
2007-04-01 Matthew Barnes <mbarnes@redhat.com>
** Fixes bug #373116
* calendar/gui/calendar-component.c (ensure_sources):
* calendar/gui/e-cal-model.c (ecm_get_color_for_component):
* calendar/gui/memos-component.c (ensure_sources):
* calendar/gui/migration.c (create_calendar_contact_source),
(create_calendar_sources), (create_task_sources),
(create_memo_sources), (add_gw_esource):
* calendar/gui/tasks-component.c (ensure_sources):
* plugins/groupwise-account-setup/camel-gw-listener.c (add_esource):
Use the new ESource color API.
* calendar/gui/dialogs/cal-prefs-dialog.c:
* calendar/gui/dialogs/cal-prefs-dialog.glade:
* calendar/gui/dialogs/calendar-setup.c:
* calendar/gui/dialogs/calendar-setup.glade:
* filter-colour.c (get_widget):
* mail/em-composer-prefs.c:
* mail/em-composer-prefs.h:
* mail/em-mailer-prefs.c:
* mail/em-mailer-prefs.h:
* mail/mail-config.glade:
Migrate from GnomeColorPicker to GtkColorButton.
* filter/filter-colour.h:
Store color as a GdkColor instead of separate RGBA components.
* filter/filter-colour.c (color_eq):
Use gdk_color_equal() to compare colors.
* filter/filter-colour.c (xml_encode):
Encode color as a single property ("spec").
* filter/filter-colour.c (xml_decode):
Read the color from a single property ("spec").
Provide a migration path for old XML files.
* calendar/gui/calendar-component.c
(calendar_config_get_tasks_due_today_color),
(calendar_config_get_tasks_overdue_color):
Return a GdkColor instead of an X color specification.
* calendar/gui/calendar-component.c
(calendar_config_set_tasks_due_today_color),
(calendar_config_set_tasks_overdue_color):
Accept a GdkColor instead of an X color specification.
* calenar/gui/e-cal-model-tasks.c (ecmt_get_color_for_component):
Adapt to modified color API in calendar-component.c by converting
the GdkColor to an X color specification. This is an ugly hack to
be fixed later.
svn path=/trunk/; revision=33349
Diffstat (limited to 'calendar/gui/dialogs/cal-prefs-dialog.c')
-rw-r--r-- | calendar/gui/dialogs/cal-prefs-dialog.c | 57 |
1 files changed, 19 insertions, 38 deletions
diff --git a/calendar/gui/dialogs/cal-prefs-dialog.c b/calendar/gui/dialogs/cal-prefs-dialog.c index 38f9ed50a6..665f76d2c6 100644 --- a/calendar/gui/dialogs/cal-prefs-dialog.c +++ b/calendar/gui/dialogs/cal-prefs-dialog.c @@ -31,7 +31,6 @@ #include "../e-timezone-entry.h" #include "../calendar-config.h" #include "cal-prefs-dialog.h" -#include <libgnomeui/gnome-color-picker.h> #include <widgets/misc/e-dateedit.h> #include <e-util/e-dialog-widgets.h> #include <e-util/e-util-private.h> @@ -95,21 +94,6 @@ eccp_widget_glade (EConfig *ec, EConfigItem *item, GtkWidget *parent, GtkWidget return glade_xml_get_widget (prefs->gui, item->label); } -/* Returns a pointer to a static string with an X color spec for the current - * value of a color picker. - */ -static const char * -spec_from_picker (GtkWidget *picker) -{ - static char spec[8]; - guint8 r, g, b; - - gnome_color_picker_get_i8 (GNOME_COLOR_PICKER (picker), &r, &g, &b, NULL); - g_snprintf (spec, sizeof (spec), "#%02x%02x%02x", r, g, b); - - return spec; -} - static void working_days_changed (GtkWidget *widget, CalendarPrefsDialog *prefs) { @@ -276,15 +260,21 @@ hide_completed_tasks_units_changed (GtkWidget *widget, CalendarPrefsDialog *pref } static void -tasks_due_today_set_color (GnomeColorPicker *picker, guint r, guint g, guint b, guint a, CalendarPrefsDialog *prefs) +tasks_due_today_set_color (GtkColorButton *color_button, CalendarPrefsDialog *prefs) { - calendar_config_set_tasks_due_today_color (spec_from_picker (prefs->tasks_due_today_color)); + GdkColor color; + + gtk_color_button_get_color (color_button, &color); + calendar_config_set_tasks_due_today_color (&color); } static void -tasks_overdue_set_color (GnomeColorPicker *picker, guint r, guint g, guint b, guint a, CalendarPrefsDialog *prefs) +tasks_overdue_set_color (GtkColorButton *color_button, CalendarPrefsDialog *prefs) { - calendar_config_set_tasks_overdue_color (spec_from_picker (prefs->tasks_overdue_color)); + GdkColor color; + + gtk_color_button_get_color (color_button, &color); + calendar_config_set_tasks_overdue_color (&color); } static void @@ -416,22 +406,6 @@ setup_changes (CalendarPrefsDialog *prefs) g_signal_connect (G_OBJECT (prefs->template_url), "changed", G_CALLBACK (template_url_changed), prefs); } -/* Sets the color in a color picker from an X color spec */ -static void -set_color_picker (GtkWidget *picker, const char *spec) -{ - GdkColor color; - - if (!spec || !gdk_color_parse (spec, &color)) - color.red = color.green = color.blue = 0; - - gnome_color_picker_set_i16 (GNOME_COLOR_PICKER (picker), - color.red, - color.green, - color.blue, - 65535); -} - /* Shows the current Free/Busy settings in the dialog */ static void show_fb_config (CalendarPrefsDialog *prefs) @@ -448,11 +422,18 @@ show_fb_config (CalendarPrefsDialog *prefs) static void show_task_list_config (CalendarPrefsDialog *prefs) { + GtkColorButton *color_button; + GdkColor color; CalUnits units; gboolean hide_completed_tasks = FALSE; - set_color_picker (prefs->tasks_due_today_color, calendar_config_get_tasks_due_today_color ()); - set_color_picker (prefs->tasks_overdue_color, calendar_config_get_tasks_overdue_color ()); + color_button = GTK_COLOR_BUTTON (prefs->tasks_due_today_color); + calendar_config_get_tasks_due_today_color (&color); + gtk_color_button_set_color (color_button, &color); + + color_button = GTK_COLOR_BUTTON (prefs->tasks_overdue_color); + calendar_config_get_tasks_overdue_color (&color); + gtk_color_button_set_color (color_button, &color); /* Hide Completed Tasks. */ e_dialog_toggle_set (prefs->tasks_hide_completed, calendar_config_get_hide_completed_tasks ()); |