Function
Giokeyfile_settings_backend_new
Declaration [src]
GSettingsBackend*
g_keyfile_settings_backend_new (
const gchar* filename,
const gchar* root_path,
const gchar* root_group
)
Description [src]
Creates a keyfile-backed GSettingsBackend
.
The filename of the keyfile to use is given by filename
.
All settings read to or written from the backend must fall under the
path given in root_path
(which must start and end with a slash and
not contain two consecutive slashes). root_path
may be “/”.
If root_group
is non-NULL
then it specifies the name of the keyfile
group used for keys that are written directly below root_path
. For
example, if root_path
is “/apps/example/” and root_group
is
“toplevel”, then settings the key “/apps/example/enabled” to a value
of TRUE
will cause the following to appear in the keyfile:
[toplevel]
enabled=true
If root_group
is NULL
then it is not permitted to store keys
directly below the root_path
.
For keys not stored directly below root_path
(ie: in a sub-path),
the name of the subpath (with the final slash stripped) is used as
the name of the keyfile group. To continue the example, if
“/apps/example/profiles/default/font-size” were set to
12 then the following would appear in the keyfile:
[profiles/default]
font-size=12
The backend will refuse writes (and return writability as being
FALSE
) for keys outside of root_path
and, in the event that
root_group
is NULL
, also for keys directly under root_path
.
Writes will also be refused if the backend detects that it has the
inability to rewrite the keyfile (ie: the containing directory is not writable).
There is no checking done for your key namespace clashing with the syntax of the key file format. For example, if you have ‘[‘ or ‘]’ characters in your path names or ‘=’ in your key names you may be in trouble.
The backend reads default values from a keyfile called defaults
in
the directory specified by the GKeyfileSettingsBackend:defaults-dir
property,
and a list of locked keys from a text file with the name locks
in
the same location.
Parameters
filename
-
Type:
const gchar*
The filename of the keyfile.
The data is owned by the caller of the function. The value is a NUL terminated UTF-8 string. root_path
-
Type:
const gchar*
The path under which all settings keys appear.
The data is owned by the caller of the function. The value is a NUL terminated UTF-8 string. root_group
-
Type:
const gchar*
The group name corresponding to
root_path
, orNULL
.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: GSettingsBackend
A keyfile-backed GSettingsBackend
.
The caller of the function takes ownership of the data, and is responsible for freeing it. |