[gnome-calendar/wip/gbsneto/docs: 1/5] doc: add skeleton documentation



commit e888216c655dd703eafd928edbcb44b6921cf12f
Author: Georges Basile Stavracas Neto <georges stavracas gmail com>
Date:   Sat Mar 18 12:05:34 2017 -0300

    doc: add skeleton documentation
    
    This adds API documentation, generated at compile time.

 .gitignore                                    |    5 +
 Makefile.am                                   |    8 +-
 autogen.sh                                    |    1 +
 configure.ac                                  |   16 +
 doc/Makefile.am                               |    1 +
 doc/reference/Makefile.am                     |  101 ++
 doc/reference/gnome-calendar-decl-list.txt    |  555 ++++++
 doc/reference/gnome-calendar-decl.txt         | 2389 +++++++++++++++++++++++++
 doc/reference/gnome-calendar-docs.sgml        |   69 +
 doc/reference/gnome-calendar-sections.txt     |  581 ++++++
 doc/reference/gnome-calendar-undocumented.txt |  351 ++++
 doc/reference/gnome-calendar-unused.txt       |   10 +
 doc/reference/gnome-calendar.args             |  470 +++++
 doc/reference/gnome-calendar.hierarchy        |  156 ++
 doc/reference/gnome-calendar.interfaces       |   56 +
 doc/reference/gnome-calendar.prerequisites    |   19 +
 doc/reference/gnome-calendar.signals          |  213 +++
 doc/reference/gnome-calendar.types            |   31 +
 doc/reference/version.xml.in                  |    1 +
 src/Makefile.am                               |   17 +
 20 files changed, 5047 insertions(+), 3 deletions(-)
---
diff --git a/.gitignore b/.gitignore
index a8781f2..2e72e5c 100644
--- a/.gitignore
+++ b/.gitignore
@@ -92,3 +92,8 @@ src/tags
 src/views/tags
 src/views/.dirstamp
 *.goutputstream*
