summaryrefslogtreecommitdiff
path: root/common/dconf-changeset.h
diff options
context:
space:
mode:
authorRyan Lortie <desrt@desrt.ca>2012-11-08 12:50:22 -0500
committerRyan Lortie <desrt@desrt.ca>2012-11-08 13:44:01 -0500
commita088be7c43575620309c952798c8c40cd3fa1f20 (patch)
tree337dd1a42e33b9844da50e4a6dc336dd8e97e23b /common/dconf-changeset.h
parent19bca1d807d47b7b28f1343aa7ed980ddc6cbe96 (diff)
downloaddconf-a088be7c43575620309c952798c8c40cd3fa1f20.tar.gz
DConfChangeset: add "database mode" and change()
Add a new mode for DConfChangeset to represent the entire contents of a dconf database. Also add a dconf_changeset_change() call to either merge changesets or apply a changeset to a database-mode changeset. Doing this allows us to have only one instance of the algorithm to deal with resets (ie: when resetting '/a/' we must reset all keys starting with '/a/').
Diffstat (limited to 'common/dconf-changeset.h')
-rw-r--r--common/dconf-changeset.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/common/dconf-changeset.h b/common/dconf-changeset.h
index 1aecabe..eb8dde1 100644
--- a/common/dconf-changeset.h
+++ b/common/dconf-changeset.h
@@ -31,6 +31,7 @@ typedef gboolean (* DConfChangesetPredicate) (const g
gpointer user_data);
DConfChangeset * dconf_changeset_new (void);
+DConfChangeset * dconf_changeset_new_database (DConfChangeset *copy_of);
DConfChangeset * dconf_changeset_new_write (const gchar *path,
GVariant *value);
@@ -63,4 +64,7 @@ guint dconf_changeset_describe (DConfCh
GVariant * dconf_changeset_serialise (DConfChangeset *changeset);
DConfChangeset * dconf_changeset_deserialise (GVariant *serialised);
+void dconf_changeset_change (DConfChangeset *changeset,
+ DConfChangeset *changes);
+
#endif /* __dconf_changeset_h__ */