Tizen 2.1 base
[platform/upstream/glib2.0.git] / docs / reference / gio / html / ch29s03.html
1 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2 <html>
3 <head>
4 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
5 <title>GConfClient (and GConfBridge) API conversion</title>
6 <meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
7 <link rel="home" href="index.html" title="GIO Reference Manual">
8 <link rel="up" href="ch29.html" title="Migrating from GConf to GSettings">
9 <link rel="prev" href="ch29s02.html" title="Conceptual differences">
10 <link rel="next" href="ch29s04.html" title="Change notification">
11 <meta name="generator" content="GTK-Doc V1.18 (XML mode)">
12 <link rel="stylesheet" href="style.css" type="text/css">
13 </head>
14 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
15 <table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
16 <td><a accesskey="p" href="ch29s02.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
17 <td><a accesskey="u" href="ch29.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td>
18 <td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
19 <th width="100%" align="center">GIO Reference Manual</th>
20 <td><a accesskey="n" href="ch29s04.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
21 </tr></table>
22 <div class="section">
23 <div class="titlepage"><div><div><h2 class="title" style="clear: both">
24 <a name="id546823"></a>GConfClient (and GConfBridge) API conversion</h2></div></div></div>
25 <p>
26         Most people use GConf via the high-level <span class="type">GConfClient</span> API.
27         The corresponding API is the <a class="link" href="GSettings.html" title="GSettings"><span class="type">GSettings</span></a> object. While not
28         every GConfClient function has a direct GSettings equivalent,
29         many do:
30         </p>
31 <div class="table">
32 <a name="gconf-client-vs-gsettings"></a><p class="title"><b>Table 7. </b></p>
33 <div class="table-contents"><table border="1">
34 <colgroup>
35 <col>
36 <col>
37 </colgroup>
38 <thead><tr>
39 <th>GConfClient</th>
40 <th>GSettings</th>
41 </tr></thead>
42 <tbody>
43 <tr>
44 <td><a href="/usr/share/gtk-doc/html/gconf/gconf-gconf-client.html#gconf-client-get-default"><code class="function">gconf_client_get_default()</code></a></td>
45 <td>no direct equivalent,
46                                                                    instead you call <a class="link" href="GSettings.html#g-settings-new" title="g_settings_new ()"><code class="function">g_settings_new()</code></a> for the schemas you use</td>
47 </tr>
48 <tr>
49 <td><a href="/usr/share/gtk-doc/html/gconf/gconf-gconf-client.html#gconf-client-set"><code class="function">gconf_client_set()</code></a></td>
50 <td><a class="link" href="GSettings.html#g-settings-set" title="g_settings_set ()"><code class="function">g_settings_set()</code></a></td>
51 </tr>
52 <tr>
53 <td><a href="/usr/share/gtk-doc/html/gconf/gconf-gconf-client.html#gconf-client-get"><code class="function">gconf_client_get()</code></a></td>
54 <td><a class="link" href="GSettings.html#g-settings-get" title="g_settings_get ()"><code class="function">g_settings_get()</code></a></td>
55 </tr>
56 <tr>
57 <td><a href="/usr/share/gtk-doc/html/gconf/gconf-gconf-client.html#gconf-client-get-bool"><code class="function">gconf_client_get_bool()</code></a></td>
58 <td><a class="link" href="GSettings.html#g-settings-get-boolean" title="g_settings_get_boolean ()"><code class="function">g_settings_get_boolean()</code></a></td>
59 </tr>
60 <tr>
61 <td><a href="/usr/share/gtk-doc/html/gconf/gconf-gconf-client.html#gconf-client-set-bool"><code class="function">gconf_client_set_bool()</code></a></td>
62 <td><a class="link" href="GSettings.html#g-settings-set-boolean" title="g_settings_set_boolean ()"><code class="function">g_settings_set_boolean()</code></a></td>
63 </tr>
64 <tr>
65 <td><a href="/usr/share/gtk-doc/html/gconf/gconf-gconf-client.html#gconf-client-get-int"><code class="function">gconf_client_get_int()</code></a></td>
66 <td><a class="link" href="GSettings.html#g-settings-get-int" title="g_settings_get_int ()"><code class="function">g_settings_get_int()</code></a></td>
67 </tr>
68 <tr>
69 <td><a href="/usr/share/gtk-doc/html/gconf/gconf-gconf-client.html#gconf-client-set-int"><code class="function">gconf_client_set_int()</code></a></td>
70 <td><a class="link" href="GSettings.html#g-settings-set-int" title="g_settings_set_int ()"><code class="function">g_settings_set_int()</code></a></td>
71 </tr>
72 <tr>
73 <td><a href="/usr/share/gtk-doc/html/gconf/gconf-gconf-client.html#gconf-client-get-float"><code class="function">gconf_client_get_float()</code></a></td>
74 <td><a class="link" href="GSettings.html#g-settings-get-double" title="g_settings_get_double ()"><code class="function">g_settings_get_double()</code></a></td>
75 </tr>
76 <tr>
77 <td><a href="/usr/share/gtk-doc/html/gconf/gconf-gconf-client.html#gconf-client-set-float"><code class="function">gconf_client_set_float()</code></a></td>
78 <td><a class="link" href="GSettings.html#g-settings-set-double" title="g_settings_set_double ()"><code class="function">g_settings_set_double()</code></a></td>
79 </tr>
80 <tr>
81 <td><a href="/usr/share/gtk-doc/html/gconf/gconf-gconf-client.html#gconf-client-get-string"><code class="function">gconf_client_get_string()</code></a></td>
82 <td><a class="link" href="GSettings.html#g-settings-get-string" title="g_settings_get_string ()"><code class="function">g_settings_get_string()</code></a></td>
83 </tr>
84 <tr>
85 <td><a href="/usr/share/gtk-doc/html/gconf/gconf-gconf-client.html#gconf-client-set-string"><code class="function">gconf_client_set_string()</code></a></td>
86 <td><a class="link" href="GSettings.html#g-settings-set-string" title="g_settings_set_string ()"><code class="function">g_settings_set_string()</code></a></td>
87 </tr>
88 <tr>
89 <td><a href="/usr/share/gtk-doc/html/gconf/gconf-gconf-client.html#gconf-client-get-list"><code class="function">gconf_client_get_list()</code></a></td>
90 <td>for string lists, see <a class="link" href="GSettings.html#g-settings-get-strv" title="g_settings_get_strv ()"><code class="function">g_settings_get_strv()</code></a>, else see <a class="link" href="GSettings.html#g-settings-get-value" title="g_settings_get_value ()"><code class="function">g_settings_get_value()</code></a> and <a href="./../glib/glib/glib-GVariant.html#GVariant"><span class="type">GVariant</span></a> API</td>
91 </tr>
92 <tr>
93 <td><a href="/usr/share/gtk-doc/html/gconf/gconf-gconf-client.html#gconf-client-set-list"><code class="function">gconf_client_set_list()</code></a></td>
94 <td>for string lists, see <a class="link" href="GSettings.html#g-settings-set-strv" title="g_settings_set_strv ()"><code class="function">g_settings_set_strv()</code></a>, else see <a class="link" href="GSettings.html#g-settings-set-value" title="g_settings_set_value ()"><code class="function">g_settings_set_value()</code></a> and <a href="./../glib/glib/glib-GVariant.html#GVariant"><span class="type">GVariant</span></a> API</td>
95 </tr>
96 <tr>
97 <td><a href="/usr/share/gtk-doc/html/gconf/gconf-gconf-value.html#gconf-entry-get-is-writable"><code class="function">gconf_entry_get_is_writable()</code></a></td>
98 <td><a class="link" href="GSettings.html#g-settings-is-writable" title="g_settings_is_writable ()"><code class="function">g_settings_is_writable()</code></a></td>
99 </tr>
100 <tr>
101 <td><a href="/usr/share/gtk-doc/html/gconf/gconf-gconf-client.html#gconf-client-notify-add"><code class="function">gconf_client_notify_add()</code></a></td>
102 <td>not required, the <a class="link" href="GSettings.html#GSettings-changed" title='The "changed" signal'><span class="type">"changed"</span></a> signal is emitted automatically</td>
103 </tr>
104 <tr>
105 <td><a href="/usr/share/gtk-doc/html/gconf/gconf-gconf-client.html#gconf-client-add-dir"><code class="function">gconf_client_add_dir()</code></a></td>
106 <td>not required, each GSettings instance automatically watches all keys in its path</td>
107 </tr>
108 <tr>
109 <td><a href="/usr/share/gtk-doc/html/gconf/gconf-gconf-changeset.html#GConfChangeSet"><span class="type">GConfChangeSet</span></a></td>
110 <td>
111 <a class="link" href="GSettings.html#g-settings-delay" title="g_settings_delay ()"><code class="function">g_settings_delay()</code></a>, <a class="link" href="GSettings.html#g-settings-apply" title="g_settings_apply ()"><code class="function">g_settings_apply()</code></a>
112 </td>
113 </tr>
114 <tr>
115 <td><a href="/usr/share/gtk-doc/html/gconf/gconf-gconf-client.html#gconf-client-get-default-from-schema"><code class="function">gconf_client_get_default_from_schema()</code></a></td>
116 <td>no equivalent, applications are expected to know their schema</td>
117 </tr>
118 <tr>
119 <td><a href="/usr/share/gtk-doc/html/gconf/gconf-gconf-client.html#gconf-client-all-entries"><code class="function">gconf_client_all_entries()</code></a></td>
120 <td>no equivalent, applications are expected to know their schema, and GSettings does not allow schema-less entries</td>
121 </tr>
122 <tr>
123 <td><a href="/usr/share/gtk-doc/html/gconf/gconf-gconf-client.html#gconf-client-get-without-default"><code class="function">gconf_client_get_without_default()</code></a></td>
124 <td>no equivalent</td>
125 </tr>
126 <tr>
127 <td><code class="function">gconf_bridge_bind_property()</code></td>
128 <td><a class="link" href="GSettings.html#g-settings-bind" title="g_settings_bind ()"><code class="function">g_settings_bind()</code></a></td>
129 </tr>
130 <tr>
131 <td><code class="function">gconf_bridge_bind_property_full()</code></td>
132 <td><a class="link" href="GSettings.html#g-settings-bind-with-mapping" title="g_settings_bind_with_mapping ()"><code class="function">g_settings_bind_with_mapping()</code></a></td>
133 </tr>
134 </tbody>
135 </table></div>
136 </div>
137 <p><br class="table-break">
138       </p>
139 <p>
140         GConfBridge was a third-party library that used GConf to bind an object property
141         to a particular configuration key. GSettings offers this service itself.
142       </p>
143 <p>
144         There is a pattern that is sometimes used for GConf, where a setting can have
145         explicit 'value A', explicit 'value B' or 'use the system default'. With GConf,
146         'use the system default' is sometimes implemented by unsetting the user value.
147       </p>
148 <p>
149         This is not possible in GSettings, since it does not have API to determine if a value
150         is the default and does not let you unset values. The recommended way (and much
151         clearer) way in which this can be implemented in GSettings is to have a separate
152         'use-system-default' boolean setting.
153       </p>
154 </div>
155 <div class="footer">
156 <hr>
157           Generated by GTK-Doc V1.18</div>
158 </body>
159 </html>