From c92860e142b15c8b87fb039471fc125e285f6fb1 Mon Sep 17 00:00:00 2001 From: nakst <> Date: Tue, 15 Sep 2020 23:22:19 +0100 Subject: [PATCH] update essence platform --- core/os/os_essence.odin | 2460 +-------------------------- core/runtime/procs_essence.odin | 18 + core/sys/es/api.odin | 2772 +++++++++++++++++++++++++++++++ examples/demo/demo.odin | 4 +- src/main.cpp | 2 +- 5 files changed, 2830 insertions(+), 2426 deletions(-) create mode 100644 core/runtime/procs_essence.odin create mode 100644 core/sys/es/api.odin diff --git a/core/os/os_essence.odin b/core/os/os_essence.odin index fffe5e431..8f01898bf 100644 --- a/core/os/os_essence.odin +++ b/core/os/os_essence.odin @@ -1,2438 +1,52 @@ -package os; -Data :: struct { _private : [4]rawptr, } -Generic :: rawptr; -Element :: struct { _private : u8, }; -Object :: rawptr; -LongDouble :: struct { value : [10]u8, }; -NodeType :: u64; -Error :: int; -Handle :: uint; -Response :: i32; -FileOffset :: u64; -ListViewIndex :: i32; -ThreadEntryFunction :: distinct #type proc (Generic); -ComparisonCallbackFunction :: distinct #type proc (rawptr, rawptr, Generic) -> i32; -SwapCallbackFunction :: distinct #type proc (rawptr, rawptr, Generic); -CRTComparisonCallback :: distinct #type proc (rawptr, rawptr) -> i32; -MessageCallbackFunction :: distinct #type proc (Object, ^Message, ^Response); -UICallbackFunction :: distinct #type proc (^Element, ^Message, ^Response); -Window :: struct { using element : Element, }; -Panel :: struct { using element : Element, }; -Scrollbar :: struct { using element : Element, }; -Button :: struct { using element : Element, }; -Textbox :: struct { using element : Element, }; -ListView :: struct { using element : Element, }; -NumericEntry :: struct { using element : Element, }; -Menu :: struct { using element : Element, }; -MenuCallbackFunction :: distinct #type proc (^Element, Generic); -INSTANCE_TYPE :: Instance; -SCANCODE_A :: (0x1C); -SCANCODE_B :: (0x32); -SCANCODE_C :: (0x21); -SCANCODE_D :: (0x23); -SCANCODE_E :: (0x24); -SCANCODE_F :: (0x2B); -SCANCODE_G :: (0x34); -SCANCODE_H :: (0x33); -SCANCODE_I :: (0x43); -SCANCODE_J :: (0x3B); -SCANCODE_K :: (0x42); -SCANCODE_L :: (0x4B); -SCANCODE_M :: (0x3A); -SCANCODE_N :: (0x31); -SCANCODE_O :: (0x44); -SCANCODE_P :: (0x4D); -SCANCODE_Q :: (0x15); -SCANCODE_R :: (0x2D); -SCANCODE_S :: (0x1B); -SCANCODE_T :: (0x2C); -SCANCODE_U :: (0x3C); -SCANCODE_V :: (0x2A); -SCANCODE_W :: (0x1D); -SCANCODE_X :: (0x22); -SCANCODE_Y :: (0x35); -SCANCODE_Z :: (0x1A); -SCANCODE_0 :: (0x45); -SCANCODE_1 :: (0x16); -SCANCODE_2 :: (0x1E); -SCANCODE_3 :: (0x26); -SCANCODE_4 :: (0x25); -SCANCODE_5 :: (0x2E); -SCANCODE_6 :: (0x36); -SCANCODE_7 :: (0x3D); -SCANCODE_8 :: (0x3E); -SCANCODE_9 :: (0x46); -SCANCODE_CAPS_LOCK :: (0x58); -SCANCODE_SCROLL_LOCK :: (0x7E); -SCANCODE_NUM_LOCK :: (0x77) ; -SCANCODE_LEFT_SHIFT :: (0x12); -SCANCODE_LEFT_CTRL :: (0x14); -SCANCODE_LEFT_ALT :: (0x11); -SCANCODE_LEFT_FLAG :: (0x11F); -SCANCODE_RIGHT_SHIFT :: (0x59); -SCANCODE_RIGHT_CTRL :: (0x114); -SCANCODE_RIGHT_ALT :: (0x111); -SCANCODE_PAUSE :: (0xE1); -SCANCODE_CONTEXT_MENU :: (0x127); -SCANCODE_BACKSPACE :: (0x66); -SCANCODE_ESCAPE :: (0x76); -SCANCODE_INSERT :: (0x170); -SCANCODE_HOME :: (0x16C); -SCANCODE_PAGE_UP :: (0x17D); -SCANCODE_DELETE :: (0x171); -SCANCODE_END :: (0x169); -SCANCODE_PAGE_DOWN :: (0x17A); -SCANCODE_UP_ARROW :: (0x175); -SCANCODE_LEFT_ARROW :: (0x16B); -SCANCODE_DOWN_ARROW :: (0x172); -SCANCODE_RIGHT_ARROW :: (0x174); -SCANCODE_SPACE :: (0x29); -SCANCODE_TAB :: (0x0D); -SCANCODE_ENTER :: (0x5A); -SCANCODE_SLASH :: (0x4A); -SCANCODE_BACKSLASH :: (0x5D); -SCANCODE_LEFT_BRACE :: (0x54); -SCANCODE_RIGHT_BRACE :: (0x5B); -SCANCODE_EQUALS :: (0x55); -SCANCODE_BACKTICK :: (0x0E); -SCANCODE_HYPHEN :: (0x4E); -SCANCODE_SEMICOLON :: (0x4C); -SCANCODE_QUOTE :: (0x52); -SCANCODE_COMMA :: (0x41); -SCANCODE_PERIOD :: (0x49); -SCANCODE_NUM_DIVIDE :: (0x14A); -SCANCODE_NUM_MULTIPLY :: (0x7C); -SCANCODE_NUM_SUBTRACT :: (0x7B); -SCANCODE_NUM_ADD :: (0x79); -SCANCODE_NUM_ENTER :: (0x15A); -SCANCODE_NUM_POINT :: (0x71); -SCANCODE_NUM_0 :: (0x70); -SCANCODE_NUM_1 :: (0x69); -SCANCODE_NUM_2 :: (0x72); -SCANCODE_NUM_3 :: (0x7A); -SCANCODE_NUM_4 :: (0x6B); -SCANCODE_NUM_5 :: (0x73); -SCANCODE_NUM_6 :: (0x74); -SCANCODE_NUM_7 :: (0x6C); -SCANCODE_NUM_8 :: (0x75); -SCANCODE_NUM_9 :: (0x7D); -SCANCODE_PRINT_SCREEN_1 :: (0x112) ; -SCANCODE_PRINT_SCREEN_2 :: (0x17C); -SCANCODE_F1 :: (0x05); -SCANCODE_F2 :: (0x06); -SCANCODE_F3 :: (0x04); -SCANCODE_F4 :: (0x0C); -SCANCODE_F5 :: (0x03); -SCANCODE_F6 :: (0x0B); -SCANCODE_F7 :: (0x83); -SCANCODE_F8 :: (0x0A); -SCANCODE_F9 :: (0x01); -SCANCODE_F10 :: (0x09); -SCANCODE_F11 :: (0x78); -SCANCODE_F12 :: (0x07); -SCANCODE_ACPI_POWER :: (0x137); -SCANCODE_ACPI_SLEEP :: (0x13F); -SCANCODE_ACPI_WAKE :: (0x15E); -SCANCODE_MM_NEXT :: (0x14D); -SCANCODE_MM_PREVIOUS :: (0x115); -SCANCODE_MM_STOP :: (0x13B); -SCANCODE_MM_PAUSE :: (0x134); -SCANCODE_MM_MUTE :: (0x123); -SCANCODE_MM_QUIETER :: (0x121); -SCANCODE_MM_LOUDER :: (0x132); -SCANCODE_MM_SELECT :: (0x150); -SCANCODE_MM_EMAIL :: (0x148); -SCANCODE_MM_CALC :: (0x12B); -SCANCODE_MM_FILES :: (0x140); -SCANCODE_WWW_SEARCH :: (0x110); -SCANCODE_WWW_HOME :: (0x13A); -SCANCODE_WWW_BACK :: (0x138); -SCANCODE_WWW_FORWARD :: (0x130); -SCANCODE_WWW_STOP :: (0x128); -SCANCODE_WWW_REFRESH :: (0x120); -SCANCODE_WWW_STARRED :: (0x118); -PROCESS_STATE_ALL_THREADS_TERMINATED :: (1); -PROCESS_STATE_TERMINATING :: (2); -PROCESS_STATE_CRASHED :: (4); -FLAGS_DEFAULT :: (0); -SUCCESS :: (-1); -ERROR_BUFFER_TOO_SMALL :: (-2); -ERROR_UNKNOWN_OPERATION_FAILURE :: (-7); -ERROR_NO_MESSAGES_AVAILABLE :: (-9); -ERROR_MESSAGE_QUEUE_FULL :: (-10); -ERROR_MESSAGE_NOT_HANDLED_BY_GUI :: (-13); -ERROR_PATH_NOT_WITHIN_MOUNTED_VOLUME :: (-14); -ERROR_PATH_NOT_TRAVERSABLE :: (-15); -ERROR_FILE_ALREADY_EXISTS :: (-19); -ERROR_FILE_DOES_NOT_EXIST :: (-20); -ERROR_DRIVE_ERROR_FILE_DAMAGED :: (-21) ; -ERROR_ACCESS_NOT_WITHIN_FILE_BOUNDS :: (-22) ; -ERROR_FILE_PERMISSION_NOT_GRANTED :: (-23); -ERROR_FILE_IN_EXCLUSIVE_USE :: (-24); -ERROR_FILE_CANNOT_GET_EXCLUSIVE_USE :: (-25); -ERROR_INCORRECT_NODE_TYPE :: (-26); -ERROR_EVENT_NOT_SET :: (-27); -ERROR_TIMEOUT_REACHED :: (-29); -ERROR_REQUEST_CLOSED_BEFORE_COMPLETE :: (-30); -ERROR_NO_CHARACTER_AT_COORDINATE :: (-31); -ERROR_FILE_ON_READ_ONLY_VOLUME :: (-32); -ERROR_USER_CANCELED_IO :: (-33); -ERROR_INVALID_DIMENSIONS :: (-34); -ERROR_DRIVE_CONTROLLER_REPORTED :: (-35); -ERROR_COULD_NOT_ISSUE_PACKET :: (-36); -ERROR_HANDLE_TABLE_FULL :: (-37); -ERROR_COULD_NOT_RESIZE_FILE :: (-38); -ERROR_DIRECTORY_NOT_EMPTY :: (-39); -ERROR_UNSUPPORTED_FILESYSTEM :: (-40); -ERROR_NODE_ALREADY_DELETED :: (-41); -ERROR_NODE_IS_ROOT :: (-42); -ERROR_VOLUME_MISMATCH :: (-43); -ERROR_TARGET_WITHIN_SOURCE :: (-44); -ERROR_TARGET_INVALID_TYPE :: (-45); -ERROR_NOTHING_TO_DRAW :: (-46); -ERROR_MALFORMED_NODE_PATH :: (-47); -ERROR_OUT_OF_CACHE_RESOURCES :: (-48); -ERROR_TARGET_IS_SOURCE :: (-49); -ERROR_INVALID_NAME :: (-50); -ERROR_CORRUPT_DATA :: (-51); -ERROR_INSUFFICIENT_RESOURCES :: (-52); -ERROR_UNSUPPORTED_FEATURE :: (-53); -ERROR_FILE_TOO_FRAGMENTED :: (-54); -ERROR_DRIVE_FULL :: (-55); -ERROR_COULD_NOT_RESOLVE_SYMBOL :: (-56); -ERROR_ALREADY_EMBEDDED :: (-57); -SYSTEM_CONSTANT_TIME_STAMP_UNITS_PER_MICROSECOND :: (0); -SYSTEM_CONSTANT_NO_FANCY_GRAPHICS :: (2); -SYSTEM_CONSTANT_REPORTED_PROBLEMS :: (3); -SYSTEM_CONSTANT_RIGHT_TO_LEFT :: (4); -INVALID_HANDLE :: ((Handle) (0)); -CURRENT_THREAD :: ((Handle) (0x10)); -CURRENT_PROCESS :: ((Handle) (0x11)); -SURFACE_UI_SHEET :: ((Handle) (0x20)); -SURFACE_WALLPAPER :: ((Handle) (0x21)); -DRAW_ALPHA_OVERWRITE :: (0x100); -DRAW_ALPHA_FULL :: (0x200) ; -WAIT_NO_TIMEOUT :: (-1); -MAX_WAIT_COUNT :: (16); -MAX_DIRECTORY_CHILD_NAME_LENGTH :: (256); -PROCESS_EXECUTABLE_NOT_LOADED :: 0; -PROCESS_EXECUTABLE_FAILED_TO_LOAD :: 1; -PROCESS_EXECUTABLE_LOADED :: 2; -SNAPSHOT_MAX_PROCESS_NAME_LENGTH :: (80); -SYSTEM_SNAPSHOT_PROCESSES :: (1); -SYSTEM_SNAPSHOT_DRIVES :: (2); -NOT_HANDLED :: (-1); -HANDLED :: (0); -REJECTED :: (-2); -SHARED_MEMORY_MAXIMUM_SIZE :: ( (1024) * 1024 * 1024 * 1024); -SHARED_MEMORY_NAME_MAX_LENGTH :: (32); -MAP_OBJECT_ALL :: (0); -DRAW_STRING_HALIGN_LEFT :: (1); -DRAW_STRING_HALIGN_RIGHT :: (2); -DRAW_STRING_HALIGN_CENTER :: (3); -DRAW_STRING_VALIGN_TOP :: (4); -DRAW_STRING_VALIGN_BOTTOM :: (8); -DRAW_STRING_VALIGN_CENTER :: (12); -DRAW_STRING_CLIP :: (0); -DRAW_STRING_WORD_WRAP :: (16); -DRAW_STRING_ELLIPSIS :: (32); -NODE_READ_NONE :: (0x0); -NODE_READ_BLOCK :: (0x1); -NODE_READ_ACCESS :: (0x2); -NODE_READ_EXCLUSIVE :: (0x3); -NODE_WRITE_NONE :: (0x00); -NODE_WRITE_BLOCK :: (0x10); -NODE_WRITE_ACCESS :: (0x20); -NODE_WRITE_EXCLUSIVE :: (0x30); -NODE_RESIZE_NONE :: (0x000); -NODE_RESIZE_BLOCK :: (0x100); -NODE_RESIZE_ACCESS :: (0x200); -NODE_RESIZE_EXCLUSIVE :: (0x300); -NODE_FAIL_IF_FOUND :: (0x1000); -NODE_FAIL_IF_NOT_FOUND :: (0x2000); -NODE_CREATE_DIRECTORIES :: (0x8000) ; -NODE_POSIX_NAMESPACE :: (0x10000) ; -DIRECTORY_CHILDREN_UNKNOWN :: ( (-1)); -MEMORY_OPEN_FAIL_IF_FOUND :: (0x1000); -MEMORY_OPEN_FAIL_IF_NOT_FOUND :: (0x2000); -MAP_OBJECT_READ_WRITE :: (0); -MAP_OBJECT_READ_ONLY :: (1); -MAP_OBJECT_COPY_ON_WRITE :: (2); -BOX_STYLE_OUTWARDS :: (0x01) ; -BOX_STYLE_INWARDS :: (0x02) ; -BOX_STYLE_NEUTRAL :: (0x03) ; -BOX_STYLE_FLAT :: (0x04) ; -BOX_STYLE_NONE :: (0x05) ; -BOX_STYLE_SELECTED :: (0x06) ; -BOX_STYLE_PUSHED :: (0x07) ; -BOX_STYLE_DOTTED :: (0x80); -BOX_COLOR_GRAY :: (0xC0C0C0); -BOX_COLOR_DARK_GRAY :: (0x808080); -BOX_COLOR_WHITE :: (0xFFFFFF); -BOX_COLOR_BLUE :: (0x000080); -BOX_COLOR_TRANSPARENT :: (0xFF00FF); -BOX_COLOR_BLACK :: (0x000000); -STRING_FORMAT_ENOUGH_SPACE :: ( (-1)); -POSIX_SYSCALL_GET_POSIX_FD_PATH :: (0x10000); -PERMISSION_ACCESS_SYSTEM_FILES :: (1 << 0); -PERMISSION_ACCESS_USER_FILES :: (1 << 1); -PERMISSION_PROCESS_CREATE :: (1 << 2); -PERMISSION_PROCESS_OPEN :: (1 << 3); -PERMISSION_SCREEN_MODIFY :: (1 << 4) ; -PERMISSION_SHUTDOWN :: (1 << 5); -PERMISSION_TAKE_SYSTEM_SNAPSHOT :: (1 << 6); -PERMISSION_WINDOW_OPEN :: (1 << 7); -PERMISSION_ALL :: ( (-1)); -PERMISSION_INHERIT :: ( (1 << 63)); -PANEL_STYLE_DEFAULT :: "Panel.Default"; -PANEL_STYLE_MENU_COLUMN :: "Panel.Menu.Column"; -PANEL_WRAP :: ( (0x0001) << 32); -PANEL_H_LEFT :: ( (0x0010) << 32); -PANEL_H_RIGHT :: ( (0x0020) << 32); -PANEL_H_CENTER :: ( (0x0040) << 32); -PANEL_H_JUSTIFY :: ( (0x0080) << 32); -PANEL_V_TOP :: ( (0x0100) << 32); -PANEL_V_BOTTOM :: ( (0x0200) << 32); -PANEL_V_CENTER :: ( (0x0400) << 32); -PANEL_V_JUSTIFY :: ( (0x0800) << 32); -PANEL_H_SCROLL :: ( (0x1000) << 32); -PANEL_V_SCROLL :: ( (0x2000) << 32); -CELL_H_PUSH :: ( (0x0001) << 16); -CELL_H_EXPAND :: ( (0x0002) << 16); -CELL_H_LEFT :: ( (0x0004) << 16); -CELL_H_RIGHT :: ( (0x0008) << 16); -CELL_H_SHRINK :: ( (0x0010) << 16); -CELL_V_PUSH :: ( (0x0100) << 16); -CELL_V_EXPAND :: ( (0x0200) << 16); -CELL_V_TOP :: ( (0x0400) << 16); -CELL_V_BOTTOM :: ( (0x0800) << 16); -CELL_V_SHRINK :: ( (0x1000) << 16); -CELL_NEW_BAND :: ( (0x8000) << 16); -CELL_HIDDEN :: ( (0xFFFF) << 16); -ELEMENT_DO_NOT_FREE_STYLE_OVERRIDE :: (1 << 0); -ELEMENT_RICH_TEXT :: (1 << 1); -ELEMENT_FOCUSABLE :: (1 << 2); -ELEMENT_Z_STACK :: (1 << 3) ; -ELEMENT_HIDDEN :: (1 << 4); -ELEMENT_USE_CHILD_AS_PARENT :: (1 << 5) ; -ELEMENT_DISABLED :: (1 << 6); -ELEMENT_WINDOW_COORDS_FOR_MOUSE :: (1 << 7) ; -TEXTBOX_MULTILINE :: (1 << 0); -TEXTBOX_BORDERED :: (1 << 1); -BUTTON_DEFAULT :: ( (1) << 32); -BUTTON_DANGEROUS :: ( (1) << 33); -BUTTON_MENU_ITEM :: ( (1) << 34); -BUTTON_NOT_FOCUSABLE :: ( (1) << 35); -BUTTON_TOOLBAR :: ( (1) << 36); -SCROLLBAR_VERTICAL :: ( (0) << 32); -SCROLLBAR_HORIZONTAL :: ( (1) << 32); -LIST_VIEW_INDEX_GROUP_HEADER :: (-1); -LIST_VIEW_ITEM_CONTENT_TEXT :: (1 << 0); -LIST_VIEW_ITEM_CONTENT_ICON :: (1 << 1); -LIST_VIEW_ITEM_CONTENT_INDENTATION :: (1 << 2); -LIST_VIEW_ITEM_STATE_SELECTED :: (1 << 0); -LIST_VIEW_ITEM_STATE_CHECKED :: (1 << 1); -LIST_VIEW_ITEM_STATE_HIDDEN :: (1 << 2); -LIST_VIEW_ITEM_STATE_EXPANDABLE :: (1 << 3); -LIST_VIEW_ITEM_STATE_CHECKABLE :: (1 << 4); -LIST_VIEW_ITEM_STATE_DROP_TARGET :: (1 << 5); -LIST_VIEW_ITEM_STATE_COLLAPSABLE :: (1 << 6); -LIST_VIEW_ITEM_STATE_PARTIAL_CHECK :: (1 << 7); -LIST_VIEW_ITEM_STATE_DRAG_SOURCE :: (1 << 8); -LIST_VIEW_ITEM_STATE_CUT :: (1 << 9); -LIST_VIEW_FIND_ITEM_FROM_Y_POSITION :: (0); -LIST_VIEW_FIND_ITEM_FROM_TEXT_PREFIX :: (1); -LIST_VIEW_FIND_ITEM_NON_HIDDEN :: (2); -LIST_VIEW_FIND_ITEM_PARENT :: (3); -LIST_VIEW_COLUMN_DEFAULT_WIDTH_PRIMARY :: (270); -LIST_VIEW_COLUMN_DEFAULT_WIDTH_SECONDARY :: (130); -LIST_VIEW_COLUMN_PRIMARY :: (1); -LIST_VIEW_COLUMN_RIGHT_ALIGNED :: (2); -LIST_VIEW_COLUMN_SORT_ASCENDING :: (8); -LIST_VIEW_COLUMN_SORT_DESCENDING :: (16); -LIST_VIEW_COLUMN_SORTABLE :: (32); -LIST_VIEW_SINGLE_SELECT :: ( (1) << 32) ; -LIST_VIEW_MULTI_SELECT :: ( (1) << 33) ; -LIST_VIEW_HAS_COLUMNS :: ( (1) << 34) ; -LIST_VIEW_HAS_GROUPS :: ( (1) << 35) ; -LIST_VIEW_FIXED_HEIGHT :: ( (1) << 36) ; -LIST_VIEW_VARIABLE_HEIGHT :: ( (1) << 37) ; -LIST_VIEW_TREE :: ( (1) << 38) ; -LIST_VIEW_TILED :: ( (1) << 39) ; -LIST_VIEW_BORDERED :: ( (1) << 41) ; -LIST_VIEW_DROP_TARGET_ORDERED :: ( (1) << 43) ; -LIST_VIEW_DROP_TARGET_UNORDERED :: ( (1) << 44) ; -LIST_VIEW_ROW_DIVIDERS :: ( (1) << 45) ; -LIST_VIEW_STATIC_GROUP_HEADERS :: ( (1) << 46) ; -LIST_VIEW_COLLAPSABLE_GROUPS :: ( (1) << 47) ; -LIST_VIEW_INTERNAL_SELECTION_STORAGE :: ( (1) << 48) ; -LIST_VIEW_HAND_CURSOR :: ( (1) << 49) ; -LIST_VIEW_NO_ITEM_BACKGROUNDS :: ( (1) << 50) ; -LIST_VIEW_RICH_TEXT :: ( (1) << 52) ; -LIST_VIEW_LABELS_BELOW :: ( (1) << 53) ; -LIST_VIEW_MAXIMUM_ITEMS :: (10 * 1000 * 1000); -LIST_VIEW_MAXIMUM_GROUPS :: (10 * 1000); -LIST_VIEW_TRANSITION_BACKWARDS :: (1); -LIST_VIEW_TRANSITION_DRAW_NEW_CONTENTS_ONCE :: (2) ; -MENU_AT_CURSOR :: (1 << 0); -StandardIcon :: enum { - ICON_ACTION_UNAVAILABLE_SYMBOLIC, - ICON_ADDRESS_BOOK_NEW, - ICON_ADDRESS_BOOK_NEW_SYMBOLIC, - ICON_ALIGN_HORIZONTAL_CENTER, - ICON_ALIGN_HORIZONTAL_CENTER_SYMBOLIC, - ICON_ALIGN_HORIZONTAL_LEFT, - ICON_ALIGN_HORIZONTAL_LEFT_SYMBOLIC, - ICON_ALIGN_HORIZONTAL_LEFT_TO_ANCHOR, - ICON_ALIGN_HORIZONTAL_LEFT_TO_ANCHOR_SYMBOLIC, - ICON_ALIGN_HORIZONTAL_RIGHT, - ICON_ALIGN_HORIZONTAL_RIGHT_SYMBOLIC, - ICON_ALIGN_HORIZONTAL_RIGHT_TO_ANCHOR, - ICON_ALIGN_HORIZONTAL_RIGHT_TO_ANCHOR_SYMBOLIC, - ICON_ALIGN_VERTICAL_BOTTOM, - ICON_ALIGN_VERTICAL_BOTTOM_SYMBOLIC, - ICON_ALIGN_VERTICAL_BOTTOM_TO_ANCHOR, - ICON_ALIGN_VERTICAL_BOTTOM_TO_ANCHOR_SYMBOLIC, - ICON_ALIGN_VERTICAL_CENTER, - ICON_ALIGN_VERTICAL_CENTER_SYMBOLIC, - ICON_ALIGN_VERTICAL_TOP, - ICON_ALIGN_VERTICAL_TOP_SYMBOLIC, - ICON_ALIGN_VERTICAL_TOP_TO_ANCHOR, - ICON_ALIGN_VERTICAL_TOP_TO_ANCHOR_SYMBOLIC, - ICON_APPLICATION_ADD_SYMBOLIC, - ICON_APPOINTMENT_NEW, - ICON_APPOINTMENT_NEW_SYMBOLIC, - ICON_APPOINTMENT_SYMBOLIC, - ICON_BOOKMARK_NEW, - ICON_BOOKMARK_NEW_SYMBOLIC, - ICON_CALL_START, - ICON_CALL_START_SYMBOLIC, - ICON_CALL_STOP, - ICON_CALL_STOP_SYMBOLIC, - ICON_COLOR_FILL, - ICON_COLOR_GRADIENT, - ICON_COLOR_GRADIENT_MESH, - ICON_COLOR_SELECT_SYMBOLIC, - ICON_CONTACT_NEW, - ICON_CONTACT_NEW_SYMBOLIC, - ICON_DISTRIBUTE_HORIZONTAL_CENTER, - ICON_DISTRIBUTE_HORIZONTAL_GAPS, - ICON_DISTRIBUTE_HORIZONTAL_LEFT, - ICON_DISTRIBUTE_HORIZONTAL_RIGHT, - ICON_DISTRIBUTE_VERTICAL_BOTTOM, - ICON_DISTRIBUTE_VERTICAL_CENTER, - ICON_DISTRIBUTE_VERTICAL_GAPS, - ICON_DISTRIBUTE_VERTICAL_TOP, - ICON_DOCUMENT_EDIT, - ICON_DOCUMENT_EDIT_SYMBOLIC, - ICON_DOCUMENT_EXPORT, - ICON_DOCUMENT_EXPORT_SYMBOLIC, - ICON_DOCUMENT_IMPORT, - ICON_DOCUMENT_IMPORT_SYMBOLIC, - ICON_DOCUMENT_NEW, - ICON_DOCUMENT_NEW_SYMBOLIC, - ICON_DOCUMENT_OPEN_RECENT, - ICON_DOCUMENT_OPEN_RECENT_SYMBOLIC, - ICON_DOCUMENT_OPEN_SYMBOLIC, - ICON_DOCUMENT_PAGE_SETUP, - ICON_DOCUMENT_PAGE_SETUP_SYMBOLIC, - ICON_DOCUMENT_PRINT_PREVIEW, - ICON_DOCUMENT_PRINT_PREVIEW_SYMBOLIC, - ICON_DOCUMENT_PRINT_SYMBOLIC, - ICON_DOCUMENT_PROPERTIES, - ICON_DOCUMENT_PROPERTIES_SYMBOLIC, - ICON_DOCUMENT_REVERT, - ICON_DOCUMENT_REVERT_SYMBOLIC, - ICON_DOCUMENT_SAVE_AS, - ICON_DOCUMENT_SAVE_AS_SYMBOLIC, - ICON_DOCUMENT_SAVE_SYMBOLIC, - ICON_DOCUMENT_SEND, - ICON_DOCUMENT_SEND_SYMBOLIC, - ICON_DRAW_CUBOID, - ICON_DRAW_ELLIPSE, - ICON_DRAW_ERASER, - ICON_DRAW_FREEHAND, - ICON_DRAW_PATH, - ICON_DRAW_POLYGON_STAR, - ICON_DRAW_RECTANGLE, - ICON_DRAW_SPIRAL, - ICON_DRAW_TEXT, - ICON_EDIT_CLEAR, - ICON_EDIT_CLEAR_ALL_SYMBOLIC, - ICON_EDIT_CLEAR_SYMBOLIC, - ICON_EDIT_COPY, - ICON_EDIT_COPY_SYMBOLIC, - ICON_EDIT_CUT, - ICON_EDIT_CUT_SYMBOLIC, - ICON_EDIT_DELETE_SYMBOLIC, - ICON_EDIT_FIND, - ICON_EDIT_FIND_REPLACE, - ICON_EDIT_FIND_REPLACE_SYMBOLIC, - ICON_EDIT_FIND_SYMBOLIC, - ICON_EDIT_FLAG, - ICON_EDIT_FLAG_SYMBOLIC, - ICON_EDIT_MARK, - ICON_EDIT_PASTE, - ICON_EDIT_PASTE_SYMBOLIC, - ICON_EDIT_REDO, - ICON_EDIT_REDO_SYMBOLIC, - ICON_EDIT_SELECT_ALL, - ICON_EDIT_SELECT_ALL_SYMBOLIC, - ICON_EDIT_SELECT_SYMBOLIC, - ICON_EDIT_UNDO, - ICON_EDIT_UNDO_ARCHIVE, - ICON_EDIT_UNDO_SYMBOLIC, - ICON_ERROR_CORRECT_SYMBOLIC, - ICON_EVENT_NEW, - ICON_FIND_LOCATION, - ICON_FIND_LOCATION_SYMBOLIC, - ICON_FOLDER_COPY, - ICON_FOLDER_MOVE, - ICON_FOLDER_NEW, - ICON_FOLDER_NEW_SYMBOLIC, - ICON_FONT_SELECT_SYMBOLIC, - ICON_FORMAT_INDENT_LESS, - ICON_FORMAT_INDENT_LESS_SYMBOLIC, - ICON_FORMAT_INDENT_MORE, - ICON_FORMAT_INDENT_MORE_SYMBOLIC, - ICON_FORMAT_JUSTIFY_CENTER, - ICON_FORMAT_JUSTIFY_CENTER_SYMBOLIC, - ICON_FORMAT_JUSTIFY_FILL, - ICON_FORMAT_JUSTIFY_FILL_SYMBOLIC, - ICON_FORMAT_JUSTIFY_LEFT, - ICON_FORMAT_JUSTIFY_LEFT_SYMBOLIC, - ICON_FORMAT_JUSTIFY_RIGHT, - ICON_FORMAT_JUSTIFY_RIGHT_SYMBOLIC, - ICON_FORMAT_TEXT_BOLD, - ICON_FORMAT_TEXT_BOLD_ES_SYMBOLIC, - ICON_FORMAT_TEXT_BOLD_FR_SYMBOLIC, - ICON_FORMAT_TEXT_BOLD_SYMBOLIC, - ICON_FORMAT_TEXT_CLEAR_FORMATTING_SYMBOLIC, - ICON_FORMAT_TEXT_DIRECTION_LTR_SYMBOLIC, - ICON_FORMAT_TEXT_HIGHLIGHT, - ICON_FORMAT_TEXT_ITALIC, - ICON_FORMAT_TEXT_ITALIC_ES_SYMBOLIC, - ICON_FORMAT_TEXT_ITALIC_SYMBOLIC, - ICON_FORMAT_TEXT_LARGER_SYMBOLIC, - ICON_FORMAT_TEXT_NONE, - ICON_FORMAT_TEXT_SMALLER_SYMBOLIC, - ICON_FORMAT_TEXT_STRIKETHROUGH, - ICON_FORMAT_TEXT_STRIKETHROUGH_FR_SYMBOLIC, - ICON_FORMAT_TEXT_STRIKETHROUGH_SYMBOLIC, - ICON_FORMAT_TEXT_UNDERLINE, - ICON_FORMAT_TEXT_UNDERLINE_FR_SYMBOLIC, - ICON_FORMAT_TEXT_UNDERLINE_SYMBOLIC, - ICON_GO_BOTTOM, - ICON_GO_BOTTOM_SYMBOLIC, - ICON_GO_DOWN, - ICON_GO_DOWN_SYMBOLIC, - ICON_GO_FIRST, - ICON_GO_FIRST_SYMBOLIC, - ICON_GO_HOME_SYMBOLIC, - ICON_GO_JUMP, - ICON_GO_JUMP_SYMBOLIC, - ICON_GO_LAST, - ICON_GO_LAST_SYMBOLIC, - ICON_GO_NEXT, - ICON_GO_NEXT_SYMBOLIC, - ICON_GO_PREVIOUS, - ICON_GO_PREVIOUS_SYMBOLIC, - ICON_GO_TOP, - ICON_GO_TOP_SYMBOLIC, - ICON_GO_UP, - ICON_GO_UP_SYMBOLIC, - ICON_HELP_ABOUT, - ICON_HELP_ABOUT_SYMBOLIC, - ICON_HELP_CONTENTS, - ICON_HELP_CONTENTS_SYMBOLIC, - ICON_HELP_INFO_SYMBOLIC, - ICON_IMAGE_ADJUST, - ICON_IMAGE_AUTO_ADJUST, - ICON_IMAGE_CROP, - ICON_IMAGE_CROP_SYMBOLIC, - ICON_IMAGE_RED_EYE, - ICON_IMAGE_RED_EYE_SYMBOLIC, - ICON_INSERT_IMAGE, - ICON_INSERT_IMAGE_SYMBOLIC, - ICON_INSERT_LINK, - ICON_INSERT_LINK_SYMBOLIC, - ICON_INSERT_OBJECT, - ICON_INSERT_OBJECT_SYMBOLIC, - ICON_INSERT_TEXT_SYMBOLIC, - ICON_LIST_ADD, - ICON_LIST_ADD_SYMBOLIC, - ICON_LIST_REMOVE, - ICON_LIST_REMOVE_SYMBOLIC, - ICON_MAIL_ARCHIVE, - ICON_MAIL_FORWARD, - ICON_MAIL_FORWARD_SYMBOLIC, - ICON_MAIL_MARK_IMPORTANT, - ICON_MAIL_MARK_IMPORTANT_SYMBOLIC, - ICON_MAIL_MARK_JUNK, - ICON_MAIL_MARK_JUNK_SYMBOLIC, - ICON_MAIL_MARK_NOTJUNK, - ICON_MAIL_MARK_NOTJUNK_SYMBOLIC, - ICON_MAIL_MESSAGE_NEW, - ICON_MAIL_MESSAGE_NEW_SYMBOLIC, - ICON_MAIL_MOVE, - ICON_MAIL_MOVE_SYMBOLIC, - ICON_MAIL_REPLY_ALL, - ICON_MAIL_REPLY_ALL_SYMBOLIC, - ICON_MAIL_REPLY_SENDER, - ICON_MAIL_REPLY_SENDER_SYMBOLIC, - ICON_MAIL_SEND, - ICON_MAIL_SEND_RECEIVE_SYMBOLIC, - ICON_MAIL_SEND_SYMBOLIC, - ICON_MARK_LOCATION_SYMBOLIC, - ICON_MEDIA_EJECT, - ICON_MEDIA_EJECT_SYMBOLIC, - ICON_MEDIA_EQ_SYMBOLIC, - ICON_MEDIA_PLAYBACK_PAUSE, - ICON_MEDIA_PLAYBACK_PAUSE_SYMBOLIC, - ICON_MEDIA_PLAYBACK_START, - ICON_MEDIA_PLAYBACK_START_SYMBOLIC, - ICON_MEDIA_PLAYBACK_STOP, - ICON_MEDIA_PLAYBACK_STOP_SYMBOLIC, - ICON_MEDIA_RECORD, - ICON_MEDIA_RECORD_SYMBOLIC, - ICON_MEDIA_SEEK_BACKWARD, - ICON_MEDIA_SEEK_BACKWARD_SYMBOLIC, - ICON_MEDIA_SEEK_FORWARD, - ICON_MEDIA_SEEK_FORWARD_SYMBOLIC, - ICON_MEDIA_SKIP_BACKWARD, - ICON_MEDIA_SKIP_FORWARD, - ICON_MEDIA_VIEW_SUBTITLES_SYMBOLIC, - ICON_NODE_ADD, - ICON_NODE_ALIGN_HORIZONTAL, - ICON_NODE_ALIGN_VERTICAL, - ICON_NODE_BREAK, - ICON_NODE_CUSP, - ICON_NODE_DELETE, - ICON_NODE_DELETE_SEGMENT, - ICON_NODE_DISTRIBUTE_HORIZONTAL, - ICON_NODE_DISTRIBUTE_VERTICAL, - ICON_NODE_INSERT, - ICON_NODE_JOIN, - ICON_NODE_JOIN_SEGMENT, - ICON_NODE_SMOOTH, - ICON_NODE_SYMMETRIC, - ICON_OBJECT_FLIP_HORIZONTAL, - ICON_OBJECT_FLIP_HORIZONTAL_SYMBOLIC, - ICON_OBJECT_FLIP_VERTICAL, - ICON_OBJECT_FLIP_VERTICAL_SYMBOLIC, - ICON_OBJECT_GROUP, - ICON_OBJECT_GROUP_SYMBOLIC, - ICON_OBJECT_INVERSE, - ICON_OBJECT_INVERSE_SYMBOLIC, - ICON_OBJECT_MERGE, - ICON_OBJECT_ROTATE_LEFT, - ICON_OBJECT_ROTATE_LEFT_SYMBOLIC, - ICON_OBJECT_ROTATE_RIGHT, - ICON_OBJECT_ROTATE_RIGHT_SYMBOLIC, - ICON_OBJECT_SELECT_SYMBOLIC, - ICON_OBJECT_STRAIGHTEN, - ICON_OBJECT_TO_PATH, - ICON_OBJECT_UNGROUP, - ICON_OBJECT_UNGROUP_SYMBOLIC, - ICON_OPEN_MENU, - ICON_OPEN_MENU_SYMBOLIC, - ICON_PAN_DOWN_SYMBOLIC, - ICON_PAN_END_SYMBOLIC, - ICON_PAN_START_SYMBOLIC, - ICON_PAN_UP_SYMBOLIC, - ICON_PANE_HIDE_SYMBOLIC, - ICON_PANE_SHOW_SYMBOLIC, - ICON_PATH_BREAK_APART, - ICON_PATH_BREAK_APART_SYMBOLIC, - ICON_PATH_COMBINE, - ICON_PATH_COMBINE_SYMBOLIC, - ICON_PATH_DIFFERENCE, - ICON_PATH_DIFFERENCE_SYMBOLIC, - ICON_PATH_DIVISION, - ICON_PATH_DIVISION_SYMBOLIC, - ICON_PATH_EXCLUSION, - ICON_PATH_EXCLUSION_SYMBOLIC, - ICON_PATH_INTERSECTION, - ICON_PATH_INTERSECTION_SYMBOLIC, - ICON_PATH_UNION, - ICON_PATH_UNION_SYMBOLIC, - ICON_PROCESS_STOP, - ICON_PROCESS_STOP_SYMBOLIC, - ICON_SEGMENT_CURVE, - ICON_SEGMENT_LINE, - ICON_SELECTION_ADD, - ICON_SELECTION_BOTTOM, - ICON_SELECTION_BOTTOM_SYMBOLIC, - ICON_SELECTION_CHECKED, - ICON_SELECTION_END_SYMBOLIC, - ICON_SELECTION_LOWER, - ICON_SELECTION_LOWER_SYMBOLIC, - ICON_SELECTION_RAISE, - ICON_SELECTION_RAISE_SYMBOLIC, - ICON_SELECTION_REMOVE, - ICON_SELECTION_START_SYMBOLIC, - ICON_SELECTION_TOP, - ICON_SELECTION_TOP_SYMBOLIC, - ICON_SEND_TO, - ICON_SEND_TO_SYMBOLIC, - ICON_STAR_NEW_SYMBOLIC, - ICON_STROKE_TO_PATH, - ICON_SYSTEM_LOCK_SCREEN, - ICON_SYSTEM_LOCK_SCREEN_SYMBOLIC, - ICON_SYSTEM_LOG_OUT, - ICON_SYSTEM_REBOOT, - ICON_SYSTEM_RUN, - ICON_SYSTEM_RUN_SYMBOLIC, - ICON_SYSTEM_SHUTDOWN, - ICON_SYSTEM_SHUTDOWN_SYMBOLIC, - ICON_SYSTEM_SUSPEND, - ICON_TAB_NEW_SYMBOLIC, - ICON_TAG_NEW, - ICON_TAG_NEW_SYMBOLIC, - ICON_TOOL_MEASURE, - ICON_TOOL_NODE_EDITOR, - ICON_TOOLS_CHECK_SPELLING_SYMBOLIC, - ICON_TOOLS_TIMER_SYMBOLIC, - ICON_VIEW_COLUMN_SYMBOLIC, - ICON_VIEW_CONTINUOUS_SYMBOLIC, - ICON_VIEW_DUAL_SYMBOLIC, - ICON_VIEW_FILTER_SYMBOLIC, - ICON_VIEW_FULLSCREEN_SYMBOLIC, - ICON_VIEW_GRID_SYMBOLIC, - ICON_VIEW_LIST_COMPACT_SYMBOLIC, - ICON_VIEW_LIST_IMAGES_SYMBOLIC, - ICON_VIEW_LIST_SYMBOLIC, - ICON_VIEW_LIST_VIDEO_SYMBOLIC, - ICON_VIEW_MORE_HORIZONTAL_SYMBOLIC, - ICON_VIEW_MORE_SYMBOLIC, - ICON_VIEW_PAGED_SYMBOLIC, - ICON_VIEW_PIN_SYMBOLIC, - ICON_VIEW_REFRESH, - ICON_VIEW_REFRESH_SYMBOLIC, - ICON_VIEW_RESTORE_SYMBOLIC, - ICON_VIEW_SORT_ASCENDING_SYMBOLIC, - ICON_VIEW_SORT_DESCENDING_SYMBOLIC, - ICON_WINDOW_CLOSE, - ICON_WINDOW_CLOSE_SYMBOLIC, - ICON_WINDOW_MAXIMIZE_SYMBOLIC, - ICON_WINDOW_MINIMIZE_SYMBOLIC, - ICON_WINDOW_NEW, - ICON_WINDOW_NEW_SYMBOLIC, - ICON_WINDOW_POP_OUT_SYMBOLIC, - ICON_WINDOW_RESTORE_SYMBOLIC, - ICON_ZOOM_FIT_BEST, - ICON_ZOOM_FIT_BEST_SYMBOLIC, - ICON_ZOOM_IN, - ICON_ZOOM_IN_SYMBOLIC, - ICON_ZOOM_ORIGINAL, - ICON_ZOOM_ORIGINAL_SYMBOLIC, - ICON_ZOOM_OUT, - ICON_ZOOM_OUT_SYMBOLIC, - ICON_ACCESSORIES_CALCULATOR, - ICON_ACCESSORIES_CALCULATOR_SYMBOLIC, - ICON_ACCESSORIES_SCREENSHOT, - ICON_ACCESSORIES_TEXT_EDITOR, - ICON_ACCESSORIES_TEXT_EDITOR_SYMBOLIC, - ICON_APPLICATION_DEFAULT_ICON, - ICON_ARCHIVE_MANAGER, - ICON_INTERNET_CHAT, - ICON_INTERNET_CHAT_SYMBOLIC, - ICON_INTERNET_MAIL, - ICON_INTERNET_MAIL_SYMBOLIC, - ICON_INTERNET_NEWS_READER, - ICON_INTERNET_NEWS_READER_SYMBOLIC, - ICON_INTERNET_WEB_BROWSER, - ICON_INTERNET_WEB_BROWSER_SYMBOLIC, - ICON_MULTIMEDIA_AUDIO_PLAYER, - ICON_MULTIMEDIA_PHOTO_MANAGER, - ICON_MULTIMEDIA_VIDEO_PLAYER, - ICON_OFFICE_ADDRESS_BOOK, - ICON_OFFICE_CALENDAR, - ICON_OFFICE_CALENDAR_SYMBOLIC, - ICON_ONBOARD, - ICON_POSTSCRIPT_VIEWER, - ICON_PREFERENCES_DESKTOP, - ICON_PREFERENCES_DESKTOP_FONT, - ICON_SYSTEM_FILE_MANAGER, - ICON_SYSTEM_OS_INSTALLER, - ICON_SYSTEM_SOFTWARE_INSTALL, - ICON_SYSTEM_SOFTWARE_INSTALL_SYMBOLIC, - ICON_SYSTEM_SOFTWARE_UPDATE, - ICON_SYSTEM_USERS, - ICON_SYSTEM_USERS_SYMBOLIC, - ICON_UTILITIES_SYSTEM_MONITOR, - ICON_UTILITIES_TERMINAL, - ICON_UTILITIES_TERMINAL_SYMBOLIC, - ICON_APPLICATIONS_ACCESSORIES, - ICON_APPLICATIONS_AUDIO_SYMBOLIC, - ICON_APPLICATIONS_DEVELOPMENT, - ICON_APPLICATIONS_DEVELOPMENT_SYMBOLIC, - ICON_APPLICATIONS_EDUCATION, - ICON_APPLICATIONS_EDUCATION_SYMBOLIC, - ICON_APPLICATIONS_ENGINEERING_SYMBOLIC, - ICON_APPLICATIONS_FONTS, - ICON_APPLICATIONS_GAMES, - ICON_APPLICATIONS_GAMES_SYMBOLIC, - ICON_APPLICATIONS_GRAPHICS, - ICON_APPLICATIONS_GRAPHICS_SYMBOLIC, - ICON_APPLICATIONS_INTERFACEDESIGN, - ICON_APPLICATIONS_INTERNET_SYMBOLIC, - ICON_APPLICATIONS_MULTIMEDIA, - ICON_APPLICATIONS_MULTIMEDIA_SYMBOLIC, - ICON_APPLICATIONS_OFFICE, - ICON_APPLICATIONS_OFFICE_SYMBOLIC, - ICON_APPLICATIONS_OTHER, - ICON_APPLICATIONS_OTHER_SYMBOLIC, - ICON_APPLICATIONS_PHOTOGRAPHY, - ICON_APPLICATIONS_SCIENCE, - ICON_APPLICATIONS_SCIENCE_SYMBOLIC, - ICON_APPLICATIONS_UTILITIES, - ICON_APPLICATIONS_UTILITIES_SYMBOLIC, - ICON_APPLICATIONS_VIDEO_SYMBOLIC, - ICON_BUG, - ICON_BUG_SYMBOLIC, - ICON_EMOJI_ACTIVITY_SYMBOLIC, - ICON_EMOJI_BODY_SYMBOLIC, - ICON_EMOJI_FOOD_SYMBOLIC, - ICON_EMOJI_NATURE_SYMBOLIC, - ICON_EMOJI_OBJECTS_SYMBOLIC, - ICON_EMOJI_TRAVEL_SYMBOLIC, - ICON_EVENT_BIRTHDAY_SYMBOLIC, - ICON_PREFERENCES_BLUETOOTH_SYMBOLIC, - ICON_PREFERENCES_COLOR, - ICON_PREFERENCES_COLOR_SYMBOLIC, - ICON_PREFERENCES_DESKTOP_ACCESSIBILITY, - ICON_PREFERENCES_DESKTOP_ACCESSIBILITY_POINTING, - ICON_PREFERENCES_DESKTOP_ACCESSIBILITY_SYMBOLIC, - ICON_PREFERENCES_DESKTOP_ACCESSIBILITY_ZOOM, - ICON_PREFERENCES_DESKTOP_APPLICATIONS, - ICON_PREFERENCES_DESKTOP_DISPLAY, - ICON_PREFERENCES_DESKTOP_DISPLAY_SYMBOLIC, - ICON_PREFERENCES_DESKTOP_KEYBOARD, - ICON_PREFERENCES_DESKTOP_KEYBOARD_SYMBOLIC, - ICON_PREFERENCES_DESKTOP_LOCALE, - ICON_PREFERENCES_DESKTOP_LOCALE_SYMBOLIC, - ICON_PREFERENCES_DESKTOP_ONLINE_ACCOUNTS, - ICON_PREFERENCES_DESKTOP_ONLINE_ACCOUNTS_SYMBOLIC, - ICON_PREFERENCES_DESKTOP_PERIPHERALS, - ICON_PREFERENCES_DESKTOP_SOUND, - ICON_PREFERENCES_DESKTOP_WALLPAPER, - ICON_PREFERENCES_OTHER_SYMBOLIC, - ICON_PREFERENCES_SYSTEM, - ICON_PREFERENCES_SYSTEM_NETWORK, - ICON_PREFERENCES_SYSTEM_NETWORK_SYMBOLIC, - ICON_PREFERENCES_SYSTEM_NOTIFICATIONS, - ICON_PREFERENCES_SYSTEM_PARENTAL_CONTROL_SYMBOLIC, - ICON_PREFERENCES_SYSTEM_PARENTAL_CONTROLS, - ICON_PREFERENCES_SYSTEM_POWER, - ICON_PREFERENCES_SYSTEM_POWER_SYMBOLIC, - ICON_PREFERENCES_SYSTEM_PRIVACY_HOUSEKEEPING, - ICON_PREFERENCES_SYSTEM_SHARING, - ICON_PREFERENCES_SYSTEM_SHARING_SYMBOLIC, - ICON_PREFERENCES_SYSTEM_TIME, - ICON_PREFERENCES_SYSTEM_TIME_SYMBOLIC, - ICON_PREFERENCES_SYSTEM_WINDOWS, - ICON_AC_ADAPTER_SYMBOLIC, - ICON_AUDIO_CARD_SYMBOLIC, - ICON_AUDIO_HEADPHONES, - ICON_AUDIO_HEADPHONES_SYMBOLIC, - ICON_AUDIO_HEADSET_SYMBOLIC, - ICON_AUDIO_HEADSETS, - ICON_AUDIO_INPUT_MICROPHONE, - ICON_AUDIO_INPUT_MICROPHONE_SYMBOLIC, - ICON_AUDIO_SPEAKER_CENTER, - ICON_AUDIO_SPEAKER_CENTER_BACK, - ICON_AUDIO_SPEAKER_CENTER_BACK_TESTING, - ICON_AUDIO_SPEAKER_CENTER_TESTING, - ICON_AUDIO_SPEAKER_LEFT, - ICON_AUDIO_SPEAKER_LEFT_BACK, - ICON_AUDIO_SPEAKER_LEFT_BACK_TESTING, - ICON_AUDIO_SPEAKER_LEFT_SIDE, - ICON_AUDIO_SPEAKER_LEFT_SIDE_TESTING, - ICON_AUDIO_SPEAKER_LEFT_TESTING, - ICON_AUDIO_SPEAKER_RIGHT, - ICON_AUDIO_SPEAKER_RIGHT_BACK, - ICON_AUDIO_SPEAKER_RIGHT_BACK_TESTING, - ICON_AUDIO_SPEAKER_RIGHT_SIDE, - ICON_AUDIO_SPEAKER_RIGHT_SIDE_TESTING, - ICON_AUDIO_SPEAKER_RIGHT_TESTING, - ICON_AUDIO_SPEAKERS, - ICON_AUDIO_SPEAKERS_SYMBOLIC, - ICON_AUDIO_SUBWOOFER, - ICON_AUDIO_SUBWOOFER_TESTING, - ICON_BATTERY, - ICON_BATTERY_SYMBOLIC, - ICON_BLUETOOTH, - ICON_BLUETOOTH_SYMBOLIC, - ICON_CAMERA_PHOTO, - ICON_CAMERA_PHOTO_SYMBOLIC, - ICON_CAMERA_VIDEO, - ICON_CAMERA_VIDEO_SYMBOLIC, - ICON_CAMERA_WEB, - ICON_CAMERA_WEB_SYMBOLIC, - ICON_COLORIMETER_COLORHUG_SYMBOLIC, - ICON_COMPUTER_LAPTOP, - ICON_COMPUTER_LAPTOP_SYMBOLIC, - ICON_DISPLAY_PROJECTOR_SYMBOLIC, - ICON_DRIVE_HARDDISK, - ICON_DRIVE_HARDDISK_IEEE1394_SYMBOLIC, - ICON_DRIVE_HARDDISK_SOLIDSTATE, - ICON_DRIVE_HARDDISK_SOLIDSTATE_SYMBOLIC, - ICON_DRIVE_HARDDISK_SYMBOLIC, - ICON_DRIVE_MULTIDISK_SYMBOLIC, - ICON_DRIVE_OPTICAL_SYMBOLIC, - ICON_DRIVE_REMOVABLE_MEDIA, - ICON_DRIVE_REMOVABLE_MEDIA_SYMBOLIC, - ICON_DRIVE_REMOVABLE_MEDIA_USB, - ICON_FINGERPRINT, - ICON_FINGERPRINT_SYMBOLIC, - ICON_GNOME_DEV_PRINTER_NEW, - ICON_INPUT_DIALPAD_SYMBOLIC, - ICON_INPUT_GAMING, - ICON_INPUT_GAMING_SYMBOLIC, - ICON_INPUT_KEYBOARD, - ICON_INPUT_KEYBOARD_SYMBOLIC, - ICON_INPUT_MOUSE, - ICON_INPUT_MOUSE_SYMBOLIC, - ICON_INPUT_TABLET, - ICON_INPUT_TABLET_SYMBOLIC, - ICON_INPUT_TOUCHPAD, - ICON_INPUT_TOUCHPAD_SYMBOLIC, - ICON_MEDIA_FLASH_CF, - ICON_MEDIA_FLASH_MS, - ICON_MEDIA_FLASH_SYMBOLIC, - ICON_MEDIA_FLOPPY_SYMBOLIC, - ICON_MEDIA_MEMORY, - ICON_MEDIA_MEMORY_SD, - ICON_MEDIA_MEMORY_SEMBOLIC, - ICON_MEDIA_MEMORY_SM, - ICON_MEDIA_OPTICAL, - ICON_MEDIA_OPTICAL_SYMBOLIC, - ICON_MEDIA_REMOVABLE_SYMBOLIC, - ICON_MEDIA_TAPE_SYMBOLIC, - ICON_MEDIA_ZIP_SYMBOLIC, - ICON_MODEM, - ICON_MODEM_SYMBOLIC, - ICON_MULTIMEDIA_PLAYER, - ICON_MULTIMEDIA_PLAYER_SYMBOLIC, - ICON_NETWORK_CELLULAR, - ICON_NETWORK_FIREWALL, - ICON_NETWORK_VPN, - ICON_NETWORK_WIRED, - ICON_NETWORK_WIRELESS, - ICON_NETWORK_WIRELESS_HOTSPOT, - ICON_NM_DEVICE_WWAN, - ICON_PDA_SYMBOLIC, - ICON_PHONE, - ICON_PHONE_SYMBOLIC, - ICON_PRINTER, - ICON_PRINTER_NETWORK, - ICON_PRINTER_SYMBOLIC, - ICON_SCANNER, - ICON_SCANNER_SYMBOLIC, - ICON_TABLET, - ICON_TABLET_SYMBOLIC, - ICON_TV_SYMBOLIC, - ICON_UNINTERRUPTIBLE_POWER_SUPPLY, - ICON_UNINTERRUPTIBLE_POWER_SUPPLY_SYMBOLIC, - ICON_VIDEO_DISPLAY, - ICON_VIDEO_DISPLAY_SYMBOLIC, - ICON_EMBLEM_DEFAULT_SYMBOLIC, - ICON_EMBLEM_DOCUMENTS_SYMBOLIC, - ICON_EMBLEM_FAVORITE_SYMBOLIC, - ICON_EMBLEM_IMPORTANT_SYMBOLIC, - ICON_EMBLEM_MUSIC_SYMBOLIC, - ICON_EMBLEM_OK_SYMBOLIC, - ICON_EMBLEM_PHOTOS_SYMBOLIC, - ICON_EMBLEM_READONLY, - ICON_EMBLEM_SHARED_SYMBOLIC, - ICON_EMBLEM_SYMBOLIC_LINK, - ICON_EMBLEM_SYNCHRONIZED, - ICON_EMBLEM_SYNCHRONIZING_SYMBOLIC, - ICON_EMBLEM_UNREADABLE, - ICON_EMBLEM_VIDEOS_SYMBOLIC, - ICON_FACE_ANGEL, - ICON_FACE_ANGEL_SYMBOLIC, - ICON_FACE_ANGRY, - ICON_FACE_ANGRY_SYMBOLIC, - ICON_FACE_COOL, - ICON_FACE_COOL_SYMBOLIC, - ICON_FACE_CRYING, - ICON_FACE_CRYING_SYMBOLIC, - ICON_FACE_DEVILISH, - ICON_FACE_DEVILISH_SYMBOLIC, - ICON_FACE_EMBARRASSED, - ICON_FACE_EMBARRASSED_SYMBOLIC, - ICON_FACE_HEART, - ICON_FACE_HEART_BROKEN, - ICON_FACE_HEART_BROKEN_SYMBOLIC, - ICON_FACE_HEART_SYMBOLIC, - ICON_FACE_KISS, - ICON_FACE_KISS_SYMBOLIC, - ICON_FACE_LAUGH, - ICON_FACE_LAUGH_SYMBOLIC, - ICON_FACE_MONKEY_SYMBOLIC, - ICON_FACE_PLAIN, - ICON_FACE_PLAIN_SYMBOLIC, - ICON_FACE_RASPBERRY, - ICON_FACE_RASPBERRY_SYMBOLIC, - ICON_FACE_SAD, - ICON_FACE_SAD_SYMBOLIC, - ICON_FACE_SICK, - ICON_FACE_SICK_SYMBOLIC, - ICON_FACE_SMILE, - ICON_FACE_SMILE_BIG, - ICON_FACE_SMILE_BIG_SYMBOLIC, - ICON_FACE_SMILE_SYMBOLIC, - ICON_FACE_SMIRK, - ICON_FACE_SMIRK_SYMBOLIC, - ICON_FACE_SURPRISE, - ICON_FACE_SURPRISE_SYMBOLIC, - ICON_FACE_TIRED, - ICON_FACE_TIRED_SYMBOLIC, - ICON_FACE_UNCERTAIN, - ICON_FACE_UNCERTAIN_SYMBOLIC, - ICON_FACE_WINK, - ICON_FACE_WINK_SYMBOLIC, - ICON_FACE_WORRIED, - ICON_FACE_WORRIED_SYMBOLIC, - ICON_APPLICATION_CERTIFICATE_SYMBOLIC, - ICON_APPLICATION_EPUB_ZIP, - ICON_APPLICATION_ILLUSTRATOR, - ICON_APPLICATION_JAVASCRIPT, - ICON_APPLICATION_MSWORD, - ICON_APPLICATION_OCTET_STREAM, - ICON_APPLICATION_PDF, - ICON_APPLICATION_PGP, - ICON_APPLICATION_RSS_XML_SYMBOLIC, - ICON_APPLICATION_VND, - ICON_APPLICATION_X_APPLIANCE_SYMBOLIC, - ICON_APPLICATION_X_BITTORRENT, - ICON_APPLICATION_X_CD_IMAGE, - ICON_APPLICATION_X_DESKTOP, - ICON_APPLICATION_X_EXECUTABLE_SYMBOLIC, - ICON_APPLICATION_X_FICTIONBOOK_XML, - ICON_APPLICATION_X_FIRMWARE, - ICON_APPLICATION_X_FIRMWARE_SYMBOLIC, - ICON_APPLICATION_X_FLASH_VIDEO, - ICON_APPLICATION_X_MS_DOS_EXECUTABLE, - ICON_APPLICATION_X_PARTIAL_DOWNLOAD, - ICON_APPLICATION_X_PHP, - ICON_APPLICATION_X_RUBY, - ICON_AUDIO_X_GENERIC, - ICON_AUDIO_X_GENERIC_SYMBOLIC, - ICON_AUDIO_X_PLAYLIST, - ICON_EXTENSION, - ICON_FONT_X_GENERIC, - ICON_FONT_X_GENERIC_SYMBOLIC, - ICON_IMAGE_VND, - ICON_IMAGE_X_GENERIC, - ICON_IMAGE_X_GENERIC_SYMBOLIC, - ICON_IMAGE_X_XCF, - ICON_INTERNET_FEED, - ICON_MODEL, - ICON_OFFICE_CONTACT, - ICON_OFFICE_DATABASE, - ICON_PACKAGE_X_GENERIC, - ICON_PACKAGE_X_GENERIC_SYMBOLIC, - ICON_PAYMENT_CARD, - ICON_PAYMENT_CARD_AMEX, - ICON_PAYMENT_CARD_DINERS_CLUB, - ICON_PAYMENT_CARD_DISCOVER, - ICON_PAYMENT_CARD_JCB, - ICON_PAYMENT_CARD_MASTERCARD, - ICON_PAYMENT_CARD_SYMBOLIC, - ICON_PAYMENT_CARD_UNIONPAY, - ICON_PAYMENT_CARD_VISA, - ICON_TEXT, - ICON_TEXT_CSS, - ICON_TEXT_HTML, - ICON_TEXT_HTML_SYMBOLIC, - ICON_TEXT_MARKDOWN, - ICON_TEXT_X_BIBTEX, - ICON_TEXT_X_CHANGELOG, - ICON_TEXT_X_CHDR, - ICON_TEXT_X_COPYING, - ICON_TEXT_X_COPYING_SYMBOLIC, - ICON_TEXT_X_CSRC, - ICON_TEXT_X_GENERIC_SYMBOLIC, - ICON_TEXT_X_GENERIC_TEMPLATE, - ICON_TEXT_X_GETTEXT_TRANSLATION, - ICON_TEXT_X_GETTEXT_TRANSLATION_TEMPLATE, - ICON_TEXT_X_GO, - ICON_TEXT_X_INSTALL, - ICON_TEXT_X_MAKEFILE, - ICON_TEXT_X_PREVIEW, - ICON_TEXT_X_PYTHON, - ICON_TEXT_X_README, - ICON_TEXT_X_SASS, - ICON_TEXT_X_SCRIPT, - ICON_TEXT_X_SSA, - ICON_TEXT_X_TEX, - ICON_TEXT_X_VALA, - ICON_UNKNOWN, - ICON_VIDEO_X_GENERIC, - ICON_VIDEO_X_GENERIC_SYMBOLIC, - ICON_X_OFFICE_ADDRESS_BOOK_SYMBOLIC, - ICON_X_OFFICE_DOCUMENT, - ICON_X_OFFICE_DOCUMENT_SYMBOLIC, - ICON_X_OFFICE_DOCUMENT_TEMPLATE, - ICON_X_OFFICE_DRAWING, - ICON_X_OFFICE_DRAWING_SYMBOLIC, - ICON_X_OFFICE_DRAWING_TEMPLATE, - ICON_X_OFFICE_PRESENTATION, - ICON_X_OFFICE_PRESENTATION_SYMBOLIC, - ICON_X_OFFICE_PRESENTATION_TEMPLATE, - ICON_X_OFFICE_SPREADSHEET, - ICON_X_OFFICE_SPREADSHEET_SYMBOLIC, - ICON_X_OFFICE_SPREADSHEET_TEMPLATE, - ICON_BOOKMARK_MISSING, - ICON_DISTRIBUTOR_LOGO, - ICON_DISTRIBUTOR_LOGO_SYMBOLIC, - ICON_FOLDER, - ICON_FOLDER_DOCUMENTS, - ICON_FOLDER_DOCUMENTS_OPEN, - ICON_FOLDER_DOCUMENTS_SYMBOLIC, - ICON_FOLDER_DOWNLOAD, - ICON_FOLDER_DOWNLOAD_OPEN, - ICON_FOLDER_DOWNLOAD_SYMBOLIC, - ICON_FOLDER_MUSIC, - ICON_FOLDER_MUSIC_OPEN, - ICON_FOLDER_MUSIC_SYMBOLIC, - ICON_FOLDER_OPEN, - ICON_FOLDER_PICTURES, - ICON_FOLDER_PICTURES_OPEN, - ICON_FOLDER_PICTURES_SYMBOLIC, - ICON_FOLDER_PUBLICSHARE, - ICON_FOLDER_PUBLICSHARE_OPEN, - ICON_FOLDER_PUBLICSHARE_SYMBOLIC, - ICON_FOLDER_RECENT, - ICON_FOLDER_RECENT_SYMBOLIC, - ICON_FOLDER_REMOTE, - ICON_FOLDER_REMOTE_OPEN, - ICON_FOLDER_SAVED_SEARCH, - ICON_FOLDER_SYMBOLIC, - ICON_FOLDER_TAG, - ICON_FOLDER_TEMPLATES, - ICON_FOLDER_TEMPLATES_OPEN, - ICON_FOLDER_TEMPLATES_SYMBOLIC, - ICON_FOLDER_VIDEOS, - ICON_FOLDER_VIDEOS_OPEN, - ICON_FOLDER_VIDEOS_SYMBOLIC, - ICON_INTERNET_RADIO, - ICON_INTERNET_RADIO_SYMBOLIC, - ICON_LIBRARY_AUDIOBOOK, - ICON_LIBRARY_PLACES, - ICON_LIBRARY_PODCAST, - ICON_MAIL_INBOX, - ICON_MAIL_INBOX_SYMBOLIC, - ICON_MAIL_MAILBOX, - ICON_MAIL_MAILBOX_SYMBOLIC, - ICON_MAIL_OUTBOX, - ICON_MAIL_OUTBOX_SYMBOLIC, - ICON_NETWORK_SERVER_SYMBOLIC, - ICON_PLAYLIST, - ICON_PLAYLIST_AUTOMATIC, - ICON_PLAYLIST_QUEUE, - ICON_PLAYLIST_QUEUE_SYMBOLIC, - ICON_PLAYLIST_SIMILAR, - ICON_PLAYLIST_SYMBOLIC, - ICON_TAG_SYMBOLIC, - ICON_USER_BOOKMARKS_SYMBOLIC, - ICON_USER_HOME, - ICON_USER_HOME_OPEN, - ICON_USER_HOME_SYMBOLIC, - ICON_USER_TRASH, - ICON_USER_TRASH_FULL, - ICON_USER_TRASH_SYMBOLIC, - ICON_AIRPLANE_MODE, - ICON_AIRPLANE_MODE_SYMBOLIC, - ICON_ALARM_SYMBOLIC, - ICON_APPOINTMENT_MISSED, - ICON_APPOINTMENT_MISSED_SYMBOLIC, - ICON_APPOINTMENT_SOON, - ICON_APPOINTMENT_SOON_SYMBOLIC, - ICON_AUDIO_VOLUME_HIGH_SYMBOLIC, - ICON_AUDIO_VOLUME_LOW_SYMBOLIC, - ICON_AUDIO_VOLUME_MEDIUM_SYMBOLIC, - ICON_AUDIO_VOLUME_MUTED_BLOCKING_SYMBOLIC, - ICON_AUDIO_VOLUME_MUTED_SYMBOLIC, - ICON_AVATAR_DEFAULT, - ICON_AVATAR_DEFAULT_SYMBOLIC, - ICON_BATTERY_AC_ADAPTER, - ICON_BATTERY_AC_ADAPTER_SYMBOLIC, - ICON_BATTERY_CAUTION, - ICON_BATTERY_CAUTION_CHARGING, - ICON_BATTERY_CAUTION_CHARGING_SYMBOLIC, - ICON_BATTERY_CAUTION_SYMBOLIC, - ICON_BATTERY_EMPTY, - ICON_BATTERY_EMPTY_CHARGING, - ICON_BATTERY_EMPTY_CHARGING_SYMBOLIC, - ICON_BATTERY_EMPTY_SYMBOLIC, - ICON_BATTERY_FULL, - ICON_BATTERY_FULL_CHARGED, - ICON_BATTERY_FULL_CHARGED_SYMBOLIC, - ICON_BATTERY_FULL_CHARGING, - ICON_BATTERY_FULL_CHARGING_SYMBOLIC, - ICON_BATTERY_FULL_SYMBOLIC, - ICON_BATTERY_GOOD, - ICON_BATTERY_GOOD_CHARGING, - ICON_BATTERY_GOOD_CHARGING_SYMBOLIC, - ICON_BATTERY_GOOD_SYMBOLIC, - ICON_BATTERY_LOW, - ICON_BATTERY_LOW_CHARGING, - ICON_BATTERY_LOW_CHARGING_SYMBOLIC, - ICON_BATTERY_LOW_SYMBOLIC, - ICON_BATTERY_MISSING, - ICON_BATTERY_MISSING_SYMBOLIC, - ICON_BLUETOOTH_ACTIVE_SYMBOLIC, - ICON_BLUETOOTH_DISABLED, - ICON_BLUETOOTH_DISABLED_10_SYMBOLIC, - ICON_BLUETOOTH_DISABLED_20_SYMBOLIC, - ICON_BLUETOOTH_DISABLED_30_SYMBOLIC, - ICON_BLUETOOTH_DISABLED_40_SYMBOLIC, - ICON_BLUETOOTH_DISABLED_50_SYMBOLIC, - ICON_BLUETOOTH_DISABLED_60_SYMBOLIC, - ICON_BLUETOOTH_DISABLED_70_SYMBOLIC, - ICON_BLUETOOTH_DISABLED_80_SYMBOLIC, - ICON_BLUETOOTH_DISABLED_90_SYMBOLIC, - ICON_BLUETOOTH_DISABLED_SYMBOLIC, - ICON_BLUETOOTH_PAIRED_SYMBOLIC, - ICON_CALL_MISSED_SYMBOLIC, - ICON_CHANGES_ALLOW, - ICON_CHANGES_ALLOW_SYMBOLIC, - ICON_CHANGES_PREVENT_SYMBOLIC, - ICON_CHANNEL_INSECURE_SYMBOLIC, - ICON_CHANNEL_SECURE_SYMBOLIC, - ICON_CHECK_ACTIVE_SYMBOLIC, - ICON_CHECK_MIXED_SYMBOLIC, - ICON_CHECKBOX_CHECKED_SYMBOLIC, - ICON_CHECKBOX_MIXED_SYMBOLIC, - ICON_CHECKBOX_SYMBOLIC, - ICON_COMPUTER_FAIL_SYMBOLIC, - ICON_CONTENT_LOADING_SYMBOLIC, - ICON_DAYTIME_SUNRISE_SYMBOLIC, - ICON_DAYTIME_SUNSET_SYMBOLIC, - ICON_DIALOG_ERROR, - ICON_DIALOG_ERROR_SYMBOLIC, - ICON_DIALOG_INFORMATION, - ICON_DIALOG_INFORMATION_SYMBOLIC, - ICON_DIALOG_PASSWORD, - ICON_DIALOG_PASSWORD_SYMBOLIC, - ICON_DIALOG_WARNING, - ICON_DIALOG_WARNING_SYMBOLIC, - ICON_DISPLAY_BRIGHTNESS_SYMBOLIC, - ICON_FOLDER_OPEN_SYMBOLIC, - ICON_FOLDER_VISITING_SYMBOLIC, - ICON_IMAGE_LOADING, - ICON_IMAGE_MISSING, - ICON_INPUT_KEYBOARD_CAPSLOCK_SYMBOLIC, - ICON_INPUT_KEYBOARD_NUMLOCK_SYMBOLIC, - ICON_KEYBOARD_BRIGHTNESS_SYMBOLIC, - ICON_LOCATION_ACTIVE_SYMBOLIC, - ICON_LOCATION_DISABLED_SYMBOLIC, - ICON_LOCATION_INACTIVE_SYMBOLIC, - ICON_LOCKED, - ICON_MAIL_ATTACHMENT_SYMBOLIC, - ICON_MAIL_FORWARDED_SYMBOLIC, - ICON_MAIL_IMPORTANT_SYMBOLIC, - ICON_MAIL_READ_SYMBOLIC, - ICON_MAIL_REPLIED_SYMBOLIC, - ICON_MAIL_UNREAD, - ICON_MAIL_UNREAD_SYMBOLIC, - ICON_MEDIA_PLAYLIST_CONSECUTIVE_SYMBOLIC, - ICON_MEDIA_PLAYLIST_NO_REPEAT_SYMBOLIC, - ICON_MEDIA_PLAYLIST_REPEAT, - ICON_MEDIA_PLAYLIST_REPEAT_SONG_SYMBOLIC, - ICON_MEDIA_PLAYLIST_REPEAT_SYMBOLIC, - ICON_MEDIA_PLAYLIST_SHUFFLE_SYMBOLIC, - ICON_MICROPHONE_SENSITIVITY_HIGH_SYMBOLIC, - ICON_MICROPHONE_SENSITIVITY_LOW_SYMBOLIC, - ICON_MICROPHONE_SENSITIVITY_MEDIUM_SYMBOLIC, - ICON_MICROPHONE_SENSITIVITY_MUTED_10_SYMBOLIC, - ICON_MICROPHONE_SENSITIVITY_MUTED_20_SYMBOLIC, - ICON_MICROPHONE_SENSITIVITY_MUTED_30_SYMBOLIC, - ICON_MICROPHONE_SENSITIVITY_MUTED_40_SYMBOLIC, - ICON_MICROPHONE_SENSITIVITY_MUTED_50_SYMBOLIC, - ICON_MICROPHONE_SENSITIVITY_MUTED_60_SYMBOLIC, - ICON_MICROPHONE_SENSITIVITY_MUTED_70_SYMBOLIC, - ICON_MICROPHONE_SENSITIVITY_MUTED_80_SYMBOLIC, - ICON_MICROPHONE_SENSITIVITY_MUTED_90_SYMBOLIC, - ICON_MICROPHONE_SENSITIVITY_MUTED_SYMBOLIC, - ICON_NETWORK_CELLULAR_ACQUIRING_SYMBOLIC, - ICON_NETWORK_CELLULAR_CONNECTED_SYMBOLIC, - ICON_NETWORK_CELLULAR_NO_ROUTE_SYMBOLIC, - ICON_NETWORK_CELLULAR_OFFLINE_SYMBOLIC, - ICON_NETWORK_CELLULAR_SIGNAL_EXCELLENT_SECURE_SYMBOLIC, - ICON_NETWORK_CELLULAR_SIGNAL_EXCELLENT_SYMBOLIC, - ICON_NETWORK_CELLULAR_SIGNAL_GOOD_SECURE_SYMBOLIC, - ICON_NETWORK_CELLULAR_SIGNAL_GOOD_SYMBOLIC, - ICON_NETWORK_CELLULAR_SIGNAL_NONE_SECURE_SYMBOLIC, - ICON_NETWORK_CELLULAR_SIGNAL_NONE_SYMBOLIC, - ICON_NETWORK_CELLULAR_SIGNAL_OK_SECURE_SYMBOLIC, - ICON_NETWORK_CELLULAR_SIGNAL_OK_SYMBOLIC, - ICON_NETWORK_CELLULAR_SIGNAL_WEAK_SECURE_SYMBOLIC, - ICON_NETWORK_CELLULAR_SIGNAL_WEAK_SYMBOLIC, - ICON_NETWORK_ERROR, - ICON_NETWORK_ERROR_SYMBOLIC, - ICON_NETWORK_IDLE, - ICON_NETWORK_OFFLINE_SYMBOLIC, - ICON_NETWORK_VPN_ACQUIRING_SYMBOLIC, - ICON_NETWORK_VPN_LOCK_SYMBOLIC, - ICON_NETWORK_VPN_SYMBOLIC, - ICON_NETWORK_WIRED_ACQUIRING_SYMBOLIC, - ICON_NETWORK_WIRED_DISCONNECTED, - ICON_NETWORK_WIRED_NO_ROUTE_SYMBOLIC, - ICON_NETWORK_WIRED_OFFLINE_SYMBOLIC, - ICON_NETWORK_WIRED_SYMBOLIC, - ICON_NETWORK_WIRELESS_ACQUIRING_SYMBOLIC, - ICON_NETWORK_WIRELESS_CONNECTED_SYMBOLIC, - ICON_NETWORK_WIRELESS_ENCRYPTED_SYMBOLIC, - ICON_NETWORK_WIRELESS_HOTSPOT_SYMBOLIC, - ICON_NETWORK_WIRELESS_NO_ROUTE_SYMBOLIC, - ICON_NETWORK_WIRELESS_OFFLINE_SYMBOLIC, - ICON_NETWORK_WIRELESS_SIGNAL_EXCELLENT_SECURE_SYMBOLIC, - ICON_NETWORK_WIRELESS_SIGNAL_EXCELLENT_SYMBOLIC, - ICON_NETWORK_WIRELESS_SIGNAL_GOOD_SECURE_SYMBOLIC, - ICON_NETWORK_WIRELESS_SIGNAL_GOOD_SYMBOLIC, - ICON_NETWORK_WIRELESS_SIGNAL_NONE_SYMBOLIC, - ICON_NETWORK_WIRELESS_SIGNAL_OK_SECURE_SYMBOLIC, - ICON_NETWORK_WIRELESS_SIGNAL_OK_SYMBOLIC, - ICON_NETWORK_WIRELESS_SIGNAL_WEAK_SECURE_SYMBOLIC, - ICON_NETWORK_WIRELESS_SIGNAL_WEAK_SYMBOLIC, - ICON_NETWORK_WIRELESS_SYMBOLIC, - ICON_NIGHT_LIGHT, - ICON_NIGHT_LIGHT_DISABLED_10_SYMBOLIC, - ICON_NIGHT_LIGHT_DISABLED_20_SYMBOLIC, - ICON_NIGHT_LIGHT_DISABLED_30_SYMBOLIC, - ICON_NIGHT_LIGHT_DISABLED_40_SYMBOLIC, - ICON_NIGHT_LIGHT_DISABLED_50_SYMBOLIC, - ICON_NIGHT_LIGHT_DISABLED_60_SYMBOLIC, - ICON_NIGHT_LIGHT_DISABLED_70_SYMBOLIC, - ICON_NIGHT_LIGHT_DISABLED_80_SYMBOLIC, - ICON_NIGHT_LIGHT_DISABLED_90_SYMBOLIC, - ICON_NIGHT_LIGHT_DISABLED_SYMBOLIC, - ICON_NIGHT_LIGHT_SYMBOLIC, - ICON_NM_NO_CONNECTION, - ICON_NM_SIGNAL_0, - ICON_NM_SIGNAL_0_SECURE, - ICON_NM_SIGNAL_100, - ICON_NM_SIGNAL_100_SECURE, - ICON_NM_SIGNAL_25, - ICON_NM_SIGNAL_25_SECURE, - ICON_NM_SIGNAL_50, - ICON_NM_SIGNAL_50_SECURE, - ICON_NM_SIGNAL_75, - ICON_NM_SIGNAL_75_SECURE, - ICON_NM_VPN_ACTIVE_LOCK, - ICON_NM_VPN_LOCK, - ICON_NON_STARRED, - ICON_NON_STARRED_SYMBOLIC, - ICON_NOTIFICATION_AUDIO_VOLUME_HIGH, - ICON_NOTIFICATION_AUDIO_VOLUME_LOW, - ICON_NOTIFICATION_AUDIO_VOLUME_MEDIUM, - ICON_NOTIFICATION_AUDIO_VOLUME_MUTED, - ICON_NOTIFICATION_DEVICE_EJECT, - ICON_NOTIFICATION_DISABLED, - ICON_NOTIFICATION_DISABLED_10_SYMBOLIC, - ICON_NOTIFICATION_DISABLED_20_SYMBOLIC, - ICON_NOTIFICATION_DISABLED_30_SYMBOLIC, - ICON_NOTIFICATION_DISABLED_40_SYMBOLIC, - ICON_NOTIFICATION_DISABLED_50_SYMBOLIC, - ICON_NOTIFICATION_DISABLED_60_SYMBOLIC, - ICON_NOTIFICATION_DISABLED_70_SYMBOLIC, - ICON_NOTIFICATION_DISABLED_80_SYMBOLIC, - ICON_NOTIFICATION_DISABLED_90_SYMBOLIC, - ICON_NOTIFICATION_DISABLED_SYMBOLIC, - ICON_NOTIFICATION_DISPLAY_BRIGHTNESS, - ICON_NOTIFICATION_KEYBOARD_BRIGHTNESS, - ICON_NOTIFICATION_NETWORK_ETHERNET_DISCONNECTED, - ICON_NOTIFICATION_NETWORK_WIRED, - ICON_NOTIFICATION_NETWORK_WIRELESS, - ICON_NOTIFICATION_NETWORK_WIRELESS_DISCONNECTED, - ICON_NOTIFICATION_NETWORK_WIRELESS_DISCONNECTED_SYMBOLIC, - ICON_NOTIFICATION_NETWORK_WIRELESS_SYMBOLIC, - ICON_NOTIFICATION_NEW_10_SYMBOLIC, - ICON_NOTIFICATION_NEW_20_SYMBOLIC, - ICON_NOTIFICATION_NEW_30_SYMBOLIC, - ICON_NOTIFICATION_NEW_40_SYMBOLIC, - ICON_NOTIFICATION_NEW_50_SYMBOLIC, - ICON_NOTIFICATION_NEW_60_SYMBOLIC, - ICON_NOTIFICATION_NEW_70_SYMBOLIC, - ICON_NOTIFICATION_NEW_80_SYMBOLIC, - ICON_NOTIFICATION_NEW_90_SYMBOLIC, - ICON_NOTIFICATION_NEW_SYMBOLIC, - ICON_NOTIFICATION_SYMBOLIC, - ICON_PAGER_CHECKED_SYMBOLIC, - ICON_PRINTER_ERROR, - ICON_PRINTER_ERROR_SYMBOLIC, - ICON_PRINTER_PRINTING_SYMBOLIC, - ICON_PRINTER_WARNING_SYMBOLIC, - ICON_PROCESS_COMPLETED, - ICON_PROCESS_COMPLETED_SYMBOLIC, - ICON_PROCESS_ERROR_SYMBOLIC, - ICON_PROCESS_WORKING_SYMBOLIC, - ICON_RADIO_CHECKED_SYMBOLIC, - ICON_RADIO_MIXED_SYMBOLIC, - ICON_RADIO_SYMBOLIC, - ICON_ROTATION_ALLOWED_SYMBOLIC, - ICON_ROTATION_LOCKED_SYMBOLIC, - ICON_SECURITY_HIGH, - ICON_SECURITY_HIGH_SYMBOLIC, - ICON_SECURITY_LOW, - ICON_SECURITY_LOW_SYMBOLIC, - ICON_SECURITY_MEDIUM, - ICON_SECURITY_MEDIUM_SYMBOLIC, - ICON_SEMI_STARRED, - ICON_SEMI_STARRED_SYMBOLIC, - ICON_SOFTWARE_UPDATE_AVAILABLE_SYMBOLIC, - ICON_SOFTWARE_UPDATE_URGENT_SYMBOLIC, - ICON_STARRED, - ICON_STARRED_SYMBOLIC, - ICON_TASK_DUE_SYMBOLIC, - ICON_TASK_PAST_DUE_SYMBOLIC, - ICON_TOUCHPAD_DISABLED_SYMBOLIC, - ICON_USER_AVAILABLE, - ICON_USER_AVAILABLE_SYMBOLIC, - ICON_USER_AWAY, - ICON_USER_AWAY_SYMBOLIC, - ICON_USER_BUSY, - ICON_USER_BUSY_SYMBOLIC, - ICON_USER_IDLE_SYMBOLIC, - ICON_USER_INVISIBLE, - ICON_USER_INVISIBLE_SYMBOLIC, - ICON_USER_OFFLINE, - ICON_USER_OFFLINE_SYMBOLIC, - ICON_USER_STATUS_PENDING_SYMBOLIC, - ICON_USER_TRASH_FULL_SYMBOLIC, - ICON_USER_TYPING, - ICON_VIEW_PRIVATE, - ICON_VIEW_PRIVATE_SYMBOLIC, - ICON_VIEW_WRAPPED_SYMBOLIC, - ICON_WEATHER_CLEAR_NIGHT_SYMBOLIC, - ICON_WEATHER_CLEAR_SYMBOLIC, - ICON_WEATHER_FEW_CLOUDS_NIGHT_SYMBOLIC, - ICON_WEATHER_FEW_CLOUDS_SYMBOLIC, - ICON_WEATHER_FOG_NIGHT_SYMBOLIC, - ICON_WEATHER_FOG_SYMBOLIC, - ICON_WEATHER_OVERCAST_NIGHT_SYMBOLIC, - ICON_WEATHER_OVERCAST_SYMBOLIC, - ICON_WEATHER_SEVERE_ALERT_SYMBOLIC, - ICON_WEATHER_SHOWERS_NIGHT_SYMBOLIC, - ICON_WEATHER_SHOWERS_SCATTERED_NIGHT_SYMBOLIC, - ICON_WEATHER_SHOWERS_SCATTERED_SYMBOLIC, - ICON_WEATHER_SHOWERS_SYMBOLIC, - ICON_WEATHER_SNOW_NIGHT_SYMBOLIC, - ICON_WEATHER_SNOW_SYMBOLIC, - ICON_WEATHER_STORM_NIGHT_SYMBOLIC, - ICON_WEATHER_STORM_SYMBOLIC, - ICON_WEATHER_STORM_TORNADO_NIGHT_SYMBOLIC, - ICON_WEATHER_STORM_TORNADO_SYMBOLIC, - ICON_WEATHER_WINDY_SYMBOLIC, -} +package os -FatalError :: enum { - FATAL_ERROR_INVALID_BUFFER, - FATAL_ERROR_UNKNOWN_SYSCALL, - FATAL_ERROR_INVALID_MEMORY_REGION, - FATAL_ERROR_MEMORY_REGION_LOCKED_BY_KERNEL, - FATAL_ERROR_PATH_LENGTH_EXCEEDS_LIMIT, - FATAL_ERROR_INVALID_HANDLE, - FATAL_ERROR_MUTEX_NOT_ACQUIRED_BY_THREAD, - FATAL_ERROR_MUTEX_ALREADY_ACQUIRED, - FATAL_ERROR_BUFFER_NOT_ACCESSIBLE, - FATAL_ERROR_SHARED_MEMORY_REGION_TOO_LARGE, - FATAL_ERROR_SHARED_MEMORY_STILL_MAPPED, - FATAL_ERROR_COULD_NOT_LOAD_FONT, - FATAL_ERROR_COULD_NOT_DRAW_FONT, - FATAL_ERROR_COULD_NOT_ALLOCATE_MEMORY, - FATAL_ERROR_INCORRECT_FILE_ACCESS, - FATAL_ERROR_TOO_MANY_WAIT_OBJECTS, - FATAL_ERROR_INCORRECT_NODE_TYPE, - FATAL_ERROR_PROCESSOR_EXCEPTION, - FATAL_ERROR_UNKNOWN, - FATAL_ERROR_RECURSIVE_BATCH, - FATAL_ERROR_CORRUPT_HEAP, - FATAL_ERROR_CORRUPT_LINKED_LIST, - FATAL_ERROR_INDEX_OUT_OF_BOUNDS, - FATAL_ERROR_INVALID_STRING_LENGTH, - FATAL_ERROR_SPINLOCK_NOT_ACQUIRED, - FATAL_ERROR_UNKNOWN_SNAPSHOT_TYPE, - FATAL_ERROR_PROCESS_ALREADY_ATTACHED, - FATAL_ERROR_INTERNAL, - FATAL_ERROR_INSUFFICIENT_PERMISSIONS, - FATAL_ERROR_ABORT, - FATAL_ERROR_COUNT, -} +import "core:sys/es" -SyscallType :: enum { - SYSCALL_ALLOCATE, - SYSCALL_FREE, - SYSCALL_SHARE_MEMORY, - SYSCALL_MAP_OBJECT, - SYSCALL_OPEN_SHARED_MEMORY, - SYSCALL_CREATE_PROCESS, - SYSCALL_GET_CREATION_ARGUMENT, - SYSCALL_TERMINATE_THREAD, - SYSCALL_CREATE_THREAD, - SYSCALL_WAIT, - SYSCALL_TERMINATE_PROCESS, - SYSCALL_CREATE_EVENT, - SYSCALL_SET_EVENT, - SYSCALL_RESET_EVENT, - SYSCALL_POLL_EVENT, - SYSCALL_PAUSE_PROCESS, - SYSCALL_CRASH_PROCESS, - SYSCALL_GET_THREAD_ID, - SYSCALL_GET_PROCESS_STATE, - SYSCALL_YIELD_SCHEDULER, - SYSCALL_SLEEP, - SYSCALL_OPEN_PROCESS, - SYSCALL_SET_TLS, - SYSCALL_TIMER_SET, - SYSCALL_TIMER_CREATE, - SYSCALL_GET_PROCESS_STATUS, - SYSCALL_CREATE_SURFACE, - SYSCALL_GET_LINEAR_BUFFER, - SYSCALL_INVALIDATE_RECTANGLE, - SYSCALL_COPY_TO_SCREEN, - SYSCALL_FORCE_SCREEN_UPDATE, - SYSCALL_FILL_RECTANGLE, - SYSCALL_COPY_SURFACE, - SYSCALL_CLEAR_MODIFIED_REGION, - SYSCALL_DRAW_SURFACE, - SYSCALL_REDRAW_ALL, - SYSCALL_DRAW_BOX, - SYSCALL_DRAW_BITMAP, - SYSCALL_SURFACE_RESET, - SYSCALL_SURFACE_SHARE, - SYSCALL_DRAW_STYLED_BOX, - SYSCALL_SURFACE_SCROLL, - SYSCALL_RESIZE_SURFACE, - SYSCALL_GET_MESSAGE, - SYSCALL_POST_MESSAGE, - SYSCALL_POST_MESSAGE_REMOTE, - SYSCALL_WAIT_MESSAGE, - SYSCALL_CREATE_WINDOW, - SYSCALL_UPDATE_WINDOW, - SYSCALL_SET_CURSOR_STYLE, - SYSCALL_MOVE_WINDOW, - SYSCALL_GET_WINDOW_BOUNDS, - SYSCALL_RESET_CLICK_CHAIN, - SYSCALL_GET_CURSOR_POSITION, - SYSCALL_SET_CURSOR_POSITION, - SYSCALL_COPY, - SYSCALL_GET_CLIPBOARD_HEADER, - SYSCALL_PASTE_TEXT, - SYSCALL_SET_FOCUSED_WINDOW, - SYSCALL_SET_WINDOW_TITLE, - SYSCALL_GET_SCREEN_BOUNDS, - SYSCALL_WINDOW_OPEN, - SYSCALL_WINDOW_SET_BLEND_BOUNDS, - SYSCALL_WINDOW_GET_BLEND_BOUNDS, - SYSCALL_WINDOW_GET_ID, - SYSCALL_SET_WINDOW_ALPHA, - SYSCALL_DOCKED_WINDOW_CREATE, - SYSCALL_WINDOW_SHARE, - SYSCALL_SET_EMBED_WINDOW, - SYSCALL_OPEN_NODE, - SYSCALL_READ_FILE_SYNC, - SYSCALL_WRITE_FILE_SYNC, - SYSCALL_RESIZE_FILE, - SYSCALL_REFRESH_NODE_INFORMATION, - SYSCALL_ENUMERATE_DIRECTORY_CHILDREN, - SYSCALL_DELETE_NODE, - SYSCALL_MOVE_NODE, - SYSCALL_READ_CONSTANT_BUFFER, - SYSCALL_SHARE_CONSTANT_BUFFER, - SYSCALL_CREATE_CONSTANT_BUFFER, - SYSCALL_EXECUTE, - SYSCALL_INSTANCE_CREATE_REMOTE, - SYSCALL_MAILSLOT_SEND_DATA, - SYSCALL_MAILSLOT_SEND_MESSAGE, - SYSCALL_MAILSLOT_SHARE, - SYSCALL_PIPE_CREATE, - SYSCALL_PIPE_WRITE, - SYSCALL_PIPE_READ, - SYSCALL_USER_GET_HOME_FOLDER, - SYSCALL_USER_LOGIN, - SYSCALL_GET_SYSTEM_CONSTANTS, - SYSCALL_TAKE_SYSTEM_SNAPSHOT, - SYSCALL_SET_SYSTEM_CONSTANT, - SYSCALL_GET_SYSTEM_INFORMATION, - SYSCALL_PRINT, - SYSCALL_CLOSE_HANDLE, - SYSCALL_BATCH, - SYSCALL_SHUTDOWN, - SYSCALL_POSIX, - SYSCALL_COUNT, -} +Handle :: distinct int; +Errno :: distinct int; -StandardFont :: enum { - STANDARD_FONT_REGULAR, - STANDARD_FONT_BOLD, - STANDARD_FONT_MONOSPACED, -} +ERROR_NONE :: (Errno) (es.SUCCESS); -MessageType :: enum { - MESSAGE_WM_START = 0x1000, - MESSAGE_MOUSE_MOVED = 0x1001, - MESSAGE_WINDOW_ACTIVATED = 0x1003, - MESSAGE_WINDOW_DEACTIVATED = 0x1004, - MESSAGE_WINDOW_DESTROYED = 0x1005, - MESSAGE_MOUSE_EXIT = 0x1006 , - MESSAGE_CLICK_REPEAT = 0x1009, - MESSAGE_WINDOW_RESIZED = 0x100B, - MESSAGE_MOUSE_LEFT_PRESSED = 0x100C , - MESSAGE_MOUSE_LEFT_RELEASED = 0x100D, - MESSAGE_MOUSE_RIGHT_PRESSED = 0x100E, - MESSAGE_MOUSE_RIGHT_RELEASED = 0x100F, - MESSAGE_MOUSE_MIDDLE_PRESSED = 0x1010, - MESSAGE_MOUSE_MIDDLE_RELEASED = 0x1011 , - MESSAGE_KEY_PRESSED = 0x1012, - MESSAGE_KEY_RELEASED = 0x1013, - MESSAGE_UPDATE_WINDOW = 0x1014, - MESSAGE_WM_END = 0x13FF, - MESSAGE_PAINT = 0x2000 , - MESSAGE_DESTROY = 0x2001 , - MESSAGE_MEASURE = 0x2002 , - MESSAGE_SIZE = 0x2003 , - MESSAGE_ADD_CHILD = 0x2004 , - MESSAGE_REMOVE_CHILD = 0x2005 , - MESSAGE_HIT_TEST = 0x2006 , - MESSAGE_HOVERED_START = 0x2007 , - MESSAGE_HOVERED_END = 0x2008 , - MESSAGE_PRESSED_START = 0x2009 , - MESSAGE_PRESSED_END = 0x200A , - MESSAGE_FOCUSED_START = 0x200B , - MESSAGE_FOCUSED_END = 0x200C , - MESSAGE_FOCUS_WITHIN_START = 0x200D , - MESSAGE_FOCUS_WITHIN_END = 0x200E , - MESSAGE_Z_ORDER = 0x2010 , - MESSAGE_ANIMATE = 0x2011 , - MESSAGE_MOUSE_DRAGGED = 0x2012 , - MESSAGE_KEY_TYPED = 0x2013 , - MESSAGE_PAINT_BACKGROUND = 0x2014 , - MESSAGE_PAINT_FOREGROUND = 0x2015 , - MESSAGE_ENSURE_VISIBLE = 0x2016 , - MESSAGE_GET_CURSOR = 0x2017 , - MESSAGE_WINDOW_CREATED = 0x2018 , - MESSAGE_CLICKED = 0x3000 , - MESSAGE_SCROLLBAR_MOVED = 0x3001 , - MESSAGE_RECALCULATE_CONTENT_SIZE = 0x3002 , - MESSAGE_TEXTBOX_UPDATED = 0x3003 , - MESSAGE_DESKTOP_EXECUTE = 0x4800, - MESSAGE_POWER_BUTTON_PRESSED = 0x4801, - MESSAGE_TASKBAR_WINDOW_ADD = 0x4804, - MESSAGE_TASKBAR_WINDOW_REMOVE = 0x4805, - MESSAGE_TASKBAR_WINDOW_ACTIVATE = 0x4806, - MESSAGE_TASKBAR_WINDOW_SET_TITLE = 0x4807, - MESSAGE_DOCKED_WINDOW_CREATE = 0x4808, - MESSAGE_PROGRAM_CRASH = 0x4C00, - MESSAGE_PROGRAM_FAILED_TO_START = 0x4C01, - MESSAGE_RECEIVE_DATA = 0x5100, - MESSAGE_MAILSLOT_CLOSED = 0x5101, - MESSAGE_CLIPBOARD_UPDATED = 0x5001, - MESSAGE_SYSTEM_CONSTANT_UPDATED = 0x5004, - MESSAGE_TIMER = 0x5006, - MESSAGE_OBJECT_DESTROY = 0x5007, - MESSAGE_LIST_VIEW_GET_ITEM_CONTENT = 0x6000, - MESSAGE_LIST_VIEW_SET_ITEM_STATE = 0x6001, - MESSAGE_LIST_VIEW_GET_ITEM_STATE = 0x6002, - MESSAGE_LIST_VIEW_PAINT_ITEM = 0x6003 , - MESSAGE_LIST_VIEW_PAINT_CELL = 0x6004 , - MESSAGE_LIST_VIEW_SORT_COLUMN = 0x6005, - MESSAGE_LIST_VIEW_CHOOSE_ITEM = 0x6006, - MESSAGE_LIST_VIEW_FIND_ITEM = 0x6007, - MESSAGE_LIST_VIEW_TOGGLE_DISCLOSURE = 0x6008, - MESSAGE_LIST_VIEW_MEASURE_ITEM_HEIGHT = 0x6009, - MESSAGE_LIST_VIEW_LAYOUT_ITEM = 0x600A, - MESSAGE_LIST_VIEW_SET_ITEM_VISIBILITY = 0x600B, - MESSAGE_LIST_VIEW_RELAY_MESSAGE = 0x600C, - MESSAGE_LIST_VIEW_SET_ITEM_POSITION = 0x600D, - MESSAGE_PROGRAM_START = 0x7000, - MESSAGE_PROGRAM_EXIT = 0x7001, - MESSAGE_USER_START = 0x8000, - MESSAGE_USER_END = 0xBFFF, -} +O_RDONLY :: 0x1; +O_WRONLY :: 0x2; +O_CREATE :: 0x4; +O_TRUNC :: 0x8; -DrawMode :: enum { - DRAW_MODE_REPEAT_FIRST = 1 , - DRAW_MODE_STRECH, - DRAW_MODE_REPEAT, - DRAW_MODE_NONE, -} +stderr : Handle = 0; -ClipboardFormat :: enum { - CLIPBOARD_FORMAT_EMPTY, - CLIPBOARD_FORMAT_TEXT, - CLIPBOARD_FORMAT_FILE_LIST, -} - -ColorFormat :: enum { - COLOR_FORMAT_32_XRGB, -} - -CursorStyle :: enum { - CURSOR_NORMAL, - CURSOR_TEXT, - CURSOR_RESIZE_VERTICAL, - CURSOR_RESIZE_HORIZONTAL, - CURSOR_RESIZE_DIAGONAL_1, - CURSOR_RESIZE_DIAGONAL_2, - CURSOR_SPLIT_VERTICAL, - CURSOR_SPLIT_HORIZONTAL, - CURSOR_HAND_HOVER, - CURSOR_HAND_DRAG, - CURSOR_HAND_POINT, - CURSOR_SCROLL_UP_LEFT, - CURSOR_SCROLL_UP, - CURSOR_SCROLL_UP_RIGHT, - CURSOR_SCROLL_LEFT, - CURSOR_SCROLL_CENTER, - CURSOR_SCROLL_RIGHT, - CURSOR_SCROLL_DOWN_LEFT, - CURSOR_SCROLL_DOWN, - CURSOR_SCROLL_DOWN_RIGHT, - CURSOR_SELECT_LINES, - CURSOR_DROP_TEXT, - CURSOR_CROSS_HAIR_PICK, - CURSOR_CROSS_HAIR_RESIZE, - CURSOR_MOVE_HOVER, - CURSOR_MOVE_DRAG, - CURSOR_ROTATE_HOVER, - CURSOR_ROTATE_DRAG, - CURSOR_BLANK, -} - -WindowStyle :: enum { - WINDOW_NORMAL, - WINDOW_CONTAINER, - WINDOW_MENU, -} - -NODE_FILE :: (0); -NODE_DIRECTORY :: (0x4000); -NODE_INVALID :: (0x8000); -BatchCall :: struct { - index :SyscallType, - stopBatchIfError :bool, - using _ : struct #raw_union { - argument0 :uintptr, - returnValue :uintptr, - }, - - argument1 :uintptr, - argument2 :uintptr, - argument3 :uintptr, -} - -ThreadInformation :: struct { - handle :Handle, - tid :uintptr, -} - -ProcessInformation :: struct { - handle :Handle, - pid :uintptr, - mainThread :ThreadInformation, -} - -UniqueIdentifier :: struct { - using _ : struct #raw_union { - d :[16]u8, - }, - -} - -NodeInformation :: struct { - handle :Handle, - type :NodeType, - fileSize :FileOffset, - directoryChildren :FileOffset, -} - -DirectoryChild :: struct { - name :[MAX_DIRECTORY_CHILD_NAME_LENGTH]i8, - nameBytes :uintptr, - information :NodeInformation, -} - -Point :: struct { - x :i32, - y :i32, -} - -Rectangle :: struct { - left :i32, - right :i32, - top :i32, - bottom :i32, -} - -Rectangle16 :: struct { - left :i16, - right :i16, - top :i16, - bottom :i16, -} - -Color :: struct { - using _ : struct #raw_union { - using _ : struct { - blue :u8, - green :u8, - red :u8, - }, - - combined :u32, - }, - -} - -LinearBuffer :: struct { - width :uintptr, - height :uintptr, - stride :uintptr, - colorFormat :ColorFormat, - handle :Handle, -} - -RectangleAndColor :: struct { - rectangle :Rectangle, - color :Color, -} - -StyledBoxData :: struct { - backgroundColor :u32, - borderColor :u32, - borders :Rectangle16, - cornerRadius :u8, - roundedCornersToExclude :u8, - ox :i32, - oy :i32, - width :i32, - height :i32, - clip :Rectangle, -} - -InstanceCreateRemoteArguments :: struct { - what :^i8, - argument :^i8, - whatBytes :uintptr, - argumentBytes :uintptr, - modalWindowParent :Handle, - apiInstance :^rawptr, -} - -DrawSurfaceArguments :: struct { - source :Rectangle, - destination :Rectangle, - border :Rectangle, - alpha :u16, -} - -Spinlock :: struct { - state :u8, -} - -Mutex :: struct { - event :Handle, - spinlock :Spinlock, - state :u8, - queued :u32, -} - -CrashReason :: struct { - errorCode :Error, -} - -ProcessState :: struct { - crashReason :CrashReason, - creationArgument :Generic, - id :uintptr, - executableState :uintptr, - flags :u8, -} - -IORequestProgress :: struct { - accessed :FileOffset, - progress :FileOffset, - completed :bool, - cancelled :bool, - error :Error, -} - -ClipboardHeader :: struct { - customBytes :uintptr, - format :ClipboardFormat, - textBytes :uintptr, - unused :uintptr, -} - -Painter :: struct { - surface :Handle, - clip :Rectangle, - offsetX :i32, - offsetY :i32, - fullAlpha :bool, -} - -Message :: struct { - type :MessageType, - _context :Generic, - using _ : struct #raw_union { - _argument :^rawptr, - mouseMoved : struct { - oldPositionX :i32, - newPositionX :i32, - oldPositionY :i32, - newPositionY :i32, - newPositionXScreen :i32, - newPositionYScreen :i32, - }, - - mouseDragged : struct { - oldPositionX :i32, - newPositionX :i32, - oldPositionY :i32, - newPositionY :i32, - originalPositionX :i32, - originalPositionY :i32, - }, - - mousePressed : struct { - positionX :i32, - positionY :i32, - positionXScreen :i32, - positionYScreen :i32, - clickChainCount :u8, - activationClick :u8, - alt :u8, - ctrl :u8, - shift :u8, - }, - - keyboard : struct { - scancode :u32, - alt :u8, - ctrl :u8, - shift :u8, - numpad :u8, - notHandledBy :Object, - }, - - crash : struct { - reason :CrashReason, - process :Handle, - processNameBuffer :Handle, - processNameBytes :uintptr, - pid :uintptr, - }, - - clipboard :ClipboardHeader, - receive : struct { - buffer :Handle, - bytes :uintptr, - }, - - animate : struct { - deltaMcs :i64, - waitMcs :i64, - complete :bool, - }, - - systemConstantUpdated : struct { - index :uintptr, - newValue :u64, - }, - - desktopExecute : struct { - whatBuffer :Handle, - argumentBuffer :Handle, - mailslot :Handle, - whatBytes :uintptr, - argumentBytes :uintptr, - modalWindowParent :u64, - }, - - dockedWindowCreate : struct { - pipe :Handle, - }, - - taskbar : struct { - id :u64, - buffer :Handle, - bytes :uintptr, - }, - - windowResized : struct { - content :Rectangle, - }, - - painter :^Painter, - measure : struct { - width :i32, - height :i32, - }, - - child :Object, - size : struct { - width :i32, - height :i32, - }, - - hitTest : struct { - x :i32, - y :i32, - inside :bool, - }, - - zOrder : struct { - index :uintptr, - child :^Element, - }, - - scrollbarMoved : struct { - scroll :i32, - }, - - ensureVisible : struct { - child :^Element, - }, - - cursorStyle :CursorStyle, - getItemContent : struct { - mask :u32, - index :ListViewIndex, - column :ListViewIndex, - group :ListViewIndex, - text :^i8, - textBytes :uintptr, - iconID :u16, - iconSize :u16, - indentation :u16, - spaceAfterIcon :u16, - }, - - accessItemState : struct { - mask :u32, - state :u32, - iIndexFrom :ListViewIndex, - eIndexTo :ListViewIndex, - group :ListViewIndex, - }, - - measureItemHeight : struct { - iIndexFrom :ListViewIndex, - eIndexTo :ListViewIndex, - group :ListViewIndex, - height :i32, - }, - - layoutItem : struct { - index :ListViewIndex, - group :ListViewIndex, - knownIndex :ListViewIndex, - knownGroup :ListViewIndex, - bounds :Rectangle, - }, - - toggleItemDisclosure : struct { - index :ListViewIndex, - group :ListViewIndex, - }, - - findItem : struct { - type :u8, - backwards :u8, - inclusive :bool, - indexFrom :ListViewIndex, - groupFrom :ListViewIndex, - foundIndex :ListViewIndex, - foundGroup :ListViewIndex, - using _ : struct #raw_union { - using _ : struct { - prefix :^i8, - prefixBytes :uintptr, - }, - - using _ : struct { - yPosition :i32, - yPositionOfIndexFrom :i32, - offsetIntoItem :i32, - }, - - }, - - }, - - listViewColumn : struct { - index :ListViewIndex, - descending :bool, - }, - - setItemVisibility : struct { - index :ListViewIndex, - group :ListViewIndex, - visible :bool, - }, - - setItemPosition : struct { - index :ListViewIndex, - group :ListViewIndex, - bounds :Rectangle, - }, - - listViewPaint : struct { - painter :^Painter, - width :i32, - height :i32, - index :ListViewIndex, - group :ListViewIndex, - column :ListViewIndex, - }, - - }, - -} - -DebuggerMessage :: struct { - process :Handle, - reason :CrashReason, -} - -DriveInformation :: struct { - name :[64]i8, - nameBytes :uintptr, - mountpoint :[256]i8, - mountpointBytes :uintptr, -} - -SnapshotProcessesItem :: struct { - pid :i64, - memoryUsage :i64, - cpuTimeSlices :i64, - name :[SNAPSHOT_MAX_PROCESS_NAME_LENGTH]i8, - nameLength :uintptr, - internal :u64, -} - -SystemInformation :: struct { - processCount :uintptr, - threadCount :uintptr, - handleCount :uintptr, - commitLimit :uintptr, - commit :uintptr, - countZeroedPages :uintptr, - countFreePages :uintptr, - countStandbyPages :uintptr, - countModifiedPages :uintptr, - countActivePages :uintptr, - coreHeapSize :uintptr, - coreHeapAllocations :uintptr, - fixedHeapSize :uintptr, - fixedHeapAllocations :uintptr, - coreRegions :uintptr, - kernelRegions :uintptr, -} - -SnapshotProcesses :: struct { - count :uintptr, - processes :[]SnapshotProcessesItem, -} - -POSIXSyscall :: struct { - index :int, - arguments :[7]int, -} - -ProcessCreationArguments :: struct { - executablePath :^i8, - executablePathBytes :uintptr, - environmentBlock :^rawptr, - environmentBlockBytes :uintptr, - creationArgument :Generic, - permissions :u64, -} - -UserLoginArguments :: struct { - name :^i8, - nameBytes :uintptr, - home :^i8, - homeBytes :uintptr, -} - -Instance :: struct { - _private :^rawptr, -} - -ListViewColumn :: struct { - title :^i8, - titleBytes :uintptr, - width :i32, - minimumWidth :i32, - flags :u32, -} - -ListViewStyle :: struct { - fixedWidth :i32, - fixedHeight :i32, - groupHeaderHeight :i32, - gapX :i32, - gapY :i32, - margin :Rectangle16, - columns :^ListViewColumn, - columnCount :uintptr, - emptyMessage :^i8, - emptyMessageBytes :uintptr, -} - -NumericEntryProperties :: struct { - value :i32, - dp :i32, - delta :i32, - speed :i32, - minimum :i32, - maximum :i32, - cPrefix :^i8, - cSuffix :^i8, -} - -Batch :: inline proc (calls :^BatchCall, count :uintptr){ addr := 0x1000 + 0 * size_of(int); ((proc (^BatchCall, uintptr))(rawptr(((^uintptr)(uintptr(addr)))^)))(calls, count); } -ProcessCreate :: inline proc (executablePath :^i8, executablePathLength :uintptr, information :^ProcessInformation, argument :Generic) -> Error{ addr := 0x1000 + 1 * size_of(int); return ((proc (^i8, uintptr, ^ProcessInformation, Generic) -> Error)(rawptr(((^uintptr)(uintptr(addr)))^)))(executablePath, executablePathLength, information, argument); } -ThreadCreate :: inline proc (entryFunction :ThreadEntryFunction, information :^ThreadInformation, argument :Generic) -> Error{ addr := 0x1000 + 2 * size_of(int); return ((proc (ThreadEntryFunction, ^ThreadInformation, Generic) -> Error)(rawptr(((^uintptr)(uintptr(addr)))^)))(entryFunction, information, argument); } -SurfaceCreate :: inline proc (width :uintptr, height :uintptr, flags :u32) -> Handle{ addr := 0x1000 + 3 * size_of(int); return ((proc (uintptr, uintptr, u32) -> Handle)(rawptr(((^uintptr)(uintptr(addr)))^)))(width, height, flags); } -EventCreate :: inline proc (autoReset :bool) -> Handle{ addr := 0x1000 + 4 * size_of(int); return ((proc (bool) -> Handle)(rawptr(((^uintptr)(uintptr(addr)))^)))(autoReset); } -ThreadLocalStorageSetAddress :: inline proc (address :^rawptr){ addr := 0x1000 + 5 * size_of(int); ((proc (^rawptr))(rawptr(((^uintptr)(uintptr(addr)))^)))(address); } -ConstantBufferRead :: inline proc (constantBuffer :Handle, output :^rawptr){ addr := 0x1000 + 6 * size_of(int); ((proc (Handle, ^rawptr))(rawptr(((^uintptr)(uintptr(addr)))^)))(constantBuffer, output); } -ConstantBufferShare :: inline proc (constantBuffer :Handle, targetProcess :Handle) -> Handle{ addr := 0x1000 + 7 * size_of(int); return ((proc (Handle, Handle) -> Handle)(rawptr(((^uintptr)(uintptr(addr)))^)))(constantBuffer, targetProcess); } -ConstantBufferCreate :: inline proc (data :^rawptr, dataBytes :uintptr, targetProcess :Handle) -> Handle{ addr := 0x1000 + 8 * size_of(int); return ((proc (^rawptr, uintptr, Handle) -> Handle)(rawptr(((^uintptr)(uintptr(addr)))^)))(data, dataBytes, targetProcess); } -ProcessOpen :: inline proc (pid :u64) -> Handle{ addr := 0x1000 + 9 * size_of(int); return ((proc (u64) -> Handle)(rawptr(((^uintptr)(uintptr(addr)))^)))(pid); } -HandleClose :: inline proc (handle :Handle) -> Error{ addr := 0x1000 + 10 * size_of(int); return ((proc (Handle) -> Error)(rawptr(((^uintptr)(uintptr(addr)))^)))(handle); } -TakeSystemSnapshot :: inline proc (type :i32, bufferSize :^uintptr) -> Handle{ addr := 0x1000 + 11 * size_of(int); return ((proc (i32, ^uintptr) -> Handle)(rawptr(((^uintptr)(uintptr(addr)))^)))(type, bufferSize); } -GetSystemInformation :: inline proc (systemInformation :^SystemInformation){ addr := 0x1000 + 12 * size_of(int); ((proc (^SystemInformation))(rawptr(((^uintptr)(uintptr(addr)))^)))(systemInformation); } -NodeOpen :: inline proc (path :^i8, pathLength :uintptr, flags :u64, information :^NodeInformation) -> Error{ addr := 0x1000 + 13 * size_of(int); return ((proc (^i8, uintptr, u64, ^NodeInformation) -> Error)(rawptr(((^uintptr)(uintptr(addr)))^)))(path, pathLength, flags, information); } -NodeFindUniqueName :: inline proc (buffer :^i8, originalBytes :uintptr, bufferBytes :uintptr) -> uintptr{ addr := 0x1000 + 14 * size_of(int); return ((proc (^i8, uintptr, uintptr) -> uintptr)(rawptr(((^uintptr)(uintptr(addr)))^)))(buffer, originalBytes, bufferBytes); } -FileReadAll :: inline proc (filePath :^i8, filePathLength :uintptr, fileSize :^uintptr){ addr := 0x1000 + 15 * size_of(int); ((proc (^i8, uintptr, ^uintptr))(rawptr(((^uintptr)(uintptr(addr)))^)))(filePath, filePathLength, fileSize); } -FileReadSync :: inline proc (file :Handle, offset :FileOffset, size :uintptr, buffer :^rawptr) -> uintptr{ addr := 0x1000 + 16 * size_of(int); return ((proc (Handle, FileOffset, uintptr, ^rawptr) -> uintptr)(rawptr(((^uintptr)(uintptr(addr)))^)))(file, offset, size, buffer); } -FileWriteSync :: inline proc (file :Handle, offset :FileOffset, size :uintptr, buffer :^rawptr) -> uintptr{ addr := 0x1000 + 17 * size_of(int); return ((proc (Handle, FileOffset, uintptr, ^rawptr) -> uintptr)(rawptr(((^uintptr)(uintptr(addr)))^)))(file, offset, size, buffer); } -FileResize :: inline proc (file :Handle, newSize :FileOffset) -> Error{ addr := 0x1000 + 18 * size_of(int); return ((proc (Handle, FileOffset) -> Error)(rawptr(((^uintptr)(uintptr(addr)))^)))(file, newSize); } -NodeRefreshInformation :: inline proc (information :^NodeInformation){ addr := 0x1000 + 19 * size_of(int); ((proc (^NodeInformation))(rawptr(((^uintptr)(uintptr(addr)))^)))(information); } -DirectoryEnumerateChildren :: inline proc (directory :Handle, buffer :^DirectoryChild, bufferCount :uintptr) -> int{ addr := 0x1000 + 20 * size_of(int); return ((proc (Handle, ^DirectoryChild, uintptr) -> int)(rawptr(((^uintptr)(uintptr(addr)))^)))(directory, buffer, bufferCount); } -NodeDelete :: inline proc (node :Handle) -> Error{ addr := 0x1000 + 21 * size_of(int); return ((proc (Handle) -> Error)(rawptr(((^uintptr)(uintptr(addr)))^)))(node); } -NodeMove :: inline proc (node :Handle, newDirectory :Handle, newName :^i8, newNameLength :uintptr) -> Error{ addr := 0x1000 + 22 * size_of(int); return ((proc (Handle, Handle, ^i8, uintptr) -> Error)(rawptr(((^uintptr)(uintptr(addr)))^)))(node, newDirectory, newName, newNameLength); } -ThreadTerminate :: inline proc (thread :Handle){ addr := 0x1000 + 23 * size_of(int); ((proc (Handle))(rawptr(((^uintptr)(uintptr(addr)))^)))(thread); } -ProcessTerminate :: inline proc (process :Handle, status :i32){ addr := 0x1000 + 24 * size_of(int); ((proc (Handle, i32))(rawptr(((^uintptr)(uintptr(addr)))^)))(process, status); } -ProcessTerminateCurrent :: inline proc (){ addr := 0x1000 + 25 * size_of(int); ((proc ())(rawptr(((^uintptr)(uintptr(addr)))^)))(); } -ProcessPause :: inline proc (process :Handle, resume :bool){ addr := 0x1000 + 26 * size_of(int); ((proc (Handle, bool))(rawptr(((^uintptr)(uintptr(addr)))^)))(process, resume); } -ProcessCrash :: inline proc (error :Error, message :^i8, messageBytes :uintptr){ addr := 0x1000 + 27 * size_of(int); ((proc (Error, ^i8, uintptr))(rawptr(((^uintptr)(uintptr(addr)))^)))(error, message, messageBytes); } -ThreadGetID :: inline proc (thread :Handle) -> uintptr{ addr := 0x1000 + 28 * size_of(int); return ((proc (Handle) -> uintptr)(rawptr(((^uintptr)(uintptr(addr)))^)))(thread); } -ProcessGetID :: inline proc (process :Handle) -> uintptr{ addr := 0x1000 + 29 * size_of(int); return ((proc (Handle) -> uintptr)(rawptr(((^uintptr)(uintptr(addr)))^)))(process); } -SpinlockRelease :: inline proc (spinlock :^Spinlock){ addr := 0x1000 + 30 * size_of(int); ((proc (^Spinlock))(rawptr(((^uintptr)(uintptr(addr)))^)))(spinlock); } -SpinlockAcquire :: inline proc (spinlock :^Spinlock){ addr := 0x1000 + 31 * size_of(int); ((proc (^Spinlock))(rawptr(((^uintptr)(uintptr(addr)))^)))(spinlock); } -MutexRelease :: inline proc (mutex :^Mutex){ addr := 0x1000 + 32 * size_of(int); ((proc (^Mutex))(rawptr(((^uintptr)(uintptr(addr)))^)))(mutex); } -MutexAcquire :: inline proc (mutex :^Mutex){ addr := 0x1000 + 33 * size_of(int); ((proc (^Mutex))(rawptr(((^uintptr)(uintptr(addr)))^)))(mutex); } -MutexDestroy :: inline proc (mutex :^Mutex){ addr := 0x1000 + 34 * size_of(int); ((proc (^Mutex))(rawptr(((^uintptr)(uintptr(addr)))^)))(mutex); } -SchedulerYield :: inline proc (){ addr := 0x1000 + 35 * size_of(int); ((proc ())(rawptr(((^uintptr)(uintptr(addr)))^)))(); } -EventSet :: inline proc (event :Handle){ addr := 0x1000 + 36 * size_of(int); ((proc (Handle))(rawptr(((^uintptr)(uintptr(addr)))^)))(event); } -EventReset :: inline proc (event :Handle){ addr := 0x1000 + 37 * size_of(int); ((proc (Handle))(rawptr(((^uintptr)(uintptr(addr)))^)))(event); } -EventPoll :: inline proc (event :Handle) -> Error{ addr := 0x1000 + 38 * size_of(int); return ((proc (Handle) -> Error)(rawptr(((^uintptr)(uintptr(addr)))^)))(event); } -Wait :: inline proc (objects :^Handle, objectCount :uintptr, timeoutMs :uintptr) -> uintptr{ addr := 0x1000 + 39 * size_of(int); return ((proc (^Handle, uintptr, uintptr) -> uintptr)(rawptr(((^uintptr)(uintptr(addr)))^)))(objects, objectCount, timeoutMs); } -Sleep :: inline proc (milliseconds :u64){ addr := 0x1000 + 40 * size_of(int); ((proc (u64))(rawptr(((^uintptr)(uintptr(addr)))^)))(milliseconds); } -MemoryOpen :: inline proc (size :uintptr, name :^i8, nameLength :uintptr, flags :u32) -> Handle{ addr := 0x1000 + 41 * size_of(int); return ((proc (uintptr, ^i8, uintptr, u32) -> Handle)(rawptr(((^uintptr)(uintptr(addr)))^)))(size, name, nameLength, flags); } -MemoryShare :: inline proc (sharedMemoryRegion :Handle, targetProcess :Handle, readOnly :bool) -> Handle{ addr := 0x1000 + 42 * size_of(int); return ((proc (Handle, Handle, bool) -> Handle)(rawptr(((^uintptr)(uintptr(addr)))^)))(sharedMemoryRegion, targetProcess, readOnly); } -ObjectMap :: inline proc (object :Handle, offset :uintptr, size :uintptr, flags :u32){ addr := 0x1000 + 43 * size_of(int); ((proc (Handle, uintptr, uintptr, u32))(rawptr(((^uintptr)(uintptr(addr)))^)))(object, offset, size, flags); } -MemoryAllocate :: inline proc (size :uintptr){ addr := 0x1000 + 44 * size_of(int); ((proc (uintptr))(rawptr(((^uintptr)(uintptr(addr)))^)))(size); } -MemoryFree :: inline proc (address :^rawptr) -> Error{ addr := 0x1000 + 45 * size_of(int); return ((proc (^rawptr) -> Error)(rawptr(((^uintptr)(uintptr(addr)))^)))(address); } -GetCreationArgument :: inline proc (object :Handle) -> Generic{ addr := 0x1000 + 46 * size_of(int); return ((proc (Handle) -> Generic)(rawptr(((^uintptr)(uintptr(addr)))^)))(object); } -ProcessGetState :: inline proc (process :Handle, state :^ProcessState){ addr := 0x1000 + 47 * size_of(int); ((proc (Handle, ^ProcessState))(rawptr(((^uintptr)(uintptr(addr)))^)))(process, state); } -SurfaceGetLinearBuffer :: inline proc (surface :Handle, linearBuffer :^LinearBuffer){ addr := 0x1000 + 48 * size_of(int); ((proc (Handle, ^LinearBuffer))(rawptr(((^uintptr)(uintptr(addr)))^)))(surface, linearBuffer); } -RectangleInvalidate :: inline proc (surface :Handle, rectangle :Rectangle){ addr := 0x1000 + 49 * size_of(int); ((proc (Handle, Rectangle))(rawptr(((^uintptr)(uintptr(addr)))^)))(surface, rectangle); } -CopyToScreen :: inline proc (source :Handle, point :Point, depth :u16){ addr := 0x1000 + 50 * size_of(int); ((proc (Handle, Point, u16))(rawptr(((^uintptr)(uintptr(addr)))^)))(source, point, depth); } -ForceScreenUpdate :: inline proc (){ addr := 0x1000 + 51 * size_of(int); ((proc ())(rawptr(((^uintptr)(uintptr(addr)))^)))(); } -DrawRectangle :: inline proc (surface :Handle, rectangle :Rectangle, color :Color){ addr := 0x1000 + 52 * size_of(int); ((proc (Handle, Rectangle, Color))(rawptr(((^uintptr)(uintptr(addr)))^)))(surface, rectangle, color); } -DrawRectangleClipped :: inline proc (surface :Handle, rectangle :Rectangle, color :Color, clipRegion :Rectangle){ addr := 0x1000 + 53 * size_of(int); ((proc (Handle, Rectangle, Color, Rectangle))(rawptr(((^uintptr)(uintptr(addr)))^)))(surface, rectangle, color, clipRegion); } -DrawSurfaceBlit :: inline proc (destination :Handle, source :Handle, destinationPoint :Point){ addr := 0x1000 + 54 * size_of(int); ((proc (Handle, Handle, Point))(rawptr(((^uintptr)(uintptr(addr)))^)))(destination, source, destinationPoint); } -DrawSurface :: inline proc (destination :Handle, source :Handle, destinationRegion :Rectangle, sourceRegion :Rectangle, borderRegion :Rectangle, mode :DrawMode, alpha :u16) -> Error{ addr := 0x1000 + 55 * size_of(int); return ((proc (Handle, Handle, Rectangle, Rectangle, Rectangle, DrawMode, u16) -> Error)(rawptr(((^uintptr)(uintptr(addr)))^)))(destination, source, destinationRegion, sourceRegion, borderRegion, mode, alpha); } -DrawSurfaceClipped :: inline proc (destination :Handle, source :Handle, destinationRegion :Rectangle, sourceRegion :Rectangle, borderRegion :Rectangle, mode :DrawMode, alpha :u16, clipRegion :Rectangle) -> Error{ addr := 0x1000 + 56 * size_of(int); return ((proc (Handle, Handle, Rectangle, Rectangle, Rectangle, DrawMode, u16, Rectangle) -> Error)(rawptr(((^uintptr)(uintptr(addr)))^)))(destination, source, destinationRegion, sourceRegion, borderRegion, mode, alpha, clipRegion); } -DrawBitmap :: inline proc (destination :Handle, destinationPoint :Point, bitmap :^rawptr, width :uintptr, height :uintptr, stride :uintptr, colorFormat :ColorFormat){ addr := 0x1000 + 57 * size_of(int); ((proc (Handle, Point, ^rawptr, uintptr, uintptr, uintptr, ColorFormat))(rawptr(((^uintptr)(uintptr(addr)))^)))(destination, destinationPoint, bitmap, width, height, stride, colorFormat); } -SurfaceClearInvalidatedRegion :: inline proc (surface :Handle){ addr := 0x1000 + 58 * size_of(int); ((proc (Handle))(rawptr(((^uintptr)(uintptr(addr)))^)))(surface); } -RectangleClip :: inline proc (parent :Rectangle, rectangle :Rectangle, output :^Rectangle) -> bool{ addr := 0x1000 + 59 * size_of(int); return ((proc (Rectangle, Rectangle, ^Rectangle) -> bool)(rawptr(((^uintptr)(uintptr(addr)))^)))(parent, rectangle, output); } -DrawBox :: inline proc (surface :Handle, rectangle :Rectangle, style :u8, color :u32, clipRegion :Rectangle){ addr := 0x1000 + 60 * size_of(int); ((proc (Handle, Rectangle, u8, u32, Rectangle))(rawptr(((^uintptr)(uintptr(addr)))^)))(surface, rectangle, style, color, clipRegion); } -RedrawAll :: inline proc (){ addr := 0x1000 + 61 * size_of(int); ((proc ())(rawptr(((^uintptr)(uintptr(addr)))^)))(); } -MessagePost :: inline proc (message :^Message) -> Error{ addr := 0x1000 + 62 * size_of(int); return ((proc (^Message) -> Error)(rawptr(((^uintptr)(uintptr(addr)))^)))(message); } -MessagePostRemote :: inline proc (process :Handle, message :^Message) -> Error{ addr := 0x1000 + 63 * size_of(int); return ((proc (Handle, ^Message) -> Error)(rawptr(((^uintptr)(uintptr(addr)))^)))(process, message); } -ExtractArguments :: inline proc (string :^i8, bytes :uintptr, delimiterByte :u8, replacementDelimiter :u8, argvAllocated :uintptr, argv :^^i8, argc :^uintptr) -> bool{ addr := 0x1000 + 64 * size_of(int); return ((proc (^i8, uintptr, u8, u8, uintptr, ^^i8, ^uintptr) -> bool)(rawptr(((^uintptr)(uintptr(addr)))^)))(string, bytes, delimiterByte, replacementDelimiter, argvAllocated, argv, argc); } -CStringLength :: inline proc (string :^i8) -> uintptr{ addr := 0x1000 + 65 * size_of(int); return ((proc (^i8) -> uintptr)(rawptr(((^uintptr)(uintptr(addr)))^)))(string); } -StringLength :: inline proc (string :^i8, end :u8) -> uintptr{ addr := 0x1000 + 66 * size_of(int); return ((proc (^i8, u8) -> uintptr)(rawptr(((^uintptr)(uintptr(addr)))^)))(string, end); } -MemoryCopy :: inline proc (destination :^rawptr, source :^rawptr, bytes :uintptr){ addr := 0x1000 + 67 * size_of(int); ((proc (^rawptr, ^rawptr, uintptr))(rawptr(((^uintptr)(uintptr(addr)))^)))(destination, source, bytes); } -MemoryMove :: inline proc (_start :^rawptr, _end :^rawptr, amount :int, zeroEmptySpace :bool){ addr := 0x1000 + 68 * size_of(int); ((proc (^rawptr, ^rawptr, int, bool))(rawptr(((^uintptr)(uintptr(addr)))^)))(_start, _end, amount, zeroEmptySpace); } -MemoryCopyReverse :: inline proc (_destination :^rawptr, _source :^rawptr, bytes :uintptr){ addr := 0x1000 + 69 * size_of(int); ((proc (^rawptr, ^rawptr, uintptr))(rawptr(((^uintptr)(uintptr(addr)))^)))(_destination, _source, bytes); } -MemoryZero :: inline proc (destination :^rawptr, bytes :uintptr){ addr := 0x1000 + 70 * size_of(int); ((proc (^rawptr, uintptr))(rawptr(((^uintptr)(uintptr(addr)))^)))(destination, bytes); } -MemoryCompare :: inline proc (a :^rawptr, b :^rawptr, bytes :uintptr) -> i32{ addr := 0x1000 + 71 * size_of(int); return ((proc (^rawptr, ^rawptr, uintptr) -> i32)(rawptr(((^uintptr)(uintptr(addr)))^)))(a, b, bytes); } -MemorySumBytes :: inline proc (data :^u8, bytes :uintptr) -> u8{ addr := 0x1000 + 72 * size_of(int); return ((proc (^u8, uintptr) -> u8)(rawptr(((^uintptr)(uintptr(addr)))^)))(data, bytes); } -PrintDirect :: inline proc (string :^i8, stringLength :uintptr){ addr := 0x1000 + 73 * size_of(int); ((proc (^i8, uintptr))(rawptr(((^uintptr)(uintptr(addr)))^)))(string, stringLength); } -StringFormat :: inline proc (buffer :^i8, bufferLength :uintptr, format :^i8, args : ..any) -> uintptr{ addr := 0x1000 + 74 * size_of(int); return ((proc (^i8, uintptr, ^i8, ..any) -> uintptr)(rawptr(((^uintptr)(uintptr(addr)))^)))(buffer, bufferLength, format, ); } -StringFormatAppend :: inline proc (buffer :^i8, bufferLength :uintptr, bufferPosition :^uintptr, format :^i8, args : ..any){ addr := 0x1000 + 75 * size_of(int); ((proc (^i8, uintptr, ^uintptr, ^i8, ..any))(rawptr(((^uintptr)(uintptr(addr)))^)))(buffer, bufferLength, bufferPosition, format, ); } -PrintHelloWorld :: inline proc (){ addr := 0x1000 + 76 * size_of(int); ((proc ())(rawptr(((^uintptr)(uintptr(addr)))^)))(); } -GetRandomByte :: inline proc () -> u8{ addr := 0x1000 + 77 * size_of(int); return ((proc () -> u8)(rawptr(((^uintptr)(uintptr(addr)))^)))(); } -Sort :: inline proc (_base :^rawptr, nmemb :uintptr, size :uintptr, compar :ComparisonCallbackFunction, argument :Generic){ addr := 0x1000 + 78 * size_of(int); ((proc (^rawptr, uintptr, uintptr, ComparisonCallbackFunction, Generic))(rawptr(((^uintptr)(uintptr(addr)))^)))(_base, nmemb, size, compar, argument); } -SortWithSwapCallback :: inline proc (_base :^rawptr, nmemb :uintptr, size :uintptr, compar :ComparisonCallbackFunction, argument :Generic, swap :SwapCallbackFunction){ addr := 0x1000 + 79 * size_of(int); ((proc (^rawptr, uintptr, uintptr, ComparisonCallbackFunction, Generic, SwapCallbackFunction))(rawptr(((^uintptr)(uintptr(addr)))^)))(_base, nmemb, size, compar, argument, swap); } -StringCompare :: inline proc (s1 :^i8, s2 :^i8, length1 :uintptr, length2 :uintptr) -> i32{ addr := 0x1000 + 80 * size_of(int); return ((proc (^i8, ^i8, uintptr, uintptr) -> i32)(rawptr(((^uintptr)(uintptr(addr)))^)))(s1, s2, length1, length2); } -IntegerParse :: inline proc (text :^i8, bytes :uintptr) -> i64{ addr := 0x1000 + 81 * size_of(int); return ((proc (^i8, uintptr) -> i64)(rawptr(((^uintptr)(uintptr(addr)))^)))(text, bytes); } -CRTmemset :: inline proc (s :^rawptr, c :i32, n :uintptr){ addr := 0x1000 + 82 * size_of(int); ((proc (^rawptr, i32, uintptr))(rawptr(((^uintptr)(uintptr(addr)))^)))(s, c, n); } -CRTmemcpy :: inline proc (dest :^rawptr, src :^rawptr, n :uintptr){ addr := 0x1000 + 83 * size_of(int); ((proc (^rawptr, ^rawptr, uintptr))(rawptr(((^uintptr)(uintptr(addr)))^)))(dest, src, n); } -CRTmemmove :: inline proc (dest :^rawptr, src :^rawptr, n :uintptr){ addr := 0x1000 + 84 * size_of(int); ((proc (^rawptr, ^rawptr, uintptr))(rawptr(((^uintptr)(uintptr(addr)))^)))(dest, src, n); } -CRTstrlen :: inline proc (s :^i8) -> uintptr{ addr := 0x1000 + 85 * size_of(int); return ((proc (^i8) -> uintptr)(rawptr(((^uintptr)(uintptr(addr)))^)))(s); } -CRTstrnlen :: inline proc (s :^i8, maxlen :uintptr) -> uintptr{ addr := 0x1000 + 86 * size_of(int); return ((proc (^i8, uintptr) -> uintptr)(rawptr(((^uintptr)(uintptr(addr)))^)))(s, maxlen); } -CRTmalloc :: inline proc (size :uintptr){ addr := 0x1000 + 87 * size_of(int); ((proc (uintptr))(rawptr(((^uintptr)(uintptr(addr)))^)))(size); } -CRTcalloc :: inline proc (num :uintptr, size :uintptr){ addr := 0x1000 + 88 * size_of(int); ((proc (uintptr, uintptr))(rawptr(((^uintptr)(uintptr(addr)))^)))(num, size); } -CRTfree :: inline proc (ptr :^rawptr){ addr := 0x1000 + 89 * size_of(int); ((proc (^rawptr))(rawptr(((^uintptr)(uintptr(addr)))^)))(ptr); } -CRTabs :: inline proc (n :i32) -> i32{ addr := 0x1000 + 90 * size_of(int); return ((proc (i32) -> i32)(rawptr(((^uintptr)(uintptr(addr)))^)))(n); } -CRTrealloc :: inline proc (ptr :^rawptr, size :uintptr){ addr := 0x1000 + 91 * size_of(int); ((proc (^rawptr, uintptr))(rawptr(((^uintptr)(uintptr(addr)))^)))(ptr, size); } -CRTgetenv :: inline proc (name :^i8) -> ^i8{ addr := 0x1000 + 92 * size_of(int); return ((proc (^i8) -> ^i8)(rawptr(((^uintptr)(uintptr(addr)))^)))(name); } -CRTstrncmp :: inline proc (s1 :^i8, s2 :^i8, n :uintptr) -> i32{ addr := 0x1000 + 93 * size_of(int); return ((proc (^i8, ^i8, uintptr) -> i32)(rawptr(((^uintptr)(uintptr(addr)))^)))(s1, s2, n); } -CRTmemcmp :: inline proc (s1 :^rawptr, s2 :^rawptr, n :uintptr) -> i32{ addr := 0x1000 + 94 * size_of(int); return ((proc (^rawptr, ^rawptr, uintptr) -> i32)(rawptr(((^uintptr)(uintptr(addr)))^)))(s1, s2, n); } -CRTqsort :: inline proc (_base :^rawptr, nmemb :uintptr, size :uintptr, compar :CRTComparisonCallback){ addr := 0x1000 + 95 * size_of(int); ((proc (^rawptr, uintptr, uintptr, CRTComparisonCallback))(rawptr(((^uintptr)(uintptr(addr)))^)))(_base, nmemb, size, compar); } -CRTstrcmp :: inline proc (s1 :^i8, s2 :^i8) -> i32{ addr := 0x1000 + 96 * size_of(int); return ((proc (^i8, ^i8) -> i32)(rawptr(((^uintptr)(uintptr(addr)))^)))(s1, s2); } -CRTstrstr :: inline proc (haystack :^i8, needle :^i8) -> ^i8{ addr := 0x1000 + 97 * size_of(int); return ((proc (^i8, ^i8) -> ^i8)(rawptr(((^uintptr)(uintptr(addr)))^)))(haystack, needle); } -CRTstrcpy :: inline proc (dest :^i8, src :^i8) -> ^i8{ addr := 0x1000 + 98 * size_of(int); return ((proc (^i8, ^i8) -> ^i8)(rawptr(((^uintptr)(uintptr(addr)))^)))(dest, src); } -CRTisalpha :: inline proc (c :i32) -> i32{ addr := 0x1000 + 99 * size_of(int); return ((proc (i32) -> i32)(rawptr(((^uintptr)(uintptr(addr)))^)))(c); } -CRTmemchr :: inline proc (_s :^rawptr, _c :i32, n :uintptr){ addr := 0x1000 + 100 * size_of(int); ((proc (^rawptr, i32, uintptr))(rawptr(((^uintptr)(uintptr(addr)))^)))(_s, _c, n); } -CRTisdigit :: inline proc (c :i32) -> i32{ addr := 0x1000 + 101 * size_of(int); return ((proc (i32) -> i32)(rawptr(((^uintptr)(uintptr(addr)))^)))(c); } -CRTstrcat :: inline proc (dest :^i8, src :^i8) -> ^i8{ addr := 0x1000 + 102 * size_of(int); return ((proc (^i8, ^i8) -> ^i8)(rawptr(((^uintptr)(uintptr(addr)))^)))(dest, src); } -CRTtolower :: inline proc (c :i32) -> i32{ addr := 0x1000 + 103 * size_of(int); return ((proc (i32) -> i32)(rawptr(((^uintptr)(uintptr(addr)))^)))(c); } -CRTstrncpy :: inline proc (dest :^i8, src :^i8, n :uintptr) -> ^i8{ addr := 0x1000 + 104 * size_of(int); return ((proc (^i8, ^i8, uintptr) -> ^i8)(rawptr(((^uintptr)(uintptr(addr)))^)))(dest, src, n); } -CRTstrtoul :: inline proc (nptr :^i8, endptr :^^i8, base :i32) -> u64{ addr := 0x1000 + 105 * size_of(int); return ((proc (^i8, ^^i8, i32) -> u64)(rawptr(((^uintptr)(uintptr(addr)))^)))(nptr, endptr, base); } -Execute :: inline proc (what :^i8, whatBytes :uintptr, argument :^i8, argumentBytes :uintptr){ addr := 0x1000 + 106 * size_of(int); ((proc (^i8, uintptr, ^i8, uintptr))(rawptr(((^uintptr)(uintptr(addr)))^)))(what, whatBytes, argument, argumentBytes); } -Abort :: inline proc (){ addr := 0x1000 + 107 * size_of(int); ((proc ())(rawptr(((^uintptr)(uintptr(addr)))^)))(); } -MailslotSendData :: inline proc (mailslot :Handle, data :^rawptr, bytes :uintptr) -> bool{ addr := 0x1000 + 108 * size_of(int); return ((proc (Handle, ^rawptr, uintptr) -> bool)(rawptr(((^uintptr)(uintptr(addr)))^)))(mailslot, data, bytes); } -CRTfloorf :: inline proc (x :f32) -> f32{ addr := 0x1000 + 109 * size_of(int); return ((proc (f32) -> f32)(rawptr(((^uintptr)(uintptr(addr)))^)))(x); } -CRTceilf :: inline proc (x :f32) -> f32{ addr := 0x1000 + 110 * size_of(int); return ((proc (f32) -> f32)(rawptr(((^uintptr)(uintptr(addr)))^)))(x); } -CRTsinf :: inline proc (x :f32) -> f32{ addr := 0x1000 + 111 * size_of(int); return ((proc (f32) -> f32)(rawptr(((^uintptr)(uintptr(addr)))^)))(x); } -CRTcosf :: inline proc (x :f32) -> f32{ addr := 0x1000 + 112 * size_of(int); return ((proc (f32) -> f32)(rawptr(((^uintptr)(uintptr(addr)))^)))(x); } -CRTatan2f :: inline proc (y :f32, x :f32) -> f32{ addr := 0x1000 + 113 * size_of(int); return ((proc (f32, f32) -> f32)(rawptr(((^uintptr)(uintptr(addr)))^)))(y, x); } -CRTfmodf :: inline proc (x :f32, y :f32) -> f32{ addr := 0x1000 + 114 * size_of(int); return ((proc (f32, f32) -> f32)(rawptr(((^uintptr)(uintptr(addr)))^)))(x, y); } -CRTacosf :: inline proc (x :f32) -> f32{ addr := 0x1000 + 115 * size_of(int); return ((proc (f32) -> f32)(rawptr(((^uintptr)(uintptr(addr)))^)))(x); } -CRTasinf :: inline proc (x :f32) -> f32{ addr := 0x1000 + 116 * size_of(int); return ((proc (f32) -> f32)(rawptr(((^uintptr)(uintptr(addr)))^)))(x); } -CRTatanf :: inline proc (x :f32) -> f32{ addr := 0x1000 + 117 * size_of(int); return ((proc (f32) -> f32)(rawptr(((^uintptr)(uintptr(addr)))^)))(x); } -RandomSeed :: inline proc (x :u64){ addr := 0x1000 + 118 * size_of(int); ((proc (u64))(rawptr(((^uintptr)(uintptr(addr)))^)))(x); } -CRTsqrtf :: inline proc (x :f32) -> f32{ addr := 0x1000 + 119 * size_of(int); return ((proc (f32) -> f32)(rawptr(((^uintptr)(uintptr(addr)))^)))(x); } -CRTsqrtl :: inline proc (x :LongDouble) -> LongDouble{ addr := 0x1000 + 120 * size_of(int); return ((proc (LongDouble) -> LongDouble)(rawptr(((^uintptr)(uintptr(addr)))^)))(x); } -CRTfabsl :: inline proc (x :LongDouble) -> LongDouble{ addr := 0x1000 + 121 * size_of(int); return ((proc (LongDouble) -> LongDouble)(rawptr(((^uintptr)(uintptr(addr)))^)))(x); } -Syscall :: inline proc (a :uintptr, b :uintptr, c :uintptr, d :uintptr, e :uintptr, f :uintptr) -> uintptr{ addr := 0x1000 + 122 * size_of(int); return ((proc (uintptr, uintptr, uintptr, uintptr, uintptr, uintptr) -> uintptr)(rawptr(((^uintptr)(uintptr(addr)))^)))(a, b, c, d, e, f); } -ProcessorReadTimeStamp :: inline proc () -> u64{ addr := 0x1000 + 123 * size_of(int); return ((proc () -> u64)(rawptr(((^uintptr)(uintptr(addr)))^)))(); } -HeapAllocate :: inline proc (size :uintptr, zeroMemory :bool){ addr := 0x1000 + 124 * size_of(int); ((proc (uintptr, bool))(rawptr(((^uintptr)(uintptr(addr)))^)))(size, zeroMemory); } -HeapFree :: inline proc (address :^rawptr){ addr := 0x1000 + 125 * size_of(int); ((proc (^rawptr))(rawptr(((^uintptr)(uintptr(addr)))^)))(address); } -Print :: inline proc (format :^i8, args : ..any){ addr := 0x1000 + 126 * size_of(int); ((proc (^i8, ..any))(rawptr(((^uintptr)(uintptr(addr)))^)))(format, ); } -MemoryFill :: inline proc (from :^rawptr, to :^rawptr, byte :u8){ addr := 0x1000 + 127 * size_of(int); ((proc (^rawptr, ^rawptr, u8))(rawptr(((^uintptr)(uintptr(addr)))^)))(from, to, byte); } -InitialiseCStandardLibrary :: inline proc (argc :^i32, argv :^^^i8){ addr := 0x1000 + 128 * size_of(int); ((proc (^i32, ^^^i8))(rawptr(((^uintptr)(uintptr(addr)))^)))(argc, argv); } -MakeLinuxSystemCall2 :: inline proc (n :int, a1 :int, a2 :int, a3 :int, a4 :int, a5 :int, a6 :int) -> int{ addr := 0x1000 + 129 * size_of(int); return ((proc (int, int, int, int, int, int, int) -> int)(rawptr(((^uintptr)(uintptr(addr)))^)))(n, a1, a2, a3, a4, a5, a6); } -ProcessCreate2 :: inline proc (arguments :^ProcessCreationArguments, information :^ProcessInformation) -> Error{ addr := 0x1000 + 130 * size_of(int); return ((proc (^ProcessCreationArguments, ^ProcessInformation) -> Error)(rawptr(((^uintptr)(uintptr(addr)))^)))(arguments, information); } -CRTatoi :: inline proc (string :^i8) -> i32{ addr := 0x1000 + 131 * size_of(int); return ((proc (^i8) -> i32)(rawptr(((^uintptr)(uintptr(addr)))^)))(string); } -ProcessGetExitStatus :: inline proc (process :Handle) -> i32{ addr := 0x1000 + 132 * size_of(int); return ((proc (Handle) -> i32)(rawptr(((^uintptr)(uintptr(addr)))^)))(process); } -SurfaceReset :: inline proc (surface :Handle){ addr := 0x1000 + 133 * size_of(int); ((proc (Handle))(rawptr(((^uintptr)(uintptr(addr)))^)))(surface); } -TimerCreate :: inline proc () -> Handle{ addr := 0x1000 + 134 * size_of(int); return ((proc () -> Handle)(rawptr(((^uintptr)(uintptr(addr)))^)))(); } -TimerSet :: inline proc (handle :Handle, afterMs :u64, object :Object, argument :Generic){ addr := 0x1000 + 135 * size_of(int); ((proc (Handle, u64, Object, Generic))(rawptr(((^uintptr)(uintptr(addr)))^)))(handle, afterMs, object, argument); } -FileWriteAll :: inline proc (filePath :^i8, filePathLength :uintptr, data :^rawptr, fileSize :uintptr) -> Error{ addr := 0x1000 + 136 * size_of(int); return ((proc (^i8, uintptr, ^rawptr, uintptr) -> Error)(rawptr(((^uintptr)(uintptr(addr)))^)))(filePath, filePathLength, data, fileSize); } -UserGetHomeFolder :: inline proc (buffer :^i8, bufferBytes :uintptr) -> uintptr{ addr := 0x1000 + 137 * size_of(int); return ((proc (^i8, uintptr) -> uintptr)(rawptr(((^uintptr)(uintptr(addr)))^)))(buffer, bufferBytes); } -Assert :: inline proc (expression :bool, failureMessage :^i8){ addr := 0x1000 + 138 * size_of(int); ((proc (bool, ^i8))(rawptr(((^uintptr)(uintptr(addr)))^)))(expression, failureMessage); } -ResizeArray :: inline proc (array :^^rawptr, allocated :^uintptr, needed :uintptr, itemSize :uintptr){ addr := 0x1000 + 139 * size_of(int); ((proc (^^rawptr, ^uintptr, uintptr, uintptr))(rawptr(((^uintptr)(uintptr(addr)))^)))(array, allocated, needed, itemSize); } -MessageLoopEnter :: inline proc (callback :MessageCallbackFunction = nil){ addr := 0x1000 + 140 * size_of(int); ((proc (MessageCallbackFunction))(rawptr(((^uintptr)(uintptr(addr)))^)))(callback); } -InstanceCreate :: inline proc (bytes :uintptr) -> ^Instance{ addr := 0x1000 + 141 * size_of(int); return ((proc (uintptr) -> ^Instance)(rawptr(((^uintptr)(uintptr(addr)))^)))(bytes); } -MouseGetPosition :: inline proc (relativeWindow :^Window = nil) -> Point{ addr := 0x1000 + 142 * size_of(int); return ((proc (^Window) -> Point)(rawptr(((^uintptr)(uintptr(addr)))^)))(relativeWindow); } -MouseSetPosition :: inline proc (relativeWindow :^Window, x :i32, y :i32){ addr := 0x1000 + 143 * size_of(int); ((proc (^Window, i32, i32))(rawptr(((^uintptr)(uintptr(addr)))^)))(relativeWindow, x, y); } -NewPanel :: inline proc (parent :^Element, cStyle :^i8, flags :u64 = FLAGS_DEFAULT) -> ^Panel{ addr := 0x1000 + 144 * size_of(int); return ((proc (^Element, ^i8, u64) -> ^Panel)(rawptr(((^uintptr)(uintptr(addr)))^)))(parent, cStyle, flags); } -NewCustomPanel :: inline proc (parent :^Element, style :Data, flags :u64 = FLAGS_DEFAULT) -> ^Panel{ addr := 0x1000 + 145 * size_of(int); return ((proc (^Element, Data, u64) -> ^Panel)(rawptr(((^uintptr)(uintptr(addr)))^)))(parent, style, flags); } -NewWindow :: inline proc (instance :^Instance, style :WindowStyle = WindowStyle.WINDOW_NORMAL) -> ^Window{ addr := 0x1000 + 146 * size_of(int); return ((proc (^Instance, WindowStyle) -> ^Window)(rawptr(((^uintptr)(uintptr(addr)))^)))(instance, style); } -NewScrollbar :: inline proc (parent :^Element, flags :u64 = FLAGS_DEFAULT, userCallback :UICallbackFunction = nil, _context :Generic = nil) -> ^Scrollbar{ addr := 0x1000 + 147 * size_of(int); return ((proc (^Element, u64, UICallbackFunction, Generic) -> ^Scrollbar)(rawptr(((^uintptr)(uintptr(addr)))^)))(parent, flags, userCallback, _context); } -NewButton :: inline proc (parent :^Element, label :^i8 = nil, labelBytes :int = -1, flags :u64 = FLAGS_DEFAULT, userCallback :UICallbackFunction = nil, _context :Generic = nil) -> ^Button{ addr := 0x1000 + 148 * size_of(int); return ((proc (^Element, ^i8, int, u64, UICallbackFunction, Generic) -> ^Button)(rawptr(((^uintptr)(uintptr(addr)))^)))(parent, label, labelBytes, flags, userCallback, _context); } -NewTextbox :: inline proc (parent :^Element, flags :u64 = FLAGS_DEFAULT, userCallback :UICallbackFunction = nil, _context :Generic = nil) -> ^Textbox{ addr := 0x1000 + 149 * size_of(int); return ((proc (^Element, u64, UICallbackFunction, Generic) -> ^Textbox)(rawptr(((^uintptr)(uintptr(addr)))^)))(parent, flags, userCallback, _context); } -NewNumericEntry :: inline proc (parent :^Element, flags :u64 = FLAGS_DEFAULT, userCallback :UICallbackFunction = nil, _context :Generic = nil) -> ^NumericEntry{ addr := 0x1000 + 150 * size_of(int); return ((proc (^Element, u64, UICallbackFunction, Generic) -> ^NumericEntry)(rawptr(((^uintptr)(uintptr(addr)))^)))(parent, flags, userCallback, _context); } -NewListView :: inline proc (parent :^Element, flags :u64 = FLAGS_DEFAULT, style :^ListViewStyle = nil, userCallback :UICallbackFunction = nil, _context :Generic = nil) -> ^ListView{ addr := 0x1000 + 151 * size_of(int); return ((proc (^Element, u64, ^ListViewStyle, UICallbackFunction, Generic) -> ^ListView)(rawptr(((^uintptr)(uintptr(addr)))^)))(parent, flags, style, userCallback, _context); } -NewMenu :: inline proc (parent :^Element, flags :u64 = FLAGS_DEFAULT, userCallback :MenuCallbackFunction = nil, _context :Generic = nil) -> ^Menu{ addr := 0x1000 + 152 * size_of(int); return ((proc (^Element, u64, MenuCallbackFunction, Generic) -> ^Menu)(rawptr(((^uintptr)(uintptr(addr)))^)))(parent, flags, userCallback, _context); } -NewMenuItem :: inline proc (parent :^Element, flags :u64, label :^i8, labelBytes :int = -1, callback :MenuCallbackFunction = nil, _context :Generic = nil){ addr := 0x1000 + 153 * size_of(int); ((proc (^Element, u64, ^i8, int, MenuCallbackFunction, Generic))(rawptr(((^uintptr)(uintptr(addr)))^)))(parent, flags, label, labelBytes, callback, _context); } -ElementGetInstance :: inline proc (element :^Element) -> ^INSTANCE_TYPE{ addr := 0x1000 + 154 * size_of(int); return ((proc (^Element) -> ^INSTANCE_TYPE)(rawptr(((^uintptr)(uintptr(addr)))^)))(element); } -ElementFocus :: inline proc (element :^Element, ensureVisible :bool){ addr := 0x1000 + 155 * size_of(int); ((proc (^Element, bool))(rawptr(((^uintptr)(uintptr(addr)))^)))(element, ensureVisible); } -ElementSetDisabled :: inline proc (element :^Element, disabled :bool){ addr := 0x1000 + 156 * size_of(int); ((proc (^Element, bool))(rawptr(((^uintptr)(uintptr(addr)))^)))(element, disabled); } -ElementSetCallback :: inline proc (element :^Element, callback :UICallbackFunction, _context :Generic){ addr := 0x1000 + 157 * size_of(int); ((proc (^Element, UICallbackFunction, Generic))(rawptr(((^uintptr)(uintptr(addr)))^)))(element, callback, _context); } -ScrollbarSetMeasurements :: inline proc (scrollbar :^Scrollbar, viewportSize :i32, contentSize :i32){ addr := 0x1000 + 158 * size_of(int); ((proc (^Scrollbar, i32, i32))(rawptr(((^uintptr)(uintptr(addr)))^)))(scrollbar, viewportSize, contentSize); } -ScrollbarSetPosition :: inline proc (scrollbar :^Scrollbar, position :f32, sendMovedMessage :bool, smoothScroll :bool){ addr := 0x1000 + 159 * size_of(int); ((proc (^Scrollbar, f32, bool, bool))(rawptr(((^uintptr)(uintptr(addr)))^)))(scrollbar, position, sendMovedMessage, smoothScroll); } -WindowGetBounds :: inline proc (window :^Window) -> Rectangle{ addr := 0x1000 + 160 * size_of(int); return ((proc (^Window) -> Rectangle)(rawptr(((^uintptr)(uintptr(addr)))^)))(window); } -WindowGetToolbar :: inline proc (window :^Window) -> ^Element{ addr := 0x1000 + 161 * size_of(int); return ((proc (^Window) -> ^Element)(rawptr(((^uintptr)(uintptr(addr)))^)))(window); } -ListViewInsert :: inline proc (listView :^ListView, group :ListViewIndex, index :ListViewIndex, count :uintptr){ addr := 0x1000 + 162 * size_of(int); ((proc (^ListView, ListViewIndex, ListViewIndex, uintptr))(rawptr(((^uintptr)(uintptr(addr)))^)))(listView, group, index, count); } -ListViewInsertGroup :: inline proc (listView :^ListView, group :ListViewIndex){ addr := 0x1000 + 163 * size_of(int); ((proc (^ListView, ListViewIndex))(rawptr(((^uintptr)(uintptr(addr)))^)))(listView, group); } -ListViewRemove :: inline proc (listView :^ListView, group :ListViewIndex, index :ListViewIndex, count :int, removedHeight :i32){ addr := 0x1000 + 164 * size_of(int); ((proc (^ListView, ListViewIndex, ListViewIndex, int, i32))(rawptr(((^uintptr)(uintptr(addr)))^)))(listView, group, index, count, removedHeight); } -ListViewRemoveGroup :: inline proc (listView :^ListView, group :ListViewIndex){ addr := 0x1000 + 165 * size_of(int); ((proc (^ListView, ListViewIndex))(rawptr(((^uintptr)(uintptr(addr)))^)))(listView, group); } -ListViewInvalidate :: inline proc (listView :^ListView, deltaHeight :i32, recalculateHeight :bool){ addr := 0x1000 + 166 * size_of(int); ((proc (^ListView, i32, bool))(rawptr(((^uintptr)(uintptr(addr)))^)))(listView, deltaHeight, recalculateHeight); } -ListViewEnsureVisible :: inline proc (listView :^ListView, group :ListViewIndex, index :ListViewIndex){ addr := 0x1000 + 167 * size_of(int); ((proc (^ListView, ListViewIndex, ListViewIndex))(rawptr(((^uintptr)(uintptr(addr)))^)))(listView, group, index); } -ListViewResetSearchBuffer :: inline proc (listView :^ListView){ addr := 0x1000 + 168 * size_of(int); ((proc (^ListView))(rawptr(((^uintptr)(uintptr(addr)))^)))(listView); } -ButtonSetIcon :: inline proc (button :^Button, iconID :u32){ addr := 0x1000 + 169 * size_of(int); ((proc (^Button, u32))(rawptr(((^uintptr)(uintptr(addr)))^)))(button, iconID); } -DataParse :: inline proc (cFormat :^i8, args : ..any) -> Data{ addr := 0x1000 + 170 * size_of(int); return ((proc (^i8, ..any) -> Data)(rawptr(((^uintptr)(uintptr(addr)))^)))(cFormat, ); } - - -////////////////////////////////////////////////////// - -Errno :: distinct i32; - -stdin: Handle = 0; -stdout: Handle = 1; -stderr: Handle = 2; - -O_RDONLY :: 0x00000; -O_WRONLY :: 0x00001; -O_RDWR :: 0x00002; -O_CREATE :: 0x00040; -O_EXCL :: 0x00080; -O_NOCTTY :: 0x00100; -O_TRUNC :: 0x00200; -O_NONBLOCK :: 0x00800; -O_APPEND :: 0x00400; -O_SYNC :: 0x01000; -O_ASYNC :: 0x02000; -O_CLOEXEC :: 0x80000; - -ERROR_SUCCESS :: 0; -ERROR_UNSUPPORTED :: 1; - -read :: proc(fd: Handle, data: []byte) -> (int, Errno) { - return -1, ERROR_UNSUPPORTED; -} - -write :: proc(fd: Handle, data: []byte) -> (int, Errno) { - if (fd == stdout) { - PrintDirect((^i8)(&data[0]), (uintptr)(len(data))); - return len(data), ERROR_SUCCESS; - } - - return -1, ERROR_UNSUPPORTED; -} - -open :: proc(path: string, flags: int = O_RDONLY, mode: int = 0) -> (Handle, Errno) { - return INVALID_HANDLE, ERROR_UNSUPPORTED; -} - -close :: proc(fd: Handle) -> Errno { - return ERROR_UNSUPPORTED; -} - -file_size :: proc(fd: Handle) -> (i64, Errno) { - return 0, ERROR_UNSUPPORTED; +current_thread_id :: proc "contextless" () -> int { + return (int) (es.ThreadGetID(es.CURRENT_THREAD)); } heap_alloc :: proc(size: int) -> rawptr { - return nil; -} - -heap_resize :: proc(ptr: rawptr, new_size: int) -> rawptr { - return nil; + return es.HeapAllocate(size, false); } heap_free :: proc(ptr: rawptr) { + es.HeapFree(ptr); } -current_thread_id :: proc "contextless" () -> int { - // return int(EsThreadGetID(ES_CURRENT_THREAD)); - return -1; +heap_resize :: proc(ptr: rawptr, new_size: int) -> rawptr { + return es.HeapReallocate(ptr, new_size, false); } + +open :: proc(path: string, flags: int = O_RDONLY, mode: int = 0) -> (Handle, Errno) { + return (Handle) (0), (Errno) (1); +} + +close :: proc(fd: Handle) -> Errno { + return (Errno) (1); +} + +file_size :: proc(fd: Handle) -> (i64, Errno) { + return (i64) (0), (Errno) (1); +} + +read :: proc(fd: Handle, data: []byte) -> (int, Errno) { + return (int) (0), (Errno) (1); +} + +write :: proc(fd: Handle, data: []u8) -> (int, Errno) { + return (int) (0), (Errno) (1); +} + diff --git a/core/runtime/procs_essence.odin b/core/runtime/procs_essence.odin new file mode 100644 index 000000000..a2cd26df6 --- /dev/null +++ b/core/runtime/procs_essence.odin @@ -0,0 +1,18 @@ +package runtime + +import "core:sys/es" + +@(link_name="memset") +memset :: proc "c" (ptr: rawptr, val: i32, len: int) -> rawptr { + return es.CRTmemset(ptr, val, len); +} + +@(link_name="memmove") +memmove :: proc "c" (dst, src: rawptr, len: int) -> rawptr { + return es.CRTmemmove(dst, src, len); +} + +@(link_name="memcpy") +memcpy :: proc "c" (dst, src: rawptr, len: int) -> rawptr { + return es.CRTmemcpy(dst, src, len); +} diff --git a/core/sys/es/api.odin b/core/sys/es/api.odin new file mode 100644 index 000000000..41d67ecf0 --- /dev/null +++ b/core/sys/es/api.odin @@ -0,0 +1,2772 @@ +package es +Element :: rawptr; +Generic :: rawptr; +INSTANCE_TYPE :: Instance; +Panel :: Element; +Window :: Element; +Scrollbar :: Element; +Button :: Element; +TextDisplay :: Element; +IconDisplay :: Element; +Textbox :: Element; +ListView :: Element; +Menu :: Element; +Choice :: Element; +ColorWell :: Element; +Splitter :: Element; +ImageDisplay :: Element; +ElementGroup :: Element; +TextPlan :: Element; +Store :: Element; +DirectoryMonitor :: Element; +NodeType :: u64 ; +Error :: int ; +Handle :: uint ; +Response :: i32; +FileOffset :: u64 ; +FileOffsetDifference :: i64 ; +AudioDeviceID :: u64 ; +SCANCODE_A :: (0x04); +SCANCODE_B :: (0x05); +SCANCODE_C :: (0x06); +SCANCODE_D :: (0x07); +SCANCODE_E :: (0x08); +SCANCODE_F :: (0x09); +SCANCODE_G :: (0x0A); +SCANCODE_H :: (0x0B); +SCANCODE_I :: (0x0C); +SCANCODE_J :: (0x0D); +SCANCODE_K :: (0x0E); +SCANCODE_L :: (0x0F); +SCANCODE_M :: (0x10); +SCANCODE_N :: (0x11); +SCANCODE_O :: (0x12); +SCANCODE_P :: (0x13); +SCANCODE_Q :: (0x14); +SCANCODE_R :: (0x15); +SCANCODE_S :: (0x16); +SCANCODE_T :: (0x17); +SCANCODE_U :: (0x18); +SCANCODE_V :: (0x19); +SCANCODE_W :: (0x1A); +SCANCODE_X :: (0x1B); +SCANCODE_Y :: (0x1C); +SCANCODE_Z :: (0x1D); +SCANCODE_1 :: (0x1E); +SCANCODE_2 :: (0x1F); +SCANCODE_3 :: (0x20); +SCANCODE_4 :: (0x21); +SCANCODE_5 :: (0x22); +SCANCODE_6 :: (0x23); +SCANCODE_7 :: (0x24); +SCANCODE_8 :: (0x25); +SCANCODE_9 :: (0x26); +SCANCODE_0 :: (0x27); +SCANCODE_ENTER :: (0x28); +SCANCODE_ESCAPE :: (0x29); +SCANCODE_BACKSPACE :: (0x2A); +SCANCODE_TAB :: (0x2B); +SCANCODE_SPACE :: (0x2C); +SCANCODE_HYPHEN :: (0x2D); +SCANCODE_EQUALS :: (0x2E); +SCANCODE_LEFT_BRACE :: (0x2F); +SCANCODE_RIGHT_BRACE :: (0x30); +SCANCODE_COMMA :: (0x36); +SCANCODE_PERIOD :: (0x37); +SCANCODE_SLASH :: (0x38); +SCANCODE_PUNCTUATION_1 :: (0x31) ; +SCANCODE_PUNCTUATION_2 :: (0x32) ; +SCANCODE_PUNCTUATION_3 :: (0x33) ; +SCANCODE_PUNCTUATION_4 :: (0x34) ; +SCANCODE_PUNCTUATION_5 :: (0x35) ; +SCANCODE_PUNCTUATION_6 :: (0x64) ; +SCANCODE_F1 :: (0x3A); +SCANCODE_F2 :: (0x3B); +SCANCODE_F3 :: (0x3C); +SCANCODE_F4 :: (0x3D); +SCANCODE_F5 :: (0x3E); +SCANCODE_F6 :: (0x3F); +SCANCODE_F7 :: (0x40); +SCANCODE_F8 :: (0x41); +SCANCODE_F9 :: (0x42); +SCANCODE_F10 :: (0x43); +SCANCODE_F11 :: (0x44); +SCANCODE_F12 :: (0x45); +SCANCODE_F13 :: (0x68); +SCANCODE_F14 :: (0x69); +SCANCODE_F15 :: (0x6A); +SCANCODE_F16 :: (0x6B); +SCANCODE_F17 :: (0x6C); +SCANCODE_F18 :: (0x6D); +SCANCODE_F19 :: (0x6E); +SCANCODE_F20 :: (0x6F); +SCANCODE_F21 :: (0x70); +SCANCODE_F22 :: (0x71); +SCANCODE_F23 :: (0x72); +SCANCODE_F24 :: (0x73); +SCANCODE_CAPS_LOCK :: (0x39); +SCANCODE_PRINT_SCREEN :: (0x46); +SCANCODE_SCROLL_LOCK :: (0x47); +SCANCODE_PAUSE :: (0x48); +SCANCODE_INSERT :: (0x49); +SCANCODE_HOME :: (0x4A); +SCANCODE_PAGE_UP :: (0x4B); +SCANCODE_DELETE :: (0x4C); +SCANCODE_END :: (0x4D); +SCANCODE_PAGE_DOWN :: (0x4E); +SCANCODE_RIGHT_ARROW :: (0x4F); +SCANCODE_LEFT_ARROW :: (0x50); +SCANCODE_DOWN_ARROW :: (0x51); +SCANCODE_UP_ARROW :: (0x52); +SCANCODE_NUM_LOCK :: (0x53); +SCANCODE_CONTEXT_MENU :: (0x65); +SCANCODE_SYSTEM_REQUEST :: (0x9A); +SCANCODE_ACTION_EXECUTE :: (0x74); +SCANCODE_ACTION_HELP :: (0x75); +SCANCODE_ACTION_MENU :: (0x76); +SCANCODE_ACTION_SELECT :: (0x77); +SCANCODE_ACTION_STOP :: (0x78); +SCANCODE_ACTION_AGAIN :: (0x79); +SCANCODE_ACTION_UNDO :: (0x7A); +SCANCODE_ACTION_CUT :: (0x7B); +SCANCODE_ACTION_COPY :: (0x7C); +SCANCODE_ACTION_PASTE :: (0x7D); +SCANCODE_ACTION_FIND :: (0x7E); +SCANCODE_ACTION_CANCEL :: (0x9B); +SCANCODE_ACTION_CLEAR :: (0x9C); +SCANCODE_ACTION_PRIOR :: (0x9D); +SCANCODE_ACTION_RETURN :: (0x9E); +SCANCODE_ACTION_SEPARATOR :: (0x9F); +SCANCODE_MM_MUTE :: (0x7F); +SCANCODE_MM_LOUDER :: (0x80); +SCANCODE_MM_QUIETER :: (0x81); +SCANCODE_MM_NEXT :: (0x103); +SCANCODE_MM_PREVIOUS :: (0x104); +SCANCODE_MM_STOP :: (0x105); +SCANCODE_MM_PAUSE :: (0x106); +SCANCODE_MM_SELECT :: (0x107); +SCANCODE_MM_EMAIL :: (0x108); +SCANCODE_MM_CALC :: (0x109); +SCANCODE_MM_FILES :: (0x10A); +SCANCODE_INTERNATIONAL_1 :: (0x87); +SCANCODE_INTERNATIONAL_2 :: (0x88); +SCANCODE_INTERNATIONAL_3 :: (0x89); +SCANCODE_INTERNATIONAL_4 :: (0x8A); +SCANCODE_INTERNATIONAL_5 :: (0x8B); +SCANCODE_INTERNATIONAL_6 :: (0x8C); +SCANCODE_INTERNATIONAL_7 :: (0x8D); +SCANCODE_INTERNATIONAL_8 :: (0x8E); +SCANCODE_INTERNATIONAL_9 :: (0x8F); +SCANCODE_HANGUL_ENGLISH_TOGGLE :: (0x90); +SCANCODE_HANJA_CONVERSION :: (0x91); +SCANCODE_KATAKANA :: (0x92); +SCANCODE_HIRAGANA :: (0x93); +SCANCODE_HANKAKU_ZENKAKU_TOGGLE :: (0x94); +SCANCODE_ALTERNATE_ERASE :: (0x99); +SCANCODE_THOUSANDS_SEPARATOR :: (0xB2); +SCANCODE_DECIMAL_SEPARATOR :: (0xB3); +SCANCODE_CURRENCY_UNIT :: (0xB4); +SCANCODE_CURRENCY_SUBUNIT :: (0xB5); +SCANCODE_NUM_DIVIDE :: (0x54); +SCANCODE_NUM_MULTIPLY :: (0x55); +SCANCODE_NUM_SUBTRACT :: (0x56); +SCANCODE_NUM_ADD :: (0x57); +SCANCODE_NUM_ENTER :: (0x58); +SCANCODE_NUM_1 :: (0x59); +SCANCODE_NUM_2 :: (0x5A); +SCANCODE_NUM_3 :: (0x5B); +SCANCODE_NUM_4 :: (0x5C); +SCANCODE_NUM_5 :: (0x5D); +SCANCODE_NUM_6 :: (0x5E); +SCANCODE_NUM_7 :: (0x5F); +SCANCODE_NUM_8 :: (0x60); +SCANCODE_NUM_9 :: (0x61); +SCANCODE_NUM_0 :: (0x62); +SCANCODE_NUM_POINT :: (0x63); +SCANCODE_NUM_EQUALS :: (0x67); +SCANCODE_NUM_COMMA :: (0x82); +SCANCODE_NUM_00 :: (0xB0); +SCANCODE_NUM_000 :: (0xB1); +SCANCODE_NUM_LEFT_PAREN :: (0xB6); +SCANCODE_NUM_RIGHT_PAREN :: (0xB7); +SCANCODE_NUM_LEFT_BRACE :: (0xB8); +SCANCODE_NUM_RIGHT_BRACE :: (0xB9); +SCANCODE_NUM_TAB :: (0xBA); +SCANCODE_NUM_BACKSPACE :: (0xBB); +SCANCODE_NUM_A :: (0xBC); +SCANCODE_NUM_B :: (0xBD); +SCANCODE_NUM_C :: (0xBE); +SCANCODE_NUM_D :: (0xBF); +SCANCODE_NUM_E :: (0xC0); +SCANCODE_NUM_F :: (0xC1); +SCANCODE_NUM_XOR :: (0xC2); +SCANCODE_NUM_CARET :: (0xC3); +SCANCODE_NUM_PERCENT :: (0xC4); +SCANCODE_NUM_LESS_THAN :: (0xC5); +SCANCODE_NUM_GREATER_THAN :: (0xC6); +SCANCODE_NUM_AMPERSAND :: (0xC7); +SCANCODE_NUM_DOUBLE_AMPERSAND :: (0xC8); +SCANCODE_NUM_BAR :: (0xC9); +SCANCODE_NUM_DOUBLE_BAR :: (0xCA); +SCANCODE_NUM_COLON :: (0xCB); +SCANCODE_NUM_HASH :: (0xCC); +SCANCODE_NUM_SPACE :: (0xCD); +SCANCODE_NUM_AT :: (0xCE); +SCANCODE_NUM_EXCLAMATION_MARK :: (0xCF); +SCANCODE_NUM_MEMORY_STORE :: (0xD0); +SCANCODE_NUM_MEMORY_RECALL :: (0xD1); +SCANCODE_NUM_MEMORY_CLEAR :: (0xD2); +SCANCODE_NUM_MEMORY_ADD :: (0xD3); +SCANCODE_NUM_MEMORY_SUBTRACT :: (0xD4); +SCANCODE_NUM_MEMORY_MULTIPLY :: (0xD5); +SCANCODE_NUM_MEMORY_DIVIDE :: (0xD6); +SCANCODE_NUM_NEGATE :: (0xD7); +SCANCODE_NUM_CLEAR_ALL :: (0xD8); +SCANCODE_NUM_CLEAR :: (0xD9); +SCANCODE_NUM_BINARY :: (0xDA); +SCANCODE_NUM_OCTAL :: (0xDB); +SCANCODE_NUM_DECIMAL :: (0xDC); +SCANCODE_NUM_HEXADECIMAL :: (0xDD); +SCANCODE_LEFT_CTRL :: (0xE0); +SCANCODE_LEFT_SHIFT :: (0xE1); +SCANCODE_LEFT_ALT :: (0xE2); +SCANCODE_LEFT_FLAG :: (0xE3); +SCANCODE_RIGHT_CTRL :: (0xE4); +SCANCODE_RIGHT_SHIFT :: (0xE5); +SCANCODE_RIGHT_ALT :: (0xE6); +SCANCODE_RIGHT_FLAG :: (0xE7); +SCANCODE_ACPI_POWER :: (0x100); +SCANCODE_ACPI_SLEEP :: (0x101); +SCANCODE_ACPI_WAKE :: (0x102); +SCANCODE_WWW_SEARCH :: (0x10B); +SCANCODE_WWW_HOME :: (0x10C); +SCANCODE_WWW_BACK :: (0x10D); +SCANCODE_WWW_FORWARD :: (0x10E); +SCANCODE_WWW_STOP :: (0x10F); +SCANCODE_WWW_REFRESH :: (0x110); +SCANCODE_WWW_STARRED :: (0x111); +PROCESS_STATE_ALL_THREADS_TERMINATED :: (1); +PROCESS_STATE_TERMINATING :: (2); +PROCESS_STATE_CRASHED :: (4); +FLAGS_DEFAULT :: (0); +SUCCESS :: (-1); +ERROR_BUFFER_TOO_SMALL :: (-2); +ERROR_UNKNOWN_OPERATION_FAILURE :: (-7); +ERROR_NO_MESSAGES_AVAILABLE :: (-9); +ERROR_MESSAGE_QUEUE_FULL :: (-10); +ERROR_PATH_NOT_WITHIN_MOUNTED_VOLUME :: (-14); +ERROR_PATH_NOT_TRAVERSABLE :: (-15); +ERROR_FILE_ALREADY_EXISTS :: (-19); +ERROR_FILE_DOES_NOT_EXIST :: (-20); +ERROR_DRIVE_ERROR_FILE_DAMAGED :: (-21) ; +ERROR_ACCESS_NOT_WITHIN_FILE_BOUNDS :: (-22) ; +ERROR_FILE_PERMISSION_NOT_GRANTED :: (-23); +ERROR_FILE_IN_EXCLUSIVE_USE :: (-24); +ERROR_FILE_CANNOT_GET_EXCLUSIVE_USE :: (-25); +ERROR_INCORRECT_NODE_TYPE :: (-26); +ERROR_EVENT_NOT_SET :: (-27); +ERROR_TIMEOUT_REACHED :: (-29); +ERROR_FILE_ON_READ_ONLY_VOLUME :: (-32); +ERROR_INVALID_DIMENSIONS :: (-34); +ERROR_DRIVE_CONTROLLER_REPORTED :: (-35); +ERROR_COULD_NOT_ISSUE_PACKET :: (-36); +ERROR_HANDLE_TABLE_FULL :: (-37); +ERROR_COULD_NOT_RESIZE_FILE :: (-38); +ERROR_DIRECTORY_NOT_EMPTY :: (-39); +ERROR_UNSUPPORTED_FILESYSTEM :: (-40); +ERROR_NODE_ALREADY_DELETED :: (-41); +ERROR_NODE_IS_ROOT :: (-42); +ERROR_VOLUME_MISMATCH :: (-43); +ERROR_TARGET_WITHIN_SOURCE :: (-44); +ERROR_TARGET_INVALID_TYPE :: (-45); +ERROR_NOTHING_TO_DRAW :: (-46); +ERROR_MALFORMED_NODE_PATH :: (-47); +ERROR_OUT_OF_CACHE_RESOURCES :: (-48); +ERROR_TARGET_IS_SOURCE :: (-49); +ERROR_INVALID_NAME :: (-50); +ERROR_CORRUPT_DATA :: (-51); +ERROR_INSUFFICIENT_RESOURCES :: (-52); +ERROR_UNSUPPORTED_FEATURE :: (-53); +ERROR_FILE_TOO_FRAGMENTED :: (-54); +ERROR_DRIVE_FULL :: (-55); +ERROR_COULD_NOT_RESOLVE_SYMBOL :: (-56); +ERROR_ALREADY_EMBEDDED :: (-57); +ERROR_EVENT_SINK_OVERFLOW :: (-58); +ERROR_EVENT_SINK_DUPLICATE :: (-59); +ERROR_UNSUPPORTED_CONVERSION :: (-60); +ERROR_SOURCE_EMPTY :: (-61); +SYSTEM_CONSTANT_TIME_STAMP_UNITS_PER_MICROSECOND :: (0); +SYSTEM_CONSTANT_NO_FANCY_GRAPHICS :: (1); +SYSTEM_CONSTANT_REPORTED_PROBLEMS :: (2); +SYSTEM_CONSTANT_RIGHT_TO_LEFT :: (3); +SYSTEM_CONSTANT_WINDOW_INSET :: (4); +SYSTEM_CONSTANT_CONTAINER_TAB_BAND_HEIGHT :: (5); +SYSTEM_CONSTANT_WINDOW_BORDER_THICKNESS :: (6); +INVALID_HANDLE :: (( Handle) (0)); +CURRENT_THREAD :: (( Handle) (0x10)); +CURRENT_PROCESS :: (( Handle) (0x11)); +SURFACE_UI_SHEET :: (( Handle) (0x20)); +SURFACE_WALLPAPER :: (( Handle) (0x21)); +DRAW_ALPHA_OVERWRITE :: (0x100); +DRAW_ALPHA_FULL :: (0x200) ; +WAIT_NO_TIMEOUT :: (-1); +MAX_WAIT_COUNT :: (8); +MAX_EVENT_FORWARD_COUNT :: (4) ; +MAX_EVENT_SINK_BUFFER_SIZE :: (256) ; +MAX_DIRECTORY_CHILD_NAME_LENGTH :: (256); +PROCESS_EXECUTABLE_NOT_LOADED :: (0); +PROCESS_EXECUTABLE_FAILED_TO_LOAD :: (1); +PROCESS_EXECUTABLE_LOADED :: (2); +SNAPSHOT_MAX_PROCESS_NAME_LENGTH :: (80); +SYSTEM_SNAPSHOT_PROCESSES :: (1); +SYSTEM_SNAPSHOT_DRIVES :: (2); +HANDLED :: (0); +NOT_HANDLED :: (-1); +REJECTED :: (-2); +SHARED_MEMORY_NAME_MAX_LENGTH :: (32); +MAP_OBJECT_ALL :: (0); +TEXT_H_LEFT :: (1); +TEXT_H_RIGHT :: (2); +TEXT_H_CENTER :: (3); +TEXT_V_TOP :: (4); +TEXT_V_BOTTOM :: (8); +TEXT_V_CENTER :: (12); +TEXT_WRAP :: (16); +TEXT_ELLIPSIS :: (32); +NODE_READ_NONE :: (0x0); +NODE_READ_BLOCK :: (0x1); +NODE_READ_ACCESS :: (0x2); +NODE_READ_EXCLUSIVE :: (0x3); +NODE_WRITE_NONE :: (0x00); +NODE_WRITE_BLOCK :: (0x10); +NODE_WRITE_ACCESS :: (0x20); +NODE_WRITE_EXCLUSIVE :: (0x30); +NODE_RESIZE_NONE :: (0x000); +NODE_RESIZE_BLOCK :: (0x100); +NODE_RESIZE_ACCESS :: (0x200); +NODE_RESIZE_EXCLUSIVE :: (0x300); +NODE_FAIL_IF_FOUND :: (0x1000); +NODE_FAIL_IF_NOT_FOUND :: (0x2000); +NODE_CREATE_DIRECTORIES :: (0x8000) ; +NODE_POSIX_NAMESPACE :: (0x10000) ; +NODE_FILE :: (0); +NODE_DIRECTORY :: (0x40000); +NODE_INVALID :: (0x80000); +DIRECTORY_CHILDREN_UNKNOWN :: (( FileOffsetDifference) (-1)); +MEMORY_OPEN_FAIL_IF_FOUND :: (0x1000); +MEMORY_OPEN_FAIL_IF_NOT_FOUND :: (0x2000); +MAP_OBJECT_READ_WRITE :: (0); +MAP_OBJECT_READ_ONLY :: (1); +MAP_OBJECT_COPY_ON_WRITE :: (2); +STRING_FORMAT_ENOUGH_SPACE :: ( (-1)); +POSIX_SYSCALL_GET_POSIX_FD_PATH :: (0x10000); +PERMISSION_ACCESS_SYSTEM_FILES :: (1 << 0); +PERMISSION_ACCESS_USER_FILES :: (1 << 1); +PERMISSION_PROCESS_CREATE :: (1 << 2); +PERMISSION_PROCESS_OPEN :: (1 << 3); +PERMISSION_SCREEN_MODIFY :: (1 << 4) ; +PERMISSION_SHUTDOWN :: (1 << 5); +PERMISSION_TAKE_SYSTEM_SNAPSHOT :: (1 << 6); +PERMISSION_WINDOW_OPEN :: (1 << 7); +PERMISSION_ALL :: ( (-1)); +PERMISSION_INHERIT :: ( (1) << 63); +PANEL_STYLE_DEFAULT :: "Panel.Default"; +PANEL_STYLE_TRANSPARENT :: "Panel.Transparent"; +PANEL_STYLE_WINDOW_BACKGROUND :: "Panel.WindowBackground"; +PANEL_STYLE_SHEET :: "Panel.Sheet"; +PANEL_STYLE_GROUP_BOX :: "Panel.GroupBox"; +PANEL_STYLE_INDENT :: "Panel.Indent"; +PANEL_BAND_SIZE_DEFAULT :: (-1); +ELEMENT_FOCUSABLE :: ( (1) << 32); +ELEMENT_HIDDEN :: ( (1) << 33) ; +ELEMENT_DISABLED :: ( (1) << 34) ; +ELEMENT_DEBUG :: ( (1) << 35) ; +ELEMENT_SCROLL_X :: ( (1) << 36); +ELEMENT_SCROLL_Y :: ( (1) << 37); +ELEMENT_NO_HOVER :: ( (1) << 38) ; +ELEMENT_BLOCK_FOCUS :: ( (1) << 39) ; +ELEMENT_NOT_TAB_TRAVERSABLE :: ( (1) << 40) ; +ELEMENT_NO_INFORM_PARENT :: ( (1) << 41) ; +CELL_NEW_BAND :: ( (1) << 51); +CELL_COLLAPSABLE :: ( (1) << 51); +CELL_H_PUSH :: ( (1) << 54); +CELL_H_EXPAND :: ( (1) << 55); +CELL_H_SHRINK :: ( (1) << 56); +CELL_H_LEFT :: ( (1) << 57); +CELL_H_RIGHT :: ( (1) << 58); +CELL_V_PUSH :: ( (1) << 59); +CELL_V_EXPAND :: ( (1) << 60); +CELL_V_SHRINK :: ( (1) << 61); +CELL_V_TOP :: ( (1) << 62); +CELL_V_BOTTOM :: ( (1) << 63); +PANEL_VERTICAL :: (0x0001); +PANEL_WRAP :: (0x0002); +PANEL_TABLE :: (0x0004); +PANEL_Z_STACK :: (0x0008); +PANEL_H_LEFT :: (0x0010); +PANEL_H_RIGHT :: (0x0020); +PANEL_H_CENTER :: (0x0040); +PANEL_H_JUSTIFY :: (0x0080); +PANEL_V_TOP :: (0x0100); +PANEL_V_BOTTOM :: (0x0200); +PANEL_V_CENTER :: (0x0400); +PANEL_V_JUSTIFY :: (0x0800); +PANEL_H_SCROLL :: (0x1000); +PANEL_V_SCROLL :: (0x2000); +PANEL_SWITCHER :: (0x4000); +TEXTBOX_MULTILINE :: (1 << 0); +TEXTBOX_EDIT_BASED :: (1 << 1); +TEXTBOX_COMPACT :: (1 << 2); +TEXTBOX_NO_SMART_CONTEXT_MENUS :: (1 << 3); +TEXTBOX_FIND_BACKWARDS :: (1 << 0); +BUTTON_DEFAULT :: (1 << 0); +BUTTON_DANGEROUS :: (1 << 1); +BUTTON_MENU_ITEM :: (1 << 2); +BUTTON_NOT_FOCUSABLE :: (1 << 3); +BUTTON_TOOLBAR :: (1 << 4); +BUTTON_DROPDOWN :: (1 << 5); +BUTTON_COMPACT :: (1 << 6); +MENU_ITEM_HEADER :: (1 << 7); +BUTTON_CHECKBOX :: (1 << 8); +BUTTON_RADIOBOX :: (1 << 9); +BUTTON_CANCEL :: (1 << 10); +BUTTON_PUSH :: (1 << 11); +COLOR_WELL_HAS_OPACITY :: (1 << 0); +SCROLLBAR_VERTICAL :: (0 << 0); +SCROLLBAR_HORIZONTAL :: (1 << 0); +SPLITTER_VERTICAL :: (0 << 0); +SPLITTER_HORIZONTAL :: (1 << 0); +IMAGE_DISPLAY_LOAD_ASYNCHRONOUSLY :: (1 << 0); +IMAGE_DISPLAY_UNLOAD_WHEN_HIDDEN :: (1 << 1); +IMAGE_DISPLAY_UPSCALE_NEAREST :: (1 << 2); +IMAGE_DISPLAY_DOWNSCALE_NEAREST :: (1 << 3); +IMAGE_DISPLAY_OPAQUE :: (1 << 4); +LIST_VIEW_HORIZONTAL :: (1 << 0) ; +LIST_VIEW_VARIABLE_SIZE :: (1 << 1) ; +LIST_VIEW_TILED :: (1 << 2) ; +LIST_VIEW_NON_LINEAR :: (1 << 3) ; +LIST_VIEW_SINGLE_SELECT :: (1 << 4) ; +LIST_VIEW_MULTI_SELECT :: (1 << 5) ; +LIST_VIEW_COLUMNS :: (1 << 6) ; +LIST_VIEW_GROUP_HAS_HEADER :: (1 << 0) ; +LIST_VIEW_GROUP_HAS_FOOTER :: (1 << 1) ; +LIST_VIEW_GROUP_INDENT :: (1 << 2) ; +LIST_VIEW_GROUP_COLLAPSABLE :: (1 << 3) ; +LIST_VIEW_COLUMN_RIGHT_ALIGNED :: (1 << 0) ; +LIST_VIEW_COLUMN_ASCENDING :: (1 << 1) ; +LIST_VIEW_COLUMN_DESCENDING :: (1 << 2) ; +LIST_VIEW_COLUMN_HAS_MENU :: (1 << 3) ; +MENU_AT_CURSOR :: (1 << 0); +MENU_MAXIMUM_HEIGHT :: (1 << 1); +FONT_SANS :: (0xFFFF); +FONT_SERIF :: (0xFFFE); +FONT_MONOSPACED :: (0xFFFD); +FONT_REGULAR :: (4); +FONT_BOLD :: (7); +TEXT_FIGURE_DEFAULT :: (0); +TEXT_FIGURE_OLD :: (1); +TEXT_FIGURE_TABULAR :: (2); +TEXT_DISPLAY_CONTENT_MAX_VALUES :: (8); +DIRECTORY_MONITOR_SUBTREE :: (1 << 0) ; +DIRECTORY_MONITOR_CONTENTS :: (1 << 1) ; +DIRECTORY_MONITOR_MODIFY :: (1 << 2) ; +COMMAND_SYSTEM_START :: (0xF0000000); +COMMAND_DELETE :: (0xF0000001); +COMMAND_SELECT_ALL :: (0xF0000002); +COMMAND_CUT :: (0xF0000003); +COMMAND_COPY :: (0xF0000004); +COMMAND_PASTE :: (0xF0000005); +AUDIO_STREAM_OVERRUN :: (1 << 0); +AUDIO_STREAM_UNDERRUN :: (1 << 0); +AUDIO_STREAM_FORMAT_CHANGED :: (1 << 1); +AUDIO_STREAM_TERMINATED :: (1 << 2); +AUDIO_STREAM_RUNNING :: (1 << 0); +AUDIO_STREAM_MUTED :: (1 << 1); +AUDIO_STREAM_ONESHOT :: (1 << 2); +AUDIO_DEFAULT_OUTPUT :: (1); +SAMPLE_FORMAT_U8 :: (1); +SAMPLE_FORMAT_S16LE :: (2); +SAMPLE_FORMAT_S32LE :: (3); +SAMPLE_FORMAT_F32LE :: (4) ; +STYLED_BOX_BLEND_MODE_NORMAL :: (0); +STYLED_BOX_BLEND_MODE_XOR :: (1); +CELL_FILL :: ( CELL_H_FILL | CELL_V_FILL); +CELL_H_FILL :: ( CELL_H_PUSH | CELL_H_EXPAND | CELL_H_SHRINK); +CELL_V_FILL :: ( CELL_V_PUSH | CELL_V_EXPAND | CELL_V_SHRINK); +CELL_CENTER :: ( CELL_H_CENTER | CELL_V_CENTER); +CELL_PUSH :: ( CELL_H_PUSH | CELL_V_PUSH); +CELL_EXPAND :: ( CELL_H_EXPAND | CELL_V_EXPAND); +CELL_CORNER :: ( CELL_H_LEFT | CELL_V_TOP); +CELL_SHRINK :: ( CELL_H_SHRINK | CELL_V_SHRINK); +CELL_H_CENTER :: ( CELL_H_LEFT | CELL_H_RIGHT); +CELL_V_CENTER :: ( CELL_V_TOP | CELL_V_BOTTOM); +StandardIcon :: enum { + ICON_NONE, + ICON_ACTION_UNAVAILABLE_SYMBOLIC, + ICON_ADDRESS_BOOK_NEW, + ICON_ADDRESS_BOOK_NEW_SYMBOLIC, + ICON_ALIGN_HORIZONTAL_CENTER, + ICON_ALIGN_HORIZONTAL_CENTER_SYMBOLIC, + ICON_ALIGN_HORIZONTAL_LEFT, + ICON_ALIGN_HORIZONTAL_LEFT_SYMBOLIC, + ICON_ALIGN_HORIZONTAL_LEFT_TO_ANCHOR, + ICON_ALIGN_HORIZONTAL_LEFT_TO_ANCHOR_SYMBOLIC, + ICON_ALIGN_HORIZONTAL_RIGHT, + ICON_ALIGN_HORIZONTAL_RIGHT_SYMBOLIC, + ICON_ALIGN_HORIZONTAL_RIGHT_TO_ANCHOR, + ICON_ALIGN_HORIZONTAL_RIGHT_TO_ANCHOR_SYMBOLIC, + ICON_ALIGN_VERTICAL_BOTTOM, + ICON_ALIGN_VERTICAL_BOTTOM_SYMBOLIC, + ICON_ALIGN_VERTICAL_BOTTOM_TO_ANCHOR, + ICON_ALIGN_VERTICAL_BOTTOM_TO_ANCHOR_SYMBOLIC, + ICON_ALIGN_VERTICAL_CENTER, + ICON_ALIGN_VERTICAL_CENTER_SYMBOLIC, + ICON_ALIGN_VERTICAL_TOP, + ICON_ALIGN_VERTICAL_TOP_SYMBOLIC, + ICON_ALIGN_VERTICAL_TOP_TO_ANCHOR, + ICON_ALIGN_VERTICAL_TOP_TO_ANCHOR_SYMBOLIC, + ICON_APPLICATION_ADD_SYMBOLIC, + ICON_APPOINTMENT_NEW, + ICON_APPOINTMENT_NEW_SYMBOLIC, + ICON_APPOINTMENT_SYMBOLIC, + ICON_BOOKMARK_NEW, + ICON_BOOKMARK_NEW_SYMBOLIC, + ICON_BROWSER_DOWNLOAD, + ICON_BROWSER_DOWNLOAD_SYMBOLIC, + ICON_CALL_START, + ICON_CALL_START_SYMBOLIC, + ICON_CALL_STOP, + ICON_CALL_STOP_SYMBOLIC, + ICON_COLOR_FILL, + ICON_COLOR_GRADIENT, + ICON_COLOR_GRADIENT_MESH, + ICON_COLOR_SELECT_SYMBOLIC, + ICON_CONTACT_NEW, + ICON_CONTACT_NEW_SYMBOLIC, + ICON_DISTRIBUTE_HORIZONTAL_CENTER, + ICON_DISTRIBUTE_HORIZONTAL_GAPS, + ICON_DISTRIBUTE_HORIZONTAL_LEFT, + ICON_DISTRIBUTE_HORIZONTAL_RIGHT, + ICON_DISTRIBUTE_VERTICAL_BOTTOM, + ICON_DISTRIBUTE_VERTICAL_CENTER, + ICON_DISTRIBUTE_VERTICAL_GAPS, + ICON_DISTRIBUTE_VERTICAL_TOP, + ICON_DOCUMENT_EDIT, + ICON_DOCUMENT_EDIT_SYMBOLIC, + ICON_DOCUMENT_EXPORT, + ICON_DOCUMENT_EXPORT_SYMBOLIC, + ICON_DOCUMENT_IMPORT, + ICON_DOCUMENT_IMPORT_SYMBOLIC, + ICON_DOCUMENT_NEW, + ICON_DOCUMENT_NEW_SYMBOLIC, + ICON_DOCUMENT_OPEN_RECENT, + ICON_DOCUMENT_OPEN_RECENT_SYMBOLIC, + ICON_DOCUMENT_OPEN_SYMBOLIC, + ICON_DOCUMENT_PAGE_SETUP, + ICON_DOCUMENT_PAGE_SETUP_SYMBOLIC, + ICON_DOCUMENT_PRINT_PREVIEW, + ICON_DOCUMENT_PRINT_PREVIEW_SYMBOLIC, + ICON_DOCUMENT_PRINT_SYMBOLIC, + ICON_DOCUMENT_PROPERTIES, + ICON_DOCUMENT_PROPERTIES_SYMBOLIC, + ICON_DOCUMENT_REVERT, + ICON_DOCUMENT_REVERT_SYMBOLIC, + ICON_DOCUMENT_SAVE_AS, + ICON_DOCUMENT_SAVE_AS_SYMBOLIC, + ICON_DOCUMENT_SAVE_SYMBOLIC, + ICON_DOCUMENT_SEND, + ICON_DOCUMENT_SEND_SYMBOLIC, + ICON_DRAW_CUBOID, + ICON_DRAW_ELLIPSE, + ICON_DRAW_ERASER, + ICON_DRAW_FREEHAND, + ICON_DRAW_PATH, + ICON_DRAW_POLYGON_STAR, + ICON_DRAW_RECTANGLE, + ICON_DRAW_SPIRAL, + ICON_DRAW_TEXT, + ICON_EDIT_CLEAR, + ICON_EDIT_CLEAR_ALL_SYMBOLIC, + ICON_EDIT_CLEAR_SYMBOLIC, + ICON_EDIT_COPY, + ICON_EDIT_COPY_SYMBOLIC, + ICON_EDIT_CUT, + ICON_EDIT_CUT_SYMBOLIC, + ICON_EDIT_DELETE_SYMBOLIC, + ICON_EDIT_FIND, + ICON_EDIT_FIND_REPLACE, + ICON_EDIT_FIND_REPLACE_SYMBOLIC, + ICON_EDIT_FIND_SYMBOLIC, + ICON_EDIT_FLAG, + ICON_EDIT_FLAG_SYMBOLIC, + ICON_EDIT_MARK, + ICON_EDIT_PASTE, + ICON_EDIT_PASTE_SYMBOLIC, + ICON_EDIT_REDO, + ICON_EDIT_REDO_SYMBOLIC, + ICON_EDIT_SELECT_ALL, + ICON_EDIT_SELECT_ALL_SYMBOLIC, + ICON_EDIT_SELECT_SYMBOLIC, + ICON_EDIT_UNDO, + ICON_EDIT_UNDO_ARCHIVE, + ICON_EDIT_UNDO_SYMBOLIC, + ICON_ERROR_CORRECT_SYMBOLIC, + ICON_EVENT_NEW, + ICON_FIND_LOCATION, + ICON_FIND_LOCATION_SYMBOLIC, + ICON_FOLDER_COPY, + ICON_FOLDER_MOVE, + ICON_FOLDER_NEW, + ICON_FOLDER_NEW_SYMBOLIC, + ICON_FONT_SELECT_SYMBOLIC, + ICON_FORMAT_INDENT_LESS, + ICON_FORMAT_INDENT_LESS_SYMBOLIC, + ICON_FORMAT_INDENT_MORE, + ICON_FORMAT_INDENT_MORE_SYMBOLIC, + ICON_FORMAT_JUSTIFY_CENTER, + ICON_FORMAT_JUSTIFY_CENTER_SYMBOLIC, + ICON_FORMAT_JUSTIFY_FILL, + ICON_FORMAT_JUSTIFY_FILL_SYMBOLIC, + ICON_FORMAT_JUSTIFY_LEFT, + ICON_FORMAT_JUSTIFY_LEFT_SYMBOLIC, + ICON_FORMAT_JUSTIFY_RIGHT, + ICON_FORMAT_JUSTIFY_RIGHT_SYMBOLIC, + ICON_FORMAT_TEXT_BOLD, + ICON_FORMAT_TEXT_BOLD_ES_SYMBOLIC, + ICON_FORMAT_TEXT_BOLD_FR_SYMBOLIC, + ICON_FORMAT_TEXT_BOLD_SYMBOLIC, + ICON_FORMAT_TEXT_CLEAR_FORMATTING_SYMBOLIC, + ICON_FORMAT_TEXT_DIRECTION_LTR_SYMBOLIC, + ICON_FORMAT_TEXT_HIGHLIGHT, + ICON_FORMAT_TEXT_ITALIC, + ICON_FORMAT_TEXT_ITALIC_ES_SYMBOLIC, + ICON_FORMAT_TEXT_ITALIC_SYMBOLIC, + ICON_FORMAT_TEXT_LARGER_SYMBOLIC, + ICON_FORMAT_TEXT_NONE, + ICON_FORMAT_TEXT_SMALLER_SYMBOLIC, + ICON_FORMAT_TEXT_STRIKETHROUGH, + ICON_FORMAT_TEXT_STRIKETHROUGH_FR_SYMBOLIC, + ICON_FORMAT_TEXT_STRIKETHROUGH_SYMBOLIC, + ICON_FORMAT_TEXT_UNDERLINE, + ICON_FORMAT_TEXT_UNDERLINE_FR_SYMBOLIC, + ICON_FORMAT_TEXT_UNDERLINE_SYMBOLIC, + ICON_GO_BOTTOM, + ICON_GO_BOTTOM_SYMBOLIC, + ICON_GO_DOWN, + ICON_GO_DOWN_SYMBOLIC, + ICON_GO_FIRST, + ICON_GO_FIRST_SYMBOLIC, + ICON_GO_HOME_SYMBOLIC, + ICON_GO_JUMP, + ICON_GO_JUMP_SYMBOLIC, + ICON_GO_LAST, + ICON_GO_LAST_SYMBOLIC, + ICON_GO_NEXT, + ICON_GO_NEXT_SYMBOLIC, + ICON_GO_PREVIOUS, + ICON_GO_PREVIOUS_SYMBOLIC, + ICON_GO_TOP, + ICON_GO_TOP_SYMBOLIC, + ICON_GO_UP, + ICON_GO_UP_SYMBOLIC, + ICON_HELP_ABOUT, + ICON_HELP_ABOUT_SYMBOLIC, + ICON_HELP_CONTENTS, + ICON_HELP_CONTENTS_SYMBOLIC, + ICON_HELP_INFO_SYMBOLIC, + ICON_IMAGE_ADJUST, + ICON_IMAGE_AUTO_ADJUST, + ICON_IMAGE_CROP, + ICON_IMAGE_CROP_SYMBOLIC, + ICON_IMAGE_RED_EYE, + ICON_IMAGE_RED_EYE_SYMBOLIC, + ICON_INSERT_IMAGE, + ICON_INSERT_IMAGE_SYMBOLIC, + ICON_INSERT_LINK, + ICON_INSERT_LINK_SYMBOLIC, + ICON_INSERT_OBJECT, + ICON_INSERT_OBJECT_SYMBOLIC, + ICON_INSERT_TEXT_SYMBOLIC, + ICON_LIST_ADD, + ICON_LIST_ADD_SYMBOLIC, + ICON_LIST_REMOVE, + ICON_LIST_REMOVE_SYMBOLIC, + ICON_MAIL_ARCHIVE, + ICON_MAIL_FORWARD, + ICON_MAIL_FORWARD_SYMBOLIC, + ICON_MAIL_MARK_IMPORTANT, + ICON_MAIL_MARK_IMPORTANT_SYMBOLIC, + ICON_MAIL_MARK_JUNK, + ICON_MAIL_MARK_JUNK_SYMBOLIC, + ICON_MAIL_MARK_NOTJUNK, + ICON_MAIL_MARK_NOTJUNK_SYMBOLIC, + ICON_MAIL_MESSAGE_NEW, + ICON_MAIL_MESSAGE_NEW_SYMBOLIC, + ICON_MAIL_MOVE, + ICON_MAIL_MOVE_SYMBOLIC, + ICON_MAIL_REPLY_ALL, + ICON_MAIL_REPLY_ALL_SYMBOLIC, + ICON_MAIL_REPLY_SENDER, + ICON_MAIL_REPLY_SENDER_SYMBOLIC, + ICON_MAIL_SEND, + ICON_MAIL_SEND_RECEIVE_SYMBOLIC, + ICON_MAIL_SEND_SYMBOLIC, + ICON_MARK_LOCATION_SYMBOLIC, + ICON_MEDIA_EJECT, + ICON_MEDIA_EJECT_SYMBOLIC, + ICON_MEDIA_EQ_SYMBOLIC, + ICON_MEDIA_PLAYBACK_PAUSE, + ICON_MEDIA_PLAYBACK_PAUSE_SYMBOLIC, + ICON_MEDIA_PLAYBACK_START, + ICON_MEDIA_PLAYBACK_START_SYMBOLIC, + ICON_MEDIA_PLAYBACK_STOP, + ICON_MEDIA_PLAYBACK_STOP_SYMBOLIC, + ICON_MEDIA_RECORD, + ICON_MEDIA_RECORD_SYMBOLIC, + ICON_MEDIA_SEEK_BACKWARD, + ICON_MEDIA_SEEK_BACKWARD_SYMBOLIC, + ICON_MEDIA_SEEK_FORWARD, + ICON_MEDIA_SEEK_FORWARD_SYMBOLIC, + ICON_MEDIA_SKIP_BACKWARD, + ICON_MEDIA_SKIP_FORWARD, + ICON_MEDIA_VIEW_SUBTITLES_SYMBOLIC, + ICON_NODE_ADD, + ICON_NODE_ALIGN_HORIZONTAL, + ICON_NODE_ALIGN_VERTICAL, + ICON_NODE_BREAK, + ICON_NODE_CUSP, + ICON_NODE_DELETE, + ICON_NODE_DELETE_SEGMENT, + ICON_NODE_DISTRIBUTE_HORIZONTAL, + ICON_NODE_DISTRIBUTE_VERTICAL, + ICON_NODE_INSERT, + ICON_NODE_JOIN, + ICON_NODE_JOIN_SEGMENT, + ICON_NODE_SMOOTH, + ICON_NODE_SYMMETRIC, + ICON_OBJECT_FLIP_HORIZONTAL, + ICON_OBJECT_FLIP_HORIZONTAL_SYMBOLIC, + ICON_OBJECT_FLIP_VERTICAL, + ICON_OBJECT_FLIP_VERTICAL_SYMBOLIC, + ICON_OBJECT_GROUP, + ICON_OBJECT_GROUP_SYMBOLIC, + ICON_OBJECT_INVERSE, + ICON_OBJECT_INVERSE_SYMBOLIC, + ICON_OBJECT_MERGE, + ICON_OBJECT_ROTATE_LEFT, + ICON_OBJECT_ROTATE_LEFT_SYMBOLIC, + ICON_OBJECT_ROTATE_RIGHT, + ICON_OBJECT_ROTATE_RIGHT_SYMBOLIC, + ICON_OBJECT_SELECT_SYMBOLIC, + ICON_OBJECT_STRAIGHTEN, + ICON_OBJECT_TO_PATH, + ICON_OBJECT_UNGROUP, + ICON_OBJECT_UNGROUP_SYMBOLIC, + ICON_OPEN_MENU, + ICON_OPEN_MENU_SYMBOLIC, + ICON_PAN_DOWN_SYMBOLIC, + ICON_PANE_HIDE_SYMBOLIC, + ICON_PAN_END_SYMBOLIC, + ICON_PANE_SHOW_SYMBOLIC, + ICON_PAN_START_SYMBOLIC, + ICON_PAN_UP_SYMBOLIC, + ICON_PATH_BREAK_APART, + ICON_PATH_BREAK_APART_SYMBOLIC, + ICON_PATH_COMBINE, + ICON_PATH_COMBINE_SYMBOLIC, + ICON_PATH_DIFFERENCE, + ICON_PATH_DIFFERENCE_SYMBOLIC, + ICON_PATH_DIVISION, + ICON_PATH_DIVISION_SYMBOLIC, + ICON_PATH_EXCLUSION, + ICON_PATH_EXCLUSION_SYMBOLIC, + ICON_PATH_INTERSECTION, + ICON_PATH_INTERSECTION_SYMBOLIC, + ICON_PATH_UNION, + ICON_PATH_UNION_SYMBOLIC, + ICON_PROCESS_STOP, + ICON_PROCESS_STOP_SYMBOLIC, + ICON_SEGMENT_CURVE, + ICON_SEGMENT_LINE, + ICON_SELECTION_ADD, + ICON_SELECTION_BOTTOM, + ICON_SELECTION_BOTTOM_SYMBOLIC, + ICON_SELECTION_CHECKED, + ICON_SELECTION_END_SYMBOLIC, + ICON_SELECTION_LOWER, + ICON_SELECTION_LOWER_SYMBOLIC, + ICON_SELECTION_RAISE, + ICON_SELECTION_RAISE_SYMBOLIC, + ICON_SELECTION_REMOVE, + ICON_SELECTION_START_SYMBOLIC, + ICON_SELECTION_TOP, + ICON_SELECTION_TOP_SYMBOLIC, + ICON_SEND_TO, + ICON_SEND_TO_SYMBOLIC, + ICON_STAR_NEW_SYMBOLIC, + ICON_STROKE_TO_PATH, + ICON_SYSTEM_LOCK_SCREEN, + ICON_SYSTEM_LOCK_SCREEN_SYMBOLIC, + ICON_SYSTEM_LOG_OUT, + ICON_SYSTEM_REBOOT, + ICON_SYSTEM_RUN, + ICON_SYSTEM_RUN_SYMBOLIC, + ICON_SYSTEM_SHUTDOWN, + ICON_SYSTEM_SHUTDOWN_SYMBOLIC, + ICON_SYSTEM_SUSPEND, + ICON_TAB_NEW_SYMBOLIC, + ICON_TAG_NEW, + ICON_TAG_NEW_SYMBOLIC, + ICON_TOOL_MEASURE, + ICON_TOOL_NODE_EDITOR, + ICON_TOOLS_CHECK_SPELLING_SYMBOLIC, + ICON_TOOLS_TIMER_SYMBOLIC, + ICON_VIEW_COLUMN_SYMBOLIC, + ICON_VIEW_CONTINUOUS_SYMBOLIC, + ICON_VIEW_DUAL_SYMBOLIC, + ICON_VIEW_FILTER_SYMBOLIC, + ICON_VIEW_FULLSCREEN_SYMBOLIC, + ICON_VIEW_GRID_SYMBOLIC, + ICON_VIEW_LIST_COMPACT_SYMBOLIC, + ICON_VIEW_LIST_IMAGES_SYMBOLIC, + ICON_VIEW_LIST_SYMBOLIC, + ICON_VIEW_LIST_VIDEO_SYMBOLIC, + ICON_VIEW_MORE_HORIZONTAL_SYMBOLIC, + ICON_VIEW_MORE_SYMBOLIC, + ICON_VIEW_PAGED_SYMBOLIC, + ICON_VIEW_PIN_SYMBOLIC, + ICON_VIEW_READER, + ICON_VIEW_READER_SYMBOLIC, + ICON_VIEW_REFRESH, + ICON_VIEW_REFRESH_SYMBOLIC, + ICON_VIEW_RESTORE_SYMBOLIC, + ICON_VIEW_SORT_ASCENDING_SYMBOLIC, + ICON_VIEW_SORT_DESCENDING_SYMBOLIC, + ICON_WINDOW_CLOSE, + ICON_WINDOW_CLOSE_SYMBOLIC, + ICON_WINDOW_MAXIMIZE_SYMBOLIC, + ICON_WINDOW_MINIMIZE_SYMBOLIC, + ICON_WINDOW_NEW, + ICON_WINDOW_NEW_SYMBOLIC, + ICON_WINDOW_POP_OUT_SYMBOLIC, + ICON_WINDOW_RESTORE_SYMBOLIC, + ICON_ZOOM_FIT_BEST, + ICON_ZOOM_FIT_BEST_SYMBOLIC, + ICON_ZOOM_IN, + ICON_ZOOM_IN_SYMBOLIC, + ICON_ZOOM_ORIGINAL, + ICON_ZOOM_ORIGINAL_SYMBOLIC, + ICON_ZOOM_OUT, + ICON_ZOOM_OUT_SYMBOLIC, + ICON_ACCESSORIES_CALCULATOR, + ICON_ACCESSORIES_CALCULATOR_SYMBOLIC, + ICON_ACCESSORIES_SCREENSHOT, + ICON_ACCESSORIES_TEXT_EDITOR, + ICON_ACCESSORIES_TEXT_EDITOR_SYMBOLIC, + ICON_APPLICATION_DEFAULT_ICON, + ICON_ARCHIVE_MANAGER, + ICON_INTERNET_CHAT, + ICON_INTERNET_CHAT_SYMBOLIC, + ICON_INTERNET_MAIL, + ICON_INTERNET_MAIL_SYMBOLIC, + ICON_INTERNET_NEWS_READER, + ICON_INTERNET_NEWS_READER_SYMBOLIC, + ICON_INTERNET_WEB_BROWSER, + ICON_INTERNET_WEB_BROWSER_SYMBOLIC, + ICON_MULTIMEDIA_AUDIO_PLAYER, + ICON_MULTIMEDIA_PHOTO_MANAGER, + ICON_MULTIMEDIA_VIDEO_PLAYER, + ICON_OFFICE_ADDRESS_BOOK, + ICON_OFFICE_CALENDAR, + ICON_OFFICE_CALENDAR_SYMBOLIC, + ICON_ONBOARD, + ICON_POSTSCRIPT_VIEWER, + ICON_PREFERENCES_DESKTOP, + ICON_PREFERENCES_DESKTOP_FONT, + ICON_SYSTEM_FILE_MANAGER, + ICON_SYSTEM_OS_INSTALLER, + ICON_SYSTEM_SOFTWARE_INSTALL, + ICON_SYSTEM_SOFTWARE_INSTALL_SYMBOLIC, + ICON_SYSTEM_SOFTWARE_UPDATE, + ICON_SYSTEM_SOFTWARE_UPDATE_SYMBOLIC, + ICON_SYSTEM_USERS, + ICON_SYSTEM_USERS_SYMBOLIC, + ICON_UTILITIES_SYSTEM_MONITOR, + ICON_UTILITIES_TERMINAL, + ICON_UTILITIES_TERMINAL_SYMBOLIC, + ICON_APPLICATIONS_ACCESSORIES, + ICON_APPLICATIONS_AUDIO_SYMBOLIC, + ICON_APPLICATIONS_DEVELOPMENT, + ICON_APPLICATIONS_DEVELOPMENT_SYMBOLIC, + ICON_APPLICATIONS_EDUCATION, + ICON_APPLICATIONS_EDUCATION_SYMBOLIC, + ICON_APPLICATIONS_ENGINEERING_SYMBOLIC, + ICON_APPLICATIONS_FONTS, + ICON_APPLICATIONS_GAMES, + ICON_APPLICATIONS_GAMES_SYMBOLIC, + ICON_APPLICATIONS_GRAPHICS, + ICON_APPLICATIONS_GRAPHICS_SYMBOLIC, + ICON_APPLICATIONS_INTERFACEDESIGN, + ICON_APPLICATIONS_INTERNET_SYMBOLIC, + ICON_APPLICATIONS_MULTIMEDIA, + ICON_APPLICATIONS_MULTIMEDIA_SYMBOLIC, + ICON_APPLICATIONS_OFFICE, + ICON_APPLICATIONS_OFFICE_SYMBOLIC, + ICON_APPLICATIONS_OTHER, + ICON_APPLICATIONS_OTHER_SYMBOLIC, + ICON_APPLICATIONS_PHOTOGRAPHY, + ICON_APPLICATIONS_SCIENCE, + ICON_APPLICATIONS_SCIENCE_SYMBOLIC, + ICON_APPLICATIONS_UTILITIES, + ICON_APPLICATIONS_UTILITIES_SYMBOLIC, + ICON_APPLICATIONS_VIDEO_SYMBOLIC, + ICON_BUG, + ICON_BUG_SYMBOLIC, + ICON_EMOJI_ACTIVITY_SYMBOLIC, + ICON_EMOJI_BODY_SYMBOLIC, + ICON_EMOJI_FOOD_SYMBOLIC, + ICON_EMOJI_NATURE_SYMBOLIC, + ICON_EMOJI_OBJECTS_SYMBOLIC, + ICON_EMOJI_TRAVEL_SYMBOLIC, + ICON_EVENT_BIRTHDAY_SYMBOLIC, + ICON_PREFERENCES_BLUETOOTH_SYMBOLIC, + ICON_PREFERENCES_COLOR, + ICON_PREFERENCES_COLOR_SYMBOLIC, + ICON_PREFERENCES_DESKTOP_ACCESSIBILITY, + ICON_PREFERENCES_DESKTOP_ACCESSIBILITY_POINTING, + ICON_PREFERENCES_DESKTOP_ACCESSIBILITY_SYMBOLIC, + ICON_PREFERENCES_DESKTOP_ACCESSIBILITY_ZOOM, + ICON_PREFERENCES_DESKTOP_APPLICATIONS, + ICON_PREFERENCES_DESKTOP_DISPLAY, + ICON_PREFERENCES_DESKTOP_DISPLAY_SYMBOLIC, + ICON_PREFERENCES_DESKTOP_KEYBOARD, + ICON_PREFERENCES_DESKTOP_KEYBOARD_SYMBOLIC, + ICON_PREFERENCES_DESKTOP_LOCALE, + ICON_PREFERENCES_DESKTOP_LOCALE_SYMBOLIC, + ICON_PREFERENCES_DESKTOP_ONLINE_ACCOUNTS, + ICON_PREFERENCES_DESKTOP_ONLINE_ACCOUNTS_SYMBOLIC, + ICON_PREFERENCES_DESKTOP_PERIPHERALS, + ICON_PREFERENCES_DESKTOP_SOUND, + ICON_PREFERENCES_DESKTOP_WALLPAPER, + ICON_PREFERENCES_DESKTOP_WORKSPACES, + ICON_PREFERENCES_OTHER_SYMBOLIC, + ICON_PREFERENCES_SYSTEM, + ICON_PREFERENCES_SYSTEM_NETWORK, + ICON_PREFERENCES_SYSTEM_NETWORK_SYMBOLIC, + ICON_PREFERENCES_SYSTEM_NOTIFICATIONS, + ICON_PREFERENCES_SYSTEM_PARENTAL_CONTROLS, + ICON_PREFERENCES_SYSTEM_PARENTAL_CONTROL_SYMBOLIC, + ICON_PREFERENCES_SYSTEM_POWER, + ICON_PREFERENCES_SYSTEM_POWER_SYMBOLIC, + ICON_PREFERENCES_SYSTEM_PRIVACY_HOUSEKEEPING, + ICON_PREFERENCES_SYSTEM_SHARING, + ICON_PREFERENCES_SYSTEM_SHARING_SYMBOLIC, + ICON_PREFERENCES_SYSTEM_TIME, + ICON_PREFERENCES_SYSTEM_TIME_SYMBOLIC, + ICON_PREFERENCES_SYSTEM_WINDOWS, + ICON_AC_ADAPTER_SYMBOLIC, + ICON_AUDIO_CARD_SYMBOLIC, + ICON_AUDIO_HEADPHONES, + ICON_AUDIO_HEADPHONES_SYMBOLIC, + ICON_AUDIO_HEADSETS, + ICON_AUDIO_HEADSET_SYMBOLIC, + ICON_AUDIO_INPUT_MICROPHONE, + ICON_AUDIO_INPUT_MICROPHONE_SYMBOLIC, + ICON_AUDIO_SPEAKER_CENTER, + ICON_AUDIO_SPEAKER_CENTER_BACK, + ICON_AUDIO_SPEAKER_CENTER_BACK_TESTING, + ICON_AUDIO_SPEAKER_CENTER_TESTING, + ICON_AUDIO_SPEAKER_LEFT, + ICON_AUDIO_SPEAKER_LEFT_BACK, + ICON_AUDIO_SPEAKER_LEFT_BACK_TESTING, + ICON_AUDIO_SPEAKER_LEFT_SIDE, + ICON_AUDIO_SPEAKER_LEFT_SIDE_TESTING, + ICON_AUDIO_SPEAKER_LEFT_TESTING, + ICON_AUDIO_SPEAKER_RIGHT, + ICON_AUDIO_SPEAKER_RIGHT_BACK, + ICON_AUDIO_SPEAKER_RIGHT_BACK_TESTING, + ICON_AUDIO_SPEAKER_RIGHT_SIDE, + ICON_AUDIO_SPEAKER_RIGHT_SIDE_TESTING, + ICON_AUDIO_SPEAKER_RIGHT_TESTING, + ICON_AUDIO_SPEAKERS, + ICON_AUDIO_SPEAKERS_SYMBOLIC, + ICON_AUDIO_SUBWOOFER, + ICON_AUDIO_SUBWOOFER_TESTING, + ICON_BATTERY, + ICON_BATTERY_SYMBOLIC, + ICON_BLUETOOTH, + ICON_BLUETOOTH_SYMBOLIC, + ICON_CAMERA_PHOTO, + ICON_CAMERA_PHOTO_SYMBOLIC, + ICON_CAMERA_VIDEO, + ICON_CAMERA_VIDEO_SYMBOLIC, + ICON_CAMERA_WEB, + ICON_CAMERA_WEB_SYMBOLIC, + ICON_COLORIMETER_COLORHUG_SYMBOLIC, + ICON_COMPUTER_LAPTOP, + ICON_COMPUTER_LAPTOP_SYMBOLIC, + ICON_DISPLAY_PROJECTOR_SYMBOLIC, + ICON_DRIVE_HARDDISK, + ICON_DRIVE_HARDDISK_IEEE1394_SYMBOLIC, + ICON_DRIVE_HARDDISK_SOLIDSTATE, + ICON_DRIVE_HARDDISK_SOLIDSTATE_SYMBOLIC, + ICON_DRIVE_HARDDISK_SYMBOLIC, + ICON_DRIVE_MULTIDISK_SYMBOLIC, + ICON_DRIVE_OPTICAL_SYMBOLIC, + ICON_DRIVE_REMOVABLE_MEDIA, + ICON_DRIVE_REMOVABLE_MEDIA_SYMBOLIC, + ICON_DRIVE_REMOVABLE_MEDIA_USB, + ICON_FINGERPRINT, + ICON_FINGERPRINT_SYMBOLIC, + ICON_GNOME_DEV_PRINTER_NEW, + ICON_INPUT_DIALPAD_SYMBOLIC, + ICON_INPUT_GAMING, + ICON_INPUT_GAMING_SYMBOLIC, + ICON_INPUT_KEYBOARD, + ICON_INPUT_KEYBOARD_SYMBOLIC, + ICON_INPUT_MOUSE, + ICON_INPUT_MOUSE_SYMBOLIC, + ICON_INPUT_TABLET, + ICON_INPUT_TABLET_SYMBOLIC, + ICON_INPUT_TOUCHPAD, + ICON_INPUT_TOUCHPAD_SYMBOLIC, + ICON_MEDIA_FLASH_CF, + ICON_MEDIA_FLASH_MS, + ICON_MEDIA_FLASH_SYMBOLIC, + ICON_MEDIA_FLOPPY_SYMBOLIC, + ICON_MEDIA_MEMORY, + ICON_MEDIA_MEMORY_SD, + ICON_MEDIA_MEMORY_SEMBOLIC, + ICON_MEDIA_MEMORY_SM, + ICON_MEDIA_OPTICAL, + ICON_MEDIA_OPTICAL_SYMBOLIC, + ICON_MEDIA_REMOVABLE_SYMBOLIC, + ICON_MEDIA_TAPE_SYMBOLIC, + ICON_MEDIA_ZIP_SYMBOLIC, + ICON_MODEM, + ICON_MODEM_SYMBOLIC, + ICON_MULTIMEDIA_PLAYER, + ICON_MULTIMEDIA_PLAYER_SYMBOLIC, + ICON_NETWORK_CELLULAR, + ICON_NETWORK_FIREWALL, + ICON_NETWORK_VPN, + ICON_NETWORK_WIRED, + ICON_NETWORK_WIRELESS, + ICON_NETWORK_WIRELESS_HOTSPOT, + ICON_NM_DEVICE_WWAN, + ICON_PDA_SYMBOLIC, + ICON_PHONE, + ICON_PHONE_SYMBOLIC, + ICON_PRINTER, + ICON_PRINTER_NETWORK, + ICON_PRINTER_SYMBOLIC, + ICON_SCANNER, + ICON_SCANNER_SYMBOLIC, + ICON_TABLET, + ICON_TABLET_SYMBOLIC, + ICON_TV_SYMBOLIC, + ICON_UNINTERRUPTIBLE_POWER_SUPPLY, + ICON_UNINTERRUPTIBLE_POWER_SUPPLY_SYMBOLIC, + ICON_VIDEO_DISPLAY, + ICON_VIDEO_DISPLAY_SYMBOLIC, + ICON_EMBLEM_DEFAULT_SYMBOLIC, + ICON_EMBLEM_DOCUMENTS_SYMBOLIC, + ICON_EMBLEM_FAVORITE_SYMBOLIC, + ICON_EMBLEM_IMPORTANT_SYMBOLIC, + ICON_EMBLEM_MUSIC_SYMBOLIC, + ICON_EMBLEM_OK_SYMBOLIC, + ICON_EMBLEM_PHOTOS_SYMBOLIC, + ICON_EMBLEM_READONLY, + ICON_EMBLEM_SHARED_SYMBOLIC, + ICON_EMBLEM_SYMBOLIC_LINK, + ICON_EMBLEM_SYNCHRONIZED, + ICON_EMBLEM_SYNCHRONIZING_SYMBOLIC, + ICON_EMBLEM_UNREADABLE, + ICON_EMBLEM_VIDEOS_SYMBOLIC, + ICON_FACE_ANGEL, + ICON_FACE_ANGEL_SYMBOLIC, + ICON_FACE_ANGRY, + ICON_FACE_ANGRY_SYMBOLIC, + ICON_FACE_COOL, + ICON_FACE_COOL_SYMBOLIC, + ICON_FACE_CRYING, + ICON_FACE_CRYING_SYMBOLIC, + ICON_FACE_DEVILISH, + ICON_FACE_DEVILISH_SYMBOLIC, + ICON_FACE_EMBARRASSED, + ICON_FACE_EMBARRASSED_SYMBOLIC, + ICON_FACE_HEART, + ICON_FACE_HEART_BROKEN, + ICON_FACE_HEART_BROKEN_SYMBOLIC, + ICON_FACE_HEART_SYMBOLIC, + ICON_FACE_KISS, + ICON_FACE_KISS_SYMBOLIC, + ICON_FACE_LAUGH, + ICON_FACE_LAUGH_SYMBOLIC, + ICON_FACE_MONKEY_SYMBOLIC, + ICON_FACE_PLAIN, + ICON_FACE_PLAIN_SYMBOLIC, + ICON_FACE_RASPBERRY, + ICON_FACE_RASPBERRY_SYMBOLIC, + ICON_FACE_SAD, + ICON_FACE_SAD_SYMBOLIC, + ICON_FACE_SICK, + ICON_FACE_SICK_SYMBOLIC, + ICON_FACE_SMILE, + ICON_FACE_SMILE_BIG, + ICON_FACE_SMILE_BIG_SYMBOLIC, + ICON_FACE_SMILE_SYMBOLIC, + ICON_FACE_SMIRK, + ICON_FACE_SMIRK_SYMBOLIC, + ICON_FACE_SURPRISE, + ICON_FACE_SURPRISE_SYMBOLIC, + ICON_FACE_TIRED, + ICON_FACE_TIRED_SYMBOLIC, + ICON_FACE_UNCERTAIN, + ICON_FACE_UNCERTAIN_SYMBOLIC, + ICON_FACE_WINK, + ICON_FACE_WINK_SYMBOLIC, + ICON_FACE_WORRIED, + ICON_FACE_WORRIED_SYMBOLIC, + ICON_APPLICATION_CERTIFICATE_SYMBOLIC, + ICON_APPLICATION_EPUB_ZIP, + ICON_APPLICATION_ILLUSTRATOR, + ICON_APPLICATION_JAVASCRIPT, + ICON_APPLICATION_MSWORD, + ICON_APPLICATION_OCTET_STREAM, + ICON_APPLICATION_PDF, + ICON_APPLICATION_PGP, + ICON_APPLICATION_RSS_XML_SYMBOLIC, + ICON_APPLICATION_VND, + ICON_APPLICATION_X_APPLIANCE_SYMBOLIC, + ICON_APPLICATION_X_BITTORRENT, + ICON_APPLICATION_X_CD_IMAGE, + ICON_APPLICATION_X_DESKTOP, + ICON_APPLICATION_X_EXECUTABLE_SYMBOLIC, + ICON_APPLICATION_X_FICTIONBOOK_XML, + ICON_APPLICATION_X_FIRMWARE, + ICON_APPLICATION_X_FIRMWARE_SYMBOLIC, + ICON_APPLICATION_X_FLASH_VIDEO, + ICON_APPLICATION_X_MS_DOS_EXECUTABLE, + ICON_APPLICATION_X_PARTIAL_DOWNLOAD, + ICON_APPLICATION_X_PHP, + ICON_APPLICATION_X_RUBY, + ICON_AUDIO_X_GENERIC, + ICON_AUDIO_X_GENERIC_SYMBOLIC, + ICON_AUDIO_X_PLAYLIST, + ICON_EXTENSION, + ICON_FONT_X_GENERIC, + ICON_FONT_X_GENERIC_SYMBOLIC, + ICON_IMAGE_VND, + ICON_IMAGE_X_GENERIC, + ICON_IMAGE_X_GENERIC_SYMBOLIC, + ICON_IMAGE_X_XCF, + ICON_INTERNET_FEED, + ICON_MODEL, + ICON_OFFICE_CONTACT, + ICON_OFFICE_DATABASE, + ICON_PACKAGE_X_GENERIC, + ICON_PACKAGE_X_GENERIC_SYMBOLIC, + ICON_PAYMENT_CARD, + ICON_PAYMENT_CARD_AMEX, + ICON_PAYMENT_CARD_DINERS_CLUB, + ICON_PAYMENT_CARD_DISCOVER, + ICON_PAYMENT_CARD_JCB, + ICON_PAYMENT_CARD_MASTERCARD, + ICON_PAYMENT_CARD_SYMBOLIC, + ICON_PAYMENT_CARD_UNIONPAY, + ICON_PAYMENT_CARD_VISA, + ICON_TEXT, + ICON_TEXT_CSS, + ICON_TEXT_HTML, + ICON_TEXT_HTML_SYMBOLIC, + ICON_TEXT_MARKDOWN, + ICON_TEXT_X_BIBTEX, + ICON_TEXT_X_CHANGELOG, + ICON_TEXT_X_CHDR, + ICON_TEXT_X_COPYING, + ICON_TEXT_X_COPYING_SYMBOLIC, + ICON_TEXT_X_CSRC, + ICON_TEXT_X_GENERIC_SYMBOLIC, + ICON_TEXT_X_GENERIC_TEMPLATE, + ICON_TEXT_X_GETTEXT_TRANSLATION, + ICON_TEXT_X_GETTEXT_TRANSLATION_TEMPLATE, + ICON_TEXT_X_GO, + ICON_TEXT_X_INSTALL, + ICON_TEXT_X_MAKEFILE, + ICON_TEXT_X_PREVIEW, + ICON_TEXT_X_PYTHON, + ICON_TEXT_X_README, + ICON_TEXT_X_SASS, + ICON_TEXT_X_SCRIPT, + ICON_TEXT_X_SSA, + ICON_TEXT_X_TEX, + ICON_TEXT_X_VALA, + ICON_UNKNOWN, + ICON_VIDEO_X_GENERIC, + ICON_VIDEO_X_GENERIC_SYMBOLIC, + ICON_X_OFFICE_ADDRESS_BOOK_SYMBOLIC, + ICON_X_OFFICE_DOCUMENT, + ICON_X_OFFICE_DOCUMENT_SYMBOLIC, + ICON_X_OFFICE_DOCUMENT_TEMPLATE, + ICON_X_OFFICE_DRAWING, + ICON_X_OFFICE_DRAWING_SYMBOLIC, + ICON_X_OFFICE_DRAWING_TEMPLATE, + ICON_X_OFFICE_PRESENTATION, + ICON_X_OFFICE_PRESENTATION_SYMBOLIC, + ICON_X_OFFICE_PRESENTATION_TEMPLATE, + ICON_X_OFFICE_SPREADSHEET, + ICON_X_OFFICE_SPREADSHEET_SYMBOLIC, + ICON_X_OFFICE_SPREADSHEET_TEMPLATE, + ICON_BOOKMARK_MISSING, + ICON_DISTRIBUTOR_LOGO, + ICON_DISTRIBUTOR_LOGO_SYMBOLIC, + ICON_FOLDER, + ICON_FOLDER_DOCUMENTS, + ICON_FOLDER_DOCUMENTS_OPEN, + ICON_FOLDER_DOCUMENTS_SYMBOLIC, + ICON_FOLDER_DOWNLOAD, + ICON_FOLDER_DOWNLOAD_OPEN, + ICON_FOLDER_DOWNLOAD_SYMBOLIC, + ICON_FOLDER_MUSIC, + ICON_FOLDER_MUSIC_OPEN, + ICON_FOLDER_MUSIC_SYMBOLIC, + ICON_FOLDER_OPEN, + ICON_FOLDER_PICTURES, + ICON_FOLDER_PICTURES_OPEN, + ICON_FOLDER_PICTURES_SYMBOLIC, + ICON_FOLDER_PUBLICSHARE, + ICON_FOLDER_PUBLICSHARE_OPEN, + ICON_FOLDER_PUBLICSHARE_SYMBOLIC, + ICON_FOLDER_RECENT, + ICON_FOLDER_RECENT_SYMBOLIC, + ICON_FOLDER_REMOTE, + ICON_FOLDER_REMOTE_OPEN, + ICON_FOLDER_SAVED_SEARCH, + ICON_FOLDER_SYMBOLIC, + ICON_FOLDER_TAG, + ICON_FOLDER_TEMPLATES, + ICON_FOLDER_TEMPLATES_OPEN, + ICON_FOLDER_TEMPLATES_SYMBOLIC, + ICON_FOLDER_VIDEOS, + ICON_FOLDER_VIDEOS_OPEN, + ICON_FOLDER_VIDEOS_SYMBOLIC, + ICON_INTERNET_RADIO, + ICON_INTERNET_RADIO_SYMBOLIC, + ICON_LIBRARY_AUDIOBOOK, + ICON_LIBRARY_PLACES, + ICON_LIBRARY_PODCAST, + ICON_MAIL_INBOX, + ICON_MAIL_INBOX_SYMBOLIC, + ICON_MAIL_MAILBOX, + ICON_MAIL_MAILBOX_SYMBOLIC, + ICON_MAIL_OUTBOX, + ICON_MAIL_OUTBOX_SYMBOLIC, + ICON_NETWORK_SERVER_SYMBOLIC, + ICON_PLAYLIST, + ICON_PLAYLIST_AUTOMATIC, + ICON_PLAYLIST_QUEUE, + ICON_PLAYLIST_QUEUE_SYMBOLIC, + ICON_PLAYLIST_SIMILAR, + ICON_PLAYLIST_SYMBOLIC, + ICON_TAG_SYMBOLIC, + ICON_USER_BOOKMARKS_SYMBOLIC, + ICON_USER_HOME, + ICON_USER_HOME_OPEN, + ICON_USER_HOME_SYMBOLIC, + ICON_USER_TRASH, + ICON_USER_TRASH_FULL, + ICON_USER_TRASH_SYMBOLIC, + ICON_AIRPLANE_MODE, + ICON_AIRPLANE_MODE_SYMBOLIC, + ICON_ALARM_SYMBOLIC, + ICON_APPOINTMENT_MISSED, + ICON_APPOINTMENT_MISSED_SYMBOLIC, + ICON_APPOINTMENT_SOON, + ICON_APPOINTMENT_SOON_SYMBOLIC, + ICON_AUDIO_VOLUME_HIGH_SYMBOLIC, + ICON_AUDIO_VOLUME_LOW_SYMBOLIC, + ICON_AUDIO_VOLUME_MEDIUM_SYMBOLIC, + ICON_AUDIO_VOLUME_MUTED_BLOCKING_SYMBOLIC, + ICON_AUDIO_VOLUME_MUTED_SYMBOLIC, + ICON_AVATAR_DEFAULT, + ICON_AVATAR_DEFAULT_SYMBOLIC, + ICON_BATTERY_AC_ADAPTER, + ICON_BATTERY_AC_ADAPTER_SYMBOLIC, + ICON_BATTERY_CAUTION, + ICON_BATTERY_CAUTION_CHARGING, + ICON_BATTERY_CAUTION_CHARGING_SYMBOLIC, + ICON_BATTERY_CAUTION_SYMBOLIC, + ICON_BATTERY_EMPTY, + ICON_BATTERY_EMPTY_CHARGING, + ICON_BATTERY_EMPTY_CHARGING_SYMBOLIC, + ICON_BATTERY_EMPTY_SYMBOLIC, + ICON_BATTERY_FULL, + ICON_BATTERY_FULL_CHARGED, + ICON_BATTERY_FULL_CHARGED_SYMBOLIC, + ICON_BATTERY_FULL_CHARGING, + ICON_BATTERY_FULL_CHARGING_SYMBOLIC, + ICON_BATTERY_FULL_SYMBOLIC, + ICON_BATTERY_GOOD, + ICON_BATTERY_GOOD_CHARGING, + ICON_BATTERY_GOOD_CHARGING_SYMBOLIC, + ICON_BATTERY_GOOD_SYMBOLIC, + ICON_BATTERY_LOW, + ICON_BATTERY_LOW_CHARGING, + ICON_BATTERY_LOW_CHARGING_SYMBOLIC, + ICON_BATTERY_LOW_SYMBOLIC, + ICON_BATTERY_MISSING, + ICON_BATTERY_MISSING_SYMBOLIC, + ICON_BLUETOOTH_ACTIVE_SYMBOLIC, + ICON_BLUETOOTH_DISABLED, + ICON_BLUETOOTH_DISABLED_10_SYMBOLIC, + ICON_BLUETOOTH_DISABLED_20_SYMBOLIC, + ICON_BLUETOOTH_DISABLED_30_SYMBOLIC, + ICON_BLUETOOTH_DISABLED_40_SYMBOLIC, + ICON_BLUETOOTH_DISABLED_50_SYMBOLIC, + ICON_BLUETOOTH_DISABLED_60_SYMBOLIC, + ICON_BLUETOOTH_DISABLED_70_SYMBOLIC, + ICON_BLUETOOTH_DISABLED_80_SYMBOLIC, + ICON_BLUETOOTH_DISABLED_90_SYMBOLIC, + ICON_BLUETOOTH_DISABLED_SYMBOLIC, + ICON_BLUETOOTH_PAIRED_SYMBOLIC, + ICON_CALL_MISSED_SYMBOLIC, + ICON_CHANGES_ALLOW, + ICON_CHANGES_ALLOW_SYMBOLIC, + ICON_CHANGES_PREVENT_SYMBOLIC, + ICON_CHANNEL_INSECURE_SYMBOLIC, + ICON_CHANNEL_SECURE_SYMBOLIC, + ICON_CHECK_ACTIVE_SYMBOLIC, + ICON_CHECKBOX_CHECKED_SYMBOLIC, + ICON_CHECKBOX_MIXED_SYMBOLIC, + ICON_CHECKBOX_SYMBOLIC, + ICON_CHECK_MIXED_SYMBOLIC, + ICON_COMPUTER_FAIL_SYMBOLIC, + ICON_CONTENT_LOADING_SYMBOLIC, + ICON_DAYTIME_SUNRISE_SYMBOLIC, + ICON_DAYTIME_SUNSET_SYMBOLIC, + ICON_DIALOG_ERROR, + ICON_DIALOG_ERROR_SYMBOLIC, + ICON_DIALOG_INFORMATION, + ICON_DIALOG_INFORMATION_SYMBOLIC, + ICON_DIALOG_PASSWORD, + ICON_DIALOG_PASSWORD_SYMBOLIC, + ICON_DIALOG_WARNING, + ICON_DIALOG_WARNING_SYMBOLIC, + ICON_DISPLAY_BRIGHTNESS_SYMBOLIC, + ICON_FOLDER_OPEN_SYMBOLIC, + ICON_FOLDER_VISITING_SYMBOLIC, + ICON_IMAGE_LOADING, + ICON_IMAGE_MISSING, + ICON_INPUT_KEYBOARD_CAPSLOCK_SYMBOLIC, + ICON_INPUT_KEYBOARD_NUMLOCK_SYMBOLIC, + ICON_KEYBOARD_BRIGHTNESS_SYMBOLIC, + ICON_LOCATION_ACTIVE_SYMBOLIC, + ICON_LOCATION_DISABLED_SYMBOLIC, + ICON_LOCATION_INACTIVE_SYMBOLIC, + ICON_LOCKED, + ICON_MAIL_ATTACHMENT_SYMBOLIC, + ICON_MAIL_FORWARDED_SYMBOLIC, + ICON_MAIL_IMPORTANT_SYMBOLIC, + ICON_MAIL_READ_SYMBOLIC, + ICON_MAIL_REPLIED_SYMBOLIC, + ICON_MAIL_UNREAD, + ICON_MAIL_UNREAD_SYMBOLIC, + ICON_MEDIA_PLAYLIST_CONSECUTIVE_SYMBOLIC, + ICON_MEDIA_PLAYLIST_NO_REPEAT_SYMBOLIC, + ICON_MEDIA_PLAYLIST_REPEAT, + ICON_MEDIA_PLAYLIST_REPEAT_SONG_SYMBOLIC, + ICON_MEDIA_PLAYLIST_REPEAT_SYMBOLIC, + ICON_MEDIA_PLAYLIST_SHUFFLE_SYMBOLIC, + ICON_MICROPHONE_SENSITIVITY_HIGH_SYMBOLIC, + ICON_MICROPHONE_SENSITIVITY_LOW_SYMBOLIC, + ICON_MICROPHONE_SENSITIVITY_MEDIUM_SYMBOLIC, + ICON_MICROPHONE_SENSITIVITY_MUTED_10_SYMBOLIC, + ICON_MICROPHONE_SENSITIVITY_MUTED_20_SYMBOLIC, + ICON_MICROPHONE_SENSITIVITY_MUTED_30_SYMBOLIC, + ICON_MICROPHONE_SENSITIVITY_MUTED_40_SYMBOLIC, + ICON_MICROPHONE_SENSITIVITY_MUTED_50_SYMBOLIC, + ICON_MICROPHONE_SENSITIVITY_MUTED_60_SYMBOLIC, + ICON_MICROPHONE_SENSITIVITY_MUTED_70_SYMBOLIC, + ICON_MICROPHONE_SENSITIVITY_MUTED_80_SYMBOLIC, + ICON_MICROPHONE_SENSITIVITY_MUTED_90_SYMBOLIC, + ICON_MICROPHONE_SENSITIVITY_MUTED_SYMBOLIC, + ICON_NETWORK_CELLULAR_ACQUIRING_SYMBOLIC, + ICON_NETWORK_CELLULAR_CONNECTED_SYMBOLIC, + ICON_NETWORK_CELLULAR_NO_ROUTE_SYMBOLIC, + ICON_NETWORK_CELLULAR_OFFLINE_SYMBOLIC, + ICON_NETWORK_CELLULAR_SIGNAL_EXCELLENT_SECURE_SYMBOLIC, + ICON_NETWORK_CELLULAR_SIGNAL_EXCELLENT_SYMBOLIC, + ICON_NETWORK_CELLULAR_SIGNAL_GOOD_SECURE_SYMBOLIC, + ICON_NETWORK_CELLULAR_SIGNAL_GOOD_SYMBOLIC, + ICON_NETWORK_CELLULAR_SIGNAL_NONE_SECURE_SYMBOLIC, + ICON_NETWORK_CELLULAR_SIGNAL_NONE_SYMBOLIC, + ICON_NETWORK_CELLULAR_SIGNAL_OK_SECURE_SYMBOLIC, + ICON_NETWORK_CELLULAR_SIGNAL_OK_SYMBOLIC, + ICON_NETWORK_CELLULAR_SIGNAL_WEAK_SECURE_SYMBOLIC, + ICON_NETWORK_CELLULAR_SIGNAL_WEAK_SYMBOLIC, + ICON_NETWORK_ERROR, + ICON_NETWORK_ERROR_SYMBOLIC, + ICON_NETWORK_IDLE, + ICON_NETWORK_OFFLINE_SYMBOLIC, + ICON_NETWORK_VPN_ACQUIRING_SYMBOLIC, + ICON_NETWORK_VPN_LOCK_SYMBOLIC, + ICON_NETWORK_VPN_SYMBOLIC, + ICON_NETWORK_WIRED_ACQUIRING_SYMBOLIC, + ICON_NETWORK_WIRED_DISCONNECTED, + ICON_NETWORK_WIRED_NO_ROUTE_SYMBOLIC, + ICON_NETWORK_WIRED_OFFLINE_SYMBOLIC, + ICON_NETWORK_WIRED_SYMBOLIC, + ICON_NETWORK_WIRELESS_ACQUIRING_SYMBOLIC, + ICON_NETWORK_WIRELESS_CONNECTED_SYMBOLIC, + ICON_NETWORK_WIRELESS_ENCRYPTED_SYMBOLIC, + ICON_NETWORK_WIRELESS_HOTSPOT_SYMBOLIC, + ICON_NETWORK_WIRELESS_NO_ROUTE_SYMBOLIC, + ICON_NETWORK_WIRELESS_OFFLINE_SYMBOLIC, + ICON_NETWORK_WIRELESS_SIGNAL_EXCELLENT, + ICON_NETWORK_WIRELESS_SIGNAL_EXCELLENT_SECURE_SYMBOLIC, + ICON_NETWORK_WIRELESS_SIGNAL_EXCELLENT_SYMBOLIC, + ICON_NETWORK_WIRELESS_SIGNAL_GOOD, + ICON_NETWORK_WIRELESS_SIGNAL_GOOD_SECURE_SYMBOLIC, + ICON_NETWORK_WIRELESS_SIGNAL_GOOD_SYMBOLIC, + ICON_NETWORK_WIRELESS_SIGNAL_NONE_SYMBOLIC, + ICON_NETWORK_WIRELESS_SIGNAL_OK, + ICON_NETWORK_WIRELESS_SIGNAL_OK_SECURE_SYMBOLIC, + ICON_NETWORK_WIRELESS_SIGNAL_OK_SYMBOLIC, + ICON_NETWORK_WIRELESS_SIGNAL_WEAK, + ICON_NETWORK_WIRELESS_SIGNAL_WEAK_SECURE_SYMBOLIC, + ICON_NETWORK_WIRELESS_SIGNAL_WEAK_SYMBOLIC, + ICON_NETWORK_WIRELESS_SYMBOLIC, + ICON_NIGHT_LIGHT, + ICON_NIGHT_LIGHT_DISABLED_10_SYMBOLIC, + ICON_NIGHT_LIGHT_DISABLED_20_SYMBOLIC, + ICON_NIGHT_LIGHT_DISABLED_30_SYMBOLIC, + ICON_NIGHT_LIGHT_DISABLED_40_SYMBOLIC, + ICON_NIGHT_LIGHT_DISABLED_50_SYMBOLIC, + ICON_NIGHT_LIGHT_DISABLED_60_SYMBOLIC, + ICON_NIGHT_LIGHT_DISABLED_70_SYMBOLIC, + ICON_NIGHT_LIGHT_DISABLED_80_SYMBOLIC, + ICON_NIGHT_LIGHT_DISABLED_90_SYMBOLIC, + ICON_NIGHT_LIGHT_DISABLED_SYMBOLIC, + ICON_NIGHT_LIGHT_SYMBOLIC, + ICON_NM_NO_CONNECTION, + ICON_NM_SIGNAL_0, + ICON_NM_SIGNAL_0_SECURE, + ICON_NM_SIGNAL_100, + ICON_NM_SIGNAL_100_SECURE, + ICON_NM_SIGNAL_25, + ICON_NM_SIGNAL_25_SECURE, + ICON_NM_SIGNAL_50, + ICON_NM_SIGNAL_50_SECURE, + ICON_NM_SIGNAL_75, + ICON_NM_SIGNAL_75_SECURE, + ICON_NM_VPN_ACTIVE_LOCK, + ICON_NM_VPN_LOCK, + ICON_NON_STARRED, + ICON_NON_STARRED_SYMBOLIC, + ICON_NOTIFICATION_AUDIO_VOLUME_HIGH, + ICON_NOTIFICATION_AUDIO_VOLUME_LOW, + ICON_NOTIFICATION_AUDIO_VOLUME_MEDIUM, + ICON_NOTIFICATION_AUDIO_VOLUME_MUTED, + ICON_NOTIFICATION_DEVICE_EJECT, + ICON_NOTIFICATION_DISABLED, + ICON_NOTIFICATION_DISABLED_10_SYMBOLIC, + ICON_NOTIFICATION_DISABLED_20_SYMBOLIC, + ICON_NOTIFICATION_DISABLED_30_SYMBOLIC, + ICON_NOTIFICATION_DISABLED_40_SYMBOLIC, + ICON_NOTIFICATION_DISABLED_50_SYMBOLIC, + ICON_NOTIFICATION_DISABLED_60_SYMBOLIC, + ICON_NOTIFICATION_DISABLED_70_SYMBOLIC, + ICON_NOTIFICATION_DISABLED_80_SYMBOLIC, + ICON_NOTIFICATION_DISABLED_90_SYMBOLIC, + ICON_NOTIFICATION_DISABLED_SYMBOLIC, + ICON_NOTIFICATION_DISPLAY_BRIGHTNESS, + ICON_NOTIFICATION_KEYBOARD_BRIGHTNESS, + ICON_NOTIFICATION_NETWORK_ETHERNET_DISCONNECTED, + ICON_NOTIFICATION_NETWORK_WIRED, + ICON_NOTIFICATION_NETWORK_WIRELESS, + ICON_NOTIFICATION_NETWORK_WIRELESS_DISCONNECTED, + ICON_NOTIFICATION_NETWORK_WIRELESS_DISCONNECTED_SYMBOLIC, + ICON_NOTIFICATION_NETWORK_WIRELESS_SYMBOLIC, + ICON_NOTIFICATION_NEW_10_SYMBOLIC, + ICON_NOTIFICATION_NEW_20_SYMBOLIC, + ICON_NOTIFICATION_NEW_30_SYMBOLIC, + ICON_NOTIFICATION_NEW_40_SYMBOLIC, + ICON_NOTIFICATION_NEW_50_SYMBOLIC, + ICON_NOTIFICATION_NEW_60_SYMBOLIC, + ICON_NOTIFICATION_NEW_70_SYMBOLIC, + ICON_NOTIFICATION_NEW_80_SYMBOLIC, + ICON_NOTIFICATION_NEW_90_SYMBOLIC, + ICON_NOTIFICATION_NEW_SYMBOLIC, + ICON_NOTIFICATION_SYMBOLIC, + ICON_PAGER_CHECKED_SYMBOLIC, + ICON_PRINTER_ERROR, + ICON_PRINTER_ERROR_SYMBOLIC, + ICON_PRINTER_PRINTING_SYMBOLIC, + ICON_PRINTER_WARNING_SYMBOLIC, + ICON_PROCESS_COMPLETED, + ICON_PROCESS_COMPLETED_SYMBOLIC, + ICON_PROCESS_ERROR_SYMBOLIC, + ICON_PROCESS_WORKING_SYMBOLIC, + ICON_RADIO_CHECKED_SYMBOLIC, + ICON_RADIO_MIXED_SYMBOLIC, + ICON_RADIO_SYMBOLIC, + ICON_ROTATION_ALLOWED_SYMBOLIC, + ICON_ROTATION_LOCKED_SYMBOLIC, + ICON_SECURITY_HIGH, + ICON_SECURITY_HIGH_SYMBOLIC, + ICON_SECURITY_LOW, + ICON_SECURITY_LOW_SYMBOLIC, + ICON_SECURITY_MEDIUM, + ICON_SECURITY_MEDIUM_SYMBOLIC, + ICON_SEMI_STARRED, + ICON_SEMI_STARRED_SYMBOLIC, + ICON_SOFTWARE_UPDATE_AVAILABLE_SYMBOLIC, + ICON_SOFTWARE_UPDATE_URGENT_SYMBOLIC, + ICON_STARRED, + ICON_STARRED_SYMBOLIC, + ICON_TASK_DUE_SYMBOLIC, + ICON_TASK_PAST_DUE_SYMBOLIC, + ICON_TOUCHPAD_DISABLED_SYMBOLIC, + ICON_USER_AVAILABLE, + ICON_USER_AVAILABLE_SYMBOLIC, + ICON_USER_AWAY, + ICON_USER_AWAY_SYMBOLIC, + ICON_USER_BUSY, + ICON_USER_BUSY_SYMBOLIC, + ICON_USER_IDLE_SYMBOLIC, + ICON_USER_INVISIBLE, + ICON_USER_INVISIBLE_SYMBOLIC, + ICON_USER_OFFLINE, + ICON_USER_OFFLINE_SYMBOLIC, + ICON_USER_STATUS_PENDING_SYMBOLIC, + ICON_USER_TRASH_FULL_SYMBOLIC, + ICON_USER_TYPING, + ICON_VIEW_PRIVATE, + ICON_VIEW_PRIVATE_SYMBOLIC, + ICON_VIEW_WRAPPED_SYMBOLIC, + ICON_WEATHER_CLEAR_NIGHT_SYMBOLIC, + ICON_WEATHER_CLEAR_SYMBOLIC, + ICON_WEATHER_FEW_CLOUDS_NIGHT_SYMBOLIC, + ICON_WEATHER_FEW_CLOUDS_SYMBOLIC, + ICON_WEATHER_FOG_NIGHT_SYMBOLIC, + ICON_WEATHER_FOG_SYMBOLIC, + ICON_WEATHER_OVERCAST_NIGHT_SYMBOLIC, + ICON_WEATHER_OVERCAST_SYMBOLIC, + ICON_WEATHER_SEVERE_ALERT_SYMBOLIC, + ICON_WEATHER_SHOWERS_NIGHT_SYMBOLIC, + ICON_WEATHER_SHOWERS_SCATTERED_NIGHT_SYMBOLIC, + ICON_WEATHER_SHOWERS_SCATTERED_SYMBOLIC, + ICON_WEATHER_SHOWERS_SYMBOLIC, + ICON_WEATHER_SNOW_NIGHT_SYMBOLIC, + ICON_WEATHER_SNOW_SYMBOLIC, + ICON_WEATHER_STORM_NIGHT_SYMBOLIC, + ICON_WEATHER_STORM_SYMBOLIC, + ICON_WEATHER_STORM_TORNADO_NIGHT_SYMBOLIC, + ICON_WEATHER_STORM_TORNADO_SYMBOLIC, + ICON_WEATHER_WINDY_SYMBOLIC, + ICON_CHECKBOX_CHECKED_DISABLED, + ICON_CHECKBOX_CHECKED_HOVER, + ICON_CHECKBOX_CHECKED_NORMAL, + ICON_CHECKBOX_CHECKED_PRESSED, + ICON_CHECKBOX_EXCLUDED_DISABLED, + ICON_CHECKBOX_EXCLUDED_HOVER, + ICON_CHECKBOX_EXCLUDED_NORMAL, + ICON_CHECKBOX_EXCLUDED_PRESSED, + ICON_CHECKBOX_INDETERMINATE_DISABLED, + ICON_CHECKBOX_INDETERMINATE_HOVER, + ICON_CHECKBOX_INDETERMINATE_NORMAL, + ICON_CHECKBOX_INDETERMINATE_PRESSED, + ICON_CHECKBOX_UNCHECKED_DISABLED, + ICON_CHECKBOX_UNCHECKED_HOVER, + ICON_CHECKBOX_UNCHECKED_NORMAL, + ICON_CHECKBOX_UNCHECKED_PRESSED, + ICON_RADIOBOX_CHECKED_DISABLED, + ICON_RADIOBOX_CHECKED_HOVER, + ICON_RADIOBOX_CHECKED_NORMAL, + ICON_RADIOBOX_CHECKED_PRESSED, + ICON_RADIOBOX_UNCHECKED_DISABLED, + ICON_RADIOBOX_UNCHECKED_HOVER, + ICON_RADIOBOX_UNCHECKED_NORMAL, + ICON_RADIOBOX_UNCHECKED_PRESSED, +} +FatalError :: enum { + FATAL_ERROR_INVALID_BUFFER, + FATAL_ERROR_UNKNOWN_SYSCALL, + FATAL_ERROR_INVALID_MEMORY_REGION, + FATAL_ERROR_MEMORY_REGION_LOCKED_BY_KERNEL, + FATAL_ERROR_PATH_LENGTH_EXCEEDS_LIMIT, + FATAL_ERROR_INVALID_HANDLE, + FATAL_ERROR_MUTEX_NOT_ACQUIRED_BY_THREAD, + FATAL_ERROR_MUTEX_ALREADY_ACQUIRED, + FATAL_ERROR_SHARED_MEMORY_REGION_TOO_LARGE, + FATAL_ERROR_INCORRECT_FILE_ACCESS, + FATAL_ERROR_TOO_MANY_WAIT_OBJECTS, + FATAL_ERROR_INCORRECT_NODE_TYPE, + FATAL_ERROR_PROCESSOR_EXCEPTION, + FATAL_ERROR_UNKNOWN, + FATAL_ERROR_RECURSIVE_BATCH, + FATAL_ERROR_CORRUPT_HEAP, + FATAL_ERROR_CORRUPT_LINKED_LIST, + FATAL_ERROR_SPINLOCK_NOT_ACQUIRED, + FATAL_ERROR_UNKNOWN_SNAPSHOT_TYPE, + FATAL_ERROR_PROCESS_ALREADY_ATTACHED, + FATAL_ERROR_INSUFFICIENT_PERMISSIONS, + FATAL_ERROR_ABORT, + FATAL_ERROR_COUNT, +} +SyscallType :: enum { + SYSCALL_ALLOCATE, + SYSCALL_FREE, + SYSCALL_SHARE_MEMORY, + SYSCALL_MAP_OBJECT, + SYSCALL_OPEN_SHARED_MEMORY, + SYSCALL_CREATE_PROCESS, + SYSCALL_GET_CREATION_ARGUMENT, + SYSCALL_TERMINATE_THREAD, + SYSCALL_CREATE_THREAD, + SYSCALL_WAIT, + SYSCALL_TERMINATE_PROCESS, + SYSCALL_CREATE_EVENT, + SYSCALL_SET_EVENT, + SYSCALL_RESET_EVENT, + SYSCALL_POLL_EVENT, + SYSCALL_PAUSE_PROCESS, + SYSCALL_CRASH_PROCESS, + SYSCALL_GET_THREAD_ID, + SYSCALL_GET_PROCESS_STATE, + SYSCALL_YIELD_SCHEDULER, + SYSCALL_SLEEP, + SYSCALL_OPEN_PROCESS, + SYSCALL_SET_TLS, + SYSCALL_GET_TLS, + SYSCALL_TIMER_SET, + SYSCALL_TIMER_CREATE, + SYSCALL_GET_PROCESS_STATUS, + SYSCALL_EVENT_FORWARD, + SYSCALL_EVENT_SINK_CREATE, + SYSCALL_EVENT_SINK_POP, + SYSCALL_EVENT_SINK_PUSH, + SYSCALL_CREATE_SURFACE, + SYSCALL_GET_LINEAR_BUFFER, + SYSCALL_COPY_TO_SCREEN, + SYSCALL_FORCE_SCREEN_UPDATE, + SYSCALL_COPY_SURFACE, + SYSCALL_DRAW_SURFACE, + SYSCALL_REDRAW_ALL, + SYSCALL_DRAW_BITMAP, + SYSCALL_SURFACE_RESET, + SYSCALL_SURFACE_SHARE, + SYSCALL_RESIZE_SURFACE, + SYSCALL_AUDIO_STREAM_OPEN, + SYSCALL_AUDIO_STREAM_NOTIFY, + SYSCALL_GET_MESSAGE, + SYSCALL_POST_MESSAGE, + SYSCALL_POST_MESSAGE_REMOTE, + SYSCALL_WAIT_MESSAGE, + SYSCALL_CREATE_WINDOW, + SYSCALL_UPDATE_WINDOW, + SYSCALL_SET_CURSOR_STYLE, + SYSCALL_MOVE_WINDOW, + SYSCALL_GET_WINDOW_BOUNDS, + SYSCALL_RESET_CLICK_CHAIN, + SYSCALL_GET_CURSOR_POSITION, + SYSCALL_SET_CURSOR_POSITION, + SYSCALL_COPY, + SYSCALL_GET_CLIPBOARD_HEADER, + SYSCALL_PASTE_TEXT, + SYSCALL_SET_FOCUSED_WINDOW, + SYSCALL_SET_WINDOW_METADATA, + SYSCALL_GET_SCREEN_BOUNDS, + SYSCALL_WINDOW_OPEN, + SYSCALL_WINDOW_SET_BLEND_BOUNDS, + SYSCALL_WINDOW_GET_ID, + SYSCALL_SET_WINDOW_ALPHA, + SYSCALL_DOCKED_WINDOW_CREATE, + SYSCALL_WINDOW_SHARE, + SYSCALL_SET_EMBED_WINDOW, + SYSCALL_WINDOW_SET_BLUR_BOUNDS, + SYSCALL_START_EYEDROP, + SYSCALL_WINDOW_SET_SOLID, + SYSCALL_RESIZE_WINDOW_SURFACE, + SYSCALL_OPEN_NODE, + SYSCALL_OPEN_NODE_RELATIVE, + SYSCALL_READ_FILE_SYNC, + SYSCALL_WRITE_FILE_SYNC, + SYSCALL_RESIZE_FILE, + SYSCALL_REFRESH_NODE_INFORMATION, + SYSCALL_ENUMERATE_DIRECTORY_CHILDREN, + SYSCALL_DELETE_NODE, + SYSCALL_MOVE_NODE, + SYSCALL_DIRECTORY_MONITOR, + SYSCALL_FILE_WRITE_COMPLETE, + SYSCALL_READ_CONSTANT_BUFFER, + SYSCALL_SHARE_CONSTANT_BUFFER, + SYSCALL_CREATE_CONSTANT_BUFFER, + SYSCALL_MAILSLOT_SEND_DATA, + SYSCALL_MAILSLOT_SEND_MESSAGE, + SYSCALL_MAILSLOT_SHARE, + SYSCALL_PIPE_CREATE, + SYSCALL_PIPE_WRITE, + SYSCALL_PIPE_READ, + SYSCALL_USER_GET_HOME_FOLDER, + SYSCALL_USER_LOGIN, + SYSCALL_GET_SYSTEM_CONSTANTS, + SYSCALL_TAKE_SYSTEM_SNAPSHOT, + SYSCALL_SET_SYSTEM_CONSTANT, + SYSCALL_GET_SYSTEM_INFORMATION, + SYSCALL_SYSTEM_CONFIGURATION_WRITE, + SYSCALL_SYSTEM_CONFIGURATION_READ, + SYSCALL_PRINT, + SYSCALL_CLOSE_HANDLE, + SYSCALL_BATCH, + SYSCALL_SHUTDOWN, + SYSCALL_POSIX, + SYSCALL_START_PROGRAM, + SYSCALL_DEBUG_COMMAND, + SYSCALL_COUNT, +} +MessageType :: enum { + MESSAGE_WM_START = 0x1000, + MESSAGE_MOUSE_MOVED = 0x1001, + MESSAGE_WINDOW_ACTIVATED = 0x1002, + MESSAGE_WINDOW_DEACTIVATED = 0x1003, + MESSAGE_WINDOW_DESTROYED = 0x1004, + MESSAGE_MOUSE_EXIT = 0x1005 , + MESSAGE_WINDOW_RESIZED = 0x1007, + MESSAGE_MOUSE_LEFT_PRESSED = 0x1008 , + MESSAGE_MOUSE_LEFT_RELEASED = 0x1009, + MESSAGE_MOUSE_RIGHT_PRESSED = 0x100A, + MESSAGE_MOUSE_RIGHT_RELEASED = 0x100B, + MESSAGE_MOUSE_MIDDLE_PRESSED = 0x100C, + MESSAGE_MOUSE_MIDDLE_RELEASED = 0x100D , + MESSAGE_KEY_PRESSED = 0x100E, + MESSAGE_KEY_RELEASED = 0x100F, + MESSAGE_UPDATE_WINDOW = 0x1010, + MESSAGE_WM_END = 0x13FF, + MESSAGE_PAINT = 0x2000 , + MESSAGE_PAINT_BACKGROUND = 0x2001 , + MESSAGE_PAINT_FOREGROUND = 0x2002 , + MESSAGE_GET_CURSOR = 0x2003 , + MESSAGE_ANIMATE = 0x2004 , + MESSAGE_Z_ORDER = 0x2005 , + MESSAGE_DESTROY = 0x2006 , + MESSAGE_MEASURE = 0x2008 , + MESSAGE_LAYOUT = 0x2009 , + MESSAGE_ENSURE_VISIBLE = 0x200A , + MESSAGE_ADD_CHILD = 0x200B , + MESSAGE_REMOVE_CHILD = 0x200C , + MESSAGE_PRE_ADD_CHILD = 0x200D , + MESSAGE_HIT_TEST = 0x200E , + MESSAGE_MOUSE_DRAGGED = 0x200F , + MESSAGE_CLICKED = 0x2010 , + MESSAGE_KEY_TYPED = 0x2011 , + MESSAGE_SCROLL_X = 0x2012 , + MESSAGE_SCROLL_Y = 0x2013 , + MESSAGE_STRONG_FOCUS_END = 0x2014 , + MESSAGE_BEFORE_Z_ORDER = 0x2015 , + MESSAGE_AFTER_Z_ORDER = 0x2016 , + MESSAGE_PAINT_CHILDREN = 0x2017 , + MESSAGE_STATE_CHANGE_MESSAGE_START = 0x2080, + MESSAGE_HOVERED_START = 0x2081 , + MESSAGE_HOVERED_END = 0x2082 , + MESSAGE_PRESSED_START = 0x2083 , + MESSAGE_PRESSED_END = 0x2084 , + MESSAGE_FOCUSED_START = 0x2085 , + MESSAGE_FOCUSED_END = 0x2086 , + MESSAGE_FOCUS_WITHIN_START = 0x2087 , + MESSAGE_FOCUS_WITHIN_END = 0x2088 , + MESSAGE_STATE_CHANGE_MESSAGE_END = 0x20FF, + MESSAGE_SCROLLBAR_MOVED = 0x3000 , + MESSAGE_CHECK_UPDATED = 0x3001 , + MESSAGE_RADIO_GROUP_UPDATED = 0x3002 , + MESSAGE_COLOR_CHANGED = 0x3003 , + MESSAGE_DESKTOP_START_PROGRAM = 0x4800, + MESSAGE_POWER_BUTTON_PRESSED = 0x4801, + MESSAGE_SET_WINDOW_METADATA = 0x4802, + MESSAGE_EMBED_WINDOW_CREATE = 0x4803, + MESSAGE_FS_EVENT_START = 0x4B80, + MESSAGE_FS_CREATE = 0x4B81, + MESSAGE_FS_DELETE = 0x4B82, + MESSAGE_FS_MOVE = 0x4B83, + MESSAGE_FS_MODIFY = 0x4B84, + MESSAGE_FS_EVENT_END = 0x4B85, + MESSAGE_FS_MONITOR_DESTROY = 0x4B86 , + MESSAGE_PROGRAM_CRASH = 0x4C00, + MESSAGE_PROGRAM_FAILED_TO_START = 0x4C01, + MESSAGE_CLIPBOARD_UPDATED = 0x5001, + MESSAGE_EYEDROP_REPORT = 0x5002, + MESSAGE_SYSTEM_CONSTANT_UPDATED = 0x5004, + MESSAGE_TIMER = 0x5006, + MESSAGE_RECEIVE_DATA = 0x5080, + MESSAGE_MAILSLOT_CLOSED = 0x5081, + MESSAGE_CHOICE_ADD_ITEMS = 0x5180, + MESSAGE_CHOICE_ITEM_TO_STRING = 0x5181, + MESSAGE_CHOICE_UPDATE = 0x5182, + MESSAGE_TEXTBOX_UPDATED = 0x5200, + MESSAGE_TEXTBOX_EDIT_START = 0x5201 , + MESSAGE_TEXTBOX_EDIT_END = 0x5202 , + MESSAGE_TEXTBOX_NUMBER_DRAG_START = 0x5203 , + MESSAGE_TEXTBOX_NUMBER_DRAG_END = 0x5204 , + MESSAGE_TEXTBOX_NUMBER_DRAG_DELTA = 0x5205 , + MESSAGE_TEXTBOX_NUMBER_UPDATED = 0x5206 , + MESSAGE_TEXTBOX_GET_BREADCRUMB = 0x5207 , + MESSAGE_TEXTBOX_ACTIVATE_BREADCRUMB = 0x5208 , + MESSAGE_LIST_VIEW_COMPARE_INDICES = 0x5300, + MESSAGE_LIST_VIEW_NEXT_INDEX = 0x5301, + MESSAGE_LIST_VIEW_PREVIOUS_INDEX = 0x5302, + MESSAGE_LIST_VIEW_FIRST_INDEX = 0x5303, + MESSAGE_LIST_VIEW_LAST_INDEX = 0x5304, + MESSAGE_LIST_VIEW_FIND_INDEX = 0x5305, + MESSAGE_LIST_VIEW_COUNT_ITEMS = 0x5306, + MESSAGE_LIST_VIEW_MEASURE_RANGE = 0x5307, + MESSAGE_LIST_VIEW_MEASURE_ITEM = 0x5308, + MESSAGE_LIST_VIEW_CREATE_ITEM = 0x5309, + MESSAGE_LIST_VIEW_GET_CONTENT = 0x530A, + MESSAGE_LIST_VIEW_GET_INDENT = 0x530B, + MESSAGE_LIST_VIEW_FIND_POSITION = 0x530C, + MESSAGE_LIST_VIEW_IS_SELECTED = 0x530D, + MESSAGE_LIST_VIEW_SELECT = 0x530E, + MESSAGE_LIST_VIEW_SELECT_RANGE = 0x530F, + MESSAGE_LIST_VIEW_CHOOSE_ITEM = 0x5310, + MESSAGE_LIST_VIEW_SEARCH = 0x5311, + MESSAGE_PROGRAM_START = 0x7000, + MESSAGE_PROGRAM_EXIT = 0x7001, + MESSAGE_INSTANCE_CREATE = 0x7002, + MESSAGE_INSTANCE_OPEN = 0x7003, + MESSAGE_INSTANCE_SAVE = 0x7004, + MESSAGE_USER_START = 0x8000, + MESSAGE_USER_END = 0xBFFF, +} +DrawMode :: enum { + DRAW_MODE_REPEAT_FIRST = 1 , + DRAW_MODE_STRECH, + DRAW_MODE_REPEAT, + DRAW_MODE_NONE, +} +ClipboardFormat :: enum { + CLIPBOARD_FORMAT_EMPTY, + CLIPBOARD_FORMAT_TEXT, + CLIPBOARD_FORMAT_FILE_LIST, +} +ColorFormat :: enum { + COLOR_FORMAT_32_XRGB, +} +CursorStyle :: enum { + CURSOR_NORMAL, + CURSOR_TEXT, + CURSOR_RESIZE_VERTICAL, + CURSOR_RESIZE_HORIZONTAL, + CURSOR_RESIZE_DIAGONAL_1, + CURSOR_RESIZE_DIAGONAL_2, + CURSOR_SPLIT_VERTICAL, + CURSOR_SPLIT_HORIZONTAL, + CURSOR_HAND_HOVER, + CURSOR_HAND_DRAG, + CURSOR_HAND_POINT, + CURSOR_SCROLL_UP_LEFT, + CURSOR_SCROLL_UP, + CURSOR_SCROLL_UP_RIGHT, + CURSOR_SCROLL_LEFT, + CURSOR_SCROLL_CENTER, + CURSOR_SCROLL_RIGHT, + CURSOR_SCROLL_DOWN_LEFT, + CURSOR_SCROLL_DOWN, + CURSOR_SCROLL_DOWN_RIGHT, + CURSOR_SELECT_LINES, + CURSOR_DROP_TEXT, + CURSOR_CROSS_HAIR_PICK, + CURSOR_CROSS_HAIR_RESIZE, + CURSOR_MOVE_HOVER, + CURSOR_MOVE_DRAG, + CURSOR_ROTATE_HOVER, + CURSOR_ROTATE_DRAG, + CURSOR_BLANK, + CURSOR_COUNT, +} +WindowStyle :: enum { + WINDOW_NORMAL, + WINDOW_CONTAINER, + WINDOW_MENU, + WINDOW_TIP, +} +FormatValueType :: enum { + FORMAT_VALUE_INVALID, + FORMAT_VALUE_STRING, + FORMAT_VALUE_NUMBER, + FORMAT_VALUE_TIME, +} +CheckState :: enum { + CHECK_UNCHECKED = 0, + CHECK_CHECKED = 1, + CHECK_INDETERMINATE = 2, +} +DocumentState :: enum { + DOCUMENT_STATE_EMPTY, + DOCUMENT_STATE_UNSAVED, + DOCUMENT_STATE_FILE, +} +TransitionType :: enum { + TRANSITION_NONE, + TRANSITION_SLIDE_UP, + TRANSITION_SLIDE_DOWN, + TRANSITION_COVER_UP, + TRANSITION_COVER_DOWN, + TRANSITION_SQUISH_UP, + TRANSITION_SQUISH_DOWN, + TRANSITION_ZOOM_OUT, + TRANSITION_ZOOM_IN, + TRANSITION_ZOOM_OUT_LIGHT, + TRANSITION_ZOOM_IN_LIGHT, + TRANSITION_REVEAL_UP, + TRANSITION_REVEAL_DOWN, + TRANSITION_FADE_IN, + TRANSITION_FADE_OUT, +} +BatchCall :: struct { + index : SyscallType, + stopBatchIfError : bool, + using _ : struct #raw_union { + argument0 : uint , + returnValue : uint , + }, + argument1 : uint , + argument2 : uint , + argument3 : uint , +} +ThreadInformation :: struct { + handle : Handle, + tid : uint , +} +ProcessInformation :: struct { + handle : Handle, + pid : uint , + mainThread : ThreadInformation, +} +UniqueIdentifier :: struct { + using _ : struct #raw_union { + d : [16]u8 , + }, +} +NodeInformation :: struct { + handle : Handle, + type : NodeType, + fileSize : FileOffset, + directoryChildren : FileOffsetDifference, +} +DirectoryChild :: struct { + name : [MAX_DIRECTORY_CHILD_NAME_LENGTH]i8 , + nameBytes : int , + information : NodeInformation, +} +Point :: struct { + x : i32 , + y : i32 , +} +Rectangle :: struct { + left : i32 , + right : i32 , + top : i32 , + bottom : i32 , +} +Rectangle16 :: struct { + left : i16 , + right : i16 , + top : i16 , + bottom : i16 , +} +LinearBuffer :: struct { + width : int , + height : int , + stride : int , + colorFormat : ColorFormat, + handle : Handle, +} +_EsDrawSurfaceArguments :: struct { + source : Rectangle, + destination : Rectangle, + border : Rectangle, + alpha : u16 , +} +Spinlock :: struct { + state : u8 , +} +Mutex :: struct { + event : Handle, + spinlock : Spinlock, + state : u8 , + queued : u32 , +} +CrashReason :: struct { + errorCode : Error, +} +ProcessState :: struct { + crashReason : CrashReason, + creationArgument : Generic, + id : uint , + executableState : uint , + flags : u8 , +} +ClipboardHeader :: struct { + customBytes : int , + format : ClipboardFormat, + textBytes : int , + unused : uint , +} +PaintTarget :: struct { + surface : Handle, + fullAlpha : bool, + linearBuffer : LinearBuffer, + linearBitmap : rawptr, + active : bool, +} +Painter :: struct { + clip : Rectangle, + offsetX : i32, + offsetY : i32, + width : i32, + height : i32, + style : rawptr, + target : ^PaintTarget, +} +Message :: struct { + type : MessageType, + using _ : struct #raw_union { + user : struct { + context1 : Generic, + context2 : Generic, + context3 : Generic, + }, + _argument : rawptr, + mouseMoved : struct { + oldPositionX : i32, + newPositionX : i32, + oldPositionY : i32, + newPositionY : i32, + newPositionXScreen : i32, + newPositionYScreen : i32, + }, + mouseDragged : struct { + oldPositionX : i32, + newPositionX : i32, + oldPositionY : i32, + newPositionY : i32, + originalPositionX : i32, + originalPositionY : i32, + }, + mousePressed : struct { + positionX : i32, + positionY : i32, + positionXScreen : i32, + positionYScreen : i32, + clickChainCount : u8 , + alt : u8 , + ctrl : u8 , + shift : u8 , + }, + keyboard : struct { + scancode : u32 , + alt : u8 , + ctrl : u8 , + shift : u8 , + numpad : u8 , + repeat : u8 , + }, + crash : struct { + reason : CrashReason, + process : Handle, + processNameBuffer : Handle, + processNameBytes : int , + pid : uint , + }, + clipboard : ClipboardHeader, + receive : struct { + buffer : Handle, + bytes : int , + }, + animate : struct { + deltaUs : i64 , + waitUs : i64 , + complete : bool, + }, + systemConstantUpdated : struct { + index : uint , + newValue : u64 , + }, + desktopExecute : struct { + whatBuffer : Handle, + argumentBuffer : Handle, + mailslot : Handle, + whatBytes : int , + argumentBytes : int , + modalWindowParent : u64 , + }, + dockedWindowCreate : struct { + pipe : Handle, + }, + windowMetadata : struct { + id : u64 , + buffer : Handle, + bytes : int , + }, + createEmbeddedWindow : struct { + id : u64 , + handle : Handle, + }, + windowResized : struct { + content : Rectangle, + hidden : bool, + }, + painter : ^Painter, + measure : struct { + width : i32, + height : i32, + hideScrollbarX : bool, + hideScrollbarY : bool, + }, + child : rawptr, + hitTest : struct { + x : i32, + y : i32, + inside : bool, + }, + zOrder : struct { + index : uint , + child : ^Element, + }, + scrollbarMoved : struct { + scroll : i32, + previous : i32, + }, + ensureVisible : struct { + child : ^Element, + }, + cursorStyle : CursorStyle, + eyedrop : struct { + color : u32 , + cancelled : bool, + }, + colorChanged : struct { + newColor : u32 , + pickerClosed : bool, + }, + itemToString : struct { + item : Generic, + text : ^u8, textBytes : int, + }, + choiceUpdated : struct { + newItem : Generic, + oldItem : Generic, + }, + numberDragDelta : struct { + delta : i32, + hoverCharacter : i32 , + fast : bool, + }, + numberUpdated : struct { + delta : f64 , + newValue : f64 , + }, + getBreadcrumb : struct { + index : uint , + text : ^u8, textBytes : int, + }, + activateBreadcrumb : uint , + checkState : CheckState, + fsEvent : struct { + buffer : Handle, + bufferBytes : u16 , + pathOffset : u16 , + oldPathOffset : u16 , + pathBytes : u16 , + oldPathBytes : u16 , + _context : Generic, + }, + createInstance : struct { + data : Handle, + dataBytes : int , + }, + instanceOpen : struct { + instance : ^INSTANCE_TYPE, + path : ^u8, pathBytes : int, + }, + instanceSave : struct { + instance : ^INSTANCE_TYPE, + path : ^u8, pathBytes : int, + }, + compareIndices : struct { + group : i32 , + left : Generic, + right : Generic, + result : i32, + }, + iterateIndex : struct { + group : i32 , + index : Generic, + position : i64 , + }, + itemRange : struct { + group : i32 , + firstIndex : Generic, + lastIndex : Generic, + result : i64 , + }, + measureItem : struct { + group : i32 , + index : Generic, + result : i64 , + }, + createItem : struct { + group : i32 , + index : Generic, + parent : ^Element, + }, + getContent : struct { + index : Generic, + group : i32 , + column : u8 , + icon : u32 , + text : ^u8, textBytes : int, + }, + getIndent : struct { + group : i32 , + index : Generic, + indent : u8 , + }, + selectRange : struct { + fromIndex : Generic, + toIndex : Generic, + group : i32 , + select : bool, + toggle : bool, + }, + selectItem : struct { + group : i32 , + index : Generic, + isSelected : bool, + }, + chooseItem : struct { + group : i32 , + index : Generic, + }, + searchItem : struct { + group : i32 , + index : Generic, + query : ^u8, queryBytes : int, + }, + layout : struct { + sizeChanged : bool, + }, + }, +} +_EsMessageWithObject :: struct { + object : rawptr, + message : Message, +} +DebuggerMessage :: struct { + process : Handle, + reason : CrashReason, +} +DriveInformation :: struct { + name : [64]i8 , + nameBytes : int , + mountpoint : [256]i8 , + mountpointBytes : int , +} +SnapshotProcessesItem :: struct { + pid : i64 , + memoryUsage : i64 , + cpuTimeSlices : i64 , + name : [SNAPSHOT_MAX_PROCESS_NAME_LENGTH]i8 , + nameLength : int , + internal : u64 , +} +SystemInformation :: struct { + processCount : uint , + threadCount : uint , + handleCount : uint , + commitLimit : uint , + commit : uint , + countZeroedPages : uint , + countFreePages : uint , + countStandbyPages : uint , + countActivePages : uint , + coreHeapSize : uint , + coreHeapAllocations : uint , + fixedHeapSize : uint , + fixedHeapAllocations : uint , + coreRegions : uint , + kernelRegions : uint , +} +SnapshotProcesses :: struct { + count : int , + processes : []SnapshotProcessesItem, +} +_EsPOSIXSyscall :: struct { + index : int , + arguments : [7]int , +} +ProcessCreationArguments :: struct { + executablePath : ^u8, executablePathBytes : int, + environmentBlock : rawptr, + environmentBlockBytes : int , + creationArgument : Generic, + permissions : u64 , +} +_EsUserLoginArguments :: struct { + name : ^u8, nameBytes : int, + home : ^u8, homeBytes : int, +} +Instance :: struct { + _private : rawptr, + window : ^Window, + documentState : DocumentState, +} +PanelBand :: struct { + preferredSize : i32, + minimumSize : i32, + maximumSize : i32, + grow : i32, + shrink : i32, +} +UICallbackFunction :: distinct #type proc "c" ( ^Element, ^Message, ^Response); +ElementProperties :: struct { + cStyle : cstring , + cStyleOverride : cstring , + callback : UICallbackFunction, + cDescription : cstring , + cName : cstring , + cAutomationID : cstring , + cAccessKey : cstring , + data : Generic, +} +Font :: struct { + family : u16 , + weight : u8 , + italic : bool, +} +TextStyle :: struct { + font : Font, + size : u16 , + baselineOffset : u16 , + kerning : i8 , + figures : u8 , + alternateDirection : bool, + color : u32 , + blur : u8 , + underlined : bool, +} +TextRun :: struct { + style : TextStyle, + bytes : u32 , +} +TextDisplayProperties :: struct { + cLanguage : cstring , + rtl : bool, + trimTrailingSpaces : bool, + align : u8 , + maxLines : i32, +} +TextSelection :: struct { + caret0 : int , + caret1 : int , + hideCaret : bool, + foreground : u32 , + background : u32 , +} +FormatValue :: struct { + type : FormatValueType, + isStringLiteral : bool, + using _ : struct #raw_union { + string : ^i8 , + number : f64 , + time : u64 , + }, +} +FragmentShaderCallbackFunction :: distinct #type proc "c" ( i32, i32, ^StyledBox) -> u32 ; +StyledBox :: struct { + ox : i32, + oy : i32, + width : i32, + height : i32, + clip : Rectangle, + exclude : Rectangle, + backgroundColor : u32 , + backgroundColor2 : u32 , + fragmentShader : FragmentShaderCallbackFunction, + borderColor : u32 , + borders : Rectangle16, + cornerRadiusTopLeft : i32, + cornerRadiusTopRight : i32, + cornerRadiusBottomLeft : i32, + cornerRadiusBottomRight : i32, + blur : bool, + hasBackgroundGradient : bool, + hasExclusionRegion : bool, + blendMode : i32, +} +Arena :: struct { + firstEmptySlot : rawptr, + slotsPerBlock : int , + slotSize : int , +} +CalculationValue :: struct { + error : bool, + number : [16]u8 , +} +CommandCallbackFunction :: distinct #type proc "c" ( ^INSTANCE_TYPE, ^Element, ^Command); +Command :: struct { + elements : ^^Element, + callback : CommandCallbackFunction, + disabled : bool, + registered : bool, + allocated : bool, + stableID : u32 , + cKeyboardShortcut : ^i8 , + data : Generic, +} +ListViewColumn :: struct { + title : ^u8, titleBytes : int, + flags : u64 , + width : i32, +} +AudioFormat :: struct { + sampleRate : u32 , + sampleFormat : u8 , + channels : u8 , + reserved : u16 , +} +AudioStream :: struct { + format : AudioFormat, + handle : Handle, + buffer : ^u8 , + bufferBytes : u32 , + readPointer : u32 , + writePointer : u32 , + status : u16 , + control : u16 , + clock : u64 , +} +ThreadEntryFunction :: distinct #type proc "c" ( Generic); +ComparisonCallbackFunction :: distinct #type proc "c" ( rawptr, rawptr, Generic) -> i32; +SwapCallbackFunction :: distinct #type proc "c" ( rawptr, rawptr, Generic); +CRTComparisonCallback :: distinct #type proc "c" ( rawptr, rawptr) -> i32; +TimerCallbackFunction :: distinct #type proc "c" ( Generic); +MenuCallbackFunction :: distinct #type proc "c" ( ^Menu, Generic); +StorePullCallbackFunction :: distinct #type proc "c" ( ^Store, ^INSTANCE_TYPE, Generic, i32, Generic, ^FormatValue); +StoreCallbackFunction :: distinct #type proc "c" ( ^Store, ^INSTANCE_TYPE, Generic, Generic); +DirectoryMonitorCallbackFunction :: distinct #type proc "c" ( ^DirectoryMonitor, i32, ^i8 , int , ^i8 , int , Generic); +MessageLoopCallbackFunction :: distinct #type proc "c" ( ^Message); +Batch :: inline proc "c" (calls_ : ^BatchCall, count_ : int ){ addr := 0x1000 + 0 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); ((proc "c" ( ^BatchCall, int )) (fp))(calls_, count_); } +GetCreationArgument :: inline proc "c" (object_ : Handle) -> Generic{ addr := 0x1000 + 1 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( Handle) -> Generic) (fp))(object_); } +GetSystemInformation :: inline proc "c" (systemInformation_ : ^SystemInformation){ addr := 0x1000 + 2 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); ((proc "c" ( ^SystemInformation)) (fp))(systemInformation_); } +HandleClose :: inline proc "c" (handle_ : Handle) -> Error{ addr := 0x1000 + 3 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( Handle) -> Error) (fp))(handle_); } +InitialiseCStandardLibrary :: inline proc "c" (argc_ : ^i32, argv_ : ^^^i8 ){ addr := 0x1000 + 4 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); ((proc "c" ( ^i32, ^^^i8 )) (fp))(argc_, argv_); } +MailslotSendData :: inline proc "c" (mailslot_ : Handle, data_ : rawptr, bytes_ : int ) -> bool{ addr := 0x1000 + 5 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( Handle, rawptr, int ) -> bool) (fp))(mailslot_, data_, bytes_); } +MakeLinuxSystemCall2 :: inline proc "c" (n_ : int , a1_ : int , a2_ : int , a3_ : int , a4_ : int , a5_ : int , a6_ : int ) -> int { addr := 0x1000 + 6 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( int , int , int , int , int , int , int ) -> int ) (fp))(n_, a1_, a2_, a3_, a4_, a5_, a6_); } +SystemConfigurationRead :: inline proc "c" (cKey_ : ^i8 , bytes_ : ^int ) -> rawptr{ addr := 0x1000 + 7 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( ^i8 , ^int ) -> rawptr) (fp))(cKey_, bytes_); } +SystemGetConstant :: inline proc "c" (index_ : uint ) -> u64 { addr := 0x1000 + 8 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( uint ) -> u64 ) (fp))(index_); } +TakeSystemSnapshot :: inline proc "c" (type_ : i32, bufferSize_ : ^int ) -> Handle{ addr := 0x1000 + 9 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( i32, ^int ) -> Handle) (fp))(type_, bufferSize_); } +UserGetHomeFolder :: inline proc "c" (buffer_ : ^i8 , bufferBytes_ : int ) -> int { addr := 0x1000 + 10 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( ^i8 , int ) -> int ) (fp))(buffer_, bufferBytes_); } +_EsInstanceCreate :: inline proc "c" (bytes_ : int , message_ : ^Message) -> ^Instance{ addr := 0x1000 + 11 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( int , ^Message) -> ^Instance) (fp))(bytes_, message_); } +_EsSyscall :: inline proc "c" (a_ : uint , b_ : uint , c_ : uint , d_ : uint , e_ : uint , f_ : uint ) -> uint { addr := 0x1000 + 12 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( uint , uint , uint , uint , uint , uint ) -> uint ) (fp))(a_, b_, c_, d_, e_, f_); } +CommandAddButton :: inline proc "c" (command_ : ^Command, button_ : ^Button){ addr := 0x1000 + 13 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); ((proc "c" ( ^Command, ^Button)) (fp))(command_, button_); } +CommandByID :: inline proc "c" (instance_ : ^Instance, stableID_ : u32 ) -> ^Command{ addr := 0x1000 + 14 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( ^Instance, u32 ) -> ^Command) (fp))(instance_, stableID_); } +CommandRegister :: inline proc "c" (command_ : ^Command, instance_ : ^Instance, callback_ : CommandCallbackFunction, stableID_ : u32 , cDefaultKeyboardShortcut_ : cstring , enabled_ : bool) -> ^Command{ addr := 0x1000 + 15 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( ^Command, ^Instance, CommandCallbackFunction, u32 , cstring , bool) -> ^Command) (fp))(command_, instance_, callback_, stableID_, cDefaultKeyboardShortcut_, enabled_); } +CommandSetCallback :: inline proc "c" (command_ : ^Command, callback_ : CommandCallbackFunction){ addr := 0x1000 + 16 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); ((proc "c" ( ^Command, CommandCallbackFunction)) (fp))(command_, callback_); } +CommandSetDisabled :: inline proc "c" (command_ : ^Command, disabled_ : bool){ addr := 0x1000 + 17 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); ((proc "c" ( ^Command, bool)) (fp))(command_, disabled_); } +DialogClose :: inline proc "c" (window_ : ^Window){ addr := 0x1000 + 18 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); ((proc "c" ( ^Window)) (fp))(window_); } +DialogShow :: inline proc "c" (window_ : ^Window) -> ^Element{ addr := 0x1000 + 19 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( ^Window) -> ^Element) (fp))(window_); } +DialogShowAlert :: inline proc "c" (window_ : ^Window, title_ : string, content_ : string, iconID_ : u32 ) -> ^Element{ addr := 0x1000 + 20 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( ^Window, ^u8, int, ^u8, int, u32 ) -> ^Element) (fp))(window_, raw_data(title_), len(title_), raw_data(content_), len(content_), iconID_); } +KeyboardIsAltHeld :: inline proc "c" () -> bool{ addr := 0x1000 + 21 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" () -> bool) (fp))(); } +KeyboardIsCtrlHeld :: inline proc "c" () -> bool{ addr := 0x1000 + 22 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" () -> bool) (fp))(); } +KeyboardIsShiftHeld :: inline proc "c" () -> bool{ addr := 0x1000 + 23 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" () -> bool) (fp))(); } +MessageGetInputText :: inline proc "c" (message_ : ^Message, buffer_ : ^i8 ) -> int { addr := 0x1000 + 24 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( ^Message, ^i8 ) -> int ) (fp))(message_, buffer_); } +MessageLoopEnter :: inline proc "c" (callback_ : MessageLoopCallbackFunction){ addr := 0x1000 + 25 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); ((proc "c" ( MessageLoopCallbackFunction)) (fp))(callback_); } +MessageMutexAcquire :: inline proc "c" (){ addr := 0x1000 + 26 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); ((proc "c" ()) (fp))(); } +MessageMutexCheck :: inline proc "c" (){ addr := 0x1000 + 27 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); ((proc "c" ()) (fp))(); } +MessageMutexRelease :: inline proc "c" (){ addr := 0x1000 + 28 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); ((proc "c" ()) (fp))(); } +MessagePost :: inline proc "c" (target_ : ^Element, message_ : ^Message) -> Error{ addr := 0x1000 + 29 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( ^Element, ^Message) -> Error) (fp))(target_, message_); } +MessagePostRemote :: inline proc "c" (process_ : Handle, message_ : ^Message) -> Error{ addr := 0x1000 + 30 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( Handle, ^Message) -> Error) (fp))(process_, message_); } +MessageSend :: inline proc "c" (object_ : ^Element, message_ : ^Message) -> Response{ addr := 0x1000 + 31 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( ^Element, ^Message) -> Response) (fp))(object_, message_); } +MouseGetPosition :: inline proc "c" (relativeElement_ : ^Element) -> Point{ addr := 0x1000 + 32 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( ^Element) -> Point) (fp))(relativeElement_); } +MouseSetPosition :: inline proc "c" (relativeWindow_ : ^Window, x_ : i32, y_ : i32){ addr := 0x1000 + 33 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); ((proc "c" ( ^Window, i32, i32)) (fp))(relativeWindow_, x_, y_); } +PaintTargetClear :: inline proc "c" (target_ : ^PaintTarget){ addr := 0x1000 + 34 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); ((proc "c" ( ^PaintTarget)) (fp))(target_); } +PaintTargetTake :: inline proc "c" (window_ : ^Window, target_ : ^PaintTarget, width_ : int , height_ : int ) -> bool{ addr := 0x1000 + 35 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( ^Window, ^PaintTarget, int , int ) -> bool) (fp))(window_, target_, width_, height_); } +PaintTargetReturn :: inline proc "c" (window_ : ^Window, target_ : ^PaintTarget){ addr := 0x1000 + 36 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); ((proc "c" ( ^Window, ^PaintTarget)) (fp))(window_, target_); } +StyleRefreshAll :: inline proc "c" (window_ : ^Element){ addr := 0x1000 + 37 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); ((proc "c" ( ^Element)) (fp))(window_); } +UISetDPI :: inline proc "c" (dpiScale_ : i32){ addr := 0x1000 + 38 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); ((proc "c" ( i32)) (fp))(dpiScale_); } +DirectoryEnumerateChildren :: inline proc "c" (path_ : string, buffer_ : ^^DirectoryChild) -> int { addr := 0x1000 + 39 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" (^u8, int, ^^DirectoryChild) -> int ) (fp))(raw_data(path_), len(path_), buffer_); } +DirectoryEnumerateChildrenFromHandle :: inline proc "c" (directory_ : Handle, buffer_ : ^DirectoryChild, bufferCount_ : int ) -> int { addr := 0x1000 + 40 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( Handle, ^DirectoryChild, int ) -> int ) (fp))(directory_, buffer_, bufferCount_); } +DirectoryMonitorCreate :: inline proc "c" (path_ : string, flags_ : u64 , callback_ : DirectoryMonitorCallbackFunction, _context_ : Generic) -> ^DirectoryMonitor{ addr := 0x1000 + 41 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" (^u8, int, u64 , DirectoryMonitorCallbackFunction, Generic) -> ^DirectoryMonitor) (fp))(raw_data(path_), len(path_), flags_, callback_, _context_); } +DirectoryMonitorCreateFromHandle :: inline proc "c" (directory_ : Handle, flags_ : u64 , callback_ : DirectoryMonitorCallbackFunction, _context_ : Generic) -> ^DirectoryMonitor{ addr := 0x1000 + 42 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( Handle, u64 , DirectoryMonitorCallbackFunction, Generic) -> ^DirectoryMonitor) (fp))(directory_, flags_, callback_, _context_); } +DirectoryMonitorDestroy :: inline proc "c" (monitor_ : ^DirectoryMonitor){ addr := 0x1000 + 43 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); ((proc "c" ( ^DirectoryMonitor)) (fp))(monitor_); } +FileReadAll :: inline proc "c" (filePath_ : string, fileSize_ : ^int ) -> rawptr{ addr := 0x1000 + 44 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" (^u8, int, ^int ) -> rawptr) (fp))(raw_data(filePath_), len(filePath_), fileSize_); } +FileReadSync :: inline proc "c" (file_ : Handle, offset_ : FileOffset, size_ : int , buffer_ : rawptr) -> int { addr := 0x1000 + 45 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( Handle, FileOffset, int , rawptr) -> int ) (fp))(file_, offset_, size_, buffer_); } +FileResize :: inline proc "c" (file_ : Handle, newSize_ : FileOffset) -> Error{ addr := 0x1000 + 46 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( Handle, FileOffset) -> Error) (fp))(file_, newSize_); } +FileWriteAll :: inline proc "c" (filePath_ : string, data_ : rawptr, fileSize_ : int ) -> Error{ addr := 0x1000 + 47 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" (^u8, int, rawptr, int ) -> Error) (fp))(raw_data(filePath_), len(filePath_), data_, fileSize_); } +FileWriteAllGather :: inline proc "c" (filePath_ : string, data_ : ^rawptr, fileSize_ : ^int , gatherCount_ : int ) -> Error{ addr := 0x1000 + 48 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" (^u8, int, ^rawptr, ^int , int ) -> Error) (fp))(raw_data(filePath_), len(filePath_), data_, fileSize_, gatherCount_); } +FileWriteComplete :: inline proc "c" (file_ : Handle){ addr := 0x1000 + 49 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); ((proc "c" ( Handle)) (fp))(file_); } +FileWriteSync :: inline proc "c" (file_ : Handle, offset_ : FileOffset, size_ : int , buffer_ : rawptr) -> int { addr := 0x1000 + 50 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( Handle, FileOffset, int , rawptr) -> int ) (fp))(file_, offset_, size_, buffer_); } +NodeDelete :: inline proc "c" (node_ : Handle) -> Error{ addr := 0x1000 + 51 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( Handle) -> Error) (fp))(node_); } +NodeDeleteByPath :: inline proc "c" (filePath_ : string) -> Error{ addr := 0x1000 + 52 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" (^u8, int) -> Error) (fp))(raw_data(filePath_), len(filePath_)); } +NodeFindUniqueName :: inline proc "c" (buffer_ : ^i8 , originalBytes_ : int , bufferBytes_ : int ) -> int { addr := 0x1000 + 53 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( ^i8 , int , int ) -> int ) (fp))(buffer_, originalBytes_, bufferBytes_); } +NodeMove :: inline proc "c" (node_ : Handle, newDirectory_ : Handle, newName_ : string) -> Error{ addr := 0x1000 + 54 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( Handle, Handle, ^u8, int) -> Error) (fp))(node_, newDirectory_, raw_data(newName_), len(newName_)); } +NodeOpen :: inline proc "c" (path_ : string, flags_ : u64 , information_ : ^NodeInformation) -> Error{ addr := 0x1000 + 55 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" (^u8, int, u64 , ^NodeInformation) -> Error) (fp))(raw_data(path_), len(path_), flags_, information_); } +NodeOpenRelative :: inline proc "c" (directory_ : Handle, path_ : string, flags_ : u64 , information_ : ^NodeInformation) -> Error{ addr := 0x1000 + 56 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( Handle, ^u8, int, u64 , ^NodeInformation) -> Error) (fp))(directory_, raw_data(path_), len(path_), flags_, information_); } +NodeRefreshInformation :: inline proc "c" (information_ : ^NodeInformation){ addr := 0x1000 + 57 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); ((proc "c" ( ^NodeInformation)) (fp))(information_); } +ProcessCrash :: inline proc "c" (error_ : Error, message_ : string){ addr := 0x1000 + 58 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); ((proc "c" ( Error, ^u8, int)) (fp))(error_, raw_data(message_), len(message_)); } +ProcessCreate :: inline proc "c" (executablePath_ : string, information_ : ^ProcessInformation, argument_ : Generic) -> Error{ addr := 0x1000 + 59 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" (^u8, int, ^ProcessInformation, Generic) -> Error) (fp))(raw_data(executablePath_), len(executablePath_), information_, argument_); } +ProcessCreate2 :: inline proc "c" (arguments_ : ^ProcessCreationArguments, information_ : ^ProcessInformation) -> Error{ addr := 0x1000 + 60 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( ^ProcessCreationArguments, ^ProcessInformation) -> Error) (fp))(arguments_, information_); } +ProcessGetExitStatus :: inline proc "c" (process_ : Handle) -> i32{ addr := 0x1000 + 61 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( Handle) -> i32) (fp))(process_); } +ProcessGetID :: inline proc "c" (process_ : Handle) -> uint { addr := 0x1000 + 62 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( Handle) -> uint ) (fp))(process_); } +ProcessGetState :: inline proc "c" (process_ : Handle, state_ : ^ProcessState){ addr := 0x1000 + 63 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); ((proc "c" ( Handle, ^ProcessState)) (fp))(process_, state_); } +ProcessOpen :: inline proc "c" (pid_ : u64 ) -> Handle{ addr := 0x1000 + 64 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( u64 ) -> Handle) (fp))(pid_); } +ProcessPause :: inline proc "c" (process_ : Handle, resume_ : bool){ addr := 0x1000 + 65 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); ((proc "c" ( Handle, bool)) (fp))(process_, resume_); } +ProcessTerminate :: inline proc "c" (process_ : Handle, status_ : i32){ addr := 0x1000 + 66 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); ((proc "c" ( Handle, i32)) (fp))(process_, status_); } +ProcessTerminateCurrent :: inline proc "c" (){ addr := 0x1000 + 67 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); ((proc "c" ()) (fp))(); } +ThreadCreate :: inline proc "c" (entryFunction_ : ThreadEntryFunction, information_ : ^ThreadInformation, argument_ : Generic) -> Error{ addr := 0x1000 + 68 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( ThreadEntryFunction, ^ThreadInformation, Generic) -> Error) (fp))(entryFunction_, information_, argument_); } +ThreadGetID :: inline proc "c" (thread_ : Handle) -> uint { addr := 0x1000 + 69 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( Handle) -> uint ) (fp))(thread_); } +ThreadLocalStorageSetAddress :: inline proc "c" (address_ : rawptr){ addr := 0x1000 + 70 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); ((proc "c" ( rawptr)) (fp))(address_); } +ThreadTerminate :: inline proc "c" (thread_ : Handle){ addr := 0x1000 + 71 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); ((proc "c" ( Handle)) (fp))(thread_); } +ArenaAllocate :: inline proc "c" (arena_ : ^Arena, zero_ : bool) -> rawptr{ addr := 0x1000 + 72 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( ^Arena, bool) -> rawptr) (fp))(arena_, zero_); } +ArenaFree :: inline proc "c" (pointer_ : rawptr){ addr := 0x1000 + 73 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); ((proc "c" ( rawptr)) (fp))(pointer_); } +ArenaInitialise :: inline proc "c" (arena_ : ^Arena, slotsPerBlock_ : int , itemSize_ : int ){ addr := 0x1000 + 74 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); ((proc "c" ( ^Arena, int , int )) (fp))(arena_, slotsPerBlock_, itemSize_); } +ConstantBufferCreate :: inline proc "c" (data_ : rawptr, dataBytes_ : int , targetProcess_ : Handle) -> Handle{ addr := 0x1000 + 75 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( rawptr, int , Handle) -> Handle) (fp))(data_, dataBytes_, targetProcess_); } +ConstantBufferRead :: inline proc "c" (constantBuffer_ : Handle, output_ : rawptr){ addr := 0x1000 + 76 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); ((proc "c" ( Handle, rawptr)) (fp))(constantBuffer_, output_); } +ConstantBufferShare :: inline proc "c" (constantBuffer_ : Handle, targetProcess_ : Handle) -> Handle{ addr := 0x1000 + 77 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( Handle, Handle) -> Handle) (fp))(constantBuffer_, targetProcess_); } +HeapAllocate :: inline proc "c" (size_ : int , zeroMemory_ : bool) -> rawptr{ addr := 0x1000 + 78 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( int , bool) -> rawptr) (fp))(size_, zeroMemory_); } +HeapFree :: inline proc "c" (address_ : rawptr){ addr := 0x1000 + 79 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); ((proc "c" ( rawptr)) (fp))(address_); } +HeapReallocate :: inline proc "c" (oldAddress_ : rawptr, newAllocationSize_ : int , zeroNewSpace_ : bool) -> rawptr{ addr := 0x1000 + 80 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( rawptr, int , bool) -> rawptr) (fp))(oldAddress_, newAllocationSize_, zeroNewSpace_); } +HeapValidate :: inline proc "c" (){ addr := 0x1000 + 81 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); ((proc "c" ()) (fp))(); } +MemoryAllocate :: inline proc "c" (size_ : int ) -> rawptr{ addr := 0x1000 + 82 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( int ) -> rawptr) (fp))(size_); } +MemoryCompare :: inline proc "c" (a_ : rawptr, b_ : rawptr, bytes_ : int ) -> i32{ addr := 0x1000 + 83 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( rawptr, rawptr, int ) -> i32) (fp))(a_, b_, bytes_); } +MemoryCopy :: inline proc "c" (destination_ : rawptr, source_ : rawptr, bytes_ : int ){ addr := 0x1000 + 84 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); ((proc "c" ( rawptr, rawptr, int )) (fp))(destination_, source_, bytes_); } +MemoryCopyReverse :: inline proc "c" (_destination_ : rawptr, _source_ : rawptr, bytes_ : int ){ addr := 0x1000 + 85 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); ((proc "c" ( rawptr, rawptr, int )) (fp))(_destination_, _source_, bytes_); } +MemoryFill :: inline proc "c" (from_ : rawptr, to_ : rawptr, byte_ : u8 ){ addr := 0x1000 + 86 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); ((proc "c" ( rawptr, rawptr, u8 )) (fp))(from_, to_, byte_); } +MemoryFree :: inline proc "c" (address_ : rawptr) -> Error{ addr := 0x1000 + 87 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( rawptr) -> Error) (fp))(address_); } +MemoryMove :: inline proc "c" (_start_ : rawptr, _end_ : rawptr, amount_ : int , zeroEmptySpace_ : bool){ addr := 0x1000 + 88 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); ((proc "c" ( rawptr, rawptr, int , bool)) (fp))(_start_, _end_, amount_, zeroEmptySpace_); } +MemoryOpen :: inline proc "c" (size_ : int , name_ : string, flags_ : u32 ) -> Handle{ addr := 0x1000 + 89 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( int , ^u8, int, u32 ) -> Handle) (fp))(size_, raw_data(name_), len(name_), flags_); } +MemoryShare :: inline proc "c" (sharedMemoryRegion_ : Handle, targetProcess_ : Handle, readOnly_ : bool) -> Handle{ addr := 0x1000 + 90 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( Handle, Handle, bool) -> Handle) (fp))(sharedMemoryRegion_, targetProcess_, readOnly_); } +MemorySumBytes :: inline proc "c" (data_ : ^u8 , bytes_ : int ) -> u8 { addr := 0x1000 + 91 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( ^u8 , int ) -> u8 ) (fp))(data_, bytes_); } +MemoryZero :: inline proc "c" (destination_ : rawptr, bytes_ : int ){ addr := 0x1000 + 92 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); ((proc "c" ( rawptr, int )) (fp))(destination_, bytes_); } +ObjectMap :: inline proc "c" (object_ : Handle, offset_ : uint , size_ : int , flags_ : u32 ) -> rawptr{ addr := 0x1000 + 93 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( Handle, uint , int , u32 ) -> rawptr) (fp))(object_, offset_, size_, flags_); } +Abort :: inline proc "c" (){ addr := 0x1000 + 94 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); ((proc "c" ()) (fp))(); } +Assert :: inline proc "c" (expression_ : bool, failureMessage_ : cstring ){ addr := 0x1000 + 95 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); ((proc "c" ( bool, cstring )) (fp))(expression_, failureMessage_); } +CalculateFromUserExpression :: inline proc "c" (cExpression_ : cstring ) -> CalculationValue{ addr := 0x1000 + 96 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( cstring ) -> CalculationValue) (fp))(cExpression_); } +DoubleParse :: inline proc "c" (string_ : string, endptr_ : ^^i8 ) -> f64 { addr := 0x1000 + 97 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" (^u8, int, ^^i8 ) -> f64 ) (fp))(raw_data(string_), len(string_), endptr_); } +ExtractArguments :: inline proc "c" (string_ : ^i8 , bytes_ : int , delimiterByte_ : u8 , replacementDelimiter_ : u8 , argvAllocated_ : int , argv_ : ^^i8 , argc_ : ^int ) -> bool{ addr := 0x1000 + 98 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( ^i8 , int , u8 , u8 , int , ^^i8 , ^int ) -> bool) (fp))(string_, bytes_, delimiterByte_, replacementDelimiter_, argvAllocated_, argv_, argc_); } +GetRandomU8 :: inline proc "c" () -> u8 { addr := 0x1000 + 99 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" () -> u8 ) (fp))(); } +GetRandomU64 :: inline proc "c" () -> u64 { addr := 0x1000 + 100 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" () -> u64 ) (fp))(); } +IntegerParse :: inline proc "c" (text_ : string) -> i64 { addr := 0x1000 + 101 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" (^u8, int) -> i64 ) (fp))(raw_data(text_), len(text_)); } +Print :: inline proc "c" (format_ : cstring , _varargs_ : ..any){ addr := 0x1000 + 102 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); ((proc "c" ( cstring , ..any)) (fp))(format_, _varargs_); } +PrintDirect :: inline proc "c" (string_ : string){ addr := 0x1000 + 103 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); ((proc "c" (^u8, int)) (fp))(raw_data(string_), len(string_)); } +PrintHelloWorld :: inline proc "c" (){ addr := 0x1000 + 104 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); ((proc "c" ()) (fp))(); } +ProcessorReadTimeStamp :: inline proc "c" () -> u64 { addr := 0x1000 + 105 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" () -> u64 ) (fp))(); } +RandomAddEntropy :: inline proc "c" (x_ : u64 ){ addr := 0x1000 + 106 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); ((proc "c" ( u64 )) (fp))(x_); } +RandomSeed :: inline proc "c" (x_ : u64 ){ addr := 0x1000 + 107 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); ((proc "c" ( u64 )) (fp))(x_); } +RectangleClip :: inline proc "c" (parent_ : Rectangle, rectangle_ : Rectangle, output_ : ^Rectangle) -> bool{ addr := 0x1000 + 108 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( Rectangle, Rectangle, ^Rectangle) -> bool) (fp))(parent_, rectangle_, output_); } +Sort :: inline proc "c" (_base_ : rawptr, nmemb_ : int , size_ : int , compar_ : ComparisonCallbackFunction, argument_ : Generic){ addr := 0x1000 + 109 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); ((proc "c" ( rawptr, int , int , ComparisonCallbackFunction, Generic)) (fp))(_base_, nmemb_, size_, compar_, argument_); } +SortWithSwapCallback :: inline proc "c" (_base_ : rawptr, nmemb_ : int , size_ : int , compar_ : ComparisonCallbackFunction, argument_ : Generic, swap_ : SwapCallbackFunction){ addr := 0x1000 + 110 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); ((proc "c" ( rawptr, int , int , ComparisonCallbackFunction, Generic, SwapCallbackFunction)) (fp))(_base_, nmemb_, size_, compar_, argument_, swap_); } +StringLoadRaw :: inline proc "c" (cRule_ : cstring , formatValues_ : ^FormatValue, formatValueCount_ : int ) -> FormatValue{ addr := 0x1000 + 111 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( cstring , ^FormatValue, int ) -> FormatValue) (fp))(cRule_, formatValues_, formatValueCount_); } +StringZeroTerminate :: inline proc "c" (string_ : string) -> ^i8 { addr := 0x1000 + 112 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" (^u8, int) -> ^i8 ) (fp))(raw_data(string_), len(string_)); } +ColorBlend :: inline proc "c" (under_ : u32 , over_ : u32 , fullAlpha_ : bool) -> u32 { addr := 0x1000 + 113 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( u32 , u32 , bool) -> u32 ) (fp))(under_, over_, fullAlpha_); } +ColorConvertToRGB :: inline proc "c" (h_ : f32 , s_ : f32 , v_ : f32 ) -> u32 { addr := 0x1000 + 114 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( f32 , f32 , f32 ) -> u32 ) (fp))(h_, s_, v_); } +ColorConvertToHSV :: inline proc "c" (color_ : u32 , h_ : ^f32 , s_ : ^f32 , v_ : ^f32 ) -> bool{ addr := 0x1000 + 115 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( u32 , ^f32 , ^f32 , ^f32 ) -> bool) (fp))(color_, h_, s_, v_); } +ColorParse :: inline proc "c" (string_ : ^i8 , bytes_ : int ) -> u32 { addr := 0x1000 + 116 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( ^i8 , int ) -> u32 ) (fp))(string_, bytes_); } +DrawStandardIcon :: inline proc "c" (painter_ : ^Painter, id_ : u32 , size_ : i32, region_ : Rectangle, color_ : u32 ) -> bool{ addr := 0x1000 + 117 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( ^Painter, u32 , i32, Rectangle, u32 ) -> bool) (fp))(painter_, id_, size_, region_, color_); } +DrawStyledBox :: inline proc "c" (painter_ : ^Painter, box_ : StyledBox){ addr := 0x1000 + 118 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); ((proc "c" ( ^Painter, StyledBox)) (fp))(painter_, box_); } +DrawSurface :: inline proc "c" (destination_ : Handle, source_ : Handle, destinationRegion_ : Rectangle, sourceRegion_ : Rectangle, borderRegion_ : Rectangle, mode_ : DrawMode, alpha_ : u16 ) -> Error{ addr := 0x1000 + 119 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( Handle, Handle, Rectangle, Rectangle, Rectangle, DrawMode, u16 ) -> Error) (fp))(destination_, source_, destinationRegion_, sourceRegion_, borderRegion_, mode_, alpha_); } +DrawSurface2 :: inline proc "c" (painter_ : ^Painter, source_ : Handle, destinationRegion_ : Rectangle, sourceRegion_ : Rectangle, alpha_ : u16 ){ addr := 0x1000 + 120 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); ((proc "c" ( ^Painter, Handle, Rectangle, Rectangle, u16 )) (fp))(painter_, source_, destinationRegion_, sourceRegion_, alpha_); } +DrawSurfaceClipped :: inline proc "c" (destination_ : Handle, source_ : Handle, destinationRegion_ : Rectangle, sourceRegion_ : Rectangle, borderRegion_ : Rectangle, mode_ : DrawMode, alpha_ : u16 , clipRegion_ : Rectangle) -> Error{ addr := 0x1000 + 121 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( Handle, Handle, Rectangle, Rectangle, Rectangle, DrawMode, u16 , Rectangle) -> Error) (fp))(destination_, source_, destinationRegion_, sourceRegion_, borderRegion_, mode_, alpha_, clipRegion_); } +DrawText :: inline proc "c" (painter_ : ^Painter, plan_ : ^TextPlan, bounds_ : Rectangle, clip_ : ^Rectangle, selectionProperties_ : ^TextSelection){ addr := 0x1000 + 122 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); ((proc "c" ( ^Painter, ^TextPlan, Rectangle, ^Rectangle, ^TextSelection)) (fp))(painter_, plan_, bounds_, clip_, selectionProperties_); } +FontGetName :: inline proc "c" (family_ : u16 , buffer_ : ^i8 , bufferBytes_ : int ) -> int { addr := 0x1000 + 123 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( u16 , ^i8 , int ) -> int ) (fp))(family_, buffer_, bufferBytes_); } +PainterBoundsClient :: inline proc "c" (painter_ : ^Painter) -> Rectangle{ addr := 0x1000 + 124 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( ^Painter) -> Rectangle) (fp))(painter_); } +PainterBoundsInset :: inline proc "c" (painter_ : ^Painter) -> Rectangle{ addr := 0x1000 + 125 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( ^Painter) -> Rectangle) (fp))(painter_); } +RedrawAll :: inline proc "c" (){ addr := 0x1000 + 126 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); ((proc "c" ()) (fp))(); } +SurfaceCreate :: inline proc "c" (width_ : int , height_ : int , flags_ : u32 ) -> Handle{ addr := 0x1000 + 127 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( int , int , u32 ) -> Handle) (fp))(width_, height_, flags_); } +SurfaceGetLinearBuffer :: inline proc "c" (surface_ : Handle, linearBuffer_ : ^LinearBuffer){ addr := 0x1000 + 128 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); ((proc "c" ( Handle, ^LinearBuffer)) (fp))(surface_, linearBuffer_); } +SurfaceReset :: inline proc "c" (surface_ : Handle){ addr := 0x1000 + 129 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); ((proc "c" ( Handle)) (fp))(surface_); } +AudioStreamClose :: inline proc "c" (stream_ : ^AudioStream){ addr := 0x1000 + 130 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); ((proc "c" ( ^AudioStream)) (fp))(stream_); } +AudioStreamOpen :: inline proc "c" (device_ : AudioDeviceID, bufferLengthUs_ : int ) -> ^AudioStream{ addr := 0x1000 + 131 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( AudioDeviceID, int ) -> ^AudioStream) (fp))(device_, bufferLengthUs_); } +AudioStreamNotify :: inline proc "c" (stream_ : ^AudioStream){ addr := 0x1000 + 132 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); ((proc "c" ( ^AudioStream)) (fp))(stream_); } +AudioStreamSend :: inline proc "c" (destination_ : ^AudioStream, source_ : ^AudioStream, time_ : ^f64 ) -> Error{ addr := 0x1000 + 133 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( ^AudioStream, ^AudioStream, ^f64 ) -> Error) (fp))(destination_, source_, time_); } +EventCreate :: inline proc "c" (autoReset_ : bool) -> Handle{ addr := 0x1000 + 134 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( bool) -> Handle) (fp))(autoReset_); } +EventForward :: inline proc "c" (event_ : Handle, eventSink_ : Handle, data_ : Generic){ addr := 0x1000 + 135 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); ((proc "c" ( Handle, Handle, Generic)) (fp))(event_, eventSink_, data_); } +EventPoll :: inline proc "c" (event_ : Handle) -> Error{ addr := 0x1000 + 136 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( Handle) -> Error) (fp))(event_); } +EventReset :: inline proc "c" (event_ : Handle){ addr := 0x1000 + 137 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); ((proc "c" ( Handle)) (fp))(event_); } +EventSet :: inline proc "c" (event_ : Handle){ addr := 0x1000 + 138 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); ((proc "c" ( Handle)) (fp))(event_); } +EventSinkCreate :: inline proc "c" (ignoreDuplicates_ : bool) -> Handle{ addr := 0x1000 + 139 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( bool) -> Handle) (fp))(ignoreDuplicates_); } +EventSinkPop :: inline proc "c" (eventSink_ : Handle, data_ : ^Generic) -> Error{ addr := 0x1000 + 140 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( Handle, ^Generic) -> Error) (fp))(eventSink_, data_); } +EventSinkPush :: inline proc "c" (eventSink_ : Handle, data_ : Generic) -> Error{ addr := 0x1000 + 141 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( Handle, Generic) -> Error) (fp))(eventSink_, data_); } +MutexAcquire :: inline proc "c" (mutex_ : ^Mutex){ addr := 0x1000 + 142 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); ((proc "c" ( ^Mutex)) (fp))(mutex_); } +MutexDestroy :: inline proc "c" (mutex_ : ^Mutex){ addr := 0x1000 + 143 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); ((proc "c" ( ^Mutex)) (fp))(mutex_); } +MutexRelease :: inline proc "c" (mutex_ : ^Mutex){ addr := 0x1000 + 144 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); ((proc "c" ( ^Mutex)) (fp))(mutex_); } +PerformanceTimerPush :: inline proc "c" (){ addr := 0x1000 + 145 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); ((proc "c" ()) (fp))(); } +PerformanceTimerPop :: inline proc "c" () -> f64 { addr := 0x1000 + 146 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" () -> f64 ) (fp))(); } +SchedulerYield :: inline proc "c" (){ addr := 0x1000 + 147 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); ((proc "c" ()) (fp))(); } +Sleep :: inline proc "c" (milliseconds_ : u64 ){ addr := 0x1000 + 148 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); ((proc "c" ( u64 )) (fp))(milliseconds_); } +SpinlockAcquire :: inline proc "c" (spinlock_ : ^Spinlock){ addr := 0x1000 + 149 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); ((proc "c" ( ^Spinlock)) (fp))(spinlock_); } +SpinlockRelease :: inline proc "c" (spinlock_ : ^Spinlock){ addr := 0x1000 + 150 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); ((proc "c" ( ^Spinlock)) (fp))(spinlock_); } +TimerCreate :: inline proc "c" () -> Handle{ addr := 0x1000 + 151 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" () -> Handle) (fp))(); } +TimerSet :: inline proc "c" (handle_ : Handle, afterMs_ : u64 , callback_ : TimerCallbackFunction, argument_ : Generic){ addr := 0x1000 + 152 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); ((proc "c" ( Handle, u64 , TimerCallbackFunction, Generic)) (fp))(handle_, afterMs_, callback_, argument_); } +Wait :: inline proc "c" (objects_ : ^Handle, objectCount_ : int , timeoutMs_ : uint ) -> uint { addr := 0x1000 + 153 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( ^Handle, int , uint ) -> uint ) (fp))(objects_, objectCount_, timeoutMs_); } +CStringLength :: inline proc "c" (string_ : cstring ) -> int { addr := 0x1000 + 154 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( cstring ) -> int ) (fp))(string_); } +StringAllocateAndFormat :: inline proc "c" (bytes_ : ^int , format_ : cstring , _varargs_ : ..any) -> ^i8 { addr := 0x1000 + 155 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( ^int , cstring , ..any) -> ^i8 ) (fp))(bytes_, format_, _varargs_); } +StringCompare :: inline proc "c" (s1_ : string, s2_ : string) -> i32{ addr := 0x1000 + 157 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" (^u8, int, ^u8, int) -> i32) (fp))(raw_data(s1_), len(s1_), raw_data(s2_), len(s2_)); } +StringCompareRaw :: inline proc "c" (s1_ : string, s2_ : string) -> i32{ addr := 0x1000 + 158 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" (^u8, int, ^u8, int) -> i32) (fp))(raw_data(s1_), len(s1_), raw_data(s2_), len(s2_)); } +StringFormat :: inline proc "c" (buffer_ : ^i8 , bufferLength_ : int , format_ : cstring , _varargs_ : ..any) -> int { addr := 0x1000 + 159 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( ^i8 , int , cstring , ..any) -> int ) (fp))(buffer_, bufferLength_, format_, _varargs_); } +StringFormatTemporary :: inline proc "c" (format_ : cstring , _varargs_ : ..any) -> ^i8 { addr := 0x1000 + 160 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( cstring , ..any) -> ^i8 ) (fp))(format_, _varargs_); } +StringFormatAppend :: inline proc "c" (buffer_ : ^i8 , bufferLength_ : int , bufferPosition_ : ^int , format_ : cstring , _varargs_ : ..any){ addr := 0x1000 + 162 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); ((proc "c" ( ^i8 , int , ^int , cstring , ..any)) (fp))(buffer_, bufferLength_, bufferPosition_, format_, _varargs_); } +StringLength :: inline proc "c" (string_ : ^i8 , end_ : u8 ) -> int { addr := 0x1000 + 164 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( ^i8 , u8 ) -> int ) (fp))(string_, end_); } +StringLoad :: inline proc "c" (cRule_ : cstring , formatValues_ : ^FormatValue, formatValueCount_ : int , bytes_ : ^int ) -> ^i8 { addr := 0x1000 + 165 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( cstring , ^FormatValue, int , ^int ) -> ^i8 ) (fp))(cRule_, formatValues_, formatValueCount_, bytes_); } +StringStartsWith :: inline proc "c" (string_ : string, prefix_ : string, caseInsensitive_ : bool) -> bool{ addr := 0x1000 + 166 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" (^u8, int, ^u8, int, bool) -> bool) (fp))(raw_data(string_), len(string_), raw_data(prefix_), len(prefix_), caseInsensitive_); } +CRTabs :: inline proc "c" (n_ : i32) -> i32{ addr := 0x1000 + 167 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( i32) -> i32) (fp))(n_); } +CRTacosf :: inline proc "c" (x_ : f32 ) -> f32 { addr := 0x1000 + 168 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( f32 ) -> f32 ) (fp))(x_); } +CRTasinf :: inline proc "c" (x_ : f32 ) -> f32 { addr := 0x1000 + 169 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( f32 ) -> f32 ) (fp))(x_); } +CRTassert :: inline proc "c" (test_ : bool){ addr := 0x1000 + 170 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); ((proc "c" ( bool)) (fp))(test_); } +CRTatan2f :: inline proc "c" (y_ : f32 , x_ : f32 ) -> f32 { addr := 0x1000 + 171 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( f32 , f32 ) -> f32 ) (fp))(y_, x_); } +CRTatanf :: inline proc "c" (x_ : f32 ) -> f32 { addr := 0x1000 + 172 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( f32 ) -> f32 ) (fp))(x_); } +CRTatoi :: inline proc "c" (string_ : ^i8 ) -> i32{ addr := 0x1000 + 173 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( ^i8 ) -> i32) (fp))(string_); } +CRTcalloc :: inline proc "c" (num_ : int , size_ : int ) -> rawptr{ addr := 0x1000 + 174 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( int , int ) -> rawptr) (fp))(num_, size_); } +CRTceil :: inline proc "c" (x_ : f64 ) -> f64 { addr := 0x1000 + 175 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( f64 ) -> f64 ) (fp))(x_); } +CRTceilf :: inline proc "c" (x_ : f32 ) -> f32 { addr := 0x1000 + 176 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( f32 ) -> f32 ) (fp))(x_); } +CRTcosf :: inline proc "c" (x_ : f32 ) -> f32 { addr := 0x1000 + 177 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( f32 ) -> f32 ) (fp))(x_); } +CRTfabs :: inline proc "c" (x_ : f64 ) -> f64 { addr := 0x1000 + 178 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( f64 ) -> f64 ) (fp))(x_); } +CRTfabsl :: inline proc "c" (x_ : [16]u8 ) -> [16]u8 { addr := 0x1000 + 179 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( [16]u8 ) -> [16]u8 ) (fp))(x_); } +CRTfloor :: inline proc "c" (x_ : f64 ) -> f64 { addr := 0x1000 + 180 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( f64 ) -> f64 ) (fp))(x_); } +CRTfloorf :: inline proc "c" (x_ : f32 ) -> f32 { addr := 0x1000 + 181 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( f32 ) -> f32 ) (fp))(x_); } +CRTfmodf :: inline proc "c" (x_ : f32 , y_ : f32 ) -> f32 { addr := 0x1000 + 182 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( f32 , f32 ) -> f32 ) (fp))(x_, y_); } +CRTfree :: inline proc "c" (ptr_ : rawptr){ addr := 0x1000 + 183 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); ((proc "c" ( rawptr)) (fp))(ptr_); } +CRTgetenv :: inline proc "c" (name_ : ^i8 ) -> ^i8 { addr := 0x1000 + 184 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( ^i8 ) -> ^i8 ) (fp))(name_); } +CRTisalpha :: inline proc "c" (c_ : i32) -> i32{ addr := 0x1000 + 185 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( i32) -> i32) (fp))(c_); } +CRTisdigit :: inline proc "c" (c_ : i32) -> i32{ addr := 0x1000 + 186 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( i32) -> i32) (fp))(c_); } +CRTisspace :: inline proc "c" (c_ : i32) -> i32{ addr := 0x1000 + 187 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( i32) -> i32) (fp))(c_); } +CRTisupper :: inline proc "c" (c_ : i32) -> i32{ addr := 0x1000 + 188 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( i32) -> i32) (fp))(c_); } +CRTisxdigit :: inline proc "c" (c_ : i32) -> i32{ addr := 0x1000 + 189 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( i32) -> i32) (fp))(c_); } +CRTmalloc :: inline proc "c" (size_ : int ) -> rawptr{ addr := 0x1000 + 190 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( int ) -> rawptr) (fp))(size_); } +CRTmemchr :: inline proc "c" (_s_ : rawptr, _c_ : i32, n_ : int ) -> rawptr{ addr := 0x1000 + 191 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( rawptr, i32, int ) -> rawptr) (fp))(_s_, _c_, n_); } +CRTmemcmp :: inline proc "c" (s1_ : rawptr, s2_ : rawptr, n_ : int ) -> i32{ addr := 0x1000 + 192 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( rawptr, rawptr, int ) -> i32) (fp))(s1_, s2_, n_); } +CRTmemcpy :: inline proc "c" (dest_ : rawptr, src_ : rawptr, n_ : int ) -> rawptr{ addr := 0x1000 + 193 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( rawptr, rawptr, int ) -> rawptr) (fp))(dest_, src_, n_); } +CRTmemmove :: inline proc "c" (dest_ : rawptr, src_ : rawptr, n_ : int ) -> rawptr{ addr := 0x1000 + 194 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( rawptr, rawptr, int ) -> rawptr) (fp))(dest_, src_, n_); } +CRTmemset :: inline proc "c" (s_ : rawptr, c_ : i32, n_ : int ) -> rawptr{ addr := 0x1000 + 195 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( rawptr, i32, int ) -> rawptr) (fp))(s_, c_, n_); } +CRTqsort :: inline proc "c" (_base_ : rawptr, nmemb_ : int , size_ : int , compar_ : CRTComparisonCallback){ addr := 0x1000 + 196 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); ((proc "c" ( rawptr, int , int , CRTComparisonCallback)) (fp))(_base_, nmemb_, size_, compar_); } +CRTrealloc :: inline proc "c" (ptr_ : rawptr, size_ : int ) -> rawptr{ addr := 0x1000 + 197 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( rawptr, int ) -> rawptr) (fp))(ptr_, size_); } +CRTsinf :: inline proc "c" (x_ : f32 ) -> f32 { addr := 0x1000 + 198 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( f32 ) -> f32 ) (fp))(x_); } +CRTsnprintf :: inline proc "c" (buffer_ : ^i8 , bufferSize_ : int , format_ : ^i8 , _varargs_ : ..any) -> i32{ addr := 0x1000 + 199 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( ^i8 , int , ^i8 , ..any) -> i32) (fp))(buffer_, bufferSize_, format_, _varargs_); } +CRTsprintf :: inline proc "c" (buffer_ : ^i8 , format_ : ^i8 , _varargs_ : ..any) -> i32{ addr := 0x1000 + 200 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( ^i8 , ^i8 , ..any) -> i32) (fp))(buffer_, format_, _varargs_); } +CRTsqrt :: inline proc "c" (x_ : f64 ) -> f64 { addr := 0x1000 + 201 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( f64 ) -> f64 ) (fp))(x_); } +CRTsqrtf :: inline proc "c" (x_ : f32 ) -> f32 { addr := 0x1000 + 202 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( f32 ) -> f32 ) (fp))(x_); } +CRTsqrtl :: inline proc "c" (x_ : [16]u8 ) -> [16]u8 { addr := 0x1000 + 203 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( [16]u8 ) -> [16]u8 ) (fp))(x_); } +CRTstrcat :: inline proc "c" (dest_ : ^i8 , src_ : ^i8 ) -> ^i8 { addr := 0x1000 + 204 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( ^i8 , ^i8 ) -> ^i8 ) (fp))(dest_, src_); } +CRTstrchr :: inline proc "c" (s_ : ^i8 , c_ : i32) -> ^i8 { addr := 0x1000 + 205 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( ^i8 , i32) -> ^i8 ) (fp))(s_, c_); } +CRTstrcmp :: inline proc "c" (s1_ : ^i8 , s2_ : ^i8 ) -> i32{ addr := 0x1000 + 206 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( ^i8 , ^i8 ) -> i32) (fp))(s1_, s2_); } +CRTstrcpy :: inline proc "c" (dest_ : ^i8 , src_ : ^i8 ) -> ^i8 { addr := 0x1000 + 207 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( ^i8 , ^i8 ) -> ^i8 ) (fp))(dest_, src_); } +CRTstrerror :: inline proc "c" (errnum_ : i32) -> ^i8 { addr := 0x1000 + 208 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( i32) -> ^i8 ) (fp))(errnum_); } +CRTstrlen :: inline proc "c" (s_ : ^i8 ) -> int { addr := 0x1000 + 209 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( ^i8 ) -> int ) (fp))(s_); } +CRTstrncmp :: inline proc "c" (s1_ : ^i8 , s2_ : ^i8 , n_ : int ) -> i32{ addr := 0x1000 + 210 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( ^i8 , ^i8 , int ) -> i32) (fp))(s1_, s2_, n_); } +CRTstrncpy :: inline proc "c" (dest_ : ^i8 , src_ : ^i8 , n_ : int ) -> ^i8 { addr := 0x1000 + 211 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( ^i8 , ^i8 , int ) -> ^i8 ) (fp))(dest_, src_, n_); } +CRTstrnlen :: inline proc "c" (s_ : ^i8 , maxlen_ : int ) -> int { addr := 0x1000 + 212 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( ^i8 , int ) -> int ) (fp))(s_, maxlen_); } +CRTstrstr :: inline proc "c" (haystack_ : ^i8 , needle_ : ^i8 ) -> ^i8 { addr := 0x1000 + 213 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( ^i8 , ^i8 ) -> ^i8 ) (fp))(haystack_, needle_); } +CRTstrtol :: inline proc "c" (nptr_ : ^i8 , endptr_ : ^^i8 , base_ : i32) -> i64 { addr := 0x1000 + 214 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( ^i8 , ^^i8 , i32) -> i64 ) (fp))(nptr_, endptr_, base_); } +CRTstrtoul :: inline proc "c" (nptr_ : ^i8 , endptr_ : ^^i8 , base_ : i32) -> u64 { addr := 0x1000 + 215 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( ^i8 , ^^i8 , i32) -> u64 ) (fp))(nptr_, endptr_, base_); } +CRTtolower :: inline proc "c" (c_ : i32) -> i32{ addr := 0x1000 + 216 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( i32) -> i32) (fp))(c_); } +NewPanel :: inline proc "c" (parent_ : ^Element, flags_ : u64 , properties_ : ElementProperties) -> ^Panel{ addr := 0x1000 + 218 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( ^Element, u64 , ElementProperties) -> ^Panel) (fp))(parent_, flags_, properties_); } +NewSplitter :: inline proc "c" (parent_ : ^Element, flags_ : u64 , properties_ : ElementProperties) -> ^Splitter{ addr := 0x1000 + 219 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( ^Element, u64 , ElementProperties) -> ^Splitter) (fp))(parent_, flags_, properties_); } +NewButton :: inline proc "c" (parent_ : ^Element, flags_ : u64 , properties_ : ElementProperties, label_ : string) -> ^Button{ addr := 0x1000 + 220 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( ^Element, u64 , ElementProperties, ^u8, int) -> ^Button) (fp))(parent_, flags_, properties_, raw_data(label_), len(label_)); } +NewChoice :: inline proc "c" (parent_ : ^Element, flags_ : u64 , properties_ : ElementProperties) -> ^Choice{ addr := 0x1000 + 221 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( ^Element, u64 , ElementProperties) -> ^Choice) (fp))(parent_, flags_, properties_); } +NewColorWell :: inline proc "c" (parent_ : ^Element, flags_ : u64 , properties_ : ElementProperties, colorRGB_ : u32 ) -> ^ColorWell{ addr := 0x1000 + 222 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( ^Element, u64 , ElementProperties, u32 ) -> ^ColorWell) (fp))(parent_, flags_, properties_, colorRGB_); } +NewTextDisplay :: inline proc "c" (parent_ : ^Element, flags_ : u64 , properties_ : ElementProperties, label_ : string) -> ^TextDisplay{ addr := 0x1000 + 223 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( ^Element, u64 , ElementProperties, ^u8, int) -> ^TextDisplay) (fp))(parent_, flags_, properties_, raw_data(label_), len(label_)); } +NewIconDisplay :: inline proc "c" (parent_ : ^Element, flags_ : u64 , properties_ : ElementProperties, iconID_ : u32 ) -> ^IconDisplay{ addr := 0x1000 + 224 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( ^Element, u64 , ElementProperties, u32 ) -> ^IconDisplay) (fp))(parent_, flags_, properties_, iconID_); } +NewImageDisplay :: inline proc "c" (parent_ : ^Element, flags_ : u64 , properties_ : ElementProperties) -> ^ImageDisplay{ addr := 0x1000 + 225 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( ^Element, u64 , ElementProperties) -> ^ImageDisplay) (fp))(parent_, flags_, properties_); } +NewListView :: inline proc "c" (parent_ : ^Element, flags_ : u64 , properties_ : ElementProperties, cItemStyle_ : cstring , cHeaderItemStyle_ : cstring , cFooterItemStyle_ : cstring ) -> ^ListView{ addr := 0x1000 + 226 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( ^Element, u64 , ElementProperties, cstring , cstring , cstring ) -> ^ListView) (fp))(parent_, flags_, properties_, cItemStyle_, cHeaderItemStyle_, cFooterItemStyle_); } +NewTextbox :: inline proc "c" (parent_ : ^Element, flags_ : u64 , properties_ : ElementProperties) -> ^Textbox{ addr := 0x1000 + 227 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( ^Element, u64 , ElementProperties) -> ^Textbox) (fp))(parent_, flags_, properties_); } +NewCustomElement :: inline proc "c" (parent_ : ^Element, flags_ : u64 , properties_ : ElementProperties) -> ^Element{ addr := 0x1000 + 228 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( ^Element, u64 , ElementProperties) -> ^Element) (fp))(parent_, flags_, properties_); } +NewWindow :: inline proc "c" (instance_ : ^INSTANCE_TYPE, style_ : WindowStyle) -> ^Window{ addr := 0x1000 + 229 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( ^INSTANCE_TYPE, WindowStyle) -> ^Window) (fp))(instance_, style_); } +NewMenu :: inline proc "c" (source_ : ^Element, flags_ : u64 , userCallback_ : MenuCallbackFunction, _context_ : Generic, fixedWidth_ : i32, fixedHeight_ : i32) -> ^Menu{ addr := 0x1000 + 230 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( ^Element, u64 , MenuCallbackFunction, Generic, i32, i32) -> ^Menu) (fp))(source_, flags_, userCallback_, _context_, fixedWidth_, fixedHeight_); } +NewMenuItem :: inline proc "c" (parent_ : ^Element, flags_ : u64 , label_ : string, callback_ : MenuCallbackFunction, _context_ : Generic){ addr := 0x1000 + 231 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); ((proc "c" ( ^Element, u64 , ^u8, int, MenuCallbackFunction, Generic)) (fp))(parent_, flags_, raw_data(label_), len(label_), callback_, _context_); } +NewMenuCommand :: inline proc "c" (parent_ : ^Element, flags_ : u64 , label_ : string, command_ : ^Command){ addr := 0x1000 + 232 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); ((proc "c" ( ^Element, u64 , ^u8, int, ^Command)) (fp))(parent_, flags_, raw_data(label_), len(label_), command_); } +NewMenuColumn :: inline proc "c" (parent_ : ^Element, flags_ : u64 ) -> ^Element{ addr := 0x1000 + 233 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( ^Element, u64 ) -> ^Element) (fp))(parent_, flags_); } +NewMenuSeparator :: inline proc "c" (parent_ : ^Element){ addr := 0x1000 + 234 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); ((proc "c" ( ^Element)) (fp))(parent_); } +NewSpacer :: inline proc "c" (parent_ : ^Element, flags_ : u64 ) -> ^Element{ addr := 0x1000 + 235 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( ^Element, u64 ) -> ^Element) (fp))(parent_, flags_); } +NewElementGroup :: inline proc "c" (instance_ : ^INSTANCE_TYPE) -> ^ElementGroup{ addr := 0x1000 + 236 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( ^INSTANCE_TYPE) -> ^ElementGroup) (fp))(instance_); } +NewTextPlan :: inline proc "c" (properties_ : ^TextDisplayProperties, bounds_ : Rectangle, string_ : ^i8 , textRuns_ : ^TextRun, textRunCount_ : int , singleUse_ : bool) -> ^TextPlan{ addr := 0x1000 + 237 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( ^TextDisplayProperties, Rectangle, ^i8 , ^TextRun, int , bool) -> ^TextPlan) (fp))(properties_, bounds_, string_, textRuns_, textRunCount_, singleUse_); } +NewStore :: inline proc "c" (instance_ : ^INSTANCE_TYPE, pullCallback_ : StorePullCallbackFunction, pullCallbackContext_ : Generic) -> ^Store{ addr := 0x1000 + 238 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( ^INSTANCE_TYPE, StorePullCallbackFunction, Generic) -> ^Store) (fp))(instance_, pullCallback_, pullCallbackContext_); } +ElementDraw :: inline proc "c" (element_ : ^Element, painter_ : ^Painter){ addr := 0x1000 + 239 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); ((proc "c" ( ^Element, ^Painter)) (fp))(element_, painter_); } +ElementGetInstance :: inline proc "c" (element_ : ^Element) -> ^INSTANCE_TYPE{ addr := 0x1000 + 240 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( ^Element) -> ^INSTANCE_TYPE) (fp))(element_); } +ElementGetWindow :: inline proc "c" (element_ : ^Element) -> ^Window{ addr := 0x1000 + 241 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( ^Element) -> ^Window) (fp))(element_); } +ElementFocus :: inline proc "c" (element_ : ^Element, ensureVisible_ : bool){ addr := 0x1000 + 242 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); ((proc "c" ( ^Element, bool)) (fp))(element_, ensureVisible_); } +ElementSetDisabled :: inline proc "c" (element_ : ^Element, disabled_ : bool){ addr := 0x1000 + 243 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); ((proc "c" ( ^Element, bool)) (fp))(element_, disabled_); } +ElementSetHidden :: inline proc "c" (element_ : ^Element, hidden_ : bool){ addr := 0x1000 + 244 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); ((proc "c" ( ^Element, bool)) (fp))(element_, hidden_); } +ElementSetCallback :: inline proc "c" (element_ : ^Element, callback_ : UICallbackFunction){ addr := 0x1000 + 245 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); ((proc "c" ( ^Element, UICallbackFunction)) (fp))(element_, callback_); } +ElementGetSize :: inline proc "c" (element_ : ^Element, width_ : ^i32, height_ : ^i32){ addr := 0x1000 + 246 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); ((proc "c" ( ^Element, ^i32, ^i32)) (fp))(element_, width_, height_); } +ElementRepaint :: inline proc "c" (element_ : ^Element, all_ : bool, region_ : Rectangle){ addr := 0x1000 + 247 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); ((proc "c" ( ^Element, bool, Rectangle)) (fp))(element_, all_, region_); } +ElementSetData :: inline proc "c" (element_ : ^Element, data_ : Generic){ addr := 0x1000 + 248 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); ((proc "c" ( ^Element, Generic)) (fp))(element_, data_); } +ElementGetData :: inline proc "c" (element_ : ^Element) -> Generic{ addr := 0x1000 + 249 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( ^Element) -> Generic) (fp))(element_); } +ElementSetCellRange :: inline proc "c" (element_ : ^Element, xFrom_ : i32, yFrom_ : i32, xTo_ : i32, yTo_ : i32){ addr := 0x1000 + 250 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); ((proc "c" ( ^Element, i32, i32, i32, i32)) (fp))(element_, xFrom_, yFrom_, xTo_, yTo_); } +ElementAddGroup :: inline proc "c" (element_ : ^Element, group_ : ^ElementGroup){ addr := 0x1000 + 251 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); ((proc "c" ( ^Element, ^ElementGroup)) (fp))(element_, group_); } +ElementGetInsets :: inline proc "c" (element_ : ^Element) -> Rectangle{ addr := 0x1000 + 252 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( ^Element) -> Rectangle) (fp))(element_); } +ElementGetInsetSize :: inline proc "c" (element_ : ^Element) -> Rectangle{ addr := 0x1000 + 253 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( ^Element) -> Rectangle) (fp))(element_); } +ElementGetPreferredSize :: inline proc "c" (element_ : ^Element) -> Rectangle{ addr := 0x1000 + 254 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( ^Element) -> Rectangle) (fp))(element_); } +ElementMove :: inline proc "c" (element_ : ^Element, x_ : i32, y_ : i32, width_ : i32, height_ : i32){ addr := 0x1000 + 255 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); ((proc "c" ( ^Element, i32, i32, i32, i32)) (fp))(element_, x_, y_, width_, height_); } +ElementGetLayoutParent :: inline proc "c" (element_ : ^Element) -> ^Element{ addr := 0x1000 + 256 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( ^Element) -> ^Element) (fp))(element_); } +ElementDestroy :: inline proc "c" (element_ : ^Element){ addr := 0x1000 + 257 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); ((proc "c" ( ^Element)) (fp))(element_); } +ElementDestroyContents :: inline proc "c" (element_ : ^Element){ addr := 0x1000 + 258 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); ((proc "c" ( ^Element)) (fp))(element_); } +ElementStartAnimating :: inline proc "c" (element_ : ^Element) -> bool{ addr := 0x1000 + 259 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( ^Element) -> bool) (fp))(element_); } +ElementGroupSetCallback :: inline proc "c" (group_ : ^ElementGroup, callback_ : UICallbackFunction){ addr := 0x1000 + 260 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); ((proc "c" ( ^ElementGroup, UICallbackFunction)) (fp))(group_, callback_); } +ElementGroupSetDisabled :: inline proc "c" (group_ : ^ElementGroup, disabled_ : bool){ addr := 0x1000 + 261 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); ((proc "c" ( ^ElementGroup, bool)) (fp))(group_, disabled_); } +ElementGroupSetHidden :: inline proc "c" (group_ : ^ElementGroup, hidden_ : bool){ addr := 0x1000 + 262 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); ((proc "c" ( ^ElementGroup, bool)) (fp))(group_, hidden_); } +ElementGroupRepaintAll :: inline proc "c" (group_ : ^ElementGroup){ addr := 0x1000 + 263 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); ((proc "c" ( ^ElementGroup)) (fp))(group_); } +WindowGetBounds :: inline proc "c" (window_ : ^Window) -> Rectangle{ addr := 0x1000 + 264 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( ^Window) -> Rectangle) (fp))(window_); } +WindowGetToolbar :: inline proc "c" (window_ : ^Window) -> ^Element{ addr := 0x1000 + 265 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( ^Window) -> ^Element) (fp))(window_); } +WindowSetIcon :: inline proc "c" (window_ : ^Window, iconID_ : u32 ){ addr := 0x1000 + 266 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); ((proc "c" ( ^Window, u32 )) (fp))(window_, iconID_); } +WindowSetTitle :: inline proc "c" (window_ : ^Window, title_ : string){ addr := 0x1000 + 267 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); ((proc "c" ( ^Window, ^u8, int)) (fp))(window_, raw_data(title_), len(title_)); } +MenuGetSource :: inline proc "c" (menu_ : ^Menu) -> ^Element{ addr := 0x1000 + 268 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( ^Menu) -> ^Element) (fp))(menu_); } +ButtonSetIcon :: inline proc "c" (button_ : ^Button, iconID_ : u32 ){ addr := 0x1000 + 269 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); ((proc "c" ( ^Button, u32 )) (fp))(button_, iconID_); } +ButtonSetCheck :: inline proc "c" (button_ : ^Button, checkState_ : CheckState, sendUpdatedMessage_ : bool){ addr := 0x1000 + 270 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); ((proc "c" ( ^Button, CheckState, bool)) (fp))(button_, checkState_, sendUpdatedMessage_); } +ButtonGetCheck :: inline proc "c" (button_ : ^Button) -> CheckState{ addr := 0x1000 + 271 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( ^Button) -> CheckState) (fp))(button_); } +ButtonOnCommand :: inline proc "c" (button_ : ^Button, callback_ : CommandCallbackFunction, command_ : ^Command){ addr := 0x1000 + 272 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); ((proc "c" ( ^Button, CommandCallbackFunction, ^Command)) (fp))(button_, callback_, command_); } +ButtonSetCheckBuddy :: inline proc "c" (button_ : ^Button, checkBuddy_ : ^Element){ addr := 0x1000 + 273 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); ((proc "c" ( ^Button, ^Element)) (fp))(button_, checkBuddy_); } +ButtonGetCheckBuddy :: inline proc "c" (button_ : ^Button) -> ^Element{ addr := 0x1000 + 274 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( ^Button) -> ^Element) (fp))(button_); } +ButtonBindLabel :: inline proc "c" (button_ : ^Button, cRule_ : ^i8 ){ addr := 0x1000 + 275 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); ((proc "c" ( ^Button, ^i8 )) (fp))(button_, cRule_); } +TextboxFind :: inline proc "c" (textbox_ : ^Textbox, string_ : string, line_ : ^i32 , byte_ : ^i32 , flags_ : u32 ) -> bool{ addr := 0x1000 + 276 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( ^Textbox, ^u8, int, ^i32 , ^i32 , u32 ) -> bool) (fp))(textbox_, raw_data(string_), len(string_), line_, byte_, flags_); } +TextboxInsert :: inline proc "c" (textbox_ : ^Textbox, string_ : string, sendUpdatedMessage_ : bool){ addr := 0x1000 + 277 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); ((proc "c" ( ^Textbox, ^u8, int, bool)) (fp))(textbox_, raw_data(string_), len(string_), sendUpdatedMessage_); } +TextboxGetContents :: inline proc "c" (textbox_ : ^Textbox, bytes_ : ^int ) -> ^i8 { addr := 0x1000 + 278 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( ^Textbox, ^int ) -> ^i8 ) (fp))(textbox_, bytes_); } +TextboxGetLineLength :: inline proc "c" (textbox_ : ^Textbox, line_ : uint ) -> int { addr := 0x1000 + 279 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( ^Textbox, uint ) -> int ) (fp))(textbox_, line_); } +TextboxGetSelection :: inline proc "c" (textbox_ : ^Textbox, fromLine_ : ^i32 , fromByte_ : ^i32 , toLine_ : ^i32 , toByte_ : ^i32 ){ addr := 0x1000 + 280 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); ((proc "c" ( ^Textbox, ^i32 , ^i32 , ^i32 , ^i32 )) (fp))(textbox_, fromLine_, fromByte_, toLine_, toByte_); } +TextboxMoveCaret :: inline proc "c" (textbox_ : ^Textbox, line_ : i32 , byte_ : i32 ){ addr := 0x1000 + 281 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); ((proc "c" ( ^Textbox, i32 , i32 )) (fp))(textbox_, line_, byte_); } +TextboxSetSelection :: inline proc "c" (textbox_ : ^Textbox, fromLine_ : i32 , fromByte_ : i32 , toLine_ : i32 , toByte_ : i32 ){ addr := 0x1000 + 282 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); ((proc "c" ( ^Textbox, i32 , i32 , i32 , i32 )) (fp))(textbox_, fromLine_, fromByte_, toLine_, toByte_); } +TextboxSelectAll :: inline proc "c" (textbox_ : ^Textbox){ addr := 0x1000 + 283 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); ((proc "c" ( ^Textbox)) (fp))(textbox_); } +TextboxClear :: inline proc "c" (textbox_ : ^Textbox, sendUpdatedMessage_ : bool){ addr := 0x1000 + 284 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); ((proc "c" ( ^Textbox, bool)) (fp))(textbox_, sendUpdatedMessage_); } +TextboxUseNumberOverlay :: inline proc "c" (textbox_ : ^Textbox, defaultBehaviour_ : bool){ addr := 0x1000 + 285 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); ((proc "c" ( ^Textbox, bool)) (fp))(textbox_, defaultBehaviour_); } +TextboxUseBreadcrumbOverlay :: inline proc "c" (textbox_ : ^Textbox){ addr := 0x1000 + 286 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); ((proc "c" ( ^Textbox)) (fp))(textbox_); } +PanelSetBands :: inline proc "c" (panel_ : ^Panel, columnCount_ : int , rowCount_ : int , columns_ : ^PanelBand, rows_ : ^PanelBand){ addr := 0x1000 + 287 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); ((proc "c" ( ^Panel, int , int , ^PanelBand, ^PanelBand)) (fp))(panel_, columnCount_, rowCount_, columns_, rows_); } +PanelSwitchTo :: inline proc "c" (panel_ : ^Panel, targetChild_ : ^Element, transitionType_ : TransitionType){ addr := 0x1000 + 288 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); ((proc "c" ( ^Panel, ^Element, TransitionType)) (fp))(panel_, targetChild_, transitionType_); } +TextPlanGetWidth :: inline proc "c" (plan_ : ^TextPlan) -> i32{ addr := 0x1000 + 289 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( ^TextPlan) -> i32) (fp))(plan_); } +TextPlanGetHeight :: inline proc "c" (plan_ : ^TextPlan) -> i32{ addr := 0x1000 + 290 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( ^TextPlan) -> i32) (fp))(plan_); } +TextPlanGetLineCount :: inline proc "c" (plan_ : ^TextPlan) -> int { addr := 0x1000 + 291 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( ^TextPlan) -> int ) (fp))(plan_); } +TextPlanDestroy :: inline proc "c" (plan_ : ^TextPlan){ addr := 0x1000 + 292 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); ((proc "c" ( ^TextPlan)) (fp))(plan_); } +TextDisplaySetContents :: inline proc "c" (display_ : ^TextDisplay, contents_ : string){ addr := 0x1000 + 293 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); ((proc "c" ( ^TextDisplay, ^u8, int)) (fp))(display_, raw_data(contents_), len(contents_)); } +TextDisplayBindContents :: inline proc "c" (display_ : ^TextDisplay, cRule_ : ^i8 , store_ : ^Store, id_ : Generic, values_ : ^i32, valueCount_ : int ){ addr := 0x1000 + 294 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); ((proc "c" ( ^TextDisplay, ^i8 , ^Store, Generic, ^i32, int )) (fp))(display_, cRule_, store_, id_, values_, valueCount_); } +TextDisplayUnbindContents :: inline proc "c" (display_ : ^TextDisplay){ addr := 0x1000 + 295 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); ((proc "c" ( ^TextDisplay)) (fp))(display_); } +StoreDestroy :: inline proc "c" (store_ : ^Store){ addr := 0x1000 + 296 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); ((proc "c" ( ^Store)) (fp))(store_); } +StoreObserve :: inline proc "c" (store_ : ^Store, id_ : Generic, tag_ : i32, callback_ : StoreCallbackFunction, _context_ : Generic, callNow_ : bool){ addr := 0x1000 + 297 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); ((proc "c" ( ^Store, Generic, i32, StoreCallbackFunction, Generic, bool)) (fp))(store_, id_, tag_, callback_, _context_, callNow_); } +StoreUnobserve :: inline proc "c" (store_ : ^Store, id_ : Generic, callback_ : StoreCallbackFunction, _context_ : Generic){ addr := 0x1000 + 298 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); ((proc "c" ( ^Store, Generic, StoreCallbackFunction, Generic)) (fp))(store_, id_, callback_, _context_); } +StoreNotify :: inline proc "c" (store_ : ^Store, id_ : Generic, tag_ : i32){ addr := 0x1000 + 299 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); ((proc "c" ( ^Store, Generic, i32)) (fp))(store_, id_, tag_); } +StoreSet :: inline proc "c" (store_ : ^Store, id_ : Generic, tag_ : i32, value_ : FormatValue){ addr := 0x1000 + 300 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); ((proc "c" ( ^Store, Generic, i32, FormatValue)) (fp))(store_, id_, tag_, value_); } +StoreGet :: inline proc "c" (store_ : ^Store, id_ : Generic, tag_ : i32, defaultValue_ : FormatValue) -> FormatValue{ addr := 0x1000 + 301 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( ^Store, Generic, i32, FormatValue) -> FormatValue) (fp))(store_, id_, tag_, defaultValue_); } +StoreDispatchNotifications :: inline proc "c" (store_ : ^Store){ addr := 0x1000 + 302 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); ((proc "c" ( ^Store)) (fp))(store_); } +ColorWellGetRGB :: inline proc "c" (well_ : ^ColorWell) -> u32 { addr := 0x1000 + 303 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( ^ColorWell) -> u32 ) (fp))(well_); } +ColorWellSetRGB :: inline proc "c" (well_ : ^ColorWell, colorRGB_ : u32 , sendChangedMessage_ : bool){ addr := 0x1000 + 304 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); ((proc "c" ( ^ColorWell, u32 , bool)) (fp))(well_, colorRGB_, sendChangedMessage_); } +ColorWellSetIndeterminate :: inline proc "c" (well_ : ^ColorWell){ addr := 0x1000 + 305 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); ((proc "c" ( ^ColorWell)) (fp))(well_); } +ChoiceAddMenuItem :: inline proc "c" (choice_ : ^Choice, item_ : Generic){ addr := 0x1000 + 306 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); ((proc "c" ( ^Choice, Generic)) (fp))(choice_, item_); } +ChoiceSetItem :: inline proc "c" (choice_ : ^Choice, item_ : Generic, sendUpdatedMessage_ : bool){ addr := 0x1000 + 307 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); ((proc "c" ( ^Choice, Generic, bool)) (fp))(choice_, item_, sendUpdatedMessage_); } +ChoiceGetItem :: inline proc "c" (choice_ : ^Choice) -> Generic{ addr := 0x1000 + 308 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( ^Choice) -> Generic) (fp))(choice_); } +ListViewInsertGroup :: inline proc "c" (view_ : ^ListView, group_ : i32 , flags_ : u32 ){ addr := 0x1000 + 309 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); ((proc "c" ( ^ListView, i32 , u32 )) (fp))(view_, group_, flags_); } +ListViewInsert :: inline proc "c" (view_ : ^ListView, group_ : i32 , firstIndex_ : Generic, lastIndex_ : Generic, count_ : i64 ){ addr := 0x1000 + 310 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); ((proc "c" ( ^ListView, i32 , Generic, Generic, i64 )) (fp))(view_, group_, firstIndex_, lastIndex_, count_); } +ListViewRemove :: inline proc "c" (view_ : ^ListView, group_ : i32 , firstIndex_ : Generic, lastIndex_ : Generic, count_ : i64 ){ addr := 0x1000 + 311 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); ((proc "c" ( ^ListView, i32 , Generic, Generic, i64 )) (fp))(view_, group_, firstIndex_, lastIndex_, count_); } +ListViewRemoveAll :: inline proc "c" (view_ : ^ListView, group_ : i32 ){ addr := 0x1000 + 312 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); ((proc "c" ( ^ListView, i32 )) (fp))(view_, group_); } +ListViewGetIndex :: inline proc "c" (view_ : ^ListView, item_ : ^Element) -> Generic{ addr := 0x1000 + 313 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); return ((proc "c" ( ^ListView, ^Element) -> Generic) (fp))(view_, item_); } +ListViewSetColumns :: inline proc "c" (view_ : ^ListView, columns_ : ^ListViewColumn, columnCount_ : int ){ addr := 0x1000 + 314 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); ((proc "c" ( ^ListView, ^ListViewColumn, int )) (fp))(view_, columns_, columnCount_); } +ListViewSelect :: inline proc "c" (view_ : ^ListView, group_ : i32 , index_ : Generic){ addr := 0x1000 + 315 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); ((proc "c" ( ^ListView, i32 , Generic)) (fp))(view_, group_, index_); } +ListViewResetSearchBuffer :: inline proc "c" (view_ : ^ListView){ addr := 0x1000 + 316 * size_of(int); fp := (rawptr(((^uintptr)(uintptr(addr)))^)); ((proc "c" ( ^ListView)) (fp))(view_); } diff --git a/examples/demo/demo.odin b/examples/demo/demo.odin index fd94f1391..ad89691a5 100644 --- a/examples/demo/demo.odin +++ b/examples/demo/demo.odin @@ -712,8 +712,8 @@ union_type :: proc() { using_statement :: proc() { fmt.println("\n# using statement"); // using can used to bring entities declared in a scope/namespace - // into the current scope. This can be applied to import declarations, - // import names, struct fields, procedure fields, and struct values. + // into the current scope. This can be applied to import names, struct + // fields, procedure fields, and struct values. Vector3 :: struct{x, y, z: f32}; { diff --git a/src/main.cpp b/src/main.cpp index ed90095ef..767140007 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -1917,7 +1917,7 @@ int main(int arg_count, char const **arg_ptr) { if (build_context.cross_compiling && selected_target_metrics->metrics == &target_essence_amd64) { #ifdef GB_SYSTEM_UNIX - system_exec_command_line_app("linker", "x86_64-essence-gcc \"%.*s.o\" -o \"%.*s\" %.*s %.*s", + system_exec_command_line_app("linker", "x86_64-essence-gcc \"%.*s.o\" -o \"%.*s\" %.*s %.*s", // -ffreestanding -nostdlib LIT(output_base), LIT(output_base), LIT(build_context.link_flags), LIT(build_context.extra_linker_flags)); #else gb_printf_err("Linking for cross compilation for this platform is not yet supported (%.*s %.*s)\n",