GcalManager

GcalManager — The backend of GNOME Calendar

Stability Level

Unstable, unless otherwise indicated

Functions

Properties

ESource * default-calendar Read / Write
gboolean loading Read
GSettings * settings Read

Signals

void query-completed Run Last
void source-added Run Last
void source-changed Run Last
void source-enabled Run Last
void source-removed Run Last

Types and Values

Object Hierarchy

    GObject
    ╰── GcalManager

Description

GcalManager is the backend of GNOME Calendar. It sets everything up, connects to the Online Accounts daemon, and manages the events and calendars.

Functions

gcal_manager_get_source ()

ESource *
gcal_manager_get_source (GcalManager *self,
                         const gchar *uid);

Retrieve a source according to it's UID. The source is referenced for thread-safety and must be unreferenced after user.

Parameters

self

a GcalManager

 

uid

the unique identifier of the source

 

Returns

an ESource, or NULL.

[nullable][transfer full]


gcal_manager_get_sources ()

GList *
gcal_manager_get_sources (GcalManager *self);

Retrieve a list of the enabled sources used in the application.

Parameters

self

a GcalManager

 

Returns

a GList.

[nullable][transfer container][content-type ESource]


gcal_manager_get_sources_connected ()

GList *
gcal_manager_get_sources_connected (GcalManager *self);

Returns a GList with every source connected on the app, whether they are enabled or not.

Parameters

self

a GcalManager

 

Returns

a GList.

[nullable][transfer container][content-type ESource]


gcal_manager_get_default_source ()

ESource *
gcal_manager_get_default_source (GcalManager *self);

Parameters

self

a GcalManager

 

Returns

an ESource object. Free with g_object_unref().

[transfer full]


gcal_manager_set_default_source ()

void
gcal_manager_set_default_source (GcalManager *self,
                                 ESource *source);

Sets the default calendar.

Parameters

self

a GcalManager

 

source

the new default source.

 

gcal_manager_get_system_timezone ()

icaltimezone *
gcal_manager_get_system_timezone (GcalManager *self);

Retireves the default timezone.

Parameters

self

a GcalManager

 

Returns

the default timezone.

[transfer none]


gcal_manager_set_subscriber ()

void
gcal_manager_set_subscriber (GcalManager *self,
                             ECalDataModelSubscriber *subscriber,
                             time_t range_start,
                             time_t range_end);

Sets the subscriber to show events between range_start and range_end .

Parameters

self

a GcalManager

 

subscriber

a ECalDataModelSubscriber

 

range_start

the start of the range

 

range_end

the end of the range

 

gcal_manager_set_search_subscriber ()

void
gcal_manager_set_search_subscriber (GcalManager *self,
                                    ECalDataModelSubscriber *subscriber,
                                    time_t range_start,
                                    time_t range_end);

Sets the subscriber to show events between range_start and range_end .

Parameters

self

a GcalManager

 

subscriber

a ECalDataModelSubscriber

 

range_start

the start of the range

 

range_end

the end of the range

 

gcal_manager_set_query ()

void
gcal_manager_set_query (GcalManager *self,
                        const gchar *query);

Set the query terms of the ECalDataModel or clear it if NULL is passed

Parameters

self

A GcalManager instance

 

query

query terms or NULL.

[nullable]

gcal_manager_query_client_data ()

gchar *
gcal_manager_query_client_data (GcalManager *self,
                                ESource *source,
                                const gchar *field);

Queries for a specific data field of the ECalClient

Returns

a string representing the retrieved value.

[nullable][transfer none]


gcal_manager_refresh ()

void
gcal_manager_refresh (GcalManager *self);

Forces a full refresh and synchronization of all available calendars.

Parameters

self

a GcalManager

 

gcal_manager_is_client_writable ()

gboolean
gcal_manager_is_client_writable (GcalManager *self,
                                 ESource *source);

Retrieves whether source is writable.

Parameters

self

a GcalManager

 

source

an ESource

 

Returns

TRUE if source is writable, FALSE otherwise.


gcal_manager_create_event ()

void
gcal_manager_create_event (GcalManager *self,
                           GcalEvent *event);

Creates event .

Parameters

self

a GcalManager

 

event

a GcalEvent

 

gcal_manager_update_event ()

void
gcal_manager_update_event (GcalManager *self,
                           GcalEvent *event,
                           GcalRecurrenceModType mod);

Saves all changes made to event persistently.

Parameters

self

a GcalManager

 

event

a GcalEvent

 

mod

an GcalRecurrenceModType

 

gcal_manager_remove_event ()

void
gcal_manager_remove_event (GcalManager *self,
                           GcalEvent *event,
                           GcalRecurrenceModType mod);

Deletes event .

Parameters

self

a GcalManager

 

event

a GcalEvent

 

mod

an GcalRecurrenceModType

 

gcal_manager_move_event_to_source ()

void
gcal_manager_move_event_to_source (GcalManager *self,
                                   GcalEvent *event,
                                   ESource *dest);

Moves event to dest calendar. This is a fail-safe operation: worst case, the user will have two duplicated events, and we guarantee to never loose any data.

Parameters

self

a GcalManager

 

event

a GcalEvent

 

dest

the destination calendar

 

gcal_manager_add_source ()

gchar *
gcal_manager_add_source (GcalManager *self,
                         const gchar *name,
                         const gchar *backend,
                         const gchar *color);

