#include "imgui.h"
#include "imgui_internal.h"
#include <ctype.h>
#include <stdio.h>
#include <stdint.h>
Go to the source code of this file.
Classes | |
struct | ImGuiResizeGripDef |
struct | ImGuiStyleVarInfo |
Namespaces | |
ImGui | |
Macros | |
#define | IMGUI_DEBUG_INI_SETTINGS 0 |
#define | IMGUI_DEBUG_NAV_RECTS 0 |
#define | IMGUI_DEBUG_NAV_SCORING 0 |
#define | IMGUI_DEFINE_MATH_OPERATORS |
#define | NAV_MAP_KEY(_KEY, _NAV_INPUT) do { if (IsKeyDown(g.IO.KeyMap[_KEY])) { g.IO.NavInputs[_NAV_INPUT] = 1.0f; g.NavInputSource = ImGuiInputSource_NavKeyboard; } } while (0) |
#define | va_copy(dest, src) (dest = src) |
Functions | |
static void | AddDrawListToDrawData (ImVector< ImDrawList * > *out_list, ImDrawList *draw_list) |
static void | AddRootWindowToDrawData (ImGuiWindow *window) |
static void | AddWindowToDrawData (ImVector< ImDrawList * > *out_render_list, ImGuiWindow *window) |
static void | AddWindowToSortBuffer (ImVector< ImGuiWindow * > *out_sorted_windows, ImGuiWindow *window) |
static void | BezierClosestPointCasteljauStep (const ImVec2 &p, ImVec2 &p_closest, ImVec2 &p_last, float &p_closest_dist2, float x1, float y1, float x2, float y2, float x3, float y3, float x4, float y4, float tess_tol, int level) |
static ImVec2 | CalcNextScrollFromScrollTargetAndClamp (ImGuiWindow *window, bool snap_on_edges) |
static void | CalcResizePosSizeFromAnyCorner (ImGuiWindow *window, const ImVec2 &corner_target, const ImVec2 &corner_norm, ImVec2 *out_pos, ImVec2 *out_size) |
static ImVec2 | CalcWindowAutoFitSize (ImGuiWindow *window, const ImVec2 &size_contents) |
static ImVec2 | CalcWindowContentSize (ImGuiWindow *window) |
static ImVec2 | CalcWindowSizeAfterConstraint (ImGuiWindow *window, ImVec2 new_size) |
static int IMGUI_CDECL | ChildWindowComparer (const void *lhs, const void *rhs) |
static void | ClampWindowRect (ImGuiWindow *window, const ImRect &rect, const ImVec2 &padding) |
static ImGuiWindow * | CreateNewWindow (const char *name, ImVec2 size, ImGuiWindowFlags flags) |
static void | ImGui::ErrorCheckBeginEndCompareStacksSize (ImGuiWindow *window, bool write) |
static void | ImGui::ErrorCheckEndFrameSanityChecks () |
static void | ImGui::ErrorCheckNewFrameSanityChecks () |
static void | FindHoveredWindow () |
static int | ImGui::FindWindowFocusIndex (ImGuiWindow *window) |
static ImGuiWindow * | FindWindowNavFocusable (int i_start, int i_stop, int dir) |
static void | FreeWrapper (void *ptr, void *user_data) |
static const char * | GetClipboardTextFn_DefaultImpl (void *user_data) |
static const char * | GetFallbackWindowNameForWindowingList (ImGuiWindow *window) |
static ImGuiKeyModFlags | GetMergedKeyModFlags () |
static ImRect | GetResizeBorderRect (ImGuiWindow *window, int border_n, float perp_padding, float thickness) |
static const ImGuiStyleVarInfo * | GetStyleVarInfo (ImGuiStyleVar idx) |
static ImRect | GetViewportRect () |
static ImGuiCol | GetWindowBgColorIdxFromFlags (ImGuiWindowFlags flags) |
IMGUI_API ImU32 | ImAlphaBlendColors (ImU32 col_a, ImU32 col_b) |
ImVec2 | ImBezierClosestPoint (const ImVec2 &p1, const ImVec2 &p2, const ImVec2 &p3, const ImVec2 &p4, const ImVec2 &p, int num_segments) |
ImVec2 | ImBezierClosestPointCasteljau (const ImVec2 &p1, const ImVec2 &p2, const ImVec2 &p3, const ImVec2 &p4, const ImVec2 &p, float tess_tol) |
static void | ImeSetInputScreenPosFn_DefaultImpl (int x, int y) |
bool | ImFileClose (ImFileHandle f) |
ImU64 | ImFileGetSize (ImFileHandle f) |
void * | ImFileLoadToMemory (const char *filename, const char *mode, size_t *out_file_size, int padding_bytes) |
ImFileHandle | ImFileOpen (const char *filename, const char *mode) |
ImU64 | ImFileRead (void *data, ImU64 sz, ImU64 count, ImFileHandle f) |
ImU64 | ImFileWrite (const void *data, ImU64 sz, ImU64 count, ImFileHandle f) |
int | ImFormatString (char *buf, size_t buf_size, const char *fmt,...) |
int | ImFormatStringV (char *buf, size_t buf_size, const char *fmt, va_list args) |
ImGuiDir | ImGetDirQuadrantFromDelta (float dx, float dy) |
ImU32 | ImHashData (const void *data_p, size_t data_size, ImU32 seed) |
ImU32 | ImHashStr (const char *data_p, size_t data_size, ImU32 seed) |
ImVec2 | ImLineClosestPoint (const ImVec2 &a, const ImVec2 &b, const ImVec2 &p) |
const ImWchar * | ImStrbolW (const ImWchar *buf_mid_line, const ImWchar *buf_begin) |
const char * | ImStrchrRange (const char *str, const char *str_end, char c) |
char * | ImStrdup (const char *str) |
char * | ImStrdupcpy (char *dst, size_t *p_dst_size, const char *src) |
const char * | ImStreolRange (const char *str, const char *str_end) |
int | ImStricmp (const char *str1, const char *str2) |
const char * | ImStristr (const char *haystack, const char *haystack_end, const char *needle, const char *needle_end) |
int | ImStrlenW (const ImWchar *str) |
void | ImStrncpy (char *dst, const char *src, size_t count) |
int | ImStrnicmp (const char *str1, const char *str2, size_t count) |
const char * | ImStrSkipBlank (const char *str) |
void | ImStrTrimBlanks (char *buf) |
int | ImTextCharFromUtf8 (unsigned int *out_char, const char *in_text, const char *in_text_end) |
static int | ImTextCharToUtf8 (char *buf, int buf_size, unsigned int c) |
int | ImTextCountCharsFromUtf8 (const char *in_text, const char *in_text_end) |
int | ImTextCountUtf8BytesFromChar (const char *in_text, const char *in_text_end) |
static int | ImTextCountUtf8BytesFromChar (unsigned int c) |
int | ImTextCountUtf8BytesFromStr (const ImWchar *in_text, const ImWchar *in_text_end) |
int | ImTextStrFromUtf8 (ImWchar *buf, int buf_size, const char *in_text, const char *in_text_end, const char **in_text_remaining) |
int | ImTextStrToUtf8 (char *buf, int buf_size, const ImWchar *in_text, const ImWchar *in_text_end) |
void | ImTriangleBarycentricCoords (const ImVec2 &a, const ImVec2 &b, const ImVec2 &c, const ImVec2 &p, float &out_u, float &out_v, float &out_w) |
ImVec2 | ImTriangleClosestPoint (const ImVec2 &a, const ImVec2 &b, const ImVec2 &c, const ImVec2 &p) |
bool | ImTriangleContainsPoint (const ImVec2 &a, const ImVec2 &b, const ImVec2 &c, const ImVec2 &p) |
static bool | IsWindowActiveAndVisible (ImGuiWindow *window) |
static bool | IsWindowContentHoverable (ImGuiWindow *window, ImGuiHoveredFlags flags) |
static ImGuiStorage::ImGuiStoragePair * | LowerBound (ImVector< ImGuiStorage::ImGuiStoragePair > &data, ImGuiID key) |
static void * | MallocWrapper (size_t size, void *user_data) |
static void | MetricsHelpMarker (const char *desc) |
static ImVec2 | ImGui::NavCalcPreferredRefPos () |
static void | NavClampRectToVisibleAreaForMoveDir (ImGuiDir move_dir, ImRect &r, const ImRect &clip_rect) |
static void | ImGui::NavProcessItem (ImGuiWindow *window, const ImRect &nav_bb, ImGuiID id) |
static ImGuiWindow * | ImGui::NavRestoreLastChildNavWindow (ImGuiWindow *window) |
static void | NavRestoreLayer (ImGuiNavLayer layer) |
static void | ImGui::NavSaveLastChildNavWindowIntoParent (ImGuiWindow *nav_window) |
static bool | ImGui::NavScoreItem (ImGuiNavMoveResult *result, ImRect cand) |
static float | NavScoreItemDistInterval (float a0, float a1, float b0, float b1) |
static void | ImGui::NavUpdate () |
static void | ImGui::NavUpdateAnyRequestFlag () |
static void | ImGui::NavUpdateMoveResult () |
static float | ImGui::NavUpdatePageUpPageDown () |
static void | ImGui::NavUpdateWindowing () |
static void | NavUpdateWindowingHighlightWindow (int focus_change_dir) |
static void | ImGui::NavUpdateWindowingOverlay () |
static void | ImGui::RenderWindowDecorations (ImGuiWindow *window, const ImRect &title_bar_rect, bool title_bar_is_highlight, int resize_grip_count, const ImU32 resize_grip_col[4], float resize_grip_draw_size) |
static void | ImGui::RenderWindowOuterBorders (ImGuiWindow *window) |
static void | ImGui::RenderWindowTitleBarContents (ImGuiWindow *window, const ImRect &title_bar_rect, const char *name, bool *p_open) |
static void | SetClipboardTextFn_DefaultImpl (void *user_data, const char *text) |
static void | SetCurrentWindow (ImGuiWindow *window) |
static void | SetCursorPosYAndSetupDummyPrevLine (float pos_y, float line_height) |
static void | SetupDrawData (ImVector< ImDrawList * > *draw_lists, ImDrawData *draw_data) |
static void | SetWindowConditionAllowFlags (ImGuiWindow *window, ImGuiCond flags, bool enabled) |
static void | StartLockWheelingWindow (ImGuiWindow *window) |
static void | ImGui::UpdateDebugToolItemPicker () |
static void | ImGui::UpdateMouseInputs () |
static void | ImGui::UpdateMouseWheel () |
static void | ImGui::UpdateSettings () |
static void | ImGui::UpdateTabFocus () |
static bool | ImGui::UpdateWindowManualResize (ImGuiWindow *window, const ImVec2 &size_auto_fit, int *border_held, int resize_grip_count, ImU32 resize_grip_col[4]) |
static void | WindowSettingsHandler_ReadLine (ImGuiContext *, ImGuiSettingsHandler *, void *entry, const char *line) |
static void * | WindowSettingsHandler_ReadOpen (ImGuiContext *, ImGuiSettingsHandler *, const char *name) |
static void | WindowSettingsHandler_WriteAll (ImGuiContext *, ImGuiSettingsHandler *, ImGuiTextBuffer *buf) |
Variables | |
static const ImU32 | GCrc32LookupTable [256] |
static void *(* | GImAllocatorAllocFunc )(size_t size, void *user_data) = MallocWrapper |
static void(* | GImAllocatorFreeFunc )(void *ptr, void *user_data) = FreeWrapper |
static void * | GImAllocatorUserData = NULL |
ImGuiContext * | GImGui = NULL |
static const ImGuiStyleVarInfo | GStyleVarInfo [] |
static const float | NAV_WINDOWING_HIGHLIGHT_DELAY = 0.20f |
static const float | NAV_WINDOWING_LIST_APPEAR_DELAY = 0.15f |
static const ImGuiResizeGripDef | resize_grip_def [4] |
static const float | WINDOWS_MOUSE_WHEEL_SCROLL_LOCK_TIMER = 2.00f |
static const float | WINDOWS_RESIZE_FROM_EDGES_FEEDBACK_TIMER = 0.04f |
static const float | WINDOWS_RESIZE_FROM_EDGES_HALF_THICKNESS = 4.0f |
#define NAV_MAP_KEY | ( | _KEY, | |
_NAV_INPUT | |||
) | do { if (IsKeyDown(g.IO.KeyMap[_KEY])) { g.IO.NavInputs[_NAV_INPUT] = 1.0f; g.NavInputSource = ImGuiInputSource_NavKeyboard; } } while (0) |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
inlinestatic |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
bool ImFileClose | ( | ImFileHandle | f | ) |
ImU64 ImFileGetSize | ( | ImFileHandle | f | ) |
void* ImFileLoadToMemory | ( | const char * | filename, |
const char * | mode, | ||
size_t * | out_file_size, | ||
int | padding_bytes | ||
) |
ImFileHandle ImFileOpen | ( | const char * | filename, |
const char * | mode | ||
) |
ImU64 ImFileRead | ( | void * | data, |
ImU64 | sz, | ||
ImU64 | count, | ||
ImFileHandle | f | ||
) |
ImU64 ImFileWrite | ( | const void * | data, |
ImU64 | sz, | ||
ImU64 | count, | ||
ImFileHandle | f | ||
) |
int ImFormatString | ( | char * | buf, |
size_t | buf_size, | ||
const char * | fmt, | ||
... | |||
) |
int ImFormatStringV | ( | char * | buf, |
size_t | buf_size, | ||
const char * | fmt, | ||
va_list | args | ||
) |
ImGuiDir ImGetDirQuadrantFromDelta | ( | float | dx, |
float | dy | ||
) |
const char* ImStrchrRange | ( | const char * | str, |
const char * | str_end, | ||
char | c | ||
) |
char* ImStrdupcpy | ( | char * | dst, |
size_t * | p_dst_size, | ||
const char * | src | ||
) |
const char* ImStreolRange | ( | const char * | str, |
const char * | str_end | ||
) |
const char* ImStristr | ( | const char * | haystack, |
const char * | haystack_end, | ||
const char * | needle, | ||
const char * | needle_end | ||
) |
void ImStrncpy | ( | char * | dst, |
const char * | src, | ||
size_t | count | ||
) |
int ImStrnicmp | ( | const char * | str1, |
const char * | str2, | ||
size_t | count | ||
) |
int ImTextCharFromUtf8 | ( | unsigned int * | out_char, |
const char * | in_text, | ||
const char * | in_text_end | ||
) |
|
inlinestatic |
int ImTextCountCharsFromUtf8 | ( | const char * | in_text, |
const char * | in_text_end | ||
) |
int ImTextCountUtf8BytesFromChar | ( | const char * | in_text, |
const char * | in_text_end | ||
) |
|
inlinestatic |
int ImTextStrFromUtf8 | ( | ImWchar * | buf, |
int | buf_size, | ||
const char * | in_text, | ||
const char * | in_text_end, | ||
const char ** | in_text_remaining | ||
) |
|
static |
|
inlinestatic |
|
static |
|
static |
|
static |
|
inlinestatic |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
ImGuiContext* GImGui = NULL |
|
static |
|
static |
|
static |
|
static |
|
static |