Constructor

GioSettingsnew_full

since: 2.32

Declaration

GSettings*
g_settings_new_full (
  GSettingsSchema* schema,
  GSettingsBackend* backend,
  const gchar* path
)

Description

Creates a new GSettings object with a given schema, backend and path.

It should be extremely rare that you ever want to use this function. It is made available for advanced use-cases (such as plugin systems that want to provide access to schemas loaded from custom locations, etc).

At the most basic level, a GSettings object is a pure composition of 4 things: a GSettingsSchema, a GSettingsBackend, a path within that backend, and a GMainContext to which signals are dispatched.

This constructor therefore gives you full control over constructing GSettings instances. The first 3 parameters are given directly as schema, backend and path, and the main context is taken from the thread-default (as per g_settings_new()).

If backend is NULL then the default backend is used.

If path is NULL then the path from the schema is used. It is an error if path is NULL and the schema has no path of its own or if path is non-NULL and not equal to the path that the schema does have.

Available since: 2.32

Parameters

schema

Type: GSettingsSchema

A GSettingsSchema.

The data is owned by the caller of the function.
backend

Type: GSettingsBackend

A GSettingsBackend.

The argument can be NULL.
The data is owned by the caller of the function.
path

Type: const gchar*

The path to use.

The argument can be NULL.
The data is owned by the caller of the function.
The value is a NUL terminated UTF-8 string.

Return value

Type: GSettings

A new GSettings object.

The caller of the function takes ownership of the data, and is responsible for freeing it.