Gio::SettingsSchemaKey Class Referencefinal

See SettingsSchema. More...

`#include <giomm/settingsschemakey.h>`

## Public Member Functions

void | reference () const
| Increment the reference count for this object. More...
void | unreference () const
| Decrement the reference count for this object. More...
GSettingsSchemaKey* | gobj ()
| Provides access to the underlying C instance. More...
const GSettingsSchemaKey* | gobj () const
| Provides access to the underlying C instance. More...
GSettingsSchemaKey* | gobj_copy () const
| Provides access to the underlying C instance. The caller is responsible for unrefing it. Use when directly setting fields in structs. More...
| SettingsSchemaKey ()=delete
| SettingsSchemaKey (const SettingsSchemaKey&)=delete
SettingsSchemaKey& | operator= (const SettingsSchemaKey&)=delete
Glib::ustring | get_name () const
| Gets the name of key. More...
Glib::ustring | get_summary () const
| Gets the summary for key. More...
Glib::ustring | get_description () const
| Gets the description for key. More...
Glib::VariantType | get_value_type () const
| Gets the VariantType of key. More...
Glib::VariantBase | get_default_value () const
| Gets the default value for key. More...
Glib::VariantBase | get_range () const
| Queries the range of a key. More...
bool | range_check (const Glib::VariantBase& value) const
| Checks if the given value is of the correct type and within the permitted range for key. More...

## Protected Member Functions

void | operator delete (void*, std::size_t)

## Related Functions

(Note that these are not member functions.)
Glib::RefPtr< Gio::SettingsSchemaKey > | wrap (GSettingsSchemaKey* object, bool take_copy=false)
| A Glib::wrap() method for this object. More...

## Detailed Description

See SettingsSchema.

Since glibmm 2.32:

## Constructor & Destructor Documentation

Gio::SettingsSchemaKey::SettingsSchemaKey | ( |  | ) |

delete

Gio::SettingsSchemaKey::SettingsSchemaKey | ( | const SettingsSchemaKey& |  | ) |

delete

## Member Function Documentation

Glib::VariantBase Gio::SettingsSchemaKey::get_default_value | ( |  | ) | const

Gets the default value for key.

Note that this is the default value according to the schema. System administrator defaults and lockdown are not visible via this API.

Since glibmm 2.40:

Returns
  The default value for the key.

Glib::ustring Gio::SettingsSchemaKey::get_description | ( |  | ) | const

Gets the description for key.

If no description has been provided in the schema for key, returns `nullptr`.

The description can be one sentence to several paragraphs in length. Paragraphs are delimited with a double newline. Descriptions can be translated and the value returned from this function is is the current locale.

This function is slow. The summary and description information for the schemas is not stored in the compiled schema database so this function has to parse all of the source XML files in the schema directory.

Since glibmm 2.34:

Returns
  The description for key, or `nullptr`.

Glib::ustring Gio::SettingsSchemaKey::get_name | ( |  | ) | const

Gets the name of key.

Since glibmm 2.44:

Returns
  The name of key.

Glib::VariantBase Gio::SettingsSchemaKey::get_range | ( |  | ) | const

Queries the range of a key.

This function will return a Variant that fully describes the range of values that are valid for key.

The type of Variant returned is `(sv)`. The string describes the type of range restriction in effect. The type and meaning of the value contained in the variant depends on the string.

If the string is `'type'` then the variant contains an empty array. The element type of that empty array is the expected type of value and all values of that type are valid.

If the string is `'enum'` then the variant contains an array enumerating the possible values. Each item in the array is a possible valid value and no other values are valid.

If the string is `'flags'` then the variant contains an array. Each item in the array is a value that may appear zero or one times in an array to be used as the value for this key. For example, if the variant contained the array `['x', 'y']`then the valid values for the key would be`[]`,`['x']`,`['y']`,`['x', 'y']`and` ['y', 'x']`.

Finally, if the string is `'range'` then the variant contains a pair of like-typed values – the minimum and maximum permissible values for this key.

This information should not be used by normal programs. It is considered to be a hint for introspection purposes. Normal programs should already know what is permitted by their own schema. The format may change in any way in the future – but particularly, new forms may be added to the possibilities described above.

You should free the returned value with Glib::variant_unref() when it is no longer needed.

Since glibmm 2.40:

Returns
  A Variant describing the range.

Glib::ustring Gio::SettingsSchemaKey::get_summary | ( |  | ) | const

Gets the summary for key.

If no summary has been provided in the schema for key, returns `nullptr`.

The summary is a short description of the purpose of the key; usually one short sentence. Summaries can be translated and the value returned from this function is is the current locale.

This function is slow. The summary and description information for the schemas is not stored in the compiled schema database so this function has to parse all of the source XML files in the schema directory.

Since glibmm 2.34:

Returns
  The summary for key, or `nullptr`.

Glib::VariantType Gio::SettingsSchemaKey::get_value_type | ( |  | ) | const

Gets the VariantType of key.

Since glibmm 2.40:

Returns
  The type of key.

GSettingsSchemaKey* Gio::SettingsSchemaKey::gobj | ( |  | ) |

Provides access to the underlying C instance.

const GSettingsSchemaKey* Gio::SettingsSchemaKey::gobj | ( |  | ) | const

Provides access to the underlying C instance.

GSettingsSchemaKey* Gio::SettingsSchemaKey::gobj_copy | ( |  | ) | const

Provides access to the underlying C instance. The caller is responsible for unrefing it. Use when directly setting fields in structs.

void Gio::SettingsSchemaKey::operator delete | ( | void * | ,
|  | std::size_t |
| ) |  |

protected

SettingsSchemaKey& Gio::SettingsSchemaKey::operator= | ( | const SettingsSchemaKey& |  | ) |

delete

bool Gio::SettingsSchemaKey::range_check | ( | const Glib::VariantBase& | value | ) | const

Checks if the given value is of the correct type and within the permitted range for key.

It is a programmer error if value is not of the correct type – you must check for this first.

Since glibmm 2.40:

Parameters

  value | The value to check.

Returns
  `true` if value is valid for key.

void Gio::SettingsSchemaKey::reference | ( |  | ) | const

Increment the reference count for this object.

You should never need to do this manually - use the object via a RefPtr instead.

void Gio::SettingsSchemaKey::unreference | ( |  | ) | const

Decrement the reference count for this object.

You should never need to do this manually - use the object via a RefPtr instead.

## Friends And Related Function Documentation

Glib::RefPtr< Gio::SettingsSchemaKey > wrap | ( | GSettingsSchemaKey * | object,
|  | bool | take_copy = `false`
| ) |  |

related

A Glib::wrap() method for this object.

Parameters

  object | The C instance.
  take_copy | False if the result should take ownership of the C instance. True if it should take a new copy or ref.

Returns
  A C++ instance that wraps this C instance.