+gtk-doc.make
+doc/reference/xml
+doc/reference/html
+doc/reference/*.stamp
+doc/reference/*.xml
diff --git a/Makefile.am b/Makefile.am
index f99b982..17cbfd7 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -1,5 +1,5 @@
-SUBDIRS = src data po
-DIST_SUBDIRS = src data po
+SUBDIRS = src data po doc
+DIST_SUBDIRS = src data po doc
 
 INTLTOOL_FILES =                \
   intltool-extract.in           \
@@ -21,7 +21,9 @@ DISTCLEANFILES =                \
   intltool-update               \
   po/.intltool-merge-cache
 
-DISTCHECK_CONFIGURE_FLAGS = --enable-appstream-util
+DISTCHECK_CONFIGURE_FLAGS =     \
+  --enable-appstream-util       \
+  --disable-gtk-doc
 
 # Remove doc directory on uninstall
 uninstall-local:
diff --git a/autogen.sh b/autogen.sh
index 96b5d8d..b56d222 100755
--- a/autogen.sh
+++ b/autogen.sh
@@ -11,6 +11,7 @@ cd $srcdir
 mkdir -p m4
 autoreconf --verbose --force --install || exit $?
 intltoolize --force --copy --automake || exit $?
+gtkdocize || exit 1
 
 if test -z "$NOCONFIGURE"; then
     run_configure=true
diff --git a/configure.ac b/configure.ac
index cb8ad35..92dc0c8 100644
--- a/configure.ac
+++ b/configure.ac
@@ -124,6 +124,18 @@ BUGREPORT_URL=calendar_bugreport_url
 AC_SUBST(BUGREPORT_URL)
 
 dnl ================================================================
+dnl Documentation
+dnl ================================================================
+GTK_DOC_CHECK([1.14],[--flavour no-tmpl])
+AM_CONDITIONAL(ENABLE_GTK_DOC, test "x$enable_gtk_doc" = "xyes")
+AC_ARG_ENABLE(doc-cross-references,
+              AS_HELP_STRING([--disable-doc-cross-references],
+                             [cross reference symbols from other libraries @<:@default=yes@:>@]),
+              enable_doc_cross_references=$enableval,
+              enable_doc_cross_references=yes)
+AM_CONDITIONAL(ENABLE_DOC_CROSS_REFERENCES, test x$enable_doc_cross_references != xno)
+
+dnl ================================================================
 dnl Misc
 dnl ================================================================
 AC_PATH_PROG([GLIB_MKENUMS], [glib-mkenums])
@@ -163,6 +175,9 @@ AC_CONFIG_FILES([
       data/org.gnome.Calendar.desktop.in
       data/org.gnome.Calendar.search-provider.ini.in
       data/icons/Makefile
+      doc/Makefile
+      doc/reference/Makefile
+      doc/reference/version.xml
       po/Makefile.in
 ])
 
@@ -181,6 +196,7 @@ echo "
     Development options
         Enable Debug .....................  ${enable_debug}
         Enable Tracing ...................  ${enable_tracing}
+        Enable Documentation .............  ${enable_gtk_doc}
 
     Now type 'make' to build $PACKAGE
 "
diff --git a/doc/Makefile.am b/doc/Makefile.am
new file mode 100644
index 0000000..f3ddc22
--- /dev/null
+++ b/doc/Makefile.am
@@ -0,0 +1 @@
+SUBDIRS = reference
diff --git a/doc/reference/Makefile.am b/doc/reference/Makefile.am
new file mode 100644
index 0000000..a1e6351
--- /dev/null
+++ b/doc/reference/Makefile.am
@@ -0,0 +1,101 @@
+## Process this file with automake to produce Makefile.in
+
+# see /gtk-doc/examples/Makefile.am
+
+# We require automake 1.6 at least.
+AUTOMAKE_OPTIONS = 1.6
+
+# The name of the module, e.g. 'glib'.
+DOC_MODULE=gnome-calendar
+
+# The top-level SGML file. You can change this if you want to.
+DOC_MAIN_SGML_FILE=$(DOC_MODULE)-docs.sgml
+
+# The directory containing the source code. Relative to $(srcdir).
+# gtk-doc will search all .c & .h files beneath here for inline comments
+# documenting the functions and macros.
+DOC_SOURCE_DIR=$(top_srcdir)/src
+
+# Extra options to pass to gtkdoc-scangobj. Not normally needed.
+SCANGOBJ_OPTIONS=
+
+# Extra options to supply to gtkdoc-scan.
+# e.g. SCAN_OPTIONS=--deprecated-guards="GTK_DISABLE_DEPRECATED"
+SCAN_OPTIONS=--rebuild-types
+
+# Extra options to supply to gtkdoc-mkdb.
+MKDB_OPTIONS=--sgml-mode --output-format=xml
+
+# Extra options to supply to gtkdoc-mktmpl
+# e.g. MKTMPL_OPTIONS=--only-section-tmpl
+MKTMPL_OPTIONS=
+
+if ENABLE_DOC_CROSS_REFERENCES
+# Extra options to supply to gtkdoc-fixref. Not normally needed.
+# e.g. FIXXREF_OPTIONS=--extra-dir=../gdk-pixbuf/html --extra-dir=../gdk/html
+FIXXREF_OPTIONS = \
+       --extra-dir=$(GLIB_PREFIX)/share/gtk-doc/html/glib       \
+       --extra-dir=$(GLIB_PREFIX)/share/gtk-doc/html/gobject    \
+       --extra-dir=$(GLIB_PREFIX)/share/gtk-doc/html/gio        \
+       --extra-dir=$(GTK_PREFIX)/share/gtk-doc/html/gdk         \
+       --extra-dir=$(GTK_PREFIX)/share/gtk-doc/html/gtk
+endif
+
+# Used for dependencies. The docs will be rebuilt if any of these change.
+HFILE_GLOB = \
+       $(top_srcdir)/src/gcal*.h                                \
+       $(top_srcdir)/src/*/gcal-*.h                             \
+       $(NULL)
+CFILE_GLOB = \
+       $(top_srcdir)/src/gcal*.c                                \
+       $(top_srcdir)/src/*/gcal-*.c                             \
+       $(NULL)
+
+# Header files to ignore when scanning.
+IGNORE_HFILES = $(NULL)
+
+# Images to copy into HTML directory.
+HTML_IMAGES = $(NULL)
+
+# Extra SGML files that are included by $(DOC_MAIN_SGML_FILE).
+# e.g. content_files=running.sgml building.sgml changes-2.0.sgml
+content_files = version.xml
+
+# SGML files where gtk-doc abbrevations (#GtkWidget) are expanded
+# These files must be listed here *and* in content_files
+# e.g. expand_content_files=running.sgml
+expand_content_files=
+
+# CFLAGS and LDFLAGS for compiling gtkdoc-scangobj with your library.
+# Only needed if you are using gtkdoc-scangobj to dynamically query widget
+# signals and properties.
+GTKDOC_CFLAGS =                                                  \
+       -I$(top_srcdir)/src                                      \
+       -I$(top_builddir)/src                                    \
+       $(CALENDAR_CFLAGS)
+
+GTKDOC_LIBS =                                                    \
+       $(CALENDAR_LIBS)                                         \
+       $(top_builddir)/src/libgcal.la
+
+# This includes the standard gtk-doc make rules, copied by gtkdocize.
+include $(top_srcdir)/gtk-doc.make
+
+# Other files to distribute
+EXTRA_DIST += version.xml.in
+
+
+if ENABLE_GTK_DOC
+
+TESTS_ENVIRONMENT =                                              \
+       SRCDIR=$(abs_srcdir)                                     \
+       BUILDDIR=$(abs_builddir)                                 \
+       DOC_MODULE=$(DOC_MODULE)                                 \
+       DOC_MAIN_SGML_FILE=$(DOC_MAIN_SGML_FILE)
+
+check-local: $(GTKDOC_CHECK)
+       @$(TESTS_ENVIRONMENT) ./$(GTKDOC_CHECK)
+
+endif
+
+-include $(top_srcdir)/git.mk
diff --git a/doc/reference/gnome-calendar-decl-list.txt b/doc/reference/gnome-calendar-decl-list.txt
new file mode 100644
index 0000000..d9c201e
--- /dev/null
+++ b/doc/reference/gnome-calendar-decl-list.txt
@@ -0,0 +1,555 @@
+<SECTION>
+<FILE>css-code</FILE>
+CSS_TEMPLATE
+</SECTION>
+
+<SECTION>
+<FILE>e-cal-data-model</FILE>
+<TITLE>ECalDataModel</TITLE>
+ECalDataModelViewState
+EThreadJobFunc
+e_cal_data_model_new
+e_cal_data_model_new_clone
+e_cal_data_model_submit_thread_job
+e_cal_data_model_get_disposing
+e_cal_data_model_set_disposing
+e_cal_data_model_get_expand_recurrences
+e_cal_data_model_set_expand_recurrences
+e_cal_data_model_get_timezone
+e_cal_data_model_set_timezone
+e_cal_data_model_set_filter
+e_cal_data_model_dup_filter
+e_cal_data_model_add_client
+e_cal_data_model_remove_client
+e_cal_data_model_ref_client
+e_cal_data_model_get_clients
+e_cal_data_model_get_components
+ECalDataModelForeachFunc
+e_cal_data_model_foreach_component
+e_cal_data_model_subscribe
+e_cal_data_model_unsubscribe
+e_cal_data_model_get_subscriber_range
+e_cal_data_model_freeze_views_update
+e_cal_data_model_thaw_views_update
+e_cal_data_model_is_views_update_frozen
+<SUBSECTION Standard>
+ECalDataModel
+ECalDataModelClass
+ECalDataModelPrivate
+E_CAL_DATA_MODEL
+E_CAL_DATA_MODEL_CLASS
+E_CAL_DATA_MODEL_GET_CLASS
+E_IS_CAL_DATA_MODEL
+E_IS_CAL_DATA_MODEL_CLASS
+E_TYPE_CAL_DATA_MODEL
+e_cal_data_model_get_type
+</SECTION>
+
+<SECTION>
+<FILE>e-cal-data-model-subscriber</FILE>
+<TITLE>ECalDataModelSubscriber</TITLE>
+e_cal_data_model_subscriber_component_added
+e_cal_data_model_subscriber_component_modified
+e_cal_data_model_subscriber_component_removed
+e_cal_data_model_subscriber_freeze
+e_cal_data_model_subscriber_thaw
+<SUBSECTION Standard>
+ECalDataModelSubscriber
+ECalDataModelSubscriberInterface
+E_CAL_DATA_MODEL_SUBSCRIBER
+E_CAL_DATA_MODEL_SUBSCRIBER_GET_INTERFACE
+E_CAL_DATA_MODEL_SUBSCRIBER_INTERFACE
+E_IS_CAL_DATA_MODEL_SUBSCRIBER
+E_IS_CAL_DATA_MODEL_SUBSCRIBER_INTERFACE
+E_TYPE_CAL_DATA_MODEL_SUBSCRIBER
+e_cal_data_model_subscriber_get_type
+</SECTION>
+
+<SECTION>
+<FILE>gcal-application</FILE>
+GCAL_TYPE_APPLICATION
+gcal_application_new
+gcal_application_get_manager
+gcal_application_get_settings
+gcal_application_set_uuid
+gcal_application_set_initial_date
+GcalApplication
+</SECTION>
+
+<SECTION>
+<FILE>gcal-date-chooser</FILE>
+GcalDateChooserDayOptions
+GCAL_TYPE_DATE_CHOOSER
+GcalDateChooserDayOptionsCallback
+gcal_date_chooser_new
+gcal_date_chooser_get_date
+gcal_date_chooser_set_date
+gcal_date_chooser_set_day_options_callback
+gcal_date_chooser_invalidate_day_options
+gcal_date_chooser_get_no_month_change
+gcal_date_chooser_set_no_month_change
+gcal_date_chooser_get_show_heading
+gcal_date_chooser_set_show_heading
+gcal_date_chooser_get_show_day_names
+gcal_date_chooser_set_show_day_names
+gcal_date_chooser_get_show_week_numbers
+gcal_date_chooser_set_show_week_numbers
+GcalDateChooser
+</SECTION>
+
+<SECTION>
+<FILE>gcal-date-chooser-day</FILE>
+GCAL_TYPE_DATE_CHOOSER_DAY
+gcal_date_chooser_day_new
+gcal_date_chooser_day_get_date
+gcal_date_chooser_day_set_date
+gcal_date_chooser_day_set_other_month
+gcal_date_chooser_day_set_selected
+gcal_date_chooser_day_set_options
+GcalDateChooserDay
+</SECTION>
+
+<SECTION>
+<FILE>gcal-date-selector</FILE>
+GCAL_TYPE_DATE_SELECTOR
+gcal_date_selector_new
+gcal_date_selector_get_date
+gcal_date_selector_set_date
+GcalDateSelector
+</SECTION>
+
+<SECTION>
+<FILE>gcal-debug</FILE>
+GCAL_ENABLE_TRACE
+GCAL_LOG_LEVEL_TRACE
+GCAL_TRACE_MSG
+GCAL_PROBE
+GCAL_TODO
+GCAL_ENTRY
+GCAL_EXIT
+GCAL_GOTO
+GCAL_RETURN
+GCAL_BUG
+</SECTION>
+
+<SECTION>
+<FILE>gcal-edit-dialog</FILE>
+GCAL_RESPONSE_DELETE_EVENT
+GCAL_RESPONSE_SAVE_EVENT
+GCAL_RESPONSE_CREATE_EVENT
+GCAL_TYPE_EDIT_DIALOG
+gcal_edit_dialog_new
+gcal_edit_dialog_set_event_is_new
+gcal_edit_dialog_get_event
+gcal_edit_dialog_set_event
+gcal_edit_dialog_set_manager
+gcal_edit_dialog_set_time_format
+gcal_edit_dialog_get_date_end
+gcal_edit_dialog_get_date_start
+GcalEditDialog
+</SECTION>
+
+<SECTION>
+<FILE>gcal-enum-types</FILE>
+<SUBSECTION Standard>
+GCAL_EDITABLE_PROPERTY
+GCAL_WINDOW_VIEW_TYPE
+event_editable_property_get_type
+gcal_window_view_type_get_type
+</SECTION>
+
+<SECTION>
+<FILE>gcal-event</FILE>
+GcalEventError
+GCAL_EVENT_ERROR
+GCAL_TYPE_EVENT
+gcal_event_error_quark
+gcal_event_new
+gcal_event_get_all_day
+gcal_event_set_all_day
+gcal_event_get_color
+gcal_event_set_color
+gcal_event_get_component
+gcal_event_get_date_end
+gcal_event_set_date_end
+gcal_event_get_date_start
+gcal_event_set_date_start
+gcal_event_get_description
+gcal_event_set_description
+gcal_event_has_alarms
+gcal_event_get_alarms
+gcal_event_add_alarm
+gcal_event_remove_alarm
+gcal_event_get_location
+gcal_event_set_location
+gcal_event_get_source
+gcal_event_set_source
+gcal_event_get_summary
+gcal_event_set_summary
+gcal_event_get_timezone
+gcal_event_set_timezone
+gcal_event_get_uid
+gcal_event_is_multiday
+gcal_event_compare
+gcal_event_compare_with_current
+GcalEvent
+</SECTION>
+
+<SECTION>
+<FILE>gcal-event-widget</FILE>
+GCAL_TYPE_EVENT_WIDGET
+gcal_event_widget_new
+gcal_event_widget_get_event
+gcal_event_widget_get_date_start
+gcal_event_widget_set_date_start
+gcal_event_widget_get_date_end
+gcal_event_widget_set_date_end
+gcal_event_widget_set_read_only
+gcal_event_widget_get_read_only
+gcal_event_widget_set_has_reminders
+gcal_event_widget_get_has_reminders
+gcal_event_widget_clone
+gcal_event_widget_equal
+gcal_event_widget_compare_by_length
+gcal_event_widget_compare_by_start_date
+GcalEventWidget
+</SECTION>
+
+<SECTION>
+<FILE>gcal-log</FILE>
+gcal_log_init
+</SECTION>
+
+<SECTION>
+<FILE>gcal-manager</FILE>
+GCAL_TYPE_MANAGER
+gcal_manager_new_with_settings
+gcal_manager_get_source
+gcal_manager_get_sources
+gcal_manager_get_sources_connected
+gcal_manager_get_default_source
+gcal_manager_set_default_source
+gcal_manager_get_system_timezone
+gcal_manager_set_subscriber
+gcal_manager_set_search_subscriber
+gcal_manager_set_query
+gcal_manager_query_client_data
+gcal_manager_refresh
+gcal_manager_is_client_writable
+gcal_manager_create_event
+gcal_manager_update_event
+gcal_manager_remove_event
+gcal_manager_move_event_to_source
+gcal_manager_add_source
+gcal_manager_enable_source
+gcal_manager_disable_source
+gcal_manager_save_source
+gcal_manager_get_events
+gcal_manager_get_loading
+gcal_manager_get_goa_client
+gcal_manager_get_event_from_shell_search
+gcal_manager_setup_shell_search
+gcal_manager_set_shell_search_query
+gcal_manager_set_shell_search_subscriber
+gcal_manager_shell_search_done
+gcal_manager_get_shell_search_events
+GcalManager
+</SECTION>
+
+<SECTION>
+<FILE>gcal-month-view</FILE>
+GCAL_TYPE_MONTH_VIEW
+gcal_month_view_set_first_weekday
+gcal_month_view_set_use_24h_format
+gcal_month_view_set_manager
+GcalMonthView
+</SECTION>
+
+<SECTION>
+<FILE>gcal-multi-choice</FILE>
+GCAL_TYPE_MULTI_CHOICE
+gcal_multi_choice_new
+gcal_multi_choice_get_value
+gcal_multi_choice_set_value
+gcal_multi_choice_set_choices
+GcalMultiChoiceFormatCallback
+gcal_multi_choice_set_format_callback
+GcalMultiChoice
+</SECTION>
+
+<SECTION>
+<FILE>gcal-quick-add-popover</FILE>
+GCAL_TYPE_QUICK_ADD_POPOVER
+gcal_quick_add_popover_new
+gcal_quick_add_popover_set_manager
+gcal_quick_add_popover_get_date_start
+gcal_quick_add_popover_set_date_start
+gcal_quick_add_popover_get_date_end
+gcal_quick_add_popover_set_date_end
+GcalQuickAddPopover
+</SECTION>
+
+<SECTION>
+<FILE>gcal-range-tree</FILE>
+GcalRangeTraverseFunc
+gcal_range_tree_new
+gcal_range_tree_copy
+gcal_range_tree_ref
+gcal_range_tree_unref
+gcal_range_tree_add_range
+gcal_range_tree_remove_range
+gcal_range_tree_traverse
+gcal_range_tree_get_data_at_range
+gcal_range_tree_count_entries_at_range
+<SUBSECTION Standard>
+GCAL_TYPE_RANGE_TREE
+GcalRangeTree
+gcal_range_tree_get_type
+</SECTION>
+
+<SECTION>
+<FILE>gcal-resources</FILE>
+calendar_get_resource
+</SECTION>
+
+<SECTION>
+<FILE>gcal-search-view</FILE>
+GCAL_TYPE_SEARCH_VIEW
+gcal_search_view_set_time_format
+gcal_search_view_search
+gcal_search_view_new
+gcal_search_view_connect
+GcalSearchView
+</SECTION>
+
+<SECTION>
+<FILE>gcal-shell-search-provider</FILE>
+<TITLE>GcalShellSearchProvider</TITLE>
+GCAL_TYPE_SHELL_SEARCH_PROVIDER
+GcalShellSearchProviderClass
+gcal_shell_search_provider_new
+gcal_shell_search_provider_dbus_export
+gcal_shell_search_provider_dbus_unexport
+gcal_shell_search_provider_connect
+GcalShellSearchProvider
+</SECTION>
+
+<SECTION>
+<FILE>gcal-shell-search-provider-generated</FILE>
+<TITLE>GcalShellSearchProvider2Skeleton</TITLE>
+gcal_shell_search_provider2_interface_info
+gcal_shell_search_provider2_override_properties
+gcal_shell_search_provider2_complete_get_initial_result_set
+gcal_shell_search_provider2_complete_get_subsearch_result_set
+gcal_shell_search_provider2_complete_get_result_metas
+gcal_shell_search_provider2_complete_activate_result
+gcal_shell_search_provider2_complete_launch_search
+gcal_shell_search_provider2_call_get_initial_result_set
+gcal_shell_search_provider2_call_get_initial_result_set_finish
+gcal_shell_search_provider2_call_get_initial_result_set_sync
+gcal_shell_search_provider2_call_get_subsearch_result_set
+gcal_shell_search_provider2_call_get_subsearch_result_set_finish
+gcal_shell_search_provider2_call_get_subsearch_result_set_sync
+gcal_shell_search_provider2_call_get_result_metas
+gcal_shell_search_provider2_call_get_result_metas_finish
+gcal_shell_search_provider2_call_get_result_metas_sync
+gcal_shell_search_provider2_call_activate_result
+gcal_shell_search_provider2_call_activate_result_finish
+gcal_shell_search_provider2_call_activate_result_sync
+gcal_shell_search_provider2_call_launch_search
+gcal_shell_search_provider2_call_launch_search_finish
+gcal_shell_search_provider2_call_launch_search_sync
+gcal_shell_search_provider2_proxy_new
+gcal_shell_search_provider2_proxy_new_finish
+gcal_shell_search_provider2_proxy_new_sync
+gcal_shell_search_provider2_proxy_new_for_bus
+gcal_shell_search_provider2_proxy_new_for_bus_finish
+gcal_shell_search_provider2_proxy_new_for_bus_sync
+gcal_shell_search_provider2_skeleton_new
+<SUBSECTION Standard>
+GCAL_IS_SHELL_SEARCH_PROVIDER2
+GCAL_IS_SHELL_SEARCH_PROVIDER2_PROXY
+GCAL_IS_SHELL_SEARCH_PROVIDER2_PROXY_CLASS
+GCAL_IS_SHELL_SEARCH_PROVIDER2_SKELETON
+GCAL_IS_SHELL_SEARCH_PROVIDER2_SKELETON_CLASS
+GCAL_SHELL_SEARCH_PROVIDER2
+GCAL_SHELL_SEARCH_PROVIDER2_GET_IFACE
+GCAL_SHELL_SEARCH_PROVIDER2_PROXY
+GCAL_SHELL_SEARCH_PROVIDER2_PROXY_CLASS
+GCAL_SHELL_SEARCH_PROVIDER2_PROXY_GET_CLASS
+GCAL_SHELL_SEARCH_PROVIDER2_SKELETON
+GCAL_SHELL_SEARCH_PROVIDER2_SKELETON_CLASS
+GCAL_SHELL_SEARCH_PROVIDER2_SKELETON_GET_CLASS
+GCAL_TYPE_SHELL_SEARCH_PROVIDER2
+GCAL_TYPE_SHELL_SEARCH_PROVIDER2_PROXY
+GCAL_TYPE_SHELL_SEARCH_PROVIDER2_SKELETON
+GcalShellSearchProvider2
+GcalShellSearchProvider2Iface
+GcalShellSearchProvider2Proxy
+GcalShellSearchProvider2ProxyClass
+GcalShellSearchProvider2ProxyPrivate
+GcalShellSearchProvider2Skeleton
+GcalShellSearchProvider2SkeletonClass
+GcalShellSearchProvider2SkeletonPrivate
+gcal_shell_search_provider2_get_type
+gcal_shell_search_provider2_proxy_get_type
+gcal_shell_search_provider2_skeleton_get_type
+</SECTION>
+
+<SECTION>
+<FILE>gcal-source-dialog</FILE>
+GCAL_RESPONSE_REMOVE_SOURCE
+GCAL_TYPE_SOURCE_DIALOG
+GcalSourceDialogMode
+gcal_source_dialog_new
+gcal_source_dialog_set_manager
+gcal_source_dialog_set_mode
+gcal_source_dialog_set_source
+GcalSourceDialog
+</SECTION>
+
+<SECTION>
+<FILE>gcal-subscriber-view</FILE>
+<TITLE>GcalSubscriberView</TITLE>
+gcal_subscriber_view_get_child_by_uuid
+<SUBSECTION Standard>
+GCAL_IS_SUBSCRIBER_VIEW
+GCAL_IS_SUBSCRIBER_VIEW_CLASS
+GCAL_SUBSCRIBER_VIEW
+GCAL_SUBSCRIBER_VIEW_CLASS
+GCAL_SUBSCRIBER_VIEW_GET_CLASS
+GCAL_TYPE_SUBSCRIBER_VIEW
+GcalSubscriberView
+GcalSubscriberViewClass
+GcalSubscriberViewPrivate
+gcal_subscriber_view_get_type
+</SECTION>
+
+<SECTION>
+<FILE>gcal-subscriber-view-private</FILE>
+GcalSubscriberViewPrivate
+</SECTION>
+
+<SECTION>
+<FILE>gcal-time-selector</FILE>
+GCAL_TYPE_TIME_SELECTOR
+gcal_time_selector_new
+gcal_time_selector_set_time_format
+gcal_time_selector_get_time
+gcal_time_selector_set_time
+GcalTimeSelector
+</SECTION>
+
+<SECTION>
+<FILE>gcal-utils</FILE>
+ICAL_TIME_TYPE
+ALIGNED
+MINUTES_PER_DAY
+MAX_MINUTES
+gcal_clear_datetime
+GcalWindowViewType
+EventEditableProperty
+GcalTranslateFunc
+icaltime_get_type
+datetime_compare_date
+datetime_to_icaltime
+datetime_is_date
+icaltime_to_datetime
+gcal_dup_icaltime
+gcal_get_weekday
+gcal_get_month_name
+gcal_get_surface_from_color
+get_circle_surface_from_color
+get_color_name_from_source
+get_desc_from_component
+get_uuid_from_component
+get_first_weekday
+build_component_from_details
+icaltime_compare_date
+icaltime_compare_with_current
+get_start_of_week
+get_end_of_week
+is_clock_format_24h
+e_strftime_fix_am_pm
+e_utf8_strftime_fix_am_pm
+fix_popover_menu_icons
+uri_get_fields
+get_source_parent_name_color
+format_utc_offset
+get_alarm_trigger_minutes
+should_change_date_for_scroll
+is_source_enabled
+</SECTION>
+
+<SECTION>
+<FILE>gcal-view</FILE>
+<TITLE>GcalView</TITLE>
+GCAL_TYPE_VIEW
+GcalViewInterface
+gcal_view_set_date
+gcal_view_get_date
+gcal_view_get_initial_date
+gcal_view_get_final_date
+gcal_view_clear_marks
+gcal_view_get_children_by_uuid
+GcalView
+</SECTION>
+
+<SECTION>
+<FILE>gcal-week-grid</FILE>
+GCAL_TYPE_WEEK_GRID
+gcal_week_grid_set_manager
+gcal_week_grid_set_first_weekday
+gcal_week_grid_set_use_24h_format
+gcal_week_grid_add_event
+gcal_week_grid_remove_event
+gcal_week_grid_get_children_by_uuid
+gcal_week_grid_clear_marks
+GcalWeekGrid
+</SECTION>
+
+<SECTION>
+<FILE>gcal-week-header</FILE>
+GCAL_TYPE_WEEK_HEADER
+gcal_week_header_set_manager
+gcal_week_header_set_first_weekday
+gcal_week_header_set_use_24h_format
+gcal_week_header_add_event
+gcal_week_header_remove_event
+gcal_week_header_get_children_by_uuid
+gcal_week_header_get_sidebar_size_group
+gcal_week_header_clear_marks
+GcalWeekHeader
+</SECTION>
+
+<SECTION>
+<FILE>gcal-week-view</FILE>
+GCAL_TYPE_WEEK_VIEW
+gcal_week_view_new
+gcal_week_view_set_manager
+gcal_week_view_set_first_weekday
+gcal_week_view_set_use_24h_format
+GcalWeekView
+</SECTION>
+
+<SECTION>
+<FILE>gcal-window</FILE>
+GCAL_TYPE_WINDOW
+gcal_window_new_with_view_and_date
+gcal_window_new_event
+gcal_window_set_search_mode
+gcal_window_set_search_query
+gcal_window_open_event_by_uuid
+GcalWindow
+</SECTION>
+
+<SECTION>
+<FILE>gcal-year-view</FILE>
+GCAL_TYPE_YEAR_VIEW
+gcal_year_view_set_manager
+gcal_year_view_set_first_weekday
+gcal_year_view_set_use_24h_format
+gcal_year_view_set_current_date
+GcalYearView
+</SECTION>
+
diff --git a/doc/reference/gnome-calendar-decl.txt b/doc/reference/gnome-calendar-decl.txt
new file mode 100644
index 0000000..1f79541
--- /dev/null
+++ b/doc/reference/gnome-calendar-decl.txt
@@ -0,0 +1,2389 @@
+<MACRO>
+<NAME>GCAL_TYPE_QUICK_ADD_POPOVER</NAME>
+#define GCAL_TYPE_QUICK_ADD_POPOVER (gcal_quick_add_popover_get_type())
+</MACRO>
+<FUNCTION>
+<NAME>gcal_quick_add_popover_new</NAME>
+<RETURNS>GtkWidget *           </RETURNS>
+void
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_quick_add_popover_set_manager</NAME>
+<RETURNS>void                  </RETURNS>
+GcalQuickAddPopover *self, GcalManager         *manager
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_quick_add_popover_get_date_start</NAME>
+<RETURNS>GDateTime *           </RETURNS>
+GcalQuickAddPopover *self
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_quick_add_popover_set_date_start</NAME>
+<RETURNS>void                  </RETURNS>
+GcalQuickAddPopover *self, GDateTime           *dt
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_quick_add_popover_get_date_end</NAME>
+<RETURNS>GDateTime *           </RETURNS>
+GcalQuickAddPopover *self
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_quick_add_popover_set_date_end</NAME>
+<RETURNS>void                  </RETURNS>
+GcalQuickAddPopover *self, GDateTime           *dt
+</FUNCTION>
+<STRUCT>
+<NAME>GcalQuickAddPopover</NAME>
+</STRUCT>
+<MACRO>
+<NAME>CSS_TEMPLATE</NAME>
+#define CSS_TEMPLATE \
+".color-%1$d {"\
+"  background-color: %2$s"\
+"}"\
+".color-%1$d.slanted {"\
+"  background-color: transparent;"\
+"  background-image: linear-gradient(100deg, /* left edge */"\
+"                                    alpha(%2$s, 0)  5px,"\
+"                                    %2$s            6px,"\
+"                                    %2$s          9px,"\
+"                                    alpha(%2$s, 0) 10px,"\
+"                                    alpha(%2$s, 0) 16px,"\
+"                                    %2$s         17px),"\
+"                    linear-gradient(280deg, /* right edge */"\
+"                                    alpha(%2$s, 0)  5px,"\
+"                                    %2$s            6px,"\
+"                                    %2$s          9px,"\
+"                                    alpha(%2$s, 0) 10px,"\
+"                                    alpha(%2$s, 0) 16px,"\
+"                                    %2$s         17px),"\
+"                    linear-gradient(100deg, /* left edge shadow */"\
+"                                    transparent          5px,"\
+"                                    @event_shadow_color  6px,"\
+"                                    @event_shadow_color  9px,"\
+"                                    transparent         10px,"\
+"                                    transparent         16px,"\
+"                                    @event_shadow_color       17px),"\
+"                    linear-gradient(280deg, /* right edge shadow*/"\
+"                                    transparent          5px,"\
+"                                    @event_shadow_color  6px,"\
+"                                    @event_shadow_color  9px,"\
+"                                    transparent         10px,"\
+"                                    transparent         16px,"\
+"                                    @event_shadow_color       17px);"\
+"  border-bottom: 1px solid transparent; /* for the shadow displacement */"\
+"  background-size: 50%% 100%%, 50%% 100%%, 50%% 100%%, 50%% 100%%;"\
+"  background-position: left bottom, right bottom, left bottom, right bottom;"\
+"  background-repeat: no-repeat;"\
+"  background-origin: padding-box, padding-box, border-box, border-box;"\
+"  background-clip: padding-box, padding-box, border-box, border-box;"\
+"  padding-left: 24px;"\
+"  padding-right: 24px;"\
+"  padding-top: 3px;"\
+"  padding-bottom: 4px;"\
+"  border-radius: 0;"\
+"}"\
+".color-%1$d.slanted:backdrop {"\
+"  background-image: linear-gradient(100deg, /* left edge */"\
+"                                    alpha(%2$s, 0)  5px,"\
+"                                    %2$s            6px,"\
+"                                    %2$s          9px,"\
+"                                    alpha(%2$s, 0) 10px,"\
+"                                    alpha(%2$s, 0) 16px,"\
+"                                    %2$s         17px),"\
+"                    linear-gradient(280deg, /* right edge */"\
+"                                    alpha(%2$s, 0)  5px,"\
+"                                    %2$s            6px,"\
+"                                    %2$s          9px,"\
+"                                    alpha(%2$s, 0) 10px,"\
+"                                    alpha(%2$s, 0) 16px,"\
+"                                    %2$s         17px);"\
+"}"\
+".color-%1$d.slanted:dir(rtl) {"\
+"  background-image: linear-gradient(80deg, /* left edge */"\
+"                                    alpha(%2$s, 0)  5px,"\
+"                                    %2$s            6px,"\
+"                                    %2$s          9px,"\
+"                                    alpha(%2$s, 0) 10px,"\
+"                                    alpha(%2$s, 0) 16px,"\
+"                                    %2$s         17px),"\
+"                    linear-gradient(260deg, /* right edge */"\
+"                                    alpha(%2$s, 0)  5px,"\
+"                                    %2$s            6px,"\
+"                                    %2$s          9px,"\
+"                                    alpha(%2$s, 0) 10px,"\
+"                                    alpha(%2$s, 0) 16px,"\
+"                                    %2$s         17px),"\
+"                    linear-gradient(80deg, /* left edge shadow */"\
+"                                    transparent          5px,"\
+"                                    @event_shadow_color  6px,"\
+"                                    @event_shadow_color  9px,"\
+"                                    transparent         10px,"\
+"                                    transparent         16px,"\
+"                                    @event_shadow_color       17px),"\
+"                    linear-gradient(260deg, /* right edge shadow*/"\
+"                                    transparent          5px,"\
+"                                    @event_shadow_color  6px,"\
+"                                    @event_shadow_color  9px,"\
+"                                    transparent         10px,"\
+"                                    transparent         16px,"\
+"                                    @event_shadow_color       17px);"\
+"}"\
+".color-%1$d.slanted:dir(rtl):backdrop {"\
+"  background-image: linear-gradient(80deg, /* left edge */"\
+"                                    alpha(%2$s, 0)  5px,"\
+"                                    %2$s            6px,"\
+"                                    %2$s          9px,"\
+"                                    alpha(%2$s, 0) 10px,"\
+"                                    alpha(%2$s, 0) 16px,"\
+"                                    %2$s         17px),"\
+"                    linear-gradient(260deg, /* right edge */"\
+"                                    alpha(%2$s, 0)  5px,"\
+"                                    %2$s            6px,"\
+"                                    %2$s          9px,"\
+"                                    alpha(%2$s, 0) 10px,"\
+"                                    alpha(%2$s, 0) 16px,"\
+"                                    %2$s         17px);"\
+"}"\
+".color-%1$d.slanted-start {"\
+"  background-color: transparent;"\
+"  background-image: linear-gradient(100deg, /* left edge */"\
+"                                    alpha(%2$s, 0)  5px,"\
+"                                    %2$s            6px,"\
+"                                    %2$s          9px,"\
+"                                    alpha(%2$s, 0) 10px,"\
+"                                    alpha(%2$s, 0) 16px,"\
+"                                    %2$s         17px),"\
+"                    linear-gradient(100deg, /* left edge shadow */"\
+"                                    transparent          5px,"\
+"                                    @event_shadow_color  6px,"\
+"                                    @event_shadow_color  9px,"\
+"                                    transparent         10px,"\
+"                                    transparent         16px,"\
+"                                    @event_shadow_color       17px);"\
+"  border-bottom: 1px solid transparent; /* for the shadow displacement */"\
+"  background-position: left bottom, left bottom;"\
+"  background-size: 100%% 100%%, 100%% 100%%;"\
+"  background-origin: padding-box, border-box;"\
+"  background-clip: padding-box, border-box;"\
+"  border-radius: 0 2px 2px 0;"\
+"  padding-right: 4px;"\
+"  padding-left: 24px;"\
+"  padding-top: 3px;"\
+"  padding-bottom: 4px;"\
+"}"\
+".color-%1$d.slanted-start:backdrop {"\
+"  background-image: linear-gradient(100deg, /* left edge */"\
+"                                    alpha(%2$s, 0)  5px,"\
+"                                    %2$s            6px,"\
+"                                    %2$s          9px,"\
+"                                    alpha(%2$s, 0) 10px,"\
+"                                    alpha(%2$s, 0) 16px,"\
+"                                    %2$s         17px);"\
+"}"\
+".color-%1$d.slanted-start:dir(rtl) {"\
+"  background-image: linear-gradient(260deg, /* right edge */"\
+"                                    alpha(%2$s, 0)  5px,"\
+"                                    %2$s            6px,"\
+"                                    %2$s          9px,"\
+"                                    alpha(%2$s, 0) 10px,"\
+"                                    alpha(%2$s, 0) 16px,"\
+"                                    %2$s         17px),"\
+"                    linear-gradient(260deg, /* right edge shadow */"\
+"                                    transparent          5px,"\
+"                                    @event_shadow_color  6px,"\
+"                                    @event_shadow_color  9px,"\
+"                                    transparent         10px,"\
+"                                    transparent         16px,"\
+"                                    @event_shadow_color       17px);"\
+"  border-bottom: 1px solid transparent; /* for the shadow displacement */"\
+"  background-position: right bottom, right bottom;"\
+"  border-radius: 2px 0 0 2px;"\
+"  padding-right: 24px;"\
+"  padding-left: 4px;"\
+"}"\
+".color-%1$d.slanted-start:dir(rtl):backdrop {"\
+"  background-image: linear-gradient(260deg, /* right edge */"\
+"                                    alpha(%2$s, 0)  5px,"\
+"                                    %2$s            6px,"\
+"                                    %2$s          9px,"\
+"                                    alpha(%2$s, 0) 10px,"\
+"                                    alpha(%2$s, 0) 16px,"\
+"                                    %2$s         17px);"\
+"}"\
+".color-%1$d.slanted-end {"\
+"  background-color: transparent;"\
+"  background-image: linear-gradient(280deg, /* right edge */"\
+"                                    alpha(%2$s, 0)  5px,"\
+"                                    %2$s            6px,"\
+"                                    %2$s          9px,"\
+"                                    alpha(%2$s, 0) 10px,"\
+"                                    alpha(%2$s, 0) 16px,"\
+"                                    %2$s         17px),"\
+"                    linear-gradient(280deg, /* right edge shadow */"\
+"                                    transparent          5px,"\
+"                                    @event_shadow_color  6px,"\
+"                                    @event_shadow_color  9px,"\
+"                                    transparent         10px,"\
+"                                    transparent         16px,"\
+"                                    @event_shadow_color       17px);"\
+"  border-bottom: 1px solid transparent; /* for the shadow displacement */"\
+"  background-position: right bottom, right bottom;"\
+"  background-size: 100%% 100%%, 100%% 100%%;"\
+"  background-origin: padding-box, border-box;"\
+"  background-clip: padding-box, border-box;"\
+"  border-radius: 2px 0 0 2px;"\
+"  padding-right: 24px;"\
+"  padding-left: 4px;"\
+"  padding-top: 3px;"\
+"  padding-bottom: 4px;"\
+"}"\
+".color-%1$d.slanted-end:backdrop {"\
+"  background-image: linear-gradient(280deg, /* right edge */"\
+"                                    alpha(%2$s, 0)  5px,"\
+"                                    %2$s            6px,"\
+"                                    %2$s          9px,"\
+"                                    alpha(%2$s, 0) 10px,"\
+"                                    alpha(%2$s, 0) 16px,"\
+"                                    %2$s         17px);"\
+"}"\
+".color-%1$d.slanted-end:dir(rtl) {"\
+"  background-image: linear-gradient(80deg, /* left edge */"\
+"                                    alpha(%2$s, 0)  5px,"\
+"                                    %2$s            6px,"\
+"                                    %2$s          9px,"\
+"                                    alpha(%2$s, 0) 10px,"\
+"                                    alpha(%2$s, 0) 16px,"\
+"                                    %2$s         17px),"\
+"                    linear-gradient(80deg, /* left edge shadow */"\
+"                                    transparent          5px,"\
+"                                    @event_shadow_color  6px,"\
+"                                    @event_shadow_color  9px,"\
+"                                    transparent         10px,"\
+"                                    transparent         16px,"\
+"                                    @event_shadow_color       17px);"\
+"  background-position: left bottom, left bottom;"\
+"  border-radius: 0 2px 2px 0;"\
+"  padding-right: 4px;"\
+"  padding-left: 24px;"\
+"}"\
+".color-%1$d.slanted-end:dir(rtl):backdrop {"\
+"  background-image: linear-gradient(80deg, /* left edge */"\
+"                                    alpha(%2$s, 0)  5px,"\
+"                                    %2$s            6px,"\
+"                                    %2$s          9px,"\
+"                                    alpha(%2$s, 0) 10px,"\
+"                                    alpha(%2$s, 0) 16px,"\
+"                                    %2$s         17px);"\
+"}"
+</MACRO>
+<ENUM>
+<NAME>GcalEventError</NAME>
+typedef enum
+{
+  GCAL_EVENT_ERROR_INVALID_START_DATE
+} GcalEventError;
+</ENUM>
+<MACRO>
+<NAME>GCAL_EVENT_ERROR</NAME>
+#define GCAL_EVENT_ERROR gcal_event_error_quark ()
+</MACRO>
+<MACRO>
+<NAME>GCAL_TYPE_EVENT</NAME>
+#define GCAL_TYPE_EVENT (gcal_event_get_type())
+</MACRO>
+<FUNCTION>
+<NAME>gcal_event_error_quark</NAME>
+<RETURNS>GQuark                </RETURNS>
+void
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_event_new</NAME>
+<RETURNS>GcalEvent *           </RETURNS>
+ESource            *source, ECalComponent      *component, GError            **error
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_event_get_all_day</NAME>
+<RETURNS>gboolean              </RETURNS>
+GcalEvent          *self
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_event_set_all_day</NAME>
+<RETURNS>void                  </RETURNS>
+GcalEvent          *self, gboolean            all_day
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_event_get_color</NAME>
+<RETURNS>GdkRGBA *             </RETURNS>
+GcalEvent          *self
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_event_set_color</NAME>
+<RETURNS>void                  </RETURNS>
+GcalEvent          *self, GdkRGBA            *color
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_event_get_component</NAME>
+<RETURNS>ECalComponent *       </RETURNS>
+GcalEvent          *self
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_event_get_date_end</NAME>
+<RETURNS>GDateTime *           </RETURNS>
+GcalEvent          *self
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_event_set_date_end</NAME>
+<RETURNS>void                  </RETURNS>
+GcalEvent          *self, GDateTime          *dt
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_event_get_date_start</NAME>
+<RETURNS>GDateTime *           </RETURNS>
+GcalEvent          *self
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_event_set_date_start</NAME>
+<RETURNS>void                  </RETURNS>
+GcalEvent          *self, GDateTime          *dt
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_event_get_description</NAME>
+<RETURNS>const gchar *         </RETURNS>
+GcalEvent          *self
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_event_set_description</NAME>
+<RETURNS>void                  </RETURNS>
+GcalEvent          *self, const gchar        *description
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_event_has_alarms</NAME>
+<RETURNS>gboolean              </RETURNS>
+GcalEvent          *self
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_event_get_alarms</NAME>
+<RETURNS>GList *               </RETURNS>
+GcalEvent          *self
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_event_add_alarm</NAME>
+<RETURNS>void                  </RETURNS>
+GcalEvent          *self, guint               type, gboolean            has_sound
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_event_remove_alarm</NAME>
+<RETURNS>void                  </RETURNS>
+GcalEvent          *self, guint               type
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_event_get_location</NAME>
+<RETURNS>const gchar *         </RETURNS>
+GcalEvent          *self
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_event_set_location</NAME>
+<RETURNS>void                  </RETURNS>
+GcalEvent          *self, const gchar        *location
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_event_get_source</NAME>
+<RETURNS>ESource *             </RETURNS>
+GcalEvent          *self
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_event_set_source</NAME>
+<RETURNS>void                  </RETURNS>
+GcalEvent          *self, ESource            *source
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_event_get_summary</NAME>
+<RETURNS>const gchar *         </RETURNS>
+GcalEvent          *self
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_event_set_summary</NAME>
+<RETURNS>void                  </RETURNS>
+GcalEvent          *self, const gchar        *summary
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_event_get_timezone</NAME>
+<RETURNS>GTimeZone *           </RETURNS>
+GcalEvent          *self
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_event_set_timezone</NAME>
+<RETURNS>void                  </RETURNS>
+GcalEvent          *self, GTimeZone          *timezone
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_event_get_uid</NAME>
+<RETURNS>const gchar *         </RETURNS>
+GcalEvent          *self
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_event_is_multiday</NAME>
+<RETURNS>gboolean              </RETURNS>
+GcalEvent          *self
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_event_compare</NAME>
+<RETURNS>gint                  </RETURNS>
+GcalEvent          *event1, GcalEvent          *event2
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_event_compare_with_current</NAME>
+<RETURNS>gint                  </RETURNS>
+GcalEvent          *event1, GcalEvent          *event2, time_t             *current_time
+</FUNCTION>
+<STRUCT>
+<NAME>GcalEvent</NAME>
+</STRUCT>
+<MACRO>
+<NAME>GCAL_TYPE_DATE_SELECTOR</NAME>
+#define GCAL_TYPE_DATE_SELECTOR             (gcal_date_selector_get_type ())
+</MACRO>
+<FUNCTION>
+<NAME>gcal_date_selector_new</NAME>
+<RETURNS>GtkWidget *       </RETURNS>
+void
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_date_selector_get_date</NAME>
+<RETURNS>GDateTime *       </RETURNS>
+GcalDateSelector *selector
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_date_selector_set_date</NAME>
+<RETURNS>void              </RETURNS>
+GcalDateSelector *selector, GDateTime        *date
+</FUNCTION>
+<STRUCT>
+<NAME>GcalDateSelector</NAME>
+</STRUCT>
+<MACRO>
+<NAME>GCAL_TYPE_TIME_SELECTOR</NAME>
+#define GCAL_TYPE_TIME_SELECTOR             (gcal_time_selector_get_type ())
+</MACRO>
+<FUNCTION>
+<NAME>gcal_time_selector_new</NAME>
+<RETURNS>GtkWidget *       </RETURNS>
+void
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_time_selector_set_time_format</NAME>
+<RETURNS>void              </RETURNS>
+GcalTimeSelector *selector, gboolean          format_24h
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_time_selector_get_time</NAME>
+<RETURNS>GDateTime *       </RETURNS>
+GcalTimeSelector *selector
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_time_selector_set_time</NAME>
+<RETURNS>void              </RETURNS>
+GcalTimeSelector *selector, GDateTime        *time
+</FUNCTION>
+<STRUCT>
+<NAME>GcalTimeSelector</NAME>
+</STRUCT>
+<ENUM>
+<NAME>GcalDateChooserDayOptions</NAME>
+typedef enum
+{
+  GCAL_DATE_CHOOSER_DAY_NONE    = 1 << 0,
+  GCAL_DATE_CHOOSER_DAY_WEEKEND = 1 << 1,
+  GCAL_DATE_CHOOSER_DAY_HOLIDAY = 1 << 2,
+  GCAL_DATE_CHOOSER_DAY_MARKED  = 1 << 3
+} GcalDateChooserDayOptions;
+</ENUM>
+<MACRO>
+<NAME>GCAL_TYPE_DATE_CHOOSER</NAME>
+#define GCAL_TYPE_DATE_CHOOSER (gcal_date_chooser_get_type ())
+</MACRO>
+<USER_FUNCTION>
+<NAME>GcalDateChooserDayOptionsCallback</NAME>
+<RETURNS>GcalDateChooserDayOptions </RETURNS>
+GcalDateChooser *self,
+                                                                        GDateTime       *date,
+                                                                        gpointer         user_data
+</USER_FUNCTION>
+<FUNCTION>
+<NAME>gcal_date_chooser_new</NAME>
+<RETURNS>GtkWidget *           </RETURNS>
+void
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_date_chooser_get_date</NAME>
+<RETURNS>GDateTime *           </RETURNS>
+GcalDateChooser    *self
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_date_chooser_set_date</NAME>
+<RETURNS>void                  </RETURNS>
+GcalDateChooser    *self, GDateTime          *date
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_date_chooser_set_day_options_callback</NAME>
+<RETURNS>void                  </RETURNS>
+GcalDateChooser    *self, GcalDateChooserDayOptionsCallback callback, gpointer            data, 
GDestroyNotify      destroy
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_date_chooser_invalidate_day_options</NAME>
+<RETURNS>void                  </RETURNS>
+GcalDateChooser    *self
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_date_chooser_get_no_month_change</NAME>
+<RETURNS>gboolean              </RETURNS>
+GcalDateChooser    *self
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_date_chooser_set_no_month_change</NAME>
+<RETURNS>void                  </RETURNS>
+GcalDateChooser    *self, gboolean            setting
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_date_chooser_get_show_heading</NAME>
+<RETURNS>gboolean              </RETURNS>
+GcalDateChooser    *self
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_date_chooser_set_show_heading</NAME>
+<RETURNS>void                  </RETURNS>
+GcalDateChooser    *self, gboolean            setting
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_date_chooser_get_show_day_names</NAME>
+<RETURNS>gboolean              </RETURNS>
+GcalDateChooser    *self
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_date_chooser_set_show_day_names</NAME>
+<RETURNS>void                  </RETURNS>
+GcalDateChooser    *self, gboolean            setting
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_date_chooser_get_show_week_numbers</NAME>
+<RETURNS>gboolean              </RETURNS>
+GcalDateChooser    *self
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_date_chooser_set_show_week_numbers</NAME>
+<RETURNS>void                  </RETURNS>
+GcalDateChooser    *self, gboolean            setting
+</FUNCTION>
+<STRUCT>
+<NAME>GcalDateChooser</NAME>
+</STRUCT>
+<MACRO>
+<NAME>GCAL_TYPE_SUBSCRIBER_VIEW</NAME>
+#define GCAL_TYPE_SUBSCRIBER_VIEW                       (gcal_subscriber_view_get_type ())
+</MACRO>
+<MACRO>
+<NAME>GCAL_SUBSCRIBER_VIEW</NAME>
+#define GCAL_SUBSCRIBER_VIEW(obj)                       (G_TYPE_CHECK_INSTANCE_CAST((obj), 
GCAL_TYPE_SUBSCRIBER_VIEW, GcalSubscriberView))
+</MACRO>
+<MACRO>
+<NAME>GCAL_SUBSCRIBER_VIEW_CLASS</NAME>
+#define GCAL_SUBSCRIBER_VIEW_CLASS(klass)               (G_TYPE_CHECK_CLASS_CAST((klass), 
GCAL_TYPE_SUBSCRIBER_VIEW, GcalSubscriberViewClass))
+</MACRO>
+<MACRO>
+<NAME>GCAL_IS_SUBSCRIBER_VIEW</NAME>
+#define GCAL_IS_SUBSCRIBER_VIEW(obj)                    (G_TYPE_CHECK_INSTANCE_TYPE((obj), 
GCAL_TYPE_SUBSCRIBER_VIEW))
+</MACRO>
+<MACRO>
+<NAME>GCAL_IS_SUBSCRIBER_VIEW_CLASS</NAME>
+#define GCAL_IS_SUBSCRIBER_VIEW_CLASS(klass)            (G_TYPE_CHECK_CLASS_TYPE((klass), 
GCAL_TYPE_SUBSCRIBER_VIEW))
+</MACRO>
+<MACRO>
+<NAME>GCAL_SUBSCRIBER_VIEW_GET_CLASS</NAME>
+#define GCAL_SUBSCRIBER_VIEW_GET_CLASS(obj)             (G_TYPE_INSTANCE_GET_CLASS((obj), 
GCAL_TYPE_SUBSCRIBER_VIEW, GcalSubscriberViewClass))
+</MACRO>
+<STRUCT>
+<NAME>GcalSubscriberView</NAME>
+struct _GcalSubscriberView
+{
+  GtkContainer parent;
+
+  GcalSubscriberViewPrivate *priv;
+};
+</STRUCT>
+<STRUCT>
+<NAME>GcalSubscriberViewClass</NAME>
+struct _GcalSubscriberViewClass
+{
+  GtkContainerClass parent_class;
+
+  /*< signals >*/
+  void       (*event_activated)   (GcalSubscriberView *subscriber_view, GcalEventWidget *event_widget);
+
+  /*< public >*/
+  guint     (*get_child_cell)     (GcalSubscriberView *subscriber_view, GcalEventWidget *child);
+  void      (*clear_state)        (GcalSubscriberView *subscriber_view);
+
+  /* gcal-view replacements */
+  GtkWidget*     (*get_child_by_uuid)        (GcalSubscriberView *subscriber_view, const gchar *uuid);
+};
+</STRUCT>
+<FUNCTION>
+<NAME>gcal_subscriber_view_get_type</NAME>
+<RETURNS>GType           </RETURNS>
+void
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_subscriber_view_get_child_by_uuid</NAME>
+<RETURNS>GtkWidget *     </RETURNS>
+GcalSubscriberView *subscriber_view, const gchar        *uuid
+</FUNCTION>
+<STRUCT>
+<NAME>GcalSubscriberViewPrivate</NAME>
+</STRUCT>
+<MACRO>
+<NAME>GCAL_TYPE_APPLICATION</NAME>
+#define GCAL_TYPE_APPLICATION                                    (gcal_application_get_type ())
+</MACRO>
+<FUNCTION>
+<NAME>gcal_application_new</NAME>
+<RETURNS>GcalApplication *     </RETURNS>
+void
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_application_get_manager</NAME>
+<RETURNS>GcalManager *         </RETURNS>
+GcalApplication    *self
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_application_get_settings</NAME>
+<RETURNS>GSettings *           </RETURNS>
+GcalApplication    *self
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_application_set_uuid</NAME>
+<RETURNS>void                  </RETURNS>
+GcalApplication    *self, const gchar        *app_uuid
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_application_set_initial_date</NAME>
+<RETURNS>void                  </RETURNS>
+GcalApplication    *self, GDateTime          *initial_date
+</FUNCTION>
+<STRUCT>
+<NAME>GcalApplication</NAME>
+</STRUCT>
+<MACRO>
+<NAME>GCAL_TYPE_SHELL_SEARCH_PROVIDER</NAME>
+#define GCAL_TYPE_SHELL_SEARCH_PROVIDER (gcal_shell_search_provider_get_type())
+</MACRO>
+<STRUCT>
+<NAME>GcalShellSearchProviderClass</NAME>
+struct _GcalShellSearchProviderClass
+{
+  GObjectClass parent;
+};
+</STRUCT>
+<FUNCTION>
+<NAME>gcal_shell_search_provider_new</NAME>
+<RETURNS>GcalShellSearchProvider  *</RETURNS>
+void
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_shell_search_provider_dbus_export</NAME>
+<RETURNS>gboolean                  </RETURNS>
+GcalShellSearchProvider *search_provider, GDBusConnection         *connection, const gchar             
*object_path, GError                 **error
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_shell_search_provider_dbus_unexport</NAME>
+<RETURNS>void                      </RETURNS>
+GcalShellSearchProvider *search_provider, GDBusConnection         *connection, const gchar             
*object_path
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_shell_search_provider_connect</NAME>
+<RETURNS>void                      </RETURNS>
+GcalShellSearchProvider *search_provider, GcalManager             *manager
+</FUNCTION>
+<STRUCT>
+<NAME>GcalShellSearchProvider</NAME>
+</STRUCT>
+<MACRO>
+<NAME>GCAL_TYPE_WINDOW</NAME>
+#define GCAL_TYPE_WINDOW                    (gcal_window_get_type ())
+</MACRO>
+<FUNCTION>
+<NAME>gcal_window_new_with_view_and_date</NAME>
+<RETURNS>GtkWidget *           </RETURNS>
+GcalApplication     *app, GcalWindowViewType   view_type, icaltimetype        *date
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_window_new_event</NAME>
+<RETURNS>void                  </RETURNS>
+GcalWindow          *self
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_window_set_search_mode</NAME>
+<RETURNS>void                  </RETURNS>
+GcalWindow          *self, gboolean             enabled
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_window_set_search_query</NAME>
+<RETURNS>void                  </RETURNS>
+GcalWindow          *self, const gchar          *query
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_window_open_event_by_uuid</NAME>
+<RETURNS>void                  </RETURNS>
+GcalWindow          *self, const gchar         *uuid
+</FUNCTION>
+<STRUCT>
+<NAME>GcalWindow</NAME>
+</STRUCT>
+<FUNCTION>
+<NAME>calendar_get_resource</NAME>
+<RETURNS>GResource  *</RETURNS>
+void
+</FUNCTION>
+<MACRO>
+<NAME>GCAL_TYPE_VIEW</NAME>
+#define GCAL_TYPE_VIEW (gcal_view_get_type ())
+</MACRO>
+<STRUCT>
+<NAME>GcalViewInterface</NAME>
+struct _GcalViewInterface
+{
+  GTypeInterface parent;
+
+  /* signals */
+  void           (*create_event)                       (GcalView     *view,
+                                                        icaltimetype *start_span,
+                                                        icaltimetype *end_span,
+                                                        gdouble       x,
+                                                        gdouble       y);
+  void           (*create_event_detailed)              (GcalView     *view,
+                                                        icaltimetype *start_span,
+                                                        icaltimetype *end_span);
+
+  /* Time handling related API */
+  icaltimetype*  (*get_initial_date)                   (GcalView    *view);
+  icaltimetype*  (*get_final_date)                     (GcalView    *view);
+
+  /* Marks related API */
+  void           (*clear_marks)                        (GcalView    *view);
+
+  GList*         (*get_children_by_uuid)               (GcalView    *view,
+                                                        const gchar *uuid);
+};
+</STRUCT>
+<FUNCTION>
+<NAME>gcal_view_set_date</NAME>
+<RETURNS>void           </RETURNS>
+GcalView     *view, icaltimetype *date
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_view_get_date</NAME>
+<RETURNS>icaltimetype * </RETURNS>
+GcalView     *view
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_view_get_initial_date</NAME>
+<RETURNS>icaltimetype * </RETURNS>
+GcalView     *view
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_view_get_final_date</NAME>
+<RETURNS>icaltimetype * </RETURNS>
+GcalView     *view
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_view_clear_marks</NAME>
+<RETURNS>void           </RETURNS>
+GcalView     *view
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_view_get_children_by_uuid</NAME>
+<RETURNS>GList *        </RETURNS>
+GcalView     *view, const gchar  *uuid
+</FUNCTION>
+<STRUCT>
+<NAME>GcalView</NAME>
+</STRUCT>
+<MACRO>
+<NAME>E_TYPE_CAL_DATA_MODEL</NAME>
+#define E_TYPE_CAL_DATA_MODEL \
+       (e_cal_data_model_get_type ())
+</MACRO>
+<MACRO>
+<NAME>E_CAL_DATA_MODEL</NAME>
+#define E_CAL_DATA_MODEL(obj) \
+       (G_TYPE_CHECK_INSTANCE_CAST \
+       ((obj), E_TYPE_CAL_DATA_MODEL, ECalDataModel))
+</MACRO>
+<MACRO>
+<NAME>E_CAL_DATA_MODEL_CLASS</NAME>
+#define E_CAL_DATA_MODEL_CLASS(cls) \
+       (G_TYPE_CHECK_CLASS_CAST \
+       ((cls), E_TYPE_CAL_DATA_MODEL, ECalDataModelClass))
+</MACRO>
+<MACRO>
+<NAME>E_IS_CAL_DATA_MODEL</NAME>
+#define E_IS_CAL_DATA_MODEL(obj) \
+       (G_TYPE_CHECK_INSTANCE_TYPE \
+       ((obj), E_TYPE_CAL_DATA_MODEL))
+</MACRO>
+<MACRO>
+<NAME>E_IS_CAL_DATA_MODEL_CLASS</NAME>
+#define E_IS_CAL_DATA_MODEL_CLASS(cls) \
+       (G_TYPE_CHECK_CLASS_TYPE \
+       ((cls), E_TYPE_CAL_DATA_MODEL))
+</MACRO>
+<MACRO>
+<NAME>E_CAL_DATA_MODEL_GET_CLASS</NAME>
+#define E_CAL_DATA_MODEL_GET_CLASS(obj) \
+       (G_TYPE_INSTANCE_GET_CLASS \
+       ((obj), E_TYPE_CAL_DATA_MODEL, ECalDataModelClass))
+</MACRO>
+<ENUM>
+<NAME>ECalDataModelViewState</NAME>
+typedef enum {
+       E_CAL_DATA_MODEL_VIEW_STATE_START,
+       E_CAL_DATA_MODEL_VIEW_STATE_PROGRESS,
+       E_CAL_DATA_MODEL_VIEW_STATE_COMPLETE,
+       E_CAL_DATA_MODEL_VIEW_STATE_STOP
+} ECalDataModelViewState;
+</ENUM>
+<STRUCT>
+<NAME>ECalDataModel</NAME>
+struct _ECalDataModel {
+       GObject parent;
+       ECalDataModelPrivate *priv;
+};
+</STRUCT>
+<STRUCT>
+<NAME>ECalDataModelClass</NAME>
+struct _ECalDataModelClass {
+       GObjectClass parent_class;
+
+       /* Signals */
+       void (* view_state_changed)     (ECalDataModel *data_model,
+                                        ECalClientView *view,
+                                        ECalDataModelViewState state,
+                                        guint percent,
+                                        const gchar *message,
+                                        const GError *error);
+};
+</STRUCT>
+<USER_FUNCTION>
+<NAME>EThreadJobFunc</NAME>
+<RETURNS>void </RETURNS>
+gpointer user_data,
+                                                GCancellable *cancellable,
+                                                GError **error
+</USER_FUNCTION>
+<FUNCTION>
+<NAME>e_cal_data_model_get_type</NAME>
+<RETURNS>GType                 </RETURNS>
+void
+</FUNCTION>
+<FUNCTION>
+<NAME>e_cal_data_model_new</NAME>
+<RETURNS>ECalDataModel  *      </RETURNS>
+ECalDataModelSubmitThreadJobFunc func
+</FUNCTION>
+<FUNCTION>
+<NAME>e_cal_data_model_new_clone</NAME>
+<RETURNS>ECalDataModel  * </RETURNS>
+ECalDataModel *src_data_model
+</FUNCTION>
+<FUNCTION>
+<NAME>e_cal_data_model_submit_thread_job</NAME>
+<RETURNS>GCancellable  *</RETURNS>
+ECalDataModel *data_model, EThreadJobFunc func, gpointer user_data, GDestroyNotify free_user_data
+</FUNCTION>
+<FUNCTION>
+<NAME>e_cal_data_model_get_disposing</NAME>
+<RETURNS>gboolean      </RETURNS>
+ECalDataModel *data_model
+</FUNCTION>
+<FUNCTION>
+<NAME>e_cal_data_model_set_disposing</NAME>
+<RETURNS>void          </RETURNS>
+ECalDataModel *data_model, gboolean disposing
+</FUNCTION>
+<FUNCTION>
+<NAME>e_cal_data_model_get_expand_recurrences</NAME>
+<RETURNS>gboolean      </RETURNS>
+ECalDataModel *data_model
+</FUNCTION>
+<FUNCTION>
+<NAME>e_cal_data_model_set_expand_recurrences</NAME>
+<RETURNS>void  </RETURNS>
+ECalDataModel *data_model, gboolean expand_recurrences
+</FUNCTION>
+<FUNCTION>
+<NAME>e_cal_data_model_get_timezone</NAME>
+<RETURNS>icaltimezone  *       </RETURNS>
+ECalDataModel *data_model
+</FUNCTION>
+<FUNCTION>
+<NAME>e_cal_data_model_set_timezone</NAME>
+<RETURNS>void          </RETURNS>
+ECalDataModel *data_model, icaltimezone *zone
+</FUNCTION>
+<FUNCTION>
+<NAME>e_cal_data_model_set_filter</NAME>
+<RETURNS>void          </RETURNS>
+ECalDataModel *data_model, const gchar *sexp
+</FUNCTION>
+<FUNCTION>
+<NAME>e_cal_data_model_dup_filter</NAME>
+<RETURNS>gchar  *              </RETURNS>
+ECalDataModel *data_model
+</FUNCTION>
+<FUNCTION>
+<NAME>e_cal_data_model_add_client</NAME>
+<RETURNS>void          </RETURNS>
+ECalDataModel *data_model, ECalClient *client
+</FUNCTION>
+<FUNCTION>
+<NAME>e_cal_data_model_remove_client</NAME>
+<RETURNS>void          </RETURNS>
+ECalDataModel *data_model, const gchar *uid
+</FUNCTION>
+<FUNCTION>
+<NAME>e_cal_data_model_ref_client</NAME>
+<RETURNS>ECalClient  * </RETURNS>
+ECalDataModel *data_model, const gchar *uid
+</FUNCTION>
+<FUNCTION>
+<NAME>e_cal_data_model_get_clients</NAME>
+<RETURNS>GList  *              </RETURNS>
+ECalDataModel *data_model
+</FUNCTION>
+<FUNCTION>
+<NAME>e_cal_data_model_get_components</NAME>
+<RETURNS>GSList  *     </RETURNS>
+ECalDataModel *data_model, time_t in_range_start, time_t in_range_end
+</FUNCTION>
+<USER_FUNCTION>
+<NAME>ECalDataModelForeachFunc</NAME>
+<RETURNS>gboolean </RETURNS>
+ECalDataModel *data_model,
+                                                ECalClient *client,
+                                                const ECalComponentId *id,
+                                                ECalComponent *comp,
+                                                time_t instance_start,
+                                                time_t instance_end,
+                                                gpointer user_data
+</USER_FUNCTION>
+<FUNCTION>
+<NAME>e_cal_data_model_foreach_component</NAME>
+<RETURNS>gboolean      </RETURNS>
+ECalDataModel *data_model, time_t in_range_start, time_t in_range_end, ECalDataModelForeachFunc func, 
gpointer user_data
+</FUNCTION>
+<FUNCTION>
+<NAME>e_cal_data_model_subscribe</NAME>
+<RETURNS>void          </RETURNS>
+ECalDataModel *data_model, ECalDataModelSubscriber *subscriber, time_t range_start, time_t range_end
+</FUNCTION>
+<FUNCTION>
+<NAME>e_cal_data_model_unsubscribe</NAME>
+<RETURNS>void          </RETURNS>
+ECalDataModel *data_model, ECalDataModelSubscriber *subscriber
+</FUNCTION>
+<FUNCTION>
+<NAME>e_cal_data_model_get_subscriber_range</NAME>
+<RETURNS>gboolean      </RETURNS>
+ECalDataModel *data_model, ECalDataModelSubscriber *subscriber, time_t *range_start, time_t *range_end
+</FUNCTION>
+<FUNCTION>
+<NAME>e_cal_data_model_freeze_views_update</NAME>
+<RETURNS>void  </RETURNS>
+ECalDataModel *data_model
+</FUNCTION>
+<FUNCTION>
+<NAME>e_cal_data_model_thaw_views_update</NAME>
+<RETURNS>void  </RETURNS>
+ECalDataModel *data_model
+</FUNCTION>
+<FUNCTION>
+<NAME>e_cal_data_model_is_views_update_frozen</NAME>
+<RETURNS>gboolean      </RETURNS>
+ECalDataModel *data_model
+</FUNCTION>
+<STRUCT>
+<NAME>ECalDataModelPrivate</NAME>
+</STRUCT>
+<MACRO>
+<NAME>GCAL_WINDOW_VIEW_TYPE</NAME>
+#define GCAL_WINDOW_VIEW_TYPE  (gcal_window_view_type_get_type())
+</MACRO>
+<FUNCTION>
+<NAME>gcal_window_view_type_get_type</NAME>
+<RETURNS>GType  </RETURNS>
+void
+</FUNCTION>
+<MACRO>
+<NAME>GCAL_EDITABLE_PROPERTY</NAME>
+#define GCAL_EDITABLE_PROPERTY (event_editable_property_get_type())
+</MACRO>
+<FUNCTION>
+<NAME>event_editable_property_get_type</NAME>
+<RETURNS>GType  </RETURNS>
+void
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_log_init</NAME>
+<RETURNS>void                  </RETURNS>
+void
+</FUNCTION>
+<MACRO>
+<NAME>ICAL_TIME_TYPE</NAME>
+#define ICAL_TIME_TYPE (icaltime_get_type ())
+</MACRO>
+<MACRO>
+<NAME>ALIGNED</NAME>
+#define ALIGNED(x)      (round (x) + 0.5)
+</MACRO>
+<MACRO>
+<NAME>MINUTES_PER_DAY</NAME>
+#define MINUTES_PER_DAY 1440
+</MACRO>
+<MACRO>
+<NAME>MAX_MINUTES</NAME>
+#define MAX_MINUTES     (7 * MINUTES_PER_DAY)
+</MACRO>
+<MACRO>
+<NAME>gcal_clear_datetime</NAME>
+#define gcal_clear_datetime(dt) g_clear_pointer (dt, g_date_time_unref)
+</MACRO>
+<ENUM>
+<NAME>GcalWindowViewType</NAME>
+typedef enum
+{
+  GCAL_WINDOW_VIEW_DAY,
+  GCAL_WINDOW_VIEW_WEEK,
+  GCAL_WINDOW_VIEW_MONTH,
+  GCAL_WINDOW_VIEW_YEAR,
+  GCAL_WINDOW_VIEW_LIST,
+  GCAL_WINDOW_VIEW_SEARCH,
+} GcalWindowViewType;
+</ENUM>
+<ENUM>
+<NAME>EventEditableProperty</NAME>
+typedef enum
+{
+  EVENT_SUMMARY = 0,
+  EVENT_START_DATE,
+  EVENT_END_DATE,
+  EVENT_LOCATION,
+  EVENT_DESCRIPTION,
+  EVENT_SOURCE,
+} EventEditableProperty;
+</ENUM>
+<USER_FUNCTION>
+<NAME>GcalTranslateFunc</NAME>
+<RETURNS>const gchar *</RETURNS>
+GtkWidget             *source_widget
+</USER_FUNCTION>
+<FUNCTION>
+<NAME>icaltime_get_type</NAME>
+<RETURNS>GType            </RETURNS>
+void
+</FUNCTION>
+<FUNCTION>
+<NAME>datetime_compare_date</NAME>
+<RETURNS>gint             </RETURNS>
+GDateTime             *dt1, GDateTime             *dt2
+</FUNCTION>
+<FUNCTION>
+<NAME>datetime_to_icaltime</NAME>
+<RETURNS>icaltimetype *   </RETURNS>
+GDateTime             *dt
+</FUNCTION>
+<FUNCTION>
+<NAME>datetime_is_date</NAME>
+<RETURNS>gboolean         </RETURNS>
+GDateTime             *dt
+</FUNCTION>
+<FUNCTION>
+<NAME>icaltime_to_datetime</NAME>
+<RETURNS>GDateTime *      </RETURNS>
+const icaltimetype    *date
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_dup_icaltime</NAME>
+<RETURNS>icaltimetype *   </RETURNS>
+const icaltimetype    *date
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_get_weekday</NAME>
+<RETURNS>gchar *          </RETURNS>
+gint                   i
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_get_month_name</NAME>
+<RETURNS>gchar *          </RETURNS>
+gint                   i
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_get_surface_from_color</NAME>
+<RETURNS>cairo_surface_t *</RETURNS>
+GdkRGBA               *color, gint                   size
+</FUNCTION>
+<FUNCTION>
+<NAME>get_circle_surface_from_color</NAME>
+<RETURNS>cairo_surface_t *</RETURNS>
+GdkRGBA               *color, gint                   size
+</FUNCTION>
+<FUNCTION>
+<NAME>get_color_name_from_source</NAME>
+<RETURNS>void             </RETURNS>
+ESource               *source, GdkRGBA               *out_color
+</FUNCTION>
+<FUNCTION>
+<NAME>get_desc_from_component</NAME>
+<RETURNS>gchar *          </RETURNS>
+ECalComponent         *component, const gchar           *joint_char
+</FUNCTION>
+<FUNCTION>
+<NAME>get_uuid_from_component</NAME>
+<RETURNS>gchar *          </RETURNS>
+ESource               *source, ECalComponent         *component
+</FUNCTION>
+<FUNCTION>
+<NAME>get_first_weekday</NAME>
+<RETURNS>gint             </RETURNS>
+void
+</FUNCTION>
+<FUNCTION>
+<NAME>build_component_from_details</NAME>
+<RETURNS>ECalComponent *  </RETURNS>
+const gchar           *summary, GDateTime             *initial_date, GDateTime             *final_date
+</FUNCTION>
+<FUNCTION>
+<NAME>icaltime_compare_date</NAME>
+<RETURNS>gint             </RETURNS>
+const icaltimetype    *date1, const icaltimetype    *date2
+</FUNCTION>
+<FUNCTION>
+<NAME>icaltime_compare_with_current</NAME>
+<RETURNS>gint             </RETURNS>
+const icaltimetype    *date1, const icaltimetype    *date2, time_t                *current_time_t
+</FUNCTION>
+<FUNCTION>
+<NAME>get_start_of_week</NAME>
+<RETURNS>GDateTime *      </RETURNS>
+icaltimetype          *date
+</FUNCTION>
+<FUNCTION>
+<NAME>get_end_of_week</NAME>
+<RETURNS>GDateTime *      </RETURNS>
+icaltimetype          *date
+</FUNCTION>
+<FUNCTION>
+<NAME>is_clock_format_24h</NAME>
+<RETURNS>gboolean         </RETURNS>
+void
+</FUNCTION>
+<FUNCTION>
+<NAME>e_strftime_fix_am_pm</NAME>
+<RETURNS>gsize            </RETURNS>
+gchar                 *str, gsize                  max, const gchar           *fmt, const struct tm       *tm
+</FUNCTION>
+<FUNCTION>
+<NAME>e_utf8_strftime_fix_am_pm</NAME>
+<RETURNS>gsize            </RETURNS>
+gchar                 *str, gsize                  max, const gchar           *fmt, const struct tm       *tm
+</FUNCTION>
+<FUNCTION>
+<NAME>fix_popover_menu_icons</NAME>
+<RETURNS>void             </RETURNS>
+GtkPopover            *popover
+</FUNCTION>
+<FUNCTION>
+<NAME>uri_get_fields</NAME>
+<RETURNS>gboolean         </RETURNS>
+const gchar           *uri, gchar                **schema, gchar                **host, gchar                
**path
+</FUNCTION>
+<FUNCTION>
+<NAME>get_source_parent_name_color</NAME>
+<RETURNS>void             </RETURNS>
+GcalManager           *manager, ESource               *source, gchar                **name, gchar            
    **color
