glib (2.79.0)

(root)/
include/
glib-2.0/
gio/
gsettingsschema.h
       1  /*
       2   * Copyright © 2010 Codethink Limited
       3   * Copyright © 2011 Canonical Limited
       4   *
       5   * SPDX-License-Identifier: LGPL-2.1-or-later
       6   *
       7   * This library is free software; you can redistribute it and/or
       8   * modify it under the terms of the GNU Lesser General Public
       9   * License as published by the Free Software Foundation; either
      10   * version 2.1 of the License, or (at your option) any later version.
      11   *
      12   * This library is distributed in the hope that it will be useful,
      13   * but WITHOUT ANY WARRANTY; without even the implied warranty of
      14   * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
      15   * Lesser General Public License for more details.
      16   *
      17   * You should have received a copy of the GNU Lesser General Public
      18   * License along with this library; if not, see <http://www.gnu.org/licenses/>.
      19   */
      20  
      21  #ifndef __G_SETTINGS_SCHEMA_H__
      22  #define __G_SETTINGS_SCHEMA_H__
      23  
      24  #include <glib-object.h>
      25  #include <gio/gio-visibility.h>
      26  
      27  G_BEGIN_DECLS
      28  
      29  typedef struct _GSettingsSchemaSource                       GSettingsSchemaSource;
      30  typedef struct _GSettingsSchema                             GSettingsSchema;
      31  typedef struct _GSettingsSchemaKey                          GSettingsSchemaKey;
      32  
      33  #define                 G_TYPE_SETTINGS_SCHEMA_SOURCE                   (g_settings_schema_source_get_type ())
      34  GIO_AVAILABLE_IN_2_32
      35  GType                   g_settings_schema_source_get_type               (void) G_GNUC_CONST;
      36  
      37  GIO_AVAILABLE_IN_2_32
      38  GSettingsSchemaSource * g_settings_schema_source_get_default            (void);
      39  GIO_AVAILABLE_IN_2_32
      40  GSettingsSchemaSource * g_settings_schema_source_ref                    (GSettingsSchemaSource  *source);
      41  GIO_AVAILABLE_IN_2_32
      42  void                    g_settings_schema_source_unref                  (GSettingsSchemaSource  *source);
      43  
      44  GIO_AVAILABLE_IN_2_32
      45  GSettingsSchemaSource * g_settings_schema_source_new_from_directory     (const gchar            *directory,
      46                                                                           GSettingsSchemaSource  *parent,
      47                                                                           gboolean                trusted,
      48                                                                           GError                **error);
      49  
      50  GIO_AVAILABLE_IN_2_32
      51  GSettingsSchema *       g_settings_schema_source_lookup                 (GSettingsSchemaSource  *source,
      52                                                                           const gchar            *schema_id,
      53                                                                           gboolean                recursive);
      54  
      55  GIO_AVAILABLE_IN_2_40
      56  void                    g_settings_schema_source_list_schemas           (GSettingsSchemaSource   *source,
      57                                                                           gboolean                 recursive,
      58                                                                           gchar                 ***non_relocatable,
      59                                                                           gchar                 ***relocatable);
      60  
      61  #define                 G_TYPE_SETTINGS_SCHEMA                          (g_settings_schema_get_type ())
      62  GIO_AVAILABLE_IN_2_32
      63  GType                   g_settings_schema_get_type                      (void) G_GNUC_CONST;
      64  
      65  GIO_AVAILABLE_IN_2_32
      66  GSettingsSchema *       g_settings_schema_ref                           (GSettingsSchema        *schema);
      67  GIO_AVAILABLE_IN_2_32
      68  void                    g_settings_schema_unref                         (GSettingsSchema        *schema);
      69  
      70  GIO_AVAILABLE_IN_2_32
      71  const gchar *           g_settings_schema_get_id                        (GSettingsSchema        *schema);
      72  GIO_AVAILABLE_IN_2_32
      73  const gchar *           g_settings_schema_get_path                      (GSettingsSchema        *schema);
      74  GIO_AVAILABLE_IN_2_40
      75  GSettingsSchemaKey *    g_settings_schema_get_key                       (GSettingsSchema        *schema,
      76                                                                           const gchar            *name);
      77  GIO_AVAILABLE_IN_2_40
      78  gboolean                g_settings_schema_has_key                       (GSettingsSchema        *schema,
      79                                                                           const gchar            *name);
      80  GIO_AVAILABLE_IN_2_46
      81  gchar**                 g_settings_schema_list_keys                     (GSettingsSchema        *schema);
      82  
      83  
      84  GIO_AVAILABLE_IN_2_44
      85  gchar **                g_settings_schema_list_children                 (GSettingsSchema        *schema);
      86  
      87  #define                 G_TYPE_SETTINGS_SCHEMA_KEY                      (g_settings_schema_key_get_type ())
      88  GIO_AVAILABLE_IN_2_40
      89  GType                   g_settings_schema_key_get_type                  (void) G_GNUC_CONST;
      90  
      91  GIO_AVAILABLE_IN_2_40
      92  GSettingsSchemaKey *    g_settings_schema_key_ref                       (GSettingsSchemaKey     *key);
      93  GIO_AVAILABLE_IN_2_40
      94  void                    g_settings_schema_key_unref                     (GSettingsSchemaKey     *key);
      95  
      96  GIO_AVAILABLE_IN_2_40
      97  const GVariantType *    g_settings_schema_key_get_value_type            (GSettingsSchemaKey     *key);
      98  GIO_AVAILABLE_IN_2_40
      99  GVariant *              g_settings_schema_key_get_default_value         (GSettingsSchemaKey     *key);
     100  GIO_AVAILABLE_IN_2_40
     101  GVariant *              g_settings_schema_key_get_range                 (GSettingsSchemaKey     *key);
     102  GIO_AVAILABLE_IN_2_40
     103  gboolean                g_settings_schema_key_range_check               (GSettingsSchemaKey     *key,
     104                                                                           GVariant               *value);
     105  
     106  GIO_AVAILABLE_IN_2_44
     107  const gchar *           g_settings_schema_key_get_name                  (GSettingsSchemaKey     *key);
     108  GIO_AVAILABLE_IN_2_40
     109  const gchar *           g_settings_schema_key_get_summary               (GSettingsSchemaKey     *key);
     110  GIO_AVAILABLE_IN_2_40
     111  const gchar *           g_settings_schema_key_get_description           (GSettingsSchemaKey     *key);
     112  
     113  G_END_DECLS
     114  
     115  #endif /* __G_SETTINGS_SCHEMA_H__ */