Add a new calendar by its URI. The calendar is enabled by default

Parameters

self

a GcalManager

 

base_uri

URI defining the ESourceGroup the client will belongs

 

relative_uri

URI, relative to the base URI

 

color

a string representing a color parseable for gdk_rgba_parse

 

Returns

unique identifier of calendar's source, or NULL.

[nullable][transfer full]


gcal_manager_enable_source ()

void
gcal_manager_enable_source (GcalManager *self,
                            ESource *source);

Enable the given ESource.

Parameters

self

a GcalManager

 

source

the target ESource

 

gcal_manager_disable_source ()

void
gcal_manager_disable_source (GcalManager *self,
                             ESource *source);

Disable the given ESource.

Parameters

self

a GcalManager

 

source

the target ESource

 

gcal_manager_save_source ()

void
gcal_manager_save_source (GcalManager *self,
                          ESource *source);

Commit the given ESource.

Parameters

self

a GcalManager

 

source

the target ESource

 

gcal_manager_get_events ()

GList *
gcal_manager_get_events (GcalManager *self,
                         icaltimetype *range_start,
                         icaltimetype *range_end);

Returns a list with GcalEvent objects owned by the caller, the list and the objects. The components inside the list are owned by the caller as well.

Parameters

self

a GcalManager

 

start_date

the start of the dete range

 

end_date

the end of the dete range

 

Returns

a GList.

[nullable][transfer full][content-type GcalEvent]


gcal_manager_get_loading ()

gboolean
gcal_manager_get_loading (GcalManager *self);

Retrieves whether self is still loading or not. Loading is complete when the Online Accounts client is retrieved, and all the calendars are loaded.

Parameters

self

a GcalManager

 

Returns

TRUE if manager is still loading; FALSE otherwise


gcal_manager_get_goa_client ()

GoaClient *
gcal_manager_get_goa_client (GcalManager *self);

Retrieves the GoaClient connected by self .

Parameters

self

a GcalManager

 

Returns

a GoaClient.

[transfer none]


gcal_manager_get_event_from_shell_search ()

GcalEvent *
gcal_manager_get_event_from_shell_search
                               (GcalManager *self,
                                const gchar *uuid);

Retrieves the GcalEvent with uuid .

Parameters

self

a GcalManager

 

uuid

the unique identier of the event

 

Returns

a GcalEvent.

[nullable][transfer full]


gcal_manager_setup_shell_search ()

void
gcal_manager_setup_shell_search (GcalManager *self,
                                 ECalDataModelSubscriber *subscriber);

Sets up the GNOME Shell search subscriber.

Parameters

self

a GcalManager

 

subscriber

an ECalDataModelSubscriber

 

gcal_manager_set_shell_search_query ()

void
gcal_manager_set_shell_search_query (GcalManager *self,
                                     const gchar *query);

Set the query terms of the ECalDataModel used in the shell search

Parameters

self

A GcalManager instance

 

query

query string (an s-exp)

 

gcal_manager_set_shell_search_subscriber ()

void
gcal_manager_set_shell_search_subscriber
                               (GcalManager *self,
                                ECalDataModelSubscriber *subscriber,
                                time_t range_start,
                                time_t range_end);

Subscribe subscriber to the shell data modal at the given range.

Parameters

self

a GcalManager

 

subscriber

the ECalDataModelSubscriber to subscribe

 

range_start

the start of the range

 

range_end

the end of the range

 

gcal_manager_shell_search_done ()

gboolean
gcal_manager_shell_search_done (GcalManager *self);

Retrieves whether the search at self is done or not.

Parameters

self

a GcalManager

 

Returns

TRUE if the search is finished.


gcal_manager_get_shell_search_events ()

GList *
gcal_manager_get_shell_search_events (GcalManager *self);

Retrieves all the events available for GNOME Shell search.

Parameters

self

a GcalManager

 

Returns

a GList.

[nullable][transfer full][content-type GcalEvent]

Types and Values

GCAL_TYPE_MANAGER

#define GCAL_TYPE_MANAGER                                        (gcal_manager_get_type ())

GcalManager

typedef struct _GcalManager GcalManager;

Property Details

The “default-calendar” property

  “default-calendar”         ESource *

The default calendar.

Flags: Read / Write


The “loading” property

  “loading”                  gboolean

Whether the manager is loading or not.

Flags: Read

Default value: TRUE


The “settings” property

  “settings”                 GSettings *

The settings.

Flags: Read

Signal Details

The “query-completed” signal

void
user_function (GcalManager *gcalmanager,
               gpointer     user_data)

Flags: Run Last


The “source-added” signal

void
user_function (GcalManager *gcalmanager,
               gpointer     arg1,
               gboolean     arg2,
               gpointer     user_data)

Flags: Run Last


The “source-changed” signal

void
user_function (GcalManager *gcalmanager,
               ESource     *arg1,
               gpointer     user_data)

Flags: Run Last


The “source-enabled” signal

void
user_function (GcalManager *gcalmanager,
               ESource     *arg1,
               gboolean     arg2,
               gpointer     user_data)

Flags: Run Last


The “source-removed” signal

void
user_function (GcalManager *gcalmanager,
               gpointer     arg1,
               gpointer     user_data)

Flags: Run Last