Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members

schema.h

Go to the documentation of this file.
00001 // -*- c++ -*-
00002 // Generated by gtkmmproc -- DO NOT MODIFY!
00003 #ifndef _GCONFMM_SCHEMA_H
00004 #define _GCONFMM_SCHEMA_H
00005 
00006 #include <glibmm.h>
00007 
00008 // -*- Mode: C++; c-basic-offset: 4  -*-
00009 /* $Id: schema.hg,v 1.5 2002/12/10 23:26:01 murrayc Exp $ */
00010 
00011 /* schema.hg
00012  * 
00013  * Copyright (C) 2000-2002 GConfmm Development Team
00014  *
00015  * This library is free software; you can redistribute it and/or
00016  * modify it under the terms of the GNU Library General Public
00017  * License as published by the Free Software Foundation; either
00018  * version 2 of the License, or (at your option) any later version.
00019  *
00020  * This library is distributed in the hope that it will be useful,
00021  * but WITHOUT ANY WARRANTY; without even the implied warranty of
00022  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
00023  * Library General Public License for more details.
00024  *
00025  * You should have received a copy of the GNU Library General Public
00026  * License along with this library; if not, write to the Free
00027  * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
00028  */
00029 
00030 #include <gconfmm/value.h>
00031 
00032 
00033 extern "C" {
00034     // TODO: do not include this.
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 /* DOXYGEN_SHOULD_SKIP_THIS */
00053 
00054   Schema();
00055 
00056   // Use make_a_copy=true when getting it directly from a struct.
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 
00067   // The caller is responsible for freeing it. Use when directly setting fields in structs.
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 } /* namespace Conf */
00120 } /* namespace Gnome */
00121 
00122 
00123 namespace Glib
00124 {
00125 
00127 Gnome::Conf::Schema wrap(GConfSchema* object, bool take_copy = false);
00128 
00129 } // namespace Glib
00130 
00131 #endif /* _GCONFMM_SCHEMA_H */
00132 

Generated on Thu Nov 25 18:07:31 2004 for gconfmm by  doxygen 1.3.9.1