Elaztek Developer Hub
Blamite Game Engine - blam!  00398.09.22.23.2015.blamite
The core library for the Blamite Game Engine.
imgui_internal.h
Go to the documentation of this file.
1 // dear imgui, v1.74 WIP
2 // (internal structures/api)
3 
4 // You may use this file to debug, understand or extend ImGui features but we don't provide any guarantee of forward compatibility!
5 // Set:
6 // #define IMGUI_DEFINE_MATH_OPERATORS
7 // To implement maths operators for ImVec2 (disabled by default to not collide with using IM_VEC2_CLASS_EXTRA along with your own math types+operators)
8 
9 /*
10 
11 Index of this file:
12 // Header mess
13 // Forward declarations
14 // STB libraries includes
15 // Context pointer
16 // Generic helpers
17 // Misc data structures
18 // Main imgui context
19 // Tab bar, tab item
20 // Internal API
21 
22 */
23 
24 #pragma once
25 
26 //-----------------------------------------------------------------------------
27 // Header mess
28 //-----------------------------------------------------------------------------
29 
30 #ifndef IMGUI_VERSION
31 #error Must include imgui.h before imgui_internal.h
32 #endif
33 
34 #include <stdio.h> // FILE*
35 #include <stdlib.h> // NULL, malloc, free, qsort, atoi, atof
36 #include <math.h> // sqrtf, fabsf, fmodf, powf, floorf, ceilf, cosf, sinf
37 #include <limits.h> // INT_MIN, INT_MAX
38 
39 // Visual Studio warnings
40 #ifdef _MSC_VER
41 #pragma warning (push)
42 #pragma warning (disable: 4251) // class 'xxx' needs to have dll-interface to be used by clients of struct 'xxx' // when IMGUI_API is set to__declspec(dllexport)
43 #endif
44 
45 // Clang/GCC warnings with -Weverything
46 #if defined(__clang__)
47 #pragma clang diagnostic push
48 #pragma clang diagnostic ignored "-Wunused-function" // for stb_textedit.h
49 #pragma clang diagnostic ignored "-Wmissing-prototypes" // for stb_textedit.h
50 #pragma clang diagnostic ignored "-Wold-style-cast"
51 #if __has_warning("-Wzero-as-null-pointer-constant")
52 #pragma clang diagnostic ignored "-Wzero-as-null-pointer-constant"
53 #endif
54 #if __has_warning("-Wdouble-promotion")
55 #pragma clang diagnostic ignored "-Wdouble-promotion"
56 #endif
57 #elif defined(__GNUC__)
58 #pragma GCC diagnostic push
59 #pragma GCC diagnostic ignored "-Wpragmas" // warning: unknown option after '#pragma GCC diagnostic' kind
60 #pragma GCC diagnostic ignored "-Wclass-memaccess" // [__GNUC__ >= 8] warning: 'memset/memcpy' clearing/writing an object of type 'xxxx' with no trivial copy-assignment; use assignment or value-initialization instead
61 #endif
62 
63 //-----------------------------------------------------------------------------
64 // Forward declarations
65 //-----------------------------------------------------------------------------
66 
67 struct ImRect; // An axis-aligned rectangle (2 points)
68 struct ImDrawDataBuilder; // Helper to build a ImDrawData instance
69 struct ImDrawListSharedData; // Data shared between all ImDrawList instances
70 struct ImGuiColorMod; // Stacked color modifier, backup of modified data so we can restore it
71 struct ImGuiColumnData; // Storage data for a single column
72 struct ImGuiColumns; // Storage data for a columns set
73 struct ImGuiContext; // Main Dear ImGui context
74 struct ImGuiDataTypeInfo; // Type information associated to a ImGuiDataType enum
75 struct ImGuiGroupData; // Stacked storage data for BeginGroup()/EndGroup()
76 struct ImGuiInputTextState; // Internal state of the currently focused/edited text input box
77 struct ImGuiItemHoveredDataBackup; // Backup and restore IsItemHovered() internal data
78 struct ImGuiMenuColumns; // Simple column measurement, currently used for MenuItem() only
79 struct ImGuiNavMoveResult; // Result of a directional navigation move query result
80 struct ImGuiNextWindowData; // Storage for SetNextWindow** functions
81 struct ImGuiNextItemData; // Storage for SetNextItem** functions
82 struct ImGuiPopupData; // Storage for current popup stack
83 struct ImGuiSettingsHandler; // Storage for one type registered in the .ini file
84 struct ImGuiStyleMod; // Stacked style modifier, backup of modified data so we can restore it
85 struct ImGuiTabBar; // Storage for a tab bar
86 struct ImGuiTabItem; // Storage for a tab item (within a tab bar)
87 struct ImGuiWindow; // Storage for one window
88 struct ImGuiWindowTempData; // Temporary storage for one window (that's the data which in theory we could ditch at the end of the frame)
89 struct ImGuiWindowSettings; // Storage for window settings stored in .ini file (we keep one of those even if the actual window wasn't instanced during this session)
90 
91 // Use your programming IDE "Go to definition" facility on the names of the center columns to find the actual flags/enum lists.
92 typedef int ImGuiLayoutType; // -> enum ImGuiLayoutType_ // Enum: Horizontal or vertical
93 typedef int ImGuiButtonFlags; // -> enum ImGuiButtonFlags_ // Flags: for ButtonEx(), ButtonBehavior()
94 typedef int ImGuiColumnsFlags; // -> enum ImGuiColumnsFlags_ // Flags: BeginColumns()
95 typedef int ImGuiDragFlags; // -> enum ImGuiDragFlags_ // Flags: for DragBehavior()
96 typedef int ImGuiItemFlags; // -> enum ImGuiItemFlags_ // Flags: for PushItemFlag()
97 typedef int ImGuiItemStatusFlags; // -> enum ImGuiItemStatusFlags_ // Flags: for DC.LastItemStatusFlags
98 typedef int ImGuiNavHighlightFlags; // -> enum ImGuiNavHighlightFlags_ // Flags: for RenderNavHighlight()
99 typedef int ImGuiNavDirSourceFlags; // -> enum ImGuiNavDirSourceFlags_ // Flags: for GetNavInputAmount2d()
100 typedef int ImGuiNavMoveFlags; // -> enum ImGuiNavMoveFlags_ // Flags: for navigation requests
101 typedef int ImGuiNextItemDataFlags; // -> enum ImGuiNextItemDataFlags_ // Flags: for SetNextItemXXX() functions
102 typedef int ImGuiNextWindowDataFlags; // -> enum ImGuiNextWindowDataFlags_// Flags: for SetNextWindowXXX() functions
103 typedef int ImGuiSeparatorFlags; // -> enum ImGuiSeparatorFlags_ // Flags: for SeparatorEx()
104 typedef int ImGuiSliderFlags; // -> enum ImGuiSliderFlags_ // Flags: for SliderBehavior()
105 typedef int ImGuiTextFlags; // -> enum ImGuiTextFlags_ // Flags: for TextEx()
106 
107 //-------------------------------------------------------------------------
108 // STB libraries includes
109 //-------------------------------------------------------------------------
110 
111 namespace ImStb
112 {
113 
114 #undef STB_TEXTEDIT_STRING
115 #undef STB_TEXTEDIT_CHARTYPE
116 #define STB_TEXTEDIT_STRING ImGuiInputTextState
117 #define STB_TEXTEDIT_CHARTYPE ImWchar
118 #define STB_TEXTEDIT_GETWIDTH_NEWLINE -1.0f
119 #define STB_TEXTEDIT_UNDOSTATECOUNT 99
120 #define STB_TEXTEDIT_UNDOCHARCOUNT 999
121 #include "imstb_textedit.h"
122 
123 } // namespace ImStb
124 
125 //-----------------------------------------------------------------------------
126 // Context pointer
127 //-----------------------------------------------------------------------------
128 
129 #ifndef GImGui
130 extern IMGUI_API ImGuiContext* GImGui; // Current implicit context pointer
131 #endif
132 
133 //-----------------------------------------------------------------------------
134 // Generic helpers
135 //-----------------------------------------------------------------------------
136 
137 #define IM_PI 3.14159265358979323846f
138 #ifdef _WIN32
139 #define IM_NEWLINE "\r\n" // Play it nice with Windows users (2018/05 news: Microsoft announced that Notepad will finally display Unix-style carriage returns!)
140 #else
141 #define IM_NEWLINE "\n"
142 #endif
143 #define IM_TABSIZE (4)
144 #define IM_STATIC_ASSERT(_COND) typedef char static_assertion_##__line__[(_COND)?1:-1]
145 #define IM_F32_TO_INT8_UNBOUND(_VAL) ((int)((_VAL) * 255.0f + ((_VAL)>=0 ? 0.5f : -0.5f))) // Unsaturated, for display purpose
146 #define IM_F32_TO_INT8_SAT(_VAL) ((int)(ImSaturate(_VAL) * 255.0f + 0.5f)) // Saturated, always output 0..255
147 
148 // Debug Logging
149 #ifndef IMGUI_DEBUG_LOG
150 #define IMGUI_DEBUG_LOG(_FMT,...) printf("[%05d] " _FMT, GImGui->FrameCount, __VA_ARGS__)
151 #endif
152 
153 // Enforce cdecl calling convention for functions called by the standard library, in case compilation settings changed the default to e.g. __vectorcall
154 #ifdef _MSC_VER
155 #define IMGUI_CDECL __cdecl
156 #else
157 #define IMGUI_CDECL
158 #endif
159 
160 // Helpers: UTF-8 <> wchar
161 IMGUI_API int ImTextStrToUtf8(char* buf, int buf_size, const ImWchar* in_text, const ImWchar* in_text_end); // return output UTF-8 bytes count
162 IMGUI_API int ImTextCharFromUtf8(unsigned int* out_char, const char* in_text, const char* in_text_end); // read one character. return input UTF-8 bytes count
163 IMGUI_API int ImTextStrFromUtf8(ImWchar* buf, int buf_size, const char* in_text, const char* in_text_end, const char** in_remaining = NULL); // return input UTF-8 bytes count
164 IMGUI_API int ImTextCountCharsFromUtf8(const char* in_text, const char* in_text_end); // return number of UTF-8 code-points (NOT bytes count)
165 IMGUI_API int ImTextCountUtf8BytesFromChar(const char* in_text, const char* in_text_end); // return number of bytes to express one char in UTF-8
166 IMGUI_API int ImTextCountUtf8BytesFromStr(const ImWchar* in_text, const ImWchar* in_text_end); // return number of bytes to express string in UTF-8
167 
168 // Helpers: Misc
169 IMGUI_API ImU32 ImHashData(const void* data, size_t data_size, ImU32 seed = 0);
170 IMGUI_API ImU32 ImHashStr(const char* data, size_t data_size = 0, ImU32 seed = 0);
171 IMGUI_API void* ImFileLoadToMemory(const char* filename, const char* file_open_mode, size_t* out_file_size = NULL, int padding_bytes = 0);
172 IMGUI_API FILE* ImFileOpen(const char* filename, const char* file_open_mode);
173 static inline bool ImCharIsBlankA(char c) { return c == ' ' || c == '\t'; }
174 static inline bool ImCharIsBlankW(unsigned int c) { return c == ' ' || c == '\t' || c == 0x3000; }
175 static inline bool ImIsPowerOfTwo(int v) { return v != 0 && (v & (v - 1)) == 0; }
176 static inline int ImUpperPowerOfTwo(int v) { v--; v |= v >> 1; v |= v >> 2; v |= v >> 4; v |= v >> 8; v |= v >> 16; v++; return v; }
177 #define ImQsort qsort
178 #ifndef IMGUI_DISABLE_OBSOLETE_FUNCTIONS
179 static inline ImU32 ImHash(const void* data, int size, ImU32 seed = 0) { return size ? ImHashData(data, (size_t)size, seed) : ImHashStr((const char*)data, 0, seed); } // [moved to ImHashStr/ImHashData in 1.68]
180 #endif
181 
182 // Helpers: Geometry
183 IMGUI_API ImVec2 ImLineClosestPoint(const ImVec2& a, const ImVec2& b, const ImVec2& p);
184 IMGUI_API bool ImTriangleContainsPoint(const ImVec2& a, const ImVec2& b, const ImVec2& c, const ImVec2& p);
185 IMGUI_API ImVec2 ImTriangleClosestPoint(const ImVec2& a, const ImVec2& b, const ImVec2& c, const ImVec2& p);
186 IMGUI_API void ImTriangleBarycentricCoords(const ImVec2& a, const ImVec2& b, const ImVec2& c, const ImVec2& p, float& out_u, float& out_v, float& out_w);
187 IMGUI_API ImGuiDir ImGetDirQuadrantFromDelta(float dx, float dy);
188 
189 // Helpers: String
190 IMGUI_API int ImStricmp(const char* str1, const char* str2);
191 IMGUI_API int ImStrnicmp(const char* str1, const char* str2, size_t count);
192 IMGUI_API void ImStrncpy(char* dst, const char* src, size_t count);
193 IMGUI_API char* ImStrdup(const char* str);
194 IMGUI_API char* ImStrdupcpy(char* dst, size_t* p_dst_size, const char* str);
195 IMGUI_API const char* ImStrchrRange(const char* str_begin, const char* str_end, char c);
196 IMGUI_API int ImStrlenW(const ImWchar* str);
197 IMGUI_API const char* ImStreolRange(const char* str, const char* str_end); // End end-of-line
198 IMGUI_API const ImWchar*ImStrbolW(const ImWchar* buf_mid_line, const ImWchar* buf_begin); // Find beginning-of-line
199 IMGUI_API const char* ImStristr(const char* haystack, const char* haystack_end, const char* needle, const char* needle_end);
200 IMGUI_API void ImStrTrimBlanks(char* str);
201 IMGUI_API int ImFormatString(char* buf, size_t buf_size, const char* fmt, ...) IM_FMTARGS(3);
202 IMGUI_API int ImFormatStringV(char* buf, size_t buf_size, const char* fmt, va_list args) IM_FMTLIST(3);
203 IMGUI_API const char* ImParseFormatFindStart(const char* format);
204 IMGUI_API const char* ImParseFormatFindEnd(const char* format);
205 IMGUI_API const char* ImParseFormatTrimDecorations(const char* format, char* buf, size_t buf_size);
206 IMGUI_API int ImParseFormatPrecision(const char* format, int default_value);
207 
208 // Helpers: ImVec2/ImVec4 operators
209 // We are keeping those disabled by default so they don't leak in user space, to allow user enabling implicit cast operators between ImVec2 and their own types (using IM_VEC2_CLASS_EXTRA etc.)
210 // We unfortunately don't have a unary- operator for ImVec2 because this would needs to be defined inside the class itself.
211 #ifdef IMGUI_DEFINE_MATH_OPERATORS
212 static inline ImVec2 operator*(const ImVec2& lhs, const float rhs) { return ImVec2(lhs.x*rhs, lhs.y*rhs); }
213 static inline ImVec2 operator/(const ImVec2& lhs, const float rhs) { return ImVec2(lhs.x/rhs, lhs.y/rhs); }
214 static inline ImVec2 operator+(const ImVec2& lhs, const ImVec2& rhs) { return ImVec2(lhs.x+rhs.x, lhs.y+rhs.y); }
215 static inline ImVec2 operator-(const ImVec2& lhs, const ImVec2& rhs) { return ImVec2(lhs.x-rhs.x, lhs.y-rhs.y); }
216 static inline ImVec2 operator*(const ImVec2& lhs, const ImVec2& rhs) { return ImVec2(lhs.x*rhs.x, lhs.y*rhs.y); }
217 static inline ImVec2 operator/(const ImVec2& lhs, const ImVec2& rhs) { return ImVec2(lhs.x/rhs.x, lhs.y/rhs.y); }
218 static inline ImVec2& operator+=(ImVec2& lhs, const ImVec2& rhs) { lhs.x += rhs.x; lhs.y += rhs.y; return lhs; }
219 static inline ImVec2& operator-=(ImVec2& lhs, const ImVec2& rhs) { lhs.x -= rhs.x; lhs.y -= rhs.y; return lhs; }
220 static inline ImVec2& operator*=(ImVec2& lhs, const float rhs) { lhs.x *= rhs; lhs.y *= rhs; return lhs; }
221 static inline ImVec2& operator/=(ImVec2& lhs, const float rhs) { lhs.x /= rhs; lhs.y /= rhs; return lhs; }
222 static inline ImVec4 operator+(const ImVec4& lhs, const ImVec4& rhs) { return ImVec4(lhs.x+rhs.x, lhs.y+rhs.y, lhs.z+rhs.z, lhs.w+rhs.w); }
223 static inline ImVec4 operator-(const ImVec4& lhs, const ImVec4& rhs) { return ImVec4(lhs.x-rhs.x, lhs.y-rhs.y, lhs.z-rhs.z, lhs.w-rhs.w); }
224 static inline ImVec4 operator*(const ImVec4& lhs, const ImVec4& rhs) { return ImVec4(lhs.x*rhs.x, lhs.y*rhs.y, lhs.z*rhs.z, lhs.w*rhs.w); }
225 #endif
226 
227 // Helpers: Maths
228 // - Wrapper for standard libs functions. (Note that imgui_demo.cpp does _not_ use them to keep the code easy to copy)
229 #ifndef IMGUI_DISABLE_MATH_FUNCTIONS
230 static inline float ImFabs(float x) { return fabsf(x); }
231 static inline float ImSqrt(float x) { return sqrtf(x); }
232 static inline float ImPow(float x, float y) { return powf(x, y); }
233 static inline double ImPow(double x, double y) { return pow(x, y); }
234 static inline float ImFmod(float x, float y) { return fmodf(x, y); }
235 static inline double ImFmod(double x, double y) { return fmod(x, y); }
236 static inline float ImCos(float x) { return cosf(x); }
237 static inline float ImSin(float x) { return sinf(x); }
238 static inline float ImAcos(float x) { return acosf(x); }
239 static inline float ImAtan2(float y, float x) { return atan2f(y, x); }
240 static inline double ImAtof(const char* s) { return atof(s); }
241 static inline float ImFloorStd(float x) { return floorf(x); } // we already uses our own ImFloor() { return (float)(int)v } internally so the standard one wrapper is named differently (it's used by stb_truetype)
242 static inline float ImCeil(float x) { return ceilf(x); }
243 #endif
244 // - ImMin/ImMax/ImClamp/ImLerp/ImSwap are used by widgets which support for variety of types: signed/unsigned int/long long float/double
245 // (Exceptionally using templates here but we could also redefine them for variety of types)
246 template<typename T> static inline T ImMin(T lhs, T rhs) { return lhs < rhs ? lhs : rhs; }
247 template<typename T> static inline T ImMax(T lhs, T rhs) { return lhs >= rhs ? lhs : rhs; }
248 template<typename T> static inline T ImClamp(T v, T mn, T mx) { return (v < mn) ? mn : (v > mx) ? mx : v; }
249 template<typename T> static inline T ImLerp(T a, T b, float t) { return (T)(a + (b - a) * t); }
250 template<typename T> static inline void ImSwap(T& a, T& b) { T tmp = a; a = b; b = tmp; }
251 template<typename T> static inline T ImAddClampOverflow(T a, T b, T mn, T mx) { if (b < 0 && (a < mn - b)) return mn; if (b > 0 && (a > mx - b)) return mx; return a + b; }
252 template<typename T> static inline T ImSubClampOverflow(T a, T b, T mn, T mx) { if (b > 0 && (a < mn + b)) return mn; if (b < 0 && (a > mx + b)) return mx; return a - b; }
253 // - Misc maths helpers
254 static inline ImVec2 ImMin(const ImVec2& lhs, const ImVec2& rhs) { return ImVec2(lhs.x < rhs.x ? lhs.x : rhs.x, lhs.y < rhs.y ? lhs.y : rhs.y); }
255 static inline ImVec2 ImMax(const ImVec2& lhs, const ImVec2& rhs) { return ImVec2(lhs.x >= rhs.x ? lhs.x : rhs.x, lhs.y >= rhs.y ? lhs.y : rhs.y); }
256 static inline ImVec2 ImClamp(const ImVec2& v, const ImVec2& mn, ImVec2 mx) { return ImVec2((v.x < mn.x) ? mn.x : (v.x > mx.x) ? mx.x : v.x, (v.y < mn.y) ? mn.y : (v.y > mx.y) ? mx.y : v.y); }
257 static inline ImVec2 ImLerp(const ImVec2& a, const ImVec2& b, float t) { return ImVec2(a.x + (b.x - a.x) * t, a.y + (b.y - a.y) * t); }
258 static inline ImVec2 ImLerp(const ImVec2& a, const ImVec2& b, const ImVec2& t) { return ImVec2(a.x + (b.x - a.x) * t.x, a.y + (b.y - a.y) * t.y); }
259 static inline ImVec4 ImLerp(const ImVec4& a, const ImVec4& b, float t) { return ImVec4(a.x + (b.x - a.x) * t, a.y + (b.y - a.y) * t, a.z + (b.z - a.z) * t, a.w + (b.w - a.w) * t); }
260 static inline float ImSaturate(float f) { return (f < 0.0f) ? 0.0f : (f > 1.0f) ? 1.0f : f; }
261 static inline float ImLengthSqr(const ImVec2& lhs) { return lhs.x*lhs.x + lhs.y*lhs.y; }
262 static inline float ImLengthSqr(const ImVec4& lhs) { return lhs.x*lhs.x + lhs.y*lhs.y + lhs.z*lhs.z + lhs.w*lhs.w; }
263 static inline float ImInvLength(const ImVec2& lhs, float fail_value) { float d = lhs.x*lhs.x + lhs.y*lhs.y; if (d > 0.0f) return 1.0f / ImSqrt(d); return fail_value; }
264 static inline float ImFloor(float f) { return (float)(int)f; }
265 static inline ImVec2 ImFloor(const ImVec2& v) { return ImVec2((float)(int)v.x, (float)(int)v.y); }
266 static inline int ImModPositive(int a, int b) { return (a + b) % b; }
267 static inline float ImDot(const ImVec2& a, const ImVec2& b) { return a.x * b.x + a.y * b.y; }
268 static inline ImVec2 ImRotate(const ImVec2& v, float cos_a, float sin_a) { return ImVec2(v.x * cos_a - v.y * sin_a, v.x * sin_a + v.y * cos_a); }
269 static inline float ImLinearSweep(float current, float target, float speed) { if (current < target) return ImMin(current + speed, target); if (current > target) return ImMax(current - speed, target); return current; }
270 static inline ImVec2 ImMul(const ImVec2& lhs, const ImVec2& rhs) { return ImVec2(lhs.x * rhs.x, lhs.y * rhs.y); }
271 
272 // Helper: ImBoolVector. Store 1-bit per value.
273 // Note that Resize() currently clears the whole vector.
275 {
278  void Resize(int sz) { Storage.resize((sz + 31) >> 5); memset(Storage.Data, 0, (size_t)Storage.Size * sizeof(Storage.Data[0])); }
279  void Clear() { Storage.clear(); }
280  bool GetBit(int n) const { int off = (n >> 5); int mask = 1 << (n & 31); return (Storage[off] & mask) != 0; }
281  void SetBit(int n, bool v) { int off = (n >> 5); int mask = 1 << (n & 31); if (v) Storage[off] |= mask; else Storage[off] &= ~mask; }
282 };
283 
284 // Helper: ImPool<>. Basic keyed storage for contiguous instances, slow/amortized insertion, O(1) indexable, O(Log N) queries by ID over a dense/hot buffer,
285 // Honor constructor/destructor. Add/remove invalidate all pointers. Indexes have the same lifetime as the associated object.
286 typedef int ImPoolIdx;
287 template<typename T>
289 {
290  ImVector<T> Data; // Contiguous data
291  ImGuiStorage Map; // ID->Index
292  ImPoolIdx FreeIdx; // Next free idx to use
293 
294  ImPool() { FreeIdx = 0; }
295  ~ImPool() { Clear(); }
296  T* GetByKey(ImGuiID key) { int idx = Map.GetInt(key, -1); return (idx != -1) ? &Data[idx] : NULL; }
297  T* GetByIndex(ImPoolIdx n) { return &Data[n]; }
298  ImPoolIdx GetIndex(const T* p) const { IM_ASSERT(p >= Data.Data && p < Data.Data + Data.Size); return (ImPoolIdx)(p - Data.Data); }
299  T* GetOrAddByKey(ImGuiID key) { int* p_idx = Map.GetIntRef(key, -1); if (*p_idx != -1) return &Data[*p_idx]; *p_idx = FreeIdx; return Add(); }
300  bool Contains(const T* p) const { return (p >= Data.Data && p < Data.Data + Data.Size); }
301  void Clear() { for (int n = 0; n < Map.Data.Size; n++) { int idx = Map.Data[n].val_i; if (idx != -1) Data[idx].~T(); } Map.Clear(); Data.clear(); FreeIdx = 0; }
302  T* Add() { int idx = FreeIdx; if (idx == Data.Size) { Data.resize(Data.Size + 1); FreeIdx++; } else { FreeIdx = *(int*)&Data[idx]; } IM_PLACEMENT_NEW(&Data[idx]) T(); return &Data[idx]; }
303  void Remove(ImGuiID key, const T* p) { Remove(key, GetIndex(p)); }
304  void Remove(ImGuiID key, ImPoolIdx idx) { Data[idx].~T(); *(int*)&Data[idx] = FreeIdx; FreeIdx = idx; Map.SetInt(key, -1); }
305  void Reserve(int capacity) { Data.reserve(capacity); Map.Data.reserve(capacity); }
306  int GetSize() const { return Data.Size; }
307 };
308 
309 //-----------------------------------------------------------------------------
310 // Misc data structures
311 //-----------------------------------------------------------------------------
312 
314 {
316  ImGuiButtonFlags_Repeat = 1 << 0, // hold to repeat
317  ImGuiButtonFlags_PressedOnClickRelease = 1 << 1, // [Default] return true on click + release on same item
318  ImGuiButtonFlags_PressedOnClick = 1 << 2, // return true on click (default requires click+release)
319  ImGuiButtonFlags_PressedOnRelease = 1 << 3, // return true on release (default requires click+release)
320  ImGuiButtonFlags_PressedOnDoubleClick = 1 << 4, // return true on double-click (default requires click+release)
321  ImGuiButtonFlags_FlattenChildren = 1 << 5, // allow interactions even if a child window is overlapping
322  ImGuiButtonFlags_AllowItemOverlap = 1 << 6, // require previous frame HoveredId to either match id or be null before being usable, use along with SetItemAllowOverlap()
323  ImGuiButtonFlags_DontClosePopups = 1 << 7, // disable automatically closing parent popup on press // [UNUSED]
324  ImGuiButtonFlags_Disabled = 1 << 8, // disable interactions
325  ImGuiButtonFlags_AlignTextBaseLine = 1 << 9, // vertically align button to match text baseline - ButtonEx() only // FIXME: Should be removed and handled by SmallButton(), not possible currently because of DC.CursorPosPrevLine
326  ImGuiButtonFlags_NoKeyModifiers = 1 << 10, // disable interaction if a key modifier is held
327  ImGuiButtonFlags_NoHoldingActiveID = 1 << 11, // don't set ActiveId while holding the mouse (ImGuiButtonFlags_PressedOnClick only)
328  ImGuiButtonFlags_PressedOnDragDropHold = 1 << 12, // press when held into while we are drag and dropping another item (used by e.g. tree nodes, collapsing headers)
329  ImGuiButtonFlags_NoNavFocus = 1 << 13, // don't override navigation focus when activated
330  ImGuiButtonFlags_NoHoveredOnNav = 1 << 14 // don't report as hovered when navigated on
331 };
332 
334 {
337 };
338 
340 {
343 };
344 
346 {
347  // Default: 0
349  ImGuiColumnsFlags_NoBorder = 1 << 0, // Disable column dividers
350  ImGuiColumnsFlags_NoResize = 1 << 1, // Disable resizing columns when clicking on the dividers
351  ImGuiColumnsFlags_NoPreserveWidths = 1 << 2, // Disable column width preservation when adjusting columns
352  ImGuiColumnsFlags_NoForceWithinWindow = 1 << 3, // Disable forcing columns to fit within window
353  ImGuiColumnsFlags_GrowParentContentsSize= 1 << 4 // (WIP) Restore pre-1.51 behavior of extending the parent window contents size but _without affecting the columns width at all_. Will eventually remove.
354 };
355 
356 // Extend ImGuiSelectableFlags_
358 {
359  // NB: need to be in sync with last value of ImGuiSelectableFlags_
363  ImGuiSelectableFlags_DrawFillAvailWidth = 1 << 23, // FIXME: We may be able to remove this (added in 6251d379 for menus)
364  ImGuiSelectableFlags_DrawHoveredWhenHeld= 1 << 24, // Always show active when held, even is not hovered. This concept could probably be renamed/formalized somehow.
366 };
367 
368 // Extend ImGuiTreeNodeFlags_
370 {
372 };
373 
375 {
377  ImGuiSeparatorFlags_Horizontal = 1 << 0, // Axis default to current layout type, so generally Horizontal unless e.g. in a menu bar
380 };
381 
382 // Transient per-window flags, reset at the beginning of the frame. For child window, inherited from parent on first Begin().
383 // This is going to be exposed in imgui.h when stabilized enough.
385 {
386  ImGuiItemFlags_NoTabStop = 1 << 0, // false
387  ImGuiItemFlags_ButtonRepeat = 1 << 1, // false // Button() will return true multiple times based on io.KeyRepeatDelay and io.KeyRepeatRate settings.
388  ImGuiItemFlags_Disabled = 1 << 2, // false // [BETA] Disable interactions but doesn't affect visuals yet. See github.com/ocornut/imgui/issues/211
389  ImGuiItemFlags_NoNav = 1 << 3, // false
391  ImGuiItemFlags_SelectableDontClosePopup = 1 << 5, // false // MenuItem/Selectable() automatically closes current Popup window
392  ImGuiItemFlags_MixedValue = 1 << 6, // false // [BETA] Represent a mixed/indeterminate value, generally multi-selection where values differ. Currently only supported by Checkbox() (later should support all sorts of widgets)
394 };
395 
396 // Storage for LastItem data
398 {
402  ImGuiItemStatusFlags_Edited = 1 << 2, // Value exposed by item was edited in the current frame (should match the bool return value of most widgets)
403  ImGuiItemStatusFlags_ToggledSelection = 1 << 3, // Set when Selectable(), TreeNode() reports toggling a selection. We can't report "Selected" because reporting the change allows us to handle clipping with less issues.
404  ImGuiItemStatusFlags_HasDeactivated = 1 << 4, // Set if the widget/group is able to provide data for the ImGuiItemStatusFlags_Deactivated flag.
405  ImGuiItemStatusFlags_Deactivated = 1 << 5 // Only valid if ImGuiItemStatusFlags_HasDeactivated is set.
406 
407 #ifdef IMGUI_ENABLE_TEST_ENGINE
408  , // [imgui_tests only]
409  ImGuiItemStatusFlags_Openable = 1 << 10, //
410  ImGuiItemStatusFlags_Opened = 1 << 11, //
411  ImGuiItemStatusFlags_Checkable = 1 << 12, //
412  ImGuiItemStatusFlags_Checked = 1 << 13 //
413 #endif
414 };
415 
417 {
420 };
421 
422 // FIXME: this is in development, not exposed/functional as a generic feature yet.
423 // Horizontal/Vertical enums are fixed to 0/1 so they may be used to index ImVec2
425 {
428 };
429 
431 {
437 };
438 
439 // X/Y enums are fixed to 0/1 so they may be used to index ImVec2
441 {
445 };
446 
448 {
451 };
452 
454 {
458  ImGuiInputSource_NavKeyboard, // Only used occasionally for storage, not tested/handled by most code
461 };
462 
463 // FIXME-NAV: Clarify/expose various repeat delay/rate
465 {
472 };
473 
475 {
479  ImGuiNavHighlightFlags_AlwaysDraw = 1 << 2, // Draw rectangular highlight if (g.NavId == id) _even_ when using the mouse.
481 };
482 
484 {
489 };
490 
492 {
494  ImGuiNavMoveFlags_LoopX = 1 << 0, // On failed request, restart from opposite side
496  ImGuiNavMoveFlags_WrapX = 1 << 2, // On failed request, request from opposite side one line down (when NavDir==right) or one line up (when NavDir==left)
497  ImGuiNavMoveFlags_WrapY = 1 << 3, // This is not super useful for provided for completeness
498  ImGuiNavMoveFlags_AllowCurrentNavId = 1 << 4, // Allow scoring and considering the current NavId as a move target candidate. This is used when the move source is offset (e.g. pressing PageDown actually needs to send a Up move request, if we are pressing PageDown from the bottom-most item we need to stay in place)
499  ImGuiNavMoveFlags_AlsoScoreVisibleSet = 1 << 5, // Store alternate result in NavMoveResultLocalVisibleSet that only comprise elements that are already fully visible.
501 };
502 
504 {
508 };
509 
511 {
512  ImGuiNavLayer_Main = 0, // Main scrolling layer
513  ImGuiNavLayer_Menu = 1, // Menu layer (access with Alt/ImGuiNavInput_Menu)
515 };
516 
518 {
521 };
522 
523 // 1D vector (this odd construct is used to facilitate the transition between 1D and 2D, and the maintenance of some branches/patches)
524 struct ImVec1
525 {
526  float x;
527  ImVec1() { x = 0.0f; }
528  ImVec1(float _x) { x = _x; }
529 };
530 
531 // 2D vector (half-size integer)
532 struct ImVec2ih
533 {
534  short x, y;
535  ImVec2ih() { x = y = 0; }
536  ImVec2ih(short _x, short _y) { x = _x; y = _y; }
537 };
538 
539 // 2D axis aligned bounding-box
540 // NB: we can't rely on ImVec2 math operators being available here
542 {
543  ImVec2 Min; // Upper-left
544  ImVec2 Max; // Lower-right
545 
546  ImRect() : Min(FLT_MAX,FLT_MAX), Max(-FLT_MAX,-FLT_MAX) {}
547  ImRect(const ImVec2& min, const ImVec2& max) : Min(min), Max(max) {}
548  ImRect(const ImVec4& v) : Min(v.x, v.y), Max(v.z, v.w) {}
549  ImRect(float x1, float y1, float x2, float y2) : Min(x1, y1), Max(x2, y2) {}
550 
551  ImVec2 GetCenter() const { return ImVec2((Min.x + Max.x) * 0.5f, (Min.y + Max.y) * 0.5f); }
552  ImVec2 GetSize() const { return ImVec2(Max.x - Min.x, Max.y - Min.y); }
553  float GetWidth() const { return Max.x - Min.x; }
554  float GetHeight() const { return Max.y - Min.y; }
555  ImVec2 GetTL() const { return Min; } // Top-left
556  ImVec2 GetTR() const { return ImVec2(Max.x, Min.y); } // Top-right
557  ImVec2 GetBL() const { return ImVec2(Min.x, Max.y); } // Bottom-left
558  ImVec2 GetBR() const { return Max; } // Bottom-right
559  bool Contains(const ImVec2& p) const { return p.x >= Min.x && p.y >= Min.y && p.x < Max.x && p.y < Max.y; }
560  bool Contains(const ImRect& r) const { return r.Min.x >= Min.x && r.Min.y >= Min.y && r.Max.x <= Max.x && r.Max.y <= Max.y; }
561  bool Overlaps(const ImRect& r) const { return r.Min.y < Max.y && r.Max.y > Min.y && r.Min.x < Max.x && r.Max.x > Min.x; }
562  void Add(const ImVec2& p) { if (Min.x > p.x) Min.x = p.x; if (Min.y > p.y) Min.y = p.y; if (Max.x < p.x) Max.x = p.x; if (Max.y < p.y) Max.y = p.y; }
563  void Add(const ImRect& r) { if (Min.x > r.Min.x) Min.x = r.Min.x; if (Min.y > r.Min.y) Min.y = r.Min.y; if (Max.x < r.Max.x) Max.x = r.Max.x; if (Max.y < r.Max.y) Max.y = r.Max.y; }
564  void Expand(const float amount) { Min.x -= amount; Min.y -= amount; Max.x += amount; Max.y += amount; }
565  void Expand(const ImVec2& amount) { Min.x -= amount.x; Min.y -= amount.y; Max.x += amount.x; Max.y += amount.y; }
566  void Translate(const ImVec2& d) { Min.x += d.x; Min.y += d.y; Max.x += d.x; Max.y += d.y; }
567  void TranslateX(float dx) { Min.x += dx; Max.x += dx; }
568  void TranslateY(float dy) { Min.y += dy; Max.y += dy; }
569  void ClipWith(const ImRect& r) { Min = ImMax(Min, r.Min); Max = ImMin(Max, r.Max); } // Simple version, may lead to an inverted rectangle, which is fine for Contains/Overlaps test but not for display.
570  void ClipWithFull(const ImRect& r) { Min = ImClamp(Min, r.Min, r.Max); Max = ImClamp(Max, r.Min, r.Max); } // Full version, ensure both points are fully clipped.
571  void Floor() { Min.x = (float)(int)Min.x; Min.y = (float)(int)Min.y; Max.x = (float)(int)Max.x; Max.y = (float)(int)Max.y; }
572  bool IsInverted() const { return Min.x > Max.x || Min.y > Max.y; }
573 };
574 
575 // Type information associated to one ImGuiDataType. Retrieve with DataTypeGetInfo().
577 {
578  size_t Size; // Size in byte
579  const char* PrintFmt; // Default printf format for the type
580  const char* ScanFmt; // Default scanf format for the type
581 };
582 
583 // Stacked color modifier, backup of modified data so we can restore it
585 {
588 };
589 
590 // Stacked style modifier, backup of modified data so we can restore it. Data type inferred from the variable.
592 {
594  union { int BackupInt[2]; float BackupFloat[2]; };
595  ImGuiStyleMod(ImGuiStyleVar idx, int v) { VarIdx = idx; BackupInt[0] = v; }
596  ImGuiStyleMod(ImGuiStyleVar idx, float v) { VarIdx = idx; BackupFloat[0] = v; }
597  ImGuiStyleMod(ImGuiStyleVar idx, ImVec2 v) { VarIdx = idx; BackupFloat[0] = v.x; BackupFloat[1] = v.y; }
598 };
599 
600 // Stacked storage data for BeginGroup()/EndGroup()
602 {
611  bool EmitItem;
612 };
613 
614 // Simple column measurement, currently used for MenuItem() only.. This is very short-sighted/throw-away code and NOT a generic helper.
616 {
617  float Spacing;
618  float Width, NextWidth;
619  float Pos[3], NextWidths[3];
620 
622  void Update(int count, float spacing, bool clear);
623  float DeclColumns(float w0, float w1, float w2);
624  float CalcExtraSpace(float avail_w);
625 };
626 
627 // Internal state of the currently focused/edited text input box
629 {
630  ImGuiID ID; // widget id owning the text state
631  int CurLenW, CurLenA; // we need to maintain our buffer length in both UTF-8 and wchar format. UTF-8 len is valid even if TextA is not.
632  ImVector<ImWchar> TextW; // edit buffer, we need to persist but can't guarantee the persistence of the user-provided buffer. so we copy into own buffer.
633  ImVector<char> TextA; // temporary UTF8 buffer for callbacks and other operations. this is not updated in every code-path! size=capacity.
634  ImVector<char> InitialTextA; // backup of end-user buffer at the time of focus (in UTF-8, unaltered)
635  bool TextAIsValid; // temporary UTF8 buffer is not initially valid before we make the widget active (until then we pull the data from user argument)
636  int BufCapacityA; // end-user buffer capacity
637  float ScrollX; // horizontal scrolling/offset
638  ImStb::STB_TexteditState Stb; // state for stb_textedit.h
639  float CursorAnim; // timer for cursor blink, reset on every user action so the cursor reappears immediately
640  bool CursorFollow; // set when we want scrolling to follow the current cursor position (not always!)
641  bool SelectedAllMouseLock; // after a double-click to select all, we ignore further mouse drags to update selection
642  ImGuiInputTextFlags UserFlags; // Temporarily set while we call user's callback
644  void* UserCallbackData; // "
645 
646  ImGuiInputTextState() { memset(this, 0, sizeof(*this)); }
647  void ClearText() { CurLenW = CurLenA = 0; TextW[0] = 0; TextA[0] = 0; CursorClamp(); }
648  void ClearFreeMemory() { TextW.clear(); TextA.clear(); InitialTextA.clear(); }
649  int GetUndoAvailCount() const { return Stb.undostate.undo_point; }
650  int GetRedoAvailCount() const { return STB_TEXTEDIT_UNDOSTATECOUNT - Stb.undostate.redo_point; }
651  void OnKeyPressed(int key); // Cannot be inline because we call in code in stb_textedit.h implementation
652 
653  // Cursor & Selection
654  void CursorAnimReset() { CursorAnim = -0.30f; } // After a user-input the cursor stays on for a while without blinking
655  void CursorClamp() { Stb.cursor = ImMin(Stb.cursor, CurLenW); Stb.select_start = ImMin(Stb.select_start, CurLenW); Stb.select_end = ImMin(Stb.select_end, CurLenW); }
656  bool HasSelection() const { return Stb.select_start != Stb.select_end; }
657  void ClearSelection() { Stb.select_start = Stb.select_end = Stb.cursor; }
658  void SelectAll() { Stb.select_start = 0; Stb.cursor = Stb.select_end = CurLenW; Stb.has_preferred_x = 0; }
659 };
660 
661 // Windows data saved in imgui.ini file
663 {
664  char* Name;
668  bool Collapsed;
669 
670  ImGuiWindowSettings() { Name = NULL; ID = 0; Pos = Size = ImVec2ih(0, 0); Collapsed = false; }
671 };
672 
674 {
675  const char* TypeName; // Short description stored in .ini file. Disallowed characters: '[' ']'
676  ImGuiID TypeHash; // == ImHashStr(TypeName)
677  void* (*ReadOpenFn)(ImGuiContext* ctx, ImGuiSettingsHandler* handler, const char* name); // Read: Called when entering into a new ini entry e.g. "[Window][Name]"
678  void (*ReadLineFn)(ImGuiContext* ctx, ImGuiSettingsHandler* handler, void* entry, const char* line); // Read: Called for every line of text within an ini entry
679  void (*WriteAllFn)(ImGuiContext* ctx, ImGuiSettingsHandler* handler, ImGuiTextBuffer* out_buf); // Write: Output every entries into 'out_buf'
680  void* UserData;
681 
682  ImGuiSettingsHandler() { memset(this, 0, sizeof(*this)); }
683 };
684 
685 // Storage for current popup stack
687 {
688  ImGuiID PopupId; // Set on OpenPopup()
689  ImGuiWindow* Window; // Resolved on BeginPopup() - may stay unresolved if user never calls OpenPopup()
690  ImGuiWindow* SourceWindow; // Set on OpenPopup() copy of NavWindow at the time of opening the popup
691  int OpenFrameCount; // Set on OpenPopup()
692  ImGuiID OpenParentId; // Set on OpenPopup(), we need this to differentiate multiple menu sets from each others (e.g. inside menu bar vs loose menu items)
693  ImVec2 OpenPopupPos; // Set on OpenPopup(), preferred popup position (typically == OpenMousePos when using mouse)
694  ImVec2 OpenMousePos; // Set on OpenPopup(), copy of mouse position at the time of opening popup
695 
697 };
698 
700 {
701  float OffsetNorm; // Column start offset, normalized 0.0 (far left) -> 1.0 (far right)
703  ImGuiColumnsFlags Flags; // Not exposed
705 
707 };
708 
710 {
715  int Current;
716  int Count;
717  float OffMinX, OffMaxX; // Offsets from HostWorkRect.Min.x
719  float HostCursorPosY; // Backup of CursorPos at the time of BeginColumns()
720  float HostCursorMaxPosX; // Backup of CursorMaxPos at the time of BeginColumns()
721  ImRect HostClipRect; // Backup of ClipRect at the time of BeginColumns()
722  ImRect HostWorkRect; // Backup of WorkRect at the time of BeginColumns()
724 
726  void Clear()
727  {
728  ID = 0;
730  IsFirstFrame = false;
731  IsBeingResized = false;
732  Current = 0;
733  Count = 1;
734  OffMinX = OffMaxX = 0.0f;
735  LineMinY = LineMaxY = 0.0f;
736  HostCursorPosY = 0.0f;
737  HostCursorMaxPosX = 0.0f;
738  Columns.clear();
739  }
740 };
741 
742 // Data shared between all ImDrawList instances
744 {
745  ImVec2 TexUvWhitePixel; // UV of white pixel in the atlas
746  ImFont* Font; // Current/default font (optional, for simplified AddText overload)
747  float FontSize; // Current/default font size (optional, for simplified AddText overload)
749  ImVec4 ClipRectFullscreen; // Value for PushClipRectFullscreen()
750  ImDrawListFlags InitialFlags; // Initial flags at the beginning of the frame (it is possible to alter flags on a per-drawlist basis afterwards)
751 
752  // Const data
753  // FIXME: Bake rounded corners fill/borders in atlas
754  ImVec2 CircleVtx12[12];
755 
757 };
758 
760 {
761  ImVector<ImDrawList*> Layers[2]; // Global layers for: regular, tooltip
762 
763  void Clear() { for (int n = 0; n < IM_ARRAYSIZE(Layers); n++) Layers[n].resize(0); }
764  void ClearFreeMemory() { for (int n = 0; n < IM_ARRAYSIZE(Layers); n++) Layers[n].clear(); }
766 };
767 
769 {
770  ImGuiID ID; // Best candidate
771  ImGuiID SelectScopeId;// Best candidate window current selectable group ID
772  ImGuiWindow* Window; // Best candidate window
773  float DistBox; // Best candidate box distance to current NavId
774  float DistCenter; // Best candidate center distance to current NavId
775  float DistAxial;
776  ImRect RectRel; // Best candidate bounding box in window relative space
777 
779  void Clear() { ID = SelectScopeId = 0; Window = NULL; DistBox = DistCenter = DistAxial = FLT_MAX; RectRel = ImRect(); }
780 };
781 
783 {
792 };
793 
794 // Storage for SetNexWindow** functions
796 {
809  float BgAlphaVal;
810  ImVec2 MenuBarOffsetMinVal; // *Always on* This is not exposed publicly, so we don't clear it.
811 
812  ImGuiNextWindowData() { memset(this, 0, sizeof(*this)); }
814 };
815 
817 {
821 };
822 
824 {
826  float Width; // Set by SetNextItemWidth().
827  bool OpenVal; // Set by SetNextItemOpen() function.
829 
830  ImGuiNextItemData() { memset(this, 0, sizeof(*this)); }
832 };
833 
834 //-----------------------------------------------------------------------------
835 // Tabs
836 //-----------------------------------------------------------------------------
837 
839 {
840  int Index;
841  float Width;
842 };
843 
845 {
846  void* Ptr; // Either field can be set, not both. e.g. Dock node tab bars are loose while BeginTabBar() ones are in a pool.
847  int Index; // Usually index in a main pool.
848 
849  ImGuiPtrOrIndex(void* ptr) { Ptr = ptr; Index = -1; }
850  ImGuiPtrOrIndex(int index) { Ptr = NULL; Index = index; }
851 };
852 
853 //-----------------------------------------------------------------------------
854 // Main imgui context
855 //-----------------------------------------------------------------------------
856 
858 {
860  bool FrameScopeActive; // Set by NewFrame(), cleared by EndFrame()
861  bool FrameScopePushedImplicitWindow; // Set by NewFrame(), cleared by EndFrame()
862  bool FontAtlasOwnedByContext; // Io.Fonts-> is owned by the ImGuiContext and will be destructed along with it.
865  ImFont* Font; // (Shortcut) == FontStack.empty() ? IO.Font : FontStack.back()
866  float FontSize; // (Shortcut) == FontBaseSize * g.CurrentWindow->FontWindowScale == window->FontSize(). Text height for current window.
867  float FontBaseSize; // (Shortcut) == IO.FontGlobalScale * Font->Scale * Font->FontSize. Base text height.
869  double Time;
873 
874  // Windows state
875  ImVector<ImGuiWindow*> Windows; // Windows, sorted in display order, back to front
876  ImVector<ImGuiWindow*> WindowsFocusOrder; // Windows, sorted in focus order, back to front
881  ImGuiWindow* CurrentWindow; // Being drawn into
882  ImGuiWindow* HoveredWindow; // Will catch mouse inputs
883  ImGuiWindow* HoveredRootWindow; // Will catch mouse inputs (for focus/move only)
884  ImGuiWindow* MovingWindow; // Track the window we clicked on (in order to preserve focus). The actually window that is moved is generally MovingWindow->RootWindow.
888 
889  // Item/widgets state and tracking information
890  ImGuiID HoveredId; // Hovered widget
893  float HoveredIdTimer; // Measure contiguous hovering time
894  float HoveredIdNotActiveTimer; // Measure contiguous hovering time where the item has not been active
895  ImGuiID ActiveId; // Active widget
896  ImGuiID ActiveIdIsAlive; // Active widget has been seen this frame (we can't use a bool as the ActiveId may change within the frame)
898  bool ActiveIdIsJustActivated; // Set at the time of activation for one frame
899  bool ActiveIdAllowOverlap; // Active widget allows another widget to steal active id (generally for overlapping widgets, but not always)
900  bool ActiveIdHasBeenPressedBefore; // Track whether the active id led to a press (this is to allow changing between PressOnClick and PressOnRelease without pressing twice). Used by range_select branch.
901  bool ActiveIdHasBeenEditedBefore; // Was the value associated to the widget Edited over the course of the Active state.
903  int ActiveIdAllowNavDirFlags; // Active widget allows using directional navigation (e.g. can activate a button and move away from it)
905  ImVec2 ActiveIdClickOffset; // Clicked offset from upper-left corner, if applicable (currently only set by ButtonBehavior)
907  ImGuiInputSource ActiveIdSource; // Activating with mouse or nav (gamepad/keyboard)
912 
913  ImGuiID LastActiveId; // Store the last non-zero ActiveId, useful for animation.
914  float LastActiveIdTimer; // Store the last non-zero ActiveId timer since the beginning of activation, useful for animation.
915 
916  // Next window/item data
917  ImGuiNextWindowData NextWindowData; // Storage for SetNextWindow** functions
918  ImGuiNextItemData NextItemData; // Storage for SetNextItem** functions
919 
920  // Shared stacks
921  ImVector<ImGuiColorMod> ColorModifiers; // Stack for PushStyleColor()/PopStyleColor()
922  ImVector<ImGuiStyleMod> StyleModifiers; // Stack for PushStyleVar()/PopStyleVar()
923  ImVector<ImFont*> FontStack; // Stack for PushFont()/PopFont()
924  ImVector<ImGuiPopupData>OpenPopupStack; // Which popups are open (persistent)
925  ImVector<ImGuiPopupData>BeginPopupStack; // Which level of BeginPopup() we are in (reset every frame)
926 
927  // Navigation data (for gamepad/keyboard)
928  ImGuiWindow* NavWindow; // Focused window for navigation. Could be called 'FocusWindow'
929  ImGuiID NavId; // Focused item for navigation
930  ImGuiID NavActivateId; // ~~ (g.ActiveId == 0) && IsNavInputPressed(ImGuiNavInput_Activate) ? NavId : 0, also set when calling ActivateItem()
931  ImGuiID NavActivateDownId; // ~~ IsNavInputDown(ImGuiNavInput_Activate) ? NavId : 0
932  ImGuiID NavActivatePressedId; // ~~ IsNavInputPressed(ImGuiNavInput_Activate) ? NavId : 0
933  ImGuiID NavInputId; // ~~ IsNavInputPressed(ImGuiNavInput_Input) ? NavId : 0
934  ImGuiID NavJustTabbedId; // Just tabbed to this id.
935  ImGuiID NavJustMovedToId; // Just navigated to this id (result of a successfully MoveRequest).
936  ImGuiID NavJustMovedToMultiSelectScopeId; // Just navigated to this select scope id (result of a successfully MoveRequest).
937  ImGuiID NavNextActivateId; // Set by ActivateItem(), queued until next frame.
938  ImGuiInputSource NavInputSource; // Keyboard or Gamepad mode? THIS WILL ONLY BE None or NavGamepad or NavKeyboard.
939  ImRect NavScoringRectScreen; // Rectangle used for scoring, in screen space. Based of window->DC.NavRefRectRel[], modified for directional navigation scoring.
940  int NavScoringCount; // Metrics for debugging
941  ImGuiWindow* NavWindowingTarget; // When selecting a window (holding Menu+FocusPrev/Next, or equivalent of CTRL-TAB) this window is temporarily displayed top-most.
942  ImGuiWindow* NavWindowingTargetAnim; // Record of last valid NavWindowingTarget until DimBgRatio and NavWindowingHighlightAlpha becomes 0.0f
947  ImGuiNavLayer NavLayer; // Layer we are navigating on. For now the system is hard-coded for 0=main contents and 1=menu/title bar, may expose layers later.
948  int NavIdTabCounter; // == NavWindow->DC.FocusIdxTabCounter at time of NavId processing
949  bool NavIdIsAlive; // Nav widget has been seen this frame ~~ NavRefRectRel is valid
950  bool NavMousePosDirty; // When set we will update mouse position if (io.ConfigFlags & ImGuiConfigFlags_NavEnableSetMousePos) if set (NB: this not enabled by default)
951  bool NavDisableHighlight; // When user starts using mouse, we hide gamepad/keyboard highlight (NB: but they are still available, which is why NavDisableHighlight isn't always != NavDisableMouseHover)
952  bool NavDisableMouseHover; // When user starts using gamepad/keyboard, we hide mouse hovering highlight until mouse is touched again.
953  bool NavAnyRequest; // ~~ NavMoveRequest || NavInitRequest
954  bool NavInitRequest; // Init request for appearing window to select first item
958  bool NavMoveFromClampedRefRect; // Set by manual scrolling, if we scroll to a point where NavId isn't visible we reset navigation from visible items
959  bool NavMoveRequest; // Move request for this frame
961  ImGuiNavForward NavMoveRequestForward; // None / ForwardQueued / ForwardActive (this is used to navigate sibling parent menus from a child menu)
962  ImGuiDir NavMoveDir, NavMoveDirLast; // Direction of the move request (left/right/up/down), direction of the previous move request
963  ImGuiDir NavMoveClipDir; // FIXME-NAV: Describe the purpose of this better. Might want to rename?
964  ImGuiNavMoveResult NavMoveResultLocal; // Best move request candidate within NavWindow
965  ImGuiNavMoveResult NavMoveResultLocalVisibleSet; // Best move request candidate within NavWindow that are mostly visible (when using ImGuiNavMoveFlags_AlsoScoreVisibleSet flag)
966  ImGuiNavMoveResult NavMoveResultOther; // Best move request candidate within NavWindow's flattened hierarchy (when using ImGuiWindowFlags_NavFlattened flag)
967 
968  // Tabbing system (older than Nav, active even if Nav is disabled. FIXME-NAV: This needs a redesign!)
971  int FocusRequestCurrCounterAll; // Any item being requested for focus, stored as an index (we on layout to be stable between the frame pressing TAB and the next frame, semi-ouch)
972  int FocusRequestCurrCounterTab; // Tab item being requested for focus, stored as an index
973  int FocusRequestNextCounterAll; // Stored for next frame
976 
977  // Render
978  ImDrawData DrawData; // Main ImDrawData instance to pass render information to the user
980  float DimBgRatio; // 0.0..1.0 animation when fading in a dimming background (for modal window and CTRL+TAB list)
981  ImDrawList BackgroundDrawList; // First draw list to be rendered.
982  ImDrawList ForegroundDrawList; // Last draw list to be rendered. This is where we the render software mouse cursor (if io.MouseDrawCursor is set) and most debug overlays.
984 
985  // Drag and Drop
995  float DragDropAcceptIdCurrRectSurface; // Target item surface (we resolve overlapping targets by prioritizing the smaller surface)
996  ImGuiID DragDropAcceptIdCurr; // Target item id (set at the time of accepting the payload)
997  ImGuiID DragDropAcceptIdPrev; // Target item id from previous frame (we need to store this to allow for overlapping drag and drop targets)
998  int DragDropAcceptFrameCount; // Last time a target expressed a desire to accept the source
999  ImVector<unsigned char> DragDropPayloadBufHeap; // We don't expose the ImVector<> directly
1000  unsigned char DragDropPayloadBufLocal[8]; // Local buffer for small payloads
1001 
1002  // Tab bars
1007 
1008  // Widget state
1012  ImGuiID TempInputTextId; // Temporary text input when CTRL+clicking on a slider, etc.
1013  ImGuiColorEditFlags ColorEditOptions; // Store user options for color edit widgets
1018  float DragCurrentAccum; // Accumulator for dragging modification. Always high-precision, not rounded by end-user precision settings
1019  float DragSpeedDefaultRatio; // If speed == 0.0f, uses (max-min) * DragSpeedDefaultRatio
1020  float ScrollbarClickDeltaToGrabCenter; // Distance between mouse and center of grab box, normalized in parent space. Use storage?
1022  ImVector<char> PrivateClipboard; // If no custom clipboard handler is defined
1023 
1024  // Range-Select/Multi-Select
1025  // [This is unused in this branch, but left here to facilitate merging/syncing multiple branches]
1027 
1028  // Platform support
1029  ImVec2 PlatformImePos; // Cursor position request & last passed to the OS Input Method Editor
1031 
1032  // Settings
1034  float SettingsDirtyTimer; // Save .ini Settings to memory when time reaches zero
1035  ImGuiTextBuffer SettingsIniData; // In memory .ini settings
1036  ImVector<ImGuiSettingsHandler> SettingsHandlers; // List of .ini settings handlers
1037  ImVector<ImGuiWindowSettings> SettingsWindows; // ImGuiWindow .ini settings entries (parsed from the last loaded .ini file and maintained on saving)
1038 
1039  // Logging
1042  FILE* LogFile; // If != NULL log to stdout/ file
1043  ImGuiTextBuffer LogBuffer; // Accumulation buffer when log to clipboard. This is pointer so our GImGui static constructor doesn't call heap allocators.
1048  int LogDepthToExpandDefault; // Default/stored value for LogDepthMaxExpand if not specified in the LogXXX function call.
1049 
1050  // Debug Tools
1052  ImGuiID DebugItemPickerBreakID; // Will call IM_DEBUG_BREAK() when encountering this id
1053 
1054  // Misc
1055  float FramerateSecPerFrame[120]; // Calculate estimate of framerate for user over the last 2 seconds.
1058  int WantCaptureMouseNextFrame; // Explicit capture via CaptureKeyboardFromApp()/CaptureMouseFromApp() sets those flags
1061  char TempBuffer[1024*3+1]; // Temporary text buffer
1062 
1064  {
1065  Initialized = false;
1067  Font = NULL;
1068  FontSize = FontBaseSize = 0.0f;
1069  FontAtlasOwnedByContext = shared_font_atlas ? false : true;
1070  IO.Fonts = shared_font_atlas ? shared_font_atlas : IM_NEW(ImFontAtlas)();
1071  Time = 0.0f;
1072  FrameCount = 0;
1074 
1075  WindowsActiveCount = 0;
1076  CurrentWindow = NULL;
1077  HoveredWindow = NULL;
1079  MovingWindow = NULL;
1080  WheelingWindow = NULL;
1081  WheelingWindowTimer = 0.0f;
1082 
1083  HoveredId = 0;
1084  HoveredIdAllowOverlap = false;
1087  ActiveId = 0;
1088  ActiveIdIsAlive = 0;
1089  ActiveIdTimer = 0.0f;
1090  ActiveIdIsJustActivated = false;
1091  ActiveIdAllowOverlap = false;
1095  ActiveIdAllowNavDirFlags = 0x00;
1097  ActiveIdClickOffset = ImVec2(-1,-1);
1098  ActiveIdWindow = NULL;
1100 
1105 
1106  LastActiveId = 0;
1107  LastActiveIdTimer = 0.0f;
1108 
1109  NavWindow = NULL;
1114  NavScoringCount = 0;
1117  NavWindowingToggleLayer = false;
1119  NavIdTabCounter = INT_MAX;
1120  NavIdIsAlive = false;
1121  NavMousePosDirty = false;
1122  NavDisableHighlight = true;
1123  NavDisableMouseHover = false;
1124  NavAnyRequest = false;
1125  NavInitRequest = false;
1126  NavInitRequestFromMove = false;
1127  NavInitResultId = 0;
1128  NavMoveFromClampedRefRect = false;
1129  NavMoveRequest = false;
1130  NavMoveRequestFlags = 0;
1133 
1137  FocusTabPressed = false;
1138 
1139  DimBgRatio = 0.0f;
1140  BackgroundDrawList._OwnerName = "##Background"; // Give it a name for debugging
1141  ForegroundDrawList._OwnerName = "##Foreground"; // Give it a name for debugging
1143 
1145  DragDropSourceFlags = 0;
1147  DragDropMouseButton = -1;
1148  DragDropTargetId = 0;
1149  DragDropAcceptFlags = 0;
1154 
1155  CurrentTabBar = NULL;
1156 
1157  LastValidMousePos = ImVec2(0.0f, 0.0f);
1158  TempInputTextId = 0;
1160  ColorEditLastHue = 0.0f;
1162  DragCurrentAccumDirty = false;
1163  DragCurrentAccum = 0.0f;
1164  DragSpeedDefaultRatio = 1.0f / 100.0f;
1167 
1168  MultiSelectScopeId = 0;
1169 
1170  PlatformImePos = PlatformImeLastPos = ImVec2(FLT_MAX, FLT_MAX);
1171 
1172  SettingsLoaded = false;
1173  SettingsDirtyTimer = 0.0f;
1174 
1175  LogEnabled = false;
1177  LogFile = NULL;
1178  LogLinePosY = FLT_MAX;
1179  LogLineFirstItem = false;
1180  LogDepthRef = 0;
1182 
1183  DebugItemPickerActive = false;
1185 
1186  memset(FramerateSecPerFrame, 0, sizeof(FramerateSecPerFrame));
1190  memset(TempBuffer, 0, sizeof(TempBuffer));
1191  }
1192 };
1193 
1194 //-----------------------------------------------------------------------------
1195 // ImGuiWindow
1196 //-----------------------------------------------------------------------------
1197 
1198 // Transient per-window data, reset at the beginning of the frame. This used to be called ImGuiDrawContext, hence the DC variable name in ImGuiWindow.
1199 // FIXME: That's theory, in practice the delimitation between ImGuiWindow and ImGuiWindowTempData is quite tenuous and could be reconsidered.
1201 {
1202  ImVec2 CursorPos; // Current emitting position, in absolute coordinates.
1204  ImVec2 CursorStartPos; // Initial position after Begin(), generally ~ window position + WindowPadding.
1205  ImVec2 CursorMaxPos; // Used to implicitly calculate the size of our contents, always growing during the frame. Used to calculate window->ContentSize at the beginning of next frame
1208  float CurrLineTextBaseOffset; // Baseline offset (0.0f by default on a new line, generally == style.FramePadding.y when a framed item has been added).
1210  int TreeDepth; // Current tree depth.
1211  ImU32 TreeMayJumpToParentOnPopMask; // Store a copy of !g.NavIdIsAlive for TreeDepth 0..31.. Could be turned into a ImU64 if necessary.
1212  ImGuiID LastItemId; // ID for last item
1213  ImGuiItemStatusFlags LastItemStatusFlags; // Status flags for last item (see ImGuiItemStatusFlags_)
1214  ImRect LastItemRect; // Interaction rect for last item
1215  ImRect LastItemDisplayRect; // End-user display rect for last item (only valid if LastItemStatusFlags & ImGuiItemStatusFlags_HasDisplayRect)
1216  ImGuiNavLayer NavLayerCurrent; // Current layer, 0..31 (we currently only use 0..1)
1217  int NavLayerCurrentMask; // = (1 << NavLayerCurrent) used by ItemAdd prior to clipping.
1218  int NavLayerActiveMask; // Which layer have been written to (result from previous frame)
1219  int NavLayerActiveMaskNext; // Which layer have been written to (buffer for current frame)
1221  bool NavHasScroll; // Set when scrolling can be used (ScrollMax > 0.0f)
1222  bool MenuBarAppending; // FIXME: Remove this
1223  ImVec2 MenuBarOffset; // MenuBarOffset.x is sort of equivalent of a per-layer CursorPos.x, saved/restored as we switch to the menu bar. The only situation when MenuBarOffset.y is > 0 if when (SafeAreaPadding.y > FramePadding.y), often used on TVs.
1225  ImGuiStorage* StateStorage; // Current persistent per-window storage (store e.g. tree node open/close state)
1227  ImGuiLayoutType ParentLayoutType; // Layout type of parent window at the time of Begin()
1228  int FocusCounterAll; // Counter for focus/tabbing system. Start at -1 and increase as assigned via FocusableItemRegister() (FIXME-NAV: Needs redesign)
1229  int FocusCounterTab; // (same, but only count widgets which you can Tab through)
1230 
1231  // We store the current settings outside of the vectors to increase memory locality (reduce cache misses). The vectors are rarely modified. Also it allows us to not heap allocate for short-lived windows which are not using those settings.
1232  ImGuiItemFlags ItemFlags; // == ItemFlagsStack.back() [empty == ImGuiItemFlags_Default]
1233  float ItemWidth; // == ItemWidthStack.back(). 0.0: default, >0.0: width in pixels, <0.0: align xx pixels to the right of window
1234  float TextWrapPos; // == TextWrapPosStack.back() [empty == -1.0f]
1239  short StackSizesBackup[6]; // Store size of various stacks for asserting
1240 
1241  ImVec1 Indent; // Indentation / start position from left of window (increased by TreePush/TreePop, etc.)
1243  ImVec1 ColumnsOffset; // Offset to the current column (if ColumnsCurrent > 0). FIXME: This and the above should be a stack to allow use cases like Tree->Column->Tree. Need revamp columns API.
1244  ImGuiColumns* CurrentColumns; // Current columns set
1245 
1247  {
1248  CursorPos = CursorPosPrevLine = CursorStartPos = CursorMaxPos = ImVec2(0.0f, 0.0f);
1249  CurrLineSize = PrevLineSize = ImVec2(0.0f, 0.0f);
1250  CurrLineTextBaseOffset = PrevLineTextBaseOffset = 0.0f;
1251  TreeDepth = 0;
1252  TreeMayJumpToParentOnPopMask = 0x00;
1253  LastItemId = 0;
1254  LastItemStatusFlags = 0;
1255  LastItemRect = LastItemDisplayRect = ImRect();
1256  NavLayerActiveMask = NavLayerActiveMaskNext = 0x00;
1257  NavLayerCurrent = ImGuiNavLayer_Main;
1258  NavLayerCurrentMask = (1 << ImGuiNavLayer_Main);
1259  NavHideHighlightOneFrame = false;
1260  NavHasScroll = false;
1261  MenuBarAppending = false;
1262  MenuBarOffset = ImVec2(0.0f, 0.0f);
1263  StateStorage = NULL;
1264  LayoutType = ParentLayoutType = ImGuiLayoutType_Vertical;
1265  FocusCounterAll = FocusCounterTab = -1;
1266 
1267  ItemFlags = ImGuiItemFlags_Default_;
1268  ItemWidth = 0.0f;
1269  TextWrapPos = -1.0f;
1270  memset(StackSizesBackup, 0, sizeof(StackSizesBackup));
1271 
1272  Indent = ImVec1(0.0f);
1273  GroupOffset = ImVec1(0.0f);
1274  ColumnsOffset = ImVec1(0.0f);
1275  CurrentColumns = NULL;
1276  }
1277 };
1278 
1279 // Storage for one window
1281 {
1282  char* Name;
1283  ImGuiID ID; // == ImHash(Name)
1284  ImGuiWindowFlags Flags; // See enum ImGuiWindowFlags_
1285  ImVec2 Pos; // Position (always rounded-up to nearest pixel)
1286  ImVec2 Size; // Current size (==SizeFull or collapsed title bar size)
1287  ImVec2 SizeFull; // Size when non collapsed
1288  ImVec2 ContentSize; // Size of contents/scrollable client area (calculated from the extents reach of the cursor) from previous frame. Does not include window decoration or window padding.
1289  ImVec2 ContentSizeExplicit; // Size of contents/scrollable client area explicitly request by the user via SetNextWindowContentSize().
1290  ImVec2 WindowPadding; // Window padding at the time of Begin().
1291  float WindowRounding; // Window rounding at the time of Begin().
1292  float WindowBorderSize; // Window border size at the time of Begin().
1293  int NameBufLen; // Size of buffer storing Name. May be larger than strlen(Name)!
1294  ImGuiID MoveId; // == window->GetID("#MOVE")
1295  ImGuiID ChildId; // ID of corresponding item in parent window (for navigation to return from child window to parent window)
1298  ImVec2 ScrollTarget; // target scroll position. stored as cursor position with scrolling canceled out, so the highest point is always 0.0f. (FLT_MAX for no change)
1299  ImVec2 ScrollTargetCenterRatio; // 0.0f = scroll so that target position is at top, 0.5f = scroll so that target position is centered
1300  ImVec2 ScrollbarSizes; // Size taken by scrollbars on each axis
1301  bool ScrollbarX, ScrollbarY; // Are scrollbars visible?
1302  bool Active; // Set to true on Begin(), unless Collapsed
1304  bool WriteAccessed; // Set to true when any widget access the current window
1305  bool Collapsed; // Set when collapsing window to become only title-bar
1307  bool SkipItems; // Set when items can safely be all clipped (e.g. window not visible or collapsed)
1308  bool Appearing; // Set during the frame where the window is appearing (or re-appearing)
1309  bool Hidden; // Do not display (== (HiddenFrames*** > 0))
1310  bool HasCloseButton; // Set when the window has a close button (p_open != NULL)
1311  signed char ResizeBorderHeld; // Current border being held for resize (-1: none, otherwise 0-3)
1312  short BeginCount; // Number of Begin() during the current frame (generally 0 or 1, 1+ if appending via multiple Begin/End pairs)
1313  short BeginOrderWithinParent; // Order within immediate parent window, if we are a child window. Otherwise 0.
1314  short BeginOrderWithinContext; // Order within entire imgui context. This is mostly used for debugging submission order related issues.
1315  ImGuiID PopupId; // ID in the popup stack when this window is used as a popup/menu (because we use generic Name/ID for recycling)
1316  ImS8 AutoFitFramesX, AutoFitFramesY;
1320  int HiddenFramesCanSkipItems; // Hide the window for N frames
1321  int HiddenFramesCannotSkipItems; // Hide the window for N frames while allowing items to be submitted so we can measure their size
1322  ImGuiCond SetWindowPosAllowFlags; // store acceptable condition flags for SetNextWindowPos() use.
1323  ImGuiCond SetWindowSizeAllowFlags; // store acceptable condition flags for SetNextWindowSize() use.
1324  ImGuiCond SetWindowCollapsedAllowFlags; // store acceptable condition flags for SetNextWindowCollapsed() use.
1325  ImVec2 SetWindowPosVal; // store window position when using a non-zero Pivot (position set needs to be processed when we know the window size)
1326  ImVec2 SetWindowPosPivot; // store window pivot for positioning. ImVec2(0,0) when positioning from top-left corner; ImVec2(0.5f,0.5f) for centering; ImVec2(1,1) for bottom right.
1327 
1328  ImVector<ImGuiID> IDStack; // ID stack. ID are hashes seeded with the value at the top of the stack. (In theory this should be in the TempData structure)
1329  ImGuiWindowTempData DC; // Temporary per-window data, reset at the beginning of the frame. This used to be called ImGuiDrawContext, hence the "DC" variable name.
1330 
1331  // The best way to understand what those rectangles are is to use the 'Metrics -> Tools -> Show windows rectangles' viewer.
1332  // The main 'OuterRect', omitted as a field, is window->Rect().
1333  ImRect OuterRectClipped; // == Window->Rect() just after setup in Begin(). == window->Rect() for root window.
1334  ImRect InnerRect; // Inner rectangle (omit title bar, menu bar, scroll bar)
1335  ImRect InnerClipRect; // == InnerRect shrunk by WindowPadding*0.5f on each side, clipped within viewport or parent clip rect.
1336  ImRect WorkRect; // Cover the whole scrolling region, shrunk by WindowPadding*1.0f on each side. This is meant to replace ContentsRegionRect over time (from 1.71+ onward).
1337  ImRect ClipRect; // Current clipping/scissoring rectangle, evolve as we are using PushClipRect(), etc. == DrawList->clip_rect_stack.back().
1338  ImRect ContentsRegionRect; // FIXME: This is currently confusing/misleading. It is essentially WorkRect but not handling of scrolling. We currently rely on it as right/bottom aligned sizing operation need some size to rely on.
1339 
1340  int LastFrameActive; // Last frame number the window was Active.
1341  float LastTimeActive; // Last timestamp the window was Active (using float as we don't need high precision there)
1343  ImGuiMenuColumns MenuColumns; // Simplified columns storage for menu items
1346  float FontWindowScale; // User scale multiplier per-window, via SetWindowFontScale()
1347  int SettingsIdx; // Index into SettingsWindow[] (indices are always valid as we only grow the array from the back)
1348 
1349  ImDrawList* DrawList; // == &DrawListInst (for backward compatibility reason with code using imgui_internal.h we keep this a pointer)
1351  ImGuiWindow* ParentWindow; // If we are a child _or_ popup window, this is pointing to our parent. Otherwise NULL.
1352  ImGuiWindow* RootWindow; // Point to ourself or first ancestor that is not a child window.
1353  ImGuiWindow* RootWindowForTitleBarHighlight; // Point to ourself or first ancestor which will display TitleBgActive color when this window is active.
1354  ImGuiWindow* RootWindowForNav; // Point to ourself or first ancestor which doesn't have the NavFlattened flag.
1355 
1356  ImGuiWindow* NavLastChildNavWindow; // When going to the menu bar, we remember the child window we came from. (This could probably be made implicit if we kept g.Windows sorted by last focused including child window.)
1357  ImGuiID NavLastIds[ImGuiNavLayer_COUNT]; // Last known NavId for this window, per layer (0/1)
1358  ImRect NavRectRel[ImGuiNavLayer_COUNT]; // Reference rectangle, in window relative space
1359 
1363 
1364 public:
1365  ImGuiWindow(ImGuiContext* context, const char* name);
1366  ~ImGuiWindow();
1367 
1368  ImGuiID GetID(const char* str, const char* str_end = NULL);
1369  ImGuiID GetID(const void* ptr);
1370  ImGuiID GetID(int n);
1371  ImGuiID GetIDNoKeepAlive(const char* str, const char* str_end = NULL);
1372  ImGuiID GetIDNoKeepAlive(const void* ptr);
1373  ImGuiID GetIDNoKeepAlive(int n);
1374  ImGuiID GetIDFromRectangle(const ImRect& r_abs);
1375 
1376  // We don't use g.FontSize because the window may be != g.CurrentWidow.
1377  ImRect Rect() const { return ImRect(Pos.x, Pos.y, Pos.x+Size.x, Pos.y+Size.y); }
1378  float CalcFontSize() const { ImGuiContext& g = *GImGui; float scale = g.FontBaseSize * FontWindowScale; if (ParentWindow) scale *= ParentWindow->FontWindowScale; return scale; }
1379  float TitleBarHeight() const { ImGuiContext& g = *GImGui; return (Flags & ImGuiWindowFlags_NoTitleBar) ? 0.0f : CalcFontSize() + g.Style.FramePadding.y * 2.0f; }
1380  ImRect TitleBarRect() const { return ImRect(Pos, ImVec2(Pos.x + SizeFull.x, Pos.y + TitleBarHeight())); }
1381  float MenuBarHeight() const { ImGuiContext& g = *GImGui; return (Flags & ImGuiWindowFlags_MenuBar) ? DC.MenuBarOffset.y + CalcFontSize() + g.Style.FramePadding.y * 2.0f : 0.0f; }
1382  ImRect MenuBarRect() const { float y1 = Pos.y + TitleBarHeight(); return ImRect(Pos.x, y1, Pos.x + SizeFull.x, y1 + MenuBarHeight()); }
1383 };
1384 
1385 // Backup and restore just enough data to be able to use IsItemHovered() on item A after another B in the same window has overwritten the data.
1387 {
1392 
1396 };
1397 
1398 //-----------------------------------------------------------------------------
1399 // Tab bar, tab item
1400 //-----------------------------------------------------------------------------
1401 
1402 // Extend ImGuiTabBarFlags_
1404 {
1405  ImGuiTabBarFlags_DockNode = 1 << 20, // Part of a dock node [we don't use this in the master branch but it facilitate branch syncing to keep this around]
1407  ImGuiTabBarFlags_SaveSettings = 1 << 22 // FIXME: Settings are handled by the docking system, this only request the tab bar to mark settings dirty when reordering tabs
1408 };
1409 
1410 // Extend ImGuiTabItemFlags_
1412 {
1413  ImGuiTabItemFlags_NoCloseButton = 1 << 20 // Store whether p_open is set or not, which we need to recompute WidthContents during layout.
1414 };
1415 
1416 // Storage for one active tab item (sizeof() 26~32 bytes)
1418 {
1422  int LastFrameSelected; // This allows us to infer an ordered list of the last activated tabs with little maintenance
1423  int NameOffset; // When Window==NULL, offset to name within parent ImGuiTabBar::TabsNames
1424  float Offset; // Position relative to beginning of tab
1425  float Width; // Width currently displayed
1426  float WidthContents; // Width of actual contents, stored during BeginTabItem() call
1427 
1429 };
1430 
1431 // Storage for a tab bar (sizeof() 92~96 bytes)
1433 {
1435  ImGuiID ID; // Zero for tab-bars used by docking
1436  ImGuiID SelectedTabId; // Selected tab
1438  ImGuiID VisibleTabId; // Can occasionally be != SelectedTabId (e.g. when previewing contents for CTRL+TAB preview)
1442  float LastTabContentHeight; // Record the height of contents submitted below the tab bar
1443  float OffsetMax; // Distance from BarRect.Min.x, locked during layout
1444  float OffsetMaxIdeal; // Ideal offset if all tabs were visible and not clipped
1445  float OffsetNextTab; // Distance from BarRect.Min.x, incremented with each BeginTabItem() call, not used if ImGuiTabBarFlags_Reorderable if set.
1455  short LastTabItemIdx; // For BeginTabItem()/EndTabItem()
1456  ImVec2 FramePadding; // style.FramePadding locked at the time of BeginTabBar()
1457  ImGuiTextBuffer TabsNames; // For non-docking tab bar we re-append names in a contiguous buffer.
1458 
1459  ImGuiTabBar();
1460  int GetTabOrder(const ImGuiTabItem* tab) const { return Tabs.index_from_ptr(tab); }
1461  const char* GetTabName(const ImGuiTabItem* tab) const
1462  {
1463  IM_ASSERT(tab->NameOffset != -1 && tab->NameOffset < TabsNames.Buf.Size);
1464  return TabsNames.Buf.Data + tab->NameOffset;
1465  }
1466 };
1467 
1468 //-----------------------------------------------------------------------------
1469 // Internal API
1470 // No guarantee of forward compatibility here.
1471 //-----------------------------------------------------------------------------
1472 
1473 namespace ImGui
1474 {
1475  // We should always have a CurrentWindow in the stack (there is an implicit "Debug" window)
1476  // If this ever crash because g.CurrentWindow is NULL it means that either
1477  // - ImGui::NewFrame() has never been called, which is illegal.
1478  // - You are calling ImGui functions after ImGui::EndFrame()/ImGui::Render() and before the next ImGui::NewFrame(), which is also illegal.
1483  IMGUI_API void FocusWindow(ImGuiWindow* window);
1484  IMGUI_API void FocusTopMostWindowUnderOne(ImGuiWindow* under_this_window, ImGuiWindow* ignore_window);
1490  IMGUI_API bool IsWindowChildOf(ImGuiWindow* window, ImGuiWindow* potential_parent);
1493  IMGUI_API void SetWindowPos(ImGuiWindow* window, const ImVec2& pos, ImGuiCond cond = 0);
1494  IMGUI_API void SetWindowSize(ImGuiWindow* window, const ImVec2& size, ImGuiCond cond = 0);
1495  IMGUI_API void SetWindowCollapsed(ImGuiWindow* window, bool collapsed, ImGuiCond cond = 0);
1498 
1500  inline ImFont* GetDefaultFont() { ImGuiContext& g = *GImGui; return g.IO.FontDefault ? g.IO.FontDefault : g.IO.Fonts->Fonts[0]; }
1501  inline ImDrawList* GetForegroundDrawList(ImGuiWindow*) { ImGuiContext& g = *GImGui; return &g.ForegroundDrawList; } // This seemingly unnecessary wrapper simplifies compatibility between the 'master' and 'docking' branches.
1502 
1503  // Init
1504  IMGUI_API void Initialize(ImGuiContext* context);
1505  IMGUI_API void Shutdown(ImGuiContext* context); // Since 1.60 this is a _private_ function. You can call DestroyContext() to destroy the context created by CreateContext().
1506 
1507  // NewFrame
1512 
1513  // Settings
1519  IMGUI_API ImGuiSettingsHandler* FindSettingsHandler(const char* type_name);
1520 
1521  // Scrolling
1522  IMGUI_API void SetScrollX(ImGuiWindow* window, float new_scroll_x);
1523  IMGUI_API void SetScrollY(ImGuiWindow* window, float new_scroll_y);
1524  IMGUI_API void SetScrollFromPosX(ImGuiWindow* window, float local_x, float center_x_ratio = 0.5f);
1525  IMGUI_API void SetScrollFromPosY(ImGuiWindow* window, float local_y, float center_y_ratio = 0.5f);
1526  IMGUI_API ImVec2 ScrollToBringRectIntoView(ImGuiWindow* window, const ImRect& item_rect);
1527 
1528  // Basic Accessors
1530  inline ImGuiID GetActiveID() { ImGuiContext& g = *GImGui; return g.ActiveId; }
1531  inline ImGuiID GetFocusID() { ImGuiContext& g = *GImGui; return g.NavId; }
1532  IMGUI_API void SetActiveID(ImGuiID id, ImGuiWindow* window);
1533  IMGUI_API void SetFocusID(ImGuiID id, ImGuiWindow* window);
1534  IMGUI_API void ClearActiveID();
1536  IMGUI_API void SetHoveredID(ImGuiID id);
1537  IMGUI_API void KeepAliveID(ImGuiID id);
1538  IMGUI_API void MarkItemEdited(ImGuiID id);
1539  IMGUI_API void PushOverrideID(ImGuiID id);
1540 
1541  // Basic Helpers for widget code
1542  IMGUI_API void ItemSize(const ImVec2& size, float text_offset_y = 0.0f);
1543  IMGUI_API void ItemSize(const ImRect& bb, float text_offset_y = 0.0f);
1544  IMGUI_API bool ItemAdd(const ImRect& bb, ImGuiID id, const ImRect* nav_bb = NULL);
1545  IMGUI_API bool ItemHoverable(const ImRect& bb, ImGuiID id);
1546  IMGUI_API bool IsClippedEx(const ImRect& bb, ImGuiID id, bool clip_even_when_logged);
1547  IMGUI_API bool FocusableItemRegister(ImGuiWindow* window, ImGuiID id); // Return true if focus is requested
1549  IMGUI_API ImVec2 CalcItemSize(ImVec2 size, float default_w, float default_h);
1550  IMGUI_API float CalcWrapWidthForPos(const ImVec2& pos, float wrap_pos_x);
1551  IMGUI_API void PushMultiItemsWidths(int components, float width_full);
1552  IMGUI_API void PushItemFlag(ImGuiItemFlags option, bool enabled);
1553  IMGUI_API void PopItemFlag();
1554  IMGUI_API bool IsItemToggledSelection(); // Was the last item selection toggled? (after Selectable(), TreeNode() etc. We only returns toggle _event_ in order to handle clipping correctly)
1556  IMGUI_API void ShrinkWidths(ImGuiShrinkWidthItem* items, int count, float width_excess);
1557 
1558  // Logging/Capture
1559  IMGUI_API void LogBegin(ImGuiLogType type, int auto_open_depth); // -> BeginCapture() when we design v2 api, for now stay under the radar by using the old name.
1560  IMGUI_API void LogToBuffer(int auto_open_depth = -1); // Start logging/capturing to internal buffer
1561 
1562  // Popups, Modals, Tooltips
1563  IMGUI_API void OpenPopupEx(ImGuiID id);
1564  IMGUI_API void ClosePopupToLevel(int remaining, bool restore_focus_to_window_under_popup);
1565  IMGUI_API void ClosePopupsOverWindow(ImGuiWindow* ref_window, bool restore_focus_to_window_under_popup);
1566  IMGUI_API bool IsPopupOpen(ImGuiID id); // Test for id within current popup stack level (currently begin-ed into); this doesn't scan the whole popup stack!
1567  IMGUI_API bool BeginPopupEx(ImGuiID id, ImGuiWindowFlags extra_flags);
1568  IMGUI_API void BeginTooltipEx(ImGuiWindowFlags extra_flags, bool override_previous_tooltip = true);
1571  IMGUI_API ImVec2 FindBestWindowPosForPopupEx(const ImVec2& ref_pos, const ImVec2& size, ImGuiDir* last_dir, const ImRect& r_outer, const ImRect& r_avoid, ImGuiPopupPositionPolicy policy = ImGuiPopupPositionPolicy_Default);
1572 
1573  // Navigation
1574  IMGUI_API void NavInitWindow(ImGuiWindow* window, bool force_reinit);
1577  IMGUI_API void NavMoveRequestForward(ImGuiDir move_dir, ImGuiDir clip_dir, const ImRect& bb_rel, ImGuiNavMoveFlags move_flags);
1580  IMGUI_API ImVec2 GetNavInputAmount2d(ImGuiNavDirSourceFlags dir_sources, ImGuiInputReadMode mode, float slow_factor = 0.0f, float fast_factor = 0.0f);
1581  IMGUI_API int CalcTypematicPressedRepeatAmount(float t, float t_prev, float repeat_delay, float repeat_rate);
1582  IMGUI_API void ActivateItem(ImGuiID id); // Remotely activate a button, checkbox, tree node etc. given its unique ID. activation is queued and processed on the next frame when the item is encountered again.
1583  IMGUI_API void SetNavID(ImGuiID id, int nav_layer);
1584  IMGUI_API void SetNavIDWithRectRel(ImGuiID id, int nav_layer, const ImRect& rect_rel);
1585 
1586  // Inputs
1587  IMGUI_API bool IsMouseDragPastThreshold(int button, float lock_threshold = -1.0f);
1588  inline bool IsKeyPressedMap(ImGuiKey key, bool repeat = true) { const int key_index = GImGui->IO.KeyMap[key]; return (key_index >= 0) ? IsKeyPressed(key_index, repeat) : false; }
1589  inline bool IsNavInputDown(ImGuiNavInput n) { return GImGui->IO.NavInputs[n] > 0.0f; }
1590  inline bool IsNavInputPressed(ImGuiNavInput n, ImGuiInputReadMode mode) { return GetNavInputAmount(n, mode) > 0.0f; }
1591  inline bool IsNavInputPressedAnyOfTwo(ImGuiNavInput n1, ImGuiNavInput n2, ImGuiInputReadMode mode) { return (GetNavInputAmount(n1, mode) + GetNavInputAmount(n2, mode)) > 0.0f; }
1592 
1593  // Drag and Drop
1594  IMGUI_API bool BeginDragDropTargetCustom(const ImRect& bb, ImGuiID id);
1595  IMGUI_API void ClearDragDrop();
1597 
1598  // New Columns API (FIXME-WIP)
1599  IMGUI_API void BeginColumns(const char* str_id, int count, ImGuiColumnsFlags flags = 0); // setup number of columns. use an identifier to distinguish multiple column sets. close with EndColumns().
1600  IMGUI_API void EndColumns(); // close columns
1601  IMGUI_API void PushColumnClipRect(int column_index);
1604  IMGUI_API ImGuiID GetColumnsID(const char* str_id, int count);
1606  IMGUI_API float GetColumnOffsetFromNorm(const ImGuiColumns* columns, float offset_norm);
1607  IMGUI_API float GetColumnNormFromOffset(const ImGuiColumns* columns, float offset);
1608 
1609  // Tab Bars
1610  IMGUI_API bool BeginTabBarEx(ImGuiTabBar* tab_bar, const ImRect& bb, ImGuiTabBarFlags flags);
1612  IMGUI_API void TabBarRemoveTab(ImGuiTabBar* tab_bar, ImGuiID tab_id);
1613  IMGUI_API void TabBarCloseTab(ImGuiTabBar* tab_bar, ImGuiTabItem* tab);
1614  IMGUI_API void TabBarQueueChangeTabOrder(ImGuiTabBar* tab_bar, const ImGuiTabItem* tab, int dir);
1615  IMGUI_API bool TabItemEx(ImGuiTabBar* tab_bar, const char* label, bool* p_open, ImGuiTabItemFlags flags);
1616  IMGUI_API ImVec2 TabItemCalcSize(const char* label, bool has_close_button);
1617  IMGUI_API void TabItemBackground(ImDrawList* draw_list, const ImRect& bb, ImGuiTabItemFlags flags, ImU32 col);
1618  IMGUI_API bool TabItemLabelAndCloseButton(ImDrawList* draw_list, const ImRect& bb, ImGuiTabItemFlags flags, ImVec2 frame_padding, const char* label, ImGuiID tab_id, ImGuiID close_button_id);
1619 
1620  // Render helpers
1621  // AVOID USING OUTSIDE OF IMGUI.CPP! NOT FOR PUBLIC CONSUMPTION. THOSE FUNCTIONS ARE A MESS. THEIR SIGNATURE AND BEHAVIOR WILL CHANGE, THEY NEED TO BE REFACTORED INTO SOMETHING DECENT.
1622  // NB: All position are in absolute pixels coordinates (we are never using window coordinates internally)
1623  IMGUI_API void RenderText(ImVec2 pos, const char* text, const char* text_end = NULL, bool hide_text_after_hash = true);
1624  IMGUI_API void RenderTextWrapped(ImVec2 pos, const char* text, const char* text_end, float wrap_width);
1625  IMGUI_API void RenderTextClipped(const ImVec2& pos_min, const ImVec2& pos_max, const char* text, const char* text_end, const ImVec2* text_size_if_known, const ImVec2& align = ImVec2(0,0), const ImRect* clip_rect = NULL);
1626  IMGUI_API void RenderTextClippedEx(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 = ImVec2(0, 0), const ImRect* clip_rect = NULL);
1627  IMGUI_API void RenderTextEllipsis(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);
1628  IMGUI_API void RenderFrame(ImVec2 p_min, ImVec2 p_max, ImU32 fill_col, bool border = true, float rounding = 0.0f);
1629  IMGUI_API void RenderFrameBorder(ImVec2 p_min, ImVec2 p_max, float rounding = 0.0f);
1630  IMGUI_API void RenderColorRectWithAlphaCheckerboard(ImVec2 p_min, ImVec2 p_max, ImU32 fill_col, float grid_step, ImVec2 grid_off, float rounding = 0.0f, int rounding_corners_flags = ~0);
1631  IMGUI_API void RenderCheckMark(ImVec2 pos, ImU32 col, float sz);
1632  IMGUI_API void RenderNavHighlight(const ImRect& bb, ImGuiID id, ImGuiNavHighlightFlags flags = ImGuiNavHighlightFlags_TypeDefault); // Navigation highlight
1633  IMGUI_API const char* FindRenderedTextEnd(const char* text, const char* text_end = NULL); // Find the optional ## from which we stop displaying text.
1634  IMGUI_API void LogRenderedText(const ImVec2* ref_pos, const char* text, const char* text_end = NULL);
1635 
1636  // Render helpers (those functions don't access any ImGui state!)
1637  IMGUI_API void RenderArrow(ImDrawList* draw_list, ImVec2 pos, ImU32 col, ImGuiDir dir, float scale = 1.0f);
1638  IMGUI_API void RenderBullet(ImDrawList* draw_list, ImVec2 pos, ImU32 col);
1639  IMGUI_API void RenderMouseCursor(ImDrawList* draw_list, ImVec2 pos, float scale, ImGuiMouseCursor mouse_cursor, ImU32 col_fill, ImU32 col_border, ImU32 col_shadow);
1640  IMGUI_API void RenderArrowPointingAt(ImDrawList* draw_list, ImVec2 pos, ImVec2 half_sz, ImGuiDir direction, ImU32 col);
1641  IMGUI_API void RenderRectFilledRangeH(ImDrawList* draw_list, const ImRect& rect, ImU32 col, float x_start_norm, float x_end_norm, float rounding);
1642 
1643 #ifndef IMGUI_DISABLE_OBSOLETE_FUNCTIONS
1644  // 2019/06/07: Updating prototypes of some of the internal functions. Leaving those for reference for a short while.
1645  inline void RenderArrow(ImVec2 pos, ImGuiDir dir, float scale=1.0f) { ImGuiWindow* window = GetCurrentWindow(); RenderArrow(window->DrawList, pos, GetColorU32(ImGuiCol_Text), dir, scale); }
1647 #endif
1648 
1649  // Widgets
1650  IMGUI_API void TextEx(const char* text, const char* text_end = NULL, ImGuiTextFlags flags = 0);
1651  IMGUI_API bool ButtonEx(const char* label, const ImVec2& size_arg = ImVec2(0,0), ImGuiButtonFlags flags = 0);
1652  IMGUI_API bool CloseButton(ImGuiID id, const ImVec2& pos);
1653  IMGUI_API bool CollapseButton(ImGuiID id, const ImVec2& pos);
1654  IMGUI_API bool ArrowButtonEx(const char* str_id, ImGuiDir dir, ImVec2 size_arg, ImGuiButtonFlags flags);
1655  IMGUI_API void Scrollbar(ImGuiAxis axis);
1656  IMGUI_API bool ScrollbarEx(const ImRect& bb, ImGuiID id, ImGuiAxis axis, float* p_scroll_v, float avail_v, float contents_v, ImDrawCornerFlags rounding_corners);
1659 
1660  // Widgets low-level behaviors
1661  IMGUI_API bool ButtonBehavior(const ImRect& bb, ImGuiID id, bool* out_hovered, bool* out_held, ImGuiButtonFlags flags = 0);
1662  IMGUI_API bool DragBehavior(ImGuiID id, ImGuiDataType data_type, void* v, float v_speed, const void* v_min, const void* v_max, const char* format, float power, ImGuiDragFlags flags);
1663  IMGUI_API bool SliderBehavior(const ImRect& bb, ImGuiID id, ImGuiDataType data_type, void* v, const void* v_min, const void* v_max, const char* format, float power, ImGuiSliderFlags flags, ImRect* out_grab_bb);
1664  IMGUI_API bool SplitterBehavior(const ImRect& bb, ImGuiID id, ImGuiAxis axis, float* size1, float* size2, float min_size1, float min_size2, float hover_extend = 0.0f, float hover_visibility_delay = 0.0f);
1665  IMGUI_API bool TreeNodeBehavior(ImGuiID id, ImGuiTreeNodeFlags flags, const char* label, const char* label_end = NULL);
1666  IMGUI_API bool TreeNodeBehaviorIsOpen(ImGuiID id, ImGuiTreeNodeFlags flags = 0); // Consume previous SetNextItemOpen() data, if any. May return true when logging
1668 
1669  // Template functions are instantiated in imgui_widgets.cpp for a finite number of types.
1670  // To use them externally (for custom widget) you may need an "extern template" statement in your code in order to link to existing instances and silence Clang warnings (see #2036).
1671  // e.g. " extern template IMGUI_API float RoundScalarWithFormatT<float, float>(const char* format, ImGuiDataType data_type, float v); "
1672  template<typename T, typename SIGNED_T, typename FLOAT_T> IMGUI_API bool DragBehaviorT(ImGuiDataType data_type, T* v, float v_speed, T v_min, T v_max, const char* format, float power, ImGuiDragFlags flags);
1673  template<typename T, typename SIGNED_T, typename FLOAT_T> IMGUI_API bool SliderBehaviorT(const ImRect& bb, ImGuiID id, ImGuiDataType data_type, T* v, T v_min, T v_max, const char* format, float power, ImGuiSliderFlags flags, ImRect* out_grab_bb);
1674  template<typename T, typename FLOAT_T> IMGUI_API float SliderCalcRatioFromValueT(ImGuiDataType data_type, T v, T v_min, T v_max, float power, float linear_zero_pos);
1675  template<typename T, typename SIGNED_T> IMGUI_API T RoundScalarWithFormatT(const char* format, ImGuiDataType data_type, T v);
1676 
1677  // Data type helpers
1679  IMGUI_API int DataTypeFormatString(char* buf, int buf_size, ImGuiDataType data_type, const void* data_ptr, const char* format);
1680  IMGUI_API void DataTypeApplyOp(ImGuiDataType data_type, int op, void* output, void* arg_1, const void* arg_2);
1681  IMGUI_API bool DataTypeApplyOpFromText(const char* buf, const char* initial_value_buf, ImGuiDataType data_type, void* data_ptr, const char* format);
1682 
1683  // InputText
1684  IMGUI_API bool InputTextEx(const char* label, const char* hint, char* buf, int buf_size, const ImVec2& size_arg, ImGuiInputTextFlags flags, ImGuiInputTextCallback callback = NULL, void* user_data = NULL);
1685  IMGUI_API bool TempInputTextScalar(const ImRect& bb, ImGuiID id, const char* label, ImGuiDataType data_type, void* data_ptr, const char* format);
1686  inline bool TempInputTextIsActive(ImGuiID id) { ImGuiContext& g = *GImGui; return (g.ActiveId == id && g.TempInputTextId == id); }
1687 
1688  // Color
1689  IMGUI_API void ColorTooltip(const char* text, const float* col, ImGuiColorEditFlags flags);
1690  IMGUI_API void ColorEditOptionsPopup(const float* col, ImGuiColorEditFlags flags);
1691  IMGUI_API void ColorPickerOptionsPopup(const float* ref_col, ImGuiColorEditFlags flags);
1692 
1693  // Plot
1694  IMGUI_API void PlotEx(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, ImVec2 frame_size);
1695 
1696  // Shade functions (write over already created vertices)
1697  IMGUI_API void ShadeVertsLinearColorGradientKeepAlpha(ImDrawList* draw_list, int vert_start_idx, int vert_end_idx, ImVec2 gradient_p0, ImVec2 gradient_p1, ImU32 col0, ImU32 col1);
1698  IMGUI_API void ShadeVertsLinearUV(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);
1699 
1700  // Debug Tools
1702 
1703 } // namespace ImGui
1704 
1705 // ImFontAtlas internals
1708 IMGUI_API void ImFontAtlasBuildSetupFont(ImFontAtlas* atlas, ImFont* font, ImFontConfig* font_config, float ascent, float descent);
1709 IMGUI_API void ImFontAtlasBuildPackCustomRects(ImFontAtlas* atlas, void* stbrp_context_opaque);
1711 IMGUI_API void ImFontAtlasBuildMultiplyCalcLookupTable(unsigned char out_table[256], float in_multiply_factor);
1712 IMGUI_API void ImFontAtlasBuildMultiplyRectAlpha8(const unsigned char table[256], unsigned char* pixels, int x, int y, int w, int h, int stride);
1713 
1714 // Debug Tools
1715 // Use 'Metrics->Tools->Item Picker' to break into the call-stack of a specific item.
1716 #ifndef IM_DEBUG_BREAK
1717 #if defined(__clang__)
1718 #define IM_DEBUG_BREAK() __builtin_debugtrap()
1719 #elif defined (_MSC_VER)
1720 #define IM_DEBUG_BREAK() __debugbreak()
1721 #else
1722 #define IM_DEBUG_BREAK() IM_ASSERT(0) // It is expected that you define IM_DEBUG_BREAK() into something that will break nicely in a debugger!
1723 #endif
1724 #endif // #ifndef IM_DEBUG_BREAK
1725 
1726 // Test Engine Hooks (imgui_tests)
1727 //#define IMGUI_ENABLE_TEST_ENGINE
1728 #ifdef IMGUI_ENABLE_TEST_ENGINE
1729 extern void ImGuiTestEngineHook_PreNewFrame(ImGuiContext* ctx);
1730 extern void ImGuiTestEngineHook_PostNewFrame(ImGuiContext* ctx);
1731 extern void ImGuiTestEngineHook_ItemAdd(ImGuiContext* ctx, const ImRect& bb, ImGuiID id);
1732 extern void ImGuiTestEngineHook_ItemInfo(ImGuiContext* ctx, ImGuiID id, const char* label, ImGuiItemStatusFlags flags);
1733 extern void ImGuiTestEngineHook_Log(ImGuiContext* ctx, const char* fmt, ...);
1734 #define IMGUI_TEST_ENGINE_ITEM_ADD(_BB, _ID) ImGuiTestEngineHook_ItemAdd(&g, _BB, _ID) // Register item bounding box
1735 #define IMGUI_TEST_ENGINE_ITEM_INFO(_ID, _LABEL, _FLAGS) ImGuiTestEngineHook_ItemInfo(&g, _ID, _LABEL, _FLAGS) // Register item label and status flags (optional)
1736 #define IMGUI_TEST_ENGINE_LOG(_FMT, ...) ImGuiTestEngineHook_Log(&g, _FMT, __VA_ARGS__) // Custom log entry from user land into test log
1737 #else
1738 #define IMGUI_TEST_ENGINE_ITEM_ADD(_BB, _ID) do { } while (0)
1739 #define IMGUI_TEST_ENGINE_ITEM_INFO(_ID, _LABEL, _FLAGS) do { } while (0)
1740 #define IMGUI_TEST_ENGINE_LOG(_FMT, ...) do { } while (0)
1741 #endif
1742 
1743 #if defined(__clang__)
1744 #pragma clang diagnostic pop
1745 #elif defined(__GNUC__)
1746 #pragma GCC diagnostic pop
1747 #endif
1748 
1749 #ifdef _MSC_VER
1750 #pragma warning (pop)
1751 #endif
ImGuiWindow::SetWindowPosAllowFlags
ImGuiCond SetWindowPosAllowFlags
Definition: imgui_internal.h:1322
ImFontAtlas::AddFontDefault
IMGUI_API ImFont * AddFontDefault(const ImFontConfig *font_cfg=NULL)
Definition: imgui_draw.cpp:1648
ImGuiIO::KeyAlt
bool KeyAlt
Definition: imgui.h:1415
ImGui::ColorEdit3
IMGUI_API bool ColorEdit3(const char *label, float col[3], ImGuiColorEditFlags flags=0)
Definition: imgui_widgets.cpp:4146
ImFontAtlasCustomRect::Font
ImFont * Font
Definition: imgui.h:2061
ImS32
signed int ImS32
Definition: imgui.h:164
stbtt_pack_context::height
int height
Definition: imstb_truetype.h:683
ImGuiWindow::Appearing
bool Appearing
Definition: imgui_internal.h:1308
OversampleV
config OversampleV
Definition: README.txt:29
ImGuiCol_DragDropTarget
@ ImGuiCol_DragDropTarget
Definition: imgui.h:1070
ImGuiBackendFlags_RendererHasVtxOffset
@ ImGuiBackendFlags_RendererHasVtxOffset
Definition: imgui.h:1021
ExampleAppConsole::AutoScroll
bool AutoScroll
Definition: imgui_demo.cpp:3525
MyDocument::Open
bool Open
Definition: imgui_demo.cpp:4477
ImGuiNextItemData::Flags
ImGuiNextItemDataFlags Flags
Definition: imgui_internal.h:825
ImGuiTextFilter::Draw
IMGUI_API bool Draw(const char *label="Filter (inc,-exc)", float width=0.0f)
Definition: imgui.cpp:2080
ImGuiDragFlags_
ImGuiDragFlags_
Definition: imgui_internal.h:339
ImFontAtlas::ImFontAtlas
IMGUI_API ImFontAtlas()
Definition: imgui_draw.cpp:1488
ImGui::GetWindowSize
IMGUI_API ImVec2 GetWindowSize()
Definition: imgui.cpp:6630
ImDrawList::VtxBuffer
ImVector< ImDrawVert > VtxBuffer
Definition: imgui.h:1886
ImGui::GetItemRectMin
IMGUI_API ImVec2 GetItemRectMin()
Definition: imgui.cpp:4677
ImGuiAxis_Y
@ ImGuiAxis_Y
Definition: imgui_internal.h:444
ImGuiDir_Down
@ ImGuiDir_Down
Definition: imgui.h:930
ImGui::TreeNodeBehaviorIsOpen
IMGUI_API bool TreeNodeBehaviorIsOpen(ImGuiID id, ImGuiTreeNodeFlags flags=0)
Definition: imgui_widgets.cpp:5138
ImGuiIO::KeySuper
bool KeySuper
Definition: imgui.h:1416
ImGui::SeparatorEx
IMGUI_API void SeparatorEx(ImGuiSeparatorFlags flags)
Definition: imgui_widgets.cpp:1220
ImGui::SliderCalcRatioFromValueT
IMGUI_API float SliderCalcRatioFromValueT(ImGuiDataType data_type, T v, T v_min, T v_max, float power, float linear_zero_pos)
ImFontAtlas::AddFontFromMemoryCompressedTTF
IMGUI_API ImFont * AddFontFromMemoryCompressedTTF(const void *compressed_font_data, int compressed_font_size, float size_pixels, const ImFontConfig *font_cfg=NULL, const ImWchar *glyph_ranges=NULL)
Definition: imgui_draw.cpp:1704
ImGuiColorEditFlags_PickerHueWheel
@ ImGuiColorEditFlags_PickerHueWheel
Definition: imgui.h:1149
ImGuiNextWindowDataFlags_HasSizeConstraint
@ ImGuiNextWindowDataFlags_HasSizeConstraint
Definition: imgui_internal.h:789
ImGuiTabBar::WantLayout
bool WantLayout
Definition: imgui_internal.h:1453
ImGui::IsPopupOpen
IMGUI_API bool IsPopupOpen(const char *str_id)
Definition: imgui.cpp:7437
ImVector::begin
T * begin()
Definition: imgui.h:1252
ExampleAppConsole::TextEditCallbackStub
static int TextEditCallbackStub(ImGuiInputTextCallbackData *data)
Definition: imgui_demo.cpp:3726
ImGuiWindow::WindowPadding
ImVec2 WindowPadding
Definition: imgui_internal.h:1290
ImGuiContext::ActiveIdSource
ImGuiInputSource ActiveIdSource
Definition: imgui_internal.h:907
ImGuiLogType_Clipboard
@ ImGuiLogType_Clipboard
Definition: imgui_internal.h:436
ImDrawList::PathFillConvex
void PathFillConvex(ImU32 col)
Definition: imgui.h:1942
ImGui::SliderScalar
IMGUI_API bool SliderScalar(const char *label, ImGuiDataType data_type, void *v, const void *v_min, const void *v_max, const char *format=NULL, float power=1.0f)
Definition: imgui_widgets.cpp:2507
ImGuiContext::DragDropPayloadBufLocal
unsigned char DragDropPayloadBufLocal[8]
Definition: imgui_internal.h:1000
ImGuiAxis_None
@ ImGuiAxis_None
Definition: imgui_internal.h:442
ImGuiNavMoveFlags
int ImGuiNavMoveFlags
Definition: imgui_internal.h:100
ImGuiSettingsHandler
Definition: imgui_internal.h:673
ImGuiLogType
ImGuiLogType
Definition: imgui_internal.h:430
ImDrawListSharedData::InitialFlags
ImDrawListFlags InitialFlags
Definition: imgui_internal.h:750
ImFontConfig::FontData
void * FontData
Definition: imgui.h:2004
ImGui::TreeNode
IMGUI_API bool TreeNode(const char *label)
Definition: imgui_widgets.cpp:5071
ImGuiContext::NavIdTabCounter
int NavIdTabCounter
Definition: imgui_internal.h:948
MyDocument::DoForceClose
void DoForceClose()
Definition: imgui_demo.cpp:4493
ExampleAppLog
Definition: imgui_demo.cpp:3847
ImDrawList::AddCircleFilled
IMGUI_API void AddCircleFilled(const ImVec2 &center, float radius, ImU32 col, int num_segments=12)
Definition: imgui_draw.cpp:1082
ImGuiWindowFlags_AlwaysHorizontalScrollbar
@ ImGuiWindowFlags_AlwaysHorizontalScrollbar
Definition: imgui.h:729
ImGui::SliderFloat2
IMGUI_API bool SliderFloat2(const char *label, float v[2], float v_min, float v_max, const char *format="%.3f", float power=1.0f)
Definition: imgui_widgets.cpp:2624
ImRect::IsInverted
bool IsInverted() const
Definition: imgui_internal.h:572
ImVec4::x
float x
Definition: imgui.h:194
ImGuiIO::InputQueueCharacters
ImVector< ImWchar > InputQueueCharacters
Definition: imgui.h:1464
ImGuiWindow::HiddenFramesCanSkipItems
int HiddenFramesCanSkipItems
Definition: imgui_internal.h:1320
ImGuiWindow::LastTimeActive
float LastTimeActive
Definition: imgui_internal.h:1341
ImGuiContext::NavScoringCount
int NavScoringCount
Definition: imgui_internal.h:940
ImGuiIO::MouseDown
bool MouseDown[5]
Definition: imgui.h:1410
ImGuiDataType_U8
@ ImGuiDataType_U8
Definition: imgui.h:911
MyDocument
Definition: imgui_demo.cpp:4474
ImFontAtlas::TexUvScale
ImVec2 TexUvScale
Definition: imgui.h:2165
ImRect::ImRect
ImRect(float x1, float y1, float x2, float y2)
Definition: imgui_internal.h:549
ImGuiCol_PlotHistogramHovered
@ ImGuiCol_PlotHistogramHovered
Definition: imgui.h:1068
ImVec2ih::ImVec2ih
ImVec2ih()
Definition: imgui_internal.h:535
ImGuiContext::ActiveIdIsJustActivated
bool ActiveIdIsJustActivated
Definition: imgui_internal.h:898
ImFontBuildSrcData::DstIndex
int DstIndex
Definition: imgui_draw.cpp:1817
ImGuiWindowTempData::ParentLayoutType
ImGuiLayoutType ParentLayoutType
Definition: imgui_internal.h:1227
ImGuiTextFilter::IsActive
bool IsActive() const
Definition: imgui.h:1606
ImGuiTreeNodeFlags_Leaf
@ ImGuiTreeNodeFlags_Leaf
Definition: imgui.h:791
ImGuiTextFilter::PassFilter
IMGUI_API bool PassFilter(const char *text, const char *text_end=NULL) const
Definition: imgui.cpp:2129
ImGuiBackendFlags_HasGamepad
@ ImGuiBackendFlags_HasGamepad
Definition: imgui.h:1018
ImGuiColumns::IsFirstFrame
bool IsFirstFrame
Definition: imgui_internal.h:713
ImGuiStyle::ScrollbarSize
float ScrollbarSize
Definition: imgui.h:1311
ImGuiWindow::SetWindowPosPivot
ImVec2 SetWindowPosPivot
Definition: imgui_internal.h:1326
ImGui::RenderTextClipped
IMGUI_API void RenderTextClipped(const ImVec2 &pos_min, const ImVec2 &pos_max, const char *text, const char *text_end, const ImVec2 *text_size_if_known, const ImVec2 &align=ImVec2(0, 0), const ImRect *clip_rect=NULL)
Definition: imgui.cpp:2458
ImGuiIO::KeysDownDuration
float KeysDownDuration[512]
Definition: imgui.h:1460
ImGuiInputTextFlags_ReadOnly
@ ImGuiInputTextFlags_ReadOnly
Definition: imgui.h:769
ImGuiItemFlags_Disabled
@ ImGuiItemFlags_Disabled
Definition: imgui_internal.h:388
ImGuiWindow::MoveId
ImGuiID MoveId
Definition: imgui_internal.h:1294
ImGuiWindowSettings
Definition: imgui_internal.h:662
stb__in4
#define stb__in4(x)
Definition: imgui_draw.cpp:3181
ImGuiContext::LastActiveIdTimer
float LastActiveIdTimer
Definition: imgui_internal.h:914
MyDocument::DisplayContextMenu
static void DisplayContextMenu(MyDocument *doc)
Definition: imgui_demo.cpp:4514
ImGuiColumns::LineMinY
float LineMinY
Definition: imgui_internal.h:718
ImGuiWindow::ChildId
ImGuiID ChildId
Definition: imgui_internal.h:1295
ImGui::ScrollbarEx
IMGUI_API bool ScrollbarEx(const ImRect &bb, ImGuiID id, ImGuiAxis axis, float *p_scroll_v, float avail_v, float contents_v, ImDrawCornerFlags rounding_corners)
Definition: imgui_widgets.cpp:787
ImGui::GetItemID
ImGuiID GetItemID()
Definition: imgui_internal.h:1529
stbtt_FindGlyphIndex
STBTT_DEF int stbtt_FindGlyphIndex(const stbtt_fontinfo *info, int unicode_codepoint)
ImGuiCol_FrameBg
@ ImGuiCol_FrameBg
Definition: imgui.h:1034
ImGuiNavDirSourceFlags_PadLStick
@ ImGuiNavDirSourceFlags_PadLStick
Definition: imgui_internal.h:488
ExampleAppConsole::Filter
ImGuiTextFilter Filter
Definition: imgui_demo.cpp:3524
ImGuiPtrOrIndex::Index
int Index
Definition: imgui_internal.h:847
ImGuiContext::NavDisableHighlight
bool NavDisableHighlight
Definition: imgui_internal.h:951
stbtt_aligned_quad::y0
float y0
Definition: imstb_truetype.h:546
ImGui::BeginGroup
IMGUI_API void BeginGroup()
Definition: imgui.cpp:7063
ImGuiItemHoveredDataBackup::Restore
void Restore() const
Definition: imgui_internal.h:1395
ImVector::resize
void resize(int new_size)
Definition: imgui.h:1263
ImGuiContext::TabBars
ImPool< ImGuiTabBar > TabBars
Definition: imgui_internal.h:1004
ImDrawCmd::UserCallbackData
void * UserCallbackData
Definition: imgui.h:1799
ImGuiWindowFlags_NoBringToFrontOnFocus
@ ImGuiWindowFlags_NoBringToFrontOnFocus
Definition: imgui.h:727
ImGuiTabItem::ImGuiTabItem
ImGuiTabItem()
Definition: imgui_internal.h:1428
ImGui::GetNavInputAmount2d
IMGUI_API ImVec2 GetNavInputAmount2d(ImGuiNavDirSourceFlags dir_sources, ImGuiInputReadMode mode, float slow_factor=0.0f, float fast_factor=0.0f)
Definition: imgui.cpp:8232
stbtt_pack_range::h_oversample
unsigned char h_oversample
Definition: imstb_truetype.h:627
ImGuiContext::ActiveIdPreviousFrameHasBeenEditedBefore
bool ActiveIdPreviousFrameHasBeenEditedBefore
Definition: imgui_internal.h:910
ImFont::CalcTextSizeA
IMGUI_API ImVec2 CalcTextSizeA(float size, float max_width, float wrap_width, const char *text_begin, const char *text_end=NULL, const char **remaining=NULL) const
Definition: imgui_draw.cpp:2735
ImGuiNextWindowData::SizeCallbackUserData
void * SizeCallbackUserData
Definition: imgui_internal.h:808
ImDrawListFlags_None
@ ImDrawListFlags_None
Definition: imgui.h:1867
ImGuiContext::FocusRequestNextWindow
ImGuiWindow * FocusRequestNextWindow
Definition: imgui_internal.h:970
ImGuiStyle::TouchExtraPadding
ImVec2 TouchExtraPadding
Definition: imgui.h:1308
ExampleAppConsole::InputBuf
char InputBuf[256]
Definition: imgui_demo.cpp:3519
ImGuiContext::ActiveId
ImGuiID ActiveId
Definition: imgui_internal.h:895
ImGuiTabBar
Definition: imgui_internal.h:1432
ImGui::RadioButton
IMGUI_API bool RadioButton(const char *label, bool active)
Definition: imgui_widgets.cpp:1040
ImGui::GetBackgroundDrawList
IMGUI_API ImDrawList * GetBackgroundDrawList()
Definition: imgui.cpp:3329
ImGuiContext::NavMoveResultLocalVisibleSet
ImGuiNavMoveResult NavMoveResultLocalVisibleSet
Definition: imgui_internal.h:965
ImGui::RenderTextWrapped
IMGUI_API void RenderTextWrapped(ImVec2 pos, const char *text, const char *text_end, float wrap_width)
Definition: imgui.cpp:2412
ImGuiContext::DragDropMouseButton
int DragDropMouseButton
Definition: imgui_internal.h:990
ImGui::IsMouseDown
IMGUI_API bool IsMouseDown(int button)
Definition: imgui.cpp:4441
ImGuiSliderFlags_None
@ ImGuiSliderFlags_None
Definition: imgui_internal.h:335
ImGuiStyleVar_SelectableTextAlign
@ ImGuiStyleVar_SelectableTextAlign
Definition: imgui.h:1114
ImGuiStorage::Clear
void Clear()
Definition: imgui.h:1670
ImVector::clear
void clear()
Definition: imgui.h:1251
ImGuiInputSource_Mouse
@ ImGuiInputSource_Mouse
Definition: imgui_internal.h:456
ImGui::DragBehavior
IMGUI_API bool DragBehavior(ImGuiID id, ImGuiDataType data_type, void *v, float v_speed, const void *v_min, const void *v_max, const char *format, float power, ImGuiDragFlags flags)
Definition: imgui_widgets.cpp:2024
ImFont::~ImFont
IMGUI_API ~ImFont()
Definition: imgui_draw.cpp:2503
ImDrawList::AddImageRounded
IMGUI_API void AddImageRounded(ImTextureID user_texture_id, const ImVec2 &p_min, const ImVec2 &p_max, const ImVec2 &uv_min, const ImVec2 &uv_max, ImU32 col, float rounding, ImDrawCornerFlags rounding_corners=ImDrawCornerFlags_All)
Definition: imgui_draw.cpp:1169
ImGui::BeginColumns
IMGUI_API void BeginColumns(const char *str_id, int count, ImGuiColumnsFlags flags=0)
Definition: imgui_widgets.cpp:7369
ImFontGlyph::AdvanceX
float AdvanceX
Definition: imgui.h:2032
ImGui::LogToClipboard
IMGUI_API void LogToClipboard(int auto_open_depth=-1)
Definition: imgui.cpp:9297
ImGuiNavLayer_Main
@ ImGuiNavLayer_Main
Definition: imgui_internal.h:512
ImGuiCond
int ImGuiCond
Definition: imgui.h:133
ImGuiButtonFlags_AlignTextBaseLine
@ ImGuiButtonFlags_AlignTextBaseLine
Definition: imgui_internal.h:325
ImGuiTabBar::Tabs
ImVector< ImGuiTabItem > Tabs
Definition: imgui_internal.h:1434
ImGuiContext::DebugItemPickerBreakID
ImGuiID DebugItemPickerBreakID
Definition: imgui_internal.h:1052
ImGuiConfigFlags_NavNoCaptureKeyboard
@ ImGuiConfigFlags_NavNoCaptureKeyboard
Definition: imgui.h:1005
ImGuiWindow::WasActive
bool WasActive
Definition: imgui_internal.h:1303
ImGuiNavLayer_Menu
@ ImGuiNavLayer_Menu
Definition: imgui_internal.h:513
ImHashStr
IMGUI_API ImU32 ImHashStr(const char *data, size_t data_size=0, ImU32 seed=0)
Definition: imgui.cpp:1535
ImGuiContext::LogType
ImGuiLogType LogType
Definition: imgui_internal.h:1041
ImGuiConfigFlags_NavEnableSetMousePos
@ ImGuiConfigFlags_NavEnableSetMousePos
Definition: imgui.h:1004
ImGui::IsMouseReleased
IMGUI_API bool IsMouseReleased(int button)
Definition: imgui.cpp:4476
ImGui::ShrinkWidths
IMGUI_API void ShrinkWidths(ImGuiShrinkWidthItem *items, int count, float width_excess)
Definition: imgui_widgets.cpp:1365
ImGui::PopItemWidth
IMGUI_API void PopItemWidth()
Definition: imgui.cpp:6183
ImGui::TabBarRemoveTab
IMGUI_API void TabBarRemoveTab(ImGuiTabBar *tab_bar, ImGuiID tab_id)
Definition: imgui_widgets.cpp:6665
ImGuiInputTextState::CursorAnim
float CursorAnim
Definition: imgui_internal.h:639
ImFontAtlasCustomRect::ID
unsigned int ID
Definition: imgui.h:2056
ImGuiWindow::MenuColumns
ImGuiMenuColumns MenuColumns
Definition: imgui_internal.h:1343
ImGui::SetNextWindowBgAlpha
IMGUI_API void SetNextWindowBgAlpha(float alpha)
Definition: imgui.cpp:6783
ImGui::VSliderFloat
IMGUI_API bool VSliderFloat(const char *label, const ImVec2 &size, float *v, float v_min, float v_max, const char *format="%.3f", float power=1.0f)
Definition: imgui_widgets.cpp:2728
ImGuiDir
int ImGuiDir
Definition: imgui.h:135
ImFormatString
IMGUI_API int ImFormatString(char *buf, size_t buf_size, const char *fmt,...) IM_FMTARGS(3)
Definition: imgui.cpp:1459
IM_COL32_G_SHIFT
#define IM_COL32_G_SHIFT
Definition: imgui.h:1735
ImGui::ColorConvertHSVtoRGB
IMGUI_API void ColorConvertHSVtoRGB(float h, float s, float v, float &out_r, float &out_g, float &out_b)
Definition: imgui.cpp:1853
font
io.Fonts->AddFontFromMemoryCompressedTTF(compressed_data, compressed_data_size, size_pixels,...) font
Definition: README.txt:86
ImGui::PushItemFlag
IMGUI_API void PushItemFlag(ImGuiItemFlags option, bool enabled)
Definition: imgui.cpp:6268
ImFont::AddRemapChar
IMGUI_API void AddRemapChar(ImWchar dst, ImWchar src, bool overwrite_dst=true)
Definition: imgui_draw.cpp:2601
ImGuiSelectableFlags_DrawHoveredWhenHeld
@ ImGuiSelectableFlags_DrawHoveredWhenHeld
Definition: imgui_internal.h:364
ImGuiIO::WantTextInput
bool WantTextInput
Definition: imgui.h:1431
ImGuiIO::ConfigWindowsMoveFromTitleBarOnly
bool ConfigWindowsMoveFromTitleBarOnly
Definition: imgui.h:1370
ImGuiSelectableFlags_SetNavIdOnHover
@ ImGuiSelectableFlags_SetNavIdOnHover
Definition: imgui_internal.h:365
width
int width
Definition: bgfx.cpp:19
ImGuiWindow::ColumnsStorage
ImVector< ImGuiColumns > ColumnsStorage
Definition: imgui_internal.h:1345
ImDrawListSharedData::Font
ImFont * Font
Definition: imgui_internal.h:746
ImGuiContext::DragDropPayload
ImGuiPayload DragDropPayload
Definition: imgui_internal.h:991
ImGuiLogType_Buffer
@ ImGuiLogType_Buffer
Definition: imgui_internal.h:435
ImGui::SetCurrentFont
IMGUI_API void SetCurrentFont(ImFont *font)
Definition: imgui.cpp:6235
ImGuiTextBuffer
Definition: imgui.h:1626
ImGuiNextWindowData::MenuBarOffsetMinVal
ImVec2 MenuBarOffsetMinVal
Definition: imgui_internal.h:810
IMGUI_VERSION
#define IMGUI_VERSION
Definition: imgui.h:49
ImGuiCol_NavWindowingDimBg
@ ImGuiCol_NavWindowingDimBg
Definition: imgui.h:1073
ImRect::ImRect
ImRect()
Definition: imgui_internal.h:546
ImRect
Definition: imgui_internal.h:541
ImGuiNextItemDataFlags_None
@ ImGuiNextItemDataFlags_None
Definition: imgui_internal.h:818
ImGuiWindow::ClipRect
ImRect ClipRect
Definition: imgui_internal.h:1337
ImStrnicmp
IMGUI_API int ImStrnicmp(const char *str1, const char *str2, size_t count)
Definition: imgui.cpp:1341
ImGuiIO::FontDefault
ImFont * FontDefault
Definition: imgui.h:1362
ImGui::RenderBullet
IMGUI_API void RenderBullet(ImDrawList *draw_list, ImVec2 pos, ImU32 col)
Definition: imgui.cpp:2612
ImFontAtlas::~ImFontAtlas
IMGUI_API ~ImFontAtlas()
Definition: imgui_draw.cpp:1505
ImGuiInputSource
ImGuiInputSource
Definition: imgui_internal.h:453
ImDrawCornerFlags_BotLeft
@ ImDrawCornerFlags_BotLeft
Definition: imgui.h:1856
ImFont::FindGlyphNoFallback
const IMGUI_API ImFontGlyph * FindGlyphNoFallback(ImWchar c) const
Definition: imgui_draw.cpp:2626
ImGuiStyle::IndentSpacing
float IndentSpacing
Definition: imgui.h:1309
ImGuiItemHoveredDataBackup::LastItemStatusFlags
ImGuiItemStatusFlags LastItemStatusFlags
Definition: imgui_internal.h:1389
ImGuiWindowTempData::CursorMaxPos
ImVec2 CursorMaxPos
Definition: imgui_internal.h:1205
ImGui::ShowMetricsWindow
IMGUI_API void ShowMetricsWindow(bool *p_open=NULL)
Definition: imgui.cpp:9780
ImGuiCol_TextSelectedBg
@ ImGuiCol_TextSelectedBg
Definition: imgui.h:1069
ImFontConfig::FontDataSize
int FontDataSize
Definition: imgui.h:2005
ImGuiButtonFlags_NoNavFocus
@ ImGuiButtonFlags_NoNavFocus
Definition: imgui_internal.h:329
ImGuiWindow::AutoFitFramesY
ImS8 AutoFitFramesY
Definition: imgui_internal.h:1316
ImGuiStyle::GrabRounding
float GrabRounding
Definition: imgui.h:1314
ImDrawList::PathArcTo
IMGUI_API void PathArcTo(const ImVec2 &center, float radius, float a_min, float a_max, int num_segments=10)
Definition: imgui_draw.cpp:878
size_pixels
Add a fourth parameter to bake specific font ranges size_pixels
Definition: README.txt:57
ImGui::EndMenu
IMGUI_API void EndMenu()
Definition: imgui_widgets.cpp:6224
ImFontBuildDstData::GlyphsHighest
int GlyphsHighest
Definition: imgui_draw.cpp:1828
ImGuiContext::DragDropAcceptIdCurr
ImGuiID DragDropAcceptIdCurr
Definition: imgui_internal.h:996
ImGuiColorEditFlags_NoDragDrop
@ ImGuiColorEditFlags_NoDragDrop
Definition: imgui.h:1136
ImGui::IsKeyPressedMap
bool IsKeyPressedMap(ImGuiKey key, bool repeat=true)
Definition: imgui_internal.h:1588
ImFontAtlasCustomRect::GlyphAdvanceX
float GlyphAdvanceX
Definition: imgui.h:2059
ImGuiNavDirSourceFlags_Keyboard
@ ImGuiNavDirSourceFlags_Keyboard
Definition: imgui_internal.h:486
ImGuiContext::NavActivatePressedId
ImGuiID NavActivatePressedId
Definition: imgui_internal.h:932
ImBoolVector
Definition: imgui_internal.h:274
ImGuiIO::MouseDelta
ImVec2 MouseDelta
Definition: imgui.h:1442
ImGuiColumns::Current
int Current
Definition: imgui_internal.h:715
ImGuiWindow::ScrollbarSizes
ImVec2 ScrollbarSizes
Definition: imgui_internal.h:1300
ImGui::GetCursorPos
IMGUI_API ImVec2 GetCursorPos()
Definition: imgui.cpp:6892
ImGuiWindow::Flags
ImGuiWindowFlags Flags
Definition: imgui_internal.h:1284
ImTextCharFromUtf8
int ImTextCharFromUtf8(unsigned int *out_char, const char *in_text, const char *in_text_end)
Definition: imgui.cpp:1628
ImFontBuildDstData::SrcCount
int SrcCount
Definition: imgui_draw.cpp:1827
ImFontAtlasFlags_None
@ ImFontAtlasFlags_None
Definition: imgui.h:2068
ImGui::GetHoveredID
IMGUI_API ImGuiID GetHoveredID()
Definition: imgui.cpp:2919
ImGui::BeginTooltip
IMGUI_API void BeginTooltip()
Definition: imgui.cpp:7362
ImVector::end
T * end()
Definition: imgui.h:1254
ImGuiGroupData::BackupActiveIdPreviousFrameIsAlive
bool BackupActiveIdPreviousFrameIsAlive
Definition: imgui_internal.h:610
ImGui::EndMainMenuBar
IMGUI_API void EndMainMenuBar()
Definition: imgui_widgets.cpp:5995
ImFontConfig::ImFontConfig
IMGUI_API ImFontConfig()
Definition: imgui_draw.cpp:1412
color
BlamColor color
Typedef for a color field, used in tag definitions.
Definition: tags.h:359
ImGuiStorage::GetInt
IMGUI_API int GetInt(ImGuiID key, int default_val=0) const
Definition: imgui.cpp:1957
ImTriangleClosestPoint
IMGUI_API ImVec2 ImTriangleClosestPoint(const ImVec2 &a, const ImVec2 &b, const ImVec2 &c, const ImVec2 &p)
Definition: imgui.cpp:1317
ImGuiWindow::PopupId
ImGuiID PopupId
Definition: imgui_internal.h:1315
ImGuiWindowTempData::ChildWindows
ImVector< ImGuiWindow * > ChildWindows
Definition: imgui_internal.h:1224
ImGuiContext::NavNextActivateId
ImGuiID NavNextActivateId
Definition: imgui_internal.h:937
ImGui::EndPopup
IMGUI_API void EndPopup()
Definition: imgui.cpp:7675
ImParseFormatFindStart
const IMGUI_API char * ImParseFormatFindStart(const char *format)
Definition: imgui_widgets.cpp:2760
ImGuiWindow::WantCollapseToggle
bool WantCollapseToggle
Definition: imgui_internal.h:1306
ImGuiTabBar::CurrFrameVisible
int CurrFrameVisible
Definition: imgui_internal.h:1439
ImGuiListClipper::End
IMGUI_API void End()
Definition: imgui.cpp:2316
ImGuiPlotType_Histogram
@ ImGuiPlotType_Histogram
Definition: imgui_internal.h:450
ImGuiColorEditFlags_NoAlpha
@ ImGuiColorEditFlags_NoAlpha
Definition: imgui.h:1128
ImGuiWindowFlags_NoCollapse
@ ImGuiWindowFlags_NoCollapse
Definition: imgui.h:719
ImGui::EndDragDropTarget
IMGUI_API void EndDragDropTarget()
Definition: imgui.cpp:9162
ImGuiContext::WantCaptureMouseNextFrame
int WantCaptureMouseNextFrame
Definition: imgui_internal.h:1058
ImGui::Checkbox
IMGUI_API bool Checkbox(const char *label, bool *v)
Definition: imgui_widgets.cpp:974
ImVector::index_from_ptr
int index_from_ptr(const T *it) const
Definition: imgui.h:1280
ImGuiWindow::StateStorage
ImGuiStorage StateStorage
Definition: imgui_internal.h:1344
ImVec4::z
float z
Definition: imgui.h:194
ImGuiInputTextState::InitialTextA
ImVector< char > InitialTextA
Definition: imgui_internal.h:634
ImGuiGroupData::BackupCurrLineSize
ImVec2 BackupCurrLineSize
Definition: imgui_internal.h:607
ImGuiNavMoveFlags_AllowCurrentNavId
@ ImGuiNavMoveFlags_AllowCurrentNavId
Definition: imgui_internal.h:498
ImVec1
Definition: imgui_internal.h:524
MyDocument::Name
const char * Name
Definition: imgui_demo.cpp:4476
ImGui::GetColumnNormFromOffset
IMGUI_API float GetColumnNormFromOffset(const ImGuiColumns *columns, float offset)
Definition: imgui_widgets.cpp:7209
ImGuiNavInput
int ImGuiNavInput
Definition: imgui.h:137
ImGuiCol_TabUnfocusedActive
@ ImGuiCol_TabUnfocusedActive
Definition: imgui.h:1064
ImStrdup
IMGUI_API char * ImStrdup(const char *str)
Definition: imgui.cpp:1357
ImGui::IsMouseHoveringRect
IMGUI_API bool IsMouseHoveringRect(const ImVec2 &r_min, const ImVec2 &r_max, bool clip=true)
Definition: imgui.cpp:4366
ImGuiInputTextFlags_CharsUppercase
@ ImGuiInputTextFlags_CharsUppercase
Definition: imgui.h:757
ImFontAtlas::AddFont
IMGUI_API ImFont * AddFont(const ImFontConfig *font_cfg)
Definition: imgui_draw.cpp:1600
ImGuiInputTextState::CursorClamp
void CursorClamp()
Definition: imgui_internal.h:655
ImGuiContext::SettingsIniData
ImGuiTextBuffer SettingsIniData
Definition: imgui_internal.h:1035
ImGuiContext::SettingsLoaded
bool SettingsLoaded
Definition: imgui_internal.h:1033
ImFont::RenderChar
IMGUI_API void RenderChar(ImDrawList *draw_list, float size, ImVec2 pos, ImU32 col, ImWchar c) const
Definition: imgui_draw.cpp:2829
ImGuiColorEditFlags_HDR
@ ImGuiColorEditFlags_HDR
Definition: imgui.h:1142
ImGui::ItemHoverable
IMGUI_API bool ItemHoverable(const ImRect &bb, ImGuiID id)
Definition: imgui.cpp:3103
ImFontAtlas::AddCustomRectFontGlyph
IMGUI_API int AddCustomRectFontGlyph(ImFont *font, ImWchar id, int width, int height, float advance_x, const ImVec2 &offset=ImVec2(0, 0))
Definition: imgui_draw.cpp:1739
ExampleAppConsole::Strnicmp
static int Strnicmp(const char *str1, const char *str2, int n)
Definition: imgui_demo.cpp:3550
ImGuiGroupData
Definition: imgui_internal.h:601
ImGuiSliderFlags_
ImGuiSliderFlags_
Definition: imgui_internal.h:333
ImGuiTabItem::ID
ImGuiID ID
Definition: imgui_internal.h:1419
ImGuiInputTextState
Definition: imgui_internal.h:628
ImGuiIO::NavActive
bool NavActive
Definition: imgui.h:1434
ImGuiCol_Tab
@ ImGuiCol_Tab
Definition: imgui.h:1060
ImGuiInputSource_Nav
@ ImGuiInputSource_Nav
Definition: imgui_internal.h:457
ImFontBuildSrcData::SrcRanges
const ImWchar * SrcRanges
Definition: imgui_draw.cpp:1816
ImFontConfig::DstFont
ImFont * DstFont
Definition: imgui.h:2024
ImGui::MarkIniSettingsDirty
IMGUI_API void MarkIniSettingsDirty()
Definition: imgui.cpp:9374
ImFormatString
int ImFormatString(char *buf, size_t buf_size, const char *fmt,...)
Definition: imgui.cpp:1459
ImGui::UpdateMouseMovingWindowEndFrame
IMGUI_API void UpdateMouseMovingWindowEndFrame()
Definition: imgui.cpp:3403
ImGui::NavMoveRequestTryWrapping
IMGUI_API void NavMoveRequestTryWrapping(ImGuiWindow *window, ImGuiNavMoveFlags move_flags)
Definition: imgui.cpp:8093
ImGui::BeginPopupModal
IMGUI_API bool BeginPopupModal(const char *name, bool *p_open=NULL, ImGuiWindowFlags flags=0)
Definition: imgui.cpp:7647
ImFontAtlasCustomRect::IsPacked
bool IsPacked() const
Definition: imgui.h:2063
ImGuiInputTextState::SelectAll
void SelectAll()
Definition: imgui_internal.h:658
ImGui::Spacing
IMGUI_API void Spacing()
Definition: imgui_widgets.cpp:1173
ImGuiNextWindowDataFlags_HasCollapsed
@ ImGuiNextWindowDataFlags_HasCollapsed
Definition: imgui_internal.h:788
glyph
ARPHIC PUBLIC LICENSE Ltd Yung Chi Taiwan All rights reserved except as specified below Everyone is permitted to copy and distribute verbatim copies of this license but changing it is forbidden Preamble The licenses for most software are designed to take away your freedom to share and change it By the ARPHIC PUBLIC LICENSE specifically permits and encourages you to use this provided that you give the recipients all the rights that we gave you and make sure they can get the modifications of this software Legal Terms Font means the TrueType fonts AR PL Mingti2L AR PL KaitiM AR PL KaitiM and the derivatives of those fonts created through any modification including modifying glyph
Definition: ARPHICPL.TXT:16
ImGuiStyle::SelectableTextAlign
ImVec2 SelectableTextAlign
Definition: imgui.h:1319
ImDrawListFlags
int ImDrawListFlags
Definition: imgui.h:141
ImGuiWindow::BeginCount
short BeginCount
Definition: imgui_internal.h:1312
ImGuiInputTextCallbackData::DeleteChars
IMGUI_API void DeleteChars(int pos, int bytes_count)
Definition: imgui_widgets.cpp:3261
ImGui::GetMouseDragDelta
IMGUI_API ImVec2 GetMouseDragDelta(int button=0, float lock_threshold=-1.0f)
Definition: imgui.cpp:4537
ImGuiInputTextCallbackData::CursorPos
int CursorPos
Definition: imgui.h:1496
ImDrawVert::pos
ImVec2 pos
Definition: imgui.h:1815
ImGui::TreeNodeEx
IMGUI_API bool TreeNodeEx(const char *label, ImGuiTreeNodeFlags flags=0)
Definition: imgui_widgets.cpp:5089
ImDrawList::CloneOutput
IMGUI_API ImDrawList * CloneOutput() const
Definition: imgui_draw.cpp:392
ImGuiColumnData::Flags
ImGuiColumnsFlags Flags
Definition: imgui_internal.h:703
ImGuiButtonFlags_PressedOnClick
@ ImGuiButtonFlags_PressedOnClick
Definition: imgui_internal.h:318
ImGuiSeparatorFlags
int ImGuiSeparatorFlags
Definition: imgui_internal.h:103
ImGuiBackendFlags_HasSetMousePos
@ ImGuiBackendFlags_HasSetMousePos
Definition: imgui.h:1020
ImRect::ClipWith
void ClipWith(const ImRect &r)
Definition: imgui_internal.h:569
ImGui::SliderInt2
IMGUI_API bool SliderInt2(const char *label, int v[2], int v_min, int v_max, const char *format="%d")
Definition: imgui_widgets.cpp:2654
ImGui::PushAllowKeyboardFocus
IMGUI_API void PushAllowKeyboardFocus(bool allow_keyboard_focus)
Definition: imgui.cpp:6286
ImGuiStyle::ItemInnerSpacing
ImVec2 ItemInnerSpacing
Definition: imgui.h:1307
ImFontAtlas::AddFontFromMemoryTTF
IMGUI_API ImFont * AddFontFromMemoryTTF(void *font_data, int font_size, float size_pixels, const ImFontConfig *font_cfg=NULL, const ImWchar *glyph_ranges=NULL)
Definition: imgui_draw.cpp:1691
ImDrawDataBuilder::FlattenIntoSingleLayer
IMGUI_API void FlattenIntoSingleLayer()
Definition: imgui.cpp:4106
ImGuiContext::LogEnabled
bool LogEnabled
Definition: imgui_internal.h:1040
ImGuiContext::SettingsWindows
ImVector< ImGuiWindowSettings > SettingsWindows
Definition: imgui_internal.h:1037
ImGuiNavMoveFlags_WrapY
@ ImGuiNavMoveFlags_WrapY
Definition: imgui_internal.h:497
ImGuiContext::FramerateSecPerFrameIdx
int FramerateSecPerFrameIdx
Definition: imgui_internal.h:1056
ImGuiWindowTempData::CurrentColumns
ImGuiColumns * CurrentColumns
Definition: imgui_internal.h:1244
ImFontAtlasCustomRect::Height
unsigned short Height
Definition: imgui.h:2057
ImGuiBackendFlags_HasMouseCursors
@ ImGuiBackendFlags_HasMouseCursors
Definition: imgui.h:1019
ImGuiContext::DragDropActive
bool DragDropActive
Definition: imgui_internal.h:986
ImGuiContext::FrameCount
int FrameCount
Definition: imgui_internal.h:870
ImGuiIO::MousePos
ImVec2 MousePos
Definition: imgui.h:1409
ImGuiTreeNodeFlags_Selected
@ ImGuiTreeNodeFlags_Selected
Definition: imgui.h:783
ImGuiButtonFlags_Disabled
@ ImGuiButtonFlags_Disabled
Definition: imgui_internal.h:324
ImGui::SetScrollHereY
IMGUI_API void SetScrollHereY(float center_y_ratio=0.5f)
Definition: imgui.cpp:7349
ImGuiBackendFlags
int ImGuiBackendFlags
Definition: imgui.h:143
ImGui::IsNavInputDown
bool IsNavInputDown(ImGuiNavInput n)
Definition: imgui_internal.h:1589
ImGui::PopItemFlag
IMGUI_API void PopItemFlag()
Definition: imgui.cpp:6278
ImGui::ListBoxFooter
IMGUI_API void ListBoxFooter()
Definition: imgui_widgets.cpp:5668
ImGuiColumnData::OffsetNormBeforeResize
float OffsetNormBeforeResize
Definition: imgui_internal.h:702
ImFontConfig::GlyphOffset
ImVec2 GlyphOffset
Definition: imgui.h:2013
ImGuiTabBar::ReorderRequestTabId
ImGuiID ReorderRequestTabId
Definition: imgui_internal.h:1451
ImFontConfig::Name
char Name[40]
Definition: imgui.h:2023
ImFontAtlas::AddFontFromMemoryCompressedBase85TTF
IMGUI_API ImFont * AddFontFromMemoryCompressedBase85TTF(const char *compressed_font_data_base85, float size_pixels, const ImFontConfig *font_cfg=NULL, const ImWchar *glyph_ranges=NULL)
Definition: imgui_draw.cpp:1716
ImGuiGroupData::BackupGroupOffset
ImVec1 BackupGroupOffset
Definition: imgui_internal.h:606
ImGuiMouseCursor_Arrow
@ ImGuiMouseCursor_Arrow
Definition: imgui.h:1174
imgui.h
ImFontBuildSrcData::GlyphsCount
int GlyphsCount
Definition: imgui_draw.cpp:1819
ImFontConfig::GlyphRanges
const ImWchar * GlyphRanges
Definition: imgui.h:2014
ImDrawList::PrimRectUV
IMGUI_API void PrimRectUV(const ImVec2 &a, const ImVec2 &b, const ImVec2 &uv_a, const ImVec2 &uv_b, ImU32 col)
Definition: imgui_draw.cpp:558
ImGui::GetCursorStartPos
IMGUI_API ImVec2 GetCursorStartPos()
Definition: imgui.cpp:6931
ImGui::ProgressBar
IMGUI_API void ProgressBar(float fraction, const ImVec2 &size_arg=ImVec2(-1, 0), const char *overlay=NULL)
Definition: imgui_widgets.cpp:1101
ImGuiWindowTempData::MenuBarOffset
ImVec2 MenuBarOffset
Definition: imgui_internal.h:1223
ImGui::DragIntRange2
IMGUI_API bool DragIntRange2(const char *label, int *v_current_min, int *v_current_max, float v_speed=1.0f, int v_min=0, int v_max=0, const char *format="%d", const char *format_max=NULL)
Definition: imgui_widgets.cpp:2229
ImGuiGroupData::BackupCursorMaxPos
ImVec2 BackupCursorMaxPos
Definition: imgui_internal.h:604
ImBoolVector::Clear
void Clear()
Definition: imgui_internal.h:279
ImGuiWindowFlags_NoTitleBar
@ ImGuiWindowFlags_NoTitleBar
Definition: imgui.h:714
ImGuiDataType_S32
@ ImGuiDataType_S32
Definition: imgui.h:914
IM_ALLOC
#define IM_ALLOC(_SIZE)
Definition: imgui.h:1211
ImGuiInputSource_None
@ ImGuiInputSource_None
Definition: imgui_internal.h:455
ImGui::DataTypeFormatString
IMGUI_API int DataTypeFormatString(char *buf, int buf_size, ImGuiDataType data_type, const void *data_ptr, const char *format)
Definition: imgui_widgets.cpp:1681
ImGuiInputTextFlags_EnterReturnsTrue
@ ImGuiInputTextFlags_EnterReturnsTrue
Definition: imgui.h:760
ImVector::push_back
void push_back(const T &v)
Definition: imgui.h:1268
ImGui::PopStyleColor
IMGUI_API void PopStyleColor(int count=1)
Definition: imgui.cpp:6341
ImGuiWindowTempData
Definition: imgui_internal.h:1200
ImFontGlyphRangesBuilder::BuildRanges
IMGUI_API void BuildRanges(ImVector< ImWchar > *out_ranges)
Definition: imgui_draw.cpp:2468
ImGuiWindow::OuterRectClipped
ImRect OuterRectClipped
Definition: imgui_internal.h:1333
ImGui::GetFontSize
IMGUI_API float GetFontSize()
Definition: imgui.cpp:6872
ImTriangleBarycentricCoords
IMGUI_API void ImTriangleBarycentricCoords(const ImVec2 &a, const ImVec2 &b, const ImVec2 &c, const ImVec2 &p, float &out_u, float &out_v, float &out_w)
Definition: imgui.cpp:1306
MyDocument::DisplayContents
static void DisplayContents(MyDocument *doc)
Definition: imgui_demo.cpp:4497
ImGui::CalcTypematicPressedRepeatAmount
IMGUI_API int CalcTypematicPressedRepeatAmount(float t, float t_prev, float repeat_delay, float repeat_rate)
Definition: imgui.cpp:4399
ImGui::TabItemLabelAndCloseButton
IMGUI_API bool TabItemLabelAndCloseButton(ImDrawList *draw_list, const ImRect &bb, ImGuiTabItemFlags flags, ImVec2 frame_padding, const char *label, ImGuiID tab_id, ImGuiID close_button_id)
Definition: imgui_widgets.cpp:7119
ImGuiNavMoveFlags_AlsoScoreVisibleSet
@ ImGuiNavMoveFlags_AlsoScoreVisibleSet
Definition: imgui_internal.h:499
ImVec4
Definition: imgui.h:192
ImGuiContext::NextWindowData
ImGuiNextWindowData NextWindowData
Definition: imgui_internal.h:917
ImGuiContext::DragDropAcceptFlags
ImGuiDragDropFlags DragDropAcceptFlags
Definition: imgui_internal.h:994
ImGuiWindow::AutoPosLastDirection
ImGuiDir AutoPosLastDirection
Definition: imgui_internal.h:1319
ImParseFormatPrecision
IMGUI_API int ImParseFormatPrecision(const char *format, int default_value)
Definition: imgui_widgets.cpp:2809
ImGuiTextBuffer::begin
const char * begin() const
Definition: imgui.h:1633
ImGuiWindowTempData::GroupOffset
ImVec1 GroupOffset
Definition: imgui_internal.h:1242
ImGui::DataTypeApplyOp
IMGUI_API void DataTypeApplyOp(ImGuiDataType data_type, int op, void *output, void *arg_1, const void *arg_2)
Definition: imgui_widgets.cpp:1704
ImGuiNavMoveResult::SelectScopeId
ImGuiID SelectScopeId
Definition: imgui_internal.h:771
ImColor::HSV
static ImColor HSV(float h, float s, float v, float a=1.0f)
Definition: imgui.h:1763
ImGuiWindowTempData::FocusCounterAll
int FocusCounterAll
Definition: imgui_internal.h:1228
ImGui::InputText
IMGUI_API bool InputText(const char *label, char *buf, size_t buf_size, ImGuiInputTextFlags flags=0, ImGuiInputTextCallback callback=NULL, void *user_data=NULL)
Definition: imgui_widgets.cpp:3068
ImGui::SetItemDefaultFocus
IMGUI_API void SetItemDefaultFocus()
Definition: imgui.cpp:6966
ImGuiMenuColumns::Spacing
float Spacing
Definition: imgui_internal.h:617
ImGuiContext::ActiveIdAllowNavDirFlags
int ActiveIdAllowNavDirFlags
Definition: imgui_internal.h:903
ImFont::Ascent
float Ascent
Definition: imgui.h:2200
ImRect::Max
ImVec2 Max
Definition: imgui_internal.h:544
ImGuiNextWindowData::ImGuiNextWindowData
ImGuiNextWindowData()
Definition: imgui_internal.h:812
ImGui::NextColumn
IMGUI_API void NextColumn()
Definition: imgui_widgets.cpp:7445
ImDrawIdx
unsigned short ImDrawIdx
Definition: imgui.h:1808
ImGui::GetScrollMaxX
IMGUI_API float GetScrollMaxX()
Definition: imgui.cpp:7268
ImFont::ImFont
IMGUI_API ImFont()
Definition: imgui_draw.cpp:2486
ImDrawCmd::IdxOffset
unsigned int IdxOffset
Definition: imgui.h:1797
ImGuiContext::Time
double Time
Definition: imgui_internal.h:869
ExampleAppConsole::Stricmp
static int Stricmp(const char *str1, const char *str2)
Definition: imgui_demo.cpp:3549
ImGuiColumns::HostCursorMaxPosX
float HostCursorMaxPosX
Definition: imgui_internal.h:720
ImGuiContext::DragDropAcceptFrameCount
int DragDropAcceptFrameCount
Definition: imgui_internal.h:998
ExampleAppLog::Clear
void Clear()
Definition: imgui_demo.cpp:3860
ImGuiTabBarFlags_None
@ ImGuiTabBarFlags_None
Definition: imgui.h:834
ImGuiInputTextState::SelectedAllMouseLock
bool SelectedAllMouseLock
Definition: imgui_internal.h:641
ImGui::SetNextWindowContentSize
IMGUI_API void SetNextWindowContentSize(const ImVec2 &size)
Definition: imgui.cpp:6761
ImGuiContext::NavJustMovedToId
ImGuiID NavJustMovedToId
Definition: imgui_internal.h:935
ImGuiColorEditFlags_NoPicker
@ ImGuiColorEditFlags_NoPicker
Definition: imgui.h:1129
IM_FMTARGS
#define IM_FMTARGS(FMT)
Definition: imgui.h:72
ImGuiWindow::MemoryCompacted
bool MemoryCompacted
Definition: imgui_internal.h:1360
ImGui::IsKeyPressed
IMGUI_API bool IsKeyPressed(int user_key_index, bool repeat=true)
Definition: imgui.cpp:4419
ImGuiTabBarFlags_DockNode
@ ImGuiTabBarFlags_DockNode
Definition: imgui_internal.h:1405
ImPool::GetSize
int GetSize() const
Definition: imgui_internal.h:306
ImGuiNavMoveResult::ID
ImGuiID ID
Definition: imgui_internal.h:770
ImGuiListClipper::DisplayEnd
int DisplayEnd
Definition: imgui.h:1713
ImGuiInputTextState::CursorFollow
bool CursorFollow
Definition: imgui_internal.h:640
ImGui::TabBarFindTabByID
IMGUI_API ImGuiTabItem * TabBarFindTabByID(ImGuiTabBar *tab_bar, ImGuiID tab_id)
Definition: imgui_widgets.cpp:6655
ImGuiInputTextFlags_CharsNoBlank
@ ImGuiInputTextFlags_CharsNoBlank
Definition: imgui.h:758
ImGuiMouseCursor
int ImGuiMouseCursor
Definition: imgui.h:138
ImTextStrToUtf8
IMGUI_API int ImTextStrToUtf8(char *buf, int buf_size, const ImWchar *in_text, const ImWchar *in_text_end)
Definition: imgui.cpp:1774
ImGui::DragInt2
IMGUI_API bool DragInt2(const char *label, int v[2], float v_speed=1.0f, int v_min=0, int v_max=0, const char *format="%d")
Definition: imgui_widgets.cpp:2214
ImGui::GcAwakeTransientWindowBuffers
IMGUI_API void GcAwakeTransientWindowBuffers(ImGuiWindow *window)
Definition: imgui.cpp:2825
ImGui::SetWindowCollapsed
IMGUI_API void SetWindowCollapsed(bool collapsed, ImGuiCond cond=0)
Definition: imgui.cpp:6690
ImGuiDataType_S8
@ ImGuiDataType_S8
Definition: imgui.h:910
ImGuiContext::WheelingWindow
ImGuiWindow * WheelingWindow
Definition: imgui_internal.h:885
ImGuiNavMoveFlags_ScrollToEdge
@ ImGuiNavMoveFlags_ScrollToEdge
Definition: imgui_internal.h:500
ImGuiGroupData::EmitItem
bool EmitItem
Definition: imgui_internal.h:611
ImGuiNextWindowData::SizeVal
ImVec2 SizeVal
Definition: imgui_internal.h:803
ImGui::RenderCheckMark
IMGUI_API void RenderCheckMark(ImVec2 pos, ImU32 col, float sz)
Definition: imgui.cpp:2617
ImFontConfig
Definition: imgui.h:2002
ImFormatStringV
IMGUI_API int ImFormatStringV(char *buf, size_t buf_size, const char *fmt, va_list args) IM_FMTLIST(3)
Definition: imgui.cpp:1477
ImGuiInputTextState::BufCapacityA
int BufCapacityA
Definition: imgui_internal.h:636
ImGui::RenderArrowPointingAt
IMGUI_API void RenderArrowPointingAt(ImDrawList *draw_list, ImVec2 pos, ImVec2 half_sz, ImGuiDir direction, ImU32 col)
Definition: imgui_draw.cpp:3063
ImGuiSelectableFlagsPrivate_
ImGuiSelectableFlagsPrivate_
Definition: imgui_internal.h:357
copy
ARPHIC PUBLIC LICENSE Ltd Yung Chi Taiwan All rights reserved except as specified below Everyone is permitted to copy and distribute verbatim copies of this license but changing it is forbidden Preamble The licenses for most software are designed to take away your freedom to share and change it By the ARPHIC PUBLIC LICENSE specifically permits and encourages you to use this provided that you give the recipients all the rights that we gave you and make sure they can get the modifications of this software Legal Terms Font means the TrueType fonts AR PL Mingti2L AR PL KaitiM AR PL KaitiM and the derivatives of those fonts created through any modification including modifying reordering converting changing font or adding deleting some characters in from glyph table PL means Public License Copyright Holder means whoever is named in the copyright or copyrights for the Font You means the or person redistributing or modifying the Font Freely Available means that you have the freedom to copy or modify the Font as well as redistribute copies of the Font under the same conditions you not price If you you can charge for this service Copying &Distribution You may copy and distribute verbatim copies of this Font in any without provided that you retain this license including modifying reordering converting changing font or adding deleting some characters in from glyph and copy and distribute such modifications under the terms of Section provided that the following conditions are such as by offering access to copy the modifications from a designated or distributing the modifications on a medium customarily used for software interchange c If the modified fonts normally reads commands interactively when you must cause when started running for such interactive use in the most ordinary to print or display an announcement including an appropriate copyright notice and a notice that there is no and telling the user how to view a copy of this License These requirements apply to the modified work as a whole If identifiable sections of that work are not derived from the and can be reasonably considered independent and separate works in then this License and its do not apply to those sections when you distribute them as separate works mere aggregation of another work not based on the Font with the Font on a volume of a storage or distribution medium does not bring the other work under the scope of this License Condition Subsequent You may not copy
Definition: ARPHICPL.TXT:41
IM_COL32_B_SHIFT
#define IM_COL32_B_SHIFT
Definition: imgui.h:1736
ImPool::FreeIdx
ImPoolIdx FreeIdx
Definition: imgui_internal.h:292
ImGuiContext::FontAtlasOwnedByContext
bool FontAtlasOwnedByContext
Definition: imgui_internal.h:862
ImGuiNavLayer_COUNT
@ ImGuiNavLayer_COUNT
Definition: imgui_internal.h:514
ImGui::IsMouseClicked
IMGUI_API bool IsMouseClicked(int button, bool repeat=false)
Definition: imgui.cpp:4457
ImGuiTabBar::LastTabContentHeight
float LastTabContentHeight
Definition: imgui_internal.h:1442
ImGuiContext::FrameScopeActive
bool FrameScopeActive
Definition: imgui_internal.h:860
ImGuiWindow::Collapsed
bool Collapsed
Definition: imgui_internal.h:1305
ImGuiInputReadMode_Repeat
@ ImGuiInputReadMode_Repeat
Definition: imgui_internal.h:469
ImRect::ClipWithFull
void ClipWithFull(const ImRect &r)
Definition: imgui_internal.h:570
MyDocument::Color
ImVec4 Color
Definition: imgui_demo.cpp:4481
ImGui::KeepAliveID
IMGUI_API void KeepAliveID(ImGuiID id)
Definition: imgui.cpp:2925
ImGuiWindowFlags_NavFlattened
@ ImGuiWindowFlags_NavFlattened
Definition: imgui.h:739
ImGui::SetHoveredID
IMGUI_API void SetHoveredID(ImGuiID id)
Definition: imgui.cpp:2910
ImGui::GetTextLineHeight
IMGUI_API float GetTextLineHeight()
Definition: imgui.cpp:6837
ImFontBuildSrcData::GlyphsList
ImVector< int > GlyphsList
Definition: imgui_draw.cpp:1821
ImGuiNextWindowData::CollapsedVal
bool CollapsedVal
Definition: imgui_internal.h:805
ImGuiAxis_X
@ ImGuiAxis_X
Definition: imgui_internal.h:443
ImGui::End
IMGUI_API void End()
Definition: imgui.cpp:6016
ImGuiStyleMod::ImGuiStyleMod
ImGuiStyleMod(ImGuiStyleVar idx, float v)
Definition: imgui_internal.h:596
ImGuiWindow::BeginOrderWithinParent
short BeginOrderWithinParent
Definition: imgui_internal.h:1313
ImGuiTabBarFlags_FittingPolicyScroll
@ ImGuiTabBarFlags_FittingPolicyScroll
Definition: imgui.h:842
ImGuiIO::WantCaptureMouse
bool WantCaptureMouse
Definition: imgui.h:1429
ImGuiContext::ShrinkWidthBuffer
ImVector< ImGuiShrinkWidthItem > ShrinkWidthBuffer
Definition: imgui_internal.h:1006
ImDrawDataBuilder::Clear
void Clear()
Definition: imgui_internal.h:763
ImGuiTextFlags_None
@ ImGuiTextFlags_None
Definition: imgui_internal.h:418
ImGui::Dummy
IMGUI_API void Dummy(const ImVec2 &size)
Definition: imgui_widgets.cpp:1181
ImGuiTabBarFlags_SaveSettings
@ ImGuiTabBarFlags_SaveSettings
Definition: imgui_internal.h:1407
ImGuiWindow::MenuBarRect
ImRect MenuBarRect() const
Definition: imgui_internal.h:1382
ImGuiListClipper::Begin
IMGUI_API void Begin(int items_count, float items_height=-1.0f)
Definition: imgui.cpp:2297
ImGuiTabBarFlags_Reorderable
@ ImGuiTabBarFlags_Reorderable
Definition: imgui.h:835
ImGuiContext::NavWindowingTarget
ImGuiWindow * NavWindowingTarget
Definition: imgui_internal.h:941
ImGuiNavHighlightFlags
int ImGuiNavHighlightFlags
Definition: imgui_internal.h:98
ExampleAppConsole::ExampleAppConsole
ExampleAppConsole()
Definition: imgui_demo.cpp:3528
ImGuiContext::NavIdIsAlive
bool NavIdIsAlive
Definition: imgui_internal.h:949
ImVec1::x
float x
Definition: imgui_internal.h:526
ImGuiNavLayer
ImGuiNavLayer
Definition: imgui_internal.h:510
ImGuiStyle::WindowMenuButtonPosition
ImGuiDir WindowMenuButtonPosition
Definition: imgui.h:1298
ImGui::DataTypeGetInfo
const IMGUI_API ImGuiDataTypeInfo * DataTypeGetInfo(ImGuiDataType data_type)
Definition: imgui_widgets.cpp:1675
ImGuiColumnsFlags_NoBorder
@ ImGuiColumnsFlags_NoBorder
Definition: imgui_internal.h:349
ImGui::PopStyleVar
IMGUI_API void PopStyleVar(int count=1)
Definition: imgui.cpp:6423
ImRect::GetHeight
float GetHeight() const
Definition: imgui_internal.h:554
ImFontAtlas::Clear
IMGUI_API void Clear()
Definition: imgui_draw.cpp:1553
ImDrawCornerFlags_Top
@ ImDrawCornerFlags_Top
Definition: imgui.h:1858
stbtt_PackEnd
STBTT_DEF void stbtt_PackEnd(stbtt_pack_context *spc)
ImFontAtlasCustomRect
Definition: imgui.h:2054
ImGui::VSliderInt
IMGUI_API bool VSliderInt(const char *label, const ImVec2 &size, int *v, int v_min, int v_max, const char *format="%d")
Definition: imgui_widgets.cpp:2733
ExampleAppLog::AutoScroll
bool AutoScroll
Definition: imgui_demo.cpp:3852
ImGuiWindow::SetWindowSizeAllowFlags
ImGuiCond SetWindowSizeAllowFlags
Definition: imgui_internal.h:1323
ImGuiCond_Once
@ ImGuiCond_Once
Definition: imgui.h:1196
stbrp_rect::y
stbrp_coord y
Definition: imstb_rectpack.h:124
ImGui::RenderNavHighlight
IMGUI_API void RenderNavHighlight(const ImRect &bb, ImGuiID id, ImGuiNavHighlightFlags flags=ImGuiNavHighlightFlags_TypeDefault)
Definition: imgui.cpp:2635
ImPool::Reserve
void Reserve(int capacity)
Definition: imgui_internal.h:305
ImU16
unsigned short ImU16
Definition: imgui.h:163
ImGuiIO::BackendFlags
ImGuiBackendFlags BackendFlags
Definition: imgui.h:1345
ImGui::ItemAdd
IMGUI_API bool ItemAdd(const ImRect &bb, ImGuiID id, const ImRect *nav_bb=NULL)
Definition: imgui.cpp:3004
ImFontAtlasFlags_NoMouseCursors
@ ImFontAtlasFlags_NoMouseCursors
Definition: imgui.h:2070
ImVec1::ImVec1
ImVec1()
Definition: imgui_internal.h:527
ImGuiNavDirSourceFlags_None
@ ImGuiNavDirSourceFlags_None
Definition: imgui_internal.h:485
ImDrawList::CmdBuffer
ImVector< ImDrawCmd > CmdBuffer
Definition: imgui.h:1884
ImGuiContext::NavScoringRectScreen
ImRect NavScoringRectScreen
Definition: imgui_internal.h:939
ImDrawList
Definition: imgui.h:1881
ImGuiIO
Definition: imgui.h:1338
ImGui::SmallButton
IMGUI_API bool SmallButton(const char *label)
Definition: imgui_widgets.cpp:650
ImDrawCornerFlags_TopLeft
@ ImDrawCornerFlags_TopLeft
Definition: imgui.h:1854
ImFontConfig::EllipsisChar
ImWchar EllipsisChar
Definition: imgui.h:2020
ImGuiTabItemFlags_NoCloseButton
@ ImGuiTabItemFlags_NoCloseButton
Definition: imgui_internal.h:1413
ImGuiNavMoveResult::DistBox
float DistBox
Definition: imgui_internal.h:773
ImGuiWindowTempData::ItemWidth
float ItemWidth
Definition: imgui_internal.h:1233
ImGuiPopupData::PopupId
ImGuiID PopupId
Definition: imgui_internal.h:688
ImGuiContext::DragDropTargetRect
ImRect DragDropTargetRect
Definition: imgui_internal.h:992
ExampleAppLog::Buf
ImGuiTextBuffer Buf
Definition: imgui_demo.cpp:3849
ImPool::Data
ImVector< T > Data
Definition: imgui_internal.h:290
ImGuiStyleMod::VarIdx
ImGuiStyleVar VarIdx
Definition: imgui_internal.h:593
ImGuiWindowTempData::NavLayerCurrent
ImGuiNavLayer NavLayerCurrent
Definition: imgui_internal.h:1216
ImGuiColorEditFlags_NoSmallPreview
@ ImGuiColorEditFlags_NoSmallPreview
Definition: imgui.h:1131
ImGui::RenderText
IMGUI_API void RenderText(ImVec2 pos, const char *text, const char *text_end=NULL, bool hide_text_after_hash=true)
Definition: imgui.cpp:2386
ImGui::EndTabItem
IMGUI_API void EndTabItem()
Definition: imgui_widgets.cpp:6851
ImGuiNextItemDataFlags
int ImGuiNextItemDataFlags
Definition: imgui_internal.h:101
ImFontAtlas
Definition: imgui.h:2090
ImGui::RoundScalarWithFormatT
IMGUI_API T RoundScalarWithFormatT(const char *format, ImGuiDataType data_type, T v)
ImFontAtlas::GetTexDataAsRGBA32
IMGUI_API void GetTexDataAsRGBA32(unsigned char **out_pixels, int *out_width, int *out_height, int *out_bytes_per_pixel=NULL)
Definition: imgui_draw.cpp:1576
ImFontBuildDstData::GlyphsCount
int GlyphsCount
Definition: imgui_draw.cpp:1829
ImGuiSliderFlags
int ImGuiSliderFlags
Definition: imgui_internal.h:104
ImGuiWindow::ItemWidthDefault
float ItemWidthDefault
Definition: imgui_internal.h:1342
ImGui::GetCurrentWindowRead
ImGuiWindow * GetCurrentWindowRead()
Definition: imgui_internal.h:1479
stbtt_InitFont
STBTT_DEF int stbtt_InitFont(stbtt_fontinfo *info, const unsigned char *data, int offset)
ImGui::IsItemEdited
IMGUI_API bool IsItemEdited()
Definition: imgui.cpp:4661
ImDrawDataBuilder::ClearFreeMemory
void ClearFreeMemory()
Definition: imgui_internal.h:764
ImGuiCol_Header
@ ImGuiCol_Header
Definition: imgui.h:1051
ImGuiCol_ButtonActive
@ ImGuiCol_ButtonActive
Definition: imgui.h:1050
ImDrawList::UpdateClipRect
IMGUI_API void UpdateClipRect()
Definition: imgui_draw.cpp:434
ImGui::FindRenderedTextEnd
const IMGUI_API char * FindRenderedTextEnd(const char *text, const char *text_end=NULL)
Definition: imgui.cpp:2373
ImGui::BeginMainMenuBar
IMGUI_API bool BeginMainMenuBar()
Definition: imgui_widgets.cpp:5975
ImGuiWindow::CalcFontSize
float CalcFontSize() const
Definition: imgui_internal.h:1378
ImFontAtlas::TexUvWhitePixel
ImVec2 TexUvWhitePixel
Definition: imgui.h:2166
ImGui::DataTypeApplyOpFromText
IMGUI_API bool DataTypeApplyOpFromText(const char *buf, const char *initial_value_buf, ImGuiDataType data_type, void *data_ptr, const char *format)
Definition: imgui_widgets.cpp:1756
ImGuiInputTextState::UserCallback
ImGuiInputTextCallback UserCallback
Definition: imgui_internal.h:643
ImGuiWindow::Rect
ImRect Rect() const
Definition: imgui_internal.h:1377
ImGui::NewLine
IMGUI_API void NewLine()
Definition: imgui_widgets.cpp:1192
ImParseFormatFindEnd
const IMGUI_API char * ImParseFormatFindEnd(const char *format)
Definition: imgui_widgets.cpp:2773
ImGuiStyle::ScrollbarRounding
float ScrollbarRounding
Definition: imgui.h:1312
ImGui::GetTime
IMGUI_API double GetTime()
Definition: imgui.cpp:3319
ImBoolVector::GetBit
bool GetBit(int n) const
Definition: imgui_internal.h:280
ImGuiPopupPositionPolicy_ComboBox
@ ImGuiPopupPositionPolicy_ComboBox
Definition: imgui_internal.h:520
ImGui::GetWindowContentRegionWidth
IMGUI_API float GetWindowContentRegionWidth()
Definition: imgui.cpp:6831
ExampleAppDocuments::Documents
ImVector< MyDocument > Documents
Definition: imgui_demo.cpp:4531
ImGui::DragScalar
IMGUI_API bool DragScalar(const char *label, ImGuiDataType data_type, void *v, float v_speed, const void *v_min=NULL, const void *v_max=NULL, const char *format=NULL, float power=1.0f)
Definition: imgui_widgets.cpp:2055
ImGuiContext::DragDropPayloadBufHeap
ImVector< unsigned char > DragDropPayloadBufHeap
Definition: imgui_internal.h:999
MyDocument::WantClose
bool WantClose
Definition: imgui_demo.cpp:4480
BlamEngineDataFolder::Fonts
@ Fonts
Directory used for game engine fonts. Defaults to ./maps/fonts/
IM_FIXNORMAL2F
#define IM_FIXNORMAL2F(VX, VY)
Definition: imgui_draw.cpp:590
y
font DisplayOffset y
Definition: README.txt:68
ImGuiButtonFlags_PressedOnRelease
@ ImGuiButtonFlags_PressedOnRelease
Definition: imgui_internal.h:319
ImGuiWindowFlags_NoSavedSettings
@ ImGuiWindowFlags_NoSavedSettings
Definition: imgui.h:722
ImGuiStyle::PopupRounding
float PopupRounding
Definition: imgui.h:1301
ImGuiCol_SliderGrab
@ ImGuiCol_SliderGrab
Definition: imgui.h:1046
stbtt_GetFontVMetrics
STBTT_DEF void stbtt_GetFontVMetrics(const stbtt_fontinfo *info, int *ascent, int *descent, int *lineGap)
cui_widget_anchor::center
@ center
ImGuiItemHoveredDataBackup::Backup
void Backup()
Definition: imgui_internal.h:1394
ImGuiContext::NavMoveRequest
bool NavMoveRequest
Definition: imgui_internal.h:959
ImGuiWindow::SizeFull
ImVec2 SizeFull
Definition: imgui_internal.h:1287
ImGui::ColorTooltip
IMGUI_API void ColorTooltip(const char *text, const float *col, ImGuiColorEditFlags flags)
Definition: imgui_widgets.cpp:4918
ImGuiCol_TitleBgCollapsed
@ ImGuiCol_TitleBgCollapsed
Definition: imgui.h:1039
ImGuiCol_NavWindowingHighlight
@ ImGuiCol_NavWindowingHighlight
Definition: imgui.h:1072
ImFont::FindGlyph
const IMGUI_API ImFontGlyph * FindGlyph(ImWchar c) const
Definition: imgui_draw.cpp:2616
ImGuiWindow::MemoryDrawListIdxCapacity
int MemoryDrawListIdxCapacity
Definition: imgui_internal.h:1361
ImGuiNavMoveResult::RectRel
ImRect RectRel
Definition: imgui_internal.h:776
ImGui::Combo
IMGUI_API bool Combo(const char *label, int *current_item, const char *const items[], int items_count, int popup_max_height_in_items=-1)
Definition: imgui_widgets.cpp:1599
ImGuiKey_UpArrow
@ ImGuiKey_UpArrow
Definition: imgui.h:940
ImGuiStyle::DisplaySafeAreaPadding
ImVec2 DisplaySafeAreaPadding
Definition: imgui.h:1321
ImGuiColorEditFlags_DisplayHex
@ ImGuiColorEditFlags_DisplayHex
Definition: imgui.h:1145
ImGuiCol_TabUnfocused
@ ImGuiCol_TabUnfocused
Definition: imgui.h:1063
ImU32
unsigned int ImU32
Definition: imgui.h:165
ImVec2::x
float x
Definition: imgui.h:181
ImDrawList::AddPolyline
IMGUI_API void AddPolyline(const ImVec2 *points, int num_points, ImU32 col, bool closed, float thickness)
Definition: imgui_draw.cpp:594
ImPool::GetOrAddByKey
T * GetOrAddByKey(ImGuiID key)
Definition: imgui_internal.h:299
ExampleAppConsole::Strdup
static char * Strdup(const char *str)
Definition: imgui_demo.cpp:3551
ImGuiButtonFlags
int ImGuiButtonFlags
Definition: imgui_internal.h:93
ImGui::DragInt
IMGUI_API bool DragInt(const char *label, int *v, float v_speed=1.0f, int v_min=0, int v_max=0, const char *format="%d")
Definition: imgui_widgets.cpp:2209
ImGuiWindowTempData::LastItemStatusFlags
ImGuiItemStatusFlags LastItemStatusFlags
Definition: imgui_internal.h:1213
ImGuiIO::FontAllowUserScaling
bool FontAllowUserScaling
Definition: imgui.h:1361
ImGui::FocusableItemRegister
IMGUI_API bool FocusableItemRegister(ImGuiWindow *window, ImGuiID id)
Definition: imgui.cpp:3148
ImGuiSelectableFlags_None
@ ImGuiSelectableFlags_None
Definition: imgui.h:809
ImGuiContext::WindowsById
ImGuiStorage WindowsById
Definition: imgui_internal.h:879
ImBoolVector::Storage
ImVector< int > Storage
Definition: imgui_internal.h:276
ImRect::GetWidth
float GetWidth() const
Definition: imgui_internal.h:553
ImGuiWindow::Hidden
bool Hidden
Definition: imgui_internal.h:1309
ImGuiInputTextState::UserFlags
ImGuiInputTextFlags UserFlags
Definition: imgui_internal.h:642
stbtt_fontinfo
Definition: imstb_truetype.h:714
ImFontBuildDstData::GlyphsSet
ImBoolVector GlyphsSet
Definition: imgui_draw.cpp:1830
ImGui::SameLine
IMGUI_API void SameLine(float offset_from_start_x=0.0f, float spacing=-1.0f)
Definition: imgui.cpp:7147
ImGuiDragDropFlags_None
@ ImGuiDragDropFlags_None
Definition: imgui.h:888
ImGui::ClearActiveID
IMGUI_API void ClearActiveID()
Definition: imgui.cpp:2905
ImFontAtlas::CustomRects
ImVector< ImFontAtlasCustomRect > CustomRects
Definition: imgui.h:2168
ImDrawListFlags_AntiAliasedFill
@ ImDrawListFlags_AntiAliasedFill
Definition: imgui.h:1869
ImGuiWindowTempData::ItemFlags
ImGuiItemFlags ItemFlags
Definition: imgui_internal.h:1232
ImGui::SetNextItemOpen
IMGUI_API void SetNextItemOpen(bool is_open, ImGuiCond cond=0)
Definition: imgui_widgets.cpp:5410
ImGui::PushButtonRepeat
IMGUI_API void PushButtonRepeat(bool repeat)
Definition: imgui.cpp:6296
ImGuiStyleVar_FramePadding
@ ImGuiStyleVar_FramePadding
Definition: imgui.h:1102
ImGuiInputSource_NavGamepad
@ ImGuiInputSource_NavGamepad
Definition: imgui_internal.h:459
ImGuiIO::KeysDown
bool KeysDown[512]
Definition: imgui.h:1417
ImGui::FocusableItemUnregister
IMGUI_API void FocusableItemUnregister(ImGuiWindow *window)
Definition: imgui.cpp:3185
ImGuiNavMoveFlags_None
@ ImGuiNavMoveFlags_None
Definition: imgui_internal.h:493
ImGuiIO::MouseDrawCursor
bool MouseDrawCursor
Definition: imgui.h:1366
ExampleAppConsole::AddLog
void AddLog(const char *fmt,...) IM_FMTARGS(2)
Definition: imgui_demo.cpp:3561
ImGuiContext::ActiveIdHasBeenPressedBefore
bool ActiveIdHasBeenPressedBefore
Definition: imgui_internal.h:900
ImGuiContext::FontSize
float FontSize
Definition: imgui_internal.h:866
ImFontAtlas::TexWidth
int TexWidth
Definition: imgui.h:2163
ImGui::InputInt4
IMGUI_API bool InputInt4(const char *label, int v[4], ImGuiInputTextFlags flags=0)
Definition: imgui_widgets.cpp:3048
ImDrawCmd::ClipRect
ImVec4 ClipRect
Definition: imgui.h:1794
ImGuiContext::NavWindowingTimer
float NavWindowingTimer
Definition: imgui_internal.h:944
ImGui::ColorPicker4
IMGUI_API bool ColorPicker4(const char *label, float col[4], ImGuiColorEditFlags flags=0, const float *ref_col=NULL)
Definition: imgui_widgets.cpp:4454
ImGuiNavForward
ImGuiNavForward
Definition: imgui_internal.h:503
ImGuiDataType_S64
@ ImGuiDataType_S64
Definition: imgui.h:916
ImGuiContext::Style
ImGuiStyle Style
Definition: imgui_internal.h:864
ImGui::DragInt4
IMGUI_API bool DragInt4(const char *label, int v[4], float v_speed=1.0f, int v_min=0, int v_max=0, const char *format="%d")
Definition: imgui_widgets.cpp:2224
ImGui::GetCursorPosX
IMGUI_API float GetCursorPosX()
Definition: imgui.cpp:6898
ImGuiInputTextState::GetRedoAvailCount
int GetRedoAvailCount() const
Definition: imgui_internal.h:650
ImGuiButtonFlags_NoHoveredOnNav
@ ImGuiButtonFlags_NoHoveredOnNav
Definition: imgui_internal.h:330
imgui_internal.h
stbtt_pack_range::num_chars
int num_chars
Definition: imstb_truetype.h:625
ImGuiTabBarFlags
int ImGuiTabBarFlags
Definition: imgui.h:152
ImGuiContext::ImGuiContext
ImGuiContext(ImFontAtlas *shared_font_atlas)
Definition: imgui_internal.h:1063
ImDrawListFlags_AllowVtxOffset
@ ImDrawListFlags_AllowVtxOffset
Definition: imgui.h:1870
ImFontBuildSrcData::PackedChars
stbtt_packedchar * PackedChars
Definition: imgui_draw.cpp:1815
ImFontAtlas::GetGlyphRangesCyrillic
const IMGUI_API ImWchar * GetGlyphRangesCyrillic()
Definition: imgui_draw.cpp:2401
ImGuiColumns::Flags
ImGuiColumnsFlags Flags
Definition: imgui_internal.h:712
ImGui::PopButtonRepeat
IMGUI_API void PopButtonRepeat()
Definition: imgui.cpp:6301
ImGuiIO::NavInputs
float NavInputs[ImGuiNavInput_COUNT]
Definition: imgui.h:1418
ImGui::NavMoveRequestCancel
IMGUI_API void NavMoveRequestCancel()
Definition: imgui.cpp:8074
ImPool::Contains
bool Contains(const T *p) const
Definition: imgui_internal.h:300
ImGuiNextWindowData::PosVal
ImVec2 PosVal
Definition: imgui_internal.h:801
ImGuiTextFlags_
ImGuiTextFlags_
Definition: imgui_internal.h:416
ImStrbolW
const IMGUI_API ImWchar * ImStrbolW(const ImWchar *buf_mid_line, const ImWchar *buf_begin)
Definition: imgui.cpp:1399
ImGuiStyleVar_FrameRounding
@ ImGuiStyleVar_FrameRounding
Definition: imgui.h:1103
ImGui::MenuItem
IMGUI_API bool MenuItem(const char *label, const char *shortcut=NULL, bool selected=false, bool enabled=true)
Definition: imgui_widgets.cpp:6240
ImGui::SliderFloat3
IMGUI_API bool SliderFloat3(const char *label, float v[3], float v_min, float v_max, const char *format="%.3f", float power=1.0f)
Definition: imgui_widgets.cpp:2629
IMGUI_API
#define IMGUI_API
Definition: imgui.h:57
ImGuiWindowFlags_NoBackground
@ ImGuiWindowFlags_NoBackground
Definition: imgui.h:721
ImGuiContext::WheelingWindowTimer
float WheelingWindowTimer
Definition: imgui_internal.h:887
ImGuiContext::MultiSelectScopeId
ImGuiID MultiSelectScopeId
Definition: imgui_internal.h:1026
ImFont::RenderText
IMGUI_API void RenderText(ImDrawList *draw_list, float size, ImVec2 pos, ImU32 col, const ImVec4 &clip_rect, const char *text_begin, const char *text_end, float wrap_width=0.0f, bool cpu_fine_clip=false) const
Definition: imgui_draw.cpp:2843
ImGui::GetTextLineHeightWithSpacing
IMGUI_API float GetTextLineHeightWithSpacing()
Definition: imgui.cpp:6843
ImGuiCol_PlotLines
@ ImGuiCol_PlotLines
Definition: imgui.h:1065
ImGuiStorage::Data
ImVector< ImGuiStoragePair > Data
Definition: imgui.h:1665
ImGuiContext::NavWindowingHighlightAlpha
float NavWindowingHighlightAlpha
Definition: imgui_internal.h:945
ImGuiTreeNodeFlags_NoTreePushOnOpen
@ ImGuiTreeNodeFlags_NoTreePushOnOpen
Definition: imgui.h:786
ImVec1::ImVec1
ImVec1(float _x)
Definition: imgui_internal.h:528
ImGuiItemFlags_NoNavDefaultFocus
@ ImGuiItemFlags_NoNavDefaultFocus
Definition: imgui_internal.h:390
ImVec2
Definition: imgui.h:179
ImGuiTextFlags_NoWidthForLargeClippedText
@ ImGuiTextFlags_NoWidthForLargeClippedText
Definition: imgui_internal.h:419
ImGuiContext::ActiveIdAllowOverlap
bool ActiveIdAllowOverlap
Definition: imgui_internal.h:899
ImGuiInputReadMode_RepeatFast
@ ImGuiInputReadMode_RepeatFast
Definition: imgui_internal.h:471
stbrp_rect::h
stbrp_coord h
Definition: imstb_rectpack.h:121
ImFontAtlas::CalcCustomRectUV
IMGUI_API void CalcCustomRectUV(const ImFontAtlasCustomRect *rect, ImVec2 *out_uv_min, ImVec2 *out_uv_max)
Definition: imgui_draw.cpp:1755
ImFontAtlas::GetGlyphRangesChineseSimplifiedCommon
const IMGUI_API ImWchar * GetGlyphRangesChineseSimplifiedCommon()
Definition: imgui_draw.cpp:2276
FONT_ATLAS_DEFAULT_TEX_DATA_H
const int FONT_ATLAS_DEFAULT_TEX_DATA_H
Definition: imgui_draw.cpp:1442
ImGui::SetScrollX
IMGUI_API void SetScrollX(float scroll_x)
Definition: imgui.cpp:7280
ImGui::FocusWindow
IMGUI_API void FocusWindow(ImGuiWindow *window)
Definition: imgui.cpp:6089
ImDrawList::AddTriangleFilled
IMGUI_API void AddTriangleFilled(const ImVec2 &p1, const ImVec2 &p2, const ImVec2 &p3, ImU32 col)
Definition: imgui_draw.cpp:1060
NULL
Add a fourth parameter to bake specific font ranges NULL
Definition: README.txt:57
ImVec2ih::ImVec2ih
ImVec2ih(short _x, short _y)
Definition: imgui_internal.h:536
ImGuiContext::ActiveIdBlockNavInputFlags
int ActiveIdBlockNavInputFlags
Definition: imgui_internal.h:904
ImGuiTabBar::GetTabOrder
int GetTabOrder(const ImGuiTabItem *tab) const
Definition: imgui_internal.h:1460
ImFontAtlasBuildRegisterDefaultCustomRects
IMGUI_API void ImFontAtlasBuildRegisterDefaultCustomRects(ImFontAtlas *atlas)
Definition: imgui_draw.cpp:2101
ImGui::GetColumnOffset
IMGUI_API float GetColumnOffset(int column_index=-1)
Definition: imgui_widgets.cpp:7233
ImGuiSettingsHandler::TypeName
const char * TypeName
Definition: imgui_internal.h:675
ImGuiIO::WantSetMousePos
bool WantSetMousePos
Definition: imgui.h:1432
ImGuiContext::ActiveIdHasBeenEditedBefore
bool ActiveIdHasBeenEditedBefore
Definition: imgui_internal.h:901
ImFont
Definition: imgui.h:2180
ImGuiWindowTempData::TreeMayJumpToParentOnPopMask
ImU32 TreeMayJumpToParentOnPopMask
Definition: imgui_internal.h:1211
ImGuiContext::IO
ImGuiIO IO
Definition: imgui_internal.h:863
ImGuiTabItem::WidthContents
float WidthContents
Definition: imgui_internal.h:1426
ImGuiIO::NavVisible
bool NavVisible
Definition: imgui.h:1435
ImGuiComboFlags
int ImGuiComboFlags
Definition: imgui.h:146
ImRect::Contains
bool Contains(const ImVec2 &p) const
Definition: imgui_internal.h:559
ImGui::BeginTooltipEx
IMGUI_API void BeginTooltipEx(ImGuiWindowFlags extra_flags, bool override_previous_tooltip=true)
Definition: imgui.cpp:7384
ImGui::IsItemHovered
IMGUI_API bool IsItemHovered(ImGuiHoveredFlags flags=0)
Definition: imgui.cpp:3061
ImGuiNavHighlightFlags_
ImGuiNavHighlightFlags_
Definition: imgui_internal.h:474
ImFontAtlas::Flags
ImFontAtlasFlags Flags
Definition: imgui.h:2154
ImGuiPtrOrIndex
Definition: imgui_internal.h:844
ImFontAtlas::GetTexDataAsAlpha8
IMGUI_API void GetTexDataAsAlpha8(unsigned char **out_pixels, int *out_width, int *out_height, int *out_bytes_per_pixel=NULL)
Definition: imgui_draw.cpp:1560
ImVector::empty
bool empty() const
Definition: imgui.h:1244
ImGui::GetNavInputAmount
IMGUI_API float GetNavInputAmount(ImGuiNavInput n, ImGuiInputReadMode mode)
Definition: imgui.cpp:8210
ImGuiMouseCursor_None
@ ImGuiMouseCursor_None
Definition: imgui.h:1173
ImGuiTabBar::BarRect
ImRect BarRect
Definition: imgui_internal.h:1441
ImGui::ArrowButton
IMGUI_API bool ArrowButton(const char *str_id, ImGuiDir dir)
Definition: imgui_widgets.cpp:714
ImGuiTabItem::LastFrameVisible
int LastFrameVisible
Definition: imgui_internal.h:1421
ImGui::GetColorU32
IMGUI_API ImU32 GetColorU32(ImGuiCol idx, float alpha_mul=1.0f)
Definition: imgui.cpp:1880
ImGuiContext::NavLayer
ImGuiNavLayer NavLayer
Definition: imgui_internal.h:947
ImGuiColumns::HostClipRect
ImRect HostClipRect
Definition: imgui_internal.h:721
ImFontAtlas::CustomRectIds
int CustomRectIds[1]
Definition: imgui.h:2170
ImGuiContext::NavInitResultRectRel
ImRect NavInitResultRectRel
Definition: imgui_internal.h:957
ImGuiCol_SeparatorHovered
@ ImGuiCol_SeparatorHovered
Definition: imgui.h:1055
ImGuiIO::BackendRendererName
const char * BackendRendererName
Definition: imgui.h:1380
ImFontAtlas::ConfigData
ImVector< ImFontConfig > ConfigData
Definition: imgui.h:2169
ImGuiInputTextFlags
int ImGuiInputTextFlags
Definition: imgui.h:150
ImGuiWindow::WindowBorderSize
float WindowBorderSize
Definition: imgui_internal.h:1292
ImGuiStorage::SetInt
IMGUI_API void SetInt(ImGuiID key, int val)
Definition: imgui.cpp:2017
stbtt_aligned_quad
Definition: imstb_truetype.h:544
ImVector::pop_back
void pop_back()
Definition: imgui.h:1269
ImGuiContext::ColorModifiers
ImVector< ImGuiColorMod > ColorModifiers
Definition: imgui_internal.h:921
stbtt_pack_range::first_unicode_codepoint_in_range
int first_unicode_codepoint_in_range
Definition: imstb_truetype.h:623
ImGui::ClosePopupsOverWindow
IMGUI_API void ClosePopupsOverWindow(ImGuiWindow *ref_window, bool restore_focus_to_window_under_popup)
Definition: imgui.cpp:7518
stbtt_pack_range::font_size
float font_size
Definition: imstb_truetype.h:622
ImGui::StyleColorsLight
IMGUI_API void StyleColorsLight(ImGuiStyle *dst=NULL)
Definition: imgui_draw.cpp:287
ImGuiNextWindowDataFlags_HasPos
@ ImGuiNextWindowDataFlags_HasPos
Definition: imgui_internal.h:785
ImDrawCornerFlags_BotRight
@ ImDrawCornerFlags_BotRight
Definition: imgui.h:1857
ImGui::FindSettingsHandler
IMGUI_API ImGuiSettingsHandler * FindSettingsHandler(const char *type_name)
Definition: imgui.cpp:9431
ImGui::GetCurrentContext
IMGUI_API ImGuiContext * GetCurrentContext()
Definition: imgui.cpp:3242
ImGuiWindow::ID
ImGuiID ID
Definition: imgui_internal.h:1283
ImGuiSeparatorFlags_SpanAllColumns
@ ImGuiSeparatorFlags_SpanAllColumns
Definition: imgui_internal.h:379
ImGuiIO::Fonts
ImFontAtlas * Fonts
Definition: imgui.h:1359
ImGui::DragFloat
IMGUI_API bool DragFloat(const char *label, float *v, float v_speed=1.0f, float v_min=0.0f, float v_max=0.0f, const char *format="%.3f", float power=1.0f)
Definition: imgui_widgets.cpp:2164
ImGui::SetNavID
IMGUI_API void SetNavID(ImGuiID id, int nav_layer)
Definition: imgui.cpp:2835
ImFontAtlas::GetGlyphRangesVietnamese
const IMGUI_API ImWchar * GetGlyphRangesVietnamese()
Definition: imgui_draw.cpp:2426
imstb_textedit.h
ImGui::CalcWrapWidthForPos
IMGUI_API float CalcWrapWidthForPos(const ImVec2 &pos, float wrap_pos_x)
Definition: imgui.cpp:3191
ImGuiTreeNodeFlags
int ImGuiTreeNodeFlags
Definition: imgui.h:154
table
ARPHIC PUBLIC LICENSE Ltd Yung Chi Taiwan All rights reserved except as specified below Everyone is permitted to copy and distribute verbatim copies of this license but changing it is forbidden Preamble The licenses for most software are designed to take away your freedom to share and change it By the ARPHIC PUBLIC LICENSE specifically permits and encourages you to use this provided that you give the recipients all the rights that we gave you and make sure they can get the modifications of this software Legal Terms Font means the TrueType fonts AR PL Mingti2L AR PL KaitiM AR PL KaitiM and the derivatives of those fonts created through any modification including modifying reordering converting changing font or adding deleting some characters in from glyph table PL means Public License Copyright Holder means whoever is named in the copyright or copyrights for the Font You means the or person redistributing or modifying the Font Freely Available means that you have the freedom to copy or modify the Font as well as redistribute copies of the Font under the same conditions you not price If you you can charge for this service Copying &Distribution You may copy and distribute verbatim copies of this Font in any without provided that you retain this license including modifying reordering converting changing font or adding deleting some characters in from glyph table
Definition: ARPHICPL.TXT:30
ImGuiComboFlags_PopupAlignLeft
@ ImGuiComboFlags_PopupAlignLeft
Definition: imgui.h:821
ImGui::SetKeyboardFocusHere
IMGUI_API void SetKeyboardFocusHere(int offset=0)
Definition: imgui.cpp:6956
stb__in3
#define stb__in3(x)
Definition: imgui_draw.cpp:3180
ImGuiFocusedFlags_AnyWindow
@ ImGuiFocusedFlags_AnyWindow
Definition: imgui.h:863
ImGuiWindowTempData::FocusCounterTab
int FocusCounterTab
Definition: imgui_internal.h:1229
ImGuiIO::DisplayFramebufferScale
ImVec2 DisplayFramebufferScale
Definition: imgui.h:1363
ImGuiIO::KeyCtrl
bool KeyCtrl
Definition: imgui.h:1413
ImGuiStyle::WindowPadding
ImVec2 WindowPadding
Definition: imgui.h:1293
ImGui::InputFloat3
IMGUI_API bool InputFloat3(const char *label, float v[3], const char *format="%.3f", ImGuiInputTextFlags flags=0)
Definition: imgui_widgets.cpp:2986
ImGuiContext::FocusTabPressed
bool FocusTabPressed
Definition: imgui_internal.h:975
ImDrawDataBuilder
Definition: imgui_internal.h:759
ImGuiStyle::WindowBorderSize
float WindowBorderSize
Definition: imgui.h:1295
ImGui::GetForegroundDrawList
IMGUI_API ImDrawList * GetForegroundDrawList()
Definition: imgui.cpp:3334
ImGui::ImageButton
IMGUI_API bool ImageButton(ImTextureID user_texture_id, const ImVec2 &size, const ImVec2 &uv0=ImVec2(0, 0), const ImVec2 &uv1=ImVec2(1, 1), int frame_padding=-1, const ImVec4 &bg_col=ImVec4(0, 0, 0, 0), const ImVec4 &tint_col=ImVec4(1, 1, 1, 1))
Definition: imgui_widgets.cpp:938
ExampleAppConsole::~ExampleAppConsole
~ExampleAppConsole()
Definition: imgui_demo.cpp:3541
ImGuiPtrOrIndex::ImGuiPtrOrIndex
ImGuiPtrOrIndex(int index)
Definition: imgui_internal.h:850
ImFontAtlasCustomRect::X
unsigned short X
Definition: imgui.h:2058
ImGui::GetScrollX
IMGUI_API float GetScrollX()
Definition: imgui.cpp:7256
ImGui::ShowStyleSelector
IMGUI_API bool ShowStyleSelector(const char *label)
Definition: imgui_demo.cpp:3123
ImDrawList::_ClipRectStack
ImVector< ImVec4 > _ClipRectStack
Definition: imgui.h:1896
ImGuiWindow::SetWindowCollapsedAllowFlags
ImGuiCond SetWindowCollapsedAllowFlags
Definition: imgui_internal.h:1324
Font
ARPHIC PUBLIC LICENSE Ltd Yung Chi Taiwan All rights reserved except as specified below Everyone is permitted to copy and distribute verbatim copies of this license but changing it is forbidden Preamble The licenses for most software are designed to take away your freedom to share and change it By the ARPHIC PUBLIC LICENSE specifically permits and encourages you to use this provided that you give the recipients all the rights that we gave you and make sure they can get the modifications of this software Legal Terms Font means the TrueType fonts AR PL Mingti2L AR PL KaitiM AR PL KaitiM and the derivatives of those fonts created through any modification including modifying reordering converting changing font or adding deleting some characters in from glyph table PL means Public License Copyright Holder means whoever is named in the copyright or copyrights for the Font You means the or person redistributing or modifying the Font Freely Available means that you have the freedom to copy or modify the Font as well as redistribute copies of the Font under the same conditions you not price If you you can charge for this service Copying &Distribution You may copy and distribute verbatim copies of this Font in any without provided that you retain this license including modifying reordering converting changing font or adding deleting some characters in from glyph and copy and distribute such modifications under the terms of Section provided that the following conditions are such as by offering access to copy the modifications from a designated or distributing the modifications on a medium customarily used for software interchange c If the modified fonts normally reads commands interactively when you must cause when started running for such interactive use in the most ordinary to print or display an announcement including an appropriate copyright notice and a notice that there is no and telling the user how to view a copy of this License These requirements apply to the modified work as a whole If identifiable sections of that work are not derived from the Font
Definition: ARPHICPL.TXT:38
ImFont::CalcWordWrapPositionA
const IMGUI_API char * CalcWordWrapPositionA(float scale, const char *text, const char *text_end, float wrap_width) const
Definition: imgui_draw.cpp:2636
ImGuiContext::NavDisableMouseHover
bool NavDisableMouseHover
Definition: imgui_internal.h:952
ImGuiWindowTempData::CursorPosPrevLine
ImVec2 CursorPosPrevLine
Definition: imgui_internal.h:1203
ImGuiColumnsFlags
int ImGuiColumnsFlags
Definition: imgui_internal.h:94
ImGui::GetActiveID
ImGuiID GetActiveID()
Definition: imgui_internal.h:1530
ImGuiHoveredFlags_AllowWhenBlockedByActiveItem
@ ImGuiHoveredFlags_AllowWhenBlockedByActiveItem
Definition: imgui.h:878
ImGui::UpdateHoveredWindowAndCaptureFlags
IMGUI_API void UpdateHoveredWindowAndCaptureFlags()
Definition: imgui.cpp:3603
ImFontAtlasBuildPackCustomRects
IMGUI_API void ImFontAtlasBuildPackCustomRects(ImFontAtlas *atlas, void *stbrp_context_opaque)
Definition: imgui_draw.cpp:2125
ImGuiStyleMod::BackupInt
int BackupInt[2]
Definition: imgui_internal.h:594
ImFontGlyphRangesBuilder::AddRanges
IMGUI_API void AddRanges(const ImWchar *ranges)
Definition: imgui_draw.cpp:2461
ImGuiIO::KeyShift
bool KeyShift
Definition: imgui.h:1414
ImGuiTreeNodeFlags_OpenOnArrow
@ ImGuiTreeNodeFlags_OpenOnArrow
Definition: imgui.h:790
ImDrawList::PopTextureID
IMGUI_API void PopTextureID()
Definition: imgui_draw.cpp:512
ImS64
signed long long ImS64
Definition: imgui.h:174
ImGui::Begin
IMGUI_API bool Begin(const char *name, bool *p_open=NULL, ImGuiWindowFlags flags=0)
Definition: imgui.cpp:5397
ImGuiContext::NavMoveRequestForward
ImGuiNavForward NavMoveRequestForward
Definition: imgui_internal.h:961
ImGuiIO::MouseDownDuration
float MouseDownDuration[5]
Definition: imgui.h:1456
ImGuiItemHoveredDataBackup
Definition: imgui_internal.h:1386
ImFontAtlasBuildSetupFont
void ImFontAtlasBuildSetupFont(ImFontAtlas *atlas, ImFont *font, ImFontConfig *font_config, float ascent, float descent)
Definition: imgui_draw.cpp:2111
ImGuiHoveredFlags_AnyWindow
@ ImGuiHoveredFlags_AnyWindow
Definition: imgui.h:875
ImGuiListClipper
Definition: imgui.h:1709
ImGuiNavMoveResult::DistCenter
float DistCenter
Definition: imgui_internal.h:774
ImGui::PushStyleVar
IMGUI_API void PushStyleVar(ImGuiStyleVar idx, float val)
Definition: imgui.cpp:6395
ImGui::CheckboxFlags
IMGUI_API bool CheckboxFlags(const char *label, unsigned int *flags, unsigned int flags_value)
Definition: imgui_widgets.cpp:1025
ImGuiPopupPositionPolicy
ImGuiPopupPositionPolicy
Definition: imgui_internal.h:517
ImGuiWindowSettings::ID
ImGuiID ID
Definition: imgui_internal.h:665
ImGuiCol_FrameBgActive
@ ImGuiCol_FrameBgActive
Definition: imgui.h:1036
ImGuiNavMoveResult::ImGuiNavMoveResult
ImGuiNavMoveResult()
Definition: imgui_internal.h:778
ImGuiSelectableFlags_PressedOnClick
@ ImGuiSelectableFlags_PressedOnClick
Definition: imgui_internal.h:361
IM_DELETE
void IM_DELETE(T *p)
Definition: imgui.h:1215
ImGuiInputTextFlags_Password
@ ImGuiInputTextFlags_Password
Definition: imgui.h:770
ImGuiTabBar::SelectedTabId
ImGuiID SelectedTabId
Definition: imgui_internal.h:1436
ImGuiTabBar::ID
ImGuiID ID
Definition: imgui_internal.h:1435
ImFontAtlas::Fonts
ImVector< ImFont * > Fonts
Definition: imgui.h:2167
ImGuiNavMoveFlags_WrapX
@ ImGuiNavMoveFlags_WrapX
Definition: imgui_internal.h:496
ImGui::PushClipRect
IMGUI_API void PushClipRect(const ImVec2 &clip_rect_min, const ImVec2 &clip_rect_max, bool intersect_with_current_clip_rect)
Definition: imgui.cpp:4142
ImGuiWindowTempData::TreeDepth
int TreeDepth
Definition: imgui_internal.h:1210
ImGuiButtonFlags_Repeat
@ ImGuiButtonFlags_Repeat
Definition: imgui_internal.h:316
MyDocument::MyDocument
MyDocument(const char *name, bool open=true, const ImVec4 &color=ImVec4(1.0f, 1.0f, 1.0f, 1.0f))
Definition: imgui_demo.cpp:4483
stbtt_pack_range::array_of_unicode_codepoints
int * array_of_unicode_codepoints
Definition: imstb_truetype.h:624
ImGuiContext::LogDepthToExpand
int LogDepthToExpand
Definition: imgui_internal.h:1047
ImGuiWindow::ScrollbarY
bool ScrollbarY
Definition: imgui_internal.h:1301
ImRect::ImRect
ImRect(const ImVec4 &v)
Definition: imgui_internal.h:548
ImStrncpy
IMGUI_API void ImStrncpy(char *dst, const char *src, size_t count)
Definition: imgui.cpp:1348
ImGuiContext::NavWindowingToggleLayer
bool NavWindowingToggleLayer
Definition: imgui_internal.h:946
ImGui::DragFloat2
IMGUI_API bool DragFloat2(const char *label, float v[2], float v_speed=1.0f, float v_min=0.0f, float v_max=0.0f, const char *format="%.3f", float power=1.0f)
Definition: imgui_widgets.cpp:2169
ImGui::CollapsingHeader
IMGUI_API bool CollapsingHeader(const char *label, ImGuiTreeNodeFlags flags=0)
Definition: imgui_widgets.cpp:5422
ImGuiItemStatusFlags_None
@ ImGuiItemStatusFlags_None
Definition: imgui_internal.h:399
ImGuiContext::DrawListSharedData
ImDrawListSharedData DrawListSharedData
Definition: imgui_internal.h:868
ImGui::TabItemCalcSize
IMGUI_API ImVec2 TabItemCalcSize(const char *label, bool has_close_button)
Definition: imgui_widgets.cpp:7080
ImFontGlyph::Codepoint
ImWchar Codepoint
Definition: imgui.h:2031
ImGui::GetWindowContentRegionMax
IMGUI_API ImVec2 GetWindowContentRegionMax()
Definition: imgui.cpp:6825
ImGuiContext::ColorEditLastColor
float ColorEditLastColor[3]
Definition: imgui_internal.h:1015
ImGuiWindowTempData::CurrLineSize
ImVec2 CurrLineSize
Definition: imgui_internal.h:1206
stbtt_pack_range::v_oversample
unsigned char v_oversample
Definition: imstb_truetype.h:627
ImGuiCol_SeparatorActive
@ ImGuiCol_SeparatorActive
Definition: imgui.h:1056
ImGuiInputTextState::CursorAnimReset
void CursorAnimReset()
Definition: imgui_internal.h:654
ImGuiWindowFlags_AlwaysVerticalScrollbar
@ ImGuiWindowFlags_AlwaysVerticalScrollbar
Definition: imgui.h:728
ImGuiCond_FirstUseEver
@ ImGuiCond_FirstUseEver
Definition: imgui.h:1197
ImGuiStyle::WindowTitleAlign
ImVec2 WindowTitleAlign
Definition: imgui.h:1297
ImGuiWindow::RootWindowForNav
ImGuiWindow * RootWindowForNav
Definition: imgui_internal.h:1354
ImGuiStyleMod::ImGuiStyleMod
ImGuiStyleMod(ImGuiStyleVar idx, ImVec2 v)
Definition: imgui_internal.h:597
ImGui::FindBestWindowPosForPopup
IMGUI_API ImVec2 FindBestWindowPosForPopup(ImGuiWindow *window)
Definition: imgui.cpp:7787
ImDrawListSplitter::ClearFreeMemory
IMGUI_API void ClearFreeMemory()
Definition: imgui_draw.cpp:1201
ImGuiButtonFlags_NoKeyModifiers
@ ImGuiButtonFlags_NoKeyModifiers
Definition: imgui_internal.h:326
ImFont::AddGlyph
IMGUI_API void AddGlyph(ImWchar c, float x0, float y0, float x1, float y1, float u0, float v0, float u1, float v1, float advance_x)
Definition: imgui_draw.cpp:2578
ImRect::GetTL
ImVec2 GetTL() const
Definition: imgui_internal.h:555
ImGuiConfigFlags_NavEnableGamepad
@ ImGuiConfigFlags_NavEnableGamepad
Definition: imgui.h:1003
ImGuiContext::LogDepthRef
int LogDepthRef
Definition: imgui_internal.h:1046
ExampleAppConsole::History
ImVector< char * > History
Definition: imgui_demo.cpp:3522
ImGuiNavDirSourceFlags_PadDPad
@ ImGuiNavDirSourceFlags_PadDPad
Definition: imgui_internal.h:487
ImGuiCol_ResizeGripHovered
@ ImGuiCol_ResizeGripHovered
Definition: imgui.h:1058
ImGuiConfigFlags_NoMouseCursorChange
@ ImGuiConfigFlags_NoMouseCursorChange
Definition: imgui.h:1007
ImGuiNavDirSourceFlags_
ImGuiNavDirSourceFlags_
Definition: imgui_internal.h:483
ImGui::GcCompactTransientWindowBuffers
IMGUI_API void GcCompactTransientWindowBuffers(ImGuiWindow *window)
Definition: imgui.cpp:2811
ImGuiWindowTempData::PrevLineTextBaseOffset
float PrevLineTextBaseOffset
Definition: imgui_internal.h:1209
ImGuiWindow::TitleBarHeight
float TitleBarHeight() const
Definition: imgui_internal.h:1379
ImGui::InvisibleButton
IMGUI_API bool InvisibleButton(const char *str_id, const ImVec2 &size)
Definition: imgui_widgets.cpp:662
ImGuiWindowTempData::NavHideHighlightOneFrame
bool NavHideHighlightOneFrame
Definition: imgui_internal.h:1220
ImGuiCol_PlotLinesHovered
@ ImGuiCol_PlotLinesHovered
Definition: imgui.h:1066
ImGuiColumnsFlags_NoForceWithinWindow
@ ImGuiColumnsFlags_NoForceWithinWindow
Definition: imgui_internal.h:352
ImGuiTabItem::Flags
ImGuiTabItemFlags Flags
Definition: imgui_internal.h:1420
ImGuiColumns
Definition: imgui_internal.h:709
ImGuiStorage::GetIntRef
IMGUI_API int * GetIntRef(ImGuiID key, int default_val=0)
Definition: imgui.cpp:1987
ImGuiCol_Border
@ ImGuiCol_Border
Definition: imgui.h:1032
ImGuiWindowTempData::Indent
ImVec1 Indent
Definition: imgui_internal.h:1241
ImGui::BeginPopupEx
IMGUI_API bool BeginPopupEx(ImGuiID id, ImGuiWindowFlags extra_flags)
Definition: imgui.cpp:7611
ImGui::SetDragDropPayload
IMGUI_API bool SetDragDropPayload(const char *type, const void *data, size_t sz, ImGuiCond cond=0)
Definition: imgui.cpp:9011
ImGuiColumnsFlags_NoResize
@ ImGuiColumnsFlags_NoResize
Definition: imgui_internal.h:350
ImGuiInputSource_COUNT
@ ImGuiInputSource_COUNT
Definition: imgui_internal.h:460
ImPool::GetByIndex
T * GetByIndex(ImPoolIdx n)
Definition: imgui_internal.h:297
ImGui::IsWindowFocused
IMGUI_API bool IsWindowFocused(ImGuiFocusedFlags flags=0)
Definition: imgui.cpp:6551
ImGuiPopupData::OpenFrameCount
int OpenFrameCount
Definition: imgui_internal.h:691
ImGui::FindWindowByName
IMGUI_API ImGuiWindow * FindWindowByName(const char *name)
Definition: imgui.cpp:4852
ImHashData
IMGUI_API ImU32 ImHashData(const void *data, size_t data_size, ImU32 seed=0)
Definition: imgui.cpp:1519
ImGuiWindowSettings::Pos
ImVec2ih Pos
Definition: imgui_internal.h:666
ImGuiWindow::SetWindowPosVal
ImVec2 SetWindowPosVal
Definition: imgui_internal.h:1325
imstb_rectpack.h
ImGuiWindow::ScrollTargetCenterRatio
ImVec2 ScrollTargetCenterRatio
Definition: imgui_internal.h:1299
ImGuiItemFlags
int ImGuiItemFlags
Definition: imgui_internal.h:96
ImGuiNavForward_ForwardActive
@ ImGuiNavForward_ForwardActive
Definition: imgui_internal.h:507
ImDrawList::PrimQuadUV
IMGUI_API void PrimQuadUV(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)
Definition: imgui_draw.cpp:573
ImGuiNavMoveFlags_LoopX
@ ImGuiNavMoveFlags_LoopX
Definition: imgui_internal.h:494
ImDrawCmd::VtxOffset
unsigned int VtxOffset
Definition: imgui.h:1796
ImGui::FindOrCreateWindowSettings
IMGUI_API ImGuiWindowSettings * FindOrCreateWindowSettings(const char *name)
Definition: imgui.cpp:9414
ImGui::OpenPopup
IMGUI_API void OpenPopup(const char *str_id)
Definition: imgui.cpp:7453
ImGuiNextItemData::ClearFlags
void ClearFlags()
Definition: imgui_internal.h:831
ImGuiColumns::Columns
ImVector< ImGuiColumnData > Columns
Definition: imgui_internal.h:723
ImGuiNavMoveFlags_LoopY
@ ImGuiNavMoveFlags_LoopY
Definition: imgui_internal.h:495
ImGuiButtonFlags_PressedOnDragDropHold
@ ImGuiButtonFlags_PressedOnDragDropHold
Definition: imgui_internal.h:328
ImGui::OpenPopupEx
IMGUI_API void OpenPopupEx(ImGuiID id)
Definition: imgui.cpp:7463
ImGui::SetScrollHereX
IMGUI_API void SetScrollHereX(float center_x_ratio=0.5f)
Definition: imgui.cpp:7338
ImGui::GetColumnWidth
IMGUI_API float GetColumnWidth(int column_index=-1)
Definition: imgui_widgets.cpp:7262
ImGui::AcceptDragDropPayload
const IMGUI_API ImGuiPayload * AcceptDragDropPayload(const char *type, ImGuiDragDropFlags flags=0)
Definition: imgui.cpp:9112
ImGuiContext::FrameScopePushedImplicitWindow
bool FrameScopePushedImplicitWindow
Definition: imgui_internal.h:861
ImGuiSettingsHandler::ReadLineFn
void(* ReadLineFn)(ImGuiContext *ctx, ImGuiSettingsHandler *handler, void *entry, const char *line)
Definition: imgui_internal.h:678
ImGuiStyle::GrabMinSize
float GrabMinSize
Definition: imgui.h:1313
ImFont::BuildLookupTable
IMGUI_API void BuildLookupTable()
Definition: imgui_draw.cpp:2522
ImGui::GetFrameCount
IMGUI_API int GetFrameCount()
Definition: imgui.cpp:3324
ImGuiDataType_S16
@ ImGuiDataType_S16
Definition: imgui.h:912
ImDrawList::AddRectFilledMultiColor
IMGUI_API void AddRectFilledMultiColor(const ImVec2 &p_min, const ImVec2 &p_max, ImU32 col_upr_left, ImU32 col_upr_right, ImU32 col_bot_right, ImU32 col_bot_left)
Definition: imgui_draw.cpp:1010
ImFont::GetDebugName
const char * GetDebugName() const
Definition: imgui.h:2211
ImGui::Unindent
IMGUI_API void Unindent(float indent_w=0.0f)
Definition: imgui.cpp:7178
ImGuiSettingsHandler::ImGuiSettingsHandler
ImGuiSettingsHandler()
Definition: imgui_internal.h:682
ImGuiInputTextState::HasSelection
bool HasSelection() const
Definition: imgui_internal.h:656
ImGui::BeginMenuBar
IMGUI_API bool BeginMenuBar()
Definition: imgui_widgets.cpp:6012
ImGuiWindowFlags_None
@ ImGuiWindowFlags_None
Definition: imgui.h:713
ImGui::GetDefaultFont
ImFont * GetDefaultFont()
Definition: imgui_internal.h:1500
ImFont::ClearOutputData
IMGUI_API void ClearOutputData()
Definition: imgui_draw.cpp:2508
ImGuiInputTextFlags_CharsDecimal
@ ImGuiInputTextFlags_CharsDecimal
Definition: imgui.h:755
ImGuiWindow::DC
ImGuiWindowTempData DC
Definition: imgui_internal.h:1329
ImGui::GetFont
IMGUI_API ImFont * GetFont()
Definition: imgui.cpp:6867
stbtt_ScaleForPixelHeight
STBTT_DEF float stbtt_ScaleForPixelHeight(const stbtt_fontinfo *info, float pixels)
ImGui::GetItemRectSize
IMGUI_API ImVec2 GetItemRectSize()
Definition: imgui.cpp:4689
FONT_ATLAS_DEFAULT_TEX_DATA_ID
const unsigned int FONT_ATLAS_DEFAULT_TEX_DATA_ID
Definition: imgui_draw.cpp:1443
stbrp_rect
Definition: imstb_rectpack.h:115
ImGuiCol_CheckMark
@ ImGuiCol_CheckMark
Definition: imgui.h:1045
ImGuiWindowTempData::NavLayerActiveMaskNext
int NavLayerActiveMaskNext
Definition: imgui_internal.h:1219
ExampleAppLog::AddLog
void AddLog(const char *fmt,...) IM_FMTARGS(2)
Definition: imgui_demo.cpp:3867
ImGuiHoveredFlags_AllowWhenOverlapped
@ ImGuiHoveredFlags_AllowWhenOverlapped
Definition: imgui.h:879
ImGuiContext::NavAnyRequest
bool NavAnyRequest
Definition: imgui_internal.h:953
ImDrawCornerFlags_Left
@ ImDrawCornerFlags_Left
Definition: imgui.h:1860
ImGuiCol_PopupBg
@ ImGuiCol_PopupBg
Definition: imgui.h:1031
ImGuiLogType_File
@ ImGuiLogType_File
Definition: imgui_internal.h:434
stbtt_GetGlyphBitmapBoxSubpixel
STBTT_DEF void stbtt_GetGlyphBitmapBoxSubpixel(const stbtt_fontinfo *font, int glyph, float scale_x, float scale_y, float shift_x, float shift_y, int *ix0, int *iy0, int *ix1, int *iy1)
ImGuiStyle::ButtonTextAlign
ImVec2 ButtonTextAlign
Definition: imgui.h:1318
ImGuiWindowTempData::LayoutType
ImGuiLayoutType LayoutType
Definition: imgui_internal.h:1226
ImGuiButtonFlags_PressedOnClickRelease
@ ImGuiButtonFlags_PressedOnClickRelease
Definition: imgui_internal.h:317
ImFontBuildSrcData::GlyphsSet
ImBoolVector GlyphsSet
Definition: imgui_draw.cpp:1820
ImGuiWindow::WorkRect
ImRect WorkRect
Definition: imgui_internal.h:1336
ImGui::BringWindowToFocusFront
IMGUI_API void BringWindowToFocusFront(ImGuiWindow *window)
Definition: imgui.cpp:6045
ImGuiWindowTempData::TextWrapPosStack
ImVector< float > TextWrapPosStack
Definition: imgui_internal.h:1237
ImDrawList::_TextureIdStack
ImVector< ImTextureID > _TextureIdStack
Definition: imgui.h:1897
format
ARPHIC PUBLIC LICENSE Ltd Yung Chi Taiwan All rights reserved except as specified below Everyone is permitted to copy and distribute verbatim copies of this license but changing it is forbidden Preamble The licenses for most software are designed to take away your freedom to share and change it By the ARPHIC PUBLIC LICENSE specifically permits and encourages you to use this provided that you give the recipients all the rights that we gave you and make sure they can get the modifications of this software Legal Terms Font means the TrueType fonts AR PL Mingti2L AR PL KaitiM AR PL KaitiM and the derivatives of those fonts created through any modification including modifying reordering converting format
Definition: ARPHICPL.TXT:16
ImGuiContext::HoveredRootWindow
ImGuiWindow * HoveredRootWindow
Definition: imgui_internal.h:883
ImGui::DragBehaviorT
IMGUI_API bool DragBehaviorT(ImGuiDataType data_type, T *v, float v_speed, T v_min, T v_max, const char *format, float power, ImGuiDragFlags flags)
ImDrawList::_IdxWritePtr
ImDrawIdx * _IdxWritePtr
Definition: imgui.h:1895
ImGuiContext::NavInputId
ImGuiID NavInputId
Definition: imgui_internal.h:933
ImGuiNextWindowData::SizeConstraintRect
ImRect SizeConstraintRect
Definition: imgui_internal.h:806
ImGui::MarkItemEdited
IMGUI_API void MarkItemEdited(ImGuiID id)
Definition: imgui.cpp:2934
ImGuiInputTextFlags_CallbackCharFilter
@ ImGuiInputTextFlags_CallbackCharFilter
Definition: imgui.h:764
ImGui::GetWindowAllowedExtentRect
IMGUI_API ImRect GetWindowAllowedExtentRect(ImGuiWindow *window)
Definition: imgui.cpp:7778
stbrp_rect::w
stbrp_coord w
Definition: imstb_rectpack.h:121
ImGuiItemStatusFlags_ToggledSelection
@ ImGuiItemStatusFlags_ToggledSelection
Definition: imgui_internal.h:403
GetGlyphRangesDefault
Add a fourth parameter to bake specific font ranges io Fonts GetGlyphRangesDefault())
ImGuiTabBar::Flags
ImGuiTabBarFlags Flags
Definition: imgui_internal.h:1450
ImGuiNextItemData::ImGuiNextItemData
ImGuiNextItemData()
Definition: imgui_internal.h:830
ImVec2ih::y
short y
Definition: imgui_internal.h:534
ImGuiWindow::LastFrameActive
int LastFrameActive
Definition: imgui_internal.h:1340
ImGuiPopupData::ImGuiPopupData
ImGuiPopupData()
Definition: imgui_internal.h:696
ImRect::TranslateY
void TranslateY(float dy)
Definition: imgui_internal.h:568
ImGuiWindow::Pos
ImVec2 Pos
Definition: imgui_internal.h:1285
ExampleAppConsole
Definition: imgui_demo.cpp:3517
ImGuiMouseCursor_COUNT
@ ImGuiMouseCursor_COUNT
Definition: imgui.h:1182
ImGui::SetScrollFromPosY
IMGUI_API void SetScrollFromPosY(float local_y, float center_y_ratio=0.5f)
Definition: imgui.cpp:7331
ImGui::BeginTabBar
IMGUI_API bool BeginTabBar(const char *str_id, ImGuiTabBarFlags flags=0)
Definition: imgui_widgets.cpp:6366
ImGui::SetActiveID
IMGUI_API void SetActiveID(ImGuiID id, ImGuiWindow *window)
Definition: imgui.cpp:2854
ImGui::FindOrCreateColumns
IMGUI_API ImGuiColumns * FindOrCreateColumns(ImGuiWindow *window, ImGuiID id)
Definition: imgui_widgets.cpp:7343
stbrp_context
Definition: imstb_rectpack.h:181
ImGuiNextWindowData::PosPivotVal
ImVec2 PosPivotVal
Definition: imgui_internal.h:802
GImGui
IMGUI_API ImGuiContext * GImGui
Definition: imgui.cpp:1106
ImGui::GetWindowDrawList
IMGUI_API ImDrawList * GetWindowDrawList()
Definition: imgui.cpp:6861
ImGui::GetContentRegionAvail
IMGUI_API ImVec2 GetContentRegionAvail()
Definition: imgui.cpp:6812
ImGuiWindow::HasCloseButton
bool HasCloseButton
Definition: imgui_internal.h:1310
ImDrawCallback
void(* ImDrawCallback)(const ImDrawList *parent_list, const ImDrawCmd *cmd)
Definition: imgui.h:1779
ImGuiTreeNodeFlags_SpanFullWidth
@ ImGuiTreeNodeFlags_SpanFullWidth
Definition: imgui.h:795
IM_COL32_WHITE
#define IM_COL32_WHITE
Definition: imgui.h:1741
OversampleH
config OversampleH
Definition: README.txt:28
ImGui::IsMousePosValid
IMGUI_API bool IsMousePosValid(const ImVec2 *mouse_pos=NULL)
Definition: imgui.cpp:4524
ImGui::Bullet
IMGUI_API void Bullet()
Definition: imgui_widgets.cpp:1137
ImGui::NavInitWindow
IMGUI_API void NavInitWindow(ImGuiWindow *window, bool force_reinit)
Definition: imgui.cpp:8167
ImGui::PushColumnsBackground
IMGUI_API void PushColumnsBackground()
Definition: imgui_widgets.cpp:7320
ImGui::Text
IMGUI_API void Text(const char *fmt,...) IM_FMTARGS(1)
Definition: imgui_widgets.cpp:238
ImGuiShrinkWidthItem::Index
int Index
Definition: imgui_internal.h:840
ImGui::GetIO
IMGUI_API ImGuiIO & GetIO()
Definition: imgui.cpp:3300
ImGuiItemHoveredDataBackup::LastItemDisplayRect
ImRect LastItemDisplayRect
Definition: imgui_internal.h:1391
ImGuiCol_ScrollbarBg
@ ImGuiCol_ScrollbarBg
Definition: imgui.h:1041
ImGui::BeginPopupContextItem
IMGUI_API bool BeginPopupContextItem(const char *str_id=NULL, int mouse_button=1)
Definition: imgui.cpp:7690
ImGuiIO::ConfigFlags
ImGuiConfigFlags ConfigFlags
Definition: imgui.h:1344
ImGuiStyle::FramePadding
ImVec2 FramePadding
Definition: imgui.h:1303
ImGuiHoveredFlags_ChildWindows
@ ImGuiHoveredFlags_ChildWindows
Definition: imgui.h:873
ImDrawList::PathLineTo
void PathLineTo(const ImVec2 &pos)
Definition: imgui.h:1940
ImGui::IsItemActive
IMGUI_API bool IsItemActive()
Definition: imgui.cpp:4578
ImGui::SetNextWindowPos
IMGUI_API void SetNextWindowPos(const ImVec2 &pos, ImGuiCond cond=0, const ImVec2 &pivot=ImVec2(0, 0))
Definition: imgui.cpp:6731
ImGui::PopTextWrapPos
IMGUI_API void PopTextWrapPos()
Definition: imgui.cpp:6313
ImGuiContext::DragDropTargetId
ImGuiID DragDropTargetId
Definition: imgui_internal.h:993
ImGuiPopupData
Definition: imgui_internal.h:686
ImDrawList::_Data
const ImDrawListSharedData * _Data
Definition: imgui.h:1890
ImGui::EndDragDropSource
IMGUI_API void EndDragDropSource()
Definition: imgui.cpp:8995
ImGuiInputTextState::Stb
ImStb::STB_TexteditState Stb
Definition: imgui_internal.h:638
ImGuiContext
Definition: imgui_internal.h:857
a
const GenericPointer< typename T::ValueType > T2 T::AllocatorType & a
Definition: pointer.h:1249
ImGuiTextBuffer::appendf
IMGUI_API void appendf(const char *fmt,...) IM_FMTARGS(2)
Definition: imgui.cpp:2197
ImVector::capacity
int capacity() const
Definition: imgui.h:1247
ImGuiDataTypeInfo::ScanFmt
const char * ScanFmt
Definition: imgui_internal.h:580
ImGuiContext::BackgroundDrawList
ImDrawList BackgroundDrawList
Definition: imgui_internal.h:981
ImGuiInputReadMode
ImGuiInputReadMode
Definition: imgui_internal.h:464
ImGuiLayoutType_Vertical
@ ImGuiLayoutType_Vertical
Definition: imgui_internal.h:427
ImGuiStyle::Colors
ImVec4 Colors[ImGuiCol_COUNT]
Definition: imgui.h:1326
ImGuiStyle
Definition: imgui.h:1290
ImGuiContext::ActiveIdWindow
ImGuiWindow * ActiveIdWindow
Definition: imgui_internal.h:906
ImGui::LogRenderedText
IMGUI_API void LogRenderedText(const ImVec2 *ref_pos, const char *text, const char *text_end=NULL)
Definition: imgui.cpp:9196
ImGui::EndTooltip
IMGUI_API void EndTooltip()
Definition: imgui.cpp:7402
ImGuiDataType_U32
@ ImGuiDataType_U32
Definition: imgui.h:915
ImGui::BeginCombo
IMGUI_API bool BeginCombo(const char *label, const char *preview_value, ImGuiComboFlags flags=0)
Definition: imgui_widgets.cpp:1416
ImGui::ColorButton
IMGUI_API bool ColorButton(const char *desc_id, const ImVec4 &col, ImGuiColorEditFlags flags=0, ImVec2 size=ImVec2(0, 0))
Definition: imgui_widgets.cpp:4822
ImGuiNextWindowData::ClearFlags
void ClearFlags()
Definition: imgui_internal.h:813
ImGui::Selectable
IMGUI_API bool Selectable(const char *label, bool selected=false, ImGuiSelectableFlags flags=0, const ImVec2 &size=ImVec2(0, 0))
Definition: imgui_widgets.cpp:5469
ImGuiItemHoveredDataBackup::ImGuiItemHoveredDataBackup
ImGuiItemHoveredDataBackup()
Definition: imgui_internal.h:1393
ImGuiTextBuffer::end
const char * end() const
Definition: imgui.h:1634
ImGuiInputTextCallbackData::UserData
void * UserData
Definition: imgui.h:1485
ImGuiContext::NavMoveResultLocal
ImGuiNavMoveResult NavMoveResultLocal
Definition: imgui_internal.h:964
ImRect::GetBR
ImVec2 GetBR() const
Definition: imgui_internal.h:558
ImGuiDir_None
@ ImGuiDir_None
Definition: imgui.h:926
ImGuiWindowTempData::ItemWidthStack
ImVector< float > ItemWidthStack
Definition: imgui_internal.h:1236
ImGuiNextWindowData::ContentSizeVal
ImVec2 ContentSizeVal
Definition: imgui_internal.h:804
ImGuiColorMod
Definition: imgui_internal.h:584
ImGui::RenderMouseCursor
IMGUI_API void RenderMouseCursor(ImDrawList *draw_list, ImVec2 pos, float scale, ImGuiMouseCursor mouse_cursor, ImU32 col_fill, ImU32 col_border, ImU32 col_shadow)
Definition: imgui_draw.cpp:3041
stb__in2
#define stb__in2(x)
Definition: imgui_draw.cpp:3179
ImGuiInputTextState::CurLenW
int CurLenW
Definition: imgui_internal.h:631
ImGui::EndColumns
IMGUI_API void EndColumns()
Definition: imgui_widgets.cpp:7496
ImFontAtlas::Build
IMGUI_API bool Build()
Definition: imgui_draw.cpp:1785
ImGuiContext::FocusRequestCurrCounterAll
int FocusRequestCurrCounterAll
Definition: imgui_internal.h:971
ImGuiNextWindowDataFlags_
ImGuiNextWindowDataFlags_
Definition: imgui_internal.h:782
ImGui::SetWindowFontScale
IMGUI_API void SetWindowFontScale(float scale)
Definition: imgui.cpp:6882
ImGuiShrinkWidthItem::Width
float Width
Definition: imgui_internal.h:841
ImGuiTabBarFlags_IsFocused
@ ImGuiTabBarFlags_IsFocused
Definition: imgui_internal.h:1406
ImGuiNextWindowData::PosCond
ImGuiCond PosCond
Definition: imgui_internal.h:798
ImGui::GetFrameHeightWithSpacing
IMGUI_API float GetFrameHeightWithSpacing()
Definition: imgui.cpp:6855
ImFontAtlasCustomRect::Width
unsigned short Width
Definition: imgui.h:2057
ImGuiNavForward_None
@ ImGuiNavForward_None
Definition: imgui_internal.h:505
ImGuiColorEditFlags_NoTooltip
@ ImGuiColorEditFlags_NoTooltip
Definition: imgui.h:1133
ImGuiDataType
int ImGuiDataType
Definition: imgui.h:134
ImGuiContext::DrawDataBuilder
ImDrawDataBuilder DrawDataBuilder
Definition: imgui_internal.h:979
ImGuiStyleVar_ItemSpacing
@ ImGuiStyleVar_ItemSpacing
Definition: imgui.h:1105
ImGuiDataType_Float
@ ImGuiDataType_Float
Definition: imgui.h:918
ImDrawList::PrimReserve
IMGUI_API void PrimReserve(int idx_count, int vtx_count)
Definition: imgui_draw.cpp:520
ImGuiColorEditFlags_PickerHueBar
@ ImGuiColorEditFlags_PickerHueBar
Definition: imgui.h:1148
ImGui::DragInt3
IMGUI_API bool DragInt3(const char *label, int v[3], float v_speed=1.0f, int v_min=0, int v_max=0, const char *format="%d")
Definition: imgui_widgets.cpp:2219
ImGuiCol
int ImGuiCol
Definition: imgui.h:132
ImGuiContext::FontBaseSize
float FontBaseSize
Definition: imgui_internal.h:867
ImGuiStyle::FrameRounding
float FrameRounding
Definition: imgui.h:1304
ImFontAtlasBuildRegisterDefaultCustomRects
void ImFontAtlasBuildRegisterDefaultCustomRects(ImFontAtlas *atlas)
Definition: imgui_draw.cpp:2101
ImGuiWindowTempData::LastItemDisplayRect
ImRect LastItemDisplayRect
Definition: imgui_internal.h:1215
ImGuiInputTextState::ClearText
void ClearText()
Definition: imgui_internal.h:647
ImGui::IsNavInputPressed
bool IsNavInputPressed(ImGuiNavInput n, ImGuiInputReadMode mode)
Definition: imgui_internal.h:1590
ImGuiWindowTempData::StateStorage
ImGuiStorage * StateStorage
Definition: imgui_internal.h:1225
ImDrawList::PrimRect
IMGUI_API void PrimRect(const ImVec2 &a, const ImVec2 &b, ImU32 col)
Definition: imgui_draw.cpp:543
ImGuiIO::WantCaptureKeyboard
bool WantCaptureKeyboard
Definition: imgui.h:1430
ImGuiContext::LogLineFirstItem
bool LogLineFirstItem
Definition: imgui_internal.h:1045
ImGuiCol_HeaderActive
@ ImGuiCol_HeaderActive
Definition: imgui.h:1053
ImGuiTreeNodeFlags_None
@ ImGuiTreeNodeFlags_None
Definition: imgui.h:782
ImDrawListSplitter::Split
IMGUI_API void Split(ImDrawList *draw_list, int count)
Definition: imgui_draw.cpp:1215
ImGui::GetCursorScreenPos
IMGUI_API ImVec2 GetCursorScreenPos()
Definition: imgui.cpp:6937
ImGuiInputSource_NavKeyboard
@ ImGuiInputSource_NavKeyboard
Definition: imgui_internal.h:458
ImGuiCol_FrameBgHovered
@ ImGuiCol_FrameBgHovered
Definition: imgui.h:1035
ImGuiNextWindowData::SizeCond
ImGuiCond SizeCond
Definition: imgui_internal.h:799
IM_PLACEMENT_NEW
#define IM_PLACEMENT_NEW(_PTR)
Definition: imgui.h:1213
ImGuiContext::Initialized
bool Initialized
Definition: imgui_internal.h:859
ImGui::SetWindowSize
IMGUI_API void SetWindowSize(const ImVec2 &size, ImGuiCond cond=0)
Definition: imgui.cpp:6668
ImGuiCol_NavHighlight
@ ImGuiCol_NavHighlight
Definition: imgui.h:1071
ImDrawList::Flags
ImDrawListFlags Flags
Definition: imgui.h:1887
ImFontAtlasBuildMultiplyCalcLookupTable
IMGUI_API void ImFontAtlasBuildMultiplyCalcLookupTable(unsigned char out_table[256], float in_multiply_factor)
Definition: imgui_draw.cpp:1791
ImGuiContext::HoveredIdTimer
float HoveredIdTimer
Definition: imgui_internal.h:893
ImPool::Map
ImGuiStorage Map
Definition: imgui_internal.h:291
ImGuiColumns::LineMaxY
float LineMaxY
Definition: imgui_internal.h:718
ImGuiContext::FrameCountRendered
int FrameCountRendered
Definition: imgui_internal.h:872
ImGui::BeginChildFrame
IMGUI_API bool BeginChildFrame(ImGuiID id, const ImVec2 &size, ImGuiWindowFlags flags=0)
Definition: imgui.cpp:4804
ImGuiSettingsHandler::WriteAllFn
void(* WriteAllFn)(ImGuiContext *ctx, ImGuiSettingsHandler *handler, ImGuiTextBuffer *out_buf)
Definition: imgui_internal.h:679
ImGuiColumnsFlags_GrowParentContentsSize
@ ImGuiColumnsFlags_GrowParentContentsSize
Definition: imgui_internal.h:353
ImGuiCol_MenuBarBg
@ ImGuiCol_MenuBarBg
Definition: imgui.h:1040
ImDrawChannel
Definition: imgui.h:1828
ImDrawCornerFlags_TopRight
@ ImDrawCornerFlags_TopRight
Definition: imgui.h:1855
ImDrawList::AddLine
IMGUI_API void AddLine(const ImVec2 &p1, const ImVec2 &p2, ImU32 col, float thickness=1.0f)
Definition: imgui_draw.cpp:971
ImGuiColumns::Clear
void Clear()
Definition: imgui_internal.h:726
ImGuiInputTextState::ID
ImGuiID ID
Definition: imgui_internal.h:630
ImGuiTabItem::Offset
float Offset
Definition: imgui_internal.h:1424
ImGui::BeginMenu
IMGUI_API bool BeginMenu(const char *label, bool enabled=true)
Definition: imgui_widgets.cpp:6081
ImGuiWindow::RootWindow
ImGuiWindow * RootWindow
Definition: imgui_internal.h:1352
ImGui::GetTreeNodeToLabelSpacing
IMGUI_API float GetTreeNodeToLabelSpacing()
Definition: imgui_widgets.cpp:5403
ImGui
Definition: imgui_extensions.h:5
ImGuiContext::TempInputTextId
ImGuiID TempInputTextId
Definition: imgui_internal.h:1012
stbtt_aligned_quad::t0
float t0
Definition: imstb_truetype.h:546
ImGuiTabBarFlags_FittingPolicyResizeDown
@ ImGuiTabBarFlags_FittingPolicyResizeDown
Definition: imgui.h:841
ImDrawList::PathBezierCurveTo
IMGUI_API void PathBezierCurveTo(const ImVec2 &p1, const ImVec2 &p2, const ImVec2 &p3, int num_segments=0)
Definition: imgui_draw.cpp:922
ImGui::GetScrollbarID
IMGUI_API ImGuiID GetScrollbarID(ImGuiWindow *window, ImGuiAxis axis)
Definition: imgui_widgets.cpp:776
ImPool::GetIndex
ImPoolIdx GetIndex(const T *p) const
Definition: imgui_internal.h:298
ImGuiCol_TextDisabled
@ ImGuiCol_TextDisabled
Definition: imgui.h:1028
ImGuiContext::DrawData
ImDrawData DrawData
Definition: imgui_internal.h:978
ImVector::reserve
void reserve(int new_capacity)
Definition: imgui.h:1265
ImGuiButtonFlags_AllowItemOverlap
@ ImGuiButtonFlags_AllowItemOverlap
Definition: imgui_internal.h:322
stbtt_packedchar
Definition: imstb_truetype.h:576
ImFontAtlasFlags_NoPowerOfTwoHeight
@ ImFontAtlasFlags_NoPowerOfTwoHeight
Definition: imgui.h:2069
stbtt_ScaleForMappingEmToPixels
STBTT_DEF float stbtt_ScaleForMappingEmToPixels(const stbtt_fontinfo *info, float pixels)
ImGui::Shutdown
IMGUI_API void Shutdown(ImGuiContext *context)
Definition: imgui.cpp:3944
ImGuiTabBar::ScrollingAnim
float ScrollingAnim
Definition: imgui_internal.h:1446
ImGuiStyleVar
int ImGuiStyleVar
Definition: imgui.h:139
ImGuiContext::TooltipOverrideCount
int TooltipOverrideCount
Definition: imgui_internal.h:1021
ImGui::SliderBehaviorT
IMGUI_API bool SliderBehaviorT(const ImRect &bb, ImGuiID id, ImGuiDataType data_type, T *v, T v_min, T v_max, const char *format, float power, ImGuiSliderFlags flags, ImRect *out_grab_bb)
ImGuiContext::ActiveIdPreviousFrameWindow
ImGuiWindow * ActiveIdPreviousFrameWindow
Definition: imgui_internal.h:911
ImGuiCol_HeaderHovered
@ ImGuiCol_HeaderHovered
Definition: imgui.h:1052
ImDrawList::IdxBuffer
ImVector< ImDrawIdx > IdxBuffer
Definition: imgui.h:1885
ImGuiContext::NavWindowingTargetAnim
ImGuiWindow * NavWindowingTargetAnim
Definition: imgui_internal.h:942
ImGuiWindowFlags_NoScrollbar
@ ImGuiWindowFlags_NoScrollbar
Definition: imgui.h:717
ImGuiNavHighlightFlags_None
@ ImGuiNavHighlightFlags_None
Definition: imgui_internal.h:476
ImFontAtlasBuildPackCustomRects
void ImFontAtlasBuildPackCustomRects(ImFontAtlas *atlas, void *stbrp_context_opaque)
Definition: imgui_draw.cpp:2125
ImGuiWindowTempData::MenuBarAppending
bool MenuBarAppending
Definition: imgui_internal.h:1222
ImStb
Definition: imgui_internal.h:111
ImGuiNextWindowDataFlags_HasSize
@ ImGuiNextWindowDataFlags_HasSize
Definition: imgui_internal.h:786
ImGuiColumns::IsBeingResized
bool IsBeingResized
Definition: imgui_internal.h:714
ImGui::ClearDragDrop
IMGUI_API void ClearDragDrop()
Definition: imgui.cpp:8881
IM_NORMALIZE2F_OVER_ZERO
#define IM_NORMALIZE2F_OVER_ZERO(VX, VY)
Definition: imgui_draw.cpp:589
ImGui::InputTextWithHint
IMGUI_API bool InputTextWithHint(const char *label, const char *hint, char *buf, size_t buf_size, ImGuiInputTextFlags flags=0, ImGuiInputTextCallback callback=NULL, void *user_data=NULL)
Definition: imgui_widgets.cpp:3079
ImGui::InputInt2
IMGUI_API bool InputInt2(const char *label, int v[2], ImGuiInputTextFlags flags=0)
Definition: imgui_widgets.cpp:3038
ImGuiColorEditFlags_NoOptions
@ ImGuiColorEditFlags_NoOptions
Definition: imgui.h:1130
ImGui::SetFocusID
IMGUI_API void SetFocusID(ImGuiID id, ImGuiWindow *window)
Definition: imgui.cpp:2883
ImGuiWindow::InnerRect
ImRect InnerRect
Definition: imgui_internal.h:1334
ExampleAppDocuments
Definition: imgui_demo.cpp:4529
ImGuiPopupData::OpenParentId
ImGuiID OpenParentId
Definition: imgui_internal.h:692
ImGui::BringWindowToDisplayBack
IMGUI_API void BringWindowToDisplayBack(ImGuiWindow *window)
Definition: imgui.cpp:6074
ImGui::LabelText
IMGUI_API void LabelText(const char *label, const char *fmt,...) IM_FMTARGS(2)
Definition: imgui_widgets.cpp:306
ImGuiItemStatusFlags_HoveredRect
@ ImGuiItemStatusFlags_HoveredRect
Definition: imgui_internal.h:400
ImGui::TabItemEx
IMGUI_API bool TabItemEx(ImGuiTabBar *tab_bar, const char *label, bool *p_open, ImGuiTabItemFlags flags)
Definition: imgui_widgets.cpp:6870
ImGuiNextItemData::OpenCond
ImGuiCond OpenCond
Definition: imgui_internal.h:828
ImGui::PopAllowKeyboardFocus
IMGUI_API void PopAllowKeyboardFocus()
Definition: imgui.cpp:6291
AddFontDefault
io Fonts AddFontDefault()
ImGuiTextBuffer::Buf
ImVector< char > Buf
Definition: imgui.h:1628
ImGuiWindowTempData::NavHasScroll
bool NavHasScroll
Definition: imgui_internal.h:1221
ImGui::SetNextWindowSize
IMGUI_API void SetNextWindowSize(const ImVec2 &size, ImGuiCond cond=0)
Definition: imgui.cpp:6741
ImGui::TabBarQueueChangeTabOrder
IMGUI_API void TabBarQueueChangeTabOrder(ImGuiTabBar *tab_bar, const ImGuiTabItem *tab, int dir)
Definition: imgui_widgets.cpp:6717
ImGuiConfigFlags_NoMouse
@ ImGuiConfigFlags_NoMouse
Definition: imgui.h:1006
ImGui::PushMultiItemsWidths
IMGUI_API void PushMultiItemsWidths(int components, float width_full)
Definition: imgui.cpp:6169
stbtt_pack_context
Definition: imstb_truetype.h:679
ImGuiTabItem::LastFrameSelected
int LastFrameSelected
Definition: imgui_internal.h:1422
ImGuiContext::LogDepthToExpandDefault
int LogDepthToExpandDefault
Definition: imgui_internal.h:1048
ImGui::TempInputTextScalar
IMGUI_API bool TempInputTextScalar(const ImRect &bb, ImGuiID id, const char *label, ImGuiDataType data_type, void *data_ptr, const char *format)
Definition: imgui_widgets.cpp:2833
ImGuiTabBar::OffsetMax
float OffsetMax
Definition: imgui_internal.h:1443
ImGui::Columns
IMGUI_API void Columns(int count=1, const char *id=NULL, bool border=true)
Definition: imgui_widgets.cpp:7572
ImGuiNavForward_ForwardQueued
@ ImGuiNavForward_ForwardQueued
Definition: imgui_internal.h:506
ImGuiPayload
Definition: imgui.h:1519
ImGuiContext::DragDropWithinSourceOrTarget
bool DragDropWithinSourceOrTarget
Definition: imgui_internal.h:987
ImDrawChannel::_CmdBuffer
ImVector< ImDrawCmd > _CmdBuffer
Definition: imgui.h:1830
ImFont::SetFallbackChar
IMGUI_API void SetFallbackChar(ImWchar c)
Definition: imgui_draw.cpp:2561
ImGui::IsWindowHovered
IMGUI_API bool IsWindowHovered(ImGuiHoveredFlags flags=0)
Definition: imgui.cpp:6510
ImGuiWindowTempData::CurrLineTextBaseOffset
float CurrLineTextBaseOffset
Definition: imgui_internal.h:1208
ImGuiContext::LastValidMousePos
ImVec2 LastValidMousePos
Definition: imgui_internal.h:1009
ImGui::DragFloat3
IMGUI_API bool DragFloat3(const char *label, float v[3], float v_speed=1.0f, float v_min=0.0f, float v_max=0.0f, const char *format="%.3f", float power=1.0f)
Definition: imgui_widgets.cpp:2174
ImGuiInputReadMode_Pressed
@ ImGuiInputReadMode_Pressed
Definition: imgui_internal.h:467
ImGui::ButtonBehavior
IMGUI_API bool ButtonBehavior(const ImRect &bb, ImGuiID id, bool *out_hovered, bool *out_held, ImGuiButtonFlags flags=0)
Definition: imgui_widgets.cpp:449
ImGuiColorEditFlags_Float
@ ImGuiColorEditFlags_Float
Definition: imgui.h:1147
ImDrawList::UpdateTextureID
IMGUI_API void UpdateTextureID()
Definition: imgui_draw.cpp:453
ImFontBuildSrcData::Rects
stbrp_rect * Rects
Definition: imgui_draw.cpp:1814
ImGuiDataTypeInfo::Size
size_t Size
Definition: imgui_internal.h:578
ImGuiContext::ColorEditOptions
ImGuiColorEditFlags ColorEditOptions
Definition: imgui_internal.h:1013
ImGuiInputTextCallbackData::Buf
char * Buf
Definition: imgui.h:1492
ImGuiWindowTempData::CursorPos
ImVec2 CursorPos
Definition: imgui_internal.h:1202
ImGuiCol_ScrollbarGrab
@ ImGuiCol_ScrollbarGrab
Definition: imgui.h:1042
ImGuiColorEditFlags_DisplayHSV
@ ImGuiColorEditFlags_DisplayHSV
Definition: imgui.h:1144
ImFontConfig::SizePixels
float SizePixels
Definition: imgui.h:2008
ExampleAppConsole::HistoryPos
int HistoryPos
Definition: imgui_demo.cpp:3523
it
ARPHIC PUBLIC LICENSE Ltd Yung Chi Taiwan All rights reserved except as specified below Everyone is permitted to copy and distribute verbatim copies of this license but changing it is forbidden Preamble The licenses for most software are designed to take away your freedom to share and change it By the ARPHIC PUBLIC LICENSE specifically permits and encourages you to use this provided that you give the recipients all the rights that we gave you and make sure they can get the modifications of this software Legal Terms Font means the TrueType fonts AR PL Mingti2L AR PL KaitiM AR PL KaitiM and the derivatives of those fonts created through any modification including modifying reordering converting changing font or adding deleting some characters in from glyph table PL means Public License Copyright Holder means whoever is named in the copyright or copyrights for the Font You means the or person redistributing or modifying the Font Freely Available means that you have the freedom to copy or modify the Font as well as redistribute copies of the Font under the same conditions you not price If you you can charge for this service Copying &Distribution You may copy and distribute verbatim copies of this Font in any without provided that you retain this license including modifying reordering converting changing font or adding deleting some characters in from glyph and copy and distribute such modifications under the terms of Section provided that the following conditions are such as by offering access to copy the modifications from a designated or distributing the modifications on a medium customarily used for software interchange c If the modified fonts normally reads commands interactively when you must cause it
Definition: ARPHICPL.TXT:36
ImGuiNextWindowDataFlags_HasFocus
@ ImGuiNextWindowDataFlags_HasFocus
Definition: imgui_internal.h:790
ImGui::GetKeyIndex
IMGUI_API int GetKeyIndex(ImGuiKey imgui_key)
Definition: imgui.cpp:4382
ImGuiContext::NextItemData
ImGuiNextItemData NextItemData
Definition: imgui_internal.h:918
ImGuiColumnsFlags_None
@ ImGuiColumnsFlags_None
Definition: imgui_internal.h:348
ImGuiTabBar::LastTabItemIdx
short LastTabItemIdx
Definition: imgui_internal.h:1455
ImGuiNextItemDataFlags_HasWidth
@ ImGuiNextItemDataFlags_HasWidth
Definition: imgui_internal.h:819
ImGuiColorEditFlags_DisplayRGB
@ ImGuiColorEditFlags_DisplayRGB
Definition: imgui.h:1143
ImGui::PlotHistogram
IMGUI_API void PlotHistogram(const char *label, const float *values, int values_count, int values_offset=0, const char *overlay_text=NULL, float scale_min=FLT_MAX, float scale_max=FLT_MAX, ImVec2 graph_size=ImVec2(0, 0), int stride=sizeof(float))
Definition: imgui_widgets.cpp:5872
ImGuiContext::MovingWindow
ImGuiWindow * MovingWindow
Definition: imgui_internal.h:884
ImGuiContext::FrameCountEnded
int FrameCountEnded
Definition: imgui_internal.h:871
ImGuiContext::CurrentWindowStack
ImVector< ImGuiWindow * > CurrentWindowStack
Definition: imgui_internal.h:878
ImGuiInputTextCallbackData::EventChar
ImWchar EventChar
Definition: imgui.h:1490
ImGuiContext::DragDropSourceFrameCount
int DragDropSourceFrameCount
Definition: imgui_internal.h:989
ImGuiCol_TitleBgActive
@ ImGuiCol_TitleBgActive
Definition: imgui.h:1038
ImGui::IsKeyReleased
IMGUI_API bool IsKeyReleased(int user_key_index)
Definition: imgui.cpp:4433
ImGuiWindowFlags_HorizontalScrollbar
@ ImGuiWindowFlags_HorizontalScrollbar
Definition: imgui.h:725
ImGui::RenderTextClippedEx
IMGUI_API void RenderTextClippedEx(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=ImVec2(0, 0), const ImRect *clip_rect=NULL)
Definition: imgui.cpp:2430
ImDrawCmd
Definition: imgui.h:1791
ImGui::SetMouseCursor
IMGUI_API void SetMouseCursor(ImGuiMouseCursor type)
Definition: imgui.cpp:4563
ImGui::PopID
IMGUI_API void PopID()
Definition: imgui.cpp:7026
ImGuiIO::ConfigMacOSXBehaviors
bool ConfigMacOSXBehaviors
Definition: imgui.h:1367
ImGuiColumnData::ClipRect
ImRect ClipRect
Definition: imgui_internal.h:704
ImRect::Min
ImVec2 Min
Definition: imgui_internal.h:543
ImGui::CollapseButton
IMGUI_API bool CollapseButton(ImGuiID id, const ImVec2 &pos)
Definition: imgui_widgets.cpp:751
MergeMode
config MergeMode
Definition: README.txt:50
ImGuiTabItem::NameOffset
int NameOffset
Definition: imgui_internal.h:1423
ImFontBuildSrcData::FontInfo
stbtt_fontinfo FontInfo
Definition: imgui_draw.cpp:1812
ImGui::BulletText
IMGUI_API void BulletText(const char *fmt,...) IM_FMTARGS(1)
Definition: imgui_widgets.cpp:340
ImGuiID
unsigned int ImGuiID
Definition: imgui.h:130
ImRect::Expand
void Expand(const float amount)
Definition: imgui_internal.h:564
ImGuiContext::DragCurrentAccumDirty
bool DragCurrentAccumDirty
Definition: imgui_internal.h:1017
ImGuiStyle::TabRounding
float TabRounding
Definition: imgui.h:1315
ImGuiCol_ChildBg
@ ImGuiCol_ChildBg
Definition: imgui.h:1030
ImGuiWindow
Definition: imgui_internal.h:1280
ImDrawCmd::TextureId
ImTextureID TextureId
Definition: imgui.h:1795
ImGui::GetScrollY
IMGUI_API float GetScrollY()
Definition: imgui.cpp:7262
ImGuiDataType_U16
@ ImGuiDataType_U16
Definition: imgui.h:913
ImRect::Add
void Add(const ImRect &r)
Definition: imgui_internal.h:563
ImFontBuildSrcData::PackRange
stbtt_pack_range PackRange
Definition: imgui_draw.cpp:1813
ImFontAtlasCustomRect::Y
unsigned short Y
Definition: imgui.h:2058
ImGuiIO::NavInputsDownDuration
float NavInputsDownDuration[ImGuiNavInput_COUNT]
Definition: imgui.h:1462
ImGuiWindow::ContentSize
ImVec2 ContentSize
Definition: imgui_internal.h:1288
stbrp_pack_rects
STBRP_DEF int stbrp_pack_rects(stbrp_context *context, stbrp_rect *rects, int num_rects)
ImGuiInputTextFlags_AllowTabInput
@ ImGuiInputTextFlags_AllowTabInput
Definition: imgui.h:765
ImGuiContext::HoveredIdAllowOverlap
bool HoveredIdAllowOverlap
Definition: imgui_internal.h:891
ImRect::Floor
void Floor()
Definition: imgui_internal.h:571
ImGuiContext::LastActiveId
ImGuiID LastActiveId
Definition: imgui_internal.h:913
ImFontBuildDstData
Definition: imgui_draw.cpp:1825
ImGuiColumns::OffMinX
float OffMinX
Definition: imgui_internal.h:717
ImGui::Scrollbar
IMGUI_API void Scrollbar(ImGuiAxis axis)
Definition: imgui_widgets.cpp:878
ImFontConfig::MergeMode
bool MergeMode
Definition: imgui.h:2017
ImGuiSeparatorFlags_Horizontal
@ ImGuiSeparatorFlags_Horizontal
Definition: imgui_internal.h:377
ImGui::SetScrollFromPosX
IMGUI_API void SetScrollFromPosX(float local_x, float center_x_ratio=0.5f)
Definition: imgui.cpp:7325
ExampleAppConsole::Commands
ImVector< const char * > Commands
Definition: imgui_demo.cpp:3521
ImGuiWindowTempData::TextWrapPos
float TextWrapPos
Definition: imgui_internal.h:1234
ImGuiWindow::ScrollMax
ImVec2 ScrollMax
Definition: imgui_internal.h:1297
ImGuiContext::ColorEditLastHue
float ColorEditLastHue
Definition: imgui_internal.h:1014
ImGuiInputTextCallbackData
Definition: imgui.h:1481
ExampleAppConsole::Draw
void Draw(const char *title, bool *p_open)
Definition: imgui_demo.cpp:3573
ImGuiColorEditFlags_NoInputs
@ ImGuiColorEditFlags_NoInputs
Definition: imgui.h:1132
IM_NEWLINE
#define IM_NEWLINE
Definition: imgui_demo.cpp:106
ImGuiTabBar::TabsNames
ImGuiTextBuffer TabsNames
Definition: imgui_internal.h:1457
IM_ARRAYSIZE
#define IM_ARRAYSIZE(_ARR)
Definition: imgui.h:75
ExampleAppConsole::ExecCommand
void ExecCommand(const char *command_line)
Definition: imgui_demo.cpp:3685
ImGuiInputTextState::TextW
ImVector< ImWchar > TextW
Definition: imgui_internal.h:632
ImGui::CaptureKeyboardFromApp
IMGUI_API void CaptureKeyboardFromApp(bool want_capture_keyboard_value=true)
Definition: imgui.cpp:4568
ImDrawList::_VtxWritePtr
ImDrawVert * _VtxWritePtr
Definition: imgui.h:1894
ImGuiContext::NavJustMovedToMultiSelectScopeId
ImGuiID NavJustMovedToMultiSelectScopeId
Definition: imgui_internal.h:936
ImGui::IsMouseDragPastThreshold
IMGUI_API bool IsMouseDragPastThreshold(int button, float lock_threshold=-1.0f)
Definition: imgui.cpp:4491
ImGuiPtrOrIndex::ImGuiPtrOrIndex
ImGuiPtrOrIndex(void *ptr)
Definition: imgui_internal.h:849
ImGuiNavMoveResult::DistAxial
float DistAxial
Definition: imgui_internal.h:775
ImGuiDir_COUNT
@ ImGuiDir_COUNT
Definition: imgui.h:931
ImGuiSettingsHandler::TypeHash
ImGuiID TypeHash
Definition: imgui_internal.h:676
ImFontAtlas::GetGlyphRangesThai
const IMGUI_API ImWchar * GetGlyphRangesThai()
Definition: imgui_draw.cpp:2414
stbtt_PackBegin
STBTT_DEF int stbtt_PackBegin(stbtt_pack_context *spc, unsigned char *pixels, int width, int height, int stride_in_bytes, int padding, void *alloc_context)
ImGuiKey
int ImGuiKey
Definition: imgui.h:136
ImFontAtlas::TexPixelsAlpha8
unsigned char * TexPixelsAlpha8
Definition: imgui.h:2161
ImGuiContext::ActiveIdTimer
float ActiveIdTimer
Definition: imgui_internal.h:897
stbtt_pack_range::chardata_for_range
stbtt_packedchar * chardata_for_range
Definition: imstb_truetype.h:626
ImGuiLayoutType
int ImGuiLayoutType
Definition: imgui_internal.h:89
ImGuiContext::WindowsSortBuffer
ImVector< ImGuiWindow * > WindowsSortBuffer
Definition: imgui_internal.h:877
ExampleAppConsole::ScrollToBottom
bool ScrollToBottom
Definition: imgui_demo.cpp:3526
ImGui::IsItemFocused
IMGUI_API bool IsItemFocused()
Definition: imgui.cpp:4616
ImFontAtlas::GetMouseCursorTexData
IMGUI_API bool GetMouseCursorTexData(ImGuiMouseCursor cursor, ImVec2 *out_offset, ImVec2 *out_size, ImVec2 out_uv_border[2], ImVec2 out_uv_fill[2])
Definition: imgui_draw.cpp:1763
ImGui::TreePop
IMGUI_API void TreePop()
Definition: imgui_widgets.cpp:5380
ImGuiColumnsFlags_
ImGuiColumnsFlags_
Definition: imgui_internal.h:345
ImGuiColumnData::ImGuiColumnData
ImGuiColumnData()
Definition: imgui_internal.h:706
ImDrawCornerFlags_Right
@ ImDrawCornerFlags_Right
Definition: imgui.h:1861
ImGui::TabItemBackground
IMGUI_API void TabItemBackground(ImDrawList *draw_list, const ImRect &bb, ImGuiTabItemFlags flags, ImU32 col)
Definition: imgui_widgets.cpp:7092
ImGui::InputTextMultiline
IMGUI_API bool InputTextMultiline(const char *label, char *buf, size_t buf_size, const ImVec2 &size=ImVec2(0, 0), ImGuiInputTextFlags flags=0, ImGuiInputTextCallback callback=NULL, void *user_data=NULL)
Definition: imgui_widgets.cpp:3074
ImGuiContext::NavJustTabbedId
ImGuiID NavJustTabbedId
Definition: imgui_internal.h:934
ImDrawList::PathArcToFast
IMGUI_API void PathArcToFast(const ImVec2 &center, float radius, int a_min_of_12, int a_max_of_12)
Definition: imgui_draw.cpp:863
IM_COL32_R_SHIFT
#define IM_COL32_R_SHIFT
Definition: imgui.h:1734
ImGuiContext::WindowsActiveCount
int WindowsActiveCount
Definition: imgui_internal.h:880
ImGuiTabBar::PrevFrameVisible
int PrevFrameVisible
Definition: imgui_internal.h:1440
ImGuiTextBuffer::clear
void clear()
Definition: imgui.h:1637
ImDrawList::Clear
IMGUI_API void Clear()
Definition: imgui_draw.cpp:362
ImGuiHoveredFlags_RectOnly
@ ImGuiHoveredFlags_RectOnly
Definition: imgui.h:881
ImStrlenW
IMGUI_API int ImStrlenW(const ImWchar *str)
Definition: imgui.cpp:1384
ImGuiAxis
ImGuiAxis
Definition: imgui_internal.h:440
ImGuiPlotType_Lines
@ ImGuiPlotType_Lines
Definition: imgui_internal.h:449
ImFontAtlas::TexHeight
int TexHeight
Definition: imgui.h:2164
ImGuiShrinkWidthItem
Definition: imgui_internal.h:838
ImTextCountUtf8BytesFromStr
IMGUI_API int ImTextCountUtf8BytesFromStr(const ImWchar *in_text, const ImWchar *in_text_end)
Definition: imgui.cpp:1790
ImGuiContext::NavMoveRequestFlags
ImGuiNavMoveFlags NavMoveRequestFlags
Definition: imgui_internal.h:960
IMGUI_PAYLOAD_TYPE_COLOR_3F
#define IMGUI_PAYLOAD_TYPE_COLOR_3F
Definition: imgui.h:904
ImGuiItemStatusFlags_Edited
@ ImGuiItemStatusFlags_Edited
Definition: imgui_internal.h:402
ImGui::LogToBuffer
IMGUI_API void LogToBuffer(int auto_open_depth=-1)
Definition: imgui.cpp:9305
ImGuiItemFlags_NoNav
@ ImGuiItemFlags_NoNav
Definition: imgui_internal.h:389
ImGuiTabBar::GetTabName
const char * GetTabName(const ImGuiTabItem *tab) const
Definition: imgui_internal.h:1461
ImDrawList::AddConvexPolyFilled
IMGUI_API void AddConvexPolyFilled(const ImVec2 *points, int num_points, ImU32 col)
Definition: imgui_draw.cpp:782
stbtt_aligned_quad::x0
float x0
Definition: imstb_truetype.h:546
ImDrawList::PopClipRect
IMGUI_API void PopClipRect()
Definition: imgui_draw.cpp:499
ImGui::TextWrapped
IMGUI_API void TextWrapped(const char *fmt,...) IM_FMTARGS(1)
Definition: imgui_widgets.cpp:287
ImGuiWindowTempData::ItemFlagsStack
ImVector< ImGuiItemFlags > ItemFlagsStack
Definition: imgui_internal.h:1235
ImGuiPopupData::SourceWindow
ImGuiWindow * SourceWindow
Definition: imgui_internal.h:690
ImVector::size_in_bytes
int size_in_bytes() const
Definition: imgui.h:1246
ExampleAppConsole::Strtrim
static void Strtrim(char *str)
Definition: imgui_demo.cpp:3552
ImVector< char >
ImDrawCornerFlags_Bot
@ ImDrawCornerFlags_Bot
Definition: imgui.h:1859
ImGuiCol_ResizeGripActive
@ ImGuiCol_ResizeGripActive
Definition: imgui.h:1059
ImGuiSelectableFlags_AllowDoubleClick
@ ImGuiSelectableFlags_AllowDoubleClick
Definition: imgui.h:812
ImGuiTreeNodeFlags_ClipLabelForTrailingButton
@ ImGuiTreeNodeFlags_ClipLabelForTrailingButton
Definition: imgui_internal.h:371
ImGui::PushOverrideID
IMGUI_API void PushOverrideID(ImGuiID id)
Definition: imgui.cpp:7020
ImFontAtlas::AddFontFromFileTTF
IMGUI_API ImFont * AddFontFromFileTTF(const char *filename, float size_pixels, const ImFontConfig *font_cfg=NULL, const ImWchar *glyph_ranges=NULL)
Definition: imgui_draw.cpp:1669
stbtt_GetFontOffsetForIndex
STBTT_DEF int stbtt_GetFontOffsetForIndex(const unsigned char *data, int index)
ImGuiWindow::ContentsRegionRect
ImRect ContentsRegionRect
Definition: imgui_internal.h:1338
ImVector::size
int size() const
Definition: imgui.h:1245
ImDrawList::PathRect
IMGUI_API void PathRect(const ImVec2 &rect_min, const ImVec2 &rect_max, float rounding=0.0f, ImDrawCornerFlags rounding_corners=ImDrawCornerFlags_All)
Definition: imgui_draw.cpp:946
ImGui::EndCombo
IMGUI_API void EndCombo()
Definition: imgui_widgets.cpp:1522
ImGui::EndMenuBar
IMGUI_API void EndMenuBar()
Definition: imgui_widgets.cpp:6040
ImGuiNextWindowData::CollapsedCond
ImGuiCond CollapsedCond
Definition: imgui_internal.h:800
ImGuiInputTextFlags_CallbackCompletion
@ ImGuiInputTextFlags_CallbackCompletion
Definition: imgui.h:761
ImGui::PushFont
IMGUI_API void PushFont(ImFont *font)
Definition: imgui.cpp:6250
ImWchar
unsigned short ImWchar
Definition: imgui.h:131
ImGuiColorEditFlags_AlphaBar
@ ImGuiColorEditFlags_AlphaBar
Definition: imgui.h:1139
ImGui::StyleColorsDark
IMGUI_API void StyleColorsDark(ImGuiStyle *dst=NULL)
Definition: imgui_draw.cpp:176
ImGuiTabBar::ImGuiTabBar
ImGuiTabBar()
Definition: imgui_widgets.cpp:6330
ImGui::GetStyle
IMGUI_API ImGuiStyle & GetStyle()
Definition: imgui.cpp:3306
ImGuiSeparatorFlags_
ImGuiSeparatorFlags_
Definition: imgui_internal.h:374
ImGuiItemFlags_
ImGuiItemFlags_
Definition: imgui_internal.h:384
ImGuiInputTextCallbackData::InsertChars
IMGUI_API void InsertChars(int pos, const char *text, const char *text_end=NULL)
Definition: imgui_widgets.cpp:3279
ImFontBuildSrcData::GlyphsHighest
int GlyphsHighest
Definition: imgui_draw.cpp:1818
stbtt_aligned_quad::x1
float x1
Definition: imstb_truetype.h:547
ImTextureID
void * ImTextureID
Definition: imgui.h:123
ImGuiWindow::AutoFitChildAxises
ImS8 AutoFitChildAxises
Definition: imgui_internal.h:1317
ImGuiIO::BackendPlatformName
const char * BackendPlatformName
Definition: imgui.h:1379
ImGui::EndTabBar
IMGUI_API void EndTabBar()
Definition: imgui_widgets.cpp:6432
ImGuiStyleVar_GrabMinSize
@ ImGuiStyleVar_GrabMinSize
Definition: imgui.h:1110
ImDrawData
Definition: imgui.h:1979
ImGuiColumnData
Definition: imgui_internal.h:699
ImGui::ShadeVertsLinearUV
IMGUI_API void ShadeVertsLinearUV(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)
Definition: imgui_draw.cpp:1384
ImDrawDataBuilder::Layers
ImVector< ImDrawList * > Layers[2]
Definition: imgui_internal.h:761
ImGuiTextBuffer::size
int size() const
Definition: imgui.h:1635
ImFontAtlasCustomRect::GlyphOffset
ImVec2 GlyphOffset
Definition: imgui.h:2060
ImParseFormatTrimDecorations
const IMGUI_API char * ImParseFormatTrimDecorations(const char *format, char *buf, size_t buf_size)
Definition: imgui_widgets.cpp:2795
ImFontAtlasBuildFinish
void ImFontAtlasBuildFinish(ImFontAtlas *atlas)
Definition: imgui_draw.cpp:2183
ImGuiMenuColumns
Definition: imgui_internal.h:615
ImGuiComboFlags_NoArrowButton
@ ImGuiComboFlags_NoArrowButton
Definition: imgui.h:826
ImGui::BeginTabBarEx
IMGUI_API bool BeginTabBarEx(ImGuiTabBar *tab_bar, const ImRect &bb, ImGuiTabBarFlags flags)
Definition: imgui_widgets.cpp:6380
ImGuiTabBar::ScrollingTargetDistToVisibility
float ScrollingTargetDistToVisibility
Definition: imgui_internal.h:1448
ImGuiSizeCallback
void(* ImGuiSizeCallback)(ImGuiSizeCallbackData *data)
Definition: imgui.h:157
ImGuiInputTextState::TextA
ImVector< char > TextA
Definition: imgui_internal.h:633
ImGuiWindowTempData::PrevLineSize
ImVec2 PrevLineSize
Definition: imgui_internal.h:1207
ImGuiDir_Right
@ ImGuiDir_Right
Definition: imgui.h:928
GetTexDataAsAlpha8
The code in imgui cpp embeds a copy of ProggyClean ttf that you can use without any external files The files in this folder are only provided as a you can use any of your own TTF files Fonts are rasterized in a single texture at the time of calling either of io Fonts GetTexDataAsAlpha8()/GetTexDataAsRGBA32()/Build(). If you want to use icons in ImGui
ImGuiStyle::Alpha
float Alpha
Definition: imgui.h:1292
ImGuiContext::FocusRequestCurrWindow
ImGuiWindow * FocusRequestCurrWindow
Definition: imgui_internal.h:969
ImGui::GetColumnsID
IMGUI_API ImGuiID GetColumnsID(const char *str_id, int count)
Definition: imgui_widgets.cpp:7356
ImGuiContext::ActiveIdPreviousFrame
ImGuiID ActiveIdPreviousFrame
Definition: imgui_internal.h:908
ImStricmp
IMGUI_API int ImStricmp(const char *str1, const char *str2)
Definition: imgui.cpp:1334
ImGui::GetContentRegionMaxAbs
IMGUI_API ImVec2 GetContentRegionMaxAbs()
Definition: imgui.cpp:6802
ImGui::TempInputTextIsActive
bool TempInputTextIsActive(ImGuiID id)
Definition: imgui_internal.h:1686
ImGui::IsWindowChildOf
IMGUI_API bool IsWindowChildOf(ImGuiWindow *window, ImGuiWindow *potential_parent)
Definition: imgui.cpp:6497
ImGuiWindow::SettingsIdx
int SettingsIdx
Definition: imgui_internal.h:1347
ImGui::TextEx
IMGUI_API void TextEx(const char *text, const char *text_end=NULL, ImGuiTextFlags flags=0)
Definition: imgui_widgets.cpp:130
ImGuiWindow::AutoFitOnlyGrows
bool AutoFitOnlyGrows
Definition: imgui_internal.h:1318
ImGuiItemFlags_MixedValue
@ ImGuiItemFlags_MixedValue
Definition: imgui_internal.h:392
ImGuiContext::Font
ImFont * Font
Definition: imgui_internal.h:865
ImGuiContext::PlatformImeLastPos
ImVec2 PlatformImeLastPos
Definition: imgui_internal.h:1030
ImFontAtlas::TexDesiredWidth
int TexDesiredWidth
Definition: imgui.h:2156
ImGuiContext::SettingsHandlers
ImVector< ImGuiSettingsHandler > SettingsHandlers
Definition: imgui_internal.h:1036
ImGuiColorMod::BackupValue
ImVec4 BackupValue
Definition: imgui_internal.h:587
ImDrawList::AddCallback
IMGUI_API void AddCallback(ImDrawCallback callback, void *callback_data)
Definition: imgui_draw.cpp:418
ImGuiContext::NavActivateId
ImGuiID NavActivateId
Definition: imgui_internal.h:930
MyDocument::Dirty
bool Dirty
Definition: imgui_demo.cpp:4479
ImGuiContext::ForegroundDrawList
ImDrawList ForegroundDrawList
Definition: imgui_internal.h:982
ImGuiStorage
Definition: imgui.h:1653
ImGuiContext::InputTextPasswordFont
ImFont InputTextPasswordFont
Definition: imgui_internal.h:1011
ImFontConfig::FontDataOwnedByAtlas
bool FontDataOwnedByAtlas
Definition: imgui.h:2006
ImGui::InputScalar
IMGUI_API bool InputScalar(const char *label, ImGuiDataType data_type, void *v, const void *step=NULL, const void *step_fast=NULL, const char *format=NULL, ImGuiInputTextFlags flags=0)
Definition: imgui_widgets.cpp:2868
ImDrawListSharedData::CurveTessellationTol
float CurveTessellationTol
Definition: imgui_internal.h:748
ImGui::InputFloat4
IMGUI_API bool InputFloat4(const char *label, float v[4], const char *format="%.3f", ImGuiInputTextFlags flags=0)
Definition: imgui_widgets.cpp:2991
ImTriangleContainsPoint
IMGUI_API bool ImTriangleContainsPoint(const ImVec2 &a, const ImVec2 &b, const ImVec2 &c, const ImVec2 &p)
Definition: imgui.cpp:1298
ImGui::TabBarCloseTab
IMGUI_API void TabBarCloseTab(ImGuiTabBar *tab_bar, ImGuiTabItem *tab)
Definition: imgui_widgets.cpp:6675
ImGui::ScrollToBringRectIntoView
IMGUI_API ImVec2 ScrollToBringRectIntoView(ImGuiWindow *window, const ImRect &item_rect)
Definition: imgui.cpp:7227
ImGuiNavHighlightFlags_TypeThin
@ ImGuiNavHighlightFlags_TypeThin
Definition: imgui_internal.h:478
ImFontConfig::PixelSnapH
bool PixelSnapH
Definition: imgui.h:2011
ImStrchrRange
const IMGUI_API char * ImStrchrRange(const char *str_begin, const char *str_end, char c)
Definition: imgui.cpp:1378
ImGuiCol_Button
@ ImGuiCol_Button
Definition: imgui.h:1048
ImGuiItemHoveredDataBackup::LastItemRect
ImRect LastItemRect
Definition: imgui_internal.h:1390
ImGuiIO::DeltaTime
float DeltaTime
Definition: imgui.h:1347
ImGuiContext::FocusRequestNextCounterAll
int FocusRequestNextCounterAll
Definition: imgui_internal.h:973
ImGuiInputTextCallback
int(* ImGuiInputTextCallback)(ImGuiInputTextCallbackData *data)
Definition: imgui.h:156
ImGuiWindowTempData::NavLayerCurrentMask
int NavLayerCurrentMask
Definition: imgui_internal.h:1217
ImU8
unsigned char ImU8
Definition: imgui.h:161
ImGuiStyle::AntiAliasedLines
bool AntiAliasedLines
Definition: imgui.h:1323
ImGuiColumns::HostCursorPosY
float HostCursorPosY
Definition: imgui_internal.h:719
ImGui::ShowStyleEditor
IMGUI_API void ShowStyleEditor(ImGuiStyle *ref=NULL)
Definition: imgui_demo.cpp:3165
ImGui::LogButtons
IMGUI_API void LogButtons()
Definition: imgui.cpp:9347
IMGUI_VERSION_NUM
#define IMGUI_VERSION_NUM
Definition: imgui.h:50
ImGuiContext::NavActivateDownId
ImGuiID NavActivateDownId
Definition: imgui_internal.h:931
ImU64
unsigned long long ImU64
Definition: imgui.h:175
ImGuiCol_TabHovered
@ ImGuiCol_TabHovered
Definition: imgui.h:1061
ImGuiNavMoveResult::Clear
void Clear()
Definition: imgui_internal.h:779
ImDrawChannel::_IdxBuffer
ImVector< ImDrawIdx > _IdxBuffer
Definition: imgui.h:1831
ImFont::IsLoaded
bool IsLoaded() const
Definition: imgui.h:2210
ImGuiStyleMod::ImGuiStyleMod
ImGuiStyleMod(ImGuiStyleVar idx, int v)
Definition: imgui_internal.h:595
ImGui::GetFocusID
ImGuiID GetFocusID()
Definition: imgui_internal.h:1531
ImGuiContext::NavMoveClipDir
ImGuiDir NavMoveClipDir
Definition: imgui_internal.h:963
ImGui::EndChild
IMGUI_API void EndChild()
Definition: imgui.cpp:4764
ImGuiContext::LogLinePosY
float LogLinePosY
Definition: imgui_internal.h:1044
ImGui::PlotLines
IMGUI_API void PlotLines(const char *label, const float *values, int values_count, int values_offset=0, const char *overlay_text=NULL, float scale_min=FLT_MAX, float scale_max=FLT_MAX, ImVec2 graph_size=ImVec2(0, 0), int stride=sizeof(float))
Definition: imgui_widgets.cpp:5861
ImGui::ItemSize
IMGUI_API void ItemSize(const ImVec2 &size, float text_offset_y=0.0f)
Definition: imgui.cpp:2968
ImGuiContext::DragSpeedDefaultRatio
float DragSpeedDefaultRatio
Definition: imgui_internal.h:1019
height
int height
Definition: bgfx.cpp:20
ImGuiContext::CurrentTabBarStack
ImVector< ImGuiPtrOrIndex > CurrentTabBarStack
Definition: imgui_internal.h:1005
ImGui::ShowUserGuide
IMGUI_API void ShowUserGuide()
Definition: imgui_demo.cpp:150
ImGui::RenderRectFilledRangeH
IMGUI_API void RenderRectFilledRangeH(ImDrawList *draw_list, const ImRect &rect, ImU32 col, float x_start_norm, float x_end_norm, float rounding)
Definition: imgui_draw.cpp:3084
ImGui::IsItemClicked
IMGUI_API bool IsItemClicked(int mouse_button=0)
Definition: imgui.cpp:4626
ImGuiListClipper::DisplayStart
int DisplayStart
Definition: imgui.h:1713
ImGuiWindowFlags_NoDecoration
@ ImGuiWindowFlags_NoDecoration
Definition: imgui.h:735
ImGuiSizeCallbackData::DesiredSize
ImVec2 DesiredSize
Definition: imgui.h:1515
ImGuiWindow::HiddenFramesCannotSkipItems
int HiddenFramesCannotSkipItems
Definition: imgui_internal.h:1321
ImGui::GetColumnIndex
IMGUI_API int GetColumnIndex()
Definition: imgui_widgets.cpp:7192
ImGui::InputFloat2
IMGUI_API bool InputFloat2(const char *label, float v[2], const char *format="%.3f", ImGuiInputTextFlags flags=0)
Definition: imgui_widgets.cpp:2981
stbtt_packedchar::xadvance
float xadvance
Definition: imstb_truetype.h:579
ImGuiWindow::NavLastChildNavWindow
ImGuiWindow * NavLastChildNavWindow
Definition: imgui_internal.h:1356
MyDocument::DoOpen
void DoOpen()
Definition: imgui_demo.cpp:4491
ExampleAppLog::LineOffsets
ImVector< int > LineOffsets
Definition: imgui_demo.cpp:3851
ImGui::SliderFloat4
IMGUI_API bool SliderFloat4(const char *label, float v[4], float v_min, float v_max, const char *format="%.3f", float power=1.0f)
Definition: imgui_widgets.cpp:2634
ImTextCountUtf8BytesFromChar
IMGUI_API int ImTextCountUtf8BytesFromChar(const char *in_text, const char *in_text_end)
Definition: imgui.cpp:1759
ImGuiTabBar::OffsetMaxIdeal
float OffsetMaxIdeal
Definition: imgui_internal.h:1444
ImGui::GetStyleColorName
const IMGUI_API char * GetStyleColorName(ImGuiCol idx)
Definition: imgui.cpp:6439
ImGuiWindowSettings::Collapsed
bool Collapsed
Definition: imgui_internal.h:668
ImGuiStyleVar_ChildRounding
@ ImGuiStyleVar_ChildRounding
Definition: imgui.h:1098
ImGuiInputTextCallbackData::EventKey
ImGuiKey EventKey
Definition: imgui.h:1491
ImFont::GrowIndex
IMGUI_API void GrowIndex(int new_size)
Definition: imgui_draw.cpp:2567
ImVector::back
T & back()
Definition: imgui.h:1258
ImDrawListSharedData::FontSize
float FontSize
Definition: imgui_internal.h:747
ImGui::ColorEdit4
IMGUI_API bool ColorEdit4(const char *label, float col[4], ImGuiColorEditFlags flags=0)
Definition: imgui_widgets.cpp:4154
ImGuiNextItemData::OpenVal
bool OpenVal
Definition: imgui_internal.h:827
ImGuiWindowFlags_AlwaysAutoResize
@ ImGuiWindowFlags_AlwaysAutoResize
Definition: imgui.h:720
ImVec4::w
float w
Definition: imgui.h:194
ImGuiNavHighlightFlags_NoRounding
@ ImGuiNavHighlightFlags_NoRounding
Definition: imgui_internal.h:480
ImGuiTabBar::VisibleTabId
ImGuiID VisibleTabId
Definition: imgui_internal.h:1438
ImGui::FindWindowByID
IMGUI_API ImGuiWindow * FindWindowByID(ImGuiID id)
Definition: imgui.cpp:4846
ImGuiCond_Always
@ ImGuiCond_Always
Definition: imgui.h:1195
x
config GlyphExtraSpacing x
Definition: README.txt:30
ImGuiInputTextState::TextAIsValid
bool TextAIsValid
Definition: imgui_internal.h:635
ImGuiTreeNodeFlags_SpanAvailWidth
@ ImGuiTreeNodeFlags_SpanAvailWidth
Definition: imgui.h:794
ImFontAtlas::GetGlyphRangesKorean
const IMGUI_API ImWchar * GetGlyphRangesKorean()
Definition: imgui_draw.cpp:2235
ImGuiItemStatusFlags
int ImGuiItemStatusFlags
Definition: imgui_internal.h:97
ImGuiConfigFlags_NavEnableKeyboard
@ ImGuiConfigFlags_NavEnableKeyboard
Definition: imgui.h:1002
ImDrawList::_VtxCurrentIdx
unsigned int _VtxCurrentIdx
Definition: imgui.h:1893
ImGuiWindow::BeginOrderWithinContext
short BeginOrderWithinContext
Definition: imgui_internal.h:1314
ExampleAppLog::Filter
ImGuiTextFilter Filter
Definition: imgui_demo.cpp:3850
ImDrawList::AddTriangle
IMGUI_API void AddTriangle(const ImVec2 &p1, const ImVec2 &p2, const ImVec2 &p3, ImU32 col, float thickness=1.0f)
Definition: imgui_draw.cpp:1049
ImFontGlyph
Definition: imgui.h:2029
ImGuiDragDropFlags
int ImGuiDragDropFlags
Definition: imgui.h:147
ImPool::Clear
void Clear()
Definition: imgui_internal.h:301
stbrp_rect::was_packed
int was_packed
Definition: imstb_rectpack.h:125
ImGui::CloseCurrentPopup
IMGUI_API void CloseCurrentPopup()
Definition: imgui.cpp:7581
ImGuiTabBar::ReorderRequestDir
ImS8 ReorderRequestDir
Definition: imgui_internal.h:1452
ImGui::CalcWindowExpectedSize
IMGUI_API ImVec2 CalcWindowExpectedSize(ImGuiWindow *window)
Definition: imgui.cpp:4989
ImGuiNavDirSourceFlags
int ImGuiNavDirSourceFlags
Definition: imgui_internal.h:99
ImFontAtlasBuildFinish
IMGUI_API void ImFontAtlasBuildFinish(ImFontAtlas *atlas)
Definition: imgui_draw.cpp:2183
ImGuiInputTextState::ImGuiInputTextState
ImGuiInputTextState()
Definition: imgui_internal.h:646
ImGuiNavHighlightFlags_TypeDefault
@ ImGuiNavHighlightFlags_TypeDefault
Definition: imgui_internal.h:477
ImGuiWindowTempData::ImGuiWindowTempData
ImGuiWindowTempData()
Definition: imgui_internal.h:1246
ImGuiInputReadMode_Released
@ ImGuiInputReadMode_Released
Definition: imgui_internal.h:468
ImFontAtlasBuildMultiplyRectAlpha8
void ImFontAtlasBuildMultiplyRectAlpha8(const unsigned char table[256], unsigned char *pixels, int x, int y, int w, int h, int stride)
Definition: imgui_draw.cpp:1800
ImFontConfig::FontNo
int FontNo
Definition: imgui.h:2007
ImGuiGroupData::BackupCurrLineTextBaseOffset
float BackupCurrLineTextBaseOffset
Definition: imgui_internal.h:608
ImGuiMenuColumns::Width
float Width
Definition: imgui_internal.h:618
ImGuiColumnData::OffsetNorm
float OffsetNorm
Definition: imgui_internal.h:701
ImDrawCmd::UserCallback
ImDrawCallback UserCallback
Definition: imgui.h:1798
ImGui::IsItemDeactivatedAfterEdit
IMGUI_API bool IsItemDeactivatedAfterEdit()
Definition: imgui.cpp:4610
ImVector::swap
void swap(ImVector< T > &rhs)
Definition: imgui.h:1260
ImGuiDragFlags_None
@ ImGuiDragFlags_None
Definition: imgui_internal.h:341
ImGuiCol_TabActive
@ ImGuiCol_TabActive
Definition: imgui.h:1062
ImFileOpen
IMGUI_API FILE * ImFileOpen(const char *filename, const char *file_open_mode)
Definition: imgui.cpp:1563
ImGui::NavMoveRequestForward
IMGUI_API void NavMoveRequestForward(ImGuiDir move_dir, ImGuiDir clip_dir, const ImRect &bb_rel, ImGuiNavMoveFlags move_flags)
Definition: imgui.cpp:8081
ImGui::ShadeVertsLinearColorGradientKeepAlpha
IMGUI_API void ShadeVertsLinearColorGradientKeepAlpha(ImDrawList *draw_list, int vert_start_idx, int vert_end_idx, ImVec2 gradient_p0, ImVec2 gradient_p1, ImU32 col0, ImU32 col1)
Definition: imgui_draw.cpp:1366
ImGuiContext::DragDropAcceptIdCurrRectSurface
float DragDropAcceptIdCurrRectSurface
Definition: imgui_internal.h:995
ImGuiPopupData::Window
ImGuiWindow * Window
Definition: imgui_internal.h:689
ImVec2::y
float y
Definition: imgui.h:181
ImGuiWindowFlags_NoMove
@ ImGuiWindowFlags_NoMove
Definition: imgui.h:716
ImGuiInputTextFlags_CtrlEnterForNewLine
@ ImGuiInputTextFlags_CtrlEnterForNewLine
Definition: imgui.h:766
ImGuiListClipper::Step
IMGUI_API bool Step()
Definition: imgui.cpp:2327
ImGui::CloseButton
IMGUI_API bool CloseButton(ImGuiID id, const ImVec2 &pos)
Definition: imgui_widgets.cpp:721
ImDrawListSharedData::ClipRectFullscreen
ImVec4 ClipRectFullscreen
Definition: imgui_internal.h:749
ImGuiCol_Text
@ ImGuiCol_Text
Definition: imgui.h:1027
ImGuiContext::HoveredId
ImGuiID HoveredId
Definition: imgui_internal.h:890
IMGUI_PAYLOAD_TYPE_COLOR_4F
#define IMGUI_PAYLOAD_TYPE_COLOR_4F
Definition: imgui.h:905
ImFontAtlas::TexID
ImTextureID TexID
Definition: imgui.h:2155
ImGuiKey_Space
@ ImGuiKey_Space
Definition: imgui.h:949
ImGuiTabBar::FramePadding
ImVec2 FramePadding
Definition: imgui_internal.h:1456
ImGui::GetWindowPos
IMGUI_API ImVec2 GetWindowPos()
Definition: imgui.cpp:6592
ImGui::AlignTextToFramePadding
IMGUI_API void AlignTextToFramePadding()
Definition: imgui_widgets.cpp:1208
ImGui::SetCursorPosX
IMGUI_API void SetCursorPosX(float local_x)
Definition: imgui.cpp:6917
ImGuiContext::FramerateSecPerFrameAccum
float FramerateSecPerFrameAccum
Definition: imgui_internal.h:1057
ImGuiContext::DragDropSourceFlags
ImGuiDragDropFlags DragDropSourceFlags
Definition: imgui_internal.h:988
ImFontConfig::OversampleV
int OversampleV
Definition: imgui.h:2010
ImPoolIdx
int ImPoolIdx
Definition: imgui_internal.h:286
ImGuiSelectableFlags_NoHoldingActiveID
@ ImGuiSelectableFlags_NoHoldingActiveID
Definition: imgui_internal.h:360
ImDrawList::AddImage
IMGUI_API void AddImage(ImTextureID user_texture_id, const ImVec2 &p_min, const ImVec2 &p_max, const ImVec2 &uv_min=ImVec2(0, 0), const ImVec2 &uv_max=ImVec2(1, 1), ImU32 col=IM_COL32_WHITE)
Definition: imgui_draw.cpp:1137
MyDocument::DoQueueClose
void DoQueueClose()
Definition: imgui_demo.cpp:4492
ImS8
signed char ImS8
Definition: imgui.h:160
ImGui::SliderAngle
IMGUI_API bool SliderAngle(const char *label, float *v_rad, float v_degrees_min=-360.0f, float v_degrees_max=+360.0f, const char *format="%.0f deg")
Definition: imgui_widgets.cpp:2639
ImGuiDataType_U64
@ ImGuiDataType_U64
Definition: imgui.h:917
ImGuiTabBar::ScrollingTarget
float ScrollingTarget
Definition: imgui_internal.h:1447
ImVec2ih
Definition: imgui_internal.h:532
ImGuiDragFlags
int ImGuiDragFlags
Definition: imgui_internal.h:95
ImGuiWindow::Size
ImVec2 Size
Definition: imgui_internal.h:1286
value
Offset font vertically by altering the io Font DisplayOffset value
Definition: README.txt:67
ImGuiWindow::WriteAccessed
bool WriteAccessed
Definition: imgui_internal.h:1304
ImGuiInputReadMode_RepeatSlow
@ ImGuiInputReadMode_RepeatSlow
Definition: imgui_internal.h:470
GetCurrentClipRect
#define GetCurrentClipRect()
Definition: imgui_draw.cpp:403
stbtt_pack_context::pack_info
void * pack_info
Definition: imstb_truetype.h:681
imstb_truetype.h
ImGuiFocusedFlags_ChildWindows
@ ImGuiFocusedFlags_ChildWindows
Definition: imgui.h:861
ImGui::BeginDragDropSource
IMGUI_API bool BeginDragDropSource(ImGuiDragDropFlags flags=0)
Definition: imgui.cpp:8897
ImRect::Translate
void Translate(const ImVec2 &d)
Definition: imgui_internal.h:566
ImStrdupcpy
IMGUI_API char * ImStrdupcpy(char *dst, size_t *p_dst_size, const char *str)
Definition: imgui.cpp:1364
FONT_ATLAS_DEFAULT_TEX_DATA_W_HALF
const int FONT_ATLAS_DEFAULT_TEX_DATA_W_HALF
Definition: imgui_draw.cpp:1441
ImGuiNavHighlightFlags_AlwaysDraw
@ ImGuiNavHighlightFlags_AlwaysDraw
Definition: imgui_internal.h:479
ImGui::PlotEx
IMGUI_API void PlotEx(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, ImVec2 frame_size)
Definition: imgui_widgets.cpp:5732
ImGuiWindowTempData::ColumnsOffset
ImVec1 ColumnsOffset
Definition: imgui_internal.h:1243
ImGuiDataTypeInfo::PrintFmt
const char * PrintFmt
Definition: imgui_internal.h:579
ImGuiTextFilter
Definition: imgui.h:1599
ImGuiWindow::MenuBarHeight
float MenuBarHeight() const
Definition: imgui_internal.h:1381
ImGuiInputTextState::ScrollX
float ScrollX
Definition: imgui_internal.h:637
ImGui::ShowDemoWindow
IMGUI_API void ShowDemoWindow(bool *p_open=NULL)
Definition: imgui_demo.cpp:195
ImGuiContext::StyleModifiers
ImVector< ImGuiStyleMod > StyleModifiers
Definition: imgui_internal.h:922
ImGuiContext::ActiveIdIsAlive
ImGuiID ActiveIdIsAlive
Definition: imgui_internal.h:896
ImGuiWindow::FontWindowScale
float FontWindowScale
Definition: imgui_internal.h:1346
intptr_t
_W64 int intptr_t
Definition: stdint.h:43
ImGuiContext::DragDropAcceptIdPrev
ImGuiID DragDropAcceptIdPrev
Definition: imgui_internal.h:997
ImGuiPopupData::OpenPopupPos
ImVec2 OpenPopupPos
Definition: imgui_internal.h:693
ImGui::IsItemActivated
IMGUI_API bool IsItemActivated()
Definition: imgui.cpp:4589
ImGui::IsWindowNavFocusable
IMGUI_API bool IsWindowNavFocusable(ImGuiWindow *window)
Definition: imgui.cpp:6575
ImDrawList::AddQuad
IMGUI_API void AddQuad(const ImVec2 &p1, const ImVec2 &p2, const ImVec2 &p3, const ImVec2 &p4, ImU32 col, float thickness=1.0f)
Definition: imgui_draw.cpp:1025
ImGuiColorEditFlags
int ImGuiColorEditFlags
Definition: imgui.h:144
ImGuiItemStatusFlags_HasDeactivated
@ ImGuiItemStatusFlags_HasDeactivated
Definition: imgui_internal.h:404
ImGui::SliderFloat
IMGUI_API bool SliderFloat(const char *label, float *v, float v_min, float v_max, const char *format="%.3f", float power=1.0f)
Definition: imgui_widgets.cpp:2619
IM_NEW
#define IM_NEW(_TYPE)
Definition: imgui.h:1214
ImGuiStyle::ChildBorderSize
float ChildBorderSize
Definition: imgui.h:1300
ImGuiWindowFlags_MenuBar
@ ImGuiWindowFlags_MenuBar
Definition: imgui.h:724
ImGuiContext::HoveredIdNotActiveTimer
float HoveredIdNotActiveTimer
Definition: imgui_internal.h:894
ImRect::Add
void Add(const ImVec2 &p)
Definition: imgui_internal.h:562
ImDrawList::_OwnerName
const char * _OwnerName
Definition: imgui.h:1891
ImGui::SliderBehavior
IMGUI_API bool SliderBehavior(const ImRect &bb, ImGuiID id, ImGuiDataType data_type, void *v, const void *v_min, const void *v_max, const char *format, float power, ImGuiSliderFlags flags, ImRect *out_grab_bb)
Definition: imgui_widgets.cpp:2475
ImLineClosestPoint
IMGUI_API ImVec2 ImLineClosestPoint(const ImVec2 &a, const ImVec2 &b, const ImVec2 &p)
Definition: imgui.cpp:1285
ImGuiLayoutType_
ImGuiLayoutType_
Definition: imgui_internal.h:424
ImGuiWindow::ScrollTarget
ImVec2 ScrollTarget
Definition: imgui_internal.h:1298
ImFontConfig::GlyphMaxAdvanceX
float GlyphMaxAdvanceX
Definition: imgui.h:2016
ImGuiNextItemDataFlags_
ImGuiNextItemDataFlags_
Definition: imgui_internal.h:816
ImFontConfig::GlyphMinAdvanceX
float GlyphMinAdvanceX
Definition: imgui.h:2015
ImGuiContext::OpenPopupStack
ImVector< ImGuiPopupData > OpenPopupStack
Definition: imgui_internal.h:924
ImGuiWindowSettings::ImGuiWindowSettings
ImGuiWindowSettings()
Definition: imgui_internal.h:670
ImGuiKey_DownArrow
@ ImGuiKey_DownArrow
Definition: imgui.h:941
ImGuiTreeNodeFlags_OpenOnDoubleClick
@ ImGuiTreeNodeFlags_OpenOnDoubleClick
Definition: imgui.h:789
ImGui::ListBox
IMGUI_API bool ListBox(const char *label, int *current_item, const char *const items[], int items_count, int height_in_items=-1)
Definition: imgui_widgets.cpp:5684
ImPool
Definition: imgui_internal.h:288
ImGuiSliderFlags_Vertical
@ ImGuiSliderFlags_Vertical
Definition: imgui_internal.h:336
ImPool::GetByKey
T * GetByKey(ImGuiID key)
Definition: imgui_internal.h:296
ImGui::GetVersion
const IMGUI_API char * GetVersion()
Definition: imgui.cpp:3235
ImGuiWindowFlags_NoNav
@ ImGuiWindowFlags_NoNav
Definition: imgui.h:734
ImFontConfig::RasterizerMultiply
float RasterizerMultiply
Definition: imgui.h:2019
ImVec2ih::x
short x
Definition: imgui_internal.h:534
ImGuiItemStatusFlags_Deactivated
@ ImGuiItemStatusFlags_Deactivated
Definition: imgui_internal.h:405
ImGuiStyle::FrameBorderSize
float FrameBorderSize
Definition: imgui.h:1305
ImGuiTabBarFlags_TabListPopupButton
@ ImGuiTabBarFlags_TabListPopupButton
Definition: imgui.h:837
ImGuiStyleMod
Definition: imgui_internal.h:591
ImGuiContext::PlatformImePos
ImVec2 PlatformImePos
Definition: imgui_internal.h:1029
ImBoolVector::SetBit
void SetBit(int n, bool v)
Definition: imgui_internal.h:281
ImGuiStyle::WindowRounding
float WindowRounding
Definition: imgui.h:1294
ImGuiSeparatorFlags_None
@ ImGuiSeparatorFlags_None
Definition: imgui_internal.h:376
ExampleAppLog::ExampleAppLog
ExampleAppLog()
Definition: imgui_demo.cpp:3854
ImGuiSettingsHandler::UserData
void * UserData
Definition: imgui_internal.h:680
ImGui::ActivateItem
IMGUI_API void ActivateItem(ImGuiID id)
Definition: imgui.cpp:6950
ImGuiWindow::InnerClipRect
ImRect InnerClipRect
Definition: imgui_internal.h:1335
ImGuiWindow::TitleBarRect
ImRect TitleBarRect() const
Definition: imgui_internal.h:1380
ImGuiWindowTempData::GroupStack
ImVector< ImGuiGroupData > GroupStack
Definition: imgui_internal.h:1238
ImGuiDataTypeInfo
Definition: imgui_internal.h:576
ImGuiCol_TitleBg
@ ImGuiCol_TitleBg
Definition: imgui.h:1037
ImGuiColorEditFlags_NoLabel
@ ImGuiColorEditFlags_NoLabel
Definition: imgui.h:1134
ImGui::SplitterBehavior
IMGUI_API bool SplitterBehavior(const ImRect &bb, ImGuiID id, ImGuiAxis axis, float *size1, float *size2, float min_size1, float min_size2, float hover_extend=0.0f, float hover_visibility_delay=0.0f)
Definition: imgui_widgets.cpp:1298
ImGui::IsDragDropPayloadBeingAccepted
IMGUI_API bool IsDragDropPayloadBeingAccepted()
Definition: imgui.cpp:9106
ExampleAppDocuments::ExampleAppDocuments
ExampleAppDocuments()
Definition: imgui_demo.cpp:4533
ImGuiDir_Up
@ ImGuiDir_Up
Definition: imgui.h:929
ImGuiContext::NavInitRequest
bool NavInitRequest
Definition: imgui_internal.h:954
ImGuiContext::NavId
ImGuiID NavId
Definition: imgui_internal.h:929
ImGuiTabBarFlags_FittingPolicyMask_
@ ImGuiTabBarFlags_FittingPolicyMask_
Definition: imgui.h:843
ImBoolVector::ImBoolVector
ImBoolVector()
Definition: imgui_internal.h:277
ImDrawList::AddImageQuad
IMGUI_API void AddImageQuad(ImTextureID user_texture_id, const ImVec2 &p1, const ImVec2 &p2, const ImVec2 &p3, const ImVec2 &p4, const ImVec2 &uv1=ImVec2(0, 0), const ImVec2 &uv2=ImVec2(1, 0), const ImVec2 &uv3=ImVec2(1, 1), const ImVec2 &uv4=ImVec2(0, 1), ImU32 col=IM_COL32_WHITE)
Definition: imgui_draw.cpp:1153
ImGuiDataType_Double
@ ImGuiDataType_Double
Definition: imgui.h:919
ImFileLoadToMemory
IMGUI_API void * ImFileLoadToMemory(const char *filename, const char *file_open_mode, size_t *out_file_size=NULL, int padding_bytes=0)
Definition: imgui.cpp:1581
ImRect::TranslateX
void TranslateX(float dx)
Definition: imgui_internal.h:567
ImStreolRange
const IMGUI_API char * ImStreolRange(const char *str, const char *str_end)
Definition: imgui.cpp:1393
ImGuiTabBar::ScrollingSpeed
float ScrollingSpeed
Definition: imgui_internal.h:1449
ImGuiWindowTempData::CursorStartPos
ImVec2 CursorStartPos
Definition: imgui_internal.h:1204
ImGuiStyle::TabBorderSize
float TabBorderSize
Definition: imgui.h:1316
ImGui::CalcItemSize
IMGUI_API ImVec2 CalcItemSize(ImVec2 size, float default_w, float default_h)
Definition: imgui.cpp:6214
ImFontAtlas::ClearFonts
IMGUI_API void ClearFonts()
Definition: imgui_draw.cpp:1545
ImGui::BringWindowToDisplayFront
IMGUI_API void BringWindowToDisplayFront(ImGuiWindow *window)
Definition: imgui.cpp:6059
ImGui::CreateNewWindowSettings
IMGUI_API ImGuiWindowSettings * CreateNewWindowSettings(const char *name)
Definition: imgui.cpp:9389
ImGuiItemFlags_ButtonRepeat
@ ImGuiItemFlags_ButtonRepeat
Definition: imgui_internal.h:387
ImGuiTabItem
Definition: imgui_internal.h:1417
ImFontAtlas::TexGlyphPadding
int TexGlyphPadding
Definition: imgui.h:2157
ImGuiStyle::ItemSpacing
ImVec2 ItemSpacing
Definition: imgui.h:1306
ImGuiColorEditFlags__OptionsDefault
@ ImGuiColorEditFlags__OptionsDefault
Definition: imgui.h:1155
ImGui::FocusTopMostWindowUnderOne
IMGUI_API void FocusTopMostWindowUnderOne(ImGuiWindow *under_this_window, ImGuiWindow *ignore_window)
Definition: imgui.cpp:6127
ImGuiStyle::CurveTessellationTol
float CurveTessellationTol
Definition: imgui.h:1325
ImGui::RenderArrow
IMGUI_API void RenderArrow(ImDrawList *draw_list, ImVec2 pos, ImU32 col, ImGuiDir dir, float scale=1.0f)
Definition: imgui.cpp:2581
ImPool::Add
T * Add()
Definition: imgui_internal.h:302
ImFontAtlasBuildWithStbTruetype
bool ImFontAtlasBuildWithStbTruetype(ImFontAtlas *atlas)
Definition: imgui_draw.cpp:1845
ImGuiNextWindowData::SizeCallback
ImGuiSizeCallback SizeCallback
Definition: imgui_internal.h:807
ImGui::UpdateWindowParentAndRootLinks
IMGUI_API void UpdateWindowParentAndRootLinks(ImGuiWindow *window, ImGuiWindowFlags flags, ImGuiWindow *parent_window)
Definition: imgui.cpp:5375
ImGuiTabBarFlags_FittingPolicyDefault_
@ ImGuiTabBarFlags_FittingPolicyDefault_
Definition: imgui.h:844
ImGuiWindowFlags_NoScrollWithMouse
@ ImGuiWindowFlags_NoScrollWithMouse
Definition: imgui.h:718
ImGuiSizeCallbackData
Definition: imgui.h:1510
ImGui::NavMoveRequestButNoResultYet
IMGUI_API bool NavMoveRequestButNoResultYet()
Definition: imgui.cpp:8068
ImGuiCol_WindowBg
@ ImGuiCol_WindowBg
Definition: imgui.h:1029
ExampleAppConsole::Items
ImVector< char * > Items
Definition: imgui_demo.cpp:3520
ImGuiContext::LogBuffer
ImGuiTextBuffer LogBuffer
Definition: imgui_internal.h:1043
ImGui::IsMouseDoubleClicked
IMGUI_API bool IsMouseDoubleClicked(int button)
Definition: imgui.cpp:4483
ImGuiGroupData::BackupIndent
ImVec1 BackupIndent
Definition: imgui_internal.h:605
ImDrawListSharedData::TexUvWhitePixel
ImVec2 TexUvWhitePixel
Definition: imgui_internal.h:745
ImGui::GetScrollMaxY
IMGUI_API float GetScrollMaxY()
Definition: imgui.cpp:7274
ImGuiWindow::Name
char * Name
Definition: imgui_internal.h:1282
ImGuiFocusedFlags_RootWindow
@ ImGuiFocusedFlags_RootWindow
Definition: imgui.h:862
ImFontAtlas::ClearTexData
IMGUI_API void ClearTexData()
Definition: imgui_draw.cpp:1534
stbrp_rect::x
stbrp_coord x
Definition: imstb_rectpack.h:124
ImGuiColumns::ImGuiColumns
ImGuiColumns()
Definition: imgui_internal.h:725
ImGui::Separator
IMGUI_API void Separator()
Definition: imgui_widgets.cpp:1284
ImDrawVert::col
ImU32 col
Definition: imgui.h:1817
ImRect::GetTR
ImVec2 GetTR() const
Definition: imgui_internal.h:556
ImTextCountCharsFromUtf8
IMGUI_API int ImTextCountCharsFromUtf8(const char *in_text, const char *in_text_end)
Definition: imgui.cpp:1705
ImGuiContext::ColorPickerRef
ImVec4 ColorPickerRef
Definition: imgui_internal.h:1016
ImGuiStyle::ColorButtonPosition
ImGuiDir ColorButtonPosition
Definition: imgui.h:1317
ImGui::GetTopMostPopupModal
IMGUI_API ImGuiWindow * GetTopMostPopupModal()
Definition: imgui.cpp:7443
ImGuiItemStatusFlags_HasDisplayRect
@ ImGuiItemStatusFlags_HasDisplayRect
Definition: imgui_internal.h:401
ImDrawListSharedData::ImDrawListSharedData
ImDrawListSharedData()
Definition: imgui_draw.cpp:346
ImGui::LogToTTY
IMGUI_API void LogToTTY(int auto_open_depth=-1)
Definition: imgui.cpp:9262
ImGui::SetNextWindowSizeConstraints
IMGUI_API void SetNextWindowSizeConstraints(const ImVec2 &size_min, const ImVec2 &size_max, ImGuiSizeCallback custom_callback=NULL, void *custom_callback_data=NULL)
Definition: imgui.cpp:6750
ImGuiContext::NavInputSource
ImGuiInputSource NavInputSource
Definition: imgui_internal.h:938
stbtt_PackFontRangesRenderIntoRects
STBTT_DEF int stbtt_PackFontRangesRenderIntoRects(stbtt_pack_context *spc, const stbtt_fontinfo *info, stbtt_pack_range *ranges, int num_ranges, stbrp_rect *rects)
ExampleAppLog::Draw
void Draw(const char *title, bool *p_open=NULL)
Definition: imgui_demo.cpp:3879
ImGui::SetNextItemWidth
IMGUI_API void SetNextItemWidth(float item_width)
Definition: imgui.cpp:6153
ImGui::GetColumnOffsetFromNorm
IMGUI_API float GetColumnOffsetFromNorm(const ImGuiColumns *columns, float offset_norm)
Definition: imgui_widgets.cpp:7204
ImRect::Contains
bool Contains(const ImRect &r) const
Definition: imgui_internal.h:560
ImGuiPopupPositionPolicy_Default
@ ImGuiPopupPositionPolicy_Default
Definition: imgui_internal.h:519
ImGui::InputTextEx
IMGUI_API bool InputTextEx(const char *label, const char *hint, char *buf, int buf_size, const ImVec2 &size_arg, ImGuiInputTextFlags flags, ImGuiInputTextCallback callback=NULL, void *user_data=NULL)
Definition: imgui_widgets.cpp:3381
IM_FMTLIST
#define IM_FMTLIST(FMT)
Definition: imgui.h:73
ImPool::Remove
void Remove(ImGuiID key, const T *p)
Definition: imgui_internal.h:303
ImGuiStyleVar_IndentSpacing
@ ImGuiStyleVar_IndentSpacing
Definition: imgui.h:1107
ImFontAtlas::AddCustomRectRegular
IMGUI_API int AddCustomRectRegular(unsigned int id, int width, int height)
Definition: imgui_draw.cpp:1726
ImRect::Overlaps
bool Overlaps(const ImRect &r) const
Definition: imgui_internal.h:561
ImGuiInputTextCallbackData::BufTextLen
int BufTextLen
Definition: imgui.h:1493
ImDrawList::ClearFreeMemory
IMGUI_API void ClearFreeMemory()
Definition: imgui_draw.cpp:378
ImDrawList::AddCircle
IMGUI_API void AddCircle(const ImVec2 &center, float radius, ImU32 col, int num_segments=12, float thickness=1.0f)
Definition: imgui_draw.cpp:1071
ImGuiTreeNodeFlags_Bullet
@ ImGuiTreeNodeFlags_Bullet
Definition: imgui.h:792
ImGuiColumns::Count
int Count
Definition: imgui_internal.h:716
ImGui::DragFloat4
IMGUI_API bool DragFloat4(const char *label, float v[4], float v_speed=1.0f, float v_min=0.0f, float v_max=0.0f, const char *format="%.3f", float power=1.0f)
Definition: imgui_widgets.cpp:2179
stbrp_coord
unsigned short stbrp_coord
Definition: imstb_rectpack.h:87
ImGuiStyleMod::BackupFloat
float BackupFloat[2]
Definition: imgui_internal.h:594
ImGuiCol_ScrollbarGrabHovered
@ ImGuiCol_ScrollbarGrabHovered
Definition: imgui.h:1043
ImGuiComboFlags_NoPreview
@ ImGuiComboFlags_NoPreview
Definition: imgui.h:827
ImGuiButtonFlags_FlattenChildren
@ ImGuiButtonFlags_FlattenChildren
Definition: imgui_internal.h:321
ImGuiWindowTempData::LastItemRect
ImRect LastItemRect
Definition: imgui_internal.h:1214
ImGuiItemFlags_NoTabStop
@ ImGuiItemFlags_NoTabStop
Definition: imgui_internal.h:386
ImGuiContext::BeginPopupStack
ImVector< ImGuiPopupData > BeginPopupStack
Definition: imgui_internal.h:925
ImGui::IsNavInputPressedAnyOfTwo
bool IsNavInputPressedAnyOfTwo(ImGuiNavInput n1, ImGuiNavInput n2, ImGuiInputReadMode mode)
Definition: imgui_internal.h:1591
ImGuiWindowFlags_NoResize
@ ImGuiWindowFlags_NoResize
Definition: imgui.h:715
ImGui::ButtonEx
IMGUI_API bool ButtonEx(const char *label, const ImVec2 &size_arg=ImVec2(0, 0), ImGuiButtonFlags flags=0)
Definition: imgui_widgets.cpp:604
ImGuiNextWindowDataFlags_None
@ ImGuiNextWindowDataFlags_None
Definition: imgui_internal.h:784
ImFontAtlas::GetGlyphRangesChineseFull
const IMGUI_API ImWchar * GetGlyphRangesChineseFull()
Definition: imgui_draw.cpp:2247
ImGuiTabBarFlags_AutoSelectNewTabs
@ ImGuiTabBarFlags_AutoSelectNewTabs
Definition: imgui.h:836
stbtt_pack_range
Definition: imstb_truetype.h:620
ImGui::BeginDragDropTarget
IMGUI_API bool BeginDragDropTarget()
Definition: imgui.cpp:9080
ImGuiNextWindowData::Flags
ImGuiNextWindowDataFlags Flags
Definition: imgui_internal.h:797
ImGuiGroupData::BackupCursorPos
ImVec2 BackupCursorPos
Definition: imgui_internal.h:603
ImGuiCol_ButtonHovered
@ ImGuiCol_ButtonHovered
Definition: imgui.h:1049
ImGuiInputTextState::ClearFreeMemory
void ClearFreeMemory()
Definition: imgui_internal.h:648
ImDrawList::AddDrawCmd
IMGUI_API void AddDrawCmd()
Definition: imgui_draw.cpp:406
ImGuiTabItem::Width
float Width
Definition: imgui_internal.h:1425
ImGui::LogFinish
IMGUI_API void LogFinish()
Definition: imgui.cpp:9313
ImGuiNextWindowDataFlags_HasBgAlpha
@ ImGuiNextWindowDataFlags_HasBgAlpha
Definition: imgui_internal.h:791
ImGuiButtonFlags_
ImGuiButtonFlags_
Definition: imgui_internal.h:313
ImGui::DragFloatRange2
IMGUI_API bool DragFloatRange2(const char *label, float *v_current_min, float *v_current_max, float v_speed=1.0f, float v_min=0.0f, float v_max=0.0f, const char *format="%.3f", const char *format_max=NULL, float power=1.0f)
Definition: imgui_widgets.cpp:2184
ImVec4::y
float y
Definition: imgui.h:194
ImGuiColorEditFlags_AlphaPreviewHalf
@ ImGuiColorEditFlags_AlphaPreviewHalf
Definition: imgui.h:1141
IM_FREE
#define IM_FREE(_PTR)
Definition: imgui.h:1212
ImGuiLogType_None
@ ImGuiLogType_None
Definition: imgui_internal.h:432
ImRect::GetSize
ImVec2 GetSize() const
Definition: imgui_internal.h:552
ImGui::Image
IMGUI_API void Image(ImTextureID user_texture_id, const ImVec2 &size, const ImVec2 &uv0=ImVec2(0, 0), const ImVec2 &uv1=ImVec2(1, 1), const ImVec4 &tint_col=ImVec4(1, 1, 1, 1), const ImVec4 &border_col=ImVec4(0, 0, 0, 0))
Definition: imgui_widgets.cpp:910
ImGuiIO::MouseClickedPos
ImVec2 MouseClickedPos[5]
Definition: imgui.h:1449
ImGuiTabBar::VisibleTabWasSubmitted
bool VisibleTabWasSubmitted
Definition: imgui_internal.h:1454
ImGuiContext::NavInitRequestFromMove
bool NavInitRequestFromMove
Definition: imgui_internal.h:955
IM_COL32
#define IM_COL32(R, G, B, A)
Definition: imgui.h:1740
ImDrawList::AddRectFilled
IMGUI_API void AddRectFilled(const ImVec2 &p_min, const ImVec2 &p_max, ImU32 col, float rounding=0.0f, ImDrawCornerFlags rounding_corners=ImDrawCornerFlags_All)
Definition: imgui_draw.cpp:993
ImGuiContext::CurrentWindow
ImGuiWindow * CurrentWindow
Definition: imgui_internal.h:881
ImGuiContext::NavWindowingList
ImGuiWindow * NavWindowingList
Definition: imgui_internal.h:943
ImGuiColumns::OffMaxX
float OffMaxX
Definition: imgui_internal.h:717
ImFontAtlas::GetGlyphRangesDefault
const IMGUI_API ImWchar * GetGlyphRangesDefault()
Definition: imgui_draw.cpp:2225
ImDrawList::PushClipRectFullScreen
IMGUI_API void PushClipRectFullScreen()
Definition: imgui_draw.cpp:494
ImFontConfig::OversampleH
int OversampleH
Definition: imgui.h:2009
ImGuiPtrOrIndex::Ptr
void * Ptr
Definition: imgui_internal.h:846
ImDrawData::DeIndexAllBuffers
IMGUI_API void DeIndexAllBuffers()
Definition: imgui_draw.cpp:1327
ImGui::ShowFontSelector
IMGUI_API void ShowFontSelector(const char *label)
Definition: imgui_demo.cpp:3141
ImGui::ClosePopupToLevel
IMGUI_API void ClosePopupToLevel(int remaining, bool restore_focus_to_window_under_popup)
Definition: imgui.cpp:7556
ImGui::StartMouseMovingWindow
IMGUI_API void StartMouseMovingWindow(ImGuiWindow *window)
Definition: imgui.cpp:3344
ImGuiWindow::DrawListInst
ImDrawList DrawListInst
Definition: imgui_internal.h:1350
ImGui::RenderFrameBorder
IMGUI_API void RenderFrameBorder(ImVec2 p_min, ImVec2 p_max, float rounding=0.0f)
Definition: imgui.cpp:2568
ImGuiCol_SliderGrabActive
@ ImGuiCol_SliderGrabActive
Definition: imgui.h:1047
stbtt_aligned_quad::t1
float t1
Definition: imstb_truetype.h:547
ImGuiWindow::Active
bool Active
Definition: imgui_internal.h:1302
stbtt_GetPackedQuad
STBTT_DEF void stbtt_GetPackedQuad(const stbtt_packedchar *chardata, int pw, int ph, int char_index, float *xpos, float *ypos, stbtt_aligned_quad *q, int align_to_integer)
ImGuiContext::FramerateSecPerFrame
float FramerateSecPerFrame[120]
Definition: imgui_internal.h:1055
ImGuiNextItemData
Definition: imgui_internal.h:823
ImGuiNextItemData::Width
float Width
Definition: imgui_internal.h:826
ImFont::ContainerAtlas
ImFontAtlas * ContainerAtlas
Definition: imgui.h:2194
ImGuiInputTextFlags_CallbackHistory
@ ImGuiInputTextFlags_CallbackHistory
Definition: imgui.h:762
ImGuiTabBarFlags_NoCloseWithMiddleMouseButton
@ ImGuiTabBarFlags_NoCloseWithMiddleMouseButton
Definition: imgui.h:838
ImGuiCol_Separator
@ ImGuiCol_Separator
Definition: imgui.h:1054
ImGuiColorEditFlags_AlphaPreview
@ ImGuiColorEditFlags_AlphaPreview
Definition: imgui.h:1140
ImGui::RenderFrame
IMGUI_API void RenderFrame(ImVec2 p_min, ImVec2 p_max, ImU32 fill_col, bool border=true, float rounding=0.0f)
Definition: imgui.cpp:2555
ImGuiColumnsFlags_NoPreserveWidths
@ ImGuiColumnsFlags_NoPreserveWidths
Definition: imgui_internal.h:351
ImGuiButtonFlags_NoHoldingActiveID
@ ImGuiButtonFlags_NoHoldingActiveID
Definition: imgui_internal.h:327
ImGui::FindWindowSettings
IMGUI_API ImGuiWindowSettings * FindWindowSettings(ImGuiID id)
Definition: imgui.cpp:9405
ImGui::IsItemDeactivated
IMGUI_API bool IsItemDeactivated()
Definition: imgui.cpp:4601
ImGuiItemHoveredDataBackup::LastItemId
ImGuiID LastItemId
Definition: imgui_internal.h:1388
stbtt_pack_context::pixels
unsigned char * pixels
Definition: imstb_truetype.h:688
ImGui::TextUnformatted
IMGUI_API void TextUnformatted(const char *text, const char *text_end=NULL)
Definition: imgui_widgets.cpp:233
ImGuiContext::WheelingWindowRefMousePos
ImVec2 WheelingWindowRefMousePos
Definition: imgui_internal.h:886
IM_PI
#define IM_PI
Definition: imgui_internal.h:137
ImGuiStyle::AntiAliasedFill
bool AntiAliasedFill
Definition: imgui.h:1324
ImGuiContext::NavMoveDirLast
ImGuiDir NavMoveDirLast
Definition: imgui_internal.h:962
ImGuiInputTextCallbackData::BufSize
int BufSize
Definition: imgui.h:1494
ImGui::GetMouseCursor
IMGUI_API ImGuiMouseCursor GetMouseCursor()
Definition: imgui.cpp:4558
ImGuiPlotType
ImGuiPlotType
Definition: imgui_internal.h:447
ImGui::Indent
IMGUI_API void Indent(float indent_w=0.0f)
Definition: imgui.cpp:7170
ImGui::BeginDragDropTargetCustom
IMGUI_API bool BeginDragDropTargetCustom(const ImRect &bb, ImGuiID id)
Definition: imgui.cpp:9054
ImGui::PopColumnsBackground
IMGUI_API void PopColumnsBackground()
Definition: imgui_widgets.cpp:7333
ImGuiWindow::MemoryDrawListVtxCapacity
int MemoryDrawListVtxCapacity
Definition: imgui_internal.h:1362
ImGui::SetTabItemClosed
IMGUI_API void SetTabItemClosed(const char *tab_or_docked_window_label)
Definition: imgui_widgets.cpp:7067
ImGuiTextFlags
int ImGuiTextFlags
Definition: imgui_internal.h:105
ImGui::EndChildFrame
IMGUI_API void EndChildFrame()
Definition: imgui.cpp:4818
ImGui::UpdateMouseMovingWindowNewFrame
IMGUI_API void UpdateMouseMovingWindowNewFrame()
Definition: imgui.cpp:3364
ImPool::~ImPool
~ImPool()
Definition: imgui_internal.h:295
ImColor
Definition: imgui.h:1749
ImGuiTabBarFlagsPrivate_
ImGuiTabBarFlagsPrivate_
Definition: imgui_internal.h:1403
ImGui::SliderInt3
IMGUI_API bool SliderInt3(const char *label, int v[3], int v_min, int v_max, const char *format="%d")
Definition: imgui_widgets.cpp:2659
ImFont::EllipsisChar
ImWchar EllipsisChar
Definition: imgui.h:2198
ImGuiCol_ResizeGrip
@ ImGuiCol_ResizeGrip
Definition: imgui.h:1057
ImGui::BeginPopupContextWindow
IMGUI_API bool BeginPopupContextWindow(const char *str_id=NULL, int mouse_button=1, bool also_over_items=true)
Definition: imgui.cpp:7702
ImGui::Initialize
IMGUI_API void Initialize(ImGuiContext *context)
Definition: imgui.cpp:3926
ExampleAppConsole::TextEditCallback
int TextEditCallback(ImGuiInputTextCallbackData *data)
Definition: imgui_demo.cpp:3732
ImGui::SliderInt
IMGUI_API bool SliderInt(const char *label, int *v, int v_min, int v_max, const char *format="%d")
Definition: imgui_widgets.cpp:2649
ImGuiNextItemDataFlags_HasOpen
@ ImGuiNextItemDataFlags_HasOpen
Definition: imgui_internal.h:820
ImGui::PushTextWrapPos
IMGUI_API void PushTextWrapPos(float wrap_local_pos_x=0.0f)
Definition: imgui.cpp:6306
ImGuiInputTextCallbackData::EventFlag
ImGuiInputTextFlags EventFlag
Definition: imgui.h:1483
ImGui::IsClippedEx
IMGUI_API bool IsClippedEx(const ImRect &bb, ImGuiID id, bool clip_even_when_logged)
Definition: imgui.cpp:3136
ImGui::GetWindowWidth
IMGUI_API float GetWindowWidth()
Definition: imgui.cpp:6580
ImDrawCornerFlags_All
@ ImDrawCornerFlags_All
Definition: imgui.h:1862
ImTextCharFromUtf8
IMGUI_API int ImTextCharFromUtf8(unsigned int *out_char, const char *in_text, const char *in_text_end)
Definition: imgui.cpp:1628
ImGuiTabItemFlags_UnsavedDocument
@ ImGuiTabItemFlags_UnsavedDocument
Definition: imgui.h:851
ImGuiStyle::PopupBorderSize
float PopupBorderSize
Definition: imgui.h:1302
ImGui::TreePushOverrideID
IMGUI_API void TreePushOverrideID(ImGuiID id)
Definition: imgui_widgets.cpp:5372
ImGuiWindow::WindowRounding
float WindowRounding
Definition: imgui_internal.h:1291
ImGuiContext::MouseCursor
ImGuiMouseCursor MouseCursor
Definition: imgui_internal.h:983
ImDrawListSharedData
Definition: imgui_internal.h:743
ImGui::IsMouseDragging
IMGUI_API bool IsMouseDragging(int button=0, float lock_threshold=-1.0f)
Definition: imgui.cpp:4500
IM_COL32_A_MASK
#define IM_COL32_A_MASK
Definition: imgui.h:1738
ImGuiWindowFlags
int ImGuiWindowFlags
Definition: imgui.h:155
ImGuiColumns::ID
ImGuiID ID
Definition: imgui_internal.h:711
ImGuiWindowTempData::NavLayerActiveMask
int NavLayerActiveMask
Definition: imgui_internal.h:1218
ImGuiDir_Left
@ ImGuiDir_Left
Definition: imgui.h:927
ImGuiLayoutType_Horizontal
@ ImGuiLayoutType_Horizontal
Definition: imgui_internal.h:426
ImGuiIO::KeyMap
int KeyMap[ImGuiKey_COUNT]
Definition: imgui.h:1354
ImGuiButtonFlags_None
@ ImGuiButtonFlags_None
Definition: imgui_internal.h:315
ImGui::PopFont
IMGUI_API void PopFont()
Definition: imgui.cpp:6260
ImGuiTabBar::NextSelectedTabId
ImGuiID NextSelectedTabId
Definition: imgui_internal.h:1437
ImGuiCol_BorderShadow
@ ImGuiCol_BorderShadow
Definition: imgui.h:1033
ImGui::IsItemVisible
IMGUI_API bool IsItemVisible()
Definition: imgui.cpp:4655
ImGuiContext::NavWindow
ImGuiWindow * NavWindow
Definition: imgui_internal.h:928
ImGui::StyleColorsClassic
IMGUI_API void StyleColorsClassic(ImGuiStyle *dst=NULL)
Definition: imgui_draw.cpp:231
ImGuiSizeCallbackData::UserData
void * UserData
Definition: imgui.h:1512
ImGui::LogBegin
IMGUI_API void LogBegin(ImGuiLogType type, int auto_open_depth)
Definition: imgui.cpp:9247
ImGuiWindow::IDStack
ImVector< ImGuiID > IDStack
Definition: imgui_internal.h:1328
ImGuiWindow::NameBufLen
int NameBufLen
Definition: imgui_internal.h:1293
ImRect::Expand
void Expand(const ImVec2 &amount)
Definition: imgui_internal.h:565
ImVector::erase
T * erase(const T *it)
Definition: imgui.h:1271
ImGui::TextColored
IMGUI_API void TextColored(const ImVec4 &col, const char *fmt,...) IM_FMTARGS(2)
Definition: imgui_widgets.cpp:257
ImGuiInputTextState::ClearSelection
void ClearSelection()
Definition: imgui_internal.h:657
ImGui::SetWindowPos
IMGUI_API void SetWindowPos(const ImVec2 &pos, ImGuiCond cond=0)
Definition: imgui.cpp:6618
ImGuiCol_ModalWindowDimBg
@ ImGuiCol_ModalWindowDimBg
Definition: imgui.h:1074
ImGuiIO::ConfigWindowsMemoryCompactTimer
float ConfigWindowsMemoryCompactTimer
Definition: imgui.h:1371
ImGui::ArrowButtonEx
IMGUI_API bool ArrowButtonEx(const char *str_id, ImGuiDir dir, ImVec2 size_arg, ImGuiButtonFlags flags)
Definition: imgui_widgets.cpp:684
ImGuiContext::ActiveIdClickOffset
ImVec2 ActiveIdClickOffset
Definition: imgui_internal.h:905
ImDrawList::PushTextureID
IMGUI_API void PushTextureID(ImTextureID texture_id)
Definition: imgui_draw.cpp:506
ImVector::Size
int Size
Definition: imgui.h:1229
ImFontAtlasBuildMultiplyRectAlpha8
IMGUI_API void ImFontAtlasBuildMultiplyRectAlpha8(const unsigned char table[256], unsigned char *pixels, int x, int y, int w, int h, int stride)
Definition: imgui_draw.cpp:1800
ImGui::SliderInt4
IMGUI_API bool SliderInt4(const char *label, int v[4], int v_min, int v_max, const char *format="%d")
Definition: imgui_widgets.cpp:2664
ImDrawData::ScaleClipRects
IMGUI_API void ScaleClipRects(const ImVec2 &fb_scale)
Definition: imgui_draw.cpp:1348
ImGuiContext::DebugItemPickerActive
bool DebugItemPickerActive
Definition: imgui_internal.h:1051
ImGui::InputFloat
IMGUI_API bool InputFloat(const char *label, float *v, float step=0.0f, float step_fast=0.0f, const char *format="%.3f", ImGuiInputTextFlags flags=0)
Definition: imgui_widgets.cpp:2975
ImGuiHoveredFlags_RootWindow
@ ImGuiHoveredFlags_RootWindow
Definition: imgui.h:874
ImGuiContext::TempBuffer
char TempBuffer[1024 *3+1]
Definition: imgui_internal.h:1061
ImRect::ImRect
ImRect(const ImVec2 &min, const ImVec2 &max)
Definition: imgui_internal.h:547
ImRect::GetBL
ImVec2 GetBL() const
Definition: imgui_internal.h:557
ImGuiContext::ActiveIdPreviousFrameIsAlive
bool ActiveIdPreviousFrameIsAlive
Definition: imgui_internal.h:909
ImGuiWindow::DrawList
ImDrawList * DrawList
Definition: imgui_internal.h:1349
ImGui::BeginTabItem
IMGUI_API bool BeginTabItem(const char *label, bool *p_open=NULL, ImGuiTabItemFlags flags=0)
Definition: imgui_widgets.cpp:6829
ImPool::Remove
void Remove(ImGuiID key, ImPoolIdx idx)
Definition: imgui_internal.h:304
ImGuiInputTextFlags_CharsHexadecimal
@ ImGuiInputTextFlags_CharsHexadecimal
Definition: imgui.h:756
ImFontAtlas::GetGlyphRangesJapanese
const IMGUI_API ImWchar * GetGlyphRangesJapanese()
Definition: imgui_draw.cpp:2343
ImGuiInputTextState::UserCallbackData
void * UserCallbackData
Definition: imgui_internal.h:644
ImGuiNavMoveResult
Definition: imgui_internal.h:768
ImGui::GetItemRectMax
IMGUI_API ImVec2 GetItemRectMax()
Definition: imgui.cpp:4683
ImGuiContext::NavInitResultId
ImGuiID NavInitResultId
Definition: imgui_internal.h:956
ImFileLoadToMemory
void * ImFileLoadToMemory(const char *filename, const char *file_open_mode, size_t *out_file_size, int padding_bytes)
Definition: imgui.cpp:1581
ImGui::PushItemWidth
IMGUI_API void PushItemWidth(float item_width)
Definition: imgui.cpp:6160
ImGuiItemStatusFlags_
ImGuiItemStatusFlags_
Definition: imgui_internal.h:397
ImGuiColumns::HostWorkRect
ImRect HostWorkRect
Definition: imgui_internal.h:722
ImGuiInputTextFlags_CallbackResize
@ ImGuiInputTextFlags_CallbackResize
Definition: imgui.h:773
ImGuiDragFlags_Vertical
@ ImGuiDragFlags_Vertical
Definition: imgui_internal.h:342
ImGui::TextDisabled
IMGUI_API void TextDisabled(const char *fmt,...) IM_FMTARGS(1)
Definition: imgui_widgets.cpp:272
ImBoolVector::Resize
void Resize(int sz)
Definition: imgui_internal.h:278
ImGuiWindow::Scroll
ImVec2 Scroll
Definition: imgui_internal.h:1296
ImGuiContext::LogFile
FILE * LogFile
Definition: imgui_internal.h:1042
ImStristr
const IMGUI_API char * ImStristr(const char *haystack, const char *haystack_end, const char *needle, const char *needle_end)
Definition: imgui.cpp:1406
ImDrawCornerFlags
int ImDrawCornerFlags
Definition: imgui.h:140
STB_TEXTEDIT_UNDOSTATECOUNT
#define STB_TEXTEDIT_UNDOSTATECOUNT
Definition: imgui_internal.h:119
IM_ASSERT
#define IM_ASSERT(_EXPR)
Definition: imgui.h:66
ImGuiSelectableFlags_DrawFillAvailWidth
@ ImGuiSelectableFlags_DrawFillAvailWidth
Definition: imgui_internal.h:363
ImGuiContext::NavMoveFromClampedRefRect
bool NavMoveFromClampedRefRect
Definition: imgui_internal.h:958
ImDrawVert::uv
ImVec2 uv
Definition: imgui.h:1816
ImGui::DebugStartItemPicker
void DebugStartItemPicker()
Definition: imgui_internal.h:1701
ImGuiWindow::ContentSizeExplicit
ImVec2 ContentSizeExplicit
Definition: imgui_internal.h:1289
ImGuiContext::WantCaptureKeyboardNextFrame
int WantCaptureKeyboardNextFrame
Definition: imgui_internal.h:1059
ImGuiSelectableFlags_SpanAllColumns
@ ImGuiSelectableFlags_SpanAllColumns
Definition: imgui.h:811
ImFontBuildSrcData
Definition: imgui_draw.cpp:1810
ImGuiStyle::ChildRounding
float ChildRounding
Definition: imgui.h:1299
ImGuiContext::FocusRequestCurrCounterTab
int FocusRequestCurrCounterTab
Definition: imgui_internal.h:972
ImDrawVert
Definition: imgui.h:1813
ImGuiIO::FontGlobalScale
float FontGlobalScale
Definition: imgui.h:1360
ImFontAtlasBuildWithStbTruetype
IMGUI_API bool ImFontAtlasBuildWithStbTruetype(ImFontAtlas *atlas)
Definition: imgui_draw.cpp:1845
IM_TABSIZE
#define IM_TABSIZE
Definition: imgui_internal.h:143
ImGuiContext::InputTextState
ImGuiInputTextState InputTextState
Definition: imgui_internal.h:1010
ImGui::PushID
IMGUI_API void PushID(const char *str_id)
Definition: imgui.cpp:6995
ImGuiColorEditFlags_NoSidePreview
@ ImGuiColorEditFlags_NoSidePreview
Definition: imgui.h:1135
ImGuiContext::HoveredWindow
ImGuiWindow * HoveredWindow
Definition: imgui_internal.h:882
ImGuiInputReadMode_Down
@ ImGuiInputReadMode_Down
Definition: imgui_internal.h:466
ImGuiSelectableFlags_PressedOnRelease
@ ImGuiSelectableFlags_PressedOnRelease
Definition: imgui_internal.h:362
ImGui::OpenPopupOnItemClick
IMGUI_API bool OpenPopupOnItemClick(const char *str_id=NULL, int mouse_button=1)
Definition: imgui.cpp:7505
ImGui::TreeNodeBehavior
IMGUI_API bool TreeNodeBehavior(ImGuiID id, ImGuiTreeNodeFlags flags, const char *label, const char *label_end=NULL)
Definition: imgui_widgets.cpp:5184
ImDrawCmd::ElemCount
unsigned int ElemCount
Definition: imgui.h:1793
ImGuiIO::ConfigWindowsResizeFromEdges
bool ConfigWindowsResizeFromEdges
Definition: imgui.h:1369
ImGuiTreeNodeFlagsPrivate_
ImGuiTreeNodeFlagsPrivate_
Definition: imgui_internal.h:369
ImDrawList::AddQuadFilled
IMGUI_API void AddQuadFilled(const ImVec2 &p1, const ImVec2 &p2, const ImVec2 &p3, const ImVec2 &p4, ImU32 col)
Definition: imgui_draw.cpp:1037
ImGuiIO::MouseWheel
float MouseWheel
Definition: imgui.h:1411
ImGui::EndGroup
IMGUI_API void EndGroup()
Definition: imgui.cpp:7088
ImVector::Data
T * Data
Definition: imgui.h:1231
ImDrawList::AddRect
IMGUI_API void AddRect(const ImVec2 &p_min, const ImVec2 &p_max, ImU32 col, float rounding=0.0f, ImDrawCornerFlags rounding_corners=ImDrawCornerFlags_All, float thickness=1.0f)
Definition: imgui_draw.cpp:982
ImGui::IsItemToggledSelection
IMGUI_API bool IsItemToggledSelection()
Definition: imgui.cpp:4631
ImGuiNextWindowData::BgAlphaVal
float BgAlphaVal
Definition: imgui_internal.h:809
ImGui::ListBoxHeader
IMGUI_API bool ListBoxHeader(const char *label, const ImVec2 &size=ImVec2(0, 0))
Definition: imgui_widgets.cpp:5614
ImGui::Button
IMGUI_API bool Button(const char *label, const ImVec2 &size=ImVec2(0, 0))
Definition: imgui_widgets.cpp:644
ImGui::InputInt
IMGUI_API bool InputInt(const char *label, int *v, int step=1, int step_fast=100, ImGuiInputTextFlags flags=0)
Definition: imgui_widgets.cpp:3031
ImGuiWindowTempData::LastItemId
ImGuiID LastItemId
Definition: imgui_internal.h:1212
ImGetDirQuadrantFromDelta
IMGUI_API ImGuiDir ImGetDirQuadrantFromDelta(float dx, float dy)
Definition: imgui.cpp:7835
ImGuiNextWindowDataFlags
int ImGuiNextWindowDataFlags
Definition: imgui_internal.h:102
ImGuiContext::WantTextInputNextFrame
int WantTextInputNextFrame
Definition: imgui_internal.h:1060
ImGui::RenderColorRectWithAlphaCheckerboard
IMGUI_API void RenderColorRectWithAlphaCheckerboard(ImVec2 p_min, ImVec2 p_max, ImU32 fill_col, float grid_step, ImVec2 grid_off, float rounding=0.0f, int rounding_corners_flags=~0)
Definition: imgui_widgets.cpp:4406
ImGuiContext::FontStack
ImVector< ImFont * > FontStack
Definition: imgui_internal.h:923
ImGui::ColorEditOptionsPopup
IMGUI_API void ColorEditOptionsPopup(const float *col, ImGuiColorEditFlags flags)
Definition: imgui_widgets.cpp:4952
ImGui::GetID
IMGUI_API ImGuiID GetID(const char *str_id)
Definition: imgui.cpp:7032
GetCurrentTextureId
#define GetCurrentTextureId()
Definition: imgui_draw.cpp:404
MyDocument::OpenPrev
bool OpenPrev
Definition: imgui_demo.cpp:4478
ImRect::GetCenter
ImVec2 GetCenter() const
Definition: imgui_internal.h:551
ImGuiNavMoveFlags_
ImGuiNavMoveFlags_
Definition: imgui_internal.h:491
ImGuiWindow::RootWindowForTitleBarHighlight
ImGuiWindow * RootWindowForTitleBarHighlight
Definition: imgui_internal.h:1353
ImGuiColorMod::Col
ImGuiCol Col
Definition: imgui_internal.h:586
ImGuiButtonFlags_DontClosePopups
@ ImGuiButtonFlags_DontClosePopups
Definition: imgui_internal.h:323
ImGui::RenderTextEllipsis
IMGUI_API void RenderTextEllipsis(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)
Definition: imgui.cpp:2477
ImGuiTabItemFlags
int ImGuiTabItemFlags
Definition: imgui.h:153
ImGuiContext::CurrentTabBar
ImGuiTabBar * CurrentTabBar
Definition: imgui_internal.h:1003
name
ARPHIC PUBLIC LICENSE Ltd Yung Chi Taiwan All rights reserved except as specified below Everyone is permitted to copy and distribute verbatim copies of this license but changing it is forbidden Preamble The licenses for most software are designed to take away your freedom to share and change it By the ARPHIC PUBLIC LICENSE specifically permits and encourages you to use this provided that you give the recipients all the rights that we gave you and make sure they can get the modifications of this software Legal Terms Font means the TrueType fonts AR PL Mingti2L AR PL KaitiM AR PL KaitiM and the derivatives of those fonts created through any modification including modifying reordering converting changing font name
Definition: ARPHICPL.TXT:16
ImGuiGroupData::BackupActiveIdIsAlive
ImGuiID BackupActiveIdIsAlive
Definition: imgui_internal.h:609
ImGuiIO::DisplaySize
ImVec2 DisplaySize
Definition: imgui.h:1346
ImStrTrimBlanks
IMGUI_API void ImStrTrimBlanks(char *str)
Definition: imgui.cpp:1429
ImGuiContext::NavMousePosDirty
bool NavMousePosDirty
Definition: imgui_internal.h:950
ImDrawList::PushClipRect
IMGUI_API void PushClipRect(ImVec2 clip_rect_min, ImVec2 clip_rect_max, bool intersect_with_current_clip_rect=false)
Definition: imgui_draw.cpp:476
ImGuiWindow::ParentWindow
ImGuiWindow * ParentWindow
Definition: imgui_internal.h:1351
ImGuiNavMoveResult::Window
ImGuiWindow * Window
Definition: imgui_internal.h:772
ImFontAtlas::ClearInputData
IMGUI_API void ClearInputData()
Definition: imgui_draw.cpp:1511
ImGui::LogText
IMGUI_API void LogText(const char *fmt,...) IM_FMTARGS(1)
Definition: imgui.cpp:9179
ImGuiNextWindowData
Definition: imgui_internal.h:795
ImGuiContext::NavMoveResultOther
ImGuiNavMoveResult NavMoveResultOther
Definition: imgui_internal.h:966
stbtt_aligned_quad::s1
float s1
Definition: imstb_truetype.h:547
ImFontGlyphRangesBuilder::AddText
IMGUI_API void AddText(const char *text, const char *text_end=NULL)
Definition: imgui_draw.cpp:2447
ImGuiHoveredFlags_AllowWhenBlockedByPopup
@ ImGuiHoveredFlags_AllowWhenBlockedByPopup
Definition: imgui.h:876
ImGui::ShowAboutWindow
IMGUI_API void ShowAboutWindow(bool *p_open=NULL)
Definition: imgui_demo.cpp:2987
ExampleAppConsole::ClearLog
void ClearLog()
Definition: imgui_demo.cpp:3554
ImGui::SetNavIDWithRectRel
IMGUI_API void SetNavIDWithRectRel(ImGuiID id, int nav_layer, const ImRect &rect_rel)
Definition: imgui.cpp:2844
ImGuiWindowFlags_NoFocusOnAppearing
@ ImGuiWindowFlags_NoFocusOnAppearing
Definition: imgui.h:726
ImGuiWindowSettings::Size
ImVec2ih Size
Definition: imgui_internal.h:667
ImGuiTabBar::OffsetNextTab
float OffsetNextTab
Definition: imgui_internal.h:1445
ImGui::SetScrollY
IMGUI_API void SetScrollY(float scroll_y)
Definition: imgui.cpp:7287
ImGuiNextWindowDataFlags_HasContentSize
@ ImGuiNextWindowDataFlags_HasContentSize
Definition: imgui_internal.h:787
ImGui::BeginPopup
IMGUI_API bool BeginPopup(const char *str_id, ImGuiWindowFlags flags=0)
Definition: imgui.cpp:7633
ImGuiContext::PrivateClipboard
ImVector< char > PrivateClipboard
Definition: imgui_internal.h:1022
ImGuiContext::WindowsFocusOrder
ImVector< ImGuiWindow * > WindowsFocusOrder
Definition: imgui_internal.h:876
MyDocument::DoSave
void DoSave()
Definition: imgui_demo.cpp:4494
ImGuiCol_COUNT
@ ImGuiCol_COUNT
Definition: imgui.h:1075
ImGui::InputDouble
IMGUI_API bool InputDouble(const char *label, double *v, double step=0.0, double step_fast=0.0, const char *format="%.6f", ImGuiInputTextFlags flags=0)
Definition: imgui_widgets.cpp:3053
ImGuiContext::ScrollbarClickDeltaToGrabCenter
float ScrollbarClickDeltaToGrabCenter
Definition: imgui_internal.h:1020
ImGuiCol_PlotHistogram
@ ImGuiCol_PlotHistogram
Definition: imgui.h:1067
ImGuiTextBuffer::appendfv
IMGUI_API void appendfv(const char *fmt, va_list args) IM_FMTLIST(2)
Definition: imgui.cpp:2206
ImGuiPopupData::OpenMousePos
ImVec2 OpenMousePos
Definition: imgui_internal.h:694
stbtt_aligned_quad::s0
float s0
Definition: imstb_truetype.h:546
ImGui::SetColorEditOptions
IMGUI_API void SetColorEditOptions(ImGuiColorEditFlags flags)
Definition: imgui_widgets.cpp:4899
ImGuiItemFlags_Default_
@ ImGuiItemFlags_Default_
Definition: imgui_internal.h:393
ImGuiIO::ConfigInputTextCursorBlink
bool ConfigInputTextCursorBlink
Definition: imgui.h:1368
ImGui::BeginChild
IMGUI_API bool BeginChild(const char *str_id, const ImVec2 &size=ImVec2(0, 0), bool border=false, ImGuiWindowFlags flags=0)
Definition: imgui.cpp:4752
ImGui::InputInt3
IMGUI_API bool InputInt3(const char *label, int v[3], ImGuiInputTextFlags flags=0)
Definition: imgui_widgets.cpp:3043
ImGuiContext::DimBgRatio
float DimBgRatio
Definition: imgui_internal.h:980
ImGuiButtonFlags_PressedOnDoubleClick
@ ImGuiButtonFlags_PressedOnDoubleClick
Definition: imgui_internal.h:320
ImFontAtlasBuildMultiplyCalcLookupTable
void ImFontAtlasBuildMultiplyCalcLookupTable(unsigned char out_table[256], float in_brighten_factor)
Definition: imgui_draw.cpp:1791
ImDrawListFlags_AntiAliasedLines
@ ImDrawListFlags_AntiAliasedLines
Definition: imgui.h:1868
ImGuiCol_ScrollbarGrabActive
@ ImGuiCol_ScrollbarGrabActive
Definition: imgui.h:1044
ImGuiContext::NavMoveDir
ImGuiDir NavMoveDir
Definition: imgui_internal.h:962
ImGui::SetTooltip
IMGUI_API void SetTooltip(const char *fmt,...) IM_FMTARGS(1)
Definition: imgui.cpp:7419
ImGuiContext::ActiveIdHasBeenEditedThisFrame
bool ActiveIdHasBeenEditedThisFrame
Definition: imgui_internal.h:902
ImGuiLogType_TTY
@ ImGuiLogType_TTY
Definition: imgui_internal.h:433
ImGuiItemFlags_SelectableDontClosePopup
@ ImGuiItemFlags_SelectableDontClosePopup
Definition: imgui_internal.h:391
ImGuiContext::HoveredIdPreviousFrame
ImGuiID HoveredIdPreviousFrame
Definition: imgui_internal.h:892
ImFontAtlasBuildSetupFont
IMGUI_API void ImFontAtlasBuildSetupFont(ImFontAtlas *atlas, ImFont *font, ImFontConfig *font_config, float ascent, float descent)
Definition: imgui_draw.cpp:2111
ImGuiContext::DragCurrentAccum
float DragCurrentAccum
Definition: imgui_internal.h:1018
ImGuiColorEditFlags_InputHSV
@ ImGuiColorEditFlags_InputHSV
Definition: imgui.h:1151
ImGui::ColorPickerOptionsPopup
IMGUI_API void ColorPickerOptionsPopup(const float *ref_col, ImGuiColorEditFlags flags)
Definition: imgui_widgets.cpp:5000
ImGui::PushColumnClipRect
IMGUI_API void PushColumnClipRect(int column_index)
Definition: imgui_widgets.cpp:7308
ImGuiContext::FocusRequestNextCounterTab
int FocusRequestNextCounterTab
Definition: imgui_internal.h:974
ImGui::PushStyleColor
IMGUI_API void PushStyleColor(ImGuiCol idx, ImU32 col)
Definition: imgui.cpp:6321
stbtt_aligned_quad::y1
float y1
Definition: imstb_truetype.h:547
ImGuiContext::SettingsDirtyTimer
float SettingsDirtyTimer
Definition: imgui_internal.h:1034
ImGui::FindBestWindowPosForPopupEx
IMGUI_API ImVec2 FindBestWindowPosForPopupEx(const ImVec2 &ref_pos, const ImVec2 &size, ImGuiDir *last_dir, const ImRect &r_outer, const ImRect &r_avoid, ImGuiPopupPositionPolicy policy=ImGuiPopupPositionPolicy_Default)
Definition: imgui.cpp:7725
ImGuiContext::Windows
ImVector< ImGuiWindow * > Windows
Definition: imgui_internal.h:875
ImGuiWindowSettings::Name
char * Name
Definition: imgui_internal.h:664
ImGuiColorEditFlags_Uint8
@ ImGuiColorEditFlags_Uint8
Definition: imgui.h:1146
ImDrawList::AddBezierCurve
IMGUI_API void AddBezierCurve(const ImVec2 &pos0, const ImVec2 &cp0, const ImVec2 &cp1, const ImVec2 &pos1, ImU32 col, float thickness, int num_segments=0)
Definition: imgui_draw.cpp:1093
ImGuiSeparatorFlags_Vertical
@ ImGuiSeparatorFlags_Vertical
Definition: imgui_internal.h:378
ImDrawList::AddText
IMGUI_API void AddText(const ImVec2 &pos, ImU32 col, const char *text_begin, const char *text_end=NULL)
Definition: imgui_draw.cpp:1132
ImTextStrFromUtf8
IMGUI_API int ImTextStrFromUtf8(ImWchar *buf, int buf_size, const char *in_text, const char *in_text_end, const char **in_remaining=NULL)
Definition: imgui.cpp:1686
ImDrawListSplitter::SetCurrentChannel
IMGUI_API void SetCurrentChannel(ImDrawList *draw_list, int channel_idx)
Definition: imgui_draw.cpp:1308
ImDrawListSplitter::Merge
IMGUI_API void Merge(ImDrawList *draw_list)
Definition: imgui_draw.cpp:1253
ImGui::GetCurrentWindow
ImGuiWindow * GetCurrentWindow()
Definition: imgui_internal.h:1480
ImGuiWindow::SkipItems
bool SkipItems
Definition: imgui_internal.h:1307
ImGuiTabItemFlagsPrivate_
ImGuiTabItemFlagsPrivate_
Definition: imgui_internal.h:1411
ImGuiWindow::ResizeBorderHeld
signed char ResizeBorderHeld
Definition: imgui_internal.h:1311
ImPool::ImPool
ImPool()
Definition: imgui_internal.h:294
material_wrap_modes::clamp
@ clamp
ImGuiInputTextState::GetUndoAvailCount
int GetUndoAvailCount() const
Definition: imgui_internal.h:649