## ECalClientView ECalClientView |

## Synopsis

    struct              ECalClientView;
    struct _ECalClient * e_cal_client_view_ref_client       (ECalClientView *client_view);
    GDBusConnection *   e_cal_client_view_get_connection    (ECalClientView *client_view);
    const gchar *       e_cal_client_view_get_object_path   (ECalClientView *client_view);
    gboolean            e_cal_client_view_is_running        (ECalClientView *client_view);
    void                e_cal_client_view_set_fields_of_interest
                                                            (ECalClientView *client_view,
                                                             const GSList *fields_of_interest,
                                                             GError **error);
    void                e_cal_client_view_start             (ECalClientView *client_view,
                                                             GError **error);
    void                e_cal_client_view_stop              (ECalClientView *client_view,
                                                             GError **error);
    enum                ECalClientViewFlags;
    void                e_cal_client_view_set_flags         (ECalClientView *client_view,
                                                             ECalClientViewFlags flags,
                                                             GError **error);

    struct _ECalClient * e_cal_client_view_get_client       (ECalClientView *client_view);

## Object Hierarchy

      GObject
       +----ECalClientView

## Implemented Interfaces

ECalClientView implements GInitable.

## Properties

      "client"                   ECalClient*           : Read / Write / Construct Only
      "connection"               GDBusConnection*      : Read / Write / Construct Only
      "object-path"              gchar*                : Read / Write / Construct Only

## Signals

      "complete"                                       : Run First
      "objects-added"                                  : Run First
      "objects-modified"                               : Run First
      "objects-removed"                                : Run First
      "progress"                                       : Run First

## Description

## Details

### struct ECalClientView

    struct ECalClientView;

Contains only private data that should be read and manipulated using the functions below.

Since 3.2

### e_cal_client_view_ref_client ()

    struct _ECalClient * e_cal_client_view_ref_client       (ECalClientView *client_view);

Returns the "client" associated with `client_view`.

The returned ECalClient is referenced for thread-safety. Unreference the ECalClient with `g_object_unref()` when finished with it.

`client_view` : | an ECalClientView
Returns : | an ECalClient

Since 3.10

### e_cal_client_view_get_connection ()

    GDBusConnection *   e_cal_client_view_get_connection    (ECalClientView *client_view);

Returns the GDBusConnection used to create the D-Bus proxy.

`client_view` : | an ECalClientView
Returns : | the GDBusConnection. [transfer none]

Since 3.8

### e_cal_client_view_get_object_path ()

    const gchar *       e_cal_client_view_get_object_path   (ECalClientView *client_view);

Returns the object path used to create the D-Bus proxy.

`client_view` : | an ECalClientView
Returns : | the object path

Since 3.8

### e_cal_client_view_is_running ()

    gboolean            e_cal_client_view_is_running        (ECalClientView *client_view);

Retunrs: Whether view is running. Not running views are ignoring all events sent from the server.

`client_view` : | an ECalClientView

Since 3.2

### e_cal_client_view_set_fields_of_interest ()

    void                e_cal_client_view_set_fields_of_interest
                                                            (ECalClientView *client_view,
                                                             const GSList *fields_of_interest,
                                                             GError **error);

Client can instruct server to which fields it is interested in only, thus the server can return less data over the wire. The server can still return complete objects, this is just a hint to it that the listed fields will be used only. The UID/RID fields are returned always. Initial views has no fields of interest and using `NULL` for `fields_of_interest` will unset any previous changes.

Some backends can use summary information of its cache to create artifical objects, which will omit stored object parsing. If this cannot be done then it will simply return object as is stored in the cache.

`client_view` : | an ECalClientView
`fields_of_interest` : | List of field names in which the client is interested, or `NULL` to reset the fields of interest. [element-type utf8][allow-none]
`error` : | return location for a GError, or `NULL`

