Пример #1
0
static void
addressbook_model_set_property (GObject *object,
                                guint property_id,
                                const GValue *value,
                                GParamSpec *pspec)
{
	switch (property_id) {
		case PROP_CLIENT:
			e_addressbook_model_set_client (
				E_ADDRESSBOOK_MODEL (object),
				g_value_get_object (value));
			return;

		case PROP_EDITABLE:
			e_addressbook_model_set_editable (
				E_ADDRESSBOOK_MODEL (object),
				g_value_get_boolean (value));
			return;

		case PROP_QUERY:
			e_addressbook_model_set_query (
				E_ADDRESSBOOK_MODEL (object),
				g_value_get_string (value));
			return;
	}

	G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);

}
Пример #2
0
static void
readonly_cb (EBookClient *book_client,
             GParamSpec *pspec,
             EAddressbookModel *model)
{
	gboolean editable;

	editable = !e_client_is_readonly (E_CLIENT (book_client));
	e_addressbook_model_set_editable (model, editable);
}
Пример #3
0
static void
addressbook_model_client_notify_readonly_cb (EClientCache *client_cache,
                                             EClient *client,
                                             GParamSpec *pspec,
                                             EAddressbookModel *model)
{
	if (!E_IS_BOOK_CLIENT (client))
		return;

	if (E_BOOK_CLIENT (client) == model->priv->book_client) {
		gboolean editable = !e_client_is_readonly (client);
		e_addressbook_model_set_editable (model, editable);
	}
}