From f0544b36bf0ce4ec26f337bfc583f93af50cf705 Mon Sep 17 00:00:00 2001 From: Rodrigo Moya Date: Tue, 2 Jul 2002 23:18:47 +0000 Subject: Fixes #16034 2002-07-02 Rodrigo Moya Fixes #16034 * gui/e-day-view.c (e_day_view_reshape_long_event): (e_day_view_reshape_day_event): * gui/e-day-view-main-item.c (e_day_view_main_item_draw_day_event): * gui/e-week-view.c (e_week_view_reshape_event_span): * gui/e-week-view-event-item.c (e_week_view_event_item_draw_icons): Don't assume all categories have icons when allocating space for the icons. svn path=/trunk/; revision=17357 --- calendar/gui/e-day-view.c | 24 ++++++++++++++++++++---- 1 file changed, 20 insertions(+), 4 deletions(-) (limited to 'calendar/gui/e-day-view.c') diff --git a/calendar/gui/e-day-view.c b/calendar/gui/e-day-view.c index d305190352..6e445dcaaf 100644 --- a/calendar/gui/e-day-view.c +++ b/calendar/gui/e-day-view.c @@ -5082,7 +5082,7 @@ e_day_view_reshape_long_event (EDayView *day_view, } if (show_icons) { - GSList *categories_list; + GSList *categories_list, *elem; if (cal_component_has_alarms (comp)) num_icons++; @@ -5092,7 +5092,15 @@ e_day_view_reshape_long_event (EDayView *day_view, num_icons++; cal_component_get_categories_list (comp, &categories_list); - num_icons += g_slist_length (categories_list); + for (elem = categories_list; elem; elem = elem->next) { + char *category; + GdkPixmap *pixmap = NULL; + GdkBitmap *mask = NULL; + + category = (char *) elem->data; + if (e_categories_config_get_icon_for (category, &pixmap, &mask)) + num_icons++; + } cal_component_free_categories_list (categories_list); } @@ -5221,7 +5229,7 @@ e_day_view_reshape_day_event (EDayView *day_view, if (day_view->resize_drag_pos == E_DAY_VIEW_POS_NONE || day_view->resize_event_day != day || day_view->resize_event_num != event_num) { - GSList *categories_list; + GSList *categories_list, *elem; if (cal_component_has_alarms (comp)) num_icons++; @@ -5231,7 +5239,15 @@ e_day_view_reshape_day_event (EDayView *day_view, num_icons++; cal_component_get_categories_list (comp, &categories_list); - num_icons += g_slist_length (categories_list); + for (elem = categories_list; elem; elem = elem->next) { + char *category; + GdkPixmap *pixmap = NULL; + GdkBitmap *mask = NULL; + + category = (char *) elem->data; + if (e_categories_config_get_icon_for (category, &pixmap, &mask)) + num_icons++; + } cal_component_free_categories_list (categories_list); } -- cgit v1.2.3