### e_cal_client_view_start ()

    void                e_cal_client_view_start             (ECalClientView *client_view,
                                                             GError **error);

Tells `client_view` to start processing events.

`client_view` : | an ECalClientView
`error` : | return location for a GError, or `NULL`

Since 3.2

### e_cal_client_view_stop ()

    void                e_cal_client_view_stop              (ECalClientView *client_view,
                                                             GError **error);

Tells `client_view` to stop processing events.

`client_view` : | an ECalClientView
`error` : | return location for a GError, or `NULL`

Since 3.2

### enum ECalClientViewFlags

    typedef enum {
    	E_CAL_CLIENT_VIEW_FLAGS_NONE           = 0,
    	E_CAL_CLIENT_VIEW_FLAGS_NOTIFY_INITIAL = (1 << 0)
    } ECalClientViewFlags;

Flags that control the behaviour of an ECalClientView.

`E_CAL_CLIENT_VIEW_FLAGS_NONE` | Symbolic value for no flags
`E_CAL_CLIENT_VIEW_FLAGS_NOTIFY_INITIAL` | If this flag is set then all objects matching the view's query will be sent as notifications when starting the view, otherwise only future changes will be reported. The default for a ECalClientView is `TRUE`.

Since 3.6

### e_cal_client_view_set_flags ()

    void                e_cal_client_view_set_flags         (ECalClientView *client_view,
                                                             ECalClientViewFlags flags,
                                                             GError **error);

Sets the `flags` which control the behaviour of `client_view`.

`client_view` : | an ECalClientView
`flags` : | the ECalClientViewFlags for `client_view`
`error` : | return location for a GError, or `NULL`

Since 3.6

### e_cal_client_view_get_client ()

    struct _ECalClient * e_cal_client_view_get_client       (ECalClientView *client_view);

### Warning

`e_cal_client_view_get_client` has been deprecated since version 3.10 and should not be used in newly-written code. Use `e_cal_client_view_ref_client()` instead.

Returns the "client" associated with `client_view`.

`client_view` : | an ECalClientView
Returns : | an ECalClient. [transfer none]

Since 3.2

## Property Details

### The `"client"` property

      "client"                   ECalClient*           : Read / Write / Construct Only

### The `"connection"` property

      "connection"               GDBusConnection*      : Read / Write / Construct Only

The GDBusConnection used to create the D-Bus proxy.

### The `"object-path"` property

      "object-path"              gchar*                : Read / Write / Construct Only

The object path used to create the D-Bus proxy.

Default value: NULL

## Signal Details

### The `"complete"` signal

    void                user_function                      (ECalClientView *ecalclientview,
                                                            GError         *arg1,
                                                            gpointer        user_data)           : Run First

### The `"objects-added"` signal

    void                user_function                      (ECalClientView *client_view,
                                                            gpointer        objects,
                                                            gpointer        user_data)        : Run First

`client_view` : | the ECalClientView which emitted the signal
`objects` : | . [type GSList][transfer none][element-type long]
`user_data` : | user data set when the signal handler was connected.

### The `"objects-modified"` signal

    void                user_function                      (ECalClientView *client_view,
                                                            gpointer        objects,
                                                            gpointer        user_data)        : Run First

`client_view` : | the ECalClientView which emitted the signal
`objects` : | . [type GSList][transfer none][element-type long]
`user_data` : | user data set when the signal handler was connected.

### The `"objects-removed"` signal

    void                user_function                      (ECalClientView *client_view,
                                                            gpointer        objects,
                                                            gpointer        user_data)        : Run First

`client_view` : | the ECalClientView which emitted the signal
`objects` : | . [type GSList][transfer none][element-type ECalComponentId]
`user_data` : | user data set when the signal handler was connected.

### The `"progress"` signal

    void                user_function                      (ECalClientView *ecalclientview,
                                                            guint           arg1,
                                                            gchar          *arg2,
                                                            gpointer        user_data)           : Run First