From 037567209c21911f8f3dd11a9581d99fc73aee70 Mon Sep 17 00:00:00 2001 From: Georges Basile Stavracas Neto Date: Sun, 28 Jan 2018 10:20:19 -0200 Subject: [PATCH] view: Remove first weekday helpers when unecessary Not all views need to know the first weekday, and those who need, it can be stored internally. --- src/gcal-window.c | 4 ---- src/views/gcal-month-view.c | 28 +++--------------------- src/views/gcal-month-view.h | 6 ------ src/views/gcal-week-grid.c | 12 ----------- src/views/gcal-week-header.c | 11 +--------- src/views/gcal-week-header.h | 3 --- src/views/gcal-week-view.c | 41 ------------------------------------ src/views/gcal-week-view.h | 5 ----- src/views/gcal-year-view.c | 9 ++------ src/views/gcal-year-view.h | 3 --- 10 files changed, 6 insertions(+), 116 deletions(-) diff --git a/src/gcal-window.c b/src/gcal-window.c index 7a081536..cf04514c 100644 --- a/src/gcal-window.c +++ b/src/gcal-window.c @@ -1579,10 +1579,6 @@ gcal_window_init (GcalWindow *self) self->views[GCAL_WINDOW_VIEW_MONTH] = self->month_view; self->views[GCAL_WINDOW_VIEW_YEAR] = self->year_view; - gcal_week_view_set_first_weekday (GCAL_WEEK_VIEW (self->views[GCAL_WINDOW_VIEW_WEEK]), get_first_weekday ()); - gcal_month_view_set_first_weekday (GCAL_MONTH_VIEW (self->views[GCAL_WINDOW_VIEW_MONTH]), get_first_weekday ()); - gcal_year_view_set_first_weekday (GCAL_YEAR_VIEW (self->views[GCAL_WINDOW_VIEW_YEAR]), get_first_weekday ()); - /* refresh timeout, first is fast */ self->refresh_timeout_id = g_timeout_add (FAST_REFRESH_TIMEOUT, (GSourceFunc) refresh_sources, self); diff --git a/src/views/gcal-month-view.c b/src/views/gcal-month-view.c index b1c072fa..265a6895 100644 --- a/src/views/gcal-month-view.c +++ b/src/views/gcal-month-view.c @@ -2190,6 +2190,9 @@ gcal_month_view_init (GcalMonthView *self) self->overflow_cells = g_hash_table_new_full (g_direct_hash, g_direct_equal, NULL, (GDestroyNotify) g_list_free); self->pending_event_allocation = FALSE; + /* First weekday */ + self->first_weekday = get_first_weekday (); + /* Weekday header labels */ self->weekday_label[0] = self->label_0; self->weekday_label[1] = self->label_1; @@ -2216,28 +2219,3 @@ gcal_month_view_init (GcalMonthView *self) self); } -/* Public API */ - -/** - * gcal_month_view_set_first_weekday: - * @view: A #GcalMonthView instance - * @day_nr: Integer representing the first day of the week - * - * Set the first day of the week according to the locale, being - * 0 for Sunday, 1 for Monday and so on. - */ -void -gcal_month_view_set_first_weekday (GcalMonthView *self, - gint day_nr) -{ - g_return_if_fail (GCAL_IS_MONTH_VIEW (self)); - - self->first_weekday = day_nr; - - /* update days_delay */ - if (self->date) - self->days_delay = (time_day_of_week (1, self->date->month - 1, self->date->year) - self->first_weekday + 7) % 7; - - update_weekday_labels (self); -} - diff --git a/src/views/gcal-month-view.h b/src/views/gcal-month-view.h index ec007ad3..c560b72f 100644 --- a/src/views/gcal-month-view.h +++ b/src/views/gcal-month-view.h @@ -28,12 +28,6 @@ G_BEGIN_DECLS G_DECLARE_FINAL_TYPE (GcalMonthView, gcal_month_view, GCAL, MONTH_VIEW, GtkContainer) -void gcal_month_view_set_first_weekday (GcalMonthView *self, - gint day_nr); - -void gcal_month_view_set_use_24h_format (GcalMonthView *self, - gboolean use_24h); - G_END_DECLS #endif /* __GCAL_MONTH_VIEW_H__ */ diff --git a/src/views/gcal-week-grid.c b/src/views/gcal-week-grid.c index 06db2072..3955f8c7 100644 --- a/src/views/gcal-week-grid.c +++ b/src/views/gcal-week-grid.c @@ -49,11 +49,8 @@ struct _GcalWeekGrid GtkContainer parent; GtkWidget *hours_sidebar; - GdkWindow *event_window; - gint first_weekday; - icaltimetype *active_date; GcalRangeTree *events; @@ -1144,15 +1141,6 @@ gcal_week_grid_set_manager (GcalWeekGrid *self, self); } -void -gcal_week_grid_set_first_weekday (GcalWeekGrid *self, - gint nr_day) -{ - g_return_if_fail (GCAL_IS_WEEK_GRID (self)); - - self->first_weekday = nr_day; -} - void gcal_week_grid_add_event (GcalWeekGrid *self, GcalEvent *event) diff --git a/src/views/gcal-week-header.c b/src/views/gcal-week-header.c index fb2c59e4..0c2c6671 100644 --- a/src/views/gcal-week-header.c +++ b/src/views/gcal-week-header.c @@ -1671,7 +1671,7 @@ gcal_week_header_init (GcalWeekHeader *self) self->selection_start = -1; self->selection_end = -1; self->dnd_cell = -1; - self->weather_service = NULL; + self->first_weekday = get_first_weekday (); gtk_widget_init_template (GTK_WIDGET (self)); @@ -1823,15 +1823,6 @@ gcal_week_header_set_manager (GcalWeekHeader *self, self); } -void -gcal_week_header_set_first_weekday (GcalWeekHeader *self, - gint nr_day) -{ - g_return_if_fail (GCAL_IS_WEEK_HEADER (self)); - - self->first_weekday = nr_day; -} - void gcal_week_header_add_event (GcalWeekHeader *self, GcalEvent *event) diff --git a/src/views/gcal-week-header.h b/src/views/gcal-week-header.h index 34ecffa1..5061738c 100644 --- a/src/views/gcal-week-header.h +++ b/src/views/gcal-week-header.h @@ -35,9 +35,6 @@ G_DECLARE_FINAL_TYPE (GcalWeekHeader, gcal_week_header, GCAL, WEEK_HEADER, GtkGr void gcal_week_header_set_manager (GcalWeekHeader *self, GcalManager *manager); -void gcal_week_header_set_first_weekday (GcalWeekHeader *self, - gint nr_day); - void gcal_week_header_add_event (GcalWeekHeader *self, GcalEvent *event); diff --git a/src/views/gcal-week-view.c b/src/views/gcal-week-view.c index 8d74311a..c5e23c86 100644 --- a/src/views/gcal-week-view.c +++ b/src/views/gcal-week-view.c @@ -49,13 +49,6 @@ struct _GcalWeekView GtkWidget *scrolled_window; GtkWidget *week_grid; - /* - * first day of the week according to user locale, being - * 0 for Sunday, 1 for Monday and so on - */ - gint first_weekday; - - GcalTimeFormat time_format; /* property */ @@ -646,37 +639,3 @@ gcal_week_view_init (GcalWeekView *self) g_object_bind_property (self, "weather-service", self->header, "weather-service", G_BINDING_DEFAULT); } -/* Public API */ -/** - * gcal_week_view_new: - * - * Create a week-view widget - * - * Returns: (transfer full): - **/ -GtkWidget* -gcal_week_view_new (void) -{ - return g_object_new (GCAL_TYPE_WEEK_VIEW, NULL); -} - -/** - * gcal_week_view_set_first_weekday: - * @view: - * @day_nr: - * - * Set the first day of the week according to the locale, being - * 0 for Sunday, 1 for Monday and so on. - **/ -void -gcal_week_view_set_first_weekday (GcalWeekView *self, - gint day_nr) -{ - g_return_if_fail (GCAL_IS_WEEK_VIEW (self)); - - self->first_weekday = day_nr; - - gcal_week_header_set_first_weekday (GCAL_WEEK_HEADER (self->header), self->first_weekday); - gcal_week_grid_set_first_weekday (GCAL_WEEK_GRID (self->week_grid), self->first_weekday); -} - diff --git a/src/views/gcal-week-view.h b/src/views/gcal-week-view.h index 2e14cc85..9d2fb7a8 100644 --- a/src/views/gcal-week-view.h +++ b/src/views/gcal-week-view.h @@ -28,11 +28,6 @@ G_BEGIN_DECLS G_DECLARE_FINAL_TYPE (GcalWeekView, gcal_week_view, GCAL, WEEK_VIEW, GtkBox) -GtkWidget* gcal_week_view_new (void); - -void gcal_week_view_set_first_weekday (GcalWeekView *self, - gint day_nr); - G_END_DECLS #endif /* __GCAL_WEEK_VIEW_H__ */ diff --git a/src/views/gcal-year-view.c b/src/views/gcal-year-view.c index 39a8d958..82cf0c8d 100644 --- a/src/views/gcal-year-view.c +++ b/src/views/gcal-year-view.c @@ -2009,6 +2009,8 @@ gcal_year_view_init (GcalYearView *self) else if (gtk_widget_get_direction (GTK_WIDGET (self)) == GTK_TEXT_DIR_RTL) self->k = 1; + self->first_weekday = get_first_weekday (); + self->navigator_grid = g_new0 (GridData, 1); self->selected_data = g_new0 (ButtonData, 1); @@ -2096,10 +2098,3 @@ update_weather (GcalYearView *self) } } -/* Public API */ -void -gcal_year_view_set_first_weekday (GcalYearView *year_view, - gint nr_day) -{ - year_view->first_weekday = nr_day; -} diff --git a/src/views/gcal-year-view.h b/src/views/gcal-year-view.h index 103e53c4..6e29d9b5 100644 --- a/src/views/gcal-year-view.h +++ b/src/views/gcal-year-view.h @@ -31,9 +31,6 @@ G_BEGIN_DECLS G_DECLARE_FINAL_TYPE (GcalYearView, gcal_year_view, GCAL, YEAR_VIEW, GtkBox) -void gcal_year_view_set_first_weekday (GcalYearView *year_view, - gint nr_day); - void gcal_year_view_set_current_date (GcalYearView *year_view, icaltimetype *current_date);