summaryrefslogtreecommitdiff
path: root/bindings/lazglib2.pas
diff options
context:
space:
mode:
authorTomas Bzatek <tbzatek@redhat.com>2024-12-23 12:25:59 +0100
committerTomas Bzatek <tbzatek@redhat.com>2025-11-27 19:36:06 +0100
commita9634b933f71a9045e61d29c486f2d51d39fd1e2 (patch)
treeeec472463f27971c2b477efe1ddfd4eb37cddfdd /bindings/lazglib2.pas
parent585635371a182d2b3cd5400f6d26d8e20ade6dbd (diff)
downloadtuxcmd-a9634b933f71a9045e61d29c486f2d51d39fd1e2.tar.xz
Add gobject-introspection generated bindings
Uses the gir2pascal tool from the Lazarus IDE project, see https://wiki.freepascal.org/gir2pascal Generating gtk3 bindings involves generating all its dependencies, including glib2, etc. As long as the generated units have number of issues getting this compiled, using a copy of gtk3bindings from Lazarus for the moment.
Diffstat (limited to 'bindings/lazglib2.pas')
-rw-r--r--bindings/lazglib2.pas11098
1 files changed, 11098 insertions, 0 deletions
diff --git a/bindings/lazglib2.pas b/bindings/lazglib2.pas
new file mode 100644
index 0000000..e0827ba
--- /dev/null
+++ b/bindings/lazglib2.pas
@@ -0,0 +1,11098 @@
+{ This is an autogenerated unit using gobject introspection (gir2pascal). Do not Edit. }
+unit LazGLib2;
+
+{$MODE OBJFPC}{$H+}
+
+{$PACKRECORDS C}
+{$MODESWITCH DUPLICATELOCALS+}
+
+{$ifdef Unix}
+{$LINKLIB libgobject-2.0.so.0}
+{$LINKLIB libglib-2.0.so.0}
+{$endif}
+{$WARN 3031 off : Values in enumeration types have to be ascending}
+interface
+uses
+ CTypes;
+
+const
+ {$ifdef MsWindows}
+ LazGLib2_library = 'libgobject-2.0.so.dll';
+ {$else}
+ LazGLib2_library = 'libgobject-2.0.so.0';
+ {$endif}
+
+ G_ANALYZER_ANALYZING = 1;
+ G_ASCII_DTOSTR_BUF_SIZE = 39;
+ G_BIG_ENDIAN = 4321;
+ G_CSET_A_2_Z = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ';
+ G_CSET_DIGITS = '0123456789';
+ G_CSET_a_2_z_ = 'abcdefghijklmnopqrstuvwxyz';
+ G_DATALIST_FLAGS_MASK = 3;
+ G_DATE_BAD_DAY = 0;
+ G_DATE_BAD_JULIAN = 0;
+ G_DATE_BAD_YEAR = 0;
+ G_DIR_SEPARATOR = 47;
+ G_DIR_SEPARATOR_S = '/';
+ G_E = 2.718282;
+ G_GINT16_FORMAT = 'hi';
+ G_GINT16_MODIFIER = 'h';
+ G_GINT32_FORMAT = 'i';
+ G_GINT32_MODIFIER = '';
+ G_GINT64_FORMAT = 'li';
+ G_GINT64_MODIFIER = 'l';
+ G_GINTPTR_FORMAT = 'li';
+ G_GINTPTR_MODIFIER = 'l';
+ G_GNUC_FUNCTION = '';
+ G_GNUC_PRETTY_FUNCTION = '';
+ G_GSIZE_FORMAT = 'lu';
+ G_GSIZE_MODIFIER = 'l';
+ G_GSSIZE_FORMAT = 'li';
+ G_GSSIZE_MODIFIER = 'l';
+ G_GUINT16_FORMAT = 'hu';
+ G_GUINT32_FORMAT = 'u';
+ G_GUINT64_FORMAT = 'lu';
+ G_GUINTPTR_FORMAT = 'lu';
+ G_HAVE_GINT64 = 1;
+ G_HAVE_GNUC_VARARGS = 1;
+ G_HAVE_GNUC_VISIBILITY = 1;
+ G_HAVE_GROWING_STACK = 0;
+ G_HAVE_ISO_VARARGS = 1;
+ G_HOOK_FLAG_USER_SHIFT = 4;
+ G_IEEE754_DOUBLE_BIAS = 1023;
+ G_IEEE754_FLOAT_BIAS = 127;
+ G_KEY_FILE_DESKTOP_GROUP = 'Desktop Entry';
+ G_KEY_FILE_DESKTOP_KEY_ACTIONS = 'Actions';
+ G_KEY_FILE_DESKTOP_KEY_CATEGORIES = 'Categories';
+ G_KEY_FILE_DESKTOP_KEY_COMMENT = 'Comment';
+ G_KEY_FILE_DESKTOP_KEY_DBUS_ACTIVATABLE = 'DBusActivatable';
+ G_KEY_FILE_DESKTOP_KEY_EXEC = 'Exec';
+ G_KEY_FILE_DESKTOP_KEY_GENERIC_NAME = 'GenericName';
+ G_KEY_FILE_DESKTOP_KEY_HIDDEN = 'Hidden';
+ G_KEY_FILE_DESKTOP_KEY_ICON = 'Icon';
+ G_KEY_FILE_DESKTOP_KEY_MIME_TYPE = 'MimeType';
+ G_KEY_FILE_DESKTOP_KEY_NAME = 'Name';
+ G_KEY_FILE_DESKTOP_KEY_NOT_SHOW_IN = 'NotShowIn';
+ G_KEY_FILE_DESKTOP_KEY_NO_DISPLAY = 'NoDisplay';
+ G_KEY_FILE_DESKTOP_KEY_ONLY_SHOW_IN = 'OnlyShowIn';
+ G_KEY_FILE_DESKTOP_KEY_PATH = 'Path';
+ G_KEY_FILE_DESKTOP_KEY_STARTUP_NOTIFY = 'StartupNotify';
+ G_KEY_FILE_DESKTOP_KEY_STARTUP_WM_CLASS = 'StartupWMClass';
+ G_KEY_FILE_DESKTOP_KEY_TERMINAL = 'Terminal';
+ G_KEY_FILE_DESKTOP_KEY_TRY_EXEC = 'TryExec';
+ G_KEY_FILE_DESKTOP_KEY_TYPE = 'Type';
+ G_KEY_FILE_DESKTOP_KEY_URL = 'URL';
+ G_KEY_FILE_DESKTOP_KEY_VERSION = 'Version';
+ G_KEY_FILE_DESKTOP_TYPE_APPLICATION = 'Application';
+ G_KEY_FILE_DESKTOP_TYPE_DIRECTORY = 'Directory';
+ G_KEY_FILE_DESKTOP_TYPE_LINK = 'Link';
+ G_LITTLE_ENDIAN = 1234;
+ G_LN10 = 2.302585;
+ G_LN2 = 0.693147;
+ G_LOG_2_BASE_10 = 0.301030;
+ G_LOG_DOMAIN = 0;
+ G_LOG_FATAL_MASK = 5;
+ G_LOG_LEVEL_USER_SHIFT = 8;
+ GLIB_MAJOR_VERSION = 2;
+ G_MAXINT16 = 32767;
+ G_MAXINT32 = 2147483647;
+ G_MAXINT64 = 9223372036854775807;
+ G_MAXINT8 = 127;
+ G_MAXUINT16 = 65535;
+ G_MAXUINT32 = 4294967295;
+ G_MAXUINT64 = 18446744073709551615;
+ G_MAXUINT8 = 255;
+ GLIB_MICRO_VERSION = 4;
+ G_MININT16 = -32768;
+ G_MININT32 = -2147483648;
+ G_MININT64 = -9223372036854775808;
+ G_MININT8 = -128;
+ GLIB_MINOR_VERSION = 74;
+ G_MODULE_SUFFIX = 'so';
+ G_OPTION_REMAINING = '';
+ G_PDP_ENDIAN = 3412;
+ G_PI = 3.141593;
+ G_PID_FORMAT = 'i';
+ G_PI_2 = 1.570796;
+ G_PI_4 = 0.785398;
+ G_POLLFD_FORMAT = '%d';
+ G_PRIORITY_DEFAULT = 0;
+ G_PRIORITY_DEFAULT_IDLE = 200;
+ G_PRIORITY_HIGH = -100;
+ G_PRIORITY_HIGH_IDLE = 100;
+ G_PRIORITY_LOW = 300;
+ G_SEARCHPATH_SEPARATOR = 58;
+ G_SEARCHPATH_SEPARATOR_S = ':';
+ GLIB_SIZEOF_LONG = 8;
+ GLIB_SIZEOF_SIZE_T = 8;
+ GLIB_SIZEOF_SSIZE_T = 8;
+ GLIB_SIZEOF_VOID_P = 8;
+ G_SOURCE_CONTINUE = true;
+ G_SOURCE_REMOVE_ = false;
+ G_SQRT2 = 1.414214;
+ G_STR_DELIMITERS = '_-|> <.';
+ GLIB_SYSDEF_AF_INET = 2;
+ GLIB_SYSDEF_AF_INET6 = 10;
+ GLIB_SYSDEF_AF_UNIX = 1;
+ GLIB_SYSDEF_MSG_DONTROUTE = 4;
+ GLIB_SYSDEF_MSG_OOB = 1;
+ GLIB_SYSDEF_MSG_PEEK = 2;
+ G_TEST_OPTION_ISOLATE_DIRS = 'isolate_dirs';
+ G_TIME_SPAN_DAY = 86400000000;
+ G_TIME_SPAN_HOUR = 3600000000;
+ G_TIME_SPAN_MILLISECOND = 1000;
+ G_TIME_SPAN_MINUTE = 60000000;
+ G_TIME_SPAN_SECOND = 1000000;
+ G_UNICHAR_MAX_DECOMPOSITION_LENGTH = 18;
+ G_URI_RESERVED_CHARS_GENERIC_DELIMITERS = ':/?#[]@';
+ G_URI_RESERVED_CHARS_SUBCOMPONENT_DELIMITERS = '!$&''()*+,;=';
+ G_USEC_PER_SEC = 1000000;
+ G_VA_COPY_AS_ARRAY = 1;
+ GLIB_VERSION_MIN_REQUIRED = 2;
+ G_WIN32_MSG_HANDLE = 19981206;
+ g_macro__has_attribute___noreturn__ = 0;
+type
+ TGAsciiTypeIdx = (
+ TGAsciiTypeIdxMinValue = 0,
+ G_ASCII_ALNUM = 0,
+ G_ASCII_ALPHA = 1,
+ G_ASCII_CNTRL = 2,
+ G_ASCII_DIGIT = 3,
+ G_ASCII_GRAPH = 4,
+ G_ASCII_LOWER = 5,
+ G_ASCII_PRINT = 6,
+ G_ASCII_PUNCT = 7,
+ G_ASCII_SPACE = 8,
+ G_ASCII_UPPER = 9,
+ G_ASCII_XDIGIT = 10,
+ TGAsciiTypeIdxMaxValue = 31
+ );
+ TGAsciiType = Set of TGAsciiTypeIdx;
+ TGBookmarkFileError = (
+ TGBookmarkFileErrorMinValue = -$7FFFFFFF,
+ G_BOOKMARK_FILE_ERROR_INVALID_URI = 0,
+ G_BOOKMARK_FILE_ERROR_INVALID_VALUE = 1,
+ G_BOOKMARK_FILE_ERROR_APP_NOT_REGISTERED = 2,
+ G_BOOKMARK_FILE_ERROR_URI_NOT_FOUND = 3,
+ G_BOOKMARK_FILE_ERROR_READ = 4,
+ G_BOOKMARK_FILE_ERROR_UNKNOWN_ENCODING = 5,
+ G_BOOKMARK_FILE_ERROR_WRITE = 6,
+ G_BOOKMARK_FILE_ERROR_FILE_NOT_FOUND = 7,
+ TGBookmarkFileErrorMaxValue = $7FFFFFFF
+ );
+ TGChecksumType = (
+ TGChecksumTypeMinValue = -$7FFFFFFF,
+ G_CHECKSUM_MD5 = 0,
+ G_CHECKSUM_SHA1 = 1,
+ G_CHECKSUM_SHA256 = 2,
+ G_CHECKSUM_SHA512 = 3,
+ G_CHECKSUM_SHA384 = 4,
+ TGChecksumTypeMaxValue = $7FFFFFFF
+ );
+ TGConvertError = (
+ TGConvertErrorMinValue = -$7FFFFFFF,
+ G_CONVERT_ERROR_NO_CONVERSION = 0,
+ G_CONVERT_ERROR_ILLEGAL_SEQUENCE = 1,
+ G_CONVERT_ERROR_FAILED = 2,
+ G_CONVERT_ERROR_PARTIAL_INPUT = 3,
+ G_CONVERT_ERROR_BAD_URI = 4,
+ G_CONVERT_ERROR_NOT_ABSOLUTE_PATH = 5,
+ G_CONVERT_ERROR_NO_MEMORY = 6,
+ G_CONVERT_ERROR_EMBEDDED_NUL = 7,
+ TGConvertErrorMaxValue = $7FFFFFFF
+ );
+ TGDateMonth = (
+ TGDateMonthMinValue = -$7FFFFFFF,
+ G_DATE_BAD_MONTH = 0,
+ G_DATE_JANUARY = 1,
+ G_DATE_FEBRUARY = 2,
+ G_DATE_MARCH = 3,
+ G_DATE_APRIL = 4,
+ G_DATE_MAY = 5,
+ G_DATE_JUNE = 6,
+ G_DATE_JULY = 7,
+ G_DATE_AUGUST = 8,
+ G_DATE_SEPTEMBER = 9,
+ G_DATE_OCTOBER = 10,
+ G_DATE_NOVEMBER = 11,
+ G_DATE_DECEMBER = 12,
+ TGDateMonthMaxValue = $7FFFFFFF
+ );
+ TGDateWeekday = (
+ TGDateWeekdayMinValue = -$7FFFFFFF,
+ G_DATE_BAD_WEEKDAY = 0,
+ G_DATE_MONDAY = 1,
+ G_DATE_TUESDAY = 2,
+ G_DATE_WEDNESDAY = 3,
+ G_DATE_THURSDAY = 4,
+ G_DATE_FRIDAY = 5,
+ G_DATE_SATURDAY = 6,
+ G_DATE_SUNDAY = 7,
+ TGDateWeekdayMaxValue = $7FFFFFFF
+ );
+ TGDateDMY = (
+ TGDateDMYMinValue = -$7FFFFFFF,
+ G_DATE_DAY = 0,
+ G_DATE_MONTH = 1,
+ G_DATE_YEAR = 2,
+ TGDateDMYMaxValue = $7FFFFFFF
+ );
+ TGTimeType = (
+ TGTimeTypeMinValue = -$7FFFFFFF,
+ G_TIME_TYPE_STANDARD = 0,
+ G_TIME_TYPE_DAYLIGHT = 1,
+ G_TIME_TYPE_UNIVERSAL = 2,
+ TGTimeTypeMaxValue = $7FFFFFFF
+ );
+ TGErrorType = (
+ TGErrorTypeMinValue = -$7FFFFFFF,
+ G_ERR_UNKNOWN = 0,
+ G_ERR_UNEXP_EOF = 1,
+ G_ERR_UNEXP_EOF_IN_STRING = 2,
+ G_ERR_UNEXP_EOF_IN_COMMENT = 3,
+ G_ERR_NON_DIGIT_IN_CONST = 4,
+ G_ERR_DIGIT_RADIX = 5,
+ G_ERR_FLOAT_RADIX = 6,
+ G_ERR_FLOAT_MALFORMED = 7,
+ TGErrorTypeMaxValue = $7FFFFFFF
+ );
+ TGFileError = (
+ TGFileErrorMinValue = -$7FFFFFFF,
+ G_FILE_ERROR_EXIST = 0,
+ G_FILE_ERROR_ISDIR = 1,
+ G_FILE_ERROR_ACCES = 2,
+ G_FILE_ERROR_NAMETOOLONG = 3,
+ G_FILE_ERROR_NOENT = 4,
+ G_FILE_ERROR_NOTDIR = 5,
+ G_FILE_ERROR_NXIO = 6,
+ G_FILE_ERROR_NODEV = 7,
+ G_FILE_ERROR_ROFS = 8,
+ G_FILE_ERROR_TXTBSY = 9,
+ G_FILE_ERROR_FAULT = 10,
+ G_FILE_ERROR_LOOP = 11,
+ G_FILE_ERROR_NOSPC = 12,
+ G_FILE_ERROR_NOMEM = 13,
+ G_FILE_ERROR_MFILE = 14,
+ G_FILE_ERROR_NFILE = 15,
+ G_FILE_ERROR_BADF = 16,
+ G_FILE_ERROR_INVAL = 17,
+ G_FILE_ERROR_PIPE = 18,
+ G_FILE_ERROR_AGAIN = 19,
+ G_FILE_ERROR_INTR = 20,
+ G_FILE_ERROR_IO = 21,
+ G_FILE_ERROR_PERM = 22,
+ G_FILE_ERROR_NOSYS = 23,
+ G_FILE_ERROR_FAILED = 24,
+ TGFileErrorMaxValue = $7FFFFFFF
+ );
+ TGFileSetContentsFlagsIdx = (
+ TGFileSetContentsFlagsIdxMinValue = 0,
+ G_FILE_SET_CONTENTS_CONSISTENT = 0,
+ G_FILE_SET_CONTENTS_DURABLE = 1,
+ G_FILE_SET_CONTENTS_ONLY_EXISTING = 2,
+ TGFileSetContentsFlagsIdxMaxValue = 31
+ );
+ TGFileSetContentsFlags = Set of TGFileSetContentsFlagsIdx;
+const
+ G_FILE_SET_CONTENTS_NONE = []; {0 = $00000000}
+
+type
+ TGFileTestIdx = (
+ TGFileTestIdxMinValue = 0,
+ G_FILE_TEST_IS_REGULAR = 0,
+ G_FILE_TEST_IS_SYMLINK = 1,
+ G_FILE_TEST_IS_DIR = 2,
+ G_FILE_TEST_IS_EXECUTABLE = 3,
+ G_FILE_TEST_EXISTS = 4,
+ TGFileTestIdxMaxValue = 31
+ );
+ TGFileTest = Set of TGFileTestIdx;
+ TGFormatSizeFlagsIdx = (
+ TGFormatSizeFlagsIdxMinValue = 0,
+ G_FORMAT_SIZE_LONG_FORMAT = 0,
+ G_FORMAT_SIZE_IEC_UNITS = 1,
+ G_FORMAT_SIZE_BITS = 2,
+ G_FORMAT_SIZE_ONLY_VALUE = 3,
+ G_FORMAT_SIZE_ONLY_UNIT = 4,
+ TGFormatSizeFlagsIdxMaxValue = 31
+ );
+ TGFormatSizeFlags = Set of TGFormatSizeFlagsIdx;
+const
+ G_FORMAT_SIZE_DEFAULT = []; {0 = $00000000}
+
+type
+ TGHookFlagMaskIdx = (
+ TGHookFlagMaskIdxMinValue = 0,
+ G_HOOK_FLAG_ACTIVE = 0,
+ G_HOOK_FLAG_IN_CALL = 1,
+ TGHookFlagMaskIdxMaxValue = 31
+ );
+ TGHookFlagMask = Set of TGHookFlagMaskIdx;
+const
+ G_HOOK_FLAG_MASK = [
+ G_HOOK_FLAG_ACTIVE,
+ G_HOOK_FLAG_IN_CALL,
+ TGHookFlagMaskIdx(2),
+ TGHookFlagMaskIdx(3)
+ ]; {15 = $0000000F}
+
+type
+ TGSeekType = (
+ TGSeekTypeMinValue = -$7FFFFFFF,
+ G_SEEK_CUR = 0,
+ G_SEEK_SET = 1,
+ G_SEEK_END = 2,
+ TGSeekTypeMaxValue = $7FFFFFFF
+ );
+ TGIOConditionIdx = (
+ TGIOConditionIdxMinValue = 0,
+ G_IO_IN = 0,
+ G_IO_PRI = 1,
+ G_IO_OUT = 2,
+ G_IO_ERR = 3,
+ G_IO_HUP = 4,
+ G_IO_NVAL = 5,
+ TGIOConditionIdxMaxValue = 31
+ );
+ TGIOCondition = Set of TGIOConditionIdx;
+ TGIOFlagsIdx = (
+ TGIOFlagsIdxMinValue = 0,
+ G_IO_FLAG_APPEND = 0,
+ G_IO_FLAG_NONBLOCK = 1,
+ G_IO_FLAG_IS_READABLE = 2,
+ G_IO_FLAG_IS_WRITEABLE = 3,
+ G_IO_FLAG_IS_WRITABLE = 3,
+ G_IO_FLAG_IS_SEEKABLE = 4,
+ TGIOFlagsIdxMaxValue = 31
+ );
+ TGIOFlags = Set of TGIOFlagsIdx;
+const
+ G_IO_FLAG_NONE = []; {0 = $00000000}
+
+ G_IO_FLAG_SET_MASK = [
+ G_IO_FLAG_APPEND,
+ G_IO_FLAG_NONBLOCK
+ ]; {3 = $00000003}
+
+ G_IO_FLAG_GET_MASK = [
+ G_IO_FLAG_APPEND,
+ G_IO_FLAG_NONBLOCK,
+ G_IO_FLAG_IS_READABLE,
+ G_IO_FLAG_IS_WRITEABLE,
+ G_IO_FLAG_IS_SEEKABLE
+ ]; {31 = $0000001F}
+
+ G_IO_FLAG_MASK = [
+ G_IO_FLAG_APPEND,
+ G_IO_FLAG_NONBLOCK,
+ G_IO_FLAG_IS_READABLE,
+ G_IO_FLAG_IS_WRITEABLE,
+ G_IO_FLAG_IS_SEEKABLE
+ ]; {31 = $0000001F}
+
+type
+ TGIOStatus = (
+ TGIOStatusMinValue = -$7FFFFFFF,
+ G_IO_STATUS_ERROR = 0,
+ G_IO_STATUS_NORMAL = 1,
+ G_IO_STATUS_EOF = 2,
+ G_IO_STATUS_AGAIN = 3,
+ TGIOStatusMaxValue = $7FFFFFFF
+ );
+ TGIOError = (
+ TGIOErrorMinValue = -$7FFFFFFF,
+ G_IO_ERROR_NONE = 0,
+ G_IO_ERROR_AGAIN = 1,
+ G_IO_ERROR_INVAL = 2,
+ G_IO_ERROR_UNKNOWN = 3,
+ TGIOErrorMaxValue = $7FFFFFFF
+ );
+ TGIOChannelError = (
+ TGIOChannelErrorMinValue = -$7FFFFFFF,
+ G_IO_CHANNEL_ERROR_FBIG = 0,
+ G_IO_CHANNEL_ERROR_INVAL = 1,
+ G_IO_CHANNEL_ERROR_IO = 2,
+ G_IO_CHANNEL_ERROR_ISDIR = 3,
+ G_IO_CHANNEL_ERROR_NOSPC = 4,
+ G_IO_CHANNEL_ERROR_NXIO = 5,
+ G_IO_CHANNEL_ERROR_OVERFLOW = 6,
+ G_IO_CHANNEL_ERROR_PIPE = 7,
+ G_IO_CHANNEL_ERROR_FAILED = 8,
+ TGIOChannelErrorMaxValue = $7FFFFFFF
+ );
+ TGKeyFileFlagsIdx = (
+ TGKeyFileFlagsIdxMinValue = 0,
+ G_KEY_FILE_KEEP_COMMENTS = 0,
+ G_KEY_FILE_KEEP_TRANSLATIONS = 1,
+ TGKeyFileFlagsIdxMaxValue = 31
+ );
+ TGKeyFileFlags = Set of TGKeyFileFlagsIdx;
+const
+ G_KEY_FILE_NONE = []; {0 = $00000000}
+
+type
+ TGKeyFileError = (
+ TGKeyFileErrorMinValue = -$7FFFFFFF,
+ G_KEY_FILE_ERROR_UNKNOWN_ENCODING = 0,
+ G_KEY_FILE_ERROR_PARSE = 1,
+ G_KEY_FILE_ERROR_NOT_FOUND = 2,
+ G_KEY_FILE_ERROR_KEY_NOT_FOUND = 3,
+ G_KEY_FILE_ERROR_GROUP_NOT_FOUND = 4,
+ G_KEY_FILE_ERROR_INVALID_VALUE = 5,
+ TGKeyFileErrorMaxValue = $7FFFFFFF
+ );
+ TGLogLevelFlagsIdx = (
+ TGLogLevelFlagsIdxMinValue = 0,
+ G_LOG_FLAG_RECURSION = 0,
+ G_LOG_FLAG_FATAL = 1,
+ G_LOG_LEVEL_ERROR = 2,
+ G_LOG_LEVEL_CRITICAL = 3,
+ G_LOG_LEVEL_WARNING = 4,
+ G_LOG_LEVEL_MESSAGE = 5,
+ G_LOG_LEVEL_INFO = 6,
+ G_LOG_LEVEL_DEBUG = 7,
+ TGLogLevelFlagsIdxMaxValue = 31
+ );
+ TGLogLevelFlags = Set of TGLogLevelFlagsIdx;
+const
+ G_LOG_LEVEL_MASK = [
+ G_LOG_LEVEL_ERROR,
+ G_LOG_LEVEL_CRITICAL,
+ G_LOG_LEVEL_WARNING,
+ G_LOG_LEVEL_MESSAGE,
+ G_LOG_LEVEL_INFO,
+ G_LOG_LEVEL_DEBUG,
+ TGLogLevelFlagsIdx(8),
+ TGLogLevelFlagsIdx(9),
+ TGLogLevelFlagsIdx(10),
+ TGLogLevelFlagsIdx(11),
+ TGLogLevelFlagsIdx(12),
+ TGLogLevelFlagsIdx(13),
+ TGLogLevelFlagsIdx(14),
+ TGLogLevelFlagsIdx(15),
+ TGLogLevelFlagsIdx(16),
+ TGLogLevelFlagsIdx(17),
+ TGLogLevelFlagsIdx(18),
+ TGLogLevelFlagsIdx(19),
+ TGLogLevelFlagsIdx(20),
+ TGLogLevelFlagsIdx(21),
+ TGLogLevelFlagsIdx(22),
+ TGLogLevelFlagsIdx(23),
+ TGLogLevelFlagsIdx(24),
+ TGLogLevelFlagsIdx(25),
+ TGLogLevelFlagsIdx(26),
+ TGLogLevelFlagsIdx(27),
+ TGLogLevelFlagsIdx(28),
+ TGLogLevelFlagsIdx(29),
+ TGLogLevelFlagsIdx(30),
+ TGLogLevelFlagsIdx(31)
+ ]; {-4 = $FFFFFFFC}
+
+type
+ TGLogWriterOutput = (
+ TGLogWriterOutputMinValue = -$7FFFFFFF,
+ G_LOG_WRITER_UNHANDLED = 0,
+ G_LOG_WRITER_HANDLED = 1,
+ TGLogWriterOutputMaxValue = $7FFFFFFF
+ );
+ TGMarkupCollectTypeIdx = (
+ TGMarkupCollectTypeIdxMinValue = 0,
+ G_MARKUP_COLLECT_STRING = 0,
+ G_MARKUP_COLLECT_STRDUP = 1,
+ G_MARKUP_COLLECT_TRISTATE = 2,
+ G_MARKUP_COLLECT_OPTIONAL = 16,
+ TGMarkupCollectTypeIdxMaxValue = 31
+ );
+ TGMarkupCollectType = Set of TGMarkupCollectTypeIdx;
+const
+ G_MARKUP_COLLECT_INVALID = []; {0 = $00000000}
+
+ G_MARKUP_COLLECT_BOOLEAN = [
+ G_MARKUP_COLLECT_STRING,
+ G_MARKUP_COLLECT_STRDUP
+ ]; {3 = $00000003}
+
+type
+ TGMarkupError = (
+ TGMarkupErrorMinValue = -$7FFFFFFF,
+ G_MARKUP_ERROR_BAD_UTF8 = 0,
+ G_MARKUP_ERROR_EMPTY = 1,
+ G_MARKUP_ERROR_PARSE = 2,
+ G_MARKUP_ERROR_UNKNOWN_ELEMENT = 3,
+ G_MARKUP_ERROR_UNKNOWN_ATTRIBUTE = 4,
+ G_MARKUP_ERROR_INVALID_CONTENT = 5,
+ G_MARKUP_ERROR_MISSING_ATTRIBUTE = 6,
+ TGMarkupErrorMaxValue = $7FFFFFFF
+ );
+ TGMarkupParseFlagsIdx = (
+ TGMarkupParseFlagsIdxMinValue = 0,
+ G_MARKUP_DO_NOT_USE_THIS_UNSUPPORTED_FLAG = 0,
+ G_MARKUP_TREAT_CDATA_AS_TEXT = 1,
+ G_MARKUP_PREFIX_ERROR_POSITION = 2,
+ G_MARKUP_IGNORE_QUALIFIED = 3,
+ TGMarkupParseFlagsIdxMaxValue = 31
+ );
+ TGMarkupParseFlags = Set of TGMarkupParseFlagsIdx;
+const
+ G_MARKUP_DEFAULT_FLAGS = []; {0 = $00000000}
+
+type
+ TGRegexCompileFlagsIdx = (
+ TGRegexCompileFlagsIdxMinValue = 0,
+ G_REGEX_CASELESS = 0,
+ G_REGEX_MULTILINE = 1,
+ G_REGEX_DOTALL = 2,
+ G_REGEX_EXTENDED = 3,
+ G_REGEX_ANCHORED = 4,
+ G_REGEX_DOLLAR_ENDONLY = 5,
+ G_REGEX_UNGREEDY = 9,
+ G_REGEX_RAW = 11,
+ G_REGEX_NO_AUTO_CAPTURE = 12,
+ G_REGEX_OPTIMIZE = 13,
+ G_REGEX_FIRSTLINE = 18,
+ G_REGEX_DUPNAMES = 19,
+ G_REGEX_NEWLINE_CR = 20,
+ G_REGEX_NEWLINE_LF = 21,
+ G_REGEX_BSR_ANYCRLF = 23,
+ G_REGEX_JAVASCRIPT_COMPAT = 25,
+ TGRegexCompileFlagsIdxMaxValue = 31
+ );
+ TGRegexCompileFlags = Set of TGRegexCompileFlagsIdx;
+const
+ G_REGEX_DEFAULT = []; {0 = $00000000}
+
+ G_REGEX_NEWLINE_CRLF = [
+ G_REGEX_NEWLINE_CR,
+ G_REGEX_NEWLINE_LF
+ ]; {3145728 = $00300000}
+
+ G_REGEX_NEWLINE_ANYCRLF = [
+ G_REGEX_NEWLINE_CR,
+ TGRegexCompileFlagsIdx(22)
+ ]; {5242880 = $00500000}
+
+type
+ TGRegexMatchFlagsIdx = (
+ TGRegexMatchFlagsIdxMinValue = 0,
+ G_REGEX_MATCH_ANCHORED = 4,
+ G_REGEX_MATCH_NOTBOL = 7,
+ G_REGEX_MATCH_NOTEOL = 8,
+ G_REGEX_MATCH_NOTEMPTY = 10,
+ G_REGEX_MATCH_PARTIAL_SOFT = 15,
+ G_REGEX_MATCH_PARTIAL = 15,
+ G_REGEX_MATCH_NEWLINE_CR = 20,
+ G_REGEX_MATCH_NEWLINE_LF = 21,
+ G_REGEX_MATCH_NEWLINE_ANY = 22,
+ G_REGEX_MATCH_BSR_ANYCRLF = 23,
+ G_REGEX_MATCH_BSR_ANY = 24,
+ G_REGEX_MATCH_PARTIAL_HARD = 27,
+ G_REGEX_MATCH_NOTEMPTY_ATSTART = 28,
+ TGRegexMatchFlagsIdxMaxValue = 31
+ );
+ TGRegexMatchFlags = Set of TGRegexMatchFlagsIdx;
+const
+ G_REGEX_MATCH_DEFAULT = []; {0 = $00000000}
+
+ G_REGEX_MATCH_NEWLINE_CRLF = [
+ G_REGEX_MATCH_NEWLINE_CR,
+ G_REGEX_MATCH_NEWLINE_LF
+ ]; {3145728 = $00300000}
+
+ G_REGEX_MATCH_NEWLINE_ANYCRLF = [
+ G_REGEX_MATCH_NEWLINE_CR,
+ G_REGEX_MATCH_NEWLINE_ANY
+ ]; {5242880 = $00500000}
+
+type
+ TGTraverseFlagsIdx = (
+ TGTraverseFlagsIdxMinValue = 0,
+ G_TRAVERSE_LEAFS = 0,
+ G_TRAVERSE_LEAVES = 0,
+ G_TRAVERSE_NON_LEAFS = 1,
+ G_TRAVERSE_NON_LEAVES = 1,
+ TGTraverseFlagsIdxMaxValue = 31
+ );
+ TGTraverseFlags = Set of TGTraverseFlagsIdx;
+const
+ G_TRAVERSE_ALL = [
+ G_TRAVERSE_LEAFS,
+ G_TRAVERSE_NON_LEAFS
+ ]; {3 = $00000003}
+
+ G_TRAVERSE_MASK = [
+ G_TRAVERSE_LEAFS,
+ G_TRAVERSE_NON_LEAFS
+ ]; {3 = $00000003}
+
+type
+ TGTraverseType = (
+ TGTraverseTypeMinValue = -$7FFFFFFF,
+ G_IN_ORDER = 0,
+ G_PRE_ORDER = 1,
+ G_POST_ORDER = 2,
+ G_LEVEL_ORDER = 3,
+ TGTraverseTypeMaxValue = $7FFFFFFF
+ );
+ TGNormalizeMode = (
+ TGNormalizeModeMinValue = -$7FFFFFFF,
+ G_NORMALIZE_NFD = 0,
+ G_NORMALIZE_DEFAULT = 0,
+ G_NORMALIZE_NFC = 1,
+ G_NORMALIZE_DEFAULT_COMPOSE = 1,
+ G_NORMALIZE_NFKD = 2,
+ G_NORMALIZE_ALL = 2,
+ G_NORMALIZE_NFKC = 3,
+ G_NORMALIZE_ALL_COMPOSE = 3,
+ TGNormalizeModeMaxValue = $7FFFFFFF
+ );
+ TGNumberParserError = (
+ TGNumberParserErrorMinValue = -$7FFFFFFF,
+ G_NUMBER_PARSER_ERROR_INVALID = 0,
+ G_NUMBER_PARSER_ERROR_OUT_OF_BOUNDS = 1,
+ TGNumberParserErrorMaxValue = $7FFFFFFF
+ );
+ TGOnceStatus = (
+ TGOnceStatusMinValue = -$7FFFFFFF,
+ G_ONCE_STATUS_NOTCALLED = 0,
+ G_ONCE_STATUS_PROGRESS = 1,
+ G_ONCE_STATUS_READY = 2,
+ TGOnceStatusMaxValue = $7FFFFFFF
+ );
+ TGOptionArg = (
+ TGOptionArgMinValue = -$7FFFFFFF,
+ G_OPTION_ARG_NONE = 0,
+ G_OPTION_ARG_STRING = 1,
+ G_OPTION_ARG_INT = 2,
+ G_OPTION_ARG_CALLBACK = 3,
+ G_OPTION_ARG_FILENAME = 4,
+ G_OPTION_ARG_STRING_ARRAY = 5,
+ G_OPTION_ARG_FILENAME_ARRAY = 6,
+ G_OPTION_ARG_DOUBLE = 7,
+ G_OPTION_ARG_INT64 = 8,
+ TGOptionArgMaxValue = $7FFFFFFF
+ );
+ TGOptionError = (
+ TGOptionErrorMinValue = -$7FFFFFFF,
+ G_OPTION_ERROR_UNKNOWN_OPTION = 0,
+ G_OPTION_ERROR_BAD_VALUE = 1,
+ G_OPTION_ERROR_FAILED = 2,
+ TGOptionErrorMaxValue = $7FFFFFFF
+ );
+ TGOptionFlagsIdx = (
+ TGOptionFlagsIdxMinValue = 0,
+ G_OPTION_FLAG_HIDDEN = 0,
+ G_OPTION_FLAG_IN_MAIN = 1,
+ G_OPTION_FLAG_REVERSE = 2,
+ G_OPTION_FLAG_NO_ARG = 3,
+ G_OPTION_FLAG_FILENAME = 4,
+ G_OPTION_FLAG_OPTIONAL_ARG = 5,
+ G_OPTION_FLAG_NOALIAS = 6,
+ TGOptionFlagsIdxMaxValue = 31
+ );
+ TGOptionFlags = Set of TGOptionFlagsIdx;
+const
+ G_OPTION_FLAG_NONE = []; {0 = $00000000}
+
+type
+ TGRegexError = (
+ TGRegexErrorMinValue = -$7FFFFFFF,
+ G_REGEX_ERROR_COMPILE = 0,
+ G_REGEX_ERROR_OPTIMIZE = 1,
+ G_REGEX_ERROR_REPLACE = 2,
+ G_REGEX_ERROR_MATCH = 3,
+ G_REGEX_ERROR_INTERNAL = 4,
+ G_REGEX_ERROR_STRAY_BACKSLASH = 101,
+ G_REGEX_ERROR_MISSING_CONTROL_CHAR = 102,
+ G_REGEX_ERROR_UNRECOGNIZED_ESCAPE = 103,
+ G_REGEX_ERROR_QUANTIFIERS_OUT_OF_ORDER = 104,
+ G_REGEX_ERROR_QUANTIFIER_TOO_BIG = 105,
+ G_REGEX_ERROR_UNTERMINATED_CHARACTER_CLASS = 106,
+ G_REGEX_ERROR_INVALID_ESCAPE_IN_CHARACTER_CLASS = 107,
+ G_REGEX_ERROR_RANGE_OUT_OF_ORDER = 108,
+ G_REGEX_ERROR_NOTHING_TO_REPEAT = 109,
+ G_REGEX_ERROR_UNRECOGNIZED_CHARACTER = 112,
+ G_REGEX_ERROR_POSIX_NAMED_CLASS_OUTSIDE_CLASS = 113,
+ G_REGEX_ERROR_UNMATCHED_PARENTHESIS = 114,
+ G_REGEX_ERROR_INEXISTENT_SUBPATTERN_REFERENCE = 115,
+ G_REGEX_ERROR_UNTERMINATED_COMMENT = 118,
+ G_REGEX_ERROR_EXPRESSION_TOO_LARGE = 120,
+ G_REGEX_ERROR_MEMORY_ERROR = 121,
+ G_REGEX_ERROR_VARIABLE_LENGTH_LOOKBEHIND = 125,
+ G_REGEX_ERROR_MALFORMED_CONDITION = 126,
+ G_REGEX_ERROR_TOO_MANY_CONDITIONAL_BRANCHES = 127,
+ G_REGEX_ERROR_ASSERTION_EXPECTED = 128,
+ G_REGEX_ERROR_UNKNOWN_POSIX_CLASS_NAME = 130,
+ G_REGEX_ERROR_POSIX_COLLATING_ELEMENTS_NOT_SUPPORTED = 131,
+ G_REGEX_ERROR_HEX_CODE_TOO_LARGE = 134,
+ G_REGEX_ERROR_INVALID_CONDITION = 135,
+ G_REGEX_ERROR_SINGLE_BYTE_MATCH_IN_LOOKBEHIND = 136,
+ G_REGEX_ERROR_INFINITE_LOOP = 140,
+ G_REGEX_ERROR_MISSING_SUBPATTERN_NAME_TERMINATOR = 142,
+ G_REGEX_ERROR_DUPLICATE_SUBPATTERN_NAME = 143,
+ G_REGEX_ERROR_MALFORMED_PROPERTY = 146,
+ G_REGEX_ERROR_UNKNOWN_PROPERTY = 147,
+ G_REGEX_ERROR_SUBPATTERN_NAME_TOO_LONG = 148,
+ G_REGEX_ERROR_TOO_MANY_SUBPATTERNS = 149,
+ G_REGEX_ERROR_INVALID_OCTAL_VALUE = 151,
+ G_REGEX_ERROR_TOO_MANY_BRANCHES_IN_DEFINE = 154,
+ G_REGEX_ERROR_DEFINE_REPETION = 155,
+ G_REGEX_ERROR_INCONSISTENT_NEWLINE_OPTIONS = 156,
+ G_REGEX_ERROR_MISSING_BACK_REFERENCE = 157,
+ G_REGEX_ERROR_INVALID_RELATIVE_REFERENCE = 158,
+ G_REGEX_ERROR_BACKTRACKING_CONTROL_VERB_ARGUMENT_FORBIDDEN = 159,
+ G_REGEX_ERROR_UNKNOWN_BACKTRACKING_CONTROL_VERB = 160,
+ G_REGEX_ERROR_NUMBER_TOO_BIG = 161,
+ G_REGEX_ERROR_MISSING_SUBPATTERN_NAME = 162,
+ G_REGEX_ERROR_MISSING_DIGIT = 163,
+ G_REGEX_ERROR_INVALID_DATA_CHARACTER = 164,
+ G_REGEX_ERROR_EXTRA_SUBPATTERN_NAME = 165,
+ G_REGEX_ERROR_BACKTRACKING_CONTROL_VERB_ARGUMENT_REQUIRED = 166,
+ G_REGEX_ERROR_INVALID_CONTROL_CHAR = 168,
+ G_REGEX_ERROR_MISSING_NAME = 169,
+ G_REGEX_ERROR_NOT_SUPPORTED_IN_CLASS = 171,
+ G_REGEX_ERROR_TOO_MANY_FORWARD_REFERENCES = 172,
+ G_REGEX_ERROR_NAME_TOO_LONG = 175,
+ G_REGEX_ERROR_CHARACTER_VALUE_TOO_LARGE = 176,
+ TGRegexErrorMaxValue = $7FFFFFFF
+ );
+ TGTokenType = (
+ TGTokenTypeMinValue = -$7FFFFFFF,
+ G_TOKEN_EOF = 0,
+ G_TOKEN_LEFT_PAREN = 40,
+ G_TOKEN_RIGHT_PAREN = 41,
+ G_TOKEN_COMMA = 44,
+ G_TOKEN_EQUAL_SIGN = 61,
+ G_TOKEN_LEFT_BRACE = 91,
+ G_TOKEN_RIGHT_BRACE = 93,
+ G_TOKEN_LEFT_CURLY = 123,
+ G_TOKEN_RIGHT_CURLY = 125,
+ G_TOKEN_NONE = 256,
+ G_TOKEN_ERROR = 257,
+ G_TOKEN_CHAR = 258,
+ G_TOKEN_BINARY = 259,
+ G_TOKEN_OCTAL = 260,
+ G_TOKEN_INT = 261,
+ G_TOKEN_HEX = 262,
+ G_TOKEN_FLOAT = 263,
+ G_TOKEN_STRING = 264,
+ G_TOKEN_SYMBOL = 265,
+ G_TOKEN_IDENTIFIER = 266,
+ G_TOKEN_IDENTIFIER_NULL = 267,
+ G_TOKEN_COMMENT_SINGLE = 268,
+ G_TOKEN_COMMENT_MULTI = 269,
+ TGTokenTypeMaxValue = $7FFFFFFF
+ );
+ TGShellError = (
+ TGShellErrorMinValue = -$7FFFFFFF,
+ G_SHELL_ERROR_BAD_QUOTING = 0,
+ G_SHELL_ERROR_EMPTY_STRING = 1,
+ G_SHELL_ERROR_FAILED = 2,
+ TGShellErrorMaxValue = $7FFFFFFF
+ );
+ TGSliceConfig = (
+ TGSliceConfigMinValue = -$7FFFFFFF,
+ G_SLICE_CONFIG_ALWAYS_MALLOC = 1,
+ G_SLICE_CONFIG_BYPASS_MAGAZINES = 2,
+ G_SLICE_CONFIG_WORKING_SET_MSECS = 3,
+ G_SLICE_CONFIG_COLOR_INCREMENT = 4,
+ G_SLICE_CONFIG_CHUNK_SIZES = 5,
+ G_SLICE_CONFIG_CONTENTION_COUNTER = 6,
+ TGSliceConfigMaxValue = $7FFFFFFF
+ );
+ TGSpawnError = (
+ TGSpawnErrorMinValue = -$7FFFFFFF,
+ G_SPAWN_ERROR_FORK = 0,
+ G_SPAWN_ERROR_READ = 1,
+ G_SPAWN_ERROR_CHDIR = 2,
+ G_SPAWN_ERROR_ACCES = 3,
+ G_SPAWN_ERROR_PERM = 4,
+ G_SPAWN_ERROR_2BIG = 5,
+ G_SPAWN_ERROR_TOO_BIG = 5,
+ G_SPAWN_ERROR_NOEXEC = 6,
+ G_SPAWN_ERROR_NAMETOOLONG = 7,
+ G_SPAWN_ERROR_NOENT = 8,
+ G_SPAWN_ERROR_NOMEM = 9,
+ G_SPAWN_ERROR_NOTDIR = 10,
+ G_SPAWN_ERROR_LOOP = 11,
+ G_SPAWN_ERROR_TXTBUSY = 12,
+ G_SPAWN_ERROR_IO = 13,
+ G_SPAWN_ERROR_NFILE = 14,
+ G_SPAWN_ERROR_MFILE = 15,
+ G_SPAWN_ERROR_INVAL = 16,
+ G_SPAWN_ERROR_ISDIR = 17,
+ G_SPAWN_ERROR_LIBBAD = 18,
+ G_SPAWN_ERROR_FAILED = 19,
+ TGSpawnErrorMaxValue = $7FFFFFFF
+ );
+ TGSpawnFlagsIdx = (
+ TGSpawnFlagsIdxMinValue = 0,
+ G_SPAWN_LEAVE_DESCRIPTORS_OPEN = 0,
+ G_SPAWN_DO_NOT_REAP_CHILD = 1,
+ G_SPAWN_SEARCH_PATH = 2,
+ G_SPAWN_STDOUT_TO_DEV_NULL = 3,
+ G_SPAWN_STDERR_TO_DEV_NULL = 4,
+ G_SPAWN_CHILD_INHERITS_STDIN = 5,
+ G_SPAWN_FILE_AND_ARGV_ZERO = 6,
+ G_SPAWN_SEARCH_PATH_FROM_ENVP = 7,
+ G_SPAWN_CLOEXEC_PIPES = 8,
+ G_SPAWN_CHILD_INHERITS_STDOUT = 9,
+ G_SPAWN_CHILD_INHERITS_STDERR = 10,
+ G_SPAWN_STDIN_FROM_DEV_NULL = 11,
+ TGSpawnFlagsIdxMaxValue = 31
+ );
+ TGSpawnFlags = Set of TGSpawnFlagsIdx;
+const
+ G_SPAWN_DEFAULT = []; {0 = $00000000}
+
+type
+ TGTestFileType = (
+ TGTestFileTypeMinValue = -$7FFFFFFF,
+ G_TEST_DIST = 0,
+ G_TEST_BUILT = 1,
+ TGTestFileTypeMaxValue = $7FFFFFFF
+ );
+ TGTestLogType = (
+ TGTestLogTypeMinValue = -$7FFFFFFF,
+ G_TEST_LOG_NONE = 0,
+ G_TEST_LOG_ERROR = 1,
+ G_TEST_LOG_START_BINARY = 2,
+ G_TEST_LOG_LIST_CASE = 3,
+ G_TEST_LOG_SKIP_CASE = 4,
+ G_TEST_LOG_START_CASE = 5,
+ G_TEST_LOG_STOP_CASE = 6,
+ G_TEST_LOG_MIN_RESULT = 7,
+ G_TEST_LOG_MAX_RESULT = 8,
+ G_TEST_LOG_MESSAGE = 9,
+ G_TEST_LOG_START_SUITE = 10,
+ G_TEST_LOG_STOP_SUITE = 11,
+ TGTestLogTypeMaxValue = $7FFFFFFF
+ );
+ TGTestResult = (
+ TGTestResultMinValue = -$7FFFFFFF,
+ G_TEST_RUN_SUCCESS = 0,
+ G_TEST_RUN_SKIPPED = 1,
+ G_TEST_RUN_FAILURE = 2,
+ G_TEST_RUN_INCOMPLETE = 3,
+ TGTestResultMaxValue = $7FFFFFFF
+ );
+ TGTestSubprocessFlagsIdx = (
+ TGTestSubprocessFlagsIdxMinValue = 0,
+ G_TEST_SUBPROCESS_INHERIT_STDIN = 0,
+ G_TEST_SUBPROCESS_INHERIT_STDOUT = 1,
+ G_TEST_SUBPROCESS_INHERIT_STDERR = 2,
+ TGTestSubprocessFlagsIdxMaxValue = 31
+ );
+ TGTestSubprocessFlags = Set of TGTestSubprocessFlagsIdx;
+const
+ G_TEST_SUBPROCESS_DEFAULT = []; {0 = $00000000}
+
+type
+ TGTestTrapFlagsIdx = (
+ TGTestTrapFlagsIdxMinValue = 0,
+ G_TEST_TRAP_SILENCE_STDOUT = 7,
+ G_TEST_TRAP_SILENCE_STDERR = 8,
+ G_TEST_TRAP_INHERIT_STDIN = 9,
+ TGTestTrapFlagsIdxMaxValue = 31
+ );
+ TGTestTrapFlags = Set of TGTestTrapFlagsIdx;
+const
+ G_TEST_TRAP_DEFAULT = []; {0 = $00000000}
+
+type
+ TGThreadError = (
+ TGThreadErrorMinValue = -$7FFFFFFF,
+ G_THREAD_ERROR_AGAIN = 0,
+ TGThreadErrorMaxValue = $7FFFFFFF
+ );
+ TGUnicodeBreakType = (
+ TGUnicodeBreakTypeMinValue = -$7FFFFFFF,
+ G_UNICODE_BREAK_MANDATORY = 0,
+ G_UNICODE_BREAK_CARRIAGE_RETURN = 1,
+ G_UNICODE_BREAK_LINE_FEED = 2,
+ G_UNICODE_BREAK_COMBINING_MARK = 3,
+ G_UNICODE_BREAK_SURROGATE = 4,
+ G_UNICODE_BREAK_ZERO_WIDTH_SPACE = 5,
+ G_UNICODE_BREAK_INSEPARABLE = 6,
+ G_UNICODE_BREAK_NON_BREAKING_GLUE = 7,
+ G_UNICODE_BREAK_CONTINGENT = 8,
+ G_UNICODE_BREAK_SPACE = 9,
+ G_UNICODE_BREAK_AFTER = 10,
+ G_UNICODE_BREAK_BEFORE = 11,
+ G_UNICODE_BREAK_BEFORE_AND_AFTER = 12,
+ G_UNICODE_BREAK_HYPHEN = 13,
+ G_UNICODE_BREAK_NON_STARTER = 14,
+ G_UNICODE_BREAK_OPEN_PUNCTUATION = 15,
+ G_UNICODE_BREAK_CLOSE_PUNCTUATION = 16,
+ G_UNICODE_BREAK_QUOTATION = 17,
+ G_UNICODE_BREAK_EXCLAMATION = 18,
+ G_UNICODE_BREAK_IDEOGRAPHIC = 19,
+ G_UNICODE_BREAK_NUMERIC = 20,
+ G_UNICODE_BREAK_INFIX_SEPARATOR = 21,
+ G_UNICODE_BREAK_SYMBOL = 22,
+ G_UNICODE_BREAK_ALPHABETIC = 23,
+ G_UNICODE_BREAK_PREFIX = 24,
+ G_UNICODE_BREAK_POSTFIX = 25,
+ G_UNICODE_BREAK_COMPLEX_CONTEXT = 26,
+ G_UNICODE_BREAK_AMBIGUOUS = 27,
+ G_UNICODE_BREAK_UNKNOWN = 28,
+ G_UNICODE_BREAK_NEXT_LINE = 29,
+ G_UNICODE_BREAK_WORD_JOINER = 30,
+ G_UNICODE_BREAK_HANGUL_L_JAMO = 31,
+ G_UNICODE_BREAK_HANGUL_V_JAMO = 32,
+ G_UNICODE_BREAK_HANGUL_T_JAMO = 33,
+ G_UNICODE_BREAK_HANGUL_LV_SYLLABLE = 34,
+ G_UNICODE_BREAK_HANGUL_LVT_SYLLABLE = 35,
+ G_UNICODE_BREAK_CLOSE_PARENTHESIS = 36,
+ G_UNICODE_BREAK_CLOSE_PARANTHESIS = 36,
+ G_UNICODE_BREAK_CONDITIONAL_JAPANESE_STARTER = 37,
+ G_UNICODE_BREAK_HEBREW_LETTER = 38,
+ G_UNICODE_BREAK_REGIONAL_INDICATOR = 39,
+ G_UNICODE_BREAK_EMOJI_BASE = 40,
+ G_UNICODE_BREAK_EMOJI_MODIFIER = 41,
+ G_UNICODE_BREAK_ZERO_WIDTH_JOINER = 42,
+ TGUnicodeBreakTypeMaxValue = $7FFFFFFF
+ );
+ TGUnicodeScript = (
+ TGUnicodeScriptMinValue = -$7FFFFFFF,
+ G_UNICODE_SCRIPT_INVALID_CODE = -1,
+ G_UNICODE_SCRIPT_COMMON = 0,
+ G_UNICODE_SCRIPT_INHERITED = 1,
+ G_UNICODE_SCRIPT_ARABIC = 2,
+ G_UNICODE_SCRIPT_ARMENIAN = 3,
+ G_UNICODE_SCRIPT_BENGALI = 4,
+ G_UNICODE_SCRIPT_BOPOMOFO = 5,
+ G_UNICODE_SCRIPT_CHEROKEE = 6,
+ G_UNICODE_SCRIPT_COPTIC = 7,
+ G_UNICODE_SCRIPT_CYRILLIC = 8,
+ G_UNICODE_SCRIPT_DESERET = 9,
+ G_UNICODE_SCRIPT_DEVANAGARI = 10,
+ G_UNICODE_SCRIPT_ETHIOPIC = 11,
+ G_UNICODE_SCRIPT_GEORGIAN = 12,
+ G_UNICODE_SCRIPT_GOTHIC = 13,
+ G_UNICODE_SCRIPT_GREEK = 14,
+ G_UNICODE_SCRIPT_GUJARATI = 15,
+ G_UNICODE_SCRIPT_GURMUKHI = 16,
+ G_UNICODE_SCRIPT_HAN = 17,
+ G_UNICODE_SCRIPT_HANGUL = 18,
+ G_UNICODE_SCRIPT_HEBREW = 19,
+ G_UNICODE_SCRIPT_HIRAGANA = 20,
+ G_UNICODE_SCRIPT_KANNADA = 21,
+ G_UNICODE_SCRIPT_KATAKANA = 22,
+ G_UNICODE_SCRIPT_KHMER = 23,
+ G_UNICODE_SCRIPT_LAO = 24,
+ G_UNICODE_SCRIPT_LATIN = 25,
+ G_UNICODE_SCRIPT_MALAYALAM = 26,
+ G_UNICODE_SCRIPT_MONGOLIAN = 27,
+ G_UNICODE_SCRIPT_MYANMAR = 28,
+ G_UNICODE_SCRIPT_OGHAM = 29,
+ G_UNICODE_SCRIPT_OLD_ITALIC = 30,
+ G_UNICODE_SCRIPT_ORIYA = 31,
+ G_UNICODE_SCRIPT_RUNIC = 32,
+ G_UNICODE_SCRIPT_SINHALA = 33,
+ G_UNICODE_SCRIPT_SYRIAC = 34,
+ G_UNICODE_SCRIPT_TAMIL = 35,
+ G_UNICODE_SCRIPT_TELUGU = 36,
+ G_UNICODE_SCRIPT_THAANA = 37,
+ G_UNICODE_SCRIPT_THAI = 38,
+ G_UNICODE_SCRIPT_TIBETAN = 39,
+ G_UNICODE_SCRIPT_CANADIAN_ABORIGINAL = 40,
+ G_UNICODE_SCRIPT_YI = 41,
+ G_UNICODE_SCRIPT_TAGALOG = 42,
+ G_UNICODE_SCRIPT_HANUNOO = 43,
+ G_UNICODE_SCRIPT_BUHID = 44,
+ G_UNICODE_SCRIPT_TAGBANWA = 45,
+ G_UNICODE_SCRIPT_BRAILLE = 46,
+ G_UNICODE_SCRIPT_CYPRIOT = 47,
+ G_UNICODE_SCRIPT_LIMBU = 48,
+ G_UNICODE_SCRIPT_OSMANYA = 49,
+ G_UNICODE_SCRIPT_SHAVIAN = 50,
+ G_UNICODE_SCRIPT_LINEAR_B = 51,
+ G_UNICODE_SCRIPT_TAI_LE = 52,
+ G_UNICODE_SCRIPT_UGARITIC = 53,
+ G_UNICODE_SCRIPT_NEW_TAI_LUE = 54,
+ G_UNICODE_SCRIPT_BUGINESE = 55,
+ G_UNICODE_SCRIPT_GLAGOLITIC = 56,
+ G_UNICODE_SCRIPT_TIFINAGH = 57,
+ G_UNICODE_SCRIPT_SYLOTI_NAGRI = 58,
+ G_UNICODE_SCRIPT_OLD_PERSIAN = 59,
+ G_UNICODE_SCRIPT_KHAROSHTHI = 60,
+ G_UNICODE_SCRIPT_UNKNOWN = 61,
+ G_UNICODE_SCRIPT_BALINESE = 62,
+ G_UNICODE_SCRIPT_CUNEIFORM = 63,
+ G_UNICODE_SCRIPT_PHOENICIAN = 64,
+ G_UNICODE_SCRIPT_PHAGS_PA = 65,
+ G_UNICODE_SCRIPT_NKO = 66,
+ G_UNICODE_SCRIPT_KAYAH_LI = 67,
+ G_UNICODE_SCRIPT_LEPCHA = 68,
+ G_UNICODE_SCRIPT_REJANG = 69,
+ G_UNICODE_SCRIPT_SUNDANESE = 70,
+ G_UNICODE_SCRIPT_SAURASHTRA = 71,
+ G_UNICODE_SCRIPT_CHAM = 72,
+ G_UNICODE_SCRIPT_OL_CHIKI = 73,
+ G_UNICODE_SCRIPT_VAI = 74,
+ G_UNICODE_SCRIPT_CARIAN = 75,
+ G_UNICODE_SCRIPT_LYCIAN = 76,
+ G_UNICODE_SCRIPT_LYDIAN = 77,
+ G_UNICODE_SCRIPT_AVESTAN = 78,
+ G_UNICODE_SCRIPT_BAMUM = 79,
+ G_UNICODE_SCRIPT_EGYPTIAN_HIEROGLYPHS = 80,
+ G_UNICODE_SCRIPT_IMPERIAL_ARAMAIC = 81,
+ G_UNICODE_SCRIPT_INSCRIPTIONAL_PAHLAVI = 82,
+ G_UNICODE_SCRIPT_INSCRIPTIONAL_PARTHIAN = 83,
+ G_UNICODE_SCRIPT_JAVANESE = 84,
+ G_UNICODE_SCRIPT_KAITHI = 85,
+ G_UNICODE_SCRIPT_LISU = 86,
+ G_UNICODE_SCRIPT_MEETEI_MAYEK = 87,
+ G_UNICODE_SCRIPT_OLD_SOUTH_ARABIAN = 88,
+ G_UNICODE_SCRIPT_OLD_TURKIC = 89,
+ G_UNICODE_SCRIPT_SAMARITAN = 90,
+ G_UNICODE_SCRIPT_TAI_THAM = 91,
+ G_UNICODE_SCRIPT_TAI_VIET = 92,
+ G_UNICODE_SCRIPT_BATAK = 93,
+ G_UNICODE_SCRIPT_BRAHMI = 94,
+ G_UNICODE_SCRIPT_MANDAIC = 95,
+ G_UNICODE_SCRIPT_CHAKMA = 96,
+ G_UNICODE_SCRIPT_MEROITIC_CURSIVE = 97,
+ G_UNICODE_SCRIPT_MEROITIC_HIEROGLYPHS = 98,
+ G_UNICODE_SCRIPT_MIAO = 99,
+ G_UNICODE_SCRIPT_SHARADA = 100,
+ G_UNICODE_SCRIPT_SORA_SOMPENG = 101,
+ G_UNICODE_SCRIPT_TAKRI = 102,
+ G_UNICODE_SCRIPT_BASSA_VAH = 103,
+ G_UNICODE_SCRIPT_CAUCASIAN_ALBANIAN = 104,
+ G_UNICODE_SCRIPT_DUPLOYAN = 105,
+ G_UNICODE_SCRIPT_ELBASAN = 106,
+ G_UNICODE_SCRIPT_GRANTHA = 107,
+ G_UNICODE_SCRIPT_KHOJKI = 108,
+ G_UNICODE_SCRIPT_KHUDAWADI = 109,
+ G_UNICODE_SCRIPT_LINEAR_A = 110,
+ G_UNICODE_SCRIPT_MAHAJANI = 111,
+ G_UNICODE_SCRIPT_MANICHAEAN = 112,
+ G_UNICODE_SCRIPT_MENDE_KIKAKUI = 113,
+ G_UNICODE_SCRIPT_MODI = 114,
+ G_UNICODE_SCRIPT_MRO = 115,
+ G_UNICODE_SCRIPT_NABATAEAN = 116,
+ G_UNICODE_SCRIPT_OLD_NORTH_ARABIAN = 117,
+ G_UNICODE_SCRIPT_OLD_PERMIC = 118,
+ G_UNICODE_SCRIPT_PAHAWH_HMONG = 119,
+ G_UNICODE_SCRIPT_PALMYRENE = 120,
+ G_UNICODE_SCRIPT_PAU_CIN_HAU = 121,
+ G_UNICODE_SCRIPT_PSALTER_PAHLAVI = 122,
+ G_UNICODE_SCRIPT_SIDDHAM = 123,
+ G_UNICODE_SCRIPT_TIRHUTA = 124,
+ G_UNICODE_SCRIPT_WARANG_CITI = 125,
+ G_UNICODE_SCRIPT_AHOM = 126,
+ G_UNICODE_SCRIPT_ANATOLIAN_HIEROGLYPHS = 127,
+ G_UNICODE_SCRIPT_HATRAN = 128,
+ G_UNICODE_SCRIPT_MULTANI = 129,
+ G_UNICODE_SCRIPT_OLD_HUNGARIAN = 130,
+ G_UNICODE_SCRIPT_SIGNWRITING = 131,
+ G_UNICODE_SCRIPT_ADLAM = 132,
+ G_UNICODE_SCRIPT_BHAIKSUKI = 133,
+ G_UNICODE_SCRIPT_MARCHEN = 134,
+ G_UNICODE_SCRIPT_NEWA = 135,
+ G_UNICODE_SCRIPT_OSAGE = 136,
+ G_UNICODE_SCRIPT_TANGUT = 137,
+ G_UNICODE_SCRIPT_MASARAM_GONDI = 138,
+ G_UNICODE_SCRIPT_NUSHU = 139,
+ G_UNICODE_SCRIPT_SOYOMBO = 140,
+ G_UNICODE_SCRIPT_ZANABAZAR_SQUARE = 141,
+ G_UNICODE_SCRIPT_DOGRA = 142,
+ G_UNICODE_SCRIPT_GUNJALA_GONDI = 143,
+ G_UNICODE_SCRIPT_HANIFI_ROHINGYA = 144,
+ G_UNICODE_SCRIPT_MAKASAR = 145,
+ G_UNICODE_SCRIPT_MEDEFAIDRIN = 146,
+ G_UNICODE_SCRIPT_OLD_SOGDIAN = 147,
+ G_UNICODE_SCRIPT_SOGDIAN = 148,
+ G_UNICODE_SCRIPT_ELYMAIC = 149,
+ G_UNICODE_SCRIPT_NANDINAGARI = 150,
+ G_UNICODE_SCRIPT_NYIAKENG_PUACHUE_HMONG = 151,
+ G_UNICODE_SCRIPT_WANCHO = 152,
+ G_UNICODE_SCRIPT_CHORASMIAN = 153,
+ G_UNICODE_SCRIPT_DIVES_AKURU = 154,
+ G_UNICODE_SCRIPT_KHITAN_SMALL_SCRIPT = 155,
+ G_UNICODE_SCRIPT_YEZIDI = 156,
+ G_UNICODE_SCRIPT_CYPRO_MINOAN = 157,
+ G_UNICODE_SCRIPT_OLD_UYGHUR = 158,
+ G_UNICODE_SCRIPT_TANGSA = 159,
+ G_UNICODE_SCRIPT_TOTO = 160,
+ G_UNICODE_SCRIPT_VITHKUQI = 161,
+ G_UNICODE_SCRIPT_MATH = 162,
+ G_UNICODE_SCRIPT_KAWI = 163,
+ G_UNICODE_SCRIPT_NAG_MUNDARI = 164,
+ TGUnicodeScriptMaxValue = $7FFFFFFF
+ );
+ TGUnicodeType = (
+ TGUnicodeTypeMinValue = -$7FFFFFFF,
+ G_UNICODE_CONTROL = 0,
+ G_UNICODE_FORMAT = 1,
+ G_UNICODE_UNASSIGNED = 2,
+ G_UNICODE_PRIVATE_USE = 3,
+ G_UNICODE_SURROGATE = 4,
+ G_UNICODE_LOWERCASE_LETTER = 5,
+ G_UNICODE_MODIFIER_LETTER = 6,
+ G_UNICODE_OTHER_LETTER = 7,
+ G_UNICODE_TITLECASE_LETTER = 8,
+ G_UNICODE_UPPERCASE_LETTER = 9,
+ G_UNICODE_SPACING_MARK = 10,
+ G_UNICODE_ENCLOSING_MARK = 11,
+ G_UNICODE_NON_SPACING_MARK = 12,
+ G_UNICODE_DECIMAL_NUMBER = 13,
+ G_UNICODE_LETTER_NUMBER = 14,
+ G_UNICODE_OTHER_NUMBER = 15,
+ G_UNICODE_CONNECT_PUNCTUATION = 16,
+ G_UNICODE_DASH_PUNCTUATION = 17,
+ G_UNICODE_CLOSE_PUNCTUATION = 18,
+ G_UNICODE_FINAL_PUNCTUATION = 19,
+ G_UNICODE_INITIAL_PUNCTUATION = 20,
+ G_UNICODE_OTHER_PUNCTUATION = 21,
+ G_UNICODE_OPEN_PUNCTUATION = 22,
+ G_UNICODE_CURRENCY_SYMBOL = 23,
+ G_UNICODE_MODIFIER_SYMBOL = 24,
+ G_UNICODE_MATH_SYMBOL = 25,
+ G_UNICODE_OTHER_SYMBOL = 26,
+ G_UNICODE_LINE_SEPARATOR = 27,
+ G_UNICODE_PARAGRAPH_SEPARATOR = 28,
+ G_UNICODE_SPACE_SEPARATOR = 29,
+ TGUnicodeTypeMaxValue = $7FFFFFFF
+ );
+ TGUriFlagsIdx = (
+ TGUriFlagsIdxMinValue = 0,
+ G_URI_FLAGS_PARSE_RELAXED = 0,
+ G_URI_FLAGS_HAS_PASSWORD = 1,
+ G_URI_FLAGS_HAS_AUTH_PARAMS = 2,
+ G_URI_FLAGS_ENCODED = 3,
+ G_URI_FLAGS_NON_DNS = 4,
+ G_URI_FLAGS_ENCODED_QUERY = 5,
+ G_URI_FLAGS_ENCODED_PATH = 6,
+ G_URI_FLAGS_ENCODED_FRAGMENT = 7,
+ G_URI_FLAGS_SCHEME_NORMALIZE = 8,
+ TGUriFlagsIdxMaxValue = 31
+ );
+ TGUriFlags = Set of TGUriFlagsIdx;
+const
+ G_URI_FLAGS_NONE = []; {0 = $00000000}
+
+type
+ TGUriHideFlagsIdx = (
+ TGUriHideFlagsIdxMinValue = 0,
+ G_URI_HIDE_USERINFO = 0,
+ G_URI_HIDE_PASSWORD = 1,
+ G_URI_HIDE_AUTH_PARAMS = 2,
+ G_URI_HIDE_QUERY = 3,
+ G_URI_HIDE_FRAGMENT = 4,
+ TGUriHideFlagsIdxMaxValue = 31
+ );
+ TGUriHideFlags = Set of TGUriHideFlagsIdx;
+const
+ G_URI_HIDE_NONE = []; {0 = $00000000}
+
+type
+ TGUriParamsFlagsIdx = (
+ TGUriParamsFlagsIdxMinValue = 0,
+ G_URI_PARAMS_CASE_INSENSITIVE = 0,
+ G_URI_PARAMS_WWW_FORM = 1,
+ G_URI_PARAMS_PARSE_RELAXED = 2,
+ TGUriParamsFlagsIdxMaxValue = 31
+ );
+ TGUriParamsFlags = Set of TGUriParamsFlagsIdx;
+const
+ G_URI_PARAMS_NONE = []; {0 = $00000000}
+
+type
+ TGUriError = (
+ TGUriErrorMinValue = -$7FFFFFFF,
+ G_URI_ERROR_FAILED = 0,
+ G_URI_ERROR_BAD_SCHEME = 1,
+ G_URI_ERROR_BAD_USER = 2,
+ G_URI_ERROR_BAD_PASSWORD = 3,
+ G_URI_ERROR_BAD_AUTH_PARAMS = 4,
+ G_URI_ERROR_BAD_HOST = 5,
+ G_URI_ERROR_BAD_PORT = 6,
+ G_URI_ERROR_BAD_PATH = 7,
+ G_URI_ERROR_BAD_QUERY = 8,
+ G_URI_ERROR_BAD_FRAGMENT = 9,
+ TGUriErrorMaxValue = $7FFFFFFF
+ );
+ TGUserDirectory = (
+ TGUserDirectoryMinValue = -$7FFFFFFF,
+ G_USER_DIRECTORY_DESKTOP = 0,
+ G_USER_DIRECTORY_DOCUMENTS = 1,
+ G_USER_DIRECTORY_DOWNLOAD = 2,
+ G_USER_DIRECTORY_MUSIC = 3,
+ G_USER_DIRECTORY_PICTURES = 4,
+ G_USER_DIRECTORY_PUBLIC_SHARE = 5,
+ G_USER_DIRECTORY_TEMPLATES = 6,
+ G_USER_DIRECTORY_VIDEOS = 7,
+ G_USER_N_DIRECTORIES = 8,
+ TGUserDirectoryMaxValue = $7FFFFFFF
+ );
+ TGVariantClass = (
+ TGVariantClassMinValue = -$7FFFFFFF,
+ G_VARIANT_CLASS_TUPLE = 40,
+ G_VARIANT_CLASS_ARRAY = 97,
+ G_VARIANT_CLASS_BOOLEAN = 98,
+ G_VARIANT_CLASS_DOUBLE = 100,
+ G_VARIANT_CLASS_SIGNATURE = 103,
+ G_VARIANT_CLASS_HANDLE = 104,
+ G_VARIANT_CLASS_INT32 = 105,
+ G_VARIANT_CLASS_MAYBE = 109,
+ G_VARIANT_CLASS_INT16 = 110,
+ G_VARIANT_CLASS_OBJECT_PATH = 111,
+ G_VARIANT_CLASS_UINT16 = 113,
+ G_VARIANT_CLASS_STRING = 115,
+ G_VARIANT_CLASS_UINT64 = 116,
+ G_VARIANT_CLASS_UINT32 = 117,
+ G_VARIANT_CLASS_VARIANT = 118,
+ G_VARIANT_CLASS_INT64 = 120,
+ G_VARIANT_CLASS_BYTE = 121,
+ G_VARIANT_CLASS_DICT_ENTRY = 123,
+ TGVariantClassMaxValue = $7FFFFFFF
+ );
+ TGVariantParseError = (
+ TGVariantParseErrorMinValue = -$7FFFFFFF,
+ G_VARIANT_PARSE_ERROR_FAILED = 0,
+ G_VARIANT_PARSE_ERROR_BASIC_TYPE_EXPECTED = 1,
+ G_VARIANT_PARSE_ERROR_CANNOT_INFER_TYPE = 2,
+ G_VARIANT_PARSE_ERROR_DEFINITE_TYPE_EXPECTED = 3,
+ G_VARIANT_PARSE_ERROR_INPUT_NOT_AT_END = 4,
+ G_VARIANT_PARSE_ERROR_INVALID_CHARACTER = 5,
+ G_VARIANT_PARSE_ERROR_INVALID_FORMAT_STRING = 6,
+ G_VARIANT_PARSE_ERROR_INVALID_OBJECT_PATH = 7,
+ G_VARIANT_PARSE_ERROR_INVALID_SIGNATURE = 8,
+ G_VARIANT_PARSE_ERROR_INVALID_TYPE_STRING = 9,
+ G_VARIANT_PARSE_ERROR_NO_COMMON_TYPE = 10,
+ G_VARIANT_PARSE_ERROR_NUMBER_OUT_OF_RANGE = 11,
+ G_VARIANT_PARSE_ERROR_NUMBER_TOO_BIG = 12,
+ G_VARIANT_PARSE_ERROR_TYPE_ERROR = 13,
+ G_VARIANT_PARSE_ERROR_UNEXPECTED_TOKEN = 14,
+ G_VARIANT_PARSE_ERROR_UNKNOWN_KEYWORD = 15,
+ G_VARIANT_PARSE_ERROR_UNTERMINATED_STRING_CONSTANT = 16,
+ G_VARIANT_PARSE_ERROR_VALUE_EXPECTED = 17,
+ G_VARIANT_PARSE_ERROR_RECURSION = 18,
+ TGVariantParseErrorMaxValue = $7FFFFFFF
+ );
+type
+ guint1 = 0..(1 shl 1-1);
+ guint2 = 0..(1 shl 2-1);
+ guint3 = 0..(1 shl 3-1);
+ guint4 = 0..(1 shl 4-1);
+ guint5 = 0..(1 shl 5-1);
+ guint6 = 0..(1 shl 6-1);
+ guint7 = 0..(1 shl 7-1);
+ guint9 = 0..(1 shl 9-1);
+ guint10 = 0..(1 shl 10-1);
+ guint11 = 0..(1 shl 11-1);
+ guint12 = 0..(1 shl 12-1);
+ guint13 = 0..(1 shl 13-1);
+ guint14 = 0..(1 shl 14-1);
+ guint15 = 0..(1 shl 15-1);
+ guint17 = 0..(1 shl 17-1);
+ guint18 = 0..(1 shl 18-1);
+ guint19 = 0..(1 shl 19-1);
+ guint20 = 0..(1 shl 20-1);
+ guint21 = 0..(1 shl 21-1);
+ guint22 = 0..(1 shl 22-1);
+ guint23 = 0..(1 shl 23-1);
+ guint24 = 0..(1 shl 24-1);
+ guint25 = 0..(1 shl 25-1);
+ guint26 = 0..(1 shl 26-1);
+ guint27 = 0..(1 shl 27-1);
+ guint28 = 0..(1 shl 28-1);
+ guint29 = 0..(1 shl 29-1);
+ guint30 = 0..(1 shl 30-1);
+ guint31 = 0..(1 shl 31-1);
+
+ { gpointer }
+ PPPgpointer = ^PPgpointer;
+ PPgpointer = ^Pgpointer;
+ Pgpointer = ^gpointer;
+ gpointer = pointer;
+
+ { int }
+ PPPint = ^PPint;
+ PPint = ^Pint;
+ Pint = ^int;
+ int = cint;
+
+ { gint }
+ PPPgint = ^PPgint;
+ PPgint = ^Pgint;
+ Pgint = ^gint;
+ gint = cint;
+
+ { guint }
+ PPPguint = ^PPguint;
+ PPguint = ^Pguint;
+ Pguint = ^guint;
+ guint = cuint;
+
+ { guint8 }
+ PPPguint8 = ^PPguint8;
+ PPguint8 = ^Pguint8;
+ Pguint8 = ^guint8;
+ guint8 = cuint8;
+
+ { guint16 }
+ PPPguint16 = ^PPguint16;
+ PPguint16 = ^Pguint16;
+ Pguint16 = ^guint16;
+ guint16 = cuint16;
+
+ { guint32 }
+ PPPguint32 = ^PPguint32;
+ PPguint32 = ^Pguint32;
+ Pguint32 = ^guint32;
+ guint32 = cuint32;
+
+ { guint64 }
+ PPPguint64 = ^PPguint64;
+ PPguint64 = ^Pguint64;
+ Pguint64 = ^guint64;
+ guint64 = cuint64;
+
+ { gint8 }
+ PPPgint8 = ^PPgint8;
+ PPgint8 = ^Pgint8;
+ Pgint8 = ^gint8;
+ gint8 = cint8;
+
+ { gint16 }
+ PPPgint16 = ^PPgint16;
+ PPgint16 = ^Pgint16;
+ Pgint16 = ^gint16;
+ gint16 = cint16;
+
+ { gint32 }
+ PPPgint32 = ^PPgint32;
+ PPgint32 = ^Pgint32;
+ Pgint32 = ^gint32;
+ gint32 = cint32;
+
+ { gint64 }
+ PPPgint64 = ^PPgint64;
+ PPgint64 = ^Pgint64;
+ Pgint64 = ^gint64;
+ gint64 = cint64;
+
+ { gsize }
+ PPPgsize = ^PPgsize;
+ PPgsize = ^Pgsize;
+ Pgsize = ^gsize;
+ gsize = csize_t;
+
+ { glong }
+ PPPglong = ^PPglong;
+ PPglong = ^Pglong;
+ Pglong = ^glong;
+ glong = clong;
+
+ { gulong }
+ PPPgulong = ^PPgulong;
+ PPgulong = ^Pgulong;
+ Pgulong = ^gulong;
+ gulong = culong;
+
+ { gushort }
+ PPPgushort = ^PPgushort;
+ PPgushort = ^Pgushort;
+ Pgushort = ^gushort;
+ gushort = cushort;
+
+ { gshort }
+ PPPgshort = ^PPgshort;
+ PPgshort = ^Pgshort;
+ Pgshort = ^gshort;
+ gshort = cshort;
+
+ { gchar }
+ PPPgchar = ^PPgchar;
+ PPgchar = ^Pgchar;
+ Pgchar = ^gchar;
+ gchar = char;
+
+ { guchar }
+ PPPguchar = ^PPguchar;
+ PPguchar = ^Pguchar;
+ Pguchar = ^guchar;
+ guchar = byte;
+
+ { gboolean }
+ PPPgboolean = ^PPgboolean;
+ PPgboolean = ^Pgboolean;
+ Pgboolean = ^gboolean;
+ gboolean = Boolean32;
+
+ { gssize }
+ PPPgssize = ^PPgssize;
+ PPgssize = ^Pgssize;
+ Pgssize = ^gssize;
+ gssize = PtrInt;
+
+ { int32 }
+ PPPint32 = ^PPint32;
+ PPint32 = ^Pint32;
+ Pint32 = ^int32;
+ int32 = cint32;
+
+ { size_t }
+ PPPsize_t = ^PPsize_t;
+ PPsize_t = ^Psize_t;
+ Psize_t = ^size_t;
+ size_t = csize_t;
+
+ { gconstpointer }
+ PPPgconstpointer = ^PPgconstpointer;
+ PPgconstpointer = ^Pgconstpointer;
+ Pgconstpointer = ^gconstpointer;
+ gconstpointer = gpointer;
+
+ { gfloat }
+ PPPgfloat = ^PPgfloat;
+ PPgfloat = ^Pgfloat;
+ Pgfloat = ^gfloat;
+ gfloat = cfloat;
+
+ { gdouble }
+ PPPgdouble = ^PPgdouble;
+ PPgdouble = ^Pgdouble;
+ Pgdouble = ^gdouble;
+ gdouble = cdouble;
+
+ { double }
+ PPPdouble = ^PPdouble;
+ PPdouble = ^Pdouble;
+ Pdouble = ^double;
+ double = cdouble;
+
+ { goffset }
+ PPPgoffset = ^PPgoffset;
+ PPgoffset = ^Pgoffset;
+ Pgoffset = ^goffset;
+ goffset = Int64;
+
+ { long_double }
+ PPPlong_double = ^PPlong_double;
+ PPlong_double = ^Plong_double;
+ Plong_double = ^long_double;
+ long_double = Extended;
+
+ { gunichar }
+ PPPgunichar = ^PPgunichar;
+ PPgunichar = ^Pgunichar;
+ Pgunichar = ^gunichar;
+ gunichar = guint32;
+
+ { gunichar2 }
+ PPPgunichar2 = ^PPgunichar2;
+ PPgunichar2 = ^Pgunichar2;
+ Pgunichar2 = ^gunichar2;
+ gunichar2 = guint32;
+
+ { file }
+ PPPfile = ^PPfile;
+ PPfile = ^Pfile;
+ Pfile = ^file;
+
+ { unsigned_long_long }
+ PPPunsigned_long_long = ^PPunsigned_long_long;
+ PPunsigned_long_long = ^Punsigned_long_long;
+ Punsigned_long_long = ^unsigned_long_long;
+ unsigned_long_long = qword;
+
+
+ { TGDateDay }
+ PPGDateDay = ^PGDateDay;
+ PGDateDay = ^TGDateDay;
+ TGDateDay = guint8;
+
+
+ { TGDateYear }
+ PPGDateYear = ^PGDateYear;
+ PGDateYear = ^TGDateYear;
+ TGDateYear = guint16;
+
+
+ { TGMainContextPusher }
+ PPGMainContextPusher = ^PGMainContextPusher;
+ PGMainContextPusher = ^TGMainContextPusher;
+
+ { GMainContextPusher }
+ TGMainContextPusher = record
+ { opaque type }
+ Unknown: Pointer;
+ end;
+
+
+
+ { TGMutexLocker }
+ PPGMutexLocker = ^PGMutexLocker;
+ PGMutexLocker = ^TGMutexLocker;
+
+ { GMutexLocker }
+ TGMutexLocker = record
+ { opaque type }
+ Unknown: Pointer;
+ end;
+
+
+
+ { TGPid }
+ PPGPid = ^PGPid;
+ PGPid = ^TGPid;
+ TGPid = gint;
+
+
+ { TGQuark }
+ PPGQuark = ^PGQuark;
+ PGQuark = ^TGQuark;
+ TGQuark = guint32;
+
+
+ { TGRWLockReaderLocker }
+ PPGRWLockReaderLocker = ^PGRWLockReaderLocker;
+ PGRWLockReaderLocker = ^TGRWLockReaderLocker;
+
+ { GRWLockReaderLocker }
+ TGRWLockReaderLocker = record
+ { opaque type }
+ Unknown: Pointer;
+ end;
+
+
+
+ { TGRWLockWriterLocker }
+ PPGRWLockWriterLocker = ^PGRWLockWriterLocker;
+ PGRWLockWriterLocker = ^TGRWLockWriterLocker;
+
+ { GRWLockWriterLocker }
+ TGRWLockWriterLocker = record
+ { opaque type }
+ Unknown: Pointer;
+ end;
+
+
+
+ { TGRecMutexLocker }
+ PPGRecMutexLocker = ^PGRecMutexLocker;
+ PGRecMutexLocker = ^TGRecMutexLocker;
+
+ { GRecMutexLocker }
+ TGRecMutexLocker = record
+ { opaque type }
+ Unknown: Pointer;
+ end;
+
+
+
+ { TGRefString }
+ PPGRefString = ^PGRefString;
+ PGRefString = ^TGRefString;
+ TGRefString = gchar;
+
+
+ { TGStrv }
+ PPGStrv = ^PGStrv;
+ PGStrv = ^TGStrv;
+ TGStrv = gchar;
+
+
+ { TGTime }
+ PPGTime = ^PGTime;
+ PGTime = ^TGTime;
+ TGTime = gint32;
+
+
+ { TGTimeSpan }
+ PPGTimeSpan = ^PGTimeSpan;
+ PGTimeSpan = ^TGTimeSpan;
+ TGTimeSpan = gint64;
+
+
+ { TGType }
+ PPPGType = ^PPGType;
+ PPGType = ^PGType;
+ PGType = ^TGType;
+ TGType = gsize;
+ TGCompareFunc = function(a: Pgpointer; b: Pgpointer): gint; cdecl;
+ TGDestroyNotify = procedure(data: gpointer); cdecl;
+ TGCompareDataFunc = function(a: Pgpointer; b: Pgpointer; user_data: gpointer): gint; cdecl;
+
+
+ { TGArray }
+ PPGArray = ^PGArray;
+ PGArray = ^TGArray;
+
+
+ { TGCompareFunc }
+ PPGCompareFunc = ^PGCompareFunc;
+ PGCompareFunc = ^TGCompareFunc;
+
+
+ { TGDestroyNotify }
+ PPGDestroyNotify = ^PGDestroyNotify;
+ PGDestroyNotify = ^TGDestroyNotify;
+
+
+ { TGCompareDataFunc }
+ PPGCompareDataFunc = ^PGCompareDataFunc;
+ PGCompareDataFunc = ^TGCompareDataFunc;
+ TGArray = object
+ data: Pgchar;
+ len: guint;
+ function append_vals(array_: Pgpointer; data: Pgpointer; len: guint): Pgpointer; cdecl; inline; static;
+ function binary_search(array_: Pgpointer; target: Pgpointer; compare_func: TGCompareFunc; out_match_index: Pguint): gboolean; cdecl; inline; static;
+ function copy(array_: Pgpointer): Pgpointer; cdecl; inline; static;
+ function free(array_: Pgpointer; free_segment: gboolean): Pgchar; cdecl; inline; static;
+ function get_element_size(array_: Pgpointer): guint; cdecl; inline; static;
+ function insert_vals(array_: Pgpointer; index_: guint; data: Pgpointer; len: guint): Pgpointer; cdecl; inline; static;
+ function new(zero_terminated: gboolean; clear_: gboolean; element_size: guint): Pgpointer; cdecl; inline; static;
+ function prepend_vals(array_: Pgpointer; data: Pgpointer; len: guint): Pgpointer; cdecl; inline; static;
+ function ref(array_: Pgpointer): Pgpointer; cdecl; inline; static;
+ function remove_index(array_: Pgpointer; index_: guint): Pgpointer; cdecl; inline; static;
+ function remove_index_fast(array_: Pgpointer; index_: guint): Pgpointer; cdecl; inline; static;
+ function remove_range(array_: Pgpointer; index_: guint; length: guint): Pgpointer; cdecl; inline; static;
+ procedure set_clear_func(array_: Pgpointer; clear_func: TGDestroyNotify); cdecl; inline; static;
+ function set_size(array_: Pgpointer; length: guint): Pgpointer; cdecl; inline; static;
+ function sized_new(zero_terminated: gboolean; clear_: gboolean; element_size: guint; reserved_size: guint): Pgpointer; cdecl; inline; static;
+ procedure sort(array_: Pgpointer; compare_func: TGCompareFunc); cdecl; inline; static;
+ procedure sort_with_data(array_: Pgpointer; compare_func: TGCompareDataFunc; user_data: gpointer); cdecl; inline; static;
+ function steal(array_: Pgpointer; len: Pgsize): gpointer; cdecl; inline; static;
+ procedure unref(array_: Pgpointer); cdecl; inline; static;
+ end;
+
+
+ { TGAsciiType }
+ PPGAsciiType = ^PGAsciiType;
+ PGAsciiType = ^TGAsciiType;
+
+
+ { TGAsyncQueue }
+ PPGAsyncQueue = ^PGAsyncQueue;
+ PGAsyncQueue = ^TGAsyncQueue;
+ TGAsyncQueue = object
+ function length: gint; cdecl; inline;
+ function length_unlocked: gint; cdecl; inline;
+ procedure lock; cdecl; inline;
+ function pop: gpointer; cdecl; inline;
+ function pop_unlocked: gpointer; cdecl; inline;
+ procedure push(data: gpointer); cdecl; inline;
+ procedure push_front(item: gpointer); cdecl; inline;
+ procedure push_front_unlocked(item: gpointer); cdecl; inline;
+ procedure push_sorted(data: gpointer; func: TGCompareDataFunc; user_data: gpointer); cdecl; inline;
+ procedure push_sorted_unlocked(data: gpointer; func: TGCompareDataFunc; user_data: gpointer); cdecl; inline;
+ procedure push_unlocked(data: gpointer); cdecl; inline;
+ function ref: PGAsyncQueue; cdecl; inline;
+ function remove(item: gpointer): gboolean; cdecl; inline;
+ function remove_unlocked(item: gpointer): gboolean; cdecl; inline;
+ procedure sort(func: TGCompareDataFunc; user_data: gpointer); cdecl; inline;
+ procedure sort_unlocked(func: TGCompareDataFunc; user_data: gpointer); cdecl; inline;
+ function timeout_pop(timeout: guint64): gpointer; cdecl; inline;
+ function timeout_pop_unlocked(timeout: guint64): gpointer; cdecl; inline;
+ function try_pop: gpointer; cdecl; inline;
+ function try_pop_unlocked: gpointer; cdecl; inline;
+ procedure unlock; cdecl; inline;
+ procedure unref; cdecl; inline;
+ function new: PGAsyncQueue; cdecl; inline; static;
+ function new_full(item_free_func: TGDestroyNotify): PGAsyncQueue; cdecl; inline; static;
+ end;
+
+
+ { TGTimeVal }
+ PPGTimeVal = ^PGTimeVal;
+ PGTimeVal = ^TGTimeVal;
+ TGTimeVal = object
+ tv_sec: glong;
+ tv_usec: glong;
+ end;
+
+
+ { TGBookmarkFile }
+ PPGBookmarkFile = ^PGBookmarkFile;
+ PGBookmarkFile = ^TGBookmarkFile;
+
+
+ { TGError }
+ PPGError = ^PGError;
+ PGError = ^TGError;
+
+
+ { TGDateTime }
+ PPGDateTime = ^PGDateTime;
+ PGDateTime = ^TGDateTime;
+ TGBookmarkFile = object
+ procedure add_application(uri: Pgchar; name: Pgchar; exec: Pgchar); cdecl; inline;
+ procedure add_group(uri: Pgchar; group: Pgchar); cdecl; inline;
+ procedure free; cdecl; inline;
+ {$IFDEF USEGTK3LATESTBINDINGS}
+ function get_added(uri: Pgchar; error: PPGError): glong; cdecl; inline; deprecated 'Use g_bookmark_file_get_added_date_time() instead, as `time_t` is deprecated due to the year 2038 problem.';
+ function get_added_date_time(uri: Pgchar; error: PPGError): PGDateTime; cdecl; inline;
+ function get_app_info(uri: Pgchar; name: Pgchar; exec: PPgchar; count: Pguint; stamp: Pglong; error: PPGError): gboolean; cdecl; inline; deprecated 'Use g_bookmark_file_get_application_info() instead, as `time_t` is deprecated due to the year 2038 problem.';
+ function get_application_info(uri: Pgchar; name: Pgchar; exec: PPgchar; count: Pguint; stamp: PPGDateTime; error: PPGError): gboolean; cdecl; inline;
+ {$ENDIF}
+ function get_applications(uri: Pgchar; length: Pgsize; error: PPGError): PPgchar; cdecl; inline;
+ function get_description(uri: Pgchar; error: PPGError): Pgchar; cdecl; inline;
+ function get_groups(uri: Pgchar; length: Pgsize; error: PPGError): PPgchar; cdecl; inline;
+ function get_icon(uri: Pgchar; href: PPgchar; mime_type: PPgchar; error: PPGError): gboolean; cdecl; inline;
+ function get_is_private(uri: Pgchar; error: PPGError): gboolean; cdecl; inline;
+ function get_mime_type(uri: Pgchar; error: PPGError): Pgchar; cdecl; inline;
+ {$IFDEF USEGTK3LATESTBINDINGS}
+ function get_modified(uri: Pgchar; error: PPGError): glong; cdecl; inline; deprecated 'Use g_bookmark_file_get_modified_date_time() instead, as `time_t` is deprecated due to the year 2038 problem.';
+ function get_modified_date_time(uri: Pgchar; error: PPGError): PGDateTime; cdecl; inline;
+ {$ENDIF}
+ function get_size: gint; cdecl; inline;
+ function get_title(uri: Pgchar; error: PPGError): Pgchar; cdecl; inline;
+ function get_uris(length: Pgsize): PPgchar; cdecl; inline;
+ function get_visited(uri: Pgchar; error: PPGError): glong; cdecl; inline; deprecated 'Use g_bookmark_file_get_visited_date_time() instead, as `time_t` is deprecated due to the year 2038 problem.';
+ {$IFDEF USEGTK3LATESTBINDINGS}
+ function get_visited_date_time(uri: Pgchar; error: PPGError): PGDateTime; cdecl; inline;
+ {$ENDIF}
+ function has_application(uri: Pgchar; name: Pgchar; error: PPGError): gboolean; cdecl; inline;
+ function has_group(uri: Pgchar; group: Pgchar; error: PPGError): gboolean; cdecl; inline;
+ function has_item(uri: Pgchar): gboolean; cdecl; inline;
+ function load_from_data(data: Pgchar; length: gsize; error: PPGError): gboolean; cdecl; inline;
+ function load_from_data_dirs(file_: Pgchar; full_path: PPgchar; error: PPGError): gboolean; cdecl; inline;
+ function load_from_file(filename: Pgchar; error: PPGError): gboolean; cdecl; inline;
+ function move_item(old_uri: Pgchar; new_uri: Pgchar; error: PPGError): gboolean; cdecl; inline;
+ function remove_application(uri: Pgchar; name: Pgchar; error: PPGError): gboolean; cdecl; inline;
+ function remove_group(uri: Pgchar; group: Pgchar; error: PPGError): gboolean; cdecl; inline;
+ function remove_item(uri: Pgchar; error: PPGError): gboolean; cdecl; inline;
+ {$IFDEF USEGTK3LATESTBINDINGS}
+ procedure set_added(uri: Pgchar; added: glong); cdecl; inline; deprecated 'Use g_bookmark_file_set_added_date_time() instead, as `time_t` is deprecated due to the year 2038 problem.';
+ procedure set_added_date_time(uri: Pgchar; added: PGDateTime); cdecl; inline;
+ {$ENDIF}
+ function set_app_info(uri: Pgchar; name: Pgchar; exec: Pgchar; count: gint; stamp: glong; error: PPGError): gboolean; cdecl; inline; deprecated 'Use g_bookmark_file_set_application_info() instead, as `time_t` is deprecated due to the year 2038 problem.';
+ {$IFDEF USEGTK3LATESTBINDINGS}
+ function set_application_info(uri: Pgchar; name: Pgchar; exec: Pgchar; count: gint; stamp: PGDateTime; error: PPGError): gboolean; cdecl; inline;
+ {$ENDIF}
+ procedure set_description(uri: Pgchar; description: Pgchar); cdecl; inline;
+ procedure set_groups(uri: Pgchar; groups: PPgchar; length: gsize); cdecl; inline;
+ procedure set_icon(uri: Pgchar; href: Pgchar; mime_type: Pgchar); cdecl; inline;
+ procedure set_is_private(uri: Pgchar; is_private: gboolean); cdecl; inline;
+ procedure set_mime_type(uri: Pgchar; mime_type: Pgchar); cdecl; inline;
+ procedure set_modified(uri: Pgchar; modified: glong); cdecl; inline; deprecated 'Use g_bookmark_file_set_modified_date_time() instead, as `time_t` is deprecated due to the year 2038 problem.';
+ {$IFDEF USEGTK3LATESTBINDINGS}
+ procedure set_modified_date_time(uri: Pgchar; modified: PGDateTime); cdecl; inline;
+ {$ENDIF}
+ procedure set_title(uri: Pgchar; title: Pgchar); cdecl; inline;
+ procedure set_visited(uri: Pgchar; visited: glong); cdecl; inline; deprecated 'Use g_bookmark_file_set_visited_date_time() instead, as `time_t` is deprecated due to the year 2038 problem.';
+ {$IFDEF USEGTK3LATESTBINDINGS}
+ procedure set_visited_date_time(uri: Pgchar; visited: PGDateTime); cdecl; inline;
+ {$ENDIF}
+ function to_data(length: Pgsize; error: PPGError): Pgchar; cdecl; inline;
+ function to_file(filename: Pgchar; error: PPGError): gboolean; cdecl; inline;
+ function error_quark: TGQuark; cdecl; inline; static;
+ function new: PGBookmarkFile; cdecl; inline; static;
+ end;
+
+
+ { Tva_list }
+ Pva_list = ^Tva_list;
+
+ { va_list }
+ Tva_list = record
+ { opaque type }
+ Unknown: Pointer;
+ end;
+
+ TGError = object
+ domain: TGQuark;
+ code: gint;
+ message: Pgchar;
+ //function new(domain: TGQuark; code: gint; format: Pgchar; args: array of const): PGError; cdecl; inline; static;
+ function new_literal(domain: TGQuark; code: gint; message: Pgchar): PGError; cdecl; inline; static;
+ //function new_valist(domain: TGQuark; code: gint; format: Pgchar; args: Tva_list): PGError; cdecl; inline; static;
+ function copy: PGError; cdecl; inline;
+ procedure free; cdecl; inline;
+ function matches(domain: TGQuark; code: gint): gboolean; cdecl; inline;
+ end;
+
+
+ { TGTimeZone }
+ PPGTimeZone = ^PGTimeZone;
+ PGTimeZone = ^TGTimeZone;
+ TGDateTime = object
+ function new(tz: PGTimeZone; year: gint; month: gint; day: gint; hour: gint; minute: gint; seconds: gdouble): PGDateTime; cdecl; inline; static;
+ function new_from_iso8601(text: Pgchar; default_tz: PGTimeZone): PGDateTime; cdecl; inline; static;
+ function new_from_unix_local(t: gint64): PGDateTime; cdecl; inline; static;
+ function new_from_unix_utc(t: gint64): PGDateTime; cdecl; inline; static;
+ function new_local(year: gint; month: gint; day: gint; hour: gint; minute: gint; seconds: gdouble): PGDateTime; cdecl; inline; static;
+ function new_now(tz: PGTimeZone): PGDateTime; cdecl; inline; static;
+ function new_now_local: PGDateTime; cdecl; inline; static;
+ function new_now_utc: PGDateTime; cdecl; inline; static;
+ function new_utc(year: gint; month: gint; day: gint; hour: gint; minute: gint; seconds: gdouble): PGDateTime; cdecl; inline; static;
+ function add(timespan: TGTimeSpan): PGDateTime; cdecl; inline;
+ function add_days(days: gint): PGDateTime; cdecl; inline;
+ function add_full(years: gint; months: gint; days: gint; hours: gint; minutes: gint; seconds: gdouble): PGDateTime; cdecl; inline;
+ function add_hours(hours: gint): PGDateTime; cdecl; inline;
+ function add_minutes(minutes: gint): PGDateTime; cdecl; inline;
+ function add_months(months: gint): PGDateTime; cdecl; inline;
+ function add_seconds(seconds: gdouble): PGDateTime; cdecl; inline;
+ function add_weeks(weeks: gint): PGDateTime; cdecl; inline;
+ function add_years(years: gint): PGDateTime; cdecl; inline;
+ function compare(dt2: PGDateTime): gint; cdecl; inline;
+ function difference(begin_: PGDateTime): TGTimeSpan; cdecl; inline;
+ function equal(dt2: PGDateTime): gboolean; cdecl; inline;
+ function format(format: Pgchar): Pgchar; cdecl; inline;
+ function format_iso8601: Pgchar; cdecl; inline;
+ function get_day_of_month: gint; cdecl; inline;
+ function get_day_of_week: gint; cdecl; inline;
+ function get_day_of_year: gint; cdecl; inline;
+ function get_hour: gint; cdecl; inline;
+ function get_microsecond: gint; cdecl; inline;
+ function get_minute: gint; cdecl; inline;
+ function get_month: gint; cdecl; inline;
+ function get_second: gint; cdecl; inline;
+ function get_seconds: gdouble; cdecl; inline;
+ function get_timezone: PGTimeZone; cdecl; inline;
+ function get_timezone_abbreviation: Pgchar; cdecl; inline;
+ function get_utc_offset: TGTimeSpan; cdecl; inline;
+ function get_week_numbering_year: gint; cdecl; inline;
+ function get_week_of_year: gint; cdecl; inline;
+ function get_year: gint; cdecl; inline;
+ procedure get_ymd(year: Pgint; month: Pgint; day: Pgint); cdecl; inline;
+ function hash: guint; cdecl; inline;
+ function is_daylight_savings: gboolean; cdecl; inline;
+ function ref: PGDateTime; cdecl; inline;
+ function to_local: PGDateTime; cdecl; inline;
+ function to_timezone(tz: PGTimeZone): PGDateTime; cdecl; inline;
+ function to_unix: gint64; cdecl; inline;
+ function to_utc: PGDateTime; cdecl; inline;
+ procedure unref; cdecl; inline;
+ end;
+
+
+ { TGBookmarkFileError }
+ PPGBookmarkFileError = ^PGBookmarkFileError;
+ PGBookmarkFileError = ^TGBookmarkFileError;
+
+
+ { TGBytes }
+ PPGBytes = ^PGBytes;
+ PGBytes = ^TGBytes;
+ TGBytes = object
+ function new(data: guint8; size: gsize): PGBytes; cdecl; inline; static;
+ function new_static(data: guint8; size: gsize): PGBytes; cdecl; inline; static;
+ function new_take(data: guint8; size: gsize): PGBytes; cdecl; inline; static;
+ function new_with_free_func(data: guint8; size: gsize; free_func: TGDestroyNotify; user_data: gpointer): PGBytes; cdecl; inline; static;
+ function compare(bytes2: PGBytes): gint; cdecl; inline;
+ function equal(bytes2: PGBytes): gboolean; cdecl; inline;
+ function get_data(size: Pgsize): guint8; cdecl; inline;
+ function get_size: gsize; cdecl; inline;
+ function hash: guint; cdecl; inline;
+ function new_from_bytes(offset: gsize; length: gsize): PGBytes; cdecl; inline;
+ function ref: PGBytes; cdecl; inline;
+ procedure unref; cdecl; inline;
+ function unref_to_array: Pguint8; cdecl; inline;
+ function unref_to_data(size: Pgsize): guint8; cdecl; inline;
+ end;
+
+
+ { TGByteArray }
+ PPGByteArray = ^PGByteArray;
+ PGByteArray = ^TGByteArray;
+ TGByteArray = object
+ data: Pguint8;
+ len: guint;
+ function append(array_: Pguint8; data: Pguint8; len: guint): Pguint8; cdecl; inline; static;
+ function free(array_: Pguint8; free_segment: gboolean): Pguint8; cdecl; inline; static;
+ function free_to_bytes(array_: Pguint8): PGBytes; cdecl; inline; static;
+ function new: Pguint8; cdecl; inline; static;
+ function new_take(data: Pguint8; len: gsize): Pguint8; cdecl; inline; static;
+ function prepend(array_: Pguint8; data: Pguint8; len: guint): Pguint8; cdecl; inline; static;
+ function ref(array_: Pguint8): Pguint8; cdecl; inline; static;
+ function remove_index(array_: Pguint8; index_: guint): Pguint8; cdecl; inline; static;
+ function remove_index_fast(array_: Pguint8; index_: guint): Pguint8; cdecl; inline; static;
+ function remove_range(array_: Pguint8; index_: guint; length: guint): Pguint8; cdecl; inline; static;
+ function set_size(array_: Pguint8; length: guint): Pguint8; cdecl; inline; static;
+ function sized_new(reserved_size: guint): Pguint8; cdecl; inline; static;
+ procedure sort(array_: Pguint8; compare_func: TGCompareFunc); cdecl; inline; static;
+ procedure sort_with_data(array_: Pguint8; compare_func: TGCompareDataFunc; user_data: gpointer); cdecl; inline; static;
+ function steal(array_: Pguint8; len: Pgsize): Pguint8; cdecl; inline; static;
+ procedure unref(array_: Pguint8); cdecl; inline; static;
+ end;
+
+
+ { TGChecksum }
+ PPGChecksum = ^PGChecksum;
+ PGChecksum = ^TGChecksum;
+
+
+ { TGChecksumType }
+ PPGChecksumType = ^PGChecksumType;
+ PGChecksumType = ^TGChecksumType;
+ TGChecksum = object
+ function new(checksum_type: TGChecksumType): PGChecksum; cdecl; inline; static;
+ function copy: PGChecksum; cdecl; inline;
+ procedure free; cdecl; inline;
+ procedure get_digest(buffer: Pguint8; digest_len: Pgsize); cdecl; inline;
+ function get_string: Pgchar; cdecl; inline;
+ procedure reset; cdecl; inline;
+ procedure update(data: Pguint8; length: gssize); cdecl; inline;
+ function type_get_length(checksum_type: TGChecksumType): gssize; cdecl; inline; static;
+ end;
+ TGChildWatchFunc = procedure(pid: TGPid; wait_status: gint; user_data: gpointer); cdecl;
+ TGClearHandleFunc = procedure(handle_id: guint); cdecl;
+
+
+ { TGCond }
+ PPGCond = ^PGCond;
+ PGCond = ^TGCond;
+
+
+ { TGMutex }
+ PPGMutex = ^PGMutex;
+ PGMutex = ^TGMutex;
+ TGCond = object
+ p: gpointer;
+ i: array [0..1] of guint;
+ procedure broadcast; cdecl; inline;
+ procedure clear; cdecl; inline;
+ procedure init; cdecl; inline;
+ procedure signal; cdecl; inline;
+ procedure wait(mutex: PGMutex); cdecl; inline;
+ function wait_until(mutex: PGMutex; end_time: gint64): gboolean; cdecl; inline;
+ end;
+ TGMutex = record
+ case longint of
+ 0 : (p: gpointer);
+ 1 : (i: array [0..1] of guint);
+ //procedure clear; cdecl;
+ //procedure init; cdecl;
+ //procedure lock; cdecl;
+ //function trylock: gboolean; cdecl;
+ //procedure unlock; cdecl;
+ end;
+
+
+
+
+ { TGConvertError }
+ PPGConvertError = ^PGConvertError;
+ PGConvertError = ^TGConvertError;
+ TGCopyFunc = function(src: Pgpointer; user_data: gpointer): gpointer; cdecl;
+
+
+ { TGData }
+ PPGData = ^PGData;
+ PGData = ^TGData;
+
+ TGData = record
+ end;
+
+
+ TGDataForeachFunc = procedure(key_id: TGQuark; data: gpointer; user_data: gpointer); cdecl;
+
+
+ { TGDate }
+ PPGDate = ^PGDate;
+ PGDate = ^TGDate;
+
+
+ { TGDateMonth }
+ PPGDateMonth = ^PGDateMonth;
+ PGDateMonth = ^TGDateMonth;
+
+
+ { TGDateWeekday }
+ PPGDateWeekday = ^PGDateWeekday;
+ PGDateWeekday = ^TGDateWeekday;
+ TGDateBitfield0 = bitpacked record
+ julian_days: guint32 { changed from guint to accomodate 32 bitsize requirement };
+ julian: guint1 { changed from guint to accomodate 1 bitsize requirement };
+ dmy: guint1 { changed from guint to accomodate 1 bitsize requirement };
+ day: guint6 { changed from guint to accomodate 6 bitsize requirement };
+ month: guint4 { changed from guint to accomodate 4 bitsize requirement };
+ year: guint16 { changed from guint to accomodate 16 bitsize requirement };
+ end;
+
+ TGDate = object
+ Bitfield0 : TGDateBitfield0; { auto generated type }
+ function new: PGDate; cdecl; inline; static;
+ function new_dmy(day: TGDateDay; month: TGDateMonth; year: TGDateYear): PGDate; cdecl; inline; static;
+ function new_julian(julian_day: guint32): PGDate; cdecl; inline; static;
+ procedure add_days(n_days: guint); cdecl; inline;
+ procedure add_months(n_months: guint); cdecl; inline;
+ procedure add_years(n_years: guint); cdecl; inline;
+ procedure clamp(min_date: PGDate; max_date: PGDate); cdecl; inline;
+ procedure clear(n_dates: guint); cdecl; inline;
+ function compare(rhs: PGDate): gint; cdecl; inline;
+ function copy: PGDate; cdecl; inline;
+ function days_between(date2: PGDate): gint; cdecl; inline;
+ procedure free; cdecl; inline;
+ function get_day: TGDateDay; cdecl; inline;
+ function get_day_of_year: guint; cdecl; inline;
+ function get_iso8601_week_of_year: guint; cdecl; inline;
+ function get_julian: guint32; cdecl; inline;
+ function get_monday_week_of_year: guint; cdecl; inline;
+ function get_month: TGDateMonth; cdecl; inline;
+ function get_sunday_week_of_year: guint; cdecl; inline;
+ function get_weekday: TGDateWeekday; cdecl; inline;
+ function get_year: TGDateYear; cdecl; inline;
+ function is_first_of_month: gboolean; cdecl; inline;
+ function is_last_of_month: gboolean; cdecl; inline;
+ procedure order(date2: PGDate); cdecl; inline;
+ procedure set_day(day: TGDateDay); cdecl; inline;
+ procedure set_dmy(day: TGDateDay; month: TGDateMonth; y: TGDateYear); cdecl; inline;
+ procedure set_julian(julian_date: guint32); cdecl; inline;
+ procedure set_month(month: TGDateMonth); cdecl; inline;
+ procedure set_parse(str: Pgchar); cdecl; inline;
+ procedure set_time_t(timet: glong); cdecl; inline;
+ procedure set_year(year: TGDateYear); cdecl; inline;
+ procedure subtract_days(n_days: guint); cdecl; inline;
+ procedure subtract_months(n_months: guint); cdecl; inline;
+ procedure subtract_years(n_years: guint); cdecl; inline;
+ procedure to_struct_tm(tm: Pgpointer); cdecl; inline;
+ function valid: gboolean; cdecl; inline;
+ function get_days_in_month(month: TGDateMonth; year: TGDateYear): guint8; cdecl; inline; static;
+ function get_monday_weeks_in_year(year: TGDateYear): guint8; cdecl; inline; static;
+ function get_sunday_weeks_in_year(year: TGDateYear): guint8; cdecl; inline; static;
+ function is_leap_year(year: TGDateYear): gboolean; cdecl; inline; static;
+ function strftime(s: Pgchar; slen: gsize; format: Pgchar; date: PGDate): gsize; cdecl; inline; static;
+ function valid_day(day: TGDateDay): gboolean; cdecl; inline; static;
+ function valid_dmy(day: TGDateDay; month: TGDateMonth; year: TGDateYear): gboolean; cdecl; inline; static;
+ function valid_julian(julian_date: guint32): gboolean; cdecl; inline; static;
+ function valid_month(month: TGDateMonth): gboolean; cdecl; inline; static;
+ function valid_weekday(weekday: TGDateWeekday): gboolean; cdecl; inline; static;
+ function valid_year(year: TGDateYear): gboolean; cdecl; inline; static;
+ end;
+
+
+ { TGDateDMY }
+ PPGDateDMY = ^PGDateDMY;
+ PGDateDMY = ^TGDateDMY;
+
+
+ { TGTimeType }
+ PPGTimeType = ^PGTimeType;
+ PGTimeType = ^TGTimeType;
+ TGTimeZone = object
+ function new(identifier: Pgchar): PGTimeZone; cdecl; inline; static; deprecated 'Use g_time_zone_new_identifier() instead, as it provides error reporting. Change your code to handle a potentially %NULL return value.';
+ function new_local: PGTimeZone; cdecl; inline; static;
+ function new_offset(seconds: gint32): PGTimeZone; cdecl; inline; static;
+ function new_utc: PGTimeZone; cdecl; inline; static;
+ function adjust_time(type_: TGTimeType; time_: Pgint64): gint; cdecl; inline;
+ function find_interval(type_: TGTimeType; time_: gint64): gint; cdecl; inline;
+ function get_abbreviation(interval: gint): Pgchar; cdecl; inline;
+ function get_identifier: Pgchar; cdecl; inline;
+ function get_offset(interval: gint): gint32; cdecl; inline;
+ function is_dst(interval: gint): gboolean; cdecl; inline;
+ function ref: PGTimeZone; cdecl; inline;
+ procedure unref; cdecl; inline;
+ end;
+
+
+ { TGDebugKey }
+ PPGDebugKey = ^PGDebugKey;
+ PGDebugKey = ^TGDebugKey;
+
+ TGDebugKey = record
+ key: Pgchar;
+ value: guint;
+ end;
+
+
+
+
+ { TGDir }
+ PPGDir = ^PGDir;
+ PGDir = ^TGDir;
+ TGDir = object
+ procedure close; cdecl; inline;
+ function read_name: Pgchar; cdecl; inline;
+ procedure rewind; cdecl; inline;
+ function make_tmp(tmpl: Pgchar; error: PPGError): Pgchar; cdecl; inline; static;
+ function open(path: Pgchar; flags: guint; error: PPGError): PGDir; cdecl; inline; static;
+ end;
+
+
+ { TGDoubleIEEE754 }
+ PPGDoubleIEEE754 = ^PGDoubleIEEE754;
+ PGDoubleIEEE754 = ^TGDoubleIEEE754;
+ TGDoubleIEEE754 = record
+ case longint of
+ 0 : (v_double: gdouble);
+ 1 : (
+ mpn : record
+ mantissa_low: guint32 { changed from guint to accomodate 32 bitsize requirement };
+ mantissa_high: guint20 { changed from guint to accomodate 20 bitsize requirement };
+ biased_exponent: guint11 { changed from guint to accomodate 11 bitsize requirement };
+ sign: guint1 { changed from guint to accomodate 1 bitsize requirement };
+ end;
+
+);
+ end;
+
+
+ TGDuplicateFunc = function(data: gpointer; user_data: gpointer): gpointer; cdecl;
+ TGEqualFunc = function(a: Pgpointer; b: Pgpointer): gboolean; cdecl;
+
+
+ { TGErrorType }
+ PPGErrorType = ^PGErrorType;
+ PGErrorType = ^TGErrorType;
+
+
+ { TGFileError }
+ PPGFileError = ^PGFileError;
+ PGFileError = ^TGFileError;
+
+
+ { TGFileSetContentsFlags }
+ PPGFileSetContentsFlags = ^PGFileSetContentsFlags;
+ PGFileSetContentsFlags = ^TGFileSetContentsFlags;
+
+
+ { TGFileTest }
+ PPGFileTest = ^PGFileTest;
+ PGFileTest = ^TGFileTest;
+
+
+ { TGFloatIEEE754 }
+ PPGFloatIEEE754 = ^PGFloatIEEE754;
+ PGFloatIEEE754 = ^TGFloatIEEE754;
+ TGFloatIEEE754 = record
+ case longint of
+ 0 : (v_float: gfloat);
+ 1 : (
+ mpn : record
+ mantissa: guint23 { changed from guint to accomodate 23 bitsize requirement };
+ biased_exponent: guint8 { changed from guint to accomodate 8 bitsize requirement };
+ sign: guint1 { changed from guint to accomodate 1 bitsize requirement };
+ end;
+
+);
+ end;
+
+
+
+
+ { TGFormatSizeFlags }
+ PPGFormatSizeFlags = ^PGFormatSizeFlags;
+ PGFormatSizeFlags = ^TGFormatSizeFlags;
+ TGFreeFunc = procedure(data: gpointer); cdecl;
+ TGFunc = procedure(data: gpointer; user_data: gpointer); cdecl;
+ TGHFunc = procedure(key: gpointer; value: gpointer; user_data: gpointer); cdecl;
+ TGHRFunc = function(key: gpointer; value: gpointer; user_data: gpointer): gboolean; cdecl;
+ TGHashFunc = function(key: Pgpointer): guint; cdecl;
+
+
+ { TGHashTable }
+ PPGHashTable = ^PGHashTable;
+ PGHashTable = ^TGHashTable;
+
+
+ { TGHRFunc }
+ PPGHRFunc = ^PGHRFunc;
+ PGHRFunc = ^TGHRFunc;
+
+
+ { TGHFunc }
+ PPGHFunc = ^PGHFunc;
+ PGHFunc = ^TGHFunc;
+
+
+ { TGList }
+ PPGList = ^PGList;
+ PGList = ^TGList;
+
+
+ { TGHashFunc }
+ PPGHashFunc = ^PGHashFunc;
+ PGHashFunc = ^TGHashFunc;
+
+
+ { TGEqualFunc }
+ PPGEqualFunc = ^PGEqualFunc;
+ PGEqualFunc = ^TGEqualFunc;
+ TGHashTable = object
+ function add(hash_table: PGHashTable; key: gpointer): gboolean; cdecl; inline; static;
+ function contains(hash_table: PGHashTable; key: Pgpointer): gboolean; cdecl; inline; static;
+ procedure destroy_(hash_table: PGHashTable); cdecl; inline; static;
+ function find(hash_table: PGHashTable; predicate: TGHRFunc; user_data: gpointer): gpointer; cdecl; inline; static;
+ procedure foreach(hash_table: PGHashTable; func: TGHFunc; user_data: gpointer); cdecl; inline; static;
+ function foreach_remove(hash_table: PGHashTable; func: TGHRFunc; user_data: gpointer): guint; cdecl; inline; static;
+ function foreach_steal(hash_table: PGHashTable; func: TGHRFunc; user_data: gpointer): guint; cdecl; inline; static;
+ function get_keys(hash_table: PGHashTable): PGList; cdecl; inline; static;
+ function get_keys_as_array(hash_table: PGHashTable; length: Pguint): Pgpointer; cdecl; inline; static;
+ function get_values(hash_table: PGHashTable): PGList; cdecl; inline; static;
+ function insert(hash_table: PGHashTable; key: gpointer; value: gpointer): gboolean; cdecl; inline; static;
+ function lookup(hash_table: PGHashTable; key: Pgpointer): gpointer; cdecl; inline; static;
+ function lookup_extended(hash_table: PGHashTable; lookup_key: Pgpointer; orig_key: Pgpointer; value: Pgpointer): gboolean; cdecl; inline; static;
+ function new(hash_func: TGHashFunc; key_equal_func: TGEqualFunc): PGHashTable; cdecl; inline; static;
+ function new_full(hash_func: TGHashFunc; key_equal_func: TGEqualFunc; key_destroy_func: TGDestroyNotify; value_destroy_func: TGDestroyNotify): PGHashTable; cdecl; inline; static;
+ function ref(hash_table: PGHashTable): PGHashTable; cdecl; inline; static;
+ function remove(hash_table: PGHashTable; key: Pgpointer): gboolean; cdecl; inline; static;
+ procedure remove_all(hash_table: PGHashTable); cdecl; inline; static;
+ function replace(hash_table: PGHashTable; key: gpointer; value: gpointer): gboolean; cdecl; inline; static;
+ function size(hash_table: PGHashTable): guint; cdecl; inline; static;
+ function steal(hash_table: PGHashTable; key: Pgpointer): gboolean; cdecl; inline; static;
+ procedure steal_all(hash_table: PGHashTable); cdecl; inline; static;
+ function steal_extended(hash_table: PGHashTable; lookup_key: Pgpointer; stolen_key: Pgpointer; stolen_value: Pgpointer): gboolean; cdecl; inline; static;
+ procedure unref(hash_table: PGHashTable); cdecl; inline; static;
+ end;
+
+
+ { TGCopyFunc }
+ PPGCopyFunc = ^PGCopyFunc;
+ PGCopyFunc = ^TGCopyFunc;
+
+
+ { TGFunc }
+ PPGFunc = ^PGFunc;
+ PGFunc = ^TGFunc;
+ TGList = object
+ data: gpointer;
+ next: PGList;
+ prev: PGList;
+ function alloc: PGList; cdecl; inline; static;
+ function append(data: gpointer): PGList; cdecl; inline; static;
+ function concat(list2: PGList): PGList; cdecl; inline; static;
+ function copy(): PGList; cdecl; inline; static;
+ function copy_deep(func: TGCopyFunc; user_data: gpointer): PGList; cdecl; inline; static;
+ function delete_link(link_: PGList): PGList; cdecl; inline; static;
+ function find(data: Pgpointer): PGList; cdecl; inline; static;
+ function find_custom(data: Pgpointer; func: TGCompareFunc): PGList; cdecl; inline; static;
+ function first(): PGList; cdecl; inline; static;
+ procedure foreach(func: TGFunc; user_data: gpointer); cdecl; inline; static;
+ procedure free(); cdecl; inline; static;
+ procedure free_1(); cdecl; inline; static;
+ procedure free_full(free_func: TGDestroyNotify); cdecl; inline; static;
+ function index(data: Pgpointer): gint; cdecl; inline; static;
+ function insert(data: gpointer; position: gint): PGList; cdecl; inline; static;
+ function insert_before(sibling: PGList; data: gpointer): PGList; cdecl; inline; static;
+ function insert_before_link(sibling: PGList; link_: PGList): PGList; cdecl; inline; static;
+ function insert_sorted(data: gpointer; func: TGCompareFunc): PGList; cdecl; inline; static;
+ function insert_sorted_with_data(data: gpointer; func: TGCompareDataFunc; user_data: gpointer): PGList; cdecl; inline; static;
+ function last(): PGList; cdecl; inline; static;
+ function length(): guint; cdecl; inline; static;
+ function nth(n: guint): PGList; cdecl; inline; static;
+ function nth_data(n: guint): gpointer; cdecl; inline; static;
+ function nth_prev(n: guint): PGList; cdecl; inline; static;
+ function position(llink: PGList): gint; cdecl; inline; static;
+ function prepend(data: gpointer): PGList; cdecl; inline; static;
+ function remove(data: Pgpointer): PGList; cdecl; inline; static;
+ function remove_all(data: Pgpointer): PGList; cdecl; inline; static;
+ function remove_link(llink: PGList): PGList; cdecl; inline; static;
+ function reverse(): PGList; cdecl; inline; static;
+ function sort(compare_func: TGCompareFunc): PGList; cdecl; inline; static;
+ function sort_with_data(compare_func: TGCompareDataFunc; user_data: gpointer): PGList; cdecl; inline; static;
+ end;
+
+
+ { TGHashTableIter }
+ PPGHashTableIter = ^PGHashTableIter;
+ PGHashTableIter = ^TGHashTableIter;
+ TGHashTableIter = object
+ dummy1: gpointer;
+ dummy2: gpointer;
+ dummy3: gpointer;
+ dummy4: gint;
+ dummy5: gboolean;
+ dummy6: gpointer;
+ function get_hash_table: PGHashTable; cdecl; inline;
+ procedure init(hash_table: PGHashTable); cdecl; inline;
+ function next(key: Pgpointer; value: Pgpointer): gboolean; cdecl; inline;
+ procedure remove; cdecl; inline;
+ procedure replace(value: gpointer); cdecl; inline;
+ procedure steal; cdecl; inline;
+ end;
+
+
+ { TGHmac }
+ PPGHmac = ^PGHmac;
+ PGHmac = ^TGHmac;
+ TGHmac = object
+ function copy: PGHmac; cdecl; inline;
+ procedure get_digest(buffer: Pguint8; digest_len: Pgsize); cdecl; inline;
+ function get_string: Pgchar; cdecl; inline;
+ function ref: PGHmac; cdecl; inline;
+ procedure unref; cdecl; inline;
+ procedure update(data: Pguint8; length: gssize); cdecl; inline;
+ function new(digest_type: TGChecksumType; key: Pguint8; key_len: gsize): PGHmac; cdecl; inline; static;
+ end;
+
+
+ { TGHook }
+ PPGHook = ^PGHook;
+ PGHook = ^TGHook;
+
+
+ { TGHookList }
+ PPGHookList = ^PGHookList;
+ PGHookList = ^TGHookList;
+
+
+ { TGHookFindFunc }
+ PPGHookFindFunc = ^PGHookFindFunc;
+ PGHookFindFunc = ^TGHookFindFunc;
+ TGHookFindFunc = function(hook: PGHook; user_data: gpointer): gboolean; cdecl;
+
+
+ { TGHookCompareFunc }
+ PPGHookCompareFunc = ^PGHookCompareFunc;
+ PGHookCompareFunc = ^TGHookCompareFunc;
+ TGHookCompareFunc = function(new_hook: PGHook; sibling: PGHook): gint; cdecl;
+ TGHook = object
+ data: gpointer;
+ next: PGHook;
+ prev: PGHook;
+ ref_count: guint;
+ hook_id: gulong;
+ flags: guint;
+ func: gpointer;
+ destroy_1: TGDestroyNotify;
+ function compare_ids(sibling: PGHook): gint; cdecl; inline;
+ function alloc(hook_list: PGHookList): PGHook; cdecl; inline; static;
+ function destroy_(hook_list: PGHookList; hook_id: gulong): gboolean; cdecl; inline; static;
+ procedure destroy_link(hook_list: PGHookList; hook: PGHook); cdecl; inline; static;
+ function find(hook_list: PGHookList; need_valids: gboolean; func: TGHookFindFunc; data: gpointer): PGHook; cdecl; inline; static;
+ function find_data(hook_list: PGHookList; need_valids: gboolean; data: gpointer): PGHook; cdecl; inline; static;
+ function find_func(hook_list: PGHookList; need_valids: gboolean; func: gpointer): PGHook; cdecl; inline; static;
+ function find_func_data(hook_list: PGHookList; need_valids: gboolean; func: gpointer; data: gpointer): PGHook; cdecl; inline; static;
+ function first_valid(hook_list: PGHookList; may_be_in_call: gboolean): PGHook; cdecl; inline; static;
+ procedure free(hook_list: PGHookList; hook: PGHook); cdecl; inline; static;
+ function get(hook_list: PGHookList; hook_id: gulong): PGHook; cdecl; inline; static;
+ procedure insert_before(hook_list: PGHookList; sibling: PGHook; hook: PGHook); cdecl; inline; static;
+ procedure insert_sorted(hook_list: PGHookList; hook: PGHook; func: TGHookCompareFunc); cdecl; inline; static;
+ function next_valid(hook_list: PGHookList; hook: PGHook; may_be_in_call: gboolean): PGHook; cdecl; inline; static;
+ procedure prepend(hook_list: PGHookList; hook: PGHook); cdecl; inline; static;
+ function ref(hook_list: PGHookList; hook: PGHook): PGHook; cdecl; inline; static;
+ procedure unref(hook_list: PGHookList; hook: PGHook); cdecl; inline; static;
+ end;
+
+
+ { TGHookMarshaller }
+ PPGHookMarshaller = ^PGHookMarshaller;
+ PGHookMarshaller = ^TGHookMarshaller;
+ TGHookMarshaller = procedure(hook: PGHook; user_data: gpointer); cdecl;
+
+
+ { TGHookCheckMarshaller }
+ PPGHookCheckMarshaller = ^PGHookCheckMarshaller;
+ PGHookCheckMarshaller = ^TGHookCheckMarshaller;
+ TGHookCheckMarshaller = function(hook: PGHook; user_data: gpointer): gboolean; cdecl;
+ TGHookListBitfield0 = bitpacked record
+ hook_size: guint16 { changed from guint to accomodate 16 bitsize requirement };
+ is_setup: guint1 { changed from guint to accomodate 1 bitsize requirement };
+ end;
+
+
+
+ { TGHookFinalizeFunc }
+ PPGHookFinalizeFunc = ^PGHookFinalizeFunc;
+ PGHookFinalizeFunc = ^TGHookFinalizeFunc;
+ TGHookFinalizeFunc = procedure(hook_list: PGHookList; hook: PGHook); cdecl;
+ TGHookList = object
+ seq_id: gulong;
+ Bitfield0 : TGHookListBitfield0; { auto generated type }
+ hooks: PGHook;
+ dummy3: gpointer;
+ finalize_hook: TGHookFinalizeFunc;
+ dummy: array [0..1] of gpointer;
+ procedure clear; cdecl; inline;
+ procedure init(hook_size: guint); cdecl; inline;
+ procedure invoke(may_recurse: gboolean); cdecl; inline;
+ procedure invoke_check(may_recurse: gboolean); cdecl; inline;
+ procedure marshal(may_recurse: gboolean; marshaller: TGHookMarshaller; marshal_data: gpointer); cdecl; inline;
+ procedure marshal_check(may_recurse: gboolean; marshaller: TGHookCheckMarshaller; marshal_data: gpointer); cdecl; inline;
+ end;
+ TGHookCheckFunc = function(data: gpointer): gboolean; cdecl;
+
+
+ { TGHookFlagMask }
+ PPGHookFlagMask = ^PGHookFlagMask;
+ PGHookFlagMask = ^TGHookFlagMask;
+ TGHookFunc = procedure(data: gpointer); cdecl;
+
+
+ { TGIConv }
+ PPGIConv = ^PGIConv;
+ PGIConv = ^TGIConv;
+ TGIConv = object
+ function g_iconv(inbuf: PPgchar; inbytes_left: Pgsize; outbuf: PPgchar; outbytes_left: Pgsize): gsize; cdecl; inline;
+ function close: gint; cdecl; inline;
+ function open(to_codeset: Pgchar; from_codeset: Pgchar): TGIConv; cdecl; inline; static;
+ end;
+
+
+ { TGIOFuncs }
+ PPGIOFuncs = ^PGIOFuncs;
+ PGIOFuncs = ^TGIOFuncs;
+
+
+ { TGIOStatus }
+ PPGIOStatus = ^PGIOStatus;
+ PGIOStatus = ^TGIOStatus;
+
+
+ { TGIOChannel }
+ PPGIOChannel = ^PGIOChannel;
+ PGIOChannel = ^TGIOChannel;
+
+
+ { TGSeekType }
+ PPGSeekType = ^PGSeekType;
+ PGSeekType = ^TGSeekType;
+
+
+ { TGSource }
+ PPGSource = ^PGSource;
+ PGSource = ^TGSource;
+
+
+ { TGIOCondition }
+ PPGIOCondition = ^PGIOCondition;
+ PGIOCondition = ^TGIOCondition;
+
+
+ { TGIOFlags }
+ PPGIOFlags = ^PGIOFlags;
+ PGIOFlags = ^TGIOFlags;
+
+ TGIOFuncs = record
+ io_read: function(channel: PGIOChannel; buf: Pgchar; count: gsize; bytes_read: Pgsize; error: PPGError): TGIOStatus; cdecl;
+ io_write: function(channel: PGIOChannel; buf: Pgchar; count: gsize; bytes_written: Pgsize; error: PPGError): TGIOStatus; cdecl;
+ io_seek: function(channel: PGIOChannel; offset: gint64; type_: TGSeekType; error: PPGError): TGIOStatus; cdecl;
+ io_close: function(channel: PGIOChannel; error: PPGError): TGIOStatus; cdecl;
+ io_create_watch: function(channel: PGIOChannel; condition: TGIOCondition): PGSource; cdecl;
+ io_free: procedure(channel: PGIOChannel); cdecl;
+ io_set_flags: function(channel: PGIOChannel; flags: TGIOFlags; error: PPGError): TGIOStatus; cdecl;
+ io_get_flags: function(channel: PGIOChannel): TGIOFlags; cdecl;
+ end;
+
+
+
+
+ { TGString }
+ PPGString = ^PGString;
+ PGString = ^TGString;
+ TGString = object
+ str: Pgchar;
+ len: gsize;
+ allocated_len: gsize;
+ function new(init: Pgchar): PGString; cdecl; inline; static;
+ function new_len(init: Pgchar; len: gssize): PGString; cdecl; inline; static;
+ function sized_new(dfl_size: gsize): PGString; cdecl; inline; static;
+ function append(val: Pgchar): PGString; cdecl; inline;
+ function append_c(c: gchar): PGString; cdecl; inline;
+ function append_len(val: Pgchar; len: gssize): PGString; cdecl; inline;
+ //procedure append_printf(format: Pgchar; args: array of const); cdecl; inline;
+ function append_unichar(wc: gunichar): PGString; cdecl; inline;
+ function append_uri_escaped(unescaped: Pgchar; reserved_chars_allowed: Pgchar; allow_utf8: gboolean): PGString; cdecl; inline;
+ //procedure append_vprintf(format: Pgchar; args: Tva_list); cdecl; inline;
+ function ascii_down: PGString; cdecl; inline;
+ function ascii_up: PGString; cdecl; inline;
+ function assign(rval: Pgchar): PGString; cdecl; inline;
+ function equal(v2: PGString): gboolean; cdecl; inline;
+ function erase(pos: gssize; len: gssize): PGString; cdecl; inline;
+ function free(free_segment: gboolean): Pgchar; cdecl; inline;
+ function free_to_bytes: PGBytes; cdecl; inline;
+ function hash: guint; cdecl; inline;
+ function insert(pos: gssize; val: Pgchar): PGString; cdecl; inline;
+ function insert_c(pos: gssize; c: gchar): PGString; cdecl; inline;
+ function insert_len(pos: gssize; val: Pgchar; len: gssize): PGString; cdecl; inline;
+ function insert_unichar(pos: gssize; wc: gunichar): PGString; cdecl; inline;
+ function overwrite(pos: gsize; val: Pgchar): PGString; cdecl; inline;
+ function overwrite_len(pos: gsize; val: Pgchar; len: gssize): PGString; cdecl; inline;
+ function prepend(val: Pgchar): PGString; cdecl; inline;
+ function prepend_c(c: gchar): PGString; cdecl; inline;
+ function prepend_len(val: Pgchar; len: gssize): PGString; cdecl; inline;
+ function prepend_unichar(wc: gunichar): PGString; cdecl; inline;
+ //procedure printf(format: Pgchar; args: array of const); cdecl; inline;
+ function set_size(len: gsize): PGString; cdecl; inline;
+ function truncate(len: gsize): PGString; cdecl; inline;
+ //procedure vprintf(format: Pgchar; args: Tva_list); cdecl; inline;
+ end;
+
+
+ { TGIOChannelError }
+ PPGIOChannelError = ^PGIOChannelError;
+ PGIOChannelError = ^TGIOChannelError;
+ TGIOChannelBitfield0 = bitpacked record
+ use_buffer: guint1 { changed from guint to accomodate 1 bitsize requirement };
+ do_encode: guint1 { changed from guint to accomodate 1 bitsize requirement };
+ close_on_unref: guint1 { changed from guint to accomodate 1 bitsize requirement };
+ is_readable: guint1 { changed from guint to accomodate 1 bitsize requirement };
+ is_writeable: guint1 { changed from guint to accomodate 1 bitsize requirement };
+ is_seekable: guint1 { changed from guint to accomodate 1 bitsize requirement };
+ end;
+
+ TGIOChannel = object
+ ref_count: gint;
+ funcs: PGIOFuncs;
+ encoding: Pgchar;
+ read_cd: TGIConv;
+ write_cd: TGIConv;
+ line_term: Pgchar;
+ line_term_len: guint;
+ buf_size: gsize;
+ read_buf: PGString;
+ encoded_read_buf: PGString;
+ write_buf: PGString;
+ partial_write_buf: array [0..5] of gchar;
+ Bitfield0 : TGIOChannelBitfield0; { auto generated type }
+ reserved1: gpointer;
+ reserved2: gpointer;
+ function new_file(filename: Pgchar; mode: Pgchar; error: PPGError): PGIOChannel; cdecl; inline; static;
+ function unix_new(fd: gint): PGIOChannel; cdecl; inline; static;
+ function flush(error: PPGError): TGIOStatus; cdecl; inline;
+ function get_buffer_condition: TGIOCondition; cdecl; inline;
+ function get_buffer_size: gsize; cdecl; inline;
+ function get_buffered: gboolean; cdecl; inline;
+ function get_close_on_unref: gboolean; cdecl; inline;
+ function get_encoding: Pgchar; cdecl; inline;
+ function get_flags: TGIOFlags; cdecl; inline;
+ function get_line_term(length: Pgint): Pgchar; cdecl; inline;
+ procedure init; cdecl; inline;
+ function read_chars(buf: Pgchar; count: gsize; bytes_read: Pgsize; error: PPGError): TGIOStatus; cdecl; inline;
+ function read_line(str_return: PPgchar; length: Pgsize; terminator_pos: Pgsize; error: PPGError): TGIOStatus; cdecl; inline;
+ function read_line_string(buffer: PGString; terminator_pos: Pgsize; error: PPGError): TGIOStatus; cdecl; inline;
+ function read_to_end(str_return: PPgchar; length: Pgsize; error: PPGError): TGIOStatus; cdecl; inline;
+ function read_unichar(thechar: Pgunichar; error: PPGError): TGIOStatus; cdecl; inline;
+ function ref: PGIOChannel; cdecl; inline;
+ function seek_position(offset: gint64; type_: TGSeekType; error: PPGError): TGIOStatus; cdecl; inline;
+ procedure set_buffer_size(size: gsize); cdecl; inline;
+ procedure set_buffered(buffered: gboolean); cdecl; inline;
+ procedure set_close_on_unref(do_close: gboolean); cdecl; inline;
+ function set_encoding(encoding: Pgchar; error: PPGError): TGIOStatus; cdecl; inline;
+ function set_flags(flags: TGIOFlags; error: PPGError): TGIOStatus; cdecl; inline;
+ procedure set_line_term(line_term: Pgchar; length: gint); cdecl; inline;
+ function shutdown(flush: gboolean; error: PPGError): TGIOStatus; cdecl; inline;
+ function unix_get_fd: gint; cdecl; inline;
+ procedure unref; cdecl; inline;
+ function write_chars(buf: Pgchar; count: gssize; bytes_written: Pgsize; error: PPGError): TGIOStatus; cdecl; inline;
+ function write_unichar(thechar: gunichar; error: PPGError): TGIOStatus; cdecl; inline;
+ function error_from_errno(en: gint): TGIOChannelError; cdecl; inline; static;
+ function error_quark: TGQuark; cdecl; inline; static;
+ end;
+
+
+ { TGIOError }
+ PPGIOError = ^PGIOError;
+ PGIOError = ^TGIOError;
+ TGIOFunc = function(source: PGIOChannel; condition: TGIOCondition; user_data: gpointer): gboolean; cdecl;
+
+
+ { TGSourceFuncs }
+ PPGSourceFuncs = ^PGSourceFuncs;
+ PGSourceFuncs = ^TGSourceFuncs;
+
+
+ { TGPollFD }
+ PPPGPollFD = ^PPGPollFD;
+ PPGPollFD = ^PGPollFD;
+ PGPollFD = ^TGPollFD;
+
+
+ { TGMainContext }
+ PPGMainContext = ^PGMainContext;
+ PGMainContext = ^TGMainContext;
+
+
+ { TGSourceFunc }
+ PPGSourceFunc = ^PGSourceFunc;
+ PGSourceFunc = ^TGSourceFunc;
+ TGSourceFunc = function(user_data: gpointer): gboolean; cdecl;
+
+
+ { TGSourceCallbackFuncs }
+ PPGSourceCallbackFuncs = ^PGSourceCallbackFuncs;
+ PGSourceCallbackFuncs = ^TGSourceCallbackFuncs;
+
+
+ { TGSourceDisposeFunc }
+ PPGSourceDisposeFunc = ^PGSourceDisposeFunc;
+ PGSourceDisposeFunc = ^TGSourceDisposeFunc;
+ TGSourceDisposeFunc = procedure(source: PGSource); cdecl;
+
+
+ { TGSList }
+ PPGSList = ^PGSList;
+ PGSList = ^TGSList;
+
+
+ { TGSourcePrivate }
+ PPGSourcePrivate = ^PGSourcePrivate;
+ PGSourcePrivate = ^TGSourcePrivate;
+ TGSource = object
+ callback_data: gpointer;
+ callback_funcs: PGSourceCallbackFuncs;
+ source_funcs: PGSourceFuncs;
+ ref_count: guint;
+ context: PGMainContext;
+ priority: gint;
+ flags: guint;
+ source_id: guint;
+ poll_fds: PGSList;
+ prev: PGSource;
+ next: PGSource;
+ name: Pgchar;
+ priv: PGSourcePrivate;
+ function new(source_funcs: PGSourceFuncs; struct_size: guint): PGSource; cdecl; inline; static;
+ procedure add_child_source(child_source: PGSource); cdecl; inline;
+ procedure add_poll(fd: PGPollFD); cdecl; inline;
+ function add_unix_fd(fd: gint; events: TGIOCondition): gpointer; cdecl; inline;
+ function attach(context: PGMainContext): guint; cdecl; inline;
+ procedure destroy_; cdecl; inline;
+ function get_can_recurse: gboolean; cdecl; inline;
+ function get_context: PGMainContext; cdecl; inline;
+ function get_id: guint; cdecl; inline;
+ function get_name: Pgchar; cdecl; inline;
+ function get_priority: gint; cdecl; inline;
+ function get_ready_time: gint64; cdecl; inline;
+ function get_time: gint64; cdecl; inline;
+ function is_destroyed: gboolean; cdecl; inline;
+ procedure modify_unix_fd(tag: gpointer; new_events: TGIOCondition); cdecl; inline;
+ function query_unix_fd(tag: gpointer): TGIOCondition; cdecl; inline;
+ function ref: PGSource; cdecl; inline;
+ procedure remove_child_source(child_source: PGSource); cdecl; inline;
+ procedure remove_poll(fd: PGPollFD); cdecl; inline;
+ procedure remove_unix_fd(tag: gpointer); cdecl; inline;
+ procedure set_callback(func: TGSourceFunc; data: gpointer; notify: TGDestroyNotify); cdecl; inline;
+ procedure set_callback_indirect(callback_data: gpointer; callback_funcs: PGSourceCallbackFuncs); cdecl; inline;
+ procedure set_can_recurse(can_recurse: gboolean); cdecl; inline;
+ procedure set_dispose_function(dispose: TGSourceDisposeFunc); cdecl; inline;
+ procedure set_funcs(funcs: PGSourceFuncs); cdecl; inline;
+ procedure set_name(name: Pgchar); cdecl; inline;
+ procedure set_priority(priority: gint); cdecl; inline;
+ procedure set_ready_time(ready_time: gint64); cdecl; inline;
+ procedure unref; cdecl; inline;
+ function remove(tag: guint): gboolean; cdecl; inline; static;
+ function remove_by_funcs_user_data(funcs: PGSourceFuncs; user_data: gpointer): gboolean; cdecl; inline; static;
+ function remove_by_user_data(user_data: gpointer): gboolean; cdecl; inline; static;
+ procedure set_name_by_id(tag: guint; name: Pgchar); cdecl; inline; static;
+ end;
+
+
+ { TGKeyFile }
+ PPGKeyFile = ^PGKeyFile;
+ PGKeyFile = ^TGKeyFile;
+
+
+ { TGKeyFileFlags }
+ PPGKeyFileFlags = ^PGKeyFileFlags;
+ PGKeyFileFlags = ^TGKeyFileFlags;
+ TGKeyFile = object
+ function new: PGKeyFile; cdecl; inline; static;
+ procedure free; cdecl; inline;
+ function get_boolean(group_name: Pgchar; key: Pgchar; error: PPGError): gboolean; cdecl; inline;
+ function get_boolean_list(group_name: Pgchar; key: Pgchar; length: Pgsize; error: PPGError): Pgboolean; cdecl; inline;
+ function get_comment(group_name: Pgchar; key: Pgchar; error: PPGError): Pgchar; cdecl; inline;
+ function get_double(group_name: Pgchar; key: Pgchar; error: PPGError): gdouble; cdecl; inline;
+ function get_double_list(group_name: Pgchar; key: Pgchar; length: Pgsize; error: PPGError): Pgdouble; cdecl; inline;
+ function get_groups(length: Pgsize): PPgchar; cdecl; inline;
+ function get_int64(group_name: Pgchar; key: Pgchar; error: PPGError): gint64; cdecl; inline;
+ function get_integer(group_name: Pgchar; key: Pgchar; error: PPGError): gint; cdecl; inline;
+ function get_integer_list(group_name: Pgchar; key: Pgchar; length: Pgsize; error: PPGError): Pgint; cdecl; inline;
+ function get_keys(group_name: Pgchar; length: Pgsize; error: PPGError): PPgchar; cdecl; inline;
+ function get_locale_for_key(group_name: Pgchar; key: Pgchar; locale: Pgchar): Pgchar; cdecl; inline;
+ function get_locale_string(group_name: Pgchar; key: Pgchar; locale: Pgchar; error: PPGError): Pgchar; cdecl; inline;
+ function get_locale_string_list(group_name: Pgchar; key: Pgchar; locale: Pgchar; length: Pgsize; error: PPGError): PPgchar; cdecl; inline;
+ function get_start_group: Pgchar; cdecl; inline;
+ function get_string(group_name: Pgchar; key: Pgchar; error: PPGError): Pgchar; cdecl; inline;
+ function get_string_list(group_name: Pgchar; key: Pgchar; length: Pgsize; error: PPGError): PPgchar; cdecl; inline;
+ function get_uint64(group_name: Pgchar; key: Pgchar; error: PPGError): guint64; cdecl; inline;
+ function get_value(group_name: Pgchar; key: Pgchar; error: PPGError): Pgchar; cdecl; inline;
+ function has_group(group_name: Pgchar): gboolean; cdecl; inline;
+ function has_key(group_name: Pgchar; key: Pgchar; error: PPGError): gboolean; cdecl; inline;
+ function load_from_bytes(bytes: PGBytes; flags: TGKeyFileFlags; error: PPGError): gboolean; cdecl; inline;
+ function load_from_data(data: Pgchar; length: gsize; flags: TGKeyFileFlags; error: PPGError): gboolean; cdecl; inline;
+ function load_from_data_dirs(file_: Pgchar; full_path: PPgchar; flags: TGKeyFileFlags; error: PPGError): gboolean; cdecl; inline;
+ function load_from_dirs(file_: Pgchar; search_dirs: PPgchar; full_path: PPgchar; flags: TGKeyFileFlags; error: PPGError): gboolean; cdecl; inline;
+ function load_from_file(file_: Pgchar; flags: TGKeyFileFlags; error: PPGError): gboolean; cdecl; inline;
+ function ref: PGKeyFile; cdecl; inline;
+ function remove_comment(group_name: Pgchar; key: Pgchar; error: PPGError): gboolean; cdecl; inline;
+ function remove_group(group_name: Pgchar; error: PPGError): gboolean; cdecl; inline;
+ function remove_key(group_name: Pgchar; key: Pgchar; error: PPGError): gboolean; cdecl; inline;
+ function save_to_file(filename: Pgchar; error: PPGError): gboolean; cdecl; inline;
+ procedure set_boolean(group_name: Pgchar; key: Pgchar; value: gboolean); cdecl; inline;
+ procedure set_boolean_list(group_name: Pgchar; key: Pgchar; list: Pgboolean; length: gsize); cdecl; inline;
+ function set_comment(group_name: Pgchar; key: Pgchar; comment: Pgchar; error: PPGError): gboolean; cdecl; inline;
+ procedure set_double(group_name: Pgchar; key: Pgchar; value: gdouble); cdecl; inline;
+ procedure set_double_list(group_name: Pgchar; key: Pgchar; list: Pgdouble; length: gsize); cdecl; inline;
+ procedure set_int64(group_name: Pgchar; key: Pgchar; value: gint64); cdecl; inline;
+ procedure set_integer(group_name: Pgchar; key: Pgchar; value: gint); cdecl; inline;
+ procedure set_integer_list(group_name: Pgchar; key: Pgchar; list: Pgint; length: gsize); cdecl; inline;
+ procedure set_list_separator(separator: gchar); cdecl; inline;
+ procedure set_locale_string(group_name: Pgchar; key: Pgchar; locale: Pgchar; string_: Pgchar); cdecl; inline;
+ procedure set_locale_string_list(group_name: Pgchar; key: Pgchar; locale: Pgchar; list: PPgchar; length: gsize); cdecl; inline;
+ procedure set_string(group_name: Pgchar; key: Pgchar; string_: Pgchar); cdecl; inline;
+ procedure set_string_list(group_name: Pgchar; key: Pgchar; list: PPgchar; length: gsize); cdecl; inline;
+ procedure set_uint64(group_name: Pgchar; key: Pgchar; value: guint64); cdecl; inline;
+ procedure set_value(group_name: Pgchar; key: Pgchar; value: Pgchar); cdecl; inline;
+ function to_data(length: Pgsize; error: PPGError): Pgchar; cdecl; inline;
+ procedure unref; cdecl; inline;
+ function error_quark: TGQuark; cdecl; inline; static;
+ end;
+
+
+ { TGKeyFileError }
+ PPGKeyFileError = ^PGKeyFileError;
+ PGKeyFileError = ^TGKeyFileError;
+
+
+ { TGLogField }
+ PPGLogField = ^PGLogField;
+ PGLogField = ^TGLogField;
+
+ TGLogField = record
+ key: Pgchar;
+ value: Pgpointer;
+ length: gssize;
+ end;
+
+
+
+
+ { TGLogLevelFlags }
+ PPGLogLevelFlags = ^PGLogLevelFlags;
+ PGLogLevelFlags = ^TGLogLevelFlags;
+ TGLogFunc = procedure(log_domain: Pgchar; log_level: TGLogLevelFlags; message: Pgchar; user_data: gpointer); cdecl;
+
+
+ { TGLogWriterOutput }
+ PPGLogWriterOutput = ^PGLogWriterOutput;
+ PGLogWriterOutput = ^TGLogWriterOutput;
+ TGLogWriterFunc = function(log_level: TGLogLevelFlags; fields: PGLogField; n_fields: gsize; user_data: gpointer): TGLogWriterOutput; cdecl;
+
+
+ { TGPollFunc }
+ PPGPollFunc = ^PGPollFunc;
+ PGPollFunc = ^TGPollFunc;
+ TGPollFunc = function(ufds: PGPollFD; nfsd: guint; timeout_: gint): gint; cdecl;
+ TGMainContext = object
+ function new: PGMainContext; cdecl; inline; static;
+ function acquire: gboolean; cdecl; inline;
+ procedure add_poll(fd: PGPollFD; priority: gint); cdecl; inline;
+ function check(max_priority: gint; fds: PGPollFD; n_fds: gint): gboolean; cdecl; inline;
+ procedure dispatch; cdecl; inline;
+ function find_source_by_funcs_user_data(funcs: PGSourceFuncs; user_data: gpointer): PGSource; cdecl; inline;
+ function find_source_by_id(source_id: guint): PGSource; cdecl; inline;
+ function find_source_by_user_data(user_data: gpointer): PGSource; cdecl; inline;
+ function get_poll_func: TGPollFunc; cdecl; inline;
+ procedure invoke(function_: TGSourceFunc; data: gpointer); cdecl; inline;
+ procedure invoke_full(priority: gint; function_: TGSourceFunc; data: gpointer; notify: TGDestroyNotify); cdecl; inline;
+ function is_owner: gboolean; cdecl; inline;
+ function iteration(may_block: gboolean): gboolean; cdecl; inline;
+ function pending: gboolean; cdecl; inline;
+ procedure pop_thread_default; cdecl; inline;
+ function prepare(priority: Pgint): gboolean; cdecl; inline;
+ procedure push_thread_default; cdecl; inline;
+ function query(max_priority: gint; timeout_: Pgint; fds: PGPollFD; n_fds: gint): gint; cdecl; inline;
+ function ref: PGMainContext; cdecl; inline;
+ procedure release; cdecl; inline;
+ procedure remove_poll(fd: PGPollFD); cdecl; inline;
+ procedure set_poll_func(func: TGPollFunc); cdecl; inline;
+ procedure unref; cdecl; inline;
+ procedure wakeup; cdecl; inline;
+ function default_: PGMainContext; cdecl; inline; static;
+ function get_thread_default: PGMainContext; cdecl; inline; static;
+ function ref_thread_default: PGMainContext; cdecl; inline; static;
+ end;
+ TGPollFD = object
+ fd: gint;
+ events: gushort;
+ revents: gushort;
+ end;
+
+
+ { TGSourceDummyMarshal }
+ PPGSourceDummyMarshal = ^PGSourceDummyMarshal;
+ PGSourceDummyMarshal = ^TGSourceDummyMarshal;
+ TGSourceDummyMarshal = procedure; cdecl;
+
+ TGSourceFuncs = record
+ prepare: function(source: PGSource; timeout_: Pgint): gboolean; cdecl;
+ check: function(source: PGSource): gboolean; cdecl;
+ dispatch: function(source: PGSource; callback: TGSourceFunc; user_data: gpointer): gboolean; cdecl;
+ finalize: procedure(source: PGSource); cdecl;
+ closure_callback: TGSourceFunc;
+ closure_marshal: TGSourceDummyMarshal;
+ end;
+
+
+
+
+ { TGMainLoop }
+ PPGMainLoop = ^PGMainLoop;
+ PGMainLoop = ^TGMainLoop;
+ TGMainLoop = object
+ function new(context: PGMainContext; is_running: gboolean): PGMainLoop; cdecl; inline; static;
+ function get_context: PGMainContext; cdecl; inline;
+ function is_running: gboolean; cdecl; inline;
+ procedure quit; cdecl; inline;
+ function ref: PGMainLoop; cdecl; inline;
+ procedure run; cdecl; inline;
+ procedure unref; cdecl; inline;
+ end;
+
+
+ { TGMappedFile }
+ PPGMappedFile = ^PGMappedFile;
+ PGMappedFile = ^TGMappedFile;
+ TGMappedFile = object
+ function new(filename: Pgchar; writable: gboolean; error: PPGError): PGMappedFile; cdecl; inline; static;
+ function new_from_fd(fd: gint; writable: gboolean; error: PPGError): PGMappedFile; cdecl; inline; static;
+ function get_bytes: PGBytes; cdecl; inline;
+ function get_contents: Pgchar; cdecl; inline;
+ function get_length: gsize; cdecl; inline;
+ function ref: PGMappedFile; cdecl; inline;
+ procedure unref; cdecl; inline;
+ end;
+
+
+ { TGMarkupCollectType }
+ PPGMarkupCollectType = ^PGMarkupCollectType;
+ PGMarkupCollectType = ^TGMarkupCollectType;
+
+
+ { TGMarkupError }
+ PPGMarkupError = ^PGMarkupError;
+ PGMarkupError = ^TGMarkupError;
+
+
+ { TGMarkupParseContext }
+ PPGMarkupParseContext = ^PGMarkupParseContext;
+ PGMarkupParseContext = ^TGMarkupParseContext;
+
+
+ { TGMarkupParser }
+ PPGMarkupParser = ^PGMarkupParser;
+ PGMarkupParser = ^TGMarkupParser;
+
+
+ { TGMarkupParseFlags }
+ PPGMarkupParseFlags = ^PGMarkupParseFlags;
+ PGMarkupParseFlags = ^TGMarkupParseFlags;
+ TGMarkupParseContext = object
+ function new(parser: PGMarkupParser; flags: TGMarkupParseFlags; user_data: gpointer; user_data_dnotify: TGDestroyNotify): PGMarkupParseContext; cdecl; inline; static;
+ function end_parse(error: PPGError): gboolean; cdecl; inline;
+ procedure free; cdecl; inline;
+ function get_element: Pgchar; cdecl; inline;
+ function get_element_stack: PGSList; cdecl; inline;
+ procedure get_position(line_number: Pgint; char_number: Pgint); cdecl; inline;
+ function get_user_data: gpointer; cdecl; inline;
+ function parse(text: Pgchar; text_len: gssize; error: PPGError): gboolean; cdecl; inline;
+ function pop: gpointer; cdecl; inline;
+ procedure push(parser: PGMarkupParser; user_data: gpointer); cdecl; inline;
+ function ref: PGMarkupParseContext; cdecl; inline;
+ procedure unref; cdecl; inline;
+ end;
+
+ TGMarkupParser = record
+ start_element: procedure(context: PGMarkupParseContext; element_name: Pgchar; attribute_names: PPgchar; attribute_values: PPgchar; user_data: gpointer; error: PPGError); cdecl;
+ end_element: procedure(context: PGMarkupParseContext; element_name: Pgchar; user_data: gpointer; error: PPGError); cdecl;
+ text: procedure(context: PGMarkupParseContext; text: Pgchar; text_len: gsize; user_data: gpointer; error: PPGError); cdecl;
+ passthrough: procedure(context: PGMarkupParseContext; passthrough_text: Pgchar; text_len: gsize; user_data: gpointer; error: PPGError); cdecl;
+ error: procedure(context: PGMarkupParseContext; error: PGError; user_data: gpointer); cdecl;
+ end;
+
+
+ TGSList = object
+ data: gpointer;
+ next: PGSList;
+ function alloc: PGSList; cdecl; inline; static;
+ function append(list: PGSList; data: gpointer): PGSList; cdecl; inline; static;
+ function concat(list1: PGSList; list2: PGSList): PGSList; cdecl; inline; static;
+ function copy(list: PGSList): PGSList; cdecl; inline; static;
+ function copy_deep(list: PGSList; func: TGCopyFunc; user_data: gpointer): PGSList; cdecl; inline; static;
+ function delete_link(list: PGSList; link_: PGSList): PGSList; cdecl; inline; static;
+ function find(list: PGSList; data: Pgpointer): PGSList; cdecl; inline; static;
+ function find_custom(list: PGSList; data: Pgpointer; func: TGCompareFunc): PGSList; cdecl; inline; static;
+ procedure foreach(list: PGSList; func: TGFunc; user_data: gpointer); cdecl; inline; static;
+ procedure free(list: PGSList); cdecl; inline; static;
+ procedure free_1(list: PGSList); cdecl; inline; static;
+ procedure free_full(list: PGSList; free_func: TGDestroyNotify); cdecl; inline; static;
+ function index(list: PGSList; data: Pgpointer): gint; cdecl; inline; static;
+ function insert(list: PGSList; data: gpointer; position: gint): PGSList; cdecl; inline; static;
+ function insert_before(slist: PGSList; sibling: PGSList; data: gpointer): PGSList; cdecl; inline; static;
+ function insert_sorted(list: PGSList; data: gpointer; func: TGCompareFunc): PGSList; cdecl; inline; static;
+ function insert_sorted_with_data(list: PGSList; data: gpointer; func: TGCompareDataFunc; user_data: gpointer): PGSList; cdecl; inline; static;
+ function last(list: PGSList): PGSList; cdecl; inline; static;
+ function length(list: PGSList): guint; cdecl; inline; static;
+ function nth(list: PGSList; n: guint): PGSList; cdecl; inline; static;
+ function nth_data(list: PGSList; n: guint): gpointer; cdecl; inline; static;
+ function position(list: PGSList; llink: PGSList): gint; cdecl; inline; static;
+ function prepend(list: PGSList; data: gpointer): PGSList; cdecl; inline; static;
+ function remove(list: PGSList; data: Pgpointer): PGSList; cdecl; inline; static;
+ function remove_all(list: PGSList; data: Pgpointer): PGSList; cdecl; inline; static;
+ function remove_link(list: PGSList; link_: PGSList): PGSList; cdecl; inline; static;
+ function reverse(list: PGSList): PGSList; cdecl; inline; static;
+ function sort(list: PGSList; compare_func: TGCompareFunc): PGSList; cdecl; inline; static;
+ function sort_with_data(list: PGSList; compare_func: TGCompareDataFunc; user_data: gpointer): PGSList; cdecl; inline; static;
+ end;
+
+
+ { TGMatchInfo }
+ PPGMatchInfo = ^PGMatchInfo;
+ PGMatchInfo = ^TGMatchInfo;
+
+
+ { TGRegex }
+ PPGRegex = ^PGRegex;
+ PGRegex = ^TGRegex;
+ TGMatchInfo = object
+ function expand_references(string_to_expand: Pgchar; error: PPGError): Pgchar; cdecl; inline;
+ function fetch(match_num: gint): Pgchar; cdecl; inline;
+ function fetch_all: PPgchar; cdecl; inline;
+ function fetch_named(name: Pgchar): Pgchar; cdecl; inline;
+ function fetch_named_pos(name: Pgchar; start_pos: Pgint; end_pos: Pgint): gboolean; cdecl; inline;
+ function fetch_pos(match_num: gint; start_pos: Pgint; end_pos: Pgint): gboolean; cdecl; inline;
+ procedure free; cdecl; inline;
+ function get_match_count: gint; cdecl; inline;
+ function get_regex: PGRegex; cdecl; inline;
+ function get_string: Pgchar; cdecl; inline;
+ function is_partial_match: gboolean; cdecl; inline;
+ function matches: gboolean; cdecl; inline;
+ function next(error: PPGError): gboolean; cdecl; inline;
+ function ref: PGMatchInfo; cdecl; inline;
+ procedure unref; cdecl; inline;
+ end;
+
+
+ { TGRegexCompileFlags }
+ PPGRegexCompileFlags = ^PGRegexCompileFlags;
+ PGRegexCompileFlags = ^TGRegexCompileFlags;
+
+
+ { TGRegexMatchFlags }
+ PPGRegexMatchFlags = ^PGRegexMatchFlags;
+ PGRegexMatchFlags = ^TGRegexMatchFlags;
+
+
+ { TGRegexEvalCallback }
+ PPGRegexEvalCallback = ^PGRegexEvalCallback;
+ PGRegexEvalCallback = ^TGRegexEvalCallback;
+ TGRegexEvalCallback = function(match_info: PGMatchInfo; result_: PGString; user_data: gpointer): gboolean; cdecl;
+ TGRegex = object
+ function new(pattern: Pgchar; compile_options: TGRegexCompileFlags; match_options: TGRegexMatchFlags; error: PPGError): PGRegex; cdecl; inline; static;
+ function get_capture_count: gint; cdecl; inline;
+ function get_compile_flags: TGRegexCompileFlags; cdecl; inline;
+ function get_has_cr_or_lf: gboolean; cdecl; inline;
+ function get_match_flags: TGRegexMatchFlags; cdecl; inline;
+ function get_max_backref: gint; cdecl; inline;
+ function get_max_lookbehind: gint; cdecl; inline;
+ function get_pattern: Pgchar; cdecl; inline;
+ function get_string_number(name: Pgchar): gint; cdecl; inline;
+ function match(string_: Pgchar; match_options: TGRegexMatchFlags; match_info: PPGMatchInfo): gboolean; cdecl; inline;
+ function match_all(string_: Pgchar; match_options: TGRegexMatchFlags; match_info: PPGMatchInfo): gboolean; cdecl; inline;
+ function match_all_full(string_: Pgchar; string_len: gssize; start_position: gint; match_options: TGRegexMatchFlags; match_info: PPGMatchInfo; error: PPGError): gboolean; cdecl; inline;
+ function match_full(string_: Pgchar; string_len: gssize; start_position: gint; match_options: TGRegexMatchFlags; match_info: PPGMatchInfo; error: PPGError): gboolean; cdecl; inline;
+ function ref: PGRegex; cdecl; inline;
+ function replace(string_: Pgchar; string_len: gssize; start_position: gint; replacement: Pgchar; match_options: TGRegexMatchFlags; error: PPGError): Pgchar; cdecl; inline;
+ function replace_eval(string_: Pgchar; string_len: gssize; start_position: gint; match_options: TGRegexMatchFlags; eval: TGRegexEvalCallback; user_data: gpointer; error: PPGError): Pgchar; cdecl; inline;
+ function replace_literal(string_: Pgchar; string_len: gssize; start_position: gint; replacement: Pgchar; match_options: TGRegexMatchFlags; error: PPGError): Pgchar; cdecl; inline;
+ function split(string_: Pgchar; match_options: TGRegexMatchFlags): PPgchar; cdecl; inline;
+ function split_full(string_: Pgchar; string_len: gssize; start_position: gint; match_options: TGRegexMatchFlags; max_tokens: gint; error: PPGError): PPgchar; cdecl; inline;
+ procedure unref; cdecl; inline;
+ function check_replacement(replacement: Pgchar; has_references: Pgboolean; error: PPGError): gboolean; cdecl; inline; static;
+ function error_quark: TGQuark; cdecl; inline; static;
+ function escape_nul(string_: Pgchar; length: gint): Pgchar; cdecl; inline; static;
+ function escape_string(string_: Pgchar; length: gint): Pgchar; cdecl; inline; static;
+ function match_simple(pattern: Pgchar; string_: Pgchar; compile_options: TGRegexCompileFlags; match_options: TGRegexMatchFlags): gboolean; cdecl; inline; static;
+ function split_simple(pattern: Pgchar; string_: Pgchar; compile_options: TGRegexCompileFlags; match_options: TGRegexMatchFlags): PPgchar; cdecl; inline; static;
+ end;
+
+
+ { TGMemVTable }
+ PPGMemVTable = ^PGMemVTable;
+ PGMemVTable = ^TGMemVTable;
+
+ TGMemVTable = record
+ malloc: function(n_bytes: gsize): gpointer; cdecl;
+ realloc: function(mem: gpointer; n_bytes: gsize): gpointer; cdecl;
+ free: procedure(mem: gpointer); cdecl;
+ calloc: function(n_blocks: gsize; n_block_bytes: gsize): gpointer; cdecl;
+ try_malloc: function(n_bytes: gsize): gpointer; cdecl;
+ try_realloc: function(mem: gpointer; n_bytes: gsize): gpointer; cdecl;
+ end;
+
+
+
+
+ { TGNode }
+ PPGNode = ^PGNode;
+ PGNode = ^TGNode;
+
+
+ { TGTraverseFlags }
+ PPGTraverseFlags = ^PGTraverseFlags;
+ PGTraverseFlags = ^TGTraverseFlags;
+
+
+ { TGNodeForeachFunc }
+ PPGNodeForeachFunc = ^PGNodeForeachFunc;
+ PGNodeForeachFunc = ^TGNodeForeachFunc;
+ TGNodeForeachFunc = procedure(node: PGNode; user_data: gpointer); cdecl;
+
+
+ { TGTraverseType }
+ PPGTraverseType = ^PGTraverseType;
+ PGTraverseType = ^TGTraverseType;
+
+
+ { TGNodeTraverseFunc }
+ PPGNodeTraverseFunc = ^PGNodeTraverseFunc;
+ PGNodeTraverseFunc = ^TGNodeTraverseFunc;
+ TGNodeTraverseFunc = function(node: PGNode; user_data: gpointer): gboolean; cdecl;
+ TGNode = object
+ data: gpointer;
+ next: PGNode;
+ prev: PGNode;
+ parent: PGNode;
+ children: PGNode;
+ function child_index(data: gpointer): gint; cdecl; inline;
+ function child_position(child: PGNode): gint; cdecl; inline;
+ procedure children_foreach(flags: TGTraverseFlags; func: TGNodeForeachFunc; data: gpointer); cdecl; inline;
+ function copy: PGNode; cdecl; inline;
+ function copy_deep(copy_func: TGCopyFunc; data: gpointer): PGNode; cdecl; inline;
+ function depth: guint; cdecl; inline;
+ procedure destroy_; cdecl; inline;
+ function find(order: TGTraverseType; flags: TGTraverseFlags; data: gpointer): PGNode; cdecl; inline;
+ function find_child(flags: TGTraverseFlags; data: gpointer): PGNode; cdecl; inline;
+ function first_sibling: PGNode; cdecl; inline;
+ function get_root: PGNode; cdecl; inline;
+ function insert(position: gint; node: PGNode): PGNode; cdecl; inline;
+ function insert_after(sibling: PGNode; node: PGNode): PGNode; cdecl; inline;
+ function insert_before(sibling: PGNode; node: PGNode): PGNode; cdecl; inline;
+ function is_ancestor(descendant: PGNode): gboolean; cdecl; inline;
+ function last_child: PGNode; cdecl; inline;
+ function last_sibling: PGNode; cdecl; inline;
+ function max_height: guint; cdecl; inline;
+ function n_children: guint; cdecl; inline;
+ function n_nodes(flags: TGTraverseFlags): guint; cdecl; inline;
+ function nth_child(n: guint): PGNode; cdecl; inline;
+ function prepend(node: PGNode): PGNode; cdecl; inline;
+ procedure reverse_children; cdecl; inline;
+ procedure traverse(order: TGTraverseType; flags: TGTraverseFlags; max_depth: gint; func: TGNodeTraverseFunc; data: gpointer); cdecl; inline;
+ procedure unlink; cdecl; inline;
+ function new(data: gpointer): PGNode; cdecl; inline; static;
+ end;
+
+
+ { TGNormalizeMode }
+ PPGNormalizeMode = ^PGNormalizeMode;
+ PGNormalizeMode = ^TGNormalizeMode;
+
+
+ { TGNumberParserError }
+ PPGNumberParserError = ^PGNumberParserError;
+ PGNumberParserError = ^TGNumberParserError;
+
+
+ { TGOnceStatus }
+ PPGOnceStatus = ^PGOnceStatus;
+ PGOnceStatus = ^TGOnceStatus;
+
+
+ { TGOnce }
+ PPGOnce = ^PGOnce;
+ PGOnce = ^TGOnce;
+
+
+ { TGThreadFunc }
+ PPGThreadFunc = ^PGThreadFunc;
+ PGThreadFunc = ^TGThreadFunc;
+ TGThreadFunc = function(user_data: gpointer): gpointer; cdecl;
+ TGOnce = object
+ status: TGOnceStatus;
+ retval: gpointer;
+ function impl(func: TGThreadFunc; arg: gpointer): gpointer; cdecl; inline;
+ function init_enter(location: Pgpointer): gboolean; cdecl; inline; static;
+ procedure init_leave(location: Pgpointer; result_: gsize); cdecl; inline; static;
+ end;
+
+
+ { TGOptionArg }
+ PPGOptionArg = ^PGOptionArg;
+ PGOptionArg = ^TGOptionArg;
+ TGOptionArgFunc = function(option_name: Pgchar; value: Pgchar; user_data: gpointer; error: PPGError): gboolean; cdecl;
+
+
+ { TGOptionContext }
+ PPGOptionContext = ^PGOptionContext;
+ PGOptionContext = ^TGOptionContext;
+
+
+ { TGOptionGroup }
+ PPGOptionGroup = ^PGOptionGroup;
+ PGOptionGroup = ^TGOptionGroup;
+
+
+ { TGOptionEntry }
+ PPGOptionEntry = ^PGOptionEntry;
+ PGOptionEntry = ^TGOptionEntry;
+
+
+ { TGTranslateFunc }
+ PPGTranslateFunc = ^PGTranslateFunc;
+ PGTranslateFunc = ^TGTranslateFunc;
+ TGTranslateFunc = function(str: Pgchar; user_data: gpointer): Pgchar; cdecl;
+ TGOptionContext = object
+ procedure add_group(group: PGOptionGroup); cdecl; inline;
+ procedure add_main_entries(entries: PGOptionEntry; translation_domain: Pgchar); cdecl; inline;
+ procedure free; cdecl; inline;
+ function get_description: Pgchar; cdecl; inline;
+ function get_help(main_help: gboolean; group: PGOptionGroup): Pgchar; cdecl; inline;
+ function get_help_enabled: gboolean; cdecl; inline;
+ function get_ignore_unknown_options: gboolean; cdecl; inline;
+ function get_main_group: PGOptionGroup; cdecl; inline;
+ function get_strict_posix: gboolean; cdecl; inline;
+ function get_summary: Pgchar; cdecl; inline;
+ function parse(argc: Pgint; argv: PPPgchar; error: PPGError): gboolean; cdecl; inline;
+ function parse_strv(arguments: PPPgchar; error: PPGError): gboolean; cdecl; inline;
+ procedure set_description(description: Pgchar); cdecl; inline;
+ procedure set_help_enabled(help_enabled: gboolean); cdecl; inline;
+ procedure set_ignore_unknown_options(ignore_unknown: gboolean); cdecl; inline;
+ procedure set_main_group(group: PGOptionGroup); cdecl; inline;
+ procedure set_strict_posix(strict_posix: gboolean); cdecl; inline;
+ procedure set_summary(summary: Pgchar); cdecl; inline;
+ procedure set_translate_func(func: TGTranslateFunc; data: gpointer; destroy_notify: TGDestroyNotify); cdecl; inline;
+ procedure set_translation_domain(domain: Pgchar); cdecl; inline;
+ function new(parameter_string: Pgchar): PGOptionContext; cdecl; inline; static;
+ end;
+
+
+ { TGOptionErrorFunc }
+ PPGOptionErrorFunc = ^PGOptionErrorFunc;
+ PGOptionErrorFunc = ^TGOptionErrorFunc;
+ TGOptionErrorFunc = procedure(context: PGOptionContext; group: PGOptionGroup; user_data: gpointer; error: PPGError); cdecl;
+
+
+ { TGOptionParseFunc }
+ PPGOptionParseFunc = ^PGOptionParseFunc;
+ PGOptionParseFunc = ^TGOptionParseFunc;
+ TGOptionParseFunc = function(context: PGOptionContext; group: PGOptionGroup; user_data: gpointer; error: PPGError): gboolean; cdecl;
+ TGOptionGroup = object
+ function new(name: Pgchar; description: Pgchar; help_description: Pgchar; user_data: gpointer; destroy_: TGDestroyNotify): PGOptionGroup; cdecl; inline; static;
+ procedure add_entries(entries: PGOptionEntry); cdecl; inline;
+ function ref: PGOptionGroup; cdecl; inline;
+ procedure set_error_hook(error_func: TGOptionErrorFunc); cdecl; inline;
+ procedure set_parse_hooks(pre_parse_func: TGOptionParseFunc; post_parse_func: TGOptionParseFunc); cdecl; inline;
+ procedure set_translate_func(func: TGTranslateFunc; data: gpointer; destroy_notify: TGDestroyNotify); cdecl; inline;
+ procedure set_translation_domain(domain: Pgchar); cdecl; inline;
+ procedure unref; cdecl; inline;
+ end;
+
+ TGOptionEntry = record
+ long_name: Pgchar;
+ short_name: gchar;
+ flags: gint;
+ arg: TGOptionArg;
+ arg_data: gpointer;
+ description: Pgchar;
+ arg_description: Pgchar;
+ end;
+
+
+
+
+ { TGOptionError }
+ PPGOptionError = ^PGOptionError;
+ PGOptionError = ^TGOptionError;
+
+
+ { TGOptionFlags }
+ PPGOptionFlags = ^PGOptionFlags;
+ PGOptionFlags = ^TGOptionFlags;
+
+
+ { TGPatternSpec }
+ PPGPatternSpec = ^PGPatternSpec;
+ PGPatternSpec = ^TGPatternSpec;
+ TGPatternSpec = object
+ function new(pattern: Pgchar): PGPatternSpec; cdecl; inline; static;
+ function equal(pspec2: PGPatternSpec): gboolean; cdecl; inline;
+ procedure free; cdecl; inline;
+ end;
+ TGPrintFunc = procedure(string_: Pgchar); cdecl;
+
+
+ { TGPrivate }
+ PPGPrivate = ^PGPrivate;
+ PGPrivate = ^TGPrivate;
+ TGPrivate = object
+ p: gpointer;
+ notify: TGDestroyNotify;
+ future: array [0..1] of gpointer;
+ function get: gpointer; cdecl; inline;
+ procedure replace(value: gpointer); cdecl; inline;
+ procedure set_(value: gpointer); cdecl; inline;
+ end;
+
+
+ { TGPtrArray }
+ PPGPtrArray = ^PGPtrArray;
+ PGPtrArray = ^TGPtrArray;
+ TGPtrArray = object
+ pdata: Pgpointer;
+ len: guint;
+ procedure add(array_: Pgpointer; data: gpointer); cdecl; inline; static;
+ function copy(array_: Pgpointer; func: TGCopyFunc; user_data: gpointer): Pgpointer; cdecl; inline; static;
+ procedure extend(array_to_extend: Pgpointer; array_: Pgpointer; func: TGCopyFunc; user_data: gpointer); cdecl; inline; static;
+ procedure extend_and_steal(array_to_extend: Pgpointer; array_: Pgpointer); cdecl; inline; static;
+ function find(haystack: Pgpointer; needle: Pgpointer; index_: Pguint): gboolean; cdecl; inline; static;
+ function find_with_equal_func(haystack: Pgpointer; needle: Pgpointer; equal_func: TGEqualFunc; index_: Pguint): gboolean; cdecl; inline; static;
+ procedure foreach(array_: Pgpointer; func: TGFunc; user_data: gpointer); cdecl; inline; static;
+ function free(array_: Pgpointer; free_seg: gboolean): Pgpointer; cdecl; inline; static;
+ procedure insert(array_: Pgpointer; index_: gint; data: gpointer); cdecl; inline; static;
+ function new: Pgpointer; cdecl; inline; static;
+ function new_full(reserved_size: guint; element_free_func: TGDestroyNotify): Pgpointer; cdecl; inline; static;
+ function new_with_free_func(element_free_func: TGDestroyNotify): Pgpointer; cdecl; inline; static;
+ function ref(array_: Pgpointer): Pgpointer; cdecl; inline; static;
+ function remove(array_: Pgpointer; data: gpointer): gboolean; cdecl; inline; static;
+ function remove_fast(array_: Pgpointer; data: gpointer): gboolean; cdecl; inline; static;
+ function remove_index(array_: Pgpointer; index_: guint): gpointer; cdecl; inline; static;
+ function remove_index_fast(array_: Pgpointer; index_: guint): gpointer; cdecl; inline; static;
+ function remove_range(array_: Pgpointer; index_: guint; length: guint): Pgpointer; cdecl; inline; static;
+ procedure set_free_func(array_: Pgpointer; element_free_func: TGDestroyNotify); cdecl; inline; static;
+ procedure set_size(array_: Pgpointer; length: gint); cdecl; inline; static;
+ function sized_new(reserved_size: guint): Pgpointer; cdecl; inline; static;
+ procedure sort(array_: Pgpointer; compare_func: TGCompareFunc); cdecl; inline; static;
+ procedure sort_with_data(array_: Pgpointer; compare_func: TGCompareDataFunc; user_data: gpointer); cdecl; inline; static;
+ function steal(array_: Pgpointer; len: Pgsize): Pgpointer; cdecl; inline; static;
+ function steal_index(array_: Pgpointer; index_: guint): gpointer; cdecl; inline; static;
+ function steal_index_fast(array_: Pgpointer; index_: guint): gpointer; cdecl; inline; static;
+ procedure unref(array_: Pgpointer); cdecl; inline; static;
+ end;
+
+
+ { TGQueue }
+ PPGQueue = ^PGQueue;
+ PGQueue = ^TGQueue;
+ TGQueue = object
+ head: PGList;
+ tail: PGList;
+ length: guint;
+ procedure clear; cdecl; inline;
+ procedure clear_full(free_func: TGDestroyNotify); cdecl; inline;
+ function copy: PGQueue; cdecl; inline;
+ procedure delete_link(link_: PGList); cdecl; inline;
+ function find(data: Pgpointer): PGList; cdecl; inline;
+ function find_custom(data: Pgpointer; func: TGCompareFunc): PGList; cdecl; inline;
+ procedure foreach(func: TGFunc; user_data: gpointer); cdecl; inline;
+ procedure free; cdecl; inline;
+ procedure free_full(free_func: TGDestroyNotify); cdecl; inline;
+ function get_length: guint; cdecl; inline;
+ function index(data: Pgpointer): gint; cdecl; inline;
+ procedure init; cdecl; inline;
+ procedure insert_after(sibling: PGList; data: gpointer); cdecl; inline;
+ procedure insert_after_link(sibling: PGList; link_: PGList); cdecl; inline;
+ procedure insert_before(sibling: PGList; data: gpointer); cdecl; inline;
+ procedure insert_before_link(sibling: PGList; link_: PGList); cdecl; inline;
+ procedure insert_sorted(data: gpointer; func: TGCompareDataFunc; user_data: gpointer); cdecl; inline;
+ function is_empty: gboolean; cdecl; inline;
+ function link_index(link_: PGList): gint; cdecl; inline;
+ function peek_head: gpointer; cdecl; inline;
+ function peek_head_link: PGList; cdecl; inline;
+ function peek_nth(n: guint): gpointer; cdecl; inline;
+ function peek_nth_link(n: guint): PGList; cdecl; inline;
+ function peek_tail: gpointer; cdecl; inline;
+ function peek_tail_link: PGList; cdecl; inline;
+ function pop_head: gpointer; cdecl; inline;
+ function pop_head_link: PGList; cdecl; inline;
+ function pop_nth(n: guint): gpointer; cdecl; inline;
+ function pop_nth_link(n: guint): PGList; cdecl; inline;
+ function pop_tail: gpointer; cdecl; inline;
+ function pop_tail_link: PGList; cdecl; inline;
+ procedure push_head(data: gpointer); cdecl; inline;
+ procedure push_head_link(link_: PGList); cdecl; inline;
+ procedure push_nth(data: gpointer; n: gint); cdecl; inline;
+ procedure push_nth_link(n: gint; link_: PGList); cdecl; inline;
+ procedure push_tail(data: gpointer); cdecl; inline;
+ procedure push_tail_link(link_: PGList); cdecl; inline;
+ function remove(data: Pgpointer): gboolean; cdecl; inline;
+ function remove_all(data: Pgpointer): guint; cdecl; inline;
+ procedure reverse; cdecl; inline;
+ procedure sort(compare_func: TGCompareDataFunc; user_data: gpointer); cdecl; inline;
+ procedure unlink(link_: PGList); cdecl; inline;
+ function new: PGQueue; cdecl; inline; static;
+ end;
+
+
+ { TGRWLock }
+ PPGRWLock = ^PGRWLock;
+ PGRWLock = ^TGRWLock;
+ TGRWLock = object
+ p: gpointer;
+ i: array [0..1] of guint;
+ procedure clear; cdecl; inline;
+ procedure init; cdecl; inline;
+ procedure reader_lock; cdecl; inline;
+ function reader_trylock: gboolean; cdecl; inline;
+ procedure reader_unlock; cdecl; inline;
+ procedure writer_lock; cdecl; inline;
+ function writer_trylock: gboolean; cdecl; inline;
+ procedure writer_unlock; cdecl; inline;
+ end;
+
+
+ { TGRand }
+ PPGRand = ^PGRand;
+ PGRand = ^TGRand;
+ TGRand = object
+ function copy: PGRand; cdecl; inline;
+ function double: gdouble; cdecl; inline;
+ function double_range(begin_: gdouble; end_: gdouble): gdouble; cdecl; inline;
+ procedure free; cdecl; inline;
+ function int: guint32; cdecl; inline;
+ function int_range(begin_: gint32; end_: gint32): gint32; cdecl; inline;
+ procedure set_seed(seed: guint32); cdecl; inline;
+ procedure set_seed_array(seed: Pguint32; seed_length: guint); cdecl; inline;
+ function new: PGRand; cdecl; inline; static;
+ function new_with_seed(seed: guint32): PGRand; cdecl; inline; static;
+ function new_with_seed_array(seed: Pguint32; seed_length: guint): PGRand; cdecl; inline; static;
+ end;
+
+
+ { TGRecMutex }
+ PPGRecMutex = ^PGRecMutex;
+ PGRecMutex = ^TGRecMutex;
+ TGRecMutex = object
+ p: gpointer;
+ i: array [0..1] of guint;
+ procedure clear; cdecl; inline;
+ procedure init; cdecl; inline;
+ procedure lock; cdecl; inline;
+ function trylock: gboolean; cdecl; inline;
+ procedure unlock; cdecl; inline;
+ end;
+
+
+ { TGRegexError }
+ PPGRegexError = ^PGRegexError;
+ PGRegexError = ^TGRegexError;
+
+
+ { TGScannerConfig }
+ PPGScannerConfig = ^PGScannerConfig;
+ PGScannerConfig = ^TGScannerConfig;
+ TGScannerConfigBitfield0 = bitpacked record
+ case_sensitive: guint1 { changed from guint to accomodate 1 bitsize requirement };
+ skip_comment_multi: guint1 { changed from guint to accomodate 1 bitsize requirement };
+ skip_comment_single: guint1 { changed from guint to accomodate 1 bitsize requirement };
+ scan_comment_multi: guint1 { changed from guint to accomodate 1 bitsize requirement };
+ scan_identifier: guint1 { changed from guint to accomodate 1 bitsize requirement };
+ scan_identifier_1char: guint1 { changed from guint to accomodate 1 bitsize requirement };
+ scan_identifier_NULL: guint1 { changed from guint to accomodate 1 bitsize requirement };
+ scan_symbols: guint1 { changed from guint to accomodate 1 bitsize requirement };
+ scan_binary: guint1 { changed from guint to accomodate 1 bitsize requirement };
+ scan_octal: guint1 { changed from guint to accomodate 1 bitsize requirement };
+ scan_float: guint1 { changed from guint to accomodate 1 bitsize requirement };
+ scan_hex: guint1 { changed from guint to accomodate 1 bitsize requirement };
+ scan_hex_dollar: guint1 { changed from guint to accomodate 1 bitsize requirement };
+ scan_string_sq: guint1 { changed from guint to accomodate 1 bitsize requirement };
+ scan_string_dq: guint1 { changed from guint to accomodate 1 bitsize requirement };
+ numbers_2_int: guint1 { changed from guint to accomodate 1 bitsize requirement };
+ int_2_float: guint1 { changed from guint to accomodate 1 bitsize requirement };
+ identifier_2_string: guint1 { changed from guint to accomodate 1 bitsize requirement };
+ char_2_token: guint1 { changed from guint to accomodate 1 bitsize requirement };
+ symbol_2_token: guint1 { changed from guint to accomodate 1 bitsize requirement };
+ scope_0_fallback: guint1 { changed from guint to accomodate 1 bitsize requirement };
+ store_int64: guint1 { changed from guint to accomodate 1 bitsize requirement };
+ end;
+
+
+ TGScannerConfig = record
+ cset_skip_characters: Pgchar;
+ cset_identifier_first: Pgchar;
+ cset_identifier_nth: Pgchar;
+ cpair_comment_single: Pgchar;
+ Bitfield0 : TGScannerConfigBitfield0; { auto generated type }
+ padding_dummy: guint;
+ end;
+
+
+
+
+ { TGTokenType }
+ PPGTokenType = ^PGTokenType;
+ PGTokenType = ^TGTokenType;
+
+
+ { TGTokenValue }
+ PPGTokenValue = ^PGTokenValue;
+ PGTokenValue = ^TGTokenValue;
+ TGTokenValue = record
+ case longint of
+ 0 : (v_symbol: gpointer);
+ 1 : (v_identifier: Pgchar);
+ 2 : (v_binary: gulong);
+ 3 : (v_octal: gulong);
+ 4 : (v_int: gulong);
+ 5 : (v_int64: guint64);
+ 6 : (v_float: gdouble);
+ 7 : (v_hex: gulong);
+ 8 : (v_string: Pgchar);
+ 9 : (v_comment: Pgchar);
+ 10 : (v_char: guint8);
+ 11 : (v_error: guint);
+ end;
+
+
+
+
+ { TGScanner }
+ PPGScanner = ^PGScanner;
+ PGScanner = ^TGScanner;
+ TGScannerMsgFunc = procedure(scanner: PGScanner; message: Pgchar; error: gboolean); cdecl;
+
+
+ { TGScannerMsgFunc }
+ PPGScannerMsgFunc = ^PGScannerMsgFunc;
+ PGScannerMsgFunc = ^TGScannerMsgFunc;
+ TGScanner = object
+ user_data: gpointer;
+ max_parse_errors: guint;
+ parse_errors: guint;
+ input_name: Pgchar;
+ qdata: PGData;
+ config: PGScannerConfig;
+ token: TGTokenType;
+ value: TGTokenValue;
+ line: guint;
+ position: guint;
+ next_token: TGTokenType;
+ next_value: TGTokenValue;
+ next_line: guint;
+ next_position: guint;
+ symbol_table: PGHashTable;
+ input_fd: gint;
+ text: Pgchar;
+ text_end: Pgchar;
+ buffer: Pgchar;
+ scope_id: guint;
+ msg_handler: TGScannerMsgFunc;
+ function cur_line: guint; cdecl; inline;
+ function cur_position: guint; cdecl; inline;
+ function cur_token: TGTokenType; cdecl; inline;
+ function cur_value: TGTokenValue; cdecl; inline;
+ procedure destroy_; cdecl; inline;
+ function eof: gboolean; cdecl; inline;
+ //procedure error(format: Pgchar; args: array of const); cdecl; inline;
+ function get_next_token: TGTokenType; cdecl; inline;
+ procedure input_file(input_fd: gint); cdecl; inline;
+ procedure input_text(text: Pgchar; text_len: guint); cdecl; inline;
+ function lookup_symbol(symbol: Pgchar): gpointer; cdecl; inline;
+ function peek_next_token: TGTokenType; cdecl; inline;
+ procedure scope_add_symbol(scope_id: guint; symbol: Pgchar; value: gpointer); cdecl; inline;
+ procedure scope_foreach_symbol(scope_id: guint; func: TGHFunc; user_data: gpointer); cdecl; inline;
+ function scope_lookup_symbol(scope_id: guint; symbol: Pgchar): gpointer; cdecl; inline;
+ procedure scope_remove_symbol(scope_id: guint; symbol: Pgchar); cdecl; inline;
+ function set_scope(scope_id: guint): guint; cdecl; inline;
+ procedure sync_file_offset; cdecl; inline;
+ procedure unexp_token(expected_token: TGTokenType; identifier_spec: Pgchar; symbol_spec: Pgchar; symbol_name: Pgchar; message: Pgchar; is_error: gint); cdecl; inline;
+ //procedure warn(format: Pgchar; args: array of const); cdecl; inline;
+ function new(config_templ: PGScannerConfig): PGScanner; cdecl; inline; static;
+ end;
+
+
+ { TGSequenceIter }
+ PPGSequenceIter = ^PGSequenceIter;
+ PGSequenceIter = ^TGSequenceIter;
+
+
+ { TGSequence }
+ PPGSequence = ^PGSequence;
+ PGSequence = ^TGSequence;
+ TGSequenceIter = object
+ function compare(b: PGSequenceIter): gint; cdecl; inline;
+ function get_position: gint; cdecl; inline;
+ function get_sequence: PGSequence; cdecl; inline;
+ function is_begin: gboolean; cdecl; inline;
+ function is_end: gboolean; cdecl; inline;
+ function move(delta: gint): PGSequenceIter; cdecl; inline;
+ function next: PGSequenceIter; cdecl; inline;
+ function prev: PGSequenceIter; cdecl; inline;
+ end;
+
+
+ { TGSequenceIterCompareFunc }
+ PPGSequenceIterCompareFunc = ^PGSequenceIterCompareFunc;
+ PGSequenceIterCompareFunc = ^TGSequenceIterCompareFunc;
+ TGSequenceIterCompareFunc = function(a: PGSequenceIter; b: PGSequenceIter; user_data: gpointer): gint; cdecl;
+ TGSequence = object
+ function append(data: gpointer): PGSequenceIter; cdecl; inline;
+ procedure foreach(func: TGFunc; user_data: gpointer); cdecl; inline;
+ procedure free; cdecl; inline;
+ function get_begin_iter: PGSequenceIter; cdecl; inline;
+ function get_end_iter: PGSequenceIter; cdecl; inline;
+ function get_iter_at_pos(pos: gint): PGSequenceIter; cdecl; inline;
+ function get_length: gint; cdecl; inline;
+ function insert_sorted(data: gpointer; cmp_func: TGCompareDataFunc; cmp_data: gpointer): PGSequenceIter; cdecl; inline;
+ function insert_sorted_iter(data: gpointer; iter_cmp: TGSequenceIterCompareFunc; cmp_data: gpointer): PGSequenceIter; cdecl; inline;
+ function is_empty: gboolean; cdecl; inline;
+ function lookup(data: gpointer; cmp_func: TGCompareDataFunc; cmp_data: gpointer): PGSequenceIter; cdecl; inline;
+ function lookup_iter(data: gpointer; iter_cmp: TGSequenceIterCompareFunc; cmp_data: gpointer): PGSequenceIter; cdecl; inline;
+ function prepend(data: gpointer): PGSequenceIter; cdecl; inline;
+ function search(data: gpointer; cmp_func: TGCompareDataFunc; cmp_data: gpointer): PGSequenceIter; cdecl; inline;
+ function search_iter(data: gpointer; iter_cmp: TGSequenceIterCompareFunc; cmp_data: gpointer): PGSequenceIter; cdecl; inline;
+ procedure sort(cmp_func: TGCompareDataFunc; cmp_data: gpointer); cdecl; inline;
+ procedure sort_iter(cmp_func: TGSequenceIterCompareFunc; cmp_data: gpointer); cdecl; inline;
+ procedure foreach_range(begin_: PGSequenceIter; end_: PGSequenceIter; func: TGFunc; user_data: gpointer); cdecl; inline; static;
+ function get(iter: PGSequenceIter): gpointer; cdecl; inline; static;
+ function insert_before(iter: PGSequenceIter; data: gpointer): PGSequenceIter; cdecl; inline; static;
+ procedure move(src: PGSequenceIter; dest: PGSequenceIter); cdecl; inline; static;
+ procedure move_range(dest: PGSequenceIter; begin_: PGSequenceIter; end_: PGSequenceIter); cdecl; inline; static;
+ function new(data_destroy: TGDestroyNotify): PGSequence; cdecl; inline; static;
+ function range_get_midpoint(begin_: PGSequenceIter; end_: PGSequenceIter): PGSequenceIter; cdecl; inline; static;
+ procedure remove(iter: PGSequenceIter); cdecl; inline; static;
+ procedure remove_range(begin_: PGSequenceIter; end_: PGSequenceIter); cdecl; inline; static;
+ procedure set_(iter: PGSequenceIter; data: gpointer); cdecl; inline; static;
+ procedure sort_changed(iter: PGSequenceIter; cmp_func: TGCompareDataFunc; cmp_data: gpointer); cdecl; inline; static;
+ procedure sort_changed_iter(iter: PGSequenceIter; iter_cmp: TGSequenceIterCompareFunc; cmp_data: gpointer); cdecl; inline; static;
+ procedure swap(a: PGSequenceIter; b: PGSequenceIter); cdecl; inline; static;
+ end;
+
+
+ { TGShellError }
+ PPGShellError = ^PGShellError;
+ PGShellError = ^TGShellError;
+
+
+ { TGSliceConfig }
+ PPGSliceConfig = ^PGSliceConfig;
+ PGSliceConfig = ^TGSliceConfig;
+
+ TGSourceCallbackFuncs = record
+ ref: procedure(cb_data: gpointer); cdecl;
+ unref: procedure(cb_data: gpointer); cdecl;
+ get: procedure(cb_data: gpointer; source: PGSource; func: PGSourceFunc; data: Pgpointer); cdecl;
+ end;
+
+
+
+ TGSourcePrivate = record
+ end;
+
+
+ TGSpawnChildSetupFunc = procedure(user_data: gpointer); cdecl;
+
+
+ { TGSpawnError }
+ PPGSpawnError = ^PGSpawnError;
+ PGSpawnError = ^TGSpawnError;
+
+
+ { TGSpawnFlags }
+ PPGSpawnFlags = ^PGSpawnFlags;
+ PGSpawnFlags = ^TGSpawnFlags;
+
+
+ { TGStatBuf }
+ PPGStatBuf = ^PGStatBuf;
+ PGStatBuf = ^TGStatBuf;
+
+ TGStatBuf = record
+ end;
+
+
+
+
+ { TGStringChunk }
+ PPGStringChunk = ^PGStringChunk;
+ PGStringChunk = ^TGStringChunk;
+ TGStringChunk = object
+ procedure clear; cdecl; inline;
+ procedure free; cdecl; inline;
+ function insert(string_: Pgchar): Pgchar; cdecl; inline;
+ function insert_const(string_: Pgchar): Pgchar; cdecl; inline;
+ function insert_len(string_: Pgchar; len: gssize): Pgchar; cdecl; inline;
+ function new(size: gsize): PGStringChunk; cdecl; inline; static;
+ end;
+
+
+ { TGTestCase }
+ PPGTestCase = ^PGTestCase;
+ PGTestCase = ^TGTestCase;
+ TGTestCase = object
+ end;
+
+
+ { TGTestConfig }
+ PPGTestConfig = ^PGTestConfig;
+ PGTestConfig = ^TGTestConfig;
+
+ TGTestConfig = record
+ test_initialized: gboolean;
+ test_quick: gboolean;
+ test_perf: gboolean;
+ test_verbose: gboolean;
+ test_quiet: gboolean;
+ test_undefined: gboolean;
+ end;
+
+
+ TGTestDataFunc = procedure(user_data: Pgpointer); cdecl;
+
+
+ { TGTestFileType }
+ PPGTestFileType = ^PGTestFileType;
+ PGTestFileType = ^TGTestFileType;
+ TGTestFixtureFunc = procedure(fixture: gpointer; user_data: Pgpointer); cdecl;
+ TGTestFunc = procedure; cdecl;
+
+
+ { TGTestLogBuffer }
+ PPGTestLogBuffer = ^PGTestLogBuffer;
+ PGTestLogBuffer = ^TGTestLogBuffer;
+
+
+ { TGTestLogMsg }
+ PPGTestLogMsg = ^PGTestLogMsg;
+ PGTestLogMsg = ^TGTestLogMsg;
+ TGTestLogBuffer = object
+ data: PGString;
+ msgs: PGSList;
+ procedure free; cdecl; inline;
+ function pop: PGTestLogMsg; cdecl; inline;
+ procedure push(n_bytes: guint; bytes: Pguint8); cdecl; inline;
+ function new: PGTestLogBuffer; cdecl; inline; static;
+ end;
+
+
+ { TGTestLogType }
+ PPGTestLogType = ^PGTestLogType;
+ PGTestLogType = ^TGTestLogType;
+ TGTestLogMsg = object
+ log_type: TGTestLogType;
+ n_strings: guint;
+ strings: PPgchar;
+ n_nums: guint;
+ nums: Plong_double;
+ procedure free; cdecl; inline;
+ end;
+ TGTestLogFatalFunc = function(log_domain: Pgchar; log_level: TGLogLevelFlags; message: Pgchar; user_data: gpointer): gboolean; cdecl;
+
+
+ { TGTestResult }
+ PPGTestResult = ^PGTestResult;
+ PGTestResult = ^TGTestResult;
+
+
+ { TGTestSubprocessFlags }
+ PPGTestSubprocessFlags = ^PGTestSubprocessFlags;
+ PGTestSubprocessFlags = ^TGTestSubprocessFlags;
+
+
+ { TGTestSuite }
+ PPGTestSuite = ^PGTestSuite;
+ PGTestSuite = ^TGTestSuite;
+ TGTestSuite = object
+ procedure add(test_case: PGTestCase); cdecl; inline;
+ procedure add_suite(nestedsuite: PGTestSuite); cdecl; inline;
+ end;
+
+
+ { TGTestTrapFlags }
+ PPGTestTrapFlags = ^PGTestTrapFlags;
+ PGTestTrapFlags = ^TGTestTrapFlags;
+
+
+ { TGThread }
+ PPGThread = ^PGThread;
+ PGThread = ^TGThread;
+ TGThread = object
+ function new(name: Pgchar; func: TGThreadFunc; data: gpointer): PGThread; cdecl; inline; static;
+ function try_new(name: Pgchar; func: TGThreadFunc; data: gpointer; error: PPGError): PGThread; cdecl; inline; static;
+ function join: gpointer; cdecl; inline;
+ function ref: PGThread; cdecl; inline;
+ procedure unref; cdecl; inline;
+ function error_quark: TGQuark; cdecl; inline; static;
+ procedure exit(retval: gpointer); cdecl; inline; static;
+ function self: PGThread; cdecl; inline; static;
+ procedure yield; cdecl; inline; static;
+ end;
+
+
+ { TGThreadError }
+ PPGThreadError = ^PGThreadError;
+ PGThreadError = ^TGThreadError;
+
+
+ { TGThreadPool }
+ PPGThreadPool = ^PGThreadPool;
+ PGThreadPool = ^TGThreadPool;
+ TGThreadPool = object
+ func: TGFunc;
+ user_data: gpointer;
+ exclusive: gboolean;
+ procedure free(immediate: gboolean; wait_: gboolean); cdecl; inline;
+ function get_max_threads: gint; cdecl; inline;
+ function get_num_threads: guint; cdecl; inline;
+ function move_to_front(data: gpointer): gboolean; cdecl; inline;
+ function push(data: gpointer; error: PPGError): gboolean; cdecl; inline;
+ function set_max_threads(max_threads: gint; error: PPGError): gboolean; cdecl; inline;
+ procedure set_sort_function(func: TGCompareDataFunc; user_data: gpointer); cdecl; inline;
+ function unprocessed: guint; cdecl; inline;
+ function get_max_idle_time: guint; cdecl; inline; static;
+ function get_max_unused_threads: gint; cdecl; inline; static;
+ function get_num_unused_threads: guint; cdecl; inline; static;
+ function new(func: TGFunc; user_data: gpointer; max_threads: gint; exclusive: gboolean; error: PPGError): PGThreadPool; cdecl; inline; static;
+ procedure set_max_idle_time(interval: guint); cdecl; inline; static;
+ procedure set_max_unused_threads(max_threads: gint); cdecl; inline; static;
+ procedure stop_unused_threads; cdecl; inline; static;
+ end;
+
+
+ { TGTimer }
+ PPGTimer = ^PGTimer;
+ PGTimer = ^TGTimer;
+ TGTimer = object
+ procedure continue; cdecl; inline;
+ procedure destroy_; cdecl; inline;
+ function elapsed(microseconds: Pgulong): gdouble; cdecl; inline;
+ function is_active: gboolean; cdecl; inline;
+ procedure reset; cdecl; inline;
+ procedure start; cdecl; inline;
+ procedure stop; cdecl; inline;
+ function new: PGTimer; cdecl; inline; static;
+ end;
+
+
+ { TGTrashStack }
+ PPGTrashStack = ^PGTrashStack;
+ PGTrashStack = ^TGTrashStack;
+ TGTrashStack = object
+ next: PGTrashStack;
+ end;
+ TGTraverseFunc = function(key: gpointer; value: gpointer; user_data: gpointer): gboolean; cdecl;
+
+
+ { TGTree }
+ PPGTree = ^PGTree;
+ PGTree = ^TGTree;
+
+
+ { TGTraverseFunc }
+ PPGTraverseFunc = ^PGTraverseFunc;
+ PGTraverseFunc = ^TGTraverseFunc;
+ TGTree = object
+ function new(key_compare_func: TGCompareFunc): PGTree; cdecl; inline; static;
+ function new_full(key_compare_func: TGCompareDataFunc; key_compare_data: gpointer; key_destroy_func: TGDestroyNotify; value_destroy_func: TGDestroyNotify): PGTree; cdecl; inline; static;
+ function new_with_data(key_compare_func: TGCompareDataFunc; key_compare_data: gpointer): PGTree; cdecl; inline; static;
+ procedure destroy_; cdecl; inline;
+ procedure foreach(func: TGTraverseFunc; user_data: gpointer); cdecl; inline;
+ function height: gint; cdecl; inline;
+ procedure insert(key: gpointer; value: gpointer); cdecl; inline;
+ function lookup(key: Pgpointer): gpointer; cdecl; inline;
+ function lookup_extended(lookup_key: Pgpointer; orig_key: Pgpointer; value: Pgpointer): gboolean; cdecl; inline;
+ function nnodes: gint; cdecl; inline;
+ function ref: PGTree; cdecl; inline;
+ function remove(key: Pgpointer): gboolean; cdecl; inline;
+ procedure replace(key: gpointer; value: gpointer); cdecl; inline;
+ function search(search_func: TGCompareFunc; user_data: Pgpointer): gpointer; cdecl; inline;
+ function steal(key: Pgpointer): gboolean; cdecl; inline;
+ procedure unref; cdecl; inline;
+ end;
+
+
+ { TGUnicodeBreakType }
+ PPGUnicodeBreakType = ^PGUnicodeBreakType;
+ PGUnicodeBreakType = ^TGUnicodeBreakType;
+
+
+ { TGUnicodeScript }
+ PPGUnicodeScript = ^PGUnicodeScript;
+ PGUnicodeScript = ^TGUnicodeScript;
+
+
+ { TGUnicodeType }
+ PPGUnicodeType = ^PGUnicodeType;
+ PGUnicodeType = ^TGUnicodeType;
+ TGUnixFDSourceFunc = function(fd: gint; condition: TGIOCondition; user_data: gpointer): gboolean; cdecl;
+
+
+ { TGUri }
+ PPGUri = ^PGUri;
+ PGUri = ^TGUri;
+
+
+ { TGUriFlags }
+ PPGUriFlags = ^PGUriFlags;
+ PGUriFlags = ^TGUriFlags;
+
+
+ { TGUriHideFlags }
+ PPGUriHideFlags = ^PGUriHideFlags;
+ PGUriHideFlags = ^TGUriHideFlags;
+
+
+ { TGUriParamsFlags }
+ PPGUriParamsFlags = ^PGUriParamsFlags;
+ PGUriParamsFlags = ^TGUriParamsFlags;
+ TGUri = object
+ {$IFDEF USEGTK3LATESTBINDINGS}
+ function get_auth_params: Pgchar; cdecl; inline;
+ function get_flags: TGUriFlags; cdecl; inline;
+ function get_fragment: Pgchar; cdecl; inline;
+ function get_host: Pgchar; cdecl; inline;
+ function get_password: Pgchar; cdecl; inline;
+ function get_path: Pgchar; cdecl; inline;
+ function get_port: gint; cdecl; inline;
+ function get_query: Pgchar; cdecl; inline;
+ function get_scheme: Pgchar; cdecl; inline;
+ function get_user: Pgchar; cdecl; inline;
+ function get_userinfo: Pgchar; cdecl; inline;
+ function parse_relative(uri_ref: Pgchar; flags: TGUriFlags; error: PPGError): PGUri; cdecl; inline;
+ function ref: PGUri; cdecl; inline;
+ function to_string: Pgchar; cdecl; inline;
+ function to_string_partial(flags: TGUriHideFlags): Pgchar; cdecl; inline;
+ procedure unref; cdecl; inline;
+ function build(flags: TGUriFlags; scheme: Pgchar; userinfo: Pgchar; host: Pgchar; port: gint; path: Pgchar; query: Pgchar; fragment: Pgchar): PGUri; cdecl; inline; static;
+ function build_with_user(flags: TGUriFlags; scheme: Pgchar; user: Pgchar; password: Pgchar; auth_params: Pgchar; host: Pgchar; port: gint; path: Pgchar; query: Pgchar; fragment: Pgchar): PGUri; cdecl; inline; static;
+ function error_quark: TGQuark; cdecl; inline; static;
+ function escape_bytes(unescaped: Pguint8; length: gsize; reserved_chars_allowed: Pgchar): Pgchar; cdecl; inline; static;
+ {$ENDIF}
+ function escape_string(unescaped: Pgchar; reserved_chars_allowed: Pgchar; allow_utf8: gboolean): Pgchar; cdecl; inline; static;
+ {$IFDEF USEGTK3LATESTBINDINGS}
+ function is_valid(uri_string: Pgchar; flags: TGUriFlags; error: PPGError): gboolean; cdecl; inline; static;
+ function join(flags: TGUriFlags; scheme: Pgchar; userinfo: Pgchar; host: Pgchar; port: gint; path: Pgchar; query: Pgchar; fragment: Pgchar): Pgchar; cdecl; inline; static;
+ function join_with_user(flags: TGUriFlags; scheme: Pgchar; user: Pgchar; password: Pgchar; auth_params: Pgchar; host: Pgchar; port: gint; path: Pgchar; query: Pgchar; fragment: Pgchar): Pgchar; cdecl; inline; static;
+ {$ENDIF}
+ function list_extract_uris(uri_list: Pgchar): PPgchar; cdecl; inline; static;
+ {$IFDEF USEGTK3LATESTBINDINGS}
+ function parse(uri_string: Pgchar; flags: TGUriFlags; error: PPGError): PGUri; cdecl; inline; static;
+ function parse_params(params: Pgchar; length: gssize; separators: Pgchar; flags: TGUriParamsFlags; error: PPGError): PGHashTable; cdecl; inline; static;
+ {$ENDIF}
+ function parse_scheme(uri: Pgchar): Pgchar; cdecl; inline; static;
+ {$IFDEF USEGTK3LATESTBINDINGS}
+ function peek_scheme(uri: Pgchar): Pgchar; cdecl; inline; static;
+ function resolve_relative(base_uri_string: Pgchar; uri_ref: Pgchar; flags: TGUriFlags; error: PPGError): Pgchar; cdecl; inline; static;
+ function split(uri_ref: Pgchar; flags: TGUriFlags; scheme: PPgchar; userinfo: PPgchar; host: PPgchar; port: Pgint; path: PPgchar; query: PPgchar; fragment: PPgchar; error: PPGError): gboolean; cdecl; inline; static;
+ function split_network(uri_string: Pgchar; flags: TGUriFlags; scheme: PPgchar; host: PPgchar; port: Pgint; error: PPGError): gboolean; cdecl; inline; static;
+ function split_with_user(uri_ref: Pgchar; flags: TGUriFlags; scheme: PPgchar; user: PPgchar; password: PPgchar; auth_params: PPgchar; host: PPgchar; port: Pgint; path: PPgchar; query: PPgchar; fragment: PPgchar; error: PPGError): gboolean; cdecl; inline; static;
+ function unescape_bytes(escaped_string: Pgchar; length: gssize; illegal_characters: Pgchar; error: PPGError): PGBytes; cdecl; inline; static;
+ {$ENDIF}
+ function unescape_segment(escaped_string: Pgchar; escaped_string_end: Pgchar; illegal_characters: Pgchar): Pgchar; cdecl; inline; static;
+ function unescape_string(escaped_string: Pgchar; illegal_characters: Pgchar): Pgchar; cdecl; inline; static;
+ end;
+
+
+ { TGUriError }
+ PPGUriError = ^PGUriError;
+ PGUriError = ^TGUriError;
+
+
+ { TGUriParamsIter }
+ PPGUriParamsIter = ^PGUriParamsIter;
+ PGUriParamsIter = ^TGUriParamsIter;
+ TGUriParamsIter = object
+ dummy0: gint;
+ dummy1: gpointer;
+ dummy2: gpointer;
+ dummy3: array [0..255] of guint8;
+ {$IFDEF USEGTK3LATESTBINDINGS}
+ procedure init(params: Pgchar; length: gssize; separators: Pgchar; flags: TGUriParamsFlags); cdecl; inline;
+ function next(attribute: PPgchar; value: PPgchar; error: PPGError): gboolean; cdecl; inline;
+ {$ENDIF}
+ end;
+
+
+ { TGUserDirectory }
+ PPGUserDirectory = ^PGUserDirectory;
+ PGUserDirectory = ^TGUserDirectory;
+
+
+ { TGVariant }
+ PPPGVariant = ^PPGVariant;
+ PPGVariant = ^PGVariant;
+ PGVariant = ^TGVariant;
+
+
+ { TGVariantType }
+ PPGVariantType = ^PGVariantType;
+ PGVariantType = ^TGVariantType;
+
+
+ { TGVariantClass }
+ PPGVariantClass = ^PGVariantClass;
+ PGVariantClass = ^TGVariantClass;
+
+
+ { TGVariantIter }
+ PPGVariantIter = ^PGVariantIter;
+ PGVariantIter = ^TGVariantIter;
+ TGVariant = object
+ //function new(format_string: Pgchar; args: array of const): PGVariant; cdecl; inline; static;
+ function new_array(child_type: PGVariantType; children: PPGVariant; n_children: gsize): PGVariant; cdecl; inline; static;
+ function new_boolean(value: gboolean): PGVariant; cdecl; inline; static;
+ function new_byte(value: guint8): PGVariant; cdecl; inline; static;
+ function new_bytestring(string_: Pgchar): PGVariant; cdecl; inline; static;
+ function new_bytestring_array(strv: PPgchar; length: gssize): PGVariant; cdecl; inline; static;
+ function new_dict_entry(key: PGVariant; value: PGVariant): PGVariant; cdecl; inline; static;
+ function new_double(value: gdouble): PGVariant; cdecl; inline; static;
+ function new_fixed_array(element_type: PGVariantType; elements: Pgpointer; n_elements: gsize; element_size: gsize): PGVariant; cdecl; inline; static;
+ function new_from_bytes(type_: PGVariantType; bytes: PGBytes; trusted: gboolean): PGVariant; cdecl; inline; static;
+ function new_from_data(type_: PGVariantType; data: guint8; size: gsize; trusted: gboolean; notify: TGDestroyNotify; user_data: gpointer): PGVariant; cdecl; inline; static;
+ function new_handle(value: gint32): PGVariant; cdecl; inline; static;
+ function new_int16(value: gint16): PGVariant; cdecl; inline; static;
+ function new_int32(value: gint32): PGVariant; cdecl; inline; static;
+ function new_int64(value: gint64): PGVariant; cdecl; inline; static;
+ function new_maybe(child_type: PGVariantType; child: PGVariant): PGVariant; cdecl; inline; static;
+ function new_object_path(object_path: Pgchar): PGVariant; cdecl; inline; static;
+ function new_objv(strv: PPgchar; length: gssize): PGVariant; cdecl; inline; static;
+ //function new_parsed(format: Pgchar; args: array of const): PGVariant; cdecl; inline; static;
+ //function new_parsed_va(format: Pgchar; app: Pva_list): PGVariant; cdecl; inline; static;
+ //function new_printf(format_string: Pgchar; args: array of const): PGVariant; cdecl; inline; static;
+ function new_signature(signature: Pgchar): PGVariant; cdecl; inline; static;
+ function new_string(string_: Pgchar): PGVariant; cdecl; inline; static;
+ function new_strv(strv: PPgchar; length: gssize): PGVariant; cdecl; inline; static;
+ function new_take_string(string_: Pgchar): PGVariant; cdecl; inline; static;
+ function new_tuple(children: PPGVariant; n_children: gsize): PGVariant; cdecl; inline; static;
+ function new_uint16(value: guint16): PGVariant; cdecl; inline; static;
+ function new_uint32(value: guint32): PGVariant; cdecl; inline; static;
+ function new_uint64(value: guint64): PGVariant; cdecl; inline; static;
+ //function new_va(format_string: Pgchar; endptr: PPgchar; app: Pva_list): PGVariant; cdecl; inline; static;
+ function new_variant(value: PGVariant): PGVariant; cdecl; inline; static;
+ function byteswap: PGVariant; cdecl; inline;
+ function check_format_string(format_string: Pgchar; copy_only: gboolean): gboolean; cdecl; inline;
+ function classify: TGVariantClass; cdecl; inline;
+ function compare(two: PGVariant): gint; cdecl; inline;
+ function dup_bytestring(length: Pgsize): Pgchar; cdecl; inline;
+ function dup_bytestring_array(length: Pgsize): PPgchar; cdecl; inline;
+ function dup_objv(length: Pgsize): PPgchar; cdecl; inline;
+ function dup_string(length: Pgsize): Pgchar; cdecl; inline;
+ function dup_strv(length: Pgsize): PPgchar; cdecl; inline;
+ function equal(two: PGVariant): gboolean; cdecl; inline;
+ //procedure get(format_string: Pgchar; args: array of const); cdecl; inline;
+ function get_boolean: gboolean; cdecl; inline;
+ function get_byte: guint8; cdecl; inline;
+ function get_bytestring: Pgchar; cdecl; inline;
+ function get_bytestring_array(length: Pgsize): PPgchar; cdecl; inline;
+ //procedure get_child(index_: gsize; format_string: Pgchar; args: array of const); cdecl; inline;
+ function get_child_value(index_: gsize): PGVariant; cdecl; inline;
+ function get_data: Pgpointer; cdecl; inline;
+ function get_data_as_bytes: PGBytes; cdecl; inline;
+ function get_double: gdouble; cdecl; inline;
+ function get_fixed_array(n_elements: Pgsize; element_size: gsize): gpointer; cdecl; inline;
+ function get_handle: gint32; cdecl; inline;
+ function get_int16: gint16; cdecl; inline;
+ function get_int32: gint32; cdecl; inline;
+ function get_int64: gint64; cdecl; inline;
+ function get_maybe: PGVariant; cdecl; inline;
+ function get_normal_form: PGVariant; cdecl; inline;
+ function get_objv(length: Pgsize): PPgchar; cdecl; inline;
+ function get_size: gsize; cdecl; inline;
+ function get_string(length: Pgsize): Pgchar; cdecl; inline;
+ function get_strv(length: Pgsize): PPgchar; cdecl; inline;
+ function get_type: PGVariantType; cdecl; inline;
+ function get_type_string: Pgchar; cdecl; inline;
+ function get_uint16: guint16; cdecl; inline;
+ function get_uint32: guint32; cdecl; inline;
+ function get_uint64: guint64; cdecl; inline;
+ //procedure get_va(format_string: Pgchar; endptr: PPgchar; app: Pva_list); cdecl; inline;
+ function get_variant: PGVariant; cdecl; inline;
+ function hash: guint; cdecl; inline;
+ function is_container: gboolean; cdecl; inline;
+ function is_floating: gboolean; cdecl; inline;
+ function is_normal_form: gboolean; cdecl; inline;
+ function is_of_type(type_: PGVariantType): gboolean; cdecl; inline;
+ function iter_new: PGVariantIter; cdecl; inline;
+ //function lookup(key: Pgchar; format_string: Pgchar; args: array of const): gboolean; cdecl; inline;
+ function lookup_value(key: Pgchar; expected_type: PGVariantType): PGVariant; cdecl; inline;
+ function n_children: gsize; cdecl; inline;
+ function print(type_annotate: gboolean): Pgchar; cdecl; inline;
+ function print_string(string_: PGString; type_annotate: gboolean): PGString; cdecl; inline;
+ function ref: PGVariant; cdecl; inline;
+ function ref_sink: PGVariant; cdecl; inline;
+ procedure store(data: gpointer); cdecl; inline;
+ function take_ref: PGVariant; cdecl; inline;
+ procedure unref; cdecl; inline;
+ function is_object_path(string_: Pgchar): gboolean; cdecl; inline; static;
+ function is_signature(string_: Pgchar): gboolean; cdecl; inline; static;
+ function parse(type_: PGVariantType; text: Pgchar; limit: Pgchar; endptr: PPgchar; error: PPGError): PGVariant; cdecl; inline; static;
+ function parse_error_print_context(error: PGError; source_str: Pgchar): Pgchar; cdecl; inline; static;
+ function parse_error_quark: TGQuark; cdecl; inline; static;
+ end;
+ TGVariantType = object
+ function new(type_string: Pgchar): PGVariantType; cdecl; inline; static;
+ function new_array(element: PGVariantType): PGVariantType; cdecl; inline; static;
+ function new_dict_entry(key: PGVariantType; value: PGVariantType): PGVariantType; cdecl; inline; static;
+ function new_maybe(element: PGVariantType): PGVariantType; cdecl; inline; static;
+ function new_tuple(items: PPGVariantType; length: gint): PGVariantType; cdecl; inline; static;
+ function copy: PGVariantType; cdecl; inline;
+ function dup_string: Pgchar; cdecl; inline;
+ function element: PGVariantType; cdecl; inline;
+ function equal(type2: PGVariantType): gboolean; cdecl; inline;
+ function first: PGVariantType; cdecl; inline;
+ procedure free; cdecl; inline;
+ function get_string_length: gsize; cdecl; inline;
+ function hash: guint; cdecl; inline;
+ function is_array: gboolean; cdecl; inline;
+ function is_basic: gboolean; cdecl; inline;
+ function is_container: gboolean; cdecl; inline;
+ function is_definite: gboolean; cdecl; inline;
+ function is_dict_entry: gboolean; cdecl; inline;
+ function is_maybe: gboolean; cdecl; inline;
+ function is_subtype_of(supertype: PGVariantType): gboolean; cdecl; inline;
+ function is_tuple: gboolean; cdecl; inline;
+ function is_variant: gboolean; cdecl; inline;
+ function key: PGVariantType; cdecl; inline;
+ function n_items: gsize; cdecl; inline;
+ function next: PGVariantType; cdecl; inline;
+ function peek_string: Pgchar; cdecl; inline;
+ function value: PGVariantType; cdecl; inline;
+ function checked_(arg0: Pgchar): PGVariantType; cdecl; inline; static;
+ function string_get_depth_(type_string: Pgchar): gsize; cdecl; inline; static;
+ function string_is_valid(type_string: Pgchar): gboolean; cdecl; inline; static;
+ function string_scan(string_: Pgchar; limit: Pgchar; endptr: PPgchar): gboolean; cdecl; inline; static;
+ end;
+ TGVariantIter = object
+ x: array [0..15] of gsize;
+ function copy: PGVariantIter; cdecl; inline;
+ procedure free; cdecl; inline;
+ function init(value: PGVariant): gsize; cdecl; inline;
+ //function loop(format_string: Pgchar; args: array of const): gboolean; cdecl; inline;
+ function n_children: gsize; cdecl; inline;
+ //function next(format_string: Pgchar; args: array of const): gboolean; cdecl; inline;
+ function next_value: PGVariant; cdecl; inline;
+ end;
+
+
+ { TGVariantBuilder }
+ PPGVariantBuilder = ^PGVariantBuilder;
+ PGVariantBuilder = ^TGVariantBuilder;
+
+
+ { TGVariantBuilder_union_u }
+ PPGVariantBuilder_union_u = ^PGVariantBuilder_union_u;
+ PGVariantBuilder_union_u = ^TGVariantBuilder_union_u;
+ TGVariantBuilder_union_u = record
+ case longint of
+ 0 : (
+ s : record
+ partial_magic: gsize;
+ type_: PGVariantType;
+ y: array [0..13] of gsize;
+ end;
+
+);
+ 1 : (x: array [0..15] of gsize);
+ end;
+
+
+ TGVariantBuilder = object
+ u: TGVariantBuilder_union_u; //union extracted from object and named 'TGVariantBuilder_union_u'
+ function new(type_: PGVariantType): PGVariantBuilder; cdecl; inline; static;
+ //procedure add(format_string: Pgchar; args: array of const); cdecl; inline;
+ //procedure add_parsed(format: Pgchar; args: array of const); cdecl; inline;
+ procedure add_value(value: PGVariant); cdecl; inline;
+ procedure clear; cdecl; inline;
+ procedure close; cdecl; inline;
+ function end_: PGVariant; cdecl; inline;
+ procedure init(type_: PGVariantType); cdecl; inline;
+ procedure open(type_: PGVariantType); cdecl; inline;
+ function ref: PGVariantBuilder; cdecl; inline;
+ procedure unref; cdecl; inline;
+ end;
+
+
+ { TGVariantDict }
+ PPGVariantDict = ^PGVariantDict;
+ PGVariantDict = ^TGVariantDict;
+
+
+ { TGVariantDict_union_u }
+ PPGVariantDict_union_u = ^PGVariantDict_union_u;
+ PGVariantDict_union_u = ^TGVariantDict_union_u;
+ TGVariantDict_union_u = record
+ case longint of
+ 0 : (
+ s : record
+ asv: PGVariant;
+ partial_magic: gsize;
+ y: array [0..13] of gsize;
+ end;
+
+);
+ 1 : (x: array [0..15] of gsize);
+ end;
+
+
+ TGVariantDict = object
+ u: TGVariantDict_union_u; //union extracted from object and named 'TGVariantDict_union_u'
+ function new(from_asv: PGVariant): PGVariantDict; cdecl; inline; static;
+ procedure clear; cdecl; inline;
+ function contains(key: Pgchar): gboolean; cdecl; inline;
+ function end_: PGVariant; cdecl; inline;
+ procedure init(from_asv: PGVariant); cdecl; inline;
+ //procedure insert(key: Pgchar; format_string: Pgchar; args: array of const); cdecl; inline;
+ procedure insert_value(key: Pgchar; value: PGVariant); cdecl; inline;
+ //function lookup(key: Pgchar; format_string: Pgchar; args: array of const): gboolean; cdecl; inline;
+ function lookup_value(key: Pgchar; expected_type: PGVariantType): PGVariant; cdecl; inline;
+ function ref: PGVariantDict; cdecl; inline;
+ function remove(key: Pgchar): gboolean; cdecl; inline;
+ procedure unref; cdecl; inline;
+ end;
+
+
+ { TGVariantParseError }
+ PPGVariantParseError = ^PGVariantParseError;
+ PGVariantParseError = ^TGVariantParseError;
+ TGVoidFunc = procedure; cdecl;
+
+function g_access(filename: Pgchar; mode: gint): gint; cdecl; external LazGLib2_library name 'g_access';
+function g_array_append_vals(array_: Pgpointer; data: Pgpointer; len: guint): Pgpointer; cdecl; external LazGLib2_library name 'g_array_append_vals';
+function g_array_binary_search(array_: Pgpointer; target: Pgpointer; compare_func: TGCompareFunc; out_match_index: Pguint): gboolean; cdecl; external LazGLib2_library name 'g_array_binary_search';
+function g_array_copy(array_: Pgpointer): Pgpointer; cdecl; external LazGLib2_library name 'g_array_copy';
+function g_array_free(array_: Pgpointer; free_segment: gboolean): Pgchar; cdecl; external LazGLib2_library name 'g_array_free';
+function g_array_get_element_size(array_: Pgpointer): guint; cdecl; external LazGLib2_library name 'g_array_get_element_size';
+function g_array_get_type: TGType; cdecl; external LazGLib2_library name 'g_array_get_type';
+function g_array_insert_vals(array_: Pgpointer; index_: guint; data: Pgpointer; len: guint): Pgpointer; cdecl; external LazGLib2_library name 'g_array_insert_vals';
+function g_array_new(zero_terminated: gboolean; clear_: gboolean; element_size: guint): Pgpointer; cdecl; external LazGLib2_library name 'g_array_new';
+function g_array_prepend_vals(array_: Pgpointer; data: Pgpointer; len: guint): Pgpointer; cdecl; external LazGLib2_library name 'g_array_prepend_vals';
+function g_array_ref(array_: Pgpointer): Pgpointer; cdecl; external LazGLib2_library name 'g_array_ref';
+function g_array_remove_index(array_: Pgpointer; index_: guint): Pgpointer; cdecl; external LazGLib2_library name 'g_array_remove_index';
+function g_array_remove_index_fast(array_: Pgpointer; index_: guint): Pgpointer; cdecl; external LazGLib2_library name 'g_array_remove_index_fast';
+function g_array_remove_range(array_: Pgpointer; index_: guint; length: guint): Pgpointer; cdecl; external LazGLib2_library name 'g_array_remove_range';
+function g_array_set_size(array_: Pgpointer; length: guint): Pgpointer; cdecl; external LazGLib2_library name 'g_array_set_size';
+function g_array_sized_new(zero_terminated: gboolean; clear_: gboolean; element_size: guint; reserved_size: guint): Pgpointer; cdecl; external LazGLib2_library name 'g_array_sized_new';
+function g_array_steal(array_: Pgpointer; len: Pgsize): gpointer; cdecl; external LazGLib2_library name 'g_array_steal';
+function g_ascii_digit_value(c: gchar): gint; cdecl; external LazGLib2_library name 'g_ascii_digit_value';
+function g_ascii_dtostr(buffer: Pgchar; buf_len: gint; d: gdouble): Pgchar; cdecl; external LazGLib2_library name 'g_ascii_dtostr';
+function g_ascii_formatd(buffer: Pgchar; buf_len: gint; format: Pgchar; d: gdouble): Pgchar; cdecl; external LazGLib2_library name 'g_ascii_formatd';
+function g_ascii_strcasecmp(s1: Pgchar; s2: Pgchar): gint; cdecl; external LazGLib2_library name 'g_ascii_strcasecmp';
+function g_ascii_strdown(str: Pgchar; len: gssize): Pgchar; cdecl; external LazGLib2_library name 'g_ascii_strdown';
+function g_ascii_string_to_signed(str: Pgchar; base: guint; min: gint64; max: gint64; out_num: Pgint64; error: PPGError): gboolean; cdecl; external LazGLib2_library name 'g_ascii_string_to_signed';
+function g_ascii_string_to_unsigned(str: Pgchar; base: guint; min: guint64; max: guint64; out_num: Pguint64; error: PPGError): gboolean; cdecl; external LazGLib2_library name 'g_ascii_string_to_unsigned';
+function g_ascii_strncasecmp(s1: Pgchar; s2: Pgchar; n: gsize): gint; cdecl; external LazGLib2_library name 'g_ascii_strncasecmp';
+function g_ascii_strtod(nptr: Pgchar; endptr: PPgchar): gdouble; cdecl; external LazGLib2_library name 'g_ascii_strtod';
+function g_ascii_strtoll(nptr: Pgchar; endptr: PPgchar; base: guint): gint64; cdecl; external LazGLib2_library name 'g_ascii_strtoll';
+function g_ascii_strtoull(nptr: Pgchar; endptr: PPgchar; base: guint): guint64; cdecl; external LazGLib2_library name 'g_ascii_strtoull';
+function g_ascii_strup(str: Pgchar; len: gssize): Pgchar; cdecl; external LazGLib2_library name 'g_ascii_strup';
+function g_ascii_tolower(c: gchar): gchar; cdecl; external LazGLib2_library name 'g_ascii_tolower';
+function g_ascii_toupper(c: gchar): gchar; cdecl; external LazGLib2_library name 'g_ascii_toupper';
+function g_ascii_xdigit_value(c: gchar): gint; cdecl; external LazGLib2_library name 'g_ascii_xdigit_value';
+function g_async_queue_length(queue: PGAsyncQueue): gint; cdecl; external LazGLib2_library name 'g_async_queue_length';
+function g_async_queue_length_unlocked(queue: PGAsyncQueue): gint; cdecl; external LazGLib2_library name 'g_async_queue_length_unlocked';
+function g_async_queue_new: PGAsyncQueue; cdecl; external LazGLib2_library name 'g_async_queue_new';
+function g_async_queue_new_full(item_free_func: TGDestroyNotify): PGAsyncQueue; cdecl; external LazGLib2_library name 'g_async_queue_new_full';
+function g_async_queue_pop(queue: PGAsyncQueue): gpointer; cdecl; external LazGLib2_library name 'g_async_queue_pop';
+function g_async_queue_pop_unlocked(queue: PGAsyncQueue): gpointer; cdecl; external LazGLib2_library name 'g_async_queue_pop_unlocked';
+function g_async_queue_ref(queue: PGAsyncQueue): PGAsyncQueue; cdecl; external LazGLib2_library name 'g_async_queue_ref';
+function g_async_queue_remove(queue: PGAsyncQueue; item: gpointer): gboolean; cdecl; external LazGLib2_library name 'g_async_queue_remove';
+function g_async_queue_remove_unlocked(queue: PGAsyncQueue; item: gpointer): gboolean; cdecl; external LazGLib2_library name 'g_async_queue_remove_unlocked';
+function g_async_queue_timeout_pop(queue: PGAsyncQueue; timeout: guint64): gpointer; cdecl; external LazGLib2_library name 'g_async_queue_timeout_pop';
+function g_async_queue_timeout_pop_unlocked(queue: PGAsyncQueue; timeout: guint64): gpointer; cdecl; external LazGLib2_library name 'g_async_queue_timeout_pop_unlocked';
+function g_async_queue_try_pop(queue: PGAsyncQueue): gpointer; cdecl; external LazGLib2_library name 'g_async_queue_try_pop';
+function g_async_queue_try_pop_unlocked(queue: PGAsyncQueue): gpointer; cdecl; external LazGLib2_library name 'g_async_queue_try_pop_unlocked';
+function g_atomic_int_add(atomic: Pgint; val: gint): gint; cdecl; external LazGLib2_library name 'g_atomic_int_add';
+function g_atomic_int_and(atomic: Pguint; val: guint): guint; cdecl; external LazGLib2_library name 'g_atomic_int_and';
+function g_atomic_int_compare_and_exchange(atomic: Pgint; oldval: gint; newval: gint): gboolean; cdecl; external LazGLib2_library name 'g_atomic_int_compare_and_exchange';
+function g_atomic_int_dec_and_test(atomic: Pgint): gboolean; cdecl; external LazGLib2_library name 'g_atomic_int_dec_and_test';
+function g_atomic_int_get(atomic: Pgint): gint; cdecl; external LazGLib2_library name 'g_atomic_int_get';
+function g_atomic_int_or(atomic: Pguint; val: guint): guint; cdecl; external LazGLib2_library name 'g_atomic_int_or';
+function g_atomic_int_xor(atomic: Pguint; val: guint): guint; cdecl; external LazGLib2_library name 'g_atomic_int_xor';
+function g_atomic_pointer_add(atomic: Pgpointer; val: gssize): gssize; cdecl; external LazGLib2_library name 'g_atomic_pointer_add';
+function g_atomic_pointer_and(atomic: Pgpointer; val: gsize): gsize; cdecl; external LazGLib2_library name 'g_atomic_pointer_and';
+function g_atomic_pointer_compare_and_exchange(atomic: Pgpointer; oldval: gpointer; newval: gpointer): gboolean; cdecl; external LazGLib2_library name 'g_atomic_pointer_compare_and_exchange';
+function g_atomic_pointer_get(atomic: Pgpointer): gpointer; cdecl; external LazGLib2_library name 'g_atomic_pointer_get';
+function g_atomic_pointer_or(atomic: Pgpointer; val: gsize): gsize; cdecl; external LazGLib2_library name 'g_atomic_pointer_or';
+function g_atomic_pointer_xor(atomic: Pgpointer; val: gsize): gsize; cdecl; external LazGLib2_library name 'g_atomic_pointer_xor';
+function g_atomic_rc_box_acquire(mem_block: gpointer): gpointer; cdecl; external LazGLib2_library name 'g_atomic_rc_box_acquire';
+function g_atomic_rc_box_alloc(block_size: gsize): gpointer; cdecl; external LazGLib2_library name 'g_atomic_rc_box_alloc';
+function g_atomic_rc_box_alloc0(block_size: gsize): gpointer; cdecl; external LazGLib2_library name 'g_atomic_rc_box_alloc0';
+function g_atomic_rc_box_dup(block_size: gsize; mem_block: Pgpointer): gpointer; cdecl; external LazGLib2_library name 'g_atomic_rc_box_dup';
+function g_atomic_rc_box_get_size(mem_block: gpointer): gsize; cdecl; external LazGLib2_library name 'g_atomic_rc_box_get_size';
+function g_atomic_ref_count_compare(arc: Pgint; val: gint): gboolean; cdecl; external LazGLib2_library name 'g_atomic_ref_count_compare';
+function g_atomic_ref_count_dec(arc: Pgint): gboolean; cdecl; external LazGLib2_library name 'g_atomic_ref_count_dec';
+function g_base64_decode(text: Pgchar; out_len: Pgsize): Pguint8; cdecl; external LazGLib2_library name 'g_base64_decode';
+function g_base64_decode_inplace(text: Pgchar; out_len: Pgsize): Pguint8; cdecl; external LazGLib2_library name 'g_base64_decode_inplace';
+function g_base64_decode_step(in_: Pgchar; len: gsize; out_: Pguint8; state: Pgint; save: Pguint): gsize; cdecl; external LazGLib2_library name 'g_base64_decode_step';
+function g_base64_encode(data: Pguint8; len: gsize): Pgchar; cdecl; external LazGLib2_library name 'g_base64_encode';
+function g_base64_encode_close(break_lines: gboolean; out_: Pgchar; state: Pgint; save: Pgint): gsize; cdecl; external LazGLib2_library name 'g_base64_encode_close';
+function g_base64_encode_step(in_: Pguint8; len: gsize; break_lines: gboolean; out_: Pgchar; state: Pgint; save: Pgint): gsize; cdecl; external LazGLib2_library name 'g_base64_encode_step';
+function g_bit_nth_lsf(mask: gulong; nth_bit: gint): gint; cdecl; external LazGLib2_library name 'g_bit_nth_lsf';
+function g_bit_nth_msf(mask: gulong; nth_bit: gint): gint; cdecl; external LazGLib2_library name 'g_bit_nth_msf';
+function g_bit_storage(number: gulong): guint; cdecl; external LazGLib2_library name 'g_bit_storage';
+function g_bit_trylock(address: Pgint; lock_bit: gint): gboolean; cdecl; external LazGLib2_library name 'g_bit_trylock';
+function g_bookmark_file_error_quark: TGQuark; cdecl; external LazGLib2_library name 'g_bookmark_file_error_quark';
+{$IFDEF USEGTK3LATESTBINDINGS}
+function g_bookmark_file_get_added(bookmark: PGBookmarkFile; uri: Pgchar; error: PPGError): glong; cdecl; external LazGLib2_library name 'g_bookmark_file_get_added'; deprecated 'Use g_bookmark_file_get_added_date_time() instead, as `time_t` is deprecated due to the year 2038 problem.';
+function g_bookmark_file_get_added_date_time(bookmark: PGBookmarkFile; uri: Pgchar; error: PPGError): PGDateTime; cdecl; external LazGLib2_library name 'g_bookmark_file_get_added_date_time';
+function g_bookmark_file_get_app_info(bookmark: PGBookmarkFile; uri: Pgchar; name: Pgchar; exec: PPgchar; count: Pguint; stamp: Pglong; error: PPGError): gboolean; cdecl; external LazGLib2_library name 'g_bookmark_file_get_app_info'; deprecated 'Use g_bookmark_file_get_application_info() instead, as `time_t` is deprecated due to the year 2038 problem.';
+function g_bookmark_file_get_application_info(bookmark: PGBookmarkFile; uri: Pgchar; name: Pgchar; exec: PPgchar; count: Pguint; stamp: PPGDateTime; error: PPGError): gboolean; cdecl; external LazGLib2_library name 'g_bookmark_file_get_application_info';
+{$ENDIF}
+function g_bookmark_file_get_applications(bookmark: PGBookmarkFile; uri: Pgchar; length: Pgsize; error: PPGError): PPgchar; cdecl; external LazGLib2_library name 'g_bookmark_file_get_applications';
+function g_bookmark_file_get_description(bookmark: PGBookmarkFile; uri: Pgchar; error: PPGError): Pgchar; cdecl; external LazGLib2_library name 'g_bookmark_file_get_description';
+function g_bookmark_file_get_groups(bookmark: PGBookmarkFile; uri: Pgchar; length: Pgsize; error: PPGError): PPgchar; cdecl; external LazGLib2_library name 'g_bookmark_file_get_groups';
+function g_bookmark_file_get_icon(bookmark: PGBookmarkFile; uri: Pgchar; href: PPgchar; mime_type: PPgchar; error: PPGError): gboolean; cdecl; external LazGLib2_library name 'g_bookmark_file_get_icon';
+function g_bookmark_file_get_is_private(bookmark: PGBookmarkFile; uri: Pgchar; error: PPGError): gboolean; cdecl; external LazGLib2_library name 'g_bookmark_file_get_is_private';
+function g_bookmark_file_get_mime_type(bookmark: PGBookmarkFile; uri: Pgchar; error: PPGError): Pgchar; cdecl; external LazGLib2_library name 'g_bookmark_file_get_mime_type';
+{$IFDEF USEGTK3LATESTBINDINGS}
+function g_bookmark_file_get_modified(bookmark: PGBookmarkFile; uri: Pgchar; error: PPGError): glong; cdecl; external LazGLib2_library name 'g_bookmark_file_get_modified'; deprecated 'Use g_bookmark_file_get_modified_date_time() instead, as `time_t` is deprecated due to the year 2038 problem.';
+function g_bookmark_file_get_modified_date_time(bookmark: PGBookmarkFile; uri: Pgchar; error: PPGError): PGDateTime; cdecl; external LazGLib2_library name 'g_bookmark_file_get_modified_date_time';
+{$ENDIF}
+function g_bookmark_file_get_size(bookmark: PGBookmarkFile): gint; cdecl; external LazGLib2_library name 'g_bookmark_file_get_size';
+function g_bookmark_file_get_title(bookmark: PGBookmarkFile; uri: Pgchar; error: PPGError): Pgchar; cdecl; external LazGLib2_library name 'g_bookmark_file_get_title';
+function g_bookmark_file_get_uris(bookmark: PGBookmarkFile; length: Pgsize): PPgchar; cdecl; external LazGLib2_library name 'g_bookmark_file_get_uris';
+function g_bookmark_file_get_visited(bookmark: PGBookmarkFile; uri: Pgchar; error: PPGError): glong; cdecl; external LazGLib2_library name 'g_bookmark_file_get_visited'; deprecated 'Use g_bookmark_file_get_visited_date_time() instead, as `time_t` is deprecated due to the year 2038 problem.';
+{$IFDEF USEGTK3LATESTBINDINGS}
+function g_bookmark_file_get_visited_date_time(bookmark: PGBookmarkFile; uri: Pgchar; error: PPGError): PGDateTime; cdecl; external LazGLib2_library name 'g_bookmark_file_get_visited_date_time';
+{$ENDIF}
+function g_bookmark_file_has_application(bookmark: PGBookmarkFile; uri: Pgchar; name: Pgchar; error: PPGError): gboolean; cdecl; external LazGLib2_library name 'g_bookmark_file_has_application';
+function g_bookmark_file_has_group(bookmark: PGBookmarkFile; uri: Pgchar; group: Pgchar; error: PPGError): gboolean; cdecl; external LazGLib2_library name 'g_bookmark_file_has_group';
+function g_bookmark_file_has_item(bookmark: PGBookmarkFile; uri: Pgchar): gboolean; cdecl; external LazGLib2_library name 'g_bookmark_file_has_item';
+function g_bookmark_file_load_from_data(bookmark: PGBookmarkFile; data: Pgchar; length: gsize; error: PPGError): gboolean; cdecl; external LazGLib2_library name 'g_bookmark_file_load_from_data';
+function g_bookmark_file_load_from_data_dirs(bookmark: PGBookmarkFile; file_: Pgchar; full_path: PPgchar; error: PPGError): gboolean; cdecl; external LazGLib2_library name 'g_bookmark_file_load_from_data_dirs';
+function g_bookmark_file_load_from_file(bookmark: PGBookmarkFile; filename: Pgchar; error: PPGError): gboolean; cdecl; external LazGLib2_library name 'g_bookmark_file_load_from_file';
+function g_bookmark_file_move_item(bookmark: PGBookmarkFile; old_uri: Pgchar; new_uri: Pgchar; error: PPGError): gboolean; cdecl; external LazGLib2_library name 'g_bookmark_file_move_item';
+function g_bookmark_file_new: PGBookmarkFile; cdecl; external LazGLib2_library name 'g_bookmark_file_new';
+function g_bookmark_file_remove_application(bookmark: PGBookmarkFile; uri: Pgchar; name: Pgchar; error: PPGError): gboolean; cdecl; external LazGLib2_library name 'g_bookmark_file_remove_application';
+function g_bookmark_file_remove_group(bookmark: PGBookmarkFile; uri: Pgchar; group: Pgchar; error: PPGError): gboolean; cdecl; external LazGLib2_library name 'g_bookmark_file_remove_group';
+function g_bookmark_file_remove_item(bookmark: PGBookmarkFile; uri: Pgchar; error: PPGError): gboolean; cdecl; external LazGLib2_library name 'g_bookmark_file_remove_item';
+function g_bookmark_file_set_app_info(bookmark: PGBookmarkFile; uri: Pgchar; name: Pgchar; exec: Pgchar; count: gint; stamp: glong; error: PPGError): gboolean; cdecl; external LazGLib2_library name 'g_bookmark_file_set_app_info'; deprecated 'Use g_bookmark_file_set_application_info() instead, as `time_t` is deprecated due to the year 2038 problem.';
+{$IFDEF USEGTK3LATESTBINDINGS}
+function g_bookmark_file_set_application_info(bookmark: PGBookmarkFile; uri: Pgchar; name: Pgchar; exec: Pgchar; count: gint; stamp: PGDateTime; error: PPGError): gboolean; cdecl; external LazGLib2_library name 'g_bookmark_file_set_application_info';
+{$ENDIF}
+function g_bookmark_file_to_data(bookmark: PGBookmarkFile; length: Pgsize; error: PPGError): Pgchar; cdecl; external LazGLib2_library name 'g_bookmark_file_to_data';
+function g_bookmark_file_to_file(bookmark: PGBookmarkFile; filename: Pgchar; error: PPGError): gboolean; cdecl; external LazGLib2_library name 'g_bookmark_file_to_file';
+function g_build_filename(first_element: Pgchar; args: array of const): Pgchar; cdecl; external LazGLib2_library name 'g_build_filename';
+function g_build_filename_valist(first_element: Pgchar; args: Pva_list): Pgchar; cdecl; external LazGLib2_library name 'g_build_filename_valist';
+function g_build_filenamev(args: PPgchar): Pgchar; cdecl; external LazGLib2_library name 'g_build_filenamev';
+function g_build_path(separator: Pgchar; first_element: Pgchar; args: array of const): Pgchar; cdecl; external LazGLib2_library name 'g_build_path';
+function g_build_pathv(separator: Pgchar; args: PPgchar): Pgchar; cdecl; external LazGLib2_library name 'g_build_pathv';
+function g_byte_array_append(array_: Pguint8; data: Pguint8; len: guint): Pguint8; cdecl; external LazGLib2_library name 'g_byte_array_append';
+function g_byte_array_free(array_: Pguint8; free_segment: gboolean): Pguint8; cdecl; external LazGLib2_library name 'g_byte_array_free';
+function g_byte_array_free_to_bytes(array_: Pguint8): PGBytes; cdecl; external LazGLib2_library name 'g_byte_array_free_to_bytes';
+function g_byte_array_get_type: TGType; cdecl; external LazGLib2_library name 'g_byte_array_get_type';
+function g_byte_array_new: Pguint8; cdecl; external LazGLib2_library name 'g_byte_array_new';
+function g_byte_array_new_take(data: Pguint8; len: gsize): Pguint8; cdecl; external LazGLib2_library name 'g_byte_array_new_take';
+function g_byte_array_prepend(array_: Pguint8; data: Pguint8; len: guint): Pguint8; cdecl; external LazGLib2_library name 'g_byte_array_prepend';
+function g_byte_array_ref(array_: Pguint8): Pguint8; cdecl; external LazGLib2_library name 'g_byte_array_ref';
+function g_byte_array_remove_index(array_: Pguint8; index_: guint): Pguint8; cdecl; external LazGLib2_library name 'g_byte_array_remove_index';
+function g_byte_array_remove_index_fast(array_: Pguint8; index_: guint): Pguint8; cdecl; external LazGLib2_library name 'g_byte_array_remove_index_fast';
+function g_byte_array_remove_range(array_: Pguint8; index_: guint; length: guint): Pguint8; cdecl; external LazGLib2_library name 'g_byte_array_remove_range';
+function g_byte_array_set_size(array_: Pguint8; length: guint): Pguint8; cdecl; external LazGLib2_library name 'g_byte_array_set_size';
+function g_byte_array_sized_new(reserved_size: guint): Pguint8; cdecl; external LazGLib2_library name 'g_byte_array_sized_new';
+function g_byte_array_steal(array_: Pguint8; len: Pgsize): Pguint8; cdecl; external LazGLib2_library name 'g_byte_array_steal';
+function g_bytes_compare(bytes1: PGBytes; bytes2: PGBytes): gint; cdecl; external LazGLib2_library name 'g_bytes_compare';
+function g_bytes_equal(bytes1: PGBytes; bytes2: PGBytes): gboolean; cdecl; external LazGLib2_library name 'g_bytes_equal';
+function g_bytes_get_data(bytes: PGBytes; size: Pgsize): guint8; cdecl; external LazGLib2_library name 'g_bytes_get_data';
+function g_bytes_get_size(bytes: PGBytes): gsize; cdecl; external LazGLib2_library name 'g_bytes_get_size';
+function g_bytes_get_type: TGType; cdecl; external LazGLib2_library name 'g_bytes_get_type';
+function g_bytes_hash(bytes: PGBytes): guint; cdecl; external LazGLib2_library name 'g_bytes_hash';
+function g_bytes_new(data: guint8; size: gsize): PGBytes; cdecl; external LazGLib2_library name 'g_bytes_new';
+function g_bytes_new_from_bytes(bytes: PGBytes; offset: gsize; length: gsize): PGBytes; cdecl; external LazGLib2_library name 'g_bytes_new_from_bytes';
+function g_bytes_new_static(data: guint8; size: gsize): PGBytes; cdecl; external LazGLib2_library name 'g_bytes_new_static';
+function g_bytes_new_take(data: guint8; size: gsize): PGBytes; cdecl; external LazGLib2_library name 'g_bytes_new_take';
+function g_bytes_new_with_free_func(data: guint8; size: gsize; free_func: TGDestroyNotify; user_data: gpointer): PGBytes; cdecl; external LazGLib2_library name 'g_bytes_new_with_free_func';
+function g_bytes_ref(bytes: PGBytes): PGBytes; cdecl; external LazGLib2_library name 'g_bytes_ref';
+function g_bytes_unref_to_array(bytes: PGBytes): Pguint8; cdecl; external LazGLib2_library name 'g_bytes_unref_to_array';
+function g_bytes_unref_to_data(bytes: PGBytes; size: Pgsize): guint8; cdecl; external LazGLib2_library name 'g_bytes_unref_to_data';
+function g_canonicalize_filename(filename: Pgchar; relative_to: Pgchar): Pgchar; cdecl; external LazGLib2_library name 'g_canonicalize_filename';
+function g_chdir(path: Pgchar): gint; cdecl; external LazGLib2_library name 'g_chdir';
+function g_checksum_copy(checksum: PGChecksum): PGChecksum; cdecl; external LazGLib2_library name 'g_checksum_copy';
+function g_checksum_get_string(checksum: PGChecksum): Pgchar; cdecl; external LazGLib2_library name 'g_checksum_get_string';
+function g_checksum_get_type: TGType; cdecl; external LazGLib2_library name 'g_checksum_get_type';
+function g_checksum_new(checksum_type: TGChecksumType): PGChecksum; cdecl; external LazGLib2_library name 'g_checksum_new';
+function g_checksum_type_get_length(checksum_type: TGChecksumType): gssize; cdecl; external LazGLib2_library name 'g_checksum_type_get_length';
+function g_child_watch_add(pid: TGPid; function_: TGChildWatchFunc; data: gpointer): guint; cdecl; external LazGLib2_library name 'g_child_watch_add';
+function g_child_watch_add_full(priority: gint; pid: TGPid; function_: TGChildWatchFunc; data: gpointer; notify: TGDestroyNotify): guint; cdecl; external LazGLib2_library name 'g_child_watch_add_full';
+function g_child_watch_source_new(pid: TGPid): PGSource; cdecl; external LazGLib2_library name 'g_child_watch_source_new';
+function g_close(fd: gint; error: PPGError): gboolean; cdecl; external LazGLib2_library name 'g_close';
+function g_compute_checksum_for_bytes(checksum_type: TGChecksumType; data: PGBytes): Pgchar; cdecl; external LazGLib2_library name 'g_compute_checksum_for_bytes';
+function g_compute_checksum_for_data(checksum_type: TGChecksumType; data: Pguint8; length: gsize): Pgchar; cdecl; external LazGLib2_library name 'g_compute_checksum_for_data';
+function g_compute_checksum_for_string(checksum_type: TGChecksumType; str: Pgchar; length: gssize): Pgchar; cdecl; external LazGLib2_library name 'g_compute_checksum_for_string';
+function g_compute_hmac_for_bytes(digest_type: TGChecksumType; key: PGBytes; data: PGBytes): Pgchar; cdecl; external LazGLib2_library name 'g_compute_hmac_for_bytes';
+function g_compute_hmac_for_data(digest_type: TGChecksumType; key: Pguint8; key_len: gsize; data: Pguint8; length: gsize): Pgchar; cdecl; external LazGLib2_library name 'g_compute_hmac_for_data';
+function g_compute_hmac_for_string(digest_type: TGChecksumType; key: Pguint8; key_len: gsize; str: Pgchar; length: gssize): Pgchar; cdecl; external LazGLib2_library name 'g_compute_hmac_for_string';
+function g_cond_wait_until(cond: PGCond; mutex: PGMutex; end_time: gint64): gboolean; cdecl; external LazGLib2_library name 'g_cond_wait_until';
+function g_convert(str: Pgchar; len: gssize; to_codeset: Pgchar; from_codeset: Pgchar; bytes_read: Pgsize; bytes_written: Pgsize; error: PPGError): Pgchar; cdecl; external LazGLib2_library name 'g_convert';
+function g_convert_error_quark: TGQuark; cdecl; external LazGLib2_library name 'g_convert_error_quark';
+function g_convert_with_fallback(str: Pgchar; len: gssize; to_codeset: Pgchar; from_codeset: Pgchar; fallback: Pgchar; bytes_read: Pgsize; bytes_written: Pgsize; error: PPGError): Pgchar; cdecl; external LazGLib2_library name 'g_convert_with_fallback';
+function g_convert_with_iconv(str: Pgchar; len: gssize; converter: TGIConv; bytes_read: Pgsize; bytes_written: Pgsize; error: PPGError): Pgchar; cdecl; external LazGLib2_library name 'g_convert_with_iconv';
+function g_datalist_get_data(datalist: PPGData; key: Pgchar): gpointer; cdecl; external LazGLib2_library name 'g_datalist_get_data';
+function g_datalist_get_flags(datalist: PPGData): guint; cdecl; external LazGLib2_library name 'g_datalist_get_flags';
+function g_datalist_id_dup_data(datalist: PPGData; key_id: TGQuark; dup_func: TGDuplicateFunc; user_data: gpointer): gpointer; cdecl; external LazGLib2_library name 'g_datalist_id_dup_data';
+function g_datalist_id_get_data(datalist: PPGData; key_id: TGQuark): gpointer; cdecl; external LazGLib2_library name 'g_datalist_id_get_data';
+function g_datalist_id_remove_no_notify(datalist: PPGData; key_id: TGQuark): gpointer; cdecl; external LazGLib2_library name 'g_datalist_id_remove_no_notify';
+function g_datalist_id_replace_data(datalist: PPGData; key_id: TGQuark; oldval: gpointer; newval: gpointer; destroy_: TGDestroyNotify; old_destroy: PGDestroyNotify): gboolean; cdecl; external LazGLib2_library name 'g_datalist_id_replace_data';
+function g_dataset_id_get_data(dataset_location: Pgpointer; key_id: TGQuark): gpointer; cdecl; external LazGLib2_library name 'g_dataset_id_get_data';
+function g_dataset_id_remove_no_notify(dataset_location: Pgpointer; key_id: TGQuark): gpointer; cdecl; external LazGLib2_library name 'g_dataset_id_remove_no_notify';
+function g_date_compare(lhs: PGDate; rhs: PGDate): gint; cdecl; external LazGLib2_library name 'g_date_compare';
+function g_date_copy(date: PGDate): PGDate; cdecl; external LazGLib2_library name 'g_date_copy';
+function g_date_days_between(date1: PGDate; date2: PGDate): gint; cdecl; external LazGLib2_library name 'g_date_days_between';
+function g_date_get_day(date: PGDate): TGDateDay; cdecl; external LazGLib2_library name 'g_date_get_day';
+function g_date_get_day_of_year(date: PGDate): guint; cdecl; external LazGLib2_library name 'g_date_get_day_of_year';
+function g_date_get_days_in_month(month: TGDateMonth; year: TGDateYear): guint8; cdecl; external LazGLib2_library name 'g_date_get_days_in_month';
+function g_date_get_iso8601_week_of_year(date: PGDate): guint; cdecl; external LazGLib2_library name 'g_date_get_iso8601_week_of_year';
+function g_date_get_julian(date: PGDate): guint32; cdecl; external LazGLib2_library name 'g_date_get_julian';
+function g_date_get_monday_week_of_year(date: PGDate): guint; cdecl; external LazGLib2_library name 'g_date_get_monday_week_of_year';
+function g_date_get_monday_weeks_in_year(year: TGDateYear): guint8; cdecl; external LazGLib2_library name 'g_date_get_monday_weeks_in_year';
+function g_date_get_month(date: PGDate): TGDateMonth; cdecl; external LazGLib2_library name 'g_date_get_month';
+function g_date_get_sunday_week_of_year(date: PGDate): guint; cdecl; external LazGLib2_library name 'g_date_get_sunday_week_of_year';
+function g_date_get_sunday_weeks_in_year(year: TGDateYear): guint8; cdecl; external LazGLib2_library name 'g_date_get_sunday_weeks_in_year';
+function g_date_get_type: TGType; cdecl; external LazGLib2_library name 'g_date_get_type';
+function g_date_get_weekday(date: PGDate): TGDateWeekday; cdecl; external LazGLib2_library name 'g_date_get_weekday';
+function g_date_get_year(date: PGDate): TGDateYear; cdecl; external LazGLib2_library name 'g_date_get_year';
+function g_date_is_first_of_month(date: PGDate): gboolean; cdecl; external LazGLib2_library name 'g_date_is_first_of_month';
+function g_date_is_last_of_month(date: PGDate): gboolean; cdecl; external LazGLib2_library name 'g_date_is_last_of_month';
+function g_date_is_leap_year(year: TGDateYear): gboolean; cdecl; external LazGLib2_library name 'g_date_is_leap_year';
+function g_date_new: PGDate; cdecl; external LazGLib2_library name 'g_date_new';
+function g_date_new_dmy(day: TGDateDay; month: TGDateMonth; year: TGDateYear): PGDate; cdecl; external LazGLib2_library name 'g_date_new_dmy';
+function g_date_new_julian(julian_day: guint32): PGDate; cdecl; external LazGLib2_library name 'g_date_new_julian';
+function g_date_strftime(s: Pgchar; slen: gsize; format: Pgchar; date: PGDate): gsize; cdecl; external LazGLib2_library name 'g_date_strftime';
+function g_date_time_add(datetime: PGDateTime; timespan: TGTimeSpan): PGDateTime; cdecl; external LazGLib2_library name 'g_date_time_add';
+function g_date_time_add_days(datetime: PGDateTime; days: gint): PGDateTime; cdecl; external LazGLib2_library name 'g_date_time_add_days';
+function g_date_time_add_full(datetime: PGDateTime; years: gint; months: gint; days: gint; hours: gint; minutes: gint; seconds: gdouble): PGDateTime; cdecl; external LazGLib2_library name 'g_date_time_add_full';
+function g_date_time_add_hours(datetime: PGDateTime; hours: gint): PGDateTime; cdecl; external LazGLib2_library name 'g_date_time_add_hours';
+function g_date_time_add_minutes(datetime: PGDateTime; minutes: gint): PGDateTime; cdecl; external LazGLib2_library name 'g_date_time_add_minutes';
+function g_date_time_add_months(datetime: PGDateTime; months: gint): PGDateTime; cdecl; external LazGLib2_library name 'g_date_time_add_months';
+function g_date_time_add_seconds(datetime: PGDateTime; seconds: gdouble): PGDateTime; cdecl; external LazGLib2_library name 'g_date_time_add_seconds';
+function g_date_time_add_weeks(datetime: PGDateTime; weeks: gint): PGDateTime; cdecl; external LazGLib2_library name 'g_date_time_add_weeks';
+function g_date_time_add_years(datetime: PGDateTime; years: gint): PGDateTime; cdecl; external LazGLib2_library name 'g_date_time_add_years';
+function g_date_time_compare(dt1: PGDateTime; dt2: PGDateTime): gint; cdecl; external LazGLib2_library name 'g_date_time_compare';
+function g_date_time_difference(end_: PGDateTime; begin_: PGDateTime): TGTimeSpan; cdecl; external LazGLib2_library name 'g_date_time_difference';
+function g_date_time_equal(dt1: PGDateTime; dt2: PGDateTime): gboolean; cdecl; external LazGLib2_library name 'g_date_time_equal';
+function g_date_time_format(datetime: PGDateTime; format: Pgchar): Pgchar; cdecl; external LazGLib2_library name 'g_date_time_format';
+function g_date_time_format_iso8601(datetime: PGDateTime): Pgchar; cdecl; external LazGLib2_library name 'g_date_time_format_iso8601';
+function g_date_time_get_day_of_month(datetime: PGDateTime): gint; cdecl; external LazGLib2_library name 'g_date_time_get_day_of_month';
+function g_date_time_get_day_of_week(datetime: PGDateTime): gint; cdecl; external LazGLib2_library name 'g_date_time_get_day_of_week';
+function g_date_time_get_day_of_year(datetime: PGDateTime): gint; cdecl; external LazGLib2_library name 'g_date_time_get_day_of_year';
+function g_date_time_get_hour(datetime: PGDateTime): gint; cdecl; external LazGLib2_library name 'g_date_time_get_hour';
+function g_date_time_get_microsecond(datetime: PGDateTime): gint; cdecl; external LazGLib2_library name 'g_date_time_get_microsecond';
+function g_date_time_get_minute(datetime: PGDateTime): gint; cdecl; external LazGLib2_library name 'g_date_time_get_minute';
+function g_date_time_get_month(datetime: PGDateTime): gint; cdecl; external LazGLib2_library name 'g_date_time_get_month';
+function g_date_time_get_second(datetime: PGDateTime): gint; cdecl; external LazGLib2_library name 'g_date_time_get_second';
+function g_date_time_get_seconds(datetime: PGDateTime): gdouble; cdecl; external LazGLib2_library name 'g_date_time_get_seconds';
+function g_date_time_get_timezone(datetime: PGDateTime): PGTimeZone; cdecl; external LazGLib2_library name 'g_date_time_get_timezone';
+function g_date_time_get_timezone_abbreviation(datetime: PGDateTime): Pgchar; cdecl; external LazGLib2_library name 'g_date_time_get_timezone_abbreviation';
+function g_date_time_get_type: TGType; cdecl; external LazGLib2_library name 'g_date_time_get_type';
+function g_date_time_get_utc_offset(datetime: PGDateTime): TGTimeSpan; cdecl; external LazGLib2_library name 'g_date_time_get_utc_offset';
+function g_date_time_get_week_numbering_year(datetime: PGDateTime): gint; cdecl; external LazGLib2_library name 'g_date_time_get_week_numbering_year';
+function g_date_time_get_week_of_year(datetime: PGDateTime): gint; cdecl; external LazGLib2_library name 'g_date_time_get_week_of_year';
+function g_date_time_get_year(datetime: PGDateTime): gint; cdecl; external LazGLib2_library name 'g_date_time_get_year';
+function g_date_time_hash(datetime: PGDateTime): guint; cdecl; external LazGLib2_library name 'g_date_time_hash';
+function g_date_time_is_daylight_savings(datetime: PGDateTime): gboolean; cdecl; external LazGLib2_library name 'g_date_time_is_daylight_savings';
+function g_date_time_new(tz: PGTimeZone; year: gint; month: gint; day: gint; hour: gint; minute: gint; seconds: gdouble): PGDateTime; cdecl; external LazGLib2_library name 'g_date_time_new';
+function g_date_time_new_from_iso8601(text: Pgchar; default_tz: PGTimeZone): PGDateTime; cdecl; external LazGLib2_library name 'g_date_time_new_from_iso8601';
+function g_date_time_new_from_unix_local(t: gint64): PGDateTime; cdecl; external LazGLib2_library name 'g_date_time_new_from_unix_local';
+function g_date_time_new_from_unix_utc(t: gint64): PGDateTime; cdecl; external LazGLib2_library name 'g_date_time_new_from_unix_utc';
+function g_date_time_new_local(year: gint; month: gint; day: gint; hour: gint; minute: gint; seconds: gdouble): PGDateTime; cdecl; external LazGLib2_library name 'g_date_time_new_local';
+function g_date_time_new_now(tz: PGTimeZone): PGDateTime; cdecl; external LazGLib2_library name 'g_date_time_new_now';
+function g_date_time_new_now_local: PGDateTime; cdecl; external LazGLib2_library name 'g_date_time_new_now_local';
+function g_date_time_new_now_utc: PGDateTime; cdecl; external LazGLib2_library name 'g_date_time_new_now_utc';
+function g_date_time_new_utc(year: gint; month: gint; day: gint; hour: gint; minute: gint; seconds: gdouble): PGDateTime; cdecl; external LazGLib2_library name 'g_date_time_new_utc';
+function g_date_time_ref(datetime: PGDateTime): PGDateTime; cdecl; external LazGLib2_library name 'g_date_time_ref';
+function g_date_time_to_local(datetime: PGDateTime): PGDateTime; cdecl; external LazGLib2_library name 'g_date_time_to_local';
+function g_date_time_to_timezone(datetime: PGDateTime; tz: PGTimeZone): PGDateTime; cdecl; external LazGLib2_library name 'g_date_time_to_timezone';
+function g_date_time_to_unix(datetime: PGDateTime): gint64; cdecl; external LazGLib2_library name 'g_date_time_to_unix';
+function g_date_time_to_utc(datetime: PGDateTime): PGDateTime; cdecl; external LazGLib2_library name 'g_date_time_to_utc';
+function g_date_valid(date: PGDate): gboolean; cdecl; external LazGLib2_library name 'g_date_valid';
+function g_date_valid_day(day: TGDateDay): gboolean; cdecl; external LazGLib2_library name 'g_date_valid_day';
+function g_date_valid_dmy(day: TGDateDay; month: TGDateMonth; year: TGDateYear): gboolean; cdecl; external LazGLib2_library name 'g_date_valid_dmy';
+function g_date_valid_julian(julian_date: guint32): gboolean; cdecl; external LazGLib2_library name 'g_date_valid_julian';
+function g_date_valid_month(month: TGDateMonth): gboolean; cdecl; external LazGLib2_library name 'g_date_valid_month';
+function g_date_valid_weekday(weekday: TGDateWeekday): gboolean; cdecl; external LazGLib2_library name 'g_date_valid_weekday';
+function g_date_valid_year(year: TGDateYear): gboolean; cdecl; external LazGLib2_library name 'g_date_valid_year';
+function g_dcgettext(domain: Pgchar; msgid: Pgchar; category: gint): Pgchar; cdecl; external LazGLib2_library name 'g_dcgettext';
+function g_dgettext(domain: Pgchar; msgid: Pgchar): Pgchar; cdecl; external LazGLib2_library name 'g_dgettext';
+function g_dir_make_tmp(tmpl: Pgchar; error: PPGError): Pgchar; cdecl; external LazGLib2_library name 'g_dir_make_tmp';
+function g_dir_open(path: Pgchar; flags: guint; error: PPGError): PGDir; cdecl; external LazGLib2_library name 'g_dir_open';
+function g_dir_read_name(dir: PGDir): Pgchar; cdecl; external LazGLib2_library name 'g_dir_read_name';
+function g_direct_equal(v1: Pgpointer; v2: Pgpointer): gboolean; cdecl; external LazGLib2_library name 'g_direct_equal';
+function g_direct_hash(v: Pgpointer): guint; cdecl; external LazGLib2_library name 'g_direct_hash';
+function g_dngettext(domain: Pgchar; msgid: Pgchar; msgid_plural: Pgchar; n: gulong): Pgchar; cdecl; external LazGLib2_library name 'g_dngettext';
+function g_double_equal(v1: Pgpointer; v2: Pgpointer): gboolean; cdecl; external LazGLib2_library name 'g_double_equal';
+function g_double_hash(v: Pgpointer): guint; cdecl; external LazGLib2_library name 'g_double_hash';
+function g_dpgettext(domain: Pgchar; msgctxtid: Pgchar; msgidoffset: gsize): Pgchar; cdecl; external LazGLib2_library name 'g_dpgettext';
+function g_dpgettext2(domain: Pgchar; context: Pgchar; msgid: Pgchar): Pgchar; cdecl; external LazGLib2_library name 'g_dpgettext2';
+function g_environ_getenv(envp: PPgchar; variable: Pgchar): Pgchar; cdecl; external LazGLib2_library name 'g_environ_getenv';
+function g_environ_setenv(envp: PPgchar; variable: Pgchar; value: Pgchar; overwrite: gboolean): PPgchar; cdecl; external LazGLib2_library name 'g_environ_setenv';
+function g_environ_unsetenv(envp: PPgchar; variable: Pgchar): PPgchar; cdecl; external LazGLib2_library name 'g_environ_unsetenv';
+function g_error_copy(error: PGError): PGError; cdecl; external LazGLib2_library name 'g_error_copy';
+function g_error_get_type: TGType; cdecl; external LazGLib2_library name 'g_error_get_type';
+function g_error_matches(error: PGError; domain: TGQuark; code: gint): gboolean; cdecl; external LazGLib2_library name 'g_error_matches';
+function g_error_new(domain: TGQuark; code: gint; format: Pgchar; args: array of const): PGError; cdecl; external LazGLib2_library name 'g_error_new';
+function g_error_new_literal(domain: TGQuark; code: gint; message: Pgchar): PGError; cdecl; external LazGLib2_library name 'g_error_new_literal';
+function g_error_new_valist(domain: TGQuark; code: gint; format: Pgchar; args: Tva_list): PGError; cdecl; external LazGLib2_library name 'g_error_new_valist';
+function g_file_error_from_errno(err_no: gint): TGFileError; cdecl; external LazGLib2_library name 'g_file_error_from_errno';
+function g_file_error_quark: TGQuark; cdecl; external LazGLib2_library name 'g_file_error_quark';
+function g_file_get_contents(filename: Pgchar; contents: PPgchar; length: Pgsize; error: PPGError): gboolean; cdecl; external LazGLib2_library name 'g_file_get_contents';
+function g_file_open_tmp(tmpl: Pgchar; name_used: PPgchar; error: PPGError): gint; cdecl; external LazGLib2_library name 'g_file_open_tmp';
+function g_file_read_link(filename: Pgchar; error: PPGError): Pgchar; cdecl; external LazGLib2_library name 'g_file_read_link';
+function g_file_set_contents(filename: Pgchar; contents: Pgchar; length: gssize; error: PPGError): gboolean; cdecl; external LazGLib2_library name 'g_file_set_contents';
+function g_file_set_contents_full(filename: Pgchar; contents: Pgchar; length: gssize; flags: TGFileSetContentsFlags; mode: gint; error: PPGError): gboolean; cdecl; external LazGLib2_library name 'g_file_set_contents_full';
+function g_file_test(filename: Pgchar; test: TGFileTest): gboolean; cdecl; external LazGLib2_library name 'g_file_test';
+function g_filename_display_basename(filename: Pgchar): Pgchar; cdecl; external LazGLib2_library name 'g_filename_display_basename';
+function g_filename_display_name(filename: Pgchar): Pgchar; cdecl; external LazGLib2_library name 'g_filename_display_name';
+function g_filename_from_uri(uri: Pgchar; hostname: PPgchar; error: PPGError): Pgchar; cdecl; external LazGLib2_library name 'g_filename_from_uri';
+function g_filename_from_utf8(utf8string: Pgchar; len: gssize; bytes_read: Pgsize; bytes_written: Pgsize; error: PPGError): Pgchar; cdecl; external LazGLib2_library name 'g_filename_from_utf8';
+function g_filename_to_uri(filename: Pgchar; hostname: Pgchar; error: PPGError): Pgchar; cdecl; external LazGLib2_library name 'g_filename_to_uri';
+function g_filename_to_utf8(opsysstring: Pgchar; len: gssize; bytes_read: Pgsize; bytes_written: Pgsize; error: PPGError): Pgchar; cdecl; external LazGLib2_library name 'g_filename_to_utf8';
+function g_find_program_in_path(program_: Pgchar): Pgchar; cdecl; external LazGLib2_library name 'g_find_program_in_path';
+function g_format_size(size: guint64): Pgchar; cdecl; external LazGLib2_library name 'g_format_size';
+function g_format_size_full(size: guint64; flags: TGFormatSizeFlags): Pgchar; cdecl; external LazGLib2_library name 'g_format_size_full';
+function g_fprintf(file_: Pgpointer; format: Pgchar; args: array of const): gint; cdecl; external LazGLib2_library name 'g_fprintf';
+function g_get_application_name: Pgchar; cdecl; external LazGLib2_library name 'g_get_application_name';
+function g_get_charset(charset: PPgchar): gboolean; cdecl; external LazGLib2_library name 'g_get_charset';
+function g_get_codeset: Pgchar; cdecl; external LazGLib2_library name 'g_get_codeset';
+function g_get_console_charset(charset: PPgchar): gboolean; cdecl; external LazGLib2_library name 'g_get_console_charset';
+function g_get_current_dir: Pgchar; cdecl; external LazGLib2_library name 'g_get_current_dir';
+function g_get_environ: PPgchar; cdecl; external LazGLib2_library name 'g_get_environ';
+function g_get_filename_charsets(filename_charsets: PPPgchar): gboolean; cdecl; external LazGLib2_library name 'g_get_filename_charsets';
+function g_get_home_dir: Pgchar; cdecl; external LazGLib2_library name 'g_get_home_dir';
+function g_get_host_name: Pgchar; cdecl; external LazGLib2_library name 'g_get_host_name';
+function g_get_language_names: PPgchar; cdecl; external LazGLib2_library name 'g_get_language_names';
+function g_get_language_names_with_category(category_name: Pgchar): PPgchar; cdecl; external LazGLib2_library name 'g_get_language_names_with_category';
+function g_get_locale_variants(locale: Pgchar): PPgchar; cdecl; external LazGLib2_library name 'g_get_locale_variants';
+function g_get_monotonic_time: gint64; cdecl; external LazGLib2_library name 'g_get_monotonic_time';
+function g_get_num_processors: guint; cdecl; external LazGLib2_library name 'g_get_num_processors';
+function g_get_os_info(key_name: Pgchar): Pgchar; cdecl; external LazGLib2_library name 'g_get_os_info';
+function g_get_prgname: Pgchar; cdecl; external LazGLib2_library name 'g_get_prgname';
+function g_get_real_name: Pgchar; cdecl; external LazGLib2_library name 'g_get_real_name';
+function g_get_real_time: gint64; cdecl; external LazGLib2_library name 'g_get_real_time';
+function g_get_system_config_dirs: PPgchar; cdecl; external LazGLib2_library name 'g_get_system_config_dirs';
+function g_get_system_data_dirs: PPgchar; cdecl; external LazGLib2_library name 'g_get_system_data_dirs';
+function g_get_tmp_dir: Pgchar; cdecl; external LazGLib2_library name 'g_get_tmp_dir';
+function g_get_user_cache_dir: Pgchar; cdecl; external LazGLib2_library name 'g_get_user_cache_dir';
+function g_get_user_config_dir: Pgchar; cdecl; external LazGLib2_library name 'g_get_user_config_dir';
+function g_get_user_data_dir: Pgchar; cdecl; external LazGLib2_library name 'g_get_user_data_dir';
+function g_get_user_name: Pgchar; cdecl; external LazGLib2_library name 'g_get_user_name';
+function g_get_user_runtime_dir: Pgchar; cdecl; external LazGLib2_library name 'g_get_user_runtime_dir';
+function g_get_user_special_dir(directory: TGUserDirectory): Pgchar; cdecl; external LazGLib2_library name 'g_get_user_special_dir';
+function g_getenv(variable: Pgchar): Pgchar; cdecl; external LazGLib2_library name 'g_getenv';
+function g_gstring_get_type: TGType; cdecl; external LazGLib2_library name 'g_gstring_get_type';
+function g_hash_table_add(hash_table: PGHashTable; key: gpointer): gboolean; cdecl; external LazGLib2_library name 'g_hash_table_add';
+function g_hash_table_contains(hash_table: PGHashTable; key: Pgpointer): gboolean; cdecl; external LazGLib2_library name 'g_hash_table_contains';
+function g_hash_table_find(hash_table: PGHashTable; predicate: TGHRFunc; user_data: gpointer): gpointer; cdecl; external LazGLib2_library name 'g_hash_table_find';
+function g_hash_table_foreach_remove(hash_table: PGHashTable; func: TGHRFunc; user_data: gpointer): guint; cdecl; external LazGLib2_library name 'g_hash_table_foreach_remove';
+function g_hash_table_foreach_steal(hash_table: PGHashTable; func: TGHRFunc; user_data: gpointer): guint; cdecl; external LazGLib2_library name 'g_hash_table_foreach_steal';
+function g_hash_table_get_keys(hash_table: PGHashTable): PGList; cdecl; external LazGLib2_library name 'g_hash_table_get_keys';
+function g_hash_table_get_keys_as_array(hash_table: PGHashTable; length: Pguint): Pgpointer; cdecl; external LazGLib2_library name 'g_hash_table_get_keys_as_array';
+function g_hash_table_get_type: TGType; cdecl; external LazGLib2_library name 'g_hash_table_get_type';
+function g_hash_table_get_values(hash_table: PGHashTable): PGList; cdecl; external LazGLib2_library name 'g_hash_table_get_values';
+function g_hash_table_insert(hash_table: PGHashTable; key: gpointer; value: gpointer): gboolean; cdecl; external LazGLib2_library name 'g_hash_table_insert';
+function g_hash_table_iter_get_hash_table(iter: PGHashTableIter): PGHashTable; cdecl; external LazGLib2_library name 'g_hash_table_iter_get_hash_table';
+function g_hash_table_iter_next(iter: PGHashTableIter; key: Pgpointer; value: Pgpointer): gboolean; cdecl; external LazGLib2_library name 'g_hash_table_iter_next';
+function g_hash_table_lookup(hash_table: PGHashTable; key: Pgpointer): gpointer; cdecl; external LazGLib2_library name 'g_hash_table_lookup';
+function g_hash_table_lookup_extended(hash_table: PGHashTable; lookup_key: Pgpointer; orig_key: Pgpointer; value: Pgpointer): gboolean; cdecl; external LazGLib2_library name 'g_hash_table_lookup_extended';
+function g_hash_table_new(hash_func: TGHashFunc; key_equal_func: TGEqualFunc): PGHashTable; cdecl; external LazGLib2_library name 'g_hash_table_new';
+function g_hash_table_new_full(hash_func: TGHashFunc; key_equal_func: TGEqualFunc; key_destroy_func: TGDestroyNotify; value_destroy_func: TGDestroyNotify): PGHashTable; cdecl; external LazGLib2_library name 'g_hash_table_new_full';
+function g_hash_table_ref(hash_table: PGHashTable): PGHashTable; cdecl; external LazGLib2_library name 'g_hash_table_ref';
+function g_hash_table_remove(hash_table: PGHashTable; key: Pgpointer): gboolean; cdecl; external LazGLib2_library name 'g_hash_table_remove';
+function g_hash_table_replace(hash_table: PGHashTable; key: gpointer; value: gpointer): gboolean; cdecl; external LazGLib2_library name 'g_hash_table_replace';
+function g_hash_table_size(hash_table: PGHashTable): guint; cdecl; external LazGLib2_library name 'g_hash_table_size';
+function g_hash_table_steal(hash_table: PGHashTable; key: Pgpointer): gboolean; cdecl; external LazGLib2_library name 'g_hash_table_steal';
+function g_hash_table_steal_extended(hash_table: PGHashTable; lookup_key: Pgpointer; stolen_key: Pgpointer; stolen_value: Pgpointer): gboolean; cdecl; external LazGLib2_library name 'g_hash_table_steal_extended';
+function g_hmac_copy(hmac: PGHmac): PGHmac; cdecl; external LazGLib2_library name 'g_hmac_copy';
+function g_hmac_get_string(hmac: PGHmac): Pgchar; cdecl; external LazGLib2_library name 'g_hmac_get_string';
+function g_hmac_new(digest_type: TGChecksumType; key: Pguint8; key_len: gsize): PGHmac; cdecl; external LazGLib2_library name 'g_hmac_new';
+function g_hmac_ref(hmac: PGHmac): PGHmac; cdecl; external LazGLib2_library name 'g_hmac_ref';
+function g_hook_alloc(hook_list: PGHookList): PGHook; cdecl; external LazGLib2_library name 'g_hook_alloc';
+function g_hook_compare_ids(new_hook: PGHook; sibling: PGHook): gint; cdecl; external LazGLib2_library name 'g_hook_compare_ids';
+function g_hook_destroy(hook_list: PGHookList; hook_id: gulong): gboolean; cdecl; external LazGLib2_library name 'g_hook_destroy';
+function g_hook_find(hook_list: PGHookList; need_valids: gboolean; func: TGHookFindFunc; data: gpointer): PGHook; cdecl; external LazGLib2_library name 'g_hook_find';
+function g_hook_find_data(hook_list: PGHookList; need_valids: gboolean; data: gpointer): PGHook; cdecl; external LazGLib2_library name 'g_hook_find_data';
+function g_hook_find_func(hook_list: PGHookList; need_valids: gboolean; func: gpointer): PGHook; cdecl; external LazGLib2_library name 'g_hook_find_func';
+function g_hook_find_func_data(hook_list: PGHookList; need_valids: gboolean; func: gpointer; data: gpointer): PGHook; cdecl; external LazGLib2_library name 'g_hook_find_func_data';
+function g_hook_first_valid(hook_list: PGHookList; may_be_in_call: gboolean): PGHook; cdecl; external LazGLib2_library name 'g_hook_first_valid';
+function g_hook_get(hook_list: PGHookList; hook_id: gulong): PGHook; cdecl; external LazGLib2_library name 'g_hook_get';
+function g_hook_next_valid(hook_list: PGHookList; hook: PGHook; may_be_in_call: gboolean): PGHook; cdecl; external LazGLib2_library name 'g_hook_next_valid';
+function g_hook_ref(hook_list: PGHookList; hook: PGHook): PGHook; cdecl; external LazGLib2_library name 'g_hook_ref';
+function g_hostname_is_ascii_encoded(hostname: Pgchar): gboolean; cdecl; external LazGLib2_library name 'g_hostname_is_ascii_encoded';
+function g_hostname_is_ip_address(hostname: Pgchar): gboolean; cdecl; external LazGLib2_library name 'g_hostname_is_ip_address';
+function g_hostname_is_non_ascii(hostname: Pgchar): gboolean; cdecl; external LazGLib2_library name 'g_hostname_is_non_ascii';
+function g_hostname_to_ascii(hostname: Pgchar): Pgchar; cdecl; external LazGLib2_library name 'g_hostname_to_ascii';
+function g_hostname_to_unicode(hostname: Pgchar): Pgchar; cdecl; external LazGLib2_library name 'g_hostname_to_unicode';
+function g_iconv(converter: TGIConv; inbuf: PPgchar; inbytes_left: Pgsize; outbuf: PPgchar; outbytes_left: Pgsize): gsize; cdecl; external LazGLib2_library name 'g_iconv';
+function g_iconv_close(converter: TGIConv): gint; cdecl; external LazGLib2_library name 'g_iconv_close';
+function g_iconv_open(to_codeset: Pgchar; from_codeset: Pgchar): TGIConv; cdecl; external LazGLib2_library name 'g_iconv_open';
+function g_idle_add(function_: TGSourceFunc; data: gpointer): guint; cdecl; external LazGLib2_library name 'g_idle_add';
+function g_idle_add_full(priority: gint; function_: TGSourceFunc; data: gpointer; notify: TGDestroyNotify): guint; cdecl; external LazGLib2_library name 'g_idle_add_full';
+function g_idle_remove_by_data(data: gpointer): gboolean; cdecl; external LazGLib2_library name 'g_idle_remove_by_data';
+function g_idle_source_new: PGSource; cdecl; external LazGLib2_library name 'g_idle_source_new';
+function g_int64_equal(v1: Pgpointer; v2: Pgpointer): gboolean; cdecl; external LazGLib2_library name 'g_int64_equal';
+function g_int64_hash(v: Pgpointer): guint; cdecl; external LazGLib2_library name 'g_int64_hash';
+function g_int_equal(v1: Pgpointer; v2: Pgpointer): gboolean; cdecl; external LazGLib2_library name 'g_int_equal';
+function g_int_hash(v: Pgpointer): guint; cdecl; external LazGLib2_library name 'g_int_hash';
+function g_intern_static_string(string_: Pgchar): Pgchar; cdecl; external LazGLib2_library name 'g_intern_static_string';
+function g_intern_string(string_: Pgchar): Pgchar; cdecl; external LazGLib2_library name 'g_intern_string';
+function g_io_add_watch(channel: PGIOChannel; condition: TGIOCondition; func: TGIOFunc; user_data: gpointer): guint; cdecl; external LazGLib2_library name 'g_io_add_watch';
+function g_io_add_watch_full(channel: PGIOChannel; priority: gint; condition: TGIOCondition; func: TGIOFunc; user_data: gpointer; notify: TGDestroyNotify): guint; cdecl; external LazGLib2_library name 'g_io_add_watch_full';
+function g_io_channel_error_from_errno(en: gint): TGIOChannelError; cdecl; external LazGLib2_library name 'g_io_channel_error_from_errno';
+function g_io_channel_error_quark: TGQuark; cdecl; external LazGLib2_library name 'g_io_channel_error_quark';
+function g_io_channel_flush(channel: PGIOChannel; error: PPGError): TGIOStatus; cdecl; external LazGLib2_library name 'g_io_channel_flush';
+function g_io_channel_get_buffer_condition(channel: PGIOChannel): TGIOCondition; cdecl; external LazGLib2_library name 'g_io_channel_get_buffer_condition';
+function g_io_channel_get_buffer_size(channel: PGIOChannel): gsize; cdecl; external LazGLib2_library name 'g_io_channel_get_buffer_size';
+function g_io_channel_get_buffered(channel: PGIOChannel): gboolean; cdecl; external LazGLib2_library name 'g_io_channel_get_buffered';
+function g_io_channel_get_close_on_unref(channel: PGIOChannel): gboolean; cdecl; external LazGLib2_library name 'g_io_channel_get_close_on_unref';
+function g_io_channel_get_encoding(channel: PGIOChannel): Pgchar; cdecl; external LazGLib2_library name 'g_io_channel_get_encoding';
+function g_io_channel_get_flags(channel: PGIOChannel): TGIOFlags; cdecl; external LazGLib2_library name 'g_io_channel_get_flags';
+function g_io_channel_get_line_term(channel: PGIOChannel; length: Pgint): Pgchar; cdecl; external LazGLib2_library name 'g_io_channel_get_line_term';
+function g_io_channel_get_type: TGType; cdecl; external LazGLib2_library name 'g_io_channel_get_type';
+function g_io_channel_new_file(filename: Pgchar; mode: Pgchar; error: PPGError): PGIOChannel; cdecl; external LazGLib2_library name 'g_io_channel_new_file';
+function g_io_channel_read_chars(channel: PGIOChannel; buf: Pgchar; count: gsize; bytes_read: Pgsize; error: PPGError): TGIOStatus; cdecl; external LazGLib2_library name 'g_io_channel_read_chars';
+function g_io_channel_read_line(channel: PGIOChannel; str_return: PPgchar; length: Pgsize; terminator_pos: Pgsize; error: PPGError): TGIOStatus; cdecl; external LazGLib2_library name 'g_io_channel_read_line';
+function g_io_channel_read_line_string(channel: PGIOChannel; buffer: PGString; terminator_pos: Pgsize; error: PPGError): TGIOStatus; cdecl; external LazGLib2_library name 'g_io_channel_read_line_string';
+function g_io_channel_read_to_end(channel: PGIOChannel; str_return: PPgchar; length: Pgsize; error: PPGError): TGIOStatus; cdecl; external LazGLib2_library name 'g_io_channel_read_to_end';
+function g_io_channel_read_unichar(channel: PGIOChannel; thechar: Pgunichar; error: PPGError): TGIOStatus; cdecl; external LazGLib2_library name 'g_io_channel_read_unichar';
+function g_io_channel_ref(channel: PGIOChannel): PGIOChannel; cdecl; external LazGLib2_library name 'g_io_channel_ref';
+function g_io_channel_seek_position(channel: PGIOChannel; offset: gint64; type_: TGSeekType; error: PPGError): TGIOStatus; cdecl; external LazGLib2_library name 'g_io_channel_seek_position';
+function g_io_channel_set_encoding(channel: PGIOChannel; encoding: Pgchar; error: PPGError): TGIOStatus; cdecl; external LazGLib2_library name 'g_io_channel_set_encoding';
+function g_io_channel_set_flags(channel: PGIOChannel; flags: TGIOFlags; error: PPGError): TGIOStatus; cdecl; external LazGLib2_library name 'g_io_channel_set_flags';
+function g_io_channel_shutdown(channel: PGIOChannel; flush: gboolean; error: PPGError): TGIOStatus; cdecl; external LazGLib2_library name 'g_io_channel_shutdown';
+function g_io_channel_unix_get_fd(channel: PGIOChannel): gint; cdecl; external LazGLib2_library name 'g_io_channel_unix_get_fd';
+function g_io_channel_unix_new(fd: gint): PGIOChannel; cdecl; external LazGLib2_library name 'g_io_channel_unix_new';
+function g_io_channel_write_chars(channel: PGIOChannel; buf: Pgchar; count: gssize; bytes_written: Pgsize; error: PPGError): TGIOStatus; cdecl; external LazGLib2_library name 'g_io_channel_write_chars';
+function g_io_channel_write_unichar(channel: PGIOChannel; thechar: gunichar; error: PPGError): TGIOStatus; cdecl; external LazGLib2_library name 'g_io_channel_write_unichar';
+function g_io_create_watch(channel: PGIOChannel; condition: TGIOCondition): PGSource; cdecl; external LazGLib2_library name 'g_io_create_watch';
+function g_key_file_error_quark: TGQuark; cdecl; external LazGLib2_library name 'g_key_file_error_quark';
+function g_key_file_get_boolean(key_file: PGKeyFile; group_name: Pgchar; key: Pgchar; error: PPGError): gboolean; cdecl; external LazGLib2_library name 'g_key_file_get_boolean';
+function g_key_file_get_boolean_list(key_file: PGKeyFile; group_name: Pgchar; key: Pgchar; length: Pgsize; error: PPGError): Pgboolean; cdecl; external LazGLib2_library name 'g_key_file_get_boolean_list';
+function g_key_file_get_comment(key_file: PGKeyFile; group_name: Pgchar; key: Pgchar; error: PPGError): Pgchar; cdecl; external LazGLib2_library name 'g_key_file_get_comment';
+function g_key_file_get_double(key_file: PGKeyFile; group_name: Pgchar; key: Pgchar; error: PPGError): gdouble; cdecl; external LazGLib2_library name 'g_key_file_get_double';
+function g_key_file_get_double_list(key_file: PGKeyFile; group_name: Pgchar; key: Pgchar; length: Pgsize; error: PPGError): Pgdouble; cdecl; external LazGLib2_library name 'g_key_file_get_double_list';
+function g_key_file_get_groups(key_file: PGKeyFile; length: Pgsize): PPgchar; cdecl; external LazGLib2_library name 'g_key_file_get_groups';
+function g_key_file_get_int64(key_file: PGKeyFile; group_name: Pgchar; key: Pgchar; error: PPGError): gint64; cdecl; external LazGLib2_library name 'g_key_file_get_int64';
+function g_key_file_get_integer(key_file: PGKeyFile; group_name: Pgchar; key: Pgchar; error: PPGError): gint; cdecl; external LazGLib2_library name 'g_key_file_get_integer';
+function g_key_file_get_integer_list(key_file: PGKeyFile; group_name: Pgchar; key: Pgchar; length: Pgsize; error: PPGError): Pgint; cdecl; external LazGLib2_library name 'g_key_file_get_integer_list';
+function g_key_file_get_keys(key_file: PGKeyFile; group_name: Pgchar; length: Pgsize; error: PPGError): PPgchar; cdecl; external LazGLib2_library name 'g_key_file_get_keys';
+function g_key_file_get_locale_for_key(key_file: PGKeyFile; group_name: Pgchar; key: Pgchar; locale: Pgchar): Pgchar; cdecl; external LazGLib2_library name 'g_key_file_get_locale_for_key';
+function g_key_file_get_locale_string(key_file: PGKeyFile; group_name: Pgchar; key: Pgchar; locale: Pgchar; error: PPGError): Pgchar; cdecl; external LazGLib2_library name 'g_key_file_get_locale_string';
+function g_key_file_get_locale_string_list(key_file: PGKeyFile; group_name: Pgchar; key: Pgchar; locale: Pgchar; length: Pgsize; error: PPGError): PPgchar; cdecl; external LazGLib2_library name 'g_key_file_get_locale_string_list';
+function g_key_file_get_start_group(key_file: PGKeyFile): Pgchar; cdecl; external LazGLib2_library name 'g_key_file_get_start_group';
+function g_key_file_get_string(key_file: PGKeyFile; group_name: Pgchar; key: Pgchar; error: PPGError): Pgchar; cdecl; external LazGLib2_library name 'g_key_file_get_string';
+function g_key_file_get_string_list(key_file: PGKeyFile; group_name: Pgchar; key: Pgchar; length: Pgsize; error: PPGError): PPgchar; cdecl; external LazGLib2_library name 'g_key_file_get_string_list';
+function g_key_file_get_type: TGType; cdecl; external LazGLib2_library name 'g_key_file_get_type';
+function g_key_file_get_uint64(key_file: PGKeyFile; group_name: Pgchar; key: Pgchar; error: PPGError): guint64; cdecl; external LazGLib2_library name 'g_key_file_get_uint64';
+function g_key_file_get_value(key_file: PGKeyFile; group_name: Pgchar; key: Pgchar; error: PPGError): Pgchar; cdecl; external LazGLib2_library name 'g_key_file_get_value';
+function g_key_file_has_group(key_file: PGKeyFile; group_name: Pgchar): gboolean; cdecl; external LazGLib2_library name 'g_key_file_has_group';
+function g_key_file_has_key(key_file: PGKeyFile; group_name: Pgchar; key: Pgchar; error: PPGError): gboolean; cdecl; external LazGLib2_library name 'g_key_file_has_key';
+function g_key_file_load_from_bytes(key_file: PGKeyFile; bytes: PGBytes; flags: TGKeyFileFlags; error: PPGError): gboolean; cdecl; external LazGLib2_library name 'g_key_file_load_from_bytes';
+function g_key_file_load_from_data(key_file: PGKeyFile; data: Pgchar; length: gsize; flags: TGKeyFileFlags; error: PPGError): gboolean; cdecl; external LazGLib2_library name 'g_key_file_load_from_data';
+function g_key_file_load_from_data_dirs(key_file: PGKeyFile; file_: Pgchar; full_path: PPgchar; flags: TGKeyFileFlags; error: PPGError): gboolean; cdecl; external LazGLib2_library name 'g_key_file_load_from_data_dirs';
+function g_key_file_load_from_dirs(key_file: PGKeyFile; file_: Pgchar; search_dirs: PPgchar; full_path: PPgchar; flags: TGKeyFileFlags; error: PPGError): gboolean; cdecl; external LazGLib2_library name 'g_key_file_load_from_dirs';
+function g_key_file_load_from_file(key_file: PGKeyFile; file_: Pgchar; flags: TGKeyFileFlags; error: PPGError): gboolean; cdecl; external LazGLib2_library name 'g_key_file_load_from_file';
+function g_key_file_new: PGKeyFile; cdecl; external LazGLib2_library name 'g_key_file_new';
+function g_key_file_ref(key_file: PGKeyFile): PGKeyFile; cdecl; external LazGLib2_library name 'g_key_file_ref';
+function g_key_file_remove_comment(key_file: PGKeyFile; group_name: Pgchar; key: Pgchar; error: PPGError): gboolean; cdecl; external LazGLib2_library name 'g_key_file_remove_comment';
+function g_key_file_remove_group(key_file: PGKeyFile; group_name: Pgchar; error: PPGError): gboolean; cdecl; external LazGLib2_library name 'g_key_file_remove_group';
+function g_key_file_remove_key(key_file: PGKeyFile; group_name: Pgchar; key: Pgchar; error: PPGError): gboolean; cdecl; external LazGLib2_library name 'g_key_file_remove_key';
+function g_key_file_save_to_file(key_file: PGKeyFile; filename: Pgchar; error: PPGError): gboolean; cdecl; external LazGLib2_library name 'g_key_file_save_to_file';
+function g_key_file_set_comment(key_file: PGKeyFile; group_name: Pgchar; key: Pgchar; comment: Pgchar; error: PPGError): gboolean; cdecl; external LazGLib2_library name 'g_key_file_set_comment';
+function g_key_file_to_data(key_file: PGKeyFile; length: Pgsize; error: PPGError): Pgchar; cdecl; external LazGLib2_library name 'g_key_file_to_data';
+function g_list_alloc: PGList; cdecl; external LazGLib2_library name 'g_list_alloc';
+function g_list_append(list: PGList; data: gpointer): PGList; cdecl; external LazGLib2_library name 'g_list_append';
+function g_list_concat(list1: PGList; list2: PGList): PGList; cdecl; external LazGLib2_library name 'g_list_concat';
+function g_list_copy(list: PGList): PGList; cdecl; external LazGLib2_library name 'g_list_copy';
+function g_list_copy_deep(list: PGList; func: TGCopyFunc; user_data: gpointer): PGList; cdecl; external LazGLib2_library name 'g_list_copy_deep';
+function g_list_delete_link(list: PGList; link_: PGList): PGList; cdecl; external LazGLib2_library name 'g_list_delete_link';
+function g_list_find(list: PGList; data: Pgpointer): PGList; cdecl; external LazGLib2_library name 'g_list_find';
+function g_list_find_custom(list: PGList; data: Pgpointer; func: TGCompareFunc): PGList; cdecl; external LazGLib2_library name 'g_list_find_custom';
+function g_list_first(list: PGList): PGList; cdecl; external LazGLib2_library name 'g_list_first';
+function g_list_index(list: PGList; data: Pgpointer): gint; cdecl; external LazGLib2_library name 'g_list_index';
+function g_list_insert(list: PGList; data: gpointer; position: gint): PGList; cdecl; external LazGLib2_library name 'g_list_insert';
+function g_list_insert_before(list: PGList; sibling: PGList; data: gpointer): PGList; cdecl; external LazGLib2_library name 'g_list_insert_before';
+function g_list_insert_before_link(list: PGList; sibling: PGList; link_: PGList): PGList; cdecl; external LazGLib2_library name 'g_list_insert_before_link';
+function g_list_insert_sorted(list: PGList; data: gpointer; func: TGCompareFunc): PGList; cdecl; external LazGLib2_library name 'g_list_insert_sorted';
+function g_list_insert_sorted_with_data(list: PGList; data: gpointer; func: TGCompareDataFunc; user_data: gpointer): PGList; cdecl; external LazGLib2_library name 'g_list_insert_sorted_with_data';
+function g_list_last(list: PGList): PGList; cdecl; external LazGLib2_library name 'g_list_last';
+function g_list_length(list: PGList): guint; cdecl; external LazGLib2_library name 'g_list_length';
+function g_list_nth(list: PGList; n: guint): PGList; cdecl; external LazGLib2_library name 'g_list_nth';
+function g_list_nth_data(list: PGList; n: guint): gpointer; cdecl; external LazGLib2_library name 'g_list_nth_data';
+function g_list_nth_prev(list: PGList; n: guint): PGList; cdecl; external LazGLib2_library name 'g_list_nth_prev';
+function g_list_position(list: PGList; llink: PGList): gint; cdecl; external LazGLib2_library name 'g_list_position';
+function g_list_prepend(list: PGList; data: gpointer): PGList; cdecl; external LazGLib2_library name 'g_list_prepend';
+function g_list_remove(list: PGList; data: Pgpointer): PGList; cdecl; external LazGLib2_library name 'g_list_remove';
+function g_list_remove_all(list: PGList; data: Pgpointer): PGList; cdecl; external LazGLib2_library name 'g_list_remove_all';
+function g_list_remove_link(list: PGList; llink: PGList): PGList; cdecl; external LazGLib2_library name 'g_list_remove_link';
+function g_list_reverse(list: PGList): PGList; cdecl; external LazGLib2_library name 'g_list_reverse';
+function g_list_sort(list: PGList; compare_func: TGCompareFunc): PGList; cdecl; external LazGLib2_library name 'g_list_sort';
+function g_list_sort_with_data(list: PGList; compare_func: TGCompareDataFunc; user_data: gpointer): PGList; cdecl; external LazGLib2_library name 'g_list_sort_with_data';
+function g_listenv: PPgchar; cdecl; external LazGLib2_library name 'g_listenv';
+function g_locale_from_utf8(utf8string: Pgchar; len: gssize; bytes_read: Pgsize; bytes_written: Pgsize; error: PPGError): Pgchar; cdecl; external LazGLib2_library name 'g_locale_from_utf8';
+function g_locale_to_utf8(opsysstring: Pgchar; len: gssize; bytes_read: Pgsize; bytes_written: Pgsize; error: PPGError): Pgchar; cdecl; external LazGLib2_library name 'g_locale_to_utf8';
+function g_log_set_always_fatal(fatal_mask: TGLogLevelFlags): TGLogLevelFlags; cdecl; external LazGLib2_library name 'g_log_set_always_fatal';
+function g_log_set_default_handler(log_func: TGLogFunc; user_data: gpointer): TGLogFunc; cdecl; external LazGLib2_library name 'g_log_set_default_handler';
+function g_log_set_fatal_mask(log_domain: Pgchar; fatal_mask: TGLogLevelFlags): TGLogLevelFlags; cdecl; external LazGLib2_library name 'g_log_set_fatal_mask';
+function g_log_set_handler(log_domain: Pgchar; log_levels: TGLogLevelFlags; log_func: TGLogFunc; user_data: gpointer): guint; cdecl; external LazGLib2_library name 'g_log_set_handler';
+function g_log_set_handler_full(log_domain: Pgchar; log_levels: TGLogLevelFlags; log_func: TGLogFunc; user_data: gpointer; destroy_: TGDestroyNotify): guint; cdecl; external LazGLib2_library name 'g_log_set_handler_full';
+function g_log_writer_default(log_level: TGLogLevelFlags; fields: PGLogField; n_fields: gsize; user_data: gpointer): TGLogWriterOutput; cdecl; external LazGLib2_library name 'g_log_writer_default';
+function g_log_writer_format_fields(log_level: TGLogLevelFlags; fields: PGLogField; n_fields: gsize; use_color: gboolean): Pgchar; cdecl; external LazGLib2_library name 'g_log_writer_format_fields';
+function g_log_writer_is_journald(output_fd: gint): gboolean; cdecl; external LazGLib2_library name 'g_log_writer_is_journald';
+function g_log_writer_journald(log_level: TGLogLevelFlags; fields: PGLogField; n_fields: gsize; user_data: gpointer): TGLogWriterOutput; cdecl; external LazGLib2_library name 'g_log_writer_journald';
+function g_log_writer_standard_streams(log_level: TGLogLevelFlags; fields: PGLogField; n_fields: gsize; user_data: gpointer): TGLogWriterOutput; cdecl; external LazGLib2_library name 'g_log_writer_standard_streams';
+function g_log_writer_supports_color(output_fd: gint): gboolean; cdecl; external LazGLib2_library name 'g_log_writer_supports_color';
+function g_main_context_acquire(context: PGMainContext): gboolean; cdecl; external LazGLib2_library name 'g_main_context_acquire';
+function g_main_context_check(context: PGMainContext; max_priority: gint; fds: PGPollFD; n_fds: gint): gboolean; cdecl; external LazGLib2_library name 'g_main_context_check';
+function g_main_context_default: PGMainContext; cdecl; external LazGLib2_library name 'g_main_context_default';
+function g_main_context_find_source_by_funcs_user_data(context: PGMainContext; funcs: PGSourceFuncs; user_data: gpointer): PGSource; cdecl; external LazGLib2_library name 'g_main_context_find_source_by_funcs_user_data';
+function g_main_context_find_source_by_id(context: PGMainContext; source_id: guint): PGSource; cdecl; external LazGLib2_library name 'g_main_context_find_source_by_id';
+function g_main_context_find_source_by_user_data(context: PGMainContext; user_data: gpointer): PGSource; cdecl; external LazGLib2_library name 'g_main_context_find_source_by_user_data';
+function g_main_context_get_poll_func(context: PGMainContext): TGPollFunc; cdecl; external LazGLib2_library name 'g_main_context_get_poll_func';
+function g_main_context_get_thread_default: PGMainContext; cdecl; external LazGLib2_library name 'g_main_context_get_thread_default';
+function g_main_context_get_type: TGType; cdecl; external LazGLib2_library name 'g_main_context_get_type';
+function g_main_context_is_owner(context: PGMainContext): gboolean; cdecl; external LazGLib2_library name 'g_main_context_is_owner';
+function g_main_context_iteration(context: PGMainContext; may_block: gboolean): gboolean; cdecl; external LazGLib2_library name 'g_main_context_iteration';
+function g_main_context_new: PGMainContext; cdecl; external LazGLib2_library name 'g_main_context_new';
+function g_main_context_pending(context: PGMainContext): gboolean; cdecl; external LazGLib2_library name 'g_main_context_pending';
+function g_main_context_prepare(context: PGMainContext; priority: Pgint): gboolean; cdecl; external LazGLib2_library name 'g_main_context_prepare';
+function g_main_context_query(context: PGMainContext; max_priority: gint; timeout_: Pgint; fds: PGPollFD; n_fds: gint): gint; cdecl; external LazGLib2_library name 'g_main_context_query';
+function g_main_context_ref(context: PGMainContext): PGMainContext; cdecl; external LazGLib2_library name 'g_main_context_ref';
+function g_main_context_ref_thread_default: PGMainContext; cdecl; external LazGLib2_library name 'g_main_context_ref_thread_default';
+function g_main_current_source: PGSource; cdecl; external LazGLib2_library name 'g_main_current_source';
+function g_main_depth: gint; cdecl; external LazGLib2_library name 'g_main_depth';
+function g_main_loop_get_context(loop: PGMainLoop): PGMainContext; cdecl; external LazGLib2_library name 'g_main_loop_get_context';
+function g_main_loop_get_type: TGType; cdecl; external LazGLib2_library name 'g_main_loop_get_type';
+function g_main_loop_is_running(loop: PGMainLoop): gboolean; cdecl; external LazGLib2_library name 'g_main_loop_is_running';
+function g_main_loop_new(context: PGMainContext; is_running: gboolean): PGMainLoop; cdecl; external LazGLib2_library name 'g_main_loop_new';
+function g_main_loop_ref(loop: PGMainLoop): PGMainLoop; cdecl; external LazGLib2_library name 'g_main_loop_ref';
+function g_malloc(n_bytes: gsize): gpointer; cdecl; external LazGLib2_library name 'g_malloc';
+function g_malloc0(n_bytes: gsize): gpointer; cdecl; external LazGLib2_library name 'g_malloc0';
+function g_malloc0_n(n_blocks: gsize; n_block_bytes: gsize): gpointer; cdecl; external LazGLib2_library name 'g_malloc0_n';
+function g_malloc_n(n_blocks: gsize; n_block_bytes: gsize): gpointer; cdecl; external LazGLib2_library name 'g_malloc_n';
+function g_mapped_file_get_bytes(file_: PGMappedFile): PGBytes; cdecl; external LazGLib2_library name 'g_mapped_file_get_bytes';
+function g_mapped_file_get_contents(file_: PGMappedFile): Pgchar; cdecl; external LazGLib2_library name 'g_mapped_file_get_contents';
+function g_mapped_file_get_length(file_: PGMappedFile): gsize; cdecl; external LazGLib2_library name 'g_mapped_file_get_length';
+function g_mapped_file_get_type: TGType; cdecl; external LazGLib2_library name 'g_mapped_file_get_type';
+function g_mapped_file_new(filename: Pgchar; writable: gboolean; error: PPGError): PGMappedFile; cdecl; external LazGLib2_library name 'g_mapped_file_new';
+function g_mapped_file_new_from_fd(fd: gint; writable: gboolean; error: PPGError): PGMappedFile; cdecl; external LazGLib2_library name 'g_mapped_file_new_from_fd';
+function g_mapped_file_ref(file_: PGMappedFile): PGMappedFile; cdecl; external LazGLib2_library name 'g_mapped_file_ref';
+function g_markup_collect_attributes(element_name: Pgchar; attribute_names: PPgchar; attribute_values: PPgchar; error: PPGError; first_type: TGMarkupCollectType; first_attr: Pgchar; args: array of const): gboolean; cdecl; external LazGLib2_library name 'g_markup_collect_attributes';
+function g_markup_error_quark: TGQuark; cdecl; external LazGLib2_library name 'g_markup_error_quark';
+function g_markup_escape_text(text: Pgchar; length: gssize): Pgchar; cdecl; external LazGLib2_library name 'g_markup_escape_text';
+function g_markup_parse_context_end_parse(context: PGMarkupParseContext; error: PPGError): gboolean; cdecl; external LazGLib2_library name 'g_markup_parse_context_end_parse';
+function g_markup_parse_context_get_element(context: PGMarkupParseContext): Pgchar; cdecl; external LazGLib2_library name 'g_markup_parse_context_get_element';
+function g_markup_parse_context_get_element_stack(context: PGMarkupParseContext): PGSList; cdecl; external LazGLib2_library name 'g_markup_parse_context_get_element_stack';
+function g_markup_parse_context_get_type: TGType; cdecl; external LazGLib2_library name 'g_markup_parse_context_get_type';
+function g_markup_parse_context_get_user_data(context: PGMarkupParseContext): gpointer; cdecl; external LazGLib2_library name 'g_markup_parse_context_get_user_data';
+function g_markup_parse_context_new(parser: PGMarkupParser; flags: TGMarkupParseFlags; user_data: gpointer; user_data_dnotify: TGDestroyNotify): PGMarkupParseContext; cdecl; external LazGLib2_library name 'g_markup_parse_context_new';
+function g_markup_parse_context_parse(context: PGMarkupParseContext; text: Pgchar; text_len: gssize; error: PPGError): gboolean; cdecl; external LazGLib2_library name 'g_markup_parse_context_parse';
+function g_markup_parse_context_pop(context: PGMarkupParseContext): gpointer; cdecl; external LazGLib2_library name 'g_markup_parse_context_pop';
+function g_markup_parse_context_ref(context: PGMarkupParseContext): PGMarkupParseContext; cdecl; external LazGLib2_library name 'g_markup_parse_context_ref';
+function g_markup_printf_escaped(format: Pgchar; args: array of const): Pgchar; cdecl; external LazGLib2_library name 'g_markup_printf_escaped';
+function g_markup_vprintf_escaped(format: Pgchar; args: Tva_list): Pgchar; cdecl; external LazGLib2_library name 'g_markup_vprintf_escaped';
+function g_match_info_expand_references(match_info: PGMatchInfo; string_to_expand: Pgchar; error: PPGError): Pgchar; cdecl; external LazGLib2_library name 'g_match_info_expand_references';
+function g_match_info_fetch(match_info: PGMatchInfo; match_num: gint): Pgchar; cdecl; external LazGLib2_library name 'g_match_info_fetch';
+function g_match_info_fetch_all(match_info: PGMatchInfo): PPgchar; cdecl; external LazGLib2_library name 'g_match_info_fetch_all';
+function g_match_info_fetch_named(match_info: PGMatchInfo; name: Pgchar): Pgchar; cdecl; external LazGLib2_library name 'g_match_info_fetch_named';
+function g_match_info_fetch_named_pos(match_info: PGMatchInfo; name: Pgchar; start_pos: Pgint; end_pos: Pgint): gboolean; cdecl; external LazGLib2_library name 'g_match_info_fetch_named_pos';
+function g_match_info_fetch_pos(match_info: PGMatchInfo; match_num: gint; start_pos: Pgint; end_pos: Pgint): gboolean; cdecl; external LazGLib2_library name 'g_match_info_fetch_pos';
+function g_match_info_get_match_count(match_info: PGMatchInfo): gint; cdecl; external LazGLib2_library name 'g_match_info_get_match_count';
+function g_match_info_get_regex(match_info: PGMatchInfo): PGRegex; cdecl; external LazGLib2_library name 'g_match_info_get_regex';
+function g_match_info_get_string(match_info: PGMatchInfo): Pgchar; cdecl; external LazGLib2_library name 'g_match_info_get_string';
+function g_match_info_get_type: TGType; cdecl; external LazGLib2_library name 'g_match_info_get_type';
+function g_match_info_is_partial_match(match_info: PGMatchInfo): gboolean; cdecl; external LazGLib2_library name 'g_match_info_is_partial_match';
+function g_match_info_matches(match_info: PGMatchInfo): gboolean; cdecl; external LazGLib2_library name 'g_match_info_matches';
+function g_match_info_next(match_info: PGMatchInfo; error: PPGError): gboolean; cdecl; external LazGLib2_library name 'g_match_info_next';
+function g_match_info_ref(match_info: PGMatchInfo): PGMatchInfo; cdecl; external LazGLib2_library name 'g_match_info_ref';
+function g_memdup(mem: Pgpointer; byte_size: guint): gpointer; cdecl; external LazGLib2_library name 'g_memdup';
+function g_mkdir_with_parents(pathname: Pgchar; mode: gint): gint; cdecl; external LazGLib2_library name 'g_mkdir_with_parents';
+function g_mkdtemp(tmpl: Pgchar): Pgchar; cdecl; external LazGLib2_library name 'g_mkdtemp';
+function g_mkdtemp_full(tmpl: Pgchar; mode: gint): Pgchar; cdecl; external LazGLib2_library name 'g_mkdtemp_full';
+function g_mkstemp(tmpl: Pgchar): gint; cdecl; external LazGLib2_library name 'g_mkstemp';
+function g_mkstemp_full(tmpl: Pgchar; flags: gint; mode: gint): gint; cdecl; external LazGLib2_library name 'g_mkstemp_full';
+function g_mutex_trylock(mutex: PGMutex): gboolean; cdecl; external LazGLib2_library name 'g_mutex_trylock';
+function g_node_child_index(node: PGNode; data: gpointer): gint; cdecl; external LazGLib2_library name 'g_node_child_index';
+function g_node_child_position(node: PGNode; child: PGNode): gint; cdecl; external LazGLib2_library name 'g_node_child_position';
+function g_node_copy(node: PGNode): PGNode; cdecl; external LazGLib2_library name 'g_node_copy';
+function g_node_copy_deep(node: PGNode; copy_func: TGCopyFunc; data: gpointer): PGNode; cdecl; external LazGLib2_library name 'g_node_copy_deep';
+function g_node_depth(node: PGNode): guint; cdecl; external LazGLib2_library name 'g_node_depth';
+function g_node_find(root: PGNode; order: TGTraverseType; flags: TGTraverseFlags; data: gpointer): PGNode; cdecl; external LazGLib2_library name 'g_node_find';
+function g_node_find_child(node: PGNode; flags: TGTraverseFlags; data: gpointer): PGNode; cdecl; external LazGLib2_library name 'g_node_find_child';
+function g_node_first_sibling(node: PGNode): PGNode; cdecl; external LazGLib2_library name 'g_node_first_sibling';
+function g_node_get_root(node: PGNode): PGNode; cdecl; external LazGLib2_library name 'g_node_get_root';
+function g_node_insert(parent: PGNode; position: gint; node: PGNode): PGNode; cdecl; external LazGLib2_library name 'g_node_insert';
+function g_node_insert_after(parent: PGNode; sibling: PGNode; node: PGNode): PGNode; cdecl; external LazGLib2_library name 'g_node_insert_after';
+function g_node_insert_before(parent: PGNode; sibling: PGNode; node: PGNode): PGNode; cdecl; external LazGLib2_library name 'g_node_insert_before';
+function g_node_is_ancestor(node: PGNode; descendant: PGNode): gboolean; cdecl; external LazGLib2_library name 'g_node_is_ancestor';
+function g_node_last_child(node: PGNode): PGNode; cdecl; external LazGLib2_library name 'g_node_last_child';
+function g_node_last_sibling(node: PGNode): PGNode; cdecl; external LazGLib2_library name 'g_node_last_sibling';
+function g_node_max_height(root: PGNode): guint; cdecl; external LazGLib2_library name 'g_node_max_height';
+function g_node_n_children(node: PGNode): guint; cdecl; external LazGLib2_library name 'g_node_n_children';
+function g_node_n_nodes(root: PGNode; flags: TGTraverseFlags): guint; cdecl; external LazGLib2_library name 'g_node_n_nodes';
+function g_node_new(data: gpointer): PGNode; cdecl; external LazGLib2_library name 'g_node_new';
+function g_node_nth_child(node: PGNode; n: guint): PGNode; cdecl; external LazGLib2_library name 'g_node_nth_child';
+function g_node_prepend(parent: PGNode; node: PGNode): PGNode; cdecl; external LazGLib2_library name 'g_node_prepend';
+function g_number_parser_error_quark: TGQuark; cdecl; external LazGLib2_library name 'g_number_parser_error_quark';
+function g_once_impl(once: PGOnce; func: TGThreadFunc; arg: gpointer): gpointer; cdecl; external LazGLib2_library name 'g_once_impl';
+function g_once_init_enter(location: Pgpointer): gboolean; cdecl; external LazGLib2_library name 'g_once_init_enter';
+function g_option_context_get_description(context: PGOptionContext): Pgchar; cdecl; external LazGLib2_library name 'g_option_context_get_description';
+function g_option_context_get_help(context: PGOptionContext; main_help: gboolean; group: PGOptionGroup): Pgchar; cdecl; external LazGLib2_library name 'g_option_context_get_help';
+function g_option_context_get_help_enabled(context: PGOptionContext): gboolean; cdecl; external LazGLib2_library name 'g_option_context_get_help_enabled';
+function g_option_context_get_ignore_unknown_options(context: PGOptionContext): gboolean; cdecl; external LazGLib2_library name 'g_option_context_get_ignore_unknown_options';
+function g_option_context_get_main_group(context: PGOptionContext): PGOptionGroup; cdecl; external LazGLib2_library name 'g_option_context_get_main_group';
+function g_option_context_get_strict_posix(context: PGOptionContext): gboolean; cdecl; external LazGLib2_library name 'g_option_context_get_strict_posix';
+function g_option_context_get_summary(context: PGOptionContext): Pgchar; cdecl; external LazGLib2_library name 'g_option_context_get_summary';
+function g_option_context_new(parameter_string: Pgchar): PGOptionContext; cdecl; external LazGLib2_library name 'g_option_context_new';
+function g_option_context_parse(context: PGOptionContext; argc: Pgint; argv: PPPgchar; error: PPGError): gboolean; cdecl; external LazGLib2_library name 'g_option_context_parse';
+function g_option_context_parse_strv(context: PGOptionContext; arguments: PPPgchar; error: PPGError): gboolean; cdecl; external LazGLib2_library name 'g_option_context_parse_strv';
+function g_option_error_quark: TGQuark; cdecl; external LazGLib2_library name 'g_option_error_quark';
+function g_option_group_get_type: TGType; cdecl; external LazGLib2_library name 'g_option_group_get_type';
+function g_option_group_new(name: Pgchar; description: Pgchar; help_description: Pgchar; user_data: gpointer; destroy_: TGDestroyNotify): PGOptionGroup; cdecl; external LazGLib2_library name 'g_option_group_new';
+function g_option_group_ref(group: PGOptionGroup): PGOptionGroup; cdecl; external LazGLib2_library name 'g_option_group_ref';
+function g_parse_debug_string(string_: Pgchar; keys: PGDebugKey; nkeys: guint): guint; cdecl; external LazGLib2_library name 'g_parse_debug_string';
+function g_path_get_basename(file_name: Pgchar): Pgchar; cdecl; external LazGLib2_library name 'g_path_get_basename';
+function g_path_get_dirname(file_name: Pgchar): Pgchar; cdecl; external LazGLib2_library name 'g_path_get_dirname';
+function g_path_is_absolute(file_name: Pgchar): gboolean; cdecl; external LazGLib2_library name 'g_path_is_absolute';
+function g_path_skip_root(file_name: Pgchar): Pgchar; cdecl; external LazGLib2_library name 'g_path_skip_root';
+function g_pattern_match(pspec: PGPatternSpec; string_length: guint; string_: Pgchar; string_reversed: Pgchar): gboolean; cdecl; external LazGLib2_library name 'g_pattern_match';
+function g_pattern_match_simple(pattern: Pgchar; string_: Pgchar): gboolean; cdecl; external LazGLib2_library name 'g_pattern_match_simple';
+function g_pattern_match_string(pspec: PGPatternSpec; string_: Pgchar): gboolean; cdecl; external LazGLib2_library name 'g_pattern_match_string';
+function g_pattern_spec_equal(pspec1: PGPatternSpec; pspec2: PGPatternSpec): gboolean; cdecl; external LazGLib2_library name 'g_pattern_spec_equal';
+function g_pattern_spec_get_type: TGType; cdecl; external LazGLib2_library name 'g_pattern_spec_get_type';
+function g_pattern_spec_new(pattern: Pgchar): PGPatternSpec; cdecl; external LazGLib2_library name 'g_pattern_spec_new';
+function g_pointer_bit_trylock(address: Pgpointer; lock_bit: gint): gboolean; cdecl; external LazGLib2_library name 'g_pointer_bit_trylock';
+function g_poll(fds: PGPollFD; nfds: guint; timeout: gint): gint; cdecl; external LazGLib2_library name 'g_poll';
+function g_pollfd_get_type: TGType; cdecl; external LazGLib2_library name 'g_pollfd_get_type';
+function g_printf(format: Pgchar; args: array of const): gint; cdecl; external LazGLib2_library name 'g_printf';
+function g_printf_string_upper_bound(format: Pgchar; args: Tva_list): gsize; cdecl; external LazGLib2_library name 'g_printf_string_upper_bound';
+function g_private_get(key: PGPrivate): gpointer; cdecl; external LazGLib2_library name 'g_private_get';
+function g_ptr_array_copy(array_: Pgpointer; func: TGCopyFunc; user_data: gpointer): Pgpointer; cdecl; external LazGLib2_library name 'g_ptr_array_copy';
+function g_ptr_array_find(haystack: Pgpointer; needle: Pgpointer; index_: Pguint): gboolean; cdecl; external LazGLib2_library name 'g_ptr_array_find';
+function g_ptr_array_find_with_equal_func(haystack: Pgpointer; needle: Pgpointer; equal_func: TGEqualFunc; index_: Pguint): gboolean; cdecl; external LazGLib2_library name 'g_ptr_array_find_with_equal_func';
+function g_ptr_array_free(array_: Pgpointer; free_seg: gboolean): Pgpointer; cdecl; external LazGLib2_library name 'g_ptr_array_free';
+function g_ptr_array_get_type: TGType; cdecl; external LazGLib2_library name 'g_ptr_array_get_type';
+function g_ptr_array_new: Pgpointer; cdecl; external LazGLib2_library name 'g_ptr_array_new';
+function g_ptr_array_new_full(reserved_size: guint; element_free_func: TGDestroyNotify): Pgpointer; cdecl; external LazGLib2_library name 'g_ptr_array_new_full';
+function g_ptr_array_new_with_free_func(element_free_func: TGDestroyNotify): Pgpointer; cdecl; external LazGLib2_library name 'g_ptr_array_new_with_free_func';
+function g_ptr_array_ref(array_: Pgpointer): Pgpointer; cdecl; external LazGLib2_library name 'g_ptr_array_ref';
+function g_ptr_array_remove(array_: Pgpointer; data: gpointer): gboolean; cdecl; external LazGLib2_library name 'g_ptr_array_remove';
+function g_ptr_array_remove_fast(array_: Pgpointer; data: gpointer): gboolean; cdecl; external LazGLib2_library name 'g_ptr_array_remove_fast';
+function g_ptr_array_remove_index(array_: Pgpointer; index_: guint): gpointer; cdecl; external LazGLib2_library name 'g_ptr_array_remove_index';
+function g_ptr_array_remove_index_fast(array_: Pgpointer; index_: guint): gpointer; cdecl; external LazGLib2_library name 'g_ptr_array_remove_index_fast';
+function g_ptr_array_remove_range(array_: Pgpointer; index_: guint; length: guint): Pgpointer; cdecl; external LazGLib2_library name 'g_ptr_array_remove_range';
+function g_ptr_array_sized_new(reserved_size: guint): Pgpointer; cdecl; external LazGLib2_library name 'g_ptr_array_sized_new';
+function g_ptr_array_steal(array_: Pgpointer; len: Pgsize): Pgpointer; cdecl; external LazGLib2_library name 'g_ptr_array_steal';
+function g_ptr_array_steal_index(array_: Pgpointer; index_: guint): gpointer; cdecl; external LazGLib2_library name 'g_ptr_array_steal_index';
+function g_ptr_array_steal_index_fast(array_: Pgpointer; index_: guint): gpointer; cdecl; external LazGLib2_library name 'g_ptr_array_steal_index_fast';
+function g_quark_from_static_string(string_: Pgchar): TGQuark; cdecl; external LazGLib2_library name 'g_quark_from_static_string';
+function g_quark_from_string(string_: Pgchar): TGQuark; cdecl; external LazGLib2_library name 'g_quark_from_string';
+function g_quark_to_string(quark: TGQuark): Pgchar; cdecl; external LazGLib2_library name 'g_quark_to_string';
+function g_quark_try_string(string_: Pgchar): TGQuark; cdecl; external LazGLib2_library name 'g_quark_try_string';
+function g_queue_copy(queue: PGQueue): PGQueue; cdecl; external LazGLib2_library name 'g_queue_copy';
+function g_queue_find(queue: PGQueue; data: Pgpointer): PGList; cdecl; external LazGLib2_library name 'g_queue_find';
+function g_queue_find_custom(queue: PGQueue; data: Pgpointer; func: TGCompareFunc): PGList; cdecl; external LazGLib2_library name 'g_queue_find_custom';
+function g_queue_get_length(queue: PGQueue): guint; cdecl; external LazGLib2_library name 'g_queue_get_length';
+function g_queue_index(queue: PGQueue; data: Pgpointer): gint; cdecl; external LazGLib2_library name 'g_queue_index';
+function g_queue_is_empty(queue: PGQueue): gboolean; cdecl; external LazGLib2_library name 'g_queue_is_empty';
+function g_queue_link_index(queue: PGQueue; link_: PGList): gint; cdecl; external LazGLib2_library name 'g_queue_link_index';
+function g_queue_new: PGQueue; cdecl; external LazGLib2_library name 'g_queue_new';
+function g_queue_peek_head(queue: PGQueue): gpointer; cdecl; external LazGLib2_library name 'g_queue_peek_head';
+function g_queue_peek_head_link(queue: PGQueue): PGList; cdecl; external LazGLib2_library name 'g_queue_peek_head_link';
+function g_queue_peek_nth(queue: PGQueue; n: guint): gpointer; cdecl; external LazGLib2_library name 'g_queue_peek_nth';
+function g_queue_peek_nth_link(queue: PGQueue; n: guint): PGList; cdecl; external LazGLib2_library name 'g_queue_peek_nth_link';
+function g_queue_peek_tail(queue: PGQueue): gpointer; cdecl; external LazGLib2_library name 'g_queue_peek_tail';
+function g_queue_peek_tail_link(queue: PGQueue): PGList; cdecl; external LazGLib2_library name 'g_queue_peek_tail_link';
+function g_queue_pop_head(queue: PGQueue): gpointer; cdecl; external LazGLib2_library name 'g_queue_pop_head';
+function g_queue_pop_head_link(queue: PGQueue): PGList; cdecl; external LazGLib2_library name 'g_queue_pop_head_link';
+function g_queue_pop_nth(queue: PGQueue; n: guint): gpointer; cdecl; external LazGLib2_library name 'g_queue_pop_nth';
+function g_queue_pop_nth_link(queue: PGQueue; n: guint): PGList; cdecl; external LazGLib2_library name 'g_queue_pop_nth_link';
+function g_queue_pop_tail(queue: PGQueue): gpointer; cdecl; external LazGLib2_library name 'g_queue_pop_tail';
+function g_queue_pop_tail_link(queue: PGQueue): PGList; cdecl; external LazGLib2_library name 'g_queue_pop_tail_link';
+function g_queue_remove(queue: PGQueue; data: Pgpointer): gboolean; cdecl; external LazGLib2_library name 'g_queue_remove';
+function g_queue_remove_all(queue: PGQueue; data: Pgpointer): guint; cdecl; external LazGLib2_library name 'g_queue_remove_all';
+function g_rand_copy(rand_: PGRand): PGRand; cdecl; external LazGLib2_library name 'g_rand_copy';
+function g_rand_double(rand_: PGRand): gdouble; cdecl; external LazGLib2_library name 'g_rand_double';
+function g_rand_double_range(rand_: PGRand; begin_: gdouble; end_: gdouble): gdouble; cdecl; external LazGLib2_library name 'g_rand_double_range';
+function g_rand_int(rand_: PGRand): guint32; cdecl; external LazGLib2_library name 'g_rand_int';
+function g_rand_int_range(rand_: PGRand; begin_: gint32; end_: gint32): gint32; cdecl; external LazGLib2_library name 'g_rand_int_range';
+function g_rand_new: PGRand; cdecl; external LazGLib2_library name 'g_rand_new';
+function g_rand_new_with_seed(seed: guint32): PGRand; cdecl; external LazGLib2_library name 'g_rand_new_with_seed';
+function g_rand_new_with_seed_array(seed: Pguint32; seed_length: guint): PGRand; cdecl; external LazGLib2_library name 'g_rand_new_with_seed_array';
+function g_random_double: gdouble; cdecl; external LazGLib2_library name 'g_random_double';
+function g_random_double_range(begin_: gdouble; end_: gdouble): gdouble; cdecl; external LazGLib2_library name 'g_random_double_range';
+function g_random_int: guint32; cdecl; external LazGLib2_library name 'g_random_int';
+function g_random_int_range(begin_: gint32; end_: gint32): gint32; cdecl; external LazGLib2_library name 'g_random_int_range';
+function g_rc_box_acquire(mem_block: gpointer): gpointer; cdecl; external LazGLib2_library name 'g_rc_box_acquire';
+function g_rc_box_alloc(block_size: gsize): gpointer; cdecl; external LazGLib2_library name 'g_rc_box_alloc';
+function g_rc_box_alloc0(block_size: gsize): gpointer; cdecl; external LazGLib2_library name 'g_rc_box_alloc0';
+function g_rc_box_dup(block_size: gsize; mem_block: Pgpointer): gpointer; cdecl; external LazGLib2_library name 'g_rc_box_dup';
+function g_rc_box_get_size(mem_block: gpointer): gsize; cdecl; external LazGLib2_library name 'g_rc_box_get_size';
+function g_realloc(mem: gpointer; n_bytes: gsize): gpointer; cdecl; external LazGLib2_library name 'g_realloc';
+function g_realloc_n(mem: gpointer; n_blocks: gsize; n_block_bytes: gsize): gpointer; cdecl; external LazGLib2_library name 'g_realloc_n';
+function g_rec_mutex_trylock(rec_mutex: PGRecMutex): gboolean; cdecl; external LazGLib2_library name 'g_rec_mutex_trylock';
+function g_ref_count_compare(rc: Pgint; val: gint): gboolean; cdecl; external LazGLib2_library name 'g_ref_count_compare';
+function g_ref_count_dec(rc: Pgint): gboolean; cdecl; external LazGLib2_library name 'g_ref_count_dec';
+function g_ref_string_acquire(str: Pgchar): Pgchar; cdecl; external LazGLib2_library name 'g_ref_string_acquire';
+function g_ref_string_length(str: Pgchar): gsize; cdecl; external LazGLib2_library name 'g_ref_string_length';
+function g_ref_string_new(str: Pgchar): Pgchar; cdecl; external LazGLib2_library name 'g_ref_string_new';
+function g_ref_string_new_intern(str: Pgchar): Pgchar; cdecl; external LazGLib2_library name 'g_ref_string_new_intern';
+function g_ref_string_new_len(str: Pgchar; len: gssize): Pgchar; cdecl; external LazGLib2_library name 'g_ref_string_new_len';
+function g_regex_check_replacement(replacement: Pgchar; has_references: Pgboolean; error: PPGError): gboolean; cdecl; external LazGLib2_library name 'g_regex_check_replacement';
+function g_regex_error_quark: TGQuark; cdecl; external LazGLib2_library name 'g_regex_error_quark';
+function g_regex_escape_nul(string_: Pgchar; length: gint): Pgchar; cdecl; external LazGLib2_library name 'g_regex_escape_nul';
+function g_regex_escape_string(string_: Pgchar; length: gint): Pgchar; cdecl; external LazGLib2_library name 'g_regex_escape_string';
+function g_regex_get_capture_count(regex: PGRegex): gint; cdecl; external LazGLib2_library name 'g_regex_get_capture_count';
+function g_regex_get_compile_flags(regex: PGRegex): TGRegexCompileFlags; cdecl; external LazGLib2_library name 'g_regex_get_compile_flags';
+function g_regex_get_has_cr_or_lf(regex: PGRegex): gboolean; cdecl; external LazGLib2_library name 'g_regex_get_has_cr_or_lf';
+function g_regex_get_match_flags(regex: PGRegex): TGRegexMatchFlags; cdecl; external LazGLib2_library name 'g_regex_get_match_flags';
+function g_regex_get_max_backref(regex: PGRegex): gint; cdecl; external LazGLib2_library name 'g_regex_get_max_backref';
+function g_regex_get_max_lookbehind(regex: PGRegex): gint; cdecl; external LazGLib2_library name 'g_regex_get_max_lookbehind';
+function g_regex_get_pattern(regex: PGRegex): Pgchar; cdecl; external LazGLib2_library name 'g_regex_get_pattern';
+function g_regex_get_string_number(regex: PGRegex; name: Pgchar): gint; cdecl; external LazGLib2_library name 'g_regex_get_string_number';
+function g_regex_get_type: TGType; cdecl; external LazGLib2_library name 'g_regex_get_type';
+function g_regex_match(regex: PGRegex; string_: Pgchar; match_options: TGRegexMatchFlags; match_info: PPGMatchInfo): gboolean; cdecl; external LazGLib2_library name 'g_regex_match';
+function g_regex_match_all(regex: PGRegex; string_: Pgchar; match_options: TGRegexMatchFlags; match_info: PPGMatchInfo): gboolean; cdecl; external LazGLib2_library name 'g_regex_match_all';
+function g_regex_match_all_full(regex: PGRegex; string_: Pgchar; string_len: gssize; start_position: gint; match_options: TGRegexMatchFlags; match_info: PPGMatchInfo; error: PPGError): gboolean; cdecl; external LazGLib2_library name 'g_regex_match_all_full';
+function g_regex_match_full(regex: PGRegex; string_: Pgchar; string_len: gssize; start_position: gint; match_options: TGRegexMatchFlags; match_info: PPGMatchInfo; error: PPGError): gboolean; cdecl; external LazGLib2_library name 'g_regex_match_full';
+function g_regex_match_simple(pattern: Pgchar; string_: Pgchar; compile_options: TGRegexCompileFlags; match_options: TGRegexMatchFlags): gboolean; cdecl; external LazGLib2_library name 'g_regex_match_simple';
+function g_regex_new(pattern: Pgchar; compile_options: TGRegexCompileFlags; match_options: TGRegexMatchFlags; error: PPGError): PGRegex; cdecl; external LazGLib2_library name 'g_regex_new';
+function g_regex_ref(regex: PGRegex): PGRegex; cdecl; external LazGLib2_library name 'g_regex_ref';
+function g_regex_replace(regex: PGRegex; string_: Pgchar; string_len: gssize; start_position: gint; replacement: Pgchar; match_options: TGRegexMatchFlags; error: PPGError): Pgchar; cdecl; external LazGLib2_library name 'g_regex_replace';
+function g_regex_replace_eval(regex: PGRegex; string_: Pgchar; string_len: gssize; start_position: gint; match_options: TGRegexMatchFlags; eval: TGRegexEvalCallback; user_data: gpointer; error: PPGError): Pgchar; cdecl; external LazGLib2_library name 'g_regex_replace_eval';
+function g_regex_replace_literal(regex: PGRegex; string_: Pgchar; string_len: gssize; start_position: gint; replacement: Pgchar; match_options: TGRegexMatchFlags; error: PPGError): Pgchar; cdecl; external LazGLib2_library name 'g_regex_replace_literal';
+function g_regex_split(regex: PGRegex; string_: Pgchar; match_options: TGRegexMatchFlags): PPgchar; cdecl; external LazGLib2_library name 'g_regex_split';
+function g_regex_split_full(regex: PGRegex; string_: Pgchar; string_len: gssize; start_position: gint; match_options: TGRegexMatchFlags; max_tokens: gint; error: PPGError): PPgchar; cdecl; external LazGLib2_library name 'g_regex_split_full';
+function g_regex_split_simple(pattern: Pgchar; string_: Pgchar; compile_options: TGRegexCompileFlags; match_options: TGRegexMatchFlags): PPgchar; cdecl; external LazGLib2_library name 'g_regex_split_simple';
+function g_rmdir(filename: Pgchar): gint; cdecl; external LazGLib2_library name 'g_rmdir';
+function g_rw_lock_reader_trylock(rw_lock: PGRWLock): gboolean; cdecl; external LazGLib2_library name 'g_rw_lock_reader_trylock';
+function g_rw_lock_writer_trylock(rw_lock: PGRWLock): gboolean; cdecl; external LazGLib2_library name 'g_rw_lock_writer_trylock';
+function g_scanner_cur_line(scanner: PGScanner): guint; cdecl; external LazGLib2_library name 'g_scanner_cur_line';
+function g_scanner_cur_position(scanner: PGScanner): guint; cdecl; external LazGLib2_library name 'g_scanner_cur_position';
+function g_scanner_cur_token(scanner: PGScanner): TGTokenType; cdecl; external LazGLib2_library name 'g_scanner_cur_token';
+function g_scanner_cur_value(scanner: PGScanner): TGTokenValue; cdecl; external LazGLib2_library name 'g_scanner_cur_value';
+function g_scanner_eof(scanner: PGScanner): gboolean; cdecl; external LazGLib2_library name 'g_scanner_eof';
+function g_scanner_get_next_token(scanner: PGScanner): TGTokenType; cdecl; external LazGLib2_library name 'g_scanner_get_next_token';
+function g_scanner_lookup_symbol(scanner: PGScanner; symbol: Pgchar): gpointer; cdecl; external LazGLib2_library name 'g_scanner_lookup_symbol';
+function g_scanner_new(config_templ: PGScannerConfig): PGScanner; cdecl; external LazGLib2_library name 'g_scanner_new';
+function g_scanner_peek_next_token(scanner: PGScanner): TGTokenType; cdecl; external LazGLib2_library name 'g_scanner_peek_next_token';
+function g_scanner_scope_lookup_symbol(scanner: PGScanner; scope_id: guint; symbol: Pgchar): gpointer; cdecl; external LazGLib2_library name 'g_scanner_scope_lookup_symbol';
+function g_scanner_set_scope(scanner: PGScanner; scope_id: guint): guint; cdecl; external LazGLib2_library name 'g_scanner_set_scope';
+function g_sequence_append(seq: PGSequence; data: gpointer): PGSequenceIter; cdecl; external LazGLib2_library name 'g_sequence_append';
+function g_sequence_get(iter: PGSequenceIter): gpointer; cdecl; external LazGLib2_library name 'g_sequence_get';
+function g_sequence_get_begin_iter(seq: PGSequence): PGSequenceIter; cdecl; external LazGLib2_library name 'g_sequence_get_begin_iter';
+function g_sequence_get_end_iter(seq: PGSequence): PGSequenceIter; cdecl; external LazGLib2_library name 'g_sequence_get_end_iter';
+function g_sequence_get_iter_at_pos(seq: PGSequence; pos: gint): PGSequenceIter; cdecl; external LazGLib2_library name 'g_sequence_get_iter_at_pos';
+function g_sequence_get_length(seq: PGSequence): gint; cdecl; external LazGLib2_library name 'g_sequence_get_length';
+function g_sequence_insert_before(iter: PGSequenceIter; data: gpointer): PGSequenceIter; cdecl; external LazGLib2_library name 'g_sequence_insert_before';
+function g_sequence_insert_sorted(seq: PGSequence; data: gpointer; cmp_func: TGCompareDataFunc; cmp_data: gpointer): PGSequenceIter; cdecl; external LazGLib2_library name 'g_sequence_insert_sorted';
+function g_sequence_insert_sorted_iter(seq: PGSequence; data: gpointer; iter_cmp: TGSequenceIterCompareFunc; cmp_data: gpointer): PGSequenceIter; cdecl; external LazGLib2_library name 'g_sequence_insert_sorted_iter';
+function g_sequence_is_empty(seq: PGSequence): gboolean; cdecl; external LazGLib2_library name 'g_sequence_is_empty';
+function g_sequence_iter_compare(a: PGSequenceIter; b: PGSequenceIter): gint; cdecl; external LazGLib2_library name 'g_sequence_iter_compare';
+function g_sequence_iter_get_position(iter: PGSequenceIter): gint; cdecl; external LazGLib2_library name 'g_sequence_iter_get_position';
+function g_sequence_iter_get_sequence(iter: PGSequenceIter): PGSequence; cdecl; external LazGLib2_library name 'g_sequence_iter_get_sequence';
+function g_sequence_iter_is_begin(iter: PGSequenceIter): gboolean; cdecl; external LazGLib2_library name 'g_sequence_iter_is_begin';
+function g_sequence_iter_is_end(iter: PGSequenceIter): gboolean; cdecl; external LazGLib2_library name 'g_sequence_iter_is_end';
+function g_sequence_iter_move(iter: PGSequenceIter; delta: gint): PGSequenceIter; cdecl; external LazGLib2_library name 'g_sequence_iter_move';
+function g_sequence_iter_next(iter: PGSequenceIter): PGSequenceIter; cdecl; external LazGLib2_library name 'g_sequence_iter_next';
+function g_sequence_iter_prev(iter: PGSequenceIter): PGSequenceIter; cdecl; external LazGLib2_library name 'g_sequence_iter_prev';
+function g_sequence_lookup(seq: PGSequence; data: gpointer; cmp_func: TGCompareDataFunc; cmp_data: gpointer): PGSequenceIter; cdecl; external LazGLib2_library name 'g_sequence_lookup';
+function g_sequence_lookup_iter(seq: PGSequence; data: gpointer; iter_cmp: TGSequenceIterCompareFunc; cmp_data: gpointer): PGSequenceIter; cdecl; external LazGLib2_library name 'g_sequence_lookup_iter';
+function g_sequence_new(data_destroy: TGDestroyNotify): PGSequence; cdecl; external LazGLib2_library name 'g_sequence_new';
+function g_sequence_prepend(seq: PGSequence; data: gpointer): PGSequenceIter; cdecl; external LazGLib2_library name 'g_sequence_prepend';
+function g_sequence_range_get_midpoint(begin_: PGSequenceIter; end_: PGSequenceIter): PGSequenceIter; cdecl; external LazGLib2_library name 'g_sequence_range_get_midpoint';
+function g_sequence_search(seq: PGSequence; data: gpointer; cmp_func: TGCompareDataFunc; cmp_data: gpointer): PGSequenceIter; cdecl; external LazGLib2_library name 'g_sequence_search';
+function g_sequence_search_iter(seq: PGSequence; data: gpointer; iter_cmp: TGSequenceIterCompareFunc; cmp_data: gpointer): PGSequenceIter; cdecl; external LazGLib2_library name 'g_sequence_search_iter';
+function g_set_print_handler(func: TGPrintFunc): TGPrintFunc; cdecl; external LazGLib2_library name 'g_set_print_handler';
+function g_set_printerr_handler(func: TGPrintFunc): TGPrintFunc; cdecl; external LazGLib2_library name 'g_set_printerr_handler';
+function g_setenv(variable: Pgchar; value: Pgchar; overwrite: gboolean): gboolean; cdecl; external LazGLib2_library name 'g_setenv';
+function g_shell_error_quark: TGQuark; cdecl; external LazGLib2_library name 'g_shell_error_quark';
+function g_shell_parse_argv(command_line: Pgchar; argcp: Pgint; argvp: PPPgchar; error: PPGError): gboolean; cdecl; external LazGLib2_library name 'g_shell_parse_argv';
+function g_shell_quote(unquoted_string: Pgchar): Pgchar; cdecl; external LazGLib2_library name 'g_shell_quote';
+function g_shell_unquote(quoted_string: Pgchar; error: PPGError): Pgchar; cdecl; external LazGLib2_library name 'g_shell_unquote';
+function g_slice_alloc(block_size: gsize): gpointer; cdecl; external LazGLib2_library name 'g_slice_alloc';
+function g_slice_alloc0(block_size: gsize): gpointer; cdecl; external LazGLib2_library name 'g_slice_alloc0';
+function g_slice_copy(block_size: gsize; mem_block: Pgpointer): gpointer; cdecl; external LazGLib2_library name 'g_slice_copy';
+function g_slice_get_config(ckey: TGSliceConfig): gint64; cdecl; external LazGLib2_library name 'g_slice_get_config';
+function g_slice_get_config_state(ckey: TGSliceConfig; address: gint64; n_values: Pguint): Pgint64; cdecl; external LazGLib2_library name 'g_slice_get_config_state';
+function g_slist_alloc: PGSList; cdecl; external LazGLib2_library name 'g_slist_alloc';
+function g_slist_append(list: PGSList; data: gpointer): PGSList; cdecl; external LazGLib2_library name 'g_slist_append';
+function g_slist_concat(list1: PGSList; list2: PGSList): PGSList; cdecl; external LazGLib2_library name 'g_slist_concat';
+function g_slist_copy(list: PGSList): PGSList; cdecl; external LazGLib2_library name 'g_slist_copy';
+function g_slist_copy_deep(list: PGSList; func: TGCopyFunc; user_data: gpointer): PGSList; cdecl; external LazGLib2_library name 'g_slist_copy_deep';
+function g_slist_delete_link(list: PGSList; link_: PGSList): PGSList; cdecl; external LazGLib2_library name 'g_slist_delete_link';
+function g_slist_find(list: PGSList; data: Pgpointer): PGSList; cdecl; external LazGLib2_library name 'g_slist_find';
+function g_slist_find_custom(list: PGSList; data: Pgpointer; func: TGCompareFunc): PGSList; cdecl; external LazGLib2_library name 'g_slist_find_custom';
+function g_slist_index(list: PGSList; data: Pgpointer): gint; cdecl; external LazGLib2_library name 'g_slist_index';
+function g_slist_insert(list: PGSList; data: gpointer; position: gint): PGSList; cdecl; external LazGLib2_library name 'g_slist_insert';
+function g_slist_insert_before(slist: PGSList; sibling: PGSList; data: gpointer): PGSList; cdecl; external LazGLib2_library name 'g_slist_insert_before';
+function g_slist_insert_sorted(list: PGSList; data: gpointer; func: TGCompareFunc): PGSList; cdecl; external LazGLib2_library name 'g_slist_insert_sorted';
+function g_slist_insert_sorted_with_data(list: PGSList; data: gpointer; func: TGCompareDataFunc; user_data: gpointer): PGSList; cdecl; external LazGLib2_library name 'g_slist_insert_sorted_with_data';
+function g_slist_last(list: PGSList): PGSList; cdecl; external LazGLib2_library name 'g_slist_last';
+function g_slist_length(list: PGSList): guint; cdecl; external LazGLib2_library name 'g_slist_length';
+function g_slist_nth(list: PGSList; n: guint): PGSList; cdecl; external LazGLib2_library name 'g_slist_nth';
+function g_slist_nth_data(list: PGSList; n: guint): gpointer; cdecl; external LazGLib2_library name 'g_slist_nth_data';
+function g_slist_position(list: PGSList; llink: PGSList): gint; cdecl; external LazGLib2_library name 'g_slist_position';
+function g_slist_prepend(list: PGSList; data: gpointer): PGSList; cdecl; external LazGLib2_library name 'g_slist_prepend';
+function g_slist_remove(list: PGSList; data: Pgpointer): PGSList; cdecl; external LazGLib2_library name 'g_slist_remove';
+function g_slist_remove_all(list: PGSList; data: Pgpointer): PGSList; cdecl; external LazGLib2_library name 'g_slist_remove_all';
+function g_slist_remove_link(list: PGSList; link_: PGSList): PGSList; cdecl; external LazGLib2_library name 'g_slist_remove_link';
+function g_slist_reverse(list: PGSList): PGSList; cdecl; external LazGLib2_library name 'g_slist_reverse';
+function g_slist_sort(list: PGSList; compare_func: TGCompareFunc): PGSList; cdecl; external LazGLib2_library name 'g_slist_sort';
+function g_slist_sort_with_data(list: PGSList; compare_func: TGCompareDataFunc; user_data: gpointer): PGSList; cdecl; external LazGLib2_library name 'g_slist_sort_with_data';
+function g_snprintf(string_: Pgchar; n: gulong; format: Pgchar; args: array of const): gint; cdecl; external LazGLib2_library name 'g_snprintf';
+function g_source_add_unix_fd(source: PGSource; fd: gint; events: TGIOCondition): gpointer; cdecl; external LazGLib2_library name 'g_source_add_unix_fd';
+function g_source_attach(source: PGSource; context: PGMainContext): guint; cdecl; external LazGLib2_library name 'g_source_attach';
+function g_source_get_can_recurse(source: PGSource): gboolean; cdecl; external LazGLib2_library name 'g_source_get_can_recurse';
+function g_source_get_context(source: PGSource): PGMainContext; cdecl; external LazGLib2_library name 'g_source_get_context';
+function g_source_get_id(source: PGSource): guint; cdecl; external LazGLib2_library name 'g_source_get_id';
+function g_source_get_name(source: PGSource): Pgchar; cdecl; external LazGLib2_library name 'g_source_get_name';
+function g_source_get_priority(source: PGSource): gint; cdecl; external LazGLib2_library name 'g_source_get_priority';
+function g_source_get_ready_time(source: PGSource): gint64; cdecl; external LazGLib2_library name 'g_source_get_ready_time';
+function g_source_get_time(source: PGSource): gint64; cdecl; external LazGLib2_library name 'g_source_get_time';
+function g_source_get_type: TGType; cdecl; external LazGLib2_library name 'g_source_get_type';
+function g_source_is_destroyed(source: PGSource): gboolean; cdecl; external LazGLib2_library name 'g_source_is_destroyed';
+function g_source_new(source_funcs: PGSourceFuncs; struct_size: guint): PGSource; cdecl; external LazGLib2_library name 'g_source_new';
+function g_source_query_unix_fd(source: PGSource; tag: gpointer): TGIOCondition; cdecl; external LazGLib2_library name 'g_source_query_unix_fd';
+function g_source_ref(source: PGSource): PGSource; cdecl; external LazGLib2_library name 'g_source_ref';
+function g_source_remove(tag: guint): gboolean; cdecl; external LazGLib2_library name 'g_source_remove';
+function g_source_remove_by_funcs_user_data(funcs: PGSourceFuncs; user_data: gpointer): gboolean; cdecl; external LazGLib2_library name 'g_source_remove_by_funcs_user_data';
+function g_source_remove_by_user_data(user_data: gpointer): gboolean; cdecl; external LazGLib2_library name 'g_source_remove_by_user_data';
+function g_spaced_primes_closest(num: guint): guint; cdecl; external LazGLib2_library name 'g_spaced_primes_closest';
+function g_spawn_async(working_directory: Pgchar; argv: PPgchar; envp: PPgchar; flags: TGSpawnFlags; child_setup: TGSpawnChildSetupFunc; user_data: gpointer; child_pid: PGPid; error: PPGError): gboolean; cdecl; external LazGLib2_library name 'g_spawn_async';
+function g_spawn_async_with_fds(working_directory: Pgchar; argv: PPgchar; envp: PPgchar; flags: TGSpawnFlags; child_setup: TGSpawnChildSetupFunc; user_data: gpointer; child_pid: PGPid; stdin_fd: gint; stdout_fd: gint; stderr_fd: gint; error: PPGError): gboolean; cdecl; external LazGLib2_library name 'g_spawn_async_with_fds';
+function g_spawn_async_with_pipes(working_directory: Pgchar; argv: PPgchar; envp: PPgchar; flags: TGSpawnFlags; child_setup: TGSpawnChildSetupFunc; user_data: gpointer; child_pid: PGPid; standard_input: Pgint; standard_output: Pgint; standard_error: Pgint; error: PPGError): gboolean; cdecl; external LazGLib2_library name 'g_spawn_async_with_pipes';
+function g_spawn_check_exit_status(wait_status: gint; error: PPGError): gboolean; cdecl; external LazGLib2_library name 'g_spawn_check_exit_status';
+function g_spawn_command_line_async(command_line: Pgchar; error: PPGError): gboolean; cdecl; external LazGLib2_library name 'g_spawn_command_line_async';
+function g_spawn_command_line_sync(command_line: Pgchar; standard_output: PPgchar; standard_error: PPgchar; wait_status: Pgint; error: PPGError): gboolean; cdecl; external LazGLib2_library name 'g_spawn_command_line_sync';
+function g_spawn_error_quark: TGQuark; cdecl; external LazGLib2_library name 'g_spawn_error_quark';
+function g_spawn_exit_error_quark: TGQuark; cdecl; external LazGLib2_library name 'g_spawn_exit_error_quark';
+function g_spawn_sync(working_directory: Pgchar; argv: PPgchar; envp: PPgchar; flags: TGSpawnFlags; child_setup: TGSpawnChildSetupFunc; user_data: gpointer; standard_output: PPgchar; standard_error: PPgchar; wait_status: Pgint; error: PPGError): gboolean; cdecl; external LazGLib2_library name 'g_spawn_sync';
+function g_sprintf(string_: Pgchar; format: Pgchar; args: array of const): gint; cdecl; external LazGLib2_library name 'g_sprintf';
+function g_stpcpy(dest: Pgchar; src: Pgchar): Pgchar; cdecl; external LazGLib2_library name 'g_stpcpy';
+function g_str_equal(v1: Pgpointer; v2: Pgpointer): gboolean; cdecl; external LazGLib2_library name 'g_str_equal';
+function g_str_has_prefix(str: Pgchar; prefix: Pgchar): gboolean; cdecl; external LazGLib2_library name 'g_str_has_prefix';
+function g_str_has_suffix(str: Pgchar; suffix: Pgchar): gboolean; cdecl; external LazGLib2_library name 'g_str_has_suffix';
+function g_str_hash(v: Pgpointer): guint; cdecl; external LazGLib2_library name 'g_str_hash';
+function g_str_is_ascii(str: Pgchar): gboolean; cdecl; external LazGLib2_library name 'g_str_is_ascii';
+function g_str_match_string(search_term: Pgchar; potential_hit: Pgchar; accept_alternates: gboolean): gboolean; cdecl; external LazGLib2_library name 'g_str_match_string';
+function g_str_to_ascii(str: Pgchar; from_locale: Pgchar): Pgchar; cdecl; external LazGLib2_library name 'g_str_to_ascii';
+function g_str_tokenize_and_fold(string_: Pgchar; translit_locale: Pgchar; ascii_alternates: PPPgchar): PPgchar; cdecl; external LazGLib2_library name 'g_str_tokenize_and_fold';
+function g_strcanon(string_: Pgchar; valid_chars: Pgchar; substitutor: gchar): Pgchar; cdecl; external LazGLib2_library name 'g_strcanon';
+function g_strchomp(string_: Pgchar): Pgchar; cdecl; external LazGLib2_library name 'g_strchomp';
+function g_strchug(string_: Pgchar): Pgchar; cdecl; external LazGLib2_library name 'g_strchug';
+function g_strcmp0(str1: Pgchar; str2: Pgchar): gint; cdecl; external LazGLib2_library name 'g_strcmp0';
+function g_strcompress(source: Pgchar): Pgchar; cdecl; external LazGLib2_library name 'g_strcompress';
+function g_strconcat(string1: Pgchar; args: array of const): Pgchar; cdecl; external LazGLib2_library name 'g_strconcat';
+function g_strdelimit(string_: Pgchar; delimiters: Pgchar; new_delimiter: gchar): Pgchar; cdecl; external LazGLib2_library name 'g_strdelimit';
+function g_strdup(str: Pgchar): Pgchar; cdecl; external LazGLib2_library name 'g_strdup';
+function g_strdup_printf(format: Pgchar; args: array of const): Pgchar; cdecl; external LazGLib2_library name 'g_strdup_printf';
+function g_strdup_vprintf(format: Pgchar; args: Tva_list): Pgchar; cdecl; external LazGLib2_library name 'g_strdup_vprintf';
+function g_strdupv(str_array: PPgchar): PPgchar; cdecl; external LazGLib2_library name 'g_strdupv';
+function g_strerror(errnum: gint): Pgchar; cdecl; external LazGLib2_library name 'g_strerror';
+function g_strescape(source: Pgchar; exceptions: Pgchar): Pgchar; cdecl; external LazGLib2_library name 'g_strescape';
+function g_string_append(string_: PGString; val: Pgchar): PGString; cdecl; external LazGLib2_library name 'g_string_append';
+function g_string_append_c(string_: PGString; c: gchar): PGString; cdecl; external LazGLib2_library name 'g_string_append_c';
+function g_string_append_len(string_: PGString; val: Pgchar; len: gssize): PGString; cdecl; external LazGLib2_library name 'g_string_append_len';
+function g_string_append_unichar(string_: PGString; wc: gunichar): PGString; cdecl; external LazGLib2_library name 'g_string_append_unichar';
+function g_string_append_uri_escaped(string_: PGString; unescaped: Pgchar; reserved_chars_allowed: Pgchar; allow_utf8: gboolean): PGString; cdecl; external LazGLib2_library name 'g_string_append_uri_escaped';
+function g_string_ascii_down(string_: PGString): PGString; cdecl; external LazGLib2_library name 'g_string_ascii_down';
+function g_string_ascii_up(string_: PGString): PGString; cdecl; external LazGLib2_library name 'g_string_ascii_up';
+function g_string_assign(string_: PGString; rval: Pgchar): PGString; cdecl; external LazGLib2_library name 'g_string_assign';
+function g_string_chunk_insert(chunk: PGStringChunk; string_: Pgchar): Pgchar; cdecl; external LazGLib2_library name 'g_string_chunk_insert';
+function g_string_chunk_insert_const(chunk: PGStringChunk; string_: Pgchar): Pgchar; cdecl; external LazGLib2_library name 'g_string_chunk_insert_const';
+function g_string_chunk_insert_len(chunk: PGStringChunk; string_: Pgchar; len: gssize): Pgchar; cdecl; external LazGLib2_library name 'g_string_chunk_insert_len';
+function g_string_chunk_new(size: gsize): PGStringChunk; cdecl; external LazGLib2_library name 'g_string_chunk_new';
+function g_string_equal(v: PGString; v2: PGString): gboolean; cdecl; external LazGLib2_library name 'g_string_equal';
+function g_string_erase(string_: PGString; pos: gssize; len: gssize): PGString; cdecl; external LazGLib2_library name 'g_string_erase';
+function g_string_free(string_: PGString; free_segment: gboolean): Pgchar; cdecl; external LazGLib2_library name 'g_string_free';
+function g_string_free_to_bytes(string_: PGString): PGBytes; cdecl; external LazGLib2_library name 'g_string_free_to_bytes';
+function g_string_hash(str: PGString): guint; cdecl; external LazGLib2_library name 'g_string_hash';
+function g_string_insert(string_: PGString; pos: gssize; val: Pgchar): PGString; cdecl; external LazGLib2_library name 'g_string_insert';
+function g_string_insert_c(string_: PGString; pos: gssize; c: gchar): PGString; cdecl; external LazGLib2_library name 'g_string_insert_c';
+function g_string_insert_len(string_: PGString; pos: gssize; val: Pgchar; len: gssize): PGString; cdecl; external LazGLib2_library name 'g_string_insert_len';
+function g_string_insert_unichar(string_: PGString; pos: gssize; wc: gunichar): PGString; cdecl; external LazGLib2_library name 'g_string_insert_unichar';
+function g_string_new(init: Pgchar): PGString; cdecl; external LazGLib2_library name 'g_string_new';
+function g_string_new_len(init: Pgchar; len: gssize): PGString; cdecl; external LazGLib2_library name 'g_string_new_len';
+function g_string_overwrite(string_: PGString; pos: gsize; val: Pgchar): PGString; cdecl; external LazGLib2_library name 'g_string_overwrite';
+function g_string_overwrite_len(string_: PGString; pos: gsize; val: Pgchar; len: gssize): PGString; cdecl; external LazGLib2_library name 'g_string_overwrite_len';
+function g_string_prepend(string_: PGString; val: Pgchar): PGString; cdecl; external LazGLib2_library name 'g_string_prepend';
+function g_string_prepend_c(string_: PGString; c: gchar): PGString; cdecl; external LazGLib2_library name 'g_string_prepend_c';
+function g_string_prepend_len(string_: PGString; val: Pgchar; len: gssize): PGString; cdecl; external LazGLib2_library name 'g_string_prepend_len';
+function g_string_prepend_unichar(string_: PGString; wc: gunichar): PGString; cdecl; external LazGLib2_library name 'g_string_prepend_unichar';
+function g_string_set_size(string_: PGString; len: gsize): PGString; cdecl; external LazGLib2_library name 'g_string_set_size';
+function g_string_sized_new(dfl_size: gsize): PGString; cdecl; external LazGLib2_library name 'g_string_sized_new';
+function g_string_truncate(string_: PGString; len: gsize): PGString; cdecl; external LazGLib2_library name 'g_string_truncate';
+function g_strip_context(msgid: Pgchar; msgval: Pgchar): Pgchar; cdecl; external LazGLib2_library name 'g_strip_context';
+function g_strjoin(separator: Pgchar; args: array of const): Pgchar; cdecl; external LazGLib2_library name 'g_strjoin';
+function g_strjoinv(separator: Pgchar; str_array: PPgchar): Pgchar; cdecl; external LazGLib2_library name 'g_strjoinv';
+function g_strlcat(dest: Pgchar; src: Pgchar; dest_size: gsize): gsize; cdecl; external LazGLib2_library name 'g_strlcat';
+function g_strlcpy(dest: Pgchar; src: Pgchar; dest_size: gsize): gsize; cdecl; external LazGLib2_library name 'g_strlcpy';
+function g_strndup(str: Pgchar; n: gsize): Pgchar; cdecl; external LazGLib2_library name 'g_strndup';
+function g_strnfill(length: gsize; fill_char: gchar): Pgchar; cdecl; external LazGLib2_library name 'g_strnfill';
+function g_strreverse(string_: Pgchar): Pgchar; cdecl; external LazGLib2_library name 'g_strreverse';
+function g_strrstr(haystack: Pgchar; needle: Pgchar): Pgchar; cdecl; external LazGLib2_library name 'g_strrstr';
+function g_strrstr_len(haystack: Pgchar; haystack_len: gssize; needle: Pgchar): Pgchar; cdecl; external LazGLib2_library name 'g_strrstr_len';
+function g_strsignal(signum: gint): Pgchar; cdecl; external LazGLib2_library name 'g_strsignal';
+function g_strsplit(string_: Pgchar; delimiter: Pgchar; max_tokens: gint): PPgchar; cdecl; external LazGLib2_library name 'g_strsplit';
+function g_strsplit_set(string_: Pgchar; delimiters: Pgchar; max_tokens: gint): PPgchar; cdecl; external LazGLib2_library name 'g_strsplit_set';
+function g_strstr_len(haystack: Pgchar; haystack_len: gssize; needle: Pgchar): Pgchar; cdecl; external LazGLib2_library name 'g_strstr_len';
+function g_strtod(nptr: Pgchar; endptr: PPgchar): gdouble; cdecl; external LazGLib2_library name 'g_strtod';
+function g_strv_contains(strv: PPgchar; str: Pgchar): gboolean; cdecl; external LazGLib2_library name 'g_strv_contains';
+function g_strv_equal(strv1: PPgchar; strv2: PPgchar): gboolean; cdecl; external LazGLib2_library name 'g_strv_equal';
+function g_strv_get_type: TGType; cdecl; external LazGLib2_library name 'g_strv_get_type';
+function g_strv_length(str_array: PPgchar): guint; cdecl; external LazGLib2_library name 'g_strv_length';
+function g_test_build_filename(file_type: TGTestFileType; first_path: Pgchar; args: array of const): Pgchar; cdecl; external LazGLib2_library name 'g_test_build_filename';
+function g_test_create_case(test_name: Pgchar; data_size: gsize; test_data: Pgpointer; data_setup: TGTestFixtureFunc; data_test: TGTestFixtureFunc; data_teardown: TGTestFixtureFunc): PGTestCase; cdecl; external LazGLib2_library name 'g_test_create_case';
+function g_test_create_suite(suite_name: Pgchar): PGTestSuite; cdecl; external LazGLib2_library name 'g_test_create_suite';
+function g_test_failed: gboolean; cdecl; external LazGLib2_library name 'g_test_failed';
+function g_test_get_dir(file_type: TGTestFileType): Pgchar; cdecl; external LazGLib2_library name 'g_test_get_dir';
+function g_test_get_filename(file_type: TGTestFileType; first_path: Pgchar; args: array of const): Pgchar; cdecl; external LazGLib2_library name 'g_test_get_filename';
+function g_test_get_root: PGTestSuite; cdecl; external LazGLib2_library name 'g_test_get_root';
+function g_test_log_buffer_new: PGTestLogBuffer; cdecl; external LazGLib2_library name 'g_test_log_buffer_new';
+function g_test_log_buffer_pop(tbuffer: PGTestLogBuffer): PGTestLogMsg; cdecl; external LazGLib2_library name 'g_test_log_buffer_pop';
+function g_test_log_type_name(log_type: TGTestLogType): Pgchar; cdecl; external LazGLib2_library name 'g_test_log_type_name';
+function g_test_rand_double: gdouble; cdecl; external LazGLib2_library name 'g_test_rand_double';
+function g_test_rand_double_range(range_start: gdouble; range_end: gdouble): gdouble; cdecl; external LazGLib2_library name 'g_test_rand_double_range';
+function g_test_rand_int: gint32; cdecl; external LazGLib2_library name 'g_test_rand_int';
+function g_test_rand_int_range(begin_: gint32; end_: gint32): gint32; cdecl; external LazGLib2_library name 'g_test_rand_int_range';
+function g_test_run: gint; cdecl; external LazGLib2_library name 'g_test_run';
+function g_test_run_suite(suite: PGTestSuite): gint; cdecl; external LazGLib2_library name 'g_test_run_suite';
+function g_test_subprocess: gboolean; cdecl; external LazGLib2_library name 'g_test_subprocess';
+function g_test_timer_elapsed: gdouble; cdecl; external LazGLib2_library name 'g_test_timer_elapsed';
+function g_test_timer_last: gdouble; cdecl; external LazGLib2_library name 'g_test_timer_last';
+function g_test_trap_has_passed: gboolean; cdecl; external LazGLib2_library name 'g_test_trap_has_passed';
+function g_test_trap_reached_timeout: gboolean; cdecl; external LazGLib2_library name 'g_test_trap_reached_timeout';
+function g_thread_error_quark: TGQuark; cdecl; external LazGLib2_library name 'g_thread_error_quark';
+function g_thread_get_type: TGType; cdecl; external LazGLib2_library name 'g_thread_get_type';
+function g_thread_join(thread: PGThread): gpointer; cdecl; external LazGLib2_library name 'g_thread_join';
+function g_thread_new(name: Pgchar; func: TGThreadFunc; data: gpointer): PGThread; cdecl; external LazGLib2_library name 'g_thread_new';
+function g_thread_pool_get_max_idle_time: guint; cdecl; external LazGLib2_library name 'g_thread_pool_get_max_idle_time';
+function g_thread_pool_get_max_threads(pool: PGThreadPool): gint; cdecl; external LazGLib2_library name 'g_thread_pool_get_max_threads';
+function g_thread_pool_get_max_unused_threads: gint; cdecl; external LazGLib2_library name 'g_thread_pool_get_max_unused_threads';
+function g_thread_pool_get_num_threads(pool: PGThreadPool): guint; cdecl; external LazGLib2_library name 'g_thread_pool_get_num_threads';
+function g_thread_pool_get_num_unused_threads: guint; cdecl; external LazGLib2_library name 'g_thread_pool_get_num_unused_threads';
+function g_thread_pool_move_to_front(pool: PGThreadPool; data: gpointer): gboolean; cdecl; external LazGLib2_library name 'g_thread_pool_move_to_front';
+function g_thread_pool_new(func: TGFunc; user_data: gpointer; max_threads: gint; exclusive: gboolean; error: PPGError): PGThreadPool; cdecl; external LazGLib2_library name 'g_thread_pool_new';
+function g_thread_pool_push(pool: PGThreadPool; data: gpointer; error: PPGError): gboolean; cdecl; external LazGLib2_library name 'g_thread_pool_push';
+function g_thread_pool_set_max_threads(pool: PGThreadPool; max_threads: gint; error: PPGError): gboolean; cdecl; external LazGLib2_library name 'g_thread_pool_set_max_threads';
+function g_thread_pool_unprocessed(pool: PGThreadPool): guint; cdecl; external LazGLib2_library name 'g_thread_pool_unprocessed';
+function g_thread_ref(thread: PGThread): PGThread; cdecl; external LazGLib2_library name 'g_thread_ref';
+function g_thread_self: PGThread; cdecl; external LazGLib2_library name 'g_thread_self';
+function g_thread_try_new(name: Pgchar; func: TGThreadFunc; data: gpointer; error: PPGError): PGThread; cdecl; external LazGLib2_library name 'g_thread_try_new';
+function g_time_zone_adjust_time(tz: PGTimeZone; type_: TGTimeType; time_: Pgint64): gint; cdecl; external LazGLib2_library name 'g_time_zone_adjust_time';
+function g_time_zone_find_interval(tz: PGTimeZone; type_: TGTimeType; time_: gint64): gint; cdecl; external LazGLib2_library name 'g_time_zone_find_interval';
+function g_time_zone_get_abbreviation(tz: PGTimeZone; interval: gint): Pgchar; cdecl; external LazGLib2_library name 'g_time_zone_get_abbreviation';
+function g_time_zone_get_identifier(tz: PGTimeZone): Pgchar; cdecl; external LazGLib2_library name 'g_time_zone_get_identifier';
+function g_time_zone_get_offset(tz: PGTimeZone; interval: gint): gint32; cdecl; external LazGLib2_library name 'g_time_zone_get_offset';
+function g_time_zone_get_type: TGType; cdecl; external LazGLib2_library name 'g_time_zone_get_type';
+function g_time_zone_is_dst(tz: PGTimeZone; interval: gint): gboolean; cdecl; external LazGLib2_library name 'g_time_zone_is_dst';
+function g_time_zone_new(identifier: Pgchar): PGTimeZone; cdecl; external LazGLib2_library name 'g_time_zone_new'; deprecated 'Use g_time_zone_new_identifier() instead, as it provides error reporting. Change your code to handle a potentially %NULL return value.';
+function g_time_zone_new_local: PGTimeZone; cdecl; external LazGLib2_library name 'g_time_zone_new_local';
+function g_time_zone_new_offset(seconds: gint32): PGTimeZone; cdecl; external LazGLib2_library name 'g_time_zone_new_offset';
+function g_time_zone_new_utc: PGTimeZone; cdecl; external LazGLib2_library name 'g_time_zone_new_utc';
+function g_time_zone_ref(tz: PGTimeZone): PGTimeZone; cdecl; external LazGLib2_library name 'g_time_zone_ref';
+function g_timeout_add(interval: guint; function_: TGSourceFunc; data: gpointer): guint; cdecl; external LazGLib2_library name 'g_timeout_add';
+function g_timeout_add_full(priority: gint; interval: guint; function_: TGSourceFunc; data: gpointer; notify: TGDestroyNotify): guint; cdecl; external LazGLib2_library name 'g_timeout_add_full';
+function g_timeout_add_seconds(interval: guint; function_: TGSourceFunc; data: gpointer): guint; cdecl; external LazGLib2_library name 'g_timeout_add_seconds';
+function g_timeout_add_seconds_full(priority: gint; interval: guint; function_: TGSourceFunc; data: gpointer; notify: TGDestroyNotify): guint; cdecl; external LazGLib2_library name 'g_timeout_add_seconds_full';
+function g_timeout_source_new(interval: guint): PGSource; cdecl; external LazGLib2_library name 'g_timeout_source_new';
+function g_timeout_source_new_seconds(interval: guint): PGSource; cdecl; external LazGLib2_library name 'g_timeout_source_new_seconds';
+function g_timer_elapsed(timer: PGTimer; microseconds: Pgulong): gdouble; cdecl; external LazGLib2_library name 'g_timer_elapsed';
+function g_timer_is_active(timer: PGTimer): gboolean; cdecl; external LazGLib2_library name 'g_timer_is_active';
+function g_timer_new: PGTimer; cdecl; external LazGLib2_library name 'g_timer_new';
+function g_tree_get_type: TGType; cdecl; external LazGLib2_library name 'g_tree_get_type';
+function g_tree_height(tree: PGTree): gint; cdecl; external LazGLib2_library name 'g_tree_height';
+function g_tree_lookup(tree: PGTree; key: Pgpointer): gpointer; cdecl; external LazGLib2_library name 'g_tree_lookup';
+function g_tree_lookup_extended(tree: PGTree; lookup_key: Pgpointer; orig_key: Pgpointer; value: Pgpointer): gboolean; cdecl; external LazGLib2_library name 'g_tree_lookup_extended';
+function g_tree_new(key_compare_func: TGCompareFunc): PGTree; cdecl; external LazGLib2_library name 'g_tree_new';
+function g_tree_new_full(key_compare_func: TGCompareDataFunc; key_compare_data: gpointer; key_destroy_func: TGDestroyNotify; value_destroy_func: TGDestroyNotify): PGTree; cdecl; external LazGLib2_library name 'g_tree_new_full';
+function g_tree_new_with_data(key_compare_func: TGCompareDataFunc; key_compare_data: gpointer): PGTree; cdecl; external LazGLib2_library name 'g_tree_new_with_data';
+function g_tree_nnodes(tree: PGTree): gint; cdecl; external LazGLib2_library name 'g_tree_nnodes';
+function g_tree_ref(tree: PGTree): PGTree; cdecl; external LazGLib2_library name 'g_tree_ref';
+function g_tree_remove(tree: PGTree; key: Pgpointer): gboolean; cdecl; external LazGLib2_library name 'g_tree_remove';
+function g_tree_search(tree: PGTree; search_func: TGCompareFunc; user_data: Pgpointer): gpointer; cdecl; external LazGLib2_library name 'g_tree_search';
+function g_tree_steal(tree: PGTree; key: Pgpointer): gboolean; cdecl; external LazGLib2_library name 'g_tree_steal';
+function g_try_malloc(n_bytes: gsize): gpointer; cdecl; external LazGLib2_library name 'g_try_malloc';
+function g_try_malloc0(n_bytes: gsize): gpointer; cdecl; external LazGLib2_library name 'g_try_malloc0';
+function g_try_malloc0_n(n_blocks: gsize; n_block_bytes: gsize): gpointer; cdecl; external LazGLib2_library name 'g_try_malloc0_n';
+function g_try_malloc_n(n_blocks: gsize; n_block_bytes: gsize): gpointer; cdecl; external LazGLib2_library name 'g_try_malloc_n';
+function g_try_realloc(mem: gpointer; n_bytes: gsize): gpointer; cdecl; external LazGLib2_library name 'g_try_realloc';
+function g_try_realloc_n(mem: gpointer; n_blocks: gsize; n_block_bytes: gsize): gpointer; cdecl; external LazGLib2_library name 'g_try_realloc_n';
+function g_ucs4_to_utf16(str: Pgunichar; len: glong; items_read: Pglong; items_written: Pglong; error: PPGError): Pguint16; cdecl; external LazGLib2_library name 'g_ucs4_to_utf16';
+function g_ucs4_to_utf8(str: Pgunichar; len: glong; items_read: Pglong; items_written: Pglong; error: PPGError): Pgchar; cdecl; external LazGLib2_library name 'g_ucs4_to_utf8';
+function g_unichar_break_type(c: gunichar): TGUnicodeBreakType; cdecl; external LazGLib2_library name 'g_unichar_break_type';
+function g_unichar_combining_class(uc: gunichar): gint; cdecl; external LazGLib2_library name 'g_unichar_combining_class';
+function g_unichar_compose(a: gunichar; b: gunichar; ch: Pgunichar): gboolean; cdecl; external LazGLib2_library name 'g_unichar_compose';
+function g_unichar_decompose(ch: gunichar; a: Pgunichar; b: Pgunichar): gboolean; cdecl; external LazGLib2_library name 'g_unichar_decompose';
+function g_unichar_digit_value(c: gunichar): gint; cdecl; external LazGLib2_library name 'g_unichar_digit_value';
+function g_unichar_fully_decompose(ch: gunichar; compat: gboolean; result_: Pgunichar; result_len: gsize): gsize; cdecl; external LazGLib2_library name 'g_unichar_fully_decompose';
+function g_unichar_get_mirror_char(ch: gunichar; mirrored_ch: Pgunichar): gboolean; cdecl; external LazGLib2_library name 'g_unichar_get_mirror_char';
+function g_unichar_get_script(ch: gunichar): TGUnicodeScript; cdecl; external LazGLib2_library name 'g_unichar_get_script';
+function g_unichar_isalnum(c: gunichar): gboolean; cdecl; external LazGLib2_library name 'g_unichar_isalnum';
+function g_unichar_isalpha(c: gunichar): gboolean; cdecl; external LazGLib2_library name 'g_unichar_isalpha';
+function g_unichar_iscntrl(c: gunichar): gboolean; cdecl; external LazGLib2_library name 'g_unichar_iscntrl';
+function g_unichar_isdefined(c: gunichar): gboolean; cdecl; external LazGLib2_library name 'g_unichar_isdefined';
+function g_unichar_isdigit(c: gunichar): gboolean; cdecl; external LazGLib2_library name 'g_unichar_isdigit';
+function g_unichar_isgraph(c: gunichar): gboolean; cdecl; external LazGLib2_library name 'g_unichar_isgraph';
+function g_unichar_islower(c: gunichar): gboolean; cdecl; external LazGLib2_library name 'g_unichar_islower';
+function g_unichar_ismark(c: gunichar): gboolean; cdecl; external LazGLib2_library name 'g_unichar_ismark';
+function g_unichar_isprint(c: gunichar): gboolean; cdecl; external LazGLib2_library name 'g_unichar_isprint';
+function g_unichar_ispunct(c: gunichar): gboolean; cdecl; external LazGLib2_library name 'g_unichar_ispunct';
+function g_unichar_isspace(c: gunichar): gboolean; cdecl; external LazGLib2_library name 'g_unichar_isspace';
+function g_unichar_istitle(c: gunichar): gboolean; cdecl; external LazGLib2_library name 'g_unichar_istitle';
+function g_unichar_isupper(c: gunichar): gboolean; cdecl; external LazGLib2_library name 'g_unichar_isupper';
+function g_unichar_iswide(c: gunichar): gboolean; cdecl; external LazGLib2_library name 'g_unichar_iswide';
+function g_unichar_iswide_cjk(c: gunichar): gboolean; cdecl; external LazGLib2_library name 'g_unichar_iswide_cjk';
+function g_unichar_isxdigit(c: gunichar): gboolean; cdecl; external LazGLib2_library name 'g_unichar_isxdigit';
+function g_unichar_iszerowidth(c: gunichar): gboolean; cdecl; external LazGLib2_library name 'g_unichar_iszerowidth';
+function g_unichar_to_utf8(c: gunichar; outbuf: Pgchar): gint; cdecl; external LazGLib2_library name 'g_unichar_to_utf8';
+function g_unichar_tolower(c: gunichar): gunichar; cdecl; external LazGLib2_library name 'g_unichar_tolower';
+function g_unichar_totitle(c: gunichar): gunichar; cdecl; external LazGLib2_library name 'g_unichar_totitle';
+function g_unichar_toupper(c: gunichar): gunichar; cdecl; external LazGLib2_library name 'g_unichar_toupper';
+function g_unichar_type(c: gunichar): TGUnicodeType; cdecl; external LazGLib2_library name 'g_unichar_type';
+function g_unichar_validate(ch: gunichar): gboolean; cdecl; external LazGLib2_library name 'g_unichar_validate';
+function g_unichar_xdigit_value(c: gunichar): gint; cdecl; external LazGLib2_library name 'g_unichar_xdigit_value';
+function g_unicode_script_from_iso15924(iso15924: guint32): TGUnicodeScript; cdecl; external LazGLib2_library name 'g_unicode_script_from_iso15924';
+function g_unicode_script_to_iso15924(script: TGUnicodeScript): guint32; cdecl; external LazGLib2_library name 'g_unicode_script_to_iso15924';
+function g_unix_error_quark: TGQuark; cdecl; external LazGLib2_library name 'g_unix_error_quark';
+function g_unix_fd_add(fd: gint; condition: TGIOCondition; function_: TGUnixFDSourceFunc; user_data: gpointer): guint; cdecl; external LazGLib2_library name 'g_unix_fd_add';
+function g_unix_fd_add_full(priority: gint; fd: gint; condition: TGIOCondition; function_: TGUnixFDSourceFunc; user_data: gpointer; notify: TGDestroyNotify): guint; cdecl; external LazGLib2_library name 'g_unix_fd_add_full';
+function g_unix_fd_source_new(fd: gint; condition: TGIOCondition): PGSource; cdecl; external LazGLib2_library name 'g_unix_fd_source_new';
+function g_unix_get_passwd_entry(user_name: Pgchar; error: PPGError): Pgpointer; cdecl; external LazGLib2_library name 'g_unix_get_passwd_entry';
+function g_unix_open_pipe(fds: Pgint; flags: gint; error: PPGError): gboolean; cdecl; external LazGLib2_library name 'g_unix_open_pipe';
+function g_unix_set_fd_nonblocking(fd: gint; nonblock: gboolean; error: PPGError): gboolean; cdecl; external LazGLib2_library name 'g_unix_set_fd_nonblocking';
+function g_unix_signal_add(signum: gint; handler: TGSourceFunc; user_data: gpointer): guint; cdecl; external LazGLib2_library name 'g_unix_signal_add';
+function g_unix_signal_add_full(priority: gint; signum: gint; handler: TGSourceFunc; user_data: gpointer; notify: TGDestroyNotify): guint; cdecl; external LazGLib2_library name 'g_unix_signal_add_full';
+function g_unix_signal_source_new(signum: gint): PGSource; cdecl; external LazGLib2_library name 'g_unix_signal_source_new';
+function g_unlink(filename: Pgchar): gint; cdecl; external LazGLib2_library name 'g_unlink';
+{$IFDEF USEGTK3LATESTBINDINGS}
+function g_uri_build(flags: TGUriFlags; scheme: Pgchar; userinfo: Pgchar; host: Pgchar; port: gint; path: Pgchar; query: Pgchar; fragment: Pgchar): PGUri; cdecl; external LazGLib2_library name 'g_uri_build';
+function g_uri_build_with_user(flags: TGUriFlags; scheme: Pgchar; user: Pgchar; password: Pgchar; auth_params: Pgchar; host: Pgchar; port: gint; path: Pgchar; query: Pgchar; fragment: Pgchar): PGUri; cdecl; external LazGLib2_library name 'g_uri_build_with_user';
+function g_uri_error_quark: TGQuark; cdecl; external LazGLib2_library name 'g_uri_error_quark';
+function g_uri_escape_bytes(unescaped: Pguint8; length: gsize; reserved_chars_allowed: Pgchar): Pgchar; cdecl; external LazGLib2_library name 'g_uri_escape_bytes';
+{$ENDIF}
+function g_uri_escape_string(unescaped: Pgchar; reserved_chars_allowed: Pgchar; allow_utf8: gboolean): Pgchar; cdecl; external LazGLib2_library name 'g_uri_escape_string';
+{$IFDEF USEGTK3LATESTBINDINGS}
+function g_uri_get_auth_params(uri: PGUri): Pgchar; cdecl; external LazGLib2_library name 'g_uri_get_auth_params';
+function g_uri_get_flags(uri: PGUri): TGUriFlags; cdecl; external LazGLib2_library name 'g_uri_get_flags';
+function g_uri_get_fragment(uri: PGUri): Pgchar; cdecl; external LazGLib2_library name 'g_uri_get_fragment';
+function g_uri_get_host(uri: PGUri): Pgchar; cdecl; external LazGLib2_library name 'g_uri_get_host';
+function g_uri_get_password(uri: PGUri): Pgchar; cdecl; external LazGLib2_library name 'g_uri_get_password';
+function g_uri_get_path(uri: PGUri): Pgchar; cdecl; external LazGLib2_library name 'g_uri_get_path';
+function g_uri_get_port(uri: PGUri): gint; cdecl; external LazGLib2_library name 'g_uri_get_port';
+function g_uri_get_query(uri: PGUri): Pgchar; cdecl; external LazGLib2_library name 'g_uri_get_query';
+function g_uri_get_scheme(uri: PGUri): Pgchar; cdecl; external LazGLib2_library name 'g_uri_get_scheme';
+{$ENDIF}
+function g_uri_get_type: TGType; cdecl; external LazGLib2_library name 'g_uri_get_type';
+{$IFDEF USEGTK3LATESTBINDINGS}
+function g_uri_get_user(uri: PGUri): Pgchar; cdecl; external LazGLib2_library name 'g_uri_get_user';
+function g_uri_get_userinfo(uri: PGUri): Pgchar; cdecl; external LazGLib2_library name 'g_uri_get_userinfo';
+function g_uri_is_valid(uri_string: Pgchar; flags: TGUriFlags; error: PPGError): gboolean; cdecl; external LazGLib2_library name 'g_uri_is_valid';
+function g_uri_join(flags: TGUriFlags; scheme: Pgchar; userinfo: Pgchar; host: Pgchar; port: gint; path: Pgchar; query: Pgchar; fragment: Pgchar): Pgchar; cdecl; external LazGLib2_library name 'g_uri_join';
+function g_uri_join_with_user(flags: TGUriFlags; scheme: Pgchar; user: Pgchar; password: Pgchar; auth_params: Pgchar; host: Pgchar; port: gint; path: Pgchar; query: Pgchar; fragment: Pgchar): Pgchar; cdecl; external LazGLib2_library name 'g_uri_join_with_user';
+{$ENDIF}
+function g_uri_list_extract_uris(uri_list: Pgchar): PPgchar; cdecl; external LazGLib2_library name 'g_uri_list_extract_uris';
+{$IFDEF USEGTK3LATESTBINDINGS}
+function g_uri_params_iter_next(iter: PGUriParamsIter; attribute: PPgchar; value: PPgchar; error: PPGError): gboolean; cdecl; external LazGLib2_library name 'g_uri_params_iter_next';
+function g_uri_parse(uri_string: Pgchar; flags: TGUriFlags; error: PPGError): PGUri; cdecl; external LazGLib2_library name 'g_uri_parse';
+function g_uri_parse_params(params: Pgchar; length: gssize; separators: Pgchar; flags: TGUriParamsFlags; error: PPGError): PGHashTable; cdecl; external LazGLib2_library name 'g_uri_parse_params';
+function g_uri_parse_relative(base_uri: PGUri; uri_ref: Pgchar; flags: TGUriFlags; error: PPGError): PGUri; cdecl; external LazGLib2_library name 'g_uri_parse_relative';
+{$ENDIF}
+function g_uri_parse_scheme(uri: Pgchar): Pgchar; cdecl; external LazGLib2_library name 'g_uri_parse_scheme';
+{$IFDEF USEGTK3LATESTBINDINGS}
+function g_uri_peek_scheme(uri: Pgchar): Pgchar; cdecl; external LazGLib2_library name 'g_uri_peek_scheme';
+function g_uri_ref(uri: PGUri): PGUri; cdecl; external LazGLib2_library name 'g_uri_ref';
+function g_uri_resolve_relative(base_uri_string: Pgchar; uri_ref: Pgchar; flags: TGUriFlags; error: PPGError): Pgchar; cdecl; external LazGLib2_library name 'g_uri_resolve_relative';
+function g_uri_split(uri_ref: Pgchar; flags: TGUriFlags; scheme: PPgchar; userinfo: PPgchar; host: PPgchar; port: Pgint; path: PPgchar; query: PPgchar; fragment: PPgchar; error: PPGError): gboolean; cdecl; external LazGLib2_library name 'g_uri_split';
+function g_uri_split_network(uri_string: Pgchar; flags: TGUriFlags; scheme: PPgchar; host: PPgchar; port: Pgint; error: PPGError): gboolean; cdecl; external LazGLib2_library name 'g_uri_split_network';
+function g_uri_split_with_user(uri_ref: Pgchar; flags: TGUriFlags; scheme: PPgchar; user: PPgchar; password: PPgchar; auth_params: PPgchar; host: PPgchar; port: Pgint; path: PPgchar; query: PPgchar; fragment: PPgchar; error: PPGError): gboolean; cdecl; external LazGLib2_library name 'g_uri_split_with_user';
+function g_uri_to_string(uri: PGUri): Pgchar; cdecl; external LazGLib2_library name 'g_uri_to_string';
+function g_uri_to_string_partial(uri: PGUri; flags: TGUriHideFlags): Pgchar; cdecl; external LazGLib2_library name 'g_uri_to_string_partial';
+function g_uri_unescape_bytes(escaped_string: Pgchar; length: gssize; illegal_characters: Pgchar; error: PPGError): PGBytes; cdecl; external LazGLib2_library name 'g_uri_unescape_bytes';
+{$ENDIF}
+function g_uri_unescape_segment(escaped_string: Pgchar; escaped_string_end: Pgchar; illegal_characters: Pgchar): Pgchar; cdecl; external LazGLib2_library name 'g_uri_unescape_segment';
+function g_uri_unescape_string(escaped_string: Pgchar; illegal_characters: Pgchar): Pgchar; cdecl; external LazGLib2_library name 'g_uri_unescape_string';
+function g_utf16_to_ucs4(str: Pguint16; len: glong; items_read: Pglong; items_written: Pglong; error: PPGError): Pgunichar; cdecl; external LazGLib2_library name 'g_utf16_to_ucs4';
+function g_utf16_to_utf8(str: Pguint16; len: glong; items_read: Pglong; items_written: Pglong; error: PPGError): Pgchar; cdecl; external LazGLib2_library name 'g_utf16_to_utf8';
+function g_utf8_casefold(str: Pgchar; len: gssize): Pgchar; cdecl; external LazGLib2_library name 'g_utf8_casefold';
+function g_utf8_collate(str1: Pgchar; str2: Pgchar): gint; cdecl; external LazGLib2_library name 'g_utf8_collate';
+function g_utf8_collate_key(str: Pgchar; len: gssize): Pgchar; cdecl; external LazGLib2_library name 'g_utf8_collate_key';
+function g_utf8_collate_key_for_filename(str: Pgchar; len: gssize): Pgchar; cdecl; external LazGLib2_library name 'g_utf8_collate_key_for_filename';
+function g_utf8_find_next_char(p: Pgchar; end_: Pgchar): Pgchar; cdecl; external LazGLib2_library name 'g_utf8_find_next_char';
+function g_utf8_find_prev_char(str: Pgchar; p: Pgchar): Pgchar; cdecl; external LazGLib2_library name 'g_utf8_find_prev_char';
+function g_utf8_get_char(p: Pgchar): gunichar; cdecl; external LazGLib2_library name 'g_utf8_get_char';
+function g_utf8_get_char_validated(p: Pgchar; max_len: gssize): gunichar; cdecl; external LazGLib2_library name 'g_utf8_get_char_validated';
+function g_utf8_make_valid(str: Pgchar; len: gssize): Pgchar; cdecl; external LazGLib2_library name 'g_utf8_make_valid';
+function g_utf8_normalize(str: Pgchar; len: gssize; mode: TGNormalizeMode): Pgchar; cdecl; external LazGLib2_library name 'g_utf8_normalize';
+function g_utf8_offset_to_pointer(str: Pgchar; offset: glong): Pgchar; cdecl; external LazGLib2_library name 'g_utf8_offset_to_pointer';
+function g_utf8_pointer_to_offset(str: Pgchar; pos: Pgchar): glong; cdecl; external LazGLib2_library name 'g_utf8_pointer_to_offset';
+function g_utf8_prev_char(p: Pgchar): Pgchar; cdecl; external LazGLib2_library name 'g_utf8_prev_char';
+function g_utf8_strchr(p: Pgchar; len: gssize; c: gunichar): Pgchar; cdecl; external LazGLib2_library name 'g_utf8_strchr';
+function g_utf8_strdown(str: Pgchar; len: gssize): Pgchar; cdecl; external LazGLib2_library name 'g_utf8_strdown';
+function g_utf8_strlen(p: Pgchar; max: gssize): glong; cdecl; external LazGLib2_library name 'g_utf8_strlen';
+function g_utf8_strncpy(dest: Pgchar; src: Pgchar; n: gsize): Pgchar; cdecl; external LazGLib2_library name 'g_utf8_strncpy';
+function g_utf8_strrchr(p: Pgchar; len: gssize; c: gunichar): Pgchar; cdecl; external LazGLib2_library name 'g_utf8_strrchr';
+function g_utf8_strreverse(str: Pgchar; len: gssize): Pgchar; cdecl; external LazGLib2_library name 'g_utf8_strreverse';
+function g_utf8_strup(str: Pgchar; len: gssize): Pgchar; cdecl; external LazGLib2_library name 'g_utf8_strup';
+function g_utf8_substring(str: Pgchar; start_pos: glong; end_pos: glong): Pgchar; cdecl; external LazGLib2_library name 'g_utf8_substring';
+function g_utf8_to_ucs4(str: Pgchar; len: glong; items_read: Pglong; items_written: Pglong; error: PPGError): Pgunichar; cdecl; external LazGLib2_library name 'g_utf8_to_ucs4';
+function g_utf8_to_ucs4_fast(str: Pgchar; len: glong; items_written: Pglong): Pgunichar; cdecl; external LazGLib2_library name 'g_utf8_to_ucs4_fast';
+function g_utf8_to_utf16(str: Pgchar; len: glong; items_read: Pglong; items_written: Pglong; error: PPGError): Pguint16; cdecl; external LazGLib2_library name 'g_utf8_to_utf16';
+function g_utf8_validate(str: Pgchar; max_len: gssize; end_: PPgchar): gboolean; cdecl; external LazGLib2_library name 'g_utf8_validate';
+function g_utf8_validate_len(str: Pgchar; max_len: gsize; end_: PPgchar): gboolean; cdecl; external LazGLib2_library name 'g_utf8_validate_len';
+function g_uuid_string_is_valid(str: Pgchar): gboolean; cdecl; external LazGLib2_library name 'g_uuid_string_is_valid';
+function g_uuid_string_random: Pgchar; cdecl; external LazGLib2_library name 'g_uuid_string_random';
+function g_variant_builder_end(builder: PGVariantBuilder): PGVariant; cdecl; external LazGLib2_library name 'g_variant_builder_end';
+function g_variant_builder_get_type: TGType; cdecl; external LazGLib2_library name 'g_variant_builder_get_type';
+function g_variant_builder_new(type_: PGVariantType): PGVariantBuilder; cdecl; external LazGLib2_library name 'g_variant_builder_new';
+function g_variant_builder_ref(builder: PGVariantBuilder): PGVariantBuilder; cdecl; external LazGLib2_library name 'g_variant_builder_ref';
+function g_variant_byteswap(value: PGVariant): PGVariant; cdecl; external LazGLib2_library name 'g_variant_byteswap';
+function g_variant_check_format_string(value: PGVariant; format_string: Pgchar; copy_only: gboolean): gboolean; cdecl; external LazGLib2_library name 'g_variant_check_format_string';
+function g_variant_classify(value: PGVariant): TGVariantClass; cdecl; external LazGLib2_library name 'g_variant_classify';
+function g_variant_compare(one: PGVariant; two: PGVariant): gint; cdecl; external LazGLib2_library name 'g_variant_compare';
+function g_variant_dict_contains(dict: PGVariantDict; key: Pgchar): gboolean; cdecl; external LazGLib2_library name 'g_variant_dict_contains';
+function g_variant_dict_end(dict: PGVariantDict): PGVariant; cdecl; external LazGLib2_library name 'g_variant_dict_end';
+function g_variant_dict_get_type: TGType; cdecl; external LazGLib2_library name 'g_variant_dict_get_type';
+function g_variant_dict_lookup(dict: PGVariantDict; key: Pgchar; format_string: Pgchar; args: array of const): gboolean; cdecl; external LazGLib2_library name 'g_variant_dict_lookup';
+function g_variant_dict_lookup_value(dict: PGVariantDict; key: Pgchar; expected_type: PGVariantType): PGVariant; cdecl; external LazGLib2_library name 'g_variant_dict_lookup_value';
+function g_variant_dict_new(from_asv: PGVariant): PGVariantDict; cdecl; external LazGLib2_library name 'g_variant_dict_new';
+function g_variant_dict_ref(dict: PGVariantDict): PGVariantDict; cdecl; external LazGLib2_library name 'g_variant_dict_ref';
+function g_variant_dict_remove(dict: PGVariantDict; key: Pgchar): gboolean; cdecl; external LazGLib2_library name 'g_variant_dict_remove';
+function g_variant_dup_bytestring(value: PGVariant; length: Pgsize): Pgchar; cdecl; external LazGLib2_library name 'g_variant_dup_bytestring';
+function g_variant_dup_bytestring_array(value: PGVariant; length: Pgsize): PPgchar; cdecl; external LazGLib2_library name 'g_variant_dup_bytestring_array';
+function g_variant_dup_objv(value: PGVariant; length: Pgsize): PPgchar; cdecl; external LazGLib2_library name 'g_variant_dup_objv';
+function g_variant_dup_string(value: PGVariant; length: Pgsize): Pgchar; cdecl; external LazGLib2_library name 'g_variant_dup_string';
+function g_variant_dup_strv(value: PGVariant; length: Pgsize): PPgchar; cdecl; external LazGLib2_library name 'g_variant_dup_strv';
+function g_variant_equal(one: PGVariant; two: PGVariant): gboolean; cdecl; external LazGLib2_library name 'g_variant_equal';
+function g_variant_get_boolean(value: PGVariant): gboolean; cdecl; external LazGLib2_library name 'g_variant_get_boolean';
+function g_variant_get_byte(value: PGVariant): guint8; cdecl; external LazGLib2_library name 'g_variant_get_byte';
+function g_variant_get_bytestring(value: PGVariant): Pgchar; cdecl; external LazGLib2_library name 'g_variant_get_bytestring';
+function g_variant_get_bytestring_array(value: PGVariant; length: Pgsize): PPgchar; cdecl; external LazGLib2_library name 'g_variant_get_bytestring_array';
+function g_variant_get_child_value(value: PGVariant; index_: gsize): PGVariant; cdecl; external LazGLib2_library name 'g_variant_get_child_value';
+function g_variant_get_data(value: PGVariant): Pgpointer; cdecl; external LazGLib2_library name 'g_variant_get_data';
+function g_variant_get_data_as_bytes(value: PGVariant): PGBytes; cdecl; external LazGLib2_library name 'g_variant_get_data_as_bytes';
+function g_variant_get_double(value: PGVariant): gdouble; cdecl; external LazGLib2_library name 'g_variant_get_double';
+function g_variant_get_fixed_array(value: PGVariant; n_elements: Pgsize; element_size: gsize): gpointer; cdecl; external LazGLib2_library name 'g_variant_get_fixed_array';
+function g_variant_get_gtype: TGType; cdecl; external LazGLib2_library name 'g_variant_get_gtype';
+function g_variant_get_handle(value: PGVariant): gint32; cdecl; external LazGLib2_library name 'g_variant_get_handle';
+function g_variant_get_int16(value: PGVariant): gint16; cdecl; external LazGLib2_library name 'g_variant_get_int16';
+function g_variant_get_int32(value: PGVariant): gint32; cdecl; external LazGLib2_library name 'g_variant_get_int32';
+function g_variant_get_int64(value: PGVariant): gint64; cdecl; external LazGLib2_library name 'g_variant_get_int64';
+function g_variant_get_maybe(value: PGVariant): PGVariant; cdecl; external LazGLib2_library name 'g_variant_get_maybe';
+function g_variant_get_normal_form(value: PGVariant): PGVariant; cdecl; external LazGLib2_library name 'g_variant_get_normal_form';
+function g_variant_get_objv(value: PGVariant; length: Pgsize): PPgchar; cdecl; external LazGLib2_library name 'g_variant_get_objv';
+function g_variant_get_size(value: PGVariant): gsize; cdecl; external LazGLib2_library name 'g_variant_get_size';
+function g_variant_get_string(value: PGVariant; length: Pgsize): Pgchar; cdecl; external LazGLib2_library name 'g_variant_get_string';
+function g_variant_get_strv(value: PGVariant; length: Pgsize): PPgchar; cdecl; external LazGLib2_library name 'g_variant_get_strv';
+function g_variant_get_type(value: PGVariant): PGVariantType; cdecl; external LazGLib2_library name 'g_variant_get_type';
+function g_variant_get_type_string(value: PGVariant): Pgchar; cdecl; external LazGLib2_library name 'g_variant_get_type_string';
+function g_variant_get_uint16(value: PGVariant): guint16; cdecl; external LazGLib2_library name 'g_variant_get_uint16';
+function g_variant_get_uint32(value: PGVariant): guint32; cdecl; external LazGLib2_library name 'g_variant_get_uint32';
+function g_variant_get_uint64(value: PGVariant): guint64; cdecl; external LazGLib2_library name 'g_variant_get_uint64';
+function g_variant_get_variant(value: PGVariant): PGVariant; cdecl; external LazGLib2_library name 'g_variant_get_variant';
+function g_variant_hash(value: PGVariant): guint; cdecl; external LazGLib2_library name 'g_variant_hash';
+function g_variant_is_container(value: PGVariant): gboolean; cdecl; external LazGLib2_library name 'g_variant_is_container';
+function g_variant_is_floating(value: PGVariant): gboolean; cdecl; external LazGLib2_library name 'g_variant_is_floating';
+function g_variant_is_normal_form(value: PGVariant): gboolean; cdecl; external LazGLib2_library name 'g_variant_is_normal_form';
+function g_variant_is_object_path(string_: Pgchar): gboolean; cdecl; external LazGLib2_library name 'g_variant_is_object_path';
+function g_variant_is_of_type(value: PGVariant; type_: PGVariantType): gboolean; cdecl; external LazGLib2_library name 'g_variant_is_of_type';
+function g_variant_is_signature(string_: Pgchar): gboolean; cdecl; external LazGLib2_library name 'g_variant_is_signature';
+function g_variant_iter_copy(iter: PGVariantIter): PGVariantIter; cdecl; external LazGLib2_library name 'g_variant_iter_copy';
+function g_variant_iter_init(iter: PGVariantIter; value: PGVariant): gsize; cdecl; external LazGLib2_library name 'g_variant_iter_init';
+function g_variant_iter_loop(iter: PGVariantIter; format_string: Pgchar; args: array of const): gboolean; cdecl; external LazGLib2_library name 'g_variant_iter_loop';
+function g_variant_iter_n_children(iter: PGVariantIter): gsize; cdecl; external LazGLib2_library name 'g_variant_iter_n_children';
+function g_variant_iter_new(value: PGVariant): PGVariantIter; cdecl; external LazGLib2_library name 'g_variant_iter_new';
+function g_variant_iter_next(iter: PGVariantIter; format_string: Pgchar; args: array of const): gboolean; cdecl; external LazGLib2_library name 'g_variant_iter_next';
+function g_variant_iter_next_value(iter: PGVariantIter): PGVariant; cdecl; external LazGLib2_library name 'g_variant_iter_next_value';
+function g_variant_lookup(dictionary: PGVariant; key: Pgchar; format_string: Pgchar; args: array of const): gboolean; cdecl; external LazGLib2_library name 'g_variant_lookup';
+function g_variant_lookup_value(dictionary: PGVariant; key: Pgchar; expected_type: PGVariantType): PGVariant; cdecl; external LazGLib2_library name 'g_variant_lookup_value';
+function g_variant_n_children(value: PGVariant): gsize; cdecl; external LazGLib2_library name 'g_variant_n_children';
+function g_variant_new(format_string: Pgchar; args: array of const): PGVariant; cdecl; external LazGLib2_library name 'g_variant_new';
+function g_variant_new_array(child_type: PGVariantType; children: PPGVariant; n_children: gsize): PGVariant; cdecl; external LazGLib2_library name 'g_variant_new_array';
+function g_variant_new_boolean(value: gboolean): PGVariant; cdecl; external LazGLib2_library name 'g_variant_new_boolean';
+function g_variant_new_byte(value: guint8): PGVariant; cdecl; external LazGLib2_library name 'g_variant_new_byte';
+function g_variant_new_bytestring(string_: Pgchar): PGVariant; cdecl; external LazGLib2_library name 'g_variant_new_bytestring';
+function g_variant_new_bytestring_array(strv: PPgchar; length: gssize): PGVariant; cdecl; external LazGLib2_library name 'g_variant_new_bytestring_array';
+function g_variant_new_dict_entry(key: PGVariant; value: PGVariant): PGVariant; cdecl; external LazGLib2_library name 'g_variant_new_dict_entry';
+function g_variant_new_double(value: gdouble): PGVariant; cdecl; external LazGLib2_library name 'g_variant_new_double';
+function g_variant_new_fixed_array(element_type: PGVariantType; elements: Pgpointer; n_elements: gsize; element_size: gsize): PGVariant; cdecl; external LazGLib2_library name 'g_variant_new_fixed_array';
+function g_variant_new_from_bytes(type_: PGVariantType; bytes: PGBytes; trusted: gboolean): PGVariant; cdecl; external LazGLib2_library name 'g_variant_new_from_bytes';
+function g_variant_new_from_data(type_: PGVariantType; data: guint8; size: gsize; trusted: gboolean; notify: TGDestroyNotify; user_data: gpointer): PGVariant; cdecl; external LazGLib2_library name 'g_variant_new_from_data';
+function g_variant_new_handle(value: gint32): PGVariant; cdecl; external LazGLib2_library name 'g_variant_new_handle';
+function g_variant_new_int16(value: gint16): PGVariant; cdecl; external LazGLib2_library name 'g_variant_new_int16';
+function g_variant_new_int32(value: gint32): PGVariant; cdecl; external LazGLib2_library name 'g_variant_new_int32';
+function g_variant_new_int64(value: gint64): PGVariant; cdecl; external LazGLib2_library name 'g_variant_new_int64';
+function g_variant_new_maybe(child_type: PGVariantType; child: PGVariant): PGVariant; cdecl; external LazGLib2_library name 'g_variant_new_maybe';
+function g_variant_new_object_path(object_path: Pgchar): PGVariant; cdecl; external LazGLib2_library name 'g_variant_new_object_path';
+function g_variant_new_objv(strv: PPgchar; length: gssize): PGVariant; cdecl; external LazGLib2_library name 'g_variant_new_objv';
+function g_variant_new_parsed(format: Pgchar; args: array of const): PGVariant; cdecl; external LazGLib2_library name 'g_variant_new_parsed';
+function g_variant_new_parsed_va(format: Pgchar; app: Pva_list): PGVariant; cdecl; external LazGLib2_library name 'g_variant_new_parsed_va';
+function g_variant_new_printf(format_string: Pgchar; args: array of const): PGVariant; cdecl; external LazGLib2_library name 'g_variant_new_printf';
+function g_variant_new_signature(signature: Pgchar): PGVariant; cdecl; external LazGLib2_library name 'g_variant_new_signature';
+function g_variant_new_string(string_: Pgchar): PGVariant; cdecl; external LazGLib2_library name 'g_variant_new_string';
+function g_variant_new_strv(strv: PPgchar; length: gssize): PGVariant; cdecl; external LazGLib2_library name 'g_variant_new_strv';
+function g_variant_new_take_string(string_: Pgchar): PGVariant; cdecl; external LazGLib2_library name 'g_variant_new_take_string';
+function g_variant_new_tuple(children: PPGVariant; n_children: gsize): PGVariant; cdecl; external LazGLib2_library name 'g_variant_new_tuple';
+function g_variant_new_uint16(value: guint16): PGVariant; cdecl; external LazGLib2_library name 'g_variant_new_uint16';
+function g_variant_new_uint32(value: guint32): PGVariant; cdecl; external LazGLib2_library name 'g_variant_new_uint32';
+function g_variant_new_uint64(value: guint64): PGVariant; cdecl; external LazGLib2_library name 'g_variant_new_uint64';
+function g_variant_new_va(format_string: Pgchar; endptr: PPgchar; app: Pva_list): PGVariant; cdecl; external LazGLib2_library name 'g_variant_new_va';
+function g_variant_new_variant(value: PGVariant): PGVariant; cdecl; external LazGLib2_library name 'g_variant_new_variant';
+function g_variant_parse(type_: PGVariantType; text: Pgchar; limit: Pgchar; endptr: PPgchar; error: PPGError): PGVariant; cdecl; external LazGLib2_library name 'g_variant_parse';
+function g_variant_parse_error_print_context(error: PGError; source_str: Pgchar): Pgchar; cdecl; external LazGLib2_library name 'g_variant_parse_error_print_context';
+function g_variant_parse_error_quark: TGQuark; cdecl; external LazGLib2_library name 'g_variant_parse_error_quark';
+function g_variant_print(value: PGVariant; type_annotate: gboolean): Pgchar; cdecl; external LazGLib2_library name 'g_variant_print';
+function g_variant_print_string(value: PGVariant; string_: PGString; type_annotate: gboolean): PGString; cdecl; external LazGLib2_library name 'g_variant_print_string';
+function g_variant_ref(value: PGVariant): PGVariant; cdecl; external LazGLib2_library name 'g_variant_ref';
+function g_variant_ref_sink(value: PGVariant): PGVariant; cdecl; external LazGLib2_library name 'g_variant_ref_sink';
+function g_variant_take_ref(value: PGVariant): PGVariant; cdecl; external LazGLib2_library name 'g_variant_take_ref';
+function g_variant_type_checked_(arg0: Pgchar): PGVariantType; cdecl; external LazGLib2_library name 'g_variant_type_checked_';
+function g_variant_type_copy(type_: PGVariantType): PGVariantType; cdecl; external LazGLib2_library name 'g_variant_type_copy';
+function g_variant_type_dup_string(type_: PGVariantType): Pgchar; cdecl; external LazGLib2_library name 'g_variant_type_dup_string';
+function g_variant_type_element(type_: PGVariantType): PGVariantType; cdecl; external LazGLib2_library name 'g_variant_type_element';
+function g_variant_type_equal(type1: PGVariantType; type2: PGVariantType): gboolean; cdecl; external LazGLib2_library name 'g_variant_type_equal';
+function g_variant_type_first(type_: PGVariantType): PGVariantType; cdecl; external LazGLib2_library name 'g_variant_type_first';
+function g_variant_type_get_gtype: TGType; cdecl; external LazGLib2_library name 'g_variant_type_get_gtype';
+function g_variant_type_get_string_length(type_: PGVariantType): gsize; cdecl; external LazGLib2_library name 'g_variant_type_get_string_length';
+function g_variant_type_hash(type_: PGVariantType): guint; cdecl; external LazGLib2_library name 'g_variant_type_hash';
+function g_variant_type_is_array(type_: PGVariantType): gboolean; cdecl; external LazGLib2_library name 'g_variant_type_is_array';
+function g_variant_type_is_basic(type_: PGVariantType): gboolean; cdecl; external LazGLib2_library name 'g_variant_type_is_basic';
+function g_variant_type_is_container(type_: PGVariantType): gboolean; cdecl; external LazGLib2_library name 'g_variant_type_is_container';
+function g_variant_type_is_definite(type_: PGVariantType): gboolean; cdecl; external LazGLib2_library name 'g_variant_type_is_definite';
+function g_variant_type_is_dict_entry(type_: PGVariantType): gboolean; cdecl; external LazGLib2_library name 'g_variant_type_is_dict_entry';
+function g_variant_type_is_maybe(type_: PGVariantType): gboolean; cdecl; external LazGLib2_library name 'g_variant_type_is_maybe';
+function g_variant_type_is_subtype_of(type_: PGVariantType; supertype: PGVariantType): gboolean; cdecl; external LazGLib2_library name 'g_variant_type_is_subtype_of';
+function g_variant_type_is_tuple(type_: PGVariantType): gboolean; cdecl; external LazGLib2_library name 'g_variant_type_is_tuple';
+function g_variant_type_is_variant(type_: PGVariantType): gboolean; cdecl; external LazGLib2_library name 'g_variant_type_is_variant';
+function g_variant_type_key(type_: PGVariantType): PGVariantType; cdecl; external LazGLib2_library name 'g_variant_type_key';
+function g_variant_type_n_items(type_: PGVariantType): gsize; cdecl; external LazGLib2_library name 'g_variant_type_n_items';
+function g_variant_type_new(type_string: Pgchar): PGVariantType; cdecl; external LazGLib2_library name 'g_variant_type_new';
+function g_variant_type_new_array(element: PGVariantType): PGVariantType; cdecl; external LazGLib2_library name 'g_variant_type_new_array';
+function g_variant_type_new_dict_entry(key: PGVariantType; value: PGVariantType): PGVariantType; cdecl; external LazGLib2_library name 'g_variant_type_new_dict_entry';
+function g_variant_type_new_maybe(element: PGVariantType): PGVariantType; cdecl; external LazGLib2_library name 'g_variant_type_new_maybe';
+function g_variant_type_new_tuple(items: PPGVariantType; length: gint): PGVariantType; cdecl; external LazGLib2_library name 'g_variant_type_new_tuple';
+function g_variant_type_next(type_: PGVariantType): PGVariantType; cdecl; external LazGLib2_library name 'g_variant_type_next';
+function g_variant_type_peek_string(type_: PGVariantType): Pgchar; cdecl; external LazGLib2_library name 'g_variant_type_peek_string';
+function g_variant_type_string_get_depth_(type_string: Pgchar): gsize; cdecl; external LazGLib2_library name 'g_variant_type_string_get_depth_';
+function g_variant_type_string_is_valid(type_string: Pgchar): gboolean; cdecl; external LazGLib2_library name 'g_variant_type_string_is_valid';
+function g_variant_type_string_scan(string_: Pgchar; limit: Pgchar; endptr: PPgchar): gboolean; cdecl; external LazGLib2_library name 'g_variant_type_string_scan';
+function g_variant_type_value(type_: PGVariantType): PGVariantType; cdecl; external LazGLib2_library name 'g_variant_type_value';
+function g_vasprintf(string_: PPgchar; format: Pgchar; args: Tva_list): gint; cdecl; external LazGLib2_library name 'g_vasprintf';
+function g_vfprintf(file_: Pgpointer; format: Pgchar; args: Tva_list): gint; cdecl; external LazGLib2_library name 'g_vfprintf';
+function g_vprintf(format: Pgchar; args: Tva_list): gint; cdecl; external LazGLib2_library name 'g_vprintf';
+function g_vsnprintf(string_: Pgchar; n: gulong; format: Pgchar; args: Tva_list): gint; cdecl; external LazGLib2_library name 'g_vsnprintf';
+function g_vsprintf(string_: Pgchar; format: Pgchar; args: Tva_list): gint; cdecl; external LazGLib2_library name 'g_vsprintf';
+function glib_check_version(required_major: guint; required_minor: guint; required_micro: guint): Pgchar; cdecl; external LazGLib2_library name 'glib_check_version';
+procedure g_array_set_clear_func(array_: Pgpointer; clear_func: TGDestroyNotify); cdecl; external LazGLib2_library name 'g_array_set_clear_func';
+procedure g_array_sort(array_: Pgpointer; compare_func: TGCompareFunc); cdecl; external LazGLib2_library name 'g_array_sort';
+procedure g_array_sort_with_data(array_: Pgpointer; compare_func: TGCompareDataFunc; user_data: gpointer); cdecl; external LazGLib2_library name 'g_array_sort_with_data';
+procedure g_array_unref(array_: Pgpointer); cdecl; external LazGLib2_library name 'g_array_unref';
+procedure g_assert_warning(log_domain: Pgchar; file_: Pgchar; line: gint; pretty_function: Pgchar; expression: Pgchar); cdecl; external LazGLib2_library name 'g_assert_warning';
+procedure g_assertion_message(domain: Pgchar; file_: Pgchar; line: gint; func: Pgchar; message: Pgchar); cdecl; external LazGLib2_library name 'g_assertion_message';
+procedure g_assertion_message_cmpnum(domain: Pgchar; file_: Pgchar; line: gint; func: Pgchar; expr: Pgchar; arg1: long_double; cmp: Pgchar; arg2: long_double; numtype: gchar); cdecl; external LazGLib2_library name 'g_assertion_message_cmpnum';
+procedure g_assertion_message_cmpstr(domain: Pgchar; file_: Pgchar; line: gint; func: Pgchar; expr: Pgchar; arg1: Pgchar; cmp: Pgchar; arg2: Pgchar); cdecl; external LazGLib2_library name 'g_assertion_message_cmpstr';
+procedure g_assertion_message_cmpstrv(domain: Pgchar; file_: Pgchar; line: gint; func: Pgchar; expr: Pgchar; arg1: PPgchar; arg2: PPgchar; first_wrong_idx: gsize); cdecl; external LazGLib2_library name 'g_assertion_message_cmpstrv';
+procedure g_assertion_message_error(domain: Pgchar; file_: Pgchar; line: gint; func: Pgchar; expr: Pgchar; error: PGError; error_domain: TGQuark; error_code: gint); cdecl; external LazGLib2_library name 'g_assertion_message_error';
+procedure g_assertion_message_expr(domain: Pgchar; file_: Pgchar; line: gint; func: Pgchar; expr: Pgchar); cdecl; external LazGLib2_library name 'g_assertion_message_expr';
+procedure g_async_queue_lock(queue: PGAsyncQueue); cdecl; external LazGLib2_library name 'g_async_queue_lock';
+procedure g_async_queue_push(queue: PGAsyncQueue; data: gpointer); cdecl; external LazGLib2_library name 'g_async_queue_push';
+procedure g_async_queue_push_front(queue: PGAsyncQueue; item: gpointer); cdecl; external LazGLib2_library name 'g_async_queue_push_front';
+procedure g_async_queue_push_front_unlocked(queue: PGAsyncQueue; item: gpointer); cdecl; external LazGLib2_library name 'g_async_queue_push_front_unlocked';
+procedure g_async_queue_push_sorted(queue: PGAsyncQueue; data: gpointer; func: TGCompareDataFunc; user_data: gpointer); cdecl; external LazGLib2_library name 'g_async_queue_push_sorted';
+procedure g_async_queue_push_sorted_unlocked(queue: PGAsyncQueue; data: gpointer; func: TGCompareDataFunc; user_data: gpointer); cdecl; external LazGLib2_library name 'g_async_queue_push_sorted_unlocked';
+procedure g_async_queue_push_unlocked(queue: PGAsyncQueue; data: gpointer); cdecl; external LazGLib2_library name 'g_async_queue_push_unlocked';
+procedure g_async_queue_sort(queue: PGAsyncQueue; func: TGCompareDataFunc; user_data: gpointer); cdecl; external LazGLib2_library name 'g_async_queue_sort';
+procedure g_async_queue_sort_unlocked(queue: PGAsyncQueue; func: TGCompareDataFunc; user_data: gpointer); cdecl; external LazGLib2_library name 'g_async_queue_sort_unlocked';
+procedure g_async_queue_unlock(queue: PGAsyncQueue); cdecl; external LazGLib2_library name 'g_async_queue_unlock';
+procedure g_async_queue_unref(queue: PGAsyncQueue); cdecl; external LazGLib2_library name 'g_async_queue_unref';
+procedure g_atomic_int_inc(atomic: Pgint); cdecl; external LazGLib2_library name 'g_atomic_int_inc';
+procedure g_atomic_int_set(atomic: Pgint; newval: gint); cdecl; external LazGLib2_library name 'g_atomic_int_set';
+procedure g_atomic_pointer_set(atomic: Pgpointer; newval: gpointer); cdecl; external LazGLib2_library name 'g_atomic_pointer_set';
+procedure g_atomic_rc_box_release(mem_block: gpointer); cdecl; external LazGLib2_library name 'g_atomic_rc_box_release';
+procedure g_atomic_rc_box_release_full(mem_block: gpointer; clear_func: TGDestroyNotify); cdecl; external LazGLib2_library name 'g_atomic_rc_box_release_full';
+procedure g_atomic_ref_count_inc(arc: Pgint); cdecl; external LazGLib2_library name 'g_atomic_ref_count_inc';
+procedure g_atomic_ref_count_init(arc: Pgint); cdecl; external LazGLib2_library name 'g_atomic_ref_count_init';
+procedure g_bit_lock(address: Pgint; lock_bit: gint); cdecl; external LazGLib2_library name 'g_bit_lock';
+procedure g_bit_unlock(address: Pgint; lock_bit: gint); cdecl; external LazGLib2_library name 'g_bit_unlock';
+procedure g_bookmark_file_add_application(bookmark: PGBookmarkFile; uri: Pgchar; name: Pgchar; exec: Pgchar); cdecl; external LazGLib2_library name 'g_bookmark_file_add_application';
+procedure g_bookmark_file_add_group(bookmark: PGBookmarkFile; uri: Pgchar; group: Pgchar); cdecl; external LazGLib2_library name 'g_bookmark_file_add_group';
+procedure g_bookmark_file_free(bookmark: PGBookmarkFile); cdecl; external LazGLib2_library name 'g_bookmark_file_free';
+{$IFDEF USEGTK3LATESTBINDINGS}
+procedure g_bookmark_file_set_added(bookmark: PGBookmarkFile; uri: Pgchar; added: glong); cdecl; external LazGLib2_library name 'g_bookmark_file_set_added'; deprecated 'Use g_bookmark_file_set_added_date_time() instead, as `time_t` is deprecated due to the year 2038 problem.';
+procedure g_bookmark_file_set_added_date_time(bookmark: PGBookmarkFile; uri: Pgchar; added: PGDateTime); cdecl; external LazGLib2_library name 'g_bookmark_file_set_added_date_time';
+{$ENDIF}
+procedure g_bookmark_file_set_description(bookmark: PGBookmarkFile; uri: Pgchar; description: Pgchar); cdecl; external LazGLib2_library name 'g_bookmark_file_set_description';
+procedure g_bookmark_file_set_groups(bookmark: PGBookmarkFile; uri: Pgchar; groups: PPgchar; length: gsize); cdecl; external LazGLib2_library name 'g_bookmark_file_set_groups';
+procedure g_bookmark_file_set_icon(bookmark: PGBookmarkFile; uri: Pgchar; href: Pgchar; mime_type: Pgchar); cdecl; external LazGLib2_library name 'g_bookmark_file_set_icon';
+procedure g_bookmark_file_set_is_private(bookmark: PGBookmarkFile; uri: Pgchar; is_private: gboolean); cdecl; external LazGLib2_library name 'g_bookmark_file_set_is_private';
+procedure g_bookmark_file_set_mime_type(bookmark: PGBookmarkFile; uri: Pgchar; mime_type: Pgchar); cdecl; external LazGLib2_library name 'g_bookmark_file_set_mime_type';
+procedure g_bookmark_file_set_modified(bookmark: PGBookmarkFile; uri: Pgchar; modified: glong); cdecl; external LazGLib2_library name 'g_bookmark_file_set_modified'; deprecated 'Use g_bookmark_file_set_modified_date_time() instead, as `time_t` is deprecated due to the year 2038 problem.';
+{$IFDEF USEGTK3LATESTBINDINGS}
+procedure g_bookmark_file_set_modified_date_time(bookmark: PGBookmarkFile; uri: Pgchar; modified: PGDateTime); cdecl; external LazGLib2_library name 'g_bookmark_file_set_modified_date_time';
+{$ENDIF}
+procedure g_bookmark_file_set_title(bookmark: PGBookmarkFile; uri: Pgchar; title: Pgchar); cdecl; external LazGLib2_library name 'g_bookmark_file_set_title';
+procedure g_bookmark_file_set_visited(bookmark: PGBookmarkFile; uri: Pgchar; visited: glong); cdecl; external LazGLib2_library name 'g_bookmark_file_set_visited'; deprecated 'Use g_bookmark_file_set_visited_date_time() instead, as `time_t` is deprecated due to the year 2038 problem.';
+{$IFDEF USEGTK3LATESTBINDINGS}
+procedure g_bookmark_file_set_visited_date_time(bookmark: PGBookmarkFile; uri: Pgchar; visited: PGDateTime); cdecl; external LazGLib2_library name 'g_bookmark_file_set_visited_date_time';
+{$ENDIF}
+procedure g_byte_array_sort(array_: Pguint8; compare_func: TGCompareFunc); cdecl; external LazGLib2_library name 'g_byte_array_sort';
+procedure g_byte_array_sort_with_data(array_: Pguint8; compare_func: TGCompareDataFunc; user_data: gpointer); cdecl; external LazGLib2_library name 'g_byte_array_sort_with_data';
+procedure g_byte_array_unref(array_: Pguint8); cdecl; external LazGLib2_library name 'g_byte_array_unref';
+procedure g_bytes_unref(bytes: PGBytes); cdecl; external LazGLib2_library name 'g_bytes_unref';
+procedure g_checksum_free(checksum: PGChecksum); cdecl; external LazGLib2_library name 'g_checksum_free';
+procedure g_checksum_get_digest(checksum: PGChecksum; buffer: Pguint8; digest_len: Pgsize); cdecl; external LazGLib2_library name 'g_checksum_get_digest';
+procedure g_checksum_reset(checksum: PGChecksum); cdecl; external LazGLib2_library name 'g_checksum_reset';
+procedure g_checksum_update(checksum: PGChecksum; data: Pguint8; length: gssize); cdecl; external LazGLib2_library name 'g_checksum_update';
+procedure g_clear_error(err:PPGError); cdecl; external LazGLib2_library name 'g_clear_error';
+procedure g_clear_handle_id(tag_ptr: Pguint; clear_func: TGClearHandleFunc); cdecl; external LazGLib2_library name 'g_clear_handle_id';
+procedure g_clear_list(list_ptr: PPGList; destroy_: TGDestroyNotify); cdecl; external LazGLib2_library name 'g_clear_list';
+procedure g_clear_pointer(pp: Pgpointer; destroy_: TGDestroyNotify); cdecl; external LazGLib2_library name 'g_clear_pointer';
+procedure g_clear_slist(slist_ptr: PPGSList; destroy_: TGDestroyNotify); cdecl; external LazGLib2_library name 'g_clear_slist';
+procedure g_cond_broadcast(cond: PGCond); cdecl; external LazGLib2_library name 'g_cond_broadcast';
+procedure g_cond_clear(cond: PGCond); cdecl; external LazGLib2_library name 'g_cond_clear';
+procedure g_cond_init(cond: PGCond); cdecl; external LazGLib2_library name 'g_cond_init';
+procedure g_cond_signal(cond: PGCond); cdecl; external LazGLib2_library name 'g_cond_signal';
+procedure g_cond_wait(cond: PGCond; mutex: PGMutex); cdecl; external LazGLib2_library name 'g_cond_wait';
+procedure g_datalist_clear(datalist: PPGData); cdecl; external LazGLib2_library name 'g_datalist_clear';
+procedure g_datalist_foreach(datalist: PPGData; func: TGDataForeachFunc; user_data: gpointer); cdecl; external LazGLib2_library name 'g_datalist_foreach';
+procedure g_datalist_id_set_data_full(datalist: PPGData; key_id: TGQuark; data: gpointer; destroy_func: TGDestroyNotify); cdecl; external LazGLib2_library name 'g_datalist_id_set_data_full';
+procedure g_datalist_init(datalist: PPGData); cdecl; external LazGLib2_library name 'g_datalist_init';
+procedure g_datalist_set_flags(datalist: PPGData; flags: guint); cdecl; external LazGLib2_library name 'g_datalist_set_flags';
+procedure g_datalist_unset_flags(datalist: PPGData; flags: guint); cdecl; external LazGLib2_library name 'g_datalist_unset_flags';
+procedure g_dataset_destroy(dataset_location: Pgpointer); cdecl; external LazGLib2_library name 'g_dataset_destroy';
+procedure g_dataset_foreach(dataset_location: Pgpointer; func: TGDataForeachFunc; user_data: gpointer); cdecl; external LazGLib2_library name 'g_dataset_foreach';
+procedure g_dataset_id_set_data_full(dataset_location: Pgpointer; key_id: TGQuark; data: gpointer; destroy_func: TGDestroyNotify); cdecl; external LazGLib2_library name 'g_dataset_id_set_data_full';
+procedure g_date_add_days(date: PGDate; n_days: guint); cdecl; external LazGLib2_library name 'g_date_add_days';
+procedure g_date_add_months(date: PGDate; n_months: guint); cdecl; external LazGLib2_library name 'g_date_add_months';
+procedure g_date_add_years(date: PGDate; n_years: guint); cdecl; external LazGLib2_library name 'g_date_add_years';
+procedure g_date_clamp(date: PGDate; min_date: PGDate; max_date: PGDate); cdecl; external LazGLib2_library name 'g_date_clamp';
+procedure g_date_clear(date: PGDate; n_dates: guint); cdecl; external LazGLib2_library name 'g_date_clear';
+procedure g_date_free(date: PGDate); cdecl; external LazGLib2_library name 'g_date_free';
+procedure g_date_order(date1: PGDate; date2: PGDate); cdecl; external LazGLib2_library name 'g_date_order';
+procedure g_date_set_day(date: PGDate; day: TGDateDay); cdecl; external LazGLib2_library name 'g_date_set_day';
+procedure g_date_set_dmy(date: PGDate; day: TGDateDay; month: TGDateMonth; y: TGDateYear); cdecl; external LazGLib2_library name 'g_date_set_dmy';
+procedure g_date_set_julian(date: PGDate; julian_date: guint32); cdecl; external LazGLib2_library name 'g_date_set_julian';
+procedure g_date_set_month(date: PGDate; month: TGDateMonth); cdecl; external LazGLib2_library name 'g_date_set_month';
+procedure g_date_set_parse(date: PGDate; str: Pgchar); cdecl; external LazGLib2_library name 'g_date_set_parse';
+procedure g_date_set_time_t(date: PGDate; timet: glong); cdecl; external LazGLib2_library name 'g_date_set_time_t';
+procedure g_date_set_year(date: PGDate; year: TGDateYear); cdecl; external LazGLib2_library name 'g_date_set_year';
+procedure g_date_subtract_days(date: PGDate; n_days: guint); cdecl; external LazGLib2_library name 'g_date_subtract_days';
+procedure g_date_subtract_months(date: PGDate; n_months: guint); cdecl; external LazGLib2_library name 'g_date_subtract_months';
+procedure g_date_subtract_years(date: PGDate; n_years: guint); cdecl; external LazGLib2_library name 'g_date_subtract_years';
+procedure g_date_time_get_ymd(datetime: PGDateTime; year: Pgint; month: Pgint; day: Pgint); cdecl; external LazGLib2_library name 'g_date_time_get_ymd';
+procedure g_date_time_unref(datetime: PGDateTime); cdecl; external LazGLib2_library name 'g_date_time_unref';
+procedure g_date_to_struct_tm(date: PGDate; tm: Pgpointer); cdecl; external LazGLib2_library name 'g_date_to_struct_tm';
+procedure g_dir_close(dir: PGDir); cdecl; external LazGLib2_library name 'g_dir_close';
+procedure g_dir_rewind(dir: PGDir); cdecl; external LazGLib2_library name 'g_dir_rewind';
+procedure g_error_free(error: PGError); cdecl; external LazGLib2_library name 'g_error_free';
+procedure g_free(mem: gpointer); cdecl; external LazGLib2_library name 'g_free';
+procedure g_hash_table_destroy(hash_table: PGHashTable); cdecl; external LazGLib2_library name 'g_hash_table_destroy';
+procedure g_hash_table_foreach(hash_table: PGHashTable; func: TGHFunc; user_data: gpointer); cdecl; external LazGLib2_library name 'g_hash_table_foreach';
+procedure g_hash_table_iter_init(iter: PGHashTableIter; hash_table: PGHashTable); cdecl; external LazGLib2_library name 'g_hash_table_iter_init';
+procedure g_hash_table_iter_remove(iter: PGHashTableIter); cdecl; external LazGLib2_library name 'g_hash_table_iter_remove';
+procedure g_hash_table_iter_replace(iter: PGHashTableIter; value: gpointer); cdecl; external LazGLib2_library name 'g_hash_table_iter_replace';
+procedure g_hash_table_iter_steal(iter: PGHashTableIter); cdecl; external LazGLib2_library name 'g_hash_table_iter_steal';
+procedure g_hash_table_remove_all(hash_table: PGHashTable); cdecl; external LazGLib2_library name 'g_hash_table_remove_all';
+procedure g_hash_table_steal_all(hash_table: PGHashTable); cdecl; external LazGLib2_library name 'g_hash_table_steal_all';
+procedure g_hash_table_unref(hash_table: PGHashTable); cdecl; external LazGLib2_library name 'g_hash_table_unref';
+procedure g_hmac_get_digest(hmac: PGHmac; buffer: Pguint8; digest_len: Pgsize); cdecl; external LazGLib2_library name 'g_hmac_get_digest';
+procedure g_hmac_unref(hmac: PGHmac); cdecl; external LazGLib2_library name 'g_hmac_unref';
+procedure g_hmac_update(hmac: PGHmac; data: Pguint8; length: gssize); cdecl; external LazGLib2_library name 'g_hmac_update';
+procedure g_hook_destroy_link(hook_list: PGHookList; hook: PGHook); cdecl; external LazGLib2_library name 'g_hook_destroy_link';
+procedure g_hook_free(hook_list: PGHookList; hook: PGHook); cdecl; external LazGLib2_library name 'g_hook_free';
+procedure g_hook_insert_before(hook_list: PGHookList; sibling: PGHook; hook: PGHook); cdecl; external LazGLib2_library name 'g_hook_insert_before';
+procedure g_hook_insert_sorted(hook_list: PGHookList; hook: PGHook; func: TGHookCompareFunc); cdecl; external LazGLib2_library name 'g_hook_insert_sorted';
+procedure g_hook_list_clear(hook_list: PGHookList); cdecl; external LazGLib2_library name 'g_hook_list_clear';
+procedure g_hook_list_init(hook_list: PGHookList; hook_size: guint); cdecl; external LazGLib2_library name 'g_hook_list_init';
+procedure g_hook_list_invoke(hook_list: PGHookList; may_recurse: gboolean); cdecl; external LazGLib2_library name 'g_hook_list_invoke';
+procedure g_hook_list_invoke_check(hook_list: PGHookList; may_recurse: gboolean); cdecl; external LazGLib2_library name 'g_hook_list_invoke_check';
+procedure g_hook_list_marshal(hook_list: PGHookList; may_recurse: gboolean; marshaller: TGHookMarshaller; marshal_data: gpointer); cdecl; external LazGLib2_library name 'g_hook_list_marshal';
+procedure g_hook_list_marshal_check(hook_list: PGHookList; may_recurse: gboolean; marshaller: TGHookCheckMarshaller; marshal_data: gpointer); cdecl; external LazGLib2_library name 'g_hook_list_marshal_check';
+procedure g_hook_prepend(hook_list: PGHookList; hook: PGHook); cdecl; external LazGLib2_library name 'g_hook_prepend';
+procedure g_hook_unref(hook_list: PGHookList; hook: PGHook); cdecl; external LazGLib2_library name 'g_hook_unref';
+procedure g_io_channel_init(channel: PGIOChannel); cdecl; external LazGLib2_library name 'g_io_channel_init';
+procedure g_io_channel_set_buffer_size(channel: PGIOChannel; size: gsize); cdecl; external LazGLib2_library name 'g_io_channel_set_buffer_size';
+procedure g_io_channel_set_buffered(channel: PGIOChannel; buffered: gboolean); cdecl; external LazGLib2_library name 'g_io_channel_set_buffered';
+procedure g_io_channel_set_close_on_unref(channel: PGIOChannel; do_close: gboolean); cdecl; external LazGLib2_library name 'g_io_channel_set_close_on_unref';
+procedure g_io_channel_set_line_term(channel: PGIOChannel; line_term: Pgchar; length: gint); cdecl; external LazGLib2_library name 'g_io_channel_set_line_term';
+procedure g_io_channel_unref(channel: PGIOChannel); cdecl; external LazGLib2_library name 'g_io_channel_unref';
+procedure g_key_file_free(key_file: PGKeyFile); cdecl; external LazGLib2_library name 'g_key_file_free';
+procedure g_key_file_set_boolean(key_file: PGKeyFile; group_name: Pgchar; key: Pgchar; value: gboolean); cdecl; external LazGLib2_library name 'g_key_file_set_boolean';
+procedure g_key_file_set_boolean_list(key_file: PGKeyFile; group_name: Pgchar; key: Pgchar; list: Pgboolean; length: gsize); cdecl; external LazGLib2_library name 'g_key_file_set_boolean_list';
+procedure g_key_file_set_double(key_file: PGKeyFile; group_name: Pgchar; key: Pgchar; value: gdouble); cdecl; external LazGLib2_library name 'g_key_file_set_double';
+procedure g_key_file_set_double_list(key_file: PGKeyFile; group_name: Pgchar; key: Pgchar; list: Pgdouble; length: gsize); cdecl; external LazGLib2_library name 'g_key_file_set_double_list';
+procedure g_key_file_set_int64(key_file: PGKeyFile; group_name: Pgchar; key: Pgchar; value: gint64); cdecl; external LazGLib2_library name 'g_key_file_set_int64';
+procedure g_key_file_set_integer(key_file: PGKeyFile; group_name: Pgchar; key: Pgchar; value: gint); cdecl; external LazGLib2_library name 'g_key_file_set_integer';
+procedure g_key_file_set_integer_list(key_file: PGKeyFile; group_name: Pgchar; key: Pgchar; list: Pgint; length: gsize); cdecl; external LazGLib2_library name 'g_key_file_set_integer_list';
+procedure g_key_file_set_list_separator(key_file: PGKeyFile; separator: gchar); cdecl; external LazGLib2_library name 'g_key_file_set_list_separator';
+procedure g_key_file_set_locale_string(key_file: PGKeyFile; group_name: Pgchar; key: Pgchar; locale: Pgchar; string_: Pgchar); cdecl; external LazGLib2_library name 'g_key_file_set_locale_string';
+procedure g_key_file_set_locale_string_list(key_file: PGKeyFile; group_name: Pgchar; key: Pgchar; locale: Pgchar; list: PPgchar; length: gsize); cdecl; external LazGLib2_library name 'g_key_file_set_locale_string_list';
+procedure g_key_file_set_string(key_file: PGKeyFile; group_name: Pgchar; key: Pgchar; string_: Pgchar); cdecl; external LazGLib2_library name 'g_key_file_set_string';
+procedure g_key_file_set_string_list(key_file: PGKeyFile; group_name: Pgchar; key: Pgchar; list: PPgchar; length: gsize); cdecl; external LazGLib2_library name 'g_key_file_set_string_list';
+procedure g_key_file_set_uint64(key_file: PGKeyFile; group_name: Pgchar; key: Pgchar; value: guint64); cdecl; external LazGLib2_library name 'g_key_file_set_uint64';
+procedure g_key_file_set_value(key_file: PGKeyFile; group_name: Pgchar; key: Pgchar; value: Pgchar); cdecl; external LazGLib2_library name 'g_key_file_set_value';
+procedure g_key_file_unref(key_file: PGKeyFile); cdecl; external LazGLib2_library name 'g_key_file_unref';
+procedure g_list_foreach(list: PGList; func: TGFunc; user_data: gpointer); cdecl; external LazGLib2_library name 'g_list_foreach';
+procedure g_list_free(list: PGList); cdecl; external LazGLib2_library name 'g_list_free';
+procedure g_list_free_1(list: PGList); cdecl; external LazGLib2_library name 'g_list_free_1';
+procedure g_list_free_full(list: PGList; free_func: TGDestroyNotify); cdecl; external LazGLib2_library name 'g_list_free_full';
+procedure g_log(log_domain: Pgchar; log_level: TGLogLevelFlags; format: Pgchar; args: array of const); cdecl; external LazGLib2_library name 'g_log';
+procedure g_log_default_handler(log_domain: Pgchar; log_level: TGLogLevelFlags; message: Pgchar; unused_data: gpointer); cdecl; external LazGLib2_library name 'g_log_default_handler';
+procedure g_log_remove_handler(log_domain: Pgchar; handler_id: guint); cdecl; external LazGLib2_library name 'g_log_remove_handler';
+procedure g_log_set_writer_func(func: TGLogWriterFunc; user_data: gpointer; user_data_free: TGDestroyNotify); cdecl; external LazGLib2_library name 'g_log_set_writer_func';
+procedure g_log_structured(log_domain: Pgchar; log_level: TGLogLevelFlags; args: array of const); cdecl; external LazGLib2_library name 'g_log_structured';
+procedure g_log_structured_array(log_level: TGLogLevelFlags; fields: PGLogField; n_fields: gsize); cdecl; external LazGLib2_library name 'g_log_structured_array';
+procedure g_log_structured_standard(log_domain: Pgchar; log_level: TGLogLevelFlags; file_: Pgchar; line: Pgchar; func: Pgchar; message_format: Pgchar; args: array of const); cdecl; external LazGLib2_library name 'g_log_structured_standard';
+procedure g_log_variant(log_domain: Pgchar; log_level: TGLogLevelFlags; fields: PGVariant); cdecl; external LazGLib2_library name 'g_log_variant';
+procedure g_logv(log_domain: Pgchar; log_level: TGLogLevelFlags; format: Pgchar; args: Tva_list); cdecl; external LazGLib2_library name 'g_logv';
+procedure g_main_context_add_poll(context: PGMainContext; fd: PGPollFD; priority: gint); cdecl; external LazGLib2_library name 'g_main_context_add_poll';
+procedure g_main_context_dispatch(context: PGMainContext); cdecl; external LazGLib2_library name 'g_main_context_dispatch';
+procedure g_main_context_invoke(context: PGMainContext; function_: TGSourceFunc; data: gpointer); cdecl; external LazGLib2_library name 'g_main_context_invoke';
+procedure g_main_context_invoke_full(context: PGMainContext; priority: gint; function_: TGSourceFunc; data: gpointer; notify: TGDestroyNotify); cdecl; external LazGLib2_library name 'g_main_context_invoke_full';
+procedure g_main_context_pop_thread_default(context: PGMainContext); cdecl; external LazGLib2_library name 'g_main_context_pop_thread_default';
+procedure g_main_context_push_thread_default(context: PGMainContext); cdecl; external LazGLib2_library name 'g_main_context_push_thread_default';
+procedure g_main_context_release(context: PGMainContext); cdecl; external LazGLib2_library name 'g_main_context_release';
+procedure g_main_context_remove_poll(context: PGMainContext; fd: PGPollFD); cdecl; external LazGLib2_library name 'g_main_context_remove_poll';
+procedure g_main_context_set_poll_func(context: PGMainContext; func: TGPollFunc); cdecl; external LazGLib2_library name 'g_main_context_set_poll_func';
+procedure g_main_context_unref(context: PGMainContext); cdecl; external LazGLib2_library name 'g_main_context_unref';
+procedure g_main_context_wakeup(context: PGMainContext); cdecl; external LazGLib2_library name 'g_main_context_wakeup';
+procedure g_main_loop_quit(loop: PGMainLoop); cdecl; external LazGLib2_library name 'g_main_loop_quit';
+procedure g_main_loop_run(loop: PGMainLoop); cdecl; external LazGLib2_library name 'g_main_loop_run';
+procedure g_main_loop_unref(loop: PGMainLoop); cdecl; external LazGLib2_library name 'g_main_loop_unref';
+procedure g_mapped_file_unref(file_: PGMappedFile); cdecl; external LazGLib2_library name 'g_mapped_file_unref';
+procedure g_markup_parse_context_free(context: PGMarkupParseContext); cdecl; external LazGLib2_library name 'g_markup_parse_context_free';
+procedure g_markup_parse_context_get_position(context: PGMarkupParseContext; line_number: Pgint; char_number: Pgint); cdecl; external LazGLib2_library name 'g_markup_parse_context_get_position';
+procedure g_markup_parse_context_push(context: PGMarkupParseContext; parser: PGMarkupParser; user_data: gpointer); cdecl; external LazGLib2_library name 'g_markup_parse_context_push';
+procedure g_markup_parse_context_unref(context: PGMarkupParseContext); cdecl; external LazGLib2_library name 'g_markup_parse_context_unref';
+procedure g_match_info_free(match_info: PGMatchInfo); cdecl; external LazGLib2_library name 'g_match_info_free';
+procedure g_match_info_unref(match_info: PGMatchInfo); cdecl; external LazGLib2_library name 'g_match_info_unref';
+procedure g_mutex_clear(mutex: PGMutex); cdecl; external LazGLib2_library name 'g_mutex_clear';
+procedure g_mutex_init(mutex: PGMutex); cdecl; external LazGLib2_library name 'g_mutex_init';
+procedure g_mutex_lock(mutex: PGMutex); cdecl; external LazGLib2_library name 'g_mutex_lock';
+procedure g_mutex_unlock(mutex: PGMutex); cdecl; external LazGLib2_library name 'g_mutex_unlock';
+procedure g_node_children_foreach(node: PGNode; flags: TGTraverseFlags; func: TGNodeForeachFunc; data: gpointer); cdecl; external LazGLib2_library name 'g_node_children_foreach';
+procedure g_node_destroy(root: PGNode); cdecl; external LazGLib2_library name 'g_node_destroy';
+procedure g_node_reverse_children(node: PGNode); cdecl; external LazGLib2_library name 'g_node_reverse_children';
+procedure g_node_traverse(root: PGNode; order: TGTraverseType; flags: TGTraverseFlags; max_depth: gint; func: TGNodeTraverseFunc; data: gpointer); cdecl; external LazGLib2_library name 'g_node_traverse';
+procedure g_node_unlink(node: PGNode); cdecl; external LazGLib2_library name 'g_node_unlink';
+procedure g_nullify_pointer(nullify_location: Pgpointer); cdecl; external LazGLib2_library name 'g_nullify_pointer';
+procedure g_on_error_query(prg_name: Pgchar); cdecl; external LazGLib2_library name 'g_on_error_query';
+procedure g_on_error_stack_trace(prg_name: Pgchar); cdecl; external LazGLib2_library name 'g_on_error_stack_trace';
+procedure g_once_init_leave(location: Pgpointer; result_: gsize); cdecl; external LazGLib2_library name 'g_once_init_leave';
+procedure g_option_context_add_group(context: PGOptionContext; group: PGOptionGroup); cdecl; external LazGLib2_library name 'g_option_context_add_group';
+procedure g_option_context_add_main_entries(context: PGOptionContext; entries: PGOptionEntry; translation_domain: Pgchar); cdecl; external LazGLib2_library name 'g_option_context_add_main_entries';
+procedure g_option_context_free(context: PGOptionContext); cdecl; external LazGLib2_library name 'g_option_context_free';
+procedure g_option_context_set_description(context: PGOptionContext; description: Pgchar); cdecl; external LazGLib2_library name 'g_option_context_set_description';
+procedure g_option_context_set_help_enabled(context: PGOptionContext; help_enabled: gboolean); cdecl; external LazGLib2_library name 'g_option_context_set_help_enabled';
+procedure g_option_context_set_ignore_unknown_options(context: PGOptionContext; ignore_unknown: gboolean); cdecl; external LazGLib2_library name 'g_option_context_set_ignore_unknown_options';
+procedure g_option_context_set_main_group(context: PGOptionContext; group: PGOptionGroup); cdecl; external LazGLib2_library name 'g_option_context_set_main_group';
+procedure g_option_context_set_strict_posix(context: PGOptionContext; strict_posix: gboolean); cdecl; external LazGLib2_library name 'g_option_context_set_strict_posix';
+procedure g_option_context_set_summary(context: PGOptionContext; summary: Pgchar); cdecl; external LazGLib2_library name 'g_option_context_set_summary';
+procedure g_option_context_set_translate_func(context: PGOptionContext; func: TGTranslateFunc; data: gpointer; destroy_notify: TGDestroyNotify); cdecl; external LazGLib2_library name 'g_option_context_set_translate_func';
+procedure g_option_context_set_translation_domain(context: PGOptionContext; domain: Pgchar); cdecl; external LazGLib2_library name 'g_option_context_set_translation_domain';
+procedure g_option_group_add_entries(group: PGOptionGroup; entries: PGOptionEntry); cdecl; external LazGLib2_library name 'g_option_group_add_entries';
+procedure g_option_group_set_error_hook(group: PGOptionGroup; error_func: TGOptionErrorFunc); cdecl; external LazGLib2_library name 'g_option_group_set_error_hook';
+procedure g_option_group_set_parse_hooks(group: PGOptionGroup; pre_parse_func: TGOptionParseFunc; post_parse_func: TGOptionParseFunc); cdecl; external LazGLib2_library name 'g_option_group_set_parse_hooks';
+procedure g_option_group_set_translate_func(group: PGOptionGroup; func: TGTranslateFunc; data: gpointer; destroy_notify: TGDestroyNotify); cdecl; external LazGLib2_library name 'g_option_group_set_translate_func';
+procedure g_option_group_set_translation_domain(group: PGOptionGroup; domain: Pgchar); cdecl; external LazGLib2_library name 'g_option_group_set_translation_domain';
+procedure g_option_group_unref(group: PGOptionGroup); cdecl; external LazGLib2_library name 'g_option_group_unref';
+procedure g_pattern_spec_free(pspec: PGPatternSpec); cdecl; external LazGLib2_library name 'g_pattern_spec_free';
+procedure g_pointer_bit_lock(address: Pgpointer; lock_bit: gint); cdecl; external LazGLib2_library name 'g_pointer_bit_lock';
+procedure g_pointer_bit_unlock(address: Pgpointer; lock_bit: gint); cdecl; external LazGLib2_library name 'g_pointer_bit_unlock';
+procedure g_prefix_error(err: PPGError; format: Pgchar; args: array of const); cdecl; external LazGLib2_library name 'g_prefix_error';
+procedure g_print(format: Pgchar; args: array of const); cdecl; external LazGLib2_library name 'g_print';
+procedure g_printerr(format: Pgchar; args: array of const); cdecl; external LazGLib2_library name 'g_printerr';
+procedure g_private_replace(key: PGPrivate; value: gpointer); cdecl; external LazGLib2_library name 'g_private_replace';
+procedure g_private_set(key: PGPrivate; value: gpointer); cdecl; external LazGLib2_library name 'g_private_set';
+procedure g_propagate_error(dest: PPGError; src: PGError); cdecl; external LazGLib2_library name 'g_propagate_error';
+procedure g_propagate_prefixed_error(dest: PPGError; src: PGError; format: Pgchar; args: array of const); cdecl; external LazGLib2_library name 'g_propagate_prefixed_error';
+procedure g_ptr_array_add(array_: Pgpointer; data: gpointer); cdecl; external LazGLib2_library name 'g_ptr_array_add';
+procedure g_ptr_array_extend(array_to_extend: Pgpointer; array_: Pgpointer; func: TGCopyFunc; user_data: gpointer); cdecl; external LazGLib2_library name 'g_ptr_array_extend';
+procedure g_ptr_array_extend_and_steal(array_to_extend: Pgpointer; array_: Pgpointer); cdecl; external LazGLib2_library name 'g_ptr_array_extend_and_steal';
+procedure g_ptr_array_foreach(array_: Pgpointer; func: TGFunc; user_data: gpointer); cdecl; external LazGLib2_library name 'g_ptr_array_foreach';
+procedure g_ptr_array_insert(array_: Pgpointer; index_: gint; data: gpointer); cdecl; external LazGLib2_library name 'g_ptr_array_insert';
+procedure g_ptr_array_set_free_func(array_: Pgpointer; element_free_func: TGDestroyNotify); cdecl; external LazGLib2_library name 'g_ptr_array_set_free_func';
+procedure g_ptr_array_set_size(array_: Pgpointer; length: gint); cdecl; external LazGLib2_library name 'g_ptr_array_set_size';
+procedure g_ptr_array_sort(array_: Pgpointer; compare_func: TGCompareFunc); cdecl; external LazGLib2_library name 'g_ptr_array_sort';
+procedure g_ptr_array_sort_with_data(array_: Pgpointer; compare_func: TGCompareDataFunc; user_data: gpointer); cdecl; external LazGLib2_library name 'g_ptr_array_sort_with_data';
+procedure g_ptr_array_unref(array_: Pgpointer); cdecl; external LazGLib2_library name 'g_ptr_array_unref';
+procedure g_qsort_with_data(pbase: Pgpointer; total_elems: gint; size: gsize; compare_func: TGCompareDataFunc; user_data: gpointer); cdecl; external LazGLib2_library name 'g_qsort_with_data';
+procedure g_queue_clear(queue: PGQueue); cdecl; external LazGLib2_library name 'g_queue_clear';
+procedure g_queue_clear_full(queue: PGQueue; free_func: TGDestroyNotify); cdecl; external LazGLib2_library name 'g_queue_clear_full';
+procedure g_queue_delete_link(queue: PGQueue; link_: PGList); cdecl; external LazGLib2_library name 'g_queue_delete_link';
+procedure g_queue_foreach(queue: PGQueue; func: TGFunc; user_data: gpointer); cdecl; external LazGLib2_library name 'g_queue_foreach';
+procedure g_queue_free(queue: PGQueue); cdecl; external LazGLib2_library name 'g_queue_free';
+procedure g_queue_free_full(queue: PGQueue; free_func: TGDestroyNotify); cdecl; external LazGLib2_library name 'g_queue_free_full';
+procedure g_queue_init(queue: PGQueue); cdecl; external LazGLib2_library name 'g_queue_init';
+procedure g_queue_insert_after(queue: PGQueue; sibling: PGList; data: gpointer); cdecl; external LazGLib2_library name 'g_queue_insert_after';
+procedure g_queue_insert_after_link(queue: PGQueue; sibling: PGList; link_: PGList); cdecl; external LazGLib2_library name 'g_queue_insert_after_link';
+procedure g_queue_insert_before(queue: PGQueue; sibling: PGList; data: gpointer); cdecl; external LazGLib2_library name 'g_queue_insert_before';
+procedure g_queue_insert_before_link(queue: PGQueue; sibling: PGList; link_: PGList); cdecl; external LazGLib2_library name 'g_queue_insert_before_link';
+procedure g_queue_insert_sorted(queue: PGQueue; data: gpointer; func: TGCompareDataFunc; user_data: gpointer); cdecl; external LazGLib2_library name 'g_queue_insert_sorted';
+procedure g_queue_push_head(queue: PGQueue; data: gpointer); cdecl; external LazGLib2_library name 'g_queue_push_head';
+procedure g_queue_push_head_link(queue: PGQueue; link_: PGList); cdecl; external LazGLib2_library name 'g_queue_push_head_link';
+procedure g_queue_push_nth(queue: PGQueue; data: gpointer; n: gint); cdecl; external LazGLib2_library name 'g_queue_push_nth';
+procedure g_queue_push_nth_link(queue: PGQueue; n: gint; link_: PGList); cdecl; external LazGLib2_library name 'g_queue_push_nth_link';
+procedure g_queue_push_tail(queue: PGQueue; data: gpointer); cdecl; external LazGLib2_library name 'g_queue_push_tail';
+procedure g_queue_push_tail_link(queue: PGQueue; link_: PGList); cdecl; external LazGLib2_library name 'g_queue_push_tail_link';
+procedure g_queue_reverse(queue: PGQueue); cdecl; external LazGLib2_library name 'g_queue_reverse';
+procedure g_queue_sort(queue: PGQueue; compare_func: TGCompareDataFunc; user_data: gpointer); cdecl; external LazGLib2_library name 'g_queue_sort';
+procedure g_queue_unlink(queue: PGQueue; link_: PGList); cdecl; external LazGLib2_library name 'g_queue_unlink';
+procedure g_rand_free(rand_: PGRand); cdecl; external LazGLib2_library name 'g_rand_free';
+procedure g_rand_set_seed(rand_: PGRand; seed: guint32); cdecl; external LazGLib2_library name 'g_rand_set_seed';
+procedure g_rand_set_seed_array(rand_: PGRand; seed: Pguint32; seed_length: guint); cdecl; external LazGLib2_library name 'g_rand_set_seed_array';
+procedure g_random_set_seed(seed: guint32); cdecl; external LazGLib2_library name 'g_random_set_seed';
+procedure g_rc_box_release(mem_block: gpointer); cdecl; external LazGLib2_library name 'g_rc_box_release';
+procedure g_rc_box_release_full(mem_block: gpointer; clear_func: TGDestroyNotify); cdecl; external LazGLib2_library name 'g_rc_box_release_full';
+procedure g_rec_mutex_clear(rec_mutex: PGRecMutex); cdecl; external LazGLib2_library name 'g_rec_mutex_clear';
+procedure g_rec_mutex_init(rec_mutex: PGRecMutex); cdecl; external LazGLib2_library name 'g_rec_mutex_init';
+procedure g_rec_mutex_lock(rec_mutex: PGRecMutex); cdecl; external LazGLib2_library name 'g_rec_mutex_lock';
+procedure g_rec_mutex_unlock(rec_mutex: PGRecMutex); cdecl; external LazGLib2_library name 'g_rec_mutex_unlock';
+procedure g_ref_count_inc(rc: Pgint); cdecl; external LazGLib2_library name 'g_ref_count_inc';
+procedure g_ref_count_init(rc: Pgint); cdecl; external LazGLib2_library name 'g_ref_count_init';
+procedure g_ref_string_release(str: Pgchar); cdecl; external LazGLib2_library name 'g_ref_string_release';
+procedure g_regex_unref(regex: PGRegex); cdecl; external LazGLib2_library name 'g_regex_unref';
+procedure g_reload_user_special_dirs_cache; cdecl; external LazGLib2_library name 'g_reload_user_special_dirs_cache';
+procedure g_return_if_fail_warning(log_domain: Pgchar; pretty_function: Pgchar; expression: Pgchar); cdecl; external LazGLib2_library name 'g_return_if_fail_warning';
+procedure g_rw_lock_clear(rw_lock: PGRWLock); cdecl; external LazGLib2_library name 'g_rw_lock_clear';
+procedure g_rw_lock_init(rw_lock: PGRWLock); cdecl; external LazGLib2_library name 'g_rw_lock_init';
+procedure g_rw_lock_reader_lock(rw_lock: PGRWLock); cdecl; external LazGLib2_library name 'g_rw_lock_reader_lock';
+procedure g_rw_lock_reader_unlock(rw_lock: PGRWLock); cdecl; external LazGLib2_library name 'g_rw_lock_reader_unlock';
+procedure g_rw_lock_writer_lock(rw_lock: PGRWLock); cdecl; external LazGLib2_library name 'g_rw_lock_writer_lock';
+procedure g_rw_lock_writer_unlock(rw_lock: PGRWLock); cdecl; external LazGLib2_library name 'g_rw_lock_writer_unlock';
+procedure g_scanner_destroy(scanner: PGScanner); cdecl; external LazGLib2_library name 'g_scanner_destroy';
+procedure g_scanner_error(scanner: PGScanner; format: Pgchar; args: array of const); cdecl; external LazGLib2_library name 'g_scanner_error';
+procedure g_scanner_input_file(scanner: PGScanner; input_fd: gint); cdecl; external LazGLib2_library name 'g_scanner_input_file';
+procedure g_scanner_input_text(scanner: PGScanner; text: Pgchar; text_len: guint); cdecl; external LazGLib2_library name 'g_scanner_input_text';
+procedure g_scanner_scope_add_symbol(scanner: PGScanner; scope_id: guint; symbol: Pgchar; value: gpointer); cdecl; external LazGLib2_library name 'g_scanner_scope_add_symbol';
+procedure g_scanner_scope_foreach_symbol(scanner: PGScanner; scope_id: guint; func: TGHFunc; user_data: gpointer); cdecl; external LazGLib2_library name 'g_scanner_scope_foreach_symbol';
+procedure g_scanner_scope_remove_symbol(scanner: PGScanner; scope_id: guint; symbol: Pgchar); cdecl; external LazGLib2_library name 'g_scanner_scope_remove_symbol';
+procedure g_scanner_sync_file_offset(scanner: PGScanner); cdecl; external LazGLib2_library name 'g_scanner_sync_file_offset';
+procedure g_scanner_unexp_token(scanner: PGScanner; expected_token: TGTokenType; identifier_spec: Pgchar; symbol_spec: Pgchar; symbol_name: Pgchar; message: Pgchar; is_error: gint); cdecl; external LazGLib2_library name 'g_scanner_unexp_token';
+procedure g_scanner_warn(scanner: PGScanner; format: Pgchar; args: array of const); cdecl; external LazGLib2_library name 'g_scanner_warn';
+procedure g_sequence_foreach(seq: PGSequence; func: TGFunc; user_data: gpointer); cdecl; external LazGLib2_library name 'g_sequence_foreach';
+procedure g_sequence_foreach_range(begin_: PGSequenceIter; end_: PGSequenceIter; func: TGFunc; user_data: gpointer); cdecl; external LazGLib2_library name 'g_sequence_foreach_range';
+procedure g_sequence_free(seq: PGSequence); cdecl; external LazGLib2_library name 'g_sequence_free';
+procedure g_sequence_move(src: PGSequenceIter; dest: PGSequenceIter); cdecl; external LazGLib2_library name 'g_sequence_move';
+procedure g_sequence_move_range(dest: PGSequenceIter; begin_: PGSequenceIter; end_: PGSequenceIter); cdecl; external LazGLib2_library name 'g_sequence_move_range';
+procedure g_sequence_remove(iter: PGSequenceIter); cdecl; external LazGLib2_library name 'g_sequence_remove';
+procedure g_sequence_remove_range(begin_: PGSequenceIter; end_: PGSequenceIter); cdecl; external LazGLib2_library name 'g_sequence_remove_range';
+procedure g_sequence_set(iter: PGSequenceIter; data: gpointer); cdecl; external LazGLib2_library name 'g_sequence_set';
+procedure g_sequence_sort(seq: PGSequence; cmp_func: TGCompareDataFunc; cmp_data: gpointer); cdecl; external LazGLib2_library name 'g_sequence_sort';
+procedure g_sequence_sort_changed(iter: PGSequenceIter; cmp_func: TGCompareDataFunc; cmp_data: gpointer); cdecl; external LazGLib2_library name 'g_sequence_sort_changed';
+procedure g_sequence_sort_changed_iter(iter: PGSequenceIter; iter_cmp: TGSequenceIterCompareFunc; cmp_data: gpointer); cdecl; external LazGLib2_library name 'g_sequence_sort_changed_iter';
+procedure g_sequence_sort_iter(seq: PGSequence; cmp_func: TGSequenceIterCompareFunc; cmp_data: gpointer); cdecl; external LazGLib2_library name 'g_sequence_sort_iter';
+procedure g_sequence_swap(a: PGSequenceIter; b: PGSequenceIter); cdecl; external LazGLib2_library name 'g_sequence_swap';
+procedure g_set_application_name(application_name: Pgchar); cdecl; external LazGLib2_library name 'g_set_application_name';
+procedure g_set_error(err: PPGError; domain: TGQuark; code: gint; format: Pgchar; args: array of const); cdecl; external LazGLib2_library name 'g_set_error';
+procedure g_set_error_literal(err: PPGError; domain: TGQuark; code: gint; message: Pgchar); cdecl; external LazGLib2_library name 'g_set_error_literal';
+procedure g_set_prgname(prgname: Pgchar); cdecl; external LazGLib2_library name 'g_set_prgname';
+procedure g_slice_free1(block_size: gsize; mem_block: gpointer); cdecl; external LazGLib2_library name 'g_slice_free1';
+procedure g_slice_free_chain_with_offset(block_size: gsize; mem_chain: gpointer; next_offset: gsize); cdecl; external LazGLib2_library name 'g_slice_free_chain_with_offset';
+procedure g_slice_set_config(ckey: TGSliceConfig; value: gint64); cdecl; external LazGLib2_library name 'g_slice_set_config';
+procedure g_slist_foreach(list: PGSList; func: TGFunc; user_data: gpointer); cdecl; external LazGLib2_library name 'g_slist_foreach';
+procedure g_slist_free(list: PGSList); cdecl; external LazGLib2_library name 'g_slist_free';
+procedure g_slist_free_1(list: PGSList); cdecl; external LazGLib2_library name 'g_slist_free_1';
+procedure g_slist_free_full(list: PGSList; free_func: TGDestroyNotify); cdecl; external LazGLib2_library name 'g_slist_free_full';
+procedure g_source_add_child_source(source: PGSource; child_source: PGSource); cdecl; external LazGLib2_library name 'g_source_add_child_source';
+procedure g_source_add_poll(source: PGSource; fd: PGPollFD); cdecl; external LazGLib2_library name 'g_source_add_poll';
+procedure g_source_destroy(source: PGSource); cdecl; external LazGLib2_library name 'g_source_destroy';
+procedure g_source_modify_unix_fd(source: PGSource; tag: gpointer; new_events: TGIOCondition); cdecl; external LazGLib2_library name 'g_source_modify_unix_fd';
+procedure g_source_remove_child_source(source: PGSource; child_source: PGSource); cdecl; external LazGLib2_library name 'g_source_remove_child_source';
+procedure g_source_remove_poll(source: PGSource; fd: PGPollFD); cdecl; external LazGLib2_library name 'g_source_remove_poll';
+procedure g_source_remove_unix_fd(source: PGSource; tag: gpointer); cdecl; external LazGLib2_library name 'g_source_remove_unix_fd';
+procedure g_source_set_callback(source: PGSource; func: TGSourceFunc; data: gpointer; notify: TGDestroyNotify); cdecl; external LazGLib2_library name 'g_source_set_callback';
+procedure g_source_set_callback_indirect(source: PGSource; callback_data: gpointer; callback_funcs: PGSourceCallbackFuncs); cdecl; external LazGLib2_library name 'g_source_set_callback_indirect';
+procedure g_source_set_can_recurse(source: PGSource; can_recurse: gboolean); cdecl; external LazGLib2_library name 'g_source_set_can_recurse';
+procedure g_source_set_dispose_function(source: PGSource; dispose: TGSourceDisposeFunc); cdecl; external LazGLib2_library name 'g_source_set_dispose_function';
+procedure g_source_set_funcs(source: PGSource; funcs: PGSourceFuncs); cdecl; external LazGLib2_library name 'g_source_set_funcs';
+procedure g_source_set_name(source: PGSource; name: Pgchar); cdecl; external LazGLib2_library name 'g_source_set_name';
+procedure g_source_set_name_by_id(tag: guint; name: Pgchar); cdecl; external LazGLib2_library name 'g_source_set_name_by_id';
+procedure g_source_set_priority(source: PGSource; priority: gint); cdecl; external LazGLib2_library name 'g_source_set_priority';
+procedure g_source_set_ready_time(source: PGSource; ready_time: gint64); cdecl; external LazGLib2_library name 'g_source_set_ready_time';
+procedure g_source_unref(source: PGSource); cdecl; external LazGLib2_library name 'g_source_unref';
+procedure g_spawn_close_pid(pid: TGPid); cdecl; external LazGLib2_library name 'g_spawn_close_pid';
+procedure g_strfreev(str_array: PPgchar); cdecl; external LazGLib2_library name 'g_strfreev';
+procedure g_string_append_printf(string_: PGString; format: Pgchar; args: array of const); cdecl; external LazGLib2_library name 'g_string_append_printf';
+procedure g_string_append_vprintf(string_: PGString; format: Pgchar; args: Tva_list); cdecl; external LazGLib2_library name 'g_string_append_vprintf';
+procedure g_string_chunk_clear(chunk: PGStringChunk); cdecl; external LazGLib2_library name 'g_string_chunk_clear';
+procedure g_string_chunk_free(chunk: PGStringChunk); cdecl; external LazGLib2_library name 'g_string_chunk_free';
+procedure g_string_printf(string_: PGString; format: Pgchar; args: array of const); cdecl; external LazGLib2_library name 'g_string_printf';
+procedure g_string_vprintf(string_: PGString; format: Pgchar; args: Tva_list); cdecl; external LazGLib2_library name 'g_string_vprintf';
+procedure g_test_add_data_func(testpath: Pgchar; test_data: Pgpointer; test_func: TGTestDataFunc); cdecl; external LazGLib2_library name 'g_test_add_data_func';
+procedure g_test_add_data_func_full(testpath: Pgchar; test_data: gpointer; test_func: TGTestDataFunc; data_free_func: TGDestroyNotify); cdecl; external LazGLib2_library name 'g_test_add_data_func_full';
+procedure g_test_add_func(testpath: Pgchar; test_func: TGTestFunc); cdecl; external LazGLib2_library name 'g_test_add_func';
+procedure g_test_add_vtable(testpath: Pgchar; data_size: gsize; test_data: Pgpointer; data_setup: TGTestFixtureFunc; data_test: TGTestFixtureFunc; data_teardown: TGTestFixtureFunc); cdecl; external LazGLib2_library name 'g_test_add_vtable';
+procedure g_test_assert_expected_messages_internal(domain: Pgchar; file_: Pgchar; line: gint; func: Pgchar); cdecl; external LazGLib2_library name 'g_test_assert_expected_messages_internal';
+procedure g_test_bug(bug_uri_snippet: Pgchar); cdecl; external LazGLib2_library name 'g_test_bug';
+procedure g_test_bug_base(uri_pattern: Pgchar); cdecl; external LazGLib2_library name 'g_test_bug_base';
+procedure g_test_expect_message(log_domain: Pgchar; log_level: TGLogLevelFlags; pattern: Pgchar); cdecl; external LazGLib2_library name 'g_test_expect_message';
+procedure g_test_fail; cdecl; external LazGLib2_library name 'g_test_fail';
+procedure g_test_incomplete(msg: Pgchar); cdecl; external LazGLib2_library name 'g_test_incomplete';
+procedure g_test_init(argc: Pgint; argv: PPPgchar; args: array of const); cdecl; external LazGLib2_library name 'g_test_init';
+procedure g_test_log_buffer_free(tbuffer: PGTestLogBuffer); cdecl; external LazGLib2_library name 'g_test_log_buffer_free';
+procedure g_test_log_buffer_push(tbuffer: PGTestLogBuffer; n_bytes: guint; bytes: Pguint8); cdecl; external LazGLib2_library name 'g_test_log_buffer_push';
+procedure g_test_log_msg_free(tmsg: PGTestLogMsg); cdecl; external LazGLib2_library name 'g_test_log_msg_free';
+procedure g_test_log_set_fatal_handler(log_func: TGTestLogFatalFunc; user_data: gpointer); cdecl; external LazGLib2_library name 'g_test_log_set_fatal_handler';
+procedure g_test_maximized_result(maximized_quantity: gdouble; format: Pgchar; args: array of const); cdecl; external LazGLib2_library name 'g_test_maximized_result';
+procedure g_test_message(format: Pgchar; args: array of const); cdecl; external LazGLib2_library name 'g_test_message';
+procedure g_test_minimized_result(minimized_quantity: gdouble; format: Pgchar; args: array of const); cdecl; external LazGLib2_library name 'g_test_minimized_result';
+procedure g_test_queue_destroy(destroy_func: TGDestroyNotify; destroy_data: gpointer); cdecl; external LazGLib2_library name 'g_test_queue_destroy';
+procedure g_test_queue_free(gfree_pointer: gpointer); cdecl; external LazGLib2_library name 'g_test_queue_free';
+procedure g_test_set_nonfatal_assertions; cdecl; external LazGLib2_library name 'g_test_set_nonfatal_assertions';
+procedure g_test_skip(msg: Pgchar); cdecl; external LazGLib2_library name 'g_test_skip';
+procedure g_test_suite_add(suite: PGTestSuite; test_case: PGTestCase); cdecl; external LazGLib2_library name 'g_test_suite_add';
+procedure g_test_suite_add_suite(suite: PGTestSuite; nestedsuite: PGTestSuite); cdecl; external LazGLib2_library name 'g_test_suite_add_suite';
+procedure g_test_summary(summary: Pgchar); cdecl; external LazGLib2_library name 'g_test_summary';
+procedure g_test_timer_start; cdecl; external LazGLib2_library name 'g_test_timer_start';
+procedure g_test_trap_assertions(domain: Pgchar; file_: Pgchar; line: gint; func: Pgchar; assertion_flags: guint64; pattern: Pgchar); cdecl; external LazGLib2_library name 'g_test_trap_assertions';
+procedure g_test_trap_subprocess(test_path: Pgchar; usec_timeout: guint64; test_flags: TGTestSubprocessFlags); cdecl; external LazGLib2_library name 'g_test_trap_subprocess';
+procedure g_thread_exit(retval: gpointer); cdecl; external LazGLib2_library name 'g_thread_exit';
+procedure g_thread_pool_free(pool: PGThreadPool; immediate: gboolean; wait_: gboolean); cdecl; external LazGLib2_library name 'g_thread_pool_free';
+procedure g_thread_pool_set_max_idle_time(interval: guint); cdecl; external LazGLib2_library name 'g_thread_pool_set_max_idle_time';
+procedure g_thread_pool_set_max_unused_threads(max_threads: gint); cdecl; external LazGLib2_library name 'g_thread_pool_set_max_unused_threads';
+procedure g_thread_pool_set_sort_function(pool: PGThreadPool; func: TGCompareDataFunc; user_data: gpointer); cdecl; external LazGLib2_library name 'g_thread_pool_set_sort_function';
+procedure g_thread_pool_stop_unused_threads; cdecl; external LazGLib2_library name 'g_thread_pool_stop_unused_threads';
+procedure g_thread_unref(thread: PGThread); cdecl; external LazGLib2_library name 'g_thread_unref';
+procedure g_thread_yield; cdecl; external LazGLib2_library name 'g_thread_yield';
+procedure g_time_zone_unref(tz: PGTimeZone); cdecl; external LazGLib2_library name 'g_time_zone_unref';
+procedure g_timer_continue(timer: PGTimer); cdecl; external LazGLib2_library name 'g_timer_continue';
+procedure g_timer_destroy(timer: PGTimer); cdecl; external LazGLib2_library name 'g_timer_destroy';
+procedure g_timer_reset(timer: PGTimer); cdecl; external LazGLib2_library name 'g_timer_reset';
+procedure g_timer_start(timer: PGTimer); cdecl; external LazGLib2_library name 'g_timer_start';
+procedure g_timer_stop(timer: PGTimer); cdecl; external LazGLib2_library name 'g_timer_stop';
+procedure g_tree_destroy(tree: PGTree); cdecl; external LazGLib2_library name 'g_tree_destroy';
+procedure g_tree_foreach(tree: PGTree; func: TGTraverseFunc; user_data: gpointer); cdecl; external LazGLib2_library name 'g_tree_foreach';
+procedure g_tree_insert(tree: PGTree; key: gpointer; value: gpointer); cdecl; external LazGLib2_library name 'g_tree_insert';
+procedure g_tree_replace(tree: PGTree; key: gpointer; value: gpointer); cdecl; external LazGLib2_library name 'g_tree_replace';
+procedure g_tree_unref(tree: PGTree); cdecl; external LazGLib2_library name 'g_tree_unref';
+procedure g_unicode_canonical_ordering(string_: Pgunichar; len: gsize); cdecl; external LazGLib2_library name 'g_unicode_canonical_ordering';
+procedure g_unsetenv(variable: Pgchar); cdecl; external LazGLib2_library name 'g_unsetenv';
+{$IFDEF USEGTK3LATESTBINDINGS}
+procedure g_uri_params_iter_init(iter: PGUriParamsIter; params: Pgchar; length: gssize; separators: Pgchar; flags: TGUriParamsFlags); cdecl; external LazGLib2_library name 'g_uri_params_iter_init';
+procedure g_uri_unref(uri: PGUri); cdecl; external LazGLib2_library name 'g_uri_unref';
+{$ENDIF}
+procedure g_usleep(microseconds: gulong); cdecl; external LazGLib2_library name 'g_usleep';
+procedure g_variant_builder_add(builder: PGVariantBuilder; format_string: Pgchar; args: array of const); cdecl; external LazGLib2_library name 'g_variant_builder_add';
+procedure g_variant_builder_add_parsed(builder: PGVariantBuilder; format: Pgchar; args: array of const); cdecl; external LazGLib2_library name 'g_variant_builder_add_parsed';
+procedure g_variant_builder_add_value(builder: PGVariantBuilder; value: PGVariant); cdecl; external LazGLib2_library name 'g_variant_builder_add_value';
+procedure g_variant_builder_clear(builder: PGVariantBuilder); cdecl; external LazGLib2_library name 'g_variant_builder_clear';
+procedure g_variant_builder_close(builder: PGVariantBuilder); cdecl; external LazGLib2_library name 'g_variant_builder_close';
+procedure g_variant_builder_init(builder: PGVariantBuilder; type_: PGVariantType); cdecl; external LazGLib2_library name 'g_variant_builder_init';
+procedure g_variant_builder_open(builder: PGVariantBuilder; type_: PGVariantType); cdecl; external LazGLib2_library name 'g_variant_builder_open';
+procedure g_variant_builder_unref(builder: PGVariantBuilder); cdecl; external LazGLib2_library name 'g_variant_builder_unref';
+procedure g_variant_dict_clear(dict: PGVariantDict); cdecl; external LazGLib2_library name 'g_variant_dict_clear';
+procedure g_variant_dict_init(dict: PGVariantDict; from_asv: PGVariant); cdecl; external LazGLib2_library name 'g_variant_dict_init';
+procedure g_variant_dict_insert(dict: PGVariantDict; key: Pgchar; format_string: Pgchar; args: array of const); cdecl; external LazGLib2_library name 'g_variant_dict_insert';
+procedure g_variant_dict_insert_value(dict: PGVariantDict; key: Pgchar; value: PGVariant); cdecl; external LazGLib2_library name 'g_variant_dict_insert_value';
+procedure g_variant_dict_unref(dict: PGVariantDict); cdecl; external LazGLib2_library name 'g_variant_dict_unref';
+procedure g_variant_get(value: PGVariant; format_string: Pgchar; args: array of const); cdecl; external LazGLib2_library name 'g_variant_get';
+procedure g_variant_get_child(value: PGVariant; index_: gsize; format_string: Pgchar; args: array of const); cdecl; external LazGLib2_library name 'g_variant_get_child';
+procedure g_variant_get_va(value: PGVariant; format_string: Pgchar; endptr: PPgchar; app: Pva_list); cdecl; external LazGLib2_library name 'g_variant_get_va';
+procedure g_variant_iter_free(iter: PGVariantIter); cdecl; external LazGLib2_library name 'g_variant_iter_free';
+procedure g_variant_store(value: PGVariant; data: gpointer); cdecl; external LazGLib2_library name 'g_variant_store';
+procedure g_variant_type_free(type_: PGVariantType); cdecl; external LazGLib2_library name 'g_variant_type_free';
+procedure g_variant_unref(value: PGVariant); cdecl; external LazGLib2_library name 'g_variant_unref';
+procedure g_warn_message(domain: Pgchar; file_: Pgchar; line: gint; func: Pgchar; warnexpr: Pgchar); cdecl; external LazGLib2_library name 'g_warn_message';
+implementation
+function TGArray.append_vals(array_: Pgpointer; data: Pgpointer; len: guint): Pgpointer; cdecl;
+begin
+ Result := LazGLib2.g_array_append_vals(array_, data, len);
+end;
+
+function TGArray.binary_search(array_: Pgpointer; target: Pgpointer; compare_func: TGCompareFunc; out_match_index: Pguint): gboolean; cdecl;
+begin
+ Result := LazGLib2.g_array_binary_search(array_, target, compare_func, out_match_index);
+end;
+
+function TGArray.copy(array_: Pgpointer): Pgpointer; cdecl;
+begin
+ Result := LazGLib2.g_array_copy(array_);
+end;
+
+function TGArray.free(array_: Pgpointer; free_segment: gboolean): Pgchar; cdecl;
+begin
+ Result := LazGLib2.g_array_free(array_, free_segment);
+end;
+
+function TGArray.get_element_size(array_: Pgpointer): guint; cdecl;
+begin
+ Result := LazGLib2.g_array_get_element_size(array_);
+end;
+
+function TGArray.insert_vals(array_: Pgpointer; index_: guint; data: Pgpointer; len: guint): Pgpointer; cdecl;
+begin
+ Result := LazGLib2.g_array_insert_vals(array_, index_, data, len);
+end;
+
+function TGArray.new(zero_terminated: gboolean; clear_: gboolean; element_size: guint): Pgpointer; cdecl;
+begin
+ Result := LazGLib2.g_array_new(zero_terminated, clear_, element_size);
+end;
+
+function TGArray.prepend_vals(array_: Pgpointer; data: Pgpointer; len: guint): Pgpointer; cdecl;
+begin
+ Result := LazGLib2.g_array_prepend_vals(array_, data, len);
+end;
+
+function TGArray.ref(array_: Pgpointer): Pgpointer; cdecl;
+begin
+ Result := LazGLib2.g_array_ref(array_);
+end;
+
+function TGArray.remove_index(array_: Pgpointer; index_: guint): Pgpointer; cdecl;
+begin
+ Result := LazGLib2.g_array_remove_index(array_, index_);
+end;
+
+function TGArray.remove_index_fast(array_: Pgpointer; index_: guint): Pgpointer; cdecl;
+begin
+ Result := LazGLib2.g_array_remove_index_fast(array_, index_);
+end;
+
+function TGArray.remove_range(array_: Pgpointer; index_: guint; length: guint): Pgpointer; cdecl;
+begin
+ Result := LazGLib2.g_array_remove_range(array_, index_, length);
+end;
+
+procedure TGArray.set_clear_func(array_: Pgpointer; clear_func: TGDestroyNotify); cdecl;
+begin
+ LazGLib2.g_array_set_clear_func(array_, clear_func);
+end;
+
+function TGArray.set_size(array_: Pgpointer; length: guint): Pgpointer; cdecl;
+begin
+ Result := LazGLib2.g_array_set_size(array_, length);
+end;
+
+function TGArray.sized_new(zero_terminated: gboolean; clear_: gboolean; element_size: guint; reserved_size: guint): Pgpointer; cdecl;
+begin
+ Result := LazGLib2.g_array_sized_new(zero_terminated, clear_, element_size, reserved_size);
+end;
+
+procedure TGArray.sort(array_: Pgpointer; compare_func: TGCompareFunc); cdecl;
+begin
+ LazGLib2.g_array_sort(array_, compare_func);
+end;
+
+procedure TGArray.sort_with_data(array_: Pgpointer; compare_func: TGCompareDataFunc; user_data: gpointer); cdecl;
+begin
+ LazGLib2.g_array_sort_with_data(array_, compare_func, user_data);
+end;
+
+function TGArray.steal(array_: Pgpointer; len: Pgsize): gpointer; cdecl;
+begin
+ Result := LazGLib2.g_array_steal(array_, len);
+end;
+
+procedure TGArray.unref(array_: Pgpointer); cdecl;
+begin
+ LazGLib2.g_array_unref(array_);
+end;
+
+function TGAsyncQueue.length: gint; cdecl;
+begin
+ Result := LazGLib2.g_async_queue_length(@self);
+end;
+
+function TGAsyncQueue.length_unlocked: gint; cdecl;
+begin
+ Result := LazGLib2.g_async_queue_length_unlocked(@self);
+end;
+
+procedure TGAsyncQueue.lock; cdecl;
+begin
+ LazGLib2.g_async_queue_lock(@self);
+end;
+
+function TGAsyncQueue.pop: gpointer; cdecl;
+begin
+ Result := LazGLib2.g_async_queue_pop(@self);
+end;
+
+function TGAsyncQueue.pop_unlocked: gpointer; cdecl;
+begin
+ Result := LazGLib2.g_async_queue_pop_unlocked(@self);
+end;
+
+procedure TGAsyncQueue.push(data: gpointer); cdecl;
+begin
+ LazGLib2.g_async_queue_push(@self, data);
+end;
+
+procedure TGAsyncQueue.push_front(item: gpointer); cdecl;
+begin
+ LazGLib2.g_async_queue_push_front(@self, item);
+end;
+
+procedure TGAsyncQueue.push_front_unlocked(item: gpointer); cdecl;
+begin
+ LazGLib2.g_async_queue_push_front_unlocked(@self, item);
+end;
+
+procedure TGAsyncQueue.push_sorted(data: gpointer; func: TGCompareDataFunc; user_data: gpointer); cdecl;
+begin
+ LazGLib2.g_async_queue_push_sorted(@self, data, func, user_data);
+end;
+
+procedure TGAsyncQueue.push_sorted_unlocked(data: gpointer; func: TGCompareDataFunc; user_data: gpointer); cdecl;
+begin
+ LazGLib2.g_async_queue_push_sorted_unlocked(@self, data, func, user_data);
+end;
+
+procedure TGAsyncQueue.push_unlocked(data: gpointer); cdecl;
+begin
+ LazGLib2.g_async_queue_push_unlocked(@self, data);
+end;
+
+function TGAsyncQueue.ref: PGAsyncQueue; cdecl;
+begin
+ Result := LazGLib2.g_async_queue_ref(@self);
+end;
+
+function TGAsyncQueue.remove(item: gpointer): gboolean; cdecl;
+begin
+ Result := LazGLib2.g_async_queue_remove(@self, item);
+end;
+
+function TGAsyncQueue.remove_unlocked(item: gpointer): gboolean; cdecl;
+begin
+ Result := LazGLib2.g_async_queue_remove_unlocked(@self, item);
+end;
+
+procedure TGAsyncQueue.sort(func: TGCompareDataFunc; user_data: gpointer); cdecl;
+begin
+ LazGLib2.g_async_queue_sort(@self, func, user_data);
+end;
+
+procedure TGAsyncQueue.sort_unlocked(func: TGCompareDataFunc; user_data: gpointer); cdecl;
+begin
+ LazGLib2.g_async_queue_sort_unlocked(@self, func, user_data);
+end;
+
+function TGAsyncQueue.timeout_pop(timeout: guint64): gpointer; cdecl;
+begin
+ Result := LazGLib2.g_async_queue_timeout_pop(@self, timeout);
+end;
+
+function TGAsyncQueue.timeout_pop_unlocked(timeout: guint64): gpointer; cdecl;
+begin
+ Result := LazGLib2.g_async_queue_timeout_pop_unlocked(@self, timeout);
+end;
+
+function TGAsyncQueue.try_pop: gpointer; cdecl;
+begin
+ Result := LazGLib2.g_async_queue_try_pop(@self);
+end;
+
+function TGAsyncQueue.try_pop_unlocked: gpointer; cdecl;
+begin
+ Result := LazGLib2.g_async_queue_try_pop_unlocked(@self);
+end;
+
+procedure TGAsyncQueue.unlock; cdecl;
+begin
+ LazGLib2.g_async_queue_unlock(@self);
+end;
+
+procedure TGAsyncQueue.unref; cdecl;
+begin
+ LazGLib2.g_async_queue_unref(@self);
+end;
+
+function TGAsyncQueue.new: PGAsyncQueue; cdecl;
+begin
+ Result := LazGLib2.g_async_queue_new();
+end;
+
+function TGAsyncQueue.new_full(item_free_func: TGDestroyNotify): PGAsyncQueue; cdecl;
+begin
+ Result := LazGLib2.g_async_queue_new_full(item_free_func);
+end;
+
+procedure TGBookmarkFile.add_application(uri: Pgchar; name: Pgchar; exec: Pgchar); cdecl;
+begin
+ LazGLib2.g_bookmark_file_add_application(@self, uri, name, exec);
+end;
+
+procedure TGBookmarkFile.add_group(uri: Pgchar; group: Pgchar); cdecl;
+begin
+ LazGLib2.g_bookmark_file_add_group(@self, uri, group);
+end;
+
+procedure TGBookmarkFile.free; cdecl;
+begin
+ LazGLib2.g_bookmark_file_free(@self);
+end;
+
+{$IFDEF USEGTK3LATESTBINDINGS}
+function TGBookmarkFile.get_added(uri: Pgchar; error: PPGError): glong; cdecl;
+begin
+ Result := LazGLib2.g_bookmark_file_get_added(@self, uri, error);
+end;
+
+function TGBookmarkFile.get_added_date_time(uri: Pgchar; error: PPGError): PGDateTime; cdecl;
+begin
+ Result := LazGLib2.g_bookmark_file_get_added_date_time(@self, uri, error);
+end;
+
+function TGBookmarkFile.get_app_info(uri: Pgchar; name: Pgchar; exec: PPgchar; count: Pguint; stamp: Pglong; error: PPGError): gboolean; cdecl;
+begin
+ Result := LazGLib2.g_bookmark_file_get_app_info(@self, uri, name, exec, count, stamp, error);
+end;
+
+function TGBookmarkFile.get_application_info(uri: Pgchar; name: Pgchar; exec: PPgchar; count: Pguint; stamp: PPGDateTime; error: PPGError): gboolean; cdecl;
+begin
+ Result := LazGLib2.g_bookmark_file_get_application_info(@self, uri, name, exec, count, stamp, error);
+end;
+{$ENDIF}
+
+function TGBookmarkFile.get_applications(uri: Pgchar; length: Pgsize; error: PPGError): PPgchar; cdecl;
+begin
+ Result := LazGLib2.g_bookmark_file_get_applications(@self, uri, length, error);
+end;
+
+function TGBookmarkFile.get_description(uri: Pgchar; error: PPGError): Pgchar; cdecl;
+begin
+ Result := LazGLib2.g_bookmark_file_get_description(@self, uri, error);
+end;
+
+function TGBookmarkFile.get_groups(uri: Pgchar; length: Pgsize; error: PPGError): PPgchar; cdecl;
+begin
+ Result := LazGLib2.g_bookmark_file_get_groups(@self, uri, length, error);
+end;
+
+function TGBookmarkFile.get_icon(uri: Pgchar; href: PPgchar; mime_type: PPgchar; error: PPGError): gboolean; cdecl;
+begin
+ Result := LazGLib2.g_bookmark_file_get_icon(@self, uri, href, mime_type, error);
+end;
+
+function TGBookmarkFile.get_is_private(uri: Pgchar; error: PPGError): gboolean; cdecl;
+begin
+ Result := LazGLib2.g_bookmark_file_get_is_private(@self, uri, error);
+end;
+
+function TGBookmarkFile.get_mime_type(uri: Pgchar; error: PPGError): Pgchar; cdecl;
+begin
+ Result := LazGLib2.g_bookmark_file_get_mime_type(@self, uri, error);
+end;
+
+{$IFDEF USEGTK3LATESTBINDINGS}
+function TGBookmarkFile.get_modified(uri: Pgchar; error: PPGError): glong; cdecl;
+begin
+ Result := LazGLib2.g_bookmark_file_get_modified(@self, uri, error);
+end;
+
+function TGBookmarkFile.get_modified_date_time(uri: Pgchar; error: PPGError): PGDateTime; cdecl;
+begin
+ Result := LazGLib2.g_bookmark_file_get_modified_date_time(@self, uri, error);
+end;
+{$ENDIF}
+
+function TGBookmarkFile.get_size: gint; cdecl;
+begin
+ Result := LazGLib2.g_bookmark_file_get_size(@self);
+end;
+
+function TGBookmarkFile.get_title(uri: Pgchar; error: PPGError): Pgchar; cdecl;
+begin
+ Result := LazGLib2.g_bookmark_file_get_title(@self, uri, error);
+end;
+
+function TGBookmarkFile.get_uris(length: Pgsize): PPgchar; cdecl;
+begin
+ Result := LazGLib2.g_bookmark_file_get_uris(@self, length);
+end;
+
+function TGBookmarkFile.get_visited(uri: Pgchar; error: PPGError): glong; cdecl;
+begin
+ Result := LazGLib2.g_bookmark_file_get_visited(@self, uri, error);
+end;
+
+{$IFDEF USEGTK3LATESTBINDINGS}
+function TGBookmarkFile.get_visited_date_time(uri: Pgchar; error: PPGError): PGDateTime; cdecl;
+begin
+ Result := LazGLib2.g_bookmark_file_get_visited_date_time(@self, uri, error);
+end;
+{$ENDIF}
+
+function TGBookmarkFile.has_application(uri: Pgchar; name: Pgchar; error: PPGError): gboolean; cdecl;
+begin
+ Result := LazGLib2.g_bookmark_file_has_application(@self, uri, name, error);
+end;
+
+function TGBookmarkFile.has_group(uri: Pgchar; group: Pgchar; error: PPGError): gboolean; cdecl;
+begin
+ Result := LazGLib2.g_bookmark_file_has_group(@self, uri, group, error);
+end;
+
+function TGBookmarkFile.has_item(uri: Pgchar): gboolean; cdecl;
+begin
+ Result := LazGLib2.g_bookmark_file_has_item(@self, uri);
+end;
+
+function TGBookmarkFile.load_from_data(data: Pgchar; length: gsize; error: PPGError): gboolean; cdecl;
+begin
+ Result := LazGLib2.g_bookmark_file_load_from_data(@self, data, length, error);
+end;
+
+function TGBookmarkFile.load_from_data_dirs(file_: Pgchar; full_path: PPgchar; error: PPGError): gboolean; cdecl;
+begin
+ Result := LazGLib2.g_bookmark_file_load_from_data_dirs(@self, file_, full_path, error);
+end;
+
+function TGBookmarkFile.load_from_file(filename: Pgchar; error: PPGError): gboolean; cdecl;
+begin
+ Result := LazGLib2.g_bookmark_file_load_from_file(@self, filename, error);
+end;
+
+function TGBookmarkFile.move_item(old_uri: Pgchar; new_uri: Pgchar; error: PPGError): gboolean; cdecl;
+begin
+ Result := LazGLib2.g_bookmark_file_move_item(@self, old_uri, new_uri, error);
+end;
+
+function TGBookmarkFile.remove_application(uri: Pgchar; name: Pgchar; error: PPGError): gboolean; cdecl;
+begin
+ Result := LazGLib2.g_bookmark_file_remove_application(@self, uri, name, error);
+end;
+
+function TGBookmarkFile.remove_group(uri: Pgchar; group: Pgchar; error: PPGError): gboolean; cdecl;
+begin
+ Result := LazGLib2.g_bookmark_file_remove_group(@self, uri, group, error);
+end;
+
+function TGBookmarkFile.remove_item(uri: Pgchar; error: PPGError): gboolean; cdecl;
+begin
+ Result := LazGLib2.g_bookmark_file_remove_item(@self, uri, error);
+end;
+
+{$IFDEF USEGTK3LATESTBINDINGS}
+procedure TGBookmarkFile.set_added(uri: Pgchar; added: glong); cdecl;
+begin
+ LazGLib2.g_bookmark_file_set_added(@self, uri, added);
+end;
+
+procedure TGBookmarkFile.set_added_date_time(uri: Pgchar; added: PGDateTime); cdecl;
+begin
+ LazGLib2.g_bookmark_file_set_added_date_time(@self, uri, added);
+end;
+{$ENDIF}
+
+function TGBookmarkFile.set_app_info(uri: Pgchar; name: Pgchar; exec: Pgchar; count: gint; stamp: glong; error: PPGError): gboolean; cdecl;
+begin
+ Result := LazGLib2.g_bookmark_file_set_app_info(@self, uri, name, exec, count, stamp, error);
+end;
+
+{$IFDEF USEGTK3LATESTBINDINGS}
+function TGBookmarkFile.set_application_info(uri: Pgchar; name: Pgchar; exec: Pgchar; count: gint; stamp: PGDateTime; error: PPGError): gboolean; cdecl;
+begin
+ Result := LazGLib2.g_bookmark_file_set_application_info(@self, uri, name, exec, count, stamp, error);
+end;
+{$ENDIF}
+
+procedure TGBookmarkFile.set_description(uri: Pgchar; description: Pgchar); cdecl;
+begin
+ LazGLib2.g_bookmark_file_set_description(@self, uri, description);
+end;
+
+procedure TGBookmarkFile.set_groups(uri: Pgchar; groups: PPgchar; length: gsize); cdecl;
+begin
+ LazGLib2.g_bookmark_file_set_groups(@self, uri, groups, length);
+end;
+
+procedure TGBookmarkFile.set_icon(uri: Pgchar; href: Pgchar; mime_type: Pgchar); cdecl;
+begin
+ LazGLib2.g_bookmark_file_set_icon(@self, uri, href, mime_type);
+end;
+
+procedure TGBookmarkFile.set_is_private(uri: Pgchar; is_private: gboolean); cdecl;
+begin
+ LazGLib2.g_bookmark_file_set_is_private(@self, uri, is_private);
+end;
+
+procedure TGBookmarkFile.set_mime_type(uri: Pgchar; mime_type: Pgchar); cdecl;
+begin
+ LazGLib2.g_bookmark_file_set_mime_type(@self, uri, mime_type);
+end;
+
+procedure TGBookmarkFile.set_modified(uri: Pgchar; modified: glong); cdecl;
+begin
+ LazGLib2.g_bookmark_file_set_modified(@self, uri, modified);
+end;
+
+{$IFDEF USEGTK3LATESTBINDINGS}
+procedure TGBookmarkFile.set_modified_date_time(uri: Pgchar; modified: PGDateTime); cdecl;
+begin
+ LazGLib2.g_bookmark_file_set_modified_date_time(@self, uri, modified);
+end;
+{$ENDIF}
+
+procedure TGBookmarkFile.set_title(uri: Pgchar; title: Pgchar); cdecl;
+begin
+ LazGLib2.g_bookmark_file_set_title(@self, uri, title);
+end;
+
+procedure TGBookmarkFile.set_visited(uri: Pgchar; visited: glong); cdecl;
+begin
+ LazGLib2.g_bookmark_file_set_visited(@self, uri, visited);
+end;
+
+{$IFDEF USEGTK3LATESTBINDINGS}
+procedure TGBookmarkFile.set_visited_date_time(uri: Pgchar; visited: PGDateTime); cdecl;
+begin
+ LazGLib2.g_bookmark_file_set_visited_date_time(@self, uri, visited);
+end;
+{$ENDIF}
+
+function TGBookmarkFile.to_data(length: Pgsize; error: PPGError): Pgchar; cdecl;
+begin
+ Result := LazGLib2.g_bookmark_file_to_data(@self, length, error);
+end;
+
+function TGBookmarkFile.to_file(filename: Pgchar; error: PPGError): gboolean; cdecl;
+begin
+ Result := LazGLib2.g_bookmark_file_to_file(@self, filename, error);
+end;
+
+function TGBookmarkFile.error_quark: TGQuark; cdecl;
+begin
+ Result := LazGLib2.g_bookmark_file_error_quark();
+end;
+
+function TGBookmarkFile.new: PGBookmarkFile; cdecl;
+begin
+ Result := LazGLib2.g_bookmark_file_new();
+end;
+
+function TGError.new_literal(domain: TGQuark; code: gint; message: Pgchar): PGError; cdecl;
+begin
+ Result := LazGLib2.g_error_new_literal(domain, code, message);
+end;
+
+function TGError.copy: PGError; cdecl;
+begin
+ Result := LazGLib2.g_error_copy(@self);
+end;
+
+procedure TGError.free; cdecl;
+begin
+ LazGLib2.g_error_free(@self);
+end;
+
+function TGError.matches(domain: TGQuark; code: gint): gboolean; cdecl;
+begin
+ Result := LazGLib2.g_error_matches(@self, domain, code);
+end;
+
+function TGDateTime.new(tz: PGTimeZone; year: gint; month: gint; day: gint; hour: gint; minute: gint; seconds: gdouble): PGDateTime; cdecl;
+begin
+ Result := LazGLib2.g_date_time_new(tz, year, month, day, hour, minute, seconds);
+end;
+
+function TGDateTime.new_from_iso8601(text: Pgchar; default_tz: PGTimeZone): PGDateTime; cdecl;
+begin
+ Result := LazGLib2.g_date_time_new_from_iso8601(text, default_tz);
+end;
+
+function TGDateTime.new_from_unix_local(t: gint64): PGDateTime; cdecl;
+begin
+ Result := LazGLib2.g_date_time_new_from_unix_local(t);
+end;
+
+function TGDateTime.new_from_unix_utc(t: gint64): PGDateTime; cdecl;
+begin
+ Result := LazGLib2.g_date_time_new_from_unix_utc(t);
+end;
+
+function TGDateTime.new_local(year: gint; month: gint; day: gint; hour: gint; minute: gint; seconds: gdouble): PGDateTime; cdecl;
+begin
+ Result := LazGLib2.g_date_time_new_local(year, month, day, hour, minute, seconds);
+end;
+
+function TGDateTime.new_now(tz: PGTimeZone): PGDateTime; cdecl;
+begin
+ Result := LazGLib2.g_date_time_new_now(tz);
+end;
+
+function TGDateTime.new_now_local: PGDateTime; cdecl;
+begin
+ Result := LazGLib2.g_date_time_new_now_local();
+end;
+
+function TGDateTime.new_now_utc: PGDateTime; cdecl;
+begin
+ Result := LazGLib2.g_date_time_new_now_utc();
+end;
+
+function TGDateTime.new_utc(year: gint; month: gint; day: gint; hour: gint; minute: gint; seconds: gdouble): PGDateTime; cdecl;
+begin
+ Result := LazGLib2.g_date_time_new_utc(year, month, day, hour, minute, seconds);
+end;
+
+function TGDateTime.add(timespan: TGTimeSpan): PGDateTime; cdecl;
+begin
+ Result := LazGLib2.g_date_time_add(@self, timespan);
+end;
+
+function TGDateTime.add_days(days: gint): PGDateTime; cdecl;
+begin
+ Result := LazGLib2.g_date_time_add_days(@self, days);
+end;
+
+function TGDateTime.add_full(years: gint; months: gint; days: gint; hours: gint; minutes: gint; seconds: gdouble): PGDateTime; cdecl;
+begin
+ Result := LazGLib2.g_date_time_add_full(@self, years, months, days, hours, minutes, seconds);
+end;
+
+function TGDateTime.add_hours(hours: gint): PGDateTime; cdecl;
+begin
+ Result := LazGLib2.g_date_time_add_hours(@self, hours);
+end;
+
+function TGDateTime.add_minutes(minutes: gint): PGDateTime; cdecl;
+begin
+ Result := LazGLib2.g_date_time_add_minutes(@self, minutes);
+end;
+
+function TGDateTime.add_months(months: gint): PGDateTime; cdecl;
+begin
+ Result := LazGLib2.g_date_time_add_months(@self, months);
+end;
+
+function TGDateTime.add_seconds(seconds: gdouble): PGDateTime; cdecl;
+begin
+ Result := LazGLib2.g_date_time_add_seconds(@self, seconds);
+end;
+
+function TGDateTime.add_weeks(weeks: gint): PGDateTime; cdecl;
+begin
+ Result := LazGLib2.g_date_time_add_weeks(@self, weeks);
+end;
+
+function TGDateTime.add_years(years: gint): PGDateTime; cdecl;
+begin
+ Result := LazGLib2.g_date_time_add_years(@self, years);
+end;
+
+function TGDateTime.compare(dt2: PGDateTime): gint; cdecl;
+begin
+ Result := LazGLib2.g_date_time_compare(@self, dt2);
+end;
+
+function TGDateTime.difference(begin_: PGDateTime): TGTimeSpan; cdecl;
+begin
+ Result := LazGLib2.g_date_time_difference(@self, begin_);
+end;
+
+function TGDateTime.equal(dt2: PGDateTime): gboolean; cdecl;
+begin
+ Result := LazGLib2.g_date_time_equal(@self, dt2);
+end;
+
+function TGDateTime.format(format: Pgchar): Pgchar; cdecl;
+begin
+ Result := LazGLib2.g_date_time_format(@self, format);
+end;
+
+function TGDateTime.format_iso8601: Pgchar; cdecl;
+begin
+ Result := LazGLib2.g_date_time_format_iso8601(@self);
+end;
+
+function TGDateTime.get_day_of_month: gint; cdecl;
+begin
+ Result := LazGLib2.g_date_time_get_day_of_month(@self);
+end;
+
+function TGDateTime.get_day_of_week: gint; cdecl;
+begin
+ Result := LazGLib2.g_date_time_get_day_of_week(@self);
+end;
+
+function TGDateTime.get_day_of_year: gint; cdecl;
+begin
+ Result := LazGLib2.g_date_time_get_day_of_year(@self);
+end;
+
+function TGDateTime.get_hour: gint; cdecl;
+begin
+ Result := LazGLib2.g_date_time_get_hour(@self);
+end;
+
+function TGDateTime.get_microsecond: gint; cdecl;
+begin
+ Result := LazGLib2.g_date_time_get_microsecond(@self);
+end;
+
+function TGDateTime.get_minute: gint; cdecl;
+begin
+ Result := LazGLib2.g_date_time_get_minute(@self);
+end;
+
+function TGDateTime.get_month: gint; cdecl;
+begin
+ Result := LazGLib2.g_date_time_get_month(@self);
+end;
+
+function TGDateTime.get_second: gint; cdecl;
+begin
+ Result := LazGLib2.g_date_time_get_second(@self);
+end;
+
+function TGDateTime.get_seconds: gdouble; cdecl;
+begin
+ Result := LazGLib2.g_date_time_get_seconds(@self);
+end;
+
+function TGDateTime.get_timezone: PGTimeZone; cdecl;
+begin
+ Result := LazGLib2.g_date_time_get_timezone(@self);
+end;
+
+function TGDateTime.get_timezone_abbreviation: Pgchar; cdecl;
+begin
+ Result := LazGLib2.g_date_time_get_timezone_abbreviation(@self);
+end;
+
+function TGDateTime.get_utc_offset: TGTimeSpan; cdecl;
+begin
+ Result := LazGLib2.g_date_time_get_utc_offset(@self);
+end;
+
+function TGDateTime.get_week_numbering_year: gint; cdecl;
+begin
+ Result := LazGLib2.g_date_time_get_week_numbering_year(@self);
+end;
+
+function TGDateTime.get_week_of_year: gint; cdecl;
+begin
+ Result := LazGLib2.g_date_time_get_week_of_year(@self);
+end;
+
+function TGDateTime.get_year: gint; cdecl;
+begin
+ Result := LazGLib2.g_date_time_get_year(@self);
+end;
+
+procedure TGDateTime.get_ymd(year: Pgint; month: Pgint; day: Pgint); cdecl;
+begin
+ LazGLib2.g_date_time_get_ymd(@self, year, month, day);
+end;
+
+function TGDateTime.hash: guint; cdecl;
+begin
+ Result := LazGLib2.g_date_time_hash(@self);
+end;
+
+function TGDateTime.is_daylight_savings: gboolean; cdecl;
+begin
+ Result := LazGLib2.g_date_time_is_daylight_savings(@self);
+end;
+
+function TGDateTime.ref: PGDateTime; cdecl;
+begin
+ Result := LazGLib2.g_date_time_ref(@self);
+end;
+
+function TGDateTime.to_local: PGDateTime; cdecl;
+begin
+ Result := LazGLib2.g_date_time_to_local(@self);
+end;
+
+function TGDateTime.to_timezone(tz: PGTimeZone): PGDateTime; cdecl;
+begin
+ Result := LazGLib2.g_date_time_to_timezone(@self, tz);
+end;
+
+function TGDateTime.to_unix: gint64; cdecl;
+begin
+ Result := LazGLib2.g_date_time_to_unix(@self);
+end;
+
+function TGDateTime.to_utc: PGDateTime; cdecl;
+begin
+ Result := LazGLib2.g_date_time_to_utc(@self);
+end;
+
+procedure TGDateTime.unref; cdecl;
+begin
+ LazGLib2.g_date_time_unref(@self);
+end;
+
+function TGBytes.new(data: guint8; size: gsize): PGBytes; cdecl;
+begin
+ Result := LazGLib2.g_bytes_new(data, size);
+end;
+
+function TGBytes.new_static(data: guint8; size: gsize): PGBytes; cdecl;
+begin
+ Result := LazGLib2.g_bytes_new_static(data, size);
+end;
+
+function TGBytes.new_take(data: guint8; size: gsize): PGBytes; cdecl;
+begin
+ Result := LazGLib2.g_bytes_new_take(data, size);
+end;
+
+function TGBytes.new_with_free_func(data: guint8; size: gsize; free_func: TGDestroyNotify; user_data: gpointer): PGBytes; cdecl;
+begin
+ Result := LazGLib2.g_bytes_new_with_free_func(data, size, free_func, user_data);
+end;
+
+function TGBytes.compare(bytes2: PGBytes): gint; cdecl;
+begin
+ Result := LazGLib2.g_bytes_compare(@self, bytes2);
+end;
+
+function TGBytes.equal(bytes2: PGBytes): gboolean; cdecl;
+begin
+ Result := LazGLib2.g_bytes_equal(@self, bytes2);
+end;
+
+function TGBytes.get_data(size: Pgsize): guint8; cdecl;
+begin
+ Result := LazGLib2.g_bytes_get_data(@self, size);
+end;
+
+function TGBytes.get_size: gsize; cdecl;
+begin
+ Result := LazGLib2.g_bytes_get_size(@self);
+end;
+
+function TGBytes.hash: guint; cdecl;
+begin
+ Result := LazGLib2.g_bytes_hash(@self);
+end;
+
+function TGBytes.new_from_bytes(offset: gsize; length: gsize): PGBytes; cdecl;
+begin
+ Result := LazGLib2.g_bytes_new_from_bytes(@self, offset, length);
+end;
+
+function TGBytes.ref: PGBytes; cdecl;
+begin
+ Result := LazGLib2.g_bytes_ref(@self);
+end;
+
+procedure TGBytes.unref; cdecl;
+begin
+ LazGLib2.g_bytes_unref(@self);
+end;
+
+function TGBytes.unref_to_array: Pguint8; cdecl;
+begin
+ Result := LazGLib2.g_bytes_unref_to_array(@self);
+end;
+
+function TGBytes.unref_to_data(size: Pgsize): guint8; cdecl;
+begin
+ Result := LazGLib2.g_bytes_unref_to_data(@self, size);
+end;
+
+function TGByteArray.append(array_: Pguint8; data: Pguint8; len: guint): Pguint8; cdecl;
+begin
+ Result := LazGLib2.g_byte_array_append(array_, data, len);
+end;
+
+function TGByteArray.free(array_: Pguint8; free_segment: gboolean): Pguint8; cdecl;
+begin
+ Result := LazGLib2.g_byte_array_free(array_, free_segment);
+end;
+
+function TGByteArray.free_to_bytes(array_: Pguint8): PGBytes; cdecl;
+begin
+ Result := LazGLib2.g_byte_array_free_to_bytes(array_);
+end;
+
+function TGByteArray.new: Pguint8; cdecl;
+begin
+ Result := LazGLib2.g_byte_array_new();
+end;
+
+function TGByteArray.new_take(data: Pguint8; len: gsize): Pguint8; cdecl;
+begin
+ Result := LazGLib2.g_byte_array_new_take(data, len);
+end;
+
+function TGByteArray.prepend(array_: Pguint8; data: Pguint8; len: guint): Pguint8; cdecl;
+begin
+ Result := LazGLib2.g_byte_array_prepend(array_, data, len);
+end;
+
+function TGByteArray.ref(array_: Pguint8): Pguint8; cdecl;
+begin
+ Result := LazGLib2.g_byte_array_ref(array_);
+end;
+
+function TGByteArray.remove_index(array_: Pguint8; index_: guint): Pguint8; cdecl;
+begin
+ Result := LazGLib2.g_byte_array_remove_index(array_, index_);
+end;
+
+function TGByteArray.remove_index_fast(array_: Pguint8; index_: guint): Pguint8; cdecl;
+begin
+ Result := LazGLib2.g_byte_array_remove_index_fast(array_, index_);
+end;
+
+function TGByteArray.remove_range(array_: Pguint8; index_: guint; length: guint): Pguint8; cdecl;
+begin
+ Result := LazGLib2.g_byte_array_remove_range(array_, index_, length);
+end;
+
+function TGByteArray.set_size(array_: Pguint8; length: guint): Pguint8; cdecl;
+begin
+ Result := LazGLib2.g_byte_array_set_size(array_, length);
+end;
+
+function TGByteArray.sized_new(reserved_size: guint): Pguint8; cdecl;
+begin
+ Result := LazGLib2.g_byte_array_sized_new(reserved_size);
+end;
+
+procedure TGByteArray.sort(array_: Pguint8; compare_func: TGCompareFunc); cdecl;
+begin
+ LazGLib2.g_byte_array_sort(array_, compare_func);
+end;
+
+procedure TGByteArray.sort_with_data(array_: Pguint8; compare_func: TGCompareDataFunc; user_data: gpointer); cdecl;
+begin
+ LazGLib2.g_byte_array_sort_with_data(array_, compare_func, user_data);
+end;
+
+function TGByteArray.steal(array_: Pguint8; len: Pgsize): Pguint8; cdecl;
+begin
+ Result := LazGLib2.g_byte_array_steal(array_, len);
+end;
+
+procedure TGByteArray.unref(array_: Pguint8); cdecl;
+begin
+ LazGLib2.g_byte_array_unref(array_);
+end;
+
+function TGChecksum.new(checksum_type: TGChecksumType): PGChecksum; cdecl;
+begin
+ Result := LazGLib2.g_checksum_new(checksum_type);
+end;
+
+function TGChecksum.copy: PGChecksum; cdecl;
+begin
+ Result := LazGLib2.g_checksum_copy(@self);
+end;
+
+procedure TGChecksum.free; cdecl;
+begin
+ LazGLib2.g_checksum_free(@self);
+end;
+
+procedure TGChecksum.get_digest(buffer: Pguint8; digest_len: Pgsize); cdecl;
+begin
+ LazGLib2.g_checksum_get_digest(@self, buffer, digest_len);
+end;
+
+function TGChecksum.get_string: Pgchar; cdecl;
+begin
+ Result := LazGLib2.g_checksum_get_string(@self);
+end;
+
+procedure TGChecksum.reset; cdecl;
+begin
+ LazGLib2.g_checksum_reset(@self);
+end;
+
+procedure TGChecksum.update(data: Pguint8; length: gssize); cdecl;
+begin
+ LazGLib2.g_checksum_update(@self, data, length);
+end;
+
+function TGChecksum.type_get_length(checksum_type: TGChecksumType): gssize; cdecl;
+begin
+ Result := LazGLib2.g_checksum_type_get_length(checksum_type);
+end;
+
+procedure TGCond.broadcast; cdecl;
+begin
+ LazGLib2.g_cond_broadcast(@self);
+end;
+
+procedure TGCond.clear; cdecl;
+begin
+ LazGLib2.g_cond_clear(@self);
+end;
+
+procedure TGCond.init; cdecl;
+begin
+ LazGLib2.g_cond_init(@self);
+end;
+
+procedure TGCond.signal; cdecl;
+begin
+ LazGLib2.g_cond_signal(@self);
+end;
+
+procedure TGCond.wait(mutex: PGMutex); cdecl;
+begin
+ LazGLib2.g_cond_wait(@self, mutex);
+end;
+
+function TGCond.wait_until(mutex: PGMutex; end_time: gint64): gboolean; cdecl;
+begin
+ Result := LazGLib2.g_cond_wait_until(@self, mutex, end_time);
+end;
+
+function TGDate.new: PGDate; cdecl;
+begin
+ Result := LazGLib2.g_date_new();
+end;
+
+function TGDate.new_dmy(day: TGDateDay; month: TGDateMonth; year: TGDateYear): PGDate; cdecl;
+begin
+ Result := LazGLib2.g_date_new_dmy(day, month, year);
+end;
+
+function TGDate.new_julian(julian_day: guint32): PGDate; cdecl;
+begin
+ Result := LazGLib2.g_date_new_julian(julian_day);
+end;
+
+procedure TGDate.add_days(n_days: guint); cdecl;
+begin
+ LazGLib2.g_date_add_days(@self, n_days);
+end;
+
+procedure TGDate.add_months(n_months: guint); cdecl;
+begin
+ LazGLib2.g_date_add_months(@self, n_months);
+end;
+
+procedure TGDate.add_years(n_years: guint); cdecl;
+begin
+ LazGLib2.g_date_add_years(@self, n_years);
+end;
+
+procedure TGDate.clamp(min_date: PGDate; max_date: PGDate); cdecl;
+begin
+ LazGLib2.g_date_clamp(@self, min_date, max_date);
+end;
+
+procedure TGDate.clear(n_dates: guint); cdecl;
+begin
+ LazGLib2.g_date_clear(@self, n_dates);
+end;
+
+function TGDate.compare(rhs: PGDate): gint; cdecl;
+begin
+ Result := LazGLib2.g_date_compare(@self, rhs);
+end;
+
+function TGDate.copy: PGDate; cdecl;
+begin
+ Result := LazGLib2.g_date_copy(@self);
+end;
+
+function TGDate.days_between(date2: PGDate): gint; cdecl;
+begin
+ Result := LazGLib2.g_date_days_between(@self, date2);
+end;
+
+procedure TGDate.free; cdecl;
+begin
+ LazGLib2.g_date_free(@self);
+end;
+
+function TGDate.get_day: TGDateDay; cdecl;
+begin
+ Result := LazGLib2.g_date_get_day(@self);
+end;
+
+function TGDate.get_day_of_year: guint; cdecl;
+begin
+ Result := LazGLib2.g_date_get_day_of_year(@self);
+end;
+
+function TGDate.get_iso8601_week_of_year: guint; cdecl;
+begin
+ Result := LazGLib2.g_date_get_iso8601_week_of_year(@self);
+end;
+
+function TGDate.get_julian: guint32; cdecl;
+begin
+ Result := LazGLib2.g_date_get_julian(@self);
+end;
+
+function TGDate.get_monday_week_of_year: guint; cdecl;
+begin
+ Result := LazGLib2.g_date_get_monday_week_of_year(@self);
+end;
+
+function TGDate.get_month: TGDateMonth; cdecl;
+begin
+ Result := LazGLib2.g_date_get_month(@self);
+end;
+
+function TGDate.get_sunday_week_of_year: guint; cdecl;
+begin
+ Result := LazGLib2.g_date_get_sunday_week_of_year(@self);
+end;
+
+function TGDate.get_weekday: TGDateWeekday; cdecl;
+begin
+ Result := LazGLib2.g_date_get_weekday(@self);
+end;
+
+function TGDate.get_year: TGDateYear; cdecl;
+begin
+ Result := LazGLib2.g_date_get_year(@self);
+end;
+
+function TGDate.is_first_of_month: gboolean; cdecl;
+begin
+ Result := LazGLib2.g_date_is_first_of_month(@self);
+end;
+
+function TGDate.is_last_of_month: gboolean; cdecl;
+begin
+ Result := LazGLib2.g_date_is_last_of_month(@self);
+end;
+
+procedure TGDate.order(date2: PGDate); cdecl;
+begin
+ LazGLib2.g_date_order(@self, date2);
+end;
+
+procedure TGDate.set_day(day: TGDateDay); cdecl;
+begin
+ LazGLib2.g_date_set_day(@self, day);
+end;
+
+procedure TGDate.set_dmy(day: TGDateDay; month: TGDateMonth; y: TGDateYear); cdecl;
+begin
+ LazGLib2.g_date_set_dmy(@self, day, month, y);
+end;
+
+procedure TGDate.set_julian(julian_date: guint32); cdecl;
+begin
+ LazGLib2.g_date_set_julian(@self, julian_date);
+end;
+
+procedure TGDate.set_month(month: TGDateMonth); cdecl;
+begin
+ LazGLib2.g_date_set_month(@self, month);
+end;
+
+procedure TGDate.set_parse(str: Pgchar); cdecl;
+begin
+ LazGLib2.g_date_set_parse(@self, str);
+end;
+
+procedure TGDate.set_time_t(timet: glong); cdecl;
+begin
+ LazGLib2.g_date_set_time_t(@self, timet);
+end;
+
+procedure TGDate.set_year(year: TGDateYear); cdecl;
+begin
+ LazGLib2.g_date_set_year(@self, year);
+end;
+
+procedure TGDate.subtract_days(n_days: guint); cdecl;
+begin
+ LazGLib2.g_date_subtract_days(@self, n_days);
+end;
+
+procedure TGDate.subtract_months(n_months: guint); cdecl;
+begin
+ LazGLib2.g_date_subtract_months(@self, n_months);
+end;
+
+procedure TGDate.subtract_years(n_years: guint); cdecl;
+begin
+ LazGLib2.g_date_subtract_years(@self, n_years);
+end;
+
+procedure TGDate.to_struct_tm(tm: Pgpointer); cdecl;
+begin
+ LazGLib2.g_date_to_struct_tm(@self, tm);
+end;
+
+function TGDate.valid: gboolean; cdecl;
+begin
+ Result := LazGLib2.g_date_valid(@self);
+end;
+
+function TGDate.get_days_in_month(month: TGDateMonth; year: TGDateYear): guint8; cdecl;
+begin
+ Result := LazGLib2.g_date_get_days_in_month(month, year);
+end;
+
+function TGDate.get_monday_weeks_in_year(year: TGDateYear): guint8; cdecl;
+begin
+ Result := LazGLib2.g_date_get_monday_weeks_in_year(year);
+end;
+
+function TGDate.get_sunday_weeks_in_year(year: TGDateYear): guint8; cdecl;
+begin
+ Result := LazGLib2.g_date_get_sunday_weeks_in_year(year);
+end;
+
+function TGDate.is_leap_year(year: TGDateYear): gboolean; cdecl;
+begin
+ Result := LazGLib2.g_date_is_leap_year(year);
+end;
+
+function TGDate.strftime(s: Pgchar; slen: gsize; format: Pgchar; date: PGDate): gsize; cdecl;
+begin
+ Result := LazGLib2.g_date_strftime(s, slen, format, date);
+end;
+
+function TGDate.valid_day(day: TGDateDay): gboolean; cdecl;
+begin
+ Result := LazGLib2.g_date_valid_day(day);
+end;
+
+function TGDate.valid_dmy(day: TGDateDay; month: TGDateMonth; year: TGDateYear): gboolean; cdecl;
+begin
+ Result := LazGLib2.g_date_valid_dmy(day, month, year);
+end;
+
+function TGDate.valid_julian(julian_date: guint32): gboolean; cdecl;
+begin
+ Result := LazGLib2.g_date_valid_julian(julian_date);
+end;
+
+function TGDate.valid_month(month: TGDateMonth): gboolean; cdecl;
+begin
+ Result := LazGLib2.g_date_valid_month(month);
+end;
+
+function TGDate.valid_weekday(weekday: TGDateWeekday): gboolean; cdecl;
+begin
+ Result := LazGLib2.g_date_valid_weekday(weekday);
+end;
+
+function TGDate.valid_year(year: TGDateYear): gboolean; cdecl;
+begin
+ Result := LazGLib2.g_date_valid_year(year);
+end;
+
+function TGTimeZone.new(identifier: Pgchar): PGTimeZone; cdecl;
+begin
+ Result := LazGLib2.g_time_zone_new(identifier);
+end;
+
+function TGTimeZone.new_local: PGTimeZone; cdecl;
+begin
+ Result := LazGLib2.g_time_zone_new_local();
+end;
+
+function TGTimeZone.new_offset(seconds: gint32): PGTimeZone; cdecl;
+begin
+ Result := LazGLib2.g_time_zone_new_offset(seconds);
+end;
+
+function TGTimeZone.new_utc: PGTimeZone; cdecl;
+begin
+ Result := LazGLib2.g_time_zone_new_utc();
+end;
+
+function TGTimeZone.adjust_time(type_: TGTimeType; time_: Pgint64): gint; cdecl;
+begin
+ Result := LazGLib2.g_time_zone_adjust_time(@self, type_, time_);
+end;
+
+function TGTimeZone.find_interval(type_: TGTimeType; time_: gint64): gint; cdecl;
+begin
+ Result := LazGLib2.g_time_zone_find_interval(@self, type_, time_);
+end;
+
+function TGTimeZone.get_abbreviation(interval: gint): Pgchar; cdecl;
+begin
+ Result := LazGLib2.g_time_zone_get_abbreviation(@self, interval);
+end;
+
+function TGTimeZone.get_identifier: Pgchar; cdecl;
+begin
+ Result := LazGLib2.g_time_zone_get_identifier(@self);
+end;
+
+function TGTimeZone.get_offset(interval: gint): gint32; cdecl;
+begin
+ Result := LazGLib2.g_time_zone_get_offset(@self, interval);
+end;
+
+function TGTimeZone.is_dst(interval: gint): gboolean; cdecl;
+begin
+ Result := LazGLib2.g_time_zone_is_dst(@self, interval);
+end;
+
+function TGTimeZone.ref: PGTimeZone; cdecl;
+begin
+ Result := LazGLib2.g_time_zone_ref(@self);
+end;
+
+procedure TGTimeZone.unref; cdecl;
+begin
+ LazGLib2.g_time_zone_unref(@self);
+end;
+
+procedure TGDir.close; cdecl;
+begin
+ LazGLib2.g_dir_close(@self);
+end;
+
+function TGDir.read_name: Pgchar; cdecl;
+begin
+ Result := LazGLib2.g_dir_read_name(@self);
+end;
+
+procedure TGDir.rewind; cdecl;
+begin
+ LazGLib2.g_dir_rewind(@self);
+end;
+
+function TGDir.make_tmp(tmpl: Pgchar; error: PPGError): Pgchar; cdecl;
+begin
+ Result := LazGLib2.g_dir_make_tmp(tmpl, error);
+end;
+
+function TGDir.open(path: Pgchar; flags: guint; error: PPGError): PGDir; cdecl;
+begin
+ Result := LazGLib2.g_dir_open(path, flags, error);
+end;
+
+function TGHashTable.add(hash_table: PGHashTable; key: gpointer): gboolean; cdecl;
+begin
+ Result := LazGLib2.g_hash_table_add(hash_table, key);
+end;
+
+function TGHashTable.contains(hash_table: PGHashTable; key: Pgpointer): gboolean; cdecl;
+begin
+ Result := LazGLib2.g_hash_table_contains(hash_table, key);
+end;
+
+procedure TGHashTable.destroy_(hash_table: PGHashTable); cdecl;
+begin
+ LazGLib2.g_hash_table_destroy(hash_table);
+end;
+
+function TGHashTable.find(hash_table: PGHashTable; predicate: TGHRFunc; user_data: gpointer): gpointer; cdecl;
+begin
+ Result := LazGLib2.g_hash_table_find(hash_table, predicate, user_data);
+end;
+
+procedure TGHashTable.foreach(hash_table: PGHashTable; func: TGHFunc; user_data: gpointer); cdecl;
+begin
+ LazGLib2.g_hash_table_foreach(hash_table, func, user_data);
+end;
+
+function TGHashTable.foreach_remove(hash_table: PGHashTable; func: TGHRFunc; user_data: gpointer): guint; cdecl;
+begin
+ Result := LazGLib2.g_hash_table_foreach_remove(hash_table, func, user_data);
+end;
+
+function TGHashTable.foreach_steal(hash_table: PGHashTable; func: TGHRFunc; user_data: gpointer): guint; cdecl;
+begin
+ Result := LazGLib2.g_hash_table_foreach_steal(hash_table, func, user_data);
+end;
+
+function TGHashTable.get_keys(hash_table: PGHashTable): PGList; cdecl;
+begin
+ Result := LazGLib2.g_hash_table_get_keys(hash_table);
+end;
+
+function TGHashTable.get_keys_as_array(hash_table: PGHashTable; length: Pguint): Pgpointer; cdecl;
+begin
+ Result := LazGLib2.g_hash_table_get_keys_as_array(hash_table, length);
+end;
+
+function TGHashTable.get_values(hash_table: PGHashTable): PGList; cdecl;
+begin
+ Result := LazGLib2.g_hash_table_get_values(hash_table);
+end;
+
+function TGHashTable.insert(hash_table: PGHashTable; key: gpointer; value: gpointer): gboolean; cdecl;
+begin
+ Result := LazGLib2.g_hash_table_insert(hash_table, key, value);
+end;
+
+function TGHashTable.lookup(hash_table: PGHashTable; key: Pgpointer): gpointer; cdecl;
+begin
+ Result := LazGLib2.g_hash_table_lookup(hash_table, key);
+end;
+
+function TGHashTable.lookup_extended(hash_table: PGHashTable; lookup_key: Pgpointer; orig_key: Pgpointer; value: Pgpointer): gboolean; cdecl;
+begin
+ Result := LazGLib2.g_hash_table_lookup_extended(hash_table, lookup_key, orig_key, value);
+end;
+
+function TGHashTable.new(hash_func: TGHashFunc; key_equal_func: TGEqualFunc): PGHashTable; cdecl;
+begin
+ Result := LazGLib2.g_hash_table_new(hash_func, key_equal_func);
+end;
+
+function TGHashTable.new_full(hash_func: TGHashFunc; key_equal_func: TGEqualFunc; key_destroy_func: TGDestroyNotify; value_destroy_func: TGDestroyNotify): PGHashTable; cdecl;
+begin
+ Result := LazGLib2.g_hash_table_new_full(hash_func, key_equal_func, key_destroy_func, value_destroy_func);
+end;
+
+function TGHashTable.ref(hash_table: PGHashTable): PGHashTable; cdecl;
+begin
+ Result := LazGLib2.g_hash_table_ref(hash_table);
+end;
+
+function TGHashTable.remove(hash_table: PGHashTable; key: Pgpointer): gboolean; cdecl;
+begin
+ Result := LazGLib2.g_hash_table_remove(hash_table, key);
+end;
+
+procedure TGHashTable.remove_all(hash_table: PGHashTable); cdecl;
+begin
+ LazGLib2.g_hash_table_remove_all(hash_table);
+end;
+
+function TGHashTable.replace(hash_table: PGHashTable; key: gpointer; value: gpointer): gboolean; cdecl;
+begin
+ Result := LazGLib2.g_hash_table_replace(hash_table, key, value);
+end;
+
+function TGHashTable.size(hash_table: PGHashTable): guint; cdecl;
+begin
+ Result := LazGLib2.g_hash_table_size(hash_table);
+end;
+
+function TGHashTable.steal(hash_table: PGHashTable; key: Pgpointer): gboolean; cdecl;
+begin
+ Result := LazGLib2.g_hash_table_steal(hash_table, key);
+end;
+
+procedure TGHashTable.steal_all(hash_table: PGHashTable); cdecl;
+begin
+ LazGLib2.g_hash_table_steal_all(hash_table);
+end;
+
+function TGHashTable.steal_extended(hash_table: PGHashTable; lookup_key: Pgpointer; stolen_key: Pgpointer; stolen_value: Pgpointer): gboolean; cdecl;
+begin
+ Result := LazGLib2.g_hash_table_steal_extended(hash_table, lookup_key, stolen_key, stolen_value);
+end;
+
+procedure TGHashTable.unref(hash_table: PGHashTable); cdecl;
+begin
+ LazGLib2.g_hash_table_unref(hash_table);
+end;
+
+function TGList.alloc: PGList; cdecl;
+begin
+ Result := LazGLib2.g_list_alloc();
+end;
+
+function TGList.append(data: gpointer): PGList; cdecl;
+begin
+ Result := LazGLib2.g_list_append(@self, data);
+end;
+
+function TGList.concat(list2: PGList): PGList; cdecl;
+begin
+ Result := LazGLib2.g_list_concat(@self, list2);
+end;
+
+function TGList.copy(): PGList; cdecl;
+begin
+ Result := LazGLib2.g_list_copy(@self);
+end;
+
+function TGList.copy_deep(func: TGCopyFunc; user_data: gpointer): PGList; cdecl;
+begin
+ Result := LazGLib2.g_list_copy_deep(@self, func, user_data);
+end;
+
+function TGList.delete_link(link_: PGList): PGList; cdecl;
+begin
+ Result := LazGLib2.g_list_delete_link(@self, link_);
+end;
+
+function TGList.find(data: Pgpointer): PGList; cdecl;
+begin
+ Result := LazGLib2.g_list_find(@self, data);
+end;
+
+function TGList.find_custom(data: Pgpointer; func: TGCompareFunc): PGList; cdecl;
+begin
+ Result := LazGLib2.g_list_find_custom(@self, data, func);
+end;
+
+function TGList.first(): PGList; cdecl;
+begin
+ Result := LazGLib2.g_list_first(@self);
+end;
+
+procedure TGList.foreach(func: TGFunc; user_data: gpointer); cdecl;
+begin
+ LazGLib2.g_list_foreach(@self, func, user_data);
+end;
+
+procedure TGList.free(); cdecl;
+begin
+ LazGLib2.g_list_free(@self);
+end;
+
+procedure TGList.free_1(); cdecl;
+begin
+ LazGLib2.g_list_free_1(@self);
+end;
+
+procedure TGList.free_full(free_func: TGDestroyNotify); cdecl;
+begin
+ LazGLib2.g_list_free_full(@self, free_func);
+end;
+
+function TGList.index(data: Pgpointer): gint; cdecl;
+begin
+ Result := LazGLib2.g_list_index(@self, data);
+end;
+
+function TGList.insert(data: gpointer; position: gint): PGList; cdecl;
+begin
+ Result := LazGLib2.g_list_insert(@self, data, position);
+end;
+
+function TGList.insert_before(sibling: PGList; data: gpointer): PGList; cdecl;
+begin
+ Result := LazGLib2.g_list_insert_before(@self, sibling, data);
+end;
+
+function TGList.insert_before_link(sibling: PGList; link_: PGList): PGList; cdecl;
+begin
+ Result := LazGLib2.g_list_insert_before_link(@self, sibling, link_);
+end;
+
+function TGList.insert_sorted(data: gpointer; func: TGCompareFunc): PGList; cdecl;
+begin
+ Result := LazGLib2.g_list_insert_sorted(@self, data, func);
+end;
+
+function TGList.insert_sorted_with_data(data: gpointer; func: TGCompareDataFunc; user_data: gpointer): PGList; cdecl;
+begin
+ Result := LazGLib2.g_list_insert_sorted_with_data(@self, data, func, user_data);
+end;
+
+function TGList.last(): PGList; cdecl;
+begin
+ Result := LazGLib2.g_list_last(@self);
+end;
+
+function TGList.length(): guint; cdecl;
+begin
+ Result := LazGLib2.g_list_length(@self);
+end;
+
+function TGList.nth(n: guint): PGList; cdecl;
+begin
+ Result := LazGLib2.g_list_nth(@self, n);
+end;
+
+function TGList.nth_data(n: guint): gpointer; cdecl;
+begin
+ Result := LazGLib2.g_list_nth_data(@self, n);
+end;
+
+function TGList.nth_prev(n: guint): PGList; cdecl;
+begin
+ Result := LazGLib2.g_list_nth_prev(@self, n);
+end;
+
+function TGList.position(llink: PGList): gint; cdecl;
+begin
+ Result := LazGLib2.g_list_position(@self, llink);
+end;
+
+function TGList.prepend(data: gpointer): PGList; cdecl;
+begin
+ Result := LazGLib2.g_list_prepend(@self, data);
+end;
+
+function TGList.remove(data: Pgpointer): PGList; cdecl;
+begin
+ Result := LazGLib2.g_list_remove(@self, data);
+end;
+
+function TGList.remove_all(data: Pgpointer): PGList; cdecl;
+begin
+ Result := LazGLib2.g_list_remove_all(@self, data);
+end;
+
+function TGList.remove_link(llink: PGList): PGList; cdecl;
+begin
+ Result := LazGLib2.g_list_remove_link(@self, llink);
+end;
+
+function TGList.reverse(): PGList; cdecl;
+begin
+ Result := LazGLib2.g_list_reverse(@self);
+end;
+
+function TGList.sort(compare_func: TGCompareFunc): PGList; cdecl;
+begin
+ Result := LazGLib2.g_list_sort(@self, compare_func);
+end;
+
+function TGList.sort_with_data(compare_func: TGCompareDataFunc; user_data: gpointer): PGList; cdecl;
+begin
+ Result := LazGLib2.g_list_sort_with_data(@self, compare_func, user_data);
+end;
+
+function TGHashTableIter.get_hash_table: PGHashTable; cdecl;
+begin
+ Result := LazGLib2.g_hash_table_iter_get_hash_table(@self);
+end;
+
+procedure TGHashTableIter.init(hash_table: PGHashTable); cdecl;
+begin
+ LazGLib2.g_hash_table_iter_init(@self, hash_table);
+end;
+
+function TGHashTableIter.next(key: Pgpointer; value: Pgpointer): gboolean; cdecl;
+begin
+ Result := LazGLib2.g_hash_table_iter_next(@self, key, value);
+end;
+
+procedure TGHashTableIter.remove; cdecl;
+begin
+ LazGLib2.g_hash_table_iter_remove(@self);
+end;
+
+procedure TGHashTableIter.replace(value: gpointer); cdecl;
+begin
+ LazGLib2.g_hash_table_iter_replace(@self, value);
+end;
+
+procedure TGHashTableIter.steal; cdecl;
+begin
+ LazGLib2.g_hash_table_iter_steal(@self);
+end;
+
+function TGHmac.copy: PGHmac; cdecl;
+begin
+ Result := LazGLib2.g_hmac_copy(@self);
+end;
+
+procedure TGHmac.get_digest(buffer: Pguint8; digest_len: Pgsize); cdecl;
+begin
+ LazGLib2.g_hmac_get_digest(@self, buffer, digest_len);
+end;
+
+function TGHmac.get_string: Pgchar; cdecl;
+begin
+ Result := LazGLib2.g_hmac_get_string(@self);
+end;
+
+function TGHmac.ref: PGHmac; cdecl;
+begin
+ Result := LazGLib2.g_hmac_ref(@self);
+end;
+
+procedure TGHmac.unref; cdecl;
+begin
+ LazGLib2.g_hmac_unref(@self);
+end;
+
+procedure TGHmac.update(data: Pguint8; length: gssize); cdecl;
+begin
+ LazGLib2.g_hmac_update(@self, data, length);
+end;
+
+function TGHmac.new(digest_type: TGChecksumType; key: Pguint8; key_len: gsize): PGHmac; cdecl;
+begin
+ Result := LazGLib2.g_hmac_new(digest_type, key, key_len);
+end;
+
+function TGHook.compare_ids(sibling: PGHook): gint; cdecl;
+begin
+ Result := LazGLib2.g_hook_compare_ids(@self, sibling);
+end;
+
+function TGHook.alloc(hook_list: PGHookList): PGHook; cdecl;
+begin
+ Result := LazGLib2.g_hook_alloc(hook_list);
+end;
+
+function TGHook.destroy_(hook_list: PGHookList; hook_id: gulong): gboolean; cdecl;
+begin
+ Result := LazGLib2.g_hook_destroy(hook_list, hook_id);
+end;
+
+procedure TGHook.destroy_link(hook_list: PGHookList; hook: PGHook); cdecl;
+begin
+ LazGLib2.g_hook_destroy_link(hook_list, hook);
+end;
+
+function TGHook.find(hook_list: PGHookList; need_valids: gboolean; func: TGHookFindFunc; data: gpointer): PGHook; cdecl;
+begin
+ Result := LazGLib2.g_hook_find(hook_list, need_valids, func, data);
+end;
+
+function TGHook.find_data(hook_list: PGHookList; need_valids: gboolean; data: gpointer): PGHook; cdecl;
+begin
+ Result := LazGLib2.g_hook_find_data(hook_list, need_valids, data);
+end;
+
+function TGHook.find_func(hook_list: PGHookList; need_valids: gboolean; func: gpointer): PGHook; cdecl;
+begin
+ Result := LazGLib2.g_hook_find_func(hook_list, need_valids, func);
+end;
+
+function TGHook.find_func_data(hook_list: PGHookList; need_valids: gboolean; func: gpointer; data: gpointer): PGHook; cdecl;
+begin
+ Result := LazGLib2.g_hook_find_func_data(hook_list, need_valids, func, data);
+end;
+
+function TGHook.first_valid(hook_list: PGHookList; may_be_in_call: gboolean): PGHook; cdecl;
+begin
+ Result := LazGLib2.g_hook_first_valid(hook_list, may_be_in_call);
+end;
+
+procedure TGHook.free(hook_list: PGHookList; hook: PGHook); cdecl;
+begin
+ LazGLib2.g_hook_free(hook_list, hook);
+end;
+
+function TGHook.get(hook_list: PGHookList; hook_id: gulong): PGHook; cdecl;
+begin
+ Result := LazGLib2.g_hook_get(hook_list, hook_id);
+end;
+
+procedure TGHook.insert_before(hook_list: PGHookList; sibling: PGHook; hook: PGHook); cdecl;
+begin
+ LazGLib2.g_hook_insert_before(hook_list, sibling, hook);
+end;
+
+procedure TGHook.insert_sorted(hook_list: PGHookList; hook: PGHook; func: TGHookCompareFunc); cdecl;
+begin
+ LazGLib2.g_hook_insert_sorted(hook_list, hook, func);
+end;
+
+function TGHook.next_valid(hook_list: PGHookList; hook: PGHook; may_be_in_call: gboolean): PGHook; cdecl;
+begin
+ Result := LazGLib2.g_hook_next_valid(hook_list, hook, may_be_in_call);
+end;
+
+procedure TGHook.prepend(hook_list: PGHookList; hook: PGHook); cdecl;
+begin
+ LazGLib2.g_hook_prepend(hook_list, hook);
+end;
+
+function TGHook.ref(hook_list: PGHookList; hook: PGHook): PGHook; cdecl;
+begin
+ Result := LazGLib2.g_hook_ref(hook_list, hook);
+end;
+
+procedure TGHook.unref(hook_list: PGHookList; hook: PGHook); cdecl;
+begin
+ LazGLib2.g_hook_unref(hook_list, hook);
+end;
+
+procedure TGHookList.clear; cdecl;
+begin
+ LazGLib2.g_hook_list_clear(@self);
+end;
+
+procedure TGHookList.init(hook_size: guint); cdecl;
+begin
+ LazGLib2.g_hook_list_init(@self, hook_size);
+end;
+
+procedure TGHookList.invoke(may_recurse: gboolean); cdecl;
+begin
+ LazGLib2.g_hook_list_invoke(@self, may_recurse);
+end;
+
+procedure TGHookList.invoke_check(may_recurse: gboolean); cdecl;
+begin
+ LazGLib2.g_hook_list_invoke_check(@self, may_recurse);
+end;
+
+procedure TGHookList.marshal(may_recurse: gboolean; marshaller: TGHookMarshaller; marshal_data: gpointer); cdecl;
+begin
+ LazGLib2.g_hook_list_marshal(@self, may_recurse, marshaller, marshal_data);
+end;
+
+procedure TGHookList.marshal_check(may_recurse: gboolean; marshaller: TGHookCheckMarshaller; marshal_data: gpointer); cdecl;
+begin
+ LazGLib2.g_hook_list_marshal_check(@self, may_recurse, marshaller, marshal_data);
+end;
+
+function TGIConv.g_iconv(inbuf: PPgchar; inbytes_left: Pgsize; outbuf: PPgchar; outbytes_left: Pgsize): gsize; cdecl;
+begin
+ Result := LazGLib2.g_iconv(self, inbuf, inbytes_left, outbuf, outbytes_left);
+end;
+
+function TGIConv.close: gint; cdecl;
+begin
+ Result := LazGLib2.g_iconv_close(self);
+end;
+
+function TGIConv.open(to_codeset: Pgchar; from_codeset: Pgchar): TGIConv; cdecl;
+begin
+ Result := LazGLib2.g_iconv_open(to_codeset, from_codeset);
+end;
+
+function TGString.new(init: Pgchar): PGString; cdecl;
+begin
+ Result := LazGLib2.g_string_new(init);
+end;
+
+function TGString.new_len(init: Pgchar; len: gssize): PGString; cdecl;
+begin
+ Result := LazGLib2.g_string_new_len(init, len);
+end;
+
+function TGString.sized_new(dfl_size: gsize): PGString; cdecl;
+begin
+ Result := LazGLib2.g_string_sized_new(dfl_size);
+end;
+
+function TGString.append(val: Pgchar): PGString; cdecl;
+begin
+ Result := LazGLib2.g_string_append(@self, val);
+end;
+
+function TGString.append_c(c: gchar): PGString; cdecl;
+begin
+ Result := LazGLib2.g_string_append_c(@self, c);
+end;
+
+function TGString.append_len(val: Pgchar; len: gssize): PGString; cdecl;
+begin
+ Result := LazGLib2.g_string_append_len(@self, val, len);
+end;
+
+function TGString.append_unichar(wc: gunichar): PGString; cdecl;
+begin
+ Result := LazGLib2.g_string_append_unichar(@self, wc);
+end;
+
+function TGString.append_uri_escaped(unescaped: Pgchar; reserved_chars_allowed: Pgchar; allow_utf8: gboolean): PGString; cdecl;
+begin
+ Result := LazGLib2.g_string_append_uri_escaped(@self, unescaped, reserved_chars_allowed, allow_utf8);
+end;
+
+function TGString.ascii_down: PGString; cdecl;
+begin
+ Result := LazGLib2.g_string_ascii_down(@self);
+end;
+
+function TGString.ascii_up: PGString; cdecl;
+begin
+ Result := LazGLib2.g_string_ascii_up(@self);
+end;
+
+function TGString.assign(rval: Pgchar): PGString; cdecl;
+begin
+ Result := LazGLib2.g_string_assign(@self, rval);
+end;
+
+function TGString.equal(v2: PGString): gboolean; cdecl;
+begin
+ Result := LazGLib2.g_string_equal(@self, v2);
+end;
+
+function TGString.erase(pos: gssize; len: gssize): PGString; cdecl;
+begin
+ Result := LazGLib2.g_string_erase(@self, pos, len);
+end;
+
+function TGString.free(free_segment: gboolean): Pgchar; cdecl;
+begin
+ Result := LazGLib2.g_string_free(@self, free_segment);
+end;
+
+function TGString.free_to_bytes: PGBytes; cdecl;
+begin
+ Result := LazGLib2.g_string_free_to_bytes(@self);
+end;
+
+function TGString.hash: guint; cdecl;
+begin
+ Result := LazGLib2.g_string_hash(@self);
+end;
+
+function TGString.insert(pos: gssize; val: Pgchar): PGString; cdecl;
+begin
+ Result := LazGLib2.g_string_insert(@self, pos, val);
+end;
+
+function TGString.insert_c(pos: gssize; c: gchar): PGString; cdecl;
+begin
+ Result := LazGLib2.g_string_insert_c(@self, pos, c);
+end;
+
+function TGString.insert_len(pos: gssize; val: Pgchar; len: gssize): PGString; cdecl;
+begin
+ Result := LazGLib2.g_string_insert_len(@self, pos, val, len);
+end;
+
+function TGString.insert_unichar(pos: gssize; wc: gunichar): PGString; cdecl;
+begin
+ Result := LazGLib2.g_string_insert_unichar(@self, pos, wc);
+end;
+
+function TGString.overwrite(pos: gsize; val: Pgchar): PGString; cdecl;
+begin
+ Result := LazGLib2.g_string_overwrite(@self, pos, val);
+end;
+
+function TGString.overwrite_len(pos: gsize; val: Pgchar; len: gssize): PGString; cdecl;
+begin
+ Result := LazGLib2.g_string_overwrite_len(@self, pos, val, len);
+end;
+
+function TGString.prepend(val: Pgchar): PGString; cdecl;
+begin
+ Result := LazGLib2.g_string_prepend(@self, val);
+end;
+
+function TGString.prepend_c(c: gchar): PGString; cdecl;
+begin
+ Result := LazGLib2.g_string_prepend_c(@self, c);
+end;
+
+function TGString.prepend_len(val: Pgchar; len: gssize): PGString; cdecl;
+begin
+ Result := LazGLib2.g_string_prepend_len(@self, val, len);
+end;
+
+function TGString.prepend_unichar(wc: gunichar): PGString; cdecl;
+begin
+ Result := LazGLib2.g_string_prepend_unichar(@self, wc);
+end;
+
+function TGString.set_size(len: gsize): PGString; cdecl;
+begin
+ Result := LazGLib2.g_string_set_size(@self, len);
+end;
+
+function TGString.truncate(len: gsize): PGString; cdecl;
+begin
+ Result := LazGLib2.g_string_truncate(@self, len);
+end;
+
+function TGIOChannel.new_file(filename: Pgchar; mode: Pgchar; error: PPGError): PGIOChannel; cdecl;
+begin
+ Result := LazGLib2.g_io_channel_new_file(filename, mode, error);
+end;
+
+function TGIOChannel.unix_new(fd: gint): PGIOChannel; cdecl;
+begin
+ Result := LazGLib2.g_io_channel_unix_new(fd);
+end;
+
+function TGIOChannel.flush(error: PPGError): TGIOStatus; cdecl;
+begin
+ Result := LazGLib2.g_io_channel_flush(@self, error);
+end;
+
+function TGIOChannel.get_buffer_condition: TGIOCondition; cdecl;
+begin
+ Result := LazGLib2.g_io_channel_get_buffer_condition(@self);
+end;
+
+function TGIOChannel.get_buffer_size: gsize; cdecl;
+begin
+ Result := LazGLib2.g_io_channel_get_buffer_size(@self);
+end;
+
+function TGIOChannel.get_buffered: gboolean; cdecl;
+begin
+ Result := LazGLib2.g_io_channel_get_buffered(@self);
+end;
+
+function TGIOChannel.get_close_on_unref: gboolean; cdecl;
+begin
+ Result := LazGLib2.g_io_channel_get_close_on_unref(@self);
+end;
+
+function TGIOChannel.get_encoding: Pgchar; cdecl;
+begin
+ Result := LazGLib2.g_io_channel_get_encoding(@self);
+end;
+
+function TGIOChannel.get_flags: TGIOFlags; cdecl;
+begin
+ Result := LazGLib2.g_io_channel_get_flags(@self);
+end;
+
+function TGIOChannel.get_line_term(length: Pgint): Pgchar; cdecl;
+begin
+ Result := LazGLib2.g_io_channel_get_line_term(@self, length);
+end;
+
+procedure TGIOChannel.init; cdecl;
+begin
+ LazGLib2.g_io_channel_init(@self);
+end;
+
+function TGIOChannel.read_chars(buf: Pgchar; count: gsize; bytes_read: Pgsize; error: PPGError): TGIOStatus; cdecl;
+begin
+ Result := LazGLib2.g_io_channel_read_chars(@self, buf, count, bytes_read, error);
+end;
+
+function TGIOChannel.read_line(str_return: PPgchar; length: Pgsize; terminator_pos: Pgsize; error: PPGError): TGIOStatus; cdecl;
+begin
+ Result := LazGLib2.g_io_channel_read_line(@self, str_return, length, terminator_pos, error);
+end;
+
+function TGIOChannel.read_line_string(buffer: PGString; terminator_pos: Pgsize; error: PPGError): TGIOStatus; cdecl;
+begin
+ Result := LazGLib2.g_io_channel_read_line_string(@self, buffer, terminator_pos, error);
+end;
+
+function TGIOChannel.read_to_end(str_return: PPgchar; length: Pgsize; error: PPGError): TGIOStatus; cdecl;
+begin
+ Result := LazGLib2.g_io_channel_read_to_end(@self, str_return, length, error);
+end;
+
+function TGIOChannel.read_unichar(thechar: Pgunichar; error: PPGError): TGIOStatus; cdecl;
+begin
+ Result := LazGLib2.g_io_channel_read_unichar(@self, thechar, error);
+end;
+
+function TGIOChannel.ref: PGIOChannel; cdecl;
+begin
+ Result := LazGLib2.g_io_channel_ref(@self);
+end;
+
+function TGIOChannel.seek_position(offset: gint64; type_: TGSeekType; error: PPGError): TGIOStatus; cdecl;
+begin
+ Result := LazGLib2.g_io_channel_seek_position(@self, offset, type_, error);
+end;
+
+procedure TGIOChannel.set_buffer_size(size: gsize); cdecl;
+begin
+ LazGLib2.g_io_channel_set_buffer_size(@self, size);
+end;
+
+procedure TGIOChannel.set_buffered(buffered: gboolean); cdecl;
+begin
+ LazGLib2.g_io_channel_set_buffered(@self, buffered);
+end;
+
+procedure TGIOChannel.set_close_on_unref(do_close: gboolean); cdecl;
+begin
+ LazGLib2.g_io_channel_set_close_on_unref(@self, do_close);
+end;
+
+function TGIOChannel.set_encoding(encoding: Pgchar; error: PPGError): TGIOStatus; cdecl;
+begin
+ Result := LazGLib2.g_io_channel_set_encoding(@self, encoding, error);
+end;
+
+function TGIOChannel.set_flags(flags: TGIOFlags; error: PPGError): TGIOStatus; cdecl;
+begin
+ Result := LazGLib2.g_io_channel_set_flags(@self, flags, error);
+end;
+
+procedure TGIOChannel.set_line_term(line_term: Pgchar; length: gint); cdecl;
+begin
+ LazGLib2.g_io_channel_set_line_term(@self, line_term, length);
+end;
+
+function TGIOChannel.shutdown(flush: gboolean; error: PPGError): TGIOStatus; cdecl;
+begin
+ Result := LazGLib2.g_io_channel_shutdown(@self, flush, error);
+end;
+
+function TGIOChannel.unix_get_fd: gint; cdecl;
+begin
+ Result := LazGLib2.g_io_channel_unix_get_fd(@self);
+end;
+
+procedure TGIOChannel.unref; cdecl;
+begin
+ LazGLib2.g_io_channel_unref(@self);
+end;
+
+function TGIOChannel.write_chars(buf: Pgchar; count: gssize; bytes_written: Pgsize; error: PPGError): TGIOStatus; cdecl;
+begin
+ Result := LazGLib2.g_io_channel_write_chars(@self, buf, count, bytes_written, error);
+end;
+
+function TGIOChannel.write_unichar(thechar: gunichar; error: PPGError): TGIOStatus; cdecl;
+begin
+ Result := LazGLib2.g_io_channel_write_unichar(@self, thechar, error);
+end;
+
+function TGIOChannel.error_from_errno(en: gint): TGIOChannelError; cdecl;
+begin
+ Result := LazGLib2.g_io_channel_error_from_errno(en);
+end;
+
+function TGIOChannel.error_quark: TGQuark; cdecl;
+begin
+ Result := LazGLib2.g_io_channel_error_quark();
+end;
+
+function TGSource.new(source_funcs: PGSourceFuncs; struct_size: guint): PGSource; cdecl;
+begin
+ Result := LazGLib2.g_source_new(source_funcs, struct_size);
+end;
+
+procedure TGSource.add_child_source(child_source: PGSource); cdecl;
+begin
+ LazGLib2.g_source_add_child_source(@self, child_source);
+end;
+
+procedure TGSource.add_poll(fd: PGPollFD); cdecl;
+begin
+ LazGLib2.g_source_add_poll(@self, fd);
+end;
+
+function TGSource.add_unix_fd(fd: gint; events: TGIOCondition): gpointer; cdecl;
+begin
+ Result := LazGLib2.g_source_add_unix_fd(@self, fd, events);
+end;
+
+function TGSource.attach(context: PGMainContext): guint; cdecl;
+begin
+ Result := LazGLib2.g_source_attach(@self, context);
+end;
+
+procedure TGSource.destroy_; cdecl;
+begin
+ LazGLib2.g_source_destroy(@self);
+end;
+
+function TGSource.get_can_recurse: gboolean; cdecl;
+begin
+ Result := LazGLib2.g_source_get_can_recurse(@self);
+end;
+
+function TGSource.get_context: PGMainContext; cdecl;
+begin
+ Result := LazGLib2.g_source_get_context(@self);
+end;
+
+function TGSource.get_id: guint; cdecl;
+begin
+ Result := LazGLib2.g_source_get_id(@self);
+end;
+
+function TGSource.get_name: Pgchar; cdecl;
+begin
+ Result := LazGLib2.g_source_get_name(@self);
+end;
+
+function TGSource.get_priority: gint; cdecl;
+begin
+ Result := LazGLib2.g_source_get_priority(@self);
+end;
+
+function TGSource.get_ready_time: gint64; cdecl;
+begin
+ Result := LazGLib2.g_source_get_ready_time(@self);
+end;
+
+function TGSource.get_time: gint64; cdecl;
+begin
+ Result := LazGLib2.g_source_get_time(@self);
+end;
+
+function TGSource.is_destroyed: gboolean; cdecl;
+begin
+ Result := LazGLib2.g_source_is_destroyed(@self);
+end;
+
+procedure TGSource.modify_unix_fd(tag: gpointer; new_events: TGIOCondition); cdecl;
+begin
+ LazGLib2.g_source_modify_unix_fd(@self, tag, new_events);
+end;
+
+function TGSource.query_unix_fd(tag: gpointer): TGIOCondition; cdecl;
+begin
+ Result := LazGLib2.g_source_query_unix_fd(@self, tag);
+end;
+
+function TGSource.ref: PGSource; cdecl;
+begin
+ Result := LazGLib2.g_source_ref(@self);
+end;
+
+procedure TGSource.remove_child_source(child_source: PGSource); cdecl;
+begin
+ LazGLib2.g_source_remove_child_source(@self, child_source);
+end;
+
+procedure TGSource.remove_poll(fd: PGPollFD); cdecl;
+begin
+ LazGLib2.g_source_remove_poll(@self, fd);
+end;
+
+procedure TGSource.remove_unix_fd(tag: gpointer); cdecl;
+begin
+ LazGLib2.g_source_remove_unix_fd(@self, tag);
+end;
+
+procedure TGSource.set_callback(func: TGSourceFunc; data: gpointer; notify: TGDestroyNotify); cdecl;
+begin
+ LazGLib2.g_source_set_callback(@self, func, data, notify);
+end;
+
+procedure TGSource.set_callback_indirect(callback_data: gpointer; callback_funcs: PGSourceCallbackFuncs); cdecl;
+begin
+ LazGLib2.g_source_set_callback_indirect(@self, callback_data, callback_funcs);
+end;
+
+procedure TGSource.set_can_recurse(can_recurse: gboolean); cdecl;
+begin
+ LazGLib2.g_source_set_can_recurse(@self, can_recurse);
+end;
+
+procedure TGSource.set_dispose_function(dispose: TGSourceDisposeFunc); cdecl;
+begin
+ LazGLib2.g_source_set_dispose_function(@self, dispose);
+end;
+
+procedure TGSource.set_funcs(funcs: PGSourceFuncs); cdecl;
+begin
+ LazGLib2.g_source_set_funcs(@self, funcs);
+end;
+
+procedure TGSource.set_name(name: Pgchar); cdecl;
+begin
+ LazGLib2.g_source_set_name(@self, name);
+end;
+
+procedure TGSource.set_priority(priority: gint); cdecl;
+begin
+ LazGLib2.g_source_set_priority(@self, priority);
+end;
+
+procedure TGSource.set_ready_time(ready_time: gint64); cdecl;
+begin
+ LazGLib2.g_source_set_ready_time(@self, ready_time);
+end;
+
+procedure TGSource.unref; cdecl;
+begin
+ LazGLib2.g_source_unref(@self);
+end;
+
+function TGSource.remove(tag: guint): gboolean; cdecl;
+begin
+ Result := LazGLib2.g_source_remove(tag);
+end;
+
+function TGSource.remove_by_funcs_user_data(funcs: PGSourceFuncs; user_data: gpointer): gboolean; cdecl;
+begin
+ Result := LazGLib2.g_source_remove_by_funcs_user_data(funcs, user_data);
+end;
+
+function TGSource.remove_by_user_data(user_data: gpointer): gboolean; cdecl;
+begin
+ Result := LazGLib2.g_source_remove_by_user_data(user_data);
+end;
+
+procedure TGSource.set_name_by_id(tag: guint; name: Pgchar); cdecl;
+begin
+ LazGLib2.g_source_set_name_by_id(tag, name);
+end;
+
+function TGKeyFile.new: PGKeyFile; cdecl;
+begin
+ Result := LazGLib2.g_key_file_new();
+end;
+
+procedure TGKeyFile.free; cdecl;
+begin
+ LazGLib2.g_key_file_free(@self);
+end;
+
+function TGKeyFile.get_boolean(group_name: Pgchar; key: Pgchar; error: PPGError): gboolean; cdecl;
+begin
+ Result := LazGLib2.g_key_file_get_boolean(@self, group_name, key, error);
+end;
+
+function TGKeyFile.get_boolean_list(group_name: Pgchar; key: Pgchar; length: Pgsize; error: PPGError): Pgboolean; cdecl;
+begin
+ Result := LazGLib2.g_key_file_get_boolean_list(@self, group_name, key, length, error);
+end;
+
+function TGKeyFile.get_comment(group_name: Pgchar; key: Pgchar; error: PPGError): Pgchar; cdecl;
+begin
+ Result := LazGLib2.g_key_file_get_comment(@self, group_name, key, error);
+end;
+
+function TGKeyFile.get_double(group_name: Pgchar; key: Pgchar; error: PPGError): gdouble; cdecl;
+begin
+ Result := LazGLib2.g_key_file_get_double(@self, group_name, key, error);
+end;
+
+function TGKeyFile.get_double_list(group_name: Pgchar; key: Pgchar; length: Pgsize; error: PPGError): Pgdouble; cdecl;
+begin
+ Result := LazGLib2.g_key_file_get_double_list(@self, group_name, key, length, error);
+end;
+
+function TGKeyFile.get_groups(length: Pgsize): PPgchar; cdecl;
+begin
+ Result := LazGLib2.g_key_file_get_groups(@self, length);
+end;
+
+function TGKeyFile.get_int64(group_name: Pgchar; key: Pgchar; error: PPGError): gint64; cdecl;
+begin
+ Result := LazGLib2.g_key_file_get_int64(@self, group_name, key, error);
+end;
+
+function TGKeyFile.get_integer(group_name: Pgchar; key: Pgchar; error: PPGError): gint; cdecl;
+begin
+ Result := LazGLib2.g_key_file_get_integer(@self, group_name, key, error);
+end;
+
+function TGKeyFile.get_integer_list(group_name: Pgchar; key: Pgchar; length: Pgsize; error: PPGError): Pgint; cdecl;
+begin
+ Result := LazGLib2.g_key_file_get_integer_list(@self, group_name, key, length, error);
+end;
+
+function TGKeyFile.get_keys(group_name: Pgchar; length: Pgsize; error: PPGError): PPgchar; cdecl;
+begin
+ Result := LazGLib2.g_key_file_get_keys(@self, group_name, length, error);
+end;
+
+function TGKeyFile.get_locale_for_key(group_name: Pgchar; key: Pgchar; locale: Pgchar): Pgchar; cdecl;
+begin
+ Result := LazGLib2.g_key_file_get_locale_for_key(@self, group_name, key, locale);
+end;
+
+function TGKeyFile.get_locale_string(group_name: Pgchar; key: Pgchar; locale: Pgchar; error: PPGError): Pgchar; cdecl;
+begin
+ Result := LazGLib2.g_key_file_get_locale_string(@self, group_name, key, locale, error);
+end;
+
+function TGKeyFile.get_locale_string_list(group_name: Pgchar; key: Pgchar; locale: Pgchar; length: Pgsize; error: PPGError): PPgchar; cdecl;
+begin
+ Result := LazGLib2.g_key_file_get_locale_string_list(@self, group_name, key, locale, length, error);
+end;
+
+function TGKeyFile.get_start_group: Pgchar; cdecl;
+begin
+ Result := LazGLib2.g_key_file_get_start_group(@self);
+end;
+
+function TGKeyFile.get_string(group_name: Pgchar; key: Pgchar; error: PPGError): Pgchar; cdecl;
+begin
+ Result := LazGLib2.g_key_file_get_string(@self, group_name, key, error);
+end;
+
+function TGKeyFile.get_string_list(group_name: Pgchar; key: Pgchar; length: Pgsize; error: PPGError): PPgchar; cdecl;
+begin
+ Result := LazGLib2.g_key_file_get_string_list(@self, group_name, key, length, error);
+end;
+
+function TGKeyFile.get_uint64(group_name: Pgchar; key: Pgchar; error: PPGError): guint64; cdecl;
+begin
+ Result := LazGLib2.g_key_file_get_uint64(@self, group_name, key, error);
+end;
+
+function TGKeyFile.get_value(group_name: Pgchar; key: Pgchar; error: PPGError): Pgchar; cdecl;
+begin
+ Result := LazGLib2.g_key_file_get_value(@self, group_name, key, error);
+end;
+
+function TGKeyFile.has_group(group_name: Pgchar): gboolean; cdecl;
+begin
+ Result := LazGLib2.g_key_file_has_group(@self, group_name);
+end;
+
+function TGKeyFile.has_key(group_name: Pgchar; key: Pgchar; error: PPGError): gboolean; cdecl;
+begin
+ Result := LazGLib2.g_key_file_has_key(@self, group_name, key, error);
+end;
+
+function TGKeyFile.load_from_bytes(bytes: PGBytes; flags: TGKeyFileFlags; error: PPGError): gboolean; cdecl;
+begin
+ Result := LazGLib2.g_key_file_load_from_bytes(@self, bytes, flags, error);
+end;
+
+function TGKeyFile.load_from_data(data: Pgchar; length: gsize; flags: TGKeyFileFlags; error: PPGError): gboolean; cdecl;
+begin
+ Result := LazGLib2.g_key_file_load_from_data(@self, data, length, flags, error);
+end;
+
+function TGKeyFile.load_from_data_dirs(file_: Pgchar; full_path: PPgchar; flags: TGKeyFileFlags; error: PPGError): gboolean; cdecl;
+begin
+ Result := LazGLib2.g_key_file_load_from_data_dirs(@self, file_, full_path, flags, error);
+end;
+
+function TGKeyFile.load_from_dirs(file_: Pgchar; search_dirs: PPgchar; full_path: PPgchar; flags: TGKeyFileFlags; error: PPGError): gboolean; cdecl;
+begin
+ Result := LazGLib2.g_key_file_load_from_dirs(@self, file_, search_dirs, full_path, flags, error);
+end;
+
+function TGKeyFile.load_from_file(file_: Pgchar; flags: TGKeyFileFlags; error: PPGError): gboolean; cdecl;
+begin
+ Result := LazGLib2.g_key_file_load_from_file(@self, file_, flags, error);
+end;
+
+function TGKeyFile.ref: PGKeyFile; cdecl;
+begin
+ Result := LazGLib2.g_key_file_ref(@self);
+end;
+
+function TGKeyFile.remove_comment(group_name: Pgchar; key: Pgchar; error: PPGError): gboolean; cdecl;
+begin
+ Result := LazGLib2.g_key_file_remove_comment(@self, group_name, key, error);
+end;
+
+function TGKeyFile.remove_group(group_name: Pgchar; error: PPGError): gboolean; cdecl;
+begin
+ Result := LazGLib2.g_key_file_remove_group(@self, group_name, error);
+end;
+
+function TGKeyFile.remove_key(group_name: Pgchar; key: Pgchar; error: PPGError): gboolean; cdecl;
+begin
+ Result := LazGLib2.g_key_file_remove_key(@self, group_name, key, error);
+end;
+
+function TGKeyFile.save_to_file(filename: Pgchar; error: PPGError): gboolean; cdecl;
+begin
+ Result := LazGLib2.g_key_file_save_to_file(@self, filename, error);
+end;
+
+procedure TGKeyFile.set_boolean(group_name: Pgchar; key: Pgchar; value: gboolean); cdecl;
+begin
+ LazGLib2.g_key_file_set_boolean(@self, group_name, key, value);
+end;
+
+procedure TGKeyFile.set_boolean_list(group_name: Pgchar; key: Pgchar; list: Pgboolean; length: gsize); cdecl;
+begin
+ LazGLib2.g_key_file_set_boolean_list(@self, group_name, key, list, length);
+end;
+
+function TGKeyFile.set_comment(group_name: Pgchar; key: Pgchar; comment: Pgchar; error: PPGError): gboolean; cdecl;
+begin
+ Result := LazGLib2.g_key_file_set_comment(@self, group_name, key, comment, error);
+end;
+
+procedure TGKeyFile.set_double(group_name: Pgchar; key: Pgchar; value: gdouble); cdecl;
+begin
+ LazGLib2.g_key_file_set_double(@self, group_name, key, value);
+end;
+
+procedure TGKeyFile.set_double_list(group_name: Pgchar; key: Pgchar; list: Pgdouble; length: gsize); cdecl;
+begin
+ LazGLib2.g_key_file_set_double_list(@self, group_name, key, list, length);
+end;
+
+procedure TGKeyFile.set_int64(group_name: Pgchar; key: Pgchar; value: gint64); cdecl;
+begin
+ LazGLib2.g_key_file_set_int64(@self, group_name, key, value);
+end;
+
+procedure TGKeyFile.set_integer(group_name: Pgchar; key: Pgchar; value: gint); cdecl;
+begin
+ LazGLib2.g_key_file_set_integer(@self, group_name, key, value);
+end;
+
+procedure TGKeyFile.set_integer_list(group_name: Pgchar; key: Pgchar; list: Pgint; length: gsize); cdecl;
+begin
+ LazGLib2.g_key_file_set_integer_list(@self, group_name, key, list, length);
+end;
+
+procedure TGKeyFile.set_list_separator(separator: gchar); cdecl;
+begin
+ LazGLib2.g_key_file_set_list_separator(@self, separator);
+end;
+
+procedure TGKeyFile.set_locale_string(group_name: Pgchar; key: Pgchar; locale: Pgchar; string_: Pgchar); cdecl;
+begin
+ LazGLib2.g_key_file_set_locale_string(@self, group_name, key, locale, string_);
+end;
+
+procedure TGKeyFile.set_locale_string_list(group_name: Pgchar; key: Pgchar; locale: Pgchar; list: PPgchar; length: gsize); cdecl;
+begin
+ LazGLib2.g_key_file_set_locale_string_list(@self, group_name, key, locale, list, length);
+end;
+
+procedure TGKeyFile.set_string(group_name: Pgchar; key: Pgchar; string_: Pgchar); cdecl;
+begin
+ LazGLib2.g_key_file_set_string(@self, group_name, key, string_);
+end;
+
+procedure TGKeyFile.set_string_list(group_name: Pgchar; key: Pgchar; list: PPgchar; length: gsize); cdecl;
+begin
+ LazGLib2.g_key_file_set_string_list(@self, group_name, key, list, length);
+end;
+
+procedure TGKeyFile.set_uint64(group_name: Pgchar; key: Pgchar; value: guint64); cdecl;
+begin
+ LazGLib2.g_key_file_set_uint64(@self, group_name, key, value);
+end;
+
+procedure TGKeyFile.set_value(group_name: Pgchar; key: Pgchar; value: Pgchar); cdecl;
+begin
+ LazGLib2.g_key_file_set_value(@self, group_name, key, value);
+end;
+
+function TGKeyFile.to_data(length: Pgsize; error: PPGError): Pgchar; cdecl;
+begin
+ Result := LazGLib2.g_key_file_to_data(@self, length, error);
+end;
+
+procedure TGKeyFile.unref; cdecl;
+begin
+ LazGLib2.g_key_file_unref(@self);
+end;
+
+function TGKeyFile.error_quark: TGQuark; cdecl;
+begin
+ Result := LazGLib2.g_key_file_error_quark();
+end;
+
+function TGMainContext.new: PGMainContext; cdecl;
+begin
+ Result := LazGLib2.g_main_context_new();
+end;
+
+function TGMainContext.acquire: gboolean; cdecl;
+begin
+ Result := LazGLib2.g_main_context_acquire(@self);
+end;
+
+procedure TGMainContext.add_poll(fd: PGPollFD; priority: gint); cdecl;
+begin
+ LazGLib2.g_main_context_add_poll(@self, fd, priority);
+end;
+
+function TGMainContext.check(max_priority: gint; fds: PGPollFD; n_fds: gint): gboolean; cdecl;
+begin
+ Result := LazGLib2.g_main_context_check(@self, max_priority, fds, n_fds);
+end;
+
+procedure TGMainContext.dispatch; cdecl;
+begin
+ LazGLib2.g_main_context_dispatch(@self);
+end;
+
+function TGMainContext.find_source_by_funcs_user_data(funcs: PGSourceFuncs; user_data: gpointer): PGSource; cdecl;
+begin
+ Result := LazGLib2.g_main_context_find_source_by_funcs_user_data(@self, funcs, user_data);
+end;
+
+function TGMainContext.find_source_by_id(source_id: guint): PGSource; cdecl;
+begin
+ Result := LazGLib2.g_main_context_find_source_by_id(@self, source_id);
+end;
+
+function TGMainContext.find_source_by_user_data(user_data: gpointer): PGSource; cdecl;
+begin
+ Result := LazGLib2.g_main_context_find_source_by_user_data(@self, user_data);
+end;
+
+function TGMainContext.get_poll_func: TGPollFunc; cdecl;
+begin
+ Result := LazGLib2.g_main_context_get_poll_func(@self);
+end;
+
+procedure TGMainContext.invoke(function_: TGSourceFunc; data: gpointer); cdecl;
+begin
+ LazGLib2.g_main_context_invoke(@self, function_, data);
+end;
+
+procedure TGMainContext.invoke_full(priority: gint; function_: TGSourceFunc; data: gpointer; notify: TGDestroyNotify); cdecl;
+begin
+ LazGLib2.g_main_context_invoke_full(@self, priority, function_, data, notify);
+end;
+
+function TGMainContext.is_owner: gboolean; cdecl;
+begin
+ Result := LazGLib2.g_main_context_is_owner(@self);
+end;
+
+function TGMainContext.iteration(may_block: gboolean): gboolean; cdecl;
+begin
+ Result := LazGLib2.g_main_context_iteration(@self, may_block);
+end;
+
+function TGMainContext.pending: gboolean; cdecl;
+begin
+ Result := LazGLib2.g_main_context_pending(@self);
+end;
+
+procedure TGMainContext.pop_thread_default; cdecl;
+begin
+ LazGLib2.g_main_context_pop_thread_default(@self);
+end;
+
+function TGMainContext.prepare(priority: Pgint): gboolean; cdecl;
+begin
+ Result := LazGLib2.g_main_context_prepare(@self, priority);
+end;
+
+procedure TGMainContext.push_thread_default; cdecl;
+begin
+ LazGLib2.g_main_context_push_thread_default(@self);
+end;
+
+function TGMainContext.query(max_priority: gint; timeout_: Pgint; fds: PGPollFD; n_fds: gint): gint; cdecl;
+begin
+ Result := LazGLib2.g_main_context_query(@self, max_priority, timeout_, fds, n_fds);
+end;
+
+function TGMainContext.ref: PGMainContext; cdecl;
+begin
+ Result := LazGLib2.g_main_context_ref(@self);
+end;
+
+procedure TGMainContext.release; cdecl;
+begin
+ LazGLib2.g_main_context_release(@self);
+end;
+
+procedure TGMainContext.remove_poll(fd: PGPollFD); cdecl;
+begin
+ LazGLib2.g_main_context_remove_poll(@self, fd);
+end;
+
+procedure TGMainContext.set_poll_func(func: TGPollFunc); cdecl;
+begin
+ LazGLib2.g_main_context_set_poll_func(@self, func);
+end;
+
+procedure TGMainContext.unref; cdecl;
+begin
+ LazGLib2.g_main_context_unref(@self);
+end;
+
+procedure TGMainContext.wakeup; cdecl;
+begin
+ LazGLib2.g_main_context_wakeup(@self);
+end;
+
+function TGMainContext.default_: PGMainContext; cdecl;
+begin
+ Result := LazGLib2.g_main_context_default();
+end;
+
+function TGMainContext.get_thread_default: PGMainContext; cdecl;
+begin
+ Result := LazGLib2.g_main_context_get_thread_default();
+end;
+
+function TGMainContext.ref_thread_default: PGMainContext; cdecl;
+begin
+ Result := LazGLib2.g_main_context_ref_thread_default();
+end;
+
+function TGMainLoop.new(context: PGMainContext; is_running: gboolean): PGMainLoop; cdecl;
+begin
+ Result := LazGLib2.g_main_loop_new(context, is_running);
+end;
+
+function TGMainLoop.get_context: PGMainContext; cdecl;
+begin
+ Result := LazGLib2.g_main_loop_get_context(@self);
+end;
+
+function TGMainLoop.is_running: gboolean; cdecl;
+begin
+ Result := LazGLib2.g_main_loop_is_running(@self);
+end;
+
+procedure TGMainLoop.quit; cdecl;
+begin
+ LazGLib2.g_main_loop_quit(@self);
+end;
+
+function TGMainLoop.ref: PGMainLoop; cdecl;
+begin
+ Result := LazGLib2.g_main_loop_ref(@self);
+end;
+
+procedure TGMainLoop.run; cdecl;
+begin
+ LazGLib2.g_main_loop_run(@self);
+end;
+
+procedure TGMainLoop.unref; cdecl;
+begin
+ LazGLib2.g_main_loop_unref(@self);
+end;
+
+function TGMappedFile.new(filename: Pgchar; writable: gboolean; error: PPGError): PGMappedFile; cdecl;
+begin
+ Result := LazGLib2.g_mapped_file_new(filename, writable, error);
+end;
+
+function TGMappedFile.new_from_fd(fd: gint; writable: gboolean; error: PPGError): PGMappedFile; cdecl;
+begin
+ Result := LazGLib2.g_mapped_file_new_from_fd(fd, writable, error);
+end;
+
+function TGMappedFile.get_bytes: PGBytes; cdecl;
+begin
+ Result := LazGLib2.g_mapped_file_get_bytes(@self);
+end;
+
+function TGMappedFile.get_contents: Pgchar; cdecl;
+begin
+ Result := LazGLib2.g_mapped_file_get_contents(@self);
+end;
+
+function TGMappedFile.get_length: gsize; cdecl;
+begin
+ Result := LazGLib2.g_mapped_file_get_length(@self);
+end;
+
+function TGMappedFile.ref: PGMappedFile; cdecl;
+begin
+ Result := LazGLib2.g_mapped_file_ref(@self);
+end;
+
+procedure TGMappedFile.unref; cdecl;
+begin
+ LazGLib2.g_mapped_file_unref(@self);
+end;
+
+function TGMarkupParseContext.new(parser: PGMarkupParser; flags: TGMarkupParseFlags; user_data: gpointer; user_data_dnotify: TGDestroyNotify): PGMarkupParseContext; cdecl;
+begin
+ Result := LazGLib2.g_markup_parse_context_new(parser, flags, user_data, user_data_dnotify);
+end;
+
+function TGMarkupParseContext.end_parse(error: PPGError): gboolean; cdecl;
+begin
+ Result := LazGLib2.g_markup_parse_context_end_parse(@self, error);
+end;
+
+procedure TGMarkupParseContext.free; cdecl;
+begin
+ LazGLib2.g_markup_parse_context_free(@self);
+end;
+
+function TGMarkupParseContext.get_element: Pgchar; cdecl;
+begin
+ Result := LazGLib2.g_markup_parse_context_get_element(@self);
+end;
+
+function TGMarkupParseContext.get_element_stack: PGSList; cdecl;
+begin
+ Result := LazGLib2.g_markup_parse_context_get_element_stack(@self);
+end;
+
+procedure TGMarkupParseContext.get_position(line_number: Pgint; char_number: Pgint); cdecl;
+begin
+ LazGLib2.g_markup_parse_context_get_position(@self, line_number, char_number);
+end;
+
+function TGMarkupParseContext.get_user_data: gpointer; cdecl;
+begin
+ Result := LazGLib2.g_markup_parse_context_get_user_data(@self);
+end;
+
+function TGMarkupParseContext.parse(text: Pgchar; text_len: gssize; error: PPGError): gboolean; cdecl;
+begin
+ Result := LazGLib2.g_markup_parse_context_parse(@self, text, text_len, error);
+end;
+
+function TGMarkupParseContext.pop: gpointer; cdecl;
+begin
+ Result := LazGLib2.g_markup_parse_context_pop(@self);
+end;
+
+procedure TGMarkupParseContext.push(parser: PGMarkupParser; user_data: gpointer); cdecl;
+begin
+ LazGLib2.g_markup_parse_context_push(@self, parser, user_data);
+end;
+
+function TGMarkupParseContext.ref: PGMarkupParseContext; cdecl;
+begin
+ Result := LazGLib2.g_markup_parse_context_ref(@self);
+end;
+
+procedure TGMarkupParseContext.unref; cdecl;
+begin
+ LazGLib2.g_markup_parse_context_unref(@self);
+end;
+
+function TGSList.alloc: PGSList; cdecl;
+begin
+ Result := LazGLib2.g_slist_alloc();
+end;
+
+function TGSList.append(list: PGSList; data: gpointer): PGSList; cdecl;
+begin
+ Result := LazGLib2.g_slist_append(list, data);
+end;
+
+function TGSList.concat(list1: PGSList; list2: PGSList): PGSList; cdecl;
+begin
+ Result := LazGLib2.g_slist_concat(list1, list2);
+end;
+
+function TGSList.copy(list: PGSList): PGSList; cdecl;
+begin
+ Result := LazGLib2.g_slist_copy(list);
+end;
+
+function TGSList.copy_deep(list: PGSList; func: TGCopyFunc; user_data: gpointer): PGSList; cdecl;
+begin
+ Result := LazGLib2.g_slist_copy_deep(list, func, user_data);
+end;
+
+function TGSList.delete_link(list: PGSList; link_: PGSList): PGSList; cdecl;
+begin
+ Result := LazGLib2.g_slist_delete_link(list, link_);
+end;
+
+function TGSList.find(list: PGSList; data: Pgpointer): PGSList; cdecl;
+begin
+ Result := LazGLib2.g_slist_find(list, data);
+end;
+
+function TGSList.find_custom(list: PGSList; data: Pgpointer; func: TGCompareFunc): PGSList; cdecl;
+begin
+ Result := LazGLib2.g_slist_find_custom(list, data, func);
+end;
+
+procedure TGSList.foreach(list: PGSList; func: TGFunc; user_data: gpointer); cdecl;
+begin
+ LazGLib2.g_slist_foreach(list, func, user_data);
+end;
+
+procedure TGSList.free(list: PGSList); cdecl;
+begin
+ LazGLib2.g_slist_free(list);
+end;
+
+procedure TGSList.free_1(list: PGSList); cdecl;
+begin
+ LazGLib2.g_slist_free_1(list);
+end;
+
+procedure TGSList.free_full(list: PGSList; free_func: TGDestroyNotify); cdecl;
+begin
+ LazGLib2.g_slist_free_full(list, free_func);
+end;
+
+function TGSList.index(list: PGSList; data: Pgpointer): gint; cdecl;
+begin
+ Result := LazGLib2.g_slist_index(list, data);
+end;
+
+function TGSList.insert(list: PGSList; data: gpointer; position: gint): PGSList; cdecl;
+begin
+ Result := LazGLib2.g_slist_insert(list, data, position);
+end;
+
+function TGSList.insert_before(slist: PGSList; sibling: PGSList; data: gpointer): PGSList; cdecl;
+begin
+ Result := LazGLib2.g_slist_insert_before(slist, sibling, data);
+end;
+
+function TGSList.insert_sorted(list: PGSList; data: gpointer; func: TGCompareFunc): PGSList; cdecl;
+begin
+ Result := LazGLib2.g_slist_insert_sorted(list, data, func);
+end;
+
+function TGSList.insert_sorted_with_data(list: PGSList; data: gpointer; func: TGCompareDataFunc; user_data: gpointer): PGSList; cdecl;
+begin
+ Result := LazGLib2.g_slist_insert_sorted_with_data(list, data, func, user_data);
+end;
+
+function TGSList.last(list: PGSList): PGSList; cdecl;
+begin
+ Result := LazGLib2.g_slist_last(list);
+end;
+
+function TGSList.length(list: PGSList): guint; cdecl;
+begin
+ Result := LazGLib2.g_slist_length(list);
+end;
+
+function TGSList.nth(list: PGSList; n: guint): PGSList; cdecl;
+begin
+ Result := LazGLib2.g_slist_nth(list, n);
+end;
+
+function TGSList.nth_data(list: PGSList; n: guint): gpointer; cdecl;
+begin
+ Result := LazGLib2.g_slist_nth_data(list, n);
+end;
+
+function TGSList.position(list: PGSList; llink: PGSList): gint; cdecl;
+begin
+ Result := LazGLib2.g_slist_position(list, llink);
+end;
+
+function TGSList.prepend(list: PGSList; data: gpointer): PGSList; cdecl;
+begin
+ Result := LazGLib2.g_slist_prepend(list, data);
+end;
+
+function TGSList.remove(list: PGSList; data: Pgpointer): PGSList; cdecl;
+begin
+ Result := LazGLib2.g_slist_remove(list, data);
+end;
+
+function TGSList.remove_all(list: PGSList; data: Pgpointer): PGSList; cdecl;
+begin
+ Result := LazGLib2.g_slist_remove_all(list, data);
+end;
+
+function TGSList.remove_link(list: PGSList; link_: PGSList): PGSList; cdecl;
+begin
+ Result := LazGLib2.g_slist_remove_link(list, link_);
+end;
+
+function TGSList.reverse(list: PGSList): PGSList; cdecl;
+begin
+ Result := LazGLib2.g_slist_reverse(list);
+end;
+
+function TGSList.sort(list: PGSList; compare_func: TGCompareFunc): PGSList; cdecl;
+begin
+ Result := LazGLib2.g_slist_sort(list, compare_func);
+end;
+
+function TGSList.sort_with_data(list: PGSList; compare_func: TGCompareDataFunc; user_data: gpointer): PGSList; cdecl;
+begin
+ Result := LazGLib2.g_slist_sort_with_data(list, compare_func, user_data);
+end;
+
+function TGMatchInfo.expand_references(string_to_expand: Pgchar; error: PPGError): Pgchar; cdecl;
+begin
+ Result := LazGLib2.g_match_info_expand_references(@self, string_to_expand, error);
+end;
+
+function TGMatchInfo.fetch(match_num: gint): Pgchar; cdecl;
+begin
+ Result := LazGLib2.g_match_info_fetch(@self, match_num);
+end;
+
+function TGMatchInfo.fetch_all: PPgchar; cdecl;
+begin
+ Result := LazGLib2.g_match_info_fetch_all(@self);
+end;
+
+function TGMatchInfo.fetch_named(name: Pgchar): Pgchar; cdecl;
+begin
+ Result := LazGLib2.g_match_info_fetch_named(@self, name);
+end;
+
+function TGMatchInfo.fetch_named_pos(name: Pgchar; start_pos: Pgint; end_pos: Pgint): gboolean; cdecl;
+begin
+ Result := LazGLib2.g_match_info_fetch_named_pos(@self, name, start_pos, end_pos);
+end;
+
+function TGMatchInfo.fetch_pos(match_num: gint; start_pos: Pgint; end_pos: Pgint): gboolean; cdecl;
+begin
+ Result := LazGLib2.g_match_info_fetch_pos(@self, match_num, start_pos, end_pos);
+end;
+
+procedure TGMatchInfo.free; cdecl;
+begin
+ LazGLib2.g_match_info_free(@self);
+end;
+
+function TGMatchInfo.get_match_count: gint; cdecl;
+begin
+ Result := LazGLib2.g_match_info_get_match_count(@self);
+end;
+
+function TGMatchInfo.get_regex: PGRegex; cdecl;
+begin
+ Result := LazGLib2.g_match_info_get_regex(@self);
+end;
+
+function TGMatchInfo.get_string: Pgchar; cdecl;
+begin
+ Result := LazGLib2.g_match_info_get_string(@self);
+end;
+
+function TGMatchInfo.is_partial_match: gboolean; cdecl;
+begin
+ Result := LazGLib2.g_match_info_is_partial_match(@self);
+end;
+
+function TGMatchInfo.matches: gboolean; cdecl;
+begin
+ Result := LazGLib2.g_match_info_matches(@self);
+end;
+
+function TGMatchInfo.next(error: PPGError): gboolean; cdecl;
+begin
+ Result := LazGLib2.g_match_info_next(@self, error);
+end;
+
+function TGMatchInfo.ref: PGMatchInfo; cdecl;
+begin
+ Result := LazGLib2.g_match_info_ref(@self);
+end;
+
+procedure TGMatchInfo.unref; cdecl;
+begin
+ LazGLib2.g_match_info_unref(@self);
+end;
+
+function TGRegex.new(pattern: Pgchar; compile_options: TGRegexCompileFlags; match_options: TGRegexMatchFlags; error: PPGError): PGRegex; cdecl;
+begin
+ Result := LazGLib2.g_regex_new(pattern, compile_options, match_options, error);
+end;
+
+function TGRegex.get_capture_count: gint; cdecl;
+begin
+ Result := LazGLib2.g_regex_get_capture_count(@self);
+end;
+
+function TGRegex.get_compile_flags: TGRegexCompileFlags; cdecl;
+begin
+ Result := LazGLib2.g_regex_get_compile_flags(@self);
+end;
+
+function TGRegex.get_has_cr_or_lf: gboolean; cdecl;
+begin
+ Result := LazGLib2.g_regex_get_has_cr_or_lf(@self);
+end;
+
+function TGRegex.get_match_flags: TGRegexMatchFlags; cdecl;
+begin
+ Result := LazGLib2.g_regex_get_match_flags(@self);
+end;
+
+function TGRegex.get_max_backref: gint; cdecl;
+begin
+ Result := LazGLib2.g_regex_get_max_backref(@self);
+end;
+
+function TGRegex.get_max_lookbehind: gint; cdecl;
+begin
+ Result := LazGLib2.g_regex_get_max_lookbehind(@self);
+end;
+
+function TGRegex.get_pattern: Pgchar; cdecl;
+begin
+ Result := LazGLib2.g_regex_get_pattern(@self);
+end;
+
+function TGRegex.get_string_number(name: Pgchar): gint; cdecl;
+begin
+ Result := LazGLib2.g_regex_get_string_number(@self, name);
+end;
+
+function TGRegex.match(string_: Pgchar; match_options: TGRegexMatchFlags; match_info: PPGMatchInfo): gboolean; cdecl;
+begin
+ Result := LazGLib2.g_regex_match(@self, string_, match_options, match_info);
+end;
+
+function TGRegex.match_all(string_: Pgchar; match_options: TGRegexMatchFlags; match_info: PPGMatchInfo): gboolean; cdecl;
+begin
+ Result := LazGLib2.g_regex_match_all(@self, string_, match_options, match_info);
+end;
+
+function TGRegex.match_all_full(string_: Pgchar; string_len: gssize; start_position: gint; match_options: TGRegexMatchFlags; match_info: PPGMatchInfo; error: PPGError): gboolean; cdecl;
+begin
+ Result := LazGLib2.g_regex_match_all_full(@self, string_, string_len, start_position, match_options, match_info, error);
+end;
+
+function TGRegex.match_full(string_: Pgchar; string_len: gssize; start_position: gint; match_options: TGRegexMatchFlags; match_info: PPGMatchInfo; error: PPGError): gboolean; cdecl;
+begin
+ Result := LazGLib2.g_regex_match_full(@self, string_, string_len, start_position, match_options, match_info, error);
+end;
+
+function TGRegex.ref: PGRegex; cdecl;
+begin
+ Result := LazGLib2.g_regex_ref(@self);
+end;
+
+function TGRegex.replace(string_: Pgchar; string_len: gssize; start_position: gint; replacement: Pgchar; match_options: TGRegexMatchFlags; error: PPGError): Pgchar; cdecl;
+begin
+ Result := LazGLib2.g_regex_replace(@self, string_, string_len, start_position, replacement, match_options, error);
+end;
+
+function TGRegex.replace_eval(string_: Pgchar; string_len: gssize; start_position: gint; match_options: TGRegexMatchFlags; eval: TGRegexEvalCallback; user_data: gpointer; error: PPGError): Pgchar; cdecl;
+begin
+ Result := LazGLib2.g_regex_replace_eval(@self, string_, string_len, start_position, match_options, eval, user_data, error);
+end;
+
+function TGRegex.replace_literal(string_: Pgchar; string_len: gssize; start_position: gint; replacement: Pgchar; match_options: TGRegexMatchFlags; error: PPGError): Pgchar; cdecl;
+begin
+ Result := LazGLib2.g_regex_replace_literal(@self, string_, string_len, start_position, replacement, match_options, error);
+end;
+
+function TGRegex.split(string_: Pgchar; match_options: TGRegexMatchFlags): PPgchar; cdecl;
+begin
+ Result := LazGLib2.g_regex_split(@self, string_, match_options);
+end;
+
+function TGRegex.split_full(string_: Pgchar; string_len: gssize; start_position: gint; match_options: TGRegexMatchFlags; max_tokens: gint; error: PPGError): PPgchar; cdecl;
+begin
+ Result := LazGLib2.g_regex_split_full(@self, string_, string_len, start_position, match_options, max_tokens, error);
+end;
+
+procedure TGRegex.unref; cdecl;
+begin
+ LazGLib2.g_regex_unref(@self);
+end;
+
+function TGRegex.check_replacement(replacement: Pgchar; has_references: Pgboolean; error: PPGError): gboolean; cdecl;
+begin
+ Result := LazGLib2.g_regex_check_replacement(replacement, has_references, error);
+end;
+
+function TGRegex.error_quark: TGQuark; cdecl;
+begin
+ Result := LazGLib2.g_regex_error_quark();
+end;
+
+function TGRegex.escape_nul(string_: Pgchar; length: gint): Pgchar; cdecl;
+begin
+ Result := LazGLib2.g_regex_escape_nul(string_, length);
+end;
+
+function TGRegex.escape_string(string_: Pgchar; length: gint): Pgchar; cdecl;
+begin
+ Result := LazGLib2.g_regex_escape_string(string_, length);
+end;
+
+function TGRegex.match_simple(pattern: Pgchar; string_: Pgchar; compile_options: TGRegexCompileFlags; match_options: TGRegexMatchFlags): gboolean; cdecl;
+begin
+ Result := LazGLib2.g_regex_match_simple(pattern, string_, compile_options, match_options);
+end;
+
+function TGRegex.split_simple(pattern: Pgchar; string_: Pgchar; compile_options: TGRegexCompileFlags; match_options: TGRegexMatchFlags): PPgchar; cdecl;
+begin
+ Result := LazGLib2.g_regex_split_simple(pattern, string_, compile_options, match_options);
+end;
+
+function TGNode.child_index(data: gpointer): gint; cdecl;
+begin
+ Result := LazGLib2.g_node_child_index(@self, data);
+end;
+
+function TGNode.child_position(child: PGNode): gint; cdecl;
+begin
+ Result := LazGLib2.g_node_child_position(@self, child);
+end;
+
+procedure TGNode.children_foreach(flags: TGTraverseFlags; func: TGNodeForeachFunc; data: gpointer); cdecl;
+begin
+ LazGLib2.g_node_children_foreach(@self, flags, func, data);
+end;
+
+function TGNode.copy: PGNode; cdecl;
+begin
+ Result := LazGLib2.g_node_copy(@self);
+end;
+
+function TGNode.copy_deep(copy_func: TGCopyFunc; data: gpointer): PGNode; cdecl;
+begin
+ Result := LazGLib2.g_node_copy_deep(@self, copy_func, data);
+end;
+
+function TGNode.depth: guint; cdecl;
+begin
+ Result := LazGLib2.g_node_depth(@self);
+end;
+
+procedure TGNode.destroy_; cdecl;
+begin
+ LazGLib2.g_node_destroy(@self);
+end;
+
+function TGNode.find(order: TGTraverseType; flags: TGTraverseFlags; data: gpointer): PGNode; cdecl;
+begin
+ Result := LazGLib2.g_node_find(@self, order, flags, data);
+end;
+
+function TGNode.find_child(flags: TGTraverseFlags; data: gpointer): PGNode; cdecl;
+begin
+ Result := LazGLib2.g_node_find_child(@self, flags, data);
+end;
+
+function TGNode.first_sibling: PGNode; cdecl;
+begin
+ Result := LazGLib2.g_node_first_sibling(@self);
+end;
+
+function TGNode.get_root: PGNode; cdecl;
+begin
+ Result := LazGLib2.g_node_get_root(@self);
+end;
+
+function TGNode.insert(position: gint; node: PGNode): PGNode; cdecl;
+begin
+ Result := LazGLib2.g_node_insert(@self, position, node);
+end;
+
+function TGNode.insert_after(sibling: PGNode; node: PGNode): PGNode; cdecl;
+begin
+ Result := LazGLib2.g_node_insert_after(@self, sibling, node);
+end;
+
+function TGNode.insert_before(sibling: PGNode; node: PGNode): PGNode; cdecl;
+begin
+ Result := LazGLib2.g_node_insert_before(@self, sibling, node);
+end;
+
+function TGNode.is_ancestor(descendant: PGNode): gboolean; cdecl;
+begin
+ Result := LazGLib2.g_node_is_ancestor(@self, descendant);
+end;
+
+function TGNode.last_child: PGNode; cdecl;
+begin
+ Result := LazGLib2.g_node_last_child(@self);
+end;
+
+function TGNode.last_sibling: PGNode; cdecl;
+begin
+ Result := LazGLib2.g_node_last_sibling(@self);
+end;
+
+function TGNode.max_height: guint; cdecl;
+begin
+ Result := LazGLib2.g_node_max_height(@self);
+end;
+
+function TGNode.n_children: guint; cdecl;
+begin
+ Result := LazGLib2.g_node_n_children(@self);
+end;
+
+function TGNode.n_nodes(flags: TGTraverseFlags): guint; cdecl;
+begin
+ Result := LazGLib2.g_node_n_nodes(@self, flags);
+end;
+
+function TGNode.nth_child(n: guint): PGNode; cdecl;
+begin
+ Result := LazGLib2.g_node_nth_child(@self, n);
+end;
+
+function TGNode.prepend(node: PGNode): PGNode; cdecl;
+begin
+ Result := LazGLib2.g_node_prepend(@self, node);
+end;
+
+procedure TGNode.reverse_children; cdecl;
+begin
+ LazGLib2.g_node_reverse_children(@self);
+end;
+
+procedure TGNode.traverse(order: TGTraverseType; flags: TGTraverseFlags; max_depth: gint; func: TGNodeTraverseFunc; data: gpointer); cdecl;
+begin
+ LazGLib2.g_node_traverse(@self, order, flags, max_depth, func, data);
+end;
+
+procedure TGNode.unlink; cdecl;
+begin
+ LazGLib2.g_node_unlink(@self);
+end;
+
+function TGNode.new(data: gpointer): PGNode; cdecl;
+begin
+ Result := LazGLib2.g_node_new(data);
+end;
+
+function TGOnce.impl(func: TGThreadFunc; arg: gpointer): gpointer; cdecl;
+begin
+ Result := LazGLib2.g_once_impl(@self, func, arg);
+end;
+
+function TGOnce.init_enter(location: Pgpointer): gboolean; cdecl;
+begin
+ Result := LazGLib2.g_once_init_enter(location);
+end;
+
+procedure TGOnce.init_leave(location: Pgpointer; result_: gsize); cdecl;
+begin
+ LazGLib2.g_once_init_leave(location, result_);
+end;
+
+procedure TGOptionContext.add_group(group: PGOptionGroup); cdecl;
+begin
+ LazGLib2.g_option_context_add_group(@self, group);
+end;
+
+procedure TGOptionContext.add_main_entries(entries: PGOptionEntry; translation_domain: Pgchar); cdecl;
+begin
+ LazGLib2.g_option_context_add_main_entries(@self, entries, translation_domain);
+end;
+
+procedure TGOptionContext.free; cdecl;
+begin
+ LazGLib2.g_option_context_free(@self);
+end;
+
+function TGOptionContext.get_description: Pgchar; cdecl;
+begin
+ Result := LazGLib2.g_option_context_get_description(@self);
+end;
+
+function TGOptionContext.get_help(main_help: gboolean; group: PGOptionGroup): Pgchar; cdecl;
+begin
+ Result := LazGLib2.g_option_context_get_help(@self, main_help, group);
+end;
+
+function TGOptionContext.get_help_enabled: gboolean; cdecl;
+begin
+ Result := LazGLib2.g_option_context_get_help_enabled(@self);
+end;
+
+function TGOptionContext.get_ignore_unknown_options: gboolean; cdecl;
+begin
+ Result := LazGLib2.g_option_context_get_ignore_unknown_options(@self);
+end;
+
+function TGOptionContext.get_main_group: PGOptionGroup; cdecl;
+begin
+ Result := LazGLib2.g_option_context_get_main_group(@self);
+end;
+
+function TGOptionContext.get_strict_posix: gboolean; cdecl;
+begin
+ Result := LazGLib2.g_option_context_get_strict_posix(@self);
+end;
+
+function TGOptionContext.get_summary: Pgchar; cdecl;
+begin
+ Result := LazGLib2.g_option_context_get_summary(@self);
+end;
+
+function TGOptionContext.parse(argc: Pgint; argv: PPPgchar; error: PPGError): gboolean; cdecl;
+begin
+ Result := LazGLib2.g_option_context_parse(@self, argc, argv, error);
+end;
+
+function TGOptionContext.parse_strv(arguments: PPPgchar; error: PPGError): gboolean; cdecl;
+begin
+ Result := LazGLib2.g_option_context_parse_strv(@self, arguments, error);
+end;
+
+procedure TGOptionContext.set_description(description: Pgchar); cdecl;
+begin
+ LazGLib2.g_option_context_set_description(@self, description);
+end;
+
+procedure TGOptionContext.set_help_enabled(help_enabled: gboolean); cdecl;
+begin
+ LazGLib2.g_option_context_set_help_enabled(@self, help_enabled);
+end;
+
+procedure TGOptionContext.set_ignore_unknown_options(ignore_unknown: gboolean); cdecl;
+begin
+ LazGLib2.g_option_context_set_ignore_unknown_options(@self, ignore_unknown);
+end;
+
+procedure TGOptionContext.set_main_group(group: PGOptionGroup); cdecl;
+begin
+ LazGLib2.g_option_context_set_main_group(@self, group);
+end;
+
+procedure TGOptionContext.set_strict_posix(strict_posix: gboolean); cdecl;
+begin
+ LazGLib2.g_option_context_set_strict_posix(@self, strict_posix);
+end;
+
+procedure TGOptionContext.set_summary(summary: Pgchar); cdecl;
+begin
+ LazGLib2.g_option_context_set_summary(@self, summary);
+end;
+
+procedure TGOptionContext.set_translate_func(func: TGTranslateFunc; data: gpointer; destroy_notify: TGDestroyNotify); cdecl;
+begin
+ LazGLib2.g_option_context_set_translate_func(@self, func, data, destroy_notify);
+end;
+
+procedure TGOptionContext.set_translation_domain(domain: Pgchar); cdecl;
+begin
+ LazGLib2.g_option_context_set_translation_domain(@self, domain);
+end;
+
+function TGOptionContext.new(parameter_string: Pgchar): PGOptionContext; cdecl;
+begin
+ Result := LazGLib2.g_option_context_new(parameter_string);
+end;
+
+function TGOptionGroup.new(name: Pgchar; description: Pgchar; help_description: Pgchar; user_data: gpointer; destroy_: TGDestroyNotify): PGOptionGroup; cdecl;
+begin
+ Result := LazGLib2.g_option_group_new(name, description, help_description, user_data, destroy_);
+end;
+
+procedure TGOptionGroup.add_entries(entries: PGOptionEntry); cdecl;
+begin
+ LazGLib2.g_option_group_add_entries(@self, entries);
+end;
+
+function TGOptionGroup.ref: PGOptionGroup; cdecl;
+begin
+ Result := LazGLib2.g_option_group_ref(@self);
+end;
+
+procedure TGOptionGroup.set_error_hook(error_func: TGOptionErrorFunc); cdecl;
+begin
+ LazGLib2.g_option_group_set_error_hook(@self, error_func);
+end;
+
+procedure TGOptionGroup.set_parse_hooks(pre_parse_func: TGOptionParseFunc; post_parse_func: TGOptionParseFunc); cdecl;
+begin
+ LazGLib2.g_option_group_set_parse_hooks(@self, pre_parse_func, post_parse_func);
+end;
+
+procedure TGOptionGroup.set_translate_func(func: TGTranslateFunc; data: gpointer; destroy_notify: TGDestroyNotify); cdecl;
+begin
+ LazGLib2.g_option_group_set_translate_func(@self, func, data, destroy_notify);
+end;
+
+procedure TGOptionGroup.set_translation_domain(domain: Pgchar); cdecl;
+begin
+ LazGLib2.g_option_group_set_translation_domain(@self, domain);
+end;
+
+procedure TGOptionGroup.unref; cdecl;
+begin
+ LazGLib2.g_option_group_unref(@self);
+end;
+
+function TGPatternSpec.new(pattern: Pgchar): PGPatternSpec; cdecl;
+begin
+ Result := LazGLib2.g_pattern_spec_new(pattern);
+end;
+
+function TGPatternSpec.equal(pspec2: PGPatternSpec): gboolean; cdecl;
+begin
+ Result := LazGLib2.g_pattern_spec_equal(@self, pspec2);
+end;
+
+procedure TGPatternSpec.free; cdecl;
+begin
+ LazGLib2.g_pattern_spec_free(@self);
+end;
+
+function TGPrivate.get: gpointer; cdecl;
+begin
+ Result := LazGLib2.g_private_get(@self);
+end;
+
+procedure TGPrivate.replace(value: gpointer); cdecl;
+begin
+ LazGLib2.g_private_replace(@self, value);
+end;
+
+procedure TGPrivate.set_(value: gpointer); cdecl;
+begin
+ LazGLib2.g_private_set(@self, value);
+end;
+
+procedure TGPtrArray.add(array_: Pgpointer; data: gpointer); cdecl;
+begin
+ LazGLib2.g_ptr_array_add(array_, data);
+end;
+
+function TGPtrArray.copy(array_: Pgpointer; func: TGCopyFunc; user_data: gpointer): Pgpointer; cdecl;
+begin
+ Result := LazGLib2.g_ptr_array_copy(array_, func, user_data);
+end;
+
+procedure TGPtrArray.extend(array_to_extend: Pgpointer; array_: Pgpointer; func: TGCopyFunc; user_data: gpointer); cdecl;
+begin
+ LazGLib2.g_ptr_array_extend(array_to_extend, array_, func, user_data);
+end;
+
+procedure TGPtrArray.extend_and_steal(array_to_extend: Pgpointer; array_: Pgpointer); cdecl;
+begin
+ LazGLib2.g_ptr_array_extend_and_steal(array_to_extend, array_);
+end;
+
+function TGPtrArray.find(haystack: Pgpointer; needle: Pgpointer; index_: Pguint): gboolean; cdecl;
+begin
+ Result := LazGLib2.g_ptr_array_find(haystack, needle, index_);
+end;
+
+function TGPtrArray.find_with_equal_func(haystack: Pgpointer; needle: Pgpointer; equal_func: TGEqualFunc; index_: Pguint): gboolean; cdecl;
+begin
+ Result := LazGLib2.g_ptr_array_find_with_equal_func(haystack, needle, equal_func, index_);
+end;
+
+procedure TGPtrArray.foreach(array_: Pgpointer; func: TGFunc; user_data: gpointer); cdecl;
+begin
+ LazGLib2.g_ptr_array_foreach(array_, func, user_data);
+end;
+
+function TGPtrArray.free(array_: Pgpointer; free_seg: gboolean): Pgpointer; cdecl;
+begin
+ Result := LazGLib2.g_ptr_array_free(array_, free_seg);
+end;
+
+procedure TGPtrArray.insert(array_: Pgpointer; index_: gint; data: gpointer); cdecl;
+begin
+ LazGLib2.g_ptr_array_insert(array_, index_, data);
+end;
+
+function TGPtrArray.new: Pgpointer; cdecl;
+begin
+ Result := LazGLib2.g_ptr_array_new();
+end;
+
+function TGPtrArray.new_full(reserved_size: guint; element_free_func: TGDestroyNotify): Pgpointer; cdecl;
+begin
+ Result := LazGLib2.g_ptr_array_new_full(reserved_size, element_free_func);
+end;
+
+function TGPtrArray.new_with_free_func(element_free_func: TGDestroyNotify): Pgpointer; cdecl;
+begin
+ Result := LazGLib2.g_ptr_array_new_with_free_func(element_free_func);
+end;
+
+function TGPtrArray.ref(array_: Pgpointer): Pgpointer; cdecl;
+begin
+ Result := LazGLib2.g_ptr_array_ref(array_);
+end;
+
+function TGPtrArray.remove(array_: Pgpointer; data: gpointer): gboolean; cdecl;
+begin
+ Result := LazGLib2.g_ptr_array_remove(array_, data);
+end;
+
+function TGPtrArray.remove_fast(array_: Pgpointer; data: gpointer): gboolean; cdecl;
+begin
+ Result := LazGLib2.g_ptr_array_remove_fast(array_, data);
+end;
+
+function TGPtrArray.remove_index(array_: Pgpointer; index_: guint): gpointer; cdecl;
+begin
+ Result := LazGLib2.g_ptr_array_remove_index(array_, index_);
+end;
+
+function TGPtrArray.remove_index_fast(array_: Pgpointer; index_: guint): gpointer; cdecl;
+begin
+ Result := LazGLib2.g_ptr_array_remove_index_fast(array_, index_);
+end;
+
+function TGPtrArray.remove_range(array_: Pgpointer; index_: guint; length: guint): Pgpointer; cdecl;
+begin
+ Result := LazGLib2.g_ptr_array_remove_range(array_, index_, length);
+end;
+
+procedure TGPtrArray.set_free_func(array_: Pgpointer; element_free_func: TGDestroyNotify); cdecl;
+begin
+ LazGLib2.g_ptr_array_set_free_func(array_, element_free_func);
+end;
+
+procedure TGPtrArray.set_size(array_: Pgpointer; length: gint); cdecl;
+begin
+ LazGLib2.g_ptr_array_set_size(array_, length);
+end;
+
+function TGPtrArray.sized_new(reserved_size: guint): Pgpointer; cdecl;
+begin
+ Result := LazGLib2.g_ptr_array_sized_new(reserved_size);
+end;
+
+procedure TGPtrArray.sort(array_: Pgpointer; compare_func: TGCompareFunc); cdecl;
+begin
+ LazGLib2.g_ptr_array_sort(array_, compare_func);
+end;
+
+procedure TGPtrArray.sort_with_data(array_: Pgpointer; compare_func: TGCompareDataFunc; user_data: gpointer); cdecl;
+begin
+ LazGLib2.g_ptr_array_sort_with_data(array_, compare_func, user_data);
+end;
+
+function TGPtrArray.steal(array_: Pgpointer; len: Pgsize): Pgpointer; cdecl;
+begin
+ Result := LazGLib2.g_ptr_array_steal(array_, len);
+end;
+
+function TGPtrArray.steal_index(array_: Pgpointer; index_: guint): gpointer; cdecl;
+begin
+ Result := LazGLib2.g_ptr_array_steal_index(array_, index_);
+end;
+
+function TGPtrArray.steal_index_fast(array_: Pgpointer; index_: guint): gpointer; cdecl;
+begin
+ Result := LazGLib2.g_ptr_array_steal_index_fast(array_, index_);
+end;
+
+procedure TGPtrArray.unref(array_: Pgpointer); cdecl;
+begin
+ LazGLib2.g_ptr_array_unref(array_);
+end;
+
+procedure TGQueue.clear; cdecl;
+begin
+ LazGLib2.g_queue_clear(@self);
+end;
+
+procedure TGQueue.clear_full(free_func: TGDestroyNotify); cdecl;
+begin
+ LazGLib2.g_queue_clear_full(@self, free_func);
+end;
+
+function TGQueue.copy: PGQueue; cdecl;
+begin
+ Result := LazGLib2.g_queue_copy(@self);
+end;
+
+procedure TGQueue.delete_link(link_: PGList); cdecl;
+begin
+ LazGLib2.g_queue_delete_link(@self, link_);
+end;
+
+function TGQueue.find(data: Pgpointer): PGList; cdecl;
+begin
+ Result := LazGLib2.g_queue_find(@self, data);
+end;
+
+function TGQueue.find_custom(data: Pgpointer; func: TGCompareFunc): PGList; cdecl;
+begin
+ Result := LazGLib2.g_queue_find_custom(@self, data, func);
+end;
+
+procedure TGQueue.foreach(func: TGFunc; user_data: gpointer); cdecl;
+begin
+ LazGLib2.g_queue_foreach(@self, func, user_data);
+end;
+
+procedure TGQueue.free; cdecl;
+begin
+ LazGLib2.g_queue_free(@self);
+end;
+
+procedure TGQueue.free_full(free_func: TGDestroyNotify); cdecl;
+begin
+ LazGLib2.g_queue_free_full(@self, free_func);
+end;
+
+function TGQueue.get_length: guint; cdecl;
+begin
+ Result := LazGLib2.g_queue_get_length(@self);
+end;
+
+function TGQueue.index(data: Pgpointer): gint; cdecl;
+begin
+ Result := LazGLib2.g_queue_index(@self, data);
+end;
+
+procedure TGQueue.init; cdecl;
+begin
+ LazGLib2.g_queue_init(@self);
+end;
+
+procedure TGQueue.insert_after(sibling: PGList; data: gpointer); cdecl;
+begin
+ LazGLib2.g_queue_insert_after(@self, sibling, data);
+end;
+
+procedure TGQueue.insert_after_link(sibling: PGList; link_: PGList); cdecl;
+begin
+ LazGLib2.g_queue_insert_after_link(@self, sibling, link_);
+end;
+
+procedure TGQueue.insert_before(sibling: PGList; data: gpointer); cdecl;
+begin
+ LazGLib2.g_queue_insert_before(@self, sibling, data);
+end;
+
+procedure TGQueue.insert_before_link(sibling: PGList; link_: PGList); cdecl;
+begin
+ LazGLib2.g_queue_insert_before_link(@self, sibling, link_);
+end;
+
+procedure TGQueue.insert_sorted(data: gpointer; func: TGCompareDataFunc; user_data: gpointer); cdecl;
+begin
+ LazGLib2.g_queue_insert_sorted(@self, data, func, user_data);
+end;
+
+function TGQueue.is_empty: gboolean; cdecl;
+begin
+ Result := LazGLib2.g_queue_is_empty(@self);
+end;
+
+function TGQueue.link_index(link_: PGList): gint; cdecl;
+begin
+ Result := LazGLib2.g_queue_link_index(@self, link_);
+end;
+
+function TGQueue.peek_head: gpointer; cdecl;
+begin
+ Result := LazGLib2.g_queue_peek_head(@self);
+end;
+
+function TGQueue.peek_head_link: PGList; cdecl;
+begin
+ Result := LazGLib2.g_queue_peek_head_link(@self);
+end;
+
+function TGQueue.peek_nth(n: guint): gpointer; cdecl;
+begin
+ Result := LazGLib2.g_queue_peek_nth(@self, n);
+end;
+
+function TGQueue.peek_nth_link(n: guint): PGList; cdecl;
+begin
+ Result := LazGLib2.g_queue_peek_nth_link(@self, n);
+end;
+
+function TGQueue.peek_tail: gpointer; cdecl;
+begin
+ Result := LazGLib2.g_queue_peek_tail(@self);
+end;
+
+function TGQueue.peek_tail_link: PGList; cdecl;
+begin
+ Result := LazGLib2.g_queue_peek_tail_link(@self);
+end;
+
+function TGQueue.pop_head: gpointer; cdecl;
+begin
+ Result := LazGLib2.g_queue_pop_head(@self);
+end;
+
+function TGQueue.pop_head_link: PGList; cdecl;
+begin
+ Result := LazGLib2.g_queue_pop_head_link(@self);
+end;
+
+function TGQueue.pop_nth(n: guint): gpointer; cdecl;
+begin
+ Result := LazGLib2.g_queue_pop_nth(@self, n);
+end;
+
+function TGQueue.pop_nth_link(n: guint): PGList; cdecl;
+begin
+ Result := LazGLib2.g_queue_pop_nth_link(@self, n);
+end;
+
+function TGQueue.pop_tail: gpointer; cdecl;
+begin
+ Result := LazGLib2.g_queue_pop_tail(@self);
+end;
+
+function TGQueue.pop_tail_link: PGList; cdecl;
+begin
+ Result := LazGLib2.g_queue_pop_tail_link(@self);
+end;
+
+procedure TGQueue.push_head(data: gpointer); cdecl;
+begin
+ LazGLib2.g_queue_push_head(@self, data);
+end;
+
+procedure TGQueue.push_head_link(link_: PGList); cdecl;
+begin
+ LazGLib2.g_queue_push_head_link(@self, link_);
+end;
+
+procedure TGQueue.push_nth(data: gpointer; n: gint); cdecl;
+begin
+ LazGLib2.g_queue_push_nth(@self, data, n);
+end;
+
+procedure TGQueue.push_nth_link(n: gint; link_: PGList); cdecl;
+begin
+ LazGLib2.g_queue_push_nth_link(@self, n, link_);
+end;
+
+procedure TGQueue.push_tail(data: gpointer); cdecl;
+begin
+ LazGLib2.g_queue_push_tail(@self, data);
+end;
+
+procedure TGQueue.push_tail_link(link_: PGList); cdecl;
+begin
+ LazGLib2.g_queue_push_tail_link(@self, link_);
+end;
+
+function TGQueue.remove(data: Pgpointer): gboolean; cdecl;
+begin
+ Result := LazGLib2.g_queue_remove(@self, data);
+end;
+
+function TGQueue.remove_all(data: Pgpointer): guint; cdecl;
+begin
+ Result := LazGLib2.g_queue_remove_all(@self, data);
+end;
+
+procedure TGQueue.reverse; cdecl;
+begin
+ LazGLib2.g_queue_reverse(@self);
+end;
+
+procedure TGQueue.sort(compare_func: TGCompareDataFunc; user_data: gpointer); cdecl;
+begin
+ LazGLib2.g_queue_sort(@self, compare_func, user_data);
+end;
+
+procedure TGQueue.unlink(link_: PGList); cdecl;
+begin
+ LazGLib2.g_queue_unlink(@self, link_);
+end;
+
+function TGQueue.new: PGQueue; cdecl;
+begin
+ Result := LazGLib2.g_queue_new();
+end;
+
+procedure TGRWLock.clear; cdecl;
+begin
+ LazGLib2.g_rw_lock_clear(@self);
+end;
+
+procedure TGRWLock.init; cdecl;
+begin
+ LazGLib2.g_rw_lock_init(@self);
+end;
+
+procedure TGRWLock.reader_lock; cdecl;
+begin
+ LazGLib2.g_rw_lock_reader_lock(@self);
+end;
+
+function TGRWLock.reader_trylock: gboolean; cdecl;
+begin
+ Result := LazGLib2.g_rw_lock_reader_trylock(@self);
+end;
+
+procedure TGRWLock.reader_unlock; cdecl;
+begin
+ LazGLib2.g_rw_lock_reader_unlock(@self);
+end;
+
+procedure TGRWLock.writer_lock; cdecl;
+begin
+ LazGLib2.g_rw_lock_writer_lock(@self);
+end;
+
+function TGRWLock.writer_trylock: gboolean; cdecl;
+begin
+ Result := LazGLib2.g_rw_lock_writer_trylock(@self);
+end;
+
+procedure TGRWLock.writer_unlock; cdecl;
+begin
+ LazGLib2.g_rw_lock_writer_unlock(@self);
+end;
+
+function TGRand.copy: PGRand; cdecl;
+begin
+ Result := LazGLib2.g_rand_copy(@self);
+end;
+
+function TGRand.double: gdouble; cdecl;
+begin
+ Result := LazGLib2.g_rand_double(@self);
+end;
+
+function TGRand.double_range(begin_: gdouble; end_: gdouble): gdouble; cdecl;
+begin
+ Result := LazGLib2.g_rand_double_range(@self, begin_, end_);
+end;
+
+procedure TGRand.free; cdecl;
+begin
+ LazGLib2.g_rand_free(@self);
+end;
+
+function TGRand.int: guint32; cdecl;
+begin
+ Result := LazGLib2.g_rand_int(@self);
+end;
+
+function TGRand.int_range(begin_: gint32; end_: gint32): gint32; cdecl;
+begin
+ Result := LazGLib2.g_rand_int_range(@self, begin_, end_);
+end;
+
+procedure TGRand.set_seed(seed: guint32); cdecl;
+begin
+ LazGLib2.g_rand_set_seed(@self, seed);
+end;
+
+procedure TGRand.set_seed_array(seed: Pguint32; seed_length: guint); cdecl;
+begin
+ LazGLib2.g_rand_set_seed_array(@self, seed, seed_length);
+end;
+
+function TGRand.new: PGRand; cdecl;
+begin
+ Result := LazGLib2.g_rand_new();
+end;
+
+function TGRand.new_with_seed(seed: guint32): PGRand; cdecl;
+begin
+ Result := LazGLib2.g_rand_new_with_seed(seed);
+end;
+
+function TGRand.new_with_seed_array(seed: Pguint32; seed_length: guint): PGRand; cdecl;
+begin
+ Result := LazGLib2.g_rand_new_with_seed_array(seed, seed_length);
+end;
+
+procedure TGRecMutex.clear; cdecl;
+begin
+ LazGLib2.g_rec_mutex_clear(@self);
+end;
+
+procedure TGRecMutex.init; cdecl;
+begin
+ LazGLib2.g_rec_mutex_init(@self);
+end;
+
+procedure TGRecMutex.lock; cdecl;
+begin
+ LazGLib2.g_rec_mutex_lock(@self);
+end;
+
+function TGRecMutex.trylock: gboolean; cdecl;
+begin
+ Result := LazGLib2.g_rec_mutex_trylock(@self);
+end;
+
+procedure TGRecMutex.unlock; cdecl;
+begin
+ LazGLib2.g_rec_mutex_unlock(@self);
+end;
+
+function TGScanner.cur_line: guint; cdecl;
+begin
+ Result := LazGLib2.g_scanner_cur_line(@self);
+end;
+
+function TGScanner.cur_position: guint; cdecl;
+begin
+ Result := LazGLib2.g_scanner_cur_position(@self);
+end;
+
+function TGScanner.cur_token: TGTokenType; cdecl;
+begin
+ Result := LazGLib2.g_scanner_cur_token(@self);
+end;
+
+function TGScanner.cur_value: TGTokenValue; cdecl;
+begin
+ Result := LazGLib2.g_scanner_cur_value(@self);
+end;
+
+procedure TGScanner.destroy_; cdecl;
+begin
+ LazGLib2.g_scanner_destroy(@self);
+end;
+
+function TGScanner.eof: gboolean; cdecl;
+begin
+ Result := LazGLib2.g_scanner_eof(@self);
+end;
+
+function TGScanner.get_next_token: TGTokenType; cdecl;
+begin
+ Result := LazGLib2.g_scanner_get_next_token(@self);
+end;
+
+procedure TGScanner.input_file(input_fd: gint); cdecl;
+begin
+ LazGLib2.g_scanner_input_file(@self, input_fd);
+end;
+
+procedure TGScanner.input_text(text: Pgchar; text_len: guint); cdecl;
+begin
+ LazGLib2.g_scanner_input_text(@self, text, text_len);
+end;
+
+function TGScanner.lookup_symbol(symbol: Pgchar): gpointer; cdecl;
+begin
+ Result := LazGLib2.g_scanner_lookup_symbol(@self, symbol);
+end;
+
+function TGScanner.peek_next_token: TGTokenType; cdecl;
+begin
+ Result := LazGLib2.g_scanner_peek_next_token(@self);
+end;
+
+procedure TGScanner.scope_add_symbol(scope_id: guint; symbol: Pgchar; value: gpointer); cdecl;
+begin
+ LazGLib2.g_scanner_scope_add_symbol(@self, scope_id, symbol, value);
+end;
+
+procedure TGScanner.scope_foreach_symbol(scope_id: guint; func: TGHFunc; user_data: gpointer); cdecl;
+begin
+ LazGLib2.g_scanner_scope_foreach_symbol(@self, scope_id, func, user_data);
+end;
+
+function TGScanner.scope_lookup_symbol(scope_id: guint; symbol: Pgchar): gpointer; cdecl;
+begin
+ Result := LazGLib2.g_scanner_scope_lookup_symbol(@self, scope_id, symbol);
+end;
+
+procedure TGScanner.scope_remove_symbol(scope_id: guint; symbol: Pgchar); cdecl;
+begin
+ LazGLib2.g_scanner_scope_remove_symbol(@self, scope_id, symbol);
+end;
+
+function TGScanner.set_scope(scope_id: guint): guint; cdecl;
+begin
+ Result := LazGLib2.g_scanner_set_scope(@self, scope_id);
+end;
+
+procedure TGScanner.sync_file_offset; cdecl;
+begin
+ LazGLib2.g_scanner_sync_file_offset(@self);
+end;
+
+procedure TGScanner.unexp_token(expected_token: TGTokenType; identifier_spec: Pgchar; symbol_spec: Pgchar; symbol_name: Pgchar; message: Pgchar; is_error: gint); cdecl;
+begin
+ LazGLib2.g_scanner_unexp_token(@self, expected_token, identifier_spec, symbol_spec, symbol_name, message, is_error);
+end;
+
+function TGScanner.new(config_templ: PGScannerConfig): PGScanner; cdecl;
+begin
+ Result := LazGLib2.g_scanner_new(config_templ);
+end;
+
+function TGSequenceIter.compare(b: PGSequenceIter): gint; cdecl;
+begin
+ Result := LazGLib2.g_sequence_iter_compare(@self, b);
+end;
+
+function TGSequenceIter.get_position: gint; cdecl;
+begin
+ Result := LazGLib2.g_sequence_iter_get_position(@self);
+end;
+
+function TGSequenceIter.get_sequence: PGSequence; cdecl;
+begin
+ Result := LazGLib2.g_sequence_iter_get_sequence(@self);
+end;
+
+function TGSequenceIter.is_begin: gboolean; cdecl;
+begin
+ Result := LazGLib2.g_sequence_iter_is_begin(@self);
+end;
+
+function TGSequenceIter.is_end: gboolean; cdecl;
+begin
+ Result := LazGLib2.g_sequence_iter_is_end(@self);
+end;
+
+function TGSequenceIter.move(delta: gint): PGSequenceIter; cdecl;
+begin
+ Result := LazGLib2.g_sequence_iter_move(@self, delta);
+end;
+
+function TGSequenceIter.next: PGSequenceIter; cdecl;
+begin
+ Result := LazGLib2.g_sequence_iter_next(@self);
+end;
+
+function TGSequenceIter.prev: PGSequenceIter; cdecl;
+begin
+ Result := LazGLib2.g_sequence_iter_prev(@self);
+end;
+
+function TGSequence.append(data: gpointer): PGSequenceIter; cdecl;
+begin
+ Result := LazGLib2.g_sequence_append(@self, data);
+end;
+
+procedure TGSequence.foreach(func: TGFunc; user_data: gpointer); cdecl;
+begin
+ LazGLib2.g_sequence_foreach(@self, func, user_data);
+end;
+
+procedure TGSequence.free; cdecl;
+begin
+ LazGLib2.g_sequence_free(@self);
+end;
+
+function TGSequence.get_begin_iter: PGSequenceIter; cdecl;
+begin
+ Result := LazGLib2.g_sequence_get_begin_iter(@self);
+end;
+
+function TGSequence.get_end_iter: PGSequenceIter; cdecl;
+begin
+ Result := LazGLib2.g_sequence_get_end_iter(@self);
+end;
+
+function TGSequence.get_iter_at_pos(pos: gint): PGSequenceIter; cdecl;
+begin
+ Result := LazGLib2.g_sequence_get_iter_at_pos(@self, pos);
+end;
+
+function TGSequence.get_length: gint; cdecl;
+begin
+ Result := LazGLib2.g_sequence_get_length(@self);
+end;
+
+function TGSequence.insert_sorted(data: gpointer; cmp_func: TGCompareDataFunc; cmp_data: gpointer): PGSequenceIter; cdecl;
+begin
+ Result := LazGLib2.g_sequence_insert_sorted(@self, data, cmp_func, cmp_data);
+end;
+
+function TGSequence.insert_sorted_iter(data: gpointer; iter_cmp: TGSequenceIterCompareFunc; cmp_data: gpointer): PGSequenceIter; cdecl;
+begin
+ Result := LazGLib2.g_sequence_insert_sorted_iter(@self, data, iter_cmp, cmp_data);
+end;
+
+function TGSequence.is_empty: gboolean; cdecl;
+begin
+ Result := LazGLib2.g_sequence_is_empty(@self);
+end;
+
+function TGSequence.lookup(data: gpointer; cmp_func: TGCompareDataFunc; cmp_data: gpointer): PGSequenceIter; cdecl;
+begin
+ Result := LazGLib2.g_sequence_lookup(@self, data, cmp_func, cmp_data);
+end;
+
+function TGSequence.lookup_iter(data: gpointer; iter_cmp: TGSequenceIterCompareFunc; cmp_data: gpointer): PGSequenceIter; cdecl;
+begin
+ Result := LazGLib2.g_sequence_lookup_iter(@self, data, iter_cmp, cmp_data);
+end;
+
+function TGSequence.prepend(data: gpointer): PGSequenceIter; cdecl;
+begin
+ Result := LazGLib2.g_sequence_prepend(@self, data);
+end;
+
+function TGSequence.search(data: gpointer; cmp_func: TGCompareDataFunc; cmp_data: gpointer): PGSequenceIter; cdecl;
+begin
+ Result := LazGLib2.g_sequence_search(@self, data, cmp_func, cmp_data);
+end;
+
+function TGSequence.search_iter(data: gpointer; iter_cmp: TGSequenceIterCompareFunc; cmp_data: gpointer): PGSequenceIter; cdecl;
+begin
+ Result := LazGLib2.g_sequence_search_iter(@self, data, iter_cmp, cmp_data);
+end;
+
+procedure TGSequence.sort(cmp_func: TGCompareDataFunc; cmp_data: gpointer); cdecl;
+begin
+ LazGLib2.g_sequence_sort(@self, cmp_func, cmp_data);
+end;
+
+procedure TGSequence.sort_iter(cmp_func: TGSequenceIterCompareFunc; cmp_data: gpointer); cdecl;
+begin
+ LazGLib2.g_sequence_sort_iter(@self, cmp_func, cmp_data);
+end;
+
+procedure TGSequence.foreach_range(begin_: PGSequenceIter; end_: PGSequenceIter; func: TGFunc; user_data: gpointer); cdecl;
+begin
+ LazGLib2.g_sequence_foreach_range(begin_, end_, func, user_data);
+end;
+
+function TGSequence.get(iter: PGSequenceIter): gpointer; cdecl;
+begin
+ Result := LazGLib2.g_sequence_get(iter);
+end;
+
+function TGSequence.insert_before(iter: PGSequenceIter; data: gpointer): PGSequenceIter; cdecl;
+begin
+ Result := LazGLib2.g_sequence_insert_before(iter, data);
+end;
+
+procedure TGSequence.move(src: PGSequenceIter; dest: PGSequenceIter); cdecl;
+begin
+ LazGLib2.g_sequence_move(src, dest);
+end;
+
+procedure TGSequence.move_range(dest: PGSequenceIter; begin_: PGSequenceIter; end_: PGSequenceIter); cdecl;
+begin
+ LazGLib2.g_sequence_move_range(dest, begin_, end_);
+end;
+
+function TGSequence.new(data_destroy: TGDestroyNotify): PGSequence; cdecl;
+begin
+ Result := LazGLib2.g_sequence_new(data_destroy);
+end;
+
+function TGSequence.range_get_midpoint(begin_: PGSequenceIter; end_: PGSequenceIter): PGSequenceIter; cdecl;
+begin
+ Result := LazGLib2.g_sequence_range_get_midpoint(begin_, end_);
+end;
+
+procedure TGSequence.remove(iter: PGSequenceIter); cdecl;
+begin
+ LazGLib2.g_sequence_remove(iter);
+end;
+
+procedure TGSequence.remove_range(begin_: PGSequenceIter; end_: PGSequenceIter); cdecl;
+begin
+ LazGLib2.g_sequence_remove_range(begin_, end_);
+end;
+
+procedure TGSequence.set_(iter: PGSequenceIter; data: gpointer); cdecl;
+begin
+ LazGLib2.g_sequence_set(iter, data);
+end;
+
+procedure TGSequence.sort_changed(iter: PGSequenceIter; cmp_func: TGCompareDataFunc; cmp_data: gpointer); cdecl;
+begin
+ LazGLib2.g_sequence_sort_changed(iter, cmp_func, cmp_data);
+end;
+
+procedure TGSequence.sort_changed_iter(iter: PGSequenceIter; iter_cmp: TGSequenceIterCompareFunc; cmp_data: gpointer); cdecl;
+begin
+ LazGLib2.g_sequence_sort_changed_iter(iter, iter_cmp, cmp_data);
+end;
+
+procedure TGSequence.swap(a: PGSequenceIter; b: PGSequenceIter); cdecl;
+begin
+ LazGLib2.g_sequence_swap(a, b);
+end;
+
+procedure TGStringChunk.clear; cdecl;
+begin
+ LazGLib2.g_string_chunk_clear(@self);
+end;
+
+procedure TGStringChunk.free; cdecl;
+begin
+ LazGLib2.g_string_chunk_free(@self);
+end;
+
+function TGStringChunk.insert(string_: Pgchar): Pgchar; cdecl;
+begin
+ Result := LazGLib2.g_string_chunk_insert(@self, string_);
+end;
+
+function TGStringChunk.insert_const(string_: Pgchar): Pgchar; cdecl;
+begin
+ Result := LazGLib2.g_string_chunk_insert_const(@self, string_);
+end;
+
+function TGStringChunk.insert_len(string_: Pgchar; len: gssize): Pgchar; cdecl;
+begin
+ Result := LazGLib2.g_string_chunk_insert_len(@self, string_, len);
+end;
+
+function TGStringChunk.new(size: gsize): PGStringChunk; cdecl;
+begin
+ Result := LazGLib2.g_string_chunk_new(size);
+end;
+
+procedure TGTestLogBuffer.free; cdecl;
+begin
+ LazGLib2.g_test_log_buffer_free(@self);
+end;
+
+function TGTestLogBuffer.pop: PGTestLogMsg; cdecl;
+begin
+ Result := LazGLib2.g_test_log_buffer_pop(@self);
+end;
+
+procedure TGTestLogBuffer.push(n_bytes: guint; bytes: Pguint8); cdecl;
+begin
+ LazGLib2.g_test_log_buffer_push(@self, n_bytes, bytes);
+end;
+
+function TGTestLogBuffer.new: PGTestLogBuffer; cdecl;
+begin
+ Result := LazGLib2.g_test_log_buffer_new();
+end;
+
+procedure TGTestLogMsg.free; cdecl;
+begin
+ LazGLib2.g_test_log_msg_free(@self);
+end;
+
+procedure TGTestSuite.add(test_case: PGTestCase); cdecl;
+begin
+ LazGLib2.g_test_suite_add(@self, test_case);
+end;
+
+procedure TGTestSuite.add_suite(nestedsuite: PGTestSuite); cdecl;
+begin
+ LazGLib2.g_test_suite_add_suite(@self, nestedsuite);
+end;
+
+function TGThread.new(name: Pgchar; func: TGThreadFunc; data: gpointer): PGThread; cdecl;
+begin
+ Result := LazGLib2.g_thread_new(name, func, data);
+end;
+
+function TGThread.try_new(name: Pgchar; func: TGThreadFunc; data: gpointer; error: PPGError): PGThread; cdecl;
+begin
+ Result := LazGLib2.g_thread_try_new(name, func, data, error);
+end;
+
+function TGThread.join: gpointer; cdecl;
+begin
+ Result := LazGLib2.g_thread_join(@self);
+end;
+
+function TGThread.ref: PGThread; cdecl;
+begin
+ Result := LazGLib2.g_thread_ref(@self);
+end;
+
+procedure TGThread.unref; cdecl;
+begin
+ LazGLib2.g_thread_unref(@self);
+end;
+
+function TGThread.error_quark: TGQuark; cdecl;
+begin
+ Result := LazGLib2.g_thread_error_quark();
+end;
+
+procedure TGThread.exit(retval: gpointer); cdecl;
+begin
+ LazGLib2.g_thread_exit(retval);
+end;
+
+function TGThread.self: PGThread; cdecl;
+begin
+ Result := LazGLib2.g_thread_self();
+end;
+
+procedure TGThread.yield; cdecl;
+begin
+ LazGLib2.g_thread_yield();
+end;
+
+procedure TGThreadPool.free(immediate: gboolean; wait_: gboolean); cdecl;
+begin
+ LazGLib2.g_thread_pool_free(@self, immediate, wait_);
+end;
+
+function TGThreadPool.get_max_threads: gint; cdecl;
+begin
+ Result := LazGLib2.g_thread_pool_get_max_threads(@self);
+end;
+
+function TGThreadPool.get_num_threads: guint; cdecl;
+begin
+ Result := LazGLib2.g_thread_pool_get_num_threads(@self);
+end;
+
+function TGThreadPool.move_to_front(data: gpointer): gboolean; cdecl;
+begin
+ Result := LazGLib2.g_thread_pool_move_to_front(@self, data);
+end;
+
+function TGThreadPool.push(data: gpointer; error: PPGError): gboolean; cdecl;
+begin
+ Result := LazGLib2.g_thread_pool_push(@self, data, error);
+end;
+
+function TGThreadPool.set_max_threads(max_threads: gint; error: PPGError): gboolean; cdecl;
+begin
+ Result := LazGLib2.g_thread_pool_set_max_threads(@self, max_threads, error);
+end;
+
+procedure TGThreadPool.set_sort_function(func: TGCompareDataFunc; user_data: gpointer); cdecl;
+begin
+ LazGLib2.g_thread_pool_set_sort_function(@self, func, user_data);
+end;
+
+function TGThreadPool.unprocessed: guint; cdecl;
+begin
+ Result := LazGLib2.g_thread_pool_unprocessed(@self);
+end;
+
+function TGThreadPool.get_max_idle_time: guint; cdecl;
+begin
+ Result := LazGLib2.g_thread_pool_get_max_idle_time();
+end;
+
+function TGThreadPool.get_max_unused_threads: gint; cdecl;
+begin
+ Result := LazGLib2.g_thread_pool_get_max_unused_threads();
+end;
+
+function TGThreadPool.get_num_unused_threads: guint; cdecl;
+begin
+ Result := LazGLib2.g_thread_pool_get_num_unused_threads();
+end;
+
+function TGThreadPool.new(func: TGFunc; user_data: gpointer; max_threads: gint; exclusive: gboolean; error: PPGError): PGThreadPool; cdecl;
+begin
+ Result := LazGLib2.g_thread_pool_new(func, user_data, max_threads, exclusive, error);
+end;
+
+procedure TGThreadPool.set_max_idle_time(interval: guint); cdecl;
+begin
+ LazGLib2.g_thread_pool_set_max_idle_time(interval);
+end;
+
+procedure TGThreadPool.set_max_unused_threads(max_threads: gint); cdecl;
+begin
+ LazGLib2.g_thread_pool_set_max_unused_threads(max_threads);
+end;
+
+procedure TGThreadPool.stop_unused_threads; cdecl;
+begin
+ LazGLib2.g_thread_pool_stop_unused_threads();
+end;
+
+procedure TGTimer.continue; cdecl;
+begin
+ LazGLib2.g_timer_continue(@self);
+end;
+
+procedure TGTimer.destroy_; cdecl;
+begin
+ LazGLib2.g_timer_destroy(@self);
+end;
+
+function TGTimer.elapsed(microseconds: Pgulong): gdouble; cdecl;
+begin
+ Result := LazGLib2.g_timer_elapsed(@self, microseconds);
+end;
+
+function TGTimer.is_active: gboolean; cdecl;
+begin
+ Result := LazGLib2.g_timer_is_active(@self);
+end;
+
+procedure TGTimer.reset; cdecl;
+begin
+ LazGLib2.g_timer_reset(@self);
+end;
+
+procedure TGTimer.start; cdecl;
+begin
+ LazGLib2.g_timer_start(@self);
+end;
+
+procedure TGTimer.stop; cdecl;
+begin
+ LazGLib2.g_timer_stop(@self);
+end;
+
+function TGTimer.new: PGTimer; cdecl;
+begin
+ Result := LazGLib2.g_timer_new();
+end;
+
+function TGTree.new(key_compare_func: TGCompareFunc): PGTree; cdecl;
+begin
+ Result := LazGLib2.g_tree_new(key_compare_func);
+end;
+
+function TGTree.new_full(key_compare_func: TGCompareDataFunc; key_compare_data: gpointer; key_destroy_func: TGDestroyNotify; value_destroy_func: TGDestroyNotify): PGTree; cdecl;
+begin
+ Result := LazGLib2.g_tree_new_full(key_compare_func, key_compare_data, key_destroy_func, value_destroy_func);
+end;
+
+function TGTree.new_with_data(key_compare_func: TGCompareDataFunc; key_compare_data: gpointer): PGTree; cdecl;
+begin
+ Result := LazGLib2.g_tree_new_with_data(key_compare_func, key_compare_data);
+end;
+
+procedure TGTree.destroy_; cdecl;
+begin
+ LazGLib2.g_tree_destroy(@self);
+end;
+
+procedure TGTree.foreach(func: TGTraverseFunc; user_data: gpointer); cdecl;
+begin
+ LazGLib2.g_tree_foreach(@self, func, user_data);
+end;
+
+function TGTree.height: gint; cdecl;
+begin
+ Result := LazGLib2.g_tree_height(@self);
+end;
+
+procedure TGTree.insert(key: gpointer; value: gpointer); cdecl;
+begin
+ LazGLib2.g_tree_insert(@self, key, value);
+end;
+
+function TGTree.lookup(key: Pgpointer): gpointer; cdecl;
+begin
+ Result := LazGLib2.g_tree_lookup(@self, key);
+end;
+
+function TGTree.lookup_extended(lookup_key: Pgpointer; orig_key: Pgpointer; value: Pgpointer): gboolean; cdecl;
+begin
+ Result := LazGLib2.g_tree_lookup_extended(@self, lookup_key, orig_key, value);
+end;
+
+function TGTree.nnodes: gint; cdecl;
+begin
+ Result := LazGLib2.g_tree_nnodes(@self);
+end;
+
+function TGTree.ref: PGTree; cdecl;
+begin
+ Result := LazGLib2.g_tree_ref(@self);
+end;
+
+function TGTree.remove(key: Pgpointer): gboolean; cdecl;
+begin
+ Result := LazGLib2.g_tree_remove(@self, key);
+end;
+
+procedure TGTree.replace(key: gpointer; value: gpointer); cdecl;
+begin
+ LazGLib2.g_tree_replace(@self, key, value);
+end;
+
+function TGTree.search(search_func: TGCompareFunc; user_data: Pgpointer): gpointer; cdecl;
+begin
+ Result := LazGLib2.g_tree_search(@self, search_func, user_data);
+end;
+
+function TGTree.steal(key: Pgpointer): gboolean; cdecl;
+begin
+ Result := LazGLib2.g_tree_steal(@self, key);
+end;
+
+procedure TGTree.unref; cdecl;
+begin
+ LazGLib2.g_tree_unref(@self);
+end;
+
+{$IFDEF USEGTK3LATESTBINDINGS}
+function TGUri.get_auth_params: Pgchar; cdecl;
+begin
+ Result := LazGLib2.g_uri_get_auth_params(@self);
+end;
+
+function TGUri.get_flags: TGUriFlags; cdecl;
+begin
+ Result := LazGLib2.g_uri_get_flags(@self);
+end;
+
+function TGUri.get_fragment: Pgchar; cdecl;
+begin
+ Result := LazGLib2.g_uri_get_fragment(@self);
+end;
+
+function TGUri.get_host: Pgchar; cdecl;
+begin
+ Result := LazGLib2.g_uri_get_host(@self);
+end;
+
+function TGUri.get_password: Pgchar; cdecl;
+begin
+ Result := LazGLib2.g_uri_get_password(@self);
+end;
+
+function TGUri.get_path: Pgchar; cdecl;
+begin
+ Result := LazGLib2.g_uri_get_path(@self);
+end;
+
+function TGUri.get_port: gint; cdecl;
+begin
+ Result := LazGLib2.g_uri_get_port(@self);
+end;
+
+function TGUri.get_query: Pgchar; cdecl;
+begin
+ Result := LazGLib2.g_uri_get_query(@self);
+end;
+
+function TGUri.get_scheme: Pgchar; cdecl;
+begin
+ Result := LazGLib2.g_uri_get_scheme(@self);
+end;
+
+function TGUri.get_user: Pgchar; cdecl;
+begin
+ Result := LazGLib2.g_uri_get_user(@self);
+end;
+
+function TGUri.get_userinfo: Pgchar; cdecl;
+begin
+ Result := LazGLib2.g_uri_get_userinfo(@self);
+end;
+
+function TGUri.parse_relative(uri_ref: Pgchar; flags: TGUriFlags; error: PPGError): PGUri; cdecl;
+begin
+ Result := LazGLib2.g_uri_parse_relative(@self, uri_ref, flags, error);
+end;
+
+function TGUri.ref: PGUri; cdecl;
+begin
+ Result := LazGLib2.g_uri_ref(@self);
+end;
+
+function TGUri.to_string: Pgchar; cdecl;
+begin
+ Result := LazGLib2.g_uri_to_string(@self);
+end;
+
+function TGUri.to_string_partial(flags: TGUriHideFlags): Pgchar; cdecl;
+begin
+ Result := LazGLib2.g_uri_to_string_partial(@self, flags);
+end;
+
+procedure TGUri.unref; cdecl;
+begin
+ LazGLib2.g_uri_unref(@self);
+end;
+
+function TGUri.build(flags: TGUriFlags; scheme: Pgchar; userinfo: Pgchar; host: Pgchar; port: gint; path: Pgchar; query: Pgchar; fragment: Pgchar): PGUri; cdecl;
+begin
+ Result := LazGLib2.g_uri_build(flags, scheme, userinfo, host, port, path, query, fragment);
+end;
+
+function TGUri.build_with_user(flags: TGUriFlags; scheme: Pgchar; user: Pgchar; password: Pgchar; auth_params: Pgchar; host: Pgchar; port: gint; path: Pgchar; query: Pgchar; fragment: Pgchar): PGUri; cdecl;
+begin
+ Result := LazGLib2.g_uri_build_with_user(flags, scheme, user, password, auth_params, host, port, path, query, fragment);
+end;
+
+function TGUri.error_quark: TGQuark; cdecl;
+begin
+ Result := LazGLib2.g_uri_error_quark();
+end;
+
+function TGUri.escape_bytes(unescaped: Pguint8; length: gsize; reserved_chars_allowed: Pgchar): Pgchar; cdecl;
+begin
+ Result := LazGLib2.g_uri_escape_bytes(unescaped, length, reserved_chars_allowed);
+end;
+{$ENDIF}
+function TGUri.escape_string(unescaped: Pgchar; reserved_chars_allowed: Pgchar; allow_utf8: gboolean): Pgchar; cdecl;
+begin
+ Result := LazGLib2.g_uri_escape_string(unescaped, reserved_chars_allowed, allow_utf8);
+end;
+
+{$IFDEF USEGTK3LATESTBINDINGS}
+function TGUri.is_valid(uri_string: Pgchar; flags: TGUriFlags; error: PPGError): gboolean; cdecl;
+begin
+ Result := LazGLib2.g_uri_is_valid(uri_string, flags, error);
+end;
+
+
+function TGUri.join(flags: TGUriFlags; scheme: Pgchar; userinfo: Pgchar; host: Pgchar; port: gint; path: Pgchar; query: Pgchar; fragment: Pgchar): Pgchar; cdecl;
+begin
+ Result := LazGLib2.g_uri_join(flags, scheme, userinfo, host, port, path, query, fragment);
+end;
+
+function TGUri.join_with_user(flags: TGUriFlags; scheme: Pgchar; user: Pgchar; password: Pgchar; auth_params: Pgchar; host: Pgchar; port: gint; path: Pgchar; query: Pgchar; fragment: Pgchar): Pgchar; cdecl;
+begin
+ Result := LazGLib2.g_uri_join_with_user(flags, scheme, user, password, auth_params, host, port, path, query, fragment);
+end;
+{$ENDIF}
+
+function TGUri.list_extract_uris(uri_list: Pgchar): PPgchar; cdecl;
+begin
+ Result := LazGLib2.g_uri_list_extract_uris(uri_list);
+end;
+
+{$IFDEF USEGTK3LATESTBINDINGS}
+function TGUri.parse(uri_string: Pgchar; flags: TGUriFlags; error: PPGError): PGUri; cdecl;
+begin
+ Result := LazGLib2.g_uri_parse(uri_string, flags, error);
+end;
+
+function TGUri.parse_params(params: Pgchar; length: gssize; separators: Pgchar; flags: TGUriParamsFlags; error: PPGError): PGHashTable; cdecl;
+begin
+ Result := LazGLib2.g_uri_parse_params(params, length, separators, flags, error);
+end;
+{$ENDIF}
+
+function TGUri.parse_scheme(uri: Pgchar): Pgchar; cdecl;
+begin
+ Result := LazGLib2.g_uri_parse_scheme(uri);
+end;
+
+{$IFDEF USEGTK3LATESTBINDINGS}
+function TGUri.peek_scheme(uri: Pgchar): Pgchar; cdecl;
+begin
+ Result := LazGLib2.g_uri_peek_scheme(uri);
+end;
+
+function TGUri.resolve_relative(base_uri_string: Pgchar; uri_ref: Pgchar; flags: TGUriFlags; error: PPGError): Pgchar; cdecl;
+begin
+ Result := LazGLib2.g_uri_resolve_relative(base_uri_string, uri_ref, flags, error);
+end;
+
+function TGUri.split(uri_ref: Pgchar; flags: TGUriFlags; scheme: PPgchar; userinfo: PPgchar; host: PPgchar; port: Pgint; path: PPgchar; query: PPgchar; fragment: PPgchar; error: PPGError): gboolean; cdecl;
+begin
+ Result := LazGLib2.g_uri_split(uri_ref, flags, scheme, userinfo, host, port, path, query, fragment, error);
+end;
+
+function TGUri.split_network(uri_string: Pgchar; flags: TGUriFlags; scheme: PPgchar; host: PPgchar; port: Pgint; error: PPGError): gboolean; cdecl;
+begin
+ Result := LazGLib2.g_uri_split_network(uri_string, flags, scheme, host, port, error);
+end;
+
+function TGUri.split_with_user(uri_ref: Pgchar; flags: TGUriFlags; scheme: PPgchar; user: PPgchar; password: PPgchar; auth_params: PPgchar; host: PPgchar; port: Pgint; path: PPgchar; query: PPgchar; fragment: PPgchar; error: PPGError): gboolean; cdecl;
+begin
+ Result := LazGLib2.g_uri_split_with_user(uri_ref, flags, scheme, user, password, auth_params, host, port, path, query, fragment, error);
+end;
+
+function TGUri.unescape_bytes(escaped_string: Pgchar; length: gssize; illegal_characters: Pgchar; error: PPGError): PGBytes; cdecl;
+begin
+ Result := LazGLib2.g_uri_unescape_bytes(escaped_string, length, illegal_characters, error);
+end;
+{$ENDIF}
+
+function TGUri.unescape_segment(escaped_string: Pgchar; escaped_string_end: Pgchar; illegal_characters: Pgchar): Pgchar; cdecl;
+begin
+ Result := LazGLib2.g_uri_unescape_segment(escaped_string, escaped_string_end, illegal_characters);
+end;
+
+function TGUri.unescape_string(escaped_string: Pgchar; illegal_characters: Pgchar): Pgchar; cdecl;
+begin
+ Result := LazGLib2.g_uri_unescape_string(escaped_string, illegal_characters);
+end;
+
+{$IFDEF USEGTK3LATESTBINDINGS}
+procedure TGUriParamsIter.init(params: Pgchar; length: gssize; separators: Pgchar; flags: TGUriParamsFlags); cdecl;
+begin
+ LazGLib2.g_uri_params_iter_init(@self, params, length, separators, flags);
+end;
+
+function TGUriParamsIter.next(attribute: PPgchar; value: PPgchar; error: PPGError): gboolean; cdecl;
+begin
+ Result := LazGLib2.g_uri_params_iter_next(@self, attribute, value, error);
+end;
+{$ENDIF}
+
+function TGVariant.new_array(child_type: PGVariantType; children: PPGVariant; n_children: gsize): PGVariant; cdecl;
+begin
+ Result := LazGLib2.g_variant_new_array(child_type, children, n_children);
+end;
+
+function TGVariant.new_boolean(value: gboolean): PGVariant; cdecl;
+begin
+ Result := LazGLib2.g_variant_new_boolean(value);
+end;
+
+function TGVariant.new_byte(value: guint8): PGVariant; cdecl;
+begin
+ Result := LazGLib2.g_variant_new_byte(value);
+end;
+
+function TGVariant.new_bytestring(string_: Pgchar): PGVariant; cdecl;
+begin
+ Result := LazGLib2.g_variant_new_bytestring(string_);
+end;
+
+function TGVariant.new_bytestring_array(strv: PPgchar; length: gssize): PGVariant; cdecl;
+begin
+ Result := LazGLib2.g_variant_new_bytestring_array(strv, length);
+end;
+
+function TGVariant.new_dict_entry(key: PGVariant; value: PGVariant): PGVariant; cdecl;
+begin
+ Result := LazGLib2.g_variant_new_dict_entry(key, value);
+end;
+
+function TGVariant.new_double(value: gdouble): PGVariant; cdecl;
+begin
+ Result := LazGLib2.g_variant_new_double(value);
+end;
+
+function TGVariant.new_fixed_array(element_type: PGVariantType; elements: Pgpointer; n_elements: gsize; element_size: gsize): PGVariant; cdecl;
+begin
+ Result := LazGLib2.g_variant_new_fixed_array(element_type, elements, n_elements, element_size);
+end;
+
+function TGVariant.new_from_bytes(type_: PGVariantType; bytes: PGBytes; trusted: gboolean): PGVariant; cdecl;
+begin
+ Result := LazGLib2.g_variant_new_from_bytes(type_, bytes, trusted);
+end;
+
+function TGVariant.new_from_data(type_: PGVariantType; data: guint8; size: gsize; trusted: gboolean; notify: TGDestroyNotify; user_data: gpointer): PGVariant; cdecl;
+begin
+ Result := LazGLib2.g_variant_new_from_data(type_, data, size, trusted, notify, user_data);
+end;
+
+function TGVariant.new_handle(value: gint32): PGVariant; cdecl;
+begin
+ Result := LazGLib2.g_variant_new_handle(value);
+end;
+
+function TGVariant.new_int16(value: gint16): PGVariant; cdecl;
+begin
+ Result := LazGLib2.g_variant_new_int16(value);
+end;
+
+function TGVariant.new_int32(value: gint32): PGVariant; cdecl;
+begin
+ Result := LazGLib2.g_variant_new_int32(value);
+end;
+
+function TGVariant.new_int64(value: gint64): PGVariant; cdecl;
+begin
+ Result := LazGLib2.g_variant_new_int64(value);
+end;
+
+function TGVariant.new_maybe(child_type: PGVariantType; child: PGVariant): PGVariant; cdecl;
+begin
+ Result := LazGLib2.g_variant_new_maybe(child_type, child);
+end;
+
+function TGVariant.new_object_path(object_path: Pgchar): PGVariant; cdecl;
+begin
+ Result := LazGLib2.g_variant_new_object_path(object_path);
+end;
+
+function TGVariant.new_objv(strv: PPgchar; length: gssize): PGVariant; cdecl;
+begin
+ Result := LazGLib2.g_variant_new_objv(strv, length);
+end;
+
+function TGVariant.new_signature(signature: Pgchar): PGVariant; cdecl;
+begin
+ Result := LazGLib2.g_variant_new_signature(signature);
+end;
+
+function TGVariant.new_string(string_: Pgchar): PGVariant; cdecl;
+begin
+ Result := LazGLib2.g_variant_new_string(string_);
+end;
+
+function TGVariant.new_strv(strv: PPgchar; length: gssize): PGVariant; cdecl;
+begin
+ Result := LazGLib2.g_variant_new_strv(strv, length);
+end;
+
+function TGVariant.new_take_string(string_: Pgchar): PGVariant; cdecl;
+begin
+ Result := LazGLib2.g_variant_new_take_string(string_);
+end;
+
+function TGVariant.new_tuple(children: PPGVariant; n_children: gsize): PGVariant; cdecl;
+begin
+ Result := LazGLib2.g_variant_new_tuple(children, n_children);
+end;
+
+function TGVariant.new_uint16(value: guint16): PGVariant; cdecl;
+begin
+ Result := LazGLib2.g_variant_new_uint16(value);
+end;
+
+function TGVariant.new_uint32(value: guint32): PGVariant; cdecl;
+begin
+ Result := LazGLib2.g_variant_new_uint32(value);
+end;
+
+function TGVariant.new_uint64(value: guint64): PGVariant; cdecl;
+begin
+ Result := LazGLib2.g_variant_new_uint64(value);
+end;
+
+function TGVariant.new_variant(value: PGVariant): PGVariant; cdecl;
+begin
+ Result := LazGLib2.g_variant_new_variant(value);
+end;
+
+function TGVariant.byteswap: PGVariant; cdecl;
+begin
+ Result := LazGLib2.g_variant_byteswap(@self);
+end;
+
+function TGVariant.check_format_string(format_string: Pgchar; copy_only: gboolean): gboolean; cdecl;
+begin
+ Result := LazGLib2.g_variant_check_format_string(@self, format_string, copy_only);
+end;
+
+function TGVariant.classify: TGVariantClass; cdecl;
+begin
+ Result := LazGLib2.g_variant_classify(@self);
+end;
+
+function TGVariant.compare(two: PGVariant): gint; cdecl;
+begin
+ Result := LazGLib2.g_variant_compare(@self, two);
+end;
+
+function TGVariant.dup_bytestring(length: Pgsize): Pgchar; cdecl;
+begin
+ Result := LazGLib2.g_variant_dup_bytestring(@self, length);
+end;
+
+function TGVariant.dup_bytestring_array(length: Pgsize): PPgchar; cdecl;
+begin
+ Result := LazGLib2.g_variant_dup_bytestring_array(@self, length);
+end;
+
+function TGVariant.dup_objv(length: Pgsize): PPgchar; cdecl;
+begin
+ Result := LazGLib2.g_variant_dup_objv(@self, length);
+end;
+
+function TGVariant.dup_string(length: Pgsize): Pgchar; cdecl;
+begin
+ Result := LazGLib2.g_variant_dup_string(@self, length);
+end;
+
+function TGVariant.dup_strv(length: Pgsize): PPgchar; cdecl;
+begin
+ Result := LazGLib2.g_variant_dup_strv(@self, length);
+end;
+
+function TGVariant.equal(two: PGVariant): gboolean; cdecl;
+begin
+ Result := LazGLib2.g_variant_equal(@self, two);
+end;
+
+function TGVariant.get_boolean: gboolean; cdecl;
+begin
+ Result := LazGLib2.g_variant_get_boolean(@self);
+end;
+
+function TGVariant.get_byte: guint8; cdecl;
+begin
+ Result := LazGLib2.g_variant_get_byte(@self);
+end;
+
+function TGVariant.get_bytestring: Pgchar; cdecl;
+begin
+ Result := LazGLib2.g_variant_get_bytestring(@self);
+end;
+
+function TGVariant.get_bytestring_array(length: Pgsize): PPgchar; cdecl;
+begin
+ Result := LazGLib2.g_variant_get_bytestring_array(@self, length);
+end;
+
+function TGVariant.get_child_value(index_: gsize): PGVariant; cdecl;
+begin
+ Result := LazGLib2.g_variant_get_child_value(@self, index_);
+end;
+
+function TGVariant.get_data: Pgpointer; cdecl;
+begin
+ Result := LazGLib2.g_variant_get_data(@self);
+end;
+
+function TGVariant.get_data_as_bytes: PGBytes; cdecl;
+begin
+ Result := LazGLib2.g_variant_get_data_as_bytes(@self);
+end;
+
+function TGVariant.get_double: gdouble; cdecl;
+begin
+ Result := LazGLib2.g_variant_get_double(@self);
+end;
+
+function TGVariant.get_fixed_array(n_elements: Pgsize; element_size: gsize): gpointer; cdecl;
+begin
+ Result := LazGLib2.g_variant_get_fixed_array(@self, n_elements, element_size);
+end;
+
+function TGVariant.get_handle: gint32; cdecl;
+begin
+ Result := LazGLib2.g_variant_get_handle(@self);
+end;
+
+function TGVariant.get_int16: gint16; cdecl;
+begin
+ Result := LazGLib2.g_variant_get_int16(@self);
+end;
+
+function TGVariant.get_int32: gint32; cdecl;
+begin
+ Result := LazGLib2.g_variant_get_int32(@self);
+end;
+
+function TGVariant.get_int64: gint64; cdecl;
+begin
+ Result := LazGLib2.g_variant_get_int64(@self);
+end;
+
+function TGVariant.get_maybe: PGVariant; cdecl;
+begin
+ Result := LazGLib2.g_variant_get_maybe(@self);
+end;
+
+function TGVariant.get_normal_form: PGVariant; cdecl;
+begin
+ Result := LazGLib2.g_variant_get_normal_form(@self);
+end;
+
+function TGVariant.get_objv(length: Pgsize): PPgchar; cdecl;
+begin
+ Result := LazGLib2.g_variant_get_objv(@self, length);
+end;
+
+function TGVariant.get_size: gsize; cdecl;
+begin
+ Result := LazGLib2.g_variant_get_size(@self);
+end;
+
+function TGVariant.get_string(length: Pgsize): Pgchar; cdecl;
+begin
+ Result := LazGLib2.g_variant_get_string(@self, length);
+end;
+
+function TGVariant.get_strv(length: Pgsize): PPgchar; cdecl;
+begin
+ Result := LazGLib2.g_variant_get_strv(@self, length);
+end;
+
+function TGVariant.get_type: PGVariantType; cdecl;
+begin
+ Result := LazGLib2.g_variant_get_type(@self);
+end;
+
+function TGVariant.get_type_string: Pgchar; cdecl;
+begin
+ Result := LazGLib2.g_variant_get_type_string(@self);
+end;
+
+function TGVariant.get_uint16: guint16; cdecl;
+begin
+ Result := LazGLib2.g_variant_get_uint16(@self);
+end;
+
+function TGVariant.get_uint32: guint32; cdecl;
+begin
+ Result := LazGLib2.g_variant_get_uint32(@self);
+end;
+
+function TGVariant.get_uint64: guint64; cdecl;
+begin
+ Result := LazGLib2.g_variant_get_uint64(@self);
+end;
+
+function TGVariant.get_variant: PGVariant; cdecl;
+begin
+ Result := LazGLib2.g_variant_get_variant(@self);
+end;
+
+function TGVariant.hash: guint; cdecl;
+begin
+ Result := LazGLib2.g_variant_hash(@self);
+end;
+
+function TGVariant.is_container: gboolean; cdecl;
+begin
+ Result := LazGLib2.g_variant_is_container(@self);
+end;
+
+function TGVariant.is_floating: gboolean; cdecl;
+begin
+ Result := LazGLib2.g_variant_is_floating(@self);
+end;
+
+function TGVariant.is_normal_form: gboolean; cdecl;
+begin
+ Result := LazGLib2.g_variant_is_normal_form(@self);
+end;
+
+function TGVariant.is_of_type(type_: PGVariantType): gboolean; cdecl;
+begin
+ Result := LazGLib2.g_variant_is_of_type(@self, type_);
+end;
+
+function TGVariant.iter_new: PGVariantIter; cdecl;
+begin
+ Result := LazGLib2.g_variant_iter_new(@self);
+end;
+
+function TGVariant.lookup_value(key: Pgchar; expected_type: PGVariantType): PGVariant; cdecl;
+begin
+ Result := LazGLib2.g_variant_lookup_value(@self, key, expected_type);
+end;
+
+function TGVariant.n_children: gsize; cdecl;
+begin
+ Result := LazGLib2.g_variant_n_children(@self);
+end;
+
+function TGVariant.print(type_annotate: gboolean): Pgchar; cdecl;
+begin
+ Result := LazGLib2.g_variant_print(@self, type_annotate);
+end;
+
+function TGVariant.print_string(string_: PGString; type_annotate: gboolean): PGString; cdecl;
+begin
+ Result := LazGLib2.g_variant_print_string(@self, string_, type_annotate);
+end;
+
+function TGVariant.ref: PGVariant; cdecl;
+begin
+ Result := LazGLib2.g_variant_ref(@self);
+end;
+
+function TGVariant.ref_sink: PGVariant; cdecl;
+begin
+ Result := LazGLib2.g_variant_ref_sink(@self);
+end;
+
+procedure TGVariant.store(data: gpointer); cdecl;
+begin
+ LazGLib2.g_variant_store(@self, data);
+end;
+
+function TGVariant.take_ref: PGVariant; cdecl;
+begin
+ Result := LazGLib2.g_variant_take_ref(@self);
+end;
+
+procedure TGVariant.unref; cdecl;
+begin
+ LazGLib2.g_variant_unref(@self);
+end;
+
+function TGVariant.is_object_path(string_: Pgchar): gboolean; cdecl;
+begin
+ Result := LazGLib2.g_variant_is_object_path(string_);
+end;
+
+function TGVariant.is_signature(string_: Pgchar): gboolean; cdecl;
+begin
+ Result := LazGLib2.g_variant_is_signature(string_);
+end;
+
+function TGVariant.parse(type_: PGVariantType; text: Pgchar; limit: Pgchar; endptr: PPgchar; error: PPGError): PGVariant; cdecl;
+begin
+ Result := LazGLib2.g_variant_parse(type_, text, limit, endptr, error);
+end;
+
+function TGVariant.parse_error_print_context(error: PGError; source_str: Pgchar): Pgchar; cdecl;
+begin
+ Result := LazGLib2.g_variant_parse_error_print_context(error, source_str);
+end;
+
+function TGVariant.parse_error_quark: TGQuark; cdecl;
+begin
+ Result := LazGLib2.g_variant_parse_error_quark();
+end;
+
+function TGVariantType.new(type_string: Pgchar): PGVariantType; cdecl;
+begin
+ Result := LazGLib2.g_variant_type_new(type_string);
+end;
+
+function TGVariantType.new_array(element: PGVariantType): PGVariantType; cdecl;
+begin
+ Result := LazGLib2.g_variant_type_new_array(element);
+end;
+
+function TGVariantType.new_dict_entry(key: PGVariantType; value: PGVariantType): PGVariantType; cdecl;
+begin
+ Result := LazGLib2.g_variant_type_new_dict_entry(key, value);
+end;
+
+function TGVariantType.new_maybe(element: PGVariantType): PGVariantType; cdecl;
+begin
+ Result := LazGLib2.g_variant_type_new_maybe(element);
+end;
+
+function TGVariantType.new_tuple(items: PPGVariantType; length: gint): PGVariantType; cdecl;
+begin
+ Result := LazGLib2.g_variant_type_new_tuple(items, length);
+end;
+
+function TGVariantType.copy: PGVariantType; cdecl;
+begin
+ Result := LazGLib2.g_variant_type_copy(@self);
+end;
+
+function TGVariantType.dup_string: Pgchar; cdecl;
+begin
+ Result := LazGLib2.g_variant_type_dup_string(@self);
+end;
+
+function TGVariantType.element: PGVariantType; cdecl;
+begin
+ Result := LazGLib2.g_variant_type_element(@self);
+end;
+
+function TGVariantType.equal(type2: PGVariantType): gboolean; cdecl;
+begin
+ Result := LazGLib2.g_variant_type_equal(@self, type2);
+end;
+
+function TGVariantType.first: PGVariantType; cdecl;
+begin
+ Result := LazGLib2.g_variant_type_first(@self);
+end;
+
+procedure TGVariantType.free; cdecl;
+begin
+ LazGLib2.g_variant_type_free(@self);
+end;
+
+function TGVariantType.get_string_length: gsize; cdecl;
+begin
+ Result := LazGLib2.g_variant_type_get_string_length(@self);
+end;
+
+function TGVariantType.hash: guint; cdecl;
+begin
+ Result := LazGLib2.g_variant_type_hash(@self);
+end;
+
+function TGVariantType.is_array: gboolean; cdecl;
+begin
+ Result := LazGLib2.g_variant_type_is_array(@self);
+end;
+
+function TGVariantType.is_basic: gboolean; cdecl;
+begin
+ Result := LazGLib2.g_variant_type_is_basic(@self);
+end;
+
+function TGVariantType.is_container: gboolean; cdecl;
+begin
+ Result := LazGLib2.g_variant_type_is_container(@self);
+end;
+
+function TGVariantType.is_definite: gboolean; cdecl;
+begin
+ Result := LazGLib2.g_variant_type_is_definite(@self);
+end;
+
+function TGVariantType.is_dict_entry: gboolean; cdecl;
+begin
+ Result := LazGLib2.g_variant_type_is_dict_entry(@self);
+end;
+
+function TGVariantType.is_maybe: gboolean; cdecl;
+begin
+ Result := LazGLib2.g_variant_type_is_maybe(@self);
+end;
+
+function TGVariantType.is_subtype_of(supertype: PGVariantType): gboolean; cdecl;
+begin
+ Result := LazGLib2.g_variant_type_is_subtype_of(@self, supertype);
+end;
+
+function TGVariantType.is_tuple: gboolean; cdecl;
+begin
+ Result := LazGLib2.g_variant_type_is_tuple(@self);
+end;
+
+function TGVariantType.is_variant: gboolean; cdecl;
+begin
+ Result := LazGLib2.g_variant_type_is_variant(@self);
+end;
+
+function TGVariantType.key: PGVariantType; cdecl;
+begin
+ Result := LazGLib2.g_variant_type_key(@self);
+end;
+
+function TGVariantType.n_items: gsize; cdecl;
+begin
+ Result := LazGLib2.g_variant_type_n_items(@self);
+end;
+
+function TGVariantType.next: PGVariantType; cdecl;
+begin
+ Result := LazGLib2.g_variant_type_next(@self);
+end;
+
+function TGVariantType.peek_string: Pgchar; cdecl;
+begin
+ Result := LazGLib2.g_variant_type_peek_string(@self);
+end;
+
+function TGVariantType.value: PGVariantType; cdecl;
+begin
+ Result := LazGLib2.g_variant_type_value(@self);
+end;
+
+function TGVariantType.checked_(arg0: Pgchar): PGVariantType; cdecl;
+begin
+ Result := LazGLib2.g_variant_type_checked_(arg0);
+end;
+
+function TGVariantType.string_get_depth_(type_string: Pgchar): gsize; cdecl;
+begin
+ Result := LazGLib2.g_variant_type_string_get_depth_(type_string);
+end;
+
+function TGVariantType.string_is_valid(type_string: Pgchar): gboolean; cdecl;
+begin
+ Result := LazGLib2.g_variant_type_string_is_valid(type_string);
+end;
+
+function TGVariantType.string_scan(string_: Pgchar; limit: Pgchar; endptr: PPgchar): gboolean; cdecl;
+begin
+ Result := LazGLib2.g_variant_type_string_scan(string_, limit, endptr);
+end;
+
+function TGVariantIter.copy: PGVariantIter; cdecl;
+begin
+ Result := LazGLib2.g_variant_iter_copy(@self);
+end;
+
+procedure TGVariantIter.free; cdecl;
+begin
+ LazGLib2.g_variant_iter_free(@self);
+end;
+
+function TGVariantIter.init(value: PGVariant): gsize; cdecl;
+begin
+ Result := LazGLib2.g_variant_iter_init(@self, value);
+end;
+
+function TGVariantIter.n_children: gsize; cdecl;
+begin
+ Result := LazGLib2.g_variant_iter_n_children(@self);
+end;
+
+function TGVariantIter.next_value: PGVariant; cdecl;
+begin
+ Result := LazGLib2.g_variant_iter_next_value(@self);
+end;
+
+function TGVariantBuilder.new(type_: PGVariantType): PGVariantBuilder; cdecl;
+begin
+ Result := LazGLib2.g_variant_builder_new(type_);
+end;
+
+procedure TGVariantBuilder.add_value(value: PGVariant); cdecl;
+begin
+ LazGLib2.g_variant_builder_add_value(@self, value);
+end;
+
+procedure TGVariantBuilder.clear; cdecl;
+begin
+ LazGLib2.g_variant_builder_clear(@self);
+end;
+
+procedure TGVariantBuilder.close; cdecl;
+begin
+ LazGLib2.g_variant_builder_close(@self);
+end;
+
+function TGVariantBuilder.end_: PGVariant; cdecl;
+begin
+ Result := LazGLib2.g_variant_builder_end(@self);
+end;
+
+procedure TGVariantBuilder.init(type_: PGVariantType); cdecl;
+begin
+ LazGLib2.g_variant_builder_init(@self, type_);
+end;
+
+procedure TGVariantBuilder.open(type_: PGVariantType); cdecl;
+begin
+ LazGLib2.g_variant_builder_open(@self, type_);
+end;
+
+function TGVariantBuilder.ref: PGVariantBuilder; cdecl;
+begin
+ Result := LazGLib2.g_variant_builder_ref(@self);
+end;
+
+procedure TGVariantBuilder.unref; cdecl;
+begin
+ LazGLib2.g_variant_builder_unref(@self);
+end;
+
+function TGVariantDict.new(from_asv: PGVariant): PGVariantDict; cdecl;
+begin
+ Result := LazGLib2.g_variant_dict_new(from_asv);
+end;
+
+procedure TGVariantDict.clear; cdecl;
+begin
+ LazGLib2.g_variant_dict_clear(@self);
+end;
+
+function TGVariantDict.contains(key: Pgchar): gboolean; cdecl;
+begin
+ Result := LazGLib2.g_variant_dict_contains(@self, key);
+end;
+
+function TGVariantDict.end_: PGVariant; cdecl;
+begin
+ Result := LazGLib2.g_variant_dict_end(@self);
+end;
+
+procedure TGVariantDict.init(from_asv: PGVariant); cdecl;
+begin
+ LazGLib2.g_variant_dict_init(@self, from_asv);
+end;
+
+procedure TGVariantDict.insert_value(key: Pgchar; value: PGVariant); cdecl;
+begin
+ LazGLib2.g_variant_dict_insert_value(@self, key, value);
+end;
+
+function TGVariantDict.lookup_value(key: Pgchar; expected_type: PGVariantType): PGVariant; cdecl;
+begin
+ Result := LazGLib2.g_variant_dict_lookup_value(@self, key, expected_type);
+end;
+
+function TGVariantDict.ref: PGVariantDict; cdecl;
+begin
+ Result := LazGLib2.g_variant_dict_ref(@self);
+end;
+
+function TGVariantDict.remove(key: Pgchar): gboolean; cdecl;
+begin
+ Result := LazGLib2.g_variant_dict_remove(@self, key);
+end;
+
+procedure TGVariantDict.unref; cdecl;
+begin
+ LazGLib2.g_variant_dict_unref(@self);
+end;
+
+end.