SettingsBackend

open class SettingsBackend(pointer: <Error class: unknown class><<Error class: unknown class>>)

The GSettingsBackend interface defines a generic interface for non-strictly-typed data that is stored in a hierarchy. To implement an alternative storage backend for class@Gio.Settings, you need to implement the GSettingsBackend interface and then make it implement the extension point G_SETTINGS_BACKEND_EXTENSION_POINT_NAME.

The interface defines methods for reading and writing values, a method for determining if writing of certain values will fail (lockdown) and a change notification mechanism.

The semantics of the interface are very precisely defined and implementations must carefully adhere to the expectations of callers that are documented on each of the interface methods.

Some of the GSettingsBackend functions accept or return a struct@GLib.Tree. These trees always have strings as keys and struct@GLib.Variant as values.

The GSettingsBackend API is exported to allow third-party implementations, but does not carry the same stability guarantees as the public GIO API. For this reason, you have to define the C preprocessor symbol G_SETTINGS_ENABLE_BACKEND before including gio/gsettingsbackend.h.

Skipped during bindings generation

  • parameter path: path: Out parameter is not supported

Constructors

Link copied to clipboard
constructor(pointer: <Error class: unknown class><<Error class: unknown class>>)

Types

Link copied to clipboard
object Companion

Properties

Link copied to clipboard
val gioSettingsBackendPointer: <Error class: unknown class><<Error class: unknown class>>

Functions

Link copied to clipboard
open fun changed(key: String, originTag: <Error class: unknown class>? = null)

Signals that a single key has possibly changed. Backend implementations should call this if a key has possibly changed its value.

Link copied to clipboard
open fun changedTree(tree: <Error class: unknown class>, originTag: <Error class: unknown class>? = null)

This call is a convenience wrapper. It gets the list of changes from

Link copied to clipboard
open fun keysChanged(path: String, items: List<String>, originTag: <Error class: unknown class>? = null)

Signals that a list of keys have possibly changed. Backend implementations should call this if keys have possibly changed their values.

Link copied to clipboard
open fun pathChanged(path: String, originTag: <Error class: unknown class>? = null)

Signals that all keys below a given path may have possibly changed. Backend implementations should call this if an entire path of keys have possibly changed their values.

Link copied to clipboard
open fun pathWritableChanged(path: String)

Signals that the writability of all keys below a given path may have changed.

Link copied to clipboard
open fun writableChanged(key: String)

Signals that the writability of a single key has possibly changed.