Imported Upstream version 2.45.3 upstream/2.45.3
authorDongHun Kwak <dh0128.kwak@samsung.com>
Mon, 7 Sep 2020 06:50:01 +0000 (23:50 -0700)
committerDongHun Kwak <dh0128.kwak@samsung.com>
Mon, 7 Sep 2020 06:50:01 +0000 (23:50 -0700)
36 files changed:
NEWS
configure.ac
gio/giomm.h
gio/src/application.hg
gio/src/desktopappinfo.hg
gio/src/file.hg
gio/src/filelist.am
gio/src/gio_enums.defs
gio/src/gio_extra_objects.defs
gio/src/gio_methods.defs
gio/src/gio_signals.defs
gio/src/notification.hg
gio/src/settings.ccg
gio/src/settings.hg
gio/src/settingsschema.ccg [new file with mode: 0644]
gio/src/settingsschema.hg [new file with mode: 0644]
gio/src/settingsschemakey.ccg [new file with mode: 0644]
gio/src/settingsschemakey.hg [new file with mode: 0644]
gio/src/settingsschemasource.ccg [new file with mode: 0644]
gio/src/settingsschemasource.hg [new file with mode: 0644]
gio/src/simpleactiongroup.hg
gio/src/tlsconnection.hg
gio/src/volumemonitor.hg
glib/glibmm/arrayhandle.h
glib/glibmm/helperlist.h
glib/glibmm/sarray.cc
glib/glibmm/sarray.h
glib/src/date.hg
glib/src/glib_docs.xml
glib/src/glib_functions.defs
glib/src/thread.hg
tools/extra_defs_gen/generate_defs_gio.cc
tools/m4/convert_gio.m4
tools/m4/filelist.am
tools/m4/list.m4 [deleted file]
tools/m4/method.m4

diff --git a/NEWS b/NEWS
index 8748bbc..a98524d 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -1,3 +1,22 @@
+2.45.3 (unstable):
+
+* Add SettingsSchema, SettingsSchemaKey and SettingsSchemaSource.
+  (Murray Cumming)
+* Deprecate HelperList and SArray because nothing uses them.
+  (Murray Cumming)
+
+Build:
+* Don't disable more deprecation warnings than necessary
+  (Kjell Ahlstedt) Bug #750379.
+
+gmmproc:
+* _WRAP_METHOD: deprecated: Use G_GNUC_[BEGIN|END]_IGNORE_DEPRECATIONS
+  per function, instead of one big undef [G|GDK|GTK]_DISABLE_DEPRECATED.
+  (Kjell Ahlstedt) Bug #750379
+* Remove GP_LIST, because nothing uses it.
+  (Murray Cumming)
+
+
 2.45.2 (unstable):
 
 Glib:
index e854d81..5712864 100644 (file)
@@ -15,7 +15,7 @@
 ## You should have received a copy of the GNU Lesser General Public License
 ## along with this library.  If not, see <http://www.gnu.org/licenses/>.
 
-AC_INIT([glibmm], [2.45.2],
+AC_INIT([glibmm], [2.45.3],
         [http://bugzilla.gnome.org/enter_bug.cgi?product=glibmm],
         [glibmm], [http://www.gtkmm.org/])
 AC_PREREQ([2.59])
@@ -60,7 +60,7 @@ AS_IF([test "x$enable_static" = xyes],
   AC_DEFINE([GIOMM_STATIC_LIB],  [1], [Define if giomm is built as a static library])
 ])
 
-glibreq='2.0 >= 2.44.0'
+glibreq='2.0 >= 2.45.3'
 
 GLIBMM_MODULES="sigc++-2.0 >= 2.2.10 glib-$glibreq gobject-$glibreq gmodule-$glibreq"
 GIOMM_MODULES="$GLIBMM_MODULES gio-$glibreq"
index e778d36..43f6ed5 100644 (file)
 #include <giomm/resource.h>
 #include <giomm/seekable.h>
 #include <giomm/settings.h>
+#include <giomm/settingsschema.h>
+#include <giomm/settingsschemakey.h>
 #include <giomm/simpleaction.h>
 #include <giomm/simpleactiongroup.h>
 #include <giomm/simpleiostream.h>
index 24b0167..98c5e57 100644 (file)
 
 _CONFIGINCLUDE(giommconfig.h)
 
-#m4 _PUSH(SECTION_CC_PRE_INCLUDES)
-#undef G_DISABLE_DEPRECATED
-#define GLIB_DISABLE_DEPRECATION_WARNINGS 1
-#m4 _POP()
-
 #include <giomm/actiongroup.h>
 #include <giomm/actionmap.h>
 #include <giomm/applicationcommandline.h>
index 916830e..9c08401 100644 (file)
@@ -1,5 +1,3 @@
-// -*- Mode: C++; indent-tabs-mode: nil; c-basic-offset: 2 -*-
-
 /* Copyright (C) 2007 The gtkmm Development Team
  *
  * This library is free software; you can redistribute it and/or
@@ -25,11 +23,6 @@ _CONFIGINCLUDE(giommconfig.h)
 _DEFS(giomm,gio)
 _PINCLUDE(glibmm/private/object_p.h)
 
-#m4 _PUSH(SECTION_CC_PRE_INCLUDES)
-#undef G_DISABLE_DEPRECATED
-#define GLIB_DISABLE_DEPRECATION_WARNINGS 1
-#m4 _POP()
-
 namespace Glib
 {
 
index 3618b06..27b991c 100644 (file)
  * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  */
 
-#m4 _PUSH(SECTION_CC_PRE_INCLUDES)
-#undef G_DISABLE_DEPRECATED
-#define GLIB_DISABLE_DEPRECATION_WARNINGS 1
-#m4 _POP()
-
 #include <glibmm/error.h>
 #include <glibmm/interface.h>
 #include <giomm/appinfo.h>
index 71e4fe0..8f65f78 100644 (file)
@@ -101,6 +101,9 @@ giomm_files_any_hg =                        \
        resource.hg                     \
        seekable.hg                     \
        settings.hg                     \
+       settingsschema.hg \
+       settingsschemakey.hg \
+       settingsschemasource.hg \
        simpleaction.hg                 \
        simpleactiongroup.hg            \
        simpleiostream.hg               \
index 0e68617..b773393 100644 (file)
 ;;   G_FILE_MONITOR_NONE             = 0,
 ;;   G_FILE_MONITOR_WATCH_MOUNTS     = (1 << 0),
 ;;   G_FILE_MONITOR_SEND_MOVED       = (1 << 1),
-;;   G_FILE_MONITOR_WATCH_HARD_LINKS = (1 << 2)
+;;   G_FILE_MONITOR_WATCH_HARD_LINKS = (1 << 2),
+;;   G_FILE_MONITOR_WATCH_MOVES      = (1 << 3)
 ;; } GFileMonitorFlags;
 
 (define-flags-extended FileMonitorFlags
     '("watch-mounts" "G_FILE_MONITOR_WATCH_MOUNTS" "(1 << 0)")
     '("send-moved" "G_FILE_MONITOR_SEND_MOVED" "(1 << 1)")
     '("watch-hard-links" "G_FILE_MONITOR_WATCH_HARD_LINKS" "(1 << 2)")
+    '("watch-moves" "G_FILE_MONITOR_WATCH_MOVES" "(1 << 3)")
   )
 )
 
 ;;   G_FILE_MONITOR_EVENT_ATTRIBUTE_CHANGED,
 ;;   G_FILE_MONITOR_EVENT_PRE_UNMOUNT,
 ;;   G_FILE_MONITOR_EVENT_UNMOUNTED,
-;;   G_FILE_MONITOR_EVENT_MOVED
+;;   G_FILE_MONITOR_EVENT_MOVED,
+;;   G_FILE_MONITOR_EVENT_RENAMED,
+;;   G_FILE_MONITOR_EVENT_MOVED_IN,
+;;   G_FILE_MONITOR_EVENT_MOVED_OUT
 ;; } GFileMonitorEvent;
 
 (define-enum-extended FileMonitorEvent
     '("pre-unmount" "G_FILE_MONITOR_EVENT_PRE_UNMOUNT" "5")
     '("unmounted" "G_FILE_MONITOR_EVENT_UNMOUNTED" "6")
     '("moved" "G_FILE_MONITOR_EVENT_MOVED" "7")
+    '("renamed" "G_FILE_MONITOR_EVENT_RENAMED" "8")
+    '("moved-in" "G_FILE_MONITOR_EVENT_MOVED_IN" "9")
+    '("moved-out" "G_FILE_MONITOR_EVENT_MOVED_OUT" "10")
   )
 )
 
 ;; Original typedef:
 ;; typedef enum {
 ;;   G_DBUS_CALL_FLAGS_NONE = 0,
-;;   G_DBUS_CALL_FLAGS_NO_AUTO_START = (1<<0)
+;;   G_DBUS_CALL_FLAGS_NO_AUTO_START = (1<<0),
+;;   G_DBUS_CALL_FLAGS_ALLOW_INTERACTIVE_AUTHORIZATION = (1<<1)
 ;; } GDBusCallFlags;
 
 (define-flags-extended DBusCallFlags
   (values
     '("none" "G_DBUS_CALL_FLAGS_NONE" "0x0")
     '("no-auto-start" "G_DBUS_CALL_FLAGS_NO_AUTO_START" "(1<<0)")
+    '("allow-interactive-authorization" "G_DBUS_CALL_FLAGS_ALLOW_INTERACTIVE_AUTHORIZATION" "(1<<1)")
   )
 )
 
 ;; typedef enum {
 ;;   G_DBUS_MESSAGE_FLAGS_NONE = 0,
 ;;   G_DBUS_MESSAGE_FLAGS_NO_REPLY_EXPECTED = (1<<0),
-;;   G_DBUS_MESSAGE_FLAGS_NO_AUTO_START = (1<<1)
+;;   G_DBUS_MESSAGE_FLAGS_NO_AUTO_START = (1<<1),
+;;   G_DBUS_MESSAGE_FLAGS_ALLOW_INTERACTIVE_AUTHORIZATION = (1<<2)
 ;; } GDBusMessageFlags;
 
 (define-flags-extended DBusMessageFlags
     '("none" "G_DBUS_MESSAGE_FLAGS_NONE" "0x0")
     '("no-reply-expected" "G_DBUS_MESSAGE_FLAGS_NO_REPLY_EXPECTED" "(1<<0)")
     '("no-auto-start" "G_DBUS_MESSAGE_FLAGS_NO_AUTO_START" "(1<<1)")
+    '("allow-interactive-authorization" "G_DBUS_MESSAGE_FLAGS_ALLOW_INTERACTIVE_AUTHORIZATION" "(1<<2)")
   )
 )
 
 )
 
 ;; Original typedef:
+;; typedef enum {
+;;   G_SOCKET_LISTENER_BINDING,
+;;   G_SOCKET_LISTENER_BOUND,
+;;   G_SOCKET_LISTENER_LISTENING,
+;;   G_SOCKET_LISTENER_LISTENED
+;; } GSocketListenerEvent;
+
+(define-enum-extended SocketListenerEvent
+  (in-module "G")
+  (c-name "GSocketListenerEvent")
+  (values
+    '("binding" "G_SOCKET_LISTENER_BINDING" "0")
+    '("bound" "G_SOCKET_LISTENER_BOUND" "1")
+    '("listening" "G_SOCKET_LISTENER_LISTENING" "2")
+    '("listened" "G_SOCKET_LISTENER_LISTENED" "3")
+  )
+)
+
+;; Original typedef:
 ;; typedef enum /*< flags >*/ {
 ;;   G_TEST_DBUS_NONE = 0
 ;; } GTestDBusFlags;
   )
 )
 
+;; From gwin32registrykey.h
+
+;; Original typedef:
+;; typedef enum {
+;;   G_WIN32_REGISTRY_VALUE_NONE = 0,
+;;   G_WIN32_REGISTRY_VALUE_BINARY = 1,
+;;   G_WIN32_REGISTRY_VALUE_UINT32LE = 2,
+;;   G_WIN32_REGISTRY_VALUE_UINT32BE = 3,
+;; #if G_BYTE_ORDER == G_BIG_ENDIAN
+;;   G_WIN32_REGISTRY_VALUE_UINT32 = G_WIN32_REGISTRY_VALUE_UINT32BE,
+;; #else
+;;   G_WIN32_REGISTRY_VALUE_UINT32 = G_WIN32_REGISTRY_VALUE_UINT32LE,
+;; #endif
+;;   G_WIN32_REGISTRY_VALUE_EXPAND_STR = 4,
+;;   G_WIN32_REGISTRY_VALUE_LINK = 5,
+;;   G_WIN32_REGISTRY_VALUE_MULTI_STR = 6,
+;;   G_WIN32_REGISTRY_VALUE_UINT64LE = 7,
+;; #if G_BYTE_ORDER == G_LITTLE_ENDIAN
+;;   G_WIN32_REGISTRY_VALUE_UINT64 = G_WIN32_REGISTRY_VALUE_UINT64LE,
+;; #endif
+;;   G_WIN32_REGISTRY_VALUE_STR = 8
+;; } GWin32RegistryValueType;
+
+(define-enum-extended Win32RegistryValueType
+  (in-module "G")
+  (c-name "GWin32RegistryValueType")
+  (values
+    '("none" "G_WIN32_REGISTRY_VALUE_NONE" "0")
+    '("binary" "G_WIN32_REGISTRY_VALUE_BINARY" "1")
+    '("uint32le" "G_WIN32_REGISTRY_VALUE_UINT32LE" "2")
+    '("uint32be" "G_WIN32_REGISTRY_VALUE_UINT32BE" "3")
+    '("uint32" "G_WIN32_REGISTRY_VALUE_UINT32" "3")
+    '("uint32" "G_WIN32_REGISTRY_VALUE_UINT32" "2")
+    '("expand-str" "G_WIN32_REGISTRY_VALUE_EXPAND_STR" "4")
+    '("link" "G_WIN32_REGISTRY_VALUE_LINK" "5")
+    '("multi-str" "G_WIN32_REGISTRY_VALUE_MULTI_STR" "6")
+    '("uint64le" "G_WIN32_REGISTRY_VALUE_UINT64LE" "7")
+    '("uint64" "G_WIN32_REGISTRY_VALUE_UINT64" "7")
+    '("str" "G_WIN32_REGISTRY_VALUE_STR" "8")
+  )
+)
+
+;; Original typedef:
+;; typedef enum {
+;;   G_WIN32_REGISTRY_WATCH_NAME = 1 << 0,
+;;   G_WIN32_REGISTRY_WATCH_ATTRIBUTES = 1 << 1,
+;;   G_WIN32_REGISTRY_WATCH_VALUES = 1 << 2,
+;;   G_WIN32_REGISTRY_WATCH_SECURITY = 1 << 3,
+;; } GWin32RegistryKeyWatcherFlags;
+
+(define-flags-extended Win32RegistryKeyWatcherFlags
+  (in-module "G")
+  (c-name "GWin32RegistryKeyWatcherFlags")
+  (values
+    '("name" "G_WIN32_REGISTRY_WATCH_NAME" "1 << 0")
+    '("attributes" "G_WIN32_REGISTRY_WATCH_ATTRIBUTES" "1 << 1")
+    '("values" "G_WIN32_REGISTRY_WATCH_VALUES" "1 << 2")
+    '("security" "G_WIN32_REGISTRY_WATCH_SECURITY" "1 << 3")
+  )
+)
+
index a47e231..c1ed447 100644 (file)
   (gtype-id "G_TYPE_RESOURCE")
 )
 
