aboutsummaryrefslogtreecommitdiffstats
path: root/calendar/gui/e-cal-model.h
diff options
context:
space:
mode:
authorChenthill Palanisamy <pchenthill@novell.com>2008-08-13 17:09:33 +0800
committerChenthill Palanisamy <pchen@src.gnome.org>2008-08-13 17:09:33 +0800
commitf86754c329d9411893abd98bfe98b45d5ccfc943 (patch)
tree0dd8f442d76c9cd272efabc5c9c94ccad2628850 /calendar/gui/e-cal-model.h
parent334be248ae7cdb022ae5da6f5dbca133b5090f09 (diff)
downloadgsoc2013-evolution-f86754c329d9411893abd98bfe98b45d5ccfc943.tar.gz
gsoc2013-evolution-f86754c329d9411893abd98bfe98b45d5ccfc943.tar.zst
gsoc2013-evolution-f86754c329d9411893abd98bfe98b45d5ccfc943.zip
Fixes #347287
2008-08-15 Chenthill Palanisamy <pchenthill@novell.com> Fixes #347287 * gui/e-cal-list-view-config.c: * (e_cal_list_view_config_set_view): * gui/e-cal-list-view.c: (e_cal_list_view_new): * gui/e-cal-list-view.h: * gui/e-cal-model.c: (e_cal_model_set_timezone), * (add_instance_cb), (e_cal_view_objects_added_cb), (e_cal_view_done_cb), (update_e_cal_view_for_client), (cal_opened_cb), (add_new_client), (e_cal_model_component_class_init), (e_cal_model_component_finalize), (e_cal_model_component_init), (e_cal_model_component_get_type), (e_cal_model_copy_component_data), (e_cal_model_free_component_data): * gui/e-cal-model.h: * gui/e-calendar-view.c: (e_calendar_view_init), (e_calendar_view_set_model): * gui/e-calendar-view.h: * gui/e-day-view-config.c: (e_day_view_config_set_view): * gui/e-day-view.c: (time_range_changed_cb), (model_row_changed_cb), (model_cell_changed_cb), (model_rows_inserted_cb), (model_rows_deleted_cb), (timezone_changed_cb), (e_day_view_init), (init_model), (e_day_view_new), (e_day_view_set_mins_per_row), (e_day_view_add_event), (e_day_view_check_layout): * gui/e-day-view.h: * gui/e-week-view-config.c: (e_week_view_config_set_view): * gui/e-week-view.c: (time_range_changed_cb), (model_row_changed_cb), (model_cell_changed_cb), (model_rows_inserted_cb), (model_rows_deleted_cb), (timezone_changed_cb), (e_week_view_init), (init_model), (e_week_view_new), (e_week_view_add_event), (e_week_view_check_layout): * gui/e-week-view.h: * gui/gnome-cal.c: (message_proxy), (create_thread_pool), (message_push), (update_query_async), (update_query), (set_search_query), (set_timezone), (setup_widgets), (update_view_times), (display_view), (display_view_cb), (add_mclient_async), (add_mclient), (client_cal_opened_cb), (default_client_cal_opened_cb), (gnome_calendar_remove_source_by_uid), (gnome_calendar_on_date_navigator_selection_changed): Use a single model for all the views. svn path=/trunk/; revision=35977
Diffstat (limited to 'calendar/gui/e-cal-model.h')
-rw-r--r--calendar/gui/e-cal-model.h29
1 files changed, 25 insertions, 4 deletions
diff --git a/calendar/gui/e-cal-model.h b/calendar/gui/e-cal-model.h
index ca259c2678..405efb4400 100644
--- a/calendar/gui/e-cal-model.h
+++ b/calendar/gui/e-cal-model.h
@@ -57,19 +57,39 @@ typedef enum {
E_CAL_MODEL_FLAGS_EXPAND_RECURRENCES = 0x01
} ECalModelFlags;
-typedef struct {
+#define E_TYPE_CAL_MODEL_COMPONENT (e_cal_model_component_get_type ())
+#define E_CAL_MODEL_COMPONENT(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), E_TYPE_CAL_MODEL_COMPONENT, ECalModelComponent))
+#define E_CAL_MODEL_COMPONENT_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), E_TYPE_CAL_MODEL_COMPONENT, \
+ ECalComponentClass))
+#define E_IS_CAL_MODEL_COMPONENT(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), E_TYPE_CAL_MODEL_COMPONENT))
+#define E_IS_CAL_MODEL_COMPONENT_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), E_TYPE_CAL_MODEL_COMPONENT))
+
+typedef struct _ECalModelComponent ECalModelComponent;
+typedef struct _ECalModelComponentClass ECalModelComponentClass;
+typedef struct _ECalModelComponentPrivate ECalModelComponentPrivate;
+
+struct _ECalModelComponent {
+ GObject object;
+
ECal *client;
icalcomponent *icalcomp;
time_t instance_start;
time_t instance_end;
-
- /* private data */
+
+ /* Private data used by ECalModelCalendar and ECalModelTasks */
+ /* keep these public to avoid many accessor functions */
ECellDateEditValue *dtstart;
ECellDateEditValue *dtend;
ECellDateEditValue *due;
ECellDateEditValue *completed;
gchar *color;
-} ECalModelComponent;
+
+ ECalModelComponentPrivate *priv;
+};
+
+struct _ECalModelComponentClass {
+ GObjectClass parent_class;
+};
typedef struct {
ECalModelComponent *comp_data;
@@ -97,6 +117,7 @@ typedef struct {
} ECalModelClass;
GType e_cal_model_get_type (void);
+GType e_cal_model_component_get_type (void);
icalcomponent_kind e_cal_model_get_component_kind (ECalModel *model);
void e_cal_model_set_component_kind (ECalModel *model,
icalcomponent_kind kind);