-
-
Notifications
You must be signed in to change notification settings - Fork 584
/
Copy pathimgui_function_table_19040.hpp
658 lines (635 loc) · 35.4 KB
/
imgui_function_table_19040.hpp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
/*
* Copyright (C) 2021 Patrick Mours
* Copyright (C) 2014-2024 Omar Cornut
* SPDX-License-Identifier: BSD-3-Clause OR MIT
*/
#pragma once
#include "imgui_function_table_19180.hpp"
struct imgui_font_19040
{
ImVector<float> IndexAdvanceX;
float FallbackAdvanceX;
float FontSize;
ImVector<ImWchar> IndexLookup;
ImVector<ImFontGlyph> Glyphs;
const ImFontGlyph *FallbackGlyph;
ImFontAtlas *ContainerAtlas;
const void *ConfigData;
short ConfigDataCount;
ImWchar FallbackChar;
ImWchar EllipsisChar;
short EllipsisCharCount;
float EllipsisWidth;
float EllipsisCharStep;
bool DirtyLookupTables;
float Scale;
float Ascent;
float Descent;
int MetricsTotalSurface;
ImU8 Used4kPagesMap[(IM_UNICODE_CODEPOINT_MAX + 1) / 4096 / 8];
};
using imgui_storage_19040 = imgui_storage_19180;
struct imgui_list_clipper_19040
{
ImGuiContext *Ctx;
int DisplayStart;
int DisplayEnd;
int ItemsCount;
float ItemsHeight;
float StartPosY;
void *TempData;
};
struct imgui_draw_list_19040
{
ImVector<ImDrawCmd> CmdBuffer;
ImVector<ImDrawIdx> IdxBuffer;
ImVector<ImDrawVert> VtxBuffer;
ImDrawListFlags Flags;
unsigned int _VtxCurrentIdx;
ImDrawListSharedData *_Data;
const char *_OwnerName;
ImDrawVert *_VtxWritePtr;
ImDrawIdx *_IdxWritePtr;
ImVector<ImVec4> _ClipRectStack;
ImVector<ImTextureID> _TextureIdStack;
ImVector<ImVec2> _Path;
ImDrawCmdHeader _CmdHeader;
ImDrawListSplitter _Splitter;
float _FringeScale;
};
struct imgui_io_19040
{
ImGuiConfigFlags ConfigFlags;
ImGuiBackendFlags BackendFlags;
ImVec2 DisplaySize;
float DeltaTime;
float IniSavingRate;
const char *IniFilename;
const char *LogFilename;
void *UserData;
ImFontAtlas *Fonts;
float FontGlobalScale;
bool FontAllowUserScaling;
imgui_font_19040 *FontDefault;
ImVec2 DisplayFramebufferScale;
bool ConfigDockingNoSplit;
bool ConfigDockingWithShift;
bool ConfigDockingAlwaysTabBar;
bool ConfigDockingTransparentPayload;
bool ConfigViewportsNoAutoMerge;
bool ConfigViewportsNoTaskBarIcon;
bool ConfigViewportsNoDecoration;
bool ConfigViewportsNoDefaultParent;
bool MouseDrawCursor;
bool ConfigMacOSXBehaviors;
bool ConfigInputTrickleEventQueue;
bool ConfigInputTextCursorBlink;
bool ConfigInputTextEnterKeepActive;
bool ConfigDragClickToInputText;
bool ConfigWindowsResizeFromEdges;
bool ConfigWindowsMoveFromTitleBarOnly;
float ConfigMemoryCompactTimer;
float MouseDoubleClickTime;
float MouseDoubleClickMaxDist;
float MouseDragThreshold;
float KeyRepeatDelay;
float KeyRepeatRate;
bool ConfigDebugIsDebuggerPresent;
bool ConfigDebugBeginReturnValueOnce;
bool ConfigDebugBeginReturnValueLoop;
bool ConfigDebugIgnoreFocusLoss;
bool ConfigDebugIniSettings;
const char *BackendPlatformName;
const char *BackendRendererName;
void *BackendPlatformUserData;
void *BackendRendererUserData;
void *BackendLanguageUserData;
const char *(*GetClipboardTextFn)(void *user_data);
void (*SetClipboardTextFn)(void *user_data, const char *text);
void *ClipboardUserData;
void (*SetPlatformImeDataFn)(ImGuiViewport *viewport, ImGuiPlatformImeData *data);
ImWchar PlatformLocaleDecimalPoint;
bool WantCaptureMouse;
bool WantCaptureKeyboard;
bool WantTextInput;
bool WantSetMousePos;
bool WantSaveIniSettings;
bool NavActive;
bool NavVisible;
float Framerate;
int MetricsRenderVertices;
int MetricsRenderIndices;
int MetricsRenderWindows;
int MetricsActiveWindows;
ImVec2 MouseDelta;
int KeyMap[666];
bool KeysDown[666];
float NavInputs[16];
void *Ctx;
ImVec2 MousePos;
bool MouseDown[5];
float MouseWheel;
float MouseWheelH;
ImGuiMouseSource MouseSource;
ImGuiID MouseHoveredViewport;
bool KeyCtrl;
bool KeyShift;
bool KeyAlt;
bool KeySuper;
ImGuiKeyChord KeyMods;
ImGuiKeyData KeysData[666];
bool WantCaptureMouseUnlessPopupClose;
ImVec2 MousePosPrev;
ImVec2 MouseClickedPos[5];
double MouseClickedTime[5];
bool MouseClicked[5];
bool MouseDoubleClicked[5];
ImU16 MouseClickedCount[5];
ImU16 MouseClickedLastCount[5];
bool MouseReleased[5];
bool MouseDownOwned[5];
bool MouseDownOwnedUnlessPopupClose[5];
bool MouseWheelRequestAxisSwap;
float MouseDownDuration[5];
float MouseDownDurationPrev[5];
ImVec2 MouseDragMaxDistanceAbs[5];
float MouseDragMaxDistanceSqr[5];
float PenPressure;
bool AppFocusLost;
bool AppAcceptingEvents;
ImS8 BackendUsingLegacyKeyArrays;
bool BackendUsingLegacyNavInputArray;
ImWchar16 InputQueueSurrogate;
ImVector<ImWchar> InputQueueCharacters;
};
struct imgui_style_19040
{
float Alpha;
float DisabledAlpha;
ImVec2 WindowPadding;
float WindowRounding;
float WindowBorderSize;
ImVec2 WindowMinSize;
ImVec2 WindowTitleAlign;
ImGuiDir WindowMenuButtonPosition;
float ChildRounding;
float ChildBorderSize;
float PopupRounding;
float PopupBorderSize;
ImVec2 FramePadding;
float FrameRounding;
float FrameBorderSize;
ImVec2 ItemSpacing;
ImVec2 ItemInnerSpacing;
ImVec2 CellPadding;
ImVec2 TouchExtraPadding;
float IndentSpacing;
float ColumnsMinSpacing;
float ScrollbarSize;
float ScrollbarRounding;
float GrabMinSize;
float GrabRounding;
float LogSliderDeadzone;
float TabRounding;
float TabBorderSize;
float TabMinWidthForCloseButton;
float TabBarBorderSize;
float TableAngledHeadersAngle;
ImGuiDir ColorButtonPosition;
ImVec2 ButtonTextAlign;
ImVec2 SelectableTextAlign;
float SeparatorTextBorderSize;
ImVec2 SeparatorTextAlign;
ImVec2 SeparatorTextPadding;
ImVec2 DisplayWindowPadding;
ImVec2 DisplaySafeAreaPadding;
float DockingSeparatorSize;
float MouseCursorScale;
bool AntiAliasedLines;
bool AntiAliasedLinesUseTex;
bool AntiAliasedFill;
float CurveTessellationTol;
float CircleTessellationMaxError;
ImVec4 Colors[55];
float HoverStationaryDelay;
float HoverDelayShort;
float HoverDelayNormal;
ImGuiHoveredFlags HoverFlagsForTooltipMouse;
ImGuiHoveredFlags HoverFlagsForTooltipNav;
};
struct imgui_function_table_19040
{
imgui_io_19040 &(*GetIO)();
imgui_style_19040 &(*GetStyle)();
const char *(*GetVersion)();
bool(*Begin)(const char *name, bool *p_open, ImGuiWindowFlags flags);
void(*End)();
bool(*BeginChild)(const char *str_id, const ImVec2 &size, ImGuiChildFlags child_flags, ImGuiWindowFlags window_flags);
bool(*BeginChild2)(ImGuiID id, const ImVec2 &size, ImGuiChildFlags child_flags, ImGuiWindowFlags window_flags);
void(*EndChild)();
bool(*IsWindowAppearing)();
bool(*IsWindowCollapsed)();
bool(*IsWindowFocused)(ImGuiFocusedFlags flags);
bool(*IsWindowHovered)(ImGuiHoveredFlags flags);
imgui_draw_list_19040 *(*GetWindowDrawList)();
float(*GetWindowDpiScale)();
ImVec2(*GetWindowPos)();
ImVec2(*GetWindowSize)();
float(*GetWindowWidth)();
float(*GetWindowHeight)();
void(*SetNextWindowPos)(const ImVec2 &pos, ImGuiCond cond, const ImVec2 &pivot);
void(*SetNextWindowSize)(const ImVec2 &size, ImGuiCond cond);
void(*SetNextWindowSizeConstraints)(const ImVec2 &size_min, const ImVec2 &size_max, ImGuiSizeCallback custom_callback, void *custom_callback_data);
void(*SetNextWindowContentSize)(const ImVec2 &size);
void(*SetNextWindowCollapsed)(bool collapsed, ImGuiCond cond);
void(*SetNextWindowFocus)();
void(*SetNextWindowScroll)(const ImVec2 &scroll);
void(*SetNextWindowBgAlpha)(float alpha);
void(*SetWindowPos)(const ImVec2 &pos, ImGuiCond cond);
void(*SetWindowSize)(const ImVec2 &size, ImGuiCond cond);
void(*SetWindowCollapsed)(bool collapsed, ImGuiCond cond);
void(*SetWindowFocus)();
void(*SetWindowFontScale)(float scale);
void(*SetWindowPos2)(const char *name, const ImVec2 &pos, ImGuiCond cond);
void(*SetWindowSize2)(const char *name, const ImVec2 &size, ImGuiCond cond);
void(*SetWindowCollapsed2)(const char *name, bool collapsed, ImGuiCond cond);
void(*SetWindowFocus2)(const char *name);
ImVec2(*GetContentRegionAvail)();
ImVec2(*GetContentRegionMax)();
ImVec2(*GetWindowContentRegionMin)();
ImVec2(*GetWindowContentRegionMax)();
float(*GetScrollX)();
float(*GetScrollY)();
void(*SetScrollX)(float scroll_x);
void(*SetScrollY)(float scroll_y);
float(*GetScrollMaxX)();
float(*GetScrollMaxY)();
void(*SetScrollHereX)(float center_x_ratio);
void(*SetScrollHereY)(float center_y_ratio);
void(*SetScrollFromPosX)(float local_x, float center_x_ratio);
void(*SetScrollFromPosY)(float local_y, float center_y_ratio);
void(*PushFont)(imgui_font_19040 *font);
void(*PopFont)();
void(*PushStyleColor)(ImGuiCol idx, ImU32 col);
void(*PushStyleColor2)(ImGuiCol idx, const ImVec4 &col);
void(*PopStyleColor)(int count);
void(*PushStyleVar)(ImGuiStyleVar idx, float val);
void(*PushStyleVar2)(ImGuiStyleVar idx, const ImVec2 &val);
void(*PopStyleVar)(int count);
void(*PushTabStop)(bool tab_stop);
void(*PopTabStop)();
void(*PushButtonRepeat)(bool repeat);
void(*PopButtonRepeat)();
void(*PushItemWidth)(float item_width);
void(*PopItemWidth)();
void(*SetNextItemWidth)(float item_width);
float(*CalcItemWidth)();
void(*PushTextWrapPos)(float wrap_local_pos_x);
void(*PopTextWrapPos)();
imgui_font_19040 *(*GetFont)();
float(*GetFontSize)();
ImVec2(*GetFontTexUvWhitePixel)();
ImU32(*GetColorU32)(ImGuiCol idx, float alpha_mul);
ImU32(*GetColorU322)(const ImVec4 &col);
ImU32(*GetColorU323)(ImU32 col, float alpha_mul);
const ImVec4 &(*GetStyleColorVec4)(ImGuiCol idx);
ImVec2(*GetCursorScreenPos)();
void(*SetCursorScreenPos)(const ImVec2 &pos);
ImVec2(*GetCursorPos)();
float(*GetCursorPosX)();
float(*GetCursorPosY)();
void(*SetCursorPos)(const ImVec2 &local_pos);
void(*SetCursorPosX)(float local_x);
void(*SetCursorPosY)(float local_y);
ImVec2(*GetCursorStartPos)();
void(*Separator)();
void(*SameLine)(float offset_from_start_x, float spacing);
void(*NewLine)();
void(*Spacing)();
void(*Dummy)(const ImVec2 &size);
void(*Indent)(float indent_w);
void(*Unindent)(float indent_w);
void(*BeginGroup)();
void(*EndGroup)();
void(*AlignTextToFramePadding)();
float(*GetTextLineHeight)();
float(*GetTextLineHeightWithSpacing)();
float(*GetFrameHeight)();
float(*GetFrameHeightWithSpacing)();
void(*PushID)(const char *str_id);
void(*PushID2)(const char *str_id_begin, const char *str_id_end);
void(*PushID3)(const void *ptr_id);
void(*PushID4)(int int_id);
void(*PopID)();
ImGuiID(*GetID)(const char *str_id);
ImGuiID(*GetID2)(const char *str_id_begin, const char *str_id_end);
ImGuiID(*GetID3)(const void *ptr_id);
void(*TextUnformatted)(const char *text, const char *text_end);
void(*TextV)(const char *fmt, va_list args);
void(*TextColoredV)(const ImVec4 &col, const char *fmt, va_list args);
void(*TextDisabledV)(const char *fmt, va_list args);
void(*TextWrappedV)(const char *fmt, va_list args);
void(*LabelTextV)(const char *label, const char *fmt, va_list args);
void(*BulletTextV)(const char *fmt, va_list args);
void(*SeparatorText)(const char *label);
bool(*Button)(const char *label, const ImVec2 &size);
bool(*SmallButton)(const char *label);
bool(*InvisibleButton)(const char *str_id, const ImVec2 &size, ImGuiButtonFlags flags);
bool(*ArrowButton)(const char *str_id, ImGuiDir dir);
bool(*Checkbox)(const char *label, bool *v);
bool(*CheckboxFlags)(const char *label, int *flags, int flags_value);
bool(*CheckboxFlags2)(const char *label, unsigned int *flags, unsigned int flags_value);
bool(*RadioButton)(const char *label, bool active);
bool(*RadioButton2)(const char *label, int *v, int v_button);
void(*ProgressBar)(float fraction, const ImVec2 &size_arg, const char *overlay);
void(*Bullet)();
void(*Image)(ImTextureID user_texture_id, const ImVec2 &image_size, const ImVec2 &uv0, const ImVec2 &uv1, const ImVec4 &tint_col, const ImVec4 &border_col);
bool(*ImageButton)(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);
bool(*BeginCombo)(const char *label, const char *preview_value, ImGuiComboFlags flags);
void(*EndCombo)();
bool(*Combo)(const char *label, int *current_item, const char *const items[], int items_count, int popup_max_height_in_items);
bool(*Combo2)(const char *label, int *current_item, const char *items_separated_by_zeros, int popup_max_height_in_items);
bool(*Combo3)(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);
bool(*DragFloat)(const char *label, float *v, float v_speed, float v_min, float v_max, const char *format, ImGuiSliderFlags flags);
bool(*DragFloat2)(const char *label, float v[2], float v_speed, float v_min, float v_max, const char *format, ImGuiSliderFlags flags);
bool(*DragFloat3)(const char *label, float v[3], float v_speed, float v_min, float v_max, const char *format, ImGuiSliderFlags flags);
bool(*DragFloat4)(const char *label, float v[4], float v_speed, float v_min, float v_max, const char *format, ImGuiSliderFlags flags);
bool(*DragFloatRange2)(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);
bool(*DragInt)(const char *label, int *v, float v_speed, int v_min, int v_max, const char *format, ImGuiSliderFlags flags);
bool(*DragInt2)(const char *label, int v[2], float v_speed, int v_min, int v_max, const char *format, ImGuiSliderFlags flags);
bool(*DragInt3)(const char *label, int v[3], float v_speed, int v_min, int v_max, const char *format, ImGuiSliderFlags flags);
bool(*DragInt4)(const char *label, int v[4], float v_speed, int v_min, int v_max, const char *format, ImGuiSliderFlags flags);
bool(*DragIntRange2)(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);
bool(*DragScalar)(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);
bool(*DragScalarN)(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);
bool(*SliderFloat)(const char *label, float *v, float v_min, float v_max, const char *format, ImGuiSliderFlags flags);
bool(*SliderFloat2)(const char *label, float v[2], float v_min, float v_max, const char *format, ImGuiSliderFlags flags);
bool(*SliderFloat3)(const char *label, float v[3], float v_min, float v_max, const char *format, ImGuiSliderFlags flags);
bool(*SliderFloat4)(const char *label, float v[4], float v_min, float v_max, const char *format, ImGuiSliderFlags flags);
bool(*SliderAngle)(const char *label, float *v_rad, float v_degrees_min, float v_degrees_max, const char *format, ImGuiSliderFlags flags);
bool(*SliderInt)(const char *label, int *v, int v_min, int v_max, const char *format, ImGuiSliderFlags flags);
bool(*SliderInt2)(const char *label, int v[2], int v_min, int v_max, const char *format, ImGuiSliderFlags flags);
bool(*SliderInt3)(const char *label, int v[3], int v_min, int v_max, const char *format, ImGuiSliderFlags flags);
bool(*SliderInt4)(const char *label, int v[4], int v_min, int v_max, const char *format, ImGuiSliderFlags flags);
bool(*SliderScalar)(const char *label, ImGuiDataType data_type, void *p_data, const void *p_min, const void *p_max, const char *format, ImGuiSliderFlags flags);
bool(*SliderScalarN)(const char *label, ImGuiDataType data_type, void *p_data, int components, const void *p_min, const void *p_max, const char *format, ImGuiSliderFlags flags);
bool(*VSliderFloat)(const char *label, const ImVec2 &size, float *v, float v_min, float v_max, const char *format, ImGuiSliderFlags flags);
bool(*VSliderInt)(const char *label, const ImVec2 &size, int *v, int v_min, int v_max, const char *format, ImGuiSliderFlags flags);
bool(*VSliderScalar)(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);
bool(*InputText)(const char *label, char *buf, size_t buf_size, ImGuiInputTextFlags flags, ImGuiInputTextCallback callback, void *user_data);
bool(*InputTextMultiline)(const char *label, char *buf, size_t buf_size, const ImVec2 &size, ImGuiInputTextFlags flags, ImGuiInputTextCallback callback, void *user_data);
bool(*InputTextWithHint)(const char *label, const char *hint, char *buf, size_t buf_size, ImGuiInputTextFlags flags, ImGuiInputTextCallback callback, void *user_data);
bool(*InputFloat)(const char *label, float *v, float step, float step_fast, const char *format, ImGuiInputTextFlags flags);
bool(*InputFloat2)(const char *label, float v[2], const char *format, ImGuiInputTextFlags flags);
bool(*InputFloat3)(const char *label, float v[3], const char *format, ImGuiInputTextFlags flags);
bool(*InputFloat4)(const char *label, float v[4], const char *format, ImGuiInputTextFlags flags);
bool(*InputInt)(const char *label, int *v, int step, int step_fast, ImGuiInputTextFlags flags);
bool(*InputInt2)(const char *label, int v[2], ImGuiInputTextFlags flags);
bool(*InputInt3)(const char *label, int v[3], ImGuiInputTextFlags flags);
bool(*InputInt4)(const char *label, int v[4], ImGuiInputTextFlags flags);
bool(*InputDouble)(const char *label, double *v, double step, double step_fast, const char *format, ImGuiInputTextFlags flags);
bool(*InputScalar)(const char *label, ImGuiDataType data_type, void *p_data, const void *p_step, const void *p_step_fast, const char *format, ImGuiInputTextFlags flags);
bool(*InputScalarN)(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);
bool(*ColorEdit3)(const char *label, float col[3], ImGuiColorEditFlags flags);
bool(*ColorEdit4)(const char *label, float col[4], ImGuiColorEditFlags flags);
bool(*ColorPicker3)(const char *label, float col[3], ImGuiColorEditFlags flags);
bool(*ColorPicker4)(const char *label, float col[4], ImGuiColorEditFlags flags, const float *ref_col);
bool(*ColorButton)(const char *desc_id, const ImVec4 &col, ImGuiColorEditFlags flags, const ImVec2 &size);
void(*SetColorEditOptions)(ImGuiColorEditFlags flags);
bool(*TreeNode)(const char *label);
bool(*TreeNodeV)(const char *str_id, const char *fmt, va_list args);
bool(*TreeNodeV2)(const void *ptr_id, const char *fmt, va_list args);
bool(*TreeNodeEx)(const char *label, ImGuiTreeNodeFlags flags);
bool(*TreeNodeExV)(const char *str_id, ImGuiTreeNodeFlags flags, const char *fmt, va_list args);
bool(*TreeNodeExV2)(const void *ptr_id, ImGuiTreeNodeFlags flags, const char *fmt, va_list args);
void(*TreePush)(const char *str_id);
void(*TreePush2)(const void *ptr_id);
void(*TreePop)();
float(*GetTreeNodeToLabelSpacing)();
bool(*CollapsingHeader)(const char *label, ImGuiTreeNodeFlags flags);
bool(*CollapsingHeader2)(const char *label, bool *p_visible, ImGuiTreeNodeFlags flags);
void(*SetNextItemOpen)(bool is_open, ImGuiCond cond);
bool(*Selectable)(const char *label, bool selected, ImGuiSelectableFlags flags, const ImVec2 &size);
bool(*Selectable2)(const char *label, bool *p_selected, ImGuiSelectableFlags flags, const ImVec2 &size);
bool(*BeginListBox)(const char *label, const ImVec2 &size);
void(*EndListBox)();
bool(*ListBox)(const char *label, int *current_item, const char *const items[], int items_count, int height_in_items);
bool(*ListBox2)(const char *label, int *current_item, const char *(*getter)(void *user_data, int idx), void *user_data, int items_count, int height_in_items);
void(*PlotLines)(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);
void(*PlotLines2)(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);
void(*PlotHistogram)(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);
void(*PlotHistogram2)(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);
void(*Value)(const char *prefix, bool b);
void(*Value2)(const char *prefix, int v);
void(*Value3)(const char *prefix, unsigned int v);
void(*Value4)(const char *prefix, float v, const char *float_format);
bool(*BeginMenuBar)();
void(*EndMenuBar)();
bool(*BeginMainMenuBar)();
void(*EndMainMenuBar)();
bool(*BeginMenu)(const char *label, bool enabled);
void(*EndMenu)();
bool(*MenuItem)(const char *label, const char *shortcut, bool selected, bool enabled);
bool(*MenuItem2)(const char *label, const char *shortcut, bool *p_selected, bool enabled);
bool(*BeginTooltip)();
void(*EndTooltip)();
void(*SetTooltipV)(const char *fmt, va_list args);
bool(*BeginItemTooltip)();
void(*SetItemTooltipV)(const char *fmt, va_list args);
bool(*BeginPopup)(const char *str_id, ImGuiWindowFlags flags);
bool(*BeginPopupModal)(const char *name, bool *p_open, ImGuiWindowFlags flags);
void(*EndPopup)();
void(*OpenPopup)(const char *str_id, ImGuiPopupFlags popup_flags);
void(*OpenPopup2)(ImGuiID id, ImGuiPopupFlags popup_flags);
void(*OpenPopupOnItemClick)(const char *str_id, ImGuiPopupFlags popup_flags);
void(*CloseCurrentPopup)();
bool(*BeginPopupContextItem)(const char *str_id, ImGuiPopupFlags popup_flags);
bool(*BeginPopupContextWindow)(const char *str_id, ImGuiPopupFlags popup_flags);
bool(*BeginPopupContextVoid)(const char *str_id, ImGuiPopupFlags popup_flags);
bool(*IsPopupOpen)(const char *str_id, ImGuiPopupFlags flags);
bool(*BeginTable)(const char *str_id, int column, ImGuiTableFlags flags, const ImVec2 &outer_size, float inner_width);
void(*EndTable)();
void(*TableNextRow)(ImGuiTableRowFlags row_flags, float min_row_height);
bool(*TableNextColumn)();
bool(*TableSetColumnIndex)(int column_n);
void(*TableSetupColumn)(const char *label, ImGuiTableColumnFlags flags, float init_width_or_weight, ImGuiID user_id);
void(*TableSetupScrollFreeze)(int cols, int rows);
void(*TableHeader)(const char *label);
void(*TableHeadersRow)();
void(*TableAngledHeadersRow)();
ImGuiTableSortSpecs *(*TableGetSortSpecs)();
int(*TableGetColumnCount)();
int(*TableGetColumnIndex)();
int(*TableGetRowIndex)();
const char *(*TableGetColumnName)(int column_n);
ImGuiTableColumnFlags(*TableGetColumnFlags)(int column_n);
void(*TableSetColumnEnabled)(int column_n, bool v);
void(*TableSetBgColor)(ImGuiTableBgTarget target, ImU32 color, int column_n);
void(*Columns)(int count, const char *id, bool border);
void(*NextColumn)();
int(*GetColumnIndex)();
float(*GetColumnWidth)(int column_index);
void(*SetColumnWidth)(int column_index, float width);
float(*GetColumnOffset)(int column_index);
void(*SetColumnOffset)(int column_index, float offset_x);
int(*GetColumnsCount)();
bool(*BeginTabBar)(const char *str_id, ImGuiTabBarFlags flags);
void(*EndTabBar)();
bool(*BeginTabItem)(const char *label, bool *p_open, ImGuiTabItemFlags flags);
void(*EndTabItem)();
bool(*TabItemButton)(const char *label, ImGuiTabItemFlags flags);
void(*SetTabItemClosed)(const char *tab_or_docked_window_label);
ImGuiID(*DockSpace)(ImGuiID id, const ImVec2 &size, ImGuiDockNodeFlags flags, const ImGuiWindowClass *window_class);
void(*SetNextWindowDockID)(ImGuiID dock_id, ImGuiCond cond);
void(*SetNextWindowClass)(const ImGuiWindowClass *window_class);
ImGuiID(*GetWindowDockID)();
bool(*IsWindowDocked)();
bool(*BeginDragDropSource)(ImGuiDragDropFlags flags);
bool(*SetDragDropPayload)(const char *type, const void *data, size_t sz, ImGuiCond cond);
void(*EndDragDropSource)();
bool(*BeginDragDropTarget)();
const ImGuiPayload *(*AcceptDragDropPayload)(const char *type, ImGuiDragDropFlags flags);
void(*EndDragDropTarget)();
const ImGuiPayload *(*GetDragDropPayload)();
void(*BeginDisabled)(bool disabled);
void(*EndDisabled)();
void(*PushClipRect)(const ImVec2 &clip_rect_min, const ImVec2 &clip_rect_max, bool intersect_with_current_clip_rect);
void(*PopClipRect)();
void(*SetItemDefaultFocus)();
void(*SetKeyboardFocusHere)(int offset);
void(*SetNextItemAllowOverlap)();
bool(*IsItemHovered)(ImGuiHoveredFlags flags);
bool(*IsItemActive)();
bool(*IsItemFocused)();
bool(*IsItemClicked)(ImGuiMouseButton mouse_button);
bool(*IsItemVisible)();
bool(*IsItemEdited)();
bool(*IsItemActivated)();
bool(*IsItemDeactivated)();
bool(*IsItemDeactivatedAfterEdit)();
bool(*IsItemToggledOpen)();
bool(*IsAnyItemHovered)();
bool(*IsAnyItemActive)();
bool(*IsAnyItemFocused)();
ImGuiID(*GetItemID)();
ImVec2(*GetItemRectMin)();
ImVec2(*GetItemRectMax)();
ImVec2(*GetItemRectSize)();
imgui_draw_list_19040 *(*GetBackgroundDrawList)();
imgui_draw_list_19040 *(*GetForegroundDrawList)();
imgui_draw_list_19040 *(*GetBackgroundDrawList2)(ImGuiViewport *viewport);
imgui_draw_list_19040 *(*GetForegroundDrawList2)(ImGuiViewport *viewport);
bool(*IsRectVisible)(const ImVec2 &size);
bool(*IsRectVisible2)(const ImVec2 &rect_min, const ImVec2 &rect_max);
double(*GetTime)();
int(*GetFrameCount)();
ImDrawListSharedData *(*GetDrawListSharedData)();
const char *(*GetStyleColorName)(ImGuiCol idx);
void(*SetStateStorage)(imgui_storage_19040 *storage);
imgui_storage_19040 *(*GetStateStorage)();
ImVec2(*CalcTextSize)(const char *text, const char *text_end, bool hide_text_after_double_hash, float wrap_width);
ImVec4(*ColorConvertU32ToFloat4)(ImU32 in);
ImU32(*ColorConvertFloat4ToU32)(const ImVec4 &in);
void(*ColorConvertRGBtoHSV)(float r, float g, float b, float &out_h, float &out_s, float &out_v);
void(*ColorConvertHSVtoRGB)(float h, float s, float v, float &out_r, float &out_g, float &out_b);
bool(*IsKeyDown)(ImGuiKey key);
bool(*IsKeyPressed)(ImGuiKey key, bool repeat);
bool(*IsKeyReleased)(ImGuiKey key);
bool(*IsKeyChordPressed)(ImGuiKeyChord key_chord);
int(*GetKeyPressedAmount)(ImGuiKey key, float repeat_delay, float rate);
const char *(*GetKeyName)(ImGuiKey key);
void(*SetNextFrameWantCaptureKeyboard)(bool want_capture_keyboard);
bool(*IsMouseDown)(ImGuiMouseButton button);
bool(*IsMouseClicked)(ImGuiMouseButton button, bool repeat);
bool(*IsMouseReleased)(ImGuiMouseButton button);
bool(*IsMouseDoubleClicked)(ImGuiMouseButton button);
int(*GetMouseClickedCount)(ImGuiMouseButton button);
bool(*IsMouseHoveringRect)(const ImVec2 &r_min, const ImVec2 &r_max, bool clip);
bool(*IsMousePosValid)(const ImVec2 *mouse_pos);
bool(*IsAnyMouseDown)();
ImVec2(*GetMousePos)();
ImVec2(*GetMousePosOnOpeningCurrentPopup)();
bool(*IsMouseDragging)(ImGuiMouseButton button, float lock_threshold);
ImVec2(*GetMouseDragDelta)(ImGuiMouseButton button, float lock_threshold);
void(*ResetMouseDragDelta)(ImGuiMouseButton button);
ImGuiMouseCursor(*GetMouseCursor)();
void(*SetMouseCursor)(ImGuiMouseCursor cursor_type);
void(*SetNextFrameWantCaptureMouse)(bool want_capture_mouse);
const char *(*GetClipboardText)();
void(*SetClipboardText)(const char *text);
void(*SetAllocatorFunctions)(ImGuiMemAllocFunc alloc_func, ImGuiMemFreeFunc free_func, void *user_data);
void(*GetAllocatorFunctions)(ImGuiMemAllocFunc *p_alloc_func, ImGuiMemFreeFunc *p_free_func, void **p_user_data);
void *(*MemAlloc)(size_t size);
void(*MemFree)(void *ptr);
int(*ImGuiStorage_GetInt)(const imgui_storage_19040 *_this, ImGuiID key, int default_val);
void(*ImGuiStorage_SetInt)(imgui_storage_19040 *_this, ImGuiID key, int val);
bool(*ImGuiStorage_GetBool)(const imgui_storage_19040 *_this, ImGuiID key, bool default_val);
void(*ImGuiStorage_SetBool)(imgui_storage_19040 *_this, ImGuiID key, bool val);
float(*ImGuiStorage_GetFloat)(const imgui_storage_19040 *_this, ImGuiID key, float default_val);
void(*ImGuiStorage_SetFloat)(imgui_storage_19040 *_this, ImGuiID key, float val);
void *(*ImGuiStorage_GetVoidPtr)(const imgui_storage_19040 *_this, ImGuiID key);
void(*ImGuiStorage_SetVoidPtr)(imgui_storage_19040 *_this, ImGuiID key, void *val);
int *(*ImGuiStorage_GetIntRef)(imgui_storage_19040 *_this, ImGuiID key, int default_val);
bool *(*ImGuiStorage_GetBoolRef)(imgui_storage_19040 *_this, ImGuiID key, bool default_val);
float *(*ImGuiStorage_GetFloatRef)(imgui_storage_19040 *_this, ImGuiID key, float default_val);
void **(*ImGuiStorage_GetVoidPtrRef)(imgui_storage_19040 *_this, ImGuiID key, void *default_val);
void(*ImGuiStorage_BuildSortByKey)(imgui_storage_19040 *_this);
void(*ImGuiStorage_SetAllInt)(imgui_storage_19040 *_this, int val);
void(*ConstructImGuiListClipper)(imgui_list_clipper_19040 *_this);
void(*DestructImGuiListClipper)(imgui_list_clipper_19040 *_this);
void(*ImGuiListClipper_Begin)(imgui_list_clipper_19040 *_this, int items_count, float items_height);
void(*ImGuiListClipper_End)(imgui_list_clipper_19040 *_this);
bool(*ImGuiListClipper_Step)(imgui_list_clipper_19040 *_this);
void(*ImGuiListClipper_IncludeItemsByIndex)(imgui_list_clipper_19040 *_this, int item_begin, int item_end);
void(*ImDrawList_PushClipRect)(imgui_draw_list_19040 *_this, const ImVec2 &clip_rect_min, const ImVec2 &clip_rect_max, bool intersect_with_current_clip_rect);
void(*ImDrawList_PushClipRectFullScreen)(imgui_draw_list_19040 *_this);
void(*ImDrawList_PopClipRect)(imgui_draw_list_19040 *_this);
void(*ImDrawList_PushTextureID)(imgui_draw_list_19040 *_this, ImTextureID texture_id);
void(*ImDrawList_PopTextureID)(imgui_draw_list_19040 *_this);
void(*ImDrawList_AddLine)(imgui_draw_list_19040 *_this, const ImVec2 &p1, const ImVec2 &p2, ImU32 col, float thickness);
void(*ImDrawList_AddRect)(imgui_draw_list_19040 *_this, const ImVec2 &p_min, const ImVec2 &p_max, ImU32 col, float rounding, ImDrawFlags flags, float thickness);
void(*ImDrawList_AddRectFilled)(imgui_draw_list_19040 *_this, const ImVec2 &p_min, const ImVec2 &p_max, ImU32 col, float rounding, ImDrawFlags flags);
void(*ImDrawList_AddRectFilledMultiColor)(imgui_draw_list_19040 *_this, const ImVec2 &p_min, const ImVec2 &p_max, ImU32 col_upr_left, ImU32 col_upr_right, ImU32 col_bot_right, ImU32 col_bot_left);
void(*ImDrawList_AddQuad)(imgui_draw_list_19040 *_this, const ImVec2 &p1, const ImVec2 &p2, const ImVec2 &p3, const ImVec2 &p4, ImU32 col, float thickness);
void(*ImDrawList_AddQuadFilled)(imgui_draw_list_19040 *_this, const ImVec2 &p1, const ImVec2 &p2, const ImVec2 &p3, const ImVec2 &p4, ImU32 col);
void(*ImDrawList_AddTriangle)(imgui_draw_list_19040 *_this, const ImVec2 &p1, const ImVec2 &p2, const ImVec2 &p3, ImU32 col, float thickness);
void(*ImDrawList_AddTriangleFilled)(imgui_draw_list_19040 *_this, const ImVec2 &p1, const ImVec2 &p2, const ImVec2 &p3, ImU32 col);
void(*ImDrawList_AddCircle)(imgui_draw_list_19040 *_this, const ImVec2 ¢er, float radius, ImU32 col, int num_segments, float thickness);
void(*ImDrawList_AddCircleFilled)(imgui_draw_list_19040 *_this, const ImVec2 ¢er, float radius, ImU32 col, int num_segments);
void(*ImDrawList_AddNgon)(imgui_draw_list_19040 *_this, const ImVec2 ¢er, float radius, ImU32 col, int num_segments, float thickness);
void(*ImDrawList_AddNgonFilled)(imgui_draw_list_19040 *_this, const ImVec2 ¢er, float radius, ImU32 col, int num_segments);
void(*ImDrawList_AddEllipse)(imgui_draw_list_19040 *_this, const ImVec2 ¢er, float radius_x, float radius_y, ImU32 col, float rot, int num_segments, float thickness);
void(*ImDrawList_AddEllipseFilled)(imgui_draw_list_19040 *_this, const ImVec2 ¢er, float radius_x, float radius_y, ImU32 col, float rot, int num_segments);
void(*ImDrawList_AddText)(imgui_draw_list_19040 *_this, const ImVec2 &pos, ImU32 col, const char *text_begin, const char *text_end);
void(*ImDrawList_AddText2)(imgui_draw_list_19040 *_this, const imgui_font_19040 *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);
void(*ImDrawList_AddPolyline)(imgui_draw_list_19040 *_this, const ImVec2 *points, int num_points, ImU32 col, ImDrawFlags flags, float thickness);
void(*ImDrawList_AddConvexPolyFilled)(imgui_draw_list_19040 *_this, const ImVec2 *points, int num_points, ImU32 col);
void(*ImDrawList_AddBezierCubic)(imgui_draw_list_19040 *_this, const ImVec2 &p1, const ImVec2 &p2, const ImVec2 &p3, const ImVec2 &p4, ImU32 col, float thickness, int num_segments);
void(*ImDrawList_AddBezierQuadratic)(imgui_draw_list_19040 *_this, const ImVec2 &p1, const ImVec2 &p2, const ImVec2 &p3, ImU32 col, float thickness, int num_segments);
void(*ImDrawList_AddImage)(imgui_draw_list_19040 *_this, ImTextureID user_texture_id, const ImVec2 &p_min, const ImVec2 &p_max, const ImVec2 &uv_min, const ImVec2 &uv_max, ImU32 col);
void(*ImDrawList_AddImageQuad)(imgui_draw_list_19040 *_this, 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);
void(*ImDrawList_AddImageRounded)(imgui_draw_list_19040 *_this, 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);
void(*ImDrawList_PathArcTo)(imgui_draw_list_19040 *_this, const ImVec2 ¢er, float radius, float a_min, float a_max, int num_segments);
void(*ImDrawList_PathArcToFast)(imgui_draw_list_19040 *_this, const ImVec2 ¢er, float radius, int a_min_of_12, int a_max_of_12);
void(*ImDrawList_PathEllipticalArcTo)(imgui_draw_list_19040 *_this, const ImVec2 ¢er, float radius_x, float radius_y, float rot, float a_min, float a_max, int num_segments);
void(*ImDrawList_PathBezierCubicCurveTo)(imgui_draw_list_19040 *_this, const ImVec2 &p2, const ImVec2 &p3, const ImVec2 &p4, int num_segments);
void(*ImDrawList_PathBezierQuadraticCurveTo)(imgui_draw_list_19040 *_this, const ImVec2 &p2, const ImVec2 &p3, int num_segments);
void(*ImDrawList_PathRect)(imgui_draw_list_19040 *_this, const ImVec2 &rect_min, const ImVec2 &rect_max, float rounding, ImDrawFlags flags);
void(*ImDrawList_AddCallback)(imgui_draw_list_19040 *_this, ImDrawCallback callback, void *callback_data);
void(*ImDrawList_AddDrawCmd)(imgui_draw_list_19040 *_this);
imgui_draw_list_19040 *(*ImDrawList_CloneOutput)(const imgui_draw_list_19040 *_this);
void(*ImDrawList_PrimReserve)(imgui_draw_list_19040 *_this, int idx_count, int vtx_count);
void(*ImDrawList_PrimUnreserve)(imgui_draw_list_19040 *_this, int idx_count, int vtx_count);
void(*ImDrawList_PrimRect)(imgui_draw_list_19040 *_this, const ImVec2 &a, const ImVec2 &b, ImU32 col);
void(*ImDrawList_PrimRectUV)(imgui_draw_list_19040 *_this, const ImVec2 &a, const ImVec2 &b, const ImVec2 &uv_a, const ImVec2 &uv_b, ImU32 col);
void(*ImDrawList_PrimQuadUV)(imgui_draw_list_19040 *_this, 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);
void(*ConstructImFont)(imgui_font_19040 *_this);
void(*DestructImFont)(imgui_font_19040 *_this);
const ImFontGlyph *(*ImFont_FindGlyph)(const imgui_font_19040 *_this, ImWchar c);
const ImFontGlyph *(*ImFont_FindGlyphNoFallback)(const imgui_font_19040 *_this, ImWchar c);
ImVec2(*ImFont_CalcTextSizeA)(const imgui_font_19040 *_this, float size, float max_width, float wrap_width, const char *text_begin, const char *text_end, const char **remaining);
const char *(*ImFont_CalcWordWrapPositionA)(const imgui_font_19040 *_this, float scale, const char *text, const char *text_end, float wrap_width);
void(*ImFont_RenderChar)(const imgui_font_19040 *_this, imgui_draw_list_19040 *draw_list, float size, const ImVec2 &pos, ImU32 col, ImWchar c);
void(*ImFont_RenderText)(const imgui_font_19040 *_this, imgui_draw_list_19040 *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);
};
extern const imgui_function_table_19040 g_imgui_function_table_19040;