Initialize Tizen 2.3
[framework/base/gconf-dbus.git] / gconf / gconf-schema.h
1
2 /* GConf
3  * Copyright (C) 1999, 2000 Red Hat Inc.
4  *
5  * This library is free software; you can redistribute it and/or
6  * modify it under the terms of the GNU Library General Public
7  * License as published by the Free Software Foundation; either
8  * version 2 of the License, or (at your option) any later version.
9  *
10  * This library is distributed in the hope that it will be useful,
11  * but WITHOUT ANY WARRANTY; without even the implied warranty of
12  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
13  * Library General Public License for more details.
14  *
15  * You should have received a copy of the GNU Library General Public
16  * License along with this library; if not, write to the
17  * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
18  * Boston, MA 02111-1307, USA.
19  */
20
21 #ifndef GCONF_GCONF_SCHEMA_H
22 #define GCONF_GCONF_SCHEMA_H
23
24 #include <glib.h>
25
26 #include <gconf/gconf-value.h>
27
28 G_BEGIN_DECLS
29
30 /*
31  *  A "schema" is a value that describes a key-value pair.
32  *  It might include the type of the pair, documentation describing 
33  *  the pair, the name of the application creating the pair, 
34  *  etc.
35  */
36
37 GConfSchema* gconf_schema_new  (void);
38 void         gconf_schema_free (GConfSchema *sc);
39 GConfSchema* gconf_schema_copy (const GConfSchema *sc);
40
41 void gconf_schema_set_type                 (GConfSchema    *sc,
42                                             GConfValueType  type);
43 void gconf_schema_set_list_type            (GConfSchema    *sc,
44                                             GConfValueType  type);
45 void gconf_schema_set_car_type             (GConfSchema    *sc,
46                                             GConfValueType  type);
47 void gconf_schema_set_cdr_type             (GConfSchema    *sc,
48                                             GConfValueType  type);
49 void gconf_schema_set_locale               (GConfSchema    *sc,
50                                             const gchar    *locale);
51 void gconf_schema_set_short_desc           (GConfSchema    *sc,
52                                             const gchar    *desc);
53 void gconf_schema_set_long_desc            (GConfSchema    *sc,
54                                             const gchar    *desc);
55 void gconf_schema_set_owner                (GConfSchema    *sc,
56                                             const gchar    *owner);
57 void gconf_schema_set_default_value        (GConfSchema    *sc,
58                                             const GConfValue     *val);
59 void gconf_schema_set_default_value_nocopy (GConfSchema    *sc,
60                                             GConfValue     *val);
61
62
63 GConfValueType gconf_schema_get_type          (const GConfSchema *schema);
64 GConfValueType gconf_schema_get_list_type     (const GConfSchema *schema);
65 GConfValueType gconf_schema_get_car_type      (const GConfSchema *schema);
66 GConfValueType gconf_schema_get_cdr_type      (const GConfSchema *schema);
67 const char*    gconf_schema_get_locale        (const GConfSchema *schema);
68 const char*    gconf_schema_get_short_desc    (const GConfSchema *schema);
69 const char*    gconf_schema_get_long_desc     (const GConfSchema *schema);
70 const char*    gconf_schema_get_owner         (const GConfSchema *schema);
71 GConfValue*    gconf_schema_get_default_value (const GConfSchema *schema);
72
73
74 G_END_DECLS
75
76 #endif
77
78