keyfileSettingsBackendNew

fun keyfileSettingsBackendNew(filename: String, rootPath: String, rootGroup: String? = null): SettingsBackend

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

Return

a keyfile-backed #GSettingsBackend

Parameters

filename

the filename of the keyfile

rootPath

the path under which all settings keys appear

rootGroup

the group name corresponding to @root_path, or null