Gio::SettingsBackend Class Reference

TODO. More...

#include <giomm/settingsbackend.h>

Inheritance diagram for Gio::SettingsBackend:
Inheritance graph
[legend]

List of all members.

Public Member Functions

virtual ~SettingsBackend ()
GSettingsBackend* gobj ()
 Provides access to the underlying C GObject.
const GSettingsBackend* gobj () const
 Provides access to the underlying C GObject.
void backend_changed (const Glib::ustring& key, gpointer origin_tag)
 Signals that a single key has possibly changed.
void path_changed (const Glib::ustring& path, gpointer origin_tag)
 Signals that all keys below a given path may have possibly changed.
void path_writable_changed (const Glib::ustring& path)
 Signals that the writability of all keys below a given path may have changed.
void writable_changed (const Glib::ustring& key)
 Signals that the writability of a single key has possibly changed.
void changed_tree (GTree* tree, gpointer origin_tag)
 This call is a convenience wrapper.

Static Public Member Functions

static void add_interface (GType gtype_implementer)

Related Functions

(Note that these are not member functions.)



Glib::RefPtr
< Gio::SettingsBackend
wrap (GSettingsBackend* object, bool take_copy=false)
 A Glib::wrap() method for this object.

Detailed Description

TODO.


Constructor & Destructor Documentation

virtual Gio::SettingsBackend::~SettingsBackend (  )  [virtual]

Member Function Documentation

static void Gio::SettingsBackend::add_interface ( GType  gtype_implementer  )  [static]
void Gio::SettingsBackend::backend_changed ( const Glib::ustring key,
gpointer  origin_tag 
)

Signals that a single key has possibly changed.

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

key must be a valid key (ie: starting with a slash, not containing '//', and not ending with a slash).

The implementation must call this function during any call to Glib::settings_backend_write(), before the call returns (except in the case that no keys are actually changed and it cares to detect this fact). It may not rely on the existence of a mainloop for dispatching the signal later.

The implementation may call this function at any other time it likes in response to other events (such as changes occuring outside of the program). These calls may originate from a mainloop or may originate in response to any other action (including from calls to Glib::settings_backend_write()).

In the case that this call is in response to a call to Glib::settings_backend_write() then origin_tag must be set to the same value that was passed to that call.

Since glibmm 2.26:
Parameters:
key The name of the key.
origin_tag The origin tag.
void Gio::SettingsBackend::changed_tree ( GTree *  tree,
gpointer  origin_tag 
)

This call is a convenience wrapper.

It gets the list of changes from tree, computes the longest common prefix and calls g_settings_backend_changed().

Since glibmm 2.26:
Parameters:
tree A Tree containing the changes.
origin_tag The origin tag.
const GSettingsBackend* Gio::SettingsBackend::gobj (  )  const [inline]

Provides access to the underlying C GObject.

Reimplemented from Glib::Interface.

GSettingsBackend* Gio::SettingsBackend::gobj (  )  [inline]

Provides access to the underlying C GObject.

Reimplemented from Glib::Interface.

void Gio::SettingsBackend::path_changed ( const Glib::ustring path,
gpointer  origin_tag 
)

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.

path must be a valid path (ie: starting and ending with a slash and not containing '//').

The meaning of this signal is that any of the key which has a name starting with path may have changed.

The same rules for when notifications must occur apply as per g_settings_backend_changed(). This call might be an appropriate reasponse to a 'reset' call but implementations are also free to explicitly list the keys that were affected by that call if they can easily do so.

For efficiency reasons, the implementation should strive for path to be as long as possible (ie: the longest common prefix of all of the keys that were changed) but this is not strictly required. As an example, if this function is called with the path of "/" then every single key in the application will be notified of a possible change.

Since glibmm 2.26:
Parameters:
path The path containing the changes.
origin_tag The origin tag.
void Gio::SettingsBackend::path_writable_changed ( const Glib::ustring path  ) 

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

Since GSettings performs no locking operations for itself, this call will always be made in response to external events.

Since glibmm 2.26:
Parameters:
path The name of the path.
void Gio::SettingsBackend::writable_changed ( const Glib::ustring key  ) 

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

Since GSettings performs no locking operations for itself, this call will always be made in response to external events.

Since glibmm 2.26:
Parameters:
key The name of the key.

Friends And Related Function Documentation

Glib::RefPtr< Gio::SettingsBackend > wrap ( GSettingsBackend *  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.
Generated on Sun Sep 19 21:30:37 2010 for glibmm by  doxygen 1.6.3