Gnome2::GConf::Value(3)

NAME
Gnome2::GConf::Value - Opaque datatype for generic values

SYNOPSIS
  $client = Gnome2::GConf::Client->get_default;
  $client->set($config_key,
      {
        type  => 'string',
        value => 'Hello, World',
      });
  print "The Meaning of Life." if ($client->get($another_key)->{value} == 42);

DESCRIPTION
"GConfValue" is a dynamic type similar to "GValue", and represents a value that can be obtained from or stored in the configuration database; it contains the value bound to a key, and its type.

In perl, it's an hashref containing these keys:

type
    The type of the data. Fundamental types are 'string', 'int', 'float' and 'bool'. Lists are handled by passing an arrayref as the payload of the "value" key:

            $client->set($key, { type => 'string', value => 'some string' });
            $client->set($key, { type => 'float',  value => 0.5           });
            $client->set($key, { type => 'bool',   value => FALSE         });
            $client->set($key, { type => 'int',    value => [0..15]       });

    Pairs are handled by using the special type 'pair', and passing, in place of the "value" key, the "car" and the "cdr" keys, each containing an hashref representing a GConfValue:

            $client->set($key, {
                            type => 'pair',
                            car  => { type => 'string', value => 'some string' },
                            cdr  => { type => 'int',    value => 42            },
                    });

    This is needed since pairs might have different types; lists, instead, are of the same type.

value
    The payload, containing the value of type "type". It is used only for fundamental types (scalars or lists).

car, cdr
    Special keys, that must be used only when working with the 'pair' type.

SEE ALSO
Gnome2::GConf(3pm), Gnome2::GConf::Entry(3pm), Gnome2::GConf::Schema(3pm), Gnome2::GConf::ChangeSet(3pm).

SEE ALSO
Gnome2::GConf

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

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