From 621a2e479ce4d078bbb9e554e12d5105c8e03e6d Mon Sep 17 00:00:00 2001 From: Abou Al Montacir Date: Sat, 17 Jun 2023 23:05:42 +0200 Subject: [PATCH] GTK3: Updated Gtk3 units generated with new gir2pas version. This change fixes translation of enums and bit fields after recent fin in `gir2pas` tool. This required a code change in `gtk3cobject.inc` as some bit fields were treated as enums while they are now treated as sets. Units were generated using the following command on Debian Bookworm (12) ```sh gir2pas -P Laz -e Set -i /usr/share/gir-1.0/Gtk-3.0.gir -o gtk3bindings ``` Then, some functions were removed manually to enable support of Debian Bullseye (11.6). --- lcl/interfaces/gtk3/gtk3bindings/lazatk1.pas | 13 +- lcl/interfaces/gtk3/gtk3bindings/lazgdk3.pas | 2 +- .../gtk3/gtk3bindings/lazgdkpixbuf2.pas | 19 +- lcl/interfaces/gtk3/gtk3bindings/lazgio2.pas | 738 ++++++---- lcl/interfaces/gtk3/gtk3bindings/lazglib2.pas | 659 +++++---- .../gtk3/gtk3bindings/lazgmodule2.pas | 19 +- lcl/interfaces/gtk3/gtk3bindings/lazgtk3.pas | 6 +- .../gtk3/gtk3bindings/lazharfbuzz0.pas | 1295 ++++++++--------- .../gtk3/gtk3bindings/lazpango1.pas | 83 +- lcl/interfaces/gtk3/gtk3object.inc | 4 +- 10 files changed, 1514 insertions(+), 1324 deletions(-) diff --git a/lcl/interfaces/gtk3/gtk3bindings/lazatk1.pas b/lcl/interfaces/gtk3/gtk3bindings/lazatk1.pas index 24f4e5a26c..47e41bcc54 100644 --- a/lcl/interfaces/gtk3/gtk3bindings/lazatk1.pas +++ b/lcl/interfaces/gtk3/gtk3bindings/lazatk1.pas @@ -20,11 +20,11 @@ const LazAtk1_library = 'libatk-1.0.so.0'; {$endif} - ATK_BINARY_AGE = 24810; + ATK_BINARY_AGE = 24610; ATK_INTERFACE_AGE = 1; ATK_MAJOR_VERSION = 2; ATK_MICRO_VERSION = 0; - ATK_MINOR_VERSION = 48; + ATK_MINOR_VERSION = 46; ATK_VERSION_MIN_REQUIRED = 2; type TAtkCoordType = ( @@ -216,11 +216,12 @@ type ATK_ROLE_LAST_DEFINED = 128, TAtkRoleMaxValue = $7FFFFFFF ); - TAtkHyperlinkStateFlags = ( - TAtkHyperlinkStateFlagsMinValue = -$7FFFFFFF, - ATK_HYPERLINK_IS_INLINE_ = 1, - TAtkHyperlinkStateFlagsMaxValue = $7FFFFFFF + TAtkHyperlinkStateFlagsIdx = ( + TAtkHyperlinkStateFlagsIdxMinValue = 0, + ATK_HYPERLINK_IS_INLINE_ = 0, + TAtkHyperlinkStateFlagsIdxMaxValue = 31 ); + TAtkHyperlinkStateFlags = Set of TAtkHyperlinkStateFlagsIdx; TAtkKeyEventType = ( TAtkKeyEventTypeMinValue = -$7FFFFFFF, ATK_KEY_EVENT_PRESS = 0, diff --git a/lcl/interfaces/gtk3/gtk3bindings/lazgdk3.pas b/lcl/interfaces/gtk3/gtk3bindings/lazgdk3.pas index 6e124d9f35..fea679efda 100644 --- a/lcl/interfaces/gtk3/gtk3bindings/lazgdk3.pas +++ b/lcl/interfaces/gtk3/gtk3bindings/lazgdk3.pas @@ -2306,7 +2306,7 @@ const GDK_KEY_zstroke_ = 16777654; GDK_MAJOR_VERSION = 3; GDK_MAX_TIMECOORD_AXES = 128; - GDK_MICRO_VERSION = 38; + GDK_MICRO_VERSION = 37; GDK_MINOR_VERSION = 24; GDK_PARENT_RELATIVE = 1; GDK_PRIORITY_REDRAW = 120; diff --git a/lcl/interfaces/gtk3/gtk3bindings/lazgdkpixbuf2.pas b/lcl/interfaces/gtk3/gtk3bindings/lazgdkpixbuf2.pas index 14d7382e85..659cbc5a31 100644 --- a/lcl/interfaces/gtk3/gtk3bindings/lazgdkpixbuf2.pas +++ b/lcl/interfaces/gtk3/gtk3bindings/lazgdkpixbuf2.pas @@ -21,9 +21,9 @@ const {$endif} GDK_PIXBUF_MAJOR = 2; - GDK_PIXBUF_MICRO = 11; + GDK_PIXBUF_MICRO = 10; GDK_PIXBUF_MINOR = 42; - GDK_PIXBUF_VERSION = '2.42.11'; + GDK_PIXBUF_VERSION = '2.42.10'; type TGdkColorspace = ( TGdkColorspaceMinValue = -$7FFFFFFF, @@ -57,13 +57,14 @@ type GDK_PIXBUF_ERROR_INCOMPLETE_ANIMATION = 6, TGdkPixbufErrorMaxValue = $7FFFFFFF ); - TGdkPixbufFormatFlags = ( - TGdkPixbufFormatFlagsMinValue = -$7FFFFFFF, - GDK_PIXBUF_FORMAT_WRITABLE = 1, - GDK_PIXBUF_FORMAT_SCALABLE = 2, - GDK_PIXBUF_FORMAT_THREADSAFE = 4, - TGdkPixbufFormatFlagsMaxValue = $7FFFFFFF + TGdkPixbufFormatFlagsIdx = ( + TGdkPixbufFormatFlagsIdxMinValue = 0, + GDK_PIXBUF_FORMAT_WRITABLE = 0, + GDK_PIXBUF_FORMAT_SCALABLE = 1, + GDK_PIXBUF_FORMAT_THREADSAFE = 2, + TGdkPixbufFormatFlagsIdxMaxValue = 31 ); + TGdkPixbufFormatFlags = Set of TGdkPixbufFormatFlagsIdx; type @@ -384,7 +385,7 @@ type TGdkPixbufModule = record module_name: Pgchar; module_path: Pgchar; - module: gpointer; + module: PGModule; info: PGdkPixbufFormat; load: TGdkPixbufModuleLoadFunc; load_xpm_data: TGdkPixbufModuleLoadXpmDataFunc; diff --git a/lcl/interfaces/gtk3/gtk3bindings/lazgio2.pas b/lcl/interfaces/gtk3/gtk3bindings/lazgio2.pas index b3d079715e..fe003c8eae 100644 --- a/lcl/interfaces/gtk3/gtk3bindings/lazgio2.pas +++ b/lcl/interfaces/gtk3/gtk3bindings/lazgio2.pas @@ -85,20 +85,8 @@ const G_FILE_ATTRIBUTE_STANDARD_TARGET_URI = 'standard::target-uri'; G_FILE_ATTRIBUTE_STANDARD_TYPE = 'standard::type'; G_FILE_ATTRIBUTE_THUMBNAILING_FAILED = 'thumbnail::failed'; - G_FILE_ATTRIBUTE_THUMBNAILING_FAILED_LARGE = 'thumbnail::failed-large'; - G_FILE_ATTRIBUTE_THUMBNAILING_FAILED_NORMAL = 'thumbnail::failed-normal'; - G_FILE_ATTRIBUTE_THUMBNAILING_FAILED_XLARGE = 'thumbnail::failed-xlarge'; - G_FILE_ATTRIBUTE_THUMBNAILING_FAILED_XXLARGE = 'thumbnail::failed-xxlarge'; G_FILE_ATTRIBUTE_THUMBNAIL_IS_VALID = 'thumbnail::is-valid'; - G_FILE_ATTRIBUTE_THUMBNAIL_IS_VALID_LARGE = 'thumbnail::is-valid-large'; - G_FILE_ATTRIBUTE_THUMBNAIL_IS_VALID_NORMAL = 'thumbnail::is-valid-normal'; - G_FILE_ATTRIBUTE_THUMBNAIL_IS_VALID_XLARGE = 'thumbnail::is-valid-xlarge'; - G_FILE_ATTRIBUTE_THUMBNAIL_IS_VALID_XXLARGE = 'thumbnail::is-valid-xxlarge'; G_FILE_ATTRIBUTE_THUMBNAIL_PATH = 'thumbnail::path'; - G_FILE_ATTRIBUTE_THUMBNAIL_PATH_LARGE = 'thumbnail::path-large'; - G_FILE_ATTRIBUTE_THUMBNAIL_PATH_NORMAL = 'thumbnail::path-normal'; - G_FILE_ATTRIBUTE_THUMBNAIL_PATH_XLARGE = 'thumbnail::path-xlarge'; - G_FILE_ATTRIBUTE_THUMBNAIL_PATH_XXLARGE = 'thumbnail::path-xxlarge'; G_FILE_ATTRIBUTE_TIME_ACCESS = 'time::access'; G_FILE_ATTRIBUTE_TIME_ACCESS_NSEC = 'time::access-nsec'; G_FILE_ATTRIBUTE_TIME_ACCESS_USEC = 'time::access-usec'; @@ -130,7 +118,6 @@ const G_MENU_ATTRIBUTE_ICON = 'icon'; G_MENU_ATTRIBUTE_LABEL = 'label'; G_MENU_ATTRIBUTE_TARGET = 'target'; - G_MENU_EXPORTER_MAX_SECTION_SIZE = 1000; G_MENU_LINK_SECTION = 'section'; G_MENU_LINK_SUBMENU = 'submenu'; G_NATIVE_VOLUME_MONITOR_EXTENSION_POINT_NAME = 'gio-native-volume-monitor'; @@ -151,126 +138,187 @@ const G_VOLUME_IDENTIFIER_KIND_UUID = 'uuid'; G_VOLUME_MONITOR_EXTENSION_POINT_NAME = 'gio-volume-monitor'; type - TGAppInfoCreateFlags = ( - TGAppInfoCreateFlagsMinValue = -$7FFFFFFF, - G_APP_INFO_CREATE_NONE = 0, - G_APP_INFO_CREATE_NEEDS_TERMINAL = 1, - G_APP_INFO_CREATE_SUPPORTS_URIS = 2, - G_APP_INFO_CREATE_SUPPORTS_STARTUP_NOTIFICATION = 4, - TGAppInfoCreateFlagsMaxValue = $7FFFFFFF + TGAppInfoCreateFlagsIdx = ( + TGAppInfoCreateFlagsIdxMinValue = 0, + G_APP_INFO_CREATE_NEEDS_TERMINAL = 0, + G_APP_INFO_CREATE_SUPPORTS_URIS = 1, + G_APP_INFO_CREATE_SUPPORTS_STARTUP_NOTIFICATION = 2, + TGAppInfoCreateFlagsIdxMaxValue = 31 ); - TGApplicationFlags = ( - TGApplicationFlagsMinValue = -$7FFFFFFF, - G_APPLICATION_DEFAULT_FLAGS = 0, - G_APPLICATION_FLAGS_NONE = 0, - G_APPLICATION_IS_SERVICE = 1, - G_APPLICATION_IS_LAUNCHER = 2, - G_APPLICATION_HANDLES_OPEN = 4, - G_APPLICATION_HANDLES_COMMAND_LINE = 8, - G_APPLICATION_SEND_ENVIRONMENT = 16, - G_APPLICATION_NON_UNIQUE = 32, - G_APPLICATION_CAN_OVERRIDE_APP_ID = 64, - G_APPLICATION_ALLOW_REPLACEMENT = 128, - G_APPLICATION_REPLACE = 256, - TGApplicationFlagsMaxValue = $7FFFFFFF + TGAppInfoCreateFlags = Set of TGAppInfoCreateFlagsIdx; +const + G_APP_INFO_CREATE_NONE = []; {0 = $00000000} + +type + TGApplicationFlagsIdx = ( + TGApplicationFlagsIdxMinValue = 0, + G_APPLICATION_IS_SERVICE = 0, + G_APPLICATION_IS_LAUNCHER = 1, + G_APPLICATION_HANDLES_OPEN = 2, + G_APPLICATION_HANDLES_COMMAND_LINE = 3, + G_APPLICATION_SEND_ENVIRONMENT = 4, + G_APPLICATION_NON_UNIQUE = 5, + G_APPLICATION_CAN_OVERRIDE_APP_ID = 6, + G_APPLICATION_ALLOW_REPLACEMENT = 7, + G_APPLICATION_REPLACE = 8, + TGApplicationFlagsIdxMaxValue = 31 ); - TGDBusConnectionFlags = ( - TGDBusConnectionFlagsMinValue = -$7FFFFFFF, - G_DBUS_CONNECTION_FLAGS_NONE = 0, - G_DBUS_CONNECTION_FLAGS_AUTHENTICATION_CLIENT = 1, - G_DBUS_CONNECTION_FLAGS_AUTHENTICATION_SERVER = 2, - G_DBUS_CONNECTION_FLAGS_AUTHENTICATION_ALLOW_ANONYMOUS = 4, - G_DBUS_CONNECTION_FLAGS_MESSAGE_BUS_CONNECTION = 8, - G_DBUS_CONNECTION_FLAGS_DELAY_MESSAGE_PROCESSING = 16, - G_DBUS_CONNECTION_FLAGS_AUTHENTICATION_REQUIRE_SAME_USER = 32, - G_DBUS_CONNECTION_FLAGS_CROSS_NAMESPACE = 64, - TGDBusConnectionFlagsMaxValue = $7FFFFFFF + TGApplicationFlags = Set of TGApplicationFlagsIdx; +const + G_APPLICATION_DEFAULT_FLAGS = []; {0 = $00000000} + + G_APPLICATION_FLAGS_NONE = []; {0 = $00000000} + +type + TGDBusConnectionFlagsIdx = ( + TGDBusConnectionFlagsIdxMinValue = 0, + G_DBUS_CONNECTION_FLAGS_AUTHENTICATION_CLIENT = 0, + G_DBUS_CONNECTION_FLAGS_AUTHENTICATION_SERVER = 1, + G_DBUS_CONNECTION_FLAGS_AUTHENTICATION_ALLOW_ANONYMOUS = 2, + G_DBUS_CONNECTION_FLAGS_MESSAGE_BUS_CONNECTION = 3, + G_DBUS_CONNECTION_FLAGS_DELAY_MESSAGE_PROCESSING = 4, + G_DBUS_CONNECTION_FLAGS_AUTHENTICATION_REQUIRE_SAME_USER = 5, + G_DBUS_CONNECTION_FLAGS_CROSS_NAMESPACE = 6, + TGDBusConnectionFlagsIdxMaxValue = 31 ); - TGDBusCallFlags = ( - TGDBusCallFlagsMinValue = -$7FFFFFFF, - G_DBUS_CALL_FLAGS_NONE = 0, - G_DBUS_CALL_FLAGS_NO_AUTO_START = 1, - G_DBUS_CALL_FLAGS_ALLOW_INTERACTIVE_AUTHORIZATION = 2, - TGDBusCallFlagsMaxValue = $7FFFFFFF + TGDBusConnectionFlags = Set of TGDBusConnectionFlagsIdx; +const + G_DBUS_CONNECTION_FLAGS_NONE = []; {0 = $00000000} + +type + TGDBusCallFlagsIdx = ( + TGDBusCallFlagsIdxMinValue = 0, + G_DBUS_CALL_FLAGS_NO_AUTO_START = 0, + G_DBUS_CALL_FLAGS_ALLOW_INTERACTIVE_AUTHORIZATION = 1, + TGDBusCallFlagsIdxMaxValue = 31 ); - TGDBusCapabilityFlags = ( - TGDBusCapabilityFlagsMinValue = -$7FFFFFFF, - G_DBUS_CAPABILITY_FLAGS_NONE = 0, - G_DBUS_CAPABILITY_FLAGS_UNIX_FD_PASSING = 1, - TGDBusCapabilityFlagsMaxValue = $7FFFFFFF + TGDBusCallFlags = Set of TGDBusCallFlagsIdx; +const + G_DBUS_CALL_FLAGS_NONE = []; {0 = $00000000} + +type + TGDBusCapabilityFlagsIdx = ( + TGDBusCapabilityFlagsIdxMinValue = 0, + G_DBUS_CAPABILITY_FLAGS_UNIX_FD_PASSING = 0, + TGDBusCapabilityFlagsIdxMaxValue = 31 ); - TGDBusSubtreeFlags = ( - TGDBusSubtreeFlagsMinValue = -$7FFFFFFF, - G_DBUS_SUBTREE_FLAGS_NONE = 0, - G_DBUS_SUBTREE_FLAGS_DISPATCH_TO_UNENUMERATED_NODES = 1, - TGDBusSubtreeFlagsMaxValue = $7FFFFFFF + TGDBusCapabilityFlags = Set of TGDBusCapabilityFlagsIdx; +const + G_DBUS_CAPABILITY_FLAGS_NONE = []; {0 = $00000000} + +type + TGDBusSubtreeFlagsIdx = ( + TGDBusSubtreeFlagsIdxMinValue = 0, + G_DBUS_SUBTREE_FLAGS_DISPATCH_TO_UNENUMERATED_NODES = 0, + TGDBusSubtreeFlagsIdxMaxValue = 31 ); - TGDBusSendMessageFlags = ( - TGDBusSendMessageFlagsMinValue = -$7FFFFFFF, - G_DBUS_SEND_MESSAGE_FLAGS_NONE = 0, - G_DBUS_SEND_MESSAGE_FLAGS_PRESERVE_SERIAL = 1, - TGDBusSendMessageFlagsMaxValue = $7FFFFFFF + TGDBusSubtreeFlags = Set of TGDBusSubtreeFlagsIdx; +const + G_DBUS_SUBTREE_FLAGS_NONE = []; {0 = $00000000} + +type + TGDBusSendMessageFlagsIdx = ( + TGDBusSendMessageFlagsIdxMinValue = 0, + G_DBUS_SEND_MESSAGE_FLAGS_PRESERVE_SERIAL = 0, + TGDBusSendMessageFlagsIdxMaxValue = 31 ); - TGDBusSignalFlags = ( - TGDBusSignalFlagsMinValue = -$7FFFFFFF, - G_DBUS_SIGNAL_FLAGS_NONE = 0, - G_DBUS_SIGNAL_FLAGS_NO_MATCH_RULE = 1, - G_DBUS_SIGNAL_FLAGS_MATCH_ARG0_NAMESPACE = 2, - G_DBUS_SIGNAL_FLAGS_MATCH_ARG0_PATH = 4, - TGDBusSignalFlagsMaxValue = $7FFFFFFF + TGDBusSendMessageFlags = Set of TGDBusSendMessageFlagsIdx; +const + G_DBUS_SEND_MESSAGE_FLAGS_NONE = []; {0 = $00000000} + +type + TGDBusSignalFlagsIdx = ( + TGDBusSignalFlagsIdxMinValue = 0, + G_DBUS_SIGNAL_FLAGS_NO_MATCH_RULE = 0, + G_DBUS_SIGNAL_FLAGS_MATCH_ARG0_NAMESPACE = 1, + G_DBUS_SIGNAL_FLAGS_MATCH_ARG0_PATH = 2, + TGDBusSignalFlagsIdxMaxValue = 31 ); - TGFileCreateFlags = ( - TGFileCreateFlagsMinValue = -$7FFFFFFF, - G_FILE_CREATE_NONE = 0, - G_FILE_CREATE_PRIVATE = 1, - G_FILE_CREATE_REPLACE_DESTINATION = 2, - TGFileCreateFlagsMaxValue = $7FFFFFFF + TGDBusSignalFlags = Set of TGDBusSignalFlagsIdx; +const + G_DBUS_SIGNAL_FLAGS_NONE = []; {0 = $00000000} + +type + TGFileCreateFlagsIdx = ( + TGFileCreateFlagsIdxMinValue = 0, + G_FILE_CREATE_PRIVATE = 0, + G_FILE_CREATE_REPLACE_DESTINATION = 1, + TGFileCreateFlagsIdxMaxValue = 31 ); - TGFileCopyFlags = ( - TGFileCopyFlagsMinValue = -$7FFFFFFF, - G_FILE_COPY_NONE = 0, - G_FILE_COPY_OVERWRITE = 1, - G_FILE_COPY_BACKUP = 2, - G_FILE_COPY_NOFOLLOW_SYMLINKS = 4, - G_FILE_COPY_ALL_METADATA = 8, - G_FILE_COPY_NO_FALLBACK_FOR_MOVE = 16, - G_FILE_COPY_TARGET_DEFAULT_PERMS = 32, - TGFileCopyFlagsMaxValue = $7FFFFFFF + TGFileCreateFlags = Set of TGFileCreateFlagsIdx; +const + G_FILE_CREATE_NONE = []; {0 = $00000000} + +type + TGFileCopyFlagsIdx = ( + TGFileCopyFlagsIdxMinValue = 0, + G_FILE_COPY_OVERWRITE = 0, + G_FILE_COPY_BACKUP = 1, + G_FILE_COPY_NOFOLLOW_SYMLINKS = 2, + G_FILE_COPY_ALL_METADATA = 3, + G_FILE_COPY_NO_FALLBACK_FOR_MOVE = 4, + G_FILE_COPY_TARGET_DEFAULT_PERMS = 5, + TGFileCopyFlagsIdxMaxValue = 31 ); - TGMountUnmountFlags = ( - TGMountUnmountFlagsMinValue = -$7FFFFFFF, - G_MOUNT_UNMOUNT_NONE = 0, - G_MOUNT_UNMOUNT_FORCE = 1, - TGMountUnmountFlagsMaxValue = $7FFFFFFF + TGFileCopyFlags = Set of TGFileCopyFlagsIdx; +const + G_FILE_COPY_NONE = []; {0 = $00000000} + +type + TGMountUnmountFlagsIdx = ( + TGMountUnmountFlagsIdxMinValue = 0, + G_MOUNT_UNMOUNT_FORCE = 0, + TGMountUnmountFlagsIdxMaxValue = 31 ); - TGFileQueryInfoFlags = ( - TGFileQueryInfoFlagsMinValue = -$7FFFFFFF, - G_FILE_QUERY_INFO_NONE = 0, - G_FILE_QUERY_INFO_NOFOLLOW_SYMLINKS = 1, - TGFileQueryInfoFlagsMaxValue = $7FFFFFFF + TGMountUnmountFlags = Set of TGMountUnmountFlagsIdx; +const + G_MOUNT_UNMOUNT_NONE = []; {0 = $00000000} + +type + TGFileQueryInfoFlagsIdx = ( + TGFileQueryInfoFlagsIdxMinValue = 0, + G_FILE_QUERY_INFO_NOFOLLOW_SYMLINKS = 0, + TGFileQueryInfoFlagsIdxMaxValue = 31 ); - TGFileMeasureFlags = ( - TGFileMeasureFlagsMinValue = -$7FFFFFFF, - G_FILE_MEASURE_NONE = 0, - G_FILE_MEASURE_REPORT_ANY_ERROR = 2, - G_FILE_MEASURE_APPARENT_SIZE = 4, - G_FILE_MEASURE_NO_XDEV = 8, - TGFileMeasureFlagsMaxValue = $7FFFFFFF + TGFileQueryInfoFlags = Set of TGFileQueryInfoFlagsIdx; +const + G_FILE_QUERY_INFO_NONE = []; {0 = $00000000} + +type + TGFileMeasureFlagsIdx = ( + TGFileMeasureFlagsIdxMinValue = 0, + G_FILE_MEASURE_REPORT_ANY_ERROR = 1, + G_FILE_MEASURE_APPARENT_SIZE = 2, + G_FILE_MEASURE_NO_XDEV = 3, + TGFileMeasureFlagsIdxMaxValue = 31 ); - TGFileMonitorFlags = ( - TGFileMonitorFlagsMinValue = -$7FFFFFFF, - G_FILE_MONITOR_NONE = 0, - G_FILE_MONITOR_WATCH_MOUNTS = 1, - G_FILE_MONITOR_SEND_MOVED = 2, - G_FILE_MONITOR_WATCH_HARD_LINKS = 4, - G_FILE_MONITOR_WATCH_MOVES = 8, - TGFileMonitorFlagsMaxValue = $7FFFFFFF + TGFileMeasureFlags = Set of TGFileMeasureFlagsIdx; +const + G_FILE_MEASURE_NONE = []; {0 = $00000000} + +type + TGFileMonitorFlagsIdx = ( + TGFileMonitorFlagsIdxMinValue = 0, + G_FILE_MONITOR_WATCH_MOUNTS = 0, + G_FILE_MONITOR_SEND_MOVED = 1, + G_FILE_MONITOR_WATCH_HARD_LINKS = 2, + G_FILE_MONITOR_WATCH_MOVES = 3, + TGFileMonitorFlagsIdxMaxValue = 31 ); - TGMountMountFlags = ( - TGMountMountFlagsMinValue = -$7FFFFFFF, - G_MOUNT_MOUNT_NONE = 0, - TGMountMountFlagsMaxValue = $7FFFFFFF + TGFileMonitorFlags = Set of TGFileMonitorFlagsIdx; +const + G_FILE_MONITOR_NONE = []; {0 = $00000000} + +type + TGMountMountFlagsIdx = ( + TGMountMountFlagsIdxMinValue = 0, + TGMountMountFlagsIdxMaxValue = 31 ); + TGMountMountFlags = Set of TGMountMountFlagsIdx; +const + G_MOUNT_MOUNT_NONE = []; {0 = $00000000} + +type TGFileAttributeType = ( TGFileAttributeTypeMinValue = -$7FFFFFFF, G_FILE_ATTRIBUTE_TYPE_INVALID = 0, @@ -285,11 +333,15 @@ type G_FILE_ATTRIBUTE_TYPE_STRINGV = 9, TGFileAttributeTypeMaxValue = $7FFFFFFF ); - TGDriveStartFlags = ( - TGDriveStartFlagsMinValue = -$7FFFFFFF, - G_DRIVE_START_NONE = 0, - TGDriveStartFlagsMaxValue = $7FFFFFFF + TGDriveStartFlagsIdx = ( + TGDriveStartFlagsIdxMinValue = 0, + TGDriveStartFlagsIdxMaxValue = 31 ); + TGDriveStartFlags = Set of TGDriveStartFlagsIdx; +const + G_DRIVE_START_NONE = []; {0 = $00000000} + +type TGNotificationPriority = ( TGNotificationPriorityMinValue = -$7FFFFFFF, G_NOTIFICATION_PRIORITY_NORMAL = 0, @@ -298,37 +350,50 @@ type G_NOTIFICATION_PRIORITY_URGENT = 3, TGNotificationPriorityMaxValue = $7FFFFFFF ); - TGAskPasswordFlags = ( - TGAskPasswordFlagsMinValue = -$7FFFFFFF, - G_ASK_PASSWORD_NEED_PASSWORD = 1, - G_ASK_PASSWORD_NEED_USERNAME = 2, - G_ASK_PASSWORD_NEED_DOMAIN = 4, - G_ASK_PASSWORD_SAVING_SUPPORTED = 8, - G_ASK_PASSWORD_ANONYMOUS_SUPPORTED = 16, - G_ASK_PASSWORD_TCRYPT = 32, - TGAskPasswordFlagsMaxValue = $7FFFFFFF + TGAskPasswordFlagsIdx = ( + TGAskPasswordFlagsIdxMinValue = 0, + G_ASK_PASSWORD_NEED_PASSWORD = 0, + G_ASK_PASSWORD_NEED_USERNAME = 1, + G_ASK_PASSWORD_NEED_DOMAIN = 2, + G_ASK_PASSWORD_SAVING_SUPPORTED = 3, + G_ASK_PASSWORD_ANONYMOUS_SUPPORTED = 4, + G_ASK_PASSWORD_TCRYPT = 5, + TGAskPasswordFlagsIdxMaxValue = 31 ); - TGOutputStreamSpliceFlags = ( - TGOutputStreamSpliceFlagsMinValue = -$7FFFFFFF, - G_OUTPUT_STREAM_SPLICE_NONE = 0, - G_OUTPUT_STREAM_SPLICE_CLOSE_SOURCE = 1, - G_OUTPUT_STREAM_SPLICE_CLOSE_TARGET = 2, - TGOutputStreamSpliceFlagsMaxValue = $7FFFFFFF + TGAskPasswordFlags = Set of TGAskPasswordFlagsIdx; + TGOutputStreamSpliceFlagsIdx = ( + TGOutputStreamSpliceFlagsIdxMinValue = 0, + G_OUTPUT_STREAM_SPLICE_CLOSE_SOURCE = 0, + G_OUTPUT_STREAM_SPLICE_CLOSE_TARGET = 1, + TGOutputStreamSpliceFlagsIdxMaxValue = 31 ); - TGBusNameOwnerFlags = ( - TGBusNameOwnerFlagsMinValue = -$7FFFFFFF, - G_BUS_NAME_OWNER_FLAGS_NONE = 0, - G_BUS_NAME_OWNER_FLAGS_ALLOW_REPLACEMENT = 1, - G_BUS_NAME_OWNER_FLAGS_REPLACE = 2, - G_BUS_NAME_OWNER_FLAGS_DO_NOT_QUEUE = 4, - TGBusNameOwnerFlagsMaxValue = $7FFFFFFF + TGOutputStreamSpliceFlags = Set of TGOutputStreamSpliceFlagsIdx; +const + G_OUTPUT_STREAM_SPLICE_NONE = []; {0 = $00000000} + +type + TGBusNameOwnerFlagsIdx = ( + TGBusNameOwnerFlagsIdxMinValue = 0, + G_BUS_NAME_OWNER_FLAGS_ALLOW_REPLACEMENT = 0, + G_BUS_NAME_OWNER_FLAGS_REPLACE = 1, + G_BUS_NAME_OWNER_FLAGS_DO_NOT_QUEUE = 2, + TGBusNameOwnerFlagsIdxMaxValue = 31 ); - TGBusNameWatcherFlags = ( - TGBusNameWatcherFlagsMinValue = -$7FFFFFFF, - G_BUS_NAME_WATCHER_FLAGS_NONE = 0, - G_BUS_NAME_WATCHER_FLAGS_AUTO_START = 1, - TGBusNameWatcherFlagsMaxValue = $7FFFFFFF + TGBusNameOwnerFlags = Set of TGBusNameOwnerFlagsIdx; +const + G_BUS_NAME_OWNER_FLAGS_NONE = []; {0 = $00000000} + +type + TGBusNameWatcherFlagsIdx = ( + TGBusNameWatcherFlagsIdxMinValue = 0, + G_BUS_NAME_WATCHER_FLAGS_AUTO_START = 0, + TGBusNameWatcherFlagsIdxMaxValue = 31 ); + TGBusNameWatcherFlags = Set of TGBusNameWatcherFlagsIdx; +const + G_BUS_NAME_WATCHER_FLAGS_NONE = []; {0 = $00000000} + +type TGBusType = ( TGBusTypeMinValue = -$7FFFFFFF, G_BUS_TYPE_STARTER = -1, @@ -337,13 +402,17 @@ type G_BUS_TYPE_SESSION = 2, TGBusTypeMaxValue = $7FFFFFFF ); - TGConverterFlags = ( - TGConverterFlagsMinValue = -$7FFFFFFF, - G_CONVERTER_NO_FLAGS = 0, - G_CONVERTER_INPUT_AT_END = 1, - G_CONVERTER_FLUSH = 2, - TGConverterFlagsMaxValue = $7FFFFFFF + TGConverterFlagsIdx = ( + TGConverterFlagsIdxMinValue = 0, + G_CONVERTER_INPUT_AT_END = 0, + G_CONVERTER_FLUSH = 1, + TGConverterFlagsIdxMaxValue = 31 ); + TGConverterFlags = Set of TGConverterFlagsIdx; +const + G_CONVERTER_NO_FLAGS = []; {0 = $00000000} + +type TGConverterResult = ( TGConverterResultMinValue = -$7FFFFFFF, G_CONVERTER_ERROR = 0, @@ -364,22 +433,30 @@ type G_CREDENTIALS_TYPE_WIN32_PID = 7, TGCredentialsTypeMaxValue = $7FFFFFFF ); - TGIOStreamSpliceFlags = ( - TGIOStreamSpliceFlagsMinValue = -$7FFFFFFF, - G_IO_STREAM_SPLICE_NONE = 0, - G_IO_STREAM_SPLICE_CLOSE_STREAM1 = 1, - G_IO_STREAM_SPLICE_CLOSE_STREAM2 = 2, - G_IO_STREAM_SPLICE_WAIT_FOR_BOTH = 4, - TGIOStreamSpliceFlagsMaxValue = $7FFFFFFF + TGIOStreamSpliceFlagsIdx = ( + TGIOStreamSpliceFlagsIdxMinValue = 0, + G_IO_STREAM_SPLICE_CLOSE_STREAM1 = 0, + G_IO_STREAM_SPLICE_CLOSE_STREAM2 = 1, + G_IO_STREAM_SPLICE_WAIT_FOR_BOTH = 2, + TGIOStreamSpliceFlagsIdxMaxValue = 31 ); - TGDBusMessageFlags = ( - TGDBusMessageFlagsMinValue = -$7FFFFFFF, - G_DBUS_MESSAGE_FLAGS_NONE = 0, - G_DBUS_MESSAGE_FLAGS_NO_REPLY_EXPECTED = 1, - G_DBUS_MESSAGE_FLAGS_NO_AUTO_START = 2, - G_DBUS_MESSAGE_FLAGS_ALLOW_INTERACTIVE_AUTHORIZATION = 4, - TGDBusMessageFlagsMaxValue = $7FFFFFFF + TGIOStreamSpliceFlags = Set of TGIOStreamSpliceFlagsIdx; +const + G_IO_STREAM_SPLICE_NONE = []; {0 = $00000000} + +type + TGDBusMessageFlagsIdx = ( + TGDBusMessageFlagsIdxMinValue = 0, + G_DBUS_MESSAGE_FLAGS_NO_REPLY_EXPECTED = 0, + G_DBUS_MESSAGE_FLAGS_NO_AUTO_START = 1, + G_DBUS_MESSAGE_FLAGS_ALLOW_INTERACTIVE_AUTHORIZATION = 2, + TGDBusMessageFlagsIdxMaxValue = 31 ); + TGDBusMessageFlags = Set of TGDBusMessageFlagsIdx; +const + G_DBUS_MESSAGE_FLAGS_NONE = []; {0 = $00000000} + +type TGDBusMessageHeaderField = ( TGDBusMessageHeaderFieldMinValue = -$7FFFFFFF, G_DBUS_MESSAGE_HEADER_FIELD_INVALID = 0, @@ -458,44 +535,64 @@ type G_DBUS_ERROR_PROPERTY_READ_ONLY = 44, TGDBusErrorMaxValue = $7FFFFFFF ); - TGDBusPropertyInfoFlags = ( - TGDBusPropertyInfoFlagsMinValue = -$7FFFFFFF, - G_DBUS_PROPERTY_INFO_FLAGS_NONE = 0, - G_DBUS_PROPERTY_INFO_FLAGS_READABLE = 1, - G_DBUS_PROPERTY_INFO_FLAGS_WRITABLE = 2, - TGDBusPropertyInfoFlagsMaxValue = $7FFFFFFF + TGDBusPropertyInfoFlagsIdx = ( + TGDBusPropertyInfoFlagsIdxMinValue = 0, + G_DBUS_PROPERTY_INFO_FLAGS_READABLE = 0, + G_DBUS_PROPERTY_INFO_FLAGS_WRITABLE = 1, + TGDBusPropertyInfoFlagsIdxMaxValue = 31 ); - TGDBusInterfaceSkeletonFlags = ( - TGDBusInterfaceSkeletonFlagsMinValue = -$7FFFFFFF, - G_DBUS_INTERFACE_SKELETON_FLAGS_NONE = 0, - G_DBUS_INTERFACE_SKELETON_FLAGS_HANDLE_METHOD_INVOCATIONS_IN_THREAD = 1, - TGDBusInterfaceSkeletonFlagsMaxValue = $7FFFFFFF + TGDBusPropertyInfoFlags = Set of TGDBusPropertyInfoFlagsIdx; +const + G_DBUS_PROPERTY_INFO_FLAGS_NONE = []; {0 = $00000000} + +type + TGDBusInterfaceSkeletonFlagsIdx = ( + TGDBusInterfaceSkeletonFlagsIdxMinValue = 0, + G_DBUS_INTERFACE_SKELETON_FLAGS_HANDLE_METHOD_INVOCATIONS_IN_THREAD = 0, + TGDBusInterfaceSkeletonFlagsIdxMaxValue = 31 ); - TGDBusObjectManagerClientFlags = ( - TGDBusObjectManagerClientFlagsMinValue = -$7FFFFFFF, - G_DBUS_OBJECT_MANAGER_CLIENT_FLAGS_NONE = 0, - G_DBUS_OBJECT_MANAGER_CLIENT_FLAGS_DO_NOT_AUTO_START = 1, - TGDBusObjectManagerClientFlagsMaxValue = $7FFFFFFF + TGDBusInterfaceSkeletonFlags = Set of TGDBusInterfaceSkeletonFlagsIdx; +const + G_DBUS_INTERFACE_SKELETON_FLAGS_NONE = []; {0 = $00000000} + +type + TGDBusObjectManagerClientFlagsIdx = ( + TGDBusObjectManagerClientFlagsIdxMinValue = 0, + G_DBUS_OBJECT_MANAGER_CLIENT_FLAGS_DO_NOT_AUTO_START = 0, + TGDBusObjectManagerClientFlagsIdxMaxValue = 31 ); - TGDBusProxyFlags = ( - TGDBusProxyFlagsMinValue = -$7FFFFFFF, - G_DBUS_PROXY_FLAGS_NONE = 0, - G_DBUS_PROXY_FLAGS_DO_NOT_LOAD_PROPERTIES = 1, - G_DBUS_PROXY_FLAGS_DO_NOT_CONNECT_SIGNALS = 2, - G_DBUS_PROXY_FLAGS_DO_NOT_AUTO_START = 4, - G_DBUS_PROXY_FLAGS_GET_INVALIDATED_PROPERTIES = 8, - G_DBUS_PROXY_FLAGS_DO_NOT_AUTO_START_AT_CONSTRUCTION = 16, - G_DBUS_PROXY_FLAGS_NO_MATCH_RULE = 32, - TGDBusProxyFlagsMaxValue = $7FFFFFFF + TGDBusObjectManagerClientFlags = Set of TGDBusObjectManagerClientFlagsIdx; +const + G_DBUS_OBJECT_MANAGER_CLIENT_FLAGS_NONE = []; {0 = $00000000} + +type + TGDBusProxyFlagsIdx = ( + TGDBusProxyFlagsIdxMinValue = 0, + G_DBUS_PROXY_FLAGS_DO_NOT_LOAD_PROPERTIES = 0, + G_DBUS_PROXY_FLAGS_DO_NOT_CONNECT_SIGNALS = 1, + G_DBUS_PROXY_FLAGS_DO_NOT_AUTO_START = 2, + G_DBUS_PROXY_FLAGS_GET_INVALIDATED_PROPERTIES = 3, + G_DBUS_PROXY_FLAGS_DO_NOT_AUTO_START_AT_CONSTRUCTION = 4, + G_DBUS_PROXY_FLAGS_NO_MATCH_RULE = 5, + TGDBusProxyFlagsIdxMaxValue = 31 ); - TGDBusServerFlags = ( - TGDBusServerFlagsMinValue = -$7FFFFFFF, - G_DBUS_SERVER_FLAGS_NONE = 0, - G_DBUS_SERVER_FLAGS_RUN_IN_THREAD = 1, - G_DBUS_SERVER_FLAGS_AUTHENTICATION_ALLOW_ANONYMOUS = 2, - G_DBUS_SERVER_FLAGS_AUTHENTICATION_REQUIRE_SAME_USER = 4, - TGDBusServerFlagsMaxValue = $7FFFFFFF + TGDBusProxyFlags = Set of TGDBusProxyFlagsIdx; +const + G_DBUS_PROXY_FLAGS_NONE = []; {0 = $00000000} + +type + TGDBusServerFlagsIdx = ( + TGDBusServerFlagsIdxMinValue = 0, + G_DBUS_SERVER_FLAGS_RUN_IN_THREAD = 0, + G_DBUS_SERVER_FLAGS_AUTHENTICATION_ALLOW_ANONYMOUS = 1, + G_DBUS_SERVER_FLAGS_AUTHENTICATION_REQUIRE_SAME_USER = 2, + TGDBusServerFlagsIdxMaxValue = 31 ); + TGDBusServerFlags = Set of TGDBusServerFlagsIdx; +const + G_DBUS_SERVER_FLAGS_NONE = []; {0 = $00000000} + +type TGDataStreamByteOrder = ( TGDataStreamByteOrderMinValue = -$7FFFFFFF, G_DATA_STREAM_BYTE_ORDER_BIG_ENDIAN = 0, @@ -534,19 +631,32 @@ type G_DRIVE_START_STOP_TYPE_PASSWORD = 4, TGDriveStartStopTypeMaxValue = $7FFFFFFF ); - TGTlsCertificateFlags = ( - TGTlsCertificateFlagsMinValue = -$7FFFFFFF, - G_TLS_CERTIFICATE_NO_FLAGS = 0, - G_TLS_CERTIFICATE_UNKNOWN_CA = 1, - G_TLS_CERTIFICATE_BAD_IDENTITY = 2, - G_TLS_CERTIFICATE_NOT_ACTIVATED = 4, - G_TLS_CERTIFICATE_EXPIRED = 8, - G_TLS_CERTIFICATE_REVOKED = 16, - G_TLS_CERTIFICATE_INSECURE = 32, - G_TLS_CERTIFICATE_GENERIC_ERROR = 64, - G_TLS_CERTIFICATE_VALIDATE_ALL = 127, - TGTlsCertificateFlagsMaxValue = $7FFFFFFF + TGTlsCertificateFlagsIdx = ( + TGTlsCertificateFlagsIdxMinValue = 0, + G_TLS_CERTIFICATE_UNKNOWN_CA = 0, + G_TLS_CERTIFICATE_BAD_IDENTITY = 1, + G_TLS_CERTIFICATE_NOT_ACTIVATED = 2, + G_TLS_CERTIFICATE_EXPIRED = 3, + G_TLS_CERTIFICATE_REVOKED = 4, + G_TLS_CERTIFICATE_INSECURE = 5, + G_TLS_CERTIFICATE_GENERIC_ERROR = 6, + TGTlsCertificateFlagsIdxMaxValue = 31 ); + TGTlsCertificateFlags = Set of TGTlsCertificateFlagsIdx; +const + G_TLS_CERTIFICATE_NO_FLAGS = []; {0 = $00000000} + + G_TLS_CERTIFICATE_VALIDATE_ALL = [ + G_TLS_CERTIFICATE_UNKNOWN_CA, + G_TLS_CERTIFICATE_BAD_IDENTITY, + G_TLS_CERTIFICATE_NOT_ACTIVATED, + G_TLS_CERTIFICATE_EXPIRED, + G_TLS_CERTIFICATE_REVOKED, + G_TLS_CERTIFICATE_INSECURE, + G_TLS_CERTIFICATE_GENERIC_ERROR + ]; {127 = $0000007F} + +type TGTlsChannelBindingType = ( TGTlsChannelBindingTypeMinValue = -$7FFFFFFF, G_TLS_CHANNEL_BINDING_TLS_UNIQUE = 0, @@ -560,11 +670,15 @@ type G_TLS_DATABASE_LOOKUP_KEYPAIR = 1, TGTlsDatabaseLookupFlagsMaxValue = $7FFFFFFF ); - TGTlsDatabaseVerifyFlags = ( - TGTlsDatabaseVerifyFlagsMinValue = -$7FFFFFFF, - G_TLS_DATABASE_VERIFY_NONE = 0, - TGTlsDatabaseVerifyFlagsMaxValue = $7FFFFFFF + TGTlsDatabaseVerifyFlagsIdx = ( + TGTlsDatabaseVerifyFlagsIdxMinValue = 0, + TGTlsDatabaseVerifyFlagsIdxMaxValue = 31 ); + TGTlsDatabaseVerifyFlags = Set of TGTlsDatabaseVerifyFlagsIdx; +const + G_TLS_DATABASE_VERIFY_NONE = []; {0 = $00000000} + +type TGTlsCertificateRequestFlags = ( TGTlsCertificateRequestFlagsMinValue = -$7FFFFFFF, G_TLS_CERTIFICATE_REQUEST_NONE = 0, @@ -630,13 +744,17 @@ type G_FILE_TYPE_MOUNTABLE = 6, TGFileTypeMaxValue = $7FFFFFFF ); - TGFileAttributeInfoFlags = ( - TGFileAttributeInfoFlagsMinValue = -$7FFFFFFF, - G_FILE_ATTRIBUTE_INFO_NONE = 0, - G_FILE_ATTRIBUTE_INFO_COPY_WITH_FILE = 1, - G_FILE_ATTRIBUTE_INFO_COPY_WHEN_MOVED = 2, - TGFileAttributeInfoFlagsMaxValue = $7FFFFFFF + TGFileAttributeInfoFlagsIdx = ( + TGFileAttributeInfoFlagsIdxMinValue = 0, + G_FILE_ATTRIBUTE_INFO_COPY_WITH_FILE = 0, + G_FILE_ATTRIBUTE_INFO_COPY_WHEN_MOVED = 1, + TGFileAttributeInfoFlagsIdxMaxValue = 31 ); + TGFileAttributeInfoFlags = Set of TGFileAttributeInfoFlagsIdx; +const + G_FILE_ATTRIBUTE_INFO_NONE = []; {0 = $00000000} + +type TGFilesystemPreviewType = ( TGFilesystemPreviewTypeMinValue = -$7FFFFFFF, G_FILESYSTEM_PREVIEW_TYPE_IF_ALWAYS = 0, @@ -733,13 +851,17 @@ type G_POLLABLE_RETURN_OK = 1, TGPollableReturnMaxValue = $7FFFFFFF ); - TGResolverNameLookupFlags = ( - TGResolverNameLookupFlagsMinValue = -$7FFFFFFF, - G_RESOLVER_NAME_LOOKUP_FLAGS_DEFAULT = 0, - G_RESOLVER_NAME_LOOKUP_FLAGS_IPV4_ONLY = 1, - G_RESOLVER_NAME_LOOKUP_FLAGS_IPV6_ONLY = 2, - TGResolverNameLookupFlagsMaxValue = $7FFFFFFF + TGResolverNameLookupFlagsIdx = ( + TGResolverNameLookupFlagsIdxMinValue = 0, + G_RESOLVER_NAME_LOOKUP_FLAGS_IPV4_ONLY = 0, + G_RESOLVER_NAME_LOOKUP_FLAGS_IPV6_ONLY = 1, + TGResolverNameLookupFlagsIdxMaxValue = 31 ); + TGResolverNameLookupFlags = Set of TGResolverNameLookupFlagsIdx; +const + G_RESOLVER_NAME_LOOKUP_FLAGS_DEFAULT = []; {0 = $00000000} + +type TGResolverRecordType = ( TGResolverRecordTypeMinValue = -$7FFFFFFF, G_RESOLVER_RECORD_SRV = 1, @@ -756,33 +878,45 @@ type G_RESOLVER_ERROR_INTERNAL = 2, TGResolverErrorMaxValue = $7FFFFFFF ); - TGResourceLookupFlags = ( - TGResourceLookupFlagsMinValue = -$7FFFFFFF, - G_RESOURCE_LOOKUP_FLAGS_NONE = 0, - TGResourceLookupFlagsMaxValue = $7FFFFFFF + TGResourceLookupFlagsIdx = ( + TGResourceLookupFlagsIdxMinValue = 0, + TGResourceLookupFlagsIdxMaxValue = 31 ); + TGResourceLookupFlags = Set of TGResourceLookupFlagsIdx; +const + G_RESOURCE_LOOKUP_FLAGS_NONE = []; {0 = $00000000} + +type TGResourceError = ( TGResourceErrorMinValue = -$7FFFFFFF, G_RESOURCE_ERROR_NOT_FOUND = 0, G_RESOURCE_ERROR_INTERNAL = 1, TGResourceErrorMaxValue = $7FFFFFFF ); - TGResourceFlags = ( - TGResourceFlagsMinValue = -$7FFFFFFF, - G_RESOURCE_FLAGS_NONE = 0, - G_RESOURCE_FLAGS_COMPRESSED = 1, - TGResourceFlagsMaxValue = $7FFFFFFF + TGResourceFlagsIdx = ( + TGResourceFlagsIdxMinValue = 0, + G_RESOURCE_FLAGS_COMPRESSED = 0, + TGResourceFlagsIdxMaxValue = 31 ); - TGSettingsBindFlags = ( - TGSettingsBindFlagsMinValue = -$7FFFFFFF, - G_SETTINGS_BIND_DEFAULT = 0, - G_SETTINGS_BIND_GET = 1, - G_SETTINGS_BIND_SET = 2, - G_SETTINGS_BIND_NO_SENSITIVITY = 4, - G_SETTINGS_BIND_GET_NO_CHANGES = 8, - G_SETTINGS_BIND_INVERT_BOOLEAN = 16, - TGSettingsBindFlagsMaxValue = $7FFFFFFF + TGResourceFlags = Set of TGResourceFlagsIdx; +const + G_RESOURCE_FLAGS_NONE = []; {0 = $00000000} + +type + TGSettingsBindFlagsIdx = ( + TGSettingsBindFlagsIdxMinValue = 0, + G_SETTINGS_BIND_GET = 0, + G_SETTINGS_BIND_SET = 1, + G_SETTINGS_BIND_NO_SENSITIVITY = 2, + G_SETTINGS_BIND_GET_NO_CHANGES = 3, + G_SETTINGS_BIND_INVERT_BOOLEAN = 4, + TGSettingsBindFlagsIdxMaxValue = 31 ); + TGSettingsBindFlags = Set of TGSettingsBindFlagsIdx; +const + G_SETTINGS_BIND_DEFAULT = []; {0 = $00000000} + +type TGSocketType = ( TGSocketTypeMinValue = -$7FFFFFFF, G_SOCKET_TYPE_INVALID = 0, @@ -821,33 +955,45 @@ type G_SOCKET_LISTENER_LISTENED = 3, TGSocketListenerEventMaxValue = $7FFFFFFF ); - TGSocketMsgFlags = ( - TGSocketMsgFlagsMinValue = -$7FFFFFFF, - G_SOCKET_MSG_NONE = 0, - G_SOCKET_MSG_OOB = 1, - G_SOCKET_MSG_PEEK = 2, - G_SOCKET_MSG_DONTROUTE = 4, - TGSocketMsgFlagsMaxValue = $7FFFFFFF + TGSocketMsgFlagsIdx = ( + TGSocketMsgFlagsIdxMinValue = 0, + G_SOCKET_MSG_OOB = 0, + G_SOCKET_MSG_PEEK = 1, + G_SOCKET_MSG_DONTROUTE = 2, + TGSocketMsgFlagsIdxMaxValue = 31 ); - TGSubprocessFlags = ( - TGSubprocessFlagsMinValue = -$7FFFFFFF, - G_SUBPROCESS_FLAGS_NONE = 0, - G_SUBPROCESS_FLAGS_STDIN_PIPE = 1, - G_SUBPROCESS_FLAGS_STDIN_INHERIT = 2, - G_SUBPROCESS_FLAGS_STDOUT_PIPE = 4, - G_SUBPROCESS_FLAGS_STDOUT_SILENCE = 8, - G_SUBPROCESS_FLAGS_STDERR_PIPE = 16, - G_SUBPROCESS_FLAGS_STDERR_SILENCE = 32, - G_SUBPROCESS_FLAGS_STDERR_MERGE = 64, - G_SUBPROCESS_FLAGS_INHERIT_FDS = 128, - G_SUBPROCESS_FLAGS_SEARCH_PATH_FROM_ENVP = 256, - TGSubprocessFlagsMaxValue = $7FFFFFFF + TGSocketMsgFlags = Set of TGSocketMsgFlagsIdx; +const + G_SOCKET_MSG_NONE = []; {0 = $00000000} + +type + TGSubprocessFlagsIdx = ( + TGSubprocessFlagsIdxMinValue = 0, + G_SUBPROCESS_FLAGS_STDIN_PIPE = 0, + G_SUBPROCESS_FLAGS_STDIN_INHERIT = 1, + G_SUBPROCESS_FLAGS_STDOUT_PIPE = 2, + G_SUBPROCESS_FLAGS_STDOUT_SILENCE = 3, + G_SUBPROCESS_FLAGS_STDERR_PIPE = 4, + G_SUBPROCESS_FLAGS_STDERR_SILENCE = 5, + G_SUBPROCESS_FLAGS_STDERR_MERGE = 6, + G_SUBPROCESS_FLAGS_INHERIT_FDS = 7, + G_SUBPROCESS_FLAGS_SEARCH_PATH_FROM_ENVP = 8, + TGSubprocessFlagsIdxMaxValue = 31 ); - TGTestDBusFlags = ( - TGTestDBusFlagsMinValue = -$7FFFFFFF, - G_TEST_DBUS_NONE = 0, - TGTestDBusFlagsMaxValue = $7FFFFFFF + TGSubprocessFlags = Set of TGSubprocessFlagsIdx; +const + G_SUBPROCESS_FLAGS_NONE = []; {0 = $00000000} + +type + TGTestDBusFlagsIdx = ( + TGTestDBusFlagsIdxMinValue = 0, + TGTestDBusFlagsIdxMaxValue = 31 ); + TGTestDBusFlags = Set of TGTestDBusFlagsIdx; +const + G_TEST_DBUS_NONE = []; {0 = $00000000} + +type TGTlsChannelBindingError = ( TGTlsChannelBindingErrorMinValue = -$7FFFFFFF, G_TLS_CHANNEL_BINDING_ERROR_NOT_IMPLEMENTED = 0, @@ -877,17 +1023,21 @@ type G_TLS_INTERACTION_FAILED = 2, TGTlsInteractionResultMaxValue = $7FFFFFFF ); - TGTlsPasswordFlags = ( - TGTlsPasswordFlagsMinValue = -$7FFFFFFF, - G_TLS_PASSWORD_NONE = 0, - G_TLS_PASSWORD_RETRY = 2, - G_TLS_PASSWORD_MANY_TRIES = 4, - G_TLS_PASSWORD_FINAL_TRY = 8, - G_TLS_PASSWORD_PKCS11_USER = 16, - G_TLS_PASSWORD_PKCS11_SECURITY_OFFICER = 32, - G_TLS_PASSWORD_PKCS11_CONTEXT_SPECIFIC = 64, - TGTlsPasswordFlagsMaxValue = $7FFFFFFF + TGTlsPasswordFlagsIdx = ( + TGTlsPasswordFlagsIdxMinValue = 0, + G_TLS_PASSWORD_RETRY = 1, + G_TLS_PASSWORD_MANY_TRIES = 2, + G_TLS_PASSWORD_FINAL_TRY = 3, + G_TLS_PASSWORD_PKCS11_USER = 4, + G_TLS_PASSWORD_PKCS11_SECURITY_OFFICER = 5, + G_TLS_PASSWORD_PKCS11_CONTEXT_SPECIFIC = 6, + TGTlsPasswordFlagsIdxMaxValue = 31 ); + TGTlsPasswordFlags = Set of TGTlsPasswordFlagsIdx; +const + G_TLS_PASSWORD_NONE = []; {0 = $00000000} + +type TGUnixSocketAddressType = ( TGUnixSocketAddressTypeMinValue = -$7FFFFFFF, G_UNIX_SOCKET_ADDRESS_INVALID = 0, @@ -1071,7 +1221,7 @@ type { TGAsyncResult } PPGAsyncResult = ^PGAsyncResult; PGAsyncResult = ^TGAsyncResult; - TGAsyncReadyCallback = procedure(source_object: PGObject; res: PGAsyncResult; data: gpointer); cdecl; + TGAsyncReadyCallback = procedure(source_object: PGObject; res: PGAsyncResult; user_data: gpointer); cdecl; { TGAppLaunchContext } @@ -1515,7 +1665,7 @@ type { TGFileProgressCallback } PPGFileProgressCallback = ^PGFileProgressCallback; PGFileProgressCallback = ^TGFileProgressCallback; - TGFileProgressCallback = procedure(current_num_bytes: gint64; total_num_bytes: gint64; data: gpointer); cdecl; + TGFileProgressCallback = procedure(current_num_bytes: gint64; total_num_bytes: gint64; user_data: gpointer); cdecl; { TGMountUnmountFlags } @@ -1546,7 +1696,7 @@ type { TGFileReadMoreCallback } PPGFileReadMoreCallback = ^PGFileReadMoreCallback; PGFileReadMoreCallback = ^TGFileReadMoreCallback; - TGFileReadMoreCallback = function(file_contents: Pgchar; file_size: gint64; callback_data: gpointer): gboolean; cdecl; + TGFileReadMoreCallback = function(file_contents: Pgchar; file_size: gint64; user_data: gpointer): gboolean; cdecl; { TGFileMeasureFlags } @@ -1557,7 +1707,7 @@ type { TGFileMeasureProgressCallback } PPGFileMeasureProgressCallback = ^PGFileMeasureProgressCallback; PGFileMeasureProgressCallback = ^TGFileMeasureProgressCallback; - TGFileMeasureProgressCallback = procedure(reporting: gboolean; current_size: guint64; num_dirs: guint64; num_files: guint64; data: gpointer); cdecl; + TGFileMeasureProgressCallback = procedure(reporting: gboolean; current_size: guint64; num_dirs: guint64; num_files: guint64; user_data: gpointer); cdecl; { TGFileMonitor } @@ -2166,7 +2316,7 @@ type _g_reserved4: procedure; cdecl; _g_reserved5: procedure; cdecl; end; - TGCancellableSourceFunc = function(cancellable: PGCancellable; data: gpointer): gboolean; cdecl; + TGCancellableSourceFunc = function(cancellable: PGCancellable; user_data: gpointer): gboolean; cdecl; { TGConverter } @@ -2849,7 +2999,7 @@ type { TGDBusProxyTypeFunc } PPGDBusProxyTypeFunc = ^PGDBusProxyTypeFunc; PGDBusProxyTypeFunc = ^TGDBusProxyTypeFunc; - TGDBusProxyTypeFunc = function(manager: PGDBusObjectManagerClient; object_path: Pgchar; interface_name: Pgchar; data: gpointer): TGType; cdecl; + TGDBusProxyTypeFunc = function(manager: PGDBusObjectManagerClient; object_path: Pgchar; interface_name: Pgchar; user_data: gpointer): TGType; cdecl; { TGDBusObjectManagerClientPrivate } @@ -3284,7 +3434,7 @@ type condition_check: function(datagram_based: PGDatagramBased; condition: TGIOCondition): TGIOCondition; cdecl; condition_wait: function(datagram_based: PGDatagramBased; condition: TGIOCondition; timeout: gint64; cancellable: PGCancellable; error: PPGError): gboolean; cdecl; end; - TGDatagramBasedSourceFunc = function(datagram_based: PGDatagramBased; condition: TGIOCondition; data: gpointer): gboolean; cdecl; + TGDatagramBasedSourceFunc = function(datagram_based: PGDatagramBased; condition: TGIOCondition; user_data: gpointer): gboolean; cdecl; { TGDebugController } @@ -4423,7 +4573,7 @@ type PGIOSchedulerJob = ^TGIOSchedulerJob; TGIOSchedulerJob = object end; - TGIOSchedulerJobFunc = function(job: PGIOSchedulerJob; cancellable: PGCancellable; data: gpointer): gboolean; cdecl; + TGIOSchedulerJobFunc = function(job: PGIOSchedulerJob; cancellable: PGCancellable; user_data: gpointer): gboolean; cdecl; TGIOStreamPrivate = record end; @@ -4448,7 +4598,7 @@ type g_iface: TGTypeInterface; hash: function(icon: PGIcon): guint; cdecl; equal: function(icon1: PGIcon; icon2: PGIcon): gboolean; cdecl; - to_tokens: function(icon: PGIcon; tokens: Pgchar; out_version: Pgint): gboolean; cdecl; + to_tokens: function(icon: PGIcon; tokens: Pgpointer; out_version: Pgint): gboolean; cdecl; from_tokens: function(tokens: PPgchar; num_tokens: gint; version: gint; error: PPGError): PGIcon; cdecl; serialize: function(icon: PGIcon): PGVariant; cdecl; end; @@ -5290,7 +5440,7 @@ type write_nonblocking: function(stream: PGPollableOutputStream; buffer: Pguint8; count: gsize; error: PPGError): gssize; cdecl; writev_nonblocking: function(stream: PGPollableOutputStream; vectors: PGOutputVector; n_vectors: gsize; bytes_written: Pgsize; error: PPGError): TGPollableReturn; cdecl; end; - TGPollableSourceFunc = function(pollable_stream: PGObject; data: gpointer): gboolean; cdecl; + TGPollableSourceFunc = function(pollable_stream: PGObject; user_data: gpointer): gboolean; cdecl; { TGPowerProfileMonitor } @@ -6251,7 +6401,7 @@ type _g_reserved5: procedure; cdecl; _g_reserved6: procedure; cdecl; end; - TGSocketSourceFunc = function(socket: PGSocket; condition: TGIOCondition; data: gpointer): gboolean; cdecl; + TGSocketSourceFunc = function(socket: PGSocket; condition: TGIOCondition; user_data: gpointer): gboolean; cdecl; { TGSrvTarget } @@ -7871,7 +8021,7 @@ function g_filter_output_stream_get_type: TGType; cdecl; external; function g_icon_deserialize(value: PGVariant): PGIcon; cdecl; external; function g_icon_equal(icon1: PGIcon; icon2: PGIcon): gboolean; cdecl; external; function g_icon_get_type: TGType; cdecl; external; -function g_icon_hash(icon: PGIcon): guint; cdecl; external; +function g_icon_hash(icon: Pgpointer): guint; cdecl; external; function g_icon_new_for_string(str: Pgchar; error: PPGError): PGIcon; cdecl; external; function g_icon_serialize(icon: PGIcon): PGVariant; cdecl; external; function g_icon_to_string(icon: PGIcon): Pgchar; cdecl; external; diff --git a/lcl/interfaces/gtk3/gtk3bindings/lazglib2.pas b/lcl/interfaces/gtk3/gtk3bindings/lazglib2.pas index 10b616e776..c09f7f609b 100644 --- a/lcl/interfaces/gtk3/gtk3bindings/lazglib2.pas +++ b/lcl/interfaces/gtk3/gtk3bindings/lazglib2.pas @@ -23,12 +23,10 @@ const G_ANALYZER_ANALYZING = 1; G_ASCII_DTOSTR_BUF_SIZE = 39; - G_ATOMIC_REF_COUNT_INIT_ = 1; G_BIG_ENDIAN = 4321; G_CSET_A_2_Z = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'; G_CSET_DIGITS = '0123456789'; G_CSET_a_2_z_ = 'abcdefghijklmnopqrstuvwxyz'; - G_C_STD_VERSION = 199000; G_DATALIST_FLAGS_MASK = 3; G_DATE_BAD_DAY = 0; G_DATE_BAD_JULIAN = 0; @@ -103,12 +101,12 @@ const G_MAXUINT32 = 4294967295; G_MAXUINT64 = 18446744073709551615; G_MAXUINT8 = 255; - GLIB_MICRO_VERSION = 0; + GLIB_MICRO_VERSION = 4; G_MININT16 = -32768; G_MININT32 = -2147483648; G_MININT64 = -9223372036854775808; G_MININT8 = -128; - GLIB_MINOR_VERSION = 77; + GLIB_MINOR_VERSION = 74; G_MODULE_SUFFIX = 'so'; G_OPTION_REMAINING = ''; G_PDP_ENDIAN = 3412; @@ -122,7 +120,6 @@ const G_PRIORITY_HIGH = -100; G_PRIORITY_HIGH_IDLE = 100; G_PRIORITY_LOW = 300; - G_REF_COUNT_INIT_ = -1; G_SEARCHPATH_SEPARATOR = 58; G_SEARCHPATH_SEPARATOR_S = ':'; GLIB_SIZEOF_LONG = 8; @@ -154,21 +151,22 @@ const G_WIN32_MSG_HANDLE = 19981206; g_macro__has_attribute___noreturn__ = 0; type - TGAsciiType = ( - TGAsciiTypeMinValue = -$7FFFFFFF, - G_ASCII_ALNUM = 1, - G_ASCII_ALPHA = 2, - G_ASCII_CNTRL = 4, - G_ASCII_DIGIT = 8, - G_ASCII_GRAPH = 16, - G_ASCII_LOWER = 32, - G_ASCII_PRINT = 64, - G_ASCII_PUNCT = 128, - G_ASCII_SPACE = 256, - G_ASCII_UPPER = 512, - G_ASCII_XDIGIT = 1024, - TGAsciiTypeMaxValue = $7FFFFFFF + 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, @@ -286,40 +284,58 @@ type G_FILE_ERROR_FAILED = 24, TGFileErrorMaxValue = $7FFFFFFF ); - TGFileSetContentsFlags = ( - TGFileSetContentsFlagsMinValue = -$7FFFFFFF, - G_FILE_SET_CONTENTS_NONE = 0, - G_FILE_SET_CONTENTS_CONSISTENT = 1, - G_FILE_SET_CONTENTS_DURABLE = 2, - G_FILE_SET_CONTENTS_ONLY_EXISTING = 4, - TGFileSetContentsFlagsMaxValue = $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 ); - TGFileTest = ( - TGFileTestMinValue = -$7FFFFFFF, - G_FILE_TEST_IS_REGULAR = 1, - G_FILE_TEST_IS_SYMLINK = 2, - G_FILE_TEST_IS_DIR = 4, - G_FILE_TEST_IS_EXECUTABLE = 8, - G_FILE_TEST_EXISTS = 16, - TGFileTestMaxValue = $7FFFFFFF + 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 ); - TGFormatSizeFlags = ( - TGFormatSizeFlagsMinValue = -$7FFFFFFF, - G_FORMAT_SIZE_DEFAULT = 0, - G_FORMAT_SIZE_LONG_FORMAT = 1, - G_FORMAT_SIZE_IEC_UNITS = 2, - G_FORMAT_SIZE_BITS = 4, - G_FORMAT_SIZE_ONLY_VALUE = 8, - G_FORMAT_SIZE_ONLY_UNIT = 16, - TGFormatSizeFlagsMaxValue = $7FFFFFFF + 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 ); - TGHookFlagMask = ( - TGHookFlagMaskMinValue = -$7FFFFFFF, - G_HOOK_FLAG_ACTIVE = 1, - G_HOOK_FLAG_IN_CALL = 2, - G_HOOK_FLAG_MASK = 15, - TGHookFlagMaskMaxValue = $7FFFFFFF + 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, @@ -327,30 +343,53 @@ type G_SEEK_END = 2, TGSeekTypeMaxValue = $7FFFFFFF ); - TGIOCondition = ( - TGIOConditionMinValue = -$7FFFFFFF, - G_IO_IN = 1, - G_IO_PRI = 2, - G_IO_OUT = 4, - G_IO_ERR = 8, - G_IO_HUP = 16, - G_IO_NVAL = 32, - TGIOConditionMaxValue = $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 ); - TGIOFlags = ( - TGIOFlagsMinValue = -$7FFFFFFF, - G_IO_FLAG_NONE = 0, - G_IO_FLAG_APPEND = 1, - G_IO_FLAG_NONBLOCK = 2, - G_IO_FLAG_SET_MASK = 3, - G_IO_FLAG_IS_READABLE = 4, - G_IO_FLAG_IS_WRITEABLE = 8, - G_IO_FLAG_IS_WRITABLE = 8, - G_IO_FLAG_IS_SEEKABLE = 16, - G_IO_FLAG_GET_MASK = 31, - G_IO_FLAG_MASK = 31, - TGIOFlagsMaxValue = $7FFFFFFF + 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, @@ -380,13 +419,17 @@ type G_IO_CHANNEL_ERROR_FAILED = 8, TGIOChannelErrorMaxValue = $7FFFFFFF ); - TGKeyFileFlags = ( - TGKeyFileFlagsMinValue = -$7FFFFFFF, - G_KEY_FILE_NONE = 0, - G_KEY_FILE_KEEP_COMMENTS = 1, - G_KEY_FILE_KEEP_TRANSLATIONS = 2, - TGKeyFileFlagsMaxValue = $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, @@ -397,41 +440,88 @@ type G_KEY_FILE_ERROR_INVALID_VALUE = 5, TGKeyFileErrorMaxValue = $7FFFFFFF ); - TGLogLevelFlags = ( - TGLogLevelFlagsMinValue = -$7FFFFFFF, - G_LOG_LEVEL_MASK = -4, - G_LOG_FLAG_RECURSION = 1, - G_LOG_FLAG_FATAL = 2, - G_LOG_LEVEL_ERROR = 4, - G_LOG_LEVEL_CRITICAL = 8, - G_LOG_LEVEL_WARNING = 16, - G_LOG_LEVEL_MESSAGE = 32, - G_LOG_LEVEL_INFO = 64, - G_LOG_LEVEL_DEBUG = 128, - TGLogLevelFlagsMaxValue = $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 ); - TGMainContextFlags = ( - TGMainContextFlagsMinValue = -$7FFFFFFF, - G_MAIN_CONTEXT_FLAGS_NONE = 0, - G_MAIN_CONTEXT_FLAGS_OWNERLESS_POLLING = 1, - TGMainContextFlagsMaxValue = $7FFFFFFF + TGMainContextFlagsIdx = ( + TGMainContextFlagsIdxMinValue = 0, + G_MAIN_CONTEXT_FLAGS_OWNERLESS_POLLING = 0, + TGMainContextFlagsIdxMaxValue = 31 ); - TGMarkupCollectType = ( - TGMarkupCollectTypeMinValue = -$7FFFFFFF, - G_MARKUP_COLLECT_INVALID = 0, - G_MARKUP_COLLECT_STRING = 1, - G_MARKUP_COLLECT_STRDUP = 2, - G_MARKUP_COLLECT_BOOLEAN = 3, - G_MARKUP_COLLECT_TRISTATE = 4, - G_MARKUP_COLLECT_OPTIONAL = 65536, - TGMarkupCollectTypeMaxValue = $7FFFFFFF + TGMainContextFlags = Set of TGMainContextFlagsIdx; +const + G_MAIN_CONTEXT_FLAGS_NONE = []; {0 = $00000000} + +type + 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, @@ -443,68 +533,107 @@ type G_MARKUP_ERROR_MISSING_ATTRIBUTE = 6, TGMarkupErrorMaxValue = $7FFFFFFF ); - TGMarkupParseFlags = ( - TGMarkupParseFlagsMinValue = -$7FFFFFFF, - G_MARKUP_DEFAULT_FLAGS = 0, - G_MARKUP_DO_NOT_USE_THIS_UNSUPPORTED_FLAG = 1, - G_MARKUP_TREAT_CDATA_AS_TEXT = 2, - G_MARKUP_PREFIX_ERROR_POSITION = 4, - G_MARKUP_IGNORE_QUALIFIED = 8, - TGMarkupParseFlagsMaxValue = $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 ); - TGRegexCompileFlags = ( - TGRegexCompileFlagsMinValue = -$7FFFFFFF, - G_REGEX_DEFAULT = 0, - G_REGEX_CASELESS = 1, - G_REGEX_MULTILINE = 2, - G_REGEX_DOTALL = 4, - G_REGEX_EXTENDED = 8, - G_REGEX_ANCHORED = 16, - G_REGEX_DOLLAR_ENDONLY = 32, - G_REGEX_UNGREEDY = 512, - G_REGEX_RAW = 2048, - G_REGEX_NO_AUTO_CAPTURE = 4096, - G_REGEX_OPTIMIZE = 8192, - G_REGEX_FIRSTLINE = 262144, - G_REGEX_DUPNAMES = 524288, - G_REGEX_NEWLINE_CR = 1048576, - G_REGEX_NEWLINE_LF = 2097152, - G_REGEX_NEWLINE_CRLF = 3145728, - G_REGEX_NEWLINE_ANYCRLF = 5242880, - G_REGEX_BSR_ANYCRLF = 8388608, - G_REGEX_JAVASCRIPT_COMPAT = 33554432, - TGRegexCompileFlagsMaxValue = $7FFFFFFF + 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 ); - TGRegexMatchFlags = ( - TGRegexMatchFlagsMinValue = -$7FFFFFFF, - G_REGEX_MATCH_DEFAULT = 0, - G_REGEX_MATCH_ANCHORED = 16, - G_REGEX_MATCH_NOTBOL = 128, - G_REGEX_MATCH_NOTEOL = 256, - G_REGEX_MATCH_NOTEMPTY = 1024, - G_REGEX_MATCH_PARTIAL_SOFT = 32768, - G_REGEX_MATCH_PARTIAL = 32768, - G_REGEX_MATCH_NEWLINE_CR = 1048576, - G_REGEX_MATCH_NEWLINE_LF = 2097152, - G_REGEX_MATCH_NEWLINE_CRLF = 3145728, - G_REGEX_MATCH_NEWLINE_ANY = 4194304, - G_REGEX_MATCH_NEWLINE_ANYCRLF = 5242880, - G_REGEX_MATCH_BSR_ANYCRLF = 8388608, - G_REGEX_MATCH_BSR_ANY = 16777216, - G_REGEX_MATCH_PARTIAL_HARD = 134217728, - G_REGEX_MATCH_NOTEMPTY_ATSTART = 268435456, - TGRegexMatchFlagsMaxValue = $7FFFFFFF + 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 ); - TGTraverseFlags = ( - TGTraverseFlagsMinValue = -$7FFFFFFF, - G_TRAVERSE_LEAFS = 1, - G_TRAVERSE_LEAVES = 1, - G_TRAVERSE_NON_LEAFS = 2, - G_TRAVERSE_NON_LEAVES = 2, - G_TRAVERSE_ALL = 3, - G_TRAVERSE_MASK = 3, - TGTraverseFlagsMaxValue = $7FFFFFFF + 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, @@ -558,18 +687,22 @@ type G_OPTION_ERROR_FAILED = 2, TGOptionErrorMaxValue = $7FFFFFFF ); - TGOptionFlags = ( - TGOptionFlagsMinValue = -$7FFFFFFF, - G_OPTION_FLAG_NONE = 0, - G_OPTION_FLAG_HIDDEN = 1, - G_OPTION_FLAG_IN_MAIN = 2, - G_OPTION_FLAG_REVERSE = 4, - G_OPTION_FLAG_NO_ARG = 8, - G_OPTION_FLAG_FILENAME = 16, - G_OPTION_FLAG_OPTIONAL_ARG = 32, - G_OPTION_FLAG_NOALIAS = 64, - TGOptionFlagsMaxValue = $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, @@ -700,23 +833,27 @@ type G_SPAWN_ERROR_FAILED = 19, TGSpawnErrorMaxValue = $7FFFFFFF ); - TGSpawnFlags = ( - TGSpawnFlagsMinValue = -$7FFFFFFF, - G_SPAWN_DEFAULT = 0, - G_SPAWN_LEAVE_DESCRIPTORS_OPEN = 1, - G_SPAWN_DO_NOT_REAP_CHILD = 2, - G_SPAWN_SEARCH_PATH = 4, - G_SPAWN_STDOUT_TO_DEV_NULL = 8, - G_SPAWN_STDERR_TO_DEV_NULL = 16, - G_SPAWN_CHILD_INHERITS_STDIN = 32, - G_SPAWN_FILE_AND_ARGV_ZERO = 64, - G_SPAWN_SEARCH_PATH_FROM_ENVP = 128, - G_SPAWN_CLOEXEC_PIPES = 256, - G_SPAWN_CHILD_INHERITS_STDOUT = 512, - G_SPAWN_CHILD_INHERITS_STDERR = 1024, - G_SPAWN_STDIN_FROM_DEV_NULL = 2048, - TGSpawnFlagsMaxValue = $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, @@ -747,22 +884,30 @@ type G_TEST_RUN_INCOMPLETE = 3, TGTestResultMaxValue = $7FFFFFFF ); - TGTestSubprocessFlags = ( - TGTestSubprocessFlagsMinValue = -$7FFFFFFF, - G_TEST_SUBPROCESS_DEFAULT = 0, - G_TEST_SUBPROCESS_INHERIT_STDIN = 1, - G_TEST_SUBPROCESS_INHERIT_STDOUT = 2, - G_TEST_SUBPROCESS_INHERIT_STDERR = 4, - TGTestSubprocessFlagsMaxValue = $7FFFFFFF + TGTestSubprocessFlagsIdx = ( + TGTestSubprocessFlagsIdxMinValue = 0, + G_TEST_SUBPROCESS_INHERIT_STDIN = 0, + G_TEST_SUBPROCESS_INHERIT_STDOUT = 1, + G_TEST_SUBPROCESS_INHERIT_STDERR = 2, + TGTestSubprocessFlagsIdxMaxValue = 31 ); - TGTestTrapFlags = ( - TGTestTrapFlagsMinValue = -$7FFFFFFF, - G_TEST_TRAP_DEFAULT = 0, - G_TEST_TRAP_SILENCE_STDOUT = 128, - G_TEST_TRAP_SILENCE_STDERR = 256, - G_TEST_TRAP_INHERIT_STDIN = 512, - TGTestTrapFlagsMaxValue = $7FFFFFFF + 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, @@ -1020,38 +1165,50 @@ type G_UNICODE_SPACE_SEPARATOR = 29, TGUnicodeTypeMaxValue = $7FFFFFFF ); - TGUriFlags = ( - TGUriFlagsMinValue = -$7FFFFFFF, - G_URI_FLAGS_NONE = 0, - G_URI_FLAGS_PARSE_RELAXED = 1, - G_URI_FLAGS_HAS_PASSWORD = 2, - G_URI_FLAGS_HAS_AUTH_PARAMS = 4, - G_URI_FLAGS_ENCODED = 8, - G_URI_FLAGS_NON_DNS = 16, - G_URI_FLAGS_ENCODED_QUERY = 32, - G_URI_FLAGS_ENCODED_PATH = 64, - G_URI_FLAGS_ENCODED_FRAGMENT = 128, - G_URI_FLAGS_SCHEME_NORMALIZE = 256, - TGUriFlagsMaxValue = $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 ); - TGUriHideFlags = ( - TGUriHideFlagsMinValue = -$7FFFFFFF, - G_URI_HIDE_NONE = 0, - G_URI_HIDE_USERINFO = 1, - G_URI_HIDE_PASSWORD = 2, - G_URI_HIDE_AUTH_PARAMS = 4, - G_URI_HIDE_QUERY = 8, - G_URI_HIDE_FRAGMENT = 16, - TGUriHideFlagsMaxValue = $7FFFFFFF + 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 ); - TGUriParamsFlags = ( - TGUriParamsFlagsMinValue = -$7FFFFFFF, - G_URI_PARAMS_NONE = 0, - G_URI_PARAMS_CASE_INSENSITIVE = 1, - G_URI_PARAMS_WWW_FORM = 2, - G_URI_PARAMS_PARSE_RELAXED = 4, - TGUriParamsFlagsMaxValue = $7FFFFFFF + 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, @@ -1815,7 +1972,7 @@ type { TGConvertError } PPGConvertError = ^PGConvertError; PGConvertError = ^TGConvertError; - TGCopyFunc = function(src: Pgpointer; data: gpointer): gpointer; cdecl; + TGCopyFunc = function(src: Pgpointer; user_data: gpointer): gpointer; cdecl; { TGData } @@ -2175,7 +2332,7 @@ type { TGHookFindFunc } PPGHookFindFunc = ^PGHookFindFunc; PGHookFindFunc = ^TGHookFindFunc; - TGHookFindFunc = function(hook: PGHook; data: gpointer): gboolean; cdecl; + TGHookFindFunc = function(hook: PGHook; user_data: gpointer): gboolean; cdecl; { TGHookCompareFunc } @@ -2214,13 +2371,13 @@ type { TGHookMarshaller } PPGHookMarshaller = ^PGHookMarshaller; PGHookMarshaller = ^TGHookMarshaller; - TGHookMarshaller = procedure(hook: PGHook; marshal_data: gpointer); cdecl; + TGHookMarshaller = procedure(hook: PGHook; user_data: gpointer); cdecl; { TGHookCheckMarshaller } PPGHookCheckMarshaller = ^PGHookCheckMarshaller; PGHookCheckMarshaller = ^TGHookCheckMarshaller; - TGHookCheckMarshaller = function(hook: PGHook; marshal_data: gpointer): gboolean; cdecl; + 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 }; @@ -2421,7 +2578,7 @@ type { TGIOError } PPGIOError = ^PGIOError; PGIOError = ^TGIOError; - TGIOFunc = function(source: PGIOChannel; condition: TGIOCondition; data: gpointer): gboolean; cdecl; + TGIOFunc = function(source: PGIOChannel; condition: TGIOCondition; user_data: gpointer): gboolean; cdecl; { TGSourceFuncs } @@ -2879,7 +3036,7 @@ type { TGNodeForeachFunc } PPGNodeForeachFunc = ^PGNodeForeachFunc; PGNodeForeachFunc = ^TGNodeForeachFunc; - TGNodeForeachFunc = procedure(node: PGNode; data: gpointer); cdecl; + TGNodeForeachFunc = procedure(node: PGNode; user_data: gpointer); cdecl; { TGTraverseType } @@ -2890,7 +3047,7 @@ type { TGNodeTraverseFunc } PPGNodeTraverseFunc = ^PGNodeTraverseFunc; PGNodeTraverseFunc = ^TGNodeTraverseFunc; - TGNodeTraverseFunc = function(node: PGNode; data: gpointer): gboolean; cdecl; + TGNodeTraverseFunc = function(node: PGNode; user_data: gpointer): gboolean; cdecl; TGNode = object data: gpointer; next: PGNode; @@ -2949,7 +3106,7 @@ type { TGThreadFunc } PPGThreadFunc = ^PGThreadFunc; PGThreadFunc = ^TGThreadFunc; - TGThreadFunc = function(data: gpointer): gpointer; cdecl; + TGThreadFunc = function(user_data: gpointer): gpointer; cdecl; TGOnce = object status: TGOnceStatus; retval: gpointer; @@ -2962,7 +3119,7 @@ type { TGOptionArg } PPGOptionArg = ^PGOptionArg; PGOptionArg = ^TGOptionArg; - TGOptionArgFunc = function(option_name: Pgchar; value: Pgchar; data: gpointer; error: PPGError): gboolean; cdecl; + TGOptionArgFunc = function(option_name: Pgchar; value: Pgchar; user_data: gpointer; error: PPGError): gboolean; cdecl; { TGOptionContext } @@ -2983,7 +3140,7 @@ type { TGTranslateFunc } PPGTranslateFunc = ^PGTranslateFunc; PGTranslateFunc = ^TGTranslateFunc; - TGTranslateFunc = function(str: Pgchar; data: gpointer): Pgchar; cdecl; + 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; @@ -3012,13 +3169,13 @@ type { TGOptionErrorFunc } PPGOptionErrorFunc = ^PGOptionErrorFunc; PGOptionErrorFunc = ^TGOptionErrorFunc; - TGOptionErrorFunc = procedure(context: PGOptionContext; group: PGOptionGroup; data: gpointer; error: PPGError); cdecl; + TGOptionErrorFunc = procedure(context: PGOptionContext; group: PGOptionGroup; user_data: gpointer; error: PPGError); cdecl; { TGOptionParseFunc } PPGOptionParseFunc = ^PGOptionParseFunc; PGOptionParseFunc = ^TGOptionParseFunc; - TGOptionParseFunc = function(context: PGOptionContext; group: PGOptionGroup; data: gpointer; error: PPGError): gboolean; cdecl; + 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; @@ -3452,7 +3609,7 @@ type TGSourceOnceFunc = procedure(user_data: gpointer); cdecl; - TGSpawnChildSetupFunc = procedure(data: gpointer); cdecl; + TGSpawnChildSetupFunc = procedure(user_data: gpointer); cdecl; { TGSpawnError } @@ -3649,7 +3806,7 @@ type TGTrashStack = object next: PGTrashStack; end; - TGTraverseFunc = function(key: gpointer; value: gpointer; data: gpointer): gboolean; cdecl; + TGTraverseFunc = function(key: gpointer; value: gpointer; user_data: gpointer): gboolean; cdecl; { TGTreeNode } @@ -3657,7 +3814,7 @@ type PGTreeNode = ^TGTreeNode; TGTreeNode = object end; - TGTraverseNodeFunc = function(node: PGTreeNode; data: gpointer): gboolean; cdecl; + TGTraverseNodeFunc = function(node: PGTreeNode; user_data: gpointer): gboolean; cdecl; { TGTree } @@ -3946,7 +4103,7 @@ type end; TGVariantIter = object - x: array [0..15] of Tguintptr; + x: array [0..15] of gsize; function copy: PGVariantIter; cdecl; inline; procedure free; cdecl; inline; function init(value: PGVariant): gsize; cdecl; inline; @@ -3971,11 +4128,11 @@ type s : record partial_magic: gsize; type_: PGVariantType; - y: array [0..13] of Tguintptr; + y: array [0..13] of gsize; end; ); - 1 : (x: array [0..15] of Tguintptr); + 1 : (x: array [0..15] of gsize); end; @@ -4009,11 +4166,11 @@ type s : record asv: PGVariant; partial_magic: gsize; - y: array [0..13] of Tguintptr; + y: array [0..13] of gsize; end; ); - 1 : (x: array [0..15] of Tguintptr); + 1 : (x: array [0..15] of gsize); end; diff --git a/lcl/interfaces/gtk3/gtk3bindings/lazgmodule2.pas b/lcl/interfaces/gtk3/gtk3bindings/lazgmodule2.pas index 3ad35230e2..a02dbd7d1a 100644 --- a/lcl/interfaces/gtk3/gtk3bindings/lazgmodule2.pas +++ b/lcl/interfaces/gtk3/gtk3bindings/lazgmodule2.pas @@ -21,13 +21,20 @@ const {$endif} type - TGModuleFlags = ( - TGModuleFlagsMinValue = -$7FFFFFFF, - G_MODULE_BIND_LAZY = 1, - G_MODULE_BIND_LOCAL = 2, - G_MODULE_BIND_MASK = 3, - TGModuleFlagsMaxValue = $7FFFFFFF + TGModuleFlagsIdx = ( + TGModuleFlagsIdxMinValue = 0, + G_MODULE_BIND_LAZY = 0, + G_MODULE_BIND_LOCAL = 1, + TGModuleFlagsIdxMaxValue = 31 ); + TGModuleFlags = Set of TGModuleFlagsIdx; +const + G_MODULE_BIND_MASK = [ + G_MODULE_BIND_LAZY, + G_MODULE_BIND_LOCAL + ]; {3 = $00000003} + +type TGModuleError = ( TGModuleErrorMinValue = -$7FFFFFFF, G_MODULE_ERROR_FAILED = 0, diff --git a/lcl/interfaces/gtk3/gtk3bindings/lazgtk3.pas b/lcl/interfaces/gtk3/gtk3bindings/lazgtk3.pas index d86be6394e..1d8dae31c4 100644 --- a/lcl/interfaces/gtk3/gtk3bindings/lazgtk3.pas +++ b/lcl/interfaces/gtk3/gtk3bindings/lazgtk3.pas @@ -20,7 +20,7 @@ const LazGtk3_library = 'libgtk-3.so.0'; {$endif} - GTK_BINARY_AGE = 2438; + GTK_BINARY_AGE = 2437; GTK_INPUT_ERROR = -1; GTK_INTERFACE_AGE = 32; GTK_LEVEL_BAR_OFFSET_FULL = 'full'; @@ -28,7 +28,7 @@ const GTK_LEVEL_BAR_OFFSET_LOW = 'low'; GTK_MAJOR_VERSION = 3; GTK_MAX_COMPOSE_LEN = 7; - GTK_MICRO_VERSION = 38; + GTK_MICRO_VERSION = 37; GTK_MINOR_VERSION = 24; GTK_PAPER_NAME_A3 = 'iso_a3'; GTK_PAPER_NAME_A4 = 'iso_a4'; @@ -282,7 +282,6 @@ const GTK_TEXT_VIEW_PRIORITY_VALIDATE = 125; GTK_TREE_SORTABLE_DEFAULT_SORT_COLUMN_ID = -1; GTK_TREE_SORTABLE_UNSORTED_SORT_COLUMN_ID = -2; - type TGtkTextDirection = ( TGtkTextDirectionMinValue = -$7FFFFFFF, @@ -291,7 +290,6 @@ type GTK_TEXT_DIR_RTL = 2, TGtkTextDirectionMaxValue = $7FFFFFFF ); -type TGtkAccelFlagsIdx = ( TGtkAccelFlagsIdxMinValue = 0, GTK_ACCEL_VISIBLE = 0, diff --git a/lcl/interfaces/gtk3/gtk3bindings/lazharfbuzz0.pas b/lcl/interfaces/gtk3/gtk3bindings/lazharfbuzz0.pas index e5b059e235..b0f5870479 100644 --- a/lcl/interfaces/gtk3/gtk3bindings/lazharfbuzz0.pas +++ b/lcl/interfaces/gtk3/gtk3bindings/lazharfbuzz0.pas @@ -16,15 +16,14 @@ uses const {$ifdef MsWindows} - LazHarfBuzz0_library = 'libharfbuzz.so.dll'; + LazHarfBuzz0_library = 'libharfbuzz-gobject.so.dll'; {$else} - LazHarfBuzz0_library = 'libharfbuzz.so.0'; + LazHarfBuzz0_library = 'libharfbuzz-gobject.so.0'; {$endif} HB_AAT_LAYOUT_NO_SELECTOR_INDEX = 65535; HB_BUFFER_REPLACEMENT_CODEPOINT_DEFAULT = 65533; HB_FEATURE_GLOBAL_START = 0; - HB_FONT_NO_VAR_NAMED_INSTANCE = 4294967295; HB_LANGUAGE_INVALID = 0; HB_MAP_VALUE_INVALID = 4294967295; HB_OT_LAYOUT_DEFAULT_LANGUAGE_INDEX = 65535; @@ -37,10 +36,10 @@ const HB_SET_VALUE_INVALID = 4294967295; HB_UNICODE_MAX = 1114111; HB_UNICODE_MAX_DECOMPOSITION_LEN = 19; - HB_VERSION_MAJOR = 7; + HB_VERSION_MAJOR = 6; HB_VERSION_MICRO = 0; - HB_VERSION_MINOR = 1; - HB_VERSION_STRING_ = '7.1.0'; + HB_VERSION_MINOR = 0; + HB_VERSION_STRING = '6.0.0'; type Thb_aat_layout_feature_selector_t = ( Thb_aat_layout_feature_selector_tMinValue = -$7FFFFFFF, @@ -371,33 +370,51 @@ type HB_BUFFER_SERIALIZE_FORMAT_TEXT = 1413830740, Thb_buffer_serialize_format_tMaxValue = $7FFFFFFF ); - Thb_buffer_diff_flags_t = ( - Thb_buffer_diff_flags_tMinValue = -$7FFFFFFF, - HB_BUFFER_DIFF_FLAG_EQUAL = 0, - HB_BUFFER_DIFF_FLAG_CONTENT_TYPE_MISMATCH = 1, - HB_BUFFER_DIFF_FLAG_LENGTH_MISMATCH = 2, - HB_BUFFER_DIFF_FLAG_NOTDEF_PRESENT = 4, - HB_BUFFER_DIFF_FLAG_DOTTED_CIRCLE_PRESENT = 8, - HB_BUFFER_DIFF_FLAG_CODEPOINT_MISMATCH = 16, - HB_BUFFER_DIFF_FLAG_CLUSTER_MISMATCH = 32, - HB_BUFFER_DIFF_FLAG_GLYPH_FLAGS_MISMATCH = 64, - HB_BUFFER_DIFF_FLAG_POSITION_MISMATCH = 128, - Thb_buffer_diff_flags_tMaxValue = $7FFFFFFF + Thb_buffer_diff_flags_tIdx = ( + Thb_buffer_diff_flags_tIdxMinValue = 0, + HB_BUFFER_DIFF_FLAG_CONTENT_TYPE_MISMATCH = 0, + HB_BUFFER_DIFF_FLAG_LENGTH_MISMATCH = 1, + HB_BUFFER_DIFF_FLAG_NOTDEF_PRESENT = 2, + HB_BUFFER_DIFF_FLAG_DOTTED_CIRCLE_PRESENT = 3, + HB_BUFFER_DIFF_FLAG_CODEPOINT_MISMATCH = 4, + HB_BUFFER_DIFF_FLAG_CLUSTER_MISMATCH = 5, + HB_BUFFER_DIFF_FLAG_GLYPH_FLAGS_MISMATCH = 6, + HB_BUFFER_DIFF_FLAG_POSITION_MISMATCH = 7, + Thb_buffer_diff_flags_tIdxMaxValue = 31 ); - Thb_buffer_flags_t = ( - Thb_buffer_flags_tMinValue = -$7FFFFFFF, - HB_BUFFER_FLAG_DEFAULT = 0, - HB_BUFFER_FLAG_BOT = 1, - HB_BUFFER_FLAG_EOT = 2, - HB_BUFFER_FLAG_PRESERVE_DEFAULT_IGNORABLES = 4, - HB_BUFFER_FLAG_REMOVE_DEFAULT_IGNORABLES = 8, - HB_BUFFER_FLAG_DO_NOT_INSERT_DOTTED_CIRCLE = 16, - HB_BUFFER_FLAG_VERIFY = 32, - HB_BUFFER_FLAG_PRODUCE_UNSAFE_TO_CONCAT = 64, - HB_BUFFER_FLAG_PRODUCE_SAFE_TO_INSERT_TATWEEL = 128, - HB_BUFFER_FLAG_DEFINED = 255, - Thb_buffer_flags_tMaxValue = $7FFFFFFF + Thb_buffer_diff_flags_t = Set of Thb_buffer_diff_flags_tIdx; +const + HB_BUFFER_DIFF_FLAG_EQUAL = []; {0 = $00000000} + +type + Thb_buffer_flags_tIdx = ( + Thb_buffer_flags_tIdxMinValue = 0, + HB_BUFFER_FLAG_BOT = 0, + HB_BUFFER_FLAG_EOT = 1, + HB_BUFFER_FLAG_PRESERVE_DEFAULT_IGNORABLES = 2, + HB_BUFFER_FLAG_REMOVE_DEFAULT_IGNORABLES = 3, + HB_BUFFER_FLAG_DO_NOT_INSERT_DOTTED_CIRCLE = 4, + HB_BUFFER_FLAG_VERIFY = 5, + HB_BUFFER_FLAG_PRODUCE_UNSAFE_TO_CONCAT = 6, + HB_BUFFER_FLAG_PRODUCE_SAFE_TO_INSERT_TATWEEL = 7, + Thb_buffer_flags_tIdxMaxValue = 31 ); + Thb_buffer_flags_t = Set of Thb_buffer_flags_tIdx; +const + HB_BUFFER_FLAG_DEFAULT = []; {0 = $00000000} + + HB_BUFFER_FLAG_DEFINED = [ + HB_BUFFER_FLAG_BOT, + HB_BUFFER_FLAG_EOT, + HB_BUFFER_FLAG_PRESERVE_DEFAULT_IGNORABLES, + HB_BUFFER_FLAG_REMOVE_DEFAULT_IGNORABLES, + HB_BUFFER_FLAG_DO_NOT_INSERT_DOTTED_CIRCLE, + HB_BUFFER_FLAG_VERIFY, + HB_BUFFER_FLAG_PRODUCE_UNSAFE_TO_CONCAT, + HB_BUFFER_FLAG_PRODUCE_SAFE_TO_INSERT_TATWEEL + ]; {255 = $000000FF} + +type Thb_direction_t = ( Thb_direction_tMinValue = -$7FFFFFFF, HB_DIRECTION_INVALID = 0, @@ -577,40 +594,57 @@ type HB_SCRIPT_UNKNOWN = 1517976186, Thb_script_tMaxValue = $7FFFFFFF ); - Thb_buffer_serialize_flags_t = ( - Thb_buffer_serialize_flags_tMinValue = -$7FFFFFFF, - HB_BUFFER_SERIALIZE_FLAG_DEFAULT = 0, - HB_BUFFER_SERIALIZE_FLAG_NO_CLUSTERS = 1, - HB_BUFFER_SERIALIZE_FLAG_NO_POSITIONS = 2, - HB_BUFFER_SERIALIZE_FLAG_NO_GLYPH_NAMES = 4, - HB_BUFFER_SERIALIZE_FLAG_GLYPH_EXTENTS = 8, - HB_BUFFER_SERIALIZE_FLAG_GLYPH_FLAGS = 16, - HB_BUFFER_SERIALIZE_FLAG_NO_ADVANCES = 32, - HB_BUFFER_SERIALIZE_FLAG_DEFINED = 63, - Thb_buffer_serialize_flags_tMaxValue = $7FFFFFFF + Thb_buffer_serialize_flags_tIdx = ( + Thb_buffer_serialize_flags_tIdxMinValue = 0, + HB_BUFFER_SERIALIZE_FLAG_NO_CLUSTERS = 0, + HB_BUFFER_SERIALIZE_FLAG_NO_POSITIONS = 1, + HB_BUFFER_SERIALIZE_FLAG_NO_GLYPH_NAMES = 2, + HB_BUFFER_SERIALIZE_FLAG_GLYPH_EXTENTS = 3, + HB_BUFFER_SERIALIZE_FLAG_GLYPH_FLAGS = 4, + HB_BUFFER_SERIALIZE_FLAG_NO_ADVANCES = 5, + Thb_buffer_serialize_flags_tIdxMaxValue = 31 ); - Thb_paint_extend_t = ( - Thb_paint_extend_tMinValue = -$7FFFFFFF, - HB_PAINT_EXTEND_PAD = 0, - HB_PAINT_EXTEND_REPEAT = 1, - HB_PAINT_EXTEND_REFLECT = 2, - Thb_paint_extend_tMaxValue = $7FFFFFFF + Thb_buffer_serialize_flags_t = Set of Thb_buffer_serialize_flags_tIdx; +const + HB_BUFFER_SERIALIZE_FLAG_DEFAULT = []; {0 = $00000000} + + HB_BUFFER_SERIALIZE_FLAG_DEFINED = [ + HB_BUFFER_SERIALIZE_FLAG_NO_CLUSTERS, + HB_BUFFER_SERIALIZE_FLAG_NO_POSITIONS, + HB_BUFFER_SERIALIZE_FLAG_NO_GLYPH_NAMES, + HB_BUFFER_SERIALIZE_FLAG_GLYPH_EXTENTS, + HB_BUFFER_SERIALIZE_FLAG_GLYPH_FLAGS, + HB_BUFFER_SERIALIZE_FLAG_NO_ADVANCES + ]; {63 = $0000003F} + +type + Thb_glyph_flags_tIdx = ( + Thb_glyph_flags_tIdxMinValue = 0, + HB_GLYPH_FLAG_UNSAFE_TO_BREAK = 0, + HB_GLYPH_FLAG_UNSAFE_TO_CONCAT = 1, + HB_GLYPH_FLAG_SAFE_TO_INSERT_TATWEEL = 2, + Thb_glyph_flags_tIdxMaxValue = 31 ); - Thb_glyph_flags_t = ( - Thb_glyph_flags_tMinValue = -$7FFFFFFF, - HB_GLYPH_FLAG_UNSAFE_TO_BREAK = 1, - HB_GLYPH_FLAG_UNSAFE_TO_CONCAT = 2, - HB_GLYPH_FLAG_SAFE_TO_INSERT_TATWEEL = 4, - HB_GLYPH_FLAG_DEFINED = 7, - Thb_glyph_flags_tMaxValue = $7FFFFFFF - ); - Thb_ot_color_palette_flags_t = ( - Thb_ot_color_palette_flags_tMinValue = -$7FFFFFFF, - HB_OT_COLOR_PALETTE_FLAG_DEFAULT = 0, - HB_OT_COLOR_PALETTE_FLAG_USABLE_WITH_LIGHT_BACKGROUND = 1, - HB_OT_COLOR_PALETTE_FLAG_USABLE_WITH_DARK_BACKGROUND = 2, - Thb_ot_color_palette_flags_tMaxValue = $7FFFFFFF + Thb_glyph_flags_t = Set of Thb_glyph_flags_tIdx; +const + HB_GLYPH_FLAG_DEFINED = [ + HB_GLYPH_FLAG_UNSAFE_TO_BREAK, + HB_GLYPH_FLAG_UNSAFE_TO_CONCAT, + HB_GLYPH_FLAG_SAFE_TO_INSERT_TATWEEL + ]; {7 = $00000007} + +type + Thb_ot_color_palette_flags_tIdx = ( + Thb_ot_color_palette_flags_tIdxMinValue = 0, + HB_OT_COLOR_PALETTE_FLAG_USABLE_WITH_LIGHT_BACKGROUND = 0, + HB_OT_COLOR_PALETTE_FLAG_USABLE_WITH_DARK_BACKGROUND = 1, + Thb_ot_color_palette_flags_tIdxMaxValue = 31 ); + Thb_ot_color_palette_flags_t = Set of Thb_ot_color_palette_flags_tIdx; +const + HB_OT_COLOR_PALETTE_FLAG_DEFAULT = []; {0 = $00000000} + +type Thb_ot_layout_baseline_tag_t = ( Thb_ot_layout_baseline_tag_tMinValue = -$7FFFFFFF, HB_OT_LAYOUT_BASELINE_TAG_IDEO_FACE_CENTRAL = 1231251043, @@ -693,11 +727,12 @@ type HB_OT_MATH_CONSTANT_RADICAL_DEGREE_BOTTOM_RAISE_PERCENT = 55, Thb_ot_math_constant_tMaxValue = $7FFFFFFF ); - Thb_ot_math_glyph_part_flags_t = ( - Thb_ot_math_glyph_part_flags_tMinValue = -$7FFFFFFF, - HB_OT_MATH_GLYPH_PART_FLAG_EXTENDER = 1, - Thb_ot_math_glyph_part_flags_tMaxValue = $7FFFFFFF + Thb_ot_math_glyph_part_flags_tIdx = ( + Thb_ot_math_glyph_part_flags_tIdxMinValue = 0, + HB_OT_MATH_GLYPH_PART_FLAG_EXTENDER = 0, + Thb_ot_math_glyph_part_flags_tIdxMaxValue = 31 ); + Thb_ot_math_glyph_part_flags_t = Set of Thb_ot_math_glyph_part_flags_tIdx; Thb_ot_math_kern_t = ( Thb_ot_math_kern_tMinValue = -$7FFFFFFF, HB_OT_MATH_KERN_TOP_RIGHT = 0, @@ -744,73 +779,12 @@ type HB_OT_METRICS_TAG_X_HEIGHT = 2020108148, Thb_ot_metrics_tag_tMaxValue = $7FFFFFFF ); - Thb_ot_name_id_predefined_t = ( - Thb_ot_name_id_predefined_tMinValue = -$7FFFFFFF, - HB_OT_NAME_ID_COPYRIGHT = 0, - HB_OT_NAME_ID_FONT_FAMILY = 1, - HB_OT_NAME_ID_FONT_SUBFAMILY = 2, - HB_OT_NAME_ID_UNIQUE_ID = 3, - HB_OT_NAME_ID_FULL_NAME = 4, - HB_OT_NAME_ID_VERSION_STRING = 5, - HB_OT_NAME_ID_POSTSCRIPT_NAME = 6, - HB_OT_NAME_ID_TRADEMARK = 7, - HB_OT_NAME_ID_MANUFACTURER = 8, - HB_OT_NAME_ID_DESIGNER = 9, - HB_OT_NAME_ID_DESCRIPTION = 10, - HB_OT_NAME_ID_VENDOR_URL = 11, - HB_OT_NAME_ID_DESIGNER_URL = 12, - HB_OT_NAME_ID_LICENSE = 13, - HB_OT_NAME_ID_LICENSE_URL = 14, - HB_OT_NAME_ID_TYPOGRAPHIC_FAMILY = 16, - HB_OT_NAME_ID_TYPOGRAPHIC_SUBFAMILY = 17, - HB_OT_NAME_ID_MAC_FULL_NAME = 18, - HB_OT_NAME_ID_SAMPLE_TEXT = 19, - HB_OT_NAME_ID_CID_FINDFONT_NAME = 20, - HB_OT_NAME_ID_WWS_FAMILY = 21, - HB_OT_NAME_ID_WWS_SUBFAMILY = 22, - HB_OT_NAME_ID_LIGHT_BACKGROUND = 23, - HB_OT_NAME_ID_DARK_BACKGROUND = 24, - HB_OT_NAME_ID_VARIATIONS_PS_PREFIX = 25, - HB_OT_NAME_ID_INVALID = 65535, - Thb_ot_name_id_predefined_tMaxValue = $7FFFFFFF - ); - Thb_ot_var_axis_flags_t = ( - Thb_ot_var_axis_flags_tMinValue = -$7FFFFFFF, - HB_OT_VAR_AXIS_FLAG_HIDDEN = 1, - Thb_ot_var_axis_flags_tMaxValue = $7FFFFFFF - ); - Thb_paint_composite_mode_t = ( - Thb_paint_composite_mode_tMinValue = -$7FFFFFFF, - HB_PAINT_COMPOSITE_MODE_CLEAR = 0, - HB_PAINT_COMPOSITE_MODE_SRC = 1, - HB_PAINT_COMPOSITE_MODE_DEST = 2, - HB_PAINT_COMPOSITE_MODE_SRC_OVER = 3, - HB_PAINT_COMPOSITE_MODE_DEST_OVER = 4, - HB_PAINT_COMPOSITE_MODE_SRC_IN = 5, - HB_PAINT_COMPOSITE_MODE_DEST_IN = 6, - HB_PAINT_COMPOSITE_MODE_SRC_OUT = 7, - HB_PAINT_COMPOSITE_MODE_DEST_OUT = 8, - HB_PAINT_COMPOSITE_MODE_SRC_ATOP = 9, - HB_PAINT_COMPOSITE_MODE_DEST_ATOP = 10, - HB_PAINT_COMPOSITE_MODE_XOR = 11, - HB_PAINT_COMPOSITE_MODE_PLUS = 12, - HB_PAINT_COMPOSITE_MODE_SCREEN = 13, - HB_PAINT_COMPOSITE_MODE_OVERLAY = 14, - HB_PAINT_COMPOSITE_MODE_DARKEN = 15, - HB_PAINT_COMPOSITE_MODE_LIGHTEN = 16, - HB_PAINT_COMPOSITE_MODE_COLOR_DODGE = 17, - HB_PAINT_COMPOSITE_MODE_COLOR_BURN = 18, - HB_PAINT_COMPOSITE_MODE_HARD_LIGHT = 19, - HB_PAINT_COMPOSITE_MODE_SOFT_LIGHT = 20, - HB_PAINT_COMPOSITE_MODE_DIFFERENCE = 21, - HB_PAINT_COMPOSITE_MODE_EXCLUSION = 22, - HB_PAINT_COMPOSITE_MODE_MULTIPLY = 23, - HB_PAINT_COMPOSITE_MODE_HSL_HUE = 24, - HB_PAINT_COMPOSITE_MODE_HSL_SATURATION = 25, - HB_PAINT_COMPOSITE_MODE_HSL_COLOR = 26, - HB_PAINT_COMPOSITE_MODE_HSL_LUMINOSITY = 27, - Thb_paint_composite_mode_tMaxValue = $7FFFFFFF + Thb_ot_var_axis_flags_tIdx = ( + Thb_ot_var_axis_flags_tIdxMinValue = 0, + HB_OT_VAR_AXIS_FLAG_HIDDEN = 0, + Thb_ot_var_axis_flags_tIdxMaxValue = 31 ); + Thb_ot_var_axis_flags_t = Set of Thb_ot_var_axis_flags_tIdx; Thb_style_tag_t = ( Thb_style_tag_tMinValue = -$7FFFFFFF, HB_STYLE_TAG_SLANT_RATIO = 1399615092, @@ -1210,54 +1184,6 @@ type Phb_buffer_serialize_flags_t = ^Thb_buffer_serialize_flags_t; - { Thb_color_line_t } - PPhb_color_line_t = ^Phb_color_line_t; - Phb_color_line_t = ^Thb_color_line_t; - - - { Thb_color_line_get_color_stops_func_t } - PPhb_color_line_get_color_stops_func_t = ^Phb_color_line_get_color_stops_func_t; - Phb_color_line_get_color_stops_func_t = ^Thb_color_line_get_color_stops_func_t; - - - { Thb_color_stop_t } - PPPhb_color_stop_t = ^PPhb_color_stop_t; - PPhb_color_stop_t = ^Phb_color_stop_t; - Phb_color_stop_t = ^Thb_color_stop_t; - Thb_color_line_get_color_stops_func_t = function(color_line: Phb_color_line_t; color_line_data: Pgpointer; start: guint; count: Pguint; color_stops: Phb_color_stop_t; user_data: Pgpointer): guint; cdecl; - - - { Thb_color_line_get_extend_func_t } - PPhb_color_line_get_extend_func_t = ^Phb_color_line_get_extend_func_t; - Phb_color_line_get_extend_func_t = ^Thb_color_line_get_extend_func_t; - - - { Thb_paint_extend_t } - PPhb_paint_extend_t = ^Phb_paint_extend_t; - Phb_paint_extend_t = ^Thb_paint_extend_t; - Thb_color_line_get_extend_func_t = function(color_line: Phb_color_line_t; color_line_data: Pgpointer; user_data: Pgpointer): Thb_paint_extend_t; cdecl; - Thb_color_line_t = object - data: Pgpointer; - get_color_stops: Thb_color_line_get_color_stops_func_t; - get_color_stops_user_data: Pgpointer; - get_extend: Thb_color_line_get_extend_func_t; - get_extend_user_data: Pgpointer; - reserved0: Pgpointer; - reserved1: Pgpointer; - reserved2: Pgpointer; - reserved3: Pgpointer; - reserved5: Pgpointer; - reserved6: Pgpointer; - reserved7: Pgpointer; - reserved8: Pgpointer; - end; - Thb_color_stop_t = object - offset: gfloat; - is_foreground: Thb_bool_t; - color: Thb_color_t; - end; - - { Thb_draw_funcs_t } PPhb_draw_funcs_t = ^Phb_draw_funcs_t; Phb_draw_funcs_t = ^Thb_draw_funcs_t; @@ -1285,7 +1211,8 @@ type end; - Thb_draw_state_t = object + + Thb_draw_state_t = record path_open: Thb_bool_t; path_start_x: gfloat; path_start_y: gfloat; @@ -1299,6 +1226,8 @@ type reserved6: Thb_var_num_t; reserved7: Thb_var_num_t; end; + + Thb_draw_close_path_func_t = procedure(dfuncs: Phb_draw_funcs_t; draw_data: Pgpointer; st: Phb_draw_state_t; user_data: Pgpointer); cdecl; Thb_draw_cubic_to_func_t = procedure(dfuncs: Phb_draw_funcs_t; draw_data: Pgpointer; st: Phb_draw_state_t; control1_x: gfloat; control1_y: gfloat; control2_x: gfloat; control2_y: gfloat; to_x: gfloat; to_y: gfloat; user_data: Pgpointer); cdecl; Thb_draw_line_to_func_t = procedure(dfuncs: Phb_draw_funcs_t; draw_data: Pgpointer; st: Phb_draw_state_t; to_x: gfloat; to_y: gfloat; user_data: Pgpointer); cdecl; @@ -1306,13 +1235,6 @@ type Thb_draw_quadratic_to_func_t = procedure(dfuncs: Phb_draw_funcs_t; draw_data: Pgpointer; st: Phb_draw_state_t; control_x: gfloat; control_y: gfloat; to_x: gfloat; to_y: gfloat; user_data: Pgpointer); cdecl; - { Thb_map_t } - PPhb_map_t = ^Phb_map_t; - Phb_map_t = ^Thb_map_t; - Thb_map_t = object - end; - - { Thb_set_t } PPhb_set_t = ^Phb_set_t; Phb_set_t = ^Thb_set_t; @@ -1332,7 +1254,6 @@ type end_: guint; procedure _string(buf: Pgchar; size: Pguint); cdecl; inline; end; - Thb_font_draw_glyph_func_t = procedure(font: Phb_font_t; font_data: Pgpointer; glyph: Thb_codepoint_t; draw_funcs: Phb_draw_funcs_t; draw_data: Pgpointer; user_data: Pgpointer); cdecl; Thb_font_extents_t = record ascender: Thb_position_t; @@ -1366,14 +1287,9 @@ type Thb_font_get_glyph_extents_func_t = function(font: Phb_font_t; font_data: Pgpointer; glyph: Thb_codepoint_t; extents: Phb_glyph_extents_t; user_data: Pgpointer): Thb_bool_t; cdecl; Thb_font_get_glyph_from_name_func_t = function(font: Phb_font_t; font_data: Pgpointer; name: Pgchar; len: gint; glyph: Phb_codepoint_t; user_data: Pgpointer): Thb_bool_t; cdecl; Thb_font_get_glyph_name_func_t = function(font: Phb_font_t; font_data: Pgpointer; glyph: Thb_codepoint_t; name: Pgchar; size: Pguint; user_data: Pgpointer): Thb_bool_t; cdecl; + Thb_font_get_glyph_shape_func_t = procedure(font: Phb_font_t; font_data: Pgpointer; glyph: Thb_codepoint_t; draw_funcs: Phb_draw_funcs_t; draw_data: Pgpointer; user_data: Pgpointer); cdecl; Thb_font_get_nominal_glyph_func_t = function(font: Phb_font_t; font_data: Pgpointer; unicode: Thb_codepoint_t; glyph: Phb_codepoint_t; user_data: Pgpointer): Thb_bool_t; cdecl; Thb_font_get_nominal_glyphs_func_t = function(font: Phb_font_t; font_data: Pgpointer; count: guint; first_unicode: Phb_codepoint_t; unicode_stride: guint; first_glyph: Phb_codepoint_t; glyph_stride: guint; user_data: Pgpointer): guint; cdecl; - - - { Thb_paint_funcs_t } - PPhb_paint_funcs_t = ^Phb_paint_funcs_t; - Phb_paint_funcs_t = ^Thb_paint_funcs_t; - Thb_font_paint_glyph_func_t = procedure(font: Phb_font_t; font_data: Pgpointer; glyph: Thb_codepoint_t; paint_funcs: Phb_paint_funcs_t; paint_data: Pgpointer; palette_index: guint; foreground: Thb_color_t; user_data: Pgpointer); cdecl; Thb_font_get_variation_glyph_func_t = function(font: Phb_font_t; font_data: Pgpointer; unicode: Thb_codepoint_t; variation_selector: Thb_codepoint_t; glyph: Phb_codepoint_t; user_data: Pgpointer): Thb_bool_t; cdecl; Thb_glyph_extents_t = record @@ -1384,8 +1300,6 @@ type end; - Thb_paint_funcs_t = object - end; { Thb_variation_t } @@ -1402,6 +1316,27 @@ type PPhb_glyph_flags_t = ^Phb_glyph_flags_t; Phb_glyph_flags_t = ^Thb_glyph_flags_t; + { gr_face* } + Tgr_face = record + { opaque type } + Unknown: Pointer; + end; + + + { gr_font* } + Tgr_font = record + { opaque type } + Unknown: Pointer; + end; + + + + { Thb_map_t } + PPhb_map_t = ^Phb_map_t; + Phb_map_t = ^Thb_map_t; + Thb_map_t = object + end; + { Thb_ot_color_layer_t } PPPhb_ot_color_layer_t = ^PPhb_ot_color_layer_t; @@ -1505,11 +1440,6 @@ type - { Thb_ot_name_id_predefined_t } - PPhb_ot_name_id_predefined_t = ^Phb_ot_name_id_predefined_t; - Phb_ot_name_id_predefined_t = ^Thb_ot_name_id_predefined_t; - - { Thb_shape_plan_t } PPhb_shape_plan_t = ^Phb_shape_plan_t; Phb_shape_plan_t = ^Thb_shape_plan_t; @@ -1525,7 +1455,8 @@ type { Thb_ot_var_axis_info_t } PPhb_ot_var_axis_info_t = ^Phb_ot_var_axis_info_t; Phb_ot_var_axis_info_t = ^Thb_ot_var_axis_info_t; - Thb_ot_var_axis_info_t = object + + Thb_ot_var_axis_info_t = record axis_index: guint; tag: Thb_tag_t; name_id: Thb_ot_name_id_t; @@ -1537,6 +1468,8 @@ type end; + + { Thb_ot_var_axis_t } PPhb_ot_var_axis_t = ^Phb_ot_var_axis_t; Phb_ot_var_axis_t = ^Thb_ot_var_axis_t; @@ -1550,24 +1483,6 @@ type end; - Thb_paint_color_func_t = procedure(funcs: Phb_paint_funcs_t; paint_data: Pgpointer; is_foreground: Thb_bool_t; color: Thb_color_t; user_data: Pgpointer); cdecl; - - - { Thb_paint_composite_mode_t } - PPhb_paint_composite_mode_t = ^Phb_paint_composite_mode_t; - Phb_paint_composite_mode_t = ^Thb_paint_composite_mode_t; - Thb_paint_custom_palette_color_func_t = function(funcs: Phb_paint_funcs_t; paint_data: Pgpointer; color_index: guint; color: Phb_color_t; user_data: Pgpointer): Thb_bool_t; cdecl; - Thb_paint_image_func_t = function(funcs: Phb_paint_funcs_t; paint_data: Pgpointer; image: Phb_blob_t; width: guint; height: guint; format: Thb_tag_t; slant: gfloat; extents: Phb_glyph_extents_t; user_data: Pgpointer): Thb_bool_t; cdecl; - Thb_paint_linear_gradient_func_t = procedure(funcs: Phb_paint_funcs_t; paint_data: Pgpointer; color_line: Phb_color_line_t; x0: gfloat; y0: gfloat; x1: gfloat; y1: gfloat; x2: gfloat; y2: gfloat; user_data: Pgpointer); cdecl; - Thb_paint_pop_clip_func_t = procedure(funcs: Phb_paint_funcs_t; paint_data: Pgpointer; user_data: Pgpointer); cdecl; - Thb_paint_pop_group_func_t = procedure(funcs: Phb_paint_funcs_t; paint_data: Pgpointer; mode: Thb_paint_composite_mode_t; user_data: Pgpointer); cdecl; - Thb_paint_pop_transform_func_t = procedure(funcs: Phb_paint_funcs_t; paint_data: Pgpointer; user_data: Pgpointer); cdecl; - Thb_paint_push_clip_glyph_func_t = procedure(funcs: Phb_paint_funcs_t; paint_data: Pgpointer; glyph: Thb_codepoint_t; font: Phb_font_t; user_data: Pgpointer); cdecl; - Thb_paint_push_clip_rectangle_func_t = procedure(funcs: Phb_paint_funcs_t; paint_data: Pgpointer; xmin: gfloat; ymin: gfloat; xmax: gfloat; ymax: gfloat; user_data: Pgpointer); cdecl; - Thb_paint_push_group_func_t = procedure(funcs: Phb_paint_funcs_t; paint_data: Pgpointer; user_data: Pgpointer); cdecl; - Thb_paint_push_transform_func_t = procedure(funcs: Phb_paint_funcs_t; paint_data: Pgpointer; xx: gfloat; yx: gfloat; xy: gfloat; yy: gfloat; dx: gfloat; dy: gfloat; user_data: Pgpointer); cdecl; - Thb_paint_radial_gradient_func_t = procedure(funcs: Phb_paint_funcs_t; paint_data: Pgpointer; color_line: Phb_color_line_t; x0: gfloat; y0: gfloat; r0: gfloat; x1: gfloat; y1: gfloat; r1: gfloat; user_data: Pgpointer); cdecl; - Thb_paint_sweep_gradient_func_t = procedure(funcs: Phb_paint_funcs_t; paint_data: Pgpointer; color_line: Phb_color_line_t; x0: gfloat; y0: gfloat; start_angle: gfloat; end_angle: gfloat; user_data: Pgpointer); cdecl; { Thb_style_tag_t } @@ -1592,501 +1507,447 @@ type Thb_unicode_mirroring_func_t = function(ufuncs: Phb_unicode_funcs_t; unicode: Thb_codepoint_t; user_data: Pgpointer): Thb_codepoint_t; cdecl; Thb_unicode_script_func_t = function(ufuncs: Phb_unicode_funcs_t; unicode: Thb_codepoint_t; user_data: Pgpointer): Thb_script_t; cdecl; -function hb_aat_layout_feature_type_get_name_id(face: Phb_face_t; feature_type: Thb_aat_layout_feature_type_t): Thb_ot_name_id_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_aat_layout_feature_type_get_name_id' {$endif}; -function hb_aat_layout_feature_type_get_selector_infos(face: Phb_face_t; feature_type: Thb_aat_layout_feature_type_t; start_offset: guint; selector_count: Pguint; selectors: Phb_aat_layout_feature_selector_info_t; default_index: Pguint): guint; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_aat_layout_feature_type_get_selector_infos' {$endif}; -function hb_aat_layout_get_feature_types(face: Phb_face_t; start_offset: guint; feature_count: Pguint; features: Phb_aat_layout_feature_type_t): guint; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_aat_layout_get_feature_types' {$endif}; -function hb_aat_layout_has_positioning(face: Phb_face_t): Thb_bool_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_aat_layout_has_positioning' {$endif}; -function hb_aat_layout_has_substitution(face: Phb_face_t): Thb_bool_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_aat_layout_has_substitution' {$endif}; -function hb_aat_layout_has_tracking(face: Phb_face_t): Thb_bool_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_aat_layout_has_tracking' {$endif}; -function hb_blob_copy_writable_or_fail(blob: Phb_blob_t): Phb_blob_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_blob_copy_writable_or_fail' {$endif}; -function hb_blob_create(data: Pgchar; length: guint; mode: Thb_memory_mode_t; user_data: Pgpointer; destroy_: Thb_destroy_func_t): Phb_blob_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_blob_create' {$endif}; -function hb_blob_create_from_file(file_name: Pgchar): Phb_blob_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_blob_create_from_file' {$endif}; -function hb_blob_create_from_file_or_fail(file_name: Pgchar): Phb_blob_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_blob_create_from_file_or_fail' {$endif}; -function hb_blob_create_or_fail(data: Pgchar; length: guint; mode: Thb_memory_mode_t; user_data: Pgpointer; destroy_: Thb_destroy_func_t): Phb_blob_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_blob_create_or_fail' {$endif}; -function hb_blob_create_sub_blob(parent: Phb_blob_t; offset: guint; length: guint): Phb_blob_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_blob_create_sub_blob' {$endif}; -function hb_blob_get_data(blob: Phb_blob_t; length: Pguint): Pgchar; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_blob_get_data' {$endif}; -function hb_blob_get_data_writable(blob: Phb_blob_t; length: Pguint): Pgchar; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_blob_get_data_writable' {$endif}; -function hb_blob_get_empty: Phb_blob_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_blob_get_empty' {$endif}; -function hb_blob_get_length(blob: Phb_blob_t): guint; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_blob_get_length' {$endif}; -function hb_blob_get_user_data(blob: Phb_blob_t; key: Phb_user_data_key_t): Pgpointer; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_blob_get_user_data' {$endif}; -function hb_blob_is_immutable(blob: Phb_blob_t): Thb_bool_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_blob_is_immutable' {$endif}; -function hb_blob_reference(blob: Phb_blob_t): Phb_blob_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_blob_reference' {$endif}; -function hb_blob_set_user_data(blob: Phb_blob_t; key: Phb_user_data_key_t; data: Pgpointer; destroy_: Thb_destroy_func_t; replace: Thb_bool_t): Thb_bool_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_blob_set_user_data' {$endif}; -function hb_buffer_allocation_successful(buffer: Phb_buffer_t): Thb_bool_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_buffer_allocation_successful' {$endif}; -function hb_buffer_create: Phb_buffer_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_buffer_create' {$endif}; -function hb_buffer_create_similar(src: Phb_buffer_t): Phb_buffer_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_buffer_create_similar' {$endif}; -function hb_buffer_deserialize_glyphs(buffer: Phb_buffer_t; buf: Pgchar; buf_len: gint; end_ptr: PPgchar; font: Phb_font_t; format: Thb_buffer_serialize_format_t): Thb_bool_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_buffer_deserialize_glyphs' {$endif}; -function hb_buffer_deserialize_unicode(buffer: Phb_buffer_t; buf: Pgchar; buf_len: gint; end_ptr: PPgchar; format: Thb_buffer_serialize_format_t): Thb_bool_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_buffer_deserialize_unicode' {$endif}; -function hb_buffer_diff(buffer: Phb_buffer_t; reference: Phb_buffer_t; dottedcircle_glyph: Thb_codepoint_t; position_fuzz: guint): Thb_buffer_diff_flags_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_buffer_diff' {$endif}; -function hb_buffer_get_cluster_level(buffer: Phb_buffer_t): Thb_buffer_cluster_level_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_buffer_get_cluster_level' {$endif}; -function hb_buffer_get_content_type(buffer: Phb_buffer_t): Thb_buffer_content_type_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_buffer_get_content_type' {$endif}; -function hb_buffer_get_direction(buffer: Phb_buffer_t): Thb_direction_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_buffer_get_direction' {$endif}; -function hb_buffer_get_empty: Phb_buffer_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_buffer_get_empty' {$endif}; -function hb_buffer_get_flags(buffer: Phb_buffer_t): Thb_buffer_flags_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_buffer_get_flags' {$endif}; -function hb_buffer_get_glyph_infos(buffer: Phb_buffer_t; length: Pguint): Phb_glyph_info_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_buffer_get_glyph_infos' {$endif}; -function hb_buffer_get_glyph_positions(buffer: Phb_buffer_t; length: Pguint): Phb_glyph_position_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_buffer_get_glyph_positions' {$endif}; -function hb_buffer_get_invisible_glyph(buffer: Phb_buffer_t): Thb_codepoint_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_buffer_get_invisible_glyph' {$endif}; -function hb_buffer_get_language(buffer: Phb_buffer_t): Thb_language_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_buffer_get_language' {$endif}; -function hb_buffer_get_length(buffer: Phb_buffer_t): guint; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_buffer_get_length' {$endif}; -function hb_buffer_get_not_found_glyph(buffer: Phb_buffer_t): Thb_codepoint_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_buffer_get_not_found_glyph' {$endif}; -function hb_buffer_get_replacement_codepoint(buffer: Phb_buffer_t): Thb_codepoint_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_buffer_get_replacement_codepoint' {$endif}; -function hb_buffer_get_script(buffer: Phb_buffer_t): Thb_script_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_buffer_get_script' {$endif}; -function hb_buffer_get_unicode_funcs(buffer: Phb_buffer_t): Phb_unicode_funcs_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_buffer_get_unicode_funcs' {$endif}; -function hb_buffer_get_user_data(buffer: Phb_buffer_t; key: Phb_user_data_key_t): Pgpointer; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_buffer_get_user_data' {$endif}; -function hb_buffer_has_positions(buffer: Phb_buffer_t): Thb_bool_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_buffer_has_positions' {$endif}; -function hb_buffer_pre_allocate(buffer: Phb_buffer_t; size: guint): Thb_bool_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_buffer_pre_allocate' {$endif}; -function hb_buffer_reference(buffer: Phb_buffer_t): Phb_buffer_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_buffer_reference' {$endif}; -function hb_buffer_serialize(buffer: Phb_buffer_t; start: guint; end_: guint; buf: Pgchar; buf_size: Pguint; buf_consumed: Pguint; font: Phb_font_t; format: Thb_buffer_serialize_format_t; flags: Thb_buffer_serialize_flags_t): guint; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_buffer_serialize' {$endif}; -function hb_buffer_serialize_format_from_string(str: Pgchar; len: gint): Thb_buffer_serialize_format_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_buffer_serialize_format_from_string' {$endif}; -function hb_buffer_serialize_format_to_string(format: Thb_buffer_serialize_format_t): Pgchar; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_buffer_serialize_format_to_string' {$endif}; -function hb_buffer_serialize_glyphs(buffer: Phb_buffer_t; start: guint; end_: guint; buf: Pgchar; buf_size: Pguint; buf_consumed: Pguint; font: Phb_font_t; format: Thb_buffer_serialize_format_t; flags: Thb_buffer_serialize_flags_t): guint; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_buffer_serialize_glyphs' {$endif}; -function hb_buffer_serialize_list_formats: PPgchar; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_buffer_serialize_list_formats' {$endif}; -function hb_buffer_serialize_unicode(buffer: Phb_buffer_t; start: guint; end_: guint; buf: Pgchar; buf_size: Pguint; buf_consumed: Pguint; format: Thb_buffer_serialize_format_t; flags: Thb_buffer_serialize_flags_t): guint; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_buffer_serialize_unicode' {$endif}; -function hb_buffer_set_length(buffer: Phb_buffer_t; length: guint): Thb_bool_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_buffer_set_length' {$endif}; -function hb_buffer_set_user_data(buffer: Phb_buffer_t; key: Phb_user_data_key_t; data: Pgpointer; destroy_: Thb_destroy_func_t; replace: Thb_bool_t): Thb_bool_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_buffer_set_user_data' {$endif}; -function hb_color_get_alpha(color: Thb_color_t): guint8; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_color_get_alpha' {$endif}; -function hb_color_get_blue(color: Thb_color_t): guint8; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_color_get_blue' {$endif}; -function hb_color_get_green(color: Thb_color_t): guint8; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_color_get_green' {$endif}; -function hb_color_get_red(color: Thb_color_t): guint8; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_color_get_red' {$endif}; -function hb_color_line_get_color_stops(color_line: Phb_color_line_t; start: guint; count: Pguint; color_stops: Phb_color_stop_t): guint; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_color_line_get_color_stops' {$endif}; -function hb_color_line_get_extend(color_line: Phb_color_line_t): Thb_paint_extend_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_color_line_get_extend' {$endif}; -function hb_direction_from_string(str: Pgchar; len: gint): Thb_direction_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_direction_from_string' {$endif}; -function hb_direction_to_string(direction: Thb_direction_t): Pgchar; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_direction_to_string' {$endif}; -function hb_draw_funcs_create: Phb_draw_funcs_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_draw_funcs_create' {$endif}; -function hb_draw_funcs_get_empty: Phb_draw_funcs_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_draw_funcs_get_empty' {$endif}; -function hb_draw_funcs_get_user_data(dfuncs: Phb_draw_funcs_t; key: Phb_user_data_key_t): Pgpointer; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_draw_funcs_get_user_data' {$endif}; -function hb_draw_funcs_is_immutable(dfuncs: Phb_draw_funcs_t): Thb_bool_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_draw_funcs_is_immutable' {$endif}; -function hb_draw_funcs_reference(dfuncs: Phb_draw_funcs_t): Phb_draw_funcs_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_draw_funcs_reference' {$endif}; -function hb_draw_funcs_set_user_data(dfuncs: Phb_draw_funcs_t; key: Phb_user_data_key_t; data: Pgpointer; destroy_: Thb_destroy_func_t; replace: Thb_bool_t): Thb_bool_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_draw_funcs_set_user_data' {$endif}; -function hb_face_builder_add_table(face: Phb_face_t; tag: Thb_tag_t; blob: Phb_blob_t): Thb_bool_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_face_builder_add_table' {$endif}; -function hb_face_builder_create: Phb_face_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_face_builder_create' {$endif}; -function hb_face_count(blob: Phb_blob_t): guint; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_face_count' {$endif}; -function hb_face_create(blob: Phb_blob_t; index: guint): Phb_face_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_face_create' {$endif}; -function hb_face_create_for_tables(reference_table_func: Thb_reference_table_func_t; user_data: Pgpointer; destroy_: Thb_destroy_func_t): Phb_face_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_face_create_for_tables' {$endif}; -function hb_face_get_empty: Phb_face_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_face_get_empty' {$endif}; -function hb_face_get_glyph_count(face: Phb_face_t): guint; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_face_get_glyph_count' {$endif}; -function hb_face_get_index(face: Phb_face_t): guint; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_face_get_index' {$endif}; -function hb_face_get_table_tags(face: Phb_face_t; start_offset: guint; table_count: Pguint; table_tags: Phb_tag_t): guint; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_face_get_table_tags' {$endif}; -function hb_face_get_upem(face: Phb_face_t): guint; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_face_get_upem' {$endif}; -function hb_face_get_user_data(face: Phb_face_t; key: Phb_user_data_key_t): Pgpointer; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_face_get_user_data' {$endif}; -function hb_face_is_immutable(face: Phb_face_t): Thb_bool_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_face_is_immutable' {$endif}; -function hb_face_reference(face: Phb_face_t): Phb_face_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_face_reference' {$endif}; -function hb_face_reference_blob(face: Phb_face_t): Phb_blob_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_face_reference_blob' {$endif}; -function hb_face_reference_table(face: Phb_face_t; tag: Thb_tag_t): Phb_blob_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_face_reference_table' {$endif}; -function hb_face_set_user_data(face: Phb_face_t; key: Phb_user_data_key_t; data: Pgpointer; destroy_: Thb_destroy_func_t; replace: Thb_bool_t): Thb_bool_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_face_set_user_data' {$endif}; -function hb_feature_from_string(str: Pgchar; len: gint; feature: Phb_feature_t): Thb_bool_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_feature_from_string' {$endif}; -function hb_font_create(face: Phb_face_t): Phb_font_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_font_create' {$endif}; -function hb_font_create_sub_font(parent: Phb_font_t): Phb_font_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_font_create_sub_font' {$endif}; -function hb_font_funcs_create: Phb_font_funcs_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_font_funcs_create' {$endif}; -function hb_font_funcs_get_empty: Phb_font_funcs_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_font_funcs_get_empty' {$endif}; -function hb_font_funcs_get_user_data(ffuncs: Phb_font_funcs_t; key: Phb_user_data_key_t): Pgpointer; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_font_funcs_get_user_data' {$endif}; -function hb_font_funcs_is_immutable(ffuncs: Phb_font_funcs_t): Thb_bool_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_font_funcs_is_immutable' {$endif}; -function hb_font_funcs_reference(ffuncs: Phb_font_funcs_t): Phb_font_funcs_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_font_funcs_reference' {$endif}; -function hb_font_funcs_set_user_data(ffuncs: Phb_font_funcs_t; key: Phb_user_data_key_t; data: Pgpointer; destroy_: Thb_destroy_func_t; replace: Thb_bool_t): Thb_bool_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_font_funcs_set_user_data' {$endif}; -function hb_font_get_empty: Phb_font_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_font_get_empty' {$endif}; -function hb_font_get_face(font: Phb_font_t): Phb_face_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_font_get_face' {$endif}; -function hb_font_get_glyph(font: Phb_font_t; unicode: Thb_codepoint_t; variation_selector: Thb_codepoint_t; glyph: Phb_codepoint_t): Thb_bool_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_font_get_glyph' {$endif}; -function hb_font_get_glyph_contour_point(font: Phb_font_t; glyph: Thb_codepoint_t; point_index: guint; x: Phb_position_t; y: Phb_position_t): Thb_bool_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_font_get_glyph_contour_point' {$endif}; -function hb_font_get_glyph_contour_point_for_origin(font: Phb_font_t; glyph: Thb_codepoint_t; point_index: guint; direction: Thb_direction_t; x: Phb_position_t; y: Phb_position_t): Thb_bool_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_font_get_glyph_contour_point_for_origin' {$endif}; -function hb_font_get_glyph_extents(font: Phb_font_t; glyph: Thb_codepoint_t; extents: Phb_glyph_extents_t): Thb_bool_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_font_get_glyph_extents' {$endif}; -function hb_font_get_glyph_extents_for_origin(font: Phb_font_t; glyph: Thb_codepoint_t; direction: Thb_direction_t; extents: Phb_glyph_extents_t): Thb_bool_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_font_get_glyph_extents_for_origin' {$endif}; -function hb_font_get_glyph_from_name(font: Phb_font_t; name: Pgchar; len: gint; glyph: Phb_codepoint_t): Thb_bool_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_font_get_glyph_from_name' {$endif}; -function hb_font_get_glyph_h_advance(font: Phb_font_t; glyph: Thb_codepoint_t): Thb_position_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_font_get_glyph_h_advance' {$endif}; -function hb_font_get_glyph_h_kerning(font: Phb_font_t; left_glyph: Thb_codepoint_t; right_glyph: Thb_codepoint_t): Thb_position_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_font_get_glyph_h_kerning' {$endif}; -function hb_font_get_glyph_h_origin(font: Phb_font_t; glyph: Thb_codepoint_t; x: Phb_position_t; y: Phb_position_t): Thb_bool_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_font_get_glyph_h_origin' {$endif}; -function hb_font_get_glyph_name(font: Phb_font_t; glyph: Thb_codepoint_t; name: Pgchar; size: Pguint): Thb_bool_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_font_get_glyph_name' {$endif}; -function hb_font_get_glyph_v_advance(font: Phb_font_t; glyph: Thb_codepoint_t): Thb_position_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_font_get_glyph_v_advance' {$endif}; -function hb_font_get_glyph_v_origin(font: Phb_font_t; glyph: Thb_codepoint_t; x: Phb_position_t; y: Phb_position_t): Thb_bool_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_font_get_glyph_v_origin' {$endif}; -function hb_font_get_h_extents(font: Phb_font_t; extents: Phb_font_extents_t): Thb_bool_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_font_get_h_extents' {$endif}; -function hb_font_get_nominal_glyph(font: Phb_font_t; unicode: Thb_codepoint_t; glyph: Phb_codepoint_t): Thb_bool_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_font_get_nominal_glyph' {$endif}; -function hb_font_get_nominal_glyphs(font: Phb_font_t; count: guint; first_unicode: Phb_codepoint_t; unicode_stride: guint; first_glyph: Phb_codepoint_t; glyph_stride: guint): guint; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_font_get_nominal_glyphs' {$endif}; -function hb_font_get_parent(font: Phb_font_t): Phb_font_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_font_get_parent' {$endif}; -function hb_font_get_ptem(font: Phb_font_t): gfloat; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_font_get_ptem' {$endif}; -function hb_font_get_serial(font: Phb_font_t): guint; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_font_get_serial' {$endif}; -function hb_font_get_synthetic_slant(font: Phb_font_t): gfloat; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_font_get_synthetic_slant' {$endif}; -function hb_font_get_user_data(font: Phb_font_t; key: Phb_user_data_key_t): Pgpointer; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_font_get_user_data' {$endif}; -function hb_font_get_v_extents(font: Phb_font_t; extents: Phb_font_extents_t): Thb_bool_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_font_get_v_extents' {$endif}; -function hb_font_get_var_coords_design(font: Phb_font_t; length: Pguint): Pgfloat; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_font_get_var_coords_design' {$endif}; -function hb_font_get_var_coords_normalized(font: Phb_font_t; length: Pguint): Pgint; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_font_get_var_coords_normalized' {$endif}; -function hb_font_get_var_named_instance(font: Phb_font_t): guint; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_font_get_var_named_instance' {$endif}; -function hb_font_get_variation_glyph(font: Phb_font_t; unicode: Thb_codepoint_t; variation_selector: Thb_codepoint_t; glyph: Phb_codepoint_t): Thb_bool_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_font_get_variation_glyph' {$endif}; -function hb_font_glyph_from_string(font: Phb_font_t; s: Pgchar; len: gint; glyph: Phb_codepoint_t): Thb_bool_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_font_glyph_from_string' {$endif}; -function hb_font_is_immutable(font: Phb_font_t): Thb_bool_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_font_is_immutable' {$endif}; -function hb_font_reference(font: Phb_font_t): Phb_font_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_font_reference' {$endif}; -function hb_font_set_user_data(font: Phb_font_t; key: Phb_user_data_key_t; data: Pgpointer; destroy_: Thb_destroy_func_t; replace: Thb_bool_t): Thb_bool_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_font_set_user_data' {$endif}; -function hb_ft_font_get_load_flags(font: Phb_font_t): gint; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_ft_font_get_load_flags' {$endif}; -function hb_ft_hb_font_changed(font: Phb_font_t): Thb_bool_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_ft_hb_font_changed' {$endif}; -function hb_glib_blob_create(gbytes: PGBytes): Phb_blob_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_glib_blob_create' {$endif}; -function hb_glib_get_unicode_funcs: Phb_unicode_funcs_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_glib_get_unicode_funcs' {$endif}; -function hb_glib_script_from_script(script: Thb_script_t): TGUnicodeScript; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_glib_script_from_script' {$endif}; -function hb_glib_script_to_script(script: TGUnicodeScript): Thb_script_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_glib_script_to_script' {$endif}; -function hb_glyph_info_get_glyph_flags(info: Phb_glyph_info_t): Thb_glyph_flags_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_glyph_info_get_glyph_flags' {$endif}; -function hb_gobject_blob_get_type: TGType; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_gobject_blob_get_type' {$endif}; -function hb_gobject_buffer_get_type: TGType; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_gobject_buffer_get_type' {$endif}; -function hb_gobject_color_line_get_type: TGType; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_gobject_color_line_get_type' {$endif}; -function hb_gobject_color_stop_get_type: TGType; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_gobject_color_stop_get_type' {$endif}; -function hb_gobject_draw_funcs_get_type: TGType; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_gobject_draw_funcs_get_type' {$endif}; -function hb_gobject_draw_state_get_type: TGType; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_gobject_draw_state_get_type' {$endif}; -function hb_gobject_face_get_type: TGType; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_gobject_face_get_type' {$endif}; -function hb_gobject_feature_get_type: TGType; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_gobject_feature_get_type' {$endif}; -function hb_gobject_font_funcs_get_type: TGType; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_gobject_font_funcs_get_type' {$endif}; -function hb_gobject_font_get_type: TGType; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_gobject_font_get_type' {$endif}; -function hb_gobject_glyph_info_get_type: TGType; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_gobject_glyph_info_get_type' {$endif}; -function hb_gobject_glyph_position_get_type: TGType; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_gobject_glyph_position_get_type' {$endif}; -function hb_gobject_map_get_type: TGType; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_gobject_map_get_type' {$endif}; -function hb_gobject_ot_math_glyph_part_get_type: TGType; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_gobject_ot_math_glyph_part_get_type' {$endif}; -function hb_gobject_ot_math_glyph_variant_get_type: TGType; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_gobject_ot_math_glyph_variant_get_type' {$endif}; -function hb_gobject_ot_var_axis_info_get_type: TGType; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_gobject_ot_var_axis_info_get_type' {$endif}; -function hb_gobject_paint_funcs_get_type: TGType; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_gobject_paint_funcs_get_type' {$endif}; -function hb_gobject_segment_properties_get_type: TGType; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_gobject_segment_properties_get_type' {$endif}; -function hb_gobject_set_get_type: TGType; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_gobject_set_get_type' {$endif}; -function hb_gobject_shape_plan_get_type: TGType; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_gobject_shape_plan_get_type' {$endif}; -function hb_gobject_unicode_funcs_get_type: TGType; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_gobject_unicode_funcs_get_type' {$endif}; -function hb_gobject_user_data_key_get_type: TGType; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_gobject_user_data_key_get_type' {$endif}; -function hb_language_from_string(str: Pgchar; len: gint): Thb_language_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_language_from_string' {$endif}; -function hb_language_get_default: Thb_language_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_language_get_default' {$endif}; -function hb_language_matches(language: Thb_language_t; specific: Thb_language_t): Thb_bool_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_language_matches' {$endif}; -function hb_language_to_string(language: Thb_language_t): Pgchar; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_language_to_string' {$endif}; -function hb_map_allocation_successful(map: Phb_map_t): Thb_bool_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_map_allocation_successful' {$endif}; -function hb_map_copy(map: Phb_map_t): Phb_map_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_map_copy' {$endif}; -function hb_map_create: Phb_map_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_map_create' {$endif}; -function hb_map_get(map: Phb_map_t; key: Thb_codepoint_t): Thb_codepoint_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_map_get' {$endif}; -function hb_map_get_empty: Phb_map_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_map_get_empty' {$endif}; -function hb_map_get_population(map: Phb_map_t): guint; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_map_get_population' {$endif}; -function hb_map_get_user_data(map: Phb_map_t; key: Phb_user_data_key_t): Pgpointer; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_map_get_user_data' {$endif}; -function hb_map_has(map: Phb_map_t; key: Thb_codepoint_t): Thb_bool_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_map_has' {$endif}; -function hb_map_hash(map: Phb_map_t): guint; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_map_hash' {$endif}; -function hb_map_is_empty(map: Phb_map_t): Thb_bool_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_map_is_empty' {$endif}; -function hb_map_is_equal(map: Phb_map_t; other: Phb_map_t): Thb_bool_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_map_is_equal' {$endif}; -function hb_map_next(map: Phb_map_t; idx: Pgint; key: Phb_codepoint_t; value: Phb_codepoint_t): Thb_bool_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_map_next' {$endif}; -function hb_map_reference(map: Phb_map_t): Phb_map_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_map_reference' {$endif}; -function hb_map_set_user_data(map: Phb_map_t; key: Phb_user_data_key_t; data: Pgpointer; destroy_: Thb_destroy_func_t; replace: Thb_bool_t): Thb_bool_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_map_set_user_data' {$endif}; -function hb_ot_color_glyph_get_layers(face: Phb_face_t; glyph: Thb_codepoint_t; start_offset: guint; layer_count: Pguint; layers: Phb_ot_color_layer_t): guint; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_ot_color_glyph_get_layers' {$endif}; -function hb_ot_color_glyph_has_paint(face: Phb_face_t; glyph: Thb_codepoint_t): Thb_bool_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_ot_color_glyph_has_paint' {$endif}; -function hb_ot_color_glyph_reference_png(font: Phb_font_t; glyph: Thb_codepoint_t): Phb_blob_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_ot_color_glyph_reference_png' {$endif}; -function hb_ot_color_glyph_reference_svg(face: Phb_face_t; glyph: Thb_codepoint_t): Phb_blob_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_ot_color_glyph_reference_svg' {$endif}; -function hb_ot_color_has_layers(face: Phb_face_t): Thb_bool_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_ot_color_has_layers' {$endif}; -function hb_ot_color_has_paint(face: Phb_face_t): Thb_bool_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_ot_color_has_paint' {$endif}; -function hb_ot_color_has_palettes(face: Phb_face_t): Thb_bool_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_ot_color_has_palettes' {$endif}; -function hb_ot_color_has_png(face: Phb_face_t): Thb_bool_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_ot_color_has_png' {$endif}; -function hb_ot_color_has_svg(face: Phb_face_t): Thb_bool_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_ot_color_has_svg' {$endif}; -function hb_ot_color_palette_color_get_name_id(face: Phb_face_t; color_index: guint): Thb_ot_name_id_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_ot_color_palette_color_get_name_id' {$endif}; -function hb_ot_color_palette_get_colors(face: Phb_face_t; palette_index: guint; start_offset: guint; color_count: Pguint; colors: Phb_color_t): guint; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_ot_color_palette_get_colors' {$endif}; -function hb_ot_color_palette_get_count(face: Phb_face_t): guint; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_ot_color_palette_get_count' {$endif}; -function hb_ot_color_palette_get_flags(face: Phb_face_t; palette_index: guint): Thb_ot_color_palette_flags_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_ot_color_palette_get_flags' {$endif}; -function hb_ot_color_palette_get_name_id(face: Phb_face_t; palette_index: guint): Thb_ot_name_id_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_ot_color_palette_get_name_id' {$endif}; -function hb_ot_layout_feature_get_characters(face: Phb_face_t; table_tag: Thb_tag_t; feature_index: guint; start_offset: guint; char_count: Pguint; characters: Phb_codepoint_t): guint; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_ot_layout_feature_get_characters' {$endif}; -function hb_ot_layout_feature_get_lookups(face: Phb_face_t; table_tag: Thb_tag_t; feature_index: guint; start_offset: guint; lookup_count: Pguint; lookup_indexes: Pguint): guint; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_ot_layout_feature_get_lookups' {$endif}; -function hb_ot_layout_feature_get_name_ids(face: Phb_face_t; table_tag: Thb_tag_t; feature_index: guint; label_id: Phb_ot_name_id_t; tooltip_id: Phb_ot_name_id_t; sample_id: Phb_ot_name_id_t; num_named_parameters: Pguint; first_param_id: Phb_ot_name_id_t): Thb_bool_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_ot_layout_feature_get_name_ids' {$endif}; -function hb_ot_layout_feature_with_variations_get_lookups(face: Phb_face_t; table_tag: Thb_tag_t; feature_index: guint; variations_index: guint; start_offset: guint; lookup_count: Pguint; lookup_indexes: Pguint): guint; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_ot_layout_feature_with_variations_get_lookups' {$endif}; -function hb_ot_layout_get_attach_points(face: Phb_face_t; glyph: Thb_codepoint_t; start_offset: guint; point_count: Pguint; point_array: Pguint): guint; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_ot_layout_get_attach_points' {$endif}; -function hb_ot_layout_get_baseline(font: Phb_font_t; baseline_tag: Thb_ot_layout_baseline_tag_t; direction: Thb_direction_t; script_tag: Thb_tag_t; language_tag: Thb_tag_t; coord: Phb_position_t): Thb_bool_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_ot_layout_get_baseline' {$endif}; -function hb_ot_layout_get_glyph_class(face: Phb_face_t; glyph: Thb_codepoint_t): Thb_ot_layout_glyph_class_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_ot_layout_get_glyph_class' {$endif}; -function hb_ot_layout_get_horizontal_baseline_tag_for_script(script: Thb_script_t): Thb_ot_layout_baseline_tag_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_ot_layout_get_horizontal_baseline_tag_for_script' {$endif}; -function hb_ot_layout_get_ligature_carets(font: Phb_font_t; direction: Thb_direction_t; glyph: Thb_codepoint_t; start_offset: guint; caret_count: Pguint; caret_array: Phb_position_t): guint; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_ot_layout_get_ligature_carets' {$endif}; -function hb_ot_layout_get_size_params(face: Phb_face_t; design_size: Pguint; subfamily_id: Pguint; subfamily_name_id: Phb_ot_name_id_t; range_start: Pguint; range_end: Pguint): Thb_bool_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_ot_layout_get_size_params' {$endif}; -function hb_ot_layout_has_glyph_classes(face: Phb_face_t): Thb_bool_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_ot_layout_has_glyph_classes' {$endif}; -function hb_ot_layout_has_positioning(face: Phb_face_t): Thb_bool_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_ot_layout_has_positioning' {$endif}; -function hb_ot_layout_has_substitution(face: Phb_face_t): Thb_bool_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_ot_layout_has_substitution' {$endif}; -function hb_ot_layout_language_find_feature(face: Phb_face_t; table_tag: Thb_tag_t; script_index: guint; language_index: guint; feature_tag: Thb_tag_t; feature_index: Pguint): Thb_bool_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_ot_layout_language_find_feature' {$endif}; -function hb_ot_layout_language_get_feature_indexes(face: Phb_face_t; table_tag: Thb_tag_t; script_index: guint; language_index: guint; start_offset: guint; feature_count: Pguint; feature_indexes: Pguint): guint; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_ot_layout_language_get_feature_indexes' {$endif}; -function hb_ot_layout_language_get_feature_tags(face: Phb_face_t; table_tag: Thb_tag_t; script_index: guint; language_index: guint; start_offset: guint; feature_count: Pguint; feature_tags: Phb_tag_t): guint; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_ot_layout_language_get_feature_tags' {$endif}; -function hb_ot_layout_language_get_required_feature(face: Phb_face_t; table_tag: Thb_tag_t; script_index: guint; language_index: guint; feature_index: Pguint; feature_tag: Phb_tag_t): Thb_bool_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_ot_layout_language_get_required_feature' {$endif}; -function hb_ot_layout_language_get_required_feature_index(face: Phb_face_t; table_tag: Thb_tag_t; script_index: guint; language_index: guint; feature_index: Pguint): Thb_bool_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_ot_layout_language_get_required_feature_index' {$endif}; -function hb_ot_layout_lookup_get_glyph_alternates(face: Phb_face_t; lookup_index: guint; glyph: Thb_codepoint_t; start_offset: guint; alternate_count: Pguint; alternate_glyphs: Phb_codepoint_t): guint; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_ot_layout_lookup_get_glyph_alternates' {$endif}; -function hb_ot_layout_lookup_get_optical_bound(font: Phb_font_t; lookup_index: guint; direction: Thb_direction_t; glyph: Thb_codepoint_t): Thb_position_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_ot_layout_lookup_get_optical_bound' {$endif}; -function hb_ot_layout_lookup_would_substitute(face: Phb_face_t; lookup_index: guint; glyphs: Phb_codepoint_t; glyphs_length: guint; zero_context: Thb_bool_t): Thb_bool_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_ot_layout_lookup_would_substitute' {$endif}; -function hb_ot_layout_script_get_language_tags(face: Phb_face_t; table_tag: Thb_tag_t; script_index: guint; start_offset: guint; language_count: Pguint; language_tags: Phb_tag_t): guint; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_ot_layout_script_get_language_tags' {$endif}; -function hb_ot_layout_script_select_language(face: Phb_face_t; table_tag: Thb_tag_t; script_index: guint; language_count: guint; language_tags: Phb_tag_t; language_index: Pguint): Thb_bool_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_ot_layout_script_select_language' {$endif}; -function hb_ot_layout_script_select_language2(face: Phb_face_t; table_tag: Thb_tag_t; script_index: guint; language_count: guint; language_tags: Phb_tag_t; language_index: Pguint; chosen_language: Phb_tag_t): Thb_bool_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_ot_layout_script_select_language2' {$endif}; -function hb_ot_layout_table_choose_script(face: Phb_face_t; table_tag: Thb_tag_t; script_tags: Phb_tag_t; script_index: Pguint; chosen_script: Phb_tag_t): Thb_bool_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_ot_layout_table_choose_script' {$endif}; -function hb_ot_layout_table_find_feature_variations(face: Phb_face_t; table_tag: Thb_tag_t; coords: Pgint; num_coords: guint; variations_index: Pguint): Thb_bool_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_ot_layout_table_find_feature_variations' {$endif}; -function hb_ot_layout_table_find_script(face: Phb_face_t; table_tag: Thb_tag_t; script_tag: Thb_tag_t; script_index: Pguint): Thb_bool_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_ot_layout_table_find_script' {$endif}; -function hb_ot_layout_table_get_feature_tags(face: Phb_face_t; table_tag: Thb_tag_t; start_offset: guint; feature_count: Pguint; feature_tags: Phb_tag_t): guint; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_ot_layout_table_get_feature_tags' {$endif}; -function hb_ot_layout_table_get_lookup_count(face: Phb_face_t; table_tag: Thb_tag_t): guint; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_ot_layout_table_get_lookup_count' {$endif}; -function hb_ot_layout_table_get_script_tags(face: Phb_face_t; table_tag: Thb_tag_t; start_offset: guint; script_count: Pguint; script_tags: Phb_tag_t): guint; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_ot_layout_table_get_script_tags' {$endif}; -function hb_ot_layout_table_select_script(face: Phb_face_t; table_tag: Thb_tag_t; script_count: guint; script_tags: Phb_tag_t; script_index: Pguint; chosen_script: Phb_tag_t): Thb_bool_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_ot_layout_table_select_script' {$endif}; -function hb_ot_math_get_constant(font: Phb_font_t; constant: Thb_ot_math_constant_t): Thb_position_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_ot_math_get_constant' {$endif}; -function hb_ot_math_get_glyph_assembly(font: Phb_font_t; glyph: Thb_codepoint_t; direction: Thb_direction_t; start_offset: guint; parts_count: Pguint; parts: Phb_ot_math_glyph_part_t; italics_correction: Phb_position_t): guint; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_ot_math_get_glyph_assembly' {$endif}; -function hb_ot_math_get_glyph_italics_correction(font: Phb_font_t; glyph: Thb_codepoint_t): Thb_position_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_ot_math_get_glyph_italics_correction' {$endif}; -function hb_ot_math_get_glyph_kerning(font: Phb_font_t; glyph: Thb_codepoint_t; kern: Thb_ot_math_kern_t; correction_height: Thb_position_t): Thb_position_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_ot_math_get_glyph_kerning' {$endif}; -function hb_ot_math_get_glyph_kernings(font: Phb_font_t; glyph: Thb_codepoint_t; kern: Thb_ot_math_kern_t; start_offset: guint; entries_count: Pguint; kern_entries: Phb_ot_math_kern_entry_t): guint; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_ot_math_get_glyph_kernings' {$endif}; -function hb_ot_math_get_glyph_top_accent_attachment(font: Phb_font_t; glyph: Thb_codepoint_t): Thb_position_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_ot_math_get_glyph_top_accent_attachment' {$endif}; -function hb_ot_math_get_glyph_variants(font: Phb_font_t; glyph: Thb_codepoint_t; direction: Thb_direction_t; start_offset: guint; variants_count: Pguint; variants: Phb_ot_math_glyph_variant_t): guint; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_ot_math_get_glyph_variants' {$endif}; -function hb_ot_math_get_min_connector_overlap(font: Phb_font_t; direction: Thb_direction_t): Thb_position_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_ot_math_get_min_connector_overlap' {$endif}; -function hb_ot_math_has_data(face: Phb_face_t): Thb_bool_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_ot_math_has_data' {$endif}; -function hb_ot_math_is_glyph_extended_shape(face: Phb_face_t; glyph: Thb_codepoint_t): Thb_bool_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_ot_math_is_glyph_extended_shape' {$endif}; -function hb_ot_meta_get_entry_tags(face: Phb_face_t; start_offset: guint; entries_count: Pguint; entries: Phb_ot_meta_tag_t): guint; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_ot_meta_get_entry_tags' {$endif}; -function hb_ot_meta_reference_entry(face: Phb_face_t; meta_tag: Thb_ot_meta_tag_t): Phb_blob_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_ot_meta_reference_entry' {$endif}; -function hb_ot_metrics_get_position(font: Phb_font_t; metrics_tag: Thb_ot_metrics_tag_t; position: Phb_position_t): Thb_bool_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_ot_metrics_get_position' {$endif}; -function hb_ot_metrics_get_variation(font: Phb_font_t; metrics_tag: Thb_ot_metrics_tag_t): gfloat; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_ot_metrics_get_variation' {$endif}; -function hb_ot_metrics_get_x_variation(font: Phb_font_t; metrics_tag: Thb_ot_metrics_tag_t): Thb_position_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_ot_metrics_get_x_variation' {$endif}; -function hb_ot_metrics_get_y_variation(font: Phb_font_t; metrics_tag: Thb_ot_metrics_tag_t): Thb_position_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_ot_metrics_get_y_variation' {$endif}; -function hb_ot_name_get_utf16(face: Phb_face_t; name_id: Thb_ot_name_id_t; language: Thb_language_t; text_size: Pguint; text: Pguint16): guint; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_ot_name_get_utf16' {$endif}; -function hb_ot_name_get_utf32(face: Phb_face_t; name_id: Thb_ot_name_id_t; language: Thb_language_t; text_size: Pguint; text: Pguint32): guint; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_ot_name_get_utf32' {$endif}; -function hb_ot_name_get_utf8(face: Phb_face_t; name_id: Thb_ot_name_id_t; language: Thb_language_t; text_size: Pguint; text: Pgchar): guint; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_ot_name_get_utf8' {$endif}; -function hb_ot_name_list_names(face: Phb_face_t; num_entries: Pguint): Phb_ot_name_entry_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_ot_name_list_names' {$endif}; -function hb_ot_tag_to_language(tag: Thb_tag_t): Thb_language_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_ot_tag_to_language' {$endif}; -function hb_ot_tag_to_script(tag: Thb_tag_t): Thb_script_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_ot_tag_to_script' {$endif}; -function hb_ot_var_find_axis_info(face: Phb_face_t; axis_tag: Thb_tag_t; axis_info: Phb_ot_var_axis_info_t): Thb_bool_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_ot_var_find_axis_info' {$endif}; -function hb_ot_var_get_axis_count(face: Phb_face_t): guint; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_ot_var_get_axis_count' {$endif}; -function hb_ot_var_get_axis_infos(face: Phb_face_t; start_offset: guint; axes_count: Pguint; axes_array: Phb_ot_var_axis_info_t): guint; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_ot_var_get_axis_infos' {$endif}; -function hb_ot_var_get_named_instance_count(face: Phb_face_t): guint; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_ot_var_get_named_instance_count' {$endif}; -function hb_ot_var_has_data(face: Phb_face_t): Thb_bool_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_ot_var_has_data' {$endif}; -function hb_ot_var_named_instance_get_design_coords(face: Phb_face_t; instance_index: guint; coords_length: Pguint; coords: Pgfloat): guint; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_ot_var_named_instance_get_design_coords' {$endif}; -function hb_ot_var_named_instance_get_postscript_name_id(face: Phb_face_t; instance_index: guint): Thb_ot_name_id_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_ot_var_named_instance_get_postscript_name_id' {$endif}; -function hb_ot_var_named_instance_get_subfamily_name_id(face: Phb_face_t; instance_index: guint): Thb_ot_name_id_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_ot_var_named_instance_get_subfamily_name_id' {$endif}; -function hb_paint_custom_palette_color(funcs: Phb_paint_funcs_t; paint_data: Pgpointer; color_index: guint; color: Phb_color_t): Thb_bool_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_paint_custom_palette_color' {$endif}; -function hb_paint_funcs_create: Phb_paint_funcs_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_paint_funcs_create' {$endif}; -function hb_paint_funcs_get_empty: Phb_paint_funcs_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_paint_funcs_get_empty' {$endif}; -function hb_paint_funcs_get_user_data(funcs: Phb_paint_funcs_t; key: Phb_user_data_key_t): Pgpointer; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_paint_funcs_get_user_data' {$endif}; -function hb_paint_funcs_is_immutable(funcs: Phb_paint_funcs_t): Thb_bool_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_paint_funcs_is_immutable' {$endif}; -function hb_paint_funcs_reference(funcs: Phb_paint_funcs_t): Phb_paint_funcs_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_paint_funcs_reference' {$endif}; -function hb_paint_funcs_set_user_data(funcs: Phb_paint_funcs_t; key: Phb_user_data_key_t; data: Pgpointer; destroy_: Thb_destroy_func_t; replace: Thb_bool_t): Thb_bool_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_paint_funcs_set_user_data' {$endif}; -function hb_script_from_iso15924_tag(tag: Thb_tag_t): Thb_script_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_script_from_iso15924_tag' {$endif}; -function hb_script_from_string(str: Pgchar; len: gint): Thb_script_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_script_from_string' {$endif}; -function hb_script_get_horizontal_direction(script: Thb_script_t): Thb_direction_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_script_get_horizontal_direction' {$endif}; -function hb_script_to_iso15924_tag(script: Thb_script_t): Thb_tag_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_script_to_iso15924_tag' {$endif}; -function hb_segment_properties_equal(a: Phb_segment_properties_t; b: Phb_segment_properties_t): Thb_bool_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_segment_properties_equal' {$endif}; -function hb_segment_properties_hash(p: Phb_segment_properties_t): guint; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_segment_properties_hash' {$endif}; -function hb_set_allocation_successful(set_: Phb_set_t): Thb_bool_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_set_allocation_successful' {$endif}; -function hb_set_copy(set_: Phb_set_t): Phb_set_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_set_copy' {$endif}; -function hb_set_create: Phb_set_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_set_create' {$endif}; -function hb_set_get_empty: Phb_set_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_set_get_empty' {$endif}; -function hb_set_get_max(set_: Phb_set_t): Thb_codepoint_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_set_get_max' {$endif}; -function hb_set_get_min(set_: Phb_set_t): Thb_codepoint_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_set_get_min' {$endif}; -function hb_set_get_population(set_: Phb_set_t): guint; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_set_get_population' {$endif}; -function hb_set_get_user_data(set_: Phb_set_t; key: Phb_user_data_key_t): Pgpointer; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_set_get_user_data' {$endif}; -function hb_set_has(set_: Phb_set_t; codepoint: Thb_codepoint_t): Thb_bool_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_set_has' {$endif}; -function hb_set_hash(set_: Phb_set_t): guint; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_set_hash' {$endif}; -function hb_set_is_empty(set_: Phb_set_t): Thb_bool_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_set_is_empty' {$endif}; -function hb_set_is_equal(set_: Phb_set_t; other: Phb_set_t): Thb_bool_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_set_is_equal' {$endif}; -function hb_set_is_inverted(set_: Phb_set_t): Thb_bool_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_set_is_inverted' {$endif}; -function hb_set_is_subset(set_: Phb_set_t; larger_set: Phb_set_t): Thb_bool_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_set_is_subset' {$endif}; -function hb_set_next(set_: Phb_set_t; codepoint: Phb_codepoint_t): Thb_bool_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_set_next' {$endif}; -function hb_set_next_many(set_: Phb_set_t; codepoint: Thb_codepoint_t; out_: Phb_codepoint_t; size: guint): guint; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_set_next_many' {$endif}; -function hb_set_next_range(set_: Phb_set_t; first: Phb_codepoint_t; last: Phb_codepoint_t): Thb_bool_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_set_next_range' {$endif}; -function hb_set_previous(set_: Phb_set_t; codepoint: Phb_codepoint_t): Thb_bool_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_set_previous' {$endif}; -function hb_set_previous_range(set_: Phb_set_t; first: Phb_codepoint_t; last: Phb_codepoint_t): Thb_bool_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_set_previous_range' {$endif}; -function hb_set_reference(set_: Phb_set_t): Phb_set_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_set_reference' {$endif}; -function hb_set_set_user_data(set_: Phb_set_t; key: Phb_user_data_key_t; data: Pgpointer; destroy_: Thb_destroy_func_t; replace: Thb_bool_t): Thb_bool_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_set_set_user_data' {$endif}; -function hb_shape_full(font: Phb_font_t; buffer: Phb_buffer_t; features: Phb_feature_t; num_features: guint; shaper_list: PPgchar): Thb_bool_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_shape_full' {$endif}; -function hb_shape_justify(font: Phb_font_t; buffer: Phb_buffer_t; features: Phb_feature_t; num_features: guint; shaper_list: PPgchar; min_target_advance: gfloat; max_target_advance: gfloat; advance: Pgfloat; var_tag: Phb_tag_t; var_value: Pgfloat): Thb_bool_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_shape_justify' {$endif}; -function hb_shape_list_shapers: PPgchar; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_shape_list_shapers' {$endif}; -function hb_shape_plan_create(face: Phb_face_t; props: Phb_segment_properties_t; user_features: Phb_feature_t; num_user_features: guint; shaper_list: PPgchar): Phb_shape_plan_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_shape_plan_create' {$endif}; -function hb_shape_plan_create2(face: Phb_face_t; props: Phb_segment_properties_t; user_features: Phb_feature_t; num_user_features: guint; coords: Pgint; num_coords: guint; shaper_list: PPgchar): Phb_shape_plan_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_shape_plan_create2' {$endif}; -function hb_shape_plan_create_cached(face: Phb_face_t; props: Phb_segment_properties_t; user_features: Phb_feature_t; num_user_features: guint; shaper_list: PPgchar): Phb_shape_plan_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_shape_plan_create_cached' {$endif}; -function hb_shape_plan_create_cached2(face: Phb_face_t; props: Phb_segment_properties_t; user_features: Phb_feature_t; num_user_features: guint; coords: Pgint; num_coords: guint; shaper_list: PPgchar): Phb_shape_plan_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_shape_plan_create_cached2' {$endif}; -function hb_shape_plan_execute(shape_plan: Phb_shape_plan_t; font: Phb_font_t; buffer: Phb_buffer_t; features: Phb_feature_t; num_features: guint): Thb_bool_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_shape_plan_execute' {$endif}; -function hb_shape_plan_get_empty: Phb_shape_plan_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_shape_plan_get_empty' {$endif}; -function hb_shape_plan_get_shaper(shape_plan: Phb_shape_plan_t): Pgchar; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_shape_plan_get_shaper' {$endif}; -function hb_shape_plan_get_user_data(shape_plan: Phb_shape_plan_t; key: Phb_user_data_key_t): Pgpointer; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_shape_plan_get_user_data' {$endif}; -function hb_shape_plan_reference(shape_plan: Phb_shape_plan_t): Phb_shape_plan_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_shape_plan_reference' {$endif}; -function hb_shape_plan_set_user_data(shape_plan: Phb_shape_plan_t; key: Phb_user_data_key_t; data: Pgpointer; destroy_: Thb_destroy_func_t; replace: Thb_bool_t): Thb_bool_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_shape_plan_set_user_data' {$endif}; -function hb_style_get_value(font: Phb_font_t; style_tag: Thb_style_tag_t): gfloat; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_style_get_value' {$endif}; -function hb_tag_from_string(str: Pgchar; len: gint): Thb_tag_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_tag_from_string' {$endif}; -function hb_unicode_combining_class(ufuncs: Phb_unicode_funcs_t; unicode: Thb_codepoint_t): Thb_unicode_combining_class_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_unicode_combining_class' {$endif}; -function hb_unicode_compose(ufuncs: Phb_unicode_funcs_t; a: Thb_codepoint_t; b: Thb_codepoint_t; ab: Phb_codepoint_t): Thb_bool_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_unicode_compose' {$endif}; -function hb_unicode_decompose(ufuncs: Phb_unicode_funcs_t; ab: Thb_codepoint_t; a: Phb_codepoint_t; b: Phb_codepoint_t): Thb_bool_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_unicode_decompose' {$endif}; -function hb_unicode_funcs_create(parent: Phb_unicode_funcs_t): Phb_unicode_funcs_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_unicode_funcs_create' {$endif}; -function hb_unicode_funcs_get_default: Phb_unicode_funcs_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_unicode_funcs_get_default' {$endif}; -function hb_unicode_funcs_get_empty: Phb_unicode_funcs_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_unicode_funcs_get_empty' {$endif}; -function hb_unicode_funcs_get_parent(ufuncs: Phb_unicode_funcs_t): Phb_unicode_funcs_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_unicode_funcs_get_parent' {$endif}; -function hb_unicode_funcs_get_user_data(ufuncs: Phb_unicode_funcs_t; key: Phb_user_data_key_t): Pgpointer; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_unicode_funcs_get_user_data' {$endif}; -function hb_unicode_funcs_is_immutable(ufuncs: Phb_unicode_funcs_t): Thb_bool_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_unicode_funcs_is_immutable' {$endif}; -function hb_unicode_funcs_reference(ufuncs: Phb_unicode_funcs_t): Phb_unicode_funcs_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_unicode_funcs_reference' {$endif}; -function hb_unicode_funcs_set_user_data(ufuncs: Phb_unicode_funcs_t; key: Phb_user_data_key_t; data: Pgpointer; destroy_: Thb_destroy_func_t; replace: Thb_bool_t): Thb_bool_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_unicode_funcs_set_user_data' {$endif}; -function hb_unicode_general_category(ufuncs: Phb_unicode_funcs_t; unicode: Thb_codepoint_t): Thb_unicode_general_category_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_unicode_general_category' {$endif}; -function hb_unicode_mirroring(ufuncs: Phb_unicode_funcs_t; unicode: Thb_codepoint_t): Thb_codepoint_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_unicode_mirroring' {$endif}; -function hb_unicode_script(ufuncs: Phb_unicode_funcs_t; unicode: Thb_codepoint_t): Thb_script_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_unicode_script' {$endif}; -function hb_variation_from_string(str: Pgchar; len: gint; variation: Phb_variation_t): Thb_bool_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_variation_from_string' {$endif}; -function hb_version_atleast(major: guint; minor: guint; micro: guint): Thb_bool_t; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_version_atleast' {$endif}; -function hb_version_string: Pgchar; cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_version_string' {$endif}; -procedure hb_blob_destroy(blob: Phb_blob_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_blob_destroy' {$endif}; -procedure hb_blob_make_immutable(blob: Phb_blob_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_blob_make_immutable' {$endif}; -procedure hb_buffer_add(buffer: Phb_buffer_t; codepoint: Thb_codepoint_t; cluster: guint); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_buffer_add' {$endif}; -procedure hb_buffer_add_codepoints(buffer: Phb_buffer_t; text: Phb_codepoint_t; text_length: gint; item_offset: guint; item_length: gint); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_buffer_add_codepoints' {$endif}; -procedure hb_buffer_add_latin1(buffer: Phb_buffer_t; text: Pguint8; text_length: gint; item_offset: guint; item_length: gint); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_buffer_add_latin1' {$endif}; -procedure hb_buffer_add_utf16(buffer: Phb_buffer_t; text: Pguint16; text_length: gint; item_offset: guint; item_length: gint); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_buffer_add_utf16' {$endif}; -procedure hb_buffer_add_utf32(buffer: Phb_buffer_t; text: Pguint32; text_length: gint; item_offset: guint; item_length: gint); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_buffer_add_utf32' {$endif}; -procedure hb_buffer_add_utf8(buffer: Phb_buffer_t; text: Pgchar; text_length: gint; item_offset: guint; item_length: gint); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_buffer_add_utf8' {$endif}; -procedure hb_buffer_append(buffer: Phb_buffer_t; source: Phb_buffer_t; start: guint; end_: guint); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_buffer_append' {$endif}; -procedure hb_buffer_clear_contents(buffer: Phb_buffer_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_buffer_clear_contents' {$endif}; -procedure hb_buffer_destroy(buffer: Phb_buffer_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_buffer_destroy' {$endif}; -procedure hb_buffer_get_segment_properties(buffer: Phb_buffer_t; props: Phb_segment_properties_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_buffer_get_segment_properties' {$endif}; -procedure hb_buffer_guess_segment_properties(buffer: Phb_buffer_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_buffer_guess_segment_properties' {$endif}; -procedure hb_buffer_normalize_glyphs(buffer: Phb_buffer_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_buffer_normalize_glyphs' {$endif}; -procedure hb_buffer_reset(buffer: Phb_buffer_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_buffer_reset' {$endif}; -procedure hb_buffer_reverse(buffer: Phb_buffer_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_buffer_reverse' {$endif}; -procedure hb_buffer_reverse_clusters(buffer: Phb_buffer_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_buffer_reverse_clusters' {$endif}; -procedure hb_buffer_reverse_range(buffer: Phb_buffer_t; start: guint; end_: guint); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_buffer_reverse_range' {$endif}; -procedure hb_buffer_set_cluster_level(buffer: Phb_buffer_t; cluster_level: Thb_buffer_cluster_level_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_buffer_set_cluster_level' {$endif}; -procedure hb_buffer_set_content_type(buffer: Phb_buffer_t; content_type: Thb_buffer_content_type_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_buffer_set_content_type' {$endif}; -procedure hb_buffer_set_direction(buffer: Phb_buffer_t; direction: Thb_direction_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_buffer_set_direction' {$endif}; -procedure hb_buffer_set_flags(buffer: Phb_buffer_t; flags: Thb_buffer_flags_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_buffer_set_flags' {$endif}; -procedure hb_buffer_set_invisible_glyph(buffer: Phb_buffer_t; invisible: Thb_codepoint_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_buffer_set_invisible_glyph' {$endif}; -procedure hb_buffer_set_language(buffer: Phb_buffer_t; language: Thb_language_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_buffer_set_language' {$endif}; -procedure hb_buffer_set_message_func(buffer: Phb_buffer_t; func: Thb_buffer_message_func_t; user_data: Pgpointer; destroy_: Thb_destroy_func_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_buffer_set_message_func' {$endif}; -procedure hb_buffer_set_not_found_glyph(buffer: Phb_buffer_t; not_found: Thb_codepoint_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_buffer_set_not_found_glyph' {$endif}; -procedure hb_buffer_set_replacement_codepoint(buffer: Phb_buffer_t; replacement: Thb_codepoint_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_buffer_set_replacement_codepoint' {$endif}; -procedure hb_buffer_set_script(buffer: Phb_buffer_t; script: Thb_script_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_buffer_set_script' {$endif}; -procedure hb_buffer_set_segment_properties(buffer: Phb_buffer_t; props: Phb_segment_properties_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_buffer_set_segment_properties' {$endif}; -procedure hb_buffer_set_unicode_funcs(buffer: Phb_buffer_t; unicode_funcs: Phb_unicode_funcs_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_buffer_set_unicode_funcs' {$endif}; -procedure hb_draw_close_path(dfuncs: Phb_draw_funcs_t; draw_data: Pgpointer; st: Phb_draw_state_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_draw_close_path' {$endif}; -procedure hb_draw_cubic_to(dfuncs: Phb_draw_funcs_t; draw_data: Pgpointer; st: Phb_draw_state_t; control1_x: gfloat; control1_y: gfloat; control2_x: gfloat; control2_y: gfloat; to_x: gfloat; to_y: gfloat); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_draw_cubic_to' {$endif}; -procedure hb_draw_funcs_destroy(dfuncs: Phb_draw_funcs_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_draw_funcs_destroy' {$endif}; -procedure hb_draw_funcs_make_immutable(dfuncs: Phb_draw_funcs_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_draw_funcs_make_immutable' {$endif}; -procedure hb_draw_funcs_set_close_path_func(dfuncs: Phb_draw_funcs_t; func: Thb_draw_close_path_func_t; user_data: Pgpointer; destroy_: Thb_destroy_func_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_draw_funcs_set_close_path_func' {$endif}; -procedure hb_draw_funcs_set_cubic_to_func(dfuncs: Phb_draw_funcs_t; func: Thb_draw_cubic_to_func_t; user_data: Pgpointer; destroy_: Thb_destroy_func_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_draw_funcs_set_cubic_to_func' {$endif}; -procedure hb_draw_funcs_set_line_to_func(dfuncs: Phb_draw_funcs_t; func: Thb_draw_line_to_func_t; user_data: Pgpointer; destroy_: Thb_destroy_func_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_draw_funcs_set_line_to_func' {$endif}; -procedure hb_draw_funcs_set_move_to_func(dfuncs: Phb_draw_funcs_t; func: Thb_draw_move_to_func_t; user_data: Pgpointer; destroy_: Thb_destroy_func_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_draw_funcs_set_move_to_func' {$endif}; -procedure hb_draw_funcs_set_quadratic_to_func(dfuncs: Phb_draw_funcs_t; func: Thb_draw_quadratic_to_func_t; user_data: Pgpointer; destroy_: Thb_destroy_func_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_draw_funcs_set_quadratic_to_func' {$endif}; -procedure hb_draw_line_to(dfuncs: Phb_draw_funcs_t; draw_data: Pgpointer; st: Phb_draw_state_t; to_x: gfloat; to_y: gfloat); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_draw_line_to' {$endif}; -procedure hb_draw_move_to(dfuncs: Phb_draw_funcs_t; draw_data: Pgpointer; st: Phb_draw_state_t; to_x: gfloat; to_y: gfloat); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_draw_move_to' {$endif}; -procedure hb_draw_quadratic_to(dfuncs: Phb_draw_funcs_t; draw_data: Pgpointer; st: Phb_draw_state_t; control_x: gfloat; control_y: gfloat; to_x: gfloat; to_y: gfloat); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_draw_quadratic_to' {$endif}; -procedure hb_face_builder_sort_tables(face: Phb_face_t; tags: Phb_tag_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_face_builder_sort_tables' {$endif}; -procedure hb_face_collect_nominal_glyph_mapping(face: Phb_face_t; mapping: Phb_map_t; unicodes: Phb_set_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_face_collect_nominal_glyph_mapping' {$endif}; -procedure hb_face_collect_unicodes(face: Phb_face_t; out_: Phb_set_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_face_collect_unicodes' {$endif}; -procedure hb_face_collect_variation_selectors(face: Phb_face_t; out_: Phb_set_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_face_collect_variation_selectors' {$endif}; -procedure hb_face_collect_variation_unicodes(face: Phb_face_t; variation_selector: Thb_codepoint_t; out_: Phb_set_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_face_collect_variation_unicodes' {$endif}; -procedure hb_face_destroy(face: Phb_face_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_face_destroy' {$endif}; -procedure hb_face_make_immutable(face: Phb_face_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_face_make_immutable' {$endif}; -procedure hb_face_set_glyph_count(face: Phb_face_t; glyph_count: guint); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_face_set_glyph_count' {$endif}; -procedure hb_face_set_index(face: Phb_face_t; index: guint); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_face_set_index' {$endif}; -procedure hb_face_set_upem(face: Phb_face_t; upem: guint); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_face_set_upem' {$endif}; -procedure hb_feature_to_string(feature: Phb_feature_t; buf: Pgchar; size: Pguint); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_feature_to_string' {$endif}; -procedure hb_font_add_glyph_origin_for_direction(font: Phb_font_t; glyph: Thb_codepoint_t; direction: Thb_direction_t; x: Phb_position_t; y: Phb_position_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_font_add_glyph_origin_for_direction' {$endif}; -procedure hb_font_changed(font: Phb_font_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_font_changed' {$endif}; -procedure hb_font_destroy(font: Phb_font_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_font_destroy' {$endif}; -procedure hb_font_draw_glyph(font: Phb_font_t; glyph: Thb_codepoint_t; dfuncs: Phb_draw_funcs_t; draw_data: Pgpointer); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_font_draw_glyph' {$endif}; -procedure hb_font_funcs_destroy(ffuncs: Phb_font_funcs_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_font_funcs_destroy' {$endif}; -procedure hb_font_funcs_make_immutable(ffuncs: Phb_font_funcs_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_font_funcs_make_immutable' {$endif}; -procedure hb_font_funcs_set_draw_glyph_func(ffuncs: Phb_font_funcs_t; func: Thb_font_draw_glyph_func_t; user_data: Pgpointer; destroy_: Thb_destroy_func_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_font_funcs_set_draw_glyph_func' {$endif}; -procedure hb_font_funcs_set_font_h_extents_func(ffuncs: Phb_font_funcs_t; func: Thb_font_get_font_h_extents_func_t; user_data: Pgpointer; destroy_: Thb_destroy_func_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_font_funcs_set_font_h_extents_func' {$endif}; -procedure hb_font_funcs_set_font_v_extents_func(ffuncs: Phb_font_funcs_t; func: Thb_font_get_font_v_extents_func_t; user_data: Pgpointer; destroy_: Thb_destroy_func_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_font_funcs_set_font_v_extents_func' {$endif}; -procedure hb_font_funcs_set_glyph_contour_point_func(ffuncs: Phb_font_funcs_t; func: Thb_font_get_glyph_contour_point_func_t; user_data: Pgpointer; destroy_: Thb_destroy_func_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_font_funcs_set_glyph_contour_point_func' {$endif}; -procedure hb_font_funcs_set_glyph_extents_func(ffuncs: Phb_font_funcs_t; func: Thb_font_get_glyph_extents_func_t; user_data: Pgpointer; destroy_: Thb_destroy_func_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_font_funcs_set_glyph_extents_func' {$endif}; -procedure hb_font_funcs_set_glyph_from_name_func(ffuncs: Phb_font_funcs_t; func: Thb_font_get_glyph_from_name_func_t; user_data: Pgpointer; destroy_: Thb_destroy_func_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_font_funcs_set_glyph_from_name_func' {$endif}; -procedure hb_font_funcs_set_glyph_h_advance_func(ffuncs: Phb_font_funcs_t; func: Thb_font_get_glyph_h_advance_func_t; user_data: Pgpointer; destroy_: Thb_destroy_func_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_font_funcs_set_glyph_h_advance_func' {$endif}; -procedure hb_font_funcs_set_glyph_h_advances_func(ffuncs: Phb_font_funcs_t; func: Thb_font_get_glyph_h_advances_func_t; user_data: Pgpointer; destroy_: Thb_destroy_func_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_font_funcs_set_glyph_h_advances_func' {$endif}; -procedure hb_font_funcs_set_glyph_h_kerning_func(ffuncs: Phb_font_funcs_t; func: Thb_font_get_glyph_h_kerning_func_t; user_data: Pgpointer; destroy_: Thb_destroy_func_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_font_funcs_set_glyph_h_kerning_func' {$endif}; -procedure hb_font_funcs_set_glyph_h_origin_func(ffuncs: Phb_font_funcs_t; func: Thb_font_get_glyph_h_origin_func_t; user_data: Pgpointer; destroy_: Thb_destroy_func_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_font_funcs_set_glyph_h_origin_func' {$endif}; -procedure hb_font_funcs_set_glyph_name_func(ffuncs: Phb_font_funcs_t; func: Thb_font_get_glyph_name_func_t; user_data: Pgpointer; destroy_: Thb_destroy_func_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_font_funcs_set_glyph_name_func' {$endif}; -procedure hb_font_funcs_set_glyph_v_advance_func(ffuncs: Phb_font_funcs_t; func: Thb_font_get_glyph_v_advance_func_t; user_data: Pgpointer; destroy_: Thb_destroy_func_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_font_funcs_set_glyph_v_advance_func' {$endif}; -procedure hb_font_funcs_set_glyph_v_advances_func(ffuncs: Phb_font_funcs_t; func: Thb_font_get_glyph_v_advances_func_t; user_data: Pgpointer; destroy_: Thb_destroy_func_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_font_funcs_set_glyph_v_advances_func' {$endif}; -procedure hb_font_funcs_set_glyph_v_origin_func(ffuncs: Phb_font_funcs_t; func: Thb_font_get_glyph_v_origin_func_t; user_data: Pgpointer; destroy_: Thb_destroy_func_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_font_funcs_set_glyph_v_origin_func' {$endif}; -procedure hb_font_funcs_set_nominal_glyph_func(ffuncs: Phb_font_funcs_t; func: Thb_font_get_nominal_glyph_func_t; user_data: Pgpointer; destroy_: Thb_destroy_func_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_font_funcs_set_nominal_glyph_func' {$endif}; -procedure hb_font_funcs_set_nominal_glyphs_func(ffuncs: Phb_font_funcs_t; func: Thb_font_get_nominal_glyphs_func_t; user_data: Pgpointer; destroy_: Thb_destroy_func_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_font_funcs_set_nominal_glyphs_func' {$endif}; -procedure hb_font_funcs_set_paint_glyph_func(ffuncs: Phb_font_funcs_t; func: Thb_font_paint_glyph_func_t; user_data: Pgpointer; destroy_: Thb_destroy_func_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_font_funcs_set_paint_glyph_func' {$endif}; -procedure hb_font_funcs_set_variation_glyph_func(ffuncs: Phb_font_funcs_t; func: Thb_font_get_variation_glyph_func_t; user_data: Pgpointer; destroy_: Thb_destroy_func_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_font_funcs_set_variation_glyph_func' {$endif}; -procedure hb_font_get_extents_for_direction(font: Phb_font_t; direction: Thb_direction_t; extents: Phb_font_extents_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_font_get_extents_for_direction' {$endif}; -procedure hb_font_get_glyph_advance_for_direction(font: Phb_font_t; glyph: Thb_codepoint_t; direction: Thb_direction_t; x: Phb_position_t; y: Phb_position_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_font_get_glyph_advance_for_direction' {$endif}; -procedure hb_font_get_glyph_advances_for_direction(font: Phb_font_t; direction: Thb_direction_t; count: guint; first_glyph: Phb_codepoint_t; glyph_stride: guint; first_advance: Phb_position_t; advance_stride: Pguint); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_font_get_glyph_advances_for_direction' {$endif}; -procedure hb_font_get_glyph_h_advances(font: Phb_font_t; count: guint; first_glyph: Phb_codepoint_t; glyph_stride: guint; first_advance: Phb_position_t; advance_stride: guint); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_font_get_glyph_h_advances' {$endif}; -procedure hb_font_get_glyph_kerning_for_direction(font: Phb_font_t; first_glyph: Thb_codepoint_t; second_glyph: Thb_codepoint_t; direction: Thb_direction_t; x: Phb_position_t; y: Phb_position_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_font_get_glyph_kerning_for_direction' {$endif}; -procedure hb_font_get_glyph_origin_for_direction(font: Phb_font_t; glyph: Thb_codepoint_t; direction: Thb_direction_t; x: Phb_position_t; y: Phb_position_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_font_get_glyph_origin_for_direction' {$endif}; -procedure hb_font_get_glyph_v_advances(font: Phb_font_t; count: guint; first_glyph: Phb_codepoint_t; glyph_stride: guint; first_advance: Phb_position_t; advance_stride: Pguint); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_font_get_glyph_v_advances' {$endif}; -procedure hb_font_get_ppem(font: Phb_font_t; x_ppem: Pguint; y_ppem: Pguint); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_font_get_ppem' {$endif}; -procedure hb_font_get_scale(font: Phb_font_t; x_scale: Pgint; y_scale: Pgint); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_font_get_scale' {$endif}; -procedure hb_font_get_synthetic_bold(font: Phb_font_t; x_embolden: Pgfloat; y_embolden: Pgfloat; in_place: Phb_bool_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_font_get_synthetic_bold' {$endif}; -procedure hb_font_glyph_to_string(font: Phb_font_t; glyph: Thb_codepoint_t; s: Pgchar; size: Pguint); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_font_glyph_to_string' {$endif}; -procedure hb_font_make_immutable(font: Phb_font_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_font_make_immutable' {$endif}; -procedure hb_font_paint_glyph(font: Phb_font_t; glyph: Thb_codepoint_t; pfuncs: Phb_paint_funcs_t; paint_data: Pgpointer; palette_index: guint; foreground: Thb_color_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_font_paint_glyph' {$endif}; -procedure hb_font_set_face(font: Phb_font_t; face: Phb_face_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_font_set_face' {$endif}; -procedure hb_font_set_funcs(font: Phb_font_t; klass: Phb_font_funcs_t; font_data: Pgpointer; destroy_: Thb_destroy_func_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_font_set_funcs' {$endif}; -procedure hb_font_set_funcs_data(font: Phb_font_t; font_data: Pgpointer; destroy_: Thb_destroy_func_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_font_set_funcs_data' {$endif}; -procedure hb_font_set_parent(font: Phb_font_t; parent: Phb_font_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_font_set_parent' {$endif}; -procedure hb_font_set_ppem(font: Phb_font_t; x_ppem: guint; y_ppem: guint); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_font_set_ppem' {$endif}; -procedure hb_font_set_ptem(font: Phb_font_t; ptem: gfloat); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_font_set_ptem' {$endif}; -procedure hb_font_set_scale(font: Phb_font_t; x_scale: gint; y_scale: gint); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_font_set_scale' {$endif}; -procedure hb_font_set_synthetic_bold(font: Phb_font_t; x_embolden: gfloat; y_embolden: gfloat; in_place: Thb_bool_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_font_set_synthetic_bold' {$endif}; -procedure hb_font_set_synthetic_slant(font: Phb_font_t; slant: gfloat); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_font_set_synthetic_slant' {$endif}; -procedure hb_font_set_var_coords_design(font: Phb_font_t; coords: Pgfloat; coords_length: guint); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_font_set_var_coords_design' {$endif}; -procedure hb_font_set_var_coords_normalized(font: Phb_font_t; coords: Pgint; coords_length: guint); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_font_set_var_coords_normalized' {$endif}; -procedure hb_font_set_var_named_instance(font: Phb_font_t; instance_index: guint); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_font_set_var_named_instance' {$endif}; -procedure hb_font_set_variation(font: Phb_font_t; tag: Thb_tag_t; value: gfloat); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_font_set_variation' {$endif}; -procedure hb_font_set_variations(font: Phb_font_t; variations: Phb_variation_t; variations_length: guint); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_font_set_variations' {$endif}; -procedure hb_font_subtract_glyph_origin_for_direction(font: Phb_font_t; glyph: Thb_codepoint_t; direction: Thb_direction_t; x: Phb_position_t; y: Phb_position_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_font_subtract_glyph_origin_for_direction' {$endif}; -procedure hb_ft_font_changed(font: Phb_font_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_ft_font_changed' {$endif}; -procedure hb_ft_font_set_funcs(font: Phb_font_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_ft_font_set_funcs' {$endif}; -procedure hb_ft_font_set_load_flags(font: Phb_font_t; load_flags: gint); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_ft_font_set_load_flags' {$endif}; -procedure hb_ft_font_unlock_face(font: Phb_font_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_ft_font_unlock_face' {$endif}; -procedure hb_map_clear(map: Phb_map_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_map_clear' {$endif}; -procedure hb_map_del(map: Phb_map_t; key: Thb_codepoint_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_map_del' {$endif}; -procedure hb_map_destroy(map: Phb_map_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_map_destroy' {$endif}; -procedure hb_map_keys(map: Phb_map_t; keys: Phb_set_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_map_keys' {$endif}; -procedure hb_map_set(map: Phb_map_t; key: Thb_codepoint_t; value: Thb_codepoint_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_map_set' {$endif}; -procedure hb_map_update(map: Phb_map_t; other: Phb_map_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_map_update' {$endif}; -procedure hb_map_values(map: Phb_map_t; values: Phb_set_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_map_values' {$endif}; -procedure hb_ot_font_set_funcs(font: Phb_font_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_ot_font_set_funcs' {$endif}; -procedure hb_ot_layout_collect_features(face: Phb_face_t; table_tag: Thb_tag_t; scripts: Phb_tag_t; languages: Phb_tag_t; features: Phb_tag_t; feature_indexes: Phb_set_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_ot_layout_collect_features' {$endif}; -procedure hb_ot_layout_collect_lookups(face: Phb_face_t; table_tag: Thb_tag_t; scripts: Phb_tag_t; languages: Phb_tag_t; features: Phb_tag_t; lookup_indexes: Phb_set_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_ot_layout_collect_lookups' {$endif}; -procedure hb_ot_layout_get_baseline_with_fallback(font: Phb_font_t; baseline_tag: Thb_ot_layout_baseline_tag_t; direction: Thb_direction_t; script_tag: Thb_tag_t; language_tag: Thb_tag_t; coord: Phb_position_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_ot_layout_get_baseline_with_fallback' {$endif}; -procedure hb_ot_layout_get_glyphs_in_class(face: Phb_face_t; klass: Thb_ot_layout_glyph_class_t; glyphs: Phb_set_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_ot_layout_get_glyphs_in_class' {$endif}; -procedure hb_ot_layout_lookup_collect_glyphs(face: Phb_face_t; table_tag: Thb_tag_t; lookup_index: guint; glyphs_before: Phb_set_t; glyphs_input: Phb_set_t; glyphs_after: Phb_set_t; glyphs_output: Phb_set_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_ot_layout_lookup_collect_glyphs' {$endif}; -procedure hb_ot_layout_lookup_substitute_closure(face: Phb_face_t; lookup_index: guint; glyphs: Phb_set_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_ot_layout_lookup_substitute_closure' {$endif}; -procedure hb_ot_layout_lookups_substitute_closure(face: Phb_face_t; lookups: Phb_set_t; glyphs: Phb_set_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_ot_layout_lookups_substitute_closure' {$endif}; -procedure hb_ot_metrics_get_position_with_fallback(font: Phb_font_t; metrics_tag: Thb_ot_metrics_tag_t; position: Phb_position_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_ot_metrics_get_position_with_fallback' {$endif}; -procedure hb_ot_shape_glyphs_closure(font: Phb_font_t; buffer: Phb_buffer_t; features: Phb_feature_t; num_features: guint; glyphs: Phb_set_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_ot_shape_glyphs_closure' {$endif}; -procedure hb_ot_shape_plan_collect_lookups(shape_plan: Phb_shape_plan_t; table_tag: Thb_tag_t; lookup_indexes: Phb_set_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_ot_shape_plan_collect_lookups' {$endif}; -procedure hb_ot_tags_from_script_and_language(script: Thb_script_t; language: Thb_language_t; script_count: Pguint; script_tags: Phb_tag_t; language_count: Pguint; language_tags: Phb_tag_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_ot_tags_from_script_and_language' {$endif}; -procedure hb_ot_tags_to_script_and_language(script_tag: Thb_tag_t; language_tag: Thb_tag_t; script: Phb_script_t; language: Phb_language_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_ot_tags_to_script_and_language' {$endif}; -procedure hb_ot_var_normalize_coords(face: Phb_face_t; coords_length: guint; design_coords: Pgfloat; normalized_coords: Pgint); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_ot_var_normalize_coords' {$endif}; -procedure hb_ot_var_normalize_variations(face: Phb_face_t; variations: Phb_variation_t; variations_length: guint; coords: Pgint; coords_length: Pguint); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_ot_var_normalize_variations' {$endif}; -procedure hb_paint_color(funcs: Phb_paint_funcs_t; paint_data: Pgpointer; is_foreground: Thb_bool_t; color: Thb_color_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_paint_color' {$endif}; -procedure hb_paint_funcs_destroy(funcs: Phb_paint_funcs_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_paint_funcs_destroy' {$endif}; -procedure hb_paint_funcs_make_immutable(funcs: Phb_paint_funcs_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_paint_funcs_make_immutable' {$endif}; -procedure hb_paint_funcs_set_color_func(funcs: Phb_paint_funcs_t; func: Thb_paint_color_func_t; user_data: Pgpointer; destroy_: Thb_destroy_func_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_paint_funcs_set_color_func' {$endif}; -procedure hb_paint_funcs_set_custom_palette_color_func(funcs: Phb_paint_funcs_t; func: Thb_paint_custom_palette_color_func_t; user_data: Pgpointer; destroy_: Thb_destroy_func_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_paint_funcs_set_custom_palette_color_func' {$endif}; -procedure hb_paint_funcs_set_image_func(funcs: Phb_paint_funcs_t; func: Thb_paint_image_func_t; user_data: Pgpointer; destroy_: Thb_destroy_func_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_paint_funcs_set_image_func' {$endif}; -procedure hb_paint_funcs_set_linear_gradient_func(funcs: Phb_paint_funcs_t; func: Thb_paint_linear_gradient_func_t; user_data: Pgpointer; destroy_: Thb_destroy_func_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_paint_funcs_set_linear_gradient_func' {$endif}; -procedure hb_paint_funcs_set_pop_clip_func(funcs: Phb_paint_funcs_t; func: Thb_paint_pop_clip_func_t; user_data: Pgpointer; destroy_: Thb_destroy_func_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_paint_funcs_set_pop_clip_func' {$endif}; -procedure hb_paint_funcs_set_pop_group_func(funcs: Phb_paint_funcs_t; func: Thb_paint_pop_group_func_t; user_data: Pgpointer; destroy_: Thb_destroy_func_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_paint_funcs_set_pop_group_func' {$endif}; -procedure hb_paint_funcs_set_pop_transform_func(funcs: Phb_paint_funcs_t; func: Thb_paint_pop_transform_func_t; user_data: Pgpointer; destroy_: Thb_destroy_func_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_paint_funcs_set_pop_transform_func' {$endif}; -procedure hb_paint_funcs_set_push_clip_glyph_func(funcs: Phb_paint_funcs_t; func: Thb_paint_push_clip_glyph_func_t; user_data: Pgpointer; destroy_: Thb_destroy_func_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_paint_funcs_set_push_clip_glyph_func' {$endif}; -procedure hb_paint_funcs_set_push_clip_rectangle_func(funcs: Phb_paint_funcs_t; func: Thb_paint_push_clip_rectangle_func_t; user_data: Pgpointer; destroy_: Thb_destroy_func_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_paint_funcs_set_push_clip_rectangle_func' {$endif}; -procedure hb_paint_funcs_set_push_group_func(funcs: Phb_paint_funcs_t; func: Thb_paint_push_group_func_t; user_data: Pgpointer; destroy_: Thb_destroy_func_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_paint_funcs_set_push_group_func' {$endif}; -procedure hb_paint_funcs_set_push_transform_func(funcs: Phb_paint_funcs_t; func: Thb_paint_push_transform_func_t; user_data: Pgpointer; destroy_: Thb_destroy_func_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_paint_funcs_set_push_transform_func' {$endif}; -procedure hb_paint_funcs_set_radial_gradient_func(funcs: Phb_paint_funcs_t; func: Thb_paint_radial_gradient_func_t; user_data: Pgpointer; destroy_: Thb_destroy_func_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_paint_funcs_set_radial_gradient_func' {$endif}; -procedure hb_paint_funcs_set_sweep_gradient_func(funcs: Phb_paint_funcs_t; func: Thb_paint_sweep_gradient_func_t; user_data: Pgpointer; destroy_: Thb_destroy_func_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_paint_funcs_set_sweep_gradient_func' {$endif}; -procedure hb_paint_image(funcs: Phb_paint_funcs_t; paint_data: Pgpointer; image: Phb_blob_t; width: guint; height: guint; format: Thb_tag_t; slant: gfloat; extents: Phb_glyph_extents_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_paint_image' {$endif}; -procedure hb_paint_linear_gradient(funcs: Phb_paint_funcs_t; paint_data: Pgpointer; color_line: Phb_color_line_t; x0: gfloat; y0: gfloat; x1: gfloat; y1: gfloat; x2: gfloat; y2: gfloat); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_paint_linear_gradient' {$endif}; -procedure hb_paint_pop_clip(funcs: Phb_paint_funcs_t; paint_data: Pgpointer); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_paint_pop_clip' {$endif}; -procedure hb_paint_pop_group(funcs: Phb_paint_funcs_t; paint_data: Pgpointer; mode: Thb_paint_composite_mode_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_paint_pop_group' {$endif}; -procedure hb_paint_pop_transform(funcs: Phb_paint_funcs_t; paint_data: Pgpointer); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_paint_pop_transform' {$endif}; -procedure hb_paint_push_clip_glyph(funcs: Phb_paint_funcs_t; paint_data: Pgpointer; glyph: Thb_codepoint_t; font: Phb_font_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_paint_push_clip_glyph' {$endif}; -procedure hb_paint_push_clip_rectangle(funcs: Phb_paint_funcs_t; paint_data: Pgpointer; xmin: gfloat; ymin: gfloat; xmax: gfloat; ymax: gfloat); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_paint_push_clip_rectangle' {$endif}; -procedure hb_paint_push_group(funcs: Phb_paint_funcs_t; paint_data: Pgpointer); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_paint_push_group' {$endif}; -procedure hb_paint_push_transform(funcs: Phb_paint_funcs_t; paint_data: Pgpointer; xx: gfloat; yx: gfloat; xy: gfloat; yy: gfloat; dx: gfloat; dy: gfloat); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_paint_push_transform' {$endif}; -procedure hb_paint_radial_gradient(funcs: Phb_paint_funcs_t; paint_data: Pgpointer; color_line: Phb_color_line_t; x0: gfloat; y0: gfloat; r0: gfloat; x1: gfloat; y1: gfloat; r1: gfloat); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_paint_radial_gradient' {$endif}; -procedure hb_paint_sweep_gradient(funcs: Phb_paint_funcs_t; paint_data: Pgpointer; color_line: Phb_color_line_t; x0: gfloat; y0: gfloat; start_angle: gfloat; end_angle: gfloat); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_paint_sweep_gradient' {$endif}; -procedure hb_segment_properties_overlay(p: Phb_segment_properties_t; src: Phb_segment_properties_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_segment_properties_overlay' {$endif}; -procedure hb_set_add(set_: Phb_set_t; codepoint: Thb_codepoint_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_set_add' {$endif}; -procedure hb_set_add_range(set_: Phb_set_t; first: Thb_codepoint_t; last: Thb_codepoint_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_set_add_range' {$endif}; -procedure hb_set_add_sorted_array(set_: Phb_set_t; sorted_codepoints: Phb_codepoint_t; num_codepoints: guint); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_set_add_sorted_array' {$endif}; -procedure hb_set_clear(set_: Phb_set_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_set_clear' {$endif}; -procedure hb_set_del(set_: Phb_set_t; codepoint: Thb_codepoint_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_set_del' {$endif}; -procedure hb_set_del_range(set_: Phb_set_t; first: Thb_codepoint_t; last: Thb_codepoint_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_set_del_range' {$endif}; -procedure hb_set_destroy(set_: Phb_set_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_set_destroy' {$endif}; -procedure hb_set_intersect(set_: Phb_set_t; other: Phb_set_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_set_intersect' {$endif}; -procedure hb_set_invert(set_: Phb_set_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_set_invert' {$endif}; -procedure hb_set_set(set_: Phb_set_t; other: Phb_set_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_set_set' {$endif}; -procedure hb_set_subtract(set_: Phb_set_t; other: Phb_set_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_set_subtract' {$endif}; -procedure hb_set_symmetric_difference(set_: Phb_set_t; other: Phb_set_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_set_symmetric_difference' {$endif}; -procedure hb_set_union(set_: Phb_set_t; other: Phb_set_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_set_union' {$endif}; -procedure hb_shape(font: Phb_font_t; buffer: Phb_buffer_t; features: Phb_feature_t; num_features: guint); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_shape' {$endif}; -procedure hb_shape_plan_destroy(shape_plan: Phb_shape_plan_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_shape_plan_destroy' {$endif}; -procedure hb_tag_to_string(tag: Thb_tag_t; buf: Pgchar); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_tag_to_string' {$endif}; -procedure hb_unicode_funcs_destroy(ufuncs: Phb_unicode_funcs_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_unicode_funcs_destroy' {$endif}; -procedure hb_unicode_funcs_make_immutable(ufuncs: Phb_unicode_funcs_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_unicode_funcs_make_immutable' {$endif}; -procedure hb_unicode_funcs_set_combining_class_func(ufuncs: Phb_unicode_funcs_t; func: Thb_unicode_combining_class_func_t; user_data: Pgpointer; destroy_: Thb_destroy_func_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_unicode_funcs_set_combining_class_func' {$endif}; -procedure hb_unicode_funcs_set_compose_func(ufuncs: Phb_unicode_funcs_t; func: Thb_unicode_compose_func_t; user_data: Pgpointer; destroy_: Thb_destroy_func_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_unicode_funcs_set_compose_func' {$endif}; -procedure hb_unicode_funcs_set_decompose_func(ufuncs: Phb_unicode_funcs_t; func: Thb_unicode_decompose_func_t; user_data: Pgpointer; destroy_: Thb_destroy_func_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_unicode_funcs_set_decompose_func' {$endif}; -procedure hb_unicode_funcs_set_general_category_func(ufuncs: Phb_unicode_funcs_t; func: Thb_unicode_general_category_func_t; user_data: Pgpointer; destroy_: Thb_destroy_func_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_unicode_funcs_set_general_category_func' {$endif}; -procedure hb_unicode_funcs_set_mirroring_func(ufuncs: Phb_unicode_funcs_t; func: Thb_unicode_mirroring_func_t; user_data: Pgpointer; destroy_: Thb_destroy_func_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_unicode_funcs_set_mirroring_func' {$endif}; -procedure hb_unicode_funcs_set_script_func(ufuncs: Phb_unicode_funcs_t; func: Thb_unicode_script_func_t; user_data: Pgpointer; destroy_: Thb_destroy_func_t); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_unicode_funcs_set_script_func' {$endif}; -procedure hb_variation_to_string(variation: Phb_variation_t; buf: Pgchar; size: Pguint); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_variation_to_string' {$endif}; -procedure hb_version(major: Pguint; minor: Pguint; micro: Pguint); cdecl; external {$ifdef MsWindows} LazHarfBuzz0_library name 'hb_version' {$endif}; +function hb_aat_layout_feature_type_get_name_id(face: Phb_face_t; feature_type: Thb_aat_layout_feature_type_t): Thb_ot_name_id_t; cdecl; external; +function hb_aat_layout_feature_type_get_selector_infos(face: Phb_face_t; feature_type: Thb_aat_layout_feature_type_t; start_offset: guint; selector_count: Pguint; selectors: Phb_aat_layout_feature_selector_info_t; default_index: Pguint): guint; cdecl; external; +function hb_aat_layout_get_feature_types(face: Phb_face_t; start_offset: guint; feature_count: Pguint; features: Phb_aat_layout_feature_type_t): guint; cdecl; external; +function hb_aat_layout_has_positioning(face: Phb_face_t): Thb_bool_t; cdecl; external; +function hb_aat_layout_has_substitution(face: Phb_face_t): Thb_bool_t; cdecl; external; +function hb_aat_layout_has_tracking(face: Phb_face_t): Thb_bool_t; cdecl; external; +function hb_blob_copy_writable_or_fail(blob: Phb_blob_t): Phb_blob_t; cdecl; external; +function hb_blob_create(data: Pgchar; length: guint; mode: Thb_memory_mode_t; user_data: Pgpointer; destroy_: Thb_destroy_func_t): Phb_blob_t; cdecl; external; +function hb_blob_create_from_file(file_name: Pgchar): Phb_blob_t; cdecl; external; +function hb_blob_create_from_file_or_fail(file_name: Pgchar): Phb_blob_t; cdecl; external; +function hb_blob_create_or_fail(data: Pgchar; length: guint; mode: Thb_memory_mode_t; user_data: Pgpointer; destroy_: Thb_destroy_func_t): Phb_blob_t; cdecl; external; +function hb_blob_create_sub_blob(parent: Phb_blob_t; offset: guint; length: guint): Phb_blob_t; cdecl; external; +function hb_blob_get_data(blob: Phb_blob_t; length: Pguint): Pgchar; cdecl; external; +function hb_blob_get_data_writable(blob: Phb_blob_t; length: Pguint): Pgchar; cdecl; external; +function hb_blob_get_empty: Phb_blob_t; cdecl; external; +function hb_blob_get_length(blob: Phb_blob_t): guint; cdecl; external; +function hb_blob_get_user_data(blob: Phb_blob_t; key: Phb_user_data_key_t): Pgpointer; cdecl; external; +function hb_blob_is_immutable(blob: Phb_blob_t): Thb_bool_t; cdecl; external; +function hb_blob_reference(blob: Phb_blob_t): Phb_blob_t; cdecl; external; +function hb_blob_set_user_data(blob: Phb_blob_t; key: Phb_user_data_key_t; data: Pgpointer; destroy_: Thb_destroy_func_t; replace: Thb_bool_t): Thb_bool_t; cdecl; external; +function hb_buffer_allocation_successful(buffer: Phb_buffer_t): Thb_bool_t; cdecl; external; +function hb_buffer_create: Phb_buffer_t; cdecl; external; +function hb_buffer_create_similar(src: Phb_buffer_t): Phb_buffer_t; cdecl; external; +function hb_buffer_deserialize_glyphs(buffer: Phb_buffer_t; buf: Pgchar; buf_len: gint; end_ptr: PPgchar; font: Phb_font_t; format: Thb_buffer_serialize_format_t): Thb_bool_t; cdecl; external; +function hb_buffer_deserialize_unicode(buffer: Phb_buffer_t; buf: Pgchar; buf_len: gint; end_ptr: PPgchar; format: Thb_buffer_serialize_format_t): Thb_bool_t; cdecl; external; +function hb_buffer_diff(buffer: Phb_buffer_t; reference: Phb_buffer_t; dottedcircle_glyph: Thb_codepoint_t; position_fuzz: guint): Thb_buffer_diff_flags_t; cdecl; external; +function hb_buffer_get_cluster_level(buffer: Phb_buffer_t): Thb_buffer_cluster_level_t; cdecl; external; +function hb_buffer_get_content_type(buffer: Phb_buffer_t): Thb_buffer_content_type_t; cdecl; external; +function hb_buffer_get_direction(buffer: Phb_buffer_t): Thb_direction_t; cdecl; external; +function hb_buffer_get_empty: Phb_buffer_t; cdecl; external; +function hb_buffer_get_flags(buffer: Phb_buffer_t): Thb_buffer_flags_t; cdecl; external; +function hb_buffer_get_glyph_infos(buffer: Phb_buffer_t; length: Pguint): Phb_glyph_info_t; cdecl; external; +function hb_buffer_get_glyph_positions(buffer: Phb_buffer_t; length: Pguint): Phb_glyph_position_t; cdecl; external; +function hb_buffer_get_invisible_glyph(buffer: Phb_buffer_t): Thb_codepoint_t; cdecl; external; +function hb_buffer_get_language(buffer: Phb_buffer_t): Thb_language_t; cdecl; external; +function hb_buffer_get_length(buffer: Phb_buffer_t): guint; cdecl; external; +function hb_buffer_get_not_found_glyph(buffer: Phb_buffer_t): Thb_codepoint_t; cdecl; external; +function hb_buffer_get_replacement_codepoint(buffer: Phb_buffer_t): Thb_codepoint_t; cdecl; external; +function hb_buffer_get_script(buffer: Phb_buffer_t): Thb_script_t; cdecl; external; +function hb_buffer_get_unicode_funcs(buffer: Phb_buffer_t): Phb_unicode_funcs_t; cdecl; external; +function hb_buffer_get_user_data(buffer: Phb_buffer_t; key: Phb_user_data_key_t): Pgpointer; cdecl; external; +function hb_buffer_has_positions(buffer: Phb_buffer_t): Thb_bool_t; cdecl; external; +function hb_buffer_pre_allocate(buffer: Phb_buffer_t; size: guint): Thb_bool_t; cdecl; external; +function hb_buffer_reference(buffer: Phb_buffer_t): Phb_buffer_t; cdecl; external; +function hb_buffer_serialize(buffer: Phb_buffer_t; start: guint; end_: guint; buf: Pgchar; buf_size: Pguint; buf_consumed: Pguint; font: Phb_font_t; format: Thb_buffer_serialize_format_t; flags: Thb_buffer_serialize_flags_t): guint; cdecl; external; +function hb_buffer_serialize_format_from_string(str: Pgchar; len: gint): Thb_buffer_serialize_format_t; cdecl; external; +function hb_buffer_serialize_format_to_string(format: Thb_buffer_serialize_format_t): Pgchar; cdecl; external; +function hb_buffer_serialize_glyphs(buffer: Phb_buffer_t; start: guint; end_: guint; buf: Pgchar; buf_size: Pguint; buf_consumed: Pguint; font: Phb_font_t; format: Thb_buffer_serialize_format_t; flags: Thb_buffer_serialize_flags_t): guint; cdecl; external; +function hb_buffer_serialize_list_formats: PPgchar; cdecl; external; +function hb_buffer_serialize_unicode(buffer: Phb_buffer_t; start: guint; end_: guint; buf: Pgchar; buf_size: Pguint; buf_consumed: Pguint; format: Thb_buffer_serialize_format_t; flags: Thb_buffer_serialize_flags_t): guint; cdecl; external; +function hb_buffer_set_length(buffer: Phb_buffer_t; length: guint): Thb_bool_t; cdecl; external; +function hb_buffer_set_user_data(buffer: Phb_buffer_t; key: Phb_user_data_key_t; data: Pgpointer; destroy_: Thb_destroy_func_t; replace: Thb_bool_t): Thb_bool_t; cdecl; external; +function hb_color_get_alpha(color: Thb_color_t): guint8; cdecl; external; +function hb_color_get_blue(color: Thb_color_t): guint8; cdecl; external; +function hb_color_get_green(color: Thb_color_t): guint8; cdecl; external; +function hb_color_get_red(color: Thb_color_t): guint8; cdecl; external; +function hb_direction_from_string(str: Pgchar; len: gint): Thb_direction_t; cdecl; external; +function hb_direction_to_string(direction: Thb_direction_t): Pgchar; cdecl; external; +function hb_draw_funcs_create: Phb_draw_funcs_t; cdecl; external; +function hb_draw_funcs_is_immutable(dfuncs: Phb_draw_funcs_t): Thb_bool_t; cdecl; external; +function hb_draw_funcs_reference(dfuncs: Phb_draw_funcs_t): Phb_draw_funcs_t; cdecl; external; +function hb_face_builder_add_table(face: Phb_face_t; tag: Thb_tag_t; blob: Phb_blob_t): Thb_bool_t; cdecl; external; +function hb_face_builder_create: Phb_face_t; cdecl; external; +function hb_face_count(blob: Phb_blob_t): guint; cdecl; external; +function hb_face_create(blob: Phb_blob_t; index: guint): Phb_face_t; cdecl; external; +function hb_face_create_for_tables(reference_table_func: Thb_reference_table_func_t; user_data: Pgpointer; destroy_: Thb_destroy_func_t): Phb_face_t; cdecl; external; +function hb_face_get_empty: Phb_face_t; cdecl; external; +function hb_face_get_glyph_count(face: Phb_face_t): guint; cdecl; external; +function hb_face_get_index(face: Phb_face_t): guint; cdecl; external; +function hb_face_get_table_tags(face: Phb_face_t; start_offset: guint; table_count: Pguint; table_tags: Phb_tag_t): guint; cdecl; external; +function hb_face_get_upem(face: Phb_face_t): guint; cdecl; external; +function hb_face_get_user_data(face: Phb_face_t; key: Phb_user_data_key_t): Pgpointer; cdecl; external; +function hb_face_is_immutable(face: Phb_face_t): Thb_bool_t; cdecl; external; +function hb_face_reference(face: Phb_face_t): Phb_face_t; cdecl; external; +function hb_face_reference_blob(face: Phb_face_t): Phb_blob_t; cdecl; external; +function hb_face_reference_table(face: Phb_face_t; tag: Thb_tag_t): Phb_blob_t; cdecl; external; +function hb_face_set_user_data(face: Phb_face_t; key: Phb_user_data_key_t; data: Pgpointer; destroy_: Thb_destroy_func_t; replace: Thb_bool_t): Thb_bool_t; cdecl; external; +function hb_feature_from_string(str: Pgchar; len: gint; feature: Phb_feature_t): Thb_bool_t; cdecl; external; +function hb_font_create(face: Phb_face_t): Phb_font_t; cdecl; external; +function hb_font_create_sub_font(parent: Phb_font_t): Phb_font_t; cdecl; external; +function hb_font_funcs_create: Phb_font_funcs_t; cdecl; external; +function hb_font_funcs_get_empty: Phb_font_funcs_t; cdecl; external; +function hb_font_funcs_get_user_data(ffuncs: Phb_font_funcs_t; key: Phb_user_data_key_t): Pgpointer; cdecl; external; +function hb_font_funcs_is_immutable(ffuncs: Phb_font_funcs_t): Thb_bool_t; cdecl; external; +function hb_font_funcs_reference(ffuncs: Phb_font_funcs_t): Phb_font_funcs_t; cdecl; external; +function hb_font_funcs_set_user_data(ffuncs: Phb_font_funcs_t; key: Phb_user_data_key_t; data: Pgpointer; destroy_: Thb_destroy_func_t; replace: Thb_bool_t): Thb_bool_t; cdecl; external; +function hb_font_get_empty: Phb_font_t; cdecl; external; +function hb_font_get_face(font: Phb_font_t): Phb_face_t; cdecl; external; +function hb_font_get_glyph(font: Phb_font_t; unicode: Thb_codepoint_t; variation_selector: Thb_codepoint_t; glyph: Phb_codepoint_t): Thb_bool_t; cdecl; external; +function hb_font_get_glyph_contour_point(font: Phb_font_t; glyph: Thb_codepoint_t; point_index: guint; x: Phb_position_t; y: Phb_position_t): Thb_bool_t; cdecl; external; +function hb_font_get_glyph_contour_point_for_origin(font: Phb_font_t; glyph: Thb_codepoint_t; point_index: guint; direction: Thb_direction_t; x: Phb_position_t; y: Phb_position_t): Thb_bool_t; cdecl; external; +function hb_font_get_glyph_extents(font: Phb_font_t; glyph: Thb_codepoint_t; extents: Phb_glyph_extents_t): Thb_bool_t; cdecl; external; +function hb_font_get_glyph_extents_for_origin(font: Phb_font_t; glyph: Thb_codepoint_t; direction: Thb_direction_t; extents: Phb_glyph_extents_t): Thb_bool_t; cdecl; external; +function hb_font_get_glyph_from_name(font: Phb_font_t; name: Pgchar; len: gint; glyph: Phb_codepoint_t): Thb_bool_t; cdecl; external; +function hb_font_get_glyph_h_advance(font: Phb_font_t; glyph: Thb_codepoint_t): Thb_position_t; cdecl; external; +function hb_font_get_glyph_h_kerning(font: Phb_font_t; left_glyph: Thb_codepoint_t; right_glyph: Thb_codepoint_t): Thb_position_t; cdecl; external; +function hb_font_get_glyph_h_origin(font: Phb_font_t; glyph: Thb_codepoint_t; x: Phb_position_t; y: Phb_position_t): Thb_bool_t; cdecl; external; +function hb_font_get_glyph_name(font: Phb_font_t; glyph: Thb_codepoint_t; name: Pgchar; size: Pguint): Thb_bool_t; cdecl; external; +function hb_font_get_glyph_v_advance(font: Phb_font_t; glyph: Thb_codepoint_t): Thb_position_t; cdecl; external; +function hb_font_get_glyph_v_origin(font: Phb_font_t; glyph: Thb_codepoint_t; x: Phb_position_t; y: Phb_position_t): Thb_bool_t; cdecl; external; +function hb_font_get_h_extents(font: Phb_font_t; extents: Phb_font_extents_t): Thb_bool_t; cdecl; external; +function hb_font_get_nominal_glyph(font: Phb_font_t; unicode: Thb_codepoint_t; glyph: Phb_codepoint_t): Thb_bool_t; cdecl; external; +function hb_font_get_nominal_glyphs(font: Phb_font_t; count: guint; first_unicode: Phb_codepoint_t; unicode_stride: guint; first_glyph: Phb_codepoint_t; glyph_stride: guint): guint; cdecl; external; +function hb_font_get_parent(font: Phb_font_t): Phb_font_t; cdecl; external; +function hb_font_get_ptem(font: Phb_font_t): gfloat; cdecl; external; +function hb_font_get_serial(font: Phb_font_t): guint; cdecl; external; +function hb_font_get_synthetic_slant(font: Phb_font_t): gfloat; cdecl; external; +function hb_font_get_user_data(font: Phb_font_t; key: Phb_user_data_key_t): Pgpointer; cdecl; external; +function hb_font_get_v_extents(font: Phb_font_t; extents: Phb_font_extents_t): Thb_bool_t; cdecl; external; +function hb_font_get_var_coords_design(font: Phb_font_t; length: Pguint): Pgfloat; cdecl; external; +function hb_font_get_var_coords_normalized(font: Phb_font_t; length: Pguint): Pgint; cdecl; external; +function hb_font_get_variation_glyph(font: Phb_font_t; unicode: Thb_codepoint_t; variation_selector: Thb_codepoint_t; glyph: Phb_codepoint_t): Thb_bool_t; cdecl; external; +function hb_font_glyph_from_string(font: Phb_font_t; s: Pgchar; len: gint; glyph: Phb_codepoint_t): Thb_bool_t; cdecl; external; +function hb_font_is_immutable(font: Phb_font_t): Thb_bool_t; cdecl; external; +function hb_font_reference(font: Phb_font_t): Phb_font_t; cdecl; external; +function hb_font_set_user_data(font: Phb_font_t; key: Phb_user_data_key_t; data: Pgpointer; destroy_: Thb_destroy_func_t; replace: Thb_bool_t): Thb_bool_t; cdecl; external; +function hb_ft_face_create(ft_face: TFT_Face; destroy_: Thb_destroy_func_t): Phb_face_t; cdecl; external; +function hb_ft_face_create_cached(ft_face: TFT_Face): Phb_face_t; cdecl; external; +function hb_ft_face_create_referenced(ft_face: TFT_Face): Phb_face_t; cdecl; external; +function hb_ft_font_create(ft_face: TFT_Face; destroy_: Thb_destroy_func_t): Phb_font_t; cdecl; external; +function hb_ft_font_create_referenced(ft_face: TFT_Face): Phb_font_t; cdecl; external; +function hb_ft_font_get_face(font: Phb_font_t): TFT_Face; cdecl; external; +function hb_ft_font_get_load_flags(font: Phb_font_t): gint; cdecl; external; +function hb_ft_font_lock_face(font: Phb_font_t): TFT_Face; cdecl; external; +function hb_ft_hb_font_changed(font: Phb_font_t): Thb_bool_t; cdecl; external; +function hb_glib_blob_create(gbytes: PGBytes): Phb_blob_t; cdecl; external; +function hb_glib_get_unicode_funcs: Phb_unicode_funcs_t; cdecl; external; +function hb_glib_script_from_script(script: Thb_script_t): TGUnicodeScript; cdecl; external; +function hb_glib_script_to_script(script: TGUnicodeScript): Thb_script_t; cdecl; external; +function hb_glyph_info_get_glyph_flags(info: Phb_glyph_info_t): Thb_glyph_flags_t; cdecl; external; +function hb_gobject_blob_get_type: TGType; cdecl; external; +function hb_gobject_buffer_get_type: TGType; cdecl; external; +function hb_gobject_draw_funcs_get_type: TGType; cdecl; external; +function hb_gobject_face_get_type: TGType; cdecl; external; +function hb_gobject_feature_get_type: TGType; cdecl; external; +function hb_gobject_font_funcs_get_type: TGType; cdecl; external; +function hb_gobject_font_get_type: TGType; cdecl; external; +function hb_gobject_glyph_info_get_type: TGType; cdecl; external; +function hb_gobject_glyph_position_get_type: TGType; cdecl; external; +function hb_gobject_map_get_type: TGType; cdecl; external; +function hb_gobject_ot_math_glyph_part_get_type: TGType; cdecl; external; +function hb_gobject_ot_math_glyph_variant_get_type: TGType; cdecl; external; +function hb_gobject_segment_properties_get_type: TGType; cdecl; external; +function hb_gobject_set_get_type: TGType; cdecl; external; +function hb_gobject_shape_plan_get_type: TGType; cdecl; external; +function hb_gobject_unicode_funcs_get_type: TGType; cdecl; external; +function hb_gobject_user_data_key_get_type: TGType; cdecl; external; +function hb_language_from_string(str: Pgchar; len: gint): Thb_language_t; cdecl; external; +function hb_language_get_default: Thb_language_t; cdecl; external; +function hb_language_matches(language: Thb_language_t; specific: Thb_language_t): Thb_bool_t; cdecl; external; +function hb_language_to_string(language: Thb_language_t): Pgchar; cdecl; external; +function hb_map_allocation_successful(map: Phb_map_t): Thb_bool_t; cdecl; external; +function hb_map_copy(map: Phb_map_t): Phb_map_t; cdecl; external; +function hb_map_create: Phb_map_t; cdecl; external; +function hb_map_get(map: Phb_map_t; key: Thb_codepoint_t): Thb_codepoint_t; cdecl; external; +function hb_map_get_empty: Phb_map_t; cdecl; external; +function hb_map_get_population(map: Phb_map_t): guint; cdecl; external; +function hb_map_get_user_data(map: Phb_map_t; key: Phb_user_data_key_t): Pgpointer; cdecl; external; +function hb_map_has(map: Phb_map_t; key: Thb_codepoint_t): Thb_bool_t; cdecl; external; +function hb_map_hash(map: Phb_map_t): guint; cdecl; external; +function hb_map_is_empty(map: Phb_map_t): Thb_bool_t; cdecl; external; +function hb_map_is_equal(map: Phb_map_t; other: Phb_map_t): Thb_bool_t; cdecl; external; +function hb_map_reference(map: Phb_map_t): Phb_map_t; cdecl; external; +function hb_map_set_user_data(map: Phb_map_t; key: Phb_user_data_key_t; data: Pgpointer; destroy_: Thb_destroy_func_t; replace: Thb_bool_t): Thb_bool_t; cdecl; external; +function hb_ot_color_glyph_get_layers(face: Phb_face_t; glyph: Thb_codepoint_t; start_offset: guint; layer_count: Pguint; layers: Phb_ot_color_layer_t): guint; cdecl; external; +function hb_ot_color_glyph_reference_png(font: Phb_font_t; glyph: Thb_codepoint_t): Phb_blob_t; cdecl; external; +function hb_ot_color_glyph_reference_svg(face: Phb_face_t; glyph: Thb_codepoint_t): Phb_blob_t; cdecl; external; +function hb_ot_color_has_layers(face: Phb_face_t): Thb_bool_t; cdecl; external; +function hb_ot_color_has_palettes(face: Phb_face_t): Thb_bool_t; cdecl; external; +function hb_ot_color_has_png(face: Phb_face_t): Thb_bool_t; cdecl; external; +function hb_ot_color_has_svg(face: Phb_face_t): Thb_bool_t; cdecl; external; +function hb_ot_color_palette_color_get_name_id(face: Phb_face_t; color_index: guint): Thb_ot_name_id_t; cdecl; external; +function hb_ot_color_palette_get_colors(face: Phb_face_t; palette_index: guint; start_offset: guint; color_count: Pguint; colors: Phb_color_t): guint; cdecl; external; +function hb_ot_color_palette_get_count(face: Phb_face_t): guint; cdecl; external; +function hb_ot_color_palette_get_flags(face: Phb_face_t; palette_index: guint): Thb_ot_color_palette_flags_t; cdecl; external; +function hb_ot_color_palette_get_name_id(face: Phb_face_t; palette_index: guint): Thb_ot_name_id_t; cdecl; external; +function hb_ot_layout_feature_get_characters(face: Phb_face_t; table_tag: Thb_tag_t; feature_index: guint; start_offset: guint; char_count: Pguint; characters: Phb_codepoint_t): guint; cdecl; external; +function hb_ot_layout_feature_get_lookups(face: Phb_face_t; table_tag: Thb_tag_t; feature_index: guint; start_offset: guint; lookup_count: Pguint; lookup_indexes: Pguint): guint; cdecl; external; +function hb_ot_layout_feature_get_name_ids(face: Phb_face_t; table_tag: Thb_tag_t; feature_index: guint; label_id: Phb_ot_name_id_t; tooltip_id: Phb_ot_name_id_t; sample_id: Phb_ot_name_id_t; num_named_parameters: Pguint; first_param_id: Phb_ot_name_id_t): Thb_bool_t; cdecl; external; +function hb_ot_layout_feature_with_variations_get_lookups(face: Phb_face_t; table_tag: Thb_tag_t; feature_index: guint; variations_index: guint; start_offset: guint; lookup_count: Pguint; lookup_indexes: Pguint): guint; cdecl; external; +function hb_ot_layout_get_attach_points(face: Phb_face_t; glyph: Thb_codepoint_t; start_offset: guint; point_count: Pguint; point_array: Pguint): guint; cdecl; external; +function hb_ot_layout_get_baseline(font: Phb_font_t; baseline_tag: Thb_ot_layout_baseline_tag_t; direction: Thb_direction_t; script_tag: Thb_tag_t; language_tag: Thb_tag_t; coord: Phb_position_t): Thb_bool_t; cdecl; external; +function hb_ot_layout_get_glyph_class(face: Phb_face_t; glyph: Thb_codepoint_t): Thb_ot_layout_glyph_class_t; cdecl; external; +function hb_ot_layout_get_horizontal_baseline_tag_for_script(script: Thb_script_t): Thb_ot_layout_baseline_tag_t; cdecl; external; +function hb_ot_layout_get_ligature_carets(font: Phb_font_t; direction: Thb_direction_t; glyph: Thb_codepoint_t; start_offset: guint; caret_count: Pguint; caret_array: Phb_position_t): guint; cdecl; external; +function hb_ot_layout_get_size_params(face: Phb_face_t; design_size: Pguint; subfamily_id: Pguint; subfamily_name_id: Phb_ot_name_id_t; range_start: Pguint; range_end: Pguint): Thb_bool_t; cdecl; external; +function hb_ot_layout_has_glyph_classes(face: Phb_face_t): Thb_bool_t; cdecl; external; +function hb_ot_layout_has_positioning(face: Phb_face_t): Thb_bool_t; cdecl; external; +function hb_ot_layout_has_substitution(face: Phb_face_t): Thb_bool_t; cdecl; external; +function hb_ot_layout_language_find_feature(face: Phb_face_t; table_tag: Thb_tag_t; script_index: guint; language_index: guint; feature_tag: Thb_tag_t; feature_index: Pguint): Thb_bool_t; cdecl; external; +function hb_ot_layout_language_get_feature_indexes(face: Phb_face_t; table_tag: Thb_tag_t; script_index: guint; language_index: guint; start_offset: guint; feature_count: Pguint; feature_indexes: Pguint): guint; cdecl; external; +function hb_ot_layout_language_get_feature_tags(face: Phb_face_t; table_tag: Thb_tag_t; script_index: guint; language_index: guint; start_offset: guint; feature_count: Pguint; feature_tags: Phb_tag_t): guint; cdecl; external; +function hb_ot_layout_language_get_required_feature(face: Phb_face_t; table_tag: Thb_tag_t; script_index: guint; language_index: guint; feature_index: Pguint; feature_tag: Phb_tag_t): Thb_bool_t; cdecl; external; +function hb_ot_layout_language_get_required_feature_index(face: Phb_face_t; table_tag: Thb_tag_t; script_index: guint; language_index: guint; feature_index: Pguint): Thb_bool_t; cdecl; external; +function hb_ot_layout_lookup_get_glyph_alternates(face: Phb_face_t; lookup_index: guint; glyph: Thb_codepoint_t; start_offset: guint; alternate_count: Pguint; alternate_glyphs: Phb_codepoint_t): guint; cdecl; external; +function hb_ot_layout_lookup_get_optical_bound(font: Phb_font_t; lookup_index: guint; direction: Thb_direction_t; glyph: Thb_codepoint_t): Thb_position_t; cdecl; external; +function hb_ot_layout_lookup_would_substitute(face: Phb_face_t; lookup_index: guint; glyphs: Phb_codepoint_t; glyphs_length: guint; zero_context: Thb_bool_t): Thb_bool_t; cdecl; external; +function hb_ot_layout_script_get_language_tags(face: Phb_face_t; table_tag: Thb_tag_t; script_index: guint; start_offset: guint; language_count: Pguint; language_tags: Phb_tag_t): guint; cdecl; external; +function hb_ot_layout_script_select_language(face: Phb_face_t; table_tag: Thb_tag_t; script_index: guint; language_count: guint; language_tags: Phb_tag_t; language_index: Pguint): Thb_bool_t; cdecl; external; +function hb_ot_layout_table_choose_script(face: Phb_face_t; table_tag: Thb_tag_t; script_tags: Phb_tag_t; script_index: Pguint; chosen_script: Phb_tag_t): Thb_bool_t; cdecl; external; +function hb_ot_layout_table_find_feature_variations(face: Phb_face_t; table_tag: Thb_tag_t; coords: Pgint; num_coords: guint; variations_index: Pguint): Thb_bool_t; cdecl; external; +function hb_ot_layout_table_find_script(face: Phb_face_t; table_tag: Thb_tag_t; script_tag: Thb_tag_t; script_index: Pguint): Thb_bool_t; cdecl; external; +function hb_ot_layout_table_get_feature_tags(face: Phb_face_t; table_tag: Thb_tag_t; start_offset: guint; feature_count: Pguint; feature_tags: Phb_tag_t): guint; cdecl; external; +function hb_ot_layout_table_get_lookup_count(face: Phb_face_t; table_tag: Thb_tag_t): guint; cdecl; external; +function hb_ot_layout_table_get_script_tags(face: Phb_face_t; table_tag: Thb_tag_t; start_offset: guint; script_count: Pguint; script_tags: Phb_tag_t): guint; cdecl; external; +function hb_ot_layout_table_select_script(face: Phb_face_t; table_tag: Thb_tag_t; script_count: guint; script_tags: Phb_tag_t; script_index: Pguint; chosen_script: Phb_tag_t): Thb_bool_t; cdecl; external; +function hb_ot_math_get_constant(font: Phb_font_t; constant: Thb_ot_math_constant_t): Thb_position_t; cdecl; external; +function hb_ot_math_get_glyph_assembly(font: Phb_font_t; glyph: Thb_codepoint_t; direction: Thb_direction_t; start_offset: guint; parts_count: Pguint; parts: Phb_ot_math_glyph_part_t; italics_correction: Phb_position_t): guint; cdecl; external; +function hb_ot_math_get_glyph_italics_correction(font: Phb_font_t; glyph: Thb_codepoint_t): Thb_position_t; cdecl; external; +function hb_ot_math_get_glyph_kerning(font: Phb_font_t; glyph: Thb_codepoint_t; kern: Thb_ot_math_kern_t; correction_height: Thb_position_t): Thb_position_t; cdecl; external; +function hb_ot_math_get_glyph_kernings(font: Phb_font_t; glyph: Thb_codepoint_t; kern: Thb_ot_math_kern_t; start_offset: guint; entries_count: Pguint; kern_entries: Phb_ot_math_kern_entry_t): guint; cdecl; external; +function hb_ot_math_get_glyph_top_accent_attachment(font: Phb_font_t; glyph: Thb_codepoint_t): Thb_position_t; cdecl; external; +function hb_ot_math_get_glyph_variants(font: Phb_font_t; glyph: Thb_codepoint_t; direction: Thb_direction_t; start_offset: guint; variants_count: Pguint; variants: Phb_ot_math_glyph_variant_t): guint; cdecl; external; +function hb_ot_math_get_min_connector_overlap(font: Phb_font_t; direction: Thb_direction_t): Thb_position_t; cdecl; external; +function hb_ot_math_has_data(face: Phb_face_t): Thb_bool_t; cdecl; external; +function hb_ot_math_is_glyph_extended_shape(face: Phb_face_t; glyph: Thb_codepoint_t): Thb_bool_t; cdecl; external; +function hb_ot_meta_get_entry_tags(face: Phb_face_t; start_offset: guint; entries_count: Pguint; entries: Phb_ot_meta_tag_t): guint; cdecl; external; +function hb_ot_meta_reference_entry(face: Phb_face_t; meta_tag: Thb_ot_meta_tag_t): Phb_blob_t; cdecl; external; +function hb_ot_metrics_get_position(font: Phb_font_t; metrics_tag: Thb_ot_metrics_tag_t; position: Phb_position_t): Thb_bool_t; cdecl; external; +function hb_ot_metrics_get_variation(font: Phb_font_t; metrics_tag: Thb_ot_metrics_tag_t): gfloat; cdecl; external; +function hb_ot_metrics_get_x_variation(font: Phb_font_t; metrics_tag: Thb_ot_metrics_tag_t): Thb_position_t; cdecl; external; +function hb_ot_metrics_get_y_variation(font: Phb_font_t; metrics_tag: Thb_ot_metrics_tag_t): Thb_position_t; cdecl; external; +function hb_ot_name_get_utf16(face: Phb_face_t; name_id: Thb_ot_name_id_t; language: Thb_language_t; text_size: Pguint; text: Pguint16): guint; cdecl; external; +function hb_ot_name_get_utf32(face: Phb_face_t; name_id: Thb_ot_name_id_t; language: Thb_language_t; text_size: Pguint; text: Pguint32): guint; cdecl; external; +function hb_ot_name_get_utf8(face: Phb_face_t; name_id: Thb_ot_name_id_t; language: Thb_language_t; text_size: Pguint; text: Pgchar): guint; cdecl; external; +function hb_ot_name_list_names(face: Phb_face_t; num_entries: Pguint): Phb_ot_name_entry_t; cdecl; external; +function hb_ot_tag_from_language(language: Thb_language_t): Thb_tag_t; cdecl; external; +function hb_ot_tag_to_language(tag: Thb_tag_t): Thb_language_t; cdecl; external; +function hb_ot_tag_to_script(tag: Thb_tag_t): Thb_script_t; cdecl; external; +function hb_ot_var_find_axis_info(face: Phb_face_t; axis_tag: Thb_tag_t; axis_info: Phb_ot_var_axis_info_t): Thb_bool_t; cdecl; external; +function hb_ot_var_get_axis_count(face: Phb_face_t): guint; cdecl; external; +function hb_ot_var_get_axis_infos(face: Phb_face_t; start_offset: guint; axes_count: Pguint; axes_array: Phb_ot_var_axis_info_t): guint; cdecl; external; +function hb_ot_var_get_named_instance_count(face: Phb_face_t): guint; cdecl; external; +function hb_ot_var_has_data(face: Phb_face_t): Thb_bool_t; cdecl; external; +function hb_ot_var_named_instance_get_design_coords(face: Phb_face_t; instance_index: guint; coords_length: Pguint; coords: Pgfloat): guint; cdecl; external; +function hb_ot_var_named_instance_get_postscript_name_id(face: Phb_face_t; instance_index: guint): Thb_ot_name_id_t; cdecl; external; +function hb_ot_var_named_instance_get_subfamily_name_id(face: Phb_face_t; instance_index: guint): Thb_ot_name_id_t; cdecl; external; +function hb_script_from_iso15924_tag(tag: Thb_tag_t): Thb_script_t; cdecl; external; +function hb_script_from_string(str: Pgchar; len: gint): Thb_script_t; cdecl; external; +function hb_script_get_horizontal_direction(script: Thb_script_t): Thb_direction_t; cdecl; external; +function hb_script_to_iso15924_tag(script: Thb_script_t): Thb_tag_t; cdecl; external; +function hb_segment_properties_equal(a: Phb_segment_properties_t; b: Phb_segment_properties_t): Thb_bool_t; cdecl; external; +function hb_segment_properties_hash(p: Phb_segment_properties_t): guint; cdecl; external; +function hb_set_allocation_successful(set_: Phb_set_t): Thb_bool_t; cdecl; external; +function hb_set_copy(set_: Phb_set_t): Phb_set_t; cdecl; external; +function hb_set_create: Phb_set_t; cdecl; external; +function hb_set_get_empty: Phb_set_t; cdecl; external; +function hb_set_get_max(set_: Phb_set_t): Thb_codepoint_t; cdecl; external; +function hb_set_get_min(set_: Phb_set_t): Thb_codepoint_t; cdecl; external; +function hb_set_get_population(set_: Phb_set_t): guint; cdecl; external; +function hb_set_get_user_data(set_: Phb_set_t; key: Phb_user_data_key_t): Pgpointer; cdecl; external; +function hb_set_has(set_: Phb_set_t; codepoint: Thb_codepoint_t): Thb_bool_t; cdecl; external; +function hb_set_hash(set_: Phb_set_t): guint; cdecl; external; +function hb_set_is_empty(set_: Phb_set_t): Thb_bool_t; cdecl; external; +function hb_set_is_equal(set_: Phb_set_t; other: Phb_set_t): Thb_bool_t; cdecl; external; +function hb_set_is_subset(set_: Phb_set_t; larger_set: Phb_set_t): Thb_bool_t; cdecl; external; +function hb_set_next(set_: Phb_set_t; codepoint: Phb_codepoint_t): Thb_bool_t; cdecl; external; +function hb_set_next_many(set_: Phb_set_t; codepoint: Thb_codepoint_t; out_: Phb_codepoint_t; size: guint): guint; cdecl; external; +function hb_set_next_range(set_: Phb_set_t; first: Phb_codepoint_t; last: Phb_codepoint_t): Thb_bool_t; cdecl; external; +function hb_set_previous(set_: Phb_set_t; codepoint: Phb_codepoint_t): Thb_bool_t; cdecl; external; +function hb_set_previous_range(set_: Phb_set_t; first: Phb_codepoint_t; last: Phb_codepoint_t): Thb_bool_t; cdecl; external; +function hb_set_reference(set_: Phb_set_t): Phb_set_t; cdecl; external; +function hb_set_set_user_data(set_: Phb_set_t; key: Phb_user_data_key_t; data: Pgpointer; destroy_: Thb_destroy_func_t; replace: Thb_bool_t): Thb_bool_t; cdecl; external; +function hb_shape_full(font: Phb_font_t; buffer: Phb_buffer_t; features: Phb_feature_t; num_features: guint; shaper_list: PPgchar): Thb_bool_t; cdecl; external; +function hb_shape_list_shapers: PPgchar; cdecl; external; +function hb_shape_plan_create(face: Phb_face_t; props: Phb_segment_properties_t; user_features: Phb_feature_t; num_user_features: guint; shaper_list: PPgchar): Phb_shape_plan_t; cdecl; external; +function hb_shape_plan_create2(face: Phb_face_t; props: Phb_segment_properties_t; user_features: Phb_feature_t; num_user_features: guint; coords: Pgint; num_coords: guint; shaper_list: PPgchar): Phb_shape_plan_t; cdecl; external; +function hb_shape_plan_create_cached(face: Phb_face_t; props: Phb_segment_properties_t; user_features: Phb_feature_t; num_user_features: guint; shaper_list: PPgchar): Phb_shape_plan_t; cdecl; external; +function hb_shape_plan_create_cached2(face: Phb_face_t; props: Phb_segment_properties_t; user_features: Phb_feature_t; num_user_features: guint; coords: Pgint; num_coords: guint; shaper_list: PPgchar): Phb_shape_plan_t; cdecl; external; +function hb_shape_plan_execute(shape_plan: Phb_shape_plan_t; font: Phb_font_t; buffer: Phb_buffer_t; features: Phb_feature_t; num_features: guint): Thb_bool_t; cdecl; external; +function hb_shape_plan_get_empty: Phb_shape_plan_t; cdecl; external; +function hb_shape_plan_get_shaper(shape_plan: Phb_shape_plan_t): Pgchar; cdecl; external; +function hb_shape_plan_get_user_data(shape_plan: Phb_shape_plan_t; key: Phb_user_data_key_t): Pgpointer; cdecl; external; +function hb_shape_plan_reference(shape_plan: Phb_shape_plan_t): Phb_shape_plan_t; cdecl; external; +function hb_shape_plan_set_user_data(shape_plan: Phb_shape_plan_t; key: Phb_user_data_key_t; data: Pgpointer; destroy_: Thb_destroy_func_t; replace: Thb_bool_t): Thb_bool_t; cdecl; external; +function hb_style_get_value(font: Phb_font_t; style_tag: Thb_style_tag_t): gfloat; cdecl; external; +function hb_tag_from_string(str: Pgchar; len: gint): Thb_tag_t; cdecl; external; +function hb_unicode_combining_class(ufuncs: Phb_unicode_funcs_t; unicode: Thb_codepoint_t): Thb_unicode_combining_class_t; cdecl; external; +function hb_unicode_compose(ufuncs: Phb_unicode_funcs_t; a: Thb_codepoint_t; b: Thb_codepoint_t; ab: Phb_codepoint_t): Thb_bool_t; cdecl; external; +function hb_unicode_decompose(ufuncs: Phb_unicode_funcs_t; ab: Thb_codepoint_t; a: Phb_codepoint_t; b: Phb_codepoint_t): Thb_bool_t; cdecl; external; +function hb_unicode_funcs_create(parent: Phb_unicode_funcs_t): Phb_unicode_funcs_t; cdecl; external; +function hb_unicode_funcs_get_default: Phb_unicode_funcs_t; cdecl; external; +function hb_unicode_funcs_get_empty: Phb_unicode_funcs_t; cdecl; external; +function hb_unicode_funcs_get_parent(ufuncs: Phb_unicode_funcs_t): Phb_unicode_funcs_t; cdecl; external; +function hb_unicode_funcs_get_user_data(ufuncs: Phb_unicode_funcs_t; key: Phb_user_data_key_t): Pgpointer; cdecl; external; +function hb_unicode_funcs_is_immutable(ufuncs: Phb_unicode_funcs_t): Thb_bool_t; cdecl; external; +function hb_unicode_funcs_reference(ufuncs: Phb_unicode_funcs_t): Phb_unicode_funcs_t; cdecl; external; +function hb_unicode_funcs_set_user_data(ufuncs: Phb_unicode_funcs_t; key: Phb_user_data_key_t; data: Pgpointer; destroy_: Thb_destroy_func_t; replace: Thb_bool_t): Thb_bool_t; cdecl; external; +function hb_unicode_general_category(ufuncs: Phb_unicode_funcs_t; unicode: Thb_codepoint_t): Thb_unicode_general_category_t; cdecl; external; +function hb_unicode_mirroring(ufuncs: Phb_unicode_funcs_t; unicode: Thb_codepoint_t): Thb_codepoint_t; cdecl; external; +function hb_unicode_script(ufuncs: Phb_unicode_funcs_t; unicode: Thb_codepoint_t): Thb_script_t; cdecl; external; +function hb_variation_from_string(str: Pgchar; len: gint; variation: Phb_variation_t): Thb_bool_t; cdecl; external; +procedure hb_blob_destroy(blob: Phb_blob_t); cdecl; external; +procedure hb_blob_make_immutable(blob: Phb_blob_t); cdecl; external; +procedure hb_buffer_add(buffer: Phb_buffer_t; codepoint: Thb_codepoint_t; cluster: guint); cdecl; external; +procedure hb_buffer_add_codepoints(buffer: Phb_buffer_t; text: Phb_codepoint_t; text_length: gint; item_offset: guint; item_length: gint); cdecl; external; +procedure hb_buffer_add_latin1(buffer: Phb_buffer_t; text: Pguint8; text_length: gint; item_offset: guint; item_length: gint); cdecl; external; +procedure hb_buffer_add_utf16(buffer: Phb_buffer_t; text: Pguint16; text_length: gint; item_offset: guint; item_length: gint); cdecl; external; +procedure hb_buffer_add_utf32(buffer: Phb_buffer_t; text: Pguint32; text_length: gint; item_offset: guint; item_length: gint); cdecl; external; +procedure hb_buffer_add_utf8(buffer: Phb_buffer_t; text: Pgchar; text_length: gint; item_offset: guint; item_length: gint); cdecl; external; +procedure hb_buffer_append(buffer: Phb_buffer_t; source: Phb_buffer_t; start: guint; end_: guint); cdecl; external; +procedure hb_buffer_clear_contents(buffer: Phb_buffer_t); cdecl; external; +procedure hb_buffer_destroy(buffer: Phb_buffer_t); cdecl; external; +procedure hb_buffer_get_segment_properties(buffer: Phb_buffer_t; props: Phb_segment_properties_t); cdecl; external; +procedure hb_buffer_guess_segment_properties(buffer: Phb_buffer_t); cdecl; external; +procedure hb_buffer_normalize_glyphs(buffer: Phb_buffer_t); cdecl; external; +procedure hb_buffer_reset(buffer: Phb_buffer_t); cdecl; external; +procedure hb_buffer_reverse(buffer: Phb_buffer_t); cdecl; external; +procedure hb_buffer_reverse_clusters(buffer: Phb_buffer_t); cdecl; external; +procedure hb_buffer_reverse_range(buffer: Phb_buffer_t; start: guint; end_: guint); cdecl; external; +procedure hb_buffer_set_cluster_level(buffer: Phb_buffer_t; cluster_level: Thb_buffer_cluster_level_t); cdecl; external; +procedure hb_buffer_set_content_type(buffer: Phb_buffer_t; content_type: Thb_buffer_content_type_t); cdecl; external; +procedure hb_buffer_set_direction(buffer: Phb_buffer_t; direction: Thb_direction_t); cdecl; external; +procedure hb_buffer_set_flags(buffer: Phb_buffer_t; flags: Thb_buffer_flags_t); cdecl; external; +procedure hb_buffer_set_invisible_glyph(buffer: Phb_buffer_t; invisible: Thb_codepoint_t); cdecl; external; +procedure hb_buffer_set_language(buffer: Phb_buffer_t; language: Thb_language_t); cdecl; external; +procedure hb_buffer_set_message_func(buffer: Phb_buffer_t; func: Thb_buffer_message_func_t; user_data: Pgpointer; destroy_: Thb_destroy_func_t); cdecl; external; +procedure hb_buffer_set_not_found_glyph(buffer: Phb_buffer_t; not_found: Thb_codepoint_t); cdecl; external; +procedure hb_buffer_set_replacement_codepoint(buffer: Phb_buffer_t; replacement: Thb_codepoint_t); cdecl; external; +procedure hb_buffer_set_script(buffer: Phb_buffer_t; script: Thb_script_t); cdecl; external; +procedure hb_buffer_set_segment_properties(buffer: Phb_buffer_t; props: Phb_segment_properties_t); cdecl; external; +procedure hb_buffer_set_unicode_funcs(buffer: Phb_buffer_t; unicode_funcs: Phb_unicode_funcs_t); cdecl; external; +procedure hb_draw_close_path(dfuncs: Phb_draw_funcs_t; draw_data: Pgpointer; st: Phb_draw_state_t); cdecl; external; +procedure hb_draw_cubic_to(dfuncs: Phb_draw_funcs_t; draw_data: Pgpointer; st: Phb_draw_state_t; control1_x: gfloat; control1_y: gfloat; control2_x: gfloat; control2_y: gfloat; to_x: gfloat; to_y: gfloat); cdecl; external; +procedure hb_draw_funcs_destroy(dfuncs: Phb_draw_funcs_t); cdecl; external; +procedure hb_draw_funcs_make_immutable(dfuncs: Phb_draw_funcs_t); cdecl; external; +procedure hb_draw_funcs_set_close_path_func(dfuncs: Phb_draw_funcs_t; func: Thb_draw_close_path_func_t; user_data: Pgpointer; destroy_: Thb_destroy_func_t); cdecl; external; +procedure hb_draw_funcs_set_cubic_to_func(dfuncs: Phb_draw_funcs_t; func: Thb_draw_cubic_to_func_t; user_data: Pgpointer; destroy_: Thb_destroy_func_t); cdecl; external; +procedure hb_draw_funcs_set_line_to_func(dfuncs: Phb_draw_funcs_t; func: Thb_draw_line_to_func_t; user_data: Pgpointer; destroy_: Thb_destroy_func_t); cdecl; external; +procedure hb_draw_funcs_set_move_to_func(dfuncs: Phb_draw_funcs_t; func: Thb_draw_move_to_func_t; user_data: Pgpointer; destroy_: Thb_destroy_func_t); cdecl; external; +procedure hb_draw_funcs_set_quadratic_to_func(dfuncs: Phb_draw_funcs_t; func: Thb_draw_quadratic_to_func_t; user_data: Pgpointer; destroy_: Thb_destroy_func_t); cdecl; external; +procedure hb_draw_line_to(dfuncs: Phb_draw_funcs_t; draw_data: Pgpointer; st: Phb_draw_state_t; to_x: gfloat; to_y: gfloat); cdecl; external; +procedure hb_draw_move_to(dfuncs: Phb_draw_funcs_t; draw_data: Pgpointer; st: Phb_draw_state_t; to_x: gfloat; to_y: gfloat); cdecl; external; +procedure hb_draw_quadratic_to(dfuncs: Phb_draw_funcs_t; draw_data: Pgpointer; st: Phb_draw_state_t; control_x: gfloat; control_y: gfloat; to_x: gfloat; to_y: gfloat); cdecl; external; +procedure hb_face_builder_sort_tables(face: Phb_face_t; tags: Phb_tag_t); cdecl; external; +procedure hb_face_collect_unicodes(face: Phb_face_t; out_: Phb_set_t); cdecl; external; +procedure hb_face_collect_variation_selectors(face: Phb_face_t; out_: Phb_set_t); cdecl; external; +procedure hb_face_collect_variation_unicodes(face: Phb_face_t; variation_selector: Thb_codepoint_t; out_: Phb_set_t); cdecl; external; +procedure hb_face_destroy(face: Phb_face_t); cdecl; external; +procedure hb_face_make_immutable(face: Phb_face_t); cdecl; external; +procedure hb_face_set_glyph_count(face: Phb_face_t; glyph_count: guint); cdecl; external; +procedure hb_face_set_index(face: Phb_face_t; index: guint); cdecl; external; +procedure hb_face_set_upem(face: Phb_face_t; upem: guint); cdecl; external; +procedure hb_feature_to_string(feature: Phb_feature_t; buf: Pgchar; size: Pguint); cdecl; external; +procedure hb_font_add_glyph_origin_for_direction(font: Phb_font_t; glyph: Thb_codepoint_t; direction: Thb_direction_t; x: Phb_position_t; y: Phb_position_t); cdecl; external; +procedure hb_font_changed(font: Phb_font_t); cdecl; external; +procedure hb_font_destroy(font: Phb_font_t); cdecl; external; +procedure hb_font_funcs_destroy(ffuncs: Phb_font_funcs_t); cdecl; external; +procedure hb_font_funcs_make_immutable(ffuncs: Phb_font_funcs_t); cdecl; external; +procedure hb_font_funcs_set_font_h_extents_func(ffuncs: Phb_font_funcs_t; func: Thb_font_get_font_h_extents_func_t; user_data: Pgpointer; destroy_: Thb_destroy_func_t); cdecl; external; +procedure hb_font_funcs_set_font_v_extents_func(ffuncs: Phb_font_funcs_t; func: Thb_font_get_font_v_extents_func_t; user_data: Pgpointer; destroy_: Thb_destroy_func_t); cdecl; external; +procedure hb_font_funcs_set_glyph_contour_point_func(ffuncs: Phb_font_funcs_t; func: Thb_font_get_glyph_contour_point_func_t; user_data: Pgpointer; destroy_: Thb_destroy_func_t); cdecl; external; +procedure hb_font_funcs_set_glyph_extents_func(ffuncs: Phb_font_funcs_t; func: Thb_font_get_glyph_extents_func_t; user_data: Pgpointer; destroy_: Thb_destroy_func_t); cdecl; external; +procedure hb_font_funcs_set_glyph_from_name_func(ffuncs: Phb_font_funcs_t; func: Thb_font_get_glyph_from_name_func_t; user_data: Pgpointer; destroy_: Thb_destroy_func_t); cdecl; external; +procedure hb_font_funcs_set_glyph_h_advance_func(ffuncs: Phb_font_funcs_t; func: Thb_font_get_glyph_h_advance_func_t; user_data: Pgpointer; destroy_: Thb_destroy_func_t); cdecl; external; +procedure hb_font_funcs_set_glyph_h_advances_func(ffuncs: Phb_font_funcs_t; func: Thb_font_get_glyph_h_advances_func_t; user_data: Pgpointer; destroy_: Thb_destroy_func_t); cdecl; external; +procedure hb_font_funcs_set_glyph_h_kerning_func(ffuncs: Phb_font_funcs_t; func: Thb_font_get_glyph_h_kerning_func_t; user_data: Pgpointer; destroy_: Thb_destroy_func_t); cdecl; external; +procedure hb_font_funcs_set_glyph_h_origin_func(ffuncs: Phb_font_funcs_t; func: Thb_font_get_glyph_h_origin_func_t; user_data: Pgpointer; destroy_: Thb_destroy_func_t); cdecl; external; +procedure hb_font_funcs_set_glyph_name_func(ffuncs: Phb_font_funcs_t; func: Thb_font_get_glyph_name_func_t; user_data: Pgpointer; destroy_: Thb_destroy_func_t); cdecl; external; +procedure hb_font_funcs_set_glyph_shape_func(ffuncs: Phb_font_funcs_t; func: Thb_font_get_glyph_shape_func_t; user_data: Pgpointer; destroy_: Thb_destroy_func_t); cdecl; external; +procedure hb_font_funcs_set_glyph_v_advance_func(ffuncs: Phb_font_funcs_t; func: Thb_font_get_glyph_v_advance_func_t; user_data: Pgpointer; destroy_: Thb_destroy_func_t); cdecl; external; +procedure hb_font_funcs_set_glyph_v_advances_func(ffuncs: Phb_font_funcs_t; func: Thb_font_get_glyph_v_advances_func_t; user_data: Pgpointer; destroy_: Thb_destroy_func_t); cdecl; external; +procedure hb_font_funcs_set_glyph_v_origin_func(ffuncs: Phb_font_funcs_t; func: Thb_font_get_glyph_v_origin_func_t; user_data: Pgpointer; destroy_: Thb_destroy_func_t); cdecl; external; +procedure hb_font_funcs_set_nominal_glyph_func(ffuncs: Phb_font_funcs_t; func: Thb_font_get_nominal_glyph_func_t; user_data: Pgpointer; destroy_: Thb_destroy_func_t); cdecl; external; +procedure hb_font_funcs_set_nominal_glyphs_func(ffuncs: Phb_font_funcs_t; func: Thb_font_get_nominal_glyphs_func_t; user_data: Pgpointer; destroy_: Thb_destroy_func_t); cdecl; external; +procedure hb_font_funcs_set_variation_glyph_func(ffuncs: Phb_font_funcs_t; func: Thb_font_get_variation_glyph_func_t; user_data: Pgpointer; destroy_: Thb_destroy_func_t); cdecl; external; +procedure hb_font_get_extents_for_direction(font: Phb_font_t; direction: Thb_direction_t; extents: Phb_font_extents_t); cdecl; external; +procedure hb_font_get_glyph_advance_for_direction(font: Phb_font_t; glyph: Thb_codepoint_t; direction: Thb_direction_t; x: Phb_position_t; y: Phb_position_t); cdecl; external; +procedure hb_font_get_glyph_advances_for_direction(font: Phb_font_t; direction: Thb_direction_t; count: guint; first_glyph: Phb_codepoint_t; glyph_stride: guint; first_advance: Phb_position_t; advance_stride: Pguint); cdecl; external; +procedure hb_font_get_glyph_h_advances(font: Phb_font_t; count: guint; first_glyph: Phb_codepoint_t; glyph_stride: guint; first_advance: Phb_position_t; advance_stride: guint); cdecl; external; +procedure hb_font_get_glyph_kerning_for_direction(font: Phb_font_t; first_glyph: Thb_codepoint_t; second_glyph: Thb_codepoint_t; direction: Thb_direction_t; x: Phb_position_t; y: Phb_position_t); cdecl; external; +procedure hb_font_get_glyph_origin_for_direction(font: Phb_font_t; glyph: Thb_codepoint_t; direction: Thb_direction_t; x: Phb_position_t; y: Phb_position_t); cdecl; external; +procedure hb_font_get_glyph_shape(font: Phb_font_t; glyph: Thb_codepoint_t; dfuncs: Phb_draw_funcs_t; draw_data: Pgpointer); cdecl; external; +procedure hb_font_get_glyph_v_advances(font: Phb_font_t; count: guint; first_glyph: Phb_codepoint_t; glyph_stride: guint; first_advance: Phb_position_t; advance_stride: Pguint); cdecl; external; +procedure hb_font_get_ppem(font: Phb_font_t; x_ppem: Pguint; y_ppem: Pguint); cdecl; external; +procedure hb_font_get_scale(font: Phb_font_t; x_scale: Pgint; y_scale: Pgint); cdecl; external; +procedure hb_font_glyph_to_string(font: Phb_font_t; glyph: Thb_codepoint_t; s: Pgchar; size: Pguint); cdecl; external; +procedure hb_font_make_immutable(font: Phb_font_t); cdecl; external; +procedure hb_font_set_face(font: Phb_font_t; face: Phb_face_t); cdecl; external; +procedure hb_font_set_funcs(font: Phb_font_t; klass: Phb_font_funcs_t; font_data: Pgpointer; destroy_: Thb_destroy_func_t); cdecl; external; +procedure hb_font_set_funcs_data(font: Phb_font_t; font_data: Pgpointer; destroy_: Thb_destroy_func_t); cdecl; external; +procedure hb_font_set_parent(font: Phb_font_t; parent: Phb_font_t); cdecl; external; +procedure hb_font_set_ppem(font: Phb_font_t; x_ppem: guint; y_ppem: guint); cdecl; external; +procedure hb_font_set_ptem(font: Phb_font_t; ptem: gfloat); cdecl; external; +procedure hb_font_set_scale(font: Phb_font_t; x_scale: gint; y_scale: gint); cdecl; external; +procedure hb_font_set_synthetic_slant(font: Phb_font_t; slant: gfloat); cdecl; external; +procedure hb_font_set_var_coords_design(font: Phb_font_t; coords: Pgfloat; coords_length: guint); cdecl; external; +procedure hb_font_set_var_coords_normalized(font: Phb_font_t; coords: Pgint; coords_length: guint); cdecl; external; +procedure hb_font_set_var_named_instance(font: Phb_font_t; instance_index: guint); cdecl; external; +procedure hb_font_set_variations(font: Phb_font_t; variations: Phb_variation_t; variations_length: guint); cdecl; external; +procedure hb_font_subtract_glyph_origin_for_direction(font: Phb_font_t; glyph: Thb_codepoint_t; direction: Thb_direction_t; x: Phb_position_t; y: Phb_position_t); cdecl; external; +procedure hb_ft_font_changed(font: Phb_font_t); cdecl; external; +procedure hb_ft_font_set_funcs(font: Phb_font_t); cdecl; external; +procedure hb_ft_font_set_load_flags(font: Phb_font_t; load_flags: gint); cdecl; external; +procedure hb_ft_font_unlock_face(font: Phb_font_t); cdecl; external; +procedure hb_map_clear(map: Phb_map_t); cdecl; external; +procedure hb_map_del(map: Phb_map_t; key: Thb_codepoint_t); cdecl; external; +procedure hb_map_destroy(map: Phb_map_t); cdecl; external; +procedure hb_map_set(map: Phb_map_t; key: Thb_codepoint_t; value: Thb_codepoint_t); cdecl; external; +procedure hb_ot_font_set_funcs(font: Phb_font_t); cdecl; external; +procedure hb_ot_layout_collect_features(face: Phb_face_t; table_tag: Thb_tag_t; scripts: Phb_tag_t; languages: Phb_tag_t; features: Phb_tag_t; feature_indexes: Phb_set_t); cdecl; external; +procedure hb_ot_layout_collect_lookups(face: Phb_face_t; table_tag: Thb_tag_t; scripts: Phb_tag_t; languages: Phb_tag_t; features: Phb_tag_t; lookup_indexes: Phb_set_t); cdecl; external; +procedure hb_ot_layout_get_baseline_with_fallback(font: Phb_font_t; baseline_tag: Thb_ot_layout_baseline_tag_t; direction: Thb_direction_t; script_tag: Thb_tag_t; language_tag: Thb_tag_t; coord: Phb_position_t); cdecl; external; +procedure hb_ot_layout_get_glyphs_in_class(face: Phb_face_t; klass: Thb_ot_layout_glyph_class_t; glyphs: Phb_set_t); cdecl; external; +procedure hb_ot_layout_lookup_collect_glyphs(face: Phb_face_t; table_tag: Thb_tag_t; lookup_index: guint; glyphs_before: Phb_set_t; glyphs_input: Phb_set_t; glyphs_after: Phb_set_t; glyphs_output: Phb_set_t); cdecl; external; +procedure hb_ot_layout_lookup_substitute_closure(face: Phb_face_t; lookup_index: guint; glyphs: Phb_set_t); cdecl; external; +procedure hb_ot_layout_lookups_substitute_closure(face: Phb_face_t; lookups: Phb_set_t; glyphs: Phb_set_t); cdecl; external; +procedure hb_ot_metrics_get_position_with_fallback(font: Phb_font_t; metrics_tag: Thb_ot_metrics_tag_t; position: Phb_position_t); cdecl; external; +procedure hb_ot_shape_glyphs_closure(font: Phb_font_t; buffer: Phb_buffer_t; features: Phb_feature_t; num_features: guint; glyphs: Phb_set_t); cdecl; external; +procedure hb_ot_shape_plan_collect_lookups(shape_plan: Phb_shape_plan_t; table_tag: Thb_tag_t; lookup_indexes: Phb_set_t); cdecl; external; +procedure hb_ot_tags_from_script(script: Thb_script_t; script_tag_1: Phb_tag_t; script_tag_2: Phb_tag_t); cdecl; external; +procedure hb_ot_tags_from_script_and_language(script: Thb_script_t; language: Thb_language_t; script_count: Pguint; script_tags: Phb_tag_t; language_count: Pguint; language_tags: Phb_tag_t); cdecl; external; +procedure hb_ot_tags_to_script_and_language(script_tag: Thb_tag_t; language_tag: Thb_tag_t; script: Phb_script_t; language: Phb_language_t); cdecl; external; +procedure hb_ot_var_normalize_coords(face: Phb_face_t; coords_length: guint; design_coords: Pgfloat; normalized_coords: Pgint); cdecl; external; +procedure hb_ot_var_normalize_variations(face: Phb_face_t; variations: Phb_variation_t; variations_length: guint; coords: Pgint; coords_length: Pguint); cdecl; external; +procedure hb_segment_properties_overlay(p: Phb_segment_properties_t; src: Phb_segment_properties_t); cdecl; external; +procedure hb_set_add(set_: Phb_set_t; codepoint: Thb_codepoint_t); cdecl; external; +procedure hb_set_add_range(set_: Phb_set_t; first: Thb_codepoint_t; last: Thb_codepoint_t); cdecl; external; +procedure hb_set_add_sorted_array(set_: Phb_set_t; sorted_codepoints: Phb_codepoint_t; num_codepoints: guint); cdecl; external; +procedure hb_set_clear(set_: Phb_set_t); cdecl; external; +procedure hb_set_del(set_: Phb_set_t; codepoint: Thb_codepoint_t); cdecl; external; +procedure hb_set_del_range(set_: Phb_set_t; first: Thb_codepoint_t; last: Thb_codepoint_t); cdecl; external; +procedure hb_set_destroy(set_: Phb_set_t); cdecl; external; +procedure hb_set_intersect(set_: Phb_set_t; other: Phb_set_t); cdecl; external; +procedure hb_set_invert(set_: Phb_set_t); cdecl; external; +procedure hb_set_set(set_: Phb_set_t; other: Phb_set_t); cdecl; external; +procedure hb_set_subtract(set_: Phb_set_t; other: Phb_set_t); cdecl; external; +procedure hb_set_symmetric_difference(set_: Phb_set_t; other: Phb_set_t); cdecl; external; +procedure hb_set_union(set_: Phb_set_t; other: Phb_set_t); cdecl; external; +procedure hb_shape(font: Phb_font_t; buffer: Phb_buffer_t; features: Phb_feature_t; num_features: guint); cdecl; external; +procedure hb_shape_plan_destroy(shape_plan: Phb_shape_plan_t); cdecl; external; +procedure hb_tag_to_string(tag: Thb_tag_t; buf: Pgchar); cdecl; external; +procedure hb_unicode_funcs_destroy(ufuncs: Phb_unicode_funcs_t); cdecl; external; +procedure hb_unicode_funcs_make_immutable(ufuncs: Phb_unicode_funcs_t); cdecl; external; +procedure hb_unicode_funcs_set_combining_class_func(ufuncs: Phb_unicode_funcs_t; func: Thb_unicode_combining_class_func_t; user_data: Pgpointer; destroy_: Thb_destroy_func_t); cdecl; external; +procedure hb_unicode_funcs_set_compose_func(ufuncs: Phb_unicode_funcs_t; func: Thb_unicode_compose_func_t; user_data: Pgpointer; destroy_: Thb_destroy_func_t); cdecl; external; +procedure hb_unicode_funcs_set_decompose_func(ufuncs: Phb_unicode_funcs_t; func: Thb_unicode_decompose_func_t; user_data: Pgpointer; destroy_: Thb_destroy_func_t); cdecl; external; +procedure hb_unicode_funcs_set_general_category_func(ufuncs: Phb_unicode_funcs_t; func: Thb_unicode_general_category_func_t; user_data: Pgpointer; destroy_: Thb_destroy_func_t); cdecl; external; +procedure hb_unicode_funcs_set_mirroring_func(ufuncs: Phb_unicode_funcs_t; func: Thb_unicode_mirroring_func_t; user_data: Pgpointer; destroy_: Thb_destroy_func_t); cdecl; external; +procedure hb_unicode_funcs_set_script_func(ufuncs: Phb_unicode_funcs_t; func: Thb_unicode_script_func_t; user_data: Pgpointer; destroy_: Thb_destroy_func_t); cdecl; external; +procedure hb_variation_to_string(variation: Phb_variation_t; buf: Pgchar; size: Pguint); cdecl; external; implementation function Thb_language_t._string: Pgchar; cdecl; begin @@ -2103,4 +1964,4 @@ begin LazHarfBuzz0.hb_variation_to_string(@self, buf, size); end; -end. \ No newline at end of file +end. diff --git a/lcl/interfaces/gtk3/gtk3bindings/lazpango1.pas b/lcl/interfaces/gtk3/gtk3bindings/lazpango1.pas index 06314ba3c8..5196cabda5 100644 --- a/lcl/interfaces/gtk3/gtk3bindings/lazpango1.pas +++ b/lcl/interfaces/gtk3/gtk3bindings/lazpango1.pas @@ -30,9 +30,9 @@ const PANGO_GLYPH_UNKNOWN_FLAG = 268435456; PANGO_SCALE = 1024; PANGO_VERSION_MAJOR = 1; - PANGO_VERSION_MICRO = 15; + PANGO_VERSION_MICRO = 12; PANGO_VERSION_MINOR = 50; - PANGO_VERSION_STRING_ = '1.50.15'; + PANGO_VERSION_STRING_ = '1.50.12'; type TPangoAlignment = ( TPangoAlignmentMinValue = -$7FFFFFFF, @@ -205,9 +205,6 @@ type PANGO_ATTR_FONT_SCALE = 37, TPangoAttrTypeMaxValue = $7FFFFFFF ); - -//TODO: This is hand written just to give the direction we need to go. -//TODO: We need to make git2pas generate similar code for bitfields. TPangoFontMaskIdx = ( TPangoFontMaskIdxMinValue = 0, PANGO_FONT_MASK_FAMILY = 0, @@ -218,13 +215,9 @@ type PANGO_FONT_MASK_SIZE = 5, PANGO_FONT_MASK_GRAVITY = 6, PANGO_FONT_MASK_VARIATIONS = 7, - TPangoFontMaskIdxMaxValue = 8 + TPangoFontMaskIdxMaxValue = 31 ); TPangoFontMask = Set of TPangoFontMaskIdx; -const - PANGO_FONT_MASK_ALL = [TPangoFontMaskIdxMinValue..TPangoFontMaskIdxMaxValue]; - -type TPangoGravity = ( TPangoGravityMinValue = -$7FFFFFFF, PANGO_GRAVITY_SOUTH = 0, @@ -357,19 +350,27 @@ type PANGO_FONT_SCALE_SMALL_CAPS = 3, TPangoFontScaleMaxValue = $7FFFFFFF ); - TPangoLayoutDeserializeFlags = ( - TPangoLayoutDeserializeFlagsMinValue = -$7FFFFFFF, - PANGO_LAYOUT_DESERIALIZE_DEFAULT = 0, - PANGO_LAYOUT_DESERIALIZE_CONTEXT = 1, - TPangoLayoutDeserializeFlagsMaxValue = $7FFFFFFF + TPangoLayoutDeserializeFlagsIdx = ( + TPangoLayoutDeserializeFlagsIdxMinValue = 0, + PANGO_LAYOUT_DESERIALIZE_CONTEXT = 0, + TPangoLayoutDeserializeFlagsIdxMaxValue = 31 ); - TPangoLayoutSerializeFlags = ( - TPangoLayoutSerializeFlagsMinValue = -$7FFFFFFF, - PANGO_LAYOUT_SERIALIZE_DEFAULT = 0, - PANGO_LAYOUT_SERIALIZE_CONTEXT = 1, - PANGO_LAYOUT_SERIALIZE_OUTPUT = 2, - TPangoLayoutSerializeFlagsMaxValue = $7FFFFFFF + TPangoLayoutDeserializeFlags = Set of TPangoLayoutDeserializeFlagsIdx; +const + PANGO_LAYOUT_DESERIALIZE_DEFAULT = []; {0 = $00000000} + +type + TPangoLayoutSerializeFlagsIdx = ( + TPangoLayoutSerializeFlagsIdxMinValue = 0, + PANGO_LAYOUT_SERIALIZE_CONTEXT = 0, + PANGO_LAYOUT_SERIALIZE_OUTPUT = 1, + TPangoLayoutSerializeFlagsIdxMaxValue = 31 ); + TPangoLayoutSerializeFlags = Set of TPangoLayoutSerializeFlagsIdx; +const + PANGO_LAYOUT_SERIALIZE_DEFAULT = []; {0 = $00000000} + +type TPangoWrapMode = ( TPangoWrapModeMinValue = -$7FFFFFFF, PANGO_WRAP_WORD = 0, @@ -419,20 +420,28 @@ type PANGO_UNDERLINE_ERROR_LINE = 7, TPangoUnderlineMaxValue = $7FFFFFFF ); - TPangoShapeFlags = ( - TPangoShapeFlagsMinValue = -$7FFFFFFF, - PANGO_SHAPE_NONE = 0, - PANGO_SHAPE_ROUND_POSITIONS = 1, - TPangoShapeFlagsMaxValue = $7FFFFFFF + TPangoShapeFlagsIdx = ( + TPangoShapeFlagsIdxMinValue = 0, + PANGO_SHAPE_ROUND_POSITIONS = 0, + TPangoShapeFlagsIdxMaxValue = 31 ); - TPangoShowFlags = ( - TPangoShowFlagsMinValue = -$7FFFFFFF, - PANGO_SHOW_NONE = 0, - PANGO_SHOW_SPACES = 1, - PANGO_SHOW_LINE_BREAKS = 2, - PANGO_SHOW_IGNORABLES = 4, - TPangoShowFlagsMaxValue = $7FFFFFFF + TPangoShapeFlags = Set of TPangoShapeFlagsIdx; +const + PANGO_SHAPE_NONE = []; {0 = $00000000} + +type + TPangoShowFlagsIdx = ( + TPangoShowFlagsIdxMinValue = 0, + PANGO_SHOW_SPACES = 0, + PANGO_SHOW_LINE_BREAKS = 1, + PANGO_SHOW_IGNORABLES = 2, + TPangoShowFlagsIdxMaxValue = 31 ); + TPangoShowFlags = Set of TPangoShowFlagsIdx; +const + PANGO_SHOW_NONE = []; {0 = $00000000} + +type TPangoTextTransform = ( TPangoTextTransformMinValue = -$7FFFFFFF, PANGO_TEXT_TRANSFORM_NONE = 0, @@ -1168,9 +1177,14 @@ type { TPangoGlyphVisAttr } PPPangoGlyphVisAttr = ^PPangoGlyphVisAttr; PPangoGlyphVisAttr = ^TPangoGlyphVisAttr; + TPangoGlyphVisAttrBitfield0 = bitpacked record + is_cluster_start: guint1 { changed from guint to accomodate 1 bitsize requirement }; + is_color: guint1 { changed from guint to accomodate 1 bitsize requirement }; + end; + TPangoGlyphVisAttr = record - is_cluster_start: guint; + Bitfield0 : TPangoGlyphVisAttrBitfield0; { auto generated type } end; @@ -1536,6 +1550,7 @@ type function next: gboolean; cdecl; inline; end; + { TPangoShapeFlags } PPPangoShapeFlags = ^PPangoShapeFlags; PPangoShapeFlags = ^TPangoShapeFlags; diff --git a/lcl/interfaces/gtk3/gtk3object.inc b/lcl/interfaces/gtk3/gtk3object.inc index c7d08acc4d..7001d9ec95 100644 --- a/lcl/interfaces/gtk3/gtk3object.inc +++ b/lcl/interfaces/gtk3/gtk3object.inc @@ -97,7 +97,7 @@ begin if not IsLibrary then begin AId := 'org.lcl.thread_' + dbgHex({%H-}PtrUInt(AGtkThread)); - FGtk3Application := TGtkApplication.new(PgChar(AId), G_APPLICATION_NON_UNIQUE); + FGtk3Application := TGtkApplication.new(PgChar(AId), [G_APPLICATION_NON_UNIQUE]); // FGtk3Application^.set_application_id(PgChar(AId)); FGtk3Application^.register(nil, nil); end; @@ -237,7 +237,7 @@ begin WakeMainThread := @PrepareSynchronize; assignpipe(threadsync_pipein, threadsync_pipeout); threadsync_giochannel := g_io_channel_unix_new(threadsync_pipein); - g_io_add_watch(threadsync_giochannel, G_IO_IN, @threadsync_iocallback, Self); + g_io_add_watch(threadsync_giochannel, [G_IO_IN], @threadsync_iocallback, Self); end; procedure TGtk3WidgetSet.ProcessChildSignal;