new public header: gsettingsschema.h
authorRyan Lortie <desrt@desrt.ca>
Tue, 15 Nov 2011 08:00:16 +0000 (08:00 +0000)
committerRyan Lortie <desrt@desrt.ca>
Thu, 17 Nov 2011 14:03:39 +0000 (14:03 +0000)
Expose some GSettingsSchemaSource and GSettingsSchema APIs.

These are mostly useless so far...

gio/Makefile.am
gio/gio.h
gio/gio.symbols
gio/gsettingsschema-internal.h
gio/gsettingsschema.c
gio/gsettingsschema.h [new file with mode: 0644]

index 7e819a1..26f18ff 100644 (file)
@@ -97,6 +97,7 @@ gdbus_sources =                                                       \
 
 settings_headers = \
        gsettingsbackend.h              \
+       gsettingsschema.h               \
        gsettings.h
 
 settings_sources = \
index 042c938..034ef23 100644 (file)
--- a/gio/gio.h
+++ b/gio/gio.h
 #include <gio/gproxyresolver.h>
 #include <gio/gresolver.h>
 #include <gio/gseekable.h>
+#include <gio/gsettingsschema.h>
 #include <gio/gsettings.h>
 #include <gio/gsimpleasyncresult.h>
 #include <gio/gsimplepermission.h>
index 0cb45bf..6ac32e5 100644 (file)
@@ -1098,6 +1098,14 @@ g_settings_backend_get_default
 g_keyfile_settings_backend_new
 g_memory_settings_backend_new
 g_null_settings_backend_new
+g_settings_schema_source_get_default
+g_settings_schema_source_lookup
+g_settings_schema_source_ref
+g_settings_schema_source_unref
+g_settings_schema_ref
+g_settings_schema_unref
+g_settings_schema_get_name
+g_settings_schema_get_path
 g_settings_list_schemas
 g_settings_list_relocatable_schemas
 g_settings_apply
index ef4875a..5eb5190 100644 (file)
@@ -20,9 +20,7 @@
 #ifndef __G_SETTINGS_SCHEMA_INTERNAL_H__
 #define __G_SETTINGS_SCHEMA_INTERNAL_H__
 
-#include <glib.h>
-
-typedef struct _GSettingsSchema                             GSettingsSchema;
+#include "gsettingsschema.h"
 
 typedef struct
 {
@@ -46,14 +44,6 @@ typedef struct
 G_GNUC_INTERNAL
 GSettingsSchema *       g_settings_schema_new                           (const gchar      *name);
 G_GNUC_INTERNAL
-GSettingsSchema *       g_settings_schema_ref                           (GSettingsSchema  *schema);
-G_GNUC_INTERNAL
-void                    g_settings_schema_unref                         (GSettingsSchema  *schema);
-G_GNUC_INTERNAL
-const gchar *           g_settings_schema_get_name                      (GSettingsSchema  *schema);
-G_GNUC_INTERNAL
-const gchar *           g_settings_schema_get_path                      (GSettingsSchema  *schema);
-G_GNUC_INTERNAL
 const gchar *           g_settings_schema_get_gettext_domain            (GSettingsSchema  *schema);
 G_GNUC_INTERNAL
 GVariantIter *          g_settings_schema_get_value                     (GSettingsSchema  *schema,
index 53298e7..a130839 100644 (file)
@@ -1,5 +1,6 @@
 /*
  * Copyright © 2010 Codethink Limited
+ * Copyright © 2011 Canonical Limited
  *
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU Lesser General Public
diff --git a/gio/gsettingsschema.h b/gio/gsettingsschema.h
new file mode 100644 (file)
index 0000000..92665c8
--- /dev/null
@@ -0,0 +1,43 @@
+/*
+ * Copyright © 2010 Codethink Limited
+ * Copyright © 2011 Canonical Limited
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the licence, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the
+ * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ * Boston, MA 02111-1307, USA.
+ */
+
+#ifndef __G_SETTINGS_SCHEMA_H__
+#define __G_SETTINGS_SCHEMA_H__
+
+#include <glib.h>
+
+typedef struct _GSettingsSchemaSource                       GSettingsSchemaSource;
+typedef struct _GSettingsSchema                             GSettingsSchema;
+
+GSettingsSchemaSource * g_settings_schema_source_get_default            (void);
+GSettingsSchemaSource * g_settings_schema_source_ref                    (GSettingsSchemaSource *source);
+void                    g_settings_schema_source_unref                  (GSettingsSchemaSource *source);
+
+GSettingsSchema *       g_settings_schema_source_lookup                 (GSettingsSchemaSource *source,
+                                                                         const gchar           *schema_name,
+                                                                         gboolean               recursive);
+
+GSettingsSchema *       g_settings_schema_ref                           (GSettingsSchema       *schema);
+void                    g_settings_schema_unref                         (GSettingsSchema       *schema);
+
+const gchar *           g_settings_schema_get_name                      (GSettingsSchema       *schema);
+const gchar *           g_settings_schema_get_path                      (GSettingsSchema       *schema);
+
+#endif /* __G_SETTINGS_SCHEMA_H__ */