static void task_shell_content_view_created (ECalBaseShellContent *cal_base_shell_content) { ETaskShellContent *task_shell_content; EShellView *shell_view; GalViewInstance *view_instance; GSettings *settings; task_shell_content = E_TASK_SHELL_CONTENT (cal_base_shell_content); shell_view = e_shell_content_get_shell_view (E_SHELL_CONTENT (task_shell_content)); /* Bind GObject properties to settings keys. */ settings = e_util_ref_settings ("org.gnome.evolution.calendar"); g_settings_bind ( settings, "task-hpane-position", task_shell_content->priv->paned, "hposition", G_SETTINGS_BIND_DEFAULT); g_settings_bind ( settings, "task-vpane-position", task_shell_content->priv->paned, "vposition", G_SETTINGS_BIND_DEFAULT); g_object_unref (settings); /* Finally load the view instance */ view_instance = e_shell_view_get_view_instance (shell_view); gal_view_instance_load (view_instance); /* Show everything known by default */ e_cal_model_set_time_range (e_cal_base_shell_content_get_model (cal_base_shell_content), 0, 0); }
static void cal_shell_view_notify_view_id_cb (EShellView *shell_view) { GalViewInstance *view_instance; const gchar *view_id; view_id = e_shell_view_get_view_id (shell_view); view_instance = e_shell_view_get_view_instance (shell_view); /* A NULL view ID implies we're in a custom view. But you can * only get to a custom view via the "Define Views" dialog, which * would have already modified the view instance appropriately. * Furthermore, there's no way to refer to a custom view by ID * anyway, since custom views have no IDs. */ if (view_id == NULL) return; gal_view_instance_set_current_view_id (view_instance, view_id); }