summaryrefslogtreecommitdiff
path: root/xfconfd/xfconf-backend.c
diff options
context:
space:
mode:
authorBrian Tarricone <brian@tarricone.org>2007-09-05 05:38:32 +0000
committerBrian Tarricone <brian@tarricone.org>2007-09-05 05:38:32 +0000
commit4bd7ed768781c376199a11dbb674c4cedce640e4 (patch)
tree41e5edae7989293166d5983aef977476b6873674 /xfconfd/xfconf-backend.c
parent581c5b3e640a96f0eb88f36c01ca4cbb08fe7081 (diff)
downloadxfconf-4bd7ed768781c376199a11dbb674c4cedce640e4.tar.gz
* change xfconf_channel_get_*() API to return the values directly
and take a 'default_value' param for when a property doesn't exist * add API to DBus interface: GetAll, Exists, Remove * add XfconfChannel API: xfconf_channel_get_all(), xfconf_channel_property_exists(), xfconf_channel_remove_property() (Old svn revision: 26713)
Diffstat (limited to 'xfconfd/xfconf-backend.c')
-rw-r--r--xfconfd/xfconf-backend.c43
1 files changed, 43 insertions, 0 deletions
diff --git a/xfconfd/xfconf-backend.c b/xfconfd/xfconf-backend.c
index 4b67aaf..03402a2 100644
--- a/xfconfd/xfconf-backend.c
+++ b/xfconfd/xfconf-backend.c
@@ -103,6 +103,49 @@ xfconf_backend_get(XfconfBackend *backend,
}
gboolean
+xfconf_backend_get_all(XfconfBackend *backend,
+ const gchar *channel,
+ GHashTable **properties,
+ GError **error)
+{
+ XfconfBackendInterface *iface = XFCONF_BACKEND_GET_INTERFACE(backend);
+
+ g_return_val_if_fail(iface && iface->get_all && channel && properties
+ && (!error || *error), FALSE);
+
+ return iface->get_all(backend, channel, properties, error);
+}
+
+gboolean
+xfconf_backend_exists(XfconfBackend *backend,
+ const gchar *channel,
+ const gchar *property,
+ gboolean *exists,
+ GError **error)
+{
+ XfconfBackendInterface *iface = XFCONF_BACKEND_GET_INTERFACE(backend);
+
+ g_return_val_if_fail(iface && iface->exists && channel && property && exists
+ && (!error || *error), FALSE);
+
+ return iface->exists(backend, channel, property, exists, error);
+}
+
+gboolean
+xfconf_backend_remove(XfconfBackend *backend,
+ const gchar *channel,
+ const gchar *property,
+ GError **error)
+{
+ XfconfBackendInterface *iface = XFCONF_BACKEND_GET_INTERFACE(backend);
+
+ g_return_val_if_fail(iface && iface->remove && channel && property
+ && (!error || *error), FALSE);
+
+ return iface->remove(backend, channel, property, error);
+}
+
+gboolean
xfconf_backend_flush(XfconfBackend *backend,
GError **error)
{