aboutsummaryrefslogtreecommitdiffstats
path: root/calendar/gui/dialogs/comp-editor-page.c
diff options
context:
space:
mode:
Diffstat (limited to 'calendar/gui/dialogs/comp-editor-page.c')
-rw-r--r--calendar/gui/dialogs/comp-editor-page.c23
1 files changed, 23 insertions, 0 deletions
diff --git a/calendar/gui/dialogs/comp-editor-page.c b/calendar/gui/dialogs/comp-editor-page.c
index 0869d67fb9..44e89a3b14 100644
--- a/calendar/gui/dialogs/comp-editor-page.c
+++ b/calendar/gui/dialogs/comp-editor-page.c
@@ -149,6 +149,7 @@ comp_editor_page_class_init (CompEditorPageClass *class)
class->focus_main_widget = NULL;
class->fill_widgets = NULL;
class->fill_component = NULL;
+ class->fill_timezones = NULL;
class->set_summary = NULL;
class->set_dates = NULL;
@@ -269,6 +270,28 @@ comp_editor_page_fill_component (CompEditorPage *page, ECalComponent *comp)
}
/**
+ * comp_editor_page_fill_timezones:
+ * @page: An editor page.
+ * @timezones: Hash table to which timezones will be added.
+ *
+ * Fills the given hash table with all the timezones used by the dates in the
+ * specific editor page.
+ *
+ * Returns: TRUE if the timezones were added, FALSE otherwise.
+ */
+gboolean
+comp_editor_page_fill_timezones (CompEditorPage *page, GHashTable *timezones)
+{
+ g_return_val_if_fail (IS_COMP_EDITOR_PAGE (page), FALSE);
+ g_return_val_if_fail (timezones != NULL, FALSE);
+
+ if (CLASS (page)->fill_timezones != NULL)
+ return (* CLASS (page)->fill_timezones) (page, timezones);
+
+ return TRUE;
+}
+
+/**
* comp_editor_page_set_e_cal:
* @page: An editor page
* @client: A #ECal object