Next:
Gnome2::GConf::Engine
Previous:
Gnome2::GConf::ChangeSet
 [Gtk2-Perl - Table of Contents][Gtk2-Perl - Index]

Gnome2::GConf::Client



NAME

Gnome2::GConf::Client

DESCRIPTION

Gnome2::GConf::Client is a commodity class based on GObject used to access the default GConfEngine provided by the GConf daemon. It has a cache, finer-grained notification of changes and a default error handling mechanism.

ERROR HANDLING

In C, each fallible function has a GError optional argument: by setting it to a valid GError structure, the function will fill it in case of error; by passing a NULL value, the function will silently fail.

In Perl, each fallible method has a boolean check_error argument; by setting this argument to TRUE, the method will croak con failure, otherwise it will silently fail.

NOTE: To retain backward compatibility, the default behaviour is to check each error; that is, the check_error argument silently is set to TRUE.

In order to catch an error, you might use eval as a try...catch equivalent:

  eval { $s = $client->get_string($some_key); 1; };
  if (Glib::Error::matches($@, 'Gnome2::GConf::Error', 'bad-key'))
  {
    # recover from a bad-key error.
  }

On failure, if the error is unchecked, the unreturned_error signal will be fired by the Gnome2::GConf::Client object; the error signal will always be fired, whether the error is checked or not.

If you want to let the global error handler function catch just the unchecked error, use the Gnome2::GConf::Client::set_error_handling method, and attach a callback to the unreturned_error signal:

  $client->set_error_handling('handle-unreturned');
  $client->signal_connect(unreturned_error => sub {
      my ($client, $error) = @_;
      warn $error; # is a Glib::Error
    });

HIERARCHY

  Glib::Object
  +----Gnome2::GConf::Client

METHODS

$client->add_dir ($dir, $preload, $check_error=TRUE)

list = $client->all_dirs($dir, $check_error=TRUE)

This method returns an array containing all the directories in a given directory.

list = $client->all_entries($dir, $check_error=TRUE)

This method returns an array containing all the entries (as Gnome2::GConf::Entry) of a given directory.

boolean = $client->get_bool ($key, $check_error=TRUE)

boolean = $client->set_bool ($key, $val, $check_error=TRUE)

Returns FALSE on failure.

changeset = $client->change_set_from_current ($check_error=TRUE, $key, ...)

Create a Gnome2::GConf::ChangeSet from a list of keys inside the GConf database.

$client->clear_cache

boolean = $client->commit_change_set ($cs, $remove_committed, $check_error=TRUE)

(boolean, changeset) = $client->commit_change_set ($cs, $remove_committed, $check_error=TRUE)

Commit a given Gnome2::GConf::ChangeSet. In scalar context, or if $remove_committed is FALSE, return a boolean value; otherwise, return the boolean value and the Gnome2::GConf::ChangeSet $cs, pruned of the successfully committed changes.

value = $client->get_default_from_schema ($key, $check_error=TRUE)

client = Gnome2::GConf::Client->get_default

boolean = $client->dir_exists ($dir, $check_error=TRUE)

entry = $client->get_entry ($key, $locale, $use_schema_default, $check_error=TRUE)

list = $client->error ($error)

You should not use this method. This method emits the "error" signal.

$client->set_error_handling ($mode)

double = $client->get_float ($key, $check_error=TRUE)

boolean = $client->set_float ($key, $val, $check_error=TRUE)

Returns FALSE on failure.

client = Gnome2::GConf::Client->get_for_engine ($engine)

value = $client->get ($key, $check_error=TRUE)

Fetch the GConfValue bound to the give $key.

$client->set ($key, $value, $check_error=TRUE)

Set the GConfValue $val bound to the given $key.

integer = $client->get_int ($key, $check_error=TRUE)

boolean = $client->set_int ($key, $val, $check_error=TRUE)

Returns FALSE on failure.

boolean = $client->key_is_writable ($key, $check_error=TRUE)

$client->get_list ($key, $check_error=TRUE)

boolean = $client->set_list ($key, $list_type, $list, $check_error=TRUE)

integer = $client->notify_add ($namespace_section, $func, $data=undef, $check_error=TRUE)

$client->notify_remove ($cnxn_id)

$client->get_pair ($key, $check_error=TRUE)

boolean = $client->set_pair ($key, $car, $cdr, $check_error=TRUE)

$client->preload ($dirname, $type, $check_error=TRUE)

boolean = $client->recursive_unset ($key, $flags=0, $check_error=TRUE)

Since: gconf 2.3

$client->remove_dir ($dir, $check_error=TRUE)

changeset = $client->reverse_change_set ($cs, $check_error=TRUE)

Reverse the given Gnome2::GConf::ChangeSet.

schema = $client->get_schema ($key)

boolean = $client->set_schema ($key, $schema, $check_error=TRUE)

string = $client->get_string ($key, $check_error=TRUE)

boolean = $client->set_string ($key, $val, $check_error=TRUE)

Returns FALSE on failure

$client->suggest_sync ($check_error=TRUE)

list = $client->unreturned_error ($error)

You should not use this method. This method emits the "unreturned-error" signal.

boolean = $client->unset ($key, $check_error=TRUE)

list = $client->value_changed ($key, $value)

You should not use this method. This method emits the "value-changed" signal.

value = $client->get_without_default ($key, $check_error=TRUE)

SIGNALS

value-changed (Gnome2::GConf::Client, string, gpointer)
unreturned-error (Gnome2::GConf::Client, gpointer)
error (Gnome2::GConf::Client, gpointer)

ENUMS AND FLAGS

enum Gnome2::GConf::ClientErrorHandlingMode

enum Gnome2::GConf::ClientPreloadType

flags Gnome2::GConf::UnsetFlags

SEE ALSO

Gnome2::GConf, Glib::Object

COPYRIGHT

Copyright (C) 2003-2006 by the gtk2-perl team.

This software is licensed under the LGPL. See Gnome2::GConf for a full notice.


[Top] Generated by Marek::Pod::HTML 0.49 on Wed Dec 16 22:58:29 2009