## EDataCalView

EDataCalView — Implementation of the calendar CORBA search interface.

## Synopsis

    EDataCalView *      e_data_cal_view_new                 (ECalBackend *backend,
                                                             ECalBackendSExp *sexp);
    guint               e_data_cal_view_register_gdbus_object
                                                            (EDataCalView *view,
                                                             GDBusConnection *connection,
                                                             const gchar *object_path,
                                                             GError **error);
    const gchar *       e_data_cal_view_get_text            (EDataCalView *view);
    ECalBackendSExp *   e_data_cal_view_get_object_sexp     (EDataCalView *view);
    gboolean            e_data_cal_view_object_matches      (EDataCalView *view,
                                                             const gchar *object);
    gboolean            e_data_cal_view_is_started          (EDataCalView *view);
    gboolean            e_data_cal_view_is_completed        (EDataCalView *view);
    gboolean            e_data_cal_view_is_stopped          (EDataCalView *view);
    GHashTable *        e_data_cal_view_get_fields_of_interest
                                                            (EDataCalView *view);
    void                e_data_cal_view_notify_objects_added
                                                            (EDataCalView *view,
                                                             const GSList *objects);
    void                e_data_cal_view_notify_objects_added_1
                                                            (EDataCalView *view,
                                                             const gchar *object);
    void                e_data_cal_view_notify_objects_modified
                                                            (EDataCalView *view,
                                                             const GSList *objects);
    void                e_data_cal_view_notify_objects_modified_1
                                                            (EDataCalView *view,
                                                             const gchar *object);
    void                e_data_cal_view_notify_objects_removed
                                                            (EDataCalView *view,
                                                             const GSList *ids);
    void                e_data_cal_view_notify_objects_removed_1
                                                            (EDataCalView *view,
                                                             const ECalComponentId *id);
    void                e_data_cal_view_notify_progress     (EDataCalView *view,
                                                             gint percent,
                                                             const gchar *message);
    void                e_data_cal_view_notify_complete     (EDataCalView *view,
                                                             const GError *error);

## Description

## Details

### e_data_cal_view_new ()

    EDataCalView *      e_data_cal_view_new                 (ECalBackend *backend,
                                                             ECalBackendSExp *sexp);

### e_data_cal_view_register_gdbus_object ()

    guint               e_data_cal_view_register_gdbus_object
                                                            (EDataCalView *view,
                                                             GDBusConnection *connection,
                                                             const gchar *object_path,
                                                             GError **error);

Since 2.32

### e_data_cal_view_get_text ()

    const gchar *       e_data_cal_view_get_text            (EDataCalView *view);

Get the expression used for the given view.

`view` : | A EDataCalView object.
Returns : | the view expression used to search.

### e_data_cal_view_get_object_sexp ()

    ECalBackendSExp *   e_data_cal_view_get_object_sexp     (EDataCalView *view);

Get the ECalBackendSExp object used for the given view.

`view` : | A view object.
Returns : | The expression object used to search.

### e_data_cal_view_object_matches ()

    gboolean            e_data_cal_view_object_matches      (EDataCalView *view,
                                                             const gchar *object);

Compares the given `object` to the regular expression used for the given view.

`view` : | A view object.
`object` : | Object to match.
Returns : | TRUE if the object matches the expression, FALSE if not.

### e_data_cal_view_is_started ()

    gboolean            e_data_cal_view_is_started          (EDataCalView *view);

Checks whether the given view has already been started.

`view` : | A view object.
Returns : | TRUE if the view has already been started, FALSE otherwise.

### e_data_cal_view_is_completed ()

    gboolean            e_data_cal_view_is_completed        (EDataCalView *view);

Checks whether the given view is already completed. Being completed means the initial matching of objects have been finished, not that no more notifications about changes will be sent. In fact, even after completed, notifications will still be sent if there are changes in the objects matching the view search expression.

`view` : | A view object.
Returns : | TRUE if the view is completed, FALSE if still in progress.

Since 3.2

### e_data_cal_view_is_stopped ()

    gboolean            e_data_cal_view_is_stopped          (EDataCalView *view);

Checks whether the given view has been stopped.

`view` : | A view object.
Returns : | TRUE if the view has been stopped, FALSE otherwise.

Since 2.32

### e_data_cal_view_get_fields_of_interest ()

    GHashTable *        e_data_cal_view_get_fields_of_interest
                                                            (EDataCalView *view);

`view` : | A view object.
Returns : | Hash table of field names which the listener is interested in. Backends can return fully populated objects, but the listener advertised that it will use only these. Returns `NULL` for all available fields. Note: The data pointer in the hash table has no special meaning, it's only GINT_TO_POINTER(1) for easier checking. Also, field names are compared case insensitively.

Since 3.2

### e_data_cal_view_notify_objects_added ()

    void                e_data_cal_view_notify_objects_added
                                                            (EDataCalView *view,
                                                             const GSList *objects);

Notifies all view listeners of the addition of a list of objects.

`view` : | A view object.
`objects` : | List of objects that have been added.

### e_data_cal_view_notify_objects_added_1 ()

    void                e_data_cal_view_notify_objects_added_1
                                                            (EDataCalView *view,
                                                             const gchar *object);

Notifies all the view listeners of the addition of a single object.

`view` : | A view object.
`object` : | The object that has been added.

### e_data_cal_view_notify_objects_modified ()

    void                e_data_cal_view_notify_objects_modified
                                                            (EDataCalView *view,
                                                             const GSList *objects);

Notifies all view listeners of the modification of a list of objects.

`view` : | A view object.
`objects` : | List of modified objects.

### e_data_cal_view_notify_objects_modified_1 ()

    void                e_data_cal_view_notify_objects_modified_1
                                                            (EDataCalView *view,
                                                             const gchar *object);

Notifies all view listeners of the modification of a single object.

`view` : | A view object.
`object` : | The modified object.

### e_data_cal_view_notify_objects_removed ()

    void                e_data_cal_view_notify_objects_removed
                                                            (EDataCalView *view,
                                                             const GSList *ids);

Notifies all view listener of the removal of a list of objects.

`view` : | A view object.
`ids` : | List of IDs for the objects that have been removed.

### e_data_cal_view_notify_objects_removed_1 ()

    void                e_data_cal_view_notify_objects_removed_1
                                                            (EDataCalView *view,
                                                             const ECalComponentId *id);

Notifies all view listener of the removal of a single object.

`view` : | A view object.
`id` : | ID of the removed object.

### e_data_cal_view_notify_progress ()

    void                e_data_cal_view_notify_progress     (EDataCalView *view,
                                                             gint percent,
                                                             const gchar *message);

Notifies all view listeners of progress messages.

`view` : | A view object.
`percent` : | Percentage completed.
`message` : | Progress message to send to listeners.

### e_data_cal_view_notify_complete ()

    void                e_data_cal_view_notify_complete     (EDataCalView *view,
                                                             const GError *error);

Notifies all view listeners of the completion of the view, including a status code.

`view` : | A view object.
`error` : | View completion error, if any.

Since 3.2