## gconf-sources gconf-sources |

## Synopsis

    struct              GConfSource;
    enum                GConfSourceFlags;
    GConfSource *       gconf_resolve_address               (const gchar *address,
                                                             GError **err);
    void                gconf_source_free                   (GConfSource *source);
    struct              GConfSources;
    GConfSources *      gconf_sources_new_from_addresses    (GSList *addresses,
                                                             GError **err);
    GConfSources *      gconf_sources_new_from_source       (GConfSource *source);
    void                gconf_sources_free                  (GConfSources *sources);
    GConfValue *        gconf_sources_query_value           (GConfSources *sources,
                                                             const gchar *key,
                                                             const gchar **locales,
                                                             gboolean use_schema_default,
                                                             gboolean *value_is_default,
                                                             gboolean *value_is_writable,
                                                             gchar **schema_name,
                                                             GError **err);
    void                gconf_sources_set_value             (GConfSources *sources,
                                                             const gchar *key,
                                                             const GConfValue *value,
                                                             GConfSources **modified_sources,
                                                             GError **err);
    void                gconf_sources_unset_value           (GConfSources *sources,
                                                             const gchar *key,
                                                             const gchar *locale,
                                                             GConfSources **modified_sources,
                                                             GError **err);
    GSList *            gconf_sources_all_entries           (GConfSources *sources,
                                                             const gchar *dir,
                                                             const gchar **locales,
                                                             GError **err);
    GSList *            gconf_sources_all_dirs              (GConfSources *sources,
                                                             const gchar *dir,
                                                             GError **err);
    gboolean            gconf_sources_dir_exists            (GConfSources *sources,
                                                             const gchar *dir,
                                                             GError **err);
    void                gconf_sources_remove_dir            (GConfSources *sources,
                                                             const gchar *dir,
                                                             GError **err);
    void                gconf_sources_set_schema            (GConfSources *sources,
                                                             const gchar *key,
                                                             const gchar *schema_key,
                                                             GError **err);
    gboolean            gconf_sources_sync_all              (GConfSources *sources,
                                                             GError **err);
    GConfMetaInfo *     gconf_sources_query_metainfo        (GConfSources *sources,
                                                             const gchar *key,
                                                             GError **err);
    GConfValue *        gconf_sources_query_default_value   (GConfSources *sources,
                                                             const gchar *key,
                                                             const gchar **locales,
                                                             gboolean *is_writable,
                                                             GError **err);

## Description

## Details

### struct GConfSource

    struct GConfSource {
      guint flags;
      gchar* address;
      GConfBackend* backend;
    };

### enum GConfSourceFlags

    typedef enum {
      /* These are an optimization to avoid calls to
       * the writable/readable methods in the backend
       * vtable
       */
      GCONF_SOURCE_ALL_WRITEABLE = 1 << 0,
      GCONF_SOURCE_ALL_READABLE = 1 << 1,
      GCONF_SOURCE_NEVER_WRITEABLE = 1 << 2,
      GCONF_SOURCE_ALL_FLAGS = ((1 << 0) | (1 << 1))
    } GConfSourceFlags;

`GCONF_SOURCE_ALL_WRITEABLE` |
`GCONF_SOURCE_ALL_READABLE` |
`GCONF_SOURCE_NEVER_WRITEABLE` |
`GCONF_SOURCE_ALL_FLAGS` |

### gconf_resolve_address ()

    GConfSource *       gconf_resolve_address               (const gchar *address,
                                                             GError **err);

### gconf_source_free ()

    void                gconf_source_free                   (GConfSource *source);

### struct GConfSources

    struct GConfSources {
      GList* sources;
    };

### gconf_sources_new_from_addresses ()

    GConfSources *      gconf_sources_new_from_addresses    (GSList *addresses,
                                                             GError **err);

### gconf_sources_new_from_source ()

    GConfSources *      gconf_sources_new_from_source       (GConfSource *source);

### gconf_sources_free ()

    void                gconf_sources_free                  (GConfSources *sources);

### gconf_sources_query_value ()

    GConfValue *        gconf_sources_query_value           (GConfSources *sources,
                                                             const gchar *key,
                                                             const gchar **locales,
                                                             gboolean use_schema_default,
                                                             gboolean *value_is_default,
                                                             gboolean *value_is_writable,
                                                             gchar **schema_name,
                                                             GError **err);

### gconf_sources_set_value ()

    void                gconf_sources_set_value             (GConfSources *sources,
                                                             const gchar *key,
                                                             const GConfValue *value,
                                                             GConfSources **modified_sources,
                                                             GError **err);

### gconf_sources_unset_value ()

    void                gconf_sources_unset_value           (GConfSources *sources,
                                                             const gchar *key,
                                                             const gchar *locale,
                                                             GConfSources **modified_sources,
                                                             GError **err);

### gconf_sources_all_entries ()

    GSList *            gconf_sources_all_entries           (GConfSources *sources,
                                                             const gchar *dir,
                                                             const gchar **locales,
                                                             GError **err);

### gconf_sources_all_dirs ()

    GSList *            gconf_sources_all_dirs              (GConfSources *sources,
                                                             const gchar *dir,
                                                             GError **err);

### gconf_sources_dir_exists ()

    gboolean            gconf_sources_dir_exists            (GConfSources *sources,
                                                             const gchar *dir,
                                                             GError **err);

### gconf_sources_remove_dir ()

    void                gconf_sources_remove_dir            (GConfSources *sources,
                                                             const gchar *dir,
                                                             GError **err);

### gconf_sources_set_schema ()

    void                gconf_sources_set_schema            (GConfSources *sources,
                                                             const gchar *key,
                                                             const gchar *schema_key,
                                                             GError **err);

### gconf_sources_sync_all ()

    gboolean            gconf_sources_sync_all              (GConfSources *sources,
                                                             GError **err);

### gconf_sources_query_metainfo ()

    GConfMetaInfo *     gconf_sources_query_metainfo        (GConfSources *sources,
                                                             const gchar *key,
                                                             GError **err);

### gconf_sources_query_default_value ()

    GConfValue *        gconf_sources_query_default_value   (GConfSources *sources,
                                                             const gchar *key,
                                                             const gchar **locales,
                                                             gboolean *is_writable,
                                                             GError **err);