00001
00002
00003
#ifndef _GCONFMM_SCHEMA_H
00004
#define _GCONFMM_SCHEMA_H
00005
00006
#include <glibmm.h>
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
#include <gconfmm/value.h>
00031
00032
00033
extern "C" {
00034
00035
#include <gconf/gconf-schema.h>
00036 }
00037
00038
namespace Gnome
00039 {
00040
00041
namespace Conf
00042 {
00043
00044
class Value;
00045
00046 class Schema
00047 {
00048
public:
00049
#ifndef DOXYGEN_SHOULD_SKIP_THIS
00050
typedef Schema CppObjectType;
00051
typedef GConfSchema BaseObjectType;
00052
#endif
00053
00054
Schema();
00055
00056
00057
explicit Schema(GConfSchema* castitem,
bool make_a_copy =
false);
00058
00059
Schema(
const Schema& src);
00060
Schema&
operator=(
const Schema& src);
00061
00062
~Schema();
00063
00064 GConfSchema*
gobj() {
return gobject_; }
00065 const GConfSchema*
gobj()
const {
return gobject_; }
00066
00068 GConfSchema*
gobj_copy() const;
00069
00070 protected:
00071 GConfSchema* gobject_;
00072
00073 private:
00074
00075
00076 public:
00077
00078
void set_type(ValueType type);
00079
00080
void set_list_type(ValueType type);
00081
00082
void set_car_type(ValueType type);
00083
00084
void set_cdr_type(ValueType type);
00085
00086
void set_locale(const std::string& locale);
00087
00088
void set_short_desc(const Glib::ustring& desc);
00089
00090
void set_long_desc(const Glib::ustring& desc);
00091
00092
void set_owner(const Glib::ustring& owner);
00093
00094
void set_default_value(const
Value& value);
00095
00096
00097 ValueType get_type() const;
00098
00099 ValueType get_list_type() const;
00100
00101 ValueType get_car_type() const;
00102
00103 ValueType get_cdr_type() const;
00104
00105 std::string get_locale() const;
00106
00107 Glib::ustring get_short_desc() const;
00108
00109 Glib::ustring get_long_desc() const;
00110
00111 Glib::ustring get_owner() const;
00112
00113
Value get_default_value() const;
00114
00115
00116 };
00117
00118
00119 }
00120 }
00121
00122
00123 namespace Glib
00124 {
00125
00131
Gnome::Conf::Schema wrap(GConfSchema* object,
bool take_copy =
false);
00132
00133 }
00134
00135
#endif
00136