+(define-object SettingsSchema
+  (in-module "Gio")
+  (c-name "GSettingsSchema")
+  (gtype-id "G_TYPE_SETTINGS_SCHEMA")
+)
+
+(define-object SettingsSchemaKey
+  (in-module "Gio")
+  (c-name "GSettingsSchemaKey")
+  (gtype-id "G_TYPE_SETTINGS_SCHEMA_KEY")
+)
+
 (define-object SimpleAction
   (in-module "Gio")
   (c-name "GSimpleAction")
index 4617194..1d46463 100644 (file)
   (gtype-id "G_TYPE_LOADABLE_ICON")
 )
 
-(define-object DirectoryMonitor
-  (in-module "GLocal")
-  (parent "GFileMonitor")
-  (c-name "GLocalDirectoryMonitor")
-  (gtype-id "G_TYPE_LOCAL_DIRECTORY_MONITOR")
-)
-
 (define-object FileIOStream
   (in-module "GLocal")
   (parent "GFileIOStream")
 )
 
 (define-object SocketAddress
+  (in-module "GNative")
+  (parent "GSocketAddress")
+  (c-name "GNativeSocketAddress")
+  (gtype-id "G_TYPE_NATIVE_SOCKET_ADDRESS")
+)
+
+(define-object SocketAddress
   (in-module "GInet")
   (parent "GSocketAddress")
   (c-name "GInetSocketAddress")
   (gtype-id "G_TYPE_WIN32_OUTPUT_STREAM")
 )
 
+(define-object 32RegistryKey
+  (in-module "GWin")
+  (parent "GObject")
+  (c-name "GWin32RegistryKey")
+  (gtype-id "G_TYPE_WIN32_REGISTRY_KEY")
+)
+
 ;; Enumerations and flags ...
 
 (define-enum AuthMechanismState
     '("watch-mounts" "G_FILE_MONITOR_WATCH_MOUNTS")
     '("send-moved" "G_FILE_MONITOR_SEND_MOVED")
     '("watch-hard-links" "G_FILE_MONITOR_WATCH_HARD_LINKS")
+    '("watch-moves" "G_FILE_MONITOR_WATCH_MOVES")
   )
 )
 
     '("pre-unmount" "G_FILE_MONITOR_EVENT_PRE_UNMOUNT")
     '("unmounted" "G_FILE_MONITOR_EVENT_UNMOUNTED")
     '("moved" "G_FILE_MONITOR_EVENT_MOVED")
+    '("renamed" "G_FILE_MONITOR_EVENT_RENAMED")
+    '("moved-in" "G_FILE_MONITOR_EVENT_MOVED_IN")
+    '("moved-out" "G_FILE_MONITOR_EVENT_MOVED_OUT")
   )
 )
 
   (values
     '("none" "G_DBUS_CALL_FLAGS_NONE")
     '("no-auto-start" "G_DBUS_CALL_FLAGS_NO_AUTO_START")
+    '("allow-interactive-authorization" "G_DBUS_CALL_FLAGS_ALLOW_INTERACTIVE_AUTHORIZATION")
   )
 )
 
     '("none" "G_DBUS_MESSAGE_FLAGS_NONE")
     '("no-reply-expected" "G_DBUS_MESSAGE_FLAGS_NO_REPLY_EXPECTED")
     '("no-auto-start" "G_DBUS_MESSAGE_FLAGS_NO_AUTO_START")
+    '("allow-interactive-authorization" "G_DBUS_MESSAGE_FLAGS_ALLOW_INTERACTIVE_AUTHORIZATION")
   )
 )
 
   )
 )
 
+(define-enum ListenerEvent
+  (in-module "GSocket")
+  (c-name "GSocketListenerEvent")
+  (gtype-id "G_TYPE_SOCKET_LISTENER_EVENT")
+  (values
+    '("binding" "G_SOCKET_LISTENER_BINDING")
+    '("bound" "G_SOCKET_LISTENER_BOUND")
+    '("listening" "G_SOCKET_LISTENER_LISTENING")
+    '("listened" "G_SOCKET_LISTENER_LISTENED")
+  )
+)
+
 (define-enum DBusFlags
   (in-module "GTest")
   (c-name "GTestDBusFlags")
   (return-type "GType")
 )
 
