gboolean eel_gconf_is_default (const char *key) { gboolean result; GConfValue *value; GError *error = NULL; g_return_val_if_fail (key != NULL, FALSE); value = gconf_client_get_without_default (eel_gconf_client_get_global (), key, &error); if (eel_gconf_handle_error (&error)) { if (value != NULL) { gconf_value_free (value); } return FALSE; } result = (value == NULL); if (value != NULL) { gconf_value_free (value); } return result; }
guint eel_gconf_notification_add (const char *key, GConfClientNotifyFunc notification_callback, gpointer callback_data) { guint notification_id; GConfClient *client; GError *error = NULL; g_return_val_if_fail (key != NULL, EEL_GCONF_UNDEFINED_CONNECTION); g_return_val_if_fail (notification_callback != NULL, EEL_GCONF_UNDEFINED_CONNECTION); client = eel_gconf_client_get_global (); g_return_val_if_fail (client != NULL, EEL_GCONF_UNDEFINED_CONNECTION); notification_id = gconf_client_notify_add (client, key, notification_callback, callback_data, NULL, &error); if (eel_gconf_handle_error (&error)) { if (notification_id != EEL_GCONF_UNDEFINED_CONNECTION) { gconf_client_notify_remove (client, notification_id); notification_id = EEL_GCONF_UNDEFINED_CONNECTION; } } return notification_id; }
void eel_gconf_suggest_sync (void) { GConfClient *client; GError *error = NULL; client = eel_gconf_client_get_global (); g_return_if_fail (client != NULL); gconf_client_suggest_sync (client, &error); eel_gconf_handle_error (&error); }
void eel_gconf_unset (const char *key) { GConfClient *client; GError *error = NULL; g_return_if_fail (key != NULL); client = eel_gconf_client_get_global (); g_return_if_fail (client != NULL); gconf_client_unset (client, key, &error); eel_gconf_handle_error (&error); }
void eel_gconf_set_string (const char *key, const char *string_value) { GConfClient *client; GError *error = NULL; g_return_if_fail (key != NULL); client = eel_gconf_client_get_global (); g_return_if_fail (client != NULL); gconf_client_set_string (client, key, string_value, &error); eel_gconf_handle_error (&error); }
gboolean eel_gconf_key_is_writable (const char *key) { gboolean result; GError *error = NULL; g_return_val_if_fail (key != NULL, FALSE); result = gconf_client_key_is_writable (eel_gconf_client_get_global (), key, &error); if (eel_gconf_handle_error (&error)) { return result; } return result; }
void eel_gconf_set_value (const char *key, GConfValue *value) { GConfClient *client; GError *error = NULL; g_return_if_fail (key != NULL); client = eel_gconf_client_get_global (); g_return_if_fail (client != NULL); gconf_client_set (client, key, value, &error); if (eel_gconf_handle_error (&error)) { return; } }
/* This code wasn't part of the original eel-gconf-extensions.c */ void eel_gconf_recursive_unset (const char *key) { GConfClient *client; GError *error = NULL; g_return_if_fail (key != NULL); client = eel_gconf_client_get_global (); g_return_if_fail (client != NULL); gconf_client_recursive_unset (client, key, GCONF_UNSET_INCLUDING_SCHEMA_NAMES, &error); eel_gconf_handle_error (&error); }
void eel_gconf_set_string_list (const char *key, const GSList *slist) { GConfClient *client; GError *error; g_return_if_fail (key != NULL); client = eel_gconf_client_get_global (); g_return_if_fail (client != NULL); error = NULL; gconf_client_set_list (client, key, GCONF_VALUE_STRING, /* Need cast cause of GConf api bug */ (GSList *) slist, &error); eel_gconf_handle_error (&error); }
GSList * eel_gconf_get_string_list (const char *key) { GSList *slist; GConfClient *client; GError *error; g_return_val_if_fail (key != NULL, NULL); client = eel_gconf_client_get_global (); g_return_val_if_fail (client != NULL, NULL); error = NULL; slist = gconf_client_get_list (client, key, GCONF_VALUE_STRING, &error); if (eel_gconf_handle_error (&error)) { slist = NULL; } return slist; }
gboolean eel_gconf_get_boolean (const char *key) { gboolean result; GConfClient *client; GError *error = NULL; g_return_val_if_fail (key != NULL, FALSE); client = eel_gconf_client_get_global (); g_return_val_if_fail (client != NULL, FALSE); result = gconf_client_get_bool (client, key, &error); if (eel_gconf_handle_error (&error)) { result = FALSE; } return result; }
int eel_gconf_get_integer (const char *key) { int result; GConfClient *client; GError *error = NULL; g_return_val_if_fail (key != NULL, 0); client = eel_gconf_client_get_global (); g_return_val_if_fail (client != NULL, 0); result = gconf_client_get_int (client, key, &error); if (eel_gconf_handle_error (&error)) { result = 0; } return result; }
char * eel_gconf_get_string (const char *key) { char *result; GConfClient *client; GError *error = NULL; g_return_val_if_fail (key != NULL, NULL); client = eel_gconf_client_get_global (); g_return_val_if_fail (client != NULL, NULL); result = gconf_client_get_string (client, key, &error); if (eel_gconf_handle_error (&error)) { result = g_strdup (""); } return result; }
void eel_gconf_preload_cache (const char *directory, GConfClientPreloadType preload_type) { GError *error = NULL; GConfClient *client; if (directory == NULL) { return; } client = eel_gconf_client_get_global (); g_return_if_fail (client != NULL); gconf_client_preload (client, directory, preload_type, &error); eel_gconf_handle_error (&error); }
/* Public */ GConfClient * eel_gconf_client_get_global (void) { /* Initialize gconf if needed */ if (!gconf_is_initialized ()) { char *argv[] = { "eel-preferences", NULL }; GError *error = NULL; if (!gconf_init (1, argv, &error)) { if (eel_gconf_handle_error (&error)) { return NULL; } } } if (global_gconf_client == NULL) { global_gconf_client = gconf_client_get_default (); eel_debug_call_at_shutdown (global_client_free); } return global_gconf_client; }
gboolean eel_gconf_monitor_add (const char *directory) { GError *error = NULL; GConfClient *client; g_return_val_if_fail (directory != NULL, FALSE); client = eel_gconf_client_get_global (); g_return_val_if_fail (client != NULL, FALSE); gconf_client_add_dir (client, directory, GCONF_CLIENT_PRELOAD_NONE, &error); if (eel_gconf_handle_error (&error)) { return FALSE; } return TRUE; }
GConfValue* eel_gconf_get_default_value (const char *key) { GConfValue *value = NULL; GConfClient *client; GError *error = NULL; g_return_val_if_fail (key != NULL, NULL); client = eel_gconf_client_get_global (); g_return_val_if_fail (client != NULL, NULL); value = gconf_client_get_default_from_schema (client, key, &error); if (eel_gconf_handle_error (&error)) { if (value != NULL) { gconf_value_free (value); value = NULL; } } return value; }
gboolean eel_gconf_monitor_remove (const char *directory) { GError *error = NULL; GConfClient *client; if (directory == NULL) { return FALSE; } client = eel_gconf_client_get_global (); g_return_val_if_fail (client != NULL, FALSE); gconf_client_remove_dir (client, directory, &error); if (eel_gconf_handle_error (&error)) { return FALSE; } return TRUE; }