views/week-view: Replace "context" property with context getter method
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/702>
This commit is contained in:
@@ -46,7 +46,6 @@ struct _GcalWeekView
|
||||
|
||||
/* property */
|
||||
GDateTime *date;
|
||||
GcalContext *context;
|
||||
|
||||
guint scroll_grid_timeout_id;
|
||||
gulong stack_page_changed_id;
|
||||
@@ -74,7 +73,6 @@ enum
|
||||
{
|
||||
PROP_0,
|
||||
PROP_DATE,
|
||||
PROP_CONTEXT,
|
||||
PROP_TIME_DIRECTION,
|
||||
NUM_PROPS
|
||||
};
|
||||
@@ -209,22 +207,18 @@ apply_zoom (GcalWeekView *self,
|
||||
static void
|
||||
save_zoom_level (GcalWeekView *self)
|
||||
{
|
||||
GSettings *settings;
|
||||
GcalContext *context = gcal_application_get_context (GCAL_DEFAULT_APPLICATION);
|
||||
GSettings *settings = gcal_context_get_settings (context);
|
||||
|
||||
g_assert (self->context != NULL);
|
||||
|
||||
settings = gcal_context_get_settings (self->context);
|
||||
g_settings_set_double (settings, "week-view-zoom-level", self->zoom_level);
|
||||
}
|
||||
|
||||
static void
|
||||
restore_zoom_level (GcalWeekView *self)
|
||||
{
|
||||
GSettings *settings;
|
||||
GcalContext *context = gcal_application_get_context (GCAL_DEFAULT_APPLICATION);
|
||||
GSettings *settings = gcal_context_get_settings (context);
|
||||
|
||||
g_assert (self->context != NULL);
|
||||
|
||||
settings = gcal_context_get_settings (self->context);
|
||||
self->zoom_level = g_settings_get_double (settings, "week-view-zoom-level");
|
||||
|
||||
begin_zoom (self, 0);
|
||||
@@ -569,8 +563,6 @@ gcal_week_view_finalize (GObject *object)
|
||||
|
||||
g_clear_pointer (&self->date, g_date_time_unref);
|
||||
|
||||
g_clear_object (&self->context);
|
||||
|
||||
/* Chain up to parent's finalize() method. */
|
||||
G_OBJECT_CLASS (gcal_week_view_parent_class)->finalize (object);
|
||||
}
|
||||
@@ -581,24 +573,12 @@ gcal_week_view_set_property (GObject *object,
|
||||
const GValue *value,
|
||||
GParamSpec *pspec)
|
||||
{
|
||||
GcalWeekView *self = (GcalWeekView *) object;
|
||||
|
||||
switch (property_id)
|
||||
{
|
||||
case PROP_DATE:
|
||||
gcal_view_set_date (GCAL_VIEW (object), g_value_get_boxed (value));
|
||||
break;
|
||||
|
||||
case PROP_CONTEXT:
|
||||
g_assert (self->context == NULL);
|
||||
self->context = g_value_dup_object (value);
|
||||
|
||||
gcal_week_grid_set_context (GCAL_WEEK_GRID (self->week_grid), self->context);
|
||||
gcal_week_header_set_context (GCAL_WEEK_HEADER (self->header), self->context);
|
||||
gcal_week_hour_bar_set_context (self->hours_bar, self->context);
|
||||
restore_zoom_level (self);
|
||||
break;
|
||||
|
||||
default:
|
||||
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
|
||||
break;
|
||||
@@ -622,10 +602,6 @@ gcal_week_view_get_property (GObject *object,
|
||||
g_value_set_boxed (value, self->date);
|
||||
break;
|
||||
|
||||
case PROP_CONTEXT:
|
||||
g_value_set_object (value, self->context);
|
||||
break;
|
||||
|
||||
case PROP_TIME_DIRECTION:
|
||||
g_value_set_enum (value, GTK_ORIENTATION_HORIZONTAL);
|
||||
break;
|
||||
@@ -651,7 +627,6 @@ gcal_week_view_class_init (GcalWeekViewClass *klass)
|
||||
object_class->get_property = gcal_week_view_get_property;
|
||||
|
||||
g_object_class_override_property (object_class, PROP_DATE, "active-date");
|
||||
g_object_class_override_property (object_class, PROP_CONTEXT, "context");
|
||||
g_object_class_override_property (object_class, PROP_TIME_DIRECTION, "time-direction");
|
||||
|
||||
gtk_widget_class_set_template_from_resource (widget_class, "/org/gnome/calendar/ui/views/gcal-week-view.ui");
|
||||
@@ -685,5 +660,7 @@ gcal_week_view_init (GcalWeekView *self)
|
||||
self->zoom_level = 1.0;
|
||||
|
||||
gtk_widget_set_size_request (self->content, -1, HEIGHT_DEFAULT);
|
||||
|
||||
restore_zoom_level (self);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user