+(define-function g_socket_listener_event_get_type
+  (c-name "g_socket_listener_event_get_type")
+  (return-type "GType")
+)
+
 (define-function g_test_dbus_flags_get_type
   (c-name "g_test_dbus_flags_get_type")
   (return-type "GType")
 
 
 
-;; From glocaldirectorymonitor.h
+;; From glocalfileenumerator.h
 
-(define-function g_local_directory_monitor_get_type
-  (c-name "g_local_directory_monitor_get_type")
-  (return-type "GType")
-)
 
-(define-method start
-  (of-object "GLocalDirectoryMonitor")
-  (c-name "g_local_directory_monitor_start")
-  (return-type "none")
-)
 
-(define-function g_local_directory_monitor_new_in_worker
-  (c-name "g_local_directory_monitor_new_in_worker")
-  (return-type "GLocalDirectoryMonitor*")
+;; From glocalfile.h
+
+(define-function g_local_file_is_remote
+  (c-name "g_local_file_is_remote")
+  (return-type "gboolean")
   (parameters
-    '("const-char*" "pathname")
-    '("GFileMonitorFlags" "flags")
-    '("GError**" "error")
+    '("const-gchar*" "filename")
   )
 )
 
-
-
-;; From glocalfileenumerator.h
-
-
-
-;; From glocalfile.h
+(define-function g_local_file_new_from_dirname_and_basename
+  (c-name "g_local_file_new_from_dirname_and_basename")
+  (return-type "GFile*")
+  (parameters
+    '("const-char*" "dirname")
+    '("const-char*" "basename")
+  )
+)
 
 
 
   (return-type "GType")
 )
 
-(define-method start
-  (of-object "GLocalFileMonitor")
-  (c-name "g_local_file_monitor_start")
-  (return-type "none")
+(define-function g_local_file_monitor_new_for_path
+  (c-name "g_local_file_monitor_new_for_path")
+  (return-type "GFileMonitor*")
+  (parameters
+    '("const-gchar*" "pathname")
+    '("gboolean" "is_directory")
+    '("GFileMonitorFlags" "flags")
+    '("GError**" "error")
+  )
 )
 
 (define-function g_local_file_monitor_new_in_worker
   (c-name "g_local_file_monitor_new_in_worker")
-  (return-type "GLocalFileMonitor*")
+  (return-type "GFileMonitor*")
   (parameters
-    '("const-char*" "pathname")
+    '("const-gchar*" "pathname")
+    '("gboolean" "is_directory")
     '("GFileMonitorFlags" "flags")
+    '("GFileMonitorCallback" "callback")
+    '("gpointer" "user_data")
     '("GError**" "error")
   )
 )
 
+(define-method handle_event
+  (of-object "GFileMonitorSource")
+  (c-name "g_file_monitor_source_handle_event")
+  (return-type "gboolean")
+  (parameters
+    '("GFileMonitorEvent" "event_type")
+    '("const-gchar*" "child")
+    '("const-gchar*" "rename_to")
+    '("GFile*" "other")
+    '("gint64" "event_time")
+  )
+)
+
 
 
 ;; From glocalfileoutputstream.h
 
 
 
+;; From gnativesocketaddress.h
+
+(define-function g_native_socket_address_get_type
+  (c-name "g_native_socket_address_get_type")
+  (return-type "GType")
+)
+
+(define-function g_native_socket_address_new
+  (c-name "g_native_socket_address_new")
+  (is-constructor-of "GNativeSocketAddress")
+  (return-type "GSocketAddress*")
+  (parameters
+    '("gpointer" "native")
+    '("gsize" "len")
+  )
+)
+
+
+
 ;; From gnativevolumemonitor.h
 
 (define-function g_native_volume_monitor_get_type
   )
 )
 
+(define-method list_keys
+  (of-object "GSettingsSchema")
+  (c-name "g_settings_schema_list_keys")
+  (return-type "gchar**")
+)
+
 (define-method list_children
   (of-object "GSettingsSchema")
   (c-name "g_settings_schema_list_children")
   (return-type "GList*")
 )
 
+(define-method copy_session_state
+  (of-object "GTlsClientConnection")
+  (c-name "g_tls_client_connection_copy_session_state")
+  (return-type "none")
+  (parameters
+    '("GTlsClientConnection*" "source")
+  )
+)
+
 
 
 ;; From gtlsconnection.h
 
 
 
+;; From gwin32registrykey.h
+
+(define-method copy
+  (of-object "GWin32RegistrySubkeyIter")
+  (c-name "g_win32_registry_subkey_iter_copy")
+  (return-type "GWin32RegistrySubkeyIter*")
+)
+
+(define-method free
+  (of-object "GWin32RegistrySubkeyIter")
+  (c-name "g_win32_registry_subkey_iter_free")
+  (return-type "none")
+)
+
+(define-method assign
+  (of-object "GWin32RegistrySubkeyIter")
+  (c-name "g_win32_registry_subkey_iter_assign")
+  (return-type "none")
+  (parameters
+    '("const-GWin32RegistrySubkeyIter*" "other")
+  )
+)
+
+(define-function g_win32_registry_subkey_iter_get_type
+  (c-name "g_win32_registry_subkey_iter_get_type")
+  (return-type "GType")
+)
+
+(define-method copy
+  (of-object "GWin32RegistryValueIter")
+  (c-name "g_win32_registry_value_iter_copy")
+  (return-type "GWin32RegistryValueIter*")
+)
+
+(define-method free
+  (of-object "GWin32RegistryValueIter")
+  (c-name "g_win32_registry_value_iter_free")
+  (return-type "none")
+)
+
+(define-method assign
+  (of-object "GWin32RegistryValueIter")
+  (c-name "g_win32_registry_value_iter_assign")
+  (return-type "none")
+  (parameters
+    '("const-GWin32RegistryValueIter*" "other")
+  )
+)
+
+(define-function g_win32_registry_value_iter_get_type
+  (c-name "g_win32_registry_value_iter_get_type")
+  (return-type "GType")
+)
+
+(define-function g_win32_registry_key_get_type
+  (c-name "g_win32_registry_key_get_type")
+  (return-type "GType")
+)
+
+(define-function g_win32_registry_key_new
+  (c-name "g_win32_registry_key_new")
+  (is-constructor-of "GWin32RegistryKey")
+  (return-type "GWin32RegistryKey*")
+  (parameters
+    '("const-gchar*" "path")
+    '("GError**" "error")
+  )
+)
+
+(define-function g_win32_registry_key_new_w
+  (c-name "g_win32_registry_key_new_w")
+  (return-type "GWin32RegistryKey*")
+  (parameters
+    '("const-gunichar2*" "path")
+    '("GError**" "error")
+  )
+)
+
+(define-method get_child
+  (of-object "GWin32RegistryKey")
+  (c-name "g_win32_registry_key_get_child")
+  (return-type "GWin32RegistryKey*")
+  (parameters
+    '("const-gchar*" "subkey")
+    '("GError**" "error")
+  )
+)
+
+(define-method get_child_w
+  (of-object "GWin32RegistryKey")
+  (c-name "g_win32_registry_key_get_child_w")
+  (return-type "GWin32RegistryKey*")
+  (parameters
+    '("const-gunichar2*" "subkey")
+    '("GError**" "error")
+  )
+)
+
+(define-method init
+  (of-object "GWin32RegistrySubkeyIter")
+  (c-name "g_win32_registry_subkey_iter_init")
+  (return-type "gboolean")
+  (parameters
+    '("GWin32RegistryKey*" "key")
+    '("GError**" "error")
+  )
+)
+
+(define-method clear
+  (of-object "GWin32RegistrySubkeyIter")
+  (c-name "g_win32_registry_subkey_iter_clear")
+  (return-type "none")
+)
+
+(define-method n_subkeys
+  (of-object "GWin32RegistrySubkeyIter")
+  (c-name "g_win32_registry_subkey_iter_n_subkeys")
+  (return-type "gsize")
+)
+
+(define-method next
+  (of-object "GWin32RegistrySubkeyIter")
+  (c-name "g_win32_registry_subkey_iter_next")
+  (return-type "gboolean")
+  (parameters
+    '("gboolean" "skip_errors")
+    '("GError**" "error")
+  )
+)
+
+(define-method get_name
+  (of-object "GWin32RegistrySubkeyIter")
+  (c-name "g_win32_registry_subkey_iter_get_name")
+  (return-type "gboolean")
+  (parameters
+    '("gchar**" "subkey_name")
+    '("gsize*" "subkey_name_len")
+    '("GError**" "error")
+  )
+)
+
+(define-method get_name_w
+  (of-object "GWin32RegistrySubkeyIter")
+  (c-name "g_win32_registry_subkey_iter_get_name_w")
+  (return-type "gboolean")
+  (parameters
+    '("gunichar2**" "subkey_name")
+    '("gsize*" "subkey_name_len")
+    '("GError**" "error")
+  )
+)
+
+(define-method init
+  (of-object "GWin32RegistryValueIter")
+  (c-name "g_win32_registry_value_iter_init")
+  (return-type "gboolean")
+  (parameters
+    '("GWin32RegistryKey*" "key")
+    '("GError**" "error")
+  )
+)
+
+(define-method clear
+  (of-object "GWin32RegistryValueIter")
+  (c-name "g_win32_registry_value_iter_clear")
+  (return-type "none")
+)
+
+(define-method n_values
+  (of-object "GWin32RegistryValueIter")
+  (c-name "g_win32_registry_value_iter_n_values")
+  (return-type "gsize")
+)
+
+(define-method next
+  (of-object "GWin32RegistryValueIter")
+  (c-name "g_win32_registry_value_iter_next")
+  (return-type "gboolean")
+  (parameters
+    '("gboolean" "skip_errors")
+    '("GError**" "error")
+  )
+)
+
+(define-method get_value_type
+  (of-object "GWin32RegistryValueIter")
+  (c-name "g_win32_registry_value_iter_get_value_type")
+  (return-type "gboolean")
+  (parameters
+    '("GWin32RegistryValueType*" "value_type")
+    '("GError**" "error")
+  )
+)
+
+(define-method get_name
+  (of-object "GWin32RegistryValueIter")
+  (c-name "g_win32_registry_value_iter_get_name")
+  (return-type "gboolean")
+  (parameters
+    '("gchar**" "value_name")
+    '("gsize*" "value_name_len")
+    '("GError**" "error")
+  )
+)
+
+(define-method get_name_w
+  (of-object "GWin32RegistryValueIter")
+  (c-name "g_win32_registry_value_iter_get_name_w")
+  (return-type "gboolean")
+  (parameters
+    '("gunichar2**" "value_name")
+    '("gsize*" "value_name_len")
+    '("GError**" "error")
+  )
+)
+
+(define-method get_data
+  (of-object "GWin32RegistryValueIter")
+  (c-name "g_win32_registry_value_iter_get_data")
+  (return-type "gboolean")
+  (parameters
+    '("gboolean" "auto_expand")
+    '("gpointer*" "value_data")
+    '("gsize*" "value_data_size")
+    '("GError**" "error")
+  )
+)
+
+(define-method get_data_w
+  (of-object "GWin32RegistryValueIter")
+  (c-name "g_win32_registry_value_iter_get_data_w")
+  (return-type "gboolean")
+  (parameters
+    '("gboolean" "auto_expand")
+    '("gpointer*" "value_data")
+    '("gsize*" "value_data_size")
+    '("GError**" "error")
+  )
+)
+
+(define-method get_value
+  (of-object "GWin32RegistryKey")
+  (c-name "g_win32_registry_key_get_value")
+  (return-type "gboolean")
+  (parameters
+    '("gboolean" "auto_expand")
+    '("const-gchar*" "value_name")
+    '("GWin32RegistryValueType*" "value_type")
+    '("gpointer*" "value_data")
+    '("gsize*" "value_data_size")
+    '("GError**" "error")
+  )
+)
+
+(define-method get_value_w
+  (of-object "GWin32RegistryKey")
+  (c-name "g_win32_registry_key_get_value_w")
+  (return-type "gboolean")
+  (parameters
+    '("gboolean" "auto_expand")
+    '("const-gunichar2*" "value_name")
+    '("GWin32RegistryValueType*" "value_type")
+    '("gpointer*" "value_data")
+    '("gsize*" "value_data_size")
+    '("GError**" "error")
+  )
+)
+
+(define-method get_path
+  (of-object "GWin32RegistryKey")
+  (c-name "g_win32_registry_key_get_path")
+  (return-type "const-gchar*")
+)
+
+(define-method get_path_w
+  (of-object "GWin32RegistryKey")
+  (c-name "g_win32_registry_key_get_path_w")
+  (return-type "const-gunichar2*")
+)
+
+(define-method watch
+  (of-object "GWin32RegistryKey")
+  (c-name "g_win32_registry_key_watch")
+  (return-type "gboolean")
+  (parameters
+    '("gboolean" "watch_children")
+    '("GWin32RegistryKeyWatcherFlags" "watch_flags")
+    '("GWin32RegistryKeyWatchCallbackFunc" "callback")
+    '("gpointer" "user_data")
+    '("GError**" "error")
+  )
+)
+
+(define-method has_changed
+  (of-object "GWin32RegistryKey")
+  (c-name "g_win32_registry_key_has_changed")
+  (return-type "gboolean")
+)
+
+(define-method erase_change_indicator
+  (of-object "GWin32RegistryKey")
+  (c-name "g_win32_registry_key_erase_change_indicator")
+  (return-type "none")
+)
+
+
+
 ;; From gwin32volumemonitor.h
 
 
index 289e676..92d6701 100644 (file)
   (construct-only #f)
 )
 
-(define-property context
-  (of-object "GFileMonitor")
-  (prop-type "GParamBoxed")
-  (docs "The main context to dispatch from")
-  (readable #f)
-  (writable #t)
-  (construct-only #t)
-)
-
 ;; From GFilenameCompleter
 
 (define-signal got-completion-data
   (construct-only #t)
 )
 
+(define-property invert-boolean
+  (of-object "GPropertyAction")
+  (prop-type "GParamBoolean")
+  (docs "Whether to invert the value of a boolean property")
+  (readable #t)
+  (writable #t)
+  (construct-only #t)
+)
+
 ;; From GProxy
 
 ;; From GProxyAddress
   (construct-only #f)
 )
 
+;; GSettingsSchema is neither a GObject nor a GInterface. Not checked for signals and properties.
+
+;; GSettingsSchemaKey is neither a GObject nor a GInterface. Not checked for signals and properties.
+
+;; GSettingsSchemaSource is neither a GObject nor a GInterface. Not checked for signals and properties.
+
 ;; From GSimplePermission
 
 ;; From GSocket
 
 ;; From GSocketListener
 
+(define-signal event
+  (of-object "GSocketListener")
+  (return-type "void")
+  (when "last")
+  (parameters
+    '("GSocketListenerEvent" "p0")
+    '("GSocket*" "p1")
+  )
+)
+
 (define-property listen-backlog
   (of-object "GSocketListener")
   (prop-type "GParamInt")
index cd5ec92..806cd2e 100644 (file)
 _DEFS(giomm,gio)
 _PINCLUDE(glibmm/private/object_p.h)
 
-#m4 _PUSH(SECTION_CC_PRE_INCLUDES)
-#undef G_DISABLE_DEPRECATED
-#define GLIB_DISABLE_DEPRECATION_WARNINGS 1
-#m4 _POP()
-
 namespace Gio
 {
 class Icon;
index d800aa9..03e4807 100644 (file)
@@ -64,10 +64,12 @@ void Settings::bind_writable(const Glib::ustring& key,
 }
 
 _DEPRECATE_IFDEF_START
+G_GNUC_BEGIN_IGNORE_DEPRECATIONS
 std::vector<Glib::ustring> Settings::list_schemas()
 {
   return Glib::ArrayHandler<Glib::ustring>::array_to_vector(g_settings_list_schemas(), Glib::OWNERSHIP_NONE);
 }
+G_GNUC_END_IGNORE_DEPRECATIONS
 _DEPRECATE_IFDEF_END
 
 }
index e87c0b3..7d48e72 100644 (file)
@@ -25,11 +25,6 @@ _CONFIGINCLUDE(giommconfig.h)
 _DEFS(giomm,gio)
 _PINCLUDE(glibmm/private/object_p.h)
 
-#m4 _PUSH(SECTION_CC_PRE_INCLUDES)
-#undef G_DISABLE_DEPRECATED
-#define GLIB_DISABLE_DEPRECATION_WARNINGS 1
-#m4 _POP()
-
 namespace Gio
 {
 
@@ -181,7 +176,7 @@ _DEPRECATE_IFDEF_END
 
 #m4 _CONVERSION(`gchar**',`std::vector<Glib::ustring>',`Glib::ArrayHandler<Glib::ustring>::array_to_vector($3, Glib::OWNERSHIP_DEEP)')
   _WRAP_METHOD(std::vector<Glib::ustring> list_children() const, g_settings_list_children)
-  _WRAP_METHOD(std::vector<Glib::ustring> list_keys() const, g_settings_list_keys)
+  _WRAP_METHOD(std::vector<Glib::ustring> list_keys() const, g_settings_list_keys, deprecated "Use SettingsSchema::list_kes().")
 
   _IGNORE(g_settings_get_range, g_settings_list_relocatable_schemas) // deprecated
 
diff --git a/gio/src/settingsschema.ccg b/gio/src/settingsschema.ccg
new file mode 100644 (file)
index 0000000..a8ef5d4
--- /dev/null
@@ -0,0 +1,23 @@
+/* Copyright (C) 2015 The giomm Development Team
+ *
+ * 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.1 of the License, 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., 675 Mass Ave, Cambridge, MA 02139, USA.
+ */
+
+#include <gio/gio.h>
+
+namespace Gio
+{
+
+} //namespace Gio
diff --git a/gio/src/settingsschema.hg b/gio/src/settingsschema.hg
new file mode 100644 (file)
index 0000000..4ff7e83
--- /dev/null
@@ -0,0 +1,82 @@
+/* Copyright (C) 2015 The giomm Development Team
+ *
+ * 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.1 of the License, 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., 675 Mass Ave, Cambridge, MA 02139, USA.
+ */
+
+_CONFIGINCLUDE(giommconfig.h)
+
+#include <giomm/settingsschemakey.h>
+#include <glibmm/arrayhandle.h>
+
+_DEFS(giomm,gio)
+_PINCLUDE(glibmm/private/object_p.h)
+
+#ifndef DOXYGEN_SHOULD_SKIP_THIS
+typedef struct _GSettingsSchema GSettingsSchema;
+#endif
+
+namespace Gio
+{
+
+//TODO: Translate more of the class documentation from the C docs.
+
+/** Introspecting and controlling the loading of GSettings schemas.
+ *
+ * The SettingsSchemaSource and SettingsSchema APIs provide a
+ * mechanism for advanced control over the loading of schemas and a
+ * mechanism for introspecting their content.
+ *
+ * Plugin loading systems that wish to provide plugins a way to access
+ * settings face the problem of how to make the schemas for these
+ * settings visible to GSettings.  Typically, a plugin will want to ship
+ * the schema along with itself and it won't be installed into the
+ * standard system directories for schemas.
+ *
+ * SettingsSchemaSource provides a mechanism for dealing with this by
+ * allowing the creation of a new 'schema source' from which schemas can
+ * be acquired.  This schema source can then become part of the metadata
+ * associated with the plugin and queried whenever the plugin requires
+ * access to some settings.
+ *
+ * @newin{2,32}
+ */
+class SettingsSchema
+{
+  _CLASS_OPAQUE_REFCOUNTED(SettingsSchema, GSettingsSchema, NONE, g_settings_schema_ref, g_settings_schema_unref)
+
+protected:
+  _IGNORE(g_settings_schema_ref, g_settings_schema_unref)
+
+  //Ignore internal GSettingsSchema functions.
+  _IGNORE(g_settings_schema_get_value, g_settings_schema_list, g_settings_schema_get_string, g_settings_schema_get_gettext_domain)
+
+public:
+  _WRAP_METHOD(Glib::ustring get_id() const, g_settings_schema_get_id)
+  _WRAP_METHOD(Glib::ustring get_path() const, g_settings_schema_get_path)
+
+  //Note that these don't need refreturn because they seem to return a reference
+  //(they are documented as transfer:full)
+  _WRAP_METHOD(Glib::RefPtr<SettingsSchemaKey> get_key(const Glib::ustring& name), g_settings_schema_get_key)
+  _WRAP_METHOD(Glib::RefPtr<const SettingsSchemaKey> get_key(const Glib::ustring& name) const, g_settings_schema_get_key)
+
+  _WRAP_METHOD(bool has_key(const Glib::ustring& name) const, g_settings_schema_has_key)
+
+#m4 _CONVERSION(`gchar**',`std::vector<Glib::ustring>',`Glib::ArrayHandler<Glib::ustring>::array_to_vector($3, Glib::OWNERSHIP_DEEP)')
+  _WRAP_METHOD(std::vector<Glib::ustring> list_keys() const, g_settings_schema_list_keys)
+
+  _WRAP_METHOD(std::vector<Glib::ustring> list_children() const, g_settings_schema_list_children)
+};
+
+} // namespace Gio
diff --git a/gio/src/settingsschemakey.ccg b/gio/src/settingsschemakey.ccg
new file mode 100644 (file)
index 0000000..a8ef5d4
--- /dev/null
@@ -0,0 +1,23 @@
+/* Copyright (C) 2015 The giomm Development Team
+ *
+ * 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.1 of the License, 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., 675 Mass Ave, Cambridge, MA 02139, USA.
+ */
+
+#include <gio/gio.h>
+
+namespace Gio
+{
+
+} //namespace Gio
diff --git a/gio/src/settingsschemakey.hg b/gio/src/settingsschemakey.hg
new file mode 100644 (file)
index 0000000..cca21c7
--- /dev/null
@@ -0,0 +1,63 @@
+/* Copyright (C) 2015 The giomm Development Team
+ *
+ * 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.1 of the License, 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., 675 Mass Ave, Cambridge, MA 02139, USA.
+ */
+
+_CONFIGINCLUDE(giommconfig.h)
+
+#include <glibmm/variant.h>
+
+_DEFS(giomm,gio)
+_PINCLUDE(glibmm/private/object_p.h)
+
+#ifndef DOXYGEN_SHOULD_SKIP_THIS
+typedef struct _GSettingsSchemaKey GSettingsSchemaKey;
+#endif
+
+namespace Gio
+{
+
+//TODO: Add some class documentation, though there is none in the C docs.
+
+/** See SettingsSchema.
+ *
+ * @newin{2,32}
+ */
+class SettingsSchemaKey
+{
+  _CLASS_OPAQUE_REFCOUNTED(SettingsSchemaKey, GSettingsSchemaKey, NONE, g_settings_schema_key_ref, g_settings_schema_key_unref)
+
+protected:
+  _IGNORE(g_settings_schema_key_ref, g_settings_schema_key_unref)
+
+  //Ignore internal GSettingsSchemaKey functions.
+  _IGNORE(g_settings_schema_key_init, g_settings_schema_key_clear,
+    g_settings_schema_key_type_check, g_settings_schema_key_range_fixup,
+    g_settings_schema_key_get_translated_default, g_settings_schema_key_to_enum,
+    g_settings_schema_key_from_enum, g_settings_schema_key_to_flags,
+    g_settings_schema_key_from_flags)
+
+public:
+  //TODO: _WRAP_METHOD(const GVariantType *    g_settings_schema_key_get_value_type           (), g_settings_schema_key_get_value_type)
+  //_WRAP_METHOD(GVariant *              g_settings_schema_key_get_default_value        (), g_settings_schema_key_get_default_value)
+  //_WRAP_METHOD(GVariant *              g_settings_schema_key_get_range                (), g_settings_schema_key_get_range)
+  //TODO: _WRAP_METHOD(bool range_check(GVariant               *value), g_settings_schema_key_range_check)
+
+  _WRAP_METHOD(Glib::ustring get_name() const, g_settings_schema_key_get_name)
+  _WRAP_METHOD(Glib::ustring get_summary() const, g_settings_schema_key_get_summary)
+  _WRAP_METHOD(Glib::ustring get_description() const, g_settings_schema_key_get_description)
+};
+
+} // namespace Gio
diff --git a/gio/src/settingsschemasource.ccg b/gio/src/settingsschemasource.ccg
new file mode 100644 (file)
index 0000000..a8ef5d4
--- /dev/null
@@ -0,0 +1,23 @@
+/* Copyright (C) 2015 The giomm Development Team
+ *
+ * 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.1 of the License, 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., 675 Mass Ave, Cambridge, MA 02139, USA.
+ */
+
+#include <gio/gio.h>
+
+namespace Gio
+{
+
+} //namespace Gio
diff --git a/gio/src/settingsschemasource.hg b/gio/src/settingsschemasource.hg
new file mode 100644 (file)
index 0000000..2731f2b
--- /dev/null
@@ -0,0 +1,65 @@
+/* Copyright (C) 2015 The giomm Development Team
+ *
+ * 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.1 of the License, 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., 675 Mass Ave, Cambridge, MA 02139, USA.
+ */
+
+_CONFIGINCLUDE(giommconfig.h)
+
+#include <giomm/settingsschema.h>
+
+_DEFS(giomm,gio)
+_PINCLUDE(glibmm/private/object_p.h)
+
+#ifndef DOXYGEN_SHOULD_SKIP_THIS
+typedef struct _GSettingsSchemaSource GSettingsSchemaSource;
+#endif
+
+namespace Gio
+{
+
+//TODO: Add some class documentation, though there is none in the C docs.
+
+/** See SettingsSchema.
+ *
+ * @newin{2,32}
+ */
+class SettingsSchemaSource
+{
+  _CLASS_OPAQUE_REFCOUNTED(SettingsSchemaSource, GSettingsSchemaSource, NONE, g_settings_schema_source_ref, g_settings_schema_source_unref)
+
+protected:
+  _IGNORE(g_settings_schema_source_ref, g_settings_schema_source_unref)
+
+public:
+
+  _WRAP_METHOD(static Glib::RefPtr<SettingsSchemaSource> get_default(), g_settings_schema_source_get_default)
+
+/* TODO:
+GLIB_AVAILABLE_IN_2_32
+GSettingsSchemaSource * g_settings_schema_source_new_from_directory     (const gchar            *directory,
+                                                                         GSettingsSchemaSource  *parent,
+                                                                         gboolean                trusted,
+                                                                         GError                **error);
+*/
+
+  //Note this doesn't need refreturn because the C function returns a reference.
+  //- it is documented as transfer:full
+  _WRAP_METHOD(Glib::RefPtr<SettingsSchema> lookup(const Glib::ustring& schema_id, bool recursive), g_settings_schema_source_lookup)
+  _WRAP_METHOD(Glib::RefPtr<const SettingsSchema> lookup(const Glib::ustring& schema_id, bool recursive) const, g_settings_schema_source_lookup)
+
+  //TODO:_WRAP_METHOD(void list_schemas(bool recursive,  gchar*** non_relocatable, gchar*** relocatable), g_settings_schema_source_list_schemas)
+};
+
+} // namespace Gio
index 138e4fe..0c3fc8c 100644 (file)
@@ -23,11 +23,6 @@ _CONFIGINCLUDE(giommconfig.h)
 _DEFS(giomm,gio)
 _PINCLUDE(glibmm/private/object_p.h)
 
-#m4 _PUSH(SECTION_CC_PRE_INCLUDES)
-#undef G_DISABLE_DEPRECATED
-#define GLIB_DISABLE_DEPRECATION_WARNINGS 1
-#m4 _POP()
-
 namespace Gio
 {
 
index bc753d3..7a4a044 100644 (file)
@@ -24,11 +24,6 @@ _CONFIGINCLUDE(giommconfig.h)
 _DEFS(giomm,gio)
 _PINCLUDE(giomm/private/iostream_p.h)
 
-#m4 _PUSH(SECTION_CC_PRE_INCLUDES)
-#undef G_DISABLE_DEPRECATED
-#define GLIB_DISABLE_DEPRECATION_WARNINGS 1
-#m4 _POP()
-
 namespace Gio
 {
 
index 5a5fcf9..df32646 100644 (file)
@@ -1,5 +1,3 @@
-// -*- Mode: C++; indent-tabs-mode: nil; c-basic-offset: 2 -*-
-
 /* Copyright (C) 2007 The gtkmm Development Team
  *
  * This library is free software; you can redistribute it and/or
 
 _CONFIGINCLUDE(giommconfig.h)
 
-#m4 _PUSH(SECTION_CC_PRE_INCLUDES)
-#undef G_DISABLE_DEPRECATED
-#define GLIB_DISABLE_DEPRECATION_WARNINGS 1
-#m4 _POP()
-
 #include <giomm/drive.h>
 #include <giomm/volume.h>
 #include <giomm/mount.h>
index 6938c64..87127eb 100644 (file)
@@ -210,6 +210,10 @@ private:
 } // namespace Container_Helpers
 
 
+//TODO: When we can break ABI, remove this and replace uses of it with std::vector.
+//We cannot deprecate it yet, because we cannot easily deprecate methods that use it
+//- for instance, we cannot just override methods that use it as a return type.
+
 /** This is an intermediate type. When a method takes this, or returns this, you
  * should use a standard C++ container of your choice, such as std::list or
  * std::vector.
index dfdc070..1955be1 100644 (file)
  * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  */
 
+#ifndef GLIBMM_DISABLE_DEPRECATED
+
 #include <glibmm/containers.h>
 
 namespace Glib
 {
 
 // This class has some pure virtual methods which need to be implemented by derived classes.
+
+/**
+ * @deprecated This class should no longer be necessary. It has not been used
+ * by glibmm or gtkmm since gtkmm-2.4.
+ */
 template< typename T_Child, typename T_CppElement, typename T_Iterator >
 class HelperList
 {
@@ -162,5 +169,7 @@ protected:
 
 } /* namespace Glib */
 
+#endif //GLIBMM_DISABLE_DEPRECATED
+
 #endif /* _GLIBMM_HELPERLIST_H */
 
index 2d7c682..a7d6e31 100644 (file)
  */
 
 #include <glibmm/sarray.h>
-/*
-namespace Glib
-{
 
-SArray::SArray(const SArray& src)
-: type_base(src)
-{
-}
-
-SArray::SArray(const T_c* pValues, size_type size)
-: type_base(pValues, size)
-{
-}
-
-SArray::operator std::vector<nstring>() const
-{
-  return std::vector<nstring>(begin(), end());
-}
-
-SArray::operator std::vector<ustring>() const
-{
-  return std::vector<ustring>(begin(), end());
-}
-
-SArray::operator std::vector<std::string>() const
-{
-  return std::vector<std::string>(begin(), end());
-}
-
-
-SArray::operator std::deque<nstring>() const
-{
-  return std::deque<nstring>(begin(), end());
-}
-
-SArray::operator std::deque<ustring>() const
-{
-  return std::deque<ustring>(begin(), end());
-}
-
-SArray::operator std::deque<std::string>() const
-{
-  return std::deque<std::string>(begin(), end());
-}
-
-SArray::operator std::list<nstring>() const
-{
-  return std::list<nstring>(begin(), end());
-}
-
-SArray::operator std::list<ustring>() const
-{
-  return std::list<ustring>(begin(), end());
-}
-
-SArray::operator std::list<std::string>() const
-{
-  return std::list<std::string>(begin(), end());
-}
-
-}; // namespace Glib
-*/
index 4f7e474..6226f50 100644 (file)
  * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  */
 
-
+#ifndef GLIBMM_DISABLE_DEPRECATED
 #include <glibmm/arrayhandle.h>
 #include <glibmm/ustring.h>
 
-namespace Glib { typedef Glib::ArrayHandle<Glib::ustring> SArray; }
-
-#if 0
-
-namespace Glib
-{
-
-template <>
-inline void cpp_type_to_c_type(const ustring& cpp_value, type_constpch& ref_c_value)
-{
-  ref_c_value = cpp_value.c_str();
-}
-
-template <>
-inline void cpp_type_to_c_type(const std::string& cpp_value, type_constpch& ref_c_value)
-{
-  ref_c_value = cpp_value.c_str();
-}
-
-typedef Array<Glib::ustring, const char*> SArray;
-
-/*
-class SArray: public Array<nstring, const char*>
-{
-public:
-  typedef const char* T_c;
-  typedef Array<nstring, const char*> type_base;
-
-  SArray(const SArray& src);
-
-  // copy other containers
-  template <typename T_container>
-  SArray(const T_container& t)
-  {
-    owned_ = Array_Helpers::Traits<T_container, pointer>::get_owned();
-    size_ = Array_Helpers::Traits<T_container, pointer>::get_size(t);
-    pData_ = Array_Helpers::Traits<T_container, pointer>::get_data(t);
-  }
-
-  SArray(const T_c* pValues, size_type size);
-
-  // copy a sequence
-  template <typename Iterator>
-  SArray(Iterator b, Iterator e);
-
-  operator std::vector<nstring>() const;
-  operator std::vector<ustring>() const;
-  operator std::vector<std::string>() const;
-
-  operator std::deque<nstring>() const;
-  operator std::deque<ustring>() const;
-  operator std::deque<std::string>() const;
-
-  operator std::list<nstring>() const;
-  operator std::list<ustring>() const;
-  operator std::list<std::string>() const;
-};
-
-
-//template <typename T_container>
-//SArray::SArray(const T_container& t)
-//: type_base(t)
-//{
-//}
+namespace Glib {
 
+/**
+ * @deprecated Use a std::vector instead.
+ */
+typedef Glib::ArrayHandle<Glib::ustring> SArray;
 
-template <typename Iterator>
-SArray::SArray(Iterator b, Iterator e)
-: type_base(b, e)
-{
 }
-*/
-
-} // namespace Glib
 
-#endif /* #if 0 */
+#endif //GLIBMM_DISABLE_DEPRECATED
 
 #endif // _GLIBMM_SARRAY_H
 
index 472dc60..5a307e6 100644 (file)
 
 _DEFS(glibmm,glib)
 
-#m4 _PUSH(SECTION_CC_PRE_INCLUDES)
-/* So we can use deprecated functions in our deprecated methods */
-#undef G_DISABLE_DEPRECATED
-#define GLIB_DISABLE_DEPRECATION_WARNINGS 1
-#m4 _POP()
-
 #include <glibmmconfig.h>
 #include <glibmm/ustring.h>
 #include <glib.h>
index 1447208..99b8218 100644 (file)
@@ -9424,40 +9424,35 @@ g_closure_set_meta_marshal()
 
 <function name="g_cclosure_marshal_BOOLEAN__FLAGS">
 <description>
-A #GClosureMarshal function for use with signals with handlers that
-take a flags type as an argument and return a boolean.  If you have
-such a signal, you will probably also need to use an accumulator,
-such as g_signal_accumulator_true_handled().
+A marshaller for a #GCClosure with a callback of type
+`gboolean (*callback) (gpointer instance, gint arg1, gpointer user_data)` where the #gint parameter
+denotes a flags type.
 
 </description>
 <parameters>
 <parameter name="closure">
-<parameter_description> A #GClosure.
+<parameter_description> the #GClosure to which the marshaller belongs
 </parameter_description>
 </parameter>
 <parameter name="return_value">
-<parameter_description> A #GValue to store the return value. May be %NULL
-if the callback of closure doesn't return a value.
+<parameter_description> a #GValue which can store the returned #gboolean
 </parameter_description>
 </parameter>
 <parameter name="n_param_values">
-<parameter_description> The length of the @param_values array.
+<parameter_description> 2
 </parameter_description>
 </parameter>
 <parameter name="param_values">
-<parameter_description> An array of #GValues holding the arguments
-on which to invoke the callback of closure.
+<parameter_description> a #GValue array holding instance and arg1
 </parameter_description>
 </parameter>
 <parameter name="invocation_hint">
-<parameter_description> The invocation hint given as the last argument to
-g_closure_invoke().
+<parameter_description> the invocation hint given as the last argument
+to g_closure_invoke()
 </parameter_description>
 </parameter>
 <parameter name="marshal_data">
-<parameter_description> Additional data specified when registering the
-marshaller, see g_closure_set_marshal() and
-g_closure_set_meta_marshal()
+<parameter_description> additional data specified when registering the marshaller
 </parameter_description>
 </parameter>
 </parameters>
@@ -9586,78 +9581,44 @@ g_closure_set_meta_marshal()
 
 <function name="g_cclosure_marshal_BOOL__FLAGS">
 <description>
-An old alias for g_cclosure_marshal_BOOLEAN__FLAGS().
+Another name for g_cclosure_marshal_BOOLEAN__FLAGS().
 
 </description>
 <parameters>
-<parameter name="closure">
-<parameter_description> A #GClosure.
-</parameter_description>
-</parameter>
-<parameter name="return_value">
-<parameter_description> A #GValue to store the return value. May be %NULL
-if the callback of closure doesn't return a value.
-</parameter_description>
-</parameter>
-<parameter name="n_param_values">
-<parameter_description> The length of the @param_values array.
-</parameter_description>
-</parameter>
-<parameter name="param_values">
-<parameter_description> An array of #GValues holding the arguments
-on which to invoke the callback of closure.
-</parameter_description>
-</parameter>
-<parameter name="invocation_hint">
-<parameter_description> The invocation hint given as the last argument to
-g_closure_invoke().
-</parameter_description>
-</parameter>
-<parameter name="marshal_data">
-<parameter_description> Additional data specified when registering the
-marshaller, see g_closure_set_marshal() and
-g_closure_set_meta_marshal()
-</parameter_description>
-</parameter>
 </parameters>
 <return></return>
 </function>
 
 <function name="g_cclosure_marshal_STRING__OBJECT_POINTER">
 <description>
-A #GClosureMarshal function for use with signals with handlers that
-take a #GObject and a pointer and produce a string.  It is highly
-unlikely that your signal handler fits this description.
+A marshaller for a #GCClosure with a callback of type
+`gchar* (*callback) (gpointer instance, GObject *arg1, gpointer arg2, gpointer user_data)`.
 
 </description>
 <parameters>
 <parameter name="closure">
-<parameter_description> A #GClosure.
+<parameter_description> the #GClosure to which the marshaller belongs
 </parameter_description>
 </parameter>
 <parameter name="return_value">
-<parameter_description> A #GValue to store the return value. May be %NULL
-if the callback of closure doesn't return a value.
+<parameter_description> a #GValue, which can store the returned string
 </parameter_description>
 </parameter>
 <parameter name="n_param_values">
-<parameter_description> The length of the @param_values array.
+<parameter_description> 3
 </parameter_description>
 </parameter>
 <parameter name="param_values">
-<parameter_description> An array of #GValues holding the arguments
-on which to invoke the callback of closure.
+<parameter_description> a #GValue array holding instance, arg1 and arg2
 </parameter_description>
 </parameter>
 <parameter name="invocation_hint">
-<parameter_description> The invocation hint given as the last argument to
-g_closure_invoke().
+<parameter_description> the invocation hint given as the last argument
+to g_closure_invoke()
 </parameter_description>
 </parameter>
 <parameter name="marshal_data">
-<parameter_description> Additional data specified when registering the
-marshaller, see g_closure_set_marshal() and
-g_closure_set_meta_marshal()
+<parameter_description> additional data specified when registering the marshaller
 </parameter_description>
 </parameter>
 </parameters>
@@ -9709,38 +9670,34 @@ g_closure_set_meta_marshal()
 
 <function name="g_cclosure_marshal_VOID__BOOLEAN">
 <description>
-A #GClosureMarshal function for use with signals with a single
-boolean argument.
+A marshaller for a #GCClosure with a callback of type
+`void (*callback) (gpointer instance, gboolean arg1, gpointer user_data)`.
 
 </description>
 <parameters>
 <parameter name="closure">
-<parameter_description> A #GClosure.
+<parameter_description> the #GClosure to which the marshaller belongs
 </parameter_description>
 </parameter>
 <parameter name="return_value">
-<parameter_description> A #GValue to store the return value. May be %NULL
-if the callback of closure doesn't return a value.
+<parameter_description> ignored
 </parameter_description>
 </parameter>
 <parameter name="n_param_values">
-<parameter_description> The length of the @param_values array.
+<parameter_description> 2
 </parameter_description>
 </parameter>
 <parameter name="param_values">
-<parameter_description> An array of #GValues holding the arguments
-on which to invoke the callback of closure.
+<parameter_description> a #GValue array holding the instance and the #gboolean parameter
 </parameter_description>
 </parameter>
 <parameter name="invocation_hint">
-<parameter_description> The invocation hint given as the last argument to
-g_closure_invoke().
+<parameter_description> the invocation hint given as the last argument
+to g_closure_invoke()
 </parameter_description>
 </parameter>
 <parameter name="marshal_data">
-<parameter_description> Additional data specified when registering the
-marshaller, see g_closure_set_marshal() and
-g_closure_set_meta_marshal()
+<parameter_description> additional data specified when registering the marshaller
 </parameter_description>
 </parameter>
 </parameters>
@@ -9792,38 +9749,34 @@ g_closure_set_meta_marshal()
 
 <function name="g_cclosure_marshal_VOID__BOXED">
 <description>
-A #GClosureMarshal function for use with signals with a single
-argument which is any boxed pointer type.
+A marshaller for a #GCClosure with a callback of type
+`void (*callback) (gpointer instance, GBoxed *arg1, gpointer user_data)`.
 
 </description>
 <parameters>
 <parameter name="closure">
-<parameter_description> A #GClosure.
+<parameter_description> the #GClosure to which the marshaller belongs
 </parameter_description>
 </parameter>
 <parameter name="return_value">
-<parameter_description> A #GValue to store the return value. May be %NULL
-if the callback of closure doesn't return a value.
+<parameter_description> ignored
 </parameter_description>
 </parameter>
 <parameter name="n_param_values">
-<parameter_description> The length of the @param_values array.
+<parameter_description> 2
 </parameter_description>
 </parameter>
 <parameter name="param_values">
-<parameter_description> An array of #GValues holding the arguments
-on which to invoke the callback of closure.
+<parameter_description> a #GValue array holding the instance and the #GBoxed* parameter
 </parameter_description>
 </parameter>
 <parameter name="invocation_hint">
-<parameter_description> The invocation hint given as the last argument to
-g_closure_invoke().
+<parameter_description> the invocation hint given as the last argument
+to g_closure_invoke()
 </parameter_description>
 </parameter>
 <parameter name="marshal_data">
-<parameter_description> Additional data specified when registering the
-marshaller, see g_closure_set_marshal() and
-g_closure_set_meta_marshal()
+<parameter_description> additional data specified when registering the marshaller
 </parameter_description>
 </parameter>
 </parameters>
@@ -9875,38 +9828,34 @@ g_closure_set_meta_marshal()
 
 <function name="g_cclosure_marshal_VOID__CHAR">
 <description>
-A #GClosureMarshal function for use with signals with a single
-character argument.
+A marshaller for a #GCClosure with a callback of type
+`void (*callback) (gpointer instance, gchar arg1, gpointer user_data)`.
 
 </description>
 <parameters>
 <parameter name="closure">
-<parameter_description> A #GClosure.
+<parameter_description> the #GClosure to which the marshaller belongs
 </parameter_description>
 </parameter>
 <parameter name="return_value">
-<parameter_description> A #GValue to store the return value. May be %NULL
-if the callback of closure doesn't return a value.
+<parameter_description> ignored
 </parameter_description>
 </parameter>
 <parameter name="n_param_values">
-<parameter_description> The length of the @param_values array.
+<parameter_description> 2
 </parameter_description>
 </parameter>
 <parameter name="param_values">
-<parameter_description> An array of #GValues holding the arguments
-on which to invoke the callback of closure.
+<parameter_description> a #GValue array holding the instance and the #gchar parameter
 </parameter_description>
 </parameter>
 <parameter name="invocation_hint">
-<parameter_description> The invocation hint given as the last argument to
-g_closure_invoke().
+<parameter_description> the invocation hint given as the last argument
+to g_closure_invoke()
 </parameter_description>
 </parameter>
 <parameter name="marshal_data">
-<parameter_description> Additional data specified when registering the
-marshaller, see g_closure_set_marshal() and
-g_closure_set_meta_marshal()
+<parameter_description> additional data specified when registering the marshaller
 </parameter_description>
 </parameter>
 </parameters>
@@ -9958,38 +9907,34 @@ g_closure_set_meta_marshal()
 
 <function name="g_cclosure_marshal_VOID__DOUBLE">
 <description>
-A #GClosureMarshal function for use with signals with one
-double-precision floating point argument.
+A marshaller for a #GCClosure with a callback of type
+`void (*callback) (gpointer instance, gdouble arg1, gpointer user_data)`.
 
 </description>
 <parameters>
 <parameter name="closure">
-<parameter_description> A #GClosure.
+<parameter_description> the #GClosure to which the marshaller belongs
 </parameter_description>
 </parameter>
 <parameter name="return_value">
-<parameter_description> A #GValue to store the return value. May be %NULL
-if the callback of closure doesn't return a value.
+<parameter_description> ignored
 </parameter_description>
 </parameter>
 <parameter name="n_param_values">
-<parameter_description> The length of the @param_values array.
+<parameter_description> 2
 </parameter_description>
 </parameter>
 <parameter name="param_values">
-<parameter_description> An array of #GValues holding the arguments
-on which to invoke the callback of closure.
+<parameter_description> a #GValue array holding the instance and the #gdouble parameter
 </parameter_description>
 </parameter>
 <parameter name="invocation_hint">
-<parameter_description> The invocation hint given as the last argument to
-g_closure_invoke().
+<parameter_description> the invocation hint given as the last argument
+to g_closure_invoke()
 </parameter_description>
 </parameter>
 <parameter name="marshal_data">
-<parameter_description> Additional data specified when registering the
-marshaller, see g_closure_set_marshal() and
-g_closure_set_meta_marshal()
+<parameter_description> additional data specified when registering the marshaller
 </parameter_description>
 </parameter>
 </parameters>
@@ -10041,38 +9986,34 @@ g_closure_set_meta_marshal()
 
 <function name="g_cclosure_marshal_VOID__ENUM">
 <description>
-A #GClosureMarshal function for use with signals with a single
-argument with an enumerated type.
+A marshaller for a #GCClosure with a callback of type
+`void (*callback) (gpointer instance, gint arg1, gpointer user_data)` where the #gint parameter denotes an enumeration type..
 
 </description>
 <parameters>
 <parameter name="closure">
-<parameter_description> A #GClosure.
+<parameter_description> the #GClosure to which the marshaller belongs
 </parameter_description>
 </parameter>
 <parameter name="return_value">
-<parameter_description> A #GValue to store the return value. May be %NULL
-if the callback of closure doesn't return a value.
+<parameter_description> ignored
 </parameter_description>
 </parameter>
 <parameter name="n_param_values">
-<parameter_description> The length of the @param_values array.
+<parameter_description> 2
 </parameter_description>
 </parameter>
 <parameter name="param_values">
-<parameter_description> An array of #GValues holding the arguments
-on which to invoke the callback of closure.
+<parameter_description> a #GValue array holding the instance and the enumeration parameter
 </parameter_description>
 </parameter>
 <parameter name="invocation_hint">
-<parameter_description> The invocation hint given as the last argument to
-g_closure_invoke().
+<parameter_description> the invocation hint given as the last argument
+to g_closure_invoke()
 </parameter_description>
 </parameter>
 <parameter name="marshal_data">
-<parameter_description> Additional data specified when registering the
-marshaller, see g_closure_set_marshal() and
-g_closure_set_meta_marshal()
+<parameter_description> additional data specified when registering the marshaller
 </parameter_description>
 </parameter>
 </parameters>
@@ -10124,38 +10065,34 @@ g_closure_set_meta_marshal()
 
 <function name="g_cclosure_marshal_VOID__FLAGS">
 <description>
-A #GClosureMarshal function for use with signals with a single
-argument with a flags types.
+A marshaller for a #GCClosure with a callback of type
+`void (*callback) (gpointer instance, gint arg1, gpointer user_data)` where the #gint parameter denotes a flags type.
 
 </description>
 <parameters>
 <parameter name="closure">
-<parameter_description> A #GClosure.
+<parameter_description> the #GClosure to which the marshaller belongs
 </parameter_description>
 </parameter>
 <parameter name="return_value">
-<parameter_description> A #GValue to store the return value. May be %NULL
-if the callback of closure doesn't return a value.
+<parameter_description> ignored
 </parameter_description>
 </parameter>
 <parameter name="n_param_values">
-<parameter_description> The length of the @param_values array.
+<parameter_description> 2
 </parameter_description>
 </parameter>
 <parameter name="param_values">
-<parameter_description> An array of #GValues holding the arguments
-on which to invoke the callback of closure.
+<parameter_description> a #GValue array holding the instance and the flags parameter
 </parameter_description>
 </parameter>
 <parameter name="invocation_hint">
-<parameter_description> The invocation hint given as the last argument to
-g_closure_invoke().
+<parameter_description> the invocation hint given as the last argument
+to g_closure_invoke()
 </parameter_description>
 </parameter>
 <parameter name="marshal_data">
-<parameter_description> Additional data specified when registering the
-marshaller, see g_closure_set_marshal() and
-g_closure_set_meta_marshal()
+<parameter_description> additional data specified when registering the marshaller
 </parameter_description>
 </parameter>
 </parameters>
@@ -10207,38 +10144,34 @@ g_closure_set_meta_marshal()
 
 <function name="g_cclosure_marshal_VOID__FLOAT">
 <description>
-A #GClosureMarshal function for use with signals with one
-single-precision floating point argument.
+A marshaller for a #GCClosure with a callback of type
+`void (*callback) (gpointer instance, gfloat arg1, gpointer user_data)`.
 
 </description>
 <parameters>
 <parameter name="closure">
-<parameter_description> A #GClosure.
+<parameter_description> the #GClosure to which the marshaller belongs
 </parameter_description>
 </parameter>
 <parameter name="return_value">
-<parameter_description> A #GValue to store the return value. May be %NULL
-if the callback of closure doesn't return a value.
+<parameter_description> ignored
 </parameter_description>
 </parameter>
 <parameter name="n_param_values">
-<parameter_description> The length of the @param_values array.
+<parameter_description> 2
 </parameter_description>
 </parameter>
 <parameter name="param_values">
-<parameter_description> An array of #GValues holding the arguments
-on which to invoke the callback of closure.
+<parameter_description> a #GValue array holding the instance and the #gfloat parameter
 </parameter_description>
 </parameter>
 <parameter name="invocation_hint">
-<parameter_description> The invocation hint given as the last argument to
-g_closure_invoke().
+<parameter_description> the invocation hint given as the last argument
+to g_closure_invoke()
 </parameter_description>
 </parameter>
 <parameter name="marshal_data">
-<parameter_description> Additional data specified when registering the
-marshaller, see g_closure_set_marshal() and
-g_closure_set_meta_marshal()
+<parameter_description> additional data specified when registering the marshaller
 </parameter_description>
 </parameter>
 </parameters>
@@ -10290,38 +10223,34 @@ g_closure_set_meta_marshal()
 
 <function name="g_cclosure_marshal_VOID__INT">
 <description>
-A #GClosureMarshal function for use with signals with a single
-integer argument.
+A marshaller for a #GCClosure with a callback of type
+`void (*callback) (gpointer instance, gint arg1, gpointer user_data)`.
 
 </description>
 <parameters>
 <parameter name="closure">
-<parameter_description> A #GClosure.
+<parameter_description> the #GClosure to which the marshaller belongs
 </parameter_description>
 </parameter>
 <parameter name="return_value">
-<parameter_description> A #GValue to store the return value. May be %NULL
-if the callback of closure doesn't return a value.
+<parameter_description> ignored
 </parameter_description>
 </parameter>
 <parameter name="n_param_values">
-<parameter_description> The length of the @param_values array.
+<parameter_description> 2
 </parameter_description>
 </parameter>
 <parameter name="param_values">
-<parameter_description> An array of #GValues holding the arguments
-on which to invoke the callback of closure.
+<parameter_description> a #GValue array holding the instance and the #gint parameter
 </parameter_description>
 </parameter>
 <parameter name="invocation_hint">
-<parameter_description> The invocation hint given as the last argument to
-g_closure_invoke().
+<parameter_description> the invocation hint given as the last argument
+to g_closure_invoke()
 </parameter_description>
 </parameter>
 <parameter name="marshal_data">
-<parameter_description> Additional data specified when registering the
-marshaller, see g_closure_set_marshal() and
-g_closure_set_meta_marshal()
+<parameter_description> additional data specified when registering the marshaller
 </parameter_description>
 </parameter>
 </parameters>
@@ -10373,38 +10302,34 @@ g_closure_set_meta_marshal()
 
 <function name="g_cclosure_marshal_VOID__LONG">
 <description>
-A #GClosureMarshal function for use with signals with with a single
-long integer argument.
+A marshaller for a #GCClosure with a callback of type
+`void (*callback) (gpointer instance, glong arg1, gpointer user_data)`.
 
 </description>
 <parameters>
 <parameter name="closure">
-<parameter_description> A #GClosure.
+<parameter_description> the #GClosure to which the marshaller belongs
 </parameter_description>
 </parameter>
 <parameter name="return_value">
-<parameter_description> A #GValue to store the return value. May be %NULL
-if the callback of closure doesn't return a value.
+<parameter_description> ignored
 </parameter_description>
 </parameter>
 <parameter name="n_param_values">
-<parameter_description> The length of the @param_values array.
+<parameter_description> 2
 </parameter_description>
 </parameter>
 <parameter name="param_values">
-<parameter_description> An array of #GValues holding the arguments
-on which to invoke the callback of closure.
+<parameter_description> a #GValue array holding the instance and the #glong parameter
 </parameter_description>
 </parameter>
 <parameter name="invocation_hint">
-<parameter_description> The invocation hint given as the last argument to
-g_closure_invoke().
+<parameter_description> the invocation hint given as the last argument
+to g_closure_invoke()
 </parameter_description>
 </parameter>
 <parameter name="marshal_data">
-<parameter_description> Additional data specified when registering the
-marshaller, see g_closure_set_marshal() and
-g_closure_set_meta_marshal()
+<parameter_description> additional data specified when registering the marshaller
 </parameter_description>
 </parameter>
 </parameters>
@@ -10456,38 +10381,34 @@ g_closure_set_meta_marshal()
 
 <function name="g_cclosure_marshal_VOID__OBJECT">
 <description>
-A #GClosureMarshal function for use with signals with a single
-#GObject argument.
+A marshaller for a #GCClosure with a callback of type
+`void (*callback) (gpointer instance, GObject *arg1, gpointer user_data)`.
 
 </description>
 <parameters>
 <parameter name="closure">
-<parameter_description> A #GClosure.
+<parameter_description> the #GClosure to which the marshaller belongs
 </parameter_description>
 </parameter>
 <parameter name="return_value">
-<parameter_description> A #GValue to store the return value. May be %NULL
-if the callback of closure doesn't return a value.
+<parameter_description> ignored
 </parameter_description>
 </parameter>
 <parameter name="n_param_values">
-<parameter_description> The length of the @param_values array.
+<parameter_description> 2
 </parameter_description>
 </parameter>
 <parameter name="param_values">
-<parameter_description> An array of #GValues holding the arguments
-on which to invoke the callback of closure.
+<parameter_description> a #GValue array holding the instance and the #GObject* parameter
 </parameter_description>
 </parameter>
 <parameter name="invocation_hint">
-<parameter_description> The invocation hint given as the last argument to
-g_closure_invoke().
+<parameter_description> the invocation hint given as the last argument
+to g_closure_invoke()
 </parameter_description>
 </parameter>
 <parameter name="marshal_data">
-<parameter_description> Additional data specified when registering the
-marshaller, see g_closure_set_marshal() and
-g_closure_set_meta_marshal()
+<parameter_description> additional data specified when registering the marshaller
 </parameter_description>
 </parameter>
 </parameters>
@@ -10539,38 +10460,34 @@ g_closure_set_meta_marshal()
 
 <function name="g_cclosure_marshal_VOID__PARAM">
 <description>
-A #GClosureMarshal function for use with signals with a single
-argument of type #GParamSpec.
+A marshaller for a #GCClosure with a callback of type
+`void (*callback) (gpointer instance, GParamSpec *arg1, gpointer user_data)`.
 
 </description>
 <parameters>
 <parameter name="closure">
-<parameter_description> A #GClosure.
+<parameter_description> the #GClosure to which the marshaller belongs
 </parameter_description>
 </parameter>
 <parameter name="return_value">
-<parameter_description> A #GValue to store the return value. May be %NULL
-if the callback of closure doesn't return a value.
+<parameter_description> ignored
 </parameter_description>
 </parameter>
 <parameter name="n_param_values">
-<parameter_description> The length of the @param_values array.
+<parameter_description> 2
 </parameter_description>
 </parameter>
 <parameter name="param_values">
-<parameter_description> An array of #GValues holding the arguments
-on which to invoke the callback of closure.
+<parameter_description> a #GValue array holding the instance and the #GParamSpec* parameter
 </parameter_description>
 </parameter>
 <parameter name="invocation_hint">
-<parameter_description> The invocation hint given as the last argument to
-g_closure_invoke().
+<parameter_description> the invocation hint given as the last argument
+to g_closure_invoke()
 </parameter_description>
 </parameter>
 <parameter name="marshal_data">
-<parameter_description> Additional data specified when registering the
-marshaller, see g_closure_set_marshal() and
-g_closure_set_meta_marshal()
+<parameter_description> additional data specified when registering the marshaller
 </parameter_description>
 </parameter>
 </parameters>
@@ -10622,42 +10539,34 @@ g_closure_set_meta_marshal()
 
 <function name="g_cclosure_marshal_VOID__POINTER">
 <description>
-A #GClosureMarshal function for use with signals with a single raw
-pointer argument type.
-
-If it is possible, it is better to use one of the more specific
-functions such as g_cclosure_marshal_VOID__OBJECT() or
-g_cclosure_marshal_VOID__OBJECT().
+A marshaller for a #GCClosure with a callback of type
+`void (*callback) (gpointer instance, gpointer arg1, gpointer user_data)`.
 
 </description>
 <parameters>
 <parameter name="closure">
-<parameter_description> A #GClosure.
+<parameter_description> the #GClosure to which the marshaller belongs
 </parameter_description>
 </parameter>
 <parameter name="return_value">
-<parameter_description> A #GValue to store the return value. May be %NULL
-if the callback of closure doesn't return a value.
+<parameter_description> ignored
 </parameter_description>
 </parameter>
 <parameter name="n_param_values">
-<parameter_description> The length of the @param_values array.
+<parameter_description> 2
 </parameter_description>
 </parameter>
 <parameter name="param_values">
-<parameter_description> An array of #GValues holding the arguments
-on which to invoke the callback of closure.
+<parameter_description> a #GValue array holding the instance and the #gpointer parameter
 </parameter_description>
 </parameter>
 <parameter name="invocation_hint">
-<parameter_description> The invocation hint given as the last argument to
-g_closure_invoke().
+<parameter_description> the invocation hint given as the last argument
+to g_closure_invoke()
 </parameter_description>
 </parameter>
 <parameter name="marshal_data">
-<parameter_description> Additional data specified when registering the
-marshaller, see g_closure_set_marshal() and
-g_closure_set_meta_marshal()
+<parameter_description> additional data specified when registering the marshaller
 </parameter_description>
 </parameter>
 </parameters>
@@ -10709,38 +10618,34 @@ g_closure_set_meta_marshal()
 
 <function name="g_cclosure_marshal_VOID__STRING">
 <description>
-A #GClosureMarshal function for use with signals with a single string
-argument.
+A marshaller for a #GCClosure with a callback of type
+`void (*callback) (gpointer instance, const gchar *arg1, gpointer user_data)`.
 
 </description>
 <parameters>
 <parameter name="closure">
-<parameter_description> A #GClosure.
+<parameter_description> the #GClosure to which the marshaller belongs
 </parameter_description>
 </parameter>
 <parameter name="return_value">
-<parameter_description> A #GValue to store the return value. May be %NULL
-if the callback of closure doesn't return a value.
+<parameter_description> ignored
 </parameter_description>
 </parameter>
 <parameter name="n_param_values">
-<parameter_description> The length of the @param_values array.
+<parameter_description> 2
 </parameter_description>
 </parameter>
 <parameter name="param_values">
-<parameter_description> An array of #GValues holding the arguments
-on which to invoke the callback of closure.
+<parameter_description> a #GValue array holding the instance and the #gchar* parameter
 </parameter_description>
 </parameter>
 <parameter name="invocation_hint">
-<parameter_description> The invocation hint given as the last argument to
-g_closure_invoke().
+<parameter_description> the invocation hint given as the last argument
+to g_closure_invoke()
 </parameter_description>
 </parameter>
 <parameter name="marshal_data">
-<parameter_description> Additional data specified when registering the
-marshaller, see g_closure_set_marshal() and
-g_closure_set_meta_marshal()
+<parameter_description> additional data specified when registering the marshaller
 </parameter_description>
 </parameter>
 </parameters>
@@ -10792,38 +10697,34 @@ g_closure_set_meta_marshal()
 
 <function name="g_cclosure_marshal_VOID__UCHAR">
 <description>
-A #GClosureMarshal function for use with signals with a single
-unsigned character argument.
+A marshaller for a #GCClosure with a callback of type
+`void (*callback) (gpointer instance, guchar arg1, gpointer user_data)`.
 
 </description>
 <parameters>
 <parameter name="closure">
-<parameter_description> A #GClosure.
+<parameter_description> the #GClosure to which the marshaller belongs
 </parameter_description>
 </parameter>
 <parameter name="return_value">
-<parameter_description> A #GValue to store the return value. May be %NULL
-if the callback of closure doesn't return a value.
+<parameter_description> ignored
 </parameter_description>
 </parameter>
 <parameter name="n_param_values">
-<parameter_description> The length of the @param_values array.
+<parameter_description> 2
 </parameter_description>
 </parameter>
 <parameter name="param_values">
-<parameter_description> An array of #GValues holding the arguments
-on which to invoke the callback of closure.
+<parameter_description> a #GValue array holding the instance and the #guchar parameter
 </parameter_description>
 </parameter>
 <parameter name="invocation_hint">
-<parameter_description> The invocation hint given as the last argument to
-g_closure_invoke().
+<parameter_description> the invocation hint given as the last argument
+to g_closure_invoke()
 </parameter_description>
 </parameter>
 <parameter name="marshal_data">
-<parameter_description> Additional data specified when registering the
-marshaller, see g_closure_set_marshal() and
-g_closure_set_meta_marshal()
+<parameter_description> additional data specified when registering the marshaller
 </parameter_description>
 </parameter>
 </parameters>
@@ -10875,38 +10776,34 @@ g_closure_set_meta_marshal()
 
 <function name="g_cclosure_marshal_VOID__UINT">
 <description>
-A #GClosureMarshal function for use with signals with with a single
-unsigned integer argument.
+A marshaller for a #GCClosure with a callback of type
+`void (*callback) (gpointer instance, guint arg1, gpointer user_data)`.
 
 </description>
 <parameters>
 <parameter name="closure">
-<parameter_description> A #GClosure.
+<parameter_description> the #GClosure to which the marshaller belongs
 </parameter_description>
 </parameter>
 <parameter name="return_value">
-<parameter_description> A #GValue to store the return value. May be %NULL
-if the callback of closure doesn't return a value.
+<parameter_description> ignored
 </parameter_description>
 </parameter>
 <parameter name="n_param_values">
-<parameter_description> The length of the @param_values array.
+<parameter_description> 2
 </parameter_description>
 </parameter>
 <parameter name="param_values">
-<parameter_description> An array of #GValues holding the arguments
-on which to invoke the callback of closure.
+<parameter_description> a #GValue array holding the instance and the #guint parameter
 </parameter_description>
 </parameter>
 <parameter name="invocation_hint">
-<parameter_description> The invocation hint given as the last argument to
-g_closure_invoke().
+<parameter_description> the invocation hint given as the last argument
+to g_closure_invoke()
 </parameter_description>
 </parameter>
 <parameter name="marshal_data">
-<parameter_description> Additional data specified when registering the
-marshaller, see g_closure_set_marshal() and
-g_closure_set_meta_marshal()
+<parameter_description> additional data specified when registering the marshaller
 </parameter_description>
 </parameter>
 </parameters>
@@ -10915,38 +10812,34 @@ g_closure_set_meta_marshal()
 
 <function name="g_cclosure_marshal_VOID__UINT_POINTER">
 <description>
-A #GClosureMarshal function for use with signals with a unsigned int
-and a pointer as arguments.
+A marshaller for a #GCClosure with a callback of type
+`void (*callback) (gpointer instance, guint arg1, gpointer arg2, gpointer user_data)`.
 
 </description>
 <parameters>
 <parameter name="closure">
-<parameter_description> A #GClosure.
+<parameter_description> the #GClosure to which the marshaller belongs
 </parameter_description>
 </parameter>
 <parameter name="return_value">
-<parameter_description> A #GValue to store the return value. May be %NULL
-if the callback of closure doesn't return a value.
+<parameter_description> ignored
 </parameter_description>
 </parameter>
 <parameter name="n_param_values">
-<parameter_description> The length of the @param_values array.
+<parameter_description> 3
 </parameter_description>
 </parameter>
 <parameter name="param_values">
-<parameter_description> An array of #GValues holding the arguments
-on which to invoke the callback of closure.
+<parameter_description> a #GValue array holding instance, arg1 and arg2
 </parameter_description>
 </parameter>
 <parameter name="invocation_hint">
-<parameter_description> The invocation hint given as the last argument to
-g_closure_invoke().
+<parameter_description> the invocation hint given as the last argument
+to g_closure_invoke()
 </parameter_description>
 </parameter>
 <parameter name="marshal_data">
-<parameter_description> Additional data specified when registering the
-marshaller, see g_closure_set_marshal() and
-g_closure_set_meta_marshal()
+<parameter_description> additional data specified when registering the marshaller
 </parameter_description>
 </parameter>
 </parameters>
@@ -11041,38 +10934,34 @@ g_closure_set_meta_marshal()
 
 <function name="g_cclosure_marshal_VOID__ULONG">
 <description>
-A #GClosureMarshal function for use with signals with a single
-unsigned long integer argument.
+A marshaller for a #GCClosure with a callback of type
+`void (*callback) (gpointer instance, gulong arg1, gpointer user_data)`.
 
 </description>
 <parameters>
 <parameter name="closure">
-<parameter_description> A #GClosure.
+<parameter_description> the #GClosure to which the marshaller belongs
 </parameter_description>
 </parameter>
 <parameter name="return_value">
-<parameter_description> A #GValue to store the return value. May be %NULL
-if the callback of closure doesn't return a value.
+<parameter_description> ignored
 </parameter_description>
 </parameter>
 <parameter name="n_param_values">
-<parameter_description> The length of the @param_values array.
+<parameter_description> 2
 </parameter_description>
 </parameter>
 <parameter name="param_values">
-<parameter_description> An array of #GValues holding the arguments
-on which to invoke the callback of closure.
+<parameter_description> a #GValue array holding the instance and the #gulong parameter
 </parameter_description>
 </parameter>
 <parameter name="invocation_hint">
-<parameter_description> The invocation hint given as the last argument to
-g_closure_invoke().
+<parameter_description> the invocation hint given as the last argument
+to g_closure_invoke()
 </parameter_description>
 </parameter>
 <parameter name="marshal_data">
-<parameter_description> Additional data specified when registering the
-marshaller, see g_closure_set_marshal() and
-g_closure_set_meta_marshal()
+<parameter_description> additional data specified when registering the marshaller
 </parameter_description>
 </parameter>
 </parameters>
@@ -11124,38 +11013,36 @@ g_closure_set_meta_marshal()
 
 <function name="g_cclosure_marshal_VOID__VARIANT">
 <description>
-A #GClosureMarshal function for use with signals with a single
-#GVariant argument.
+A marshaller for a #GCClosure with a callback of type
+`void (*callback) (gpointer instance, GVariant *arg1, gpointer user_data)`.
+
+Since: 2.26
 
 </description>
 <parameters>
 <parameter name="closure">
-<parameter_description> A #GClosure.
+<parameter_description> the #GClosure to which the marshaller belongs
 </parameter_description>
 </parameter>
 <parameter name="return_value">
-<parameter_description> A #GValue to store the return value. May be %NULL
-if the callback of closure doesn't return a value.
+<parameter_description> ignored
 </parameter_description>
 </parameter>
 <parameter name="n_param_values">
-<parameter_description> The length of the @param_values array.
+<parameter_description> 2
 </parameter_description>
 </parameter>
 <parameter name="param_values">
-<parameter_description> An array of #GValues holding the arguments
-on which to invoke the callback of closure.
+<parameter_description> a #GValue array holding the instance and the #GVariant* parameter
 </parameter_description>
 </parameter>
 <parameter name="invocation_hint">
-<parameter_description> The invocation hint given as the last argument to
-g_closure_invoke().
+<parameter_description> the invocation hint given as the last argument
+to g_closure_invoke()
 </parameter_description>
 </parameter>
 <parameter name="marshal_data">
-<parameter_description> Additional data specified when registering the
-marshaller, see g_closure_set_marshal() and
-g_closure_set_meta_marshal()
+<parameter_description> additional data specified when registering the marshaller
 </parameter_description>
 </parameter>
 </parameters>
@@ -11207,37 +11094,34 @@ g_closure_set_meta_marshal()
 
 <function name="g_cclosure_marshal_VOID__VOID">
 <description>
-A #GClosureMarshal function for use with signals with no arguments.
+A marshaller for a #GCClosure with a callback of type
+`void (*callback) (gpointer instance, gpointer user_data)`.
 
 </description>
 <parameters>
 <parameter name="closure">
-<parameter_description> A #GClosure.
+<parameter_description> the #GClosure to which the marshaller belongs
 </parameter_description>
 </parameter>
 <parameter name="return_value">
-<parameter_description> A #GValue to store the return value. May be %NULL
-if the callback of closure doesn't return a value.
+<parameter_description> ignored
 </parameter_description>
 </parameter>
 <parameter name="n_param_values">
-<parameter_description> The length of the @param_values array.
+<parameter_description> 1
 </parameter_description>
 </parameter>
 <parameter name="param_values">
-<parameter_description> An array of #GValues holding the arguments
-on which to invoke the callback of closure.
+<parameter_description> a #GValue array holding only the instance
 </parameter_description>
 </parameter>
 <parameter name="invocation_hint">
-<parameter_description> The invocation hint given as the last argument to
-g_closure_invoke().
+<parameter_description> the invocation hint given as the last argument
+to g_closure_invoke()
 </parameter_description>
 </parameter>
 <parameter name="marshal_data">
-<parameter_description> Additional data specified when registering the
-marshaller, see g_closure_set_marshal() and
-g_closure_set_meta_marshal()
+<parameter_description> additional data specified when registering the marshaller
 </parameter_description>
 </parameter>
 </parameters>
@@ -14234,8 +14118,8 @@ etc. The date must be valid.
 <function name="g_date_get_monday_week_of_year">
 <description>
 Returns the week of the year, where weeks are understood to start on
-Monday. If the date is before the first Monday of the year, return
-0. The date must be valid.
+Monday. If the date is before the first Monday of the year, return 0.
+The date must be valid.
 
 
 </description>
@@ -14289,9 +14173,9 @@ Returns the month of the year. The date must be valid.
 
 <function name="g_date_get_sunday_week_of_year">
 <description>
-Returns the week of the year during which this date falls, if weeks
-are understood to being on Sunday. The date must be valid. Can return
-0 if the day is before the first Sunday of the year.
+Returns the week of the year during which this date falls, if
+weeks are understood to being on Sunday. The date must be valid.
+Can return 0 if the day is before the first Sunday of the year.
 
 
 </description>
@@ -16853,8 +16737,7 @@ for an empty environment list
 </parameter_description>
 </parameter>
 <parameter name="variable">
-<parameter_description> the environment variable to get, in the GLib file name
-encoding
+<parameter_description> the environment variable to get
 </parameter_description>
 </parameter>
 </parameters>
@@ -16992,7 +16875,7 @@ be returned.
 If @domain contains a `FAILED` (or otherwise generic) error code,
 you should generally not check for it explicitly, but should
 instead treat any not-explicitly-recognized error code as being
-equilalent to the `FAILED` code. This way, if the domain is
+equivalent to the `FAILED` code. This way, if the domain is
 extended in the future to provide a more specific error code for
 a certain case, your code will still work.
 
@@ -18524,9 +18407,9 @@ GLib and should not be modified or freed.
 <description>
 Returns the value of an environment variable.
 
-The name and value are in the GLib file name encoding. On UNIX,
-this means the actual bytes which might or might not be in some
-consistent character set and encoding. On Windows, it is in UTF-8.
+On UNIX, the name and value are byte strings which might or might not
+be in some consistent character set and encoding. On Windows, they are
+in UTF-8.
 On Windows, in case the environment variable's value contains
 references to other environment variables, they are expanded.
 
@@ -18534,8 +18417,7 @@ references to other environment variables, they are expanded.
 </description>
 <parameters>
 <parameter name="variable">
-<parameter_description> the environment variable to get, in the GLib file name
-encoding
+<parameter_description> the environment variable to get
 </parameter_description>
 </parameter>
 </parameters>
@@ -21745,10 +21627,12 @@ should be freed with g_free() when no longer needed.
 <function name="g_key_file_get_comment">
 <description>
 Retrieves a comment above @key from @group_name.
-If @key is %NULL then @comment will be read from above 
-@group_name. If both @key and @group_name are %NULL, then 
+If @key is %NULL then @comment will be read from above
+@group_name. If both @key and @group_name are %NULL, then
 @comment will be read from above the first group in the file.
 
+Note that the returned string includes the '#' comment markers.
+
 Since: 2.6
 
 </description>
@@ -22716,10 +22600,14 @@ Since: 2.6
 <function name="g_key_file_set_comment">
 <description>
 Places a comment above @key from @group_name.
-If @key is %NULL then @comment will be written above @group_name.  
-If both @key and @group_name  are %NULL, then @comment will be 
+
+If @key is %NULL then @comment will be written above @group_name.
+If both @key and @group_name  are %NULL, then @comment will be
 written above the first group in the file.
 
+Note that this function prepends a '#' comment marker to
+each line of @comment.
+
 Since: 2.6
 
 </description>
@@ -24338,6 +24226,44 @@ the log levels with the #G_LOG_FLAG_FATAL and
 </return>
 </function>
 
+<function name="g_log_set_handler_full">
+<description>
+Like g_log_sets_handler(), but takes a destroy notify for the @user_data.
+
+Since: 2.46
+
+</description>
+<parameters>
+<parameter name="log_domain">
+<parameter_description> the log domain, or %NULL for the default &quot;&quot;
+application domain
+</parameter_description>
+</parameter>
+<parameter name="log_levels">
+<parameter_description> the log levels to apply the log handler for.
+To handle fatal and recursive messages as well, combine
+the log levels with the #G_LOG_FLAG_FATAL and
+#G_LOG_FLAG_RECURSION bit flags.
+</parameter_description>
+</parameter>
+<parameter name="log_func">
+<parameter_description> the log handler function
+</parameter_description>
+</parameter>
+<parameter name="user_data">
+<parameter_description> data passed to the log handler
+</parameter_description>
+</parameter>
+<parameter name="destroy">
+<parameter_description> destroy notify for @user_data, or %NULL
+</parameter_description>
+</parameter>
+</parameters>
+<return> the id of the new handler
+
+</return>
+</function>
+
 <function name="g_logv">
 <description>
 Logs an error or debugging message.
@@ -38529,10 +38455,9 @@ example.
 
 <function name="g_setenv">
 <description>
-Sets an environment variable. Both the variable's name and value
-should be in the GLib file name encoding. On UNIX, this means that
-they can be arbitrary byte strings. On Windows, they should be in
-UTF-8.
+Sets an environment variable. On UNIX, both the variable's name and
+value can be arbitrary byte strings, except that the variable's name
+cannot contain '='. On Windows, they should be in UTF-8.
 
 Note that on some systems, when variables are overwritten, the memory
 used for the previous variables and its value isn't reclaimed.
index feae55c..b93b6ce 100644 (file)
   )
 )
 
+(define-function g_log_set_handler_full
+  (c-name "g_log_set_handler_full")
+  (return-type "guint")
+  (parameters
+    '("const-gchar*" "log_domain")
+    '("GLogLevelFlags" "log_levels")
+    '("GLogFunc" "log_func")
+    '("gpointer" "user_data")
+    '("GDestroyNotify" "destroy")
+  )
+)
+
 (define-function g_log_remove_handler
   (c-name "g_log_remove_handler")
   (return-type "none")
index fb6f19b..dd116c3 100644 (file)
@@ -21,23 +21,16 @@ _CONFIGINCLUDE(glibmmconfig.h)
 _IS_DEPRECATED // This whole file is deprecated.
 
 #m4 _PUSH(SECTION_CC_PRE_INCLUDES)
-// Must be included in the .cc file before the generated #ifndef GLIBMM_DISABLE_DEPRECATED,
-// or else "configure --disable-deprecated-api" + "make" will fail.
-#include <glibmmconfig.h>
+//Stop the compiler warnings about using the deprecated API;
+#define GLIB_DISABLE_DEPRECATION_WARNINGS 1
 #m4 _POP()
 
 // We use GThreadFunctions in the (deprecated) API, so we must temporarily undef G_DISABLE_DEPRECATED.
 // Temporarily undef G_DISABLE_DEPRECATED, redefining it later if appropriate.
 #if defined(G_DISABLE_DEPRECATED) && !defined(GLIBMM_G_DISABLE_DEPRECATED_UNDEFED)
-
 //Stop the deprecation ifdef guards around the API declarations:
 #undef G_DISABLE_DEPRECATED
-
-//Stop the compiler warnings about using the deprecated API;
-#define GLIB_DISABLE_DEPRECATION_WARNINGS 1
-
 #define GLIBMM_G_DISABLE_DEPRECATED_UNDEFED 1
-
 #endif
 
 #include <glib.h>
@@ -45,7 +38,6 @@ _IS_DEPRECATED // This whole file is deprecated.
 // Redefine G_DISABLE_DEPRECATED if it was defined before we temporarily undefed it:
 #if defined(GLIBMM_G_DISABLE_DEPRECATED_UNDEFED)
 #define G_DISABLE_DEPRECATED 1
-#undef GLIB_DISABLE_DEPRECATION_WARNINGS
 #undef GLIBMM_G_DISABLE_DEPRECATED_UNDEFED
 #endif
 
index 373e3de..602b59b 100644 (file)
@@ -118,6 +118,9 @@ int main(int, char**)
             << get_defs(G_TYPE_NETWORK_MONITOR)
             << get_defs(G_TYPE_NETWORK_SERVICE)
             << get_defs(G_TYPE_SETTINGS)
+            << get_defs(G_TYPE_SETTINGS_SCHEMA)
+            << get_defs(G_TYPE_SETTINGS_SCHEMA_KEY)
+            << get_defs(G_TYPE_SETTINGS_SCHEMA_SOURCE)
             << get_defs(G_TYPE_SIMPLE_PERMISSION)
             << get_defs(G_TYPE_SOCKET)
             << get_defs(G_TYPE_SOCKET_CLIENT)
index d0672ba..8219d4d 100644 (file)
@@ -268,6 +268,14 @@ _CONVERSION(`GSettings*',`Glib::RefPtr<Settings>',`Glib::wrap($3)')
 _CONVERSION(`const Glib::StringArrayHandle&',`const gchar*-const*',`($3).data()')
 _CONVERSION(`const Glib::RefPtr<SettingsBackend>&',`GSettingsBackend*',__CONVERT_REFPTR_TO_P)
 
+_CONVERSION(`GSettingsSchemaKey*',`Glib::RefPtr<SettingsSchemaKey>',`Glib::wrap($3)')
+_CONVERSION(`GSettingsSchemaKey*',`Glib::RefPtr<const SettingsSchemaKey>',`Glib::wrap($3)')
+
+_CONVERSION(`GSettingsSchema*',`Glib::RefPtr<SettingsSchema>',`Glib::wrap($3)')
+_CONVERSION(`GSettingsSchema*',`Glib::RefPtr<const SettingsSchema>',`Glib::wrap($3)')
+
+_CONVERSION(`GSettingsSchemaSource*',`Glib::RefPtr<SettingsSchemaSource>',`Glib::wrap($3)')
+
 
 #Socket
 _CONVERSION(`const Glib::RefPtr<Socket>&',`GSocket*',__CONVERT_CONST_REFPTR_TO_P)
index 04d0b01..55fedb2 100644 (file)
@@ -25,7 +25,6 @@ files_codegen_m4 =                    \
        initialize_gio.m4               \
        initialize_glib.m4              \
        initialize_glibmm.m4            \
-       list.m4                         \
        member.m4                       \
        method.m4                       \
        property.m4                     \
diff --git a/tools/m4/list.m4 b/tools/m4/list.m4
deleted file mode 100644 (file)
index 954beb1..0000000
+++ /dev/null
@@ -1,232 +0,0 @@
-_PUSH()
-
-dnl
-dnl  These variables affect the generation of the list
-dnl
-define(GP_LIST_HELPER_NAMESPACE,`define(`__LIST_NAMESPACE__',$1)')
-define(GP_LIST_ELEM,`define(`__LISTELEM__',`$*')')
-define(GP_LIST_ITER,`define(`__LISTITER__',`$*')')
-define(GP_LIST_NOINSERT,`define(`__LISTEO__')')
-
-dnl
-dnl GP_LIST(ListName, ParentCppType, ParentCType, ChildCppType, FieldNameC)
-dnl
-dnl In the .ccg file, you'll need to implement:
-dnl   iterator insert(iterator position, element_type& e);
-dnl
-dnl  Fieldname assumed to be children if not specified
-define(GP_LIST,`
-_PUSH()
-
-define(`__LISTNAME__',$1)
-define(`__LISTPARENT__',$2)
-define(`__LISTPARENT_G__',$3)
-define(`__LISTTYPE__',$4)
-define(`__LISTELEM__',const Element)
-define(`__LISTITER__',Glib::List_Iterator< __LISTTYPE__ >)
-define(`__LIST_NAMESPACE__',$2_Helpers)
-#define(`__LISTFIELD__',ifelse($5,,children,$5))
-define(`__LISTFIELD__',$5)
-
-_SECTION(SECTION_USR)
-')
-
-dnl
-dnl  GP_LIST_END()
-dnl
-dnl   Closes a list
-define(GP_LIST_END,`dnl
-_POP()
-
-class __LISTNAME__ : public Glib::HelperList< __LISTTYPE__, __LISTELEM__, __LISTITER__ >
-{
-public:
-  __LISTNAME__`'();
-  explicit __LISTNAME__`'(__LISTPARENT_G__* gparent);
-  __LISTNAME__`'(const __LISTNAME__& src);
-  virtual ~__LISTNAME__`'() {}
-
-  __LISTNAME__& operator=(const __LISTNAME__& src);
-
-  typedef Glib::HelperList< __LISTTYPE__, __LISTELEM__,  __LISTITER__ > type_base;
-
-  __LISTPARENT_G__* gparent();
-  const __LISTPARENT_G__* gparent() const;
-
-  virtual GList*& glist() const;      // front of list
-
-  virtual void erase(iterator start, iterator stop);
-  virtual iterator erase(iterator);  //Implented as custom or by LIST_CONTAINER_REMOVE
-  virtual void remove(const_reference); //Implented as custom or by LIST_CONTAINER_REMOVE
-
-  /// This is order n. (use at own risk)
-  reference operator[](size_type l) const;
-
-ifdef(`__LISTEO__',`dnl
-protected:
-  //Hide these because it's read-only:
-  iterator insert(iterator position, element_type& e);
-
-  inline void pop_front();
-  inline void pop_back();
-,`dnl
-public:
-  iterator insert(iterator position, element_type& e); //custom-implemented.
-
-  template <class InputIterator>
-  inline void insert(iterator position, InputIterator first, InputIterator last)
-  {
-    for(;first != last; ++first)
-      position = insert(position, *first);
-  }
-
- inline void push_front(element_type& e)
-    { insert(begin(), e); }
-  inline void push_back(element_type& e)
-    { insert(end(), e); }
-')dnl
-
-_IMPORT(SECTION_USR)
-};
-
-_PUSH(SECTION_CC)
-
-namespace __LIST_NAMESPACE__
-{
-
-__LISTNAME__::__LISTNAME__`'()
-{}
-
-__LISTNAME__::__LISTNAME__`'(__LISTPARENT_G__* gparent)
-: type_base((GObject*)gparent)
-{}
-
-__LISTNAME__::__LISTNAME__`'(const __LISTNAME__& src)
-:
-  type_base(src)
-{}
-
-__LISTNAME__& __LISTNAME__::operator=(const __LISTNAME__& src)
-{
-  type_base::operator=(src);
-  return *this;
-}
-
-ifelse(__LISTFIELD__,CUSTOM,`dnl
-',`dnl else
-GList*& __LISTNAME__::glist() const
-{
-  return ((__LISTPARENT_G__*)gparent_)->__LISTFIELD__;
-}
-')dnl endif
-
-void __LISTNAME__::erase(iterator start, iterator stop)
-{
-  type_base::erase(start, stop);
-}
-
-__LISTPARENT_G__* __LISTNAME__::gparent()
-{
-  return (__LISTPARENT_G__*)type_base::gparent();
-}
-
-const __LISTPARENT_G__* __LISTNAME__::gparent() const
-{
-  return (__LISTPARENT_G__*)type_base::gparent();
-}
-
-__LISTNAME__::reference __LISTNAME__::operator[](size_type l) const
-{
-  return type_base::operator[](l);
-}
-
-} /* namespace __LIST_NAMESPACE__ */
-
-undefine(`__LISTNAME__')dnl
-undefine(`__LISTTYPE__')dnl
-undefine(`__LISTPARENT__')dnl
-undefine(`__LISTELEM__')dnl
-undefine(`__LISTFIELD__')dnl
-_POP()
-')
-
-dnl
-dnl  GP_LIST_FIND(access_method)
-dnl
-dnl    Defines  find(containertype) and find(Widget&)
-dnl    access_method is the name of method returning a Widget*
-define(GP_LIST_FIND,`
-  iterator find(const_reference c);
-  iterator find(Widget&);
-_PUSH(SECTION_CC)
-
-namespace __LIST_NAMESPACE__
-{
-
-__LISTNAME__::iterator __LISTNAME__::find(const_reference w)
-{
-  iterator i = begin();
-  while (i != end() && (i->ifelse($1,,,$1()->)gobj() != w.ifelse($1,,,$1()->)gobj()))
-    ++i;
-  return i;
-}
-
-__LISTNAME__::iterator __LISTNAME__::find(Widget& w)
-{
-  iterator i = begin();
-  while (i != end() && ((GtkWidget*)i->ifelse($1,,,$1()->)gobj() != w.gobj()))
-    ++i;
-  return i;
-}
-
-} /* namespace __LIST_NAMESPACE__ */
-
-_POP()
-')
-
-dnl
-dnl  GP_LIST_CONTAINER_REMOVE(access_method)
-dnl
-dnl    Implements remove(const_reference), erase(iterator)
-dnl    and defines remove(Widget&)
-dnl    (assumes that the widget uses gtk+ container methods).
-dnl    access_method is the name of the method returning a Widget*
-define(GP_LIST_CONTAINER_REMOVE,`
-virtual void remove(Widget& w); //Implented as custom or by LIST_CONTAINER_REMOVE
-_PUSH(SECTION_CC)
-
-namespace __LIST_NAMESPACE__
-{
-
-void __LISTNAME__::remove(const_reference child)
-{
-  gtk_container_remove(GTK_CONTAINER(gparent_),
-                       (GtkWidget*)(child.ifelse($1,,,$1()->)gobj()));
-}
-
-void __LISTNAME__::remove(Widget& widget)
-{
-  gtk_container_remove(GTK_CONTAINER(gparent_), (GtkWidget*)(widget.gobj()));
-}
-
-__LISTNAME__::iterator __LISTNAME__::erase(iterator position)
-{
-  //Check that it is a valid iterator, to a real item:
-  if ( !position.node_|| (position == end()) )
-    return end();
-
-  //Get an iterator the the next item, to return:
-  iterator next = position;
-  next++;
-
-  //Use GTK+ C function to remove it, by providing the GtkWidget*:
-  gtk_container_remove( GTK_CONTAINER(gparent_), (GtkWidget*)(position->ifelse($1,,,$1()->)gobj()) );
-  return next;
-}
-
-} /* namespace __LIST_NAMESPACE__ */
-
-_POP()
-')
-
-_POP()dnl
index 3c48b3e..7becc7c 100644 (file)
@@ -1,22 +1,24 @@
-dnl $Id$
-
 dnl
 dnl
 dnl  Code generation sections for making a method.
 dnl
 dnl
 
-
 dnl
 dnl method
-dnl           $1       $2     $3         $4       $5        $6        $7         $8          $9     $10       $11       $12         $13       $14         $15               $16        $17              $18        $19        $20         $21
-dnl  _METHOD(cppname,cname,cpprettype,crettype,arglist,cdeclarations,cargs,cinitializations,const,refreturn,errthrow,deprecated,constversion,ifdef,arglist_without_types,out_param,out_param_cpptype,slot_type,slot_name,no_slot_copy,wrap_line)
+dnl           $1       $2     $3         $4       $5        $6        $7         $8
+dnl  _METHOD(cppname,cname,cpprettype,crettype,arglist,cdeclarations,cargs,cinitializations,
+dnl           $9     $10       $11       $12         $13             $14             $15
+dnl          const,refreturn,errthrow,deprecated,constversion,arglist_without_types,ifdef,
+dnl             $16        $17              $18        $19        $20         $21
+dnl          out_param,out_param_cpptype,slot_type,slot_name,no_slot_copy,wrap_line)
 define(`_METHOD',`dnl
 _PUSH(SECTION_CC)
-ifelse(`$12',,,`_DEPRECATE_IFDEF_START
-')dnl
 ifelse(`$15',,,`#ifdef $15'
 )dnl
+ifelse(`$12',,,`_DEPRECATE_IFDEF_START`'dnl The expansion of _DEPRECATE_IFDEF_START ends with a newline
+G_GNUC_BEGIN_IGNORE_DEPRECATIONS
+')dnl
 $3 __CPPNAME__::$1`'($5)ifelse(`$9',1,` const')
 {
 ifelse(`$13',,dnl
@@ -99,24 +101,27 @@ ifelse(`$3',void,,`  return retvalue;
 ',`  return const_cast<__CPPNAME__*>(this)->$1($14);
 ')dnl
 }
-
-ifelse(`$15',,,`
-#endif // $15
-')dnl
-ifelse(`$12',,,`_DEPRECATE_IFDEF_END
-')dnl
+ifelse(`$12',,,`G_GNUC_END_IGNORE_DEPRECATIONS
+_DEPRECATE_IFDEF_END')`'dnl The expansion of _DEPRECATE_IFDEF_END ends with a newline
+ifelse(`$15',,,`#endif // $15
+')
 _POP()')
 
 dnl
 dnl static method
-dnl                  $1       $2     $3         $4      $5        $6         $7         $8            $9      $10         $11       $12     $13        $14         $15      $16          $17       $18
-dnl  _STATIC_METHOD(cppname,cname,cpprettype,crettype,arglist,cdeclarations,cargs,cinitializations,refreturn,errthrow,deprecated,ifdef,out_param,out_param_type,slot_type,slot_name,no_slot_copy,wrap_line)
+dnl                  $1       $2     $3         $4      $5        $6         $7
+dnl  _STATIC_METHOD(cppname,cname,cpprettype,crettype,arglist,cdeclarations,cargs,
+dnl                        $8            $9      $10         $11    $12     $13
+dnl                 cinitializations,refreturn,errthrow,deprecated,ifdef,out_param,
+dnl                       $14          $15      $16          $17       $18
+dnl                 out_param_type,slot_type,slot_name,no_slot_copy,wrap_line)
 define(`_STATIC_METHOD',`dnl
 _PUSH(SECTION_CC)
-ifelse(`$11',,,`_DEPRECATE_IFDEF_START
-')dnl
 ifelse(`$12',,,`#ifdef $12'
 )dnl
+ifelse(`$11',,,`_DEPRECATE_IFDEF_START`'dnl The expansion of _DEPRECATE_IFDEF_START ends with a newline
+G_GNUC_BEGIN_IGNORE_DEPRECATIONS
+')dnl
 $3 __CPPNAME__::$1($5)
 {
 ifelse(`$9'`$10',,dnl
@@ -185,10 +190,8 @@ ifelse(`$3',void,,`  return retvalue;
 ')dnl
 ')dnl
 }
-
-ifelse(`$12',,,`
-#endif // $12
-')dnl
-ifelse(`$11',,,`_DEPRECATE_IFDEF_END
+ifelse(`$11',,,`G_GNUC_END_IGNORE_DEPRECATIONS
+_DEPRECATE_IFDEF_END')`'dnl The expansion of _DEPRECATE_IFDEF_END ends with a newline
+ifelse(`$12',,,`#endif // $12
 ')
 _POP()')