gconfmm  2.28.0
entry.h
Go to the documentation of this file.
1 // -*- c++ -*-
2 // Generated by gtkmmproc -- DO NOT MODIFY!
3 #ifndef _GCONFMM_ENTRY_H
4 #define _GCONFMM_ENTRY_H
5 
6 
7 #include <glibmm.h>
8 
9 // -*- Mode: C++; c-basic-offset: 4 -*-
10 /* $Id: entry.hg,v 1.4 2002/12/10 23:26:01 murrayc Exp $ */
11 
12 /* entry.hg
13  *
14  * Copyright (C) 2000-2002 GConfmm Development Team
15  *
16  * This library is free software; you can redistribute it and/or
17  * modify it under the terms of the GNU Lesser General Public
18  * License as published by the Free Software Foundation; either
19  * version 2.1 of the License, or (at your option) any later version.
20  *
21  * This library is distributed in the hope that it will be useful,
22  * but WITHOUT ANY WARRANTY; without even the implied warranty of
23  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
24  * Lesser General Public License for more details.
25  *
26  * You should have received a copy of the GNU Lesser General Public
27  * License along with this library; if not, write to the Free
28  * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
29  */
30 
31 #include <gconfmm/value.h>
32 #include <gconfmm/schema.h>
33 
34 
35 extern "C" {
36  typedef struct _GConfEntry GConfEntry;
37 }
38 
39 namespace Gnome
40 {
41 
42 namespace Conf
43 {
44 
50 class Entry
51 {
52  public:
53 #ifndef DOXYGEN_SHOULD_SKIP_THIS
54  typedef Entry CppObjectType;
55  typedef GConfEntry BaseObjectType;
56 #endif /* DOXYGEN_SHOULD_SKIP_THIS */
57 
58  Entry();
59 
60  // Use make_a_copy=true when getting it directly from a struct.
61  explicit Entry(GConfEntry* castitem, bool make_a_copy = false);
62 
63  Entry(const Entry& src);
64  Entry& operator=(const Entry& src);
65 
66  ~Entry();
67 
68  GConfEntry* gobj() { return gobject_; }
69  const GConfEntry* gobj() const { return gobject_; }
70 
72  GConfEntry* gobj_copy() const;
73 
74 protected:
76 
77 private:
78 
79 
80 public:
82  Entry(const Glib::ustring& key, const Value& value);
83 
86  void set_value(const Value& val);
87 
90  void set_schema_name(const Glib::ustring& val);
91 
94  void set_is_default(bool is_default = true);
95 
98  void set_is_writable(bool is_writable = true);
99 
102  Value get_value() const;
103 
104 
107  Glib::ustring get_schema_name() const;
108 
109  /* Retrieve the configuration key this entry points to */
110 
111  Glib::ustring get_key() const;
112 
113  /* Retrieve wether this Entry contains the default value, as defined in the Schema. */
114 
115  bool get_is_default() const;
116 
117  /* Get the writeable status of the configuration key of this entry. */
118 
119  bool get_is_writable() const;
120 
121 private:
122  static GConfEntry* entry_copy(const GConfEntry*);
123 
124 
125 };
126 
127 } /* namespace Conf */
128 } /* namespace Gnome */
129 
130 
131 #ifndef DOXYGEN_SHOULD_SKIP_THIS
132 namespace Glib
133 {
134 namespace Container_Helpers
135 {
136 
137 template<>
138 struct TypeTraits<Gnome::Conf::Entry>
139 {
140  typedef Gnome::Conf::Entry CppType;
141  typedef const GConfEntry* CType;
142  typedef GConfEntry* CTypeNonConst;
143 
144  static CType to_c_type (const CppType& item) { return item.gobj(); }
145  static CType to_c_type (const CType& item) { return item; }
146  static CppType to_cpp_type (const CType& item) { return Gnome::Conf::Entry(const_cast<CTypeNonConst>(item)); }
147  static void release_c_type (const CType&) {}
148 };
149 
150 } // Namespace Container_Helpers
151 } // namespace Glib
152 #endif // DOXYGEN_SHOULD_SKIP_THIS
153 
154 
155 namespace Glib
156 {
157 
166 Gnome::Conf::Entry wrap(GConfEntry* object, bool take_copy = false);
167 
168 } // namespace Glib
169 
170 
171 #endif /* _GCONFMM_ENTRY_H */
172 
An Entry stores an entry from a GConf "directory", including a key-value pair, the name of the Schema...
Definition: entry.h:50
Definition: client.h:910
GConfEntry * gobj_copy() const
Provides access to the underlying C instance. The caller is responsible for freeing it...
Definition: callback.h:33
bool get_is_default() const
Glib::ustring get_schema_name() const
Retrieve the Schema name associated with the given entry.
void set_schema_name(const Glib::ustring &val)
Set the Schema name of the entry.
GConfEntry * gobj()
Definition: entry.h:68
Value get_value() const
Retrieve the value of the entry.
void set_value(const Value &val)
Set the Value of the entry.
void set_is_default(bool is_default=true)
Set whether the value has orginated from the default given in the Schema.
void set_is_writable(bool is_writable=true)
Set whether the given configuration key iw writeable.
const GConfEntry * gobj() const
Definition: entry.h:69
Glib::ustring get_key() const
struct _GConfEntry GConfEntry
Definition: entry.h:36
Wrapper for primitive types.
Definition: value.h:141
Entry & operator=(const Entry &src)
GConfEntry * gobject_
Definition: entry.h:75
bool get_is_writable() const