aboutsummaryrefslogtreecommitdiffstats
path: root/calendar/gui/e-week-view-titles-item.c
diff options
context:
space:
mode:
authorMatthew Barnes <mbarnes@redhat.com>2007-12-06 04:50:15 +0800
committerMatthew Barnes <mbarnes@src.gnome.org>2007-12-06 04:50:15 +0800
commit7fef4ba1e95a25b78600434b2a71ce0762db47f1 (patch)
tree37ff545517f4afe21db534a1bff3c2fbe59643f0 /calendar/gui/e-week-view-titles-item.c
parentdbc59d48bea9da7292c7a30e37f2f086adb76c2d (diff)
downloadgsoc2013-evolution-7fef4ba1e95a25b78600434b2a71ce0762db47f1.tar
gsoc2013-evolution-7fef4ba1e95a25b78600434b2a71ce0762db47f1.tar.gz
gsoc2013-evolution-7fef4ba1e95a25b78600434b2a71ce0762db47f1.tar.bz2
gsoc2013-evolution-7fef4ba1e95a25b78600434b2a71ce0762db47f1.tar.lz
gsoc2013-evolution-7fef4ba1e95a25b78600434b2a71ce0762db47f1.tar.xz
gsoc2013-evolution-7fef4ba1e95a25b78600434b2a71ce0762db47f1.tar.zst
gsoc2013-evolution-7fef4ba1e95a25b78600434b2a71ce0762db47f1.zip
** Fixes bug #392747 (extra cleanup work)
2007-12-05 Matthew Barnes <mbarnes@redhat.com> ** Fixes bug #392747 (extra cleanup work) * calendar/gui/e-day-view.c (e_day_view_style_set): * calendar/gui/e-week-view-titles-item.c (e_week_view_titles_item_draw): * calendar/gui/e-week-view.c (e_week_view_style_set): * calendar/gui/print.c (print_month_summary): * calendar/gui/e-meeting-time-sel.c (e_meeting_time_selector_recalc_date_form): Call e_get_month_name() or e_get_weekday_name() instead of e_utf8_strftime() or g_date_strftime(). e_utf8_strftime() or g_date_strftime(). * widgets/misc/e-calendar-item.c (e_calendar_item_show_popup_menu): Call e_get_month_name() instead of e_utf8_strftime(). svn path=/trunk/; revision=34659
Diffstat (limited to 'calendar/gui/e-week-view-titles-item.c')
-rw-r--r--calendar/gui/e-week-view-titles-item.c43
1 files changed, 16 insertions, 27 deletions
diff --git a/calendar/gui/e-week-view-titles-item.c b/calendar/gui/e-week-view-titles-item.c
index 08f401e599..ec8edcc780 100644
--- a/calendar/gui/e-week-view-titles-item.c
+++ b/calendar/gui/e-week-view-titles-item.c
@@ -31,6 +31,7 @@
#endif
#include <string.h>
+#include <e-util/e-util.h>
#include "e-week-view-titles-item.h"
static void e_week_view_titles_item_set_arg (GtkObject *o,
@@ -139,10 +140,9 @@ e_week_view_titles_item_draw (GnomeCanvasItem *canvas_item,
GtkStyle *style;
GdkGC *fg_gc, *light_gc, *dark_gc;
gint canvas_width, canvas_height, col_width, col, date_width, date_x;
- gchar buffer[128], *date_format;
- GDate date;
+ gchar buffer[128];
GdkRectangle clip_rect;
- gboolean long_format;
+ gboolean abbreviated;
gint weekday;
PangoLayout *layout;
@@ -177,13 +177,7 @@ e_week_view_titles_item_draw (GnomeCanvasItem *canvas_item,
/* Determine the format to use. */
col_width = canvas_width / week_view->columns;
- if (col_width > week_view->max_day_width + 2) {
- date_format = "%A";
- long_format = TRUE;
- } else {
- date_format = "%a";
- long_format = FALSE;
- }
+ abbreviated = (week_view->max_day_width + 2 >= col_width);
/* Shift right one pixel to account for the shadow around the main
canvas. */
@@ -191,20 +185,17 @@ e_week_view_titles_item_draw (GnomeCanvasItem *canvas_item,
/* Draw the date. Set a clipping rectangle so we don't draw over the
next day. */
- g_date_clear (&date, 1);
- /* Note that 20th March 2000 is a Monday. We only care about the
- weekday. */
weekday = week_view->display_start_day;
- g_date_set_dmy (&date, 20 + weekday, 3, 2000);
for (col = 0; col < week_view->columns; col++) {
- if (weekday == 5 && week_view->compress_weekend) {
- g_date_strftime (buffer, 128, "%a/", &date);
- g_date_add_days (&date, 1);
- g_date_strftime (buffer + strlen (buffer), 100,
- "%a", &date);
- } else {
- g_date_strftime (buffer, 128, date_format, &date);
- }
+ if (weekday == 5 && week_view->compress_weekend)
+ g_snprintf (
+ buffer, sizeof (buffer), "%s/%s",
+ e_get_weekday_name (G_DATE_SATURDAY, TRUE),
+ e_get_weekday_name (G_DATE_SUNDAY, TRUE));
+ else
+ g_snprintf (
+ buffer, sizeof (buffer), "%s",
+ e_get_weekday_name (weekday + 1, abbreviated));
clip_rect.x = week_view->col_offsets[col] - x;
clip_rect.y = 2 - y;
@@ -216,10 +207,10 @@ e_week_view_titles_item_draw (GnomeCanvasItem *canvas_item,
date_width = week_view->abbr_day_widths[5]
+ week_view->slash_width
+ week_view->abbr_day_widths[6];
- else if (long_format)
- date_width = week_view->day_widths[weekday];
- else
+ else if (abbreviated)
date_width = week_view->abbr_day_widths[weekday];
+ else
+ date_width = week_view->day_widths[weekday];
date_x = week_view->col_offsets[col]
+ (week_view->col_widths[col] - date_width) / 2;
@@ -263,8 +254,6 @@ e_week_view_titles_item_draw (GnomeCanvasItem *canvas_item,
weekday++;
weekday = weekday % 7;
-
- g_date_add_days (&date, 1);
}
g_object_unref (layout);