Files
Odin/core/os/os_essence.odin
T
2019-09-18 16:19:19 +01:00

2441 lines
97 KiB
Odin

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,
}
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,
}
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,
}
StandardFont :: enum {
STANDARD_FONT_REGULAR,
STANDARD_FONT_BOLD,
STANDARD_FONT_MONOSPACED,
}
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,
}
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,
}
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;
}
heap_alloc :: proc(size: int) -> rawptr {
return nil;
}
heap_resize :: proc(ptr: rawptr, new_size: int) -> rawptr {
return nil;
}
heap_free :: proc(ptr: rawptr) {
}
current_thread_id :: proc "contextless" () -> int {
// return int(EsThreadGetID(ES_CURRENT_THREAD));
return -1;
}
OS :: "essence";