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;
}
Example #2
0
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;
}
Example #3
0
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);
}
Example #5
0
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);
}
Example #6
0
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);
}
Example #9
0
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);
}
Example #10
0
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;
}
Example #11
0
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;
}
Example #12
0
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;
}
Example #13
0
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;
}
Example #14
0
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);
}
Example #15
0
/* 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;
}
Example #16
0
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;
}
Example #17
0
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;
}
Example #18
0
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;
}