+</FUNCTION>
+<FUNCTION>
+<NAME>format_utc_offset</NAME>
+<RETURNS>gchar *          </RETURNS>
+gint64                 offset
+</FUNCTION>
+<FUNCTION>
+<NAME>get_alarm_trigger_minutes</NAME>
+<RETURNS>gint             </RETURNS>
+GcalEvent             *event, ECalComponentAlarm    *alarm
+</FUNCTION>
+<FUNCTION>
+<NAME>should_change_date_for_scroll</NAME>
+<RETURNS>gboolean         </RETURNS>
+gdouble               *scroll_value, GdkEventScroll        *scroll_event
+</FUNCTION>
+<FUNCTION>
+<NAME>is_source_enabled</NAME>
+<RETURNS>gboolean         </RETURNS>
+ESource               *source
+</FUNCTION>
+<MACRO>
+<NAME>E_TYPE_CAL_DATA_MODEL_SUBSCRIBER</NAME>
+#define E_TYPE_CAL_DATA_MODEL_SUBSCRIBER \
+       (e_cal_data_model_subscriber_get_type ())
+</MACRO>
+<MACRO>
+<NAME>E_CAL_DATA_MODEL_SUBSCRIBER</NAME>
+#define E_CAL_DATA_MODEL_SUBSCRIBER(obj) \
+       (G_TYPE_CHECK_INSTANCE_CAST \
+       ((obj), E_TYPE_CAL_DATA_MODEL_SUBSCRIBER, ECalDataModelSubscriber))
+</MACRO>
+<MACRO>
+<NAME>E_CAL_DATA_MODEL_SUBSCRIBER_INTERFACE</NAME>
+#define E_CAL_DATA_MODEL_SUBSCRIBER_INTERFACE(cls) \
+       (G_TYPE_CHECK_CLASS_CAST \
+       ((cls), E_TYPE_CAL_DATA_MODEL_SUBSCRIBER, ECalDataModelSubscriberInterface))
+</MACRO>
+<MACRO>
+<NAME>E_IS_CAL_DATA_MODEL_SUBSCRIBER</NAME>
+#define E_IS_CAL_DATA_MODEL_SUBSCRIBER(obj) \
+       (G_TYPE_CHECK_INSTANCE_TYPE \
+       ((obj), E_TYPE_CAL_DATA_MODEL_SUBSCRIBER))
+</MACRO>
+<MACRO>
+<NAME>E_IS_CAL_DATA_MODEL_SUBSCRIBER_INTERFACE</NAME>
+#define E_IS_CAL_DATA_MODEL_SUBSCRIBER_INTERFACE(cls) \
+       (G_TYPE_CHECK_CLASS_TYPE \
+       ((cls), E_TYPE_CAL_DATA_MODEL_SUBSCRIBER))
+</MACRO>
+<MACRO>
+<NAME>E_CAL_DATA_MODEL_SUBSCRIBER_GET_INTERFACE</NAME>
+#define E_CAL_DATA_MODEL_SUBSCRIBER_GET_INTERFACE(obj) \
+       (G_TYPE_INSTANCE_GET_INTERFACE \
+       ((obj), E_TYPE_CAL_DATA_MODEL_SUBSCRIBER, ECalDataModelSubscriberInterface))
+</MACRO>
+<STRUCT>
+<NAME>ECalDataModelSubscriberInterface</NAME>
+struct _ECalDataModelSubscriberInterface {
+       GTypeInterface parent_interface;
+
+       void    (*component_added)      (ECalDataModelSubscriber *subscriber,
+                                        ECalClient *client,
+                                        ECalComponent *comp);
+       void    (*component_modified)   (ECalDataModelSubscriber *subscriber,
+                                        ECalClient *client,
+                                        ECalComponent *comp);
+       void    (*component_removed)    (ECalDataModelSubscriber *subscriber,
+                                        ECalClient *client,
+                                        const gchar *uid,
+                                        const gchar *rid);
+       void    (*freeze)               (ECalDataModelSubscriber *subscriber);
+       void    (*thaw)                 (ECalDataModelSubscriber *subscriber);
+};
+</STRUCT>
+<FUNCTION>
+<NAME>e_cal_data_model_subscriber_get_type</NAME>
+<RETURNS>GType                 </RETURNS>
+void
+</FUNCTION>
+<FUNCTION>
+<NAME>e_cal_data_model_subscriber_component_added</NAME>
+<RETURNS>void          </RETURNS>
+ECalDataModelSubscriber *subscriber, ECalClient *client, ECalComponent *comp
+</FUNCTION>
+<FUNCTION>
+<NAME>e_cal_data_model_subscriber_component_modified</NAME>
+<RETURNS>void          </RETURNS>
+ECalDataModelSubscriber *subscriber, ECalClient *client, ECalComponent *comp
+</FUNCTION>
+<FUNCTION>
+<NAME>e_cal_data_model_subscriber_component_removed</NAME>
+<RETURNS>void          </RETURNS>
+ECalDataModelSubscriber *subscriber, ECalClient *client, const gchar *uid, const gchar *rid
+</FUNCTION>
+<FUNCTION>
+<NAME>e_cal_data_model_subscriber_freeze</NAME>
+<RETURNS>void          </RETURNS>
+ECalDataModelSubscriber *subscriber
+</FUNCTION>
+<FUNCTION>
+<NAME>e_cal_data_model_subscriber_thaw</NAME>
+<RETURNS>void          </RETURNS>
+ECalDataModelSubscriber *subscriber
+</FUNCTION>
+<STRUCT>
+<NAME>ECalDataModelSubscriber</NAME>
+</STRUCT>
+<MACRO>
+<NAME>GCAL_TYPE_MANAGER</NAME>
+#define GCAL_TYPE_MANAGER                                        (gcal_manager_get_type ())
+</MACRO>
+<FUNCTION>
+<NAME>gcal_manager_new_with_settings</NAME>
+<RETURNS>GcalManager *         </RETURNS>
+GSettings          *settings
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_manager_get_source</NAME>
+<RETURNS>ESource *             </RETURNS>
+GcalManager        *manager, const gchar        *uid
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_manager_get_sources</NAME>
+<RETURNS>GList *               </RETURNS>
+GcalManager        *manager
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_manager_get_sources_connected</NAME>
+<RETURNS>GList *               </RETURNS>
+GcalManager        *manager
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_manager_get_default_source</NAME>
+<RETURNS>ESource *             </RETURNS>
+GcalManager        *manager
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_manager_set_default_source</NAME>
+<RETURNS>void                  </RETURNS>
+GcalManager        *manager, ESource            *source
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_manager_get_system_timezone</NAME>
+<RETURNS>icaltimezone *        </RETURNS>
+GcalManager        *manager
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_manager_set_subscriber</NAME>
+<RETURNS>void                  </RETURNS>
+GcalManager        *manager, ECalDataModelSubscriber *subscriber, time_t              range_start, time_t    
          range_end
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_manager_set_search_subscriber</NAME>
+<RETURNS>void                  </RETURNS>
+GcalManager        *manager, ECalDataModelSubscriber *subscriber, time_t              range_start, time_t    
          range_end
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_manager_set_query</NAME>
+<RETURNS>void                  </RETURNS>
+GcalManager        *self, const gchar        *query
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_manager_query_client_data</NAME>
+<RETURNS>gchar *               </RETURNS>
+GcalManager        *manager, ESource            *source, const gchar        *field
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_manager_refresh</NAME>
+<RETURNS>void                  </RETURNS>
+GcalManager        *manager
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_manager_is_client_writable</NAME>
+<RETURNS>gboolean              </RETURNS>
+GcalManager        *manager, ESource            *source
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_manager_create_event</NAME>
+<RETURNS>void                  </RETURNS>
+GcalManager        *manager, GcalEvent          *event
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_manager_update_event</NAME>
+<RETURNS>void                  </RETURNS>
+GcalManager        *manager, GcalEvent          *event
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_manager_remove_event</NAME>
+<RETURNS>void                  </RETURNS>
+GcalManager        *manager, GcalEvent          *event
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_manager_move_event_to_source</NAME>
+<RETURNS>void                  </RETURNS>
+GcalManager        *manager, GcalEvent          *event, ESource            *dest
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_manager_add_source</NAME>
+<RETURNS>gchar *               </RETURNS>
+GcalManager        *manager, const gchar        *name, const gchar        *backend, const gchar        *color
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_manager_enable_source</NAME>
+<RETURNS>void                  </RETURNS>
+GcalManager        *manager, ESource            *source
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_manager_disable_source</NAME>
+<RETURNS>void                  </RETURNS>
+GcalManager        *manager, ESource            *source
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_manager_save_source</NAME>
+<RETURNS>void                  </RETURNS>
+GcalManager        *manager, ESource            *source
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_manager_get_events</NAME>
+<RETURNS>GList *               </RETURNS>
+GcalManager        *manager, icaltimetype       *range_start, icaltimetype       *range_end
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_manager_get_loading</NAME>
+<RETURNS>gboolean              </RETURNS>
+GcalManager        *self
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_manager_get_goa_client</NAME>
+<RETURNS>GoaClient *           </RETURNS>
+GcalManager        *manager
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_manager_get_event_from_shell_search</NAME>
+<RETURNS>GcalEvent *           </RETURNS>
+GcalManager        *manager, const gchar        *uuid
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_manager_setup_shell_search</NAME>
+<RETURNS>void                  </RETURNS>
+GcalManager             *self, ECalDataModelSubscriber *subscriber
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_manager_set_shell_search_query</NAME>
+<RETURNS>void                  </RETURNS>
+GcalManager        *manager, const gchar        *query
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_manager_set_shell_search_subscriber</NAME>
+<RETURNS>void                  </RETURNS>
+GcalManager             *manager, ECalDataModelSubscriber *subscriber, time_t                   range_start, 
time_t                   range_end
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_manager_shell_search_done</NAME>
+<RETURNS>gboolean              </RETURNS>
+GcalManager        *manager
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_manager_get_shell_search_events</NAME>
+<RETURNS>GList *               </RETURNS>
+GcalManager        *manager
+</FUNCTION>
+<STRUCT>
+<NAME>GcalManager</NAME>
+</STRUCT>
+<MACRO>
+<NAME>GCAL_TYPE_SHELL_SEARCH_PROVIDER2</NAME>
+#define GCAL_TYPE_SHELL_SEARCH_PROVIDER2 (gcal_shell_search_provider2_get_type ())
+</MACRO>
+<MACRO>
+<NAME>GCAL_SHELL_SEARCH_PROVIDER2</NAME>
+#define GCAL_SHELL_SEARCH_PROVIDER2(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), GCAL_TYPE_SHELL_SEARCH_PROVIDER2, 
GcalShellSearchProvider2))
+</MACRO>
+<MACRO>
+<NAME>GCAL_IS_SHELL_SEARCH_PROVIDER2</NAME>
+#define GCAL_IS_SHELL_SEARCH_PROVIDER2(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), 
GCAL_TYPE_SHELL_SEARCH_PROVIDER2))
+</MACRO>
+<MACRO>
+<NAME>GCAL_SHELL_SEARCH_PROVIDER2_GET_IFACE</NAME>
+#define GCAL_SHELL_SEARCH_PROVIDER2_GET_IFACE(o) (G_TYPE_INSTANCE_GET_INTERFACE ((o), 
GCAL_TYPE_SHELL_SEARCH_PROVIDER2, GcalShellSearchProvider2Iface))
+</MACRO>
+<STRUCT>
+<NAME>GcalShellSearchProvider2Iface</NAME>
+struct _GcalShellSearchProvider2Iface
+{
+  GTypeInterface parent_iface;
+
+  gboolean (*handle_activate_result) (
+    GcalShellSearchProvider2 *object,
+    GDBusMethodInvocation *invocation,
+    const gchar *arg_Result,
+    const gchar *const *arg_Terms,
+    guint arg_Timestamp);
+
+  gboolean (*handle_get_initial_result_set) (
+    GcalShellSearchProvider2 *object,
+    GDBusMethodInvocation *invocation,
+    const gchar *const *arg_Terms);
+
+  gboolean (*handle_get_result_metas) (
+    GcalShellSearchProvider2 *object,
+    GDBusMethodInvocation *invocation,
+    const gchar *const *arg_Results);
+
+  gboolean (*handle_get_subsearch_result_set) (
+    GcalShellSearchProvider2 *object,
+    GDBusMethodInvocation *invocation,
+    const gchar *const *arg_PreviousResults,
+    const gchar *const *arg_Terms);
+
+  gboolean (*handle_launch_search) (
+    GcalShellSearchProvider2 *object,
+    GDBusMethodInvocation *invocation,
+    const gchar *const *arg_Terms,
+    guint arg_Timestamp);
+
+};
+</STRUCT>
+<FUNCTION>
+<NAME>gcal_shell_search_provider2_get_type</NAME>
+<RETURNS>GType  </RETURNS>
+void
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_shell_search_provider2_interface_info</NAME>
+<RETURNS>GDBusInterfaceInfo  *</RETURNS>
+void
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_shell_search_provider2_override_properties</NAME>
+<RETURNS>guint  </RETURNS>
+GObjectClass *klass, guint property_id_begin
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_shell_search_provider2_complete_get_initial_result_set</NAME>
+<RETURNS>void  </RETURNS>
+ GcalShellSearchProvider2 *object, GDBusMethodInvocation *invocation, const gchar *const *Results
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_shell_search_provider2_complete_get_subsearch_result_set</NAME>
+<RETURNS>void  </RETURNS>
+ GcalShellSearchProvider2 *object, GDBusMethodInvocation *invocation, const gchar *const *Results
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_shell_search_provider2_complete_get_result_metas</NAME>
+<RETURNS>void  </RETURNS>
+ GcalShellSearchProvider2 *object, GDBusMethodInvocation *invocation, GVariant *Metas
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_shell_search_provider2_complete_activate_result</NAME>
+<RETURNS>void  </RETURNS>
+ GcalShellSearchProvider2 *object, GDBusMethodInvocation *invocation
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_shell_search_provider2_complete_launch_search</NAME>
+<RETURNS>void  </RETURNS>
+ GcalShellSearchProvider2 *object, GDBusMethodInvocation *invocation
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_shell_search_provider2_call_get_initial_result_set</NAME>
+<RETURNS>void  </RETURNS>
+ GcalShellSearchProvider2 *proxy, const gchar *const *arg_Terms, GCancellable *cancellable, 
GAsyncReadyCallback callback, gpointer user_data
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_shell_search_provider2_call_get_initial_result_set_finish</NAME>
+<RETURNS>gboolean  </RETURNS>
+ GcalShellSearchProvider2 *proxy, gchar ***out_Results, GAsyncResult *res, GError **error
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_shell_search_provider2_call_get_initial_result_set_sync</NAME>
+<RETURNS>gboolean  </RETURNS>
+ GcalShellSearchProvider2 *proxy, const gchar *const *arg_Terms, gchar ***out_Results, GCancellable 
*cancellable, GError **error
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_shell_search_provider2_call_get_subsearch_result_set</NAME>
+<RETURNS>void  </RETURNS>
+ GcalShellSearchProvider2 *proxy, const gchar *const *arg_PreviousResults, const gchar *const *arg_Terms, 
GCancellable *cancellable, GAsyncReadyCallback callback, gpointer user_data
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_shell_search_provider2_call_get_subsearch_result_set_finish</NAME>
+<RETURNS>gboolean  </RETURNS>
+ GcalShellSearchProvider2 *proxy, gchar ***out_Results, GAsyncResult *res, GError **error
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_shell_search_provider2_call_get_subsearch_result_set_sync</NAME>
+<RETURNS>gboolean  </RETURNS>
+ GcalShellSearchProvider2 *proxy, const gchar *const *arg_PreviousResults, const gchar *const *arg_Terms, 
gchar ***out_Results, GCancellable *cancellable, GError **error
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_shell_search_provider2_call_get_result_metas</NAME>
+<RETURNS>void  </RETURNS>
+ GcalShellSearchProvider2 *proxy, const gchar *const *arg_Results, GCancellable *cancellable, 
GAsyncReadyCallback callback, gpointer user_data
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_shell_search_provider2_call_get_result_metas_finish</NAME>
+<RETURNS>gboolean  </RETURNS>
+ GcalShellSearchProvider2 *proxy, GVariant **out_Metas, GAsyncResult *res, GError **error
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_shell_search_provider2_call_get_result_metas_sync</NAME>
+<RETURNS>gboolean  </RETURNS>
+ GcalShellSearchProvider2 *proxy, const gchar *const *arg_Results, GVariant **out_Metas, GCancellable 
*cancellable, GError **error
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_shell_search_provider2_call_activate_result</NAME>
+<RETURNS>void  </RETURNS>
+ GcalShellSearchProvider2 *proxy, const gchar *arg_Result, const gchar *const *arg_Terms, guint 
arg_Timestamp, GCancellable *cancellable, GAsyncReadyCallback callback, gpointer user_data
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_shell_search_provider2_call_activate_result_finish</NAME>
+<RETURNS>gboolean  </RETURNS>
+ GcalShellSearchProvider2 *proxy, GAsyncResult *res, GError **error
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_shell_search_provider2_call_activate_result_sync</NAME>
+<RETURNS>gboolean  </RETURNS>
+ GcalShellSearchProvider2 *proxy, const gchar *arg_Result, const gchar *const *arg_Terms, guint 
arg_Timestamp, GCancellable *cancellable, GError **error
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_shell_search_provider2_call_launch_search</NAME>
+<RETURNS>void  </RETURNS>
+ GcalShellSearchProvider2 *proxy, const gchar *const *arg_Terms, guint arg_Timestamp, GCancellable 
*cancellable, GAsyncReadyCallback callback, gpointer user_data
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_shell_search_provider2_call_launch_search_finish</NAME>
+<RETURNS>gboolean  </RETURNS>
+ GcalShellSearchProvider2 *proxy, GAsyncResult *res, GError **error
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_shell_search_provider2_call_launch_search_sync</NAME>
+<RETURNS>gboolean  </RETURNS>
+ GcalShellSearchProvider2 *proxy, const gchar *const *arg_Terms, guint arg_Timestamp, GCancellable 
*cancellable, GError **error
+</FUNCTION>
+<MACRO>
+<NAME>GCAL_TYPE_SHELL_SEARCH_PROVIDER2_PROXY</NAME>
+#define GCAL_TYPE_SHELL_SEARCH_PROVIDER2_PROXY (gcal_shell_search_provider2_proxy_get_type ())
+</MACRO>
+<MACRO>
+<NAME>GCAL_SHELL_SEARCH_PROVIDER2_PROXY</NAME>
+#define GCAL_SHELL_SEARCH_PROVIDER2_PROXY(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), 
GCAL_TYPE_SHELL_SEARCH_PROVIDER2_PROXY, GcalShellSearchProvider2Proxy))
+</MACRO>
+<MACRO>
+<NAME>GCAL_SHELL_SEARCH_PROVIDER2_PROXY_CLASS</NAME>
+#define GCAL_SHELL_SEARCH_PROVIDER2_PROXY_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), 
GCAL_TYPE_SHELL_SEARCH_PROVIDER2_PROXY, GcalShellSearchProvider2ProxyClass))
+</MACRO>
+<MACRO>
+<NAME>GCAL_SHELL_SEARCH_PROVIDER2_PROXY_GET_CLASS</NAME>
+#define GCAL_SHELL_SEARCH_PROVIDER2_PROXY_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), 
GCAL_TYPE_SHELL_SEARCH_PROVIDER2_PROXY, GcalShellSearchProvider2ProxyClass))
+</MACRO>
+<MACRO>
+<NAME>GCAL_IS_SHELL_SEARCH_PROVIDER2_PROXY</NAME>
+#define GCAL_IS_SHELL_SEARCH_PROVIDER2_PROXY(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), 
GCAL_TYPE_SHELL_SEARCH_PROVIDER2_PROXY))
+</MACRO>
+<MACRO>
+<NAME>GCAL_IS_SHELL_SEARCH_PROVIDER2_PROXY_CLASS</NAME>
+#define GCAL_IS_SHELL_SEARCH_PROVIDER2_PROXY_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), 
GCAL_TYPE_SHELL_SEARCH_PROVIDER2_PROXY))
+</MACRO>
+<STRUCT>
+<NAME>GcalShellSearchProvider2Proxy</NAME>
+struct _GcalShellSearchProvider2Proxy
+{
+  /*< private >*/
+  GDBusProxy parent_instance;
+  GcalShellSearchProvider2ProxyPrivate *priv;
+};
+</STRUCT>
+<STRUCT>
+<NAME>GcalShellSearchProvider2ProxyClass</NAME>
+struct _GcalShellSearchProvider2ProxyClass
+{
+  GDBusProxyClass parent_class;
+};
+</STRUCT>
+<FUNCTION>
+<NAME>gcal_shell_search_provider2_proxy_get_type</NAME>
+<RETURNS>GType  </RETURNS>
+void
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_shell_search_provider2_proxy_new</NAME>
+<RETURNS>void  </RETURNS>
+ GDBusConnection     *connection, GDBusProxyFlags      flags, const gchar         *name, const gchar         
*object_path, GCancellable        *cancellable, GAsyncReadyCallback  callback, gpointer             user_data
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_shell_search_provider2_proxy_new_finish</NAME>
+<RETURNS>GcalShellSearchProvider2  *</RETURNS>
+ GAsyncResult        *res, GError             **error
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_shell_search_provider2_proxy_new_sync</NAME>
+<RETURNS>GcalShellSearchProvider2  *</RETURNS>
+ GDBusConnection     *connection, GDBusProxyFlags      flags, const gchar         *name, const gchar         
*object_path, GCancellable        *cancellable, GError             **error
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_shell_search_provider2_proxy_new_for_bus</NAME>
+<RETURNS>void  </RETURNS>
+ GBusType             bus_type, GDBusProxyFlags      flags, const gchar         *name, const gchar         
*object_path, GCancellable        *cancellable, GAsyncReadyCallback  callback, gpointer             user_data
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_shell_search_provider2_proxy_new_for_bus_finish</NAME>
+<RETURNS>GcalShellSearchProvider2  *</RETURNS>
+ GAsyncResult        *res, GError             **error
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_shell_search_provider2_proxy_new_for_bus_sync</NAME>
+<RETURNS>GcalShellSearchProvider2  *</RETURNS>
+ GBusType             bus_type, GDBusProxyFlags      flags, const gchar         *name, const gchar         
*object_path, GCancellable        *cancellable, GError             **error
+</FUNCTION>
+<MACRO>
+<NAME>GCAL_TYPE_SHELL_SEARCH_PROVIDER2_SKELETON</NAME>
+#define GCAL_TYPE_SHELL_SEARCH_PROVIDER2_SKELETON (gcal_shell_search_provider2_skeleton_get_type ())
+</MACRO>
+<MACRO>
+<NAME>GCAL_SHELL_SEARCH_PROVIDER2_SKELETON</NAME>
+#define GCAL_SHELL_SEARCH_PROVIDER2_SKELETON(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), 
GCAL_TYPE_SHELL_SEARCH_PROVIDER2_SKELETON, GcalShellSearchProvider2Skeleton))
+</MACRO>
+<MACRO>
+<NAME>GCAL_SHELL_SEARCH_PROVIDER2_SKELETON_CLASS</NAME>
+#define GCAL_SHELL_SEARCH_PROVIDER2_SKELETON_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), 
GCAL_TYPE_SHELL_SEARCH_PROVIDER2_SKELETON, GcalShellSearchProvider2SkeletonClass))
+</MACRO>
+<MACRO>
+<NAME>GCAL_SHELL_SEARCH_PROVIDER2_SKELETON_GET_CLASS</NAME>
+#define GCAL_SHELL_SEARCH_PROVIDER2_SKELETON_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), 
GCAL_TYPE_SHELL_SEARCH_PROVIDER2_SKELETON, GcalShellSearchProvider2SkeletonClass))
+</MACRO>
+<MACRO>
+<NAME>GCAL_IS_SHELL_SEARCH_PROVIDER2_SKELETON</NAME>
+#define GCAL_IS_SHELL_SEARCH_PROVIDER2_SKELETON(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), 
GCAL_TYPE_SHELL_SEARCH_PROVIDER2_SKELETON))
+</MACRO>
+<MACRO>
+<NAME>GCAL_IS_SHELL_SEARCH_PROVIDER2_SKELETON_CLASS</NAME>
+#define GCAL_IS_SHELL_SEARCH_PROVIDER2_SKELETON_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), 
GCAL_TYPE_SHELL_SEARCH_PROVIDER2_SKELETON))
+</MACRO>
+<STRUCT>
+<NAME>GcalShellSearchProvider2Skeleton</NAME>
+struct _GcalShellSearchProvider2Skeleton
+{
+  /*< private >*/
+  GDBusInterfaceSkeleton parent_instance;
+  GcalShellSearchProvider2SkeletonPrivate *priv;
+};
+</STRUCT>
+<STRUCT>
+<NAME>GcalShellSearchProvider2SkeletonClass</NAME>
+struct _GcalShellSearchProvider2SkeletonClass
+{
+  GDBusInterfaceSkeletonClass parent_class;
+};
+</STRUCT>
+<FUNCTION>
+<NAME>gcal_shell_search_provider2_skeleton_get_type</NAME>
+<RETURNS>GType  </RETURNS>
+void
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_shell_search_provider2_skeleton_new</NAME>
+<RETURNS>GcalShellSearchProvider2  *</RETURNS>
+void
+</FUNCTION>
+<STRUCT>
+<NAME>GcalShellSearchProvider2</NAME>
+</STRUCT>
+<STRUCT>
+<NAME>GcalShellSearchProvider2ProxyPrivate</NAME>
+</STRUCT>
+<STRUCT>
+<NAME>GcalShellSearchProvider2SkeletonPrivate</NAME>
+</STRUCT>
+<MACRO>
+<NAME>GCAL_ENABLE_TRACE</NAME>
+# define GCAL_ENABLE_TRACE 1
+</MACRO>
+<MACRO>
+<NAME>GCAL_LOG_LEVEL_TRACE</NAME>
+# define GCAL_LOG_LEVEL_TRACE ((GLogLevelFlags)(1 << G_LOG_LEVEL_USER_SHIFT))
+</MACRO>
+<MACRO>
+<NAME>GCAL_TRACE_MSG</NAME>
+# define GCAL_TRACE_MSG(fmt, ...)                                        \
+   g_log(G_LOG_DOMAIN, GCAL_LOG_LEVEL_TRACE, "  MSG: %s():%d: " fmt,     \
+         G_STRFUNC, __LINE__, ##__VA_ARGS__)
+</MACRO>
+<MACRO>
+<NAME>GCAL_PROBE</NAME>
+# define GCAL_PROBE                                                      \
+   g_log(G_LOG_DOMAIN, GCAL_LOG_LEVEL_TRACE, "PROBE: %s():%d",           \
+         G_STRFUNC, __LINE__)
+</MACRO>
+<MACRO>
+<NAME>GCAL_TODO</NAME>
+# define GCAL_TODO(_msg)                                                 \
+   g_log(G_LOG_DOMAIN, GCAL_LOG_LEVEL_TRACE, " TODO: %s():%d: %s",       \
+         G_STRFUNC, __LINE__, _msg)
+</MACRO>
+<MACRO>
+<NAME>GCAL_ENTRY</NAME>
+# define GCAL_ENTRY                                                      \
+   g_log(G_LOG_DOMAIN, GCAL_LOG_LEVEL_TRACE, "ENTRY: %s():%d",           \
+         G_STRFUNC, __LINE__)
+</MACRO>
+<MACRO>
+<NAME>GCAL_EXIT</NAME>
+# define GCAL_EXIT                                                       \
+   G_STMT_START {                                                        \
+      g_log(G_LOG_DOMAIN, GCAL_LOG_LEVEL_TRACE, " EXIT: %s():%d",        \
+            G_STRFUNC, __LINE__);                                        \
+      return;                                                            \
+   } G_STMT_END
+</MACRO>
+<MACRO>
+<NAME>GCAL_GOTO</NAME>
+# define GCAL_GOTO(_l)                                                   \
+   G_STMT_START {                                                        \
+      g_log(G_LOG_DOMAIN, GCAL_LOG_LEVEL_TRACE, " GOTO: %s():%d ("#_l")",\
+            G_STRFUNC, __LINE__);                                        \
+      goto _l;                                                           \
+   } G_STMT_END
+</MACRO>
+<MACRO>
+<NAME>GCAL_RETURN</NAME>
+# define GCAL_RETURN(_r)                                                 \
+   G_STMT_START {                                                        \
+      g_log(G_LOG_DOMAIN, GCAL_LOG_LEVEL_TRACE, " EXIT: %s():%d ",       \
+            G_STRFUNC, __LINE__);                                        \
+      return _r;                                                         \
+   } G_STMT_END
+</MACRO>
+<MACRO>
+<NAME>GCAL_BUG</NAME>
+#define GCAL_BUG(Component, Description, ...) \
+  _GCAL_BUG(Component, Description, __FILE__, __LINE__, G_STRFUNC, ##__VA_ARGS__)
+</MACRO>
+<MACRO>
+<NAME>GCAL_RESPONSE_DELETE_EVENT</NAME>
+#define GCAL_RESPONSE_DELETE_EVENT 2
+</MACRO>
+<MACRO>
+<NAME>GCAL_RESPONSE_SAVE_EVENT</NAME>
+#define GCAL_RESPONSE_SAVE_EVENT   4
+</MACRO>
+<MACRO>
+<NAME>GCAL_RESPONSE_CREATE_EVENT</NAME>
+#define GCAL_RESPONSE_CREATE_EVENT 6
+</MACRO>
+<MACRO>
+<NAME>GCAL_TYPE_EDIT_DIALOG</NAME>
+#define GCAL_TYPE_EDIT_DIALOG                (gcal_edit_dialog_get_type ())
+</MACRO>
+<FUNCTION>
+<NAME>gcal_edit_dialog_new</NAME>
+<RETURNS>GtkWidget *           </RETURNS>
+void
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_edit_dialog_set_event_is_new</NAME>
+<RETURNS>void                  </RETURNS>
+GcalEditDialog *dialog, gboolean       event_is_new
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_edit_dialog_get_event</NAME>
+<RETURNS>GcalEvent *           </RETURNS>
+GcalEditDialog *dialog
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_edit_dialog_set_event</NAME>
+<RETURNS>void                  </RETURNS>
+GcalEditDialog *dialog, GcalEvent      *event
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_edit_dialog_set_manager</NAME>
+<RETURNS>void                  </RETURNS>
+GcalEditDialog *dialog, GcalManager    *manager
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_edit_dialog_set_time_format</NAME>
+<RETURNS>void                  </RETURNS>
+GcalEditDialog *dialog, gboolean        use_24h_format
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_edit_dialog_get_date_end</NAME>
+<RETURNS>GDateTime *           </RETURNS>
+GcalEditDialog *dialog
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_edit_dialog_get_date_start</NAME>
+<RETURNS>GDateTime *           </RETURNS>
+GcalEditDialog *dialog
+</FUNCTION>
+<STRUCT>
+<NAME>GcalEditDialog</NAME>
+</STRUCT>
+<MACRO>
+<NAME>GCAL_TYPE_MULTI_CHOICE</NAME>
+#define GCAL_TYPE_MULTI_CHOICE (gcal_multi_choice_get_type())
+</MACRO>
+<FUNCTION>
+<NAME>gcal_multi_choice_new</NAME>
+<RETURNS>GtkWidget *           </RETURNS>
+void
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_multi_choice_get_value</NAME>
+<RETURNS>gint                  </RETURNS>
+GcalMultiChoice    *self
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_multi_choice_set_value</NAME>
+<RETURNS>void                  </RETURNS>
+GcalMultiChoice    *self, gint                value
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_multi_choice_set_choices</NAME>
+<RETURNS>void                  </RETURNS>
+GcalMultiChoice     *self, const gchar        **selfs
+</FUNCTION>
+<USER_FUNCTION>
+<NAME>GcalMultiChoiceFormatCallback</NAME>
+<RETURNS>gchar *</RETURNS>
+GcalMultiChoice     *self,
+                                                                  gint                 value,
+                                                                  gpointer             user_data
+</USER_FUNCTION>
+<FUNCTION>
+<NAME>gcal_multi_choice_set_format_callback</NAME>
+<RETURNS>void                  </RETURNS>
+GcalMultiChoice     *self, GcalMultiChoiceFormatCallback  callback, gpointer             user_data, 
GDestroyNotify       notify
+</FUNCTION>
+<STRUCT>
+<NAME>GcalMultiChoice</NAME>
+</STRUCT>
+<MACRO>
+<NAME>GCAL_TYPE_DATE_CHOOSER_DAY</NAME>
+#define GCAL_TYPE_DATE_CHOOSER_DAY (gcal_date_chooser_day_get_type())
+</MACRO>
+<FUNCTION>
+<NAME>gcal_date_chooser_day_new</NAME>
+<RETURNS>GtkWidget *           </RETURNS>
+void
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_date_chooser_day_get_date</NAME>
+<RETURNS>GDateTime *           </RETURNS>
+GcalDateChooserDay *day
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_date_chooser_day_set_date</NAME>
+<RETURNS>void                  </RETURNS>
+GcalDateChooserDay *day, GDateTime          *date
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_date_chooser_day_set_other_month</NAME>
+<RETURNS>void                  </RETURNS>
+GcalDateChooserDay *day, gboolean            other_month
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_date_chooser_day_set_selected</NAME>
+<RETURNS>void                  </RETURNS>
+GcalDateChooserDay *day, gboolean            selected
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_date_chooser_day_set_options</NAME>
+<RETURNS>void                  </RETURNS>
+GcalDateChooserDay *day, GcalDateChooserDayOptions options
+</FUNCTION>
+<STRUCT>
+<NAME>GcalDateChooserDay</NAME>
+</STRUCT>
+<MACRO>
+<NAME>GCAL_TYPE_EVENT_WIDGET</NAME>
+#define GCAL_TYPE_EVENT_WIDGET                    (gcal_event_widget_get_type ())
+</MACRO>
+<FUNCTION>
+<NAME>gcal_event_widget_new</NAME>
+<RETURNS>GtkWidget *    </RETURNS>
+GcalEvent          *event
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_event_widget_get_event</NAME>
+<RETURNS>GcalEvent *    </RETURNS>
+GcalEventWidget    *self
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_event_widget_get_date_start</NAME>
+<RETURNS>GDateTime *    </RETURNS>
+GcalEventWidget    *self
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_event_widget_set_date_start</NAME>
+<RETURNS>void           </RETURNS>
+GcalEventWidget    *self, GDateTime          *date_start
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_event_widget_get_date_end</NAME>
+<RETURNS>GDateTime *    </RETURNS>
+GcalEventWidget    *self
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_event_widget_set_date_end</NAME>
+<RETURNS>void           </RETURNS>
+GcalEventWidget    *self, GDateTime          *date_end
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_event_widget_set_read_only</NAME>
+<RETURNS>void           </RETURNS>
+GcalEventWidget    *event, gboolean            read_only
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_event_widget_get_read_only</NAME>
+<RETURNS>gboolean       </RETURNS>
+GcalEventWidget    *event
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_event_widget_set_has_reminders</NAME>
+<RETURNS>void          </RETURNS>
+GcalEventWidget    *event, gboolean            has_reminders
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_event_widget_get_has_reminders</NAME>
+<RETURNS>gboolean      </RETURNS>
+GcalEventWidget    *event
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_event_widget_clone</NAME>
+<RETURNS>GtkWidget *    </RETURNS>
+GcalEventWidget    *widget
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_event_widget_equal</NAME>
+<RETURNS>gboolean      </RETURNS>
+GcalEventWidget    *widget1, GcalEventWidget    *widget2
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_event_widget_compare_by_length</NAME>
+<RETURNS>gint          </RETURNS>
+GcalEventWidget    *widget1, GcalEventWidget    *widget2
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_event_widget_compare_by_start_date</NAME>
+<RETURNS>gint          </RETURNS>
+GcalEventWidget    *widget1, GcalEventWidget    *widget2
+</FUNCTION>
+<STRUCT>
+<NAME>GcalEventWidget</NAME>
+</STRUCT>
+<STRUCT>
+<NAME>GcalSubscriberViewPrivate</NAME>
+struct _GcalSubscriberViewPrivate
+{
+  /**
+   * Hash to keep children widgets (all of them, parent widgets and its parts if there's any),
+   * uuid as key and a list of all the instances of the event as value. Here, the first widget on the list is
+   * the master, and the rest are the parts. Note: that the master is a part itself, the first one
+   */
+  GHashTable     *children;
+
+  /**
+   * Hash containig single-cell events, day of the month, on month-view, month of the year on year-view as 
key and
+   * a list of the events that belongs to this cell
+   */
+  GHashTable     *single_cell_children;
+
+  /**
+   * An organizaed list containig multiday events
+   * This one contains only parents events, to find out its parts @children will be used
+   */
+  GList          *multi_cell_children;
+
+  /**
+   * Hash containing cells that who has overflow per list of hidden widgets.
+   */
+  GHashTable     *overflow_cells;
+  /**
+   * Set containing the master widgets hidden for delete;
+   */
+  GHashTable     *hidden_as_overflow;
+
+  /* state flags */
+  gboolean        children_changed;
+};
+</STRUCT>
+<MACRO>
+<NAME>GCAL_TYPE_SEARCH_VIEW</NAME>
+#define GCAL_TYPE_SEARCH_VIEW                       (gcal_search_view_get_type ())
+</MACRO>
+<FUNCTION>
+<NAME>gcal_search_view_set_time_format</NAME>
+<RETURNS>void            </RETURNS>
+GcalSearchView *view, gboolean        format_24h
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_search_view_search</NAME>
+<RETURNS>void            </RETURNS>
+GcalSearchView *view, const gchar    *field, const gchar    *query
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_search_view_new</NAME>
+<RETURNS>GtkWidget *     </RETURNS>
+void
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_search_view_connect</NAME>
+<RETURNS>void            </RETURNS>
+GcalSearchView *search_view, GcalManager    *manager
+</FUNCTION>
+<STRUCT>
+<NAME>GcalSearchView</NAME>
+</STRUCT>
+<MACRO>
+<NAME>GCAL_RESPONSE_REMOVE_SOURCE</NAME>
+#define GCAL_RESPONSE_REMOVE_SOURCE   2
+</MACRO>
+<MACRO>
+<NAME>GCAL_TYPE_SOURCE_DIALOG</NAME>
+#define GCAL_TYPE_SOURCE_DIALOG (gcal_source_dialog_get_type())
+</MACRO>
+<ENUM>
+<NAME>GcalSourceDialogMode</NAME>
+typedef enum
+{
+  GCAL_SOURCE_DIALOG_MODE_CREATE,
+  GCAL_SOURCE_DIALOG_MODE_CREATE_WEB,
+  GCAL_SOURCE_DIALOG_MODE_EDIT,
+  GCAL_SOURCE_DIALOG_MODE_NORMAL
+} GcalSourceDialogMode;
+</ENUM>
+<FUNCTION>
+<NAME>gcal_source_dialog_new</NAME>
+<RETURNS>GtkWidget *          </RETURNS>
+void
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_source_dialog_set_manager</NAME>
+<RETURNS>void                 </RETURNS>
+GcalSourceDialog   *dialog, GcalManager        *manager
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_source_dialog_set_mode</NAME>
+<RETURNS>void                 </RETURNS>
+GcalSourceDialog     *dialog, GcalSourceDialogMode  mode
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_source_dialog_set_source</NAME>
+<RETURNS>void                 </RETURNS>
+GcalSourceDialog     *dialog, ESource              *source
+</FUNCTION>
+<STRUCT>
+<NAME>GcalSourceDialog</NAME>
+</STRUCT>
+<MACRO>
+<NAME>GCAL_TYPE_YEAR_VIEW</NAME>
+#define GCAL_TYPE_YEAR_VIEW            (gcal_year_view_get_type())
+</MACRO>
+<FUNCTION>
+<NAME>gcal_year_view_set_manager</NAME>
+<RETURNS>void               </RETURNS>
+GcalYearView *year_view, GcalManager  *manager
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_year_view_set_first_weekday</NAME>
+<RETURNS>void               </RETURNS>
+GcalYearView *year_view, gint          nr_day
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_year_view_set_use_24h_format</NAME>
+<RETURNS>void               </RETURNS>
+GcalYearView *year_view, gboolean      use_24h_format
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_year_view_set_current_date</NAME>
+<RETURNS>void               </RETURNS>
+GcalYearView *year_view, icaltimetype *current_date
+</FUNCTION>
+<STRUCT>
+<NAME>GcalYearView</NAME>
+</STRUCT>
+<MACRO>
+<NAME>GCAL_TYPE_WEEK_VIEW</NAME>
+#define GCAL_TYPE_WEEK_VIEW (gcal_week_view_get_type ())
+</MACRO>
+<FUNCTION>
+<NAME>gcal_week_view_new</NAME>
+<RETURNS>GtkWidget *           </RETURNS>
+void
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_week_view_set_manager</NAME>
+<RETURNS>void                  </RETURNS>
+GcalWeekView       *self, GcalManager        *manager
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_week_view_set_first_weekday</NAME>
+<RETURNS>void                  </RETURNS>
+GcalWeekView       *self, gint                day_nr
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_week_view_set_use_24h_format</NAME>
+<RETURNS>void                  </RETURNS>
+GcalWeekView       *self, gboolean            use_24h
+</FUNCTION>
+<STRUCT>
+<NAME>GcalWeekView</NAME>
+</STRUCT>
+<MACRO>
+<NAME>GCAL_TYPE_WEEK_GRID</NAME>
+#define GCAL_TYPE_WEEK_GRID (gcal_week_grid_get_type())
+</MACRO>
+<FUNCTION>
+<NAME>gcal_week_grid_set_manager</NAME>
+<RETURNS>void                  </RETURNS>
+GcalWeekGrid       *week_grid, GcalManager        *manager
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_week_grid_set_first_weekday</NAME>
+<RETURNS>void                  </RETURNS>
+GcalWeekGrid       *week_grid, gint                nr_day
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_week_grid_set_use_24h_format</NAME>
+<RETURNS>void                  </RETURNS>
+GcalWeekGrid       *week_grid, gboolean            use_24h_format
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_week_grid_add_event</NAME>
+<RETURNS>void                  </RETURNS>
+GcalWeekGrid       *self, GcalEvent          *event
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_week_grid_remove_event</NAME>
+<RETURNS>void                  </RETURNS>
+GcalWeekGrid       *self, const gchar        *uid
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_week_grid_get_children_by_uuid</NAME>
+<RETURNS>GList *               </RETURNS>
+GcalWeekGrid       *self, const gchar        *uid
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_week_grid_clear_marks</NAME>
+<RETURNS>void                  </RETURNS>
+GcalWeekGrid       *self
+</FUNCTION>
+<STRUCT>
+<NAME>GcalWeekGrid</NAME>
+</STRUCT>
+<MACRO>
+<NAME>GCAL_TYPE_MONTH_VIEW</NAME>
+#define GCAL_TYPE_MONTH_VIEW  (gcal_month_view_get_type ())
+</MACRO>
+<FUNCTION>
+<NAME>gcal_month_view_set_first_weekday</NAME>
+<RETURNS>void                  </RETURNS>
+GcalMonthView      *self, gint                day_nr
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_month_view_set_use_24h_format</NAME>
+<RETURNS>void                  </RETURNS>
+GcalMonthView      *self, gboolean            use_24h
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_month_view_set_manager</NAME>
+<RETURNS>void                  </RETURNS>
+GcalMonthView      *self , GcalManager        *manager
+</FUNCTION>
+<STRUCT>
+<NAME>GcalMonthView</NAME>
+</STRUCT>
+<MACRO>
+<NAME>GCAL_TYPE_WEEK_HEADER</NAME>
+#define GCAL_TYPE_WEEK_HEADER (gcal_week_header_get_type())
+</MACRO>
+<FUNCTION>
+<NAME>gcal_week_header_set_manager</NAME>
+<RETURNS>void                  </RETURNS>
+GcalWeekHeader     *self, GcalManager        *manager
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_week_header_set_first_weekday</NAME>
+<RETURNS>void                  </RETURNS>
+GcalWeekHeader     *self, gint                nr_day
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_week_header_set_use_24h_format</NAME>
+<RETURNS>void                  </RETURNS>
+GcalWeekHeader     *self, gboolean            use_24h_format
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_week_header_add_event</NAME>
+<RETURNS>void                  </RETURNS>
+GcalWeekHeader     *self, GcalEvent          *event
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_week_header_remove_event</NAME>
+<RETURNS>void                  </RETURNS>
+GcalWeekHeader     *self, const gchar        *uuid
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_week_header_get_children_by_uuid</NAME>
+<RETURNS>GList *               </RETURNS>
+GcalWeekHeader     *self, const gchar        *uuid
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_week_header_get_sidebar_size_group</NAME>
+<RETURNS>GtkSizeGroup *        </RETURNS>
+GcalWeekHeader     *self
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_week_header_clear_marks</NAME>
+<RETURNS>void                  </RETURNS>
+GcalWeekHeader     *self
+</FUNCTION>
+<STRUCT>
+<NAME>GcalWeekHeader</NAME>
+</STRUCT>
+<MACRO>
+<NAME>GCAL_TYPE_RANGE_TREE</NAME>
+#define GCAL_TYPE_RANGE_TREE (gcal_range_tree_get_type())
+</MACRO>
+<USER_FUNCTION>
+<NAME>GcalRangeTraverseFunc</NAME>
+<RETURNS>gboolean </RETURNS>
+guint16             start,
+                                                                  guint16             end,
+                                                                  gpointer            data,
+                                                                  gpointer            user_data
+</USER_FUNCTION>
+<FUNCTION>
+<NAME>gcal_range_tree_get_type</NAME>
+<RETURNS>GType                 </RETURNS>
+void
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_range_tree_new</NAME>
+<RETURNS>GcalRangeTree *       </RETURNS>
+void
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_range_tree_copy</NAME>
+<RETURNS>GcalRangeTree *       </RETURNS>
+GcalRangeTree      *self
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_range_tree_ref</NAME>
+<RETURNS>GcalRangeTree *       </RETURNS>
+GcalRangeTree      *self
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_range_tree_unref</NAME>
+<RETURNS>void                  </RETURNS>
+GcalRangeTree      *self
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_range_tree_add_range</NAME>
+<RETURNS>void                  </RETURNS>
+GcalRangeTree      *self, guint16             start, guint16             end, gpointer            data
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_range_tree_remove_range</NAME>
+<RETURNS>void                  </RETURNS>
+GcalRangeTree      *self, guint16             start, guint16             end, gpointer            data
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_range_tree_traverse</NAME>
+<RETURNS>void                  </RETURNS>
+GcalRangeTree      *self, GTraverseType       type, GcalRangeTraverseFunc func, gpointer           user_data
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_range_tree_get_data_at_range</NAME>
+<RETURNS>GPtrArray *           </RETURNS>
+GcalRangeTree      *self, guint16             start, guint16             end
+</FUNCTION>
+<FUNCTION>
+<NAME>gcal_range_tree_count_entries_at_range</NAME>
+<RETURNS>guint64               </RETURNS>
+GcalRangeTree      *self, guint16             start, guint16             end
+</FUNCTION>
+<STRUCT>
+<NAME>GcalRangeTree</NAME>
+</STRUCT>
diff --git a/doc/reference/gnome-calendar-docs.sgml b/doc/reference/gnome-calendar-docs.sgml
new file mode 100644
index 0000000..f88cbf2
--- /dev/null
+++ b/doc/reference/gnome-calendar-docs.sgml
@@ -0,0 +1,69 @@
+<?xml version="1.0"?>
+<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN"
+               "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd";
+[
+  <!ENTITY % local.common.attrib "xmlns:xi  CDATA  #FIXED 'http://www.w3.org/2003/XInclude'">
+  <!ENTITY % gtkdocentities SYSTEM "xml/gtkdocentities.ent">
+  %gtkdocentities;
+]>
+<book id="index">
+  <bookinfo>
+    <title>&package_name; Reference Manual</title>
+    <releaseinfo>
+      for &package_string;.
+      The latest version of this documentation can be found on-line at
+      <ulink role="online-location" 
url="http://[SERVER]/&package_name;/index.html";>http://[SERVER]/&package_name;/</ulink>.
+    </releaseinfo>
+  </bookinfo>
+
+  <chapter>
+    <title>[Insert title here]</title>
+        <xi:include href="xml/css-code.xml"/>
+    <xi:include href="xml/e-cal-data-model.xml"/>
+    <xi:include href="xml/e-cal-data-model-subscriber.xml"/>
+    <xi:include href="xml/gcal-application.xml"/>
+    <xi:include href="xml/gcal-date-chooser.xml"/>
+    <xi:include href="xml/gcal-date-chooser-day.xml"/>
+    <xi:include href="xml/gcal-date-selector.xml"/>
+    <xi:include href="xml/gcal-debug.xml"/>
+    <xi:include href="xml/gcal-edit-dialog.xml"/>
+    <xi:include href="xml/gcal-enum-types.xml"/>
+    <xi:include href="xml/gcal-event.xml"/>
+    <xi:include href="xml/gcal-event-widget.xml"/>
+    <xi:include href="xml/gcal-log.xml"/>
+    <xi:include href="xml/gcal-manager.xml"/>
+    <xi:include href="xml/gcal-month-view.xml"/>
+    <xi:include href="xml/gcal-multi-choice.xml"/>
+    <xi:include href="xml/gcal-quick-add-popover.xml"/>
+    <xi:include href="xml/gcal-range-tree.xml"/>
+    <xi:include href="xml/gcal-resources.xml"/>
+    <xi:include href="xml/gcal-search-view.xml"/>
+    <xi:include href="xml/gcal-shell-search-provider.xml"/>
+    <xi:include href="xml/gcal-shell-search-provider-generated.xml"/>
+    <xi:include href="xml/gcal-source-dialog.xml"/>
+    <xi:include href="xml/gcal-subscriber-view.xml"/>
+    <xi:include href="xml/gcal-subscriber-view-private.xml"/>
+    <xi:include href="xml/gcal-time-selector.xml"/>
+    <xi:include href="xml/gcal-utils.xml"/>
+    <xi:include href="xml/gcal-view.xml"/>
+    <xi:include href="xml/gcal-week-grid.xml"/>
+    <xi:include href="xml/gcal-week-header.xml"/>
+    <xi:include href="xml/gcal-week-view.xml"/>
+    <xi:include href="xml/gcal-window.xml"/>
+    <xi:include href="xml/gcal-year-view.xml"/>
+
+  </chapter>
+  <chapter id="object-tree">
+    <title>Object Hierarchy</title>
+    <xi:include href="xml/tree_index.sgml"/>
+  </chapter>
+  <index id="api-index-full">
+    <title>API Index</title>
+    <xi:include href="xml/api-index-full.xml"><xi:fallback /></xi:include>
+  </index>
+  <index id="deprecated-api-index" role="deprecated">
+    <title>Index of deprecated API</title>
+    <xi:include href="xml/api-index-deprecated.xml"><xi:fallback /></xi:include>
+  </index>
+  <xi:include href="xml/annotation-glossary.xml"><xi:fallback /></xi:include>
+</book>
diff --git a/doc/reference/gnome-calendar-overrides.txt b/doc/reference/gnome-calendar-overrides.txt
new file mode 100644
index 0000000..e69de29
diff --git a/doc/reference/gnome-calendar-sections.txt b/doc/reference/gnome-calendar-sections.txt
new file mode 100644
index 0000000..ed99d87
--- /dev/null
+++ b/doc/reference/gnome-calendar-sections.txt
@@ -0,0 +1,581 @@
+<SECTION>
+<FILE>css-code</FILE>
+<TITLE>CSS Code</TITLE>
+CSS_TEMPLATE
+</SECTION>
+
+<SECTION>
+<FILE>e-cal-data-model</FILE>
+<TITLE>ECalDataModel</TITLE>
+ECalDataModelViewState
+EThreadJobFunc
+e_cal_data_model_new
+e_cal_data_model_new_clone
+e_cal_data_model_submit_thread_job
+e_cal_data_model_get_disposing
+e_cal_data_model_set_disposing
+e_cal_data_model_get_expand_recurrences
+e_cal_data_model_set_expand_recurrences
+e_cal_data_model_get_timezone
+e_cal_data_model_set_timezone
+e_cal_data_model_set_filter
+e_cal_data_model_dup_filter
+e_cal_data_model_add_client
+e_cal_data_model_remove_client
+e_cal_data_model_ref_client
+e_cal_data_model_get_clients
+e_cal_data_model_get_components
+ECalDataModelForeachFunc
+e_cal_data_model_foreach_component
+e_cal_data_model_subscribe
+e_cal_data_model_unsubscribe
+e_cal_data_model_get_subscriber_range
+e_cal_data_model_freeze_views_update
+e_cal_data_model_thaw_views_update
+e_cal_data_model_is_views_update_frozen
+<SUBSECTION Standard>
+ECalDataModel
+ECalDataModelClass
+ECalDataModelPrivate
+E_CAL_DATA_MODEL
+E_CAL_DATA_MODEL_CLASS
+E_CAL_DATA_MODEL_GET_CLASS
+E_IS_CAL_DATA_MODEL
+E_IS_CAL_DATA_MODEL_CLASS
+E_TYPE_CAL_DATA_MODEL
+e_cal_data_model_get_type
+</SECTION>
+
+<SECTION>
+<FILE>e-cal-data-model-subscriber</FILE>
+<TITLE>ECalDataModelSubscriber</TITLE>
+e_cal_data_model_subscriber_component_added
+e_cal_data_model_subscriber_component_modified
+e_cal_data_model_subscriber_component_removed
+e_cal_data_model_subscriber_freeze
+e_cal_data_model_subscriber_thaw
+<SUBSECTION Standard>
+ECalDataModelSubscriber
+ECalDataModelSubscriberInterface
+E_CAL_DATA_MODEL_SUBSCRIBER
+E_CAL_DATA_MODEL_SUBSCRIBER_GET_INTERFACE
+E_CAL_DATA_MODEL_SUBSCRIBER_INTERFACE
+E_IS_CAL_DATA_MODEL_SUBSCRIBER
+E_IS_CAL_DATA_MODEL_SUBSCRIBER_INTERFACE
+E_TYPE_CAL_DATA_MODEL_SUBSCRIBER
+e_cal_data_model_subscriber_get_type
+</SECTION>
+
+<SECTION>
+<FILE>gcal-application</FILE>
+<TITLE>GcalApplication</TITLE>
+GCAL_TYPE_APPLICATION
+gcal_application_new
+gcal_application_get_manager
+gcal_application_get_settings
+gcal_application_set_uuid
+gcal_application_set_initial_date
+GcalApplication
+</SECTION>
+
+<SECTION>
+<FILE>gcal-date-chooser</FILE>
+<TITLE>GcalDateChooser</TITLE>
+GcalDateChooserDayOptions
+GCAL_TYPE_DATE_CHOOSER
+GcalDateChooserDayOptionsCallback
+gcal_date_chooser_new
+gcal_date_chooser_get_date
+gcal_date_chooser_set_date
+gcal_date_chooser_set_day_options_callback
+gcal_date_chooser_invalidate_day_options
+gcal_date_chooser_get_no_month_change
+gcal_date_chooser_set_no_month_change
+gcal_date_chooser_get_show_heading
+gcal_date_chooser_set_show_heading
+gcal_date_chooser_get_show_day_names
+gcal_date_chooser_set_show_day_names
+gcal_date_chooser_get_show_week_numbers
+gcal_date_chooser_set_show_week_numbers
+GcalDateChooser
+</SECTION>
+
+<SECTION>
+<FILE>gcal-date-chooser-day</FILE>
+<TITLE>GcalDateChooserDay</TITLE>
+GCAL_TYPE_DATE_CHOOSER_DAY
+gcal_date_chooser_day_new
+gcal_date_chooser_day_get_date
+gcal_date_chooser_day_set_date
+gcal_date_chooser_day_set_other_month
+gcal_date_chooser_day_set_selected
+gcal_date_chooser_day_set_options
+GcalDateChooserDay
+</SECTION>
+
+<SECTION>
+<FILE>gcal-date-selector</FILE>
+<TITLE>GcalDateSelector</TITLE>
+GCAL_TYPE_DATE_SELECTOR
+gcal_date_selector_new
+gcal_date_selector_get_date
+gcal_date_selector_set_date
+GcalDateSelector
+</SECTION>
+
+<SECTION>
+<FILE>gcal-debug</FILE>
+<TITLE>Debugging</TITLE>
+GCAL_ENABLE_TRACE
+GCAL_LOG_LEVEL_TRACE
+GCAL_TRACE_MSG
+GCAL_PROBE
+GCAL_TODO
+GCAL_ENTRY
+GCAL_EXIT
+GCAL_GOTO
+GCAL_RETURN
+GCAL_BUG
+</SECTION>
+
+<SECTION>
+<FILE>gcal-edit-dialog</FILE>
+<TITLE>GcalEditDialog</TITLE>
+GCAL_RESPONSE_DELETE_EVENT
+GCAL_RESPONSE_SAVE_EVENT
+GCAL_RESPONSE_CREATE_EVENT
+GCAL_TYPE_EDIT_DIALOG
+gcal_edit_dialog_new
+gcal_edit_dialog_set_event_is_new
+gcal_edit_dialog_get_event
+gcal_edit_dialog_set_event
+gcal_edit_dialog_set_manager
+gcal_edit_dialog_set_time_format
+gcal_edit_dialog_get_date_end
+gcal_edit_dialog_get_date_start
+GcalEditDialog
+</SECTION>
+
+<SECTION>
+<FILE>gcal-enum-types</FILE>
+<TITLE>Enums</TITLE>
+<SUBSECTION Standard>
+GCAL_EDITABLE_PROPERTY
+GCAL_WINDOW_VIEW_TYPE
+event_editable_property_get_type
+gcal_window_view_type_get_type
+</SECTION>
+
+<SECTION>
+<FILE>gcal-event</FILE>
+<TITLE>GcalEvent</TITLE>
+GcalEventError
+GCAL_EVENT_ERROR
+GCAL_TYPE_EVENT
+gcal_event_error_quark
+gcal_event_new
+gcal_event_get_all_day
+gcal_event_set_all_day
+gcal_event_get_color
+gcal_event_set_color
+gcal_event_get_component
+gcal_event_get_date_end
+gcal_event_set_date_end
+gcal_event_get_date_start
+gcal_event_set_date_start
+gcal_event_get_description
+gcal_event_set_description
+gcal_event_has_alarms
+gcal_event_get_alarms
+gcal_event_add_alarm
+gcal_event_remove_alarm
+gcal_event_get_location
+gcal_event_set_location
+gcal_event_get_source
+gcal_event_set_source
+gcal_event_get_summary
+gcal_event_set_summary
+gcal_event_get_timezone
+gcal_event_set_timezone
+gcal_event_get_uid
+gcal_event_is_multiday
+gcal_event_compare
+gcal_event_compare_with_current
+GcalEvent
+</SECTION>
+
+<SECTION>
+<FILE>gcal-event-widget</FILE>
+<TITLE>GcalEventWidget</TITLE>
+GCAL_TYPE_EVENT_WIDGET
+gcal_event_widget_new
+gcal_event_widget_get_event
+gcal_event_widget_get_date_start
+gcal_event_widget_set_date_start
+gcal_event_widget_get_date_end
+gcal_event_widget_set_date_end
+gcal_event_widget_set_read_only
+gcal_event_widget_get_read_only
+gcal_event_widget_set_has_reminders
+gcal_event_widget_get_has_reminders
+gcal_event_widget_clone
+gcal_event_widget_equal
+gcal_event_widget_compare_by_length
+gcal_event_widget_compare_by_start_date
+GcalEventWidget
+</SECTION>
+
+<SECTION>
+<FILE>gcal-log</FILE>
+<TITLE>Logging</TITLE>
+gcal_log_init
+</SECTION>
+
+<SECTION>
+<FILE>gcal-manager</FILE>
+<TITLE>GcalManager</TITLE>
+GCAL_TYPE_MANAGER
+gcal_manager_new_with_settings
+gcal_manager_get_source
+gcal_manager_get_sources
+gcal_manager_get_sources_connected
+gcal_manager_get_default_source
+gcal_manager_set_default_source
+gcal_manager_get_system_timezone
+gcal_manager_set_subscriber
+gcal_manager_set_search_subscriber
+gcal_manager_set_query
+gcal_manager_query_client_data
+gcal_manager_refresh
+gcal_manager_is_client_writable
+gcal_manager_create_event
+gcal_manager_update_event
+gcal_manager_remove_event
+gcal_manager_move_event_to_source
+gcal_manager_add_source
+gcal_manager_enable_source
+gcal_manager_disable_source
+gcal_manager_save_source
+gcal_manager_get_events
+gcal_manager_get_loading
+gcal_manager_get_goa_client
+gcal_manager_get_event_from_shell_search
+gcal_manager_setup_shell_search
+gcal_manager_set_shell_search_query
+gcal_manager_set_shell_search_subscriber
+gcal_manager_shell_search_done
+gcal_manager_get_shell_search_events
+GcalManager
+</SECTION>
+
+<SECTION>
+<FILE>gcal-month-view</FILE>
+<TITLE>GcalMonthView</TITLE>
+GCAL_TYPE_MONTH_VIEW
+gcal_month_view_set_first_weekday
+gcal_month_view_set_use_24h_format
+gcal_month_view_set_manager
+GcalMonthView
+</SECTION>
+
+<SECTION>
+<FILE>gcal-multi-choice</FILE>
+<TITLE>GcalMultiChoice</TITLE>
+GCAL_TYPE_MULTI_CHOICE
+gcal_multi_choice_new
+gcal_multi_choice_get_value
+gcal_multi_choice_set_value
+gcal_multi_choice_set_choices
+GcalMultiChoiceFormatCallback
+gcal_multi_choice_set_format_callback
+GcalMultiChoice
+</SECTION>
+
+<SECTION>
+<FILE>gcal-quick-add-popover</FILE>
+<TITLE>GcalQuickAddPopover</TITLE>
+GCAL_TYPE_QUICK_ADD_POPOVER
+gcal_quick_add_popover_new
+gcal_quick_add_popover_set_manager
+gcal_quick_add_popover_get_date_start
+gcal_quick_add_popover_set_date_start
+gcal_quick_add_popover_get_date_end
+gcal_quick_add_popover_set_date_end
+GcalQuickAddPopover
+</SECTION>
+
+<SECTION>
+<FILE>gcal-range-tree</FILE>
+<TITLE>GcalRangeTree</TITLE>
+GcalRangeTraverseFunc
+gcal_range_tree_new
+gcal_range_tree_copy
+gcal_range_tree_ref
+gcal_range_tree_unref
+gcal_range_tree_add_range
+gcal_range_tree_remove_range
+gcal_range_tree_traverse
+gcal_range_tree_get_data_at_range
+gcal_range_tree_count_entries_at_range
+<SUBSECTION Standard>
+GCAL_TYPE_RANGE_TREE
+GcalRangeTree
+gcal_range_tree_get_type
+</SECTION>
+
+<SECTION>
+<FILE>gcal-resources</FILE>
+calendar_get_resource
+</SECTION>
+
+<SECTION>
+<FILE>gcal-search-view</FILE>
+<TITLE>GcalSearchView</TITLE>
+GCAL_TYPE_SEARCH_VIEW
+gcal_search_view_set_time_format
+gcal_search_view_search
+gcal_search_view_new
+gcal_search_view_connect
+GcalSearchView
+</SECTION>
+
+<SECTION>
+<FILE>gcal-shell-search-provider</FILE>
+<TITLE>GcalShellSearchProvider</TITLE>
+GCAL_TYPE_SHELL_SEARCH_PROVIDER
+GcalShellSearchProviderClass
+gcal_shell_search_provider_new
+gcal_shell_search_provider_dbus_export
+gcal_shell_search_provider_dbus_unexport
+gcal_shell_search_provider_connect
+GcalShellSearchProvider
+</SECTION>
+
+<SECTION>
+<FILE>gcal-shell-search-provider-generated</FILE>
+<TITLE>GcalShellSearchProvider2Skeleton</TITLE>
+gcal_shell_search_provider2_interface_info
+gcal_shell_search_provider2_override_properties
+gcal_shell_search_provider2_complete_get_initial_result_set
+gcal_shell_search_provider2_complete_get_subsearch_result_set
+gcal_shell_search_provider2_complete_get_result_metas
+gcal_shell_search_provider2_complete_activate_result
+gcal_shell_search_provider2_complete_launch_search
+gcal_shell_search_provider2_call_get_initial_result_set
+gcal_shell_search_provider2_call_get_initial_result_set_finish
+gcal_shell_search_provider2_call_get_initial_result_set_sync
+gcal_shell_search_provider2_call_get_subsearch_result_set
+gcal_shell_search_provider2_call_get_subsearch_result_set_finish
+gcal_shell_search_provider2_call_get_subsearch_result_set_sync
+gcal_shell_search_provider2_call_get_result_metas
+gcal_shell_search_provider2_call_get_result_metas_finish
+gcal_shell_search_provider2_call_get_result_metas_sync
+gcal_shell_search_provider2_call_activate_result
+gcal_shell_search_provider2_call_activate_result_finish
+gcal_shell_search_provider2_call_activate_result_sync
+gcal_shell_search_provider2_call_launch_search
+gcal_shell_search_provider2_call_launch_search_finish
+gcal_shell_search_provider2_call_launch_search_sync
+gcal_shell_search_provider2_proxy_new
+gcal_shell_search_provider2_proxy_new_finish
+gcal_shell_search_provider2_proxy_new_sync
+gcal_shell_search_provider2_proxy_new_for_bus
+gcal_shell_search_provider2_proxy_new_for_bus_finish
+gcal_shell_search_provider2_proxy_new_for_bus_sync
+gcal_shell_search_provider2_skeleton_new
+<SUBSECTION Standard>
+GCAL_IS_SHELL_SEARCH_PROVIDER2
+GCAL_IS_SHELL_SEARCH_PROVIDER2_PROXY
+GCAL_IS_SHELL_SEARCH_PROVIDER2_PROXY_CLASS
+GCAL_IS_SHELL_SEARCH_PROVIDER2_SKELETON
+GCAL_IS_SHELL_SEARCH_PROVIDER2_SKELETON_CLASS
+GCAL_SHELL_SEARCH_PROVIDER2
+GCAL_SHELL_SEARCH_PROVIDER2_GET_IFACE
+GCAL_SHELL_SEARCH_PROVIDER2_PROXY
+GCAL_SHELL_SEARCH_PROVIDER2_PROXY_CLASS
+GCAL_SHELL_SEARCH_PROVIDER2_PROXY_GET_CLASS
+GCAL_SHELL_SEARCH_PROVIDER2_SKELETON
+GCAL_SHELL_SEARCH_PROVIDER2_SKELETON_CLASS
+GCAL_SHELL_SEARCH_PROVIDER2_SKELETON_GET_CLASS
+GCAL_TYPE_SHELL_SEARCH_PROVIDER2
+GCAL_TYPE_SHELL_SEARCH_PROVIDER2_PROXY
+GCAL_TYPE_SHELL_SEARCH_PROVIDER2_SKELETON
+GcalShellSearchProvider2
+GcalShellSearchProvider2Iface
+GcalShellSearchProvider2Proxy
+GcalShellSearchProvider2ProxyClass
+GcalShellSearchProvider2ProxyPrivate
+GcalShellSearchProvider2Skeleton
+GcalShellSearchProvider2SkeletonClass
+GcalShellSearchProvider2SkeletonPrivate
+gcal_shell_search_provider2_get_type
+gcal_shell_search_provider2_proxy_get_type
+gcal_shell_search_provider2_skeleton_get_type
+</SECTION>
+
+<SECTION>
+<FILE>gcal-source-dialog</FILE>
+<TITLE>GcalSourceDialog</TITLE>
+GCAL_RESPONSE_REMOVE_SOURCE
+GCAL_TYPE_SOURCE_DIALOG
+GcalSourceDialogMode
+gcal_source_dialog_new
+gcal_source_dialog_set_manager
+gcal_source_dialog_set_mode
+gcal_source_dialog_set_source
+GcalSourceDialog
+</SECTION>
+
+<SECTION>
+<FILE>gcal-subscriber-view</FILE>
+<TITLE>GcalSubscriberView</TITLE>
+gcal_subscriber_view_get_child_by_uuid
+<SUBSECTION Standard>
+GCAL_IS_SUBSCRIBER_VIEW
+GCAL_IS_SUBSCRIBER_VIEW_CLASS
+GCAL_SUBSCRIBER_VIEW
+GCAL_SUBSCRIBER_VIEW_CLASS
+GCAL_SUBSCRIBER_VIEW_GET_CLASS
+GCAL_TYPE_SUBSCRIBER_VIEW
+GcalSubscriberView
+GcalSubscriberViewClass
+GcalSubscriberViewPrivate
+gcal_subscriber_view_get_type
+</SECTION>
+
+<SECTION>
+<FILE>gcal-subscriber-view-private</FILE>
+<TITLE>GcalSubscriberViewPrivate</TITLE>
+GcalSubscriberViewPrivate
+</SECTION>
+
+<SECTION>
+<FILE>gcal-time-selector</FILE>
+<TITLE>GcalTimeSelector</TITLE>
+GCAL_TYPE_TIME_SELECTOR
+gcal_time_selector_new
+gcal_time_selector_set_time_format
+gcal_time_selector_get_time
+gcal_time_selector_set_time
+GcalTimeSelector
+</SECTION>
+
+<SECTION>
+<FILE>gcal-utils</FILE>
+<TITLE>Utility functions</TITLE>
+ICAL_TIME_TYPE
+ALIGNED
+MINUTES_PER_DAY
+MAX_MINUTES
+gcal_clear_datetime
+GcalWindowViewType
+EventEditableProperty
+GcalTranslateFunc
+icaltime_get_type
+datetime_compare_date
+datetime_to_icaltime
+datetime_is_date
+icaltime_to_datetime
+gcal_dup_icaltime
+gcal_get_weekday
+gcal_get_month_name
+gcal_get_surface_from_color
+get_circle_surface_from_color
+get_color_name_from_source
+get_desc_from_component
+get_uuid_from_component
+get_first_weekday
+build_component_from_details
+icaltime_compare_date
+icaltime_compare_with_current
+get_start_of_week
+get_end_of_week
+is_clock_format_24h
+e_strftime_fix_am_pm
+e_utf8_strftime_fix_am_pm
+fix_popover_menu_icons
+uri_get_fields
+get_source_parent_name_color
+format_utc_offset
+get_alarm_trigger_minutes
+should_change_date_for_scroll
+is_source_enabled
+</SECTION>
+
+<SECTION>
+<FILE>gcal-view</FILE>
+<TITLE>GcalView</TITLE>
+GCAL_TYPE_VIEW
+GcalViewInterface
+gcal_view_set_date
+gcal_view_get_date
+gcal_view_get_initial_date
+gcal_view_get_final_date
+gcal_view_clear_marks
+gcal_view_get_children_by_uuid
+GcalView
+</SECTION>
+
+<SECTION>
+<FILE>gcal-week-grid</FILE>
+<TITLE>GcalWeekGrid</TITLE>
+GCAL_TYPE_WEEK_GRID
+gcal_week_grid_set_manager
+gcal_week_grid_set_first_weekday
+gcal_week_grid_set_use_24h_format
+gcal_week_grid_add_event
+gcal_week_grid_remove_event
+gcal_week_grid_get_children_by_uuid
+gcal_week_grid_clear_marks
+GcalWeekGrid
+</SECTION>
+
+<SECTION>
+<FILE>gcal-week-header</FILE>
+<TITLE>GcalWeekHeader</TITLE>
+GCAL_TYPE_WEEK_HEADER
+gcal_week_header_set_manager
+gcal_week_header_set_first_weekday
+gcal_week_header_set_use_24h_format
+gcal_week_header_add_event
+gcal_week_header_remove_event
+gcal_week_header_get_children_by_uuid
+gcal_week_header_get_sidebar_size_group
+gcal_week_header_clear_marks
+GcalWeekHeader
+</SECTION>
+
+<SECTION>
+<FILE>gcal-week-view</FILE>
+<TITLE>GcalWeekView</TITLE>
+GCAL_TYPE_WEEK_VIEW
+gcal_week_view_new
+gcal_week_view_set_manager
+gcal_week_view_set_first_weekday
+gcal_week_view_set_use_24h_format
+GcalWeekView
+</SECTION>
+
+<SECTION>
+<FILE>gcal-window</FILE>
+<TITLE>GcalWindow</TITLE>
+GCAL_TYPE_WINDOW
+gcal_window_new_with_view_and_date
+gcal_window_new_event
+gcal_window_set_search_mode
+gcal_window_set_search_query
+gcal_window_open_event_by_uuid
+GcalWindow
+</SECTION>
+
+<SECTION>
+<FILE>gcal-year-view</FILE>
+<TITLE>GcalYearView</TITLE>
+GCAL_TYPE_YEAR_VIEW
+gcal_year_view_set_manager
+gcal_year_view_set_first_weekday
+gcal_year_view_set_use_24h_format
+gcal_year_view_set_current_date
+GcalYearView
+</SECTION>
+
diff --git a/doc/reference/gnome-calendar-undeclared.txt b/doc/reference/gnome-calendar-undeclared.txt
new file mode 100644
index 0000000..e69de29
diff --git a/doc/reference/gnome-calendar-undocumented.txt b/doc/reference/gnome-calendar-undocumented.txt
new file mode 100644
index 0000000..8dce38c
--- /dev/null
+++ b/doc/reference/gnome-calendar-undocumented.txt
@@ -0,0 +1,351 @@
+47% symbol docs coverage.
+264 symbols documented.
+182 symbols incomplete.
+296 not documented.
+
+
+ALIGNED (<parameters>)
+CSS_TEMPLATE
+ECalDataModel::view-state-changed
+ECalDataModel:expand-recurrences
+ECalDataModel:timezone
+ECalDataModelForeachFunc (<parameters>)
+ECalDataModelViewState (<items>)
+EThreadJobFunc (<parameters>)
+EventEditableProperty (<items>)
+GCAL_BUG (<parameters>)
+GCAL_ENABLE_TRACE
+GCAL_ENTRY
+GCAL_EVENT_ERROR
+GCAL_EXIT
+GCAL_GOTO (<parameters>)
+GCAL_LOG_LEVEL_TRACE
+GCAL_PROBE
+GCAL_RESPONSE_CREATE_EVENT
+GCAL_RESPONSE_DELETE_EVENT
+GCAL_RESPONSE_REMOVE_SOURCE
+GCAL_RESPONSE_SAVE_EVENT
+GCAL_RETURN (<parameters>)
+GCAL_TODO (<parameters>)
+GCAL_TRACE_MSG (<parameters>)
+GCAL_TYPE_APPLICATION
+GCAL_TYPE_DATE_CHOOSER
+GCAL_TYPE_DATE_CHOOSER_DAY
+GCAL_TYPE_DATE_SELECTOR
+GCAL_TYPE_EDIT_DIALOG
+GCAL_TYPE_EVENT
+GCAL_TYPE_EVENT_WIDGET
+GCAL_TYPE_MANAGER
+GCAL_TYPE_MONTH_VIEW
+GCAL_TYPE_MULTI_CHOICE
+GCAL_TYPE_QUICK_ADD_POPOVER
+GCAL_TYPE_SEARCH_VIEW
+GCAL_TYPE_SHELL_SEARCH_PROVIDER
+GCAL_TYPE_SOURCE_DIALOG
+GCAL_TYPE_TIME_SELECTOR
+GCAL_TYPE_VIEW
+GCAL_TYPE_WEEK_GRID
+GCAL_TYPE_WEEK_HEADER
+GCAL_TYPE_WEEK_VIEW
+GCAL_TYPE_WINDOW
+GCAL_TYPE_YEAR_VIEW
+GcalApplication
+GcalDateChooser
+GcalDateChooser::day-selected
+GcalDateChooser::month-changed
+GcalDateChooserDay
+GcalDateChooserDay::selected
+GcalDateChooserDayOptions (<items>)
+GcalDateChooserDayOptionsCallback (<parameters>)
+GcalDateSelector
+GcalEditDialog
+GcalEvent
+GcalEventError (<items>)
+GcalEventWidget
+GcalEventWidget::activate
+GcalManager
+GcalManager::query-completed
+GcalManager::source-added
+GcalManager::source-changed
+GcalManager::source-enabled
+GcalManager::source-removed
+GcalMonthView
+GcalMultiChoice
+GcalMultiChoice::wrapped
+GcalMultiChoiceFormatCallback (<parameters>)
+GcalQuickAddPopover
+GcalRangeTraverseFunc (<parameters>)
+GcalSearchView
+GcalShellSearchProvider
+GcalShellSearchProviderClass (<items>)
+GcalSourceDialog
+GcalSourceDialogMode (<items>)
+GcalSubscriberView::event-activated
+GcalSubscriberViewPrivate (<items>)
+GcalTimeSelector
+GcalTranslateFunc (<parameters>)
+GcalView
+GcalViewInterface (<items>)
+GcalWeekGrid
+GcalWeekGrid::event-activated
+GcalWeekHeader
+GcalWeekHeader::event-activated
+GcalWeekView
+GcalWeekView::event-activated
+GcalWindow
+GcalWindowViewType (<items>)
+GcalYearView
+GcalYearView::event-activated
+ICAL_TIME_TYPE
+MAX_MINUTES
+MINUTES_PER_DAY
+action_widget_activated (Returns)
+back_button_clicked (Returns)
+build_component_from_details (summary, initial_date, final_date)
+calendar_file_selected (Returns)
+calendar_get_resource
+calendar_listbox_row_activated (Returns)
+clear_pages (Returns)
+datetime_compare_date (<parameters>)
+datetime_is_date (<parameters>)
+datetime_to_icaltime (<parameters>)
+description_label_link_activated (Returns)
+e_cal_data_model_remove_client (data_model)
+e_cal_data_model_subscriber_component_added (comp)
+e_strftime_fix_am_pm (<parameters>)
+e_utf8_strftime_fix_am_pm (<parameters>)
+fix_popover_menu_icons (popover)
+format_utc_offset (<parameters>)
+free_row_data (Returns)
+gcal_application_get_manager (<parameters>)
+gcal_application_get_settings (<parameters>)
+gcal_application_new
+gcal_application_set_initial_date (<parameters>)
+gcal_application_set_uuid (<parameters>)
+gcal_clear_datetime (<parameters>)
+gcal_date_chooser_day_get_date (<parameters>)
+gcal_date_chooser_day_new
+gcal_date_chooser_day_set_date (<parameters>)
+gcal_date_chooser_day_set_options (<parameters>)
+gcal_date_chooser_day_set_other_month (<parameters>)
+gcal_date_chooser_day_set_selected (<parameters>)
+gcal_date_chooser_get_date (<parameters>)
+gcal_date_chooser_get_no_month_change (<parameters>)
+gcal_date_chooser_get_show_day_names (<parameters>)
+gcal_date_chooser_get_show_heading (<parameters>)
+gcal_date_chooser_get_show_week_numbers (<parameters>)
+gcal_date_chooser_invalidate_day_options (<parameters>)
+gcal_date_chooser_new
+gcal_date_chooser_set_date (<parameters>)
+gcal_date_chooser_set_day_options_callback (<parameters>)
+gcal_date_chooser_set_no_month_change (<parameters>)
+gcal_date_chooser_set_show_day_names (<parameters>)
+gcal_date_chooser_set_show_heading (<parameters>)
+gcal_date_chooser_set_show_week_numbers (<parameters>)
+gcal_date_selector_new
+gcal_dup_icaltime (<parameters>)
+gcal_edit_dialog_get_date_end (<parameters>)
+gcal_edit_dialog_get_date_start (<parameters>)
+gcal_edit_dialog_get_event (<parameters>)
+gcal_edit_dialog_new
+gcal_edit_dialog_set_event (<parameters>)
+gcal_edit_dialog_set_event_is_new (<parameters>)
+gcal_edit_dialog_set_manager (<parameters>)
+gcal_edit_dialog_set_time_format (<parameters>)
+gcal_event_get_description (self)
+gcal_event_set_summary (self)
+gcal_event_widget_clone (<parameters>)
+gcal_event_widget_compare_by_length (widget1, widget2)
+gcal_event_widget_compare_by_start_date (<parameters>)
+gcal_event_widget_get_has_reminders (<parameters>)
+gcal_event_widget_get_read_only (<parameters>)
+gcal_event_widget_new (<parameters>)
+gcal_event_widget_set_date_start (date_start)
+gcal_event_widget_set_has_reminders (<parameters>)
+gcal_event_widget_set_read_only (<parameters>)
+gcal_get_month_name (<parameters>)
+gcal_get_pixbuf_from_color (color, size)
+gcal_get_surface_from_color (<parameters>)
+gcal_get_weekday (<parameters>)
+gcal_log_init
+gcal_manager_add_source (backend, name)
+gcal_manager_create_event (<parameters>)
+gcal_manager_get_default_source
+gcal_manager_get_event_from_shell_search (<parameters>)
+gcal_manager_get_events (manager, range_start, range_end)
+gcal_manager_get_goa_client (<parameters>)
+gcal_manager_get_loading (<parameters>)
+gcal_manager_get_shell_search_events (<parameters>)
+gcal_manager_get_source (manager)
+gcal_manager_get_sources (manager)
+gcal_manager_get_sources_connected (manager)
+gcal_manager_get_system_timezone (<parameters>)
+gcal_manager_is_client_writable (<parameters>)
+gcal_manager_move_event_to_source (<parameters>)
+gcal_manager_new_with_settings
+gcal_manager_query_client_data (source, manager, field)
+gcal_manager_refresh (<parameters>)
+gcal_manager_remove_event (<parameters>)
+gcal_manager_set_default_source
+gcal_manager_set_search_subscriber (<parameters>)
+gcal_manager_set_shell_search_subscriber (<parameters>)
+gcal_manager_set_subscriber (<parameters>)
+gcal_manager_setup_shell_search (<parameters>)
+gcal_manager_shell_search_done (<parameters>)
+gcal_manager_update_event (<parameters>)
+gcal_month_view_get_final_date
+gcal_month_view_motion_notify_event (widget, event, Returns)
+gcal_month_view_set_first_weekday (self)
+gcal_month_view_set_manager (<parameters>)
+gcal_month_view_set_use_24h_format (view, use_24h)
+gcal_multi_choice_get_value (<parameters>)
+gcal_multi_choice_new
+gcal_multi_choice_set_choices (<parameters>)
+gcal_multi_choice_set_format_callback (<parameters>)
+gcal_multi_choice_set_value (<parameters>)
+gcal_quick_add_popover_new
+gcal_range_tree_count_entries_at_range (<parameters>)
+gcal_search_view_new
+gcal_search_view_search (<parameters>)
+gcal_search_view_set_search
+gcal_shell_search_provider_connect (<parameters>)
+gcal_shell_search_provider_dbus_export (<parameters>)
+gcal_shell_search_provider_dbus_unexport (<parameters>)
+gcal_shell_search_provider_new
+gcal_source_dialog_new
+gcal_source_dialog_set_manager (Returns)
+gcal_source_dialog_set_mode (Returns)
+gcal_source_dialog_set_source (Returns)
+gcal_subscriber_view_get_child_by_uuid (<parameters>)
+gcal_time_selector_get_time (<parameters>)
+gcal_time_selector_new
+gcal_time_selector_set_time (<parameters>)
+gcal_time_selector_set_time_format (<parameters>)
+gcal_view_get_date (<parameters>)
+gcal_view_set_date (<parameters>)
+gcal_week_grid_add_event (<parameters>)
+gcal_week_grid_clear_marks (<parameters>)
+gcal_week_grid_get_children_by_uuid (<parameters>)
+gcal_week_grid_remove_event (<parameters>)
+gcal_week_grid_set_first_weekday (<parameters>)
+gcal_week_grid_set_manager (<parameters>)
+gcal_week_grid_set_use_24h_format (<parameters>)
+gcal_week_header_add_event (<parameters>)
+gcal_week_header_clear_marks (<parameters>)
+gcal_week_header_get_children_by_uuid (<parameters>)
+gcal_week_header_get_sidebar_size_group (<parameters>)
+gcal_week_header_remove_event (<parameters>)
+gcal_week_header_set_first_weekday (<parameters>)
+gcal_week_header_set_manager (<parameters>)
+gcal_week_header_set_use_24h_format (<parameters>)
+gcal_week_view_get_final_date
+gcal_week_view_get_initial_date
+gcal_week_view_set_first_weekday (view, day_nr)
+gcal_week_view_set_manager (<parameters>)
+gcal_week_view_set_use_24h_format (view, use_24h)
+gcal_window_new_event (<parameters>)
+gcal_window_new_with_view_and_date (<parameters>)
+gcal_window_open_event_by_uuid (<parameters>)
+gcal_window_set_search_mode (<parameters>)
+gcal_window_set_search_query (<parameters>)
+gcal_year_view_set_current_date (<parameters>)
+gcal_year_view_set_first_weekday (<parameters>)
+gcal_year_view_set_manager (<parameters>)
+gcal_year_view_set_use_24h_format (<parameters>)
+get_alarm_trigger_minutes (<parameters>)
+get_circle_surface_from_color (<parameters>)
+get_color_name_from_source (<parameters>)
+get_desc_from_component (component)
+get_end_of_week (<parameters>)
+get_source_parent_name_color (<parameters>)
+get_start_of_week (<parameters>)
+hide_notification (Returns)
+icaltime_compare_date (date1, date2)
+icaltime_compare_with_current (<parameters>)
+icaltime_get_type
+icaltime_to_datetime (<parameters>)
+is_clock_format_24h
+is_source_enabled (<parameters>)
+name_entry_text_changed (Returns)
+notification_child_revealed_changed (Returns)
+on_local_activated (Returns)
+on_web_activated (Returns)
+online_accounts_listbox_row_activated (Returns)
+online_accounts_settings_button_clicked (Returns)
+open_event (Returns)
+remove_button_clicked (Returns)
+remove_source (Returns)
+response_signal (Returns)
+should_change_date_for_scroll (<parameters>)
+undo_remove_action (Returns)
+update_view (Returns)
+uri_get_fields (host, schema, path, uri)
+url_entry_text_changed (Returns)
+view_changed (object, pspec, user_data)
+
+css-code:Long_Description
+css-code:Short_Description
+e-cal-data-model-subscriber:Long_Description
+e-cal-data-model-subscriber:Short_Description
+e-cal-data-model:Long_Description
+e-cal-data-model:Short_Description
+gcal-application:Long_Description
+gcal-application:Short_Description
+gcal-date-chooser-day:Long_Description
+gcal-date-chooser-day:Short_Description
+gcal-date-chooser:Long_Description
+gcal-date-chooser:Short_Description
+gcal-date-selector:Long_Description
+gcal-date-selector:Short_Description
+gcal-debug:Long_Description
+gcal-debug:Short_Description
+gcal-edit-dialog:Long_Description
+gcal-edit-dialog:Short_Description
+gcal-enum-types:Long_Description
+gcal-enum-types:Short_Description
+gcal-event-widget:Long_Description
+gcal-event-widget:Short_Description
+gcal-event:Long_Description
+gcal-event:Short_Description
+gcal-log:Long_Description
+gcal-log:Short_Description
+gcal-manager:Long_Description
+gcal-manager:Short_Description
+gcal-month-view:Long_Description
+gcal-month-view:Short_Description
+gcal-multi-choice:Long_Description
+gcal-multi-choice:Short_Description
+gcal-quick-add-popover:Long_Description
+gcal-quick-add-popover:Short_Description
+gcal-range-tree:Long_Description
+gcal-range-tree:Short_Description
+gcal-resources:Long_Description
+gcal-resources:Short_Description
+gcal-search-view:Long_Description
+gcal-search-view:Short_Description
+gcal-shell-search-provider-generated:Long_Description
+gcal-shell-search-provider-generated:Short_Description
+gcal-shell-search-provider:Long_Description
+gcal-shell-search-provider:Short_Description
+gcal-source-dialog:Long_Description
+gcal-source-dialog:Short_Description
+gcal-subscriber-view-private:Long_Description
+gcal-subscriber-view-private:Short_Description
+gcal-subscriber-view:Long_Description
+gcal-subscriber-view:Short_Description
+gcal-time-selector:Long_Description
+gcal-time-selector:Short_Description
+gcal-utils:Long_Description
+gcal-utils:Short_Description
+gcal-view:Long_Description
+gcal-view:Short_Description
+gcal-week-grid:Long_Description
+gcal-week-grid:Short_Description
+gcal-week-header:Long_Description
+gcal-week-header:Short_Description
+gcal-week-view:Long_Description
+gcal-week-view:Short_Description
+gcal-window:Long_Description
+gcal-window:Short_Description
+gcal-year-view:Long_Description
+gcal-year-view:Short_Description
diff --git a/doc/reference/gnome-calendar-unused.txt b/doc/reference/gnome-calendar-unused.txt
new file mode 100644
index 0000000..8b2221e
--- /dev/null
+++ b/doc/reference/gnome-calendar-unused.txt
@@ -0,0 +1,10 @@
+e_cal_data_model_submit_thread_job(description, alert_ident, alert_arg_0)
+e_cal_data_model_subscriber_component_added(icalcomp)
+fix_popover_menu_icons(window)
+gcal_event_set_summary(event)
+gcal_event_widget_set_date_start(date_end)
+gcal_manager_add_source(base_uri, relative_uri)
+gcal_month_view_set_first_weekday(view)
+gcal_month_view_set_use_24h_format(view)
+gcal_week_view_set_first_weekday(view)
+gcal_week_view_set_use_24h_format(view)
diff --git a/doc/reference/gnome-calendar.args b/doc/reference/gnome-calendar.args
new file mode 100644
index 0000000..b1128cf
--- /dev/null
+++ b/doc/reference/gnome-calendar.args
@@ -0,0 +1,470 @@
+<ARG>
+<NAME>ECalDataModel::expand-recurrences</NAME>
+<TYPE>gboolean</TYPE>
+<RANGE></RANGE>
+<FLAGS>rw</FLAGS>
+<NICK>Expand Recurrences</NICK>
+<BLURB>(null)</BLURB>
+<DEFAULT>FALSE</DEFAULT>
+</ARG>
+
+<ARG>
+<NAME>ECalDataModel::timezone</NAME>
+<TYPE>gpointer</TYPE>
+<RANGE></RANGE>
+<FLAGS>rw</FLAGS>
+<NICK>Time Zone</NICK>
+<BLURB>(null)</BLURB>
+<DEFAULT></DEFAULT>
+</ARG>
+
+<ARG>
+<NAME>GcalDateChooser::date</NAME>
+<TYPE>GDateTime*</TYPE>
+<RANGE></RANGE>
+<FLAGS>rw</FLAGS>
+<NICK>Date</NICK>
+<BLURB>The selected date.</BLURB>
+<DEFAULT></DEFAULT>
+</ARG>
+
+<ARG>
+<NAME>GcalDateChooser::no-month-change</NAME>
+<TYPE>gboolean</TYPE>
+<RANGE></RANGE>
+<FLAGS>rw</FLAGS>
+<NICK>No Month Change</NICK>
+<BLURB>If TRUE, the selected month cannot be changed.</BLURB>
+<DEFAULT>FALSE</DEFAULT>
+</ARG>
+
+<ARG>
+<NAME>GcalDateChooser::show-day-names</NAME>
+<TYPE>gboolean</TYPE>
+<RANGE></RANGE>
+<FLAGS>rw</FLAGS>
+<NICK>Show Day Names</NICK>
+<BLURB>If TRUE, day names are displayed.</BLURB>
+<DEFAULT>TRUE</DEFAULT>
+</ARG>
+
+<ARG>
+<NAME>GcalDateChooser::show-heading</NAME>
+<TYPE>gboolean</TYPE>
+<RANGE></RANGE>
+<FLAGS>rw</FLAGS>
+<NICK>Show Heading</NICK>
+<BLURB>If TRUE, a heading is displayed.</BLURB>
+<DEFAULT>TRUE</DEFAULT>
+</ARG>
+
+<ARG>
+<NAME>GcalDateChooser::show-week-numbers</NAME>
+<TYPE>gboolean</TYPE>
+<RANGE></RANGE>
+<FLAGS>rw</FLAGS>
+<NICK>Show Week Numbers</NICK>
+<BLURB>If TRUE, week numbers are displayed.</BLURB>
+<DEFAULT>TRUE</DEFAULT>
+</ARG>
+
+<ARG>
+<NAME>GcalDateSelector::date</NAME>
+<TYPE>GDateTime*</TYPE>
+<RANGE></RANGE>
+<FLAGS>rw</FLAGS>
+<NICK>Date of the selector</NICK>
+<BLURB>The current date of the selector.</BLURB>
+<DEFAULT></DEFAULT>
+</ARG>
+
+<ARG>
+<NAME>GcalEditDialog::event</NAME>
+<TYPE>GcalEvent*</TYPE>
+<RANGE></RANGE>
+<FLAGS>rw</FLAGS>
+<NICK>event of the dialog</NICK>
+<BLURB>The event being edited.</BLURB>
+<DEFAULT></DEFAULT>
+</ARG>
+
+<ARG>
+<NAME>GcalEditDialog::manager</NAME>
+<TYPE>GcalManager*</TYPE>
+<RANGE></RANGE>
+<FLAGS>rw</FLAGS>
+<NICK>Manager of the dialog</NICK>
+<BLURB>The manager of the dialog.</BLURB>
+<DEFAULT></DEFAULT>
+</ARG>
+
+<ARG>
+<NAME>GcalEditDialog::writable</NAME>
+<TYPE>gboolean</TYPE>
+<RANGE></RANGE>
+<FLAGS>rw</FLAGS>
+<NICK>Whether the current event can be edited</NICK>
+<BLURB>Whether the current event can be edited or not.</BLURB>
+<DEFAULT>TRUE</DEFAULT>
+</ARG>
+
+<ARG>
+<NAME>GcalEvent::all-day</NAME>
+<TYPE>gboolean</TYPE>
+<RANGE></RANGE>
+<FLAGS>rw</FLAGS>
+<NICK>If event is all day</NICK>
+<BLURB>Whether the event is all day or not.</BLURB>
+<DEFAULT>FALSE</DEFAULT>
+</ARG>
+
+<ARG>
+<NAME>GcalEvent::color</NAME>
+<TYPE>GdkRGBA*</TYPE>
+<RANGE></RANGE>
+<FLAGS>rw</FLAGS>
+<NICK>Color of the event</NICK>
+<BLURB>The color of the event.</BLURB>
+<DEFAULT></DEFAULT>
+</ARG>
+
+<ARG>
+<NAME>GcalEvent::component</NAME>
+<TYPE>ECalComponent*</TYPE>
+<RANGE></RANGE>
+<FLAGS>rwX</FLAGS>
+<NICK>Component</NICK>
+<BLURB>The ECalComponent of the event.</BLURB>
+<DEFAULT></DEFAULT>
+</ARG>
+
+<ARG>
+<NAME>GcalEvent::date-end</NAME>
+<TYPE>GDateTime*</TYPE>
+<RANGE></RANGE>
+<FLAGS>rw</FLAGS>
+<NICK>End date of the event</NICK>
+<BLURB>The end date of the event.</BLURB>
+<DEFAULT></DEFAULT>
+</ARG>
+
+<ARG>
+<NAME>GcalEvent::date-start</NAME>
+<TYPE>GDateTime*</TYPE>
+<RANGE></RANGE>
+<FLAGS>rw</FLAGS>
+<NICK>Start date of the event</NICK>
+<BLURB>The start date of the event.</BLURB>
+<DEFAULT></DEFAULT>
+</ARG>
+
+<ARG>
+<NAME>GcalEvent::description</NAME>
+<TYPE>gchar*</TYPE>
+<RANGE></RANGE>
+<FLAGS>rw</FLAGS>
+<NICK>Description of the event</NICK>
+<BLURB>The description of the event.</BLURB>
+<DEFAULT>""</DEFAULT>
+</ARG>
+
+<ARG>
+<NAME>GcalEvent::location</NAME>
+<TYPE>gchar*</TYPE>
+<RANGE></RANGE>
+<FLAGS>rw</FLAGS>
+<NICK>Location of the event</NICK>
+<BLURB>The location of the event.</BLURB>
+<DEFAULT>""</DEFAULT>
+</ARG>
+
+<ARG>
+<NAME>GcalEvent::source</NAME>
+<TYPE>ESource*</TYPE>
+<RANGE></RANGE>
+<FLAGS>rwx</FLAGS>
+<NICK>ESource</NICK>
+<BLURB>The ESource this event belongs to.</BLURB>
+<DEFAULT></DEFAULT>
+</ARG>
+
+<ARG>
+<NAME>GcalEvent::summary</NAME>
+<TYPE>gchar*</TYPE>
+<RANGE></RANGE>
+<FLAGS>rw</FLAGS>
+<NICK>Summary of the event</NICK>
+<BLURB>The summary of the event.</BLURB>
+<DEFAULT>""</DEFAULT>
+</ARG>
+
+<ARG>
+<NAME>GcalEvent::timezone</NAME>
+<TYPE>GTimeZone*</TYPE>
+<RANGE></RANGE>
+<FLAGS>rw</FLAGS>
+<NICK>Timezone of the event</NICK>
+<BLURB>The timezone of the event.</BLURB>
+<DEFAULT></DEFAULT>
+</ARG>
+
+<ARG>
+<NAME>GcalEvent::uid</NAME>
+<TYPE>gchar*</TYPE>
+<RANGE></RANGE>
+<FLAGS>r</FLAGS>
+<NICK>Identifier of the event</NICK>
+<BLURB>The unique identifier of the event.</BLURB>
+<DEFAULT>""</DEFAULT>
+</ARG>
+
+<ARG>
+<NAME>GcalEventWidget::date-end</NAME>
+<TYPE>GDateTime*</TYPE>
+<RANGE></RANGE>
+<FLAGS>rw</FLAGS>
+<NICK>End date</NICK>
+<BLURB>The end date of the widget.</BLURB>
+<DEFAULT></DEFAULT>
+</ARG>
+
+<ARG>
+<NAME>GcalEventWidget::date-start</NAME>
+<TYPE>GDateTime*</TYPE>
+<RANGE></RANGE>
+<FLAGS>rw</FLAGS>
+<NICK>Start date</NICK>
+<BLURB>The start date of the widget.</BLURB>
+<DEFAULT></DEFAULT>
+</ARG>
+
+<ARG>
+<NAME>GcalEventWidget::event</NAME>
+<TYPE>GcalEvent*</TYPE>
+<RANGE></RANGE>
+<FLAGS>rwX</FLAGS>
+<NICK>Event</NICK>
+<BLURB>The event this widget represents.</BLURB>
+<DEFAULT></DEFAULT>
+</ARG>
+
+<ARG>
+<NAME>GcalManager::default-calendar</NAME>
+<TYPE>ESource*</TYPE>
+<RANGE></RANGE>
+<FLAGS>rw</FLAGS>
+<NICK>Default calendar</NICK>
+<BLURB>The default calendar.</BLURB>
+<DEFAULT></DEFAULT>
+</ARG>
+
+<ARG>
+<NAME>GcalManager::loading</NAME>
+<TYPE>gboolean</TYPE>
+<RANGE></RANGE>
+<FLAGS>r</FLAGS>
+<NICK>Loading</NICK>
+<BLURB>Whether it's still loading or not.</BLURB>
+<DEFAULT>TRUE</DEFAULT>
+</ARG>
+
+<ARG>
+<NAME>GcalManager::settings</NAME>
+<TYPE>GSettings*</TYPE>
+<RANGE></RANGE>
+<FLAGS>rwX</FLAGS>
+<NICK>Application settings</NICK>
+<BLURB>The settings of the application passed down from GcalApplication.</BLURB>
+<DEFAULT></DEFAULT>
+</ARG>
+
+<ARG>
+<NAME>GcalMultiChoice::animate</NAME>
+<TYPE>gboolean</TYPE>
+<RANGE></RANGE>
+<FLAGS>rw</FLAGS>
+<NICK>Animate</NICK>
+<BLURB>Animate.</BLURB>
+<DEFAULT>FALSE</DEFAULT>
+</ARG>
+
+<ARG>
+<NAME>GcalMultiChoice::choices</NAME>
+<TYPE>GStrv</TYPE>
+<RANGE></RANGE>
+<FLAGS>w</FLAGS>
+<NICK>Choices</NICK>
+<BLURB>Choices.</BLURB>
+<DEFAULT></DEFAULT>
+</ARG>
+
+<ARG>
+<NAME>GcalMultiChoice::max-value</NAME>
+<TYPE>gint</TYPE>
+<RANGE></RANGE>
+<FLAGS>rw</FLAGS>
+<NICK>Maximum Value</NICK>
+<BLURB>Maximum Value.</BLURB>
+<DEFAULT>0</DEFAULT>
+</ARG>
+
+<ARG>
+<NAME>GcalMultiChoice::min-value</NAME>
+<TYPE>gint</TYPE>
+<RANGE></RANGE>
+<FLAGS>rw</FLAGS>
+<NICK>Minimum Value</NICK>
+<BLURB>Minimum Value.</BLURB>
+<DEFAULT>0</DEFAULT>
+</ARG>
+
+<ARG>
+<NAME>GcalMultiChoice::value</NAME>
+<TYPE>gint</TYPE>
+<RANGE></RANGE>
+<FLAGS>rw</FLAGS>
+<NICK>Value</NICK>
+<BLURB>Value.</BLURB>
+<DEFAULT>0</DEFAULT>
+</ARG>
+
+<ARG>
+<NAME>GcalMultiChoice::wrap</NAME>
+<TYPE>gboolean</TYPE>
+<RANGE></RANGE>
+<FLAGS>rw</FLAGS>
+<NICK>Wrap</NICK>
+<BLURB>Wrap.</BLURB>
+<DEFAULT>FALSE</DEFAULT>
+</ARG>
+
+<ARG>
+<NAME>GcalQuickAddPopover::date-end</NAME>
+<TYPE>GDateTime*</TYPE>
+<RANGE></RANGE>
+<FLAGS>rw</FLAGS>
+<NICK>End date of the event</NICK>
+<BLURB>The end date of the new event.</BLURB>
+<DEFAULT></DEFAULT>
+</ARG>
+
+<ARG>
+<NAME>GcalQuickAddPopover::date-start</NAME>
+<TYPE>GDateTime*</TYPE>
+<RANGE></RANGE>
+<FLAGS>rw</FLAGS>
+<NICK>Start date of the event</NICK>
+<BLURB>The start date of the new event.</BLURB>
+<DEFAULT></DEFAULT>
+</ARG>
+
+<ARG>
+<NAME>GcalQuickAddPopover::manager</NAME>
+<TYPE>GcalManager*</TYPE>
+<RANGE></RANGE>
+<FLAGS>rw</FLAGS>
+<NICK>Manager of the application</NICK>
+<BLURB>The singleton manager of the application.</BLURB>
+<DEFAULT></DEFAULT>
+</ARG>
+
+<ARG>
+<NAME>GcalSearchView::active-date</NAME>
+<TYPE>icaltimetype*</TYPE>
+<RANGE></RANGE>
+<FLAGS>rw</FLAGS>
+<NICK>The active date</NICK>
+<BLURB>The active/selected date in the view.</BLURB>
+<DEFAULT></DEFAULT>
+</ARG>
+
+<ARG>
+<NAME>GcalTimeSelector::time</NAME>
+<TYPE>GDateTime*</TYPE>
+<RANGE></RANGE>
+<FLAGS>rw</FLAGS>
+<NICK>Time of the selector</NICK>
+<BLURB>The current time of the selector.</BLURB>
+<DEFAULT></DEFAULT>
+</ARG>
+
+<ARG>
+<NAME>GcalView::active-date</NAME>
+<TYPE>icaltimetype*</TYPE>
+<RANGE></RANGE>
+<FLAGS>rw</FLAGS>
+<NICK>The active date</NICK>
+<BLURB>The active/selecetd date in the view.</BLURB>
+<DEFAULT></DEFAULT>
+</ARG>
+
+<ARG>
+<NAME>GcalWeekGrid::active-date</NAME>
+<TYPE>icaltimetype*</TYPE>
+<RANGE></RANGE>
+<FLAGS>rwx</FLAGS>
+<NICK>Date</NICK>
+<BLURB>The active selected date.</BLURB>
+<DEFAULT></DEFAULT>
+</ARG>
+
+<ARG>
+<NAME>GcalWeekHeader::active-date</NAME>
+<TYPE>icaltimetype*</TYPE>
+<RANGE></RANGE>
+<FLAGS>rwx</FLAGS>
+<NICK>Date</NICK>
+<BLURB>The active selected date.</BLURB>
+<DEFAULT></DEFAULT>
+</ARG>
+
+<ARG>
+<NAME>GcalWindow::active-date</NAME>
+<TYPE>icaltimetype*</TYPE>
+<RANGE></RANGE>
+<FLAGS>rwx</FLAGS>
+<NICK>Date</NICK>
+<BLURB>The active/selected date.</BLURB>
+<DEFAULT></DEFAULT>
+</ARG>
+
+<ARG>
+<NAME>GcalWindow::active-view</NAME>
+<TYPE>GcalWindowViewType</TYPE>
+<RANGE></RANGE>
+<FLAGS>rw</FLAGS>
+<NICK>Active View</NICK>
+<BLURB>The active view, eg: month, week, etc.</BLURB>
+<DEFAULT>GCAL_WINDOW_VIEW_MONTH</DEFAULT>
+</ARG>
+
+<ARG>
+<NAME>GcalWindow::manager</NAME>
+<TYPE>GcalManager*</TYPE>
+<RANGE></RANGE>
+<FLAGS>rwX</FLAGS>
+<NICK>The manager object</NICK>
+<BLURB>A weak reference to the app manager object.</BLURB>
+<DEFAULT></DEFAULT>
+</ARG>
+
+<ARG>
+<NAME>GcalWindow::new-event-mode</NAME>
+<TYPE>gboolean</TYPE>
+<RANGE></RANGE>
+<FLAGS>rw</FLAGS>
+<NICK>New Event mode</NICK>
+<BLURB>Whether the window is in new-event-mode or not.</BLURB>
+<DEFAULT>FALSE</DEFAULT>
+</ARG>
+
+<ARG>
+<NAME>GcalYearView::show-week-numbers</NAME>
+<TYPE>gboolean</TYPE>
+<RANGE></RANGE>
+<FLAGS>rw</FLAGS>
+<NICK>Show Week Numbers</NICK>
+<BLURB>Show Week Numbers Column.</BLURB>
+<DEFAULT>FALSE</DEFAULT>
+</ARG>
+
diff --git a/doc/reference/gnome-calendar.hierarchy b/doc/reference/gnome-calendar.hierarchy
new file mode 100644
index 0000000..7e24ac9
--- /dev/null
+++ b/doc/reference/gnome-calendar.hierarchy
@@ -0,0 +1,156 @@
+GObject
+  ECalDataModel
+  GApplication
+    GtkApplication
+      GcalApplication
+  GInitiallyUnowned
+    GtkWidget
+      GtkContainer
+        GtkBin
+          GcalDateChooserDay
+          GcalDateChooser
+          GtkWindow
+            GtkDialog
+              GcalEditDialog
+              GcalSourceDialog
+            GtkApplicationWindow
+              GcalWindow
+          GtkPopover
+            GcalQuickAddPopover
+            GcalSearchView
+          GtkButton
+            GtkToggleButton
+              GtkMenuButton
+                GcalTimeSelector
+        GcalSubscriberView
+          GcalMonthView
+        GtkBox
+          GcalMultiChoice
+          GcalWeekView
+          GcalYearView
+        GcalWeekGrid
+        GtkGrid
+          GcalWeekHeader
+        GtkMenuShell
+          GtkMenu
+      GtkEntry
+        GcalDateSelector
+      GcalEventWidget
+  GcalEvent
+  GcalManager
+  GDBusProxy
+    GcalShellSearchProvider2Proxy
+  GDBusInterfaceSkeleton
+    GcalShellSearchProvider2Skeleton
+  GcalShellSearchProvider
+  ECalClientView
+  GApplicationCommandLine
+  GMenuModel
+  AtkObject
+    GtkAccessible
+      GtkWidgetAccessible
+        GtkContainerAccessible
+          GtkWindowAccessible
+          GtkPopoverAccessible
+          GtkButtonAccessible
+            GtkToggleButtonAccessible
+              GtkMenuButtonAccessible
+        GtkEntryAccessible
+  GtkStyle
+  GdkWindow
+  GdkDragContext
+  GtkTooltip
+  GdkScreen
+  GdkDisplayManager
+  GdkDisplay
+  GtkEntryBuffer
+  GdkPixbuf
+  GtkEntryCompletion
+  GZlibDecompressor
+  GFileInfo
+  ECalComponent
+  ESource
+  GSettings
+  GDBusMethodInvocation
+  GDBusConnection
+  ESourceExtension
+    ESourceLocal
+  GtkAction
+GInterface
+  GTypePlugin
+  ECalDataModelSubscriber
+  GActionGroup
+  GActionMap
+  AtkImplementorIface
+  GtkBuildable
+  GtkEditable
+  GtkCellEditable
+  GInitable
+  GtkOrientable
+  GcalView
+  GcalShellSearchProvider2
+  GDBusInterface
+  GAsyncInitable
+  GtkActionable
+  GtkActivatable
+  AtkComponent
+  GIcon
+  GLoadableIcon
+  GtkCellLayout
+  AtkEditableText
+  AtkText
+  AtkAction
+  AtkWindow
+  GConverter
+  GProxyResolver
+  AtkImage
+GEnum
+  EventEditableProperty
+  GcalWindowViewType
+  GtkAlign
+  GtkStateType
+  GtkTextDirection
+  GtkDirectionType
+  GtkDragResult
+  GtkWidgetHelpType
+  GtkResizeMode
+  GtkShadowType
+  GtkImageType
+  GtkInputPurpose
+  GtkMovementStep
+  GtkDeleteType
+  GtkEntryIconPosition
+  GtkWindowType
+  GtkWindowPosition
+  GdkWindowTypeHint
+  GdkGravity
+  GZlibCompressorFormat
+  GtkOrientation
+  GtkBaselinePosition
+  GtkPackType
+  GtkPositionType
+  GtkPopoverConstraint
+  GBusType
+  GtkReliefStyle
+  GtkArrowType
+GBoxed
+  GValueArray
+  GcalRangeTree
+  icaltimetype
+  GError
+  GVariantDict
+  GdkRectangle
+  CairoRectangleInt
+  CairoContext
+  GdkEvent
+  GtkSelectionData
+  GtkRequisition
+  GtkBorder
+  GdkColor
+  GDateTime
+  PangoAttrList
+  PangoTabArray
+  GdkRGBA
+  GTimeZone
+  GStrv
+  GDBusInterfaceInfo
diff --git a/doc/reference/gnome-calendar.interfaces b/doc/reference/gnome-calendar.interfaces
new file mode 100644
index 0000000..c36201e
--- /dev/null
+++ b/doc/reference/gnome-calendar.interfaces
@@ -0,0 +1,56 @@
+GApplication GActionGroup GActionMap
+GtkApplication GActionGroup GActionMap
+GcalApplication GActionGroup GActionMap
+GtkWidget AtkImplementorIface GtkBuildable
+GtkContainer AtkImplementorIface GtkBuildable
+GtkBin AtkImplementorIface GtkBuildable
+GcalDateChooserDay AtkImplementorIface GtkBuildable
+GcalDateChooser AtkImplementorIface GtkBuildable
+GtkWindow AtkImplementorIface GtkBuildable
+GtkDialog AtkImplementorIface GtkBuildable
+GcalEditDialog AtkImplementorIface GtkBuildable
+GcalSourceDialog AtkImplementorIface GtkBuildable
+GtkApplicationWindow AtkImplementorIface GtkBuildable GActionGroup GActionMap
+GcalWindow AtkImplementorIface GtkBuildable GActionGroup GActionMap
+GtkPopover AtkImplementorIface GtkBuildable
+GcalQuickAddPopover AtkImplementorIface GtkBuildable
+GcalSearchView AtkImplementorIface GtkBuildable ECalDataModelSubscriber
+GtkButton AtkImplementorIface GtkBuildable GtkActionable GtkActivatable
+GtkToggleButton AtkImplementorIface GtkBuildable GtkActionable GtkActivatable
+GtkMenuButton AtkImplementorIface GtkBuildable GtkActionable GtkActivatable
+GcalTimeSelector AtkImplementorIface GtkBuildable GtkActionable GtkActivatable
+GcalSubscriberView AtkImplementorIface GtkBuildable ECalDataModelSubscriber
+GcalMonthView AtkImplementorIface GtkBuildable ECalDataModelSubscriber GcalView
+GtkBox AtkImplementorIface GtkBuildable GtkOrientable
+GcalMultiChoice AtkImplementorIface GtkBuildable GtkOrientable
+GcalWeekView AtkImplementorIface GtkBuildable GtkOrientable GcalView ECalDataModelSubscriber
+GcalYearView AtkImplementorIface GtkBuildable GtkOrientable GcalView ECalDataModelSubscriber
+GcalWeekGrid AtkImplementorIface GtkBuildable
+GtkGrid AtkImplementorIface GtkBuildable GtkOrientable
+GcalWeekHeader AtkImplementorIface GtkBuildable GtkOrientable
+GtkMenuShell AtkImplementorIface GtkBuildable
+GtkMenu AtkImplementorIface GtkBuildable
+GtkEntry AtkImplementorIface GtkBuildable GtkEditable GtkCellEditable
+GcalDateSelector AtkImplementorIface GtkBuildable GtkEditable GtkCellEditable
+GcalEventWidget AtkImplementorIface GtkBuildable GtkOrientable
+GcalEvent GInitable
+GDBusProxy GDBusInterface GInitable GAsyncInitable
+GcalShellSearchProvider2Proxy GDBusInterface GInitable GAsyncInitable GcalShellSearchProvider2
+GDBusInterfaceSkeleton GDBusInterface
+GcalShellSearchProvider2Skeleton GDBusInterface GcalShellSearchProvider2
+GcalShellSearchProvider ECalDataModelSubscriber
+ECalClientView GInitable
+GtkWidgetAccessible AtkComponent
+GtkContainerAccessible AtkComponent
+GtkWindowAccessible AtkComponent AtkWindow
+GtkPopoverAccessible AtkComponent
+GtkButtonAccessible AtkComponent AtkAction AtkImage
+GtkToggleButtonAccessible AtkComponent AtkAction AtkImage
+GtkMenuButtonAccessible AtkComponent AtkAction AtkImage
+GtkEntryAccessible AtkComponent AtkEditableText AtkText AtkAction
+GdkPixbuf GIcon GLoadableIcon
+GtkEntryCompletion GtkCellLayout GtkBuildable
+GZlibDecompressor GConverter
+ESource GInitable GProxyResolver
+GDBusConnection GInitable GAsyncInitable
+GtkAction GtkBuildable
diff --git a/doc/reference/gnome-calendar.prerequisites b/doc/reference/gnome-calendar.prerequisites
new file mode 100644
index 0000000..c279579
--- /dev/null
+++ b/doc/reference/gnome-calendar.prerequisites
@@ -0,0 +1,19 @@
+ECalDataModelSubscriber GObject
+GActionGroup GObject
+GActionMap GObject
+GtkBuildable GObject
+GtkCellEditable GtkWidget
+GInitable GObject
+GtkOrientable GObject
+GcalView GtkWidget
+GcalShellSearchProvider2 GObject
+GDBusInterface GObject
+GAsyncInitable GObject
+GtkActionable GtkWidget
+GtkActivatable GObject
+GIcon GObject
+GLoadableIcon GIcon GObject
+GtkCellLayout GObject
+AtkWindow AtkObject
+GConverter GObject
+GProxyResolver GObject
diff --git a/doc/reference/gnome-calendar.signals b/doc/reference/gnome-calendar.signals
new file mode 100644
index 0000000..4626300
--- /dev/null
+++ b/doc/reference/gnome-calendar.signals
@@ -0,0 +1,213 @@
+<SIGNAL>
+<NAME>ECalDataModel::view-state-changed</NAME>
+<RETURNS>void</RETURNS>
+<FLAGS>l</FLAGS>
+ECalDataModel *ecaldatamodel
+ECalClientView *arg1
+guint  arg2
+guint  arg3
+gchar *arg4
+GError *arg5
+</SIGNAL>
+
+<SIGNAL>
+<NAME>GcalDateChooserDay::selected</NAME>
+<RETURNS>void</RETURNS>
+<FLAGS>f</FLAGS>
+GcalDateChooserDay *gcaldatechooserday
+</SIGNAL>
+
+<SIGNAL>
+<NAME>GcalDateChooser::day-selected</NAME>
+<RETURNS>void</RETURNS>
+<FLAGS>f</FLAGS>
+GcalDateChooser *gcaldatechooser
+</SIGNAL>
+
+<SIGNAL>
+<NAME>GcalDateChooser::month-changed</NAME>
+<RETURNS>void</RETURNS>
+<FLAGS>f</FLAGS>
+GcalDateChooser *gcaldatechooser
+</SIGNAL>
+
+<SIGNAL>
+<NAME>GcalEventWidget::activate</NAME>
+<RETURNS>void</RETURNS>
+<FLAGS>l</FLAGS>
+GcalEventWidget *gcaleventwidget
+</SIGNAL>
+
+<SIGNAL>
+<NAME>GcalManager::query-completed</NAME>
+<RETURNS>void</RETURNS>
+<FLAGS>l</FLAGS>
+GcalManager *gcalmanager
+</SIGNAL>
+
+<SIGNAL>
+<NAME>GcalManager::source-added</NAME>
+<RETURNS>void</RETURNS>
+<FLAGS>l</FLAGS>
+GcalManager *gcalmanager
+gpointer  arg1
+gboolean  arg2
+</SIGNAL>
+
+<SIGNAL>
+<NAME>GcalManager::source-changed</NAME>
+<RETURNS>void</RETURNS>
+<FLAGS>l</FLAGS>
+GcalManager *gcalmanager
+ESource *arg1
+</SIGNAL>
+
+<SIGNAL>
+<NAME>GcalManager::source-enabled</NAME>
+<RETURNS>void</RETURNS>
+<FLAGS>l</FLAGS>
+GcalManager *gcalmanager
+ESource *arg1
+gboolean  arg2
+</SIGNAL>
+
+<SIGNAL>
+<NAME>GcalManager::source-removed</NAME>
+<RETURNS>void</RETURNS>
+<FLAGS>l</FLAGS>
+GcalManager *gcalmanager
+gpointer  arg1
+</SIGNAL>
+
+<SIGNAL>
+<NAME>GcalMultiChoice::wrapped</NAME>
+<RETURNS>void</RETURNS>
+<FLAGS>l</FLAGS>
+GcalMultiChoice *gcalmultichoice
+</SIGNAL>
+
+<SIGNAL>
+<NAME>GcalQuickAddPopover::edit-event</NAME>
+<RETURNS>void</RETURNS>
+<FLAGS>l</FLAGS>
+GcalQuickAddPopover *gcalquickaddpopover
+GcalEvent *arg1
+</SIGNAL>
+
+<SIGNAL>
+<NAME>GcalSearchView::event-activated</NAME>
+<RETURNS>void</RETURNS>
+<FLAGS>l</FLAGS>
+GcalSearchView *gcalsearchview
+icaltimetype *arg1
+</SIGNAL>
+
+<SIGNAL>
+<NAME>GcalShellSearchProvider2::handle-activate-result</NAME>
+<RETURNS>gboolean</RETURNS>
+<FLAGS>l</FLAGS>
+GcalShellSearchProvider2 *gcalshellsearchprovider2
+GDBusMethodInvocation *arg1
+gchar *arg2
+GStrv  arg3
+guint  arg4
+</SIGNAL>
+
+<SIGNAL>
+<NAME>GcalShellSearchProvider2::handle-get-initial-result-set</NAME>
+<RETURNS>gboolean</RETURNS>
+<FLAGS>l</FLAGS>
+GcalShellSearchProvider2 *gcalshellsearchprovider2
+GDBusMethodInvocation *arg1
+GStrv  arg2
+</SIGNAL>
+
+<SIGNAL>
+<NAME>GcalShellSearchProvider2::handle-get-result-metas</NAME>
+<RETURNS>gboolean</RETURNS>
+<FLAGS>l</FLAGS>
+GcalShellSearchProvider2 *gcalshellsearchprovider2
+GDBusMethodInvocation *arg1
+GStrv  arg2
+</SIGNAL>
+
+<SIGNAL>
+<NAME>GcalShellSearchProvider2::handle-get-subsearch-result-set</NAME>
+<RETURNS>gboolean</RETURNS>
+<FLAGS>l</FLAGS>
+GcalShellSearchProvider2 *gcalshellsearchprovider2
+GDBusMethodInvocation *arg1
+GStrv  arg2
+GStrv  arg3
+</SIGNAL>
+
+<SIGNAL>
+<NAME>GcalShellSearchProvider2::handle-launch-search</NAME>
+<RETURNS>gboolean</RETURNS>
+<FLAGS>l</FLAGS>
+GcalShellSearchProvider2 *gcalshellsearchprovider2
+GDBusMethodInvocation *arg1
+GStrv  arg2
+guint  arg3
+</SIGNAL>
+
+<SIGNAL>
+<NAME>GcalSubscriberView::event-activated</NAME>
+<RETURNS>void</RETURNS>
+<FLAGS>l</FLAGS>
+GcalSubscriberView *gcalsubscriberview
+GcalEventWidget *arg1
+</SIGNAL>
+
+<SIGNAL>
+<NAME>GcalView::create-event</NAME>
+<RETURNS>void</RETURNS>
+<FLAGS>l</FLAGS>
+GcalView *gcalview
+gpointer  arg1
+gpointer  arg2
+gdouble  arg3
+gdouble  arg4
+</SIGNAL>
+
+<SIGNAL>
+<NAME>GcalView::create-event-detailed</NAME>
+<RETURNS>void</RETURNS>
+<FLAGS>l</FLAGS>
+GcalView *gcalview
+gpointer  arg1
+gpointer  arg2
+</SIGNAL>
+
+<SIGNAL>
+<NAME>GcalWeekGrid::event-activated</NAME>
+<RETURNS>void</RETURNS>
+<FLAGS>f</FLAGS>
+GcalWeekGrid *gcalweekgrid
+GcalEventWidget *arg1
+</SIGNAL>
+
+<SIGNAL>
+<NAME>GcalWeekHeader::event-activated</NAME>
+<RETURNS>void</RETURNS>
+<FLAGS>f</FLAGS>
+GcalWeekHeader *gcalweekheader
+GcalEventWidget *arg1
+</SIGNAL>
+
+<SIGNAL>
+<NAME>GcalWeekView::event-activated</NAME>
+<RETURNS>void</RETURNS>
+<FLAGS>f</FLAGS>
+GcalWeekView *gcalweekview
+GcalEventWidget *arg1
+</SIGNAL>
+
+<SIGNAL>
+<NAME>GcalYearView::event-activated</NAME>
+<RETURNS>void</RETURNS>
+<FLAGS>l</FLAGS>
+GcalYearView *gcalyearview
+GcalEventWidget *arg1
+</SIGNAL>
+
diff --git a/doc/reference/gnome-calendar.types b/doc/reference/gnome-calendar.types
new file mode 100644
index 0000000..833da84
--- /dev/null
+++ b/doc/reference/gnome-calendar.types
@@ -0,0 +1,31 @@
+e_cal_data_model_get_type
+e_cal_data_model_subscriber_get_type
+event_editable_property_get_type
+gcal_application_get_type
+gcal_date_chooser_day_get_type
+gcal_date_chooser_get_type
+gcal_date_selector_get_type
+gcal_edit_dialog_get_type
+gcal_event_get_type
+gcal_event_widget_get_type
+gcal_manager_get_type
+gcal_month_view_get_type
+gcal_multi_choice_get_type
+gcal_quick_add_popover_get_type
+gcal_range_tree_get_type
+gcal_search_view_get_type
+gcal_shell_search_provider2_get_type
+gcal_shell_search_provider2_proxy_get_type
+gcal_shell_search_provider2_skeleton_get_type
+gcal_shell_search_provider_get_type
+gcal_source_dialog_get_type
+gcal_subscriber_view_get_type
+gcal_time_selector_get_type
+gcal_view_get_type
+gcal_week_grid_get_type
+gcal_week_header_get_type
+gcal_week_view_get_type
+gcal_window_get_type
+gcal_window_view_type_get_type
+gcal_year_view_get_type
+icaltime_get_type
diff --git a/doc/reference/version.xml.in b/doc/reference/version.xml.in
new file mode 100644
index 0000000..d78bda9
--- /dev/null
+++ b/doc/reference/version.xml.in
@@ -0,0 +1 @@
+@VERSION@
diff --git a/src/Makefile.am b/src/Makefile.am
index 270e703..567aec6 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -125,5 +125,22 @@ EXTRA_DIST =                                              \
     gcal-enum-types.h.template                            \
     gcal-enum-types.c.template
 
+
+#---------------------------------------------
+# Library for GTK-Doc
+#---------------------------------------------
+noinst_LTLIBRARIES = libgcal.la
+
+libgcal_la_SOURCES = $(gnome_calendar_SOURCES)
+
+libgcal_la_CFLAGS = \
+       $(CALENDAR_CFLAGS) \
+       $(CALENDAR_WARN_CFLAGS)
+
+libgcal_la_LDFLAGS = \
+       -Wl,--export-dynamic \
+       -lm
+
+
 dist-hook:
        cd $(distdir); rm -f $(BUILT_SOURCES)


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]