diff options
Diffstat (limited to 'calendar/cal-client/cal-client.c')
-rw-r--r-- | calendar/cal-client/cal-client.c | 25 |
1 files changed, 23 insertions, 2 deletions
diff --git a/calendar/cal-client/cal-client.c b/calendar/cal-client/cal-client.c index b038c26752..d48a11a7f0 100644 --- a/calendar/cal-client/cal-client.c +++ b/calendar/cal-client/cal-client.c @@ -42,7 +42,7 @@ typedef enum { } LoadState; /* Private part of the CalClient structure */ -typedef struct { +struct _CalClientPrivate { /* Load state to avoid multiple loads */ LoadState load_state; @@ -54,7 +54,7 @@ typedef struct { /* The calendar client interface object we are contacting */ Evolution_Calendar_Cal cal; -} CalClientPrivate; +}; @@ -548,6 +548,27 @@ cal_client_create_calendar (CalClient *client, const char *str_uri) return load_or_create (client, str_uri, FALSE); } +/** + * cal_client_is_loaded: + * @client: A calendar client. + * + * Queries whether a calendar client has been loaded successfully. + * + * Return value: TRUE if the client has been loaded, FALSE if it has not or if + * the loading process is not finished yet. + **/ +gboolean +cal_client_is_loaded (CalClient *client) +{ + CalClientPrivate *priv; + + g_return_val_if_fail (client != NULL, FALSE); + g_return_val_if_fail (IS_CAL_CLIENT (client), FALSE); + + priv = client->priv; + return (priv->load_state == LOAD_STATE_LOADED); +} + /* Converts our representation of a calendar component type into its CORBA representation */ static Evolution_Calendar_CalObjType corba_obj_type (CalObjType type) |