IBusConfigService

## IBusConfigService IBusConfigService — Configuration service back-end. |

## Stability Level

Stable, unless otherwise indicated

## Synopsis

                        IBusConfigService;
                        IBusConfigServiceClass;
    IBusConfigService * ibus_config_service_new             (IBusConnection *connection);
    void                ibus_config_service_value_changed   (IBusConfigService *config,
                                                             const gchar *section,
                                                             const gchar *name,
                                                             const GValue *value);

## Object Hierarchy

      GObject
       +----GInitiallyUnowned
             +----IBusObject
                   +----IBusService
                         +----IBusConfigService

## Properties

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

## Description

An IBusConfigService is a base class for other configuration services such as GConf. Currently, directly known sub class is IBusConfigGConf.

IBusConfigServiceClass has following member functions:

- gboolean set_value(IBusConfigService *config, const gchar *section, const gchar *name, const GValue *value, IBusError **error)

  config: | A configure service
  section: | Section name of the configuration option.
  name: | Name of the configuration option.
  value: | GValue that holds the value.
  error: | Error outputs here.
  Returns: | TRUE if succeed; FALSE otherwise.

  Set a value to a configuration option.

- gboolean get_value(IBusConfigService *config, const gchar *section, const gchar *name, GValue *value, IBusError **error)

  config: | A configure service
  section: | Section name of the configuration option.
  name: | Name of the configuration option.
  value: | GValue that holds the value.
  error: | Error outputs here.
  Returns: | TRUE if succeed; FALSE otherwise.

  Get value of a configuration option.

- gboolean unset(IBusConfigService *config, const gchar *section, const gchar *name, IBusError **error)

  config: | A configure service
  section: | Section name of the configuration option.
  name: | Name of the configuration option.
  error: | Error outputs here.
  Returns: | TRUE if succeed; FALSE otherwise.

  Remove an entry to a configuration option.

## Details

### IBusConfigService

    typedef struct _IBusConfigService IBusConfigService;

An opaque data type representing a configure service.

### IBusConfigServiceClass

    typedef struct {
        IBusServiceClass parent;

        /* class members */
        gboolean    (* set_value) (IBusConfigService    *config,
                                   const gchar          *section,
                                   const gchar          *name,
                                   const GValue         *value,
                                   IBusError           **error);
        gboolean    (* get_value) (IBusConfigService    *config,
                                   const gchar          *section,
                                   const gchar          *name,
                                   GValue               *value,
                                   IBusError           **error);
        gboolean    (* unset)     (IBusConfigService    *config,
                                   const gchar          *section,
                                   const gchar          *name,
                                   IBusError           **error);
    } IBusConfigServiceClass;

### ibus_config_service_new ()

    IBusConfigService * ibus_config_service_new             (IBusConnection *connection);

New an IBusConfigService from an IBusConnection.

`connection` : | An IBusConnection.
Returns : | A newly allocated IBusConfigServices.

### ibus_config_service_value_changed ()

    void                ibus_config_service_value_changed   (IBusConfigService *config,
                                                             const gchar *section,
                                                             const gchar *name,
                                                             const GValue *value);

Change a value of a configuration option by sending a "ValueChanged" message to IBus service.

`config` : | An IBusConfigService.
`section` : | Section name of the configuration option.
`name` : | Name of the configure option.
`value` : | GValue that holds the value.

## Property Details

### The `"connection"` property

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

Connection of this IBusConfigService.