The open source OpenXR runtime
at mr/scanout-values 4806 lines 227 kB view raw
1//This file is automatically generated by generator.lua from https://github.com/cimgui/cimgui 2//based on imgui.h file version "1.90.8" 19080 from Dear ImGui https://github.com/ocornut/imgui 3//with imgui_internal.h api 4//docking branch 5#ifndef CIMGUI_INCLUDED 6#define CIMGUI_INCLUDED 7#include <stdio.h> 8#include <stdint.h> 9#if defined _WIN32 || defined __CYGWIN__ 10 #ifdef CIMGUI_NO_EXPORT 11 #define API 12 #else 13 #define API __declspec(dllexport) 14 #endif 15#else 16 #ifdef __GNUC__ 17 #define API __attribute__((__visibility__("default"))) 18 #else 19 #define API 20 #endif 21#endif 22 23#if defined __cplusplus 24 #define EXTERN extern "C" 25#else 26 #include <stdarg.h> 27 #include <stdbool.h> 28 #define EXTERN extern 29#endif 30 31#define CIMGUI_API EXTERN API 32#define CONST const 33 34 35#ifdef _MSC_VER 36typedef unsigned __int64 ImU64; 37#else 38//typedef unsigned long long ImU64; 39#endif 40 41 42#ifdef CIMGUI_DEFINE_ENUMS_AND_STRUCTS 43 44typedef struct ImDrawChannel ImDrawChannel; 45typedef struct ImDrawCmd ImDrawCmd; 46typedef struct ImDrawData ImDrawData; 47typedef struct ImDrawList ImDrawList; 48typedef struct ImDrawListSharedData ImDrawListSharedData; 49typedef struct ImDrawListSplitter ImDrawListSplitter; 50typedef struct ImDrawVert ImDrawVert; 51typedef struct ImFont ImFont; 52typedef struct ImFontAtlas ImFontAtlas; 53typedef struct ImFontBuilderIO ImFontBuilderIO; 54typedef struct ImFontConfig ImFontConfig; 55typedef struct ImFontGlyph ImFontGlyph; 56typedef struct ImFontGlyphRangesBuilder ImFontGlyphRangesBuilder; 57typedef struct ImColor ImColor; 58typedef struct ImGuiContext ImGuiContext; 59typedef struct ImGuiIO ImGuiIO; 60typedef struct ImGuiInputTextCallbackData ImGuiInputTextCallbackData; 61typedef struct ImGuiKeyData ImGuiKeyData; 62typedef struct ImGuiListClipper ImGuiListClipper; 63typedef struct ImGuiOnceUponAFrame ImGuiOnceUponAFrame; 64typedef struct ImGuiPayload ImGuiPayload; 65typedef struct ImGuiPlatformIO ImGuiPlatformIO; 66typedef struct ImGuiPlatformMonitor ImGuiPlatformMonitor; 67typedef struct ImGuiPlatformImeData ImGuiPlatformImeData; 68typedef struct ImGuiSizeCallbackData ImGuiSizeCallbackData; 69typedef struct ImGuiStorage ImGuiStorage; 70typedef struct ImGuiStyle ImGuiStyle; 71typedef struct ImGuiTableSortSpecs ImGuiTableSortSpecs; 72typedef struct ImGuiTableColumnSortSpecs ImGuiTableColumnSortSpecs; 73typedef struct ImGuiTextBuffer ImGuiTextBuffer; 74typedef struct ImGuiTextFilter ImGuiTextFilter; 75typedef struct ImGuiViewport ImGuiViewport; 76typedef struct ImGuiWindowClass ImGuiWindowClass; 77typedef struct ImBitVector ImBitVector; 78typedef struct ImRect ImRect; 79typedef struct ImDrawDataBuilder ImDrawDataBuilder; 80typedef struct ImGuiColorMod ImGuiColorMod; 81typedef struct ImGuiContextHook ImGuiContextHook; 82typedef struct ImGuiDataVarInfo ImGuiDataVarInfo; 83typedef struct ImGuiDataTypeInfo ImGuiDataTypeInfo; 84typedef struct ImGuiDockContext ImGuiDockContext; 85typedef struct ImGuiDockRequest ImGuiDockRequest; 86typedef struct ImGuiDockNode ImGuiDockNode; 87typedef struct ImGuiDockNodeSettings ImGuiDockNodeSettings; 88typedef struct ImGuiGroupData ImGuiGroupData; 89typedef struct ImGuiInputTextState ImGuiInputTextState; 90typedef struct ImGuiInputTextDeactivateData ImGuiInputTextDeactivateData; 91typedef struct ImGuiLastItemData ImGuiLastItemData; 92typedef struct ImGuiLocEntry ImGuiLocEntry; 93typedef struct ImGuiMenuColumns ImGuiMenuColumns; 94typedef struct ImGuiNavItemData ImGuiNavItemData; 95typedef struct ImGuiNavTreeNodeData ImGuiNavTreeNodeData; 96typedef struct ImGuiMetricsConfig ImGuiMetricsConfig; 97typedef struct ImGuiNextWindowData ImGuiNextWindowData; 98typedef struct ImGuiNextItemData ImGuiNextItemData; 99typedef struct ImGuiOldColumnData ImGuiOldColumnData; 100typedef struct ImGuiOldColumns ImGuiOldColumns; 101typedef struct ImGuiPopupData ImGuiPopupData; 102typedef struct ImGuiSettingsHandler ImGuiSettingsHandler; 103typedef struct ImGuiStackSizes ImGuiStackSizes; 104typedef struct ImGuiStyleMod ImGuiStyleMod; 105typedef struct ImGuiTabBar ImGuiTabBar; 106typedef struct ImGuiTabItem ImGuiTabItem; 107typedef struct ImGuiTable ImGuiTable; 108typedef struct ImGuiTableHeaderData ImGuiTableHeaderData; 109typedef struct ImGuiTableColumn ImGuiTableColumn; 110typedef struct ImGuiTableInstanceData ImGuiTableInstanceData; 111typedef struct ImGuiTableTempData ImGuiTableTempData; 112typedef struct ImGuiTableSettings ImGuiTableSettings; 113typedef struct ImGuiTableColumnsSettings ImGuiTableColumnsSettings; 114typedef struct ImGuiTypingSelectState ImGuiTypingSelectState; 115typedef struct ImGuiTypingSelectRequest ImGuiTypingSelectRequest; 116typedef struct ImGuiWindow ImGuiWindow; 117typedef struct ImGuiWindowDockStyle ImGuiWindowDockStyle; 118typedef struct ImGuiWindowTempData ImGuiWindowTempData; 119typedef struct ImGuiWindowSettings ImGuiWindowSettings; 120typedef struct ImVector_const_charPtr {int Size;int Capacity;const char** Data;} ImVector_const_charPtr; 121 122typedef unsigned int ImGuiID; 123typedef signed char ImS8; 124typedef unsigned char ImU8; 125typedef signed short ImS16; 126typedef unsigned short ImU16; 127typedef signed int ImS32; 128typedef unsigned int ImU32; 129typedef signed long long ImS64; 130typedef unsigned long long ImU64; 131struct ImDrawChannel; 132struct ImDrawCmd; 133struct ImDrawData; 134struct ImDrawList; 135struct ImDrawListSharedData; 136struct ImDrawListSplitter; 137struct ImDrawVert; 138struct ImFont; 139struct ImFontAtlas; 140struct ImFontBuilderIO; 141struct ImFontConfig; 142struct ImFontGlyph; 143struct ImFontGlyphRangesBuilder; 144struct ImColor; 145struct ImGuiContext; 146struct ImGuiIO; 147struct ImGuiInputTextCallbackData; 148struct ImGuiKeyData; 149struct ImGuiListClipper; 150struct ImGuiOnceUponAFrame; 151struct ImGuiPayload; 152struct ImGuiPlatformIO; 153struct ImGuiPlatformMonitor; 154struct ImGuiPlatformImeData; 155struct ImGuiSizeCallbackData; 156struct ImGuiStorage; 157struct ImGuiStyle; 158struct ImGuiTableSortSpecs; 159struct ImGuiTableColumnSortSpecs; 160struct ImGuiTextBuffer; 161struct ImGuiTextFilter; 162struct ImGuiViewport; 163struct ImGuiWindowClass; 164typedef int ImGuiCol; 165typedef int ImGuiCond; 166typedef int ImGuiDataType; 167typedef int ImGuiMouseButton; 168typedef int ImGuiMouseCursor; 169typedef int ImGuiStyleVar; 170typedef int ImGuiTableBgTarget; 171typedef int ImDrawFlags; 172typedef int ImDrawListFlags; 173typedef int ImFontAtlasFlags; 174typedef int ImGuiBackendFlags; 175typedef int ImGuiButtonFlags; 176typedef int ImGuiChildFlags; 177typedef int ImGuiColorEditFlags; 178typedef int ImGuiConfigFlags; 179typedef int ImGuiComboFlags; 180typedef int ImGuiDockNodeFlags; 181typedef int ImGuiDragDropFlags; 182typedef int ImGuiFocusedFlags; 183typedef int ImGuiHoveredFlags; 184typedef int ImGuiInputFlags; 185typedef int ImGuiInputTextFlags; 186typedef int ImGuiKeyChord; 187typedef int ImGuiPopupFlags; 188typedef int ImGuiSelectableFlags; 189typedef int ImGuiSliderFlags; 190typedef int ImGuiTabBarFlags; 191typedef int ImGuiTabItemFlags; 192typedef int ImGuiTableFlags; 193typedef int ImGuiTableColumnFlags; 194typedef int ImGuiTableRowFlags; 195typedef int ImGuiTreeNodeFlags; 196typedef int ImGuiViewportFlags; 197typedef int ImGuiWindowFlags; 198typedef void* ImTextureID; 199typedef unsigned short ImDrawIdx; 200typedef unsigned int ImWchar32; 201typedef unsigned short ImWchar16; 202typedef ImWchar16 ImWchar; 203typedef int (*ImGuiInputTextCallback)(ImGuiInputTextCallbackData* data); 204typedef void (*ImGuiSizeCallback)(ImGuiSizeCallbackData* data); 205typedef void* (*ImGuiMemAllocFunc)(size_t sz, void* user_data); 206typedef void (*ImGuiMemFreeFunc)(void* ptr, void* user_data); 207typedef struct ImVec2 ImVec2; 208struct ImVec2 209{ 210 float x, y; 211}; 212typedef struct ImVec4 ImVec4; 213struct ImVec4 214{ 215 float x, y, z, w; 216}; 217typedef enum { 218 ImGuiWindowFlags_None = 0, 219 ImGuiWindowFlags_NoTitleBar = 1 << 0, 220 ImGuiWindowFlags_NoResize = 1 << 1, 221 ImGuiWindowFlags_NoMove = 1 << 2, 222 ImGuiWindowFlags_NoScrollbar = 1 << 3, 223 ImGuiWindowFlags_NoScrollWithMouse = 1 << 4, 224 ImGuiWindowFlags_NoCollapse = 1 << 5, 225 ImGuiWindowFlags_AlwaysAutoResize = 1 << 6, 226 ImGuiWindowFlags_NoBackground = 1 << 7, 227 ImGuiWindowFlags_NoSavedSettings = 1 << 8, 228 ImGuiWindowFlags_NoMouseInputs = 1 << 9, 229 ImGuiWindowFlags_MenuBar = 1 << 10, 230 ImGuiWindowFlags_HorizontalScrollbar = 1 << 11, 231 ImGuiWindowFlags_NoFocusOnAppearing = 1 << 12, 232 ImGuiWindowFlags_NoBringToFrontOnFocus = 1 << 13, 233 ImGuiWindowFlags_AlwaysVerticalScrollbar= 1 << 14, 234 ImGuiWindowFlags_AlwaysHorizontalScrollbar=1<< 15, 235 ImGuiWindowFlags_NoNavInputs = 1 << 16, 236 ImGuiWindowFlags_NoNavFocus = 1 << 17, 237 ImGuiWindowFlags_UnsavedDocument = 1 << 18, 238 ImGuiWindowFlags_NoDocking = 1 << 19, 239 ImGuiWindowFlags_NoNav = ImGuiWindowFlags_NoNavInputs | ImGuiWindowFlags_NoNavFocus, 240 ImGuiWindowFlags_NoDecoration = ImGuiWindowFlags_NoTitleBar | ImGuiWindowFlags_NoResize | ImGuiWindowFlags_NoScrollbar | ImGuiWindowFlags_NoCollapse, 241 ImGuiWindowFlags_NoInputs = ImGuiWindowFlags_NoMouseInputs | ImGuiWindowFlags_NoNavInputs | ImGuiWindowFlags_NoNavFocus, 242 ImGuiWindowFlags_NavFlattened = 1 << 23, 243 ImGuiWindowFlags_ChildWindow = 1 << 24, 244 ImGuiWindowFlags_Tooltip = 1 << 25, 245 ImGuiWindowFlags_Popup = 1 << 26, 246 ImGuiWindowFlags_Modal = 1 << 27, 247 ImGuiWindowFlags_ChildMenu = 1 << 28, 248 ImGuiWindowFlags_DockNodeHost = 1 << 29, 249}ImGuiWindowFlags_; 250typedef enum { 251 ImGuiChildFlags_None = 0, 252 ImGuiChildFlags_Border = 1 << 0, 253 ImGuiChildFlags_AlwaysUseWindowPadding = 1 << 1, 254 ImGuiChildFlags_ResizeX = 1 << 2, 255 ImGuiChildFlags_ResizeY = 1 << 3, 256 ImGuiChildFlags_AutoResizeX = 1 << 4, 257 ImGuiChildFlags_AutoResizeY = 1 << 5, 258 ImGuiChildFlags_AlwaysAutoResize = 1 << 6, 259 ImGuiChildFlags_FrameStyle = 1 << 7, 260}ImGuiChildFlags_; 261typedef enum { 262 ImGuiInputTextFlags_None = 0, 263 ImGuiInputTextFlags_CharsDecimal = 1 << 0, 264 ImGuiInputTextFlags_CharsHexadecimal = 1 << 1, 265 ImGuiInputTextFlags_CharsScientific = 1 << 2, 266 ImGuiInputTextFlags_CharsUppercase = 1 << 3, 267 ImGuiInputTextFlags_CharsNoBlank = 1 << 4, 268 ImGuiInputTextFlags_AllowTabInput = 1 << 5, 269 ImGuiInputTextFlags_EnterReturnsTrue = 1 << 6, 270 ImGuiInputTextFlags_EscapeClearsAll = 1 << 7, 271 ImGuiInputTextFlags_CtrlEnterForNewLine = 1 << 8, 272 ImGuiInputTextFlags_ReadOnly = 1 << 9, 273 ImGuiInputTextFlags_Password = 1 << 10, 274 ImGuiInputTextFlags_AlwaysOverwrite = 1 << 11, 275 ImGuiInputTextFlags_AutoSelectAll = 1 << 12, 276 ImGuiInputTextFlags_ParseEmptyRefVal = 1 << 13, 277 ImGuiInputTextFlags_DisplayEmptyRefVal = 1 << 14, 278 ImGuiInputTextFlags_NoHorizontalScroll = 1 << 15, 279 ImGuiInputTextFlags_NoUndoRedo = 1 << 16, 280 ImGuiInputTextFlags_CallbackCompletion = 1 << 17, 281 ImGuiInputTextFlags_CallbackHistory = 1 << 18, 282 ImGuiInputTextFlags_CallbackAlways = 1 << 19, 283 ImGuiInputTextFlags_CallbackCharFilter = 1 << 20, 284 ImGuiInputTextFlags_CallbackResize = 1 << 21, 285 ImGuiInputTextFlags_CallbackEdit = 1 << 22, 286}ImGuiInputTextFlags_; 287typedef enum { 288 ImGuiTreeNodeFlags_None = 0, 289 ImGuiTreeNodeFlags_Selected = 1 << 0, 290 ImGuiTreeNodeFlags_Framed = 1 << 1, 291 ImGuiTreeNodeFlags_AllowOverlap = 1 << 2, 292 ImGuiTreeNodeFlags_NoTreePushOnOpen = 1 << 3, 293 ImGuiTreeNodeFlags_NoAutoOpenOnLog = 1 << 4, 294 ImGuiTreeNodeFlags_DefaultOpen = 1 << 5, 295 ImGuiTreeNodeFlags_OpenOnDoubleClick = 1 << 6, 296 ImGuiTreeNodeFlags_OpenOnArrow = 1 << 7, 297 ImGuiTreeNodeFlags_Leaf = 1 << 8, 298 ImGuiTreeNodeFlags_Bullet = 1 << 9, 299 ImGuiTreeNodeFlags_FramePadding = 1 << 10, 300 ImGuiTreeNodeFlags_SpanAvailWidth = 1 << 11, 301 ImGuiTreeNodeFlags_SpanFullWidth = 1 << 12, 302 ImGuiTreeNodeFlags_SpanTextWidth = 1 << 13, 303 ImGuiTreeNodeFlags_SpanAllColumns = 1 << 14, 304 ImGuiTreeNodeFlags_NavLeftJumpsBackHere = 1 << 15, 305 ImGuiTreeNodeFlags_CollapsingHeader = ImGuiTreeNodeFlags_Framed | ImGuiTreeNodeFlags_NoTreePushOnOpen | ImGuiTreeNodeFlags_NoAutoOpenOnLog, 306}ImGuiTreeNodeFlags_; 307typedef enum { 308 ImGuiPopupFlags_None = 0, 309 ImGuiPopupFlags_MouseButtonLeft = 0, 310 ImGuiPopupFlags_MouseButtonRight = 1, 311 ImGuiPopupFlags_MouseButtonMiddle = 2, 312 ImGuiPopupFlags_MouseButtonMask_ = 0x1F, 313 ImGuiPopupFlags_MouseButtonDefault_ = 1, 314 ImGuiPopupFlags_NoReopen = 1 << 5, 315 ImGuiPopupFlags_NoOpenOverExistingPopup = 1 << 7, 316 ImGuiPopupFlags_NoOpenOverItems = 1 << 8, 317 ImGuiPopupFlags_AnyPopupId = 1 << 10, 318 ImGuiPopupFlags_AnyPopupLevel = 1 << 11, 319 ImGuiPopupFlags_AnyPopup = ImGuiPopupFlags_AnyPopupId | ImGuiPopupFlags_AnyPopupLevel, 320}ImGuiPopupFlags_; 321typedef enum { 322 ImGuiSelectableFlags_None = 0, 323 ImGuiSelectableFlags_DontClosePopups = 1 << 0, 324 ImGuiSelectableFlags_SpanAllColumns = 1 << 1, 325 ImGuiSelectableFlags_AllowDoubleClick = 1 << 2, 326 ImGuiSelectableFlags_Disabled = 1 << 3, 327 ImGuiSelectableFlags_AllowOverlap = 1 << 4, 328}ImGuiSelectableFlags_; 329typedef enum { 330 ImGuiComboFlags_None = 0, 331 ImGuiComboFlags_PopupAlignLeft = 1 << 0, 332 ImGuiComboFlags_HeightSmall = 1 << 1, 333 ImGuiComboFlags_HeightRegular = 1 << 2, 334 ImGuiComboFlags_HeightLarge = 1 << 3, 335 ImGuiComboFlags_HeightLargest = 1 << 4, 336 ImGuiComboFlags_NoArrowButton = 1 << 5, 337 ImGuiComboFlags_NoPreview = 1 << 6, 338 ImGuiComboFlags_WidthFitPreview = 1 << 7, 339 ImGuiComboFlags_HeightMask_ = ImGuiComboFlags_HeightSmall | ImGuiComboFlags_HeightRegular | ImGuiComboFlags_HeightLarge | ImGuiComboFlags_HeightLargest, 340}ImGuiComboFlags_; 341typedef enum { 342 ImGuiTabBarFlags_None = 0, 343 ImGuiTabBarFlags_Reorderable = 1 << 0, 344 ImGuiTabBarFlags_AutoSelectNewTabs = 1 << 1, 345 ImGuiTabBarFlags_TabListPopupButton = 1 << 2, 346 ImGuiTabBarFlags_NoCloseWithMiddleMouseButton = 1 << 3, 347 ImGuiTabBarFlags_NoTabListScrollingButtons = 1 << 4, 348 ImGuiTabBarFlags_NoTooltip = 1 << 5, 349 ImGuiTabBarFlags_FittingPolicyResizeDown = 1 << 6, 350 ImGuiTabBarFlags_FittingPolicyScroll = 1 << 7, 351 ImGuiTabBarFlags_FittingPolicyMask_ = ImGuiTabBarFlags_FittingPolicyResizeDown | ImGuiTabBarFlags_FittingPolicyScroll, 352 ImGuiTabBarFlags_FittingPolicyDefault_ = ImGuiTabBarFlags_FittingPolicyResizeDown, 353}ImGuiTabBarFlags_; 354typedef enum { 355 ImGuiTabItemFlags_None = 0, 356 ImGuiTabItemFlags_UnsavedDocument = 1 << 0, 357 ImGuiTabItemFlags_SetSelected = 1 << 1, 358 ImGuiTabItemFlags_NoCloseWithMiddleMouseButton = 1 << 2, 359 ImGuiTabItemFlags_NoPushId = 1 << 3, 360 ImGuiTabItemFlags_NoTooltip = 1 << 4, 361 ImGuiTabItemFlags_NoReorder = 1 << 5, 362 ImGuiTabItemFlags_Leading = 1 << 6, 363 ImGuiTabItemFlags_Trailing = 1 << 7, 364 ImGuiTabItemFlags_NoAssumedClosure = 1 << 8, 365}ImGuiTabItemFlags_; 366typedef enum { 367 ImGuiFocusedFlags_None = 0, 368 ImGuiFocusedFlags_ChildWindows = 1 << 0, 369 ImGuiFocusedFlags_RootWindow = 1 << 1, 370 ImGuiFocusedFlags_AnyWindow = 1 << 2, 371 ImGuiFocusedFlags_NoPopupHierarchy = 1 << 3, 372 ImGuiFocusedFlags_DockHierarchy = 1 << 4, 373 ImGuiFocusedFlags_RootAndChildWindows = ImGuiFocusedFlags_RootWindow | ImGuiFocusedFlags_ChildWindows, 374}ImGuiFocusedFlags_; 375typedef enum { 376 ImGuiHoveredFlags_None = 0, 377 ImGuiHoveredFlags_ChildWindows = 1 << 0, 378 ImGuiHoveredFlags_RootWindow = 1 << 1, 379 ImGuiHoveredFlags_AnyWindow = 1 << 2, 380 ImGuiHoveredFlags_NoPopupHierarchy = 1 << 3, 381 ImGuiHoveredFlags_DockHierarchy = 1 << 4, 382 ImGuiHoveredFlags_AllowWhenBlockedByPopup = 1 << 5, 383 ImGuiHoveredFlags_AllowWhenBlockedByActiveItem = 1 << 7, 384 ImGuiHoveredFlags_AllowWhenOverlappedByItem = 1 << 8, 385 ImGuiHoveredFlags_AllowWhenOverlappedByWindow = 1 << 9, 386 ImGuiHoveredFlags_AllowWhenDisabled = 1 << 10, 387 ImGuiHoveredFlags_NoNavOverride = 1 << 11, 388 ImGuiHoveredFlags_AllowWhenOverlapped = ImGuiHoveredFlags_AllowWhenOverlappedByItem | ImGuiHoveredFlags_AllowWhenOverlappedByWindow, 389 ImGuiHoveredFlags_RectOnly = ImGuiHoveredFlags_AllowWhenBlockedByPopup | ImGuiHoveredFlags_AllowWhenBlockedByActiveItem | ImGuiHoveredFlags_AllowWhenOverlapped, 390 ImGuiHoveredFlags_RootAndChildWindows = ImGuiHoveredFlags_RootWindow | ImGuiHoveredFlags_ChildWindows, 391 ImGuiHoveredFlags_ForTooltip = 1 << 12, 392 ImGuiHoveredFlags_Stationary = 1 << 13, 393 ImGuiHoveredFlags_DelayNone = 1 << 14, 394 ImGuiHoveredFlags_DelayShort = 1 << 15, 395 ImGuiHoveredFlags_DelayNormal = 1 << 16, 396 ImGuiHoveredFlags_NoSharedDelay = 1 << 17, 397}ImGuiHoveredFlags_; 398typedef enum { 399 ImGuiDockNodeFlags_None = 0, 400 ImGuiDockNodeFlags_KeepAliveOnly = 1 << 0, 401 ImGuiDockNodeFlags_NoDockingOverCentralNode = 1 << 2, 402 ImGuiDockNodeFlags_PassthruCentralNode = 1 << 3, 403 ImGuiDockNodeFlags_NoDockingSplit = 1 << 4, 404 ImGuiDockNodeFlags_NoResize = 1 << 5, 405 ImGuiDockNodeFlags_AutoHideTabBar = 1 << 6, 406 ImGuiDockNodeFlags_NoUndocking = 1 << 7, 407}ImGuiDockNodeFlags_; 408typedef enum { 409 ImGuiDragDropFlags_None = 0, 410 ImGuiDragDropFlags_SourceNoPreviewTooltip = 1 << 0, 411 ImGuiDragDropFlags_SourceNoDisableHover = 1 << 1, 412 ImGuiDragDropFlags_SourceNoHoldToOpenOthers = 1 << 2, 413 ImGuiDragDropFlags_SourceAllowNullID = 1 << 3, 414 ImGuiDragDropFlags_SourceExtern = 1 << 4, 415 ImGuiDragDropFlags_SourceAutoExpirePayload = 1 << 5, 416 ImGuiDragDropFlags_AcceptBeforeDelivery = 1 << 10, 417 ImGuiDragDropFlags_AcceptNoDrawDefaultRect = 1 << 11, 418 ImGuiDragDropFlags_AcceptNoPreviewTooltip = 1 << 12, 419 ImGuiDragDropFlags_AcceptPeekOnly = ImGuiDragDropFlags_AcceptBeforeDelivery | ImGuiDragDropFlags_AcceptNoDrawDefaultRect, 420}ImGuiDragDropFlags_; 421typedef enum { 422 ImGuiDataType_S8, 423 ImGuiDataType_U8, 424 ImGuiDataType_S16, 425 ImGuiDataType_U16, 426 ImGuiDataType_S32, 427 ImGuiDataType_U32, 428 ImGuiDataType_S64, 429 ImGuiDataType_U64, 430 ImGuiDataType_Float, 431 ImGuiDataType_Double, 432 ImGuiDataType_COUNT 433}ImGuiDataType_; 434typedef enum { 435ImGuiDir_None=-1, 436ImGuiDir_Left=0, 437ImGuiDir_Right=1, 438ImGuiDir_Up=2, 439ImGuiDir_Down=3, 440ImGuiDir_COUNT=4, 441}ImGuiDir; 442typedef enum { 443ImGuiSortDirection_None=0, 444ImGuiSortDirection_Ascending=1, 445ImGuiSortDirection_Descending=2, 446}ImGuiSortDirection; 447typedef enum { 448ImGuiKey_None=0, 449ImGuiKey_Tab=512, 450ImGuiKey_LeftArrow=513, 451ImGuiKey_RightArrow=514, 452ImGuiKey_UpArrow=515, 453ImGuiKey_DownArrow=516, 454ImGuiKey_PageUp=517, 455ImGuiKey_PageDown=518, 456ImGuiKey_Home=519, 457ImGuiKey_End=520, 458ImGuiKey_Insert=521, 459ImGuiKey_Delete=522, 460ImGuiKey_Backspace=523, 461ImGuiKey_Space=524, 462ImGuiKey_Enter=525, 463ImGuiKey_Escape=526, 464ImGuiKey_LeftCtrl=527, 465ImGuiKey_LeftShift=528, 466ImGuiKey_LeftAlt=529, 467ImGuiKey_LeftSuper=530, 468ImGuiKey_RightCtrl=531, 469ImGuiKey_RightShift=532, 470ImGuiKey_RightAlt=533, 471ImGuiKey_RightSuper=534, 472ImGuiKey_Menu=535, 473ImGuiKey_0=536, 474ImGuiKey_1=537, 475ImGuiKey_2=538, 476ImGuiKey_3=539, 477ImGuiKey_4=540, 478ImGuiKey_5=541, 479ImGuiKey_6=542, 480ImGuiKey_7=543, 481ImGuiKey_8=544, 482ImGuiKey_9=545, 483ImGuiKey_A=546, 484ImGuiKey_B=547, 485ImGuiKey_C=548, 486ImGuiKey_D=549, 487ImGuiKey_E=550, 488ImGuiKey_F=551, 489ImGuiKey_G=552, 490ImGuiKey_H=553, 491ImGuiKey_I=554, 492ImGuiKey_J=555, 493ImGuiKey_K=556, 494ImGuiKey_L=557, 495ImGuiKey_M=558, 496ImGuiKey_N=559, 497ImGuiKey_O=560, 498ImGuiKey_P=561, 499ImGuiKey_Q=562, 500ImGuiKey_R=563, 501ImGuiKey_S=564, 502ImGuiKey_T=565, 503ImGuiKey_U=566, 504ImGuiKey_V=567, 505ImGuiKey_W=568, 506ImGuiKey_X=569, 507ImGuiKey_Y=570, 508ImGuiKey_Z=571, 509ImGuiKey_F1=572, 510ImGuiKey_F2=573, 511ImGuiKey_F3=574, 512ImGuiKey_F4=575, 513ImGuiKey_F5=576, 514ImGuiKey_F6=577, 515ImGuiKey_F7=578, 516ImGuiKey_F8=579, 517ImGuiKey_F9=580, 518ImGuiKey_F10=581, 519ImGuiKey_F11=582, 520ImGuiKey_F12=583, 521ImGuiKey_F13=584, 522ImGuiKey_F14=585, 523ImGuiKey_F15=586, 524ImGuiKey_F16=587, 525ImGuiKey_F17=588, 526ImGuiKey_F18=589, 527ImGuiKey_F19=590, 528ImGuiKey_F20=591, 529ImGuiKey_F21=592, 530ImGuiKey_F22=593, 531ImGuiKey_F23=594, 532ImGuiKey_F24=595, 533ImGuiKey_Apostrophe=596, 534ImGuiKey_Comma=597, 535ImGuiKey_Minus=598, 536ImGuiKey_Period=599, 537ImGuiKey_Slash=600, 538ImGuiKey_Semicolon=601, 539ImGuiKey_Equal=602, 540ImGuiKey_LeftBracket=603, 541ImGuiKey_Backslash=604, 542ImGuiKey_RightBracket=605, 543ImGuiKey_GraveAccent=606, 544ImGuiKey_CapsLock=607, 545ImGuiKey_ScrollLock=608, 546ImGuiKey_NumLock=609, 547ImGuiKey_PrintScreen=610, 548ImGuiKey_Pause=611, 549ImGuiKey_Keypad0=612, 550ImGuiKey_Keypad1=613, 551ImGuiKey_Keypad2=614, 552ImGuiKey_Keypad3=615, 553ImGuiKey_Keypad4=616, 554ImGuiKey_Keypad5=617, 555ImGuiKey_Keypad6=618, 556ImGuiKey_Keypad7=619, 557ImGuiKey_Keypad8=620, 558ImGuiKey_Keypad9=621, 559ImGuiKey_KeypadDecimal=622, 560ImGuiKey_KeypadDivide=623, 561ImGuiKey_KeypadMultiply=624, 562ImGuiKey_KeypadSubtract=625, 563ImGuiKey_KeypadAdd=626, 564ImGuiKey_KeypadEnter=627, 565ImGuiKey_KeypadEqual=628, 566ImGuiKey_AppBack=629, 567ImGuiKey_AppForward=630, 568ImGuiKey_GamepadStart=631, 569ImGuiKey_GamepadBack=632, 570ImGuiKey_GamepadFaceLeft=633, 571ImGuiKey_GamepadFaceRight=634, 572ImGuiKey_GamepadFaceUp=635, 573ImGuiKey_GamepadFaceDown=636, 574ImGuiKey_GamepadDpadLeft=637, 575ImGuiKey_GamepadDpadRight=638, 576ImGuiKey_GamepadDpadUp=639, 577ImGuiKey_GamepadDpadDown=640, 578ImGuiKey_GamepadL1=641, 579ImGuiKey_GamepadR1=642, 580ImGuiKey_GamepadL2=643, 581ImGuiKey_GamepadR2=644, 582ImGuiKey_GamepadL3=645, 583ImGuiKey_GamepadR3=646, 584ImGuiKey_GamepadLStickLeft=647, 585ImGuiKey_GamepadLStickRight=648, 586ImGuiKey_GamepadLStickUp=649, 587ImGuiKey_GamepadLStickDown=650, 588ImGuiKey_GamepadRStickLeft=651, 589ImGuiKey_GamepadRStickRight=652, 590ImGuiKey_GamepadRStickUp=653, 591ImGuiKey_GamepadRStickDown=654, 592ImGuiKey_MouseLeft=655, 593ImGuiKey_MouseRight=656, 594ImGuiKey_MouseMiddle=657, 595ImGuiKey_MouseX1=658, 596ImGuiKey_MouseX2=659, 597ImGuiKey_MouseWheelX=660, 598ImGuiKey_MouseWheelY=661, 599ImGuiKey_ReservedForModCtrl=662, 600ImGuiKey_ReservedForModShift=663, 601ImGuiKey_ReservedForModAlt=664, 602ImGuiKey_ReservedForModSuper=665, 603ImGuiKey_COUNT=666, 604ImGuiMod_None=0, 605ImGuiMod_Ctrl=1 << 12, 606ImGuiMod_Shift=1 << 13, 607ImGuiMod_Alt=1 << 14, 608ImGuiMod_Super=1 << 15, 609ImGuiMod_Mask_=0xF000, 610ImGuiKey_NamedKey_BEGIN=512, 611ImGuiKey_NamedKey_END=ImGuiKey_COUNT, 612ImGuiKey_NamedKey_COUNT=ImGuiKey_NamedKey_END - ImGuiKey_NamedKey_BEGIN, 613ImGuiKey_KeysData_SIZE=ImGuiKey_NamedKey_COUNT, 614ImGuiKey_KeysData_OFFSET=ImGuiKey_NamedKey_BEGIN, 615}ImGuiKey; 616typedef enum { 617 ImGuiInputFlags_None = 0, 618 ImGuiInputFlags_Repeat = 1 << 0, 619 ImGuiInputFlags_RouteActive = 1 << 10, 620 ImGuiInputFlags_RouteFocused = 1 << 11, 621 ImGuiInputFlags_RouteGlobal = 1 << 12, 622 ImGuiInputFlags_RouteAlways = 1 << 13, 623 ImGuiInputFlags_RouteOverFocused = 1 << 14, 624 ImGuiInputFlags_RouteOverActive = 1 << 15, 625 ImGuiInputFlags_RouteUnlessBgFocused = 1 << 16, 626 ImGuiInputFlags_RouteFromRootWindow = 1 << 17, 627 ImGuiInputFlags_Tooltip = 1 << 18, 628}ImGuiInputFlags_; 629typedef enum { 630 ImGuiConfigFlags_None = 0, 631 ImGuiConfigFlags_NavEnableKeyboard = 1 << 0, 632 ImGuiConfigFlags_NavEnableGamepad = 1 << 1, 633 ImGuiConfigFlags_NavEnableSetMousePos = 1 << 2, 634 ImGuiConfigFlags_NavNoCaptureKeyboard = 1 << 3, 635 ImGuiConfigFlags_NoMouse = 1 << 4, 636 ImGuiConfigFlags_NoMouseCursorChange = 1 << 5, 637 ImGuiConfigFlags_DockingEnable = 1 << 6, 638 ImGuiConfigFlags_ViewportsEnable = 1 << 10, 639 ImGuiConfigFlags_DpiEnableScaleViewports= 1 << 14, 640 ImGuiConfigFlags_DpiEnableScaleFonts = 1 << 15, 641 ImGuiConfigFlags_IsSRGB = 1 << 20, 642 ImGuiConfigFlags_IsTouchScreen = 1 << 21, 643}ImGuiConfigFlags_; 644typedef enum { 645 ImGuiBackendFlags_None = 0, 646 ImGuiBackendFlags_HasGamepad = 1 << 0, 647 ImGuiBackendFlags_HasMouseCursors = 1 << 1, 648 ImGuiBackendFlags_HasSetMousePos = 1 << 2, 649 ImGuiBackendFlags_RendererHasVtxOffset = 1 << 3, 650 ImGuiBackendFlags_PlatformHasViewports = 1 << 10, 651 ImGuiBackendFlags_HasMouseHoveredViewport=1 << 11, 652 ImGuiBackendFlags_RendererHasViewports = 1 << 12, 653}ImGuiBackendFlags_; 654typedef enum { 655 ImGuiCol_Text, 656 ImGuiCol_TextDisabled, 657 ImGuiCol_WindowBg, 658 ImGuiCol_ChildBg, 659 ImGuiCol_PopupBg, 660 ImGuiCol_Border, 661 ImGuiCol_BorderShadow, 662 ImGuiCol_FrameBg, 663 ImGuiCol_FrameBgHovered, 664 ImGuiCol_FrameBgActive, 665 ImGuiCol_TitleBg, 666 ImGuiCol_TitleBgActive, 667 ImGuiCol_TitleBgCollapsed, 668 ImGuiCol_MenuBarBg, 669 ImGuiCol_ScrollbarBg, 670 ImGuiCol_ScrollbarGrab, 671 ImGuiCol_ScrollbarGrabHovered, 672 ImGuiCol_ScrollbarGrabActive, 673 ImGuiCol_CheckMark, 674 ImGuiCol_SliderGrab, 675 ImGuiCol_SliderGrabActive, 676 ImGuiCol_Button, 677 ImGuiCol_ButtonHovered, 678 ImGuiCol_ButtonActive, 679 ImGuiCol_Header, 680 ImGuiCol_HeaderHovered, 681 ImGuiCol_HeaderActive, 682 ImGuiCol_Separator, 683 ImGuiCol_SeparatorHovered, 684 ImGuiCol_SeparatorActive, 685 ImGuiCol_ResizeGrip, 686 ImGuiCol_ResizeGripHovered, 687 ImGuiCol_ResizeGripActive, 688 ImGuiCol_Tab, 689 ImGuiCol_TabHovered, 690 ImGuiCol_TabActive, 691 ImGuiCol_TabUnfocused, 692 ImGuiCol_TabUnfocusedActive, 693 ImGuiCol_DockingPreview, 694 ImGuiCol_DockingEmptyBg, 695 ImGuiCol_PlotLines, 696 ImGuiCol_PlotLinesHovered, 697 ImGuiCol_PlotHistogram, 698 ImGuiCol_PlotHistogramHovered, 699 ImGuiCol_TableHeaderBg, 700 ImGuiCol_TableBorderStrong, 701 ImGuiCol_TableBorderLight, 702 ImGuiCol_TableRowBg, 703 ImGuiCol_TableRowBgAlt, 704 ImGuiCol_TextSelectedBg, 705 ImGuiCol_DragDropTarget, 706 ImGuiCol_NavHighlight, 707 ImGuiCol_NavWindowingHighlight, 708 ImGuiCol_NavWindowingDimBg, 709 ImGuiCol_ModalWindowDimBg, 710 ImGuiCol_COUNT 711}ImGuiCol_; 712typedef enum { 713 ImGuiStyleVar_Alpha, 714 ImGuiStyleVar_DisabledAlpha, 715 ImGuiStyleVar_WindowPadding, 716 ImGuiStyleVar_WindowRounding, 717 ImGuiStyleVar_WindowBorderSize, 718 ImGuiStyleVar_WindowMinSize, 719 ImGuiStyleVar_WindowTitleAlign, 720 ImGuiStyleVar_ChildRounding, 721 ImGuiStyleVar_ChildBorderSize, 722 ImGuiStyleVar_PopupRounding, 723 ImGuiStyleVar_PopupBorderSize, 724 ImGuiStyleVar_FramePadding, 725 ImGuiStyleVar_FrameRounding, 726 ImGuiStyleVar_FrameBorderSize, 727 ImGuiStyleVar_ItemSpacing, 728 ImGuiStyleVar_ItemInnerSpacing, 729 ImGuiStyleVar_IndentSpacing, 730 ImGuiStyleVar_CellPadding, 731 ImGuiStyleVar_ScrollbarSize, 732 ImGuiStyleVar_ScrollbarRounding, 733 ImGuiStyleVar_GrabMinSize, 734 ImGuiStyleVar_GrabRounding, 735 ImGuiStyleVar_TabRounding, 736 ImGuiStyleVar_TabBorderSize, 737 ImGuiStyleVar_TabBarBorderSize, 738 ImGuiStyleVar_TableAngledHeadersAngle, 739 ImGuiStyleVar_TableAngledHeadersTextAlign, 740 ImGuiStyleVar_ButtonTextAlign, 741 ImGuiStyleVar_SelectableTextAlign, 742 ImGuiStyleVar_SeparatorTextBorderSize, 743 ImGuiStyleVar_SeparatorTextAlign, 744 ImGuiStyleVar_SeparatorTextPadding, 745 ImGuiStyleVar_DockingSeparatorSize, 746 ImGuiStyleVar_COUNT 747}ImGuiStyleVar_; 748typedef enum { 749 ImGuiButtonFlags_None = 0, 750 ImGuiButtonFlags_MouseButtonLeft = 1 << 0, 751 ImGuiButtonFlags_MouseButtonRight = 1 << 1, 752 ImGuiButtonFlags_MouseButtonMiddle = 1 << 2, 753 ImGuiButtonFlags_MouseButtonMask_ = ImGuiButtonFlags_MouseButtonLeft | ImGuiButtonFlags_MouseButtonRight | ImGuiButtonFlags_MouseButtonMiddle, 754}ImGuiButtonFlags_; 755typedef enum { 756 ImGuiColorEditFlags_None = 0, 757 ImGuiColorEditFlags_NoAlpha = 1 << 1, 758 ImGuiColorEditFlags_NoPicker = 1 << 2, 759 ImGuiColorEditFlags_NoOptions = 1 << 3, 760 ImGuiColorEditFlags_NoSmallPreview = 1 << 4, 761 ImGuiColorEditFlags_NoInputs = 1 << 5, 762 ImGuiColorEditFlags_NoTooltip = 1 << 6, 763 ImGuiColorEditFlags_NoLabel = 1 << 7, 764 ImGuiColorEditFlags_NoSidePreview = 1 << 8, 765 ImGuiColorEditFlags_NoDragDrop = 1 << 9, 766 ImGuiColorEditFlags_NoBorder = 1 << 10, 767 ImGuiColorEditFlags_AlphaBar = 1 << 16, 768 ImGuiColorEditFlags_AlphaPreview = 1 << 17, 769 ImGuiColorEditFlags_AlphaPreviewHalf= 1 << 18, 770 ImGuiColorEditFlags_HDR = 1 << 19, 771 ImGuiColorEditFlags_DisplayRGB = 1 << 20, 772 ImGuiColorEditFlags_DisplayHSV = 1 << 21, 773 ImGuiColorEditFlags_DisplayHex = 1 << 22, 774 ImGuiColorEditFlags_Uint8 = 1 << 23, 775 ImGuiColorEditFlags_Float = 1 << 24, 776 ImGuiColorEditFlags_PickerHueBar = 1 << 25, 777 ImGuiColorEditFlags_PickerHueWheel = 1 << 26, 778 ImGuiColorEditFlags_InputRGB = 1 << 27, 779 ImGuiColorEditFlags_InputHSV = 1 << 28, 780 ImGuiColorEditFlags_DefaultOptions_ = ImGuiColorEditFlags_Uint8 | ImGuiColorEditFlags_DisplayRGB | ImGuiColorEditFlags_InputRGB | ImGuiColorEditFlags_PickerHueBar, 781 ImGuiColorEditFlags_DisplayMask_ = ImGuiColorEditFlags_DisplayRGB | ImGuiColorEditFlags_DisplayHSV | ImGuiColorEditFlags_DisplayHex, 782 ImGuiColorEditFlags_DataTypeMask_ = ImGuiColorEditFlags_Uint8 | ImGuiColorEditFlags_Float, 783 ImGuiColorEditFlags_PickerMask_ = ImGuiColorEditFlags_PickerHueWheel | ImGuiColorEditFlags_PickerHueBar, 784 ImGuiColorEditFlags_InputMask_ = ImGuiColorEditFlags_InputRGB | ImGuiColorEditFlags_InputHSV, 785}ImGuiColorEditFlags_; 786typedef enum { 787 ImGuiSliderFlags_None = 0, 788 ImGuiSliderFlags_AlwaysClamp = 1 << 4, 789 ImGuiSliderFlags_Logarithmic = 1 << 5, 790 ImGuiSliderFlags_NoRoundToFormat = 1 << 6, 791 ImGuiSliderFlags_NoInput = 1 << 7, 792 ImGuiSliderFlags_InvalidMask_ = 0x7000000F, 793}ImGuiSliderFlags_; 794typedef enum { 795 ImGuiMouseButton_Left = 0, 796 ImGuiMouseButton_Right = 1, 797 ImGuiMouseButton_Middle = 2, 798 ImGuiMouseButton_COUNT = 5 799}ImGuiMouseButton_; 800typedef enum { 801 ImGuiMouseCursor_None = -1, 802 ImGuiMouseCursor_Arrow = 0, 803 ImGuiMouseCursor_TextInput, 804 ImGuiMouseCursor_ResizeAll, 805 ImGuiMouseCursor_ResizeNS, 806 ImGuiMouseCursor_ResizeEW, 807 ImGuiMouseCursor_ResizeNESW, 808 ImGuiMouseCursor_ResizeNWSE, 809 ImGuiMouseCursor_Hand, 810 ImGuiMouseCursor_NotAllowed, 811 ImGuiMouseCursor_COUNT 812}ImGuiMouseCursor_; 813typedef enum { 814ImGuiMouseSource_Mouse=0, 815ImGuiMouseSource_TouchScreen=1, 816ImGuiMouseSource_Pen=2, 817ImGuiMouseSource_COUNT=3, 818}ImGuiMouseSource; 819typedef enum { 820 ImGuiCond_None = 0, 821 ImGuiCond_Always = 1 << 0, 822 ImGuiCond_Once = 1 << 1, 823 ImGuiCond_FirstUseEver = 1 << 2, 824 ImGuiCond_Appearing = 1 << 3, 825}ImGuiCond_; 826typedef enum { 827 ImGuiTableFlags_None = 0, 828 ImGuiTableFlags_Resizable = 1 << 0, 829 ImGuiTableFlags_Reorderable = 1 << 1, 830 ImGuiTableFlags_Hideable = 1 << 2, 831 ImGuiTableFlags_Sortable = 1 << 3, 832 ImGuiTableFlags_NoSavedSettings = 1 << 4, 833 ImGuiTableFlags_ContextMenuInBody = 1 << 5, 834 ImGuiTableFlags_RowBg = 1 << 6, 835 ImGuiTableFlags_BordersInnerH = 1 << 7, 836 ImGuiTableFlags_BordersOuterH = 1 << 8, 837 ImGuiTableFlags_BordersInnerV = 1 << 9, 838 ImGuiTableFlags_BordersOuterV = 1 << 10, 839 ImGuiTableFlags_BordersH = ImGuiTableFlags_BordersInnerH | ImGuiTableFlags_BordersOuterH, 840 ImGuiTableFlags_BordersV = ImGuiTableFlags_BordersInnerV | ImGuiTableFlags_BordersOuterV, 841 ImGuiTableFlags_BordersInner = ImGuiTableFlags_BordersInnerV | ImGuiTableFlags_BordersInnerH, 842 ImGuiTableFlags_BordersOuter = ImGuiTableFlags_BordersOuterV | ImGuiTableFlags_BordersOuterH, 843 ImGuiTableFlags_Borders = ImGuiTableFlags_BordersInner | ImGuiTableFlags_BordersOuter, 844 ImGuiTableFlags_NoBordersInBody = 1 << 11, 845 ImGuiTableFlags_NoBordersInBodyUntilResize = 1 << 12, 846 ImGuiTableFlags_SizingFixedFit = 1 << 13, 847 ImGuiTableFlags_SizingFixedSame = 2 << 13, 848 ImGuiTableFlags_SizingStretchProp = 3 << 13, 849 ImGuiTableFlags_SizingStretchSame = 4 << 13, 850 ImGuiTableFlags_NoHostExtendX = 1 << 16, 851 ImGuiTableFlags_NoHostExtendY = 1 << 17, 852 ImGuiTableFlags_NoKeepColumnsVisible = 1 << 18, 853 ImGuiTableFlags_PreciseWidths = 1 << 19, 854 ImGuiTableFlags_NoClip = 1 << 20, 855 ImGuiTableFlags_PadOuterX = 1 << 21, 856 ImGuiTableFlags_NoPadOuterX = 1 << 22, 857 ImGuiTableFlags_NoPadInnerX = 1 << 23, 858 ImGuiTableFlags_ScrollX = 1 << 24, 859 ImGuiTableFlags_ScrollY = 1 << 25, 860 ImGuiTableFlags_SortMulti = 1 << 26, 861 ImGuiTableFlags_SortTristate = 1 << 27, 862 ImGuiTableFlags_HighlightHoveredColumn = 1 << 28, 863 ImGuiTableFlags_SizingMask_ = ImGuiTableFlags_SizingFixedFit | ImGuiTableFlags_SizingFixedSame | ImGuiTableFlags_SizingStretchProp | ImGuiTableFlags_SizingStretchSame, 864}ImGuiTableFlags_; 865typedef enum { 866 ImGuiTableColumnFlags_None = 0, 867 ImGuiTableColumnFlags_Disabled = 1 << 0, 868 ImGuiTableColumnFlags_DefaultHide = 1 << 1, 869 ImGuiTableColumnFlags_DefaultSort = 1 << 2, 870 ImGuiTableColumnFlags_WidthStretch = 1 << 3, 871 ImGuiTableColumnFlags_WidthFixed = 1 << 4, 872 ImGuiTableColumnFlags_NoResize = 1 << 5, 873 ImGuiTableColumnFlags_NoReorder = 1 << 6, 874 ImGuiTableColumnFlags_NoHide = 1 << 7, 875 ImGuiTableColumnFlags_NoClip = 1 << 8, 876 ImGuiTableColumnFlags_NoSort = 1 << 9, 877 ImGuiTableColumnFlags_NoSortAscending = 1 << 10, 878 ImGuiTableColumnFlags_NoSortDescending = 1 << 11, 879 ImGuiTableColumnFlags_NoHeaderLabel = 1 << 12, 880 ImGuiTableColumnFlags_NoHeaderWidth = 1 << 13, 881 ImGuiTableColumnFlags_PreferSortAscending = 1 << 14, 882 ImGuiTableColumnFlags_PreferSortDescending = 1 << 15, 883 ImGuiTableColumnFlags_IndentEnable = 1 << 16, 884 ImGuiTableColumnFlags_IndentDisable = 1 << 17, 885 ImGuiTableColumnFlags_AngledHeader = 1 << 18, 886 ImGuiTableColumnFlags_IsEnabled = 1 << 24, 887 ImGuiTableColumnFlags_IsVisible = 1 << 25, 888 ImGuiTableColumnFlags_IsSorted = 1 << 26, 889 ImGuiTableColumnFlags_IsHovered = 1 << 27, 890 ImGuiTableColumnFlags_WidthMask_ = ImGuiTableColumnFlags_WidthStretch | ImGuiTableColumnFlags_WidthFixed, 891 ImGuiTableColumnFlags_IndentMask_ = ImGuiTableColumnFlags_IndentEnable | ImGuiTableColumnFlags_IndentDisable, 892 ImGuiTableColumnFlags_StatusMask_ = ImGuiTableColumnFlags_IsEnabled | ImGuiTableColumnFlags_IsVisible | ImGuiTableColumnFlags_IsSorted | ImGuiTableColumnFlags_IsHovered, 893 ImGuiTableColumnFlags_NoDirectResize_ = 1 << 30, 894}ImGuiTableColumnFlags_; 895typedef enum { 896 ImGuiTableRowFlags_None = 0, 897 ImGuiTableRowFlags_Headers = 1 << 0, 898}ImGuiTableRowFlags_; 899typedef enum { 900 ImGuiTableBgTarget_None = 0, 901 ImGuiTableBgTarget_RowBg0 = 1, 902 ImGuiTableBgTarget_RowBg1 = 2, 903 ImGuiTableBgTarget_CellBg = 3, 904}ImGuiTableBgTarget_; 905struct ImGuiTableSortSpecs 906{ 907 const ImGuiTableColumnSortSpecs* Specs; 908 int SpecsCount; 909 bool SpecsDirty; 910}; 911struct ImGuiTableColumnSortSpecs 912{ 913 ImGuiID ColumnUserID; 914 ImS16 ColumnIndex; 915 ImS16 SortOrder; 916 ImGuiSortDirection SortDirection; 917}; 918struct ImGuiStyle 919{ 920 float Alpha; 921 float DisabledAlpha; 922 ImVec2 WindowPadding; 923 float WindowRounding; 924 float WindowBorderSize; 925 ImVec2 WindowMinSize; 926 ImVec2 WindowTitleAlign; 927 ImGuiDir WindowMenuButtonPosition; 928 float ChildRounding; 929 float ChildBorderSize; 930 float PopupRounding; 931 float PopupBorderSize; 932 ImVec2 FramePadding; 933 float FrameRounding; 934 float FrameBorderSize; 935 ImVec2 ItemSpacing; 936 ImVec2 ItemInnerSpacing; 937 ImVec2 CellPadding; 938 ImVec2 TouchExtraPadding; 939 float IndentSpacing; 940 float ColumnsMinSpacing; 941 float ScrollbarSize; 942 float ScrollbarRounding; 943 float GrabMinSize; 944 float GrabRounding; 945 float LogSliderDeadzone; 946 float TabRounding; 947 float TabBorderSize; 948 float TabMinWidthForCloseButton; 949 float TabBarBorderSize; 950 float TableAngledHeadersAngle; 951 ImVec2 TableAngledHeadersTextAlign; 952 ImGuiDir ColorButtonPosition; 953 ImVec2 ButtonTextAlign; 954 ImVec2 SelectableTextAlign; 955 float SeparatorTextBorderSize; 956 ImVec2 SeparatorTextAlign; 957 ImVec2 SeparatorTextPadding; 958 ImVec2 DisplayWindowPadding; 959 ImVec2 DisplaySafeAreaPadding; 960 float DockingSeparatorSize; 961 float MouseCursorScale; 962 bool AntiAliasedLines; 963 bool AntiAliasedLinesUseTex; 964 bool AntiAliasedFill; 965 float CurveTessellationTol; 966 float CircleTessellationMaxError; 967 ImVec4 Colors[ImGuiCol_COUNT]; 968 float HoverStationaryDelay; 969 float HoverDelayShort; 970 float HoverDelayNormal; 971 ImGuiHoveredFlags HoverFlagsForTooltipMouse; 972 ImGuiHoveredFlags HoverFlagsForTooltipNav; 973}; 974struct ImGuiKeyData 975{ 976 bool Down; 977 float DownDuration; 978 float DownDurationPrev; 979 float AnalogValue; 980}; 981typedef struct ImVector_ImWchar {int Size;int Capacity;ImWchar* Data;} ImVector_ImWchar; 982 983struct ImGuiIO 984{ 985 ImGuiConfigFlags ConfigFlags; 986 ImGuiBackendFlags BackendFlags; 987 ImVec2 DisplaySize; 988 float DeltaTime; 989 float IniSavingRate; 990 const char* IniFilename; 991 const char* LogFilename; 992 void* UserData; 993 ImFontAtlas*Fonts; 994 float FontGlobalScale; 995 bool FontAllowUserScaling; 996 ImFont* FontDefault; 997 ImVec2 DisplayFramebufferScale; 998 bool ConfigDockingNoSplit; 999 bool ConfigDockingWithShift; 1000 bool ConfigDockingAlwaysTabBar; 1001 bool ConfigDockingTransparentPayload; 1002 bool ConfigViewportsNoAutoMerge; 1003 bool ConfigViewportsNoTaskBarIcon; 1004 bool ConfigViewportsNoDecoration; 1005 bool ConfigViewportsNoDefaultParent; 1006 bool MouseDrawCursor; 1007 bool ConfigMacOSXBehaviors; 1008 bool ConfigInputTrickleEventQueue; 1009 bool ConfigInputTextCursorBlink; 1010 bool ConfigInputTextEnterKeepActive; 1011 bool ConfigDragClickToInputText; 1012 bool ConfigWindowsResizeFromEdges; 1013 bool ConfigWindowsMoveFromTitleBarOnly; 1014 float ConfigMemoryCompactTimer; 1015 float MouseDoubleClickTime; 1016 float MouseDoubleClickMaxDist; 1017 float MouseDragThreshold; 1018 float KeyRepeatDelay; 1019 float KeyRepeatRate; 1020 bool ConfigDebugIsDebuggerPresent; 1021 bool ConfigDebugBeginReturnValueOnce; 1022 bool ConfigDebugBeginReturnValueLoop; 1023 bool ConfigDebugIgnoreFocusLoss; 1024 bool ConfigDebugIniSettings; 1025 const char* BackendPlatformName; 1026 const char* BackendRendererName; 1027 void* BackendPlatformUserData; 1028 void* BackendRendererUserData; 1029 void* BackendLanguageUserData; 1030 const char* (*GetClipboardTextFn)(void* user_data); 1031 void (*SetClipboardTextFn)(void* user_data, const char* text); 1032 void* ClipboardUserData; 1033 void (*SetPlatformImeDataFn)(ImGuiViewport* viewport, ImGuiPlatformImeData* data); 1034 ImWchar PlatformLocaleDecimalPoint; 1035 bool WantCaptureMouse; 1036 bool WantCaptureKeyboard; 1037 bool WantTextInput; 1038 bool WantSetMousePos; 1039 bool WantSaveIniSettings; 1040 bool NavActive; 1041 bool NavVisible; 1042 float Framerate; 1043 int MetricsRenderVertices; 1044 int MetricsRenderIndices; 1045 int MetricsRenderWindows; 1046 int MetricsActiveWindows; 1047 ImVec2 MouseDelta; 1048 ImGuiContext* Ctx; 1049 ImVec2 MousePos; 1050 bool MouseDown[5]; 1051 float MouseWheel; 1052 float MouseWheelH; 1053 ImGuiMouseSource MouseSource; 1054 ImGuiID MouseHoveredViewport; 1055 bool KeyCtrl; 1056 bool KeyShift; 1057 bool KeyAlt; 1058 bool KeySuper; 1059 ImGuiKeyChord KeyMods; 1060 ImGuiKeyData KeysData[ImGuiKey_KeysData_SIZE]; 1061 bool WantCaptureMouseUnlessPopupClose; 1062 ImVec2 MousePosPrev; 1063 ImVec2 MouseClickedPos[5]; 1064 double MouseClickedTime[5]; 1065 bool MouseClicked[5]; 1066 bool MouseDoubleClicked[5]; 1067 ImU16 MouseClickedCount[5]; 1068 ImU16 MouseClickedLastCount[5]; 1069 bool MouseReleased[5]; 1070 bool MouseDownOwned[5]; 1071 bool MouseDownOwnedUnlessPopupClose[5]; 1072 bool MouseWheelRequestAxisSwap; 1073 bool MouseCtrlLeftAsRightClick; 1074 float MouseDownDuration[5]; 1075 float MouseDownDurationPrev[5]; 1076 ImVec2 MouseDragMaxDistanceAbs[5]; 1077 float MouseDragMaxDistanceSqr[5]; 1078 float PenPressure; 1079 bool AppFocusLost; 1080 bool AppAcceptingEvents; 1081 ImS8 BackendUsingLegacyKeyArrays; 1082 bool BackendUsingLegacyNavInputArray; 1083 ImWchar16 InputQueueSurrogate; 1084 ImVector_ImWchar InputQueueCharacters; 1085}; 1086struct ImGuiInputTextCallbackData 1087{ 1088 ImGuiContext* Ctx; 1089 ImGuiInputTextFlags EventFlag; 1090 ImGuiInputTextFlags Flags; 1091 void* UserData; 1092 ImWchar EventChar; 1093 ImGuiKey EventKey; 1094 char* Buf; 1095 int BufTextLen; 1096 int BufSize; 1097 bool BufDirty; 1098 int CursorPos; 1099 int SelectionStart; 1100 int SelectionEnd; 1101}; 1102struct ImGuiSizeCallbackData 1103{ 1104 void* UserData; 1105 ImVec2 Pos; 1106 ImVec2 CurrentSize; 1107 ImVec2 DesiredSize; 1108}; 1109struct ImGuiWindowClass 1110{ 1111 ImGuiID ClassId; 1112 ImGuiID ParentViewportId; 1113 ImGuiID FocusRouteParentWindowId; 1114 ImGuiViewportFlags ViewportFlagsOverrideSet; 1115 ImGuiViewportFlags ViewportFlagsOverrideClear; 1116 ImGuiTabItemFlags TabItemFlagsOverrideSet; 1117 ImGuiDockNodeFlags DockNodeFlagsOverrideSet; 1118 bool DockingAlwaysTabBar; 1119 bool DockingAllowUnclassed; 1120}; 1121struct ImGuiPayload 1122{ 1123 void* Data; 1124 int DataSize; 1125 ImGuiID SourceId; 1126 ImGuiID SourceParentId; 1127 int DataFrameCount; 1128 char DataType[32 + 1]; 1129 bool Preview; 1130 bool Delivery; 1131}; 1132struct ImGuiOnceUponAFrame 1133{ 1134 int RefFrame; 1135}; 1136struct ImGuiTextRange 1137{ 1138 const char* b; 1139 const char* e; 1140}; 1141typedef struct ImGuiTextRange ImGuiTextRange; 1142 1143typedef struct ImVector_ImGuiTextRange {int Size;int Capacity;ImGuiTextRange* Data;} ImVector_ImGuiTextRange; 1144 1145struct ImGuiTextFilter 1146{ 1147 char InputBuf[256]; 1148 ImVector_ImGuiTextRange Filters; 1149 int CountGrep; 1150}; 1151typedef struct ImGuiTextRange ImGuiTextRange; 1152typedef struct ImVector_char {int Size;int Capacity;char* Data;} ImVector_char; 1153 1154struct ImGuiTextBuffer 1155{ 1156 ImVector_char Buf; 1157}; 1158struct ImGuiStoragePair 1159{ 1160 ImGuiID key; 1161 union { int val_i; float val_f; void* val_p; }; 1162}; 1163typedef struct ImGuiStoragePair ImGuiStoragePair; 1164 1165typedef struct ImVector_ImGuiStoragePair {int Size;int Capacity;ImGuiStoragePair* Data;} ImVector_ImGuiStoragePair; 1166 1167struct ImGuiStorage 1168{ 1169 ImVector_ImGuiStoragePair Data; 1170}; 1171typedef struct ImGuiStoragePair ImGuiStoragePair; 1172struct ImGuiListClipper 1173{ 1174 ImGuiContext* Ctx; 1175 int DisplayStart; 1176 int DisplayEnd; 1177 int ItemsCount; 1178 float ItemsHeight; 1179 float StartPosY; 1180 void* TempData; 1181}; 1182struct ImColor 1183{ 1184 ImVec4 Value; 1185}; 1186typedef void (*ImDrawCallback)(const ImDrawList* parent_list, const ImDrawCmd* cmd); 1187struct ImDrawCmd 1188{ 1189 ImVec4 ClipRect; 1190 ImTextureID TextureId; 1191 unsigned int VtxOffset; 1192 unsigned int IdxOffset; 1193 unsigned int ElemCount; 1194 ImDrawCallback UserCallback; 1195 void* UserCallbackData; 1196}; 1197struct ImDrawVert 1198{ 1199 ImVec2 pos; 1200 ImVec2 uv; 1201 ImU32 col; 1202}; 1203typedef struct ImDrawCmdHeader ImDrawCmdHeader; 1204struct ImDrawCmdHeader 1205{ 1206 ImVec4 ClipRect; 1207 ImTextureID TextureId; 1208 unsigned int VtxOffset; 1209}; 1210typedef struct ImVector_ImDrawCmd {int Size;int Capacity;ImDrawCmd* Data;} ImVector_ImDrawCmd; 1211 1212typedef struct ImVector_ImDrawIdx {int Size;int Capacity;ImDrawIdx* Data;} ImVector_ImDrawIdx; 1213 1214struct ImDrawChannel 1215{ 1216 ImVector_ImDrawCmd _CmdBuffer; 1217 ImVector_ImDrawIdx _IdxBuffer; 1218}; 1219typedef struct ImVector_ImDrawChannel {int Size;int Capacity;ImDrawChannel* Data;} ImVector_ImDrawChannel; 1220 1221struct ImDrawListSplitter 1222{ 1223 int _Current; 1224 int _Count; 1225 ImVector_ImDrawChannel _Channels; 1226}; 1227typedef enum { 1228 ImDrawFlags_None = 0, 1229 ImDrawFlags_Closed = 1 << 0, 1230 ImDrawFlags_RoundCornersTopLeft = 1 << 4, 1231 ImDrawFlags_RoundCornersTopRight = 1 << 5, 1232 ImDrawFlags_RoundCornersBottomLeft = 1 << 6, 1233 ImDrawFlags_RoundCornersBottomRight = 1 << 7, 1234 ImDrawFlags_RoundCornersNone = 1 << 8, 1235 ImDrawFlags_RoundCornersTop = ImDrawFlags_RoundCornersTopLeft | ImDrawFlags_RoundCornersTopRight, 1236 ImDrawFlags_RoundCornersBottom = ImDrawFlags_RoundCornersBottomLeft | ImDrawFlags_RoundCornersBottomRight, 1237 ImDrawFlags_RoundCornersLeft = ImDrawFlags_RoundCornersBottomLeft | ImDrawFlags_RoundCornersTopLeft, 1238 ImDrawFlags_RoundCornersRight = ImDrawFlags_RoundCornersBottomRight | ImDrawFlags_RoundCornersTopRight, 1239 ImDrawFlags_RoundCornersAll = ImDrawFlags_RoundCornersTopLeft | ImDrawFlags_RoundCornersTopRight | ImDrawFlags_RoundCornersBottomLeft | ImDrawFlags_RoundCornersBottomRight, 1240 ImDrawFlags_RoundCornersDefault_ = ImDrawFlags_RoundCornersAll, 1241 ImDrawFlags_RoundCornersMask_ = ImDrawFlags_RoundCornersAll | ImDrawFlags_RoundCornersNone, 1242}ImDrawFlags_; 1243typedef enum { 1244 ImDrawListFlags_None = 0, 1245 ImDrawListFlags_AntiAliasedLines = 1 << 0, 1246 ImDrawListFlags_AntiAliasedLinesUseTex = 1 << 1, 1247 ImDrawListFlags_AntiAliasedFill = 1 << 2, 1248 ImDrawListFlags_AllowVtxOffset = 1 << 3, 1249}ImDrawListFlags_; 1250typedef struct ImVector_ImDrawVert {int Size;int Capacity;ImDrawVert* Data;} ImVector_ImDrawVert; 1251 1252typedef struct ImVector_ImVec2 {int Size;int Capacity;ImVec2* Data;} ImVector_ImVec2; 1253 1254typedef struct ImVector_ImVec4 {int Size;int Capacity;ImVec4* Data;} ImVector_ImVec4; 1255 1256typedef struct ImVector_ImTextureID {int Size;int Capacity;ImTextureID* Data;} ImVector_ImTextureID; 1257 1258struct ImDrawList 1259{ 1260 ImVector_ImDrawCmd CmdBuffer; 1261 ImVector_ImDrawIdx IdxBuffer; 1262 ImVector_ImDrawVert VtxBuffer; 1263 ImDrawListFlags Flags; 1264 unsigned int _VtxCurrentIdx; 1265 ImDrawListSharedData* _Data; 1266 ImDrawVert* _VtxWritePtr; 1267 ImDrawIdx* _IdxWritePtr; 1268 ImVector_ImVec2 _Path; 1269 ImDrawCmdHeader _CmdHeader; 1270 ImDrawListSplitter _Splitter; 1271 ImVector_ImVec4 _ClipRectStack; 1272 ImVector_ImTextureID _TextureIdStack; 1273 float _FringeScale; 1274 const char* _OwnerName; 1275}; 1276typedef struct ImVector_ImDrawListPtr {int Size;int Capacity;ImDrawList** Data;} ImVector_ImDrawListPtr; 1277 1278struct ImDrawData 1279{ 1280 bool Valid; 1281 int CmdListsCount; 1282 int TotalIdxCount; 1283 int TotalVtxCount; 1284 ImVector_ImDrawListPtr CmdLists; 1285 ImVec2 DisplayPos; 1286 ImVec2 DisplaySize; 1287 ImVec2 FramebufferScale; 1288 ImGuiViewport* OwnerViewport; 1289}; 1290struct ImFontConfig 1291{ 1292 void* FontData; 1293 int FontDataSize; 1294 bool FontDataOwnedByAtlas; 1295 int FontNo; 1296 float SizePixels; 1297 int OversampleH; 1298 int OversampleV; 1299 bool PixelSnapH; 1300 ImVec2 GlyphExtraSpacing; 1301 ImVec2 GlyphOffset; 1302 const ImWchar* GlyphRanges; 1303 float GlyphMinAdvanceX; 1304 float GlyphMaxAdvanceX; 1305 bool MergeMode; 1306 unsigned int FontBuilderFlags; 1307 float RasterizerMultiply; 1308 float RasterizerDensity; 1309 ImWchar EllipsisChar; 1310 char Name[40]; 1311 ImFont* DstFont; 1312}; 1313struct ImFontGlyph 1314{ 1315 unsigned int Colored : 1; 1316 unsigned int Visible : 1; 1317 unsigned int Codepoint : 30; 1318 float AdvanceX; 1319 float X0, Y0, X1, Y1; 1320 float U0, V0, U1, V1; 1321}; 1322typedef struct ImVector_ImU32 {int Size;int Capacity;ImU32* Data;} ImVector_ImU32; 1323 1324struct ImFontGlyphRangesBuilder 1325{ 1326 ImVector_ImU32 UsedChars; 1327}; 1328typedef struct ImFontAtlasCustomRect ImFontAtlasCustomRect; 1329struct ImFontAtlasCustomRect 1330{ 1331 unsigned short Width, Height; 1332 unsigned short X, Y; 1333 unsigned int GlyphID; 1334 float GlyphAdvanceX; 1335 ImVec2 GlyphOffset; 1336 ImFont* Font; 1337}; 1338typedef enum { 1339 ImFontAtlasFlags_None = 0, 1340 ImFontAtlasFlags_NoPowerOfTwoHeight = 1 << 0, 1341 ImFontAtlasFlags_NoMouseCursors = 1 << 1, 1342 ImFontAtlasFlags_NoBakedLines = 1 << 2, 1343}ImFontAtlasFlags_; 1344typedef struct ImVector_ImFontPtr {int Size;int Capacity;ImFont** Data;} ImVector_ImFontPtr; 1345 1346typedef struct ImVector_ImFontAtlasCustomRect {int Size;int Capacity;ImFontAtlasCustomRect* Data;} ImVector_ImFontAtlasCustomRect; 1347 1348typedef struct ImVector_ImFontConfig {int Size;int Capacity;ImFontConfig* Data;} ImVector_ImFontConfig; 1349 1350struct ImFontAtlas 1351{ 1352 ImFontAtlasFlags Flags; 1353 ImTextureID TexID; 1354 int TexDesiredWidth; 1355 int TexGlyphPadding; 1356 bool Locked; 1357 void* UserData; 1358 bool TexReady; 1359 bool TexPixelsUseColors; 1360 unsigned char* TexPixelsAlpha8; 1361 unsigned int* TexPixelsRGBA32; 1362 int TexWidth; 1363 int TexHeight; 1364 ImVec2 TexUvScale; 1365 ImVec2 TexUvWhitePixel; 1366 ImVector_ImFontPtr Fonts; 1367 ImVector_ImFontAtlasCustomRect CustomRects; 1368 ImVector_ImFontConfig ConfigData; 1369 ImVec4 TexUvLines[(63) + 1]; 1370 const ImFontBuilderIO* FontBuilderIO; 1371 unsigned int FontBuilderFlags; 1372 int PackIdMouseCursors; 1373 int PackIdLines; 1374}; 1375typedef struct ImVector_float {int Size;int Capacity;float* Data;} ImVector_float; 1376 1377typedef struct ImVector_ImFontGlyph {int Size;int Capacity;ImFontGlyph* Data;} ImVector_ImFontGlyph; 1378 1379struct ImFont 1380{ 1381 ImVector_float IndexAdvanceX; 1382 float FallbackAdvanceX; 1383 float FontSize; 1384 ImVector_ImWchar IndexLookup; 1385 ImVector_ImFontGlyph Glyphs; 1386 const ImFontGlyph* FallbackGlyph; 1387 ImFontAtlas* ContainerAtlas; 1388 const ImFontConfig* ConfigData; 1389 short ConfigDataCount; 1390 ImWchar FallbackChar; 1391 ImWchar EllipsisChar; 1392 short EllipsisCharCount; 1393 float EllipsisWidth; 1394 float EllipsisCharStep; 1395 bool DirtyLookupTables; 1396 float Scale; 1397 float Ascent, Descent; 1398 int MetricsTotalSurface; 1399 ImU8 Used4kPagesMap[(0xFFFF +1)/4096/8]; 1400}; 1401typedef enum { 1402 ImGuiViewportFlags_None = 0, 1403 ImGuiViewportFlags_IsPlatformWindow = 1 << 0, 1404 ImGuiViewportFlags_IsPlatformMonitor = 1 << 1, 1405 ImGuiViewportFlags_OwnedByApp = 1 << 2, 1406 ImGuiViewportFlags_NoDecoration = 1 << 3, 1407 ImGuiViewportFlags_NoTaskBarIcon = 1 << 4, 1408 ImGuiViewportFlags_NoFocusOnAppearing = 1 << 5, 1409 ImGuiViewportFlags_NoFocusOnClick = 1 << 6, 1410 ImGuiViewportFlags_NoInputs = 1 << 7, 1411 ImGuiViewportFlags_NoRendererClear = 1 << 8, 1412 ImGuiViewportFlags_NoAutoMerge = 1 << 9, 1413 ImGuiViewportFlags_TopMost = 1 << 10, 1414 ImGuiViewportFlags_CanHostOtherWindows = 1 << 11, 1415 ImGuiViewportFlags_IsMinimized = 1 << 12, 1416 ImGuiViewportFlags_IsFocused = 1 << 13, 1417}ImGuiViewportFlags_; 1418struct ImGuiViewport 1419{ 1420 ImGuiID ID; 1421 ImGuiViewportFlags Flags; 1422 ImVec2 Pos; 1423 ImVec2 Size; 1424 ImVec2 WorkPos; 1425 ImVec2 WorkSize; 1426 float DpiScale; 1427 ImGuiID ParentViewportId; 1428 ImDrawData* DrawData; 1429 void* RendererUserData; 1430 void* PlatformUserData; 1431 void* PlatformHandle; 1432 void* PlatformHandleRaw; 1433 bool PlatformWindowCreated; 1434 bool PlatformRequestMove; 1435 bool PlatformRequestResize; 1436 bool PlatformRequestClose; 1437}; 1438typedef struct ImVector_ImGuiPlatformMonitor {int Size;int Capacity;ImGuiPlatformMonitor* Data;} ImVector_ImGuiPlatformMonitor; 1439 1440typedef struct ImVector_ImGuiViewportPtr {int Size;int Capacity;ImGuiViewport** Data;} ImVector_ImGuiViewportPtr; 1441 1442struct ImGuiPlatformIO 1443{ 1444 void (*Platform_CreateWindow)(ImGuiViewport* vp); 1445 void (*Platform_DestroyWindow)(ImGuiViewport* vp); 1446 void (*Platform_ShowWindow)(ImGuiViewport* vp); 1447 void (*Platform_SetWindowPos)(ImGuiViewport* vp, ImVec2 pos); 1448 ImVec2 (*Platform_GetWindowPos)(ImGuiViewport* vp); 1449 void (*Platform_SetWindowSize)(ImGuiViewport* vp, ImVec2 size); 1450 ImVec2 (*Platform_GetWindowSize)(ImGuiViewport* vp); 1451 void (*Platform_SetWindowFocus)(ImGuiViewport* vp); 1452 bool (*Platform_GetWindowFocus)(ImGuiViewport* vp); 1453 bool (*Platform_GetWindowMinimized)(ImGuiViewport* vp); 1454 void (*Platform_SetWindowTitle)(ImGuiViewport* vp, const char* str); 1455 void (*Platform_SetWindowAlpha)(ImGuiViewport* vp, float alpha); 1456 void (*Platform_UpdateWindow)(ImGuiViewport* vp); 1457 void (*Platform_RenderWindow)(ImGuiViewport* vp, void* render_arg); 1458 void (*Platform_SwapBuffers)(ImGuiViewport* vp, void* render_arg); 1459 float (*Platform_GetWindowDpiScale)(ImGuiViewport* vp); 1460 void (*Platform_OnChangedViewport)(ImGuiViewport* vp); 1461 int (*Platform_CreateVkSurface)(ImGuiViewport* vp, ImU64 vk_inst, const void* vk_allocators, ImU64* out_vk_surface); 1462 void (*Renderer_CreateWindow)(ImGuiViewport* vp); 1463 void (*Renderer_DestroyWindow)(ImGuiViewport* vp); 1464 void (*Renderer_SetWindowSize)(ImGuiViewport* vp, ImVec2 size); 1465 void (*Renderer_RenderWindow)(ImGuiViewport* vp, void* render_arg); 1466 void (*Renderer_SwapBuffers)(ImGuiViewport* vp, void* render_arg); 1467 ImVector_ImGuiPlatformMonitor Monitors; 1468 ImVector_ImGuiViewportPtr Viewports; 1469}; 1470struct ImGuiPlatformMonitor 1471{ 1472 ImVec2 MainPos, MainSize; 1473 ImVec2 WorkPos, WorkSize; 1474 float DpiScale; 1475 void* PlatformHandle; 1476}; 1477struct ImGuiPlatformImeData 1478{ 1479 bool WantVisible; 1480 ImVec2 InputPos; 1481 float InputLineHeight; 1482}; 1483struct ImBitVector; 1484struct ImRect; 1485struct ImDrawDataBuilder; 1486struct ImDrawListSharedData; 1487struct ImGuiColorMod; 1488struct ImGuiContext; 1489struct ImGuiContextHook; 1490struct ImGuiDataVarInfo; 1491struct ImGuiDataTypeInfo; 1492struct ImGuiDockContext; 1493struct ImGuiDockRequest; 1494struct ImGuiDockNode; 1495struct ImGuiDockNodeSettings; 1496struct ImGuiGroupData; 1497struct ImGuiInputTextState; 1498struct ImGuiInputTextDeactivateData; 1499struct ImGuiLastItemData; 1500struct ImGuiLocEntry; 1501struct ImGuiMenuColumns; 1502struct ImGuiNavItemData; 1503struct ImGuiNavTreeNodeData; 1504struct ImGuiMetricsConfig; 1505struct ImGuiNextWindowData; 1506struct ImGuiNextItemData; 1507struct ImGuiOldColumnData; 1508struct ImGuiOldColumns; 1509struct ImGuiPopupData; 1510struct ImGuiSettingsHandler; 1511struct ImGuiStackSizes; 1512struct ImGuiStyleMod; 1513struct ImGuiTabBar; 1514struct ImGuiTabItem; 1515struct ImGuiTable; 1516struct ImGuiTableHeaderData; 1517struct ImGuiTableColumn; 1518struct ImGuiTableInstanceData; 1519struct ImGuiTableTempData; 1520struct ImGuiTableSettings; 1521struct ImGuiTableColumnsSettings; 1522struct ImGuiTypingSelectState; 1523struct ImGuiTypingSelectRequest; 1524struct ImGuiWindow; 1525struct ImGuiWindowDockStyle; 1526struct ImGuiWindowTempData; 1527struct ImGuiWindowSettings; 1528typedef int ImGuiDataAuthority; 1529typedef int ImGuiLayoutType; 1530typedef int ImGuiActivateFlags; 1531typedef int ImGuiDebugLogFlags; 1532typedef int ImGuiFocusRequestFlags; 1533typedef int ImGuiItemFlags; 1534typedef int ImGuiItemStatusFlags; 1535typedef int ImGuiOldColumnFlags; 1536typedef int ImGuiNavHighlightFlags; 1537typedef int ImGuiNavMoveFlags; 1538typedef int ImGuiNextItemDataFlags; 1539typedef int ImGuiNextWindowDataFlags; 1540typedef int ImGuiScrollFlags; 1541typedef int ImGuiSeparatorFlags; 1542typedef int ImGuiTextFlags; 1543typedef int ImGuiTooltipFlags; 1544typedef int ImGuiTypingSelectFlags; 1545typedef int ImGuiWindowRefreshFlags; 1546typedef void (*ImGuiErrorLogCallback)(void* user_data, const char* fmt, ...); 1547extern ImGuiContext* GImGui; 1548typedef struct StbUndoRecord StbUndoRecord; 1549struct StbUndoRecord 1550{ 1551 int where; 1552 int insert_length; 1553 int delete_length; 1554 int char_storage; 1555}; 1556typedef struct StbUndoState StbUndoState; 1557struct StbUndoState 1558{ 1559 StbUndoRecord undo_rec [99]; 1560 ImWchar undo_char[999]; 1561 short undo_point, redo_point; 1562 int undo_char_point, redo_char_point; 1563}; 1564typedef struct STB_TexteditState STB_TexteditState; 1565struct STB_TexteditState 1566{ 1567 int cursor; 1568 int select_start; 1569 int select_end; 1570 unsigned char insert_mode; 1571 int row_count_per_page; 1572 unsigned char cursor_at_end_of_line; 1573 unsigned char initialized; 1574 unsigned char has_preferred_x; 1575 unsigned char single_line; 1576 unsigned char padding1, padding2, padding3; 1577 float preferred_x; 1578 StbUndoState undostate; 1579}; 1580typedef struct StbTexteditRow StbTexteditRow; 1581struct StbTexteditRow 1582{ 1583 float x0,x1; 1584 float baseline_y_delta; 1585 float ymin,ymax; 1586 int num_chars; 1587}; 1588typedef FILE* ImFileHandle; 1589typedef struct ImVec1 ImVec1; 1590struct ImVec1 1591{ 1592 float x; 1593}; 1594typedef struct ImVec2ih ImVec2ih; 1595struct ImVec2ih 1596{ 1597 short x, y; 1598}; 1599struct ImRect 1600{ 1601 ImVec2 Min; 1602 ImVec2 Max; 1603}; 1604typedef ImU32* ImBitArrayPtr; 1605struct ImBitVector 1606{ 1607 ImVector_ImU32 Storage; 1608}; 1609typedef int ImPoolIdx; 1610typedef struct ImGuiTextIndex ImGuiTextIndex; 1611typedef struct ImVector_int {int Size;int Capacity;int* Data;} ImVector_int; 1612 1613struct ImGuiTextIndex 1614{ 1615 ImVector_int LineOffsets; 1616 int EndOffset; 1617}; 1618struct ImDrawListSharedData 1619{ 1620 ImVec2 TexUvWhitePixel; 1621 ImFont* Font; 1622 float FontSize; 1623 float CurveTessellationTol; 1624 float CircleSegmentMaxError; 1625 ImVec4 ClipRectFullscreen; 1626 ImDrawListFlags InitialFlags; 1627 ImVector_ImVec2 TempBuffer; 1628 ImVec2 ArcFastVtx[48]; 1629 float ArcFastRadiusCutoff; 1630 ImU8 CircleSegmentCounts[64]; 1631 const ImVec4* TexUvLines; 1632}; 1633struct ImDrawDataBuilder 1634{ 1635 ImVector_ImDrawListPtr* Layers[2]; 1636 ImVector_ImDrawListPtr LayerData1; 1637}; 1638struct ImGuiDataVarInfo 1639{ 1640 ImGuiDataType Type; 1641 ImU32 Count; 1642 ImU32 Offset; 1643}; 1644typedef struct ImGuiDataTypeStorage ImGuiDataTypeStorage; 1645struct ImGuiDataTypeStorage 1646{ 1647 ImU8 Data[8]; 1648}; 1649struct ImGuiDataTypeInfo 1650{ 1651 size_t Size; 1652 const char* Name; 1653 const char* PrintFmt; 1654 const char* ScanFmt; 1655}; 1656typedef enum { 1657 ImGuiDataType_String = ImGuiDataType_COUNT + 1, 1658 ImGuiDataType_Pointer, 1659 ImGuiDataType_ID, 1660}ImGuiDataTypePrivate_; 1661typedef enum { 1662 ImGuiItemFlags_None = 0, 1663 ImGuiItemFlags_NoTabStop = 1 << 0, 1664 ImGuiItemFlags_ButtonRepeat = 1 << 1, 1665 ImGuiItemFlags_Disabled = 1 << 2, 1666 ImGuiItemFlags_NoNav = 1 << 3, 1667 ImGuiItemFlags_NoNavDefaultFocus = 1 << 4, 1668 ImGuiItemFlags_SelectableDontClosePopup = 1 << 5, 1669 ImGuiItemFlags_MixedValue = 1 << 6, 1670 ImGuiItemFlags_ReadOnly = 1 << 7, 1671 ImGuiItemFlags_NoWindowHoverableCheck = 1 << 8, 1672 ImGuiItemFlags_AllowOverlap = 1 << 9, 1673 ImGuiItemFlags_Inputable = 1 << 10, 1674 ImGuiItemFlags_HasSelectionUserData = 1 << 11, 1675}ImGuiItemFlags_; 1676typedef enum { 1677 ImGuiItemStatusFlags_None = 0, 1678 ImGuiItemStatusFlags_HoveredRect = 1 << 0, 1679 ImGuiItemStatusFlags_HasDisplayRect = 1 << 1, 1680 ImGuiItemStatusFlags_Edited = 1 << 2, 1681 ImGuiItemStatusFlags_ToggledSelection = 1 << 3, 1682 ImGuiItemStatusFlags_ToggledOpen = 1 << 4, 1683 ImGuiItemStatusFlags_HasDeactivated = 1 << 5, 1684 ImGuiItemStatusFlags_Deactivated = 1 << 6, 1685 ImGuiItemStatusFlags_HoveredWindow = 1 << 7, 1686 ImGuiItemStatusFlags_Visible = 1 << 8, 1687 ImGuiItemStatusFlags_HasClipRect = 1 << 9, 1688 ImGuiItemStatusFlags_HasShortcut = 1 << 10, 1689}ImGuiItemStatusFlags_; 1690typedef enum { 1691 ImGuiHoveredFlags_DelayMask_ = ImGuiHoveredFlags_DelayNone | ImGuiHoveredFlags_DelayShort | ImGuiHoveredFlags_DelayNormal | ImGuiHoveredFlags_NoSharedDelay, 1692 ImGuiHoveredFlags_AllowedMaskForIsWindowHovered = ImGuiHoveredFlags_ChildWindows | ImGuiHoveredFlags_RootWindow | ImGuiHoveredFlags_AnyWindow | ImGuiHoveredFlags_NoPopupHierarchy | ImGuiHoveredFlags_DockHierarchy | ImGuiHoveredFlags_AllowWhenBlockedByPopup | ImGuiHoveredFlags_AllowWhenBlockedByActiveItem | ImGuiHoveredFlags_ForTooltip | ImGuiHoveredFlags_Stationary, 1693 ImGuiHoveredFlags_AllowedMaskForIsItemHovered = ImGuiHoveredFlags_AllowWhenBlockedByPopup | ImGuiHoveredFlags_AllowWhenBlockedByActiveItem | ImGuiHoveredFlags_AllowWhenOverlapped | ImGuiHoveredFlags_AllowWhenDisabled | ImGuiHoveredFlags_NoNavOverride | ImGuiHoveredFlags_ForTooltip | ImGuiHoveredFlags_Stationary | ImGuiHoveredFlags_DelayMask_, 1694}ImGuiHoveredFlagsPrivate_; 1695typedef enum { 1696 ImGuiInputTextFlags_Multiline = 1 << 26, 1697 ImGuiInputTextFlags_NoMarkEdited = 1 << 27, 1698 ImGuiInputTextFlags_MergedItem = 1 << 28, 1699 ImGuiInputTextFlags_LocalizeDecimalPoint= 1 << 29, 1700}ImGuiInputTextFlagsPrivate_; 1701typedef enum { 1702 ImGuiButtonFlags_PressedOnClick = 1 << 4, 1703 ImGuiButtonFlags_PressedOnClickRelease = 1 << 5, 1704 ImGuiButtonFlags_PressedOnClickReleaseAnywhere = 1 << 6, 1705 ImGuiButtonFlags_PressedOnRelease = 1 << 7, 1706 ImGuiButtonFlags_PressedOnDoubleClick = 1 << 8, 1707 ImGuiButtonFlags_PressedOnDragDropHold = 1 << 9, 1708 ImGuiButtonFlags_Repeat = 1 << 10, 1709 ImGuiButtonFlags_FlattenChildren = 1 << 11, 1710 ImGuiButtonFlags_AllowOverlap = 1 << 12, 1711 ImGuiButtonFlags_DontClosePopups = 1 << 13, 1712 ImGuiButtonFlags_AlignTextBaseLine = 1 << 15, 1713 ImGuiButtonFlags_NoKeyModifiers = 1 << 16, 1714 ImGuiButtonFlags_NoHoldingActiveId = 1 << 17, 1715 ImGuiButtonFlags_NoNavFocus = 1 << 18, 1716 ImGuiButtonFlags_NoHoveredOnFocus = 1 << 19, 1717 ImGuiButtonFlags_NoSetKeyOwner = 1 << 20, 1718 ImGuiButtonFlags_NoTestKeyOwner = 1 << 21, 1719 ImGuiButtonFlags_PressedOnMask_ = ImGuiButtonFlags_PressedOnClick | ImGuiButtonFlags_PressedOnClickRelease | ImGuiButtonFlags_PressedOnClickReleaseAnywhere | ImGuiButtonFlags_PressedOnRelease | ImGuiButtonFlags_PressedOnDoubleClick | ImGuiButtonFlags_PressedOnDragDropHold, 1720 ImGuiButtonFlags_PressedOnDefault_ = ImGuiButtonFlags_PressedOnClickRelease, 1721}ImGuiButtonFlagsPrivate_; 1722typedef enum { 1723 ImGuiComboFlags_CustomPreview = 1 << 20, 1724}ImGuiComboFlagsPrivate_; 1725typedef enum { 1726 ImGuiSliderFlags_Vertical = 1 << 20, 1727 ImGuiSliderFlags_ReadOnly = 1 << 21, 1728}ImGuiSliderFlagsPrivate_; 1729typedef enum { 1730 ImGuiSelectableFlags_NoHoldingActiveID = 1 << 20, 1731 ImGuiSelectableFlags_SelectOnNav = 1 << 21, 1732 ImGuiSelectableFlags_SelectOnClick = 1 << 22, 1733 ImGuiSelectableFlags_SelectOnRelease = 1 << 23, 1734 ImGuiSelectableFlags_SpanAvailWidth = 1 << 24, 1735 ImGuiSelectableFlags_SetNavIdOnHover = 1 << 25, 1736 ImGuiSelectableFlags_NoPadWithHalfSpacing = 1 << 26, 1737 ImGuiSelectableFlags_NoSetKeyOwner = 1 << 27, 1738}ImGuiSelectableFlagsPrivate_; 1739typedef enum { 1740 ImGuiTreeNodeFlags_ClipLabelForTrailingButton = 1 << 20, 1741 ImGuiTreeNodeFlags_UpsideDownArrow = 1 << 21, 1742}ImGuiTreeNodeFlagsPrivate_; 1743typedef enum { 1744 ImGuiSeparatorFlags_None = 0, 1745 ImGuiSeparatorFlags_Horizontal = 1 << 0, 1746 ImGuiSeparatorFlags_Vertical = 1 << 1, 1747 ImGuiSeparatorFlags_SpanAllColumns = 1 << 2, 1748}ImGuiSeparatorFlags_; 1749typedef enum { 1750 ImGuiFocusRequestFlags_None = 0, 1751 ImGuiFocusRequestFlags_RestoreFocusedChild = 1 << 0, 1752 ImGuiFocusRequestFlags_UnlessBelowModal = 1 << 1, 1753}ImGuiFocusRequestFlags_; 1754typedef enum { 1755 ImGuiTextFlags_None = 0, 1756 ImGuiTextFlags_NoWidthForLargeClippedText = 1 << 0, 1757}ImGuiTextFlags_; 1758typedef enum { 1759 ImGuiTooltipFlags_None = 0, 1760 ImGuiTooltipFlags_OverridePrevious = 1 << 1, 1761}ImGuiTooltipFlags_; 1762typedef enum { 1763 ImGuiLayoutType_Horizontal = 0, 1764 ImGuiLayoutType_Vertical = 1 1765}ImGuiLayoutType_; 1766typedef enum { 1767 ImGuiLogType_None = 0, 1768 ImGuiLogType_TTY, 1769 ImGuiLogType_File, 1770 ImGuiLogType_Buffer, 1771 ImGuiLogType_Clipboard, 1772}ImGuiLogType; 1773typedef enum { 1774 ImGuiAxis_None = -1, 1775 ImGuiAxis_X = 0, 1776 ImGuiAxis_Y = 1 1777}ImGuiAxis; 1778typedef enum { 1779 ImGuiPlotType_Lines, 1780 ImGuiPlotType_Histogram, 1781}ImGuiPlotType; 1782struct ImGuiColorMod 1783{ 1784 ImGuiCol Col; 1785 ImVec4 BackupValue; 1786}; 1787struct ImGuiStyleMod 1788{ 1789 ImGuiStyleVar VarIdx; 1790 union { int BackupInt[2]; float BackupFloat[2]; }; 1791}; 1792typedef struct ImGuiComboPreviewData ImGuiComboPreviewData; 1793struct ImGuiComboPreviewData 1794{ 1795 ImRect PreviewRect; 1796 ImVec2 BackupCursorPos; 1797 ImVec2 BackupCursorMaxPos; 1798 ImVec2 BackupCursorPosPrevLine; 1799 float BackupPrevLineTextBaseOffset; 1800 ImGuiLayoutType BackupLayout; 1801}; 1802struct ImGuiGroupData 1803{ 1804 ImGuiID WindowID; 1805 ImVec2 BackupCursorPos; 1806 ImVec2 BackupCursorMaxPos; 1807 ImVec2 BackupCursorPosPrevLine; 1808 ImVec1 BackupIndent; 1809 ImVec1 BackupGroupOffset; 1810 ImVec2 BackupCurrLineSize; 1811 float BackupCurrLineTextBaseOffset; 1812 ImGuiID BackupActiveIdIsAlive; 1813 bool BackupActiveIdPreviousFrameIsAlive; 1814 bool BackupHoveredIdIsAlive; 1815 bool BackupIsSameLine; 1816 bool EmitItem; 1817}; 1818struct ImGuiMenuColumns 1819{ 1820 ImU32 TotalWidth; 1821 ImU32 NextTotalWidth; 1822 ImU16 Spacing; 1823 ImU16 OffsetIcon; 1824 ImU16 OffsetLabel; 1825 ImU16 OffsetShortcut; 1826 ImU16 OffsetMark; 1827 ImU16 Widths[4]; 1828}; 1829typedef struct ImGuiInputTextDeactivatedState ImGuiInputTextDeactivatedState; 1830struct ImGuiInputTextDeactivatedState 1831{ 1832 ImGuiID ID; 1833 ImVector_char TextA; 1834}; 1835struct ImGuiInputTextState 1836{ 1837 ImGuiContext* Ctx; 1838 ImGuiID ID; 1839 int CurLenW, CurLenA; 1840 ImVector_ImWchar TextW; 1841 ImVector_char TextA; 1842 ImVector_char InitialTextA; 1843 bool TextAIsValid; 1844 int BufCapacityA; 1845 float ScrollX; 1846 STB_TexteditState Stb; 1847 float CursorAnim; 1848 bool CursorFollow; 1849 bool SelectedAllMouseLock; 1850 bool Edited; 1851 ImGuiInputTextFlags Flags; 1852 bool ReloadUserBuf; 1853 int ReloadSelectionStart; 1854 int ReloadSelectionEnd; 1855}; 1856typedef enum { 1857 ImGuiWindowRefreshFlags_None = 0, 1858 ImGuiWindowRefreshFlags_TryToAvoidRefresh = 1 << 0, 1859 ImGuiWindowRefreshFlags_RefreshOnHover = 1 << 1, 1860 ImGuiWindowRefreshFlags_RefreshOnFocus = 1 << 2, 1861}ImGuiWindowRefreshFlags_; 1862typedef enum { 1863 ImGuiNextWindowDataFlags_None = 0, 1864 ImGuiNextWindowDataFlags_HasPos = 1 << 0, 1865 ImGuiNextWindowDataFlags_HasSize = 1 << 1, 1866 ImGuiNextWindowDataFlags_HasContentSize = 1 << 2, 1867 ImGuiNextWindowDataFlags_HasCollapsed = 1 << 3, 1868 ImGuiNextWindowDataFlags_HasSizeConstraint = 1 << 4, 1869 ImGuiNextWindowDataFlags_HasFocus = 1 << 5, 1870 ImGuiNextWindowDataFlags_HasBgAlpha = 1 << 6, 1871 ImGuiNextWindowDataFlags_HasScroll = 1 << 7, 1872 ImGuiNextWindowDataFlags_HasChildFlags = 1 << 8, 1873 ImGuiNextWindowDataFlags_HasRefreshPolicy = 1 << 9, 1874 ImGuiNextWindowDataFlags_HasViewport = 1 << 10, 1875 ImGuiNextWindowDataFlags_HasDock = 1 << 11, 1876 ImGuiNextWindowDataFlags_HasWindowClass = 1 << 12, 1877}ImGuiNextWindowDataFlags_; 1878struct ImGuiNextWindowData 1879{ 1880 ImGuiNextWindowDataFlags Flags; 1881 ImGuiCond PosCond; 1882 ImGuiCond SizeCond; 1883 ImGuiCond CollapsedCond; 1884 ImGuiCond DockCond; 1885 ImVec2 PosVal; 1886 ImVec2 PosPivotVal; 1887 ImVec2 SizeVal; 1888 ImVec2 ContentSizeVal; 1889 ImVec2 ScrollVal; 1890 ImGuiChildFlags ChildFlags; 1891 bool PosUndock; 1892 bool CollapsedVal; 1893 ImRect SizeConstraintRect; 1894 ImGuiSizeCallback SizeCallback; 1895 void* SizeCallbackUserData; 1896 float BgAlphaVal; 1897 ImGuiID ViewportId; 1898 ImGuiID DockId; 1899 ImGuiWindowClass WindowClass; 1900 ImVec2 MenuBarOffsetMinVal; 1901 ImGuiWindowRefreshFlags RefreshFlagsVal; 1902}; 1903typedef ImS64 ImGuiSelectionUserData; 1904typedef enum { 1905 ImGuiNextItemDataFlags_None = 0, 1906 ImGuiNextItemDataFlags_HasWidth = 1 << 0, 1907 ImGuiNextItemDataFlags_HasOpen = 1 << 1, 1908 ImGuiNextItemDataFlags_HasShortcut = 1 << 2, 1909 ImGuiNextItemDataFlags_HasRefVal = 1 << 3, 1910}ImGuiNextItemDataFlags_; 1911struct ImGuiNextItemData 1912{ 1913 ImGuiNextItemDataFlags Flags; 1914 ImGuiItemFlags ItemFlags; 1915 ImGuiSelectionUserData SelectionUserData; 1916 float Width; 1917 ImGuiKeyChord Shortcut; 1918 ImGuiInputFlags ShortcutFlags; 1919 bool OpenVal; 1920 ImU8 OpenCond; 1921 ImGuiDataTypeStorage RefVal; 1922}; 1923struct ImGuiLastItemData 1924{ 1925 ImGuiID ID; 1926 ImGuiItemFlags InFlags; 1927 ImGuiItemStatusFlags StatusFlags; 1928 ImRect Rect; 1929 ImRect NavRect; 1930 ImRect DisplayRect; 1931 ImRect ClipRect; 1932 ImGuiKeyChord Shortcut; 1933}; 1934struct ImGuiNavTreeNodeData 1935{ 1936 ImGuiID ID; 1937 ImGuiItemFlags InFlags; 1938 ImRect NavRect; 1939}; 1940struct ImGuiStackSizes 1941{ 1942 short SizeOfIDStack; 1943 short SizeOfColorStack; 1944 short SizeOfStyleVarStack; 1945 short SizeOfFontStack; 1946 short SizeOfFocusScopeStack; 1947 short SizeOfGroupStack; 1948 short SizeOfItemFlagsStack; 1949 short SizeOfBeginPopupStack; 1950 short SizeOfDisabledStack; 1951}; 1952typedef struct ImGuiWindowStackData ImGuiWindowStackData; 1953struct ImGuiWindowStackData 1954{ 1955 ImGuiWindow* Window; 1956 ImGuiLastItemData ParentLastItemDataBackup; 1957 ImGuiStackSizes StackSizesOnBegin; 1958 bool DisabledOverrideReenable; 1959}; 1960typedef struct ImGuiShrinkWidthItem ImGuiShrinkWidthItem; 1961struct ImGuiShrinkWidthItem 1962{ 1963 int Index; 1964 float Width; 1965 float InitialWidth; 1966}; 1967typedef struct ImGuiPtrOrIndex ImGuiPtrOrIndex; 1968struct ImGuiPtrOrIndex 1969{ 1970 void* Ptr; 1971 int Index; 1972}; 1973typedef enum { 1974 ImGuiPopupPositionPolicy_Default, 1975 ImGuiPopupPositionPolicy_ComboBox, 1976 ImGuiPopupPositionPolicy_Tooltip, 1977}ImGuiPopupPositionPolicy; 1978struct ImGuiPopupData 1979{ 1980 ImGuiID PopupId; 1981 ImGuiWindow* Window; 1982 ImGuiWindow* RestoreNavWindow; 1983 int ParentNavLayer; 1984 int OpenFrameCount; 1985 ImGuiID OpenParentId; 1986 ImVec2 OpenPopupPos; 1987 ImVec2 OpenMousePos; 1988}; 1989typedef struct ImBitArray_ImGuiKey_NamedKey_COUNT__lessImGuiKey_NamedKey_BEGIN {ImU32 Storage[(ImGuiKey_NamedKey_COUNT+31)>>5];} ImBitArray_ImGuiKey_NamedKey_COUNT__lessImGuiKey_NamedKey_BEGIN; 1990 1991typedef ImBitArray_ImGuiKey_NamedKey_COUNT__lessImGuiKey_NamedKey_BEGIN ImBitArrayForNamedKeys; 1992typedef enum { 1993 ImGuiInputEventType_None = 0, 1994 ImGuiInputEventType_MousePos, 1995 ImGuiInputEventType_MouseWheel, 1996 ImGuiInputEventType_MouseButton, 1997 ImGuiInputEventType_MouseViewport, 1998 ImGuiInputEventType_Key, 1999 ImGuiInputEventType_Text, 2000 ImGuiInputEventType_Focus, 2001 ImGuiInputEventType_COUNT 2002}ImGuiInputEventType; 2003typedef enum { 2004 ImGuiInputSource_None = 0, 2005 ImGuiInputSource_Mouse, 2006 ImGuiInputSource_Keyboard, 2007 ImGuiInputSource_Gamepad, 2008 ImGuiInputSource_COUNT 2009}ImGuiInputSource; 2010typedef struct ImGuiInputEventMousePos ImGuiInputEventMousePos; 2011struct ImGuiInputEventMousePos 2012{ float PosX, PosY; ImGuiMouseSource MouseSource; 2013}; 2014typedef struct ImGuiInputEventMouseWheel ImGuiInputEventMouseWheel; 2015struct ImGuiInputEventMouseWheel 2016{ float WheelX, WheelY; ImGuiMouseSource MouseSource; 2017}; 2018typedef struct ImGuiInputEventMouseButton ImGuiInputEventMouseButton; 2019struct ImGuiInputEventMouseButton 2020{ int Button; bool Down; ImGuiMouseSource MouseSource; 2021}; 2022typedef struct ImGuiInputEventMouseViewport ImGuiInputEventMouseViewport; 2023struct ImGuiInputEventMouseViewport 2024{ ImGuiID HoveredViewportID; 2025}; 2026typedef struct ImGuiInputEventKey ImGuiInputEventKey; 2027struct ImGuiInputEventKey 2028{ ImGuiKey Key; bool Down; float AnalogValue; 2029}; 2030typedef struct ImGuiInputEventText ImGuiInputEventText; 2031struct ImGuiInputEventText 2032{ unsigned int Char; 2033}; 2034typedef struct ImGuiInputEventAppFocused ImGuiInputEventAppFocused; 2035struct ImGuiInputEventAppFocused 2036{ bool Focused; 2037}; 2038typedef struct ImGuiInputEvent ImGuiInputEvent; 2039struct ImGuiInputEvent 2040{ 2041 ImGuiInputEventType Type; 2042 ImGuiInputSource Source; 2043 ImU32 EventId; 2044 union 2045 { 2046 ImGuiInputEventMousePos MousePos; 2047 ImGuiInputEventMouseWheel MouseWheel; 2048 ImGuiInputEventMouseButton MouseButton; 2049 ImGuiInputEventMouseViewport MouseViewport; 2050 ImGuiInputEventKey Key; 2051 ImGuiInputEventText Text; 2052 ImGuiInputEventAppFocused AppFocused; 2053 }; 2054 bool AddedByTestEngine; 2055}; 2056typedef ImS16 ImGuiKeyRoutingIndex; 2057typedef struct ImGuiKeyRoutingData ImGuiKeyRoutingData; 2058struct ImGuiKeyRoutingData 2059{ 2060 ImGuiKeyRoutingIndex NextEntryIndex; 2061 ImU16 Mods; 2062 ImU8 RoutingCurrScore; 2063 ImU8 RoutingNextScore; 2064 ImGuiID RoutingCurr; 2065 ImGuiID RoutingNext; 2066}; 2067typedef struct ImGuiKeyRoutingTable ImGuiKeyRoutingTable; 2068typedef struct ImVector_ImGuiKeyRoutingData {int Size;int Capacity;ImGuiKeyRoutingData* Data;} ImVector_ImGuiKeyRoutingData; 2069 2070struct ImGuiKeyRoutingTable 2071{ 2072 ImGuiKeyRoutingIndex Index[ImGuiKey_NamedKey_COUNT]; 2073 ImVector_ImGuiKeyRoutingData Entries; 2074 ImVector_ImGuiKeyRoutingData EntriesNext; 2075}; 2076typedef struct ImGuiKeyOwnerData ImGuiKeyOwnerData; 2077struct ImGuiKeyOwnerData 2078{ 2079 ImGuiID OwnerCurr; 2080 ImGuiID OwnerNext; 2081 bool LockThisFrame; 2082 bool LockUntilRelease; 2083}; 2084typedef enum { 2085 ImGuiInputFlags_RepeatRateDefault = 1 << 1, 2086 ImGuiInputFlags_RepeatRateNavMove = 1 << 2, 2087 ImGuiInputFlags_RepeatRateNavTweak = 1 << 3, 2088 ImGuiInputFlags_RepeatUntilRelease = 1 << 4, 2089 ImGuiInputFlags_RepeatUntilKeyModsChange = 1 << 5, 2090 ImGuiInputFlags_RepeatUntilKeyModsChangeFromNone = 1 << 6, 2091 ImGuiInputFlags_RepeatUntilOtherKeyPress = 1 << 7, 2092 ImGuiInputFlags_LockThisFrame = 1 << 20, 2093 ImGuiInputFlags_LockUntilRelease = 1 << 21, 2094 ImGuiInputFlags_CondHovered = 1 << 22, 2095 ImGuiInputFlags_CondActive = 1 << 23, 2096 ImGuiInputFlags_CondDefault_ = ImGuiInputFlags_CondHovered | ImGuiInputFlags_CondActive, 2097 ImGuiInputFlags_RepeatRateMask_ = ImGuiInputFlags_RepeatRateDefault | ImGuiInputFlags_RepeatRateNavMove | ImGuiInputFlags_RepeatRateNavTweak, 2098 ImGuiInputFlags_RepeatUntilMask_ = ImGuiInputFlags_RepeatUntilRelease | ImGuiInputFlags_RepeatUntilKeyModsChange | ImGuiInputFlags_RepeatUntilKeyModsChangeFromNone | ImGuiInputFlags_RepeatUntilOtherKeyPress, 2099 ImGuiInputFlags_RepeatMask_ = ImGuiInputFlags_Repeat | ImGuiInputFlags_RepeatRateMask_ | ImGuiInputFlags_RepeatUntilMask_, 2100 ImGuiInputFlags_CondMask_ = ImGuiInputFlags_CondHovered | ImGuiInputFlags_CondActive, 2101 ImGuiInputFlags_RouteTypeMask_ = ImGuiInputFlags_RouteActive | ImGuiInputFlags_RouteFocused | ImGuiInputFlags_RouteGlobal | ImGuiInputFlags_RouteAlways, 2102 ImGuiInputFlags_RouteOptionsMask_ = ImGuiInputFlags_RouteOverFocused | ImGuiInputFlags_RouteOverActive | ImGuiInputFlags_RouteUnlessBgFocused | ImGuiInputFlags_RouteFromRootWindow, 2103 ImGuiInputFlags_SupportedByIsKeyPressed = ImGuiInputFlags_RepeatMask_, 2104 ImGuiInputFlags_SupportedByIsMouseClicked = ImGuiInputFlags_Repeat, 2105 ImGuiInputFlags_SupportedByShortcut = ImGuiInputFlags_RepeatMask_ | ImGuiInputFlags_RouteTypeMask_ | ImGuiInputFlags_RouteOptionsMask_, 2106 ImGuiInputFlags_SupportedBySetNextItemShortcut = ImGuiInputFlags_RepeatMask_ | ImGuiInputFlags_RouteTypeMask_ | ImGuiInputFlags_RouteOptionsMask_ | ImGuiInputFlags_Tooltip, 2107 ImGuiInputFlags_SupportedBySetKeyOwner = ImGuiInputFlags_LockThisFrame | ImGuiInputFlags_LockUntilRelease, 2108 ImGuiInputFlags_SupportedBySetItemKeyOwner = ImGuiInputFlags_SupportedBySetKeyOwner | ImGuiInputFlags_CondMask_, 2109}ImGuiInputFlagsPrivate_; 2110typedef struct ImGuiListClipperRange ImGuiListClipperRange; 2111struct ImGuiListClipperRange 2112{ 2113 int Min; 2114 int Max; 2115 bool PosToIndexConvert; 2116 ImS8 PosToIndexOffsetMin; 2117 ImS8 PosToIndexOffsetMax; 2118}; 2119typedef struct ImGuiListClipperData ImGuiListClipperData; 2120typedef struct ImVector_ImGuiListClipperRange {int Size;int Capacity;ImGuiListClipperRange* Data;} ImVector_ImGuiListClipperRange; 2121 2122struct ImGuiListClipperData 2123{ 2124 ImGuiListClipper* ListClipper; 2125 float LossynessOffset; 2126 int StepNo; 2127 int ItemsFrozen; 2128 ImVector_ImGuiListClipperRange Ranges; 2129}; 2130typedef enum { 2131 ImGuiActivateFlags_None = 0, 2132 ImGuiActivateFlags_PreferInput = 1 << 0, 2133 ImGuiActivateFlags_PreferTweak = 1 << 1, 2134 ImGuiActivateFlags_TryToPreserveState = 1 << 2, 2135 ImGuiActivateFlags_FromTabbing = 1 << 3, 2136 ImGuiActivateFlags_FromShortcut = 1 << 4, 2137}ImGuiActivateFlags_; 2138typedef enum { 2139 ImGuiScrollFlags_None = 0, 2140 ImGuiScrollFlags_KeepVisibleEdgeX = 1 << 0, 2141 ImGuiScrollFlags_KeepVisibleEdgeY = 1 << 1, 2142 ImGuiScrollFlags_KeepVisibleCenterX = 1 << 2, 2143 ImGuiScrollFlags_KeepVisibleCenterY = 1 << 3, 2144 ImGuiScrollFlags_AlwaysCenterX = 1 << 4, 2145 ImGuiScrollFlags_AlwaysCenterY = 1 << 5, 2146 ImGuiScrollFlags_NoScrollParent = 1 << 6, 2147 ImGuiScrollFlags_MaskX_ = ImGuiScrollFlags_KeepVisibleEdgeX | ImGuiScrollFlags_KeepVisibleCenterX | ImGuiScrollFlags_AlwaysCenterX, 2148 ImGuiScrollFlags_MaskY_ = ImGuiScrollFlags_KeepVisibleEdgeY | ImGuiScrollFlags_KeepVisibleCenterY | ImGuiScrollFlags_AlwaysCenterY, 2149}ImGuiScrollFlags_; 2150typedef enum { 2151 ImGuiNavHighlightFlags_None = 0, 2152 ImGuiNavHighlightFlags_Compact = 1 << 1, 2153 ImGuiNavHighlightFlags_AlwaysDraw = 1 << 2, 2154 ImGuiNavHighlightFlags_NoRounding = 1 << 3, 2155}ImGuiNavHighlightFlags_; 2156typedef enum { 2157 ImGuiNavMoveFlags_None = 0, 2158 ImGuiNavMoveFlags_LoopX = 1 << 0, 2159 ImGuiNavMoveFlags_LoopY = 1 << 1, 2160 ImGuiNavMoveFlags_WrapX = 1 << 2, 2161 ImGuiNavMoveFlags_WrapY = 1 << 3, 2162 ImGuiNavMoveFlags_WrapMask_ = ImGuiNavMoveFlags_LoopX | ImGuiNavMoveFlags_LoopY | ImGuiNavMoveFlags_WrapX | ImGuiNavMoveFlags_WrapY, 2163 ImGuiNavMoveFlags_AllowCurrentNavId = 1 << 4, 2164 ImGuiNavMoveFlags_AlsoScoreVisibleSet = 1 << 5, 2165 ImGuiNavMoveFlags_ScrollToEdgeY = 1 << 6, 2166 ImGuiNavMoveFlags_Forwarded = 1 << 7, 2167 ImGuiNavMoveFlags_DebugNoResult = 1 << 8, 2168 ImGuiNavMoveFlags_FocusApi = 1 << 9, 2169 ImGuiNavMoveFlags_IsTabbing = 1 << 10, 2170 ImGuiNavMoveFlags_IsPageMove = 1 << 11, 2171 ImGuiNavMoveFlags_Activate = 1 << 12, 2172 ImGuiNavMoveFlags_NoSelect = 1 << 13, 2173 ImGuiNavMoveFlags_NoSetNavHighlight = 1 << 14, 2174 ImGuiNavMoveFlags_NoClearActiveId = 1 << 15, 2175}ImGuiNavMoveFlags_; 2176typedef enum { 2177 ImGuiNavLayer_Main = 0, 2178 ImGuiNavLayer_Menu = 1, 2179 ImGuiNavLayer_COUNT 2180}ImGuiNavLayer; 2181struct ImGuiNavItemData 2182{ 2183 ImGuiWindow* Window; 2184 ImGuiID ID; 2185 ImGuiID FocusScopeId; 2186 ImRect RectRel; 2187 ImGuiItemFlags InFlags; 2188 float DistBox; 2189 float DistCenter; 2190 float DistAxial; 2191 ImGuiSelectionUserData SelectionUserData; 2192}; 2193typedef struct ImGuiFocusScopeData ImGuiFocusScopeData; 2194struct ImGuiFocusScopeData 2195{ 2196 ImGuiID ID; 2197 ImGuiID WindowID; 2198}; 2199typedef enum { 2200 ImGuiTypingSelectFlags_None = 0, 2201 ImGuiTypingSelectFlags_AllowBackspace = 1 << 0, 2202 ImGuiTypingSelectFlags_AllowSingleCharMode = 1 << 1, 2203}ImGuiTypingSelectFlags_; 2204struct ImGuiTypingSelectRequest 2205{ 2206 ImGuiTypingSelectFlags Flags; 2207 int SearchBufferLen; 2208 const char* SearchBuffer; 2209 bool SelectRequest; 2210 bool SingleCharMode; 2211 ImS8 SingleCharSize; 2212}; 2213struct ImGuiTypingSelectState 2214{ 2215 ImGuiTypingSelectRequest Request; 2216 char SearchBuffer[64]; 2217 ImGuiID FocusScope; 2218 int LastRequestFrame; 2219 float LastRequestTime; 2220 bool SingleCharModeLock; 2221}; 2222typedef enum { 2223 ImGuiOldColumnFlags_None = 0, 2224 ImGuiOldColumnFlags_NoBorder = 1 << 0, 2225 ImGuiOldColumnFlags_NoResize = 1 << 1, 2226 ImGuiOldColumnFlags_NoPreserveWidths = 1 << 2, 2227 ImGuiOldColumnFlags_NoForceWithinWindow = 1 << 3, 2228 ImGuiOldColumnFlags_GrowParentContentsSize = 1 << 4, 2229}ImGuiOldColumnFlags_; 2230struct ImGuiOldColumnData 2231{ 2232 float OffsetNorm; 2233 float OffsetNormBeforeResize; 2234 ImGuiOldColumnFlags Flags; 2235 ImRect ClipRect; 2236}; 2237typedef struct ImVector_ImGuiOldColumnData {int Size;int Capacity;ImGuiOldColumnData* Data;} ImVector_ImGuiOldColumnData; 2238 2239struct ImGuiOldColumns 2240{ 2241 ImGuiID ID; 2242 ImGuiOldColumnFlags Flags; 2243 bool IsFirstFrame; 2244 bool IsBeingResized; 2245 int Current; 2246 int Count; 2247 float OffMinX, OffMaxX; 2248 float LineMinY, LineMaxY; 2249 float HostCursorPosY; 2250 float HostCursorMaxPosX; 2251 ImRect HostInitialClipRect; 2252 ImRect HostBackupClipRect; 2253 ImRect HostBackupParentWorkRect; 2254 ImVector_ImGuiOldColumnData Columns; 2255 ImDrawListSplitter Splitter; 2256}; 2257typedef enum { 2258 ImGuiDockNodeFlags_DockSpace = 1 << 10, 2259 ImGuiDockNodeFlags_CentralNode = 1 << 11, 2260 ImGuiDockNodeFlags_NoTabBar = 1 << 12, 2261 ImGuiDockNodeFlags_HiddenTabBar = 1 << 13, 2262 ImGuiDockNodeFlags_NoWindowMenuButton = 1 << 14, 2263 ImGuiDockNodeFlags_NoCloseButton = 1 << 15, 2264 ImGuiDockNodeFlags_NoResizeX = 1 << 16, 2265 ImGuiDockNodeFlags_NoResizeY = 1 << 17, 2266 ImGuiDockNodeFlags_DockedWindowsInFocusRoute= 1 << 18, 2267 ImGuiDockNodeFlags_NoDockingSplitOther = 1 << 19, 2268 ImGuiDockNodeFlags_NoDockingOverMe = 1 << 20, 2269 ImGuiDockNodeFlags_NoDockingOverOther = 1 << 21, 2270 ImGuiDockNodeFlags_NoDockingOverEmpty = 1 << 22, 2271 ImGuiDockNodeFlags_NoDocking = ImGuiDockNodeFlags_NoDockingOverMe | ImGuiDockNodeFlags_NoDockingOverOther | ImGuiDockNodeFlags_NoDockingOverEmpty | ImGuiDockNodeFlags_NoDockingSplit | ImGuiDockNodeFlags_NoDockingSplitOther, 2272 ImGuiDockNodeFlags_SharedFlagsInheritMask_ = ~0, 2273 ImGuiDockNodeFlags_NoResizeFlagsMask_ = ImGuiDockNodeFlags_NoResize | ImGuiDockNodeFlags_NoResizeX | ImGuiDockNodeFlags_NoResizeY, 2274 ImGuiDockNodeFlags_LocalFlagsTransferMask_ = ImGuiDockNodeFlags_NoDockingSplit | ImGuiDockNodeFlags_NoResizeFlagsMask_ | ImGuiDockNodeFlags_AutoHideTabBar | ImGuiDockNodeFlags_CentralNode | ImGuiDockNodeFlags_NoTabBar | ImGuiDockNodeFlags_HiddenTabBar | ImGuiDockNodeFlags_NoWindowMenuButton | ImGuiDockNodeFlags_NoCloseButton, 2275 ImGuiDockNodeFlags_SavedFlagsMask_ = ImGuiDockNodeFlags_NoResizeFlagsMask_ | ImGuiDockNodeFlags_DockSpace | ImGuiDockNodeFlags_CentralNode | ImGuiDockNodeFlags_NoTabBar | ImGuiDockNodeFlags_HiddenTabBar | ImGuiDockNodeFlags_NoWindowMenuButton | ImGuiDockNodeFlags_NoCloseButton, 2276}ImGuiDockNodeFlagsPrivate_; 2277typedef enum { 2278 ImGuiDataAuthority_Auto, 2279 ImGuiDataAuthority_DockNode, 2280 ImGuiDataAuthority_Window, 2281}ImGuiDataAuthority_; 2282typedef enum { 2283 ImGuiDockNodeState_Unknown, 2284 ImGuiDockNodeState_HostWindowHiddenBecauseSingleWindow, 2285 ImGuiDockNodeState_HostWindowHiddenBecauseWindowsAreResizing, 2286 ImGuiDockNodeState_HostWindowVisible, 2287}ImGuiDockNodeState; 2288typedef struct ImVector_ImGuiWindowPtr {int Size;int Capacity;ImGuiWindow** Data;} ImVector_ImGuiWindowPtr; 2289 2290struct ImGuiDockNode 2291{ 2292 ImGuiID ID; 2293 ImGuiDockNodeFlags SharedFlags; 2294 ImGuiDockNodeFlags LocalFlags; 2295 ImGuiDockNodeFlags LocalFlagsInWindows; 2296 ImGuiDockNodeFlags MergedFlags; 2297 ImGuiDockNodeState State; 2298 ImGuiDockNode* ParentNode; 2299 ImGuiDockNode* ChildNodes[2]; 2300 ImVector_ImGuiWindowPtr Windows; 2301 ImGuiTabBar* TabBar; 2302 ImVec2 Pos; 2303 ImVec2 Size; 2304 ImVec2 SizeRef; 2305 ImGuiAxis SplitAxis; 2306 ImGuiWindowClass WindowClass; 2307 ImU32 LastBgColor; 2308 ImGuiWindow* HostWindow; 2309 ImGuiWindow* VisibleWindow; 2310 ImGuiDockNode* CentralNode; 2311 ImGuiDockNode* OnlyNodeWithWindows; 2312 int CountNodeWithWindows; 2313 int LastFrameAlive; 2314 int LastFrameActive; 2315 int LastFrameFocused; 2316 ImGuiID LastFocusedNodeId; 2317 ImGuiID SelectedTabId; 2318 ImGuiID WantCloseTabId; 2319 ImGuiID RefViewportId; 2320 ImGuiDataAuthority AuthorityForPos :3; 2321 ImGuiDataAuthority AuthorityForSize :3; 2322 ImGuiDataAuthority AuthorityForViewport :3; 2323 bool IsVisible :1; 2324 bool IsFocused :1; 2325 bool IsBgDrawnThisFrame :1; 2326 bool HasCloseButton :1; 2327 bool HasWindowMenuButton :1; 2328 bool HasCentralNodeChild :1; 2329 bool WantCloseAll :1; 2330 bool WantLockSizeOnce :1; 2331 bool WantMouseMove :1; 2332 bool WantHiddenTabBarUpdate :1; 2333 bool WantHiddenTabBarToggle :1; 2334}; 2335typedef enum { 2336 ImGuiWindowDockStyleCol_Text, 2337 ImGuiWindowDockStyleCol_Tab, 2338 ImGuiWindowDockStyleCol_TabHovered, 2339 ImGuiWindowDockStyleCol_TabActive, 2340 ImGuiWindowDockStyleCol_TabUnfocused, 2341 ImGuiWindowDockStyleCol_TabUnfocusedActive, 2342 ImGuiWindowDockStyleCol_COUNT 2343}ImGuiWindowDockStyleCol; 2344struct ImGuiWindowDockStyle 2345{ 2346 ImU32 Colors[ImGuiWindowDockStyleCol_COUNT]; 2347}; 2348typedef struct ImVector_ImGuiDockRequest {int Size;int Capacity;ImGuiDockRequest* Data;} ImVector_ImGuiDockRequest; 2349 2350typedef struct ImVector_ImGuiDockNodeSettings {int Size;int Capacity;ImGuiDockNodeSettings* Data;} ImVector_ImGuiDockNodeSettings; 2351 2352struct ImGuiDockContext 2353{ 2354 ImGuiStorage Nodes; 2355 ImVector_ImGuiDockRequest Requests; 2356 ImVector_ImGuiDockNodeSettings NodesSettings; 2357 bool WantFullRebuild; 2358}; 2359typedef struct ImGuiViewportP ImGuiViewportP; 2360struct ImGuiViewportP 2361{ 2362 ImGuiViewport _ImGuiViewport; 2363 ImGuiWindow* Window; 2364 int Idx; 2365 int LastFrameActive; 2366 int LastFocusedStampCount; 2367 ImGuiID LastNameHash; 2368 ImVec2 LastPos; 2369 float Alpha; 2370 float LastAlpha; 2371 bool LastFocusedHadNavWindow; 2372 short PlatformMonitor; 2373 int BgFgDrawListsLastFrame[2]; 2374 ImDrawList* BgFgDrawLists[2]; 2375 ImDrawData DrawDataP; 2376 ImDrawDataBuilder DrawDataBuilder; 2377 ImVec2 LastPlatformPos; 2378 ImVec2 LastPlatformSize; 2379 ImVec2 LastRendererSize; 2380 ImVec2 WorkOffsetMin; 2381 ImVec2 WorkOffsetMax; 2382 ImVec2 BuildWorkOffsetMin; 2383 ImVec2 BuildWorkOffsetMax; 2384}; 2385struct ImGuiWindowSettings 2386{ 2387 ImGuiID ID; 2388 ImVec2ih Pos; 2389 ImVec2ih Size; 2390 ImVec2ih ViewportPos; 2391 ImGuiID ViewportId; 2392 ImGuiID DockId; 2393 ImGuiID ClassId; 2394 short DockOrder; 2395 bool Collapsed; 2396 bool IsChild; 2397 bool WantApply; 2398 bool WantDelete; 2399}; 2400struct ImGuiSettingsHandler 2401{ 2402 const char* TypeName; 2403 ImGuiID TypeHash; 2404 void (*ClearAllFn)(ImGuiContext* ctx, ImGuiSettingsHandler* handler); 2405 void (*ReadInitFn)(ImGuiContext* ctx, ImGuiSettingsHandler* handler); 2406 void* (*ReadOpenFn)(ImGuiContext* ctx, ImGuiSettingsHandler* handler, const char* name); 2407 void (*ReadLineFn)(ImGuiContext* ctx, ImGuiSettingsHandler* handler, void* entry, const char* line); 2408 void (*ApplyAllFn)(ImGuiContext* ctx, ImGuiSettingsHandler* handler); 2409 void (*WriteAllFn)(ImGuiContext* ctx, ImGuiSettingsHandler* handler, ImGuiTextBuffer* out_buf); 2410 void* UserData; 2411}; 2412typedef enum { 2413ImGuiLocKey_VersionStr=0, 2414ImGuiLocKey_TableSizeOne=1, 2415ImGuiLocKey_TableSizeAllFit=2, 2416ImGuiLocKey_TableSizeAllDefault=3, 2417ImGuiLocKey_TableResetOrder=4, 2418ImGuiLocKey_WindowingMainMenuBar=5, 2419ImGuiLocKey_WindowingPopup=6, 2420ImGuiLocKey_WindowingUntitled=7, 2421ImGuiLocKey_DockingHideTabBar=8, 2422ImGuiLocKey_DockingHoldShiftToDock=9, 2423ImGuiLocKey_DockingDragToUndockOrMoveNode=10, 2424ImGuiLocKey_COUNT=11, 2425}ImGuiLocKey; 2426struct ImGuiLocEntry 2427{ 2428 ImGuiLocKey Key; 2429 const char* Text; 2430}; 2431typedef enum { 2432 ImGuiDebugLogFlags_None = 0, 2433 ImGuiDebugLogFlags_EventActiveId = 1 << 0, 2434 ImGuiDebugLogFlags_EventFocus = 1 << 1, 2435 ImGuiDebugLogFlags_EventPopup = 1 << 2, 2436 ImGuiDebugLogFlags_EventNav = 1 << 3, 2437 ImGuiDebugLogFlags_EventClipper = 1 << 4, 2438 ImGuiDebugLogFlags_EventSelection = 1 << 5, 2439 ImGuiDebugLogFlags_EventIO = 1 << 6, 2440 ImGuiDebugLogFlags_EventInputRouting = 1 << 7, 2441 ImGuiDebugLogFlags_EventDocking = 1 << 8, 2442 ImGuiDebugLogFlags_EventViewport = 1 << 9, 2443 ImGuiDebugLogFlags_EventMask_ = ImGuiDebugLogFlags_EventActiveId | ImGuiDebugLogFlags_EventFocus | ImGuiDebugLogFlags_EventPopup | ImGuiDebugLogFlags_EventNav | ImGuiDebugLogFlags_EventClipper | ImGuiDebugLogFlags_EventSelection | ImGuiDebugLogFlags_EventIO | ImGuiDebugLogFlags_EventInputRouting | ImGuiDebugLogFlags_EventDocking | ImGuiDebugLogFlags_EventViewport, 2444 ImGuiDebugLogFlags_OutputToTTY = 1 << 20, 2445 ImGuiDebugLogFlags_OutputToTestEngine = 1 << 21, 2446}ImGuiDebugLogFlags_; 2447typedef struct ImGuiDebugAllocEntry ImGuiDebugAllocEntry; 2448struct ImGuiDebugAllocEntry 2449{ 2450 int FrameCount; 2451 ImS16 AllocCount; 2452 ImS16 FreeCount; 2453}; 2454typedef struct ImGuiDebugAllocInfo ImGuiDebugAllocInfo; 2455struct ImGuiDebugAllocInfo 2456{ 2457 int TotalAllocCount; 2458 int TotalFreeCount; 2459 ImS16 LastEntriesIdx; 2460 ImGuiDebugAllocEntry LastEntriesBuf[6]; 2461}; 2462struct ImGuiMetricsConfig 2463{ 2464 bool ShowDebugLog; 2465 bool ShowIDStackTool; 2466 bool ShowWindowsRects; 2467 bool ShowWindowsBeginOrder; 2468 bool ShowTablesRects; 2469 bool ShowDrawCmdMesh; 2470 bool ShowDrawCmdBoundingBoxes; 2471 bool ShowTextEncodingViewer; 2472 bool ShowAtlasTintedWithTextColor; 2473 bool ShowDockingNodes; 2474 int ShowWindowsRectsType; 2475 int ShowTablesRectsType; 2476 int HighlightMonitorIdx; 2477 ImGuiID HighlightViewportID; 2478}; 2479typedef struct ImGuiStackLevelInfo ImGuiStackLevelInfo; 2480struct ImGuiStackLevelInfo 2481{ 2482 ImGuiID ID; 2483 ImS8 QueryFrameCount; 2484 bool QuerySuccess; 2485 ImGuiDataType DataType : 8; 2486 char Desc[57]; 2487}; 2488typedef struct ImGuiIDStackTool ImGuiIDStackTool; 2489typedef struct ImVector_ImGuiStackLevelInfo {int Size;int Capacity;ImGuiStackLevelInfo* Data;} ImVector_ImGuiStackLevelInfo; 2490 2491struct ImGuiIDStackTool 2492{ 2493 int LastActiveFrame; 2494 int StackLevel; 2495 ImGuiID QueryId; 2496 ImVector_ImGuiStackLevelInfo Results; 2497 bool CopyToClipboardOnCtrlC; 2498 float CopyToClipboardLastTime; 2499}; 2500typedef void (*ImGuiContextHookCallback)(ImGuiContext* ctx, ImGuiContextHook* hook); 2501typedef enum { ImGuiContextHookType_NewFramePre, ImGuiContextHookType_NewFramePost, ImGuiContextHookType_EndFramePre, ImGuiContextHookType_EndFramePost, ImGuiContextHookType_RenderPre, ImGuiContextHookType_RenderPost, ImGuiContextHookType_Shutdown, ImGuiContextHookType_PendingRemoval_ }ImGuiContextHookType; 2502struct ImGuiContextHook 2503{ 2504 ImGuiID HookId; 2505 ImGuiContextHookType Type; 2506 ImGuiID Owner; 2507 ImGuiContextHookCallback Callback; 2508 void* UserData; 2509}; 2510typedef struct ImVector_ImGuiInputEvent {int Size;int Capacity;ImGuiInputEvent* Data;} ImVector_ImGuiInputEvent; 2511 2512typedef struct ImVector_ImGuiWindowStackData {int Size;int Capacity;ImGuiWindowStackData* Data;} ImVector_ImGuiWindowStackData; 2513 2514typedef struct ImVector_ImGuiColorMod {int Size;int Capacity;ImGuiColorMod* Data;} ImVector_ImGuiColorMod; 2515 2516typedef struct ImVector_ImGuiStyleMod {int Size;int Capacity;ImGuiStyleMod* Data;} ImVector_ImGuiStyleMod; 2517 2518typedef struct ImVector_ImGuiFocusScopeData {int Size;int Capacity;ImGuiFocusScopeData* Data;} ImVector_ImGuiFocusScopeData; 2519 2520typedef struct ImVector_ImGuiItemFlags {int Size;int Capacity;ImGuiItemFlags* Data;} ImVector_ImGuiItemFlags; 2521 2522typedef struct ImVector_ImGuiGroupData {int Size;int Capacity;ImGuiGroupData* Data;} ImVector_ImGuiGroupData; 2523 2524typedef struct ImVector_ImGuiPopupData {int Size;int Capacity;ImGuiPopupData* Data;} ImVector_ImGuiPopupData; 2525 2526typedef struct ImVector_ImGuiNavTreeNodeData {int Size;int Capacity;ImGuiNavTreeNodeData* Data;} ImVector_ImGuiNavTreeNodeData; 2527 2528typedef struct ImVector_ImGuiViewportPPtr {int Size;int Capacity;ImGuiViewportP** Data;} ImVector_ImGuiViewportPPtr; 2529 2530typedef struct ImVector_unsigned_char {int Size;int Capacity;unsigned char* Data;} ImVector_unsigned_char; 2531 2532typedef struct ImVector_ImGuiListClipperData {int Size;int Capacity;ImGuiListClipperData* Data;} ImVector_ImGuiListClipperData; 2533 2534typedef struct ImVector_ImGuiTableTempData {int Size;int Capacity;ImGuiTableTempData* Data;} ImVector_ImGuiTableTempData; 2535 2536typedef struct ImVector_ImGuiTable {int Size;int Capacity;ImGuiTable* Data;} ImVector_ImGuiTable; 2537 2538typedef struct ImPool_ImGuiTable {ImVector_ImGuiTable Buf;ImGuiStorage Map;ImPoolIdx FreeIdx;ImPoolIdx AliveCount;} ImPool_ImGuiTable; 2539 2540typedef struct ImVector_ImGuiTabBar {int Size;int Capacity;ImGuiTabBar* Data;} ImVector_ImGuiTabBar; 2541 2542typedef struct ImPool_ImGuiTabBar {ImVector_ImGuiTabBar Buf;ImGuiStorage Map;ImPoolIdx FreeIdx;ImPoolIdx AliveCount;} ImPool_ImGuiTabBar; 2543 2544typedef struct ImVector_ImGuiPtrOrIndex {int Size;int Capacity;ImGuiPtrOrIndex* Data;} ImVector_ImGuiPtrOrIndex; 2545 2546typedef struct ImVector_ImGuiShrinkWidthItem {int Size;int Capacity;ImGuiShrinkWidthItem* Data;} ImVector_ImGuiShrinkWidthItem; 2547 2548typedef struct ImVector_ImGuiID {int Size;int Capacity;ImGuiID* Data;} ImVector_ImGuiID; 2549 2550typedef struct ImVector_ImGuiSettingsHandler {int Size;int Capacity;ImGuiSettingsHandler* Data;} ImVector_ImGuiSettingsHandler; 2551 2552typedef struct ImChunkStream_ImGuiWindowSettings {ImVector_char Buf;} ImChunkStream_ImGuiWindowSettings; 2553 2554typedef struct ImChunkStream_ImGuiTableSettings {ImVector_char Buf;} ImChunkStream_ImGuiTableSettings; 2555 2556typedef struct ImVector_ImGuiContextHook {int Size;int Capacity;ImGuiContextHook* Data;} ImVector_ImGuiContextHook; 2557 2558struct ImGuiContext 2559{ 2560 bool Initialized; 2561 bool FontAtlasOwnedByContext; 2562 ImGuiIO IO; 2563 ImGuiPlatformIO PlatformIO; 2564 ImGuiStyle Style; 2565 ImGuiConfigFlags ConfigFlagsCurrFrame; 2566 ImGuiConfigFlags ConfigFlagsLastFrame; 2567 ImFont* Font; 2568 float FontSize; 2569 float FontBaseSize; 2570 float CurrentDpiScale; 2571 ImDrawListSharedData DrawListSharedData; 2572 double Time; 2573 int FrameCount; 2574 int FrameCountEnded; 2575 int FrameCountPlatformEnded; 2576 int FrameCountRendered; 2577 bool WithinFrameScope; 2578 bool WithinFrameScopeWithImplicitWindow; 2579 bool WithinEndChild; 2580 bool GcCompactAll; 2581 bool TestEngineHookItems; 2582 void* TestEngine; 2583 ImVector_ImGuiInputEvent InputEventsQueue; 2584 ImVector_ImGuiInputEvent InputEventsTrail; 2585 ImGuiMouseSource InputEventsNextMouseSource; 2586 ImU32 InputEventsNextEventId; 2587 ImVector_ImGuiWindowPtr Windows; 2588 ImVector_ImGuiWindowPtr WindowsFocusOrder; 2589 ImVector_ImGuiWindowPtr WindowsTempSortBuffer; 2590 ImVector_ImGuiWindowStackData CurrentWindowStack; 2591 ImGuiStorage WindowsById; 2592 int WindowsActiveCount; 2593 ImVec2 WindowsHoverPadding; 2594 ImGuiID DebugBreakInWindow; 2595 ImGuiWindow* CurrentWindow; 2596 ImGuiWindow* HoveredWindow; 2597 ImGuiWindow* HoveredWindowUnderMovingWindow; 2598 ImGuiWindow* MovingWindow; 2599 ImGuiWindow* WheelingWindow; 2600 ImVec2 WheelingWindowRefMousePos; 2601 int WheelingWindowStartFrame; 2602 int WheelingWindowScrolledFrame; 2603 float WheelingWindowReleaseTimer; 2604 ImVec2 WheelingWindowWheelRemainder; 2605 ImVec2 WheelingAxisAvg; 2606 ImGuiID DebugHookIdInfo; 2607 ImGuiID HoveredId; 2608 ImGuiID HoveredIdPreviousFrame; 2609 float HoveredIdTimer; 2610 float HoveredIdNotActiveTimer; 2611 bool HoveredIdAllowOverlap; 2612 bool HoveredIdDisabled; 2613 bool ItemUnclipByLog; 2614 ImGuiID ActiveId; 2615 ImGuiID ActiveIdIsAlive; 2616 float ActiveIdTimer; 2617 bool ActiveIdIsJustActivated; 2618 bool ActiveIdAllowOverlap; 2619 bool ActiveIdNoClearOnFocusLoss; 2620 bool ActiveIdHasBeenPressedBefore; 2621 bool ActiveIdHasBeenEditedBefore; 2622 bool ActiveIdHasBeenEditedThisFrame; 2623 bool ActiveIdFromShortcut; 2624 int ActiveIdMouseButton : 8; 2625 ImVec2 ActiveIdClickOffset; 2626 ImGuiWindow* ActiveIdWindow; 2627 ImGuiInputSource ActiveIdSource; 2628 ImGuiID ActiveIdPreviousFrame; 2629 bool ActiveIdPreviousFrameIsAlive; 2630 bool ActiveIdPreviousFrameHasBeenEditedBefore; 2631 ImGuiWindow* ActiveIdPreviousFrameWindow; 2632 ImGuiID LastActiveId; 2633 float LastActiveIdTimer; 2634 double LastKeyModsChangeTime; 2635 double LastKeyModsChangeFromNoneTime; 2636 double LastKeyboardKeyPressTime; 2637 ImBitArrayForNamedKeys KeysMayBeCharInput; 2638 ImGuiKeyOwnerData KeysOwnerData[ImGuiKey_NamedKey_COUNT]; 2639 ImGuiKeyRoutingTable KeysRoutingTable; 2640 ImU32 ActiveIdUsingNavDirMask; 2641 bool ActiveIdUsingAllKeyboardKeys; 2642 ImGuiKeyChord DebugBreakInShortcutRouting; 2643 ImGuiID CurrentFocusScopeId; 2644 ImGuiItemFlags CurrentItemFlags; 2645 ImGuiID DebugLocateId; 2646 ImGuiNextItemData NextItemData; 2647 ImGuiLastItemData LastItemData; 2648 ImGuiNextWindowData NextWindowData; 2649 bool DebugShowGroupRects; 2650 ImGuiCol DebugFlashStyleColorIdx; 2651 ImVector_ImGuiColorMod ColorStack; 2652 ImVector_ImGuiStyleMod StyleVarStack; 2653 ImVector_ImFontPtr FontStack; 2654 ImVector_ImGuiFocusScopeData FocusScopeStack; 2655 ImVector_ImGuiItemFlags ItemFlagsStack; 2656 ImVector_ImGuiGroupData GroupStack; 2657 ImVector_ImGuiPopupData OpenPopupStack; 2658 ImVector_ImGuiPopupData BeginPopupStack; 2659 ImVector_ImGuiNavTreeNodeData NavTreeNodeStack; 2660 ImVector_ImGuiViewportPPtr Viewports; 2661 ImGuiViewportP* CurrentViewport; 2662 ImGuiViewportP* MouseViewport; 2663 ImGuiViewportP* MouseLastHoveredViewport; 2664 ImGuiID PlatformLastFocusedViewportId; 2665 ImGuiPlatformMonitor FallbackMonitor; 2666 ImRect PlatformMonitorsFullWorkRect; 2667 int ViewportCreatedCount; 2668 int PlatformWindowsCreatedCount; 2669 int ViewportFocusedStampCount; 2670 ImGuiWindow* NavWindow; 2671 ImGuiID NavId; 2672 ImGuiID NavFocusScopeId; 2673 ImGuiID NavActivateId; 2674 ImGuiID NavActivateDownId; 2675 ImGuiID NavActivatePressedId; 2676 ImGuiActivateFlags NavActivateFlags; 2677 ImVector_ImGuiFocusScopeData NavFocusRoute; 2678 ImGuiID NavHighlightActivatedId; 2679 float NavHighlightActivatedTimer; 2680 ImGuiID NavJustMovedToId; 2681 ImGuiID NavJustMovedToFocusScopeId; 2682 ImGuiKeyChord NavJustMovedToKeyMods; 2683 ImGuiID NavNextActivateId; 2684 ImGuiActivateFlags NavNextActivateFlags; 2685 ImGuiInputSource NavInputSource; 2686 ImGuiNavLayer NavLayer; 2687 ImGuiSelectionUserData NavLastValidSelectionUserData; 2688 bool NavIdIsAlive; 2689 bool NavMousePosDirty; 2690 bool NavDisableHighlight; 2691 bool NavDisableMouseHover; 2692 bool NavAnyRequest; 2693 bool NavInitRequest; 2694 bool NavInitRequestFromMove; 2695 ImGuiNavItemData NavInitResult; 2696 bool NavMoveSubmitted; 2697 bool NavMoveScoringItems; 2698 bool NavMoveForwardToNextFrame; 2699 ImGuiNavMoveFlags NavMoveFlags; 2700 ImGuiScrollFlags NavMoveScrollFlags; 2701 ImGuiKeyChord NavMoveKeyMods; 2702 ImGuiDir NavMoveDir; 2703 ImGuiDir NavMoveDirForDebug; 2704 ImGuiDir NavMoveClipDir; 2705 ImRect NavScoringRect; 2706 ImRect NavScoringNoClipRect; 2707 int NavScoringDebugCount; 2708 int NavTabbingDir; 2709 int NavTabbingCounter; 2710 ImGuiNavItemData NavMoveResultLocal; 2711 ImGuiNavItemData NavMoveResultLocalVisible; 2712 ImGuiNavItemData NavMoveResultOther; 2713 ImGuiNavItemData NavTabbingResultFirst; 2714 ImGuiKeyChord ConfigNavWindowingKeyNext; 2715 ImGuiKeyChord ConfigNavWindowingKeyPrev; 2716 ImGuiWindow* NavWindowingTarget; 2717 ImGuiWindow* NavWindowingTargetAnim; 2718 ImGuiWindow* NavWindowingListWindow; 2719 float NavWindowingTimer; 2720 float NavWindowingHighlightAlpha; 2721 bool NavWindowingToggleLayer; 2722 ImGuiKey NavWindowingToggleKey; 2723 ImVec2 NavWindowingAccumDeltaPos; 2724 ImVec2 NavWindowingAccumDeltaSize; 2725 float DimBgRatio; 2726 bool DragDropActive; 2727 bool DragDropWithinSource; 2728 bool DragDropWithinTarget; 2729 ImGuiDragDropFlags DragDropSourceFlags; 2730 int DragDropSourceFrameCount; 2731 int DragDropMouseButton; 2732 ImGuiPayload DragDropPayload; 2733 ImRect DragDropTargetRect; 2734 ImRect DragDropTargetClipRect; 2735 ImGuiID DragDropTargetId; 2736 ImGuiDragDropFlags DragDropAcceptFlags; 2737 float DragDropAcceptIdCurrRectSurface; 2738 ImGuiID DragDropAcceptIdCurr; 2739 ImGuiID DragDropAcceptIdPrev; 2740 int DragDropAcceptFrameCount; 2741 ImGuiID DragDropHoldJustPressedId; 2742 ImVector_unsigned_char DragDropPayloadBufHeap; 2743 unsigned char DragDropPayloadBufLocal[16]; 2744 int ClipperTempDataStacked; 2745 ImVector_ImGuiListClipperData ClipperTempData; 2746 ImGuiTable* CurrentTable; 2747 ImGuiID DebugBreakInTable; 2748 int TablesTempDataStacked; 2749 ImVector_ImGuiTableTempData TablesTempData; 2750 ImPool_ImGuiTable Tables; 2751 ImVector_float TablesLastTimeActive; 2752 ImVector_ImDrawChannel DrawChannelsTempMergeBuffer; 2753 ImGuiTabBar* CurrentTabBar; 2754 ImPool_ImGuiTabBar TabBars; 2755 ImVector_ImGuiPtrOrIndex CurrentTabBarStack; 2756 ImVector_ImGuiShrinkWidthItem ShrinkWidthBuffer; 2757 ImGuiID HoverItemDelayId; 2758 ImGuiID HoverItemDelayIdPreviousFrame; 2759 float HoverItemDelayTimer; 2760 float HoverItemDelayClearTimer; 2761 ImGuiID HoverItemUnlockedStationaryId; 2762 ImGuiID HoverWindowUnlockedStationaryId; 2763 ImGuiMouseCursor MouseCursor; 2764 float MouseStationaryTimer; 2765 ImVec2 MouseLastValidPos; 2766 ImGuiInputTextState InputTextState; 2767 ImGuiInputTextDeactivatedState InputTextDeactivatedState; 2768 ImFont InputTextPasswordFont; 2769 ImGuiID TempInputId; 2770 ImGuiDataTypeStorage DataTypeZeroValue; 2771 int BeginMenuDepth; 2772 int BeginComboDepth; 2773 ImGuiColorEditFlags ColorEditOptions; 2774 ImGuiID ColorEditCurrentID; 2775 ImGuiID ColorEditSavedID; 2776 float ColorEditSavedHue; 2777 float ColorEditSavedSat; 2778 ImU32 ColorEditSavedColor; 2779 ImVec4 ColorPickerRef; 2780 ImGuiComboPreviewData ComboPreviewData; 2781 ImRect WindowResizeBorderExpectedRect; 2782 bool WindowResizeRelativeMode; 2783 short ScrollbarSeekMode; 2784 float ScrollbarClickDeltaToGrabCenter; 2785 float SliderGrabClickOffset; 2786 float SliderCurrentAccum; 2787 bool SliderCurrentAccumDirty; 2788 bool DragCurrentAccumDirty; 2789 float DragCurrentAccum; 2790 float DragSpeedDefaultRatio; 2791 float DisabledAlphaBackup; 2792 short DisabledStackSize; 2793 short LockMarkEdited; 2794 short TooltipOverrideCount; 2795 ImVector_char ClipboardHandlerData; 2796 ImVector_ImGuiID MenusIdSubmittedThisFrame; 2797 ImGuiTypingSelectState TypingSelectState; 2798 ImGuiPlatformImeData PlatformImeData; 2799 ImGuiPlatformImeData PlatformImeDataPrev; 2800 ImGuiID PlatformImeViewport; 2801 ImGuiDockContext DockContext; 2802 void (*DockNodeWindowMenuHandler)(ImGuiContext* ctx, ImGuiDockNode* node, ImGuiTabBar* tab_bar); 2803 bool SettingsLoaded; 2804 float SettingsDirtyTimer; 2805 ImGuiTextBuffer SettingsIniData; 2806 ImVector_ImGuiSettingsHandler SettingsHandlers; 2807 ImChunkStream_ImGuiWindowSettings SettingsWindows; 2808 ImChunkStream_ImGuiTableSettings SettingsTables; 2809 ImVector_ImGuiContextHook Hooks; 2810 ImGuiID HookIdNext; 2811 const char* LocalizationTable[ImGuiLocKey_COUNT]; 2812 bool LogEnabled; 2813 ImGuiLogType LogType; 2814 ImFileHandle LogFile; 2815 ImGuiTextBuffer LogBuffer; 2816 const char* LogNextPrefix; 2817 const char* LogNextSuffix; 2818 float LogLinePosY; 2819 bool LogLineFirstItem; 2820 int LogDepthRef; 2821 int LogDepthToExpand; 2822 int LogDepthToExpandDefault; 2823 ImGuiDebugLogFlags DebugLogFlags; 2824 ImGuiTextBuffer DebugLogBuf; 2825 ImGuiTextIndex DebugLogIndex; 2826 ImGuiDebugLogFlags DebugLogAutoDisableFlags; 2827 ImU8 DebugLogAutoDisableFrames; 2828 ImU8 DebugLocateFrames; 2829 bool DebugBreakInLocateId; 2830 ImGuiKeyChord DebugBreakKeyChord; 2831 ImS8 DebugBeginReturnValueCullDepth; 2832 bool DebugItemPickerActive; 2833 ImU8 DebugItemPickerMouseButton; 2834 ImGuiID DebugItemPickerBreakId; 2835 float DebugFlashStyleColorTime; 2836 ImVec4 DebugFlashStyleColorBackup; 2837 ImGuiMetricsConfig DebugMetricsConfig; 2838 ImGuiIDStackTool DebugIDStackTool; 2839 ImGuiDebugAllocInfo DebugAllocInfo; 2840 ImGuiDockNode* DebugHoveredDockNode; 2841 float FramerateSecPerFrame[60]; 2842 int FramerateSecPerFrameIdx; 2843 int FramerateSecPerFrameCount; 2844 float FramerateSecPerFrameAccum; 2845 int WantCaptureMouseNextFrame; 2846 int WantCaptureKeyboardNextFrame; 2847 int WantTextInputNextFrame; 2848 ImVector_char TempBuffer; 2849 char TempKeychordName[64]; 2850}; 2851struct ImGuiWindowTempData 2852{ 2853 ImVec2 CursorPos; 2854 ImVec2 CursorPosPrevLine; 2855 ImVec2 CursorStartPos; 2856 ImVec2 CursorMaxPos; 2857 ImVec2 IdealMaxPos; 2858 ImVec2 CurrLineSize; 2859 ImVec2 PrevLineSize; 2860 float CurrLineTextBaseOffset; 2861 float PrevLineTextBaseOffset; 2862 bool IsSameLine; 2863 bool IsSetPos; 2864 ImVec1 Indent; 2865 ImVec1 ColumnsOffset; 2866 ImVec1 GroupOffset; 2867 ImVec2 CursorStartPosLossyness; 2868 ImGuiNavLayer NavLayerCurrent; 2869 short NavLayersActiveMask; 2870 short NavLayersActiveMaskNext; 2871 bool NavIsScrollPushableX; 2872 bool NavHideHighlightOneFrame; 2873 bool NavWindowHasScrollY; 2874 bool MenuBarAppending; 2875 ImVec2 MenuBarOffset; 2876 ImGuiMenuColumns MenuColumns; 2877 int TreeDepth; 2878 ImU32 TreeJumpToParentOnPopMask; 2879 ImVector_ImGuiWindowPtr ChildWindows; 2880 ImGuiStorage* StateStorage; 2881 ImGuiOldColumns* CurrentColumns; 2882 int CurrentTableIdx; 2883 ImGuiLayoutType LayoutType; 2884 ImGuiLayoutType ParentLayoutType; 2885 ImU32 ModalDimBgColor; 2886 float ItemWidth; 2887 float TextWrapPos; 2888 ImVector_float ItemWidthStack; 2889 ImVector_float TextWrapPosStack; 2890}; 2891typedef struct ImVector_ImGuiOldColumns {int Size;int Capacity;ImGuiOldColumns* Data;} ImVector_ImGuiOldColumns; 2892 2893struct ImGuiWindow 2894{ 2895 ImGuiContext* Ctx; 2896 char* Name; 2897 ImGuiID ID; 2898 ImGuiWindowFlags Flags, FlagsPreviousFrame; 2899 ImGuiChildFlags ChildFlags; 2900 ImGuiWindowClass WindowClass; 2901 ImGuiViewportP* Viewport; 2902 ImGuiID ViewportId; 2903 ImVec2 ViewportPos; 2904 int ViewportAllowPlatformMonitorExtend; 2905 ImVec2 Pos; 2906 ImVec2 Size; 2907 ImVec2 SizeFull; 2908 ImVec2 ContentSize; 2909 ImVec2 ContentSizeIdeal; 2910 ImVec2 ContentSizeExplicit; 2911 ImVec2 WindowPadding; 2912 float WindowRounding; 2913 float WindowBorderSize; 2914 float TitleBarHeight, MenuBarHeight; 2915 float DecoOuterSizeX1, DecoOuterSizeY1; 2916 float DecoOuterSizeX2, DecoOuterSizeY2; 2917 float DecoInnerSizeX1, DecoInnerSizeY1; 2918 int NameBufLen; 2919 ImGuiID MoveId; 2920 ImGuiID TabId; 2921 ImGuiID ChildId; 2922 ImGuiID PopupId; 2923 ImVec2 Scroll; 2924 ImVec2 ScrollMax; 2925 ImVec2 ScrollTarget; 2926 ImVec2 ScrollTargetCenterRatio; 2927 ImVec2 ScrollTargetEdgeSnapDist; 2928 ImVec2 ScrollbarSizes; 2929 bool ScrollbarX, ScrollbarY; 2930 bool ViewportOwned; 2931 bool Active; 2932 bool WasActive; 2933 bool WriteAccessed; 2934 bool Collapsed; 2935 bool WantCollapseToggle; 2936 bool SkipItems; 2937 bool SkipRefresh; 2938 bool Appearing; 2939 bool Hidden; 2940 bool IsFallbackWindow; 2941 bool IsExplicitChild; 2942 bool HasCloseButton; 2943 signed char ResizeBorderHovered; 2944 signed char ResizeBorderHeld; 2945 short BeginCount; 2946 short BeginCountPreviousFrame; 2947 short BeginOrderWithinParent; 2948 short BeginOrderWithinContext; 2949 short FocusOrder; 2950 ImS8 AutoFitFramesX, AutoFitFramesY; 2951 bool AutoFitOnlyGrows; 2952 ImGuiDir AutoPosLastDirection; 2953 ImS8 HiddenFramesCanSkipItems; 2954 ImS8 HiddenFramesCannotSkipItems; 2955 ImS8 HiddenFramesForRenderOnly; 2956 ImS8 DisableInputsFrames; 2957 ImGuiCond SetWindowPosAllowFlags : 8; 2958 ImGuiCond SetWindowSizeAllowFlags : 8; 2959 ImGuiCond SetWindowCollapsedAllowFlags : 8; 2960 ImGuiCond SetWindowDockAllowFlags : 8; 2961 ImVec2 SetWindowPosVal; 2962 ImVec2 SetWindowPosPivot; 2963 ImVector_ImGuiID IDStack; 2964 ImGuiWindowTempData DC; 2965 ImRect OuterRectClipped; 2966 ImRect InnerRect; 2967 ImRect InnerClipRect; 2968 ImRect WorkRect; 2969 ImRect ParentWorkRect; 2970 ImRect ClipRect; 2971 ImRect ContentRegionRect; 2972 ImVec2ih HitTestHoleSize; 2973 ImVec2ih HitTestHoleOffset; 2974 int LastFrameActive; 2975 int LastFrameJustFocused; 2976 float LastTimeActive; 2977 float ItemWidthDefault; 2978 ImGuiStorage StateStorage; 2979 ImVector_ImGuiOldColumns ColumnsStorage; 2980 float FontWindowScale; 2981 float FontDpiScale; 2982 int SettingsOffset; 2983 ImDrawList* DrawList; 2984 ImDrawList DrawListInst; 2985 ImGuiWindow* ParentWindow; 2986 ImGuiWindow* ParentWindowInBeginStack; 2987 ImGuiWindow* RootWindow; 2988 ImGuiWindow* RootWindowPopupTree; 2989 ImGuiWindow* RootWindowDockTree; 2990 ImGuiWindow* RootWindowForTitleBarHighlight; 2991 ImGuiWindow* RootWindowForNav; 2992 ImGuiWindow* ParentWindowForFocusRoute; 2993 ImGuiWindow* NavLastChildNavWindow; 2994 ImGuiID NavLastIds[ImGuiNavLayer_COUNT]; 2995 ImRect NavRectRel[ImGuiNavLayer_COUNT]; 2996 ImVec2 NavPreferredScoringPosRel[ImGuiNavLayer_COUNT]; 2997 ImGuiID NavRootFocusScopeId; 2998 int MemoryDrawListIdxCapacity; 2999 int MemoryDrawListVtxCapacity; 3000 bool MemoryCompacted; 3001 bool DockIsActive :1; 3002 bool DockNodeIsVisible :1; 3003 bool DockTabIsVisible :1; 3004 bool DockTabWantClose :1; 3005 short DockOrder; 3006 ImGuiWindowDockStyle DockStyle; 3007 ImGuiDockNode* DockNode; 3008 ImGuiDockNode* DockNodeAsHost; 3009 ImGuiID DockId; 3010 ImGuiItemStatusFlags DockTabItemStatusFlags; 3011 ImRect DockTabItemRect; 3012}; 3013typedef enum { 3014 ImGuiTabBarFlags_DockNode = 1 << 20, 3015 ImGuiTabBarFlags_IsFocused = 1 << 21, 3016 ImGuiTabBarFlags_SaveSettings = 1 << 22, 3017}ImGuiTabBarFlagsPrivate_; 3018typedef enum { 3019 ImGuiTabItemFlags_SectionMask_ = ImGuiTabItemFlags_Leading | ImGuiTabItemFlags_Trailing, 3020 ImGuiTabItemFlags_NoCloseButton = 1 << 20, 3021 ImGuiTabItemFlags_Button = 1 << 21, 3022 ImGuiTabItemFlags_Unsorted = 1 << 22, 3023}ImGuiTabItemFlagsPrivate_; 3024struct ImGuiTabItem 3025{ 3026 ImGuiID ID; 3027 ImGuiTabItemFlags Flags; 3028 ImGuiWindow* Window; 3029 int LastFrameVisible; 3030 int LastFrameSelected; 3031 float Offset; 3032 float Width; 3033 float ContentWidth; 3034 float RequestedWidth; 3035 ImS32 NameOffset; 3036 ImS16 BeginOrder; 3037 ImS16 IndexDuringLayout; 3038 bool WantClose; 3039}; 3040typedef struct ImVector_ImGuiTabItem {int Size;int Capacity;ImGuiTabItem* Data;} ImVector_ImGuiTabItem; 3041 3042struct ImGuiTabBar 3043{ 3044 ImVector_ImGuiTabItem Tabs; 3045 ImGuiTabBarFlags Flags; 3046 ImGuiID ID; 3047 ImGuiID SelectedTabId; 3048 ImGuiID NextSelectedTabId; 3049 ImGuiID VisibleTabId; 3050 int CurrFrameVisible; 3051 int PrevFrameVisible; 3052 ImRect BarRect; 3053 float CurrTabsContentsHeight; 3054 float PrevTabsContentsHeight; 3055 float WidthAllTabs; 3056 float WidthAllTabsIdeal; 3057 float ScrollingAnim; 3058 float ScrollingTarget; 3059 float ScrollingTargetDistToVisibility; 3060 float ScrollingSpeed; 3061 float ScrollingRectMinX; 3062 float ScrollingRectMaxX; 3063 float SeparatorMinX; 3064 float SeparatorMaxX; 3065 ImGuiID ReorderRequestTabId; 3066 ImS16 ReorderRequestOffset; 3067 ImS8 BeginCount; 3068 bool WantLayout; 3069 bool VisibleTabWasSubmitted; 3070 bool TabsAddedNew; 3071 ImS16 TabsActiveCount; 3072 ImS16 LastTabItemIdx; 3073 float ItemSpacingY; 3074 ImVec2 FramePadding; 3075 ImVec2 BackupCursorPos; 3076 ImGuiTextBuffer TabsNames; 3077}; 3078typedef ImS16 ImGuiTableColumnIdx; 3079typedef ImU16 ImGuiTableDrawChannelIdx; 3080struct ImGuiTableColumn 3081{ 3082 ImGuiTableColumnFlags Flags; 3083 float WidthGiven; 3084 float MinX; 3085 float MaxX; 3086 float WidthRequest; 3087 float WidthAuto; 3088 float StretchWeight; 3089 float InitStretchWeightOrWidth; 3090 ImRect ClipRect; 3091 ImGuiID UserID; 3092 float WorkMinX; 3093 float WorkMaxX; 3094 float ItemWidth; 3095 float ContentMaxXFrozen; 3096 float ContentMaxXUnfrozen; 3097 float ContentMaxXHeadersUsed; 3098 float ContentMaxXHeadersIdeal; 3099 ImS16 NameOffset; 3100 ImGuiTableColumnIdx DisplayOrder; 3101 ImGuiTableColumnIdx IndexWithinEnabledSet; 3102 ImGuiTableColumnIdx PrevEnabledColumn; 3103 ImGuiTableColumnIdx NextEnabledColumn; 3104 ImGuiTableColumnIdx SortOrder; 3105 ImGuiTableDrawChannelIdx DrawChannelCurrent; 3106 ImGuiTableDrawChannelIdx DrawChannelFrozen; 3107 ImGuiTableDrawChannelIdx DrawChannelUnfrozen; 3108 bool IsEnabled; 3109 bool IsUserEnabled; 3110 bool IsUserEnabledNextFrame; 3111 bool IsVisibleX; 3112 bool IsVisibleY; 3113 bool IsRequestOutput; 3114 bool IsSkipItems; 3115 bool IsPreserveWidthAuto; 3116 ImS8 NavLayerCurrent; 3117 ImU8 AutoFitQueue; 3118 ImU8 CannotSkipItemsQueue; 3119 ImU8 SortDirection : 2; 3120 ImU8 SortDirectionsAvailCount : 2; 3121 ImU8 SortDirectionsAvailMask : 4; 3122 ImU8 SortDirectionsAvailList; 3123}; 3124typedef struct ImGuiTableCellData ImGuiTableCellData; 3125struct ImGuiTableCellData 3126{ 3127 ImU32 BgColor; 3128 ImGuiTableColumnIdx Column; 3129}; 3130struct ImGuiTableHeaderData 3131{ 3132 ImGuiTableColumnIdx Index; 3133 ImU32 TextColor; 3134 ImU32 BgColor0; 3135 ImU32 BgColor1; 3136}; 3137struct ImGuiTableInstanceData 3138{ 3139 ImGuiID TableInstanceID; 3140 float LastOuterHeight; 3141 float LastTopHeadersRowHeight; 3142 float LastFrozenHeight; 3143 int HoveredRowLast; 3144 int HoveredRowNext; 3145}; 3146typedef struct ImSpan_ImGuiTableColumn {ImGuiTableColumn* Data;ImGuiTableColumn* DataEnd;} ImSpan_ImGuiTableColumn; 3147 3148typedef struct ImSpan_ImGuiTableColumnIdx {ImGuiTableColumnIdx* Data;ImGuiTableColumnIdx* DataEnd;} ImSpan_ImGuiTableColumnIdx; 3149 3150typedef struct ImSpan_ImGuiTableCellData {ImGuiTableCellData* Data;ImGuiTableCellData* DataEnd;} ImSpan_ImGuiTableCellData; 3151 3152typedef struct ImVector_ImGuiTableInstanceData {int Size;int Capacity;ImGuiTableInstanceData* Data;} ImVector_ImGuiTableInstanceData; 3153 3154typedef struct ImVector_ImGuiTableColumnSortSpecs {int Size;int Capacity;ImGuiTableColumnSortSpecs* Data;} ImVector_ImGuiTableColumnSortSpecs; 3155 3156struct ImGuiTable 3157{ 3158 ImGuiID ID; 3159 ImGuiTableFlags Flags; 3160 void* RawData; 3161 ImGuiTableTempData* TempData; 3162 ImSpan_ImGuiTableColumn Columns; 3163 ImSpan_ImGuiTableColumnIdx DisplayOrderToIndex; 3164 ImSpan_ImGuiTableCellData RowCellData; 3165 ImBitArrayPtr EnabledMaskByDisplayOrder; 3166 ImBitArrayPtr EnabledMaskByIndex; 3167 ImBitArrayPtr VisibleMaskByIndex; 3168 ImGuiTableFlags SettingsLoadedFlags; 3169 int SettingsOffset; 3170 int LastFrameActive; 3171 int ColumnsCount; 3172 int CurrentRow; 3173 int CurrentColumn; 3174 ImS16 InstanceCurrent; 3175 ImS16 InstanceInteracted; 3176 float RowPosY1; 3177 float RowPosY2; 3178 float RowMinHeight; 3179 float RowCellPaddingY; 3180 float RowTextBaseline; 3181 float RowIndentOffsetX; 3182 ImGuiTableRowFlags RowFlags : 16; 3183 ImGuiTableRowFlags LastRowFlags : 16; 3184 int RowBgColorCounter; 3185 ImU32 RowBgColor[2]; 3186 ImU32 BorderColorStrong; 3187 ImU32 BorderColorLight; 3188 float BorderX1; 3189 float BorderX2; 3190 float HostIndentX; 3191 float MinColumnWidth; 3192 float OuterPaddingX; 3193 float CellPaddingX; 3194 float CellSpacingX1; 3195 float CellSpacingX2; 3196 float InnerWidth; 3197 float ColumnsGivenWidth; 3198 float ColumnsAutoFitWidth; 3199 float ColumnsStretchSumWeights; 3200 float ResizedColumnNextWidth; 3201 float ResizeLockMinContentsX2; 3202 float RefScale; 3203 float AngledHeadersHeight; 3204 float AngledHeadersSlope; 3205 ImRect OuterRect; 3206 ImRect InnerRect; 3207 ImRect WorkRect; 3208 ImRect InnerClipRect; 3209 ImRect BgClipRect; 3210 ImRect Bg0ClipRectForDrawCmd; 3211 ImRect Bg2ClipRectForDrawCmd; 3212 ImRect HostClipRect; 3213 ImRect HostBackupInnerClipRect; 3214 ImGuiWindow* OuterWindow; 3215 ImGuiWindow* InnerWindow; 3216 ImGuiTextBuffer ColumnsNames; 3217 ImDrawListSplitter* DrawSplitter; 3218 ImGuiTableInstanceData InstanceDataFirst; 3219 ImVector_ImGuiTableInstanceData InstanceDataExtra; 3220 ImGuiTableColumnSortSpecs SortSpecsSingle; 3221 ImVector_ImGuiTableColumnSortSpecs SortSpecsMulti; 3222 ImGuiTableSortSpecs SortSpecs; 3223 ImGuiTableColumnIdx SortSpecsCount; 3224 ImGuiTableColumnIdx ColumnsEnabledCount; 3225 ImGuiTableColumnIdx ColumnsEnabledFixedCount; 3226 ImGuiTableColumnIdx DeclColumnsCount; 3227 ImGuiTableColumnIdx AngledHeadersCount; 3228 ImGuiTableColumnIdx HoveredColumnBody; 3229 ImGuiTableColumnIdx HoveredColumnBorder; 3230 ImGuiTableColumnIdx HighlightColumnHeader; 3231 ImGuiTableColumnIdx AutoFitSingleColumn; 3232 ImGuiTableColumnIdx ResizedColumn; 3233 ImGuiTableColumnIdx LastResizedColumn; 3234 ImGuiTableColumnIdx HeldHeaderColumn; 3235 ImGuiTableColumnIdx ReorderColumn; 3236 ImGuiTableColumnIdx ReorderColumnDir; 3237 ImGuiTableColumnIdx LeftMostEnabledColumn; 3238 ImGuiTableColumnIdx RightMostEnabledColumn; 3239 ImGuiTableColumnIdx LeftMostStretchedColumn; 3240 ImGuiTableColumnIdx RightMostStretchedColumn; 3241 ImGuiTableColumnIdx ContextPopupColumn; 3242 ImGuiTableColumnIdx FreezeRowsRequest; 3243 ImGuiTableColumnIdx FreezeRowsCount; 3244 ImGuiTableColumnIdx FreezeColumnsRequest; 3245 ImGuiTableColumnIdx FreezeColumnsCount; 3246 ImGuiTableColumnIdx RowCellDataCurrent; 3247 ImGuiTableDrawChannelIdx DummyDrawChannel; 3248 ImGuiTableDrawChannelIdx Bg2DrawChannelCurrent; 3249 ImGuiTableDrawChannelIdx Bg2DrawChannelUnfrozen; 3250 bool IsLayoutLocked; 3251 bool IsInsideRow; 3252 bool IsInitializing; 3253 bool IsSortSpecsDirty; 3254 bool IsUsingHeaders; 3255 bool IsContextPopupOpen; 3256 bool DisableDefaultContextMenu; 3257 bool IsSettingsRequestLoad; 3258 bool IsSettingsDirty; 3259 bool IsDefaultDisplayOrder; 3260 bool IsResetAllRequest; 3261 bool IsResetDisplayOrderRequest; 3262 bool IsUnfrozenRows; 3263 bool IsDefaultSizingPolicy; 3264 bool IsActiveIdAliveBeforeTable; 3265 bool IsActiveIdInTable; 3266 bool HasScrollbarYCurr; 3267 bool HasScrollbarYPrev; 3268 bool MemoryCompacted; 3269 bool HostSkipItems; 3270}; 3271typedef struct ImVector_ImGuiTableHeaderData {int Size;int Capacity;ImGuiTableHeaderData* Data;} ImVector_ImGuiTableHeaderData; 3272 3273struct ImGuiTableTempData 3274{ 3275 int TableIndex; 3276 float LastTimeActive; 3277 float AngledHeadersExtraWidth; 3278 ImVector_ImGuiTableHeaderData AngledHeadersRequests; 3279 ImVec2 UserOuterSize; 3280 ImDrawListSplitter DrawSplitter; 3281 ImRect HostBackupWorkRect; 3282 ImRect HostBackupParentWorkRect; 3283 ImVec2 HostBackupPrevLineSize; 3284 ImVec2 HostBackupCurrLineSize; 3285 ImVec2 HostBackupCursorMaxPos; 3286 ImVec1 HostBackupColumnsOffset; 3287 float HostBackupItemWidth; 3288 int HostBackupItemWidthStackSize; 3289}; 3290typedef struct ImGuiTableColumnSettings ImGuiTableColumnSettings; 3291struct ImGuiTableColumnSettings 3292{ 3293 float WidthOrWeight; 3294 ImGuiID UserID; 3295 ImGuiTableColumnIdx Index; 3296 ImGuiTableColumnIdx DisplayOrder; 3297 ImGuiTableColumnIdx SortOrder; 3298 ImU8 SortDirection : 2; 3299 ImU8 IsEnabled : 1; 3300 ImU8 IsStretch : 1; 3301}; 3302struct ImGuiTableSettings 3303{ 3304 ImGuiID ID; 3305 ImGuiTableFlags SaveFlags; 3306 float RefScale; 3307 ImGuiTableColumnIdx ColumnsCount; 3308 ImGuiTableColumnIdx ColumnsCountMax; 3309 bool WantApply; 3310}; 3311struct ImFontBuilderIO 3312{ 3313 bool (*FontBuilder_Build)(ImFontAtlas* atlas); 3314}; 3315#define IMGUI_HAS_DOCK 1 3316 3317#define ImDrawCallback_ResetRenderState (ImDrawCallback)(-8) 3318 3319#else 3320struct GLFWwindow; 3321struct SDL_Window; 3322typedef union SDL_Event SDL_Event; 3323#endif // CIMGUI_DEFINE_ENUMS_AND_STRUCTS 3324 3325#ifndef CIMGUI_DEFINE_ENUMS_AND_STRUCTS 3326typedef struct ImGuiStorage::ImGuiStoragePair ImGuiStoragePair; 3327typedef struct ImGuiTextFilter::ImGuiTextRange ImGuiTextRange; 3328typedef ImStb::STB_TexteditState STB_TexteditState; 3329typedef ImStb::StbTexteditRow StbTexteditRow; 3330typedef ImStb::StbUndoRecord StbUndoRecord; 3331typedef ImStb::StbUndoState StbUndoState; 3332typedef ImChunkStream<ImGuiTableSettings> ImChunkStream_ImGuiTableSettings; 3333typedef ImChunkStream<ImGuiWindowSettings> ImChunkStream_ImGuiWindowSettings; 3334typedef ImPool<ImGuiTabBar> ImPool_ImGuiTabBar; 3335typedef ImPool<ImGuiTable> ImPool_ImGuiTable; 3336typedef ImSpan<ImGuiTableCellData> ImSpan_ImGuiTableCellData; 3337typedef ImSpan<ImGuiTableColumn> ImSpan_ImGuiTableColumn; 3338typedef ImSpan<ImGuiTableColumnIdx> ImSpan_ImGuiTableColumnIdx; 3339typedef ImVector<ImDrawChannel> ImVector_ImDrawChannel; 3340typedef ImVector<ImDrawCmd> ImVector_ImDrawCmd; 3341typedef ImVector<ImDrawIdx> ImVector_ImDrawIdx; 3342typedef ImVector<ImDrawList*> ImVector_ImDrawListPtr; 3343typedef ImVector<ImDrawVert> ImVector_ImDrawVert; 3344typedef ImVector<ImFont*> ImVector_ImFontPtr; 3345typedef ImVector<ImFontAtlasCustomRect> ImVector_ImFontAtlasCustomRect; 3346typedef ImVector<ImFontConfig> ImVector_ImFontConfig; 3347typedef ImVector<ImFontGlyph> ImVector_ImFontGlyph; 3348typedef ImVector<ImGuiColorMod> ImVector_ImGuiColorMod; 3349typedef ImVector<ImGuiContextHook> ImVector_ImGuiContextHook; 3350typedef ImVector<ImGuiDockNodeSettings> ImVector_ImGuiDockNodeSettings; 3351typedef ImVector<ImGuiDockRequest> ImVector_ImGuiDockRequest; 3352typedef ImVector<ImGuiFocusScopeData> ImVector_ImGuiFocusScopeData; 3353typedef ImVector<ImGuiGroupData> ImVector_ImGuiGroupData; 3354typedef ImVector<ImGuiID> ImVector_ImGuiID; 3355typedef ImVector<ImGuiInputEvent> ImVector_ImGuiInputEvent; 3356typedef ImVector<ImGuiItemFlags> ImVector_ImGuiItemFlags; 3357typedef ImVector<ImGuiKeyRoutingData> ImVector_ImGuiKeyRoutingData; 3358typedef ImVector<ImGuiListClipperData> ImVector_ImGuiListClipperData; 3359typedef ImVector<ImGuiListClipperRange> ImVector_ImGuiListClipperRange; 3360typedef ImVector<ImGuiNavTreeNodeData> ImVector_ImGuiNavTreeNodeData; 3361typedef ImVector<ImGuiOldColumnData> ImVector_ImGuiOldColumnData; 3362typedef ImVector<ImGuiOldColumns> ImVector_ImGuiOldColumns; 3363typedef ImVector<ImGuiPlatformMonitor> ImVector_ImGuiPlatformMonitor; 3364typedef ImVector<ImGuiPopupData> ImVector_ImGuiPopupData; 3365typedef ImVector<ImGuiPtrOrIndex> ImVector_ImGuiPtrOrIndex; 3366typedef ImVector<ImGuiSettingsHandler> ImVector_ImGuiSettingsHandler; 3367typedef ImVector<ImGuiShrinkWidthItem> ImVector_ImGuiShrinkWidthItem; 3368typedef ImVector<ImGuiStackLevelInfo> ImVector_ImGuiStackLevelInfo; 3369typedef ImVector<ImGuiStoragePair> ImVector_ImGuiStoragePair; 3370typedef ImVector<ImGuiStyleMod> ImVector_ImGuiStyleMod; 3371typedef ImVector<ImGuiTabItem> ImVector_ImGuiTabItem; 3372typedef ImVector<ImGuiTableColumnSortSpecs> ImVector_ImGuiTableColumnSortSpecs; 3373typedef ImVector<ImGuiTableHeaderData> ImVector_ImGuiTableHeaderData; 3374typedef ImVector<ImGuiTableInstanceData> ImVector_ImGuiTableInstanceData; 3375typedef ImVector<ImGuiTableTempData> ImVector_ImGuiTableTempData; 3376typedef ImVector<ImGuiTextRange> ImVector_ImGuiTextRange; 3377typedef ImVector<ImGuiViewport*> ImVector_ImGuiViewportPtr; 3378typedef ImVector<ImGuiViewportP*> ImVector_ImGuiViewportPPtr; 3379typedef ImVector<ImGuiWindow*> ImVector_ImGuiWindowPtr; 3380typedef ImVector<ImGuiWindowStackData> ImVector_ImGuiWindowStackData; 3381typedef ImVector<ImTextureID> ImVector_ImTextureID; 3382typedef ImVector<ImU32> ImVector_ImU32; 3383typedef ImVector<ImVec2> ImVector_ImVec2; 3384typedef ImVector<ImVec4> ImVector_ImVec4; 3385typedef ImVector<ImWchar> ImVector_ImWchar; 3386typedef ImVector<char> ImVector_char; 3387typedef ImVector<const char*> ImVector_const_charPtr; 3388typedef ImVector<float> ImVector_float; 3389typedef ImVector<int> ImVector_int; 3390typedef ImVector<unsigned char> ImVector_unsigned_char; 3391#endif //CIMGUI_DEFINE_ENUMS_AND_STRUCTS 3392CIMGUI_API ImVec2* ImVec2_ImVec2_Nil(void); 3393CIMGUI_API void ImVec2_destroy(ImVec2* self); 3394CIMGUI_API ImVec2* ImVec2_ImVec2_Float(float _x,float _y); 3395CIMGUI_API ImVec4* ImVec4_ImVec4_Nil(void); 3396CIMGUI_API void ImVec4_destroy(ImVec4* self); 3397CIMGUI_API ImVec4* ImVec4_ImVec4_Float(float _x,float _y,float _z,float _w); 3398CIMGUI_API ImGuiContext* igCreateContext(ImFontAtlas* shared_font_atlas); 3399CIMGUI_API void igDestroyContext(ImGuiContext* ctx); 3400CIMGUI_API ImGuiContext* igGetCurrentContext(void); 3401CIMGUI_API void igSetCurrentContext(ImGuiContext* ctx); 3402CIMGUI_API ImGuiIO* igGetIO(void); 3403CIMGUI_API ImGuiStyle* igGetStyle(void); 3404CIMGUI_API void igNewFrame(void); 3405CIMGUI_API void igEndFrame(void); 3406CIMGUI_API void igRender(void); 3407CIMGUI_API ImDrawData* igGetDrawData(void); 3408CIMGUI_API void igShowDemoWindow(bool* p_open); 3409CIMGUI_API void igShowMetricsWindow(bool* p_open); 3410CIMGUI_API void igShowDebugLogWindow(bool* p_open); 3411CIMGUI_API void igShowIDStackToolWindow(bool* p_open); 3412CIMGUI_API void igShowAboutWindow(bool* p_open); 3413CIMGUI_API void igShowStyleEditor(ImGuiStyle* ref); 3414CIMGUI_API bool igShowStyleSelector(const char* label); 3415CIMGUI_API void igShowFontSelector(const char* label); 3416CIMGUI_API void igShowUserGuide(void); 3417CIMGUI_API const char* igGetVersion(void); 3418CIMGUI_API void igStyleColorsDark(ImGuiStyle* dst); 3419CIMGUI_API void igStyleColorsLight(ImGuiStyle* dst); 3420CIMGUI_API void igStyleColorsClassic(ImGuiStyle* dst); 3421CIMGUI_API bool igBegin(const char* name,bool* p_open,ImGuiWindowFlags flags); 3422CIMGUI_API void igEnd(void); 3423CIMGUI_API bool igBeginChild_Str(const char* str_id,const ImVec2 size,ImGuiChildFlags child_flags,ImGuiWindowFlags window_flags); 3424CIMGUI_API bool igBeginChild_ID(ImGuiID id,const ImVec2 size,ImGuiChildFlags child_flags,ImGuiWindowFlags window_flags); 3425CIMGUI_API void igEndChild(void); 3426CIMGUI_API bool igIsWindowAppearing(void); 3427CIMGUI_API bool igIsWindowCollapsed(void); 3428CIMGUI_API bool igIsWindowFocused(ImGuiFocusedFlags flags); 3429CIMGUI_API bool igIsWindowHovered(ImGuiHoveredFlags flags); 3430CIMGUI_API ImDrawList* igGetWindowDrawList(void); 3431CIMGUI_API float igGetWindowDpiScale(void); 3432CIMGUI_API void igGetWindowPos(ImVec2 *pOut); 3433CIMGUI_API void igGetWindowSize(ImVec2 *pOut); 3434CIMGUI_API float igGetWindowWidth(void); 3435CIMGUI_API float igGetWindowHeight(void); 3436CIMGUI_API ImGuiViewport* igGetWindowViewport(void); 3437CIMGUI_API void igSetNextWindowPos(const ImVec2 pos,ImGuiCond cond,const ImVec2 pivot); 3438CIMGUI_API void igSetNextWindowSize(const ImVec2 size,ImGuiCond cond); 3439CIMGUI_API void igSetNextWindowSizeConstraints(const ImVec2 size_min,const ImVec2 size_max,ImGuiSizeCallback custom_callback,void* custom_callback_data); 3440CIMGUI_API void igSetNextWindowContentSize(const ImVec2 size); 3441CIMGUI_API void igSetNextWindowCollapsed(bool collapsed,ImGuiCond cond); 3442CIMGUI_API void igSetNextWindowFocus(void); 3443CIMGUI_API void igSetNextWindowScroll(const ImVec2 scroll); 3444CIMGUI_API void igSetNextWindowBgAlpha(float alpha); 3445CIMGUI_API void igSetNextWindowViewport(ImGuiID viewport_id); 3446CIMGUI_API void igSetWindowPos_Vec2(const ImVec2 pos,ImGuiCond cond); 3447CIMGUI_API void igSetWindowSize_Vec2(const ImVec2 size,ImGuiCond cond); 3448CIMGUI_API void igSetWindowCollapsed_Bool(bool collapsed,ImGuiCond cond); 3449CIMGUI_API void igSetWindowFocus_Nil(void); 3450CIMGUI_API void igSetWindowFontScale(float scale); 3451CIMGUI_API void igSetWindowPos_Str(const char* name,const ImVec2 pos,ImGuiCond cond); 3452CIMGUI_API void igSetWindowSize_Str(const char* name,const ImVec2 size,ImGuiCond cond); 3453CIMGUI_API void igSetWindowCollapsed_Str(const char* name,bool collapsed,ImGuiCond cond); 3454CIMGUI_API void igSetWindowFocus_Str(const char* name); 3455CIMGUI_API void igGetContentRegionAvail(ImVec2 *pOut); 3456CIMGUI_API void igGetContentRegionMax(ImVec2 *pOut); 3457CIMGUI_API void igGetWindowContentRegionMin(ImVec2 *pOut); 3458CIMGUI_API void igGetWindowContentRegionMax(ImVec2 *pOut); 3459CIMGUI_API float igGetScrollX(void); 3460CIMGUI_API float igGetScrollY(void); 3461CIMGUI_API void igSetScrollX_Float(float scroll_x); 3462CIMGUI_API void igSetScrollY_Float(float scroll_y); 3463CIMGUI_API float igGetScrollMaxX(void); 3464CIMGUI_API float igGetScrollMaxY(void); 3465CIMGUI_API void igSetScrollHereX(float center_x_ratio); 3466CIMGUI_API void igSetScrollHereY(float center_y_ratio); 3467CIMGUI_API void igSetScrollFromPosX_Float(float local_x,float center_x_ratio); 3468CIMGUI_API void igSetScrollFromPosY_Float(float local_y,float center_y_ratio); 3469CIMGUI_API void igPushFont(ImFont* font); 3470CIMGUI_API void igPopFont(void); 3471CIMGUI_API void igPushStyleColor_U32(ImGuiCol idx,ImU32 col); 3472CIMGUI_API void igPushStyleColor_Vec4(ImGuiCol idx,const ImVec4 col); 3473CIMGUI_API void igPopStyleColor(int count); 3474CIMGUI_API void igPushStyleVar_Float(ImGuiStyleVar idx,float val); 3475CIMGUI_API void igPushStyleVar_Vec2(ImGuiStyleVar idx,const ImVec2 val); 3476CIMGUI_API void igPopStyleVar(int count); 3477CIMGUI_API void igPushTabStop(bool tab_stop); 3478CIMGUI_API void igPopTabStop(void); 3479CIMGUI_API void igPushButtonRepeat(bool repeat); 3480CIMGUI_API void igPopButtonRepeat(void); 3481CIMGUI_API void igPushItemWidth(float item_width); 3482CIMGUI_API void igPopItemWidth(void); 3483CIMGUI_API void igSetNextItemWidth(float item_width); 3484CIMGUI_API float igCalcItemWidth(void); 3485CIMGUI_API void igPushTextWrapPos(float wrap_local_pos_x); 3486CIMGUI_API void igPopTextWrapPos(void); 3487CIMGUI_API ImFont* igGetFont(void); 3488CIMGUI_API float igGetFontSize(void); 3489CIMGUI_API void igGetFontTexUvWhitePixel(ImVec2 *pOut); 3490CIMGUI_API ImU32 igGetColorU32_Col(ImGuiCol idx,float alpha_mul); 3491CIMGUI_API ImU32 igGetColorU32_Vec4(const ImVec4 col); 3492CIMGUI_API ImU32 igGetColorU32_U32(ImU32 col,float alpha_mul); 3493CIMGUI_API const ImVec4* igGetStyleColorVec4(ImGuiCol idx); 3494CIMGUI_API void igGetCursorScreenPos(ImVec2 *pOut); 3495CIMGUI_API void igSetCursorScreenPos(const ImVec2 pos); 3496CIMGUI_API void igGetCursorPos(ImVec2 *pOut); 3497CIMGUI_API float igGetCursorPosX(void); 3498CIMGUI_API float igGetCursorPosY(void); 3499CIMGUI_API void igSetCursorPos(const ImVec2 local_pos); 3500CIMGUI_API void igSetCursorPosX(float local_x); 3501CIMGUI_API void igSetCursorPosY(float local_y); 3502CIMGUI_API void igGetCursorStartPos(ImVec2 *pOut); 3503CIMGUI_API void igSeparator(void); 3504CIMGUI_API void igSameLine(float offset_from_start_x,float spacing); 3505CIMGUI_API void igNewLine(void); 3506CIMGUI_API void igSpacing(void); 3507CIMGUI_API void igDummy(const ImVec2 size); 3508CIMGUI_API void igIndent(float indent_w); 3509CIMGUI_API void igUnindent(float indent_w); 3510CIMGUI_API void igBeginGroup(void); 3511CIMGUI_API void igEndGroup(void); 3512CIMGUI_API void igAlignTextToFramePadding(void); 3513CIMGUI_API float igGetTextLineHeight(void); 3514CIMGUI_API float igGetTextLineHeightWithSpacing(void); 3515CIMGUI_API float igGetFrameHeight(void); 3516CIMGUI_API float igGetFrameHeightWithSpacing(void); 3517CIMGUI_API void igPushID_Str(const char* str_id); 3518CIMGUI_API void igPushID_StrStr(const char* str_id_begin,const char* str_id_end); 3519CIMGUI_API void igPushID_Ptr(const void* ptr_id); 3520CIMGUI_API void igPushID_Int(int int_id); 3521CIMGUI_API void igPopID(void); 3522CIMGUI_API ImGuiID igGetID_Str(const char* str_id); 3523CIMGUI_API ImGuiID igGetID_StrStr(const char* str_id_begin,const char* str_id_end); 3524CIMGUI_API ImGuiID igGetID_Ptr(const void* ptr_id); 3525CIMGUI_API void igTextUnformatted(const char* text,const char* text_end); 3526CIMGUI_API void igText(const char* fmt,...); 3527CIMGUI_API void igTextV(const char* fmt,va_list args); 3528CIMGUI_API void igTextColored(const ImVec4 col,const char* fmt,...); 3529CIMGUI_API void igTextColoredV(const ImVec4 col,const char* fmt,va_list args); 3530CIMGUI_API void igTextDisabled(const char* fmt,...); 3531CIMGUI_API void igTextDisabledV(const char* fmt,va_list args); 3532CIMGUI_API void igTextWrapped(const char* fmt,...); 3533CIMGUI_API void igTextWrappedV(const char* fmt,va_list args); 3534CIMGUI_API void igLabelText(const char* label,const char* fmt,...); 3535CIMGUI_API void igLabelTextV(const char* label,const char* fmt,va_list args); 3536CIMGUI_API void igBulletText(const char* fmt,...); 3537CIMGUI_API void igBulletTextV(const char* fmt,va_list args); 3538CIMGUI_API void igSeparatorText(const char* label); 3539CIMGUI_API bool igButton(const char* label,const ImVec2 size); 3540CIMGUI_API bool igSmallButton(const char* label); 3541CIMGUI_API bool igInvisibleButton(const char* str_id,const ImVec2 size,ImGuiButtonFlags flags); 3542CIMGUI_API bool igArrowButton(const char* str_id,ImGuiDir dir); 3543CIMGUI_API bool igCheckbox(const char* label,bool* v); 3544CIMGUI_API bool igCheckboxFlags_IntPtr(const char* label,int* flags,int flags_value); 3545CIMGUI_API bool igCheckboxFlags_UintPtr(const char* label,unsigned int* flags,unsigned int flags_value); 3546CIMGUI_API bool igRadioButton_Bool(const char* label,bool active); 3547CIMGUI_API bool igRadioButton_IntPtr(const char* label,int* v,int v_button); 3548CIMGUI_API void igProgressBar(float fraction,const ImVec2 size_arg,const char* overlay); 3549CIMGUI_API void igBullet(void); 3550CIMGUI_API void igImage(ImTextureID user_texture_id,const ImVec2 image_size,const ImVec2 uv0,const ImVec2 uv1,const ImVec4 tint_col,const ImVec4 border_col); 3551CIMGUI_API bool igImageButton(const char* str_id,ImTextureID user_texture_id,const ImVec2 image_size,const ImVec2 uv0,const ImVec2 uv1,const ImVec4 bg_col,const ImVec4 tint_col); 3552CIMGUI_API bool igBeginCombo(const char* label,const char* preview_value,ImGuiComboFlags flags); 3553CIMGUI_API void igEndCombo(void); 3554CIMGUI_API bool igCombo_Str_arr(const char* label,int* current_item,const char* const items[],int items_count,int popup_max_height_in_items); 3555CIMGUI_API bool igCombo_Str(const char* label,int* current_item,const char* items_separated_by_zeros,int popup_max_height_in_items); 3556CIMGUI_API bool igCombo_FnStrPtr(const char* label,int* current_item,const char*(*getter)(void* user_data,int idx),void* user_data,int items_count,int popup_max_height_in_items); 3557CIMGUI_API bool igDragFloat(const char* label,float* v,float v_speed,float v_min,float v_max,const char* format,ImGuiSliderFlags flags); 3558CIMGUI_API bool igDragFloat2(const char* label,float v[2],float v_speed,float v_min,float v_max,const char* format,ImGuiSliderFlags flags); 3559CIMGUI_API bool igDragFloat3(const char* label,float v[3],float v_speed,float v_min,float v_max,const char* format,ImGuiSliderFlags flags); 3560CIMGUI_API bool igDragFloat4(const char* label,float v[4],float v_speed,float v_min,float v_max,const char* format,ImGuiSliderFlags flags); 3561CIMGUI_API bool igDragFloatRange2(const char* label,float* v_current_min,float* v_current_max,float v_speed,float v_min,float v_max,const char* format,const char* format_max,ImGuiSliderFlags flags); 3562CIMGUI_API bool igDragInt(const char* label,int* v,float v_speed,int v_min,int v_max,const char* format,ImGuiSliderFlags flags); 3563CIMGUI_API bool igDragInt2(const char* label,int v[2],float v_speed,int v_min,int v_max,const char* format,ImGuiSliderFlags flags); 3564CIMGUI_API bool igDragInt3(const char* label,int v[3],float v_speed,int v_min,int v_max,const char* format,ImGuiSliderFlags flags); 3565CIMGUI_API bool igDragInt4(const char* label,int v[4],float v_speed,int v_min,int v_max,const char* format,ImGuiSliderFlags flags); 3566CIMGUI_API bool igDragIntRange2(const char* label,int* v_current_min,int* v_current_max,float v_speed,int v_min,int v_max,const char* format,const char* format_max,ImGuiSliderFlags flags); 3567CIMGUI_API bool igDragScalar(const char* label,ImGuiDataType data_type,void* p_data,float v_speed,const void* p_min,const void* p_max,const char* format,ImGuiSliderFlags flags); 3568CIMGUI_API bool igDragScalarN(const char* label,ImGuiDataType data_type,void* p_data,int components,float v_speed,const void* p_min,const void* p_max,const char* format,ImGuiSliderFlags flags); 3569CIMGUI_API bool igSliderFloat(const char* label,float* v,float v_min,float v_max,const char* format,ImGuiSliderFlags flags); 3570CIMGUI_API bool igSliderFloat2(const char* label,float v[2],float v_min,float v_max,const char* format,ImGuiSliderFlags flags); 3571CIMGUI_API bool igSliderFloat3(const char* label,float v[3],float v_min,float v_max,const char* format,ImGuiSliderFlags flags); 3572CIMGUI_API bool igSliderFloat4(const char* label,float v[4],float v_min,float v_max,const char* format,ImGuiSliderFlags flags); 3573CIMGUI_API bool igSliderAngle(const char* label,float* v_rad,float v_degrees_min,float v_degrees_max,const char* format,ImGuiSliderFlags flags); 3574CIMGUI_API bool igSliderInt(const char* label,int* v,int v_min,int v_max,const char* format,ImGuiSliderFlags flags); 3575CIMGUI_API bool igSliderInt2(const char* label,int v[2],int v_min,int v_max,const char* format,ImGuiSliderFlags flags); 3576CIMGUI_API bool igSliderInt3(const char* label,int v[3],int v_min,int v_max,const char* format,ImGuiSliderFlags flags); 3577CIMGUI_API bool igSliderInt4(const char* label,int v[4],int v_min,int v_max,const char* format,ImGuiSliderFlags flags); 3578CIMGUI_API bool igSliderScalar(const char* label,ImGuiDataType data_type,void* p_data,const void* p_min,const void* p_max,const char* format,ImGuiSliderFlags flags); 3579CIMGUI_API bool igSliderScalarN(const char* label,ImGuiDataType data_type,void* p_data,int components,const void* p_min,const void* p_max,const char* format,ImGuiSliderFlags flags); 3580CIMGUI_API bool igVSliderFloat(const char* label,const ImVec2 size,float* v,float v_min,float v_max,const char* format,ImGuiSliderFlags flags); 3581CIMGUI_API bool igVSliderInt(const char* label,const ImVec2 size,int* v,int v_min,int v_max,const char* format,ImGuiSliderFlags flags); 3582CIMGUI_API bool igVSliderScalar(const char* label,const ImVec2 size,ImGuiDataType data_type,void* p_data,const void* p_min,const void* p_max,const char* format,ImGuiSliderFlags flags); 3583CIMGUI_API bool igInputText(const char* label,char* buf,size_t buf_size,ImGuiInputTextFlags flags,ImGuiInputTextCallback callback,void* user_data); 3584CIMGUI_API bool igInputTextMultiline(const char* label,char* buf,size_t buf_size,const ImVec2 size,ImGuiInputTextFlags flags,ImGuiInputTextCallback callback,void* user_data); 3585CIMGUI_API bool igInputTextWithHint(const char* label,const char* hint,char* buf,size_t buf_size,ImGuiInputTextFlags flags,ImGuiInputTextCallback callback,void* user_data); 3586CIMGUI_API bool igInputFloat(const char* label,float* v,float step,float step_fast,const char* format,ImGuiInputTextFlags flags); 3587CIMGUI_API bool igInputFloat2(const char* label,float v[2],const char* format,ImGuiInputTextFlags flags); 3588CIMGUI_API bool igInputFloat3(const char* label,float v[3],const char* format,ImGuiInputTextFlags flags); 3589CIMGUI_API bool igInputFloat4(const char* label,float v[4],const char* format,ImGuiInputTextFlags flags); 3590CIMGUI_API bool igInputInt(const char* label,int* v,int step,int step_fast,ImGuiInputTextFlags flags); 3591CIMGUI_API bool igInputInt2(const char* label,int v[2],ImGuiInputTextFlags flags); 3592CIMGUI_API bool igInputInt3(const char* label,int v[3],ImGuiInputTextFlags flags); 3593CIMGUI_API bool igInputInt4(const char* label,int v[4],ImGuiInputTextFlags flags); 3594CIMGUI_API bool igInputDouble(const char* label,double* v,double step,double step_fast,const char* format,ImGuiInputTextFlags flags); 3595CIMGUI_API bool igInputScalar(const char* label,ImGuiDataType data_type,void* p_data,const void* p_step,const void* p_step_fast,const char* format,ImGuiInputTextFlags flags); 3596CIMGUI_API bool igInputScalarN(const char* label,ImGuiDataType data_type,void* p_data,int components,const void* p_step,const void* p_step_fast,const char* format,ImGuiInputTextFlags flags); 3597CIMGUI_API bool igColorEdit3(const char* label,float col[3],ImGuiColorEditFlags flags); 3598CIMGUI_API bool igColorEdit4(const char* label,float col[4],ImGuiColorEditFlags flags); 3599CIMGUI_API bool igColorPicker3(const char* label,float col[3],ImGuiColorEditFlags flags); 3600CIMGUI_API bool igColorPicker4(const char* label,float col[4],ImGuiColorEditFlags flags,const float* ref_col); 3601CIMGUI_API bool igColorButton(const char* desc_id,const ImVec4 col,ImGuiColorEditFlags flags,const ImVec2 size); 3602CIMGUI_API void igSetColorEditOptions(ImGuiColorEditFlags flags); 3603CIMGUI_API bool igTreeNode_Str(const char* label); 3604CIMGUI_API bool igTreeNode_StrStr(const char* str_id,const char* fmt,...); 3605CIMGUI_API bool igTreeNode_Ptr(const void* ptr_id,const char* fmt,...); 3606CIMGUI_API bool igTreeNodeV_Str(const char* str_id,const char* fmt,va_list args); 3607CIMGUI_API bool igTreeNodeV_Ptr(const void* ptr_id,const char* fmt,va_list args); 3608CIMGUI_API bool igTreeNodeEx_Str(const char* label,ImGuiTreeNodeFlags flags); 3609CIMGUI_API bool igTreeNodeEx_StrStr(const char* str_id,ImGuiTreeNodeFlags flags,const char* fmt,...); 3610CIMGUI_API bool igTreeNodeEx_Ptr(const void* ptr_id,ImGuiTreeNodeFlags flags,const char* fmt,...); 3611CIMGUI_API bool igTreeNodeExV_Str(const char* str_id,ImGuiTreeNodeFlags flags,const char* fmt,va_list args); 3612CIMGUI_API bool igTreeNodeExV_Ptr(const void* ptr_id,ImGuiTreeNodeFlags flags,const char* fmt,va_list args); 3613CIMGUI_API void igTreePush_Str(const char* str_id); 3614CIMGUI_API void igTreePush_Ptr(const void* ptr_id); 3615CIMGUI_API void igTreePop(void); 3616CIMGUI_API float igGetTreeNodeToLabelSpacing(void); 3617CIMGUI_API bool igCollapsingHeader_TreeNodeFlags(const char* label,ImGuiTreeNodeFlags flags); 3618CIMGUI_API bool igCollapsingHeader_BoolPtr(const char* label,bool* p_visible,ImGuiTreeNodeFlags flags); 3619CIMGUI_API void igSetNextItemOpen(bool is_open,ImGuiCond cond); 3620CIMGUI_API bool igSelectable_Bool(const char* label,bool selected,ImGuiSelectableFlags flags,const ImVec2 size); 3621CIMGUI_API bool igSelectable_BoolPtr(const char* label,bool* p_selected,ImGuiSelectableFlags flags,const ImVec2 size); 3622CIMGUI_API bool igBeginListBox(const char* label,const ImVec2 size); 3623CIMGUI_API void igEndListBox(void); 3624CIMGUI_API bool igListBox_Str_arr(const char* label,int* current_item,const char* const items[],int items_count,int height_in_items); 3625CIMGUI_API bool igListBox_FnStrPtr(const char* label,int* current_item,const char*(*getter)(void* user_data,int idx),void* user_data,int items_count,int height_in_items); 3626CIMGUI_API void igPlotLines_FloatPtr(const char* label,const float* values,int values_count,int values_offset,const char* overlay_text,float scale_min,float scale_max,ImVec2 graph_size,int stride); 3627CIMGUI_API void igPlotLines_FnFloatPtr(const char* label,float(*values_getter)(void* data,int idx),void* data,int values_count,int values_offset,const char* overlay_text,float scale_min,float scale_max,ImVec2 graph_size); 3628CIMGUI_API void igPlotHistogram_FloatPtr(const char* label,const float* values,int values_count,int values_offset,const char* overlay_text,float scale_min,float scale_max,ImVec2 graph_size,int stride); 3629CIMGUI_API void igPlotHistogram_FnFloatPtr(const char* label,float(*values_getter)(void* data,int idx),void* data,int values_count,int values_offset,const char* overlay_text,float scale_min,float scale_max,ImVec2 graph_size); 3630CIMGUI_API void igValue_Bool(const char* prefix,bool b); 3631CIMGUI_API void igValue_Int(const char* prefix,int v); 3632CIMGUI_API void igValue_Uint(const char* prefix,unsigned int v); 3633CIMGUI_API void igValue_Float(const char* prefix,float v,const char* float_format); 3634CIMGUI_API bool igBeginMenuBar(void); 3635CIMGUI_API void igEndMenuBar(void); 3636CIMGUI_API bool igBeginMainMenuBar(void); 3637CIMGUI_API void igEndMainMenuBar(void); 3638CIMGUI_API bool igBeginMenu(const char* label,bool enabled); 3639CIMGUI_API void igEndMenu(void); 3640CIMGUI_API bool igMenuItem_Bool(const char* label,const char* shortcut,bool selected,bool enabled); 3641CIMGUI_API bool igMenuItem_BoolPtr(const char* label,const char* shortcut,bool* p_selected,bool enabled); 3642CIMGUI_API bool igBeginTooltip(void); 3643CIMGUI_API void igEndTooltip(void); 3644CIMGUI_API void igSetTooltip(const char* fmt,...); 3645CIMGUI_API void igSetTooltipV(const char* fmt,va_list args); 3646CIMGUI_API bool igBeginItemTooltip(void); 3647CIMGUI_API void igSetItemTooltip(const char* fmt,...); 3648CIMGUI_API void igSetItemTooltipV(const char* fmt,va_list args); 3649CIMGUI_API bool igBeginPopup(const char* str_id,ImGuiWindowFlags flags); 3650CIMGUI_API bool igBeginPopupModal(const char* name,bool* p_open,ImGuiWindowFlags flags); 3651CIMGUI_API void igEndPopup(void); 3652CIMGUI_API void igOpenPopup_Str(const char* str_id,ImGuiPopupFlags popup_flags); 3653CIMGUI_API void igOpenPopup_ID(ImGuiID id,ImGuiPopupFlags popup_flags); 3654CIMGUI_API void igOpenPopupOnItemClick(const char* str_id,ImGuiPopupFlags popup_flags); 3655CIMGUI_API void igCloseCurrentPopup(void); 3656CIMGUI_API bool igBeginPopupContextItem(const char* str_id,ImGuiPopupFlags popup_flags); 3657CIMGUI_API bool igBeginPopupContextWindow(const char* str_id,ImGuiPopupFlags popup_flags); 3658CIMGUI_API bool igBeginPopupContextVoid(const char* str_id,ImGuiPopupFlags popup_flags); 3659CIMGUI_API bool igIsPopupOpen_Str(const char* str_id,ImGuiPopupFlags flags); 3660CIMGUI_API bool igBeginTable(const char* str_id,int column,ImGuiTableFlags flags,const ImVec2 outer_size,float inner_width); 3661CIMGUI_API void igEndTable(void); 3662CIMGUI_API void igTableNextRow(ImGuiTableRowFlags row_flags,float min_row_height); 3663CIMGUI_API bool igTableNextColumn(void); 3664CIMGUI_API bool igTableSetColumnIndex(int column_n); 3665CIMGUI_API void igTableSetupColumn(const char* label,ImGuiTableColumnFlags flags,float init_width_or_weight,ImGuiID user_id); 3666CIMGUI_API void igTableSetupScrollFreeze(int cols,int rows); 3667CIMGUI_API void igTableHeader(const char* label); 3668CIMGUI_API void igTableHeadersRow(void); 3669CIMGUI_API void igTableAngledHeadersRow(void); 3670CIMGUI_API ImGuiTableSortSpecs* igTableGetSortSpecs(void); 3671CIMGUI_API int igTableGetColumnCount(void); 3672CIMGUI_API int igTableGetColumnIndex(void); 3673CIMGUI_API int igTableGetRowIndex(void); 3674CIMGUI_API const char* igTableGetColumnName_Int(int column_n); 3675CIMGUI_API ImGuiTableColumnFlags igTableGetColumnFlags(int column_n); 3676CIMGUI_API void igTableSetColumnEnabled(int column_n,bool v); 3677CIMGUI_API void igTableSetBgColor(ImGuiTableBgTarget target,ImU32 color,int column_n); 3678CIMGUI_API void igColumns(int count,const char* id,bool border); 3679CIMGUI_API void igNextColumn(void); 3680CIMGUI_API int igGetColumnIndex(void); 3681CIMGUI_API float igGetColumnWidth(int column_index); 3682CIMGUI_API void igSetColumnWidth(int column_index,float width); 3683CIMGUI_API float igGetColumnOffset(int column_index); 3684CIMGUI_API void igSetColumnOffset(int column_index,float offset_x); 3685CIMGUI_API int igGetColumnsCount(void); 3686CIMGUI_API bool igBeginTabBar(const char* str_id,ImGuiTabBarFlags flags); 3687CIMGUI_API void igEndTabBar(void); 3688CIMGUI_API bool igBeginTabItem(const char* label,bool* p_open,ImGuiTabItemFlags flags); 3689CIMGUI_API void igEndTabItem(void); 3690CIMGUI_API bool igTabItemButton(const char* label,ImGuiTabItemFlags flags); 3691CIMGUI_API void igSetTabItemClosed(const char* tab_or_docked_window_label); 3692CIMGUI_API ImGuiID igDockSpace(ImGuiID dockspace_id,const ImVec2 size,ImGuiDockNodeFlags flags,const ImGuiWindowClass* window_class); 3693CIMGUI_API ImGuiID igDockSpaceOverViewport(ImGuiID dockspace_id,const ImGuiViewport* viewport,ImGuiDockNodeFlags flags,const ImGuiWindowClass* window_class); 3694CIMGUI_API void igSetNextWindowDockID(ImGuiID dock_id,ImGuiCond cond); 3695CIMGUI_API void igSetNextWindowClass(const ImGuiWindowClass* window_class); 3696CIMGUI_API ImGuiID igGetWindowDockID(void); 3697CIMGUI_API bool igIsWindowDocked(void); 3698CIMGUI_API void igLogToTTY(int auto_open_depth); 3699CIMGUI_API void igLogToFile(int auto_open_depth,const char* filename); 3700CIMGUI_API void igLogToClipboard(int auto_open_depth); 3701CIMGUI_API void igLogFinish(void); 3702CIMGUI_API void igLogButtons(void); 3703CIMGUI_API void igLogTextV(const char* fmt,va_list args); 3704CIMGUI_API bool igBeginDragDropSource(ImGuiDragDropFlags flags); 3705CIMGUI_API bool igSetDragDropPayload(const char* type,const void* data,size_t sz,ImGuiCond cond); 3706CIMGUI_API void igEndDragDropSource(void); 3707CIMGUI_API bool igBeginDragDropTarget(void); 3708CIMGUI_API const ImGuiPayload* igAcceptDragDropPayload(const char* type,ImGuiDragDropFlags flags); 3709CIMGUI_API void igEndDragDropTarget(void); 3710CIMGUI_API const ImGuiPayload* igGetDragDropPayload(void); 3711CIMGUI_API void igBeginDisabled(bool disabled); 3712CIMGUI_API void igEndDisabled(void); 3713CIMGUI_API void igPushClipRect(const ImVec2 clip_rect_min,const ImVec2 clip_rect_max,bool intersect_with_current_clip_rect); 3714CIMGUI_API void igPopClipRect(void); 3715CIMGUI_API void igSetItemDefaultFocus(void); 3716CIMGUI_API void igSetKeyboardFocusHere(int offset); 3717CIMGUI_API void igSetNextItemAllowOverlap(void); 3718CIMGUI_API bool igIsItemHovered(ImGuiHoveredFlags flags); 3719CIMGUI_API bool igIsItemActive(void); 3720CIMGUI_API bool igIsItemFocused(void); 3721CIMGUI_API bool igIsItemClicked(ImGuiMouseButton mouse_button); 3722CIMGUI_API bool igIsItemVisible(void); 3723CIMGUI_API bool igIsItemEdited(void); 3724CIMGUI_API bool igIsItemActivated(void); 3725CIMGUI_API bool igIsItemDeactivated(void); 3726CIMGUI_API bool igIsItemDeactivatedAfterEdit(void); 3727CIMGUI_API bool igIsItemToggledOpen(void); 3728CIMGUI_API bool igIsAnyItemHovered(void); 3729CIMGUI_API bool igIsAnyItemActive(void); 3730CIMGUI_API bool igIsAnyItemFocused(void); 3731CIMGUI_API ImGuiID igGetItemID(void); 3732CIMGUI_API void igGetItemRectMin(ImVec2 *pOut); 3733CIMGUI_API void igGetItemRectMax(ImVec2 *pOut); 3734CIMGUI_API void igGetItemRectSize(ImVec2 *pOut); 3735CIMGUI_API ImGuiViewport* igGetMainViewport(void); 3736CIMGUI_API ImDrawList* igGetBackgroundDrawList_Nil(void); 3737CIMGUI_API ImDrawList* igGetForegroundDrawList_Nil(void); 3738CIMGUI_API ImDrawList* igGetBackgroundDrawList_ViewportPtr(ImGuiViewport* viewport); 3739CIMGUI_API ImDrawList* igGetForegroundDrawList_ViewportPtr(ImGuiViewport* viewport); 3740CIMGUI_API bool igIsRectVisible_Nil(const ImVec2 size); 3741CIMGUI_API bool igIsRectVisible_Vec2(const ImVec2 rect_min,const ImVec2 rect_max); 3742CIMGUI_API double igGetTime(void); 3743CIMGUI_API int igGetFrameCount(void); 3744CIMGUI_API ImDrawListSharedData* igGetDrawListSharedData(void); 3745CIMGUI_API const char* igGetStyleColorName(ImGuiCol idx); 3746CIMGUI_API void igSetStateStorage(ImGuiStorage* storage); 3747CIMGUI_API ImGuiStorage* igGetStateStorage(void); 3748CIMGUI_API void igCalcTextSize(ImVec2 *pOut,const char* text,const char* text_end,bool hide_text_after_double_hash,float wrap_width); 3749CIMGUI_API void igColorConvertU32ToFloat4(ImVec4 *pOut,ImU32 in); 3750CIMGUI_API ImU32 igColorConvertFloat4ToU32(const ImVec4 in); 3751CIMGUI_API void igColorConvertRGBtoHSV(float r,float g,float b,float* out_h,float* out_s,float* out_v); 3752CIMGUI_API void igColorConvertHSVtoRGB(float h,float s,float v,float* out_r,float* out_g,float* out_b); 3753CIMGUI_API bool igIsKeyDown_Nil(ImGuiKey key); 3754CIMGUI_API bool igIsKeyPressed_Bool(ImGuiKey key,bool repeat); 3755CIMGUI_API bool igIsKeyReleased_Nil(ImGuiKey key); 3756CIMGUI_API bool igIsKeyChordPressed_Nil(ImGuiKeyChord key_chord); 3757CIMGUI_API int igGetKeyPressedAmount(ImGuiKey key,float repeat_delay,float rate); 3758CIMGUI_API const char* igGetKeyName(ImGuiKey key); 3759CIMGUI_API void igSetNextFrameWantCaptureKeyboard(bool want_capture_keyboard); 3760CIMGUI_API bool igShortcut_Nil(ImGuiKeyChord key_chord,ImGuiInputFlags flags); 3761CIMGUI_API void igSetNextItemShortcut(ImGuiKeyChord key_chord,ImGuiInputFlags flags); 3762CIMGUI_API bool igIsMouseDown_Nil(ImGuiMouseButton button); 3763CIMGUI_API bool igIsMouseClicked_Bool(ImGuiMouseButton button,bool repeat); 3764CIMGUI_API bool igIsMouseReleased_Nil(ImGuiMouseButton button); 3765CIMGUI_API bool igIsMouseDoubleClicked_Nil(ImGuiMouseButton button); 3766CIMGUI_API int igGetMouseClickedCount(ImGuiMouseButton button); 3767CIMGUI_API bool igIsMouseHoveringRect(const ImVec2 r_min,const ImVec2 r_max,bool clip); 3768CIMGUI_API bool igIsMousePosValid(const ImVec2* mouse_pos); 3769CIMGUI_API bool igIsAnyMouseDown(void); 3770CIMGUI_API void igGetMousePos(ImVec2 *pOut); 3771CIMGUI_API void igGetMousePosOnOpeningCurrentPopup(ImVec2 *pOut); 3772CIMGUI_API bool igIsMouseDragging(ImGuiMouseButton button,float lock_threshold); 3773CIMGUI_API void igGetMouseDragDelta(ImVec2 *pOut,ImGuiMouseButton button,float lock_threshold); 3774CIMGUI_API void igResetMouseDragDelta(ImGuiMouseButton button); 3775CIMGUI_API ImGuiMouseCursor igGetMouseCursor(void); 3776CIMGUI_API void igSetMouseCursor(ImGuiMouseCursor cursor_type); 3777CIMGUI_API void igSetNextFrameWantCaptureMouse(bool want_capture_mouse); 3778CIMGUI_API const char* igGetClipboardText(void); 3779CIMGUI_API void igSetClipboardText(const char* text); 3780CIMGUI_API void igLoadIniSettingsFromDisk(const char* ini_filename); 3781CIMGUI_API void igLoadIniSettingsFromMemory(const char* ini_data,size_t ini_size); 3782CIMGUI_API void igSaveIniSettingsToDisk(const char* ini_filename); 3783CIMGUI_API const char* igSaveIniSettingsToMemory(size_t* out_ini_size); 3784CIMGUI_API void igDebugTextEncoding(const char* text); 3785CIMGUI_API void igDebugFlashStyleColor(ImGuiCol idx); 3786CIMGUI_API void igDebugStartItemPicker(void); 3787CIMGUI_API bool igDebugCheckVersionAndDataLayout(const char* version_str,size_t sz_io,size_t sz_style,size_t sz_vec2,size_t sz_vec4,size_t sz_drawvert,size_t sz_drawidx); 3788CIMGUI_API void igSetAllocatorFunctions(ImGuiMemAllocFunc alloc_func,ImGuiMemFreeFunc free_func,void* user_data); 3789CIMGUI_API void igGetAllocatorFunctions(ImGuiMemAllocFunc* p_alloc_func,ImGuiMemFreeFunc* p_free_func,void** p_user_data); 3790CIMGUI_API void* igMemAlloc(size_t size); 3791CIMGUI_API void igMemFree(void* ptr); 3792CIMGUI_API ImGuiPlatformIO* igGetPlatformIO(void); 3793CIMGUI_API void igUpdatePlatformWindows(void); 3794CIMGUI_API void igRenderPlatformWindowsDefault(void* platform_render_arg,void* renderer_render_arg); 3795CIMGUI_API void igDestroyPlatformWindows(void); 3796CIMGUI_API ImGuiViewport* igFindViewportByID(ImGuiID id); 3797CIMGUI_API ImGuiViewport* igFindViewportByPlatformHandle(void* platform_handle); 3798CIMGUI_API ImGuiTableSortSpecs* ImGuiTableSortSpecs_ImGuiTableSortSpecs(void); 3799CIMGUI_API void ImGuiTableSortSpecs_destroy(ImGuiTableSortSpecs* self); 3800CIMGUI_API ImGuiTableColumnSortSpecs* ImGuiTableColumnSortSpecs_ImGuiTableColumnSortSpecs(void); 3801CIMGUI_API void ImGuiTableColumnSortSpecs_destroy(ImGuiTableColumnSortSpecs* self); 3802CIMGUI_API ImGuiStyle* ImGuiStyle_ImGuiStyle(void); 3803CIMGUI_API void ImGuiStyle_destroy(ImGuiStyle* self); 3804CIMGUI_API void ImGuiStyle_ScaleAllSizes(ImGuiStyle* self,float scale_factor); 3805CIMGUI_API void ImGuiIO_AddKeyEvent(ImGuiIO* self,ImGuiKey key,bool down); 3806CIMGUI_API void ImGuiIO_AddKeyAnalogEvent(ImGuiIO* self,ImGuiKey key,bool down,float v); 3807CIMGUI_API void ImGuiIO_AddMousePosEvent(ImGuiIO* self,float x,float y); 3808CIMGUI_API void ImGuiIO_AddMouseButtonEvent(ImGuiIO* self,int button,bool down); 3809CIMGUI_API void ImGuiIO_AddMouseWheelEvent(ImGuiIO* self,float wheel_x,float wheel_y); 3810CIMGUI_API void ImGuiIO_AddMouseSourceEvent(ImGuiIO* self,ImGuiMouseSource source); 3811CIMGUI_API void ImGuiIO_AddMouseViewportEvent(ImGuiIO* self,ImGuiID id); 3812CIMGUI_API void ImGuiIO_AddFocusEvent(ImGuiIO* self,bool focused); 3813CIMGUI_API void ImGuiIO_AddInputCharacter(ImGuiIO* self,unsigned int c); 3814CIMGUI_API void ImGuiIO_AddInputCharacterUTF16(ImGuiIO* self,ImWchar16 c); 3815CIMGUI_API void ImGuiIO_AddInputCharactersUTF8(ImGuiIO* self,const char* str); 3816CIMGUI_API void ImGuiIO_SetKeyEventNativeData(ImGuiIO* self,ImGuiKey key,int native_keycode,int native_scancode,int native_legacy_index); 3817CIMGUI_API void ImGuiIO_SetAppAcceptingEvents(ImGuiIO* self,bool accepting_events); 3818CIMGUI_API void ImGuiIO_ClearEventsQueue(ImGuiIO* self); 3819CIMGUI_API void ImGuiIO_ClearInputKeys(ImGuiIO* self); 3820CIMGUI_API ImGuiIO* ImGuiIO_ImGuiIO(void); 3821CIMGUI_API void ImGuiIO_destroy(ImGuiIO* self); 3822CIMGUI_API ImGuiInputTextCallbackData* ImGuiInputTextCallbackData_ImGuiInputTextCallbackData(void); 3823CIMGUI_API void ImGuiInputTextCallbackData_destroy(ImGuiInputTextCallbackData* self); 3824CIMGUI_API void ImGuiInputTextCallbackData_DeleteChars(ImGuiInputTextCallbackData* self,int pos,int bytes_count); 3825CIMGUI_API void ImGuiInputTextCallbackData_InsertChars(ImGuiInputTextCallbackData* self,int pos,const char* text,const char* text_end); 3826CIMGUI_API void ImGuiInputTextCallbackData_SelectAll(ImGuiInputTextCallbackData* self); 3827CIMGUI_API void ImGuiInputTextCallbackData_ClearSelection(ImGuiInputTextCallbackData* self); 3828CIMGUI_API bool ImGuiInputTextCallbackData_HasSelection(ImGuiInputTextCallbackData* self); 3829CIMGUI_API ImGuiWindowClass* ImGuiWindowClass_ImGuiWindowClass(void); 3830CIMGUI_API void ImGuiWindowClass_destroy(ImGuiWindowClass* self); 3831CIMGUI_API ImGuiPayload* ImGuiPayload_ImGuiPayload(void); 3832CIMGUI_API void ImGuiPayload_destroy(ImGuiPayload* self); 3833CIMGUI_API void ImGuiPayload_Clear(ImGuiPayload* self); 3834CIMGUI_API bool ImGuiPayload_IsDataType(ImGuiPayload* self,const char* type); 3835CIMGUI_API bool ImGuiPayload_IsPreview(ImGuiPayload* self); 3836CIMGUI_API bool ImGuiPayload_IsDelivery(ImGuiPayload* self); 3837CIMGUI_API ImGuiOnceUponAFrame* ImGuiOnceUponAFrame_ImGuiOnceUponAFrame(void); 3838CIMGUI_API void ImGuiOnceUponAFrame_destroy(ImGuiOnceUponAFrame* self); 3839CIMGUI_API ImGuiTextFilter* ImGuiTextFilter_ImGuiTextFilter(const char* default_filter); 3840CIMGUI_API void ImGuiTextFilter_destroy(ImGuiTextFilter* self); 3841CIMGUI_API bool ImGuiTextFilter_Draw(ImGuiTextFilter* self,const char* label,float width); 3842CIMGUI_API bool ImGuiTextFilter_PassFilter(ImGuiTextFilter* self,const char* text,const char* text_end); 3843CIMGUI_API void ImGuiTextFilter_Build(ImGuiTextFilter* self); 3844CIMGUI_API void ImGuiTextFilter_Clear(ImGuiTextFilter* self); 3845CIMGUI_API bool ImGuiTextFilter_IsActive(ImGuiTextFilter* self); 3846CIMGUI_API ImGuiTextRange* ImGuiTextRange_ImGuiTextRange_Nil(void); 3847CIMGUI_API void ImGuiTextRange_destroy(ImGuiTextRange* self); 3848CIMGUI_API ImGuiTextRange* ImGuiTextRange_ImGuiTextRange_Str(const char* _b,const char* _e); 3849CIMGUI_API bool ImGuiTextRange_empty(ImGuiTextRange* self); 3850CIMGUI_API void ImGuiTextRange_split(ImGuiTextRange* self,char separator,ImVector_ImGuiTextRange* out); 3851CIMGUI_API ImGuiTextBuffer* ImGuiTextBuffer_ImGuiTextBuffer(void); 3852CIMGUI_API void ImGuiTextBuffer_destroy(ImGuiTextBuffer* self); 3853CIMGUI_API const char* ImGuiTextBuffer_begin(ImGuiTextBuffer* self); 3854CIMGUI_API const char* ImGuiTextBuffer_end(ImGuiTextBuffer* self); 3855CIMGUI_API int ImGuiTextBuffer_size(ImGuiTextBuffer* self); 3856CIMGUI_API bool ImGuiTextBuffer_empty(ImGuiTextBuffer* self); 3857CIMGUI_API void ImGuiTextBuffer_clear(ImGuiTextBuffer* self); 3858CIMGUI_API void ImGuiTextBuffer_reserve(ImGuiTextBuffer* self,int capacity); 3859CIMGUI_API const char* ImGuiTextBuffer_c_str(ImGuiTextBuffer* self); 3860CIMGUI_API void ImGuiTextBuffer_append(ImGuiTextBuffer* self,const char* str,const char* str_end); 3861CIMGUI_API void ImGuiTextBuffer_appendfv(ImGuiTextBuffer* self,const char* fmt,va_list args); 3862CIMGUI_API ImGuiStoragePair* ImGuiStoragePair_ImGuiStoragePair_Int(ImGuiID _key,int _val); 3863CIMGUI_API void ImGuiStoragePair_destroy(ImGuiStoragePair* self); 3864CIMGUI_API ImGuiStoragePair* ImGuiStoragePair_ImGuiStoragePair_Float(ImGuiID _key,float _val); 3865CIMGUI_API ImGuiStoragePair* ImGuiStoragePair_ImGuiStoragePair_Ptr(ImGuiID _key,void* _val); 3866CIMGUI_API void ImGuiStorage_Clear(ImGuiStorage* self); 3867CIMGUI_API int ImGuiStorage_GetInt(ImGuiStorage* self,ImGuiID key,int default_val); 3868CIMGUI_API void ImGuiStorage_SetInt(ImGuiStorage* self,ImGuiID key,int val); 3869CIMGUI_API bool ImGuiStorage_GetBool(ImGuiStorage* self,ImGuiID key,bool default_val); 3870CIMGUI_API void ImGuiStorage_SetBool(ImGuiStorage* self,ImGuiID key,bool val); 3871CIMGUI_API float ImGuiStorage_GetFloat(ImGuiStorage* self,ImGuiID key,float default_val); 3872CIMGUI_API void ImGuiStorage_SetFloat(ImGuiStorage* self,ImGuiID key,float val); 3873CIMGUI_API void* ImGuiStorage_GetVoidPtr(ImGuiStorage* self,ImGuiID key); 3874CIMGUI_API void ImGuiStorage_SetVoidPtr(ImGuiStorage* self,ImGuiID key,void* val); 3875CIMGUI_API int* ImGuiStorage_GetIntRef(ImGuiStorage* self,ImGuiID key,int default_val); 3876CIMGUI_API bool* ImGuiStorage_GetBoolRef(ImGuiStorage* self,ImGuiID key,bool default_val); 3877CIMGUI_API float* ImGuiStorage_GetFloatRef(ImGuiStorage* self,ImGuiID key,float default_val); 3878CIMGUI_API void** ImGuiStorage_GetVoidPtrRef(ImGuiStorage* self,ImGuiID key,void* default_val); 3879CIMGUI_API void ImGuiStorage_BuildSortByKey(ImGuiStorage* self); 3880CIMGUI_API void ImGuiStorage_SetAllInt(ImGuiStorage* self,int val); 3881CIMGUI_API ImGuiListClipper* ImGuiListClipper_ImGuiListClipper(void); 3882CIMGUI_API void ImGuiListClipper_destroy(ImGuiListClipper* self); 3883CIMGUI_API void ImGuiListClipper_Begin(ImGuiListClipper* self,int items_count,float items_height); 3884CIMGUI_API void ImGuiListClipper_End(ImGuiListClipper* self); 3885CIMGUI_API bool ImGuiListClipper_Step(ImGuiListClipper* self); 3886CIMGUI_API void ImGuiListClipper_IncludeItemByIndex(ImGuiListClipper* self,int item_index); 3887CIMGUI_API void ImGuiListClipper_IncludeItemsByIndex(ImGuiListClipper* self,int item_begin,int item_end); 3888CIMGUI_API ImColor* ImColor_ImColor_Nil(void); 3889CIMGUI_API void ImColor_destroy(ImColor* self); 3890CIMGUI_API ImColor* ImColor_ImColor_Float(float r,float g,float b,float a); 3891CIMGUI_API ImColor* ImColor_ImColor_Vec4(const ImVec4 col); 3892CIMGUI_API ImColor* ImColor_ImColor_Int(int r,int g,int b,int a); 3893CIMGUI_API ImColor* ImColor_ImColor_U32(ImU32 rgba); 3894CIMGUI_API void ImColor_SetHSV(ImColor* self,float h,float s,float v,float a); 3895CIMGUI_API void ImColor_HSV(ImColor *pOut,float h,float s,float v,float a); 3896CIMGUI_API ImDrawCmd* ImDrawCmd_ImDrawCmd(void); 3897CIMGUI_API void ImDrawCmd_destroy(ImDrawCmd* self); 3898CIMGUI_API ImTextureID ImDrawCmd_GetTexID(ImDrawCmd* self); 3899CIMGUI_API ImDrawListSplitter* ImDrawListSplitter_ImDrawListSplitter(void); 3900CIMGUI_API void ImDrawListSplitter_destroy(ImDrawListSplitter* self); 3901CIMGUI_API void ImDrawListSplitter_Clear(ImDrawListSplitter* self); 3902CIMGUI_API void ImDrawListSplitter_ClearFreeMemory(ImDrawListSplitter* self); 3903CIMGUI_API void ImDrawListSplitter_Split(ImDrawListSplitter* self,ImDrawList* draw_list,int count); 3904CIMGUI_API void ImDrawListSplitter_Merge(ImDrawListSplitter* self,ImDrawList* draw_list); 3905CIMGUI_API void ImDrawListSplitter_SetCurrentChannel(ImDrawListSplitter* self,ImDrawList* draw_list,int channel_idx); 3906CIMGUI_API ImDrawList* ImDrawList_ImDrawList(ImDrawListSharedData* shared_data); 3907CIMGUI_API void ImDrawList_destroy(ImDrawList* self); 3908CIMGUI_API void ImDrawList_PushClipRect(ImDrawList* self,const ImVec2 clip_rect_min,const ImVec2 clip_rect_max,bool intersect_with_current_clip_rect); 3909CIMGUI_API void ImDrawList_PushClipRectFullScreen(ImDrawList* self); 3910CIMGUI_API void ImDrawList_PopClipRect(ImDrawList* self); 3911CIMGUI_API void ImDrawList_PushTextureID(ImDrawList* self,ImTextureID texture_id); 3912CIMGUI_API void ImDrawList_PopTextureID(ImDrawList* self); 3913CIMGUI_API void ImDrawList_GetClipRectMin(ImVec2 *pOut,ImDrawList* self); 3914CIMGUI_API void ImDrawList_GetClipRectMax(ImVec2 *pOut,ImDrawList* self); 3915CIMGUI_API void ImDrawList_AddLine(ImDrawList* self,const ImVec2 p1,const ImVec2 p2,ImU32 col,float thickness); 3916CIMGUI_API void ImDrawList_AddRect(ImDrawList* self,const ImVec2 p_min,const ImVec2 p_max,ImU32 col,float rounding,ImDrawFlags flags,float thickness); 3917CIMGUI_API void ImDrawList_AddRectFilled(ImDrawList* self,const ImVec2 p_min,const ImVec2 p_max,ImU32 col,float rounding,ImDrawFlags flags); 3918CIMGUI_API void ImDrawList_AddRectFilledMultiColor(ImDrawList* self,const ImVec2 p_min,const ImVec2 p_max,ImU32 col_upr_left,ImU32 col_upr_right,ImU32 col_bot_right,ImU32 col_bot_left); 3919CIMGUI_API void ImDrawList_AddQuad(ImDrawList* self,const ImVec2 p1,const ImVec2 p2,const ImVec2 p3,const ImVec2 p4,ImU32 col,float thickness); 3920CIMGUI_API void ImDrawList_AddQuadFilled(ImDrawList* self,const ImVec2 p1,const ImVec2 p2,const ImVec2 p3,const ImVec2 p4,ImU32 col); 3921CIMGUI_API void ImDrawList_AddTriangle(ImDrawList* self,const ImVec2 p1,const ImVec2 p2,const ImVec2 p3,ImU32 col,float thickness); 3922CIMGUI_API void ImDrawList_AddTriangleFilled(ImDrawList* self,const ImVec2 p1,const ImVec2 p2,const ImVec2 p3,ImU32 col); 3923CIMGUI_API void ImDrawList_AddCircle(ImDrawList* self,const ImVec2 center,float radius,ImU32 col,int num_segments,float thickness); 3924CIMGUI_API void ImDrawList_AddCircleFilled(ImDrawList* self,const ImVec2 center,float radius,ImU32 col,int num_segments); 3925CIMGUI_API void ImDrawList_AddNgon(ImDrawList* self,const ImVec2 center,float radius,ImU32 col,int num_segments,float thickness); 3926CIMGUI_API void ImDrawList_AddNgonFilled(ImDrawList* self,const ImVec2 center,float radius,ImU32 col,int num_segments); 3927CIMGUI_API void ImDrawList_AddEllipse(ImDrawList* self,const ImVec2 center,const ImVec2 radius,ImU32 col,float rot,int num_segments,float thickness); 3928CIMGUI_API void ImDrawList_AddEllipseFilled(ImDrawList* self,const ImVec2 center,const ImVec2 radius,ImU32 col,float rot,int num_segments); 3929CIMGUI_API void ImDrawList_AddText_Vec2(ImDrawList* self,const ImVec2 pos,ImU32 col,const char* text_begin,const char* text_end); 3930CIMGUI_API void ImDrawList_AddText_FontPtr(ImDrawList* self,const ImFont* font,float font_size,const ImVec2 pos,ImU32 col,const char* text_begin,const char* text_end,float wrap_width,const ImVec4* cpu_fine_clip_rect); 3931CIMGUI_API void ImDrawList_AddBezierCubic(ImDrawList* self,const ImVec2 p1,const ImVec2 p2,const ImVec2 p3,const ImVec2 p4,ImU32 col,float thickness,int num_segments); 3932CIMGUI_API void ImDrawList_AddBezierQuadratic(ImDrawList* self,const ImVec2 p1,const ImVec2 p2,const ImVec2 p3,ImU32 col,float thickness,int num_segments); 3933CIMGUI_API void ImDrawList_AddPolyline(ImDrawList* self,const ImVec2* points,int num_points,ImU32 col,ImDrawFlags flags,float thickness); 3934CIMGUI_API void ImDrawList_AddConvexPolyFilled(ImDrawList* self,const ImVec2* points,int num_points,ImU32 col); 3935CIMGUI_API void ImDrawList_AddConcavePolyFilled(ImDrawList* self,const ImVec2* points,int num_points,ImU32 col); 3936CIMGUI_API void ImDrawList_AddImage(ImDrawList* self,ImTextureID user_texture_id,const ImVec2 p_min,const ImVec2 p_max,const ImVec2 uv_min,const ImVec2 uv_max,ImU32 col); 3937CIMGUI_API void ImDrawList_AddImageQuad(ImDrawList* self,ImTextureID user_texture_id,const ImVec2 p1,const ImVec2 p2,const ImVec2 p3,const ImVec2 p4,const ImVec2 uv1,const ImVec2 uv2,const ImVec2 uv3,const ImVec2 uv4,ImU32 col); 3938CIMGUI_API void ImDrawList_AddImageRounded(ImDrawList* self,ImTextureID user_texture_id,const ImVec2 p_min,const ImVec2 p_max,const ImVec2 uv_min,const ImVec2 uv_max,ImU32 col,float rounding,ImDrawFlags flags); 3939CIMGUI_API void ImDrawList_PathClear(ImDrawList* self); 3940CIMGUI_API void ImDrawList_PathLineTo(ImDrawList* self,const ImVec2 pos); 3941CIMGUI_API void ImDrawList_PathLineToMergeDuplicate(ImDrawList* self,const ImVec2 pos); 3942CIMGUI_API void ImDrawList_PathFillConvex(ImDrawList* self,ImU32 col); 3943CIMGUI_API void ImDrawList_PathFillConcave(ImDrawList* self,ImU32 col); 3944CIMGUI_API void ImDrawList_PathStroke(ImDrawList* self,ImU32 col,ImDrawFlags flags,float thickness); 3945CIMGUI_API void ImDrawList_PathArcTo(ImDrawList* self,const ImVec2 center,float radius,float a_min,float a_max,int num_segments); 3946CIMGUI_API void ImDrawList_PathArcToFast(ImDrawList* self,const ImVec2 center,float radius,int a_min_of_12,int a_max_of_12); 3947CIMGUI_API void ImDrawList_PathEllipticalArcTo(ImDrawList* self,const ImVec2 center,const ImVec2 radius,float rot,float a_min,float a_max,int num_segments); 3948CIMGUI_API void ImDrawList_PathBezierCubicCurveTo(ImDrawList* self,const ImVec2 p2,const ImVec2 p3,const ImVec2 p4,int num_segments); 3949CIMGUI_API void ImDrawList_PathBezierQuadraticCurveTo(ImDrawList* self,const ImVec2 p2,const ImVec2 p3,int num_segments); 3950CIMGUI_API void ImDrawList_PathRect(ImDrawList* self,const ImVec2 rect_min,const ImVec2 rect_max,float rounding,ImDrawFlags flags); 3951CIMGUI_API void ImDrawList_AddCallback(ImDrawList* self,ImDrawCallback callback,void* callback_data); 3952CIMGUI_API void ImDrawList_AddDrawCmd(ImDrawList* self); 3953CIMGUI_API ImDrawList* ImDrawList_CloneOutput(ImDrawList* self); 3954CIMGUI_API void ImDrawList_ChannelsSplit(ImDrawList* self,int count); 3955CIMGUI_API void ImDrawList_ChannelsMerge(ImDrawList* self); 3956CIMGUI_API void ImDrawList_ChannelsSetCurrent(ImDrawList* self,int n); 3957CIMGUI_API void ImDrawList_PrimReserve(ImDrawList* self,int idx_count,int vtx_count); 3958CIMGUI_API void ImDrawList_PrimUnreserve(ImDrawList* self,int idx_count,int vtx_count); 3959CIMGUI_API void ImDrawList_PrimRect(ImDrawList* self,const ImVec2 a,const ImVec2 b,ImU32 col); 3960CIMGUI_API void ImDrawList_PrimRectUV(ImDrawList* self,const ImVec2 a,const ImVec2 b,const ImVec2 uv_a,const ImVec2 uv_b,ImU32 col); 3961CIMGUI_API void ImDrawList_PrimQuadUV(ImDrawList* self,const ImVec2 a,const ImVec2 b,const ImVec2 c,const ImVec2 d,const ImVec2 uv_a,const ImVec2 uv_b,const ImVec2 uv_c,const ImVec2 uv_d,ImU32 col); 3962CIMGUI_API void ImDrawList_PrimWriteVtx(ImDrawList* self,const ImVec2 pos,const ImVec2 uv,ImU32 col); 3963CIMGUI_API void ImDrawList_PrimWriteIdx(ImDrawList* self,ImDrawIdx idx); 3964CIMGUI_API void ImDrawList_PrimVtx(ImDrawList* self,const ImVec2 pos,const ImVec2 uv,ImU32 col); 3965CIMGUI_API void ImDrawList__ResetForNewFrame(ImDrawList* self); 3966CIMGUI_API void ImDrawList__ClearFreeMemory(ImDrawList* self); 3967CIMGUI_API void ImDrawList__PopUnusedDrawCmd(ImDrawList* self); 3968CIMGUI_API void ImDrawList__TryMergeDrawCmds(ImDrawList* self); 3969CIMGUI_API void ImDrawList__OnChangedClipRect(ImDrawList* self); 3970CIMGUI_API void ImDrawList__OnChangedTextureID(ImDrawList* self); 3971CIMGUI_API void ImDrawList__OnChangedVtxOffset(ImDrawList* self); 3972CIMGUI_API int ImDrawList__CalcCircleAutoSegmentCount(ImDrawList* self,float radius); 3973CIMGUI_API void ImDrawList__PathArcToFastEx(ImDrawList* self,const ImVec2 center,float radius,int a_min_sample,int a_max_sample,int a_step); 3974CIMGUI_API void ImDrawList__PathArcToN(ImDrawList* self,const ImVec2 center,float radius,float a_min,float a_max,int num_segments); 3975CIMGUI_API ImDrawData* ImDrawData_ImDrawData(void); 3976CIMGUI_API void ImDrawData_destroy(ImDrawData* self); 3977CIMGUI_API void ImDrawData_Clear(ImDrawData* self); 3978CIMGUI_API void ImDrawData_AddDrawList(ImDrawData* self,ImDrawList* draw_list); 3979CIMGUI_API void ImDrawData_DeIndexAllBuffers(ImDrawData* self); 3980CIMGUI_API void ImDrawData_ScaleClipRects(ImDrawData* self,const ImVec2 fb_scale); 3981CIMGUI_API ImFontConfig* ImFontConfig_ImFontConfig(void); 3982CIMGUI_API void ImFontConfig_destroy(ImFontConfig* self); 3983CIMGUI_API ImFontGlyphRangesBuilder* ImFontGlyphRangesBuilder_ImFontGlyphRangesBuilder(void); 3984CIMGUI_API void ImFontGlyphRangesBuilder_destroy(ImFontGlyphRangesBuilder* self); 3985CIMGUI_API void ImFontGlyphRangesBuilder_Clear(ImFontGlyphRangesBuilder* self); 3986CIMGUI_API bool ImFontGlyphRangesBuilder_GetBit(ImFontGlyphRangesBuilder* self,size_t n); 3987CIMGUI_API void ImFontGlyphRangesBuilder_SetBit(ImFontGlyphRangesBuilder* self,size_t n); 3988CIMGUI_API void ImFontGlyphRangesBuilder_AddChar(ImFontGlyphRangesBuilder* self,ImWchar c); 3989CIMGUI_API void ImFontGlyphRangesBuilder_AddText(ImFontGlyphRangesBuilder* self,const char* text,const char* text_end); 3990CIMGUI_API void ImFontGlyphRangesBuilder_AddRanges(ImFontGlyphRangesBuilder* self,const ImWchar* ranges); 3991CIMGUI_API void ImFontGlyphRangesBuilder_BuildRanges(ImFontGlyphRangesBuilder* self,ImVector_ImWchar* out_ranges); 3992CIMGUI_API ImFontAtlasCustomRect* ImFontAtlasCustomRect_ImFontAtlasCustomRect(void); 3993CIMGUI_API void ImFontAtlasCustomRect_destroy(ImFontAtlasCustomRect* self); 3994CIMGUI_API bool ImFontAtlasCustomRect_IsPacked(ImFontAtlasCustomRect* self); 3995CIMGUI_API ImFontAtlas* ImFontAtlas_ImFontAtlas(void); 3996CIMGUI_API void ImFontAtlas_destroy(ImFontAtlas* self); 3997CIMGUI_API ImFont* ImFontAtlas_AddFont(ImFontAtlas* self,const ImFontConfig* font_cfg); 3998CIMGUI_API ImFont* ImFontAtlas_AddFontDefault(ImFontAtlas* self,const ImFontConfig* font_cfg); 3999CIMGUI_API ImFont* ImFontAtlas_AddFontFromFileTTF(ImFontAtlas* self,const char* filename,float size_pixels,const ImFontConfig* font_cfg,const ImWchar* glyph_ranges); 4000CIMGUI_API ImFont* ImFontAtlas_AddFontFromMemoryTTF(ImFontAtlas* self,void* font_data,int font_data_size,float size_pixels,const ImFontConfig* font_cfg,const ImWchar* glyph_ranges); 4001CIMGUI_API ImFont* ImFontAtlas_AddFontFromMemoryCompressedTTF(ImFontAtlas* self,const void* compressed_font_data,int compressed_font_data_size,float size_pixels,const ImFontConfig* font_cfg,const ImWchar* glyph_ranges); 4002CIMGUI_API ImFont* ImFontAtlas_AddFontFromMemoryCompressedBase85TTF(ImFontAtlas* self,const char* compressed_font_data_base85,float size_pixels,const ImFontConfig* font_cfg,const ImWchar* glyph_ranges); 4003CIMGUI_API void ImFontAtlas_ClearInputData(ImFontAtlas* self); 4004CIMGUI_API void ImFontAtlas_ClearTexData(ImFontAtlas* self); 4005CIMGUI_API void ImFontAtlas_ClearFonts(ImFontAtlas* self); 4006CIMGUI_API void ImFontAtlas_Clear(ImFontAtlas* self); 4007CIMGUI_API bool ImFontAtlas_Build(ImFontAtlas* self); 4008CIMGUI_API void ImFontAtlas_GetTexDataAsAlpha8(ImFontAtlas* self,unsigned char** out_pixels,int* out_width,int* out_height,int* out_bytes_per_pixel); 4009CIMGUI_API void ImFontAtlas_GetTexDataAsRGBA32(ImFontAtlas* self,unsigned char** out_pixels,int* out_width,int* out_height,int* out_bytes_per_pixel); 4010CIMGUI_API bool ImFontAtlas_IsBuilt(ImFontAtlas* self); 4011CIMGUI_API void ImFontAtlas_SetTexID(ImFontAtlas* self,ImTextureID id); 4012CIMGUI_API const ImWchar* ImFontAtlas_GetGlyphRangesDefault(ImFontAtlas* self); 4013CIMGUI_API const ImWchar* ImFontAtlas_GetGlyphRangesGreek(ImFontAtlas* self); 4014CIMGUI_API const ImWchar* ImFontAtlas_GetGlyphRangesKorean(ImFontAtlas* self); 4015CIMGUI_API const ImWchar* ImFontAtlas_GetGlyphRangesJapanese(ImFontAtlas* self); 4016CIMGUI_API const ImWchar* ImFontAtlas_GetGlyphRangesChineseFull(ImFontAtlas* self); 4017CIMGUI_API const ImWchar* ImFontAtlas_GetGlyphRangesChineseSimplifiedCommon(ImFontAtlas* self); 4018CIMGUI_API const ImWchar* ImFontAtlas_GetGlyphRangesCyrillic(ImFontAtlas* self); 4019CIMGUI_API const ImWchar* ImFontAtlas_GetGlyphRangesThai(ImFontAtlas* self); 4020CIMGUI_API const ImWchar* ImFontAtlas_GetGlyphRangesVietnamese(ImFontAtlas* self); 4021CIMGUI_API int ImFontAtlas_AddCustomRectRegular(ImFontAtlas* self,int width,int height); 4022CIMGUI_API int ImFontAtlas_AddCustomRectFontGlyph(ImFontAtlas* self,ImFont* font,ImWchar id,int width,int height,float advance_x,const ImVec2 offset); 4023CIMGUI_API ImFontAtlasCustomRect* ImFontAtlas_GetCustomRectByIndex(ImFontAtlas* self,int index); 4024CIMGUI_API void ImFontAtlas_CalcCustomRectUV(ImFontAtlas* self,const ImFontAtlasCustomRect* rect,ImVec2* out_uv_min,ImVec2* out_uv_max); 4025CIMGUI_API bool ImFontAtlas_GetMouseCursorTexData(ImFontAtlas* self,ImGuiMouseCursor cursor,ImVec2* out_offset,ImVec2* out_size,ImVec2 out_uv_border[2],ImVec2 out_uv_fill[2]); 4026CIMGUI_API ImFont* ImFont_ImFont(void); 4027CIMGUI_API void ImFont_destroy(ImFont* self); 4028CIMGUI_API const ImFontGlyph* ImFont_FindGlyph(ImFont* self,ImWchar c); 4029CIMGUI_API const ImFontGlyph* ImFont_FindGlyphNoFallback(ImFont* self,ImWchar c); 4030CIMGUI_API float ImFont_GetCharAdvance(ImFont* self,ImWchar c); 4031CIMGUI_API bool ImFont_IsLoaded(ImFont* self); 4032CIMGUI_API const char* ImFont_GetDebugName(ImFont* self); 4033CIMGUI_API void ImFont_CalcTextSizeA(ImVec2 *pOut,ImFont* self,float size,float max_width,float wrap_width,const char* text_begin,const char* text_end,const char** remaining); 4034CIMGUI_API const char* ImFont_CalcWordWrapPositionA(ImFont* self,float scale,const char* text,const char* text_end,float wrap_width); 4035CIMGUI_API void ImFont_RenderChar(ImFont* self,ImDrawList* draw_list,float size,const ImVec2 pos,ImU32 col,ImWchar c); 4036CIMGUI_API void ImFont_RenderText(ImFont* self,ImDrawList* draw_list,float size,const ImVec2 pos,ImU32 col,const ImVec4 clip_rect,const char* text_begin,const char* text_end,float wrap_width,bool cpu_fine_clip); 4037CIMGUI_API void ImFont_BuildLookupTable(ImFont* self); 4038CIMGUI_API void ImFont_ClearOutputData(ImFont* self); 4039CIMGUI_API void ImFont_GrowIndex(ImFont* self,int new_size); 4040CIMGUI_API void ImFont_AddGlyph(ImFont* self,const ImFontConfig* src_cfg,ImWchar c,float x0,float y0,float x1,float y1,float u0,float v0,float u1,float v1,float advance_x); 4041CIMGUI_API void ImFont_AddRemapChar(ImFont* self,ImWchar dst,ImWchar src,bool overwrite_dst); 4042CIMGUI_API void ImFont_SetGlyphVisible(ImFont* self,ImWchar c,bool visible); 4043CIMGUI_API bool ImFont_IsGlyphRangeUnused(ImFont* self,unsigned int c_begin,unsigned int c_last); 4044CIMGUI_API ImGuiViewport* ImGuiViewport_ImGuiViewport(void); 4045CIMGUI_API void ImGuiViewport_destroy(ImGuiViewport* self); 4046CIMGUI_API void ImGuiViewport_GetCenter(ImVec2 *pOut,ImGuiViewport* self); 4047CIMGUI_API void ImGuiViewport_GetWorkCenter(ImVec2 *pOut,ImGuiViewport* self); 4048CIMGUI_API ImGuiPlatformIO* ImGuiPlatformIO_ImGuiPlatformIO(void); 4049CIMGUI_API void ImGuiPlatformIO_destroy(ImGuiPlatformIO* self); 4050CIMGUI_API ImGuiPlatformMonitor* ImGuiPlatformMonitor_ImGuiPlatformMonitor(void); 4051CIMGUI_API void ImGuiPlatformMonitor_destroy(ImGuiPlatformMonitor* self); 4052CIMGUI_API ImGuiPlatformImeData* ImGuiPlatformImeData_ImGuiPlatformImeData(void); 4053CIMGUI_API void ImGuiPlatformImeData_destroy(ImGuiPlatformImeData* self); 4054CIMGUI_API ImGuiID igImHashData(const void* data,size_t data_size,ImGuiID seed); 4055CIMGUI_API ImGuiID igImHashStr(const char* data,size_t data_size,ImGuiID seed); 4056CIMGUI_API void igImQsort(void* base,size_t count,size_t size_of_element,int(*compare_func)(void const*,void const*)); 4057CIMGUI_API ImU32 igImAlphaBlendColors(ImU32 col_a,ImU32 col_b); 4058CIMGUI_API bool igImIsPowerOfTwo_Int(int v); 4059CIMGUI_API bool igImIsPowerOfTwo_U64(ImU64 v); 4060CIMGUI_API int igImUpperPowerOfTwo(int v); 4061CIMGUI_API int igImStricmp(const char* str1,const char* str2); 4062CIMGUI_API int igImStrnicmp(const char* str1,const char* str2,size_t count); 4063CIMGUI_API void igImStrncpy(char* dst,const char* src,size_t count); 4064CIMGUI_API char* igImStrdup(const char* str); 4065CIMGUI_API char* igImStrdupcpy(char* dst,size_t* p_dst_size,const char* str); 4066CIMGUI_API const char* igImStrchrRange(const char* str_begin,const char* str_end,char c); 4067CIMGUI_API const char* igImStreolRange(const char* str,const char* str_end); 4068CIMGUI_API const char* igImStristr(const char* haystack,const char* haystack_end,const char* needle,const char* needle_end); 4069CIMGUI_API void igImStrTrimBlanks(char* str); 4070CIMGUI_API const char* igImStrSkipBlank(const char* str); 4071CIMGUI_API int igImStrlenW(const ImWchar* str); 4072CIMGUI_API const ImWchar* igImStrbolW(const ImWchar* buf_mid_line,const ImWchar* buf_begin); 4073CIMGUI_API char igImToUpper(char c); 4074CIMGUI_API bool igImCharIsBlankA(char c); 4075CIMGUI_API bool igImCharIsBlankW(unsigned int c); 4076CIMGUI_API int igImFormatString(char* buf,size_t buf_size,const char* fmt,...); 4077CIMGUI_API int igImFormatStringV(char* buf,size_t buf_size,const char* fmt,va_list args); 4078CIMGUI_API void igImFormatStringToTempBuffer(const char** out_buf,const char** out_buf_end,const char* fmt,...); 4079CIMGUI_API void igImFormatStringToTempBufferV(const char** out_buf,const char** out_buf_end,const char* fmt,va_list args); 4080CIMGUI_API const char* igImParseFormatFindStart(const char* format); 4081CIMGUI_API const char* igImParseFormatFindEnd(const char* format); 4082CIMGUI_API const char* igImParseFormatTrimDecorations(const char* format,char* buf,size_t buf_size); 4083CIMGUI_API void igImParseFormatSanitizeForPrinting(const char* fmt_in,char* fmt_out,size_t fmt_out_size); 4084CIMGUI_API const char* igImParseFormatSanitizeForScanning(const char* fmt_in,char* fmt_out,size_t fmt_out_size); 4085CIMGUI_API int igImParseFormatPrecision(const char* format,int default_value); 4086CIMGUI_API const char* igImTextCharToUtf8(char out_buf[5],unsigned int c); 4087CIMGUI_API int igImTextStrToUtf8(char* out_buf,int out_buf_size,const ImWchar* in_text,const ImWchar* in_text_end); 4088CIMGUI_API int igImTextCharFromUtf8(unsigned int* out_char,const char* in_text,const char* in_text_end); 4089CIMGUI_API int igImTextStrFromUtf8(ImWchar* out_buf,int out_buf_size,const char* in_text,const char* in_text_end,const char** in_remaining); 4090CIMGUI_API int igImTextCountCharsFromUtf8(const char* in_text,const char* in_text_end); 4091CIMGUI_API int igImTextCountUtf8BytesFromChar(const char* in_text,const char* in_text_end); 4092CIMGUI_API int igImTextCountUtf8BytesFromStr(const ImWchar* in_text,const ImWchar* in_text_end); 4093CIMGUI_API const char* igImTextFindPreviousUtf8Codepoint(const char* in_text_start,const char* in_text_curr); 4094CIMGUI_API int igImTextCountLines(const char* in_text,const char* in_text_end); 4095CIMGUI_API ImFileHandle igImFileOpen(const char* filename,const char* mode); 4096CIMGUI_API bool igImFileClose(ImFileHandle file); 4097CIMGUI_API ImU64 igImFileGetSize(ImFileHandle file); 4098CIMGUI_API ImU64 igImFileRead(void* data,ImU64 size,ImU64 count,ImFileHandle file); 4099CIMGUI_API ImU64 igImFileWrite(const void* data,ImU64 size,ImU64 count,ImFileHandle file); 4100CIMGUI_API void* igImFileLoadToMemory(const char* filename,const char* mode,size_t* out_file_size,int padding_bytes); 4101CIMGUI_API float igImPow_Float(float x,float y); 4102CIMGUI_API double igImPow_double(double x,double y); 4103CIMGUI_API float igImLog_Float(float x); 4104CIMGUI_API double igImLog_double(double x); 4105CIMGUI_API int igImAbs_Int(int x); 4106CIMGUI_API float igImAbs_Float(float x); 4107CIMGUI_API double igImAbs_double(double x); 4108CIMGUI_API float igImSign_Float(float x); 4109CIMGUI_API double igImSign_double(double x); 4110CIMGUI_API float igImRsqrt_Float(float x); 4111CIMGUI_API double igImRsqrt_double(double x); 4112CIMGUI_API void igImMin(ImVec2 *pOut,const ImVec2 lhs,const ImVec2 rhs); 4113CIMGUI_API void igImMax(ImVec2 *pOut,const ImVec2 lhs,const ImVec2 rhs); 4114CIMGUI_API void igImClamp(ImVec2 *pOut,const ImVec2 v,const ImVec2 mn,const ImVec2 mx); 4115CIMGUI_API void igImLerp_Vec2Float(ImVec2 *pOut,const ImVec2 a,const ImVec2 b,float t); 4116CIMGUI_API void igImLerp_Vec2Vec2(ImVec2 *pOut,const ImVec2 a,const ImVec2 b,const ImVec2 t); 4117CIMGUI_API void igImLerp_Vec4(ImVec4 *pOut,const ImVec4 a,const ImVec4 b,float t); 4118CIMGUI_API float igImSaturate(float f); 4119CIMGUI_API float igImLengthSqr_Vec2(const ImVec2 lhs); 4120CIMGUI_API float igImLengthSqr_Vec4(const ImVec4 lhs); 4121CIMGUI_API float igImInvLength(const ImVec2 lhs,float fail_value); 4122CIMGUI_API float igImTrunc_Float(float f); 4123CIMGUI_API void igImTrunc_Vec2(ImVec2 *pOut,const ImVec2 v); 4124CIMGUI_API float igImFloor_Float(float f); 4125CIMGUI_API void igImFloor_Vec2(ImVec2 *pOut,const ImVec2 v); 4126CIMGUI_API int igImModPositive(int a,int b); 4127CIMGUI_API float igImDot(const ImVec2 a,const ImVec2 b); 4128CIMGUI_API void igImRotate(ImVec2 *pOut,const ImVec2 v,float cos_a,float sin_a); 4129CIMGUI_API float igImLinearSweep(float current,float target,float speed); 4130CIMGUI_API void igImMul(ImVec2 *pOut,const ImVec2 lhs,const ImVec2 rhs); 4131CIMGUI_API bool igImIsFloatAboveGuaranteedIntegerPrecision(float f); 4132CIMGUI_API float igImExponentialMovingAverage(float avg,float sample,int n); 4133CIMGUI_API void igImBezierCubicCalc(ImVec2 *pOut,const ImVec2 p1,const ImVec2 p2,const ImVec2 p3,const ImVec2 p4,float t); 4134CIMGUI_API void igImBezierCubicClosestPoint(ImVec2 *pOut,const ImVec2 p1,const ImVec2 p2,const ImVec2 p3,const ImVec2 p4,const ImVec2 p,int num_segments); 4135CIMGUI_API void igImBezierCubicClosestPointCasteljau(ImVec2 *pOut,const ImVec2 p1,const ImVec2 p2,const ImVec2 p3,const ImVec2 p4,const ImVec2 p,float tess_tol); 4136CIMGUI_API void igImBezierQuadraticCalc(ImVec2 *pOut,const ImVec2 p1,const ImVec2 p2,const ImVec2 p3,float t); 4137CIMGUI_API void igImLineClosestPoint(ImVec2 *pOut,const ImVec2 a,const ImVec2 b,const ImVec2 p); 4138CIMGUI_API bool igImTriangleContainsPoint(const ImVec2 a,const ImVec2 b,const ImVec2 c,const ImVec2 p); 4139CIMGUI_API void igImTriangleClosestPoint(ImVec2 *pOut,const ImVec2 a,const ImVec2 b,const ImVec2 c,const ImVec2 p); 4140CIMGUI_API void igImTriangleBarycentricCoords(const ImVec2 a,const ImVec2 b,const ImVec2 c,const ImVec2 p,float* out_u,float* out_v,float* out_w); 4141CIMGUI_API float igImTriangleArea(const ImVec2 a,const ImVec2 b,const ImVec2 c); 4142CIMGUI_API bool igImTriangleIsClockwise(const ImVec2 a,const ImVec2 b,const ImVec2 c); 4143CIMGUI_API ImVec1* ImVec1_ImVec1_Nil(void); 4144CIMGUI_API void ImVec1_destroy(ImVec1* self); 4145CIMGUI_API ImVec1* ImVec1_ImVec1_Float(float _x); 4146CIMGUI_API ImVec2ih* ImVec2ih_ImVec2ih_Nil(void); 4147CIMGUI_API void ImVec2ih_destroy(ImVec2ih* self); 4148CIMGUI_API ImVec2ih* ImVec2ih_ImVec2ih_short(short _x,short _y); 4149CIMGUI_API ImVec2ih* ImVec2ih_ImVec2ih_Vec2(const ImVec2 rhs); 4150CIMGUI_API ImRect* ImRect_ImRect_Nil(void); 4151CIMGUI_API void ImRect_destroy(ImRect* self); 4152CIMGUI_API ImRect* ImRect_ImRect_Vec2(const ImVec2 min,const ImVec2 max); 4153CIMGUI_API ImRect* ImRect_ImRect_Vec4(const ImVec4 v); 4154CIMGUI_API ImRect* ImRect_ImRect_Float(float x1,float y1,float x2,float y2); 4155CIMGUI_API void ImRect_GetCenter(ImVec2 *pOut,ImRect* self); 4156CIMGUI_API void ImRect_GetSize(ImVec2 *pOut,ImRect* self); 4157CIMGUI_API float ImRect_GetWidth(ImRect* self); 4158CIMGUI_API float ImRect_GetHeight(ImRect* self); 4159CIMGUI_API float ImRect_GetArea(ImRect* self); 4160CIMGUI_API void ImRect_GetTL(ImVec2 *pOut,ImRect* self); 4161CIMGUI_API void ImRect_GetTR(ImVec2 *pOut,ImRect* self); 4162CIMGUI_API void ImRect_GetBL(ImVec2 *pOut,ImRect* self); 4163CIMGUI_API void ImRect_GetBR(ImVec2 *pOut,ImRect* self); 4164CIMGUI_API bool ImRect_Contains_Vec2(ImRect* self,const ImVec2 p); 4165CIMGUI_API bool ImRect_Contains_Rect(ImRect* self,const ImRect r); 4166CIMGUI_API bool ImRect_ContainsWithPad(ImRect* self,const ImVec2 p,const ImVec2 pad); 4167CIMGUI_API bool ImRect_Overlaps(ImRect* self,const ImRect r); 4168CIMGUI_API void ImRect_Add_Vec2(ImRect* self,const ImVec2 p); 4169CIMGUI_API void ImRect_Add_Rect(ImRect* self,const ImRect r); 4170CIMGUI_API void ImRect_Expand_Float(ImRect* self,const float amount); 4171CIMGUI_API void ImRect_Expand_Vec2(ImRect* self,const ImVec2 amount); 4172CIMGUI_API void ImRect_Translate(ImRect* self,const ImVec2 d); 4173CIMGUI_API void ImRect_TranslateX(ImRect* self,float dx); 4174CIMGUI_API void ImRect_TranslateY(ImRect* self,float dy); 4175CIMGUI_API void ImRect_ClipWith(ImRect* self,const ImRect r); 4176CIMGUI_API void ImRect_ClipWithFull(ImRect* self,const ImRect r); 4177CIMGUI_API void ImRect_Floor(ImRect* self); 4178CIMGUI_API bool ImRect_IsInverted(ImRect* self); 4179CIMGUI_API void ImRect_ToVec4(ImVec4 *pOut,ImRect* self); 4180CIMGUI_API size_t igImBitArrayGetStorageSizeInBytes(int bitcount); 4181CIMGUI_API void igImBitArrayClearAllBits(ImU32* arr,int bitcount); 4182CIMGUI_API bool igImBitArrayTestBit(const ImU32* arr,int n); 4183CIMGUI_API void igImBitArrayClearBit(ImU32* arr,int n); 4184CIMGUI_API void igImBitArraySetBit(ImU32* arr,int n); 4185CIMGUI_API void igImBitArraySetBitRange(ImU32* arr,int n,int n2); 4186CIMGUI_API void ImBitVector_Create(ImBitVector* self,int sz); 4187CIMGUI_API void ImBitVector_Clear(ImBitVector* self); 4188CIMGUI_API bool ImBitVector_TestBit(ImBitVector* self,int n); 4189CIMGUI_API void ImBitVector_SetBit(ImBitVector* self,int n); 4190CIMGUI_API void ImBitVector_ClearBit(ImBitVector* self,int n); 4191CIMGUI_API void ImGuiTextIndex_clear(ImGuiTextIndex* self); 4192CIMGUI_API int ImGuiTextIndex_size(ImGuiTextIndex* self); 4193CIMGUI_API const char* ImGuiTextIndex_get_line_begin(ImGuiTextIndex* self,const char* base,int n); 4194CIMGUI_API const char* ImGuiTextIndex_get_line_end(ImGuiTextIndex* self,const char* base,int n); 4195CIMGUI_API void ImGuiTextIndex_append(ImGuiTextIndex* self,const char* base,int old_size,int new_size); 4196CIMGUI_API ImDrawListSharedData* ImDrawListSharedData_ImDrawListSharedData(void); 4197CIMGUI_API void ImDrawListSharedData_destroy(ImDrawListSharedData* self); 4198CIMGUI_API void ImDrawListSharedData_SetCircleTessellationMaxError(ImDrawListSharedData* self,float max_error); 4199CIMGUI_API ImDrawDataBuilder* ImDrawDataBuilder_ImDrawDataBuilder(void); 4200CIMGUI_API void ImDrawDataBuilder_destroy(ImDrawDataBuilder* self); 4201CIMGUI_API void* ImGuiDataVarInfo_GetVarPtr(ImGuiDataVarInfo* self,void* parent); 4202CIMGUI_API ImGuiStyleMod* ImGuiStyleMod_ImGuiStyleMod_Int(ImGuiStyleVar idx,int v); 4203CIMGUI_API void ImGuiStyleMod_destroy(ImGuiStyleMod* self); 4204CIMGUI_API ImGuiStyleMod* ImGuiStyleMod_ImGuiStyleMod_Float(ImGuiStyleVar idx,float v); 4205CIMGUI_API ImGuiStyleMod* ImGuiStyleMod_ImGuiStyleMod_Vec2(ImGuiStyleVar idx,ImVec2 v); 4206CIMGUI_API ImGuiComboPreviewData* ImGuiComboPreviewData_ImGuiComboPreviewData(void); 4207CIMGUI_API void ImGuiComboPreviewData_destroy(ImGuiComboPreviewData* self); 4208CIMGUI_API ImGuiMenuColumns* ImGuiMenuColumns_ImGuiMenuColumns(void); 4209CIMGUI_API void ImGuiMenuColumns_destroy(ImGuiMenuColumns* self); 4210CIMGUI_API void ImGuiMenuColumns_Update(ImGuiMenuColumns* self,float spacing,bool window_reappearing); 4211CIMGUI_API float ImGuiMenuColumns_DeclColumns(ImGuiMenuColumns* self,float w_icon,float w_label,float w_shortcut,float w_mark); 4212CIMGUI_API void ImGuiMenuColumns_CalcNextTotalWidth(ImGuiMenuColumns* self,bool update_offsets); 4213CIMGUI_API ImGuiInputTextDeactivatedState* ImGuiInputTextDeactivatedState_ImGuiInputTextDeactivatedState(void); 4214CIMGUI_API void ImGuiInputTextDeactivatedState_destroy(ImGuiInputTextDeactivatedState* self); 4215CIMGUI_API void ImGuiInputTextDeactivatedState_ClearFreeMemory(ImGuiInputTextDeactivatedState* self); 4216CIMGUI_API ImGuiInputTextState* ImGuiInputTextState_ImGuiInputTextState(void); 4217CIMGUI_API void ImGuiInputTextState_destroy(ImGuiInputTextState* self); 4218CIMGUI_API void ImGuiInputTextState_ClearText(ImGuiInputTextState* self); 4219CIMGUI_API void ImGuiInputTextState_ClearFreeMemory(ImGuiInputTextState* self); 4220CIMGUI_API int ImGuiInputTextState_GetUndoAvailCount(ImGuiInputTextState* self); 4221CIMGUI_API int ImGuiInputTextState_GetRedoAvailCount(ImGuiInputTextState* self); 4222CIMGUI_API void ImGuiInputTextState_OnKeyPressed(ImGuiInputTextState* self,int key); 4223CIMGUI_API void ImGuiInputTextState_CursorAnimReset(ImGuiInputTextState* self); 4224CIMGUI_API void ImGuiInputTextState_CursorClamp(ImGuiInputTextState* self); 4225CIMGUI_API bool ImGuiInputTextState_HasSelection(ImGuiInputTextState* self); 4226CIMGUI_API void ImGuiInputTextState_ClearSelection(ImGuiInputTextState* self); 4227CIMGUI_API int ImGuiInputTextState_GetCursorPos(ImGuiInputTextState* self); 4228CIMGUI_API int ImGuiInputTextState_GetSelectionStart(ImGuiInputTextState* self); 4229CIMGUI_API int ImGuiInputTextState_GetSelectionEnd(ImGuiInputTextState* self); 4230CIMGUI_API void ImGuiInputTextState_SelectAll(ImGuiInputTextState* self); 4231CIMGUI_API void ImGuiInputTextState_ReloadUserBufAndSelectAll(ImGuiInputTextState* self); 4232CIMGUI_API void ImGuiInputTextState_ReloadUserBufAndKeepSelection(ImGuiInputTextState* self); 4233CIMGUI_API void ImGuiInputTextState_ReloadUserBufAndMoveToEnd(ImGuiInputTextState* self); 4234CIMGUI_API ImGuiNextWindowData* ImGuiNextWindowData_ImGuiNextWindowData(void); 4235CIMGUI_API void ImGuiNextWindowData_destroy(ImGuiNextWindowData* self); 4236CIMGUI_API void ImGuiNextWindowData_ClearFlags(ImGuiNextWindowData* self); 4237CIMGUI_API ImGuiNextItemData* ImGuiNextItemData_ImGuiNextItemData(void); 4238CIMGUI_API void ImGuiNextItemData_destroy(ImGuiNextItemData* self); 4239CIMGUI_API void ImGuiNextItemData_ClearFlags(ImGuiNextItemData* self); 4240CIMGUI_API ImGuiLastItemData* ImGuiLastItemData_ImGuiLastItemData(void); 4241CIMGUI_API void ImGuiLastItemData_destroy(ImGuiLastItemData* self); 4242CIMGUI_API ImGuiStackSizes* ImGuiStackSizes_ImGuiStackSizes(void); 4243CIMGUI_API void ImGuiStackSizes_destroy(ImGuiStackSizes* self); 4244CIMGUI_API void ImGuiStackSizes_SetToContextState(ImGuiStackSizes* self,ImGuiContext* ctx); 4245CIMGUI_API void ImGuiStackSizes_CompareWithContextState(ImGuiStackSizes* self,ImGuiContext* ctx); 4246CIMGUI_API ImGuiPtrOrIndex* ImGuiPtrOrIndex_ImGuiPtrOrIndex_Ptr(void* ptr); 4247CIMGUI_API void ImGuiPtrOrIndex_destroy(ImGuiPtrOrIndex* self); 4248CIMGUI_API ImGuiPtrOrIndex* ImGuiPtrOrIndex_ImGuiPtrOrIndex_Int(int index); 4249CIMGUI_API ImGuiPopupData* ImGuiPopupData_ImGuiPopupData(void); 4250CIMGUI_API void ImGuiPopupData_destroy(ImGuiPopupData* self); 4251CIMGUI_API ImGuiInputEvent* ImGuiInputEvent_ImGuiInputEvent(void); 4252CIMGUI_API void ImGuiInputEvent_destroy(ImGuiInputEvent* self); 4253CIMGUI_API ImGuiKeyRoutingData* ImGuiKeyRoutingData_ImGuiKeyRoutingData(void); 4254CIMGUI_API void ImGuiKeyRoutingData_destroy(ImGuiKeyRoutingData* self); 4255CIMGUI_API ImGuiKeyRoutingTable* ImGuiKeyRoutingTable_ImGuiKeyRoutingTable(void); 4256CIMGUI_API void ImGuiKeyRoutingTable_destroy(ImGuiKeyRoutingTable* self); 4257CIMGUI_API void ImGuiKeyRoutingTable_Clear(ImGuiKeyRoutingTable* self); 4258CIMGUI_API ImGuiKeyOwnerData* ImGuiKeyOwnerData_ImGuiKeyOwnerData(void); 4259CIMGUI_API void ImGuiKeyOwnerData_destroy(ImGuiKeyOwnerData* self); 4260CIMGUI_API ImGuiListClipperRange ImGuiListClipperRange_FromIndices(int min,int max); 4261CIMGUI_API ImGuiListClipperRange ImGuiListClipperRange_FromPositions(float y1,float y2,int off_min,int off_max); 4262CIMGUI_API ImGuiListClipperData* ImGuiListClipperData_ImGuiListClipperData(void); 4263CIMGUI_API void ImGuiListClipperData_destroy(ImGuiListClipperData* self); 4264CIMGUI_API void ImGuiListClipperData_Reset(ImGuiListClipperData* self,ImGuiListClipper* clipper); 4265CIMGUI_API ImGuiNavItemData* ImGuiNavItemData_ImGuiNavItemData(void); 4266CIMGUI_API void ImGuiNavItemData_destroy(ImGuiNavItemData* self); 4267CIMGUI_API void ImGuiNavItemData_Clear(ImGuiNavItemData* self); 4268CIMGUI_API ImGuiTypingSelectState* ImGuiTypingSelectState_ImGuiTypingSelectState(void); 4269CIMGUI_API void ImGuiTypingSelectState_destroy(ImGuiTypingSelectState* self); 4270CIMGUI_API void ImGuiTypingSelectState_Clear(ImGuiTypingSelectState* self); 4271CIMGUI_API ImGuiOldColumnData* ImGuiOldColumnData_ImGuiOldColumnData(void); 4272CIMGUI_API void ImGuiOldColumnData_destroy(ImGuiOldColumnData* self); 4273CIMGUI_API ImGuiOldColumns* ImGuiOldColumns_ImGuiOldColumns(void); 4274CIMGUI_API void ImGuiOldColumns_destroy(ImGuiOldColumns* self); 4275CIMGUI_API ImGuiDockNode* ImGuiDockNode_ImGuiDockNode(ImGuiID id); 4276CIMGUI_API void ImGuiDockNode_destroy(ImGuiDockNode* self); 4277CIMGUI_API bool ImGuiDockNode_IsRootNode(ImGuiDockNode* self); 4278CIMGUI_API bool ImGuiDockNode_IsDockSpace(ImGuiDockNode* self); 4279CIMGUI_API bool ImGuiDockNode_IsFloatingNode(ImGuiDockNode* self); 4280CIMGUI_API bool ImGuiDockNode_IsCentralNode(ImGuiDockNode* self); 4281CIMGUI_API bool ImGuiDockNode_IsHiddenTabBar(ImGuiDockNode* self); 4282CIMGUI_API bool ImGuiDockNode_IsNoTabBar(ImGuiDockNode* self); 4283CIMGUI_API bool ImGuiDockNode_IsSplitNode(ImGuiDockNode* self); 4284CIMGUI_API bool ImGuiDockNode_IsLeafNode(ImGuiDockNode* self); 4285CIMGUI_API bool ImGuiDockNode_IsEmpty(ImGuiDockNode* self); 4286CIMGUI_API void ImGuiDockNode_Rect(ImRect *pOut,ImGuiDockNode* self); 4287CIMGUI_API void ImGuiDockNode_SetLocalFlags(ImGuiDockNode* self,ImGuiDockNodeFlags flags); 4288CIMGUI_API void ImGuiDockNode_UpdateMergedFlags(ImGuiDockNode* self); 4289CIMGUI_API ImGuiDockContext* ImGuiDockContext_ImGuiDockContext(void); 4290CIMGUI_API void ImGuiDockContext_destroy(ImGuiDockContext* self); 4291CIMGUI_API ImGuiViewportP* ImGuiViewportP_ImGuiViewportP(void); 4292CIMGUI_API void ImGuiViewportP_destroy(ImGuiViewportP* self); 4293CIMGUI_API void ImGuiViewportP_ClearRequestFlags(ImGuiViewportP* self); 4294CIMGUI_API void ImGuiViewportP_CalcWorkRectPos(ImVec2 *pOut,ImGuiViewportP* self,const ImVec2 off_min); 4295CIMGUI_API void ImGuiViewportP_CalcWorkRectSize(ImVec2 *pOut,ImGuiViewportP* self,const ImVec2 off_min,const ImVec2 off_max); 4296CIMGUI_API void ImGuiViewportP_UpdateWorkRect(ImGuiViewportP* self); 4297CIMGUI_API void ImGuiViewportP_GetMainRect(ImRect *pOut,ImGuiViewportP* self); 4298CIMGUI_API void ImGuiViewportP_GetWorkRect(ImRect *pOut,ImGuiViewportP* self); 4299CIMGUI_API void ImGuiViewportP_GetBuildWorkRect(ImRect *pOut,ImGuiViewportP* self); 4300CIMGUI_API ImGuiWindowSettings* ImGuiWindowSettings_ImGuiWindowSettings(void); 4301CIMGUI_API void ImGuiWindowSettings_destroy(ImGuiWindowSettings* self); 4302CIMGUI_API char* ImGuiWindowSettings_GetName(ImGuiWindowSettings* self); 4303CIMGUI_API ImGuiSettingsHandler* ImGuiSettingsHandler_ImGuiSettingsHandler(void); 4304CIMGUI_API void ImGuiSettingsHandler_destroy(ImGuiSettingsHandler* self); 4305CIMGUI_API ImGuiDebugAllocInfo* ImGuiDebugAllocInfo_ImGuiDebugAllocInfo(void); 4306CIMGUI_API void ImGuiDebugAllocInfo_destroy(ImGuiDebugAllocInfo* self); 4307CIMGUI_API ImGuiStackLevelInfo* ImGuiStackLevelInfo_ImGuiStackLevelInfo(void); 4308CIMGUI_API void ImGuiStackLevelInfo_destroy(ImGuiStackLevelInfo* self); 4309CIMGUI_API ImGuiIDStackTool* ImGuiIDStackTool_ImGuiIDStackTool(void); 4310CIMGUI_API void ImGuiIDStackTool_destroy(ImGuiIDStackTool* self); 4311CIMGUI_API ImGuiContextHook* ImGuiContextHook_ImGuiContextHook(void); 4312CIMGUI_API void ImGuiContextHook_destroy(ImGuiContextHook* self); 4313CIMGUI_API ImGuiContext* ImGuiContext_ImGuiContext(ImFontAtlas* shared_font_atlas); 4314CIMGUI_API void ImGuiContext_destroy(ImGuiContext* self); 4315CIMGUI_API ImGuiWindow* ImGuiWindow_ImGuiWindow(ImGuiContext* context,const char* name); 4316CIMGUI_API void ImGuiWindow_destroy(ImGuiWindow* self); 4317CIMGUI_API ImGuiID ImGuiWindow_GetID_Str(ImGuiWindow* self,const char* str,const char* str_end); 4318CIMGUI_API ImGuiID ImGuiWindow_GetID_Ptr(ImGuiWindow* self,const void* ptr); 4319CIMGUI_API ImGuiID ImGuiWindow_GetID_Int(ImGuiWindow* self,int n); 4320CIMGUI_API ImGuiID ImGuiWindow_GetIDFromRectangle(ImGuiWindow* self,const ImRect r_abs); 4321CIMGUI_API void ImGuiWindow_Rect(ImRect *pOut,ImGuiWindow* self); 4322CIMGUI_API float ImGuiWindow_CalcFontSize(ImGuiWindow* self); 4323CIMGUI_API void ImGuiWindow_TitleBarRect(ImRect *pOut,ImGuiWindow* self); 4324CIMGUI_API void ImGuiWindow_MenuBarRect(ImRect *pOut,ImGuiWindow* self); 4325CIMGUI_API ImGuiTabItem* ImGuiTabItem_ImGuiTabItem(void); 4326CIMGUI_API void ImGuiTabItem_destroy(ImGuiTabItem* self); 4327CIMGUI_API ImGuiTabBar* ImGuiTabBar_ImGuiTabBar(void); 4328CIMGUI_API void ImGuiTabBar_destroy(ImGuiTabBar* self); 4329CIMGUI_API ImGuiTableColumn* ImGuiTableColumn_ImGuiTableColumn(void); 4330CIMGUI_API void ImGuiTableColumn_destroy(ImGuiTableColumn* self); 4331CIMGUI_API ImGuiTableInstanceData* ImGuiTableInstanceData_ImGuiTableInstanceData(void); 4332CIMGUI_API void ImGuiTableInstanceData_destroy(ImGuiTableInstanceData* self); 4333CIMGUI_API ImGuiTable* ImGuiTable_ImGuiTable(void); 4334CIMGUI_API void ImGuiTable_destroy(ImGuiTable* self); 4335CIMGUI_API ImGuiTableTempData* ImGuiTableTempData_ImGuiTableTempData(void); 4336CIMGUI_API void ImGuiTableTempData_destroy(ImGuiTableTempData* self); 4337CIMGUI_API ImGuiTableColumnSettings* ImGuiTableColumnSettings_ImGuiTableColumnSettings(void); 4338CIMGUI_API void ImGuiTableColumnSettings_destroy(ImGuiTableColumnSettings* self); 4339CIMGUI_API ImGuiTableSettings* ImGuiTableSettings_ImGuiTableSettings(void); 4340CIMGUI_API void ImGuiTableSettings_destroy(ImGuiTableSettings* self); 4341CIMGUI_API ImGuiTableColumnSettings* ImGuiTableSettings_GetColumnSettings(ImGuiTableSettings* self); 4342CIMGUI_API ImGuiWindow* igGetCurrentWindowRead(void); 4343CIMGUI_API ImGuiWindow* igGetCurrentWindow(void); 4344CIMGUI_API ImGuiWindow* igFindWindowByID(ImGuiID id); 4345CIMGUI_API ImGuiWindow* igFindWindowByName(const char* name); 4346CIMGUI_API void igUpdateWindowParentAndRootLinks(ImGuiWindow* window,ImGuiWindowFlags flags,ImGuiWindow* parent_window); 4347CIMGUI_API void igUpdateWindowSkipRefresh(ImGuiWindow* window); 4348CIMGUI_API void igCalcWindowNextAutoFitSize(ImVec2 *pOut,ImGuiWindow* window); 4349CIMGUI_API bool igIsWindowChildOf(ImGuiWindow* window,ImGuiWindow* potential_parent,bool popup_hierarchy,bool dock_hierarchy); 4350CIMGUI_API bool igIsWindowWithinBeginStackOf(ImGuiWindow* window,ImGuiWindow* potential_parent); 4351CIMGUI_API bool igIsWindowAbove(ImGuiWindow* potential_above,ImGuiWindow* potential_below); 4352CIMGUI_API bool igIsWindowNavFocusable(ImGuiWindow* window); 4353CIMGUI_API void igSetWindowPos_WindowPtr(ImGuiWindow* window,const ImVec2 pos,ImGuiCond cond); 4354CIMGUI_API void igSetWindowSize_WindowPtr(ImGuiWindow* window,const ImVec2 size,ImGuiCond cond); 4355CIMGUI_API void igSetWindowCollapsed_WindowPtr(ImGuiWindow* window,bool collapsed,ImGuiCond cond); 4356CIMGUI_API void igSetWindowHitTestHole(ImGuiWindow* window,const ImVec2 pos,const ImVec2 size); 4357CIMGUI_API void igSetWindowHiddenAndSkipItemsForCurrentFrame(ImGuiWindow* window); 4358CIMGUI_API void igSetWindowParentWindowForFocusRoute(ImGuiWindow* window,ImGuiWindow* parent_window); 4359CIMGUI_API void igWindowRectAbsToRel(ImRect *pOut,ImGuiWindow* window,const ImRect r); 4360CIMGUI_API void igWindowRectRelToAbs(ImRect *pOut,ImGuiWindow* window,const ImRect r); 4361CIMGUI_API void igWindowPosRelToAbs(ImVec2 *pOut,ImGuiWindow* window,const ImVec2 p); 4362CIMGUI_API void igFocusWindow(ImGuiWindow* window,ImGuiFocusRequestFlags flags); 4363CIMGUI_API void igFocusTopMostWindowUnderOne(ImGuiWindow* under_this_window,ImGuiWindow* ignore_window,ImGuiViewport* filter_viewport,ImGuiFocusRequestFlags flags); 4364CIMGUI_API void igBringWindowToFocusFront(ImGuiWindow* window); 4365CIMGUI_API void igBringWindowToDisplayFront(ImGuiWindow* window); 4366CIMGUI_API void igBringWindowToDisplayBack(ImGuiWindow* window); 4367CIMGUI_API void igBringWindowToDisplayBehind(ImGuiWindow* window,ImGuiWindow* above_window); 4368CIMGUI_API int igFindWindowDisplayIndex(ImGuiWindow* window); 4369CIMGUI_API ImGuiWindow* igFindBottomMostVisibleWindowWithinBeginStack(ImGuiWindow* window); 4370CIMGUI_API void igSetNextWindowRefreshPolicy(ImGuiWindowRefreshFlags flags); 4371CIMGUI_API void igSetCurrentFont(ImFont* font); 4372CIMGUI_API ImFont* igGetDefaultFont(void); 4373CIMGUI_API ImDrawList* igGetForegroundDrawList_WindowPtr(ImGuiWindow* window); 4374CIMGUI_API void igAddDrawListToDrawDataEx(ImDrawData* draw_data,ImVector_ImDrawListPtr* out_list,ImDrawList* draw_list); 4375CIMGUI_API void igInitialize(void); 4376CIMGUI_API void igShutdown(void); 4377CIMGUI_API void igUpdateInputEvents(bool trickle_fast_inputs); 4378CIMGUI_API void igUpdateHoveredWindowAndCaptureFlags(void); 4379CIMGUI_API void igFindHoveredWindowEx(const ImVec2 pos,bool find_first_and_in_any_viewport,ImGuiWindow** out_hovered_window,ImGuiWindow** out_hovered_window_under_moving_window); 4380CIMGUI_API void igStartMouseMovingWindow(ImGuiWindow* window); 4381CIMGUI_API void igStartMouseMovingWindowOrNode(ImGuiWindow* window,ImGuiDockNode* node,bool undock); 4382CIMGUI_API void igUpdateMouseMovingWindowNewFrame(void); 4383CIMGUI_API void igUpdateMouseMovingWindowEndFrame(void); 4384CIMGUI_API ImGuiID igAddContextHook(ImGuiContext* context,const ImGuiContextHook* hook); 4385CIMGUI_API void igRemoveContextHook(ImGuiContext* context,ImGuiID hook_to_remove); 4386CIMGUI_API void igCallContextHooks(ImGuiContext* context,ImGuiContextHookType type); 4387CIMGUI_API void igTranslateWindowsInViewport(ImGuiViewportP* viewport,const ImVec2 old_pos,const ImVec2 new_pos); 4388CIMGUI_API void igScaleWindowsInViewport(ImGuiViewportP* viewport,float scale); 4389CIMGUI_API void igDestroyPlatformWindow(ImGuiViewportP* viewport); 4390CIMGUI_API void igSetWindowViewport(ImGuiWindow* window,ImGuiViewportP* viewport); 4391CIMGUI_API void igSetCurrentViewport(ImGuiWindow* window,ImGuiViewportP* viewport); 4392CIMGUI_API const ImGuiPlatformMonitor* igGetViewportPlatformMonitor(ImGuiViewport* viewport); 4393CIMGUI_API ImGuiViewportP* igFindHoveredViewportFromPlatformWindowStack(const ImVec2 mouse_platform_pos); 4394CIMGUI_API void igMarkIniSettingsDirty_Nil(void); 4395CIMGUI_API void igMarkIniSettingsDirty_WindowPtr(ImGuiWindow* window); 4396CIMGUI_API void igClearIniSettings(void); 4397CIMGUI_API void igAddSettingsHandler(const ImGuiSettingsHandler* handler); 4398CIMGUI_API void igRemoveSettingsHandler(const char* type_name); 4399CIMGUI_API ImGuiSettingsHandler* igFindSettingsHandler(const char* type_name); 4400CIMGUI_API ImGuiWindowSettings* igCreateNewWindowSettings(const char* name); 4401CIMGUI_API ImGuiWindowSettings* igFindWindowSettingsByID(ImGuiID id); 4402CIMGUI_API ImGuiWindowSettings* igFindWindowSettingsByWindow(ImGuiWindow* window); 4403CIMGUI_API void igClearWindowSettings(const char* name); 4404CIMGUI_API void igLocalizeRegisterEntries(const ImGuiLocEntry* entries,int count); 4405CIMGUI_API const char* igLocalizeGetMsg(ImGuiLocKey key); 4406CIMGUI_API void igSetScrollX_WindowPtr(ImGuiWindow* window,float scroll_x); 4407CIMGUI_API void igSetScrollY_WindowPtr(ImGuiWindow* window,float scroll_y); 4408CIMGUI_API void igSetScrollFromPosX_WindowPtr(ImGuiWindow* window,float local_x,float center_x_ratio); 4409CIMGUI_API void igSetScrollFromPosY_WindowPtr(ImGuiWindow* window,float local_y,float center_y_ratio); 4410CIMGUI_API void igScrollToItem(ImGuiScrollFlags flags); 4411CIMGUI_API void igScrollToRect(ImGuiWindow* window,const ImRect rect,ImGuiScrollFlags flags); 4412CIMGUI_API void igScrollToRectEx(ImVec2 *pOut,ImGuiWindow* window,const ImRect rect,ImGuiScrollFlags flags); 4413CIMGUI_API void igScrollToBringRectIntoView(ImGuiWindow* window,const ImRect rect); 4414CIMGUI_API ImGuiItemStatusFlags igGetItemStatusFlags(void); 4415CIMGUI_API ImGuiItemFlags igGetItemFlags(void); 4416CIMGUI_API ImGuiID igGetActiveID(void); 4417CIMGUI_API ImGuiID igGetFocusID(void); 4418CIMGUI_API void igSetActiveID(ImGuiID id,ImGuiWindow* window); 4419CIMGUI_API void igSetFocusID(ImGuiID id,ImGuiWindow* window); 4420CIMGUI_API void igClearActiveID(void); 4421CIMGUI_API ImGuiID igGetHoveredID(void); 4422CIMGUI_API void igSetHoveredID(ImGuiID id); 4423CIMGUI_API void igKeepAliveID(ImGuiID id); 4424CIMGUI_API void igMarkItemEdited(ImGuiID id); 4425CIMGUI_API void igPushOverrideID(ImGuiID id); 4426CIMGUI_API ImGuiID igGetIDWithSeed_Str(const char* str_id_begin,const char* str_id_end,ImGuiID seed); 4427CIMGUI_API ImGuiID igGetIDWithSeed_Int(int n,ImGuiID seed); 4428CIMGUI_API void igItemSize_Vec2(const ImVec2 size,float text_baseline_y); 4429CIMGUI_API void igItemSize_Rect(const ImRect bb,float text_baseline_y); 4430CIMGUI_API bool igItemAdd(const ImRect bb,ImGuiID id,const ImRect* nav_bb,ImGuiItemFlags extra_flags); 4431CIMGUI_API bool igItemHoverable(const ImRect bb,ImGuiID id,ImGuiItemFlags item_flags); 4432CIMGUI_API bool igIsWindowContentHoverable(ImGuiWindow* window,ImGuiHoveredFlags flags); 4433CIMGUI_API bool igIsClippedEx(const ImRect bb,ImGuiID id); 4434CIMGUI_API void igSetLastItemData(ImGuiID item_id,ImGuiItemFlags in_flags,ImGuiItemStatusFlags status_flags,const ImRect item_rect); 4435CIMGUI_API void igCalcItemSize(ImVec2 *pOut,ImVec2 size,float default_w,float default_h); 4436CIMGUI_API float igCalcWrapWidthForPos(const ImVec2 pos,float wrap_pos_x); 4437CIMGUI_API void igPushMultiItemsWidths(int components,float width_full); 4438CIMGUI_API bool igIsItemToggledSelection(void); 4439CIMGUI_API void igGetContentRegionMaxAbs(ImVec2 *pOut); 4440CIMGUI_API void igShrinkWidths(ImGuiShrinkWidthItem* items,int count,float width_excess); 4441CIMGUI_API void igPushItemFlag(ImGuiItemFlags option,bool enabled); 4442CIMGUI_API void igPopItemFlag(void); 4443CIMGUI_API const ImGuiDataVarInfo* igGetStyleVarInfo(ImGuiStyleVar idx); 4444CIMGUI_API void igBeginDisabledOverrideReenable(void); 4445CIMGUI_API void igEndDisabledOverrideReenable(void); 4446CIMGUI_API void igLogBegin(ImGuiLogType type,int auto_open_depth); 4447CIMGUI_API void igLogToBuffer(int auto_open_depth); 4448CIMGUI_API void igLogRenderedText(const ImVec2* ref_pos,const char* text,const char* text_end); 4449CIMGUI_API void igLogSetNextTextDecoration(const char* prefix,const char* suffix); 4450CIMGUI_API bool igBeginChildEx(const char* name,ImGuiID id,const ImVec2 size_arg,ImGuiChildFlags child_flags,ImGuiWindowFlags window_flags); 4451CIMGUI_API void igOpenPopupEx(ImGuiID id,ImGuiPopupFlags popup_flags); 4452CIMGUI_API void igClosePopupToLevel(int remaining,bool restore_focus_to_window_under_popup); 4453CIMGUI_API void igClosePopupsOverWindow(ImGuiWindow* ref_window,bool restore_focus_to_window_under_popup); 4454CIMGUI_API void igClosePopupsExceptModals(void); 4455CIMGUI_API bool igIsPopupOpen_ID(ImGuiID id,ImGuiPopupFlags popup_flags); 4456CIMGUI_API bool igBeginPopupEx(ImGuiID id,ImGuiWindowFlags extra_flags); 4457CIMGUI_API bool igBeginTooltipEx(ImGuiTooltipFlags tooltip_flags,ImGuiWindowFlags extra_window_flags); 4458CIMGUI_API bool igBeginTooltipHidden(void); 4459CIMGUI_API void igGetPopupAllowedExtentRect(ImRect *pOut,ImGuiWindow* window); 4460CIMGUI_API ImGuiWindow* igGetTopMostPopupModal(void); 4461CIMGUI_API ImGuiWindow* igGetTopMostAndVisiblePopupModal(void); 4462CIMGUI_API ImGuiWindow* igFindBlockingModal(ImGuiWindow* window); 4463CIMGUI_API void igFindBestWindowPosForPopup(ImVec2 *pOut,ImGuiWindow* window); 4464CIMGUI_API void igFindBestWindowPosForPopupEx(ImVec2 *pOut,const ImVec2 ref_pos,const ImVec2 size,ImGuiDir* last_dir,const ImRect r_outer,const ImRect r_avoid,ImGuiPopupPositionPolicy policy); 4465CIMGUI_API bool igBeginViewportSideBar(const char* name,ImGuiViewport* viewport,ImGuiDir dir,float size,ImGuiWindowFlags window_flags); 4466CIMGUI_API bool igBeginMenuEx(const char* label,const char* icon,bool enabled); 4467CIMGUI_API bool igMenuItemEx(const char* label,const char* icon,const char* shortcut,bool selected,bool enabled); 4468CIMGUI_API bool igBeginComboPopup(ImGuiID popup_id,const ImRect bb,ImGuiComboFlags flags); 4469CIMGUI_API bool igBeginComboPreview(void); 4470CIMGUI_API void igEndComboPreview(void); 4471CIMGUI_API void igNavInitWindow(ImGuiWindow* window,bool force_reinit); 4472CIMGUI_API void igNavInitRequestApplyResult(void); 4473CIMGUI_API bool igNavMoveRequestButNoResultYet(void); 4474CIMGUI_API void igNavMoveRequestSubmit(ImGuiDir move_dir,ImGuiDir clip_dir,ImGuiNavMoveFlags move_flags,ImGuiScrollFlags scroll_flags); 4475CIMGUI_API void igNavMoveRequestForward(ImGuiDir move_dir,ImGuiDir clip_dir,ImGuiNavMoveFlags move_flags,ImGuiScrollFlags scroll_flags); 4476CIMGUI_API void igNavMoveRequestResolveWithLastItem(ImGuiNavItemData* result); 4477CIMGUI_API void igNavMoveRequestResolveWithPastTreeNode(ImGuiNavItemData* result,ImGuiNavTreeNodeData* tree_node_data); 4478CIMGUI_API void igNavMoveRequestCancel(void); 4479CIMGUI_API void igNavMoveRequestApplyResult(void); 4480CIMGUI_API void igNavMoveRequestTryWrapping(ImGuiWindow* window,ImGuiNavMoveFlags move_flags); 4481CIMGUI_API void igNavHighlightActivated(ImGuiID id); 4482CIMGUI_API void igNavClearPreferredPosForAxis(ImGuiAxis axis); 4483CIMGUI_API void igNavRestoreHighlightAfterMove(void); 4484CIMGUI_API void igNavUpdateCurrentWindowIsScrollPushableX(void); 4485CIMGUI_API void igSetNavWindow(ImGuiWindow* window); 4486CIMGUI_API void igSetNavID(ImGuiID id,ImGuiNavLayer nav_layer,ImGuiID focus_scope_id,const ImRect rect_rel); 4487CIMGUI_API void igSetNavFocusScope(ImGuiID focus_scope_id); 4488CIMGUI_API void igFocusItem(void); 4489CIMGUI_API void igActivateItemByID(ImGuiID id); 4490CIMGUI_API bool igIsNamedKey(ImGuiKey key); 4491CIMGUI_API bool igIsNamedKeyOrMod(ImGuiKey key); 4492CIMGUI_API bool igIsLegacyKey(ImGuiKey key); 4493CIMGUI_API bool igIsKeyboardKey(ImGuiKey key); 4494CIMGUI_API bool igIsGamepadKey(ImGuiKey key); 4495CIMGUI_API bool igIsMouseKey(ImGuiKey key); 4496CIMGUI_API bool igIsAliasKey(ImGuiKey key); 4497CIMGUI_API bool igIsModKey(ImGuiKey key); 4498CIMGUI_API ImGuiKeyChord igFixupKeyChord(ImGuiKeyChord key_chord); 4499CIMGUI_API ImGuiKey igConvertSingleModFlagToKey(ImGuiKey key); 4500CIMGUI_API ImGuiKeyData* igGetKeyData_ContextPtr(ImGuiContext* ctx,ImGuiKey key); 4501CIMGUI_API ImGuiKeyData* igGetKeyData_Key(ImGuiKey key); 4502CIMGUI_API const char* igGetKeyChordName(ImGuiKeyChord key_chord); 4503CIMGUI_API ImGuiKey igMouseButtonToKey(ImGuiMouseButton button); 4504CIMGUI_API bool igIsMouseDragPastThreshold(ImGuiMouseButton button,float lock_threshold); 4505CIMGUI_API void igGetKeyMagnitude2d(ImVec2 *pOut,ImGuiKey key_left,ImGuiKey key_right,ImGuiKey key_up,ImGuiKey key_down); 4506CIMGUI_API float igGetNavTweakPressedAmount(ImGuiAxis axis); 4507CIMGUI_API int igCalcTypematicRepeatAmount(float t0,float t1,float repeat_delay,float repeat_rate); 4508CIMGUI_API void igGetTypematicRepeatRate(ImGuiInputFlags flags,float* repeat_delay,float* repeat_rate); 4509CIMGUI_API void igTeleportMousePos(const ImVec2 pos); 4510CIMGUI_API void igSetActiveIdUsingAllKeyboardKeys(void); 4511CIMGUI_API bool igIsActiveIdUsingNavDir(ImGuiDir dir); 4512CIMGUI_API ImGuiID igGetKeyOwner(ImGuiKey key); 4513CIMGUI_API void igSetKeyOwner(ImGuiKey key,ImGuiID owner_id,ImGuiInputFlags flags); 4514CIMGUI_API void igSetKeyOwnersForKeyChord(ImGuiKeyChord key,ImGuiID owner_id,ImGuiInputFlags flags); 4515CIMGUI_API void igSetItemKeyOwner(ImGuiKey key,ImGuiInputFlags flags); 4516CIMGUI_API bool igTestKeyOwner(ImGuiKey key,ImGuiID owner_id); 4517CIMGUI_API ImGuiKeyOwnerData* igGetKeyOwnerData(ImGuiContext* ctx,ImGuiKey key); 4518CIMGUI_API bool igIsKeyDown_ID(ImGuiKey key,ImGuiID owner_id); 4519CIMGUI_API bool igIsKeyPressed_InputFlags(ImGuiKey key,ImGuiInputFlags flags,ImGuiID owner_id); 4520CIMGUI_API bool igIsKeyReleased_ID(ImGuiKey key,ImGuiID owner_id); 4521CIMGUI_API bool igIsKeyChordPressed_InputFlags(ImGuiKeyChord key_chord,ImGuiInputFlags flags,ImGuiID owner_id); 4522CIMGUI_API bool igIsMouseDown_ID(ImGuiMouseButton button,ImGuiID owner_id); 4523CIMGUI_API bool igIsMouseClicked_InputFlags(ImGuiMouseButton button,ImGuiInputFlags flags,ImGuiID owner_id); 4524CIMGUI_API bool igIsMouseReleased_ID(ImGuiMouseButton button,ImGuiID owner_id); 4525CIMGUI_API bool igIsMouseDoubleClicked_ID(ImGuiMouseButton button,ImGuiID owner_id); 4526CIMGUI_API bool igShortcut_ID(ImGuiKeyChord key_chord,ImGuiInputFlags flags,ImGuiID owner_id); 4527CIMGUI_API bool igSetShortcutRouting(ImGuiKeyChord key_chord,ImGuiInputFlags flags,ImGuiID owner_id); 4528CIMGUI_API bool igTestShortcutRouting(ImGuiKeyChord key_chord,ImGuiID owner_id); 4529CIMGUI_API ImGuiKeyRoutingData* igGetShortcutRoutingData(ImGuiKeyChord key_chord); 4530CIMGUI_API void igDockContextInitialize(ImGuiContext* ctx); 4531CIMGUI_API void igDockContextShutdown(ImGuiContext* ctx); 4532CIMGUI_API void igDockContextClearNodes(ImGuiContext* ctx,ImGuiID root_id,bool clear_settings_refs); 4533CIMGUI_API void igDockContextRebuildNodes(ImGuiContext* ctx); 4534CIMGUI_API void igDockContextNewFrameUpdateUndocking(ImGuiContext* ctx); 4535CIMGUI_API void igDockContextNewFrameUpdateDocking(ImGuiContext* ctx); 4536CIMGUI_API void igDockContextEndFrame(ImGuiContext* ctx); 4537CIMGUI_API ImGuiID igDockContextGenNodeID(ImGuiContext* ctx); 4538CIMGUI_API void igDockContextQueueDock(ImGuiContext* ctx,ImGuiWindow* target,ImGuiDockNode* target_node,ImGuiWindow* payload,ImGuiDir split_dir,float split_ratio,bool split_outer); 4539CIMGUI_API void igDockContextQueueUndockWindow(ImGuiContext* ctx,ImGuiWindow* window); 4540CIMGUI_API void igDockContextQueueUndockNode(ImGuiContext* ctx,ImGuiDockNode* node); 4541CIMGUI_API void igDockContextProcessUndockWindow(ImGuiContext* ctx,ImGuiWindow* window,bool clear_persistent_docking_ref); 4542CIMGUI_API void igDockContextProcessUndockNode(ImGuiContext* ctx,ImGuiDockNode* node); 4543CIMGUI_API bool igDockContextCalcDropPosForDocking(ImGuiWindow* target,ImGuiDockNode* target_node,ImGuiWindow* payload_window,ImGuiDockNode* payload_node,ImGuiDir split_dir,bool split_outer,ImVec2* out_pos); 4544CIMGUI_API ImGuiDockNode* igDockContextFindNodeByID(ImGuiContext* ctx,ImGuiID id); 4545CIMGUI_API void igDockNodeWindowMenuHandler_Default(ImGuiContext* ctx,ImGuiDockNode* node,ImGuiTabBar* tab_bar); 4546CIMGUI_API bool igDockNodeBeginAmendTabBar(ImGuiDockNode* node); 4547CIMGUI_API void igDockNodeEndAmendTabBar(void); 4548CIMGUI_API ImGuiDockNode* igDockNodeGetRootNode(ImGuiDockNode* node); 4549CIMGUI_API bool igDockNodeIsInHierarchyOf(ImGuiDockNode* node,ImGuiDockNode* parent); 4550CIMGUI_API int igDockNodeGetDepth(const ImGuiDockNode* node); 4551CIMGUI_API ImGuiID igDockNodeGetWindowMenuButtonId(const ImGuiDockNode* node); 4552CIMGUI_API ImGuiDockNode* igGetWindowDockNode(void); 4553CIMGUI_API bool igGetWindowAlwaysWantOwnTabBar(ImGuiWindow* window); 4554CIMGUI_API void igBeginDocked(ImGuiWindow* window,bool* p_open); 4555CIMGUI_API void igBeginDockableDragDropSource(ImGuiWindow* window); 4556CIMGUI_API void igBeginDockableDragDropTarget(ImGuiWindow* window); 4557CIMGUI_API void igSetWindowDock(ImGuiWindow* window,ImGuiID dock_id,ImGuiCond cond); 4558CIMGUI_API void igDockBuilderDockWindow(const char* window_name,ImGuiID node_id); 4559CIMGUI_API ImGuiDockNode* igDockBuilderGetNode(ImGuiID node_id); 4560CIMGUI_API ImGuiDockNode* igDockBuilderGetCentralNode(ImGuiID node_id); 4561CIMGUI_API ImGuiID igDockBuilderAddNode(ImGuiID node_id,ImGuiDockNodeFlags flags); 4562CIMGUI_API void igDockBuilderRemoveNode(ImGuiID node_id); 4563CIMGUI_API void igDockBuilderRemoveNodeDockedWindows(ImGuiID node_id,bool clear_settings_refs); 4564CIMGUI_API void igDockBuilderRemoveNodeChildNodes(ImGuiID node_id); 4565CIMGUI_API void igDockBuilderSetNodePos(ImGuiID node_id,ImVec2 pos); 4566CIMGUI_API void igDockBuilderSetNodeSize(ImGuiID node_id,ImVec2 size); 4567CIMGUI_API ImGuiID igDockBuilderSplitNode(ImGuiID node_id,ImGuiDir split_dir,float size_ratio_for_node_at_dir,ImGuiID* out_id_at_dir,ImGuiID* out_id_at_opposite_dir); 4568CIMGUI_API void igDockBuilderCopyDockSpace(ImGuiID src_dockspace_id,ImGuiID dst_dockspace_id,ImVector_const_charPtr* in_window_remap_pairs); 4569CIMGUI_API void igDockBuilderCopyNode(ImGuiID src_node_id,ImGuiID dst_node_id,ImVector_ImGuiID* out_node_remap_pairs); 4570CIMGUI_API void igDockBuilderCopyWindowSettings(const char* src_name,const char* dst_name); 4571CIMGUI_API void igDockBuilderFinish(ImGuiID node_id); 4572CIMGUI_API void igPushFocusScope(ImGuiID id); 4573CIMGUI_API void igPopFocusScope(void); 4574CIMGUI_API ImGuiID igGetCurrentFocusScope(void); 4575CIMGUI_API bool igIsDragDropActive(void); 4576CIMGUI_API bool igBeginDragDropTargetCustom(const ImRect bb,ImGuiID id); 4577CIMGUI_API void igClearDragDrop(void); 4578CIMGUI_API bool igIsDragDropPayloadBeingAccepted(void); 4579CIMGUI_API void igRenderDragDropTargetRect(const ImRect bb,const ImRect item_clip_rect); 4580CIMGUI_API ImGuiTypingSelectRequest* igGetTypingSelectRequest(ImGuiTypingSelectFlags flags); 4581CIMGUI_API int igTypingSelectFindMatch(ImGuiTypingSelectRequest* req,int items_count,const char*(*get_item_name_func)(void*,int),void* user_data,int nav_item_idx); 4582CIMGUI_API int igTypingSelectFindNextSingleCharMatch(ImGuiTypingSelectRequest* req,int items_count,const char*(*get_item_name_func)(void*,int),void* user_data,int nav_item_idx); 4583CIMGUI_API int igTypingSelectFindBestLeadingMatch(ImGuiTypingSelectRequest* req,int items_count,const char*(*get_item_name_func)(void*,int),void* user_data); 4584CIMGUI_API void igSetWindowClipRectBeforeSetChannel(ImGuiWindow* window,const ImRect clip_rect); 4585CIMGUI_API void igBeginColumns(const char* str_id,int count,ImGuiOldColumnFlags flags); 4586CIMGUI_API void igEndColumns(void); 4587CIMGUI_API void igPushColumnClipRect(int column_index); 4588CIMGUI_API void igPushColumnsBackground(void); 4589CIMGUI_API void igPopColumnsBackground(void); 4590CIMGUI_API ImGuiID igGetColumnsID(const char* str_id,int count); 4591CIMGUI_API ImGuiOldColumns* igFindOrCreateColumns(ImGuiWindow* window,ImGuiID id); 4592CIMGUI_API float igGetColumnOffsetFromNorm(const ImGuiOldColumns* columns,float offset_norm); 4593CIMGUI_API float igGetColumnNormFromOffset(const ImGuiOldColumns* columns,float offset); 4594CIMGUI_API void igTableOpenContextMenu(int column_n); 4595CIMGUI_API void igTableSetColumnWidth(int column_n,float width); 4596CIMGUI_API void igTableSetColumnSortDirection(int column_n,ImGuiSortDirection sort_direction,bool append_to_sort_specs); 4597CIMGUI_API int igTableGetHoveredColumn(void); 4598CIMGUI_API int igTableGetHoveredRow(void); 4599CIMGUI_API float igTableGetHeaderRowHeight(void); 4600CIMGUI_API float igTableGetHeaderAngledMaxLabelWidth(void); 4601CIMGUI_API void igTablePushBackgroundChannel(void); 4602CIMGUI_API void igTablePopBackgroundChannel(void); 4603CIMGUI_API void igTableAngledHeadersRowEx(ImGuiID row_id,float angle,float max_label_width,const ImGuiTableHeaderData* data,int data_count); 4604CIMGUI_API ImGuiTable* igGetCurrentTable(void); 4605CIMGUI_API ImGuiTable* igTableFindByID(ImGuiID id); 4606CIMGUI_API bool igBeginTableEx(const char* name,ImGuiID id,int columns_count,ImGuiTableFlags flags,const ImVec2 outer_size,float inner_width); 4607CIMGUI_API void igTableBeginInitMemory(ImGuiTable* table,int columns_count); 4608CIMGUI_API void igTableBeginApplyRequests(ImGuiTable* table); 4609CIMGUI_API void igTableSetupDrawChannels(ImGuiTable* table); 4610CIMGUI_API void igTableUpdateLayout(ImGuiTable* table); 4611CIMGUI_API void igTableUpdateBorders(ImGuiTable* table); 4612CIMGUI_API void igTableUpdateColumnsWeightFromWidth(ImGuiTable* table); 4613CIMGUI_API void igTableDrawBorders(ImGuiTable* table); 4614CIMGUI_API void igTableDrawDefaultContextMenu(ImGuiTable* table,ImGuiTableFlags flags_for_section_to_display); 4615CIMGUI_API bool igTableBeginContextMenuPopup(ImGuiTable* table); 4616CIMGUI_API void igTableMergeDrawChannels(ImGuiTable* table); 4617CIMGUI_API ImGuiTableInstanceData* igTableGetInstanceData(ImGuiTable* table,int instance_no); 4618CIMGUI_API ImGuiID igTableGetInstanceID(ImGuiTable* table,int instance_no); 4619CIMGUI_API void igTableSortSpecsSanitize(ImGuiTable* table); 4620CIMGUI_API void igTableSortSpecsBuild(ImGuiTable* table); 4621CIMGUI_API ImGuiSortDirection igTableGetColumnNextSortDirection(ImGuiTableColumn* column); 4622CIMGUI_API void igTableFixColumnSortDirection(ImGuiTable* table,ImGuiTableColumn* column); 4623CIMGUI_API float igTableGetColumnWidthAuto(ImGuiTable* table,ImGuiTableColumn* column); 4624CIMGUI_API void igTableBeginRow(ImGuiTable* table); 4625CIMGUI_API void igTableEndRow(ImGuiTable* table); 4626CIMGUI_API void igTableBeginCell(ImGuiTable* table,int column_n); 4627CIMGUI_API void igTableEndCell(ImGuiTable* table); 4628CIMGUI_API void igTableGetCellBgRect(ImRect *pOut,const ImGuiTable* table,int column_n); 4629CIMGUI_API const char* igTableGetColumnName_TablePtr(const ImGuiTable* table,int column_n); 4630CIMGUI_API ImGuiID igTableGetColumnResizeID(ImGuiTable* table,int column_n,int instance_no); 4631CIMGUI_API float igTableGetMaxColumnWidth(const ImGuiTable* table,int column_n); 4632CIMGUI_API void igTableSetColumnWidthAutoSingle(ImGuiTable* table,int column_n); 4633CIMGUI_API void igTableSetColumnWidthAutoAll(ImGuiTable* table); 4634CIMGUI_API void igTableRemove(ImGuiTable* table); 4635CIMGUI_API void igTableGcCompactTransientBuffers_TablePtr(ImGuiTable* table); 4636CIMGUI_API void igTableGcCompactTransientBuffers_TableTempDataPtr(ImGuiTableTempData* table); 4637CIMGUI_API void igTableGcCompactSettings(void); 4638CIMGUI_API void igTableLoadSettings(ImGuiTable* table); 4639CIMGUI_API void igTableSaveSettings(ImGuiTable* table); 4640CIMGUI_API void igTableResetSettings(ImGuiTable* table); 4641CIMGUI_API ImGuiTableSettings* igTableGetBoundSettings(ImGuiTable* table); 4642CIMGUI_API void igTableSettingsAddSettingsHandler(void); 4643CIMGUI_API ImGuiTableSettings* igTableSettingsCreate(ImGuiID id,int columns_count); 4644CIMGUI_API ImGuiTableSettings* igTableSettingsFindByID(ImGuiID id); 4645CIMGUI_API ImGuiTabBar* igGetCurrentTabBar(void); 4646CIMGUI_API bool igBeginTabBarEx(ImGuiTabBar* tab_bar,const ImRect bb,ImGuiTabBarFlags flags); 4647CIMGUI_API ImGuiTabItem* igTabBarFindTabByID(ImGuiTabBar* tab_bar,ImGuiID tab_id); 4648CIMGUI_API ImGuiTabItem* igTabBarFindTabByOrder(ImGuiTabBar* tab_bar,int order); 4649CIMGUI_API ImGuiTabItem* igTabBarFindMostRecentlySelectedTabForActiveWindow(ImGuiTabBar* tab_bar); 4650CIMGUI_API ImGuiTabItem* igTabBarGetCurrentTab(ImGuiTabBar* tab_bar); 4651CIMGUI_API int igTabBarGetTabOrder(ImGuiTabBar* tab_bar,ImGuiTabItem* tab); 4652CIMGUI_API const char* igTabBarGetTabName(ImGuiTabBar* tab_bar,ImGuiTabItem* tab); 4653CIMGUI_API void igTabBarAddTab(ImGuiTabBar* tab_bar,ImGuiTabItemFlags tab_flags,ImGuiWindow* window); 4654CIMGUI_API void igTabBarRemoveTab(ImGuiTabBar* tab_bar,ImGuiID tab_id); 4655CIMGUI_API void igTabBarCloseTab(ImGuiTabBar* tab_bar,ImGuiTabItem* tab); 4656CIMGUI_API void igTabBarQueueFocus(ImGuiTabBar* tab_bar,ImGuiTabItem* tab); 4657CIMGUI_API void igTabBarQueueReorder(ImGuiTabBar* tab_bar,ImGuiTabItem* tab,int offset); 4658CIMGUI_API void igTabBarQueueReorderFromMousePos(ImGuiTabBar* tab_bar,ImGuiTabItem* tab,ImVec2 mouse_pos); 4659CIMGUI_API bool igTabBarProcessReorder(ImGuiTabBar* tab_bar); 4660CIMGUI_API bool igTabItemEx(ImGuiTabBar* tab_bar,const char* label,bool* p_open,ImGuiTabItemFlags flags,ImGuiWindow* docked_window); 4661CIMGUI_API void igTabItemCalcSize_Str(ImVec2 *pOut,const char* label,bool has_close_button_or_unsaved_marker); 4662CIMGUI_API void igTabItemCalcSize_WindowPtr(ImVec2 *pOut,ImGuiWindow* window); 4663CIMGUI_API void igTabItemBackground(ImDrawList* draw_list,const ImRect bb,ImGuiTabItemFlags flags,ImU32 col); 4664CIMGUI_API void igTabItemLabelAndCloseButton(ImDrawList* draw_list,const ImRect bb,ImGuiTabItemFlags flags,ImVec2 frame_padding,const char* label,ImGuiID tab_id,ImGuiID close_button_id,bool is_contents_visible,bool* out_just_closed,bool* out_text_clipped); 4665CIMGUI_API void igRenderText(ImVec2 pos,const char* text,const char* text_end,bool hide_text_after_hash); 4666CIMGUI_API void igRenderTextWrapped(ImVec2 pos,const char* text,const char* text_end,float wrap_width); 4667CIMGUI_API void igRenderTextClipped(const ImVec2 pos_min,const ImVec2 pos_max,const char* text,const char* text_end,const ImVec2* text_size_if_known,const ImVec2 align,const ImRect* clip_rect); 4668CIMGUI_API void igRenderTextClippedEx(ImDrawList* draw_list,const ImVec2 pos_min,const ImVec2 pos_max,const char* text,const char* text_end,const ImVec2* text_size_if_known,const ImVec2 align,const ImRect* clip_rect); 4669CIMGUI_API void igRenderTextEllipsis(ImDrawList* draw_list,const ImVec2 pos_min,const ImVec2 pos_max,float clip_max_x,float ellipsis_max_x,const char* text,const char* text_end,const ImVec2* text_size_if_known); 4670CIMGUI_API void igRenderFrame(ImVec2 p_min,ImVec2 p_max,ImU32 fill_col,bool border,float rounding); 4671CIMGUI_API void igRenderFrameBorder(ImVec2 p_min,ImVec2 p_max,float rounding); 4672CIMGUI_API void igRenderColorRectWithAlphaCheckerboard(ImDrawList* draw_list,ImVec2 p_min,ImVec2 p_max,ImU32 fill_col,float grid_step,ImVec2 grid_off,float rounding,ImDrawFlags flags); 4673CIMGUI_API void igRenderNavHighlight(const ImRect bb,ImGuiID id,ImGuiNavHighlightFlags flags); 4674CIMGUI_API const char* igFindRenderedTextEnd(const char* text,const char* text_end); 4675CIMGUI_API void igRenderMouseCursor(ImVec2 pos,float scale,ImGuiMouseCursor mouse_cursor,ImU32 col_fill,ImU32 col_border,ImU32 col_shadow); 4676CIMGUI_API void igRenderArrow(ImDrawList* draw_list,ImVec2 pos,ImU32 col,ImGuiDir dir,float scale); 4677CIMGUI_API void igRenderBullet(ImDrawList* draw_list,ImVec2 pos,ImU32 col); 4678CIMGUI_API void igRenderCheckMark(ImDrawList* draw_list,ImVec2 pos,ImU32 col,float sz); 4679CIMGUI_API void igRenderArrowPointingAt(ImDrawList* draw_list,ImVec2 pos,ImVec2 half_sz,ImGuiDir direction,ImU32 col); 4680CIMGUI_API void igRenderArrowDockMenu(ImDrawList* draw_list,ImVec2 p_min,float sz,ImU32 col); 4681CIMGUI_API void igRenderRectFilledRangeH(ImDrawList* draw_list,const ImRect rect,ImU32 col,float x_start_norm,float x_end_norm,float rounding); 4682CIMGUI_API void igRenderRectFilledWithHole(ImDrawList* draw_list,const ImRect outer,const ImRect inner,ImU32 col,float rounding); 4683CIMGUI_API ImDrawFlags igCalcRoundingFlagsForRectInRect(const ImRect r_in,const ImRect r_outer,float threshold); 4684CIMGUI_API void igTextEx(const char* text,const char* text_end,ImGuiTextFlags flags); 4685CIMGUI_API bool igButtonEx(const char* label,const ImVec2 size_arg,ImGuiButtonFlags flags); 4686CIMGUI_API bool igArrowButtonEx(const char* str_id,ImGuiDir dir,ImVec2 size_arg,ImGuiButtonFlags flags); 4687CIMGUI_API bool igImageButtonEx(ImGuiID id,ImTextureID texture_id,const ImVec2 image_size,const ImVec2 uv0,const ImVec2 uv1,const ImVec4 bg_col,const ImVec4 tint_col,ImGuiButtonFlags flags); 4688CIMGUI_API void igSeparatorEx(ImGuiSeparatorFlags flags,float thickness); 4689CIMGUI_API void igSeparatorTextEx(ImGuiID id,const char* label,const char* label_end,float extra_width); 4690CIMGUI_API bool igCheckboxFlags_S64Ptr(const char* label,ImS64* flags,ImS64 flags_value); 4691CIMGUI_API bool igCheckboxFlags_U64Ptr(const char* label,ImU64* flags,ImU64 flags_value); 4692CIMGUI_API bool igCloseButton(ImGuiID id,const ImVec2 pos); 4693CIMGUI_API bool igCollapseButton(ImGuiID id,const ImVec2 pos,ImGuiDockNode* dock_node); 4694CIMGUI_API void igScrollbar(ImGuiAxis axis); 4695CIMGUI_API bool igScrollbarEx(const ImRect bb,ImGuiID id,ImGuiAxis axis,ImS64* p_scroll_v,ImS64 avail_v,ImS64 contents_v,ImDrawFlags flags); 4696CIMGUI_API void igGetWindowScrollbarRect(ImRect *pOut,ImGuiWindow* window,ImGuiAxis axis); 4697CIMGUI_API ImGuiID igGetWindowScrollbarID(ImGuiWindow* window,ImGuiAxis axis); 4698CIMGUI_API ImGuiID igGetWindowResizeCornerID(ImGuiWindow* window,int n); 4699CIMGUI_API ImGuiID igGetWindowResizeBorderID(ImGuiWindow* window,ImGuiDir dir); 4700CIMGUI_API bool igButtonBehavior(const ImRect bb,ImGuiID id,bool* out_hovered,bool* out_held,ImGuiButtonFlags flags); 4701CIMGUI_API bool igDragBehavior(ImGuiID id,ImGuiDataType data_type,void* p_v,float v_speed,const void* p_min,const void* p_max,const char* format,ImGuiSliderFlags flags); 4702CIMGUI_API bool igSliderBehavior(const ImRect bb,ImGuiID id,ImGuiDataType data_type,void* p_v,const void* p_min,const void* p_max,const char* format,ImGuiSliderFlags flags,ImRect* out_grab_bb); 4703CIMGUI_API bool igSplitterBehavior(const ImRect bb,ImGuiID id,ImGuiAxis axis,float* size1,float* size2,float min_size1,float min_size2,float hover_extend,float hover_visibility_delay,ImU32 bg_col); 4704CIMGUI_API bool igTreeNodeBehavior(ImGuiID id,ImGuiTreeNodeFlags flags,const char* label,const char* label_end); 4705CIMGUI_API void igTreePushOverrideID(ImGuiID id); 4706CIMGUI_API void igTreeNodeSetOpen(ImGuiID id,bool open); 4707CIMGUI_API bool igTreeNodeUpdateNextOpen(ImGuiID id,ImGuiTreeNodeFlags flags); 4708CIMGUI_API void igSetNextItemSelectionUserData(ImGuiSelectionUserData selection_user_data); 4709CIMGUI_API const ImGuiDataTypeInfo* igDataTypeGetInfo(ImGuiDataType data_type); 4710CIMGUI_API int igDataTypeFormatString(char* buf,int buf_size,ImGuiDataType data_type,const void* p_data,const char* format); 4711CIMGUI_API void igDataTypeApplyOp(ImGuiDataType data_type,int op,void* output,const void* arg_1,const void* arg_2); 4712CIMGUI_API bool igDataTypeApplyFromText(const char* buf,ImGuiDataType data_type,void* p_data,const char* format,void* p_data_when_empty); 4713CIMGUI_API int igDataTypeCompare(ImGuiDataType data_type,const void* arg_1,const void* arg_2); 4714CIMGUI_API bool igDataTypeClamp(ImGuiDataType data_type,void* p_data,const void* p_min,const void* p_max); 4715CIMGUI_API bool igInputTextEx(const char* label,const char* hint,char* buf,int buf_size,const ImVec2 size_arg,ImGuiInputTextFlags flags,ImGuiInputTextCallback callback,void* user_data); 4716CIMGUI_API void igInputTextDeactivateHook(ImGuiID id); 4717CIMGUI_API bool igTempInputText(const ImRect bb,ImGuiID id,const char* label,char* buf,int buf_size,ImGuiInputTextFlags flags); 4718CIMGUI_API bool igTempInputScalar(const ImRect bb,ImGuiID id,const char* label,ImGuiDataType data_type,void* p_data,const char* format,const void* p_clamp_min,const void* p_clamp_max); 4719CIMGUI_API bool igTempInputIsActive(ImGuiID id); 4720CIMGUI_API ImGuiInputTextState* igGetInputTextState(ImGuiID id); 4721CIMGUI_API void igSetNextItemRefVal(ImGuiDataType data_type,void* p_data); 4722CIMGUI_API void igColorTooltip(const char* text,const float* col,ImGuiColorEditFlags flags); 4723CIMGUI_API void igColorEditOptionsPopup(const float* col,ImGuiColorEditFlags flags); 4724CIMGUI_API void igColorPickerOptionsPopup(const float* ref_col,ImGuiColorEditFlags flags); 4725CIMGUI_API int igPlotEx(ImGuiPlotType plot_type,const char* label,float(*values_getter)(void* data,int idx),void* data,int values_count,int values_offset,const char* overlay_text,float scale_min,float scale_max,const ImVec2 size_arg); 4726CIMGUI_API void igShadeVertsLinearColorGradientKeepAlpha(ImDrawList* draw_list,int vert_start_idx,int vert_end_idx,ImVec2 gradient_p0,ImVec2 gradient_p1,ImU32 col0,ImU32 col1); 4727CIMGUI_API void igShadeVertsLinearUV(ImDrawList* draw_list,int vert_start_idx,int vert_end_idx,const ImVec2 a,const ImVec2 b,const ImVec2 uv_a,const ImVec2 uv_b,bool clamp); 4728CIMGUI_API void igShadeVertsTransformPos(ImDrawList* draw_list,int vert_start_idx,int vert_end_idx,const ImVec2 pivot_in,float cos_a,float sin_a,const ImVec2 pivot_out); 4729CIMGUI_API void igGcCompactTransientMiscBuffers(void); 4730CIMGUI_API void igGcCompactTransientWindowBuffers(ImGuiWindow* window); 4731CIMGUI_API void igGcAwakeTransientWindowBuffers(ImGuiWindow* window); 4732CIMGUI_API void igDebugLog(const char* fmt,...); 4733CIMGUI_API void igDebugLogV(const char* fmt,va_list args); 4734CIMGUI_API void igDebugAllocHook(ImGuiDebugAllocInfo* info,int frame_count,void* ptr,size_t size); 4735CIMGUI_API void igErrorCheckEndFrameRecover(ImGuiErrorLogCallback log_callback,void* user_data); 4736CIMGUI_API void igErrorCheckEndWindowRecover(ImGuiErrorLogCallback log_callback,void* user_data); 4737CIMGUI_API void igErrorCheckUsingSetCursorPosToExtendParentBoundaries(void); 4738CIMGUI_API void igDebugDrawCursorPos(ImU32 col); 4739CIMGUI_API void igDebugDrawLineExtents(ImU32 col); 4740CIMGUI_API void igDebugDrawItemRect(ImU32 col); 4741CIMGUI_API void igDebugTextUnformattedWithLocateItem(const char* line_begin,const char* line_end); 4742CIMGUI_API void igDebugLocateItem(ImGuiID target_id); 4743CIMGUI_API void igDebugLocateItemOnHover(ImGuiID target_id); 4744CIMGUI_API void igDebugLocateItemResolveWithLastItem(void); 4745CIMGUI_API void igDebugBreakClearData(void); 4746CIMGUI_API bool igDebugBreakButton(const char* label,const char* description_of_location); 4747CIMGUI_API void igDebugBreakButtonTooltip(bool keyboard_only,const char* description_of_location); 4748CIMGUI_API void igShowFontAtlas(ImFontAtlas* atlas); 4749CIMGUI_API void igDebugHookIdInfo(ImGuiID id,ImGuiDataType data_type,const void* data_id,const void* data_id_end); 4750CIMGUI_API void igDebugNodeColumns(ImGuiOldColumns* columns); 4751CIMGUI_API void igDebugNodeDockNode(ImGuiDockNode* node,const char* label); 4752CIMGUI_API void igDebugNodeDrawList(ImGuiWindow* window,ImGuiViewportP* viewport,const ImDrawList* draw_list,const char* label); 4753CIMGUI_API void igDebugNodeDrawCmdShowMeshAndBoundingBox(ImDrawList* out_draw_list,const ImDrawList* draw_list,const ImDrawCmd* draw_cmd,bool show_mesh,bool show_aabb); 4754CIMGUI_API void igDebugNodeFont(ImFont* font); 4755CIMGUI_API void igDebugNodeFontGlyph(ImFont* font,const ImFontGlyph* glyph); 4756CIMGUI_API void igDebugNodeStorage(ImGuiStorage* storage,const char* label); 4757CIMGUI_API void igDebugNodeTabBar(ImGuiTabBar* tab_bar,const char* label); 4758CIMGUI_API void igDebugNodeTable(ImGuiTable* table); 4759CIMGUI_API void igDebugNodeTableSettings(ImGuiTableSettings* settings); 4760CIMGUI_API void igDebugNodeInputTextState(ImGuiInputTextState* state); 4761CIMGUI_API void igDebugNodeTypingSelectState(ImGuiTypingSelectState* state); 4762CIMGUI_API void igDebugNodeWindow(ImGuiWindow* window,const char* label); 4763CIMGUI_API void igDebugNodeWindowSettings(ImGuiWindowSettings* settings); 4764CIMGUI_API void igDebugNodeWindowsList(ImVector_ImGuiWindowPtr* windows,const char* label); 4765CIMGUI_API void igDebugNodeWindowsListByBeginStackParent(ImGuiWindow** windows,int windows_size,ImGuiWindow* parent_in_begin_stack); 4766CIMGUI_API void igDebugNodeViewport(ImGuiViewportP* viewport); 4767CIMGUI_API void igDebugRenderKeyboardPreview(ImDrawList* draw_list); 4768CIMGUI_API void igDebugRenderViewportThumbnail(ImDrawList* draw_list,ImGuiViewportP* viewport,const ImRect bb); 4769CIMGUI_API const ImFontBuilderIO* igImFontAtlasGetBuilderForStbTruetype(void); 4770CIMGUI_API void igImFontAtlasUpdateConfigDataPointers(ImFontAtlas* atlas); 4771CIMGUI_API void igImFontAtlasBuildInit(ImFontAtlas* atlas); 4772CIMGUI_API void igImFontAtlasBuildSetupFont(ImFontAtlas* atlas,ImFont* font,ImFontConfig* font_config,float ascent,float descent); 4773CIMGUI_API void igImFontAtlasBuildPackCustomRects(ImFontAtlas* atlas,void* stbrp_context_opaque); 4774CIMGUI_API void igImFontAtlasBuildFinish(ImFontAtlas* atlas); 4775CIMGUI_API void igImFontAtlasBuildRender8bppRectFromString(ImFontAtlas* atlas,int x,int y,int w,int h,const char* in_str,char in_marker_char,unsigned char in_marker_pixel_value); 4776CIMGUI_API void igImFontAtlasBuildRender32bppRectFromString(ImFontAtlas* atlas,int x,int y,int w,int h,const char* in_str,char in_marker_char,unsigned int in_marker_pixel_value); 4777CIMGUI_API void igImFontAtlasBuildMultiplyCalcLookupTable(unsigned char out_table[256],float in_multiply_factor); 4778CIMGUI_API void igImFontAtlasBuildMultiplyRectAlpha8(const unsigned char table[256],unsigned char* pixels,int x,int y,int w,int h,int stride); 4779 4780 4781/////////////////////////hand written functions 4782//no LogTextV 4783CIMGUI_API void igLogText(CONST char *fmt, ...); 4784//no appendfV 4785CIMGUI_API void ImGuiTextBuffer_appendf(struct ImGuiTextBuffer *buffer, const char *fmt, ...); 4786//for getting FLT_MAX in bindings 4787CIMGUI_API float igGET_FLT_MAX(void); 4788//for getting FLT_MIN in bindings 4789CIMGUI_API float igGET_FLT_MIN(void); 4790 4791 4792CIMGUI_API ImVector_ImWchar* ImVector_ImWchar_create(void); 4793CIMGUI_API void ImVector_ImWchar_destroy(ImVector_ImWchar* self); 4794CIMGUI_API void ImVector_ImWchar_Init(ImVector_ImWchar* p); 4795CIMGUI_API void ImVector_ImWchar_UnInit(ImVector_ImWchar* p); 4796 4797#ifdef IMGUI_HAS_DOCK 4798CIMGUI_API void ImGuiPlatformIO_Set_Platform_GetWindowPos(ImGuiPlatformIO* platform_io, void(*user_callback)(ImGuiViewport* vp, ImVec2* out_pos)); 4799CIMGUI_API void ImGuiPlatformIO_Set_Platform_GetWindowSize(ImGuiPlatformIO* platform_io, void(*user_callback)(ImGuiViewport* vp, ImVec2* out_size)); 4800#endif 4801 4802#endif //CIMGUI_INCLUDED 4803 4804 4805 4806