=head1 NAME

Gnome2::GConf::Engine -  A Configuration Engine

=for position SYNOPSIS

=head1 SYNOPSIS

=cut



=for position DESCRIPTION

=head1 DESCRIPTION

Gnome2::GConf::Engine is the Perl binding for the C<GConfEngine> object.  A
GConfEngine is a configuration engine, that is a stack of config sources.
Normally, there's just one of these on the system.

Gnome2::GConf::Engine provides a low-level interface for accessing GConf data;
you should normally use a Gnome2::GConf::Client inside your code.

=for see_also

=head1 SEE ALSO

L<Gnome2::GConf>(3pm), L<Gnome2::GConf::Value>(3pm), L<Gnome2::GConf::ChangeSet>(3pm).

=cut



=head1 HIERARCHY

  Glib::Boxed
  +----Gnome2::GConf::Engine

=for object Gnome2::GConf::Engine A Configuration Engine
=cut




=head1 METHODS

=head2 list = $engine-E<gt>B<all_dirs> ($dir)

=over

=over

=item * $dir (string) 

=back

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

=back

=head2 list = $engine-E<gt>B<all_entries> ($dir)

=over

=over

=item * $dir (string) 

=back

This method returns an array containing all the entries of a given directory.

=back

=head2 boolean = $engine-E<gt>B<associate_schema> ($key, $schema_key)

=over

=over

=item * $key (string) 

=item * $schema_key (string) 

=back

Associate a schema to a key.

$schema_key should have a schema (if $key stores a value) or a dir full of
schemas (if $key stores a directory name)

=back

=head2 changeset = $engine-E<gt>B<change_set_from_current> ($key, ...)

=over

=over

=item * ... (list) list of keys to add to the changeset

=back

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

=back

=head2 boolean = $engine->B<commit_change_set> ($cs, $remove_committed)

=head2 (boolean, changeset) = $engine->B<commit_change_set> ($cs, $remove_committed)

=over

=over

=item * $cs (changeset) 

=item * $remove_committed (boolean) 

=back


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

=back

=head2 engine = Gnome2::GConf::Engine-E<gt>B<get_default> 

=over

Get the default Gnome2::GConf::Engine.

=back

=head2 boolean = $engine-E<gt>B<dir_exists> ($dir)

=over

=over

=item * $dir (string) 

=back

=back

=head2 engine or undef = Gnome2::GConf::Engine-E<gt>B<get_for_address> ($address)

=over

=over

=item * $address (string) 

=back

Create a Gnome2::GConf::Engine for the given address.

=back

=head2 value = $engine-E<gt>B<get> ($key)

=over

=over

=item * $key (string) 

=back

Fetch the Gnome2::GConf::Value bound to the given key.

=back

=head2 boolean = $engine-E<gt>B<set> ($key, $value)

=over

=over

=item * $key (string) 

=item * $value (value) 

=back

Set the Gnome2::GConf::Value bound to the given key.

=back

=head2 boolean = $engine-E<gt>B<key_is_writable> ($key)

=over

=over

=item * $key (string) 

=back

=back

=head2 integer = $engine-E<gt>B<notify_add> ($namespace_section, $func, $data=undef)

=over

=over

=item * $namespace_section (string) 

=item * $func (scalar) 

=item * $data (scalar) 

=back

=back

=head2 $engine-E<gt>B<notify_remove> ($cnxn_id)

=over

=over

=item * $cnxn_id (integer) 

=back

=back

=head2 $engine-E<gt>B<remove_dir> ($dir)

=over

=over

=item * $dir (string) 

=back

=back

=head2 changeset = $engine-E<gt>B<reverse_change_set> ($cs)

=over

=over

=item * $cs (changeset) 

=back

Create a change set that would revert the given change set for the given L<Gnome2::GConf::Engine>.

=back

=head2 $engine-E<gt>B<suggest_sync> 

=over

=back

=head2 boolean = $engine-E<gt>B<unset> ($key)

=over

=over

=item * $key (string) 

=back

Unset the given key.

=back

=head2 value = $engine-E<gt>B<get_with_locale> ($key, $locale)

=over

=over

=item * $key (string) 

=item * $locale (string) 

=back

Fetch the Gnome2::GConf::Value bound to the given key, for a specific locale.
Locale only matters if you are expecting to get a schema, or if you don't know
what you are expecting and it might be a schema. Note that Gnome2::GConf::Engine::get
automatically uses the current locale, which is normally what you want.

=back

=head2 value = $engine-E<gt>B<get_without_default> ($key)

=over

=over

=item * $key (string) 

=back

Fetch the Gnome2::GConf::Value bound to the given key, without returning the
default value (specified inside the schema) if the key is unset.

=back


=head1 SEE ALSO

L<Gnome2::GConf>, L<Glib::Boxed>

=head1 COPYRIGHT

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

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


=cut

