diff options
| author | Nic Gaffney <gaffney_nic@protonmail.com> | 2025-10-13 01:19:27 -0500 |
|---|---|---|
| committer | Nic Gaffney <gaffney_nic@protonmail.com> | 2025-10-13 01:19:27 -0500 |
| commit | 1f9b827badb2de4c4eaae11c0d02242ec90af7f6 (patch) | |
| tree | 27acb295833e6eee730dd71f98db280d54c6a4ad /vendor/zgui/libs/imgui_test_engine/imgui_te_utils.h | |
| parent | b5d0c1dcd751f4735d9f6b45c805300000c9d171 (diff) | |
| download | particle-sim-1f9b827badb2de4c4eaae11c0d02242ec90af7f6.tar.gz | |
Updating to zig 0.15.1
Diffstat (limited to 'vendor/zgui/libs/imgui_test_engine/imgui_te_utils.h')
| -rw-r--r-- | vendor/zgui/libs/imgui_test_engine/imgui_te_utils.h | 221 |
1 files changed, 0 insertions, 221 deletions
diff --git a/vendor/zgui/libs/imgui_test_engine/imgui_te_utils.h b/vendor/zgui/libs/imgui_test_engine/imgui_te_utils.h deleted file mode 100644 index 1eef55c..0000000 --- a/vendor/zgui/libs/imgui_test_engine/imgui_te_utils.h +++ /dev/null @@ -1,221 +0,0 @@ -// dear imgui test engine -// (helpers/utilities. do NOT use this as a general purpose library) - -#pragma once - -//----------------------------------------------------------------------------- -// Includes -//----------------------------------------------------------------------------- - -#include <math.h> // fabsf -#include <stdint.h> // uint64_t -#include <stdio.h> // FILE* -#include "imgui.h" // ImGuiID, ImGuiKey -class Str; // Str<> from thirdparty/Str/Str.h - -//----------------------------------------------------------------------------- -// Function Pointers -//----------------------------------------------------------------------------- - -#if IMGUI_TEST_ENGINE_ENABLE_STD_FUNCTION -#include <functional> -#define ImFuncPtr(FUNC_TYPE) std::function<FUNC_TYPE> -#else -#define ImFuncPtr(FUNC_TYPE) FUNC_TYPE* -#endif - -//----------------------------------------------------------------------------- -// Hashing Helpers -//----------------------------------------------------------------------------- - -ImGuiID ImHashDecoratedPath(const char* str, const char* str_end = NULL, ImGuiID seed = 0); -const char* ImFindNextDecoratedPartInPath(const char* str, const char* str_end = NULL); - -//----------------------------------------------------------------------------- -// File/Directory Helpers -//----------------------------------------------------------------------------- - -bool ImFileExist(const char* filename); -bool ImFileDelete(const char* filename); -bool ImFileCreateDirectoryChain(const char* path, const char* path_end = NULL); -bool ImFileFindInParents(const char* sub_path, int max_parent_count, Str* output); -bool ImFileLoadSourceBlurb(const char* filename, int line_no_start, int line_no_end, ImGuiTextBuffer* out_buf); - -//----------------------------------------------------------------------------- -// Path Helpers -//----------------------------------------------------------------------------- - -// Those are strictly string manipulation functions -const char* ImPathFindFilename(const char* path, const char* path_end = NULL); // Return value always between path and path_end -const char* ImPathFindExtension(const char* path, const char* path_end = NULL); // Return value always between path and path_end -void ImPathFixSeparatorsForCurrentOS(char* buf); - -//----------------------------------------------------------------------------- -// String Helpers -//----------------------------------------------------------------------------- - -void ImStrReplace(Str* s, const char* find, const char* repl); -const char* ImStrchrRangeWithEscaping(const char* str, const char* str_end, char find_c); -void ImStrXmlEscape(Str* s); -int ImStrBase64Encode(const unsigned char* src, char* dst, int length); - -//----------------------------------------------------------------------------- -// Parsing Helpers -//----------------------------------------------------------------------------- - -void ImParseExtractArgcArgvFromCommandLine(int* out_argc, char const*** out_argv, const char* cmd_line); -bool ImParseFindIniSection(const char* ini_config, const char* header, ImVector<char>* result); - -//----------------------------------------------------------------------------- -// Time Helpers -//----------------------------------------------------------------------------- - -uint64_t ImTimeGetInMicroseconds(); -void ImTimestampToISO8601(uint64_t timestamp, Str* out_date); - -//----------------------------------------------------------------------------- -// Threading Helpers -//----------------------------------------------------------------------------- - -void ImThreadSleepInMilliseconds(int ms); -void ImThreadSetCurrentThreadDescription(const char* description); - -//----------------------------------------------------------------------------- -// Build Info helpers -//----------------------------------------------------------------------------- - -// All the pointers are expect to be literals/persistent -struct ImBuildInfo -{ - const char* Type = ""; - const char* Cpu = ""; - const char* OS = ""; - const char* Compiler = ""; - char Date[32]; // "YYYY-MM-DD" - const char* Time = ""; -}; - -const ImBuildInfo* ImBuildGetCompilationInfo(); -bool ImBuildFindGitBranchName(const char* git_repo_path, Str* branch_name); - -//----------------------------------------------------------------------------- -// Operating System Helpers -//----------------------------------------------------------------------------- - -enum ImOsConsoleStream -{ - ImOsConsoleStream_StandardOutput, - ImOsConsoleStream_StandardError, -}; - -enum ImOsConsoleTextColor -{ - ImOsConsoleTextColor_Black, - ImOsConsoleTextColor_White, - ImOsConsoleTextColor_BrightWhite, - ImOsConsoleTextColor_BrightRed, - ImOsConsoleTextColor_BrightGreen, - ImOsConsoleTextColor_BrightBlue, - ImOsConsoleTextColor_BrightYellow, -}; - -bool ImOsCreateProcess(const char* cmd_line); -FILE* ImOsPOpen(const char* cmd_line, const char* mode); -void ImOsPClose(FILE* fp); -void ImOsOpenInShell(const char* path); -bool ImOsIsDebuggerPresent(); -void ImOsOutputDebugString(const char* message); -void ImOsConsoleSetTextColor(ImOsConsoleStream stream, ImOsConsoleTextColor color); - -//----------------------------------------------------------------------------- -// Miscellaneous functions -//----------------------------------------------------------------------------- - -// Tables functions -struct ImGuiTable; -ImGuiID TableGetHeaderID(ImGuiTable* table, const char* column, int instance_no = 0); -ImGuiID TableGetHeaderID(ImGuiTable* table, int column_n, int instance_no = 0); -void TableDiscardInstanceAndSettings(ImGuiID table_id); - -// DrawData functions -void DrawDataVerifyMatchingBufferCount(ImDrawData* draw_data); - -//----------------------------------------------------------------------------- -// Helper: maintain/calculate moving average -//----------------------------------------------------------------------------- - -template<typename TYPE> -struct ImMovingAverage -{ - // Internal Fields - ImVector<TYPE> Samples; - TYPE Accum; - int Idx; - int FillAmount; - - // Functions - ImMovingAverage() { Accum = (TYPE)0; Idx = FillAmount = 0; } - void Init(int count) { Samples.resize(count); memset(Samples.Data, 0, (size_t)Samples.Size * sizeof(TYPE)); Accum = (TYPE)0; Idx = FillAmount = 0; } - void AddSample(TYPE v) { Accum += v - Samples[Idx]; Samples[Idx] = v; if (++Idx == Samples.Size) Idx = 0; if (FillAmount < Samples.Size) FillAmount++; } - TYPE GetAverage() const { return Accum / (TYPE)FillAmount; } - int GetSampleCount() const { return Samples.Size; } - bool IsFull() const { return FillAmount == Samples.Size; } -}; - -//----------------------------------------------------------------------------- -// Helper: Simple/dumb CSV parser -//----------------------------------------------------------------------------- - -struct ImGuiCsvParser -{ - // Public fields - int Columns = 0; // Number of columns in CSV file. - int Rows = 0; // Number of rows in CSV file. - - // Internal fields - char* _Data = NULL; // CSV file data. - ImVector<char*> _Index; // CSV table: _Index[row * _Columns + col]. - - // Functions - ImGuiCsvParser(int columns = -1) { Columns = columns; } - ~ImGuiCsvParser() { Clear(); } - bool Load(const char* file_name); // Open and parse a CSV file. - void Clear(); // Free allocated buffers. - const char* GetCell(int row, int col) { IM_ASSERT(0 <= row && row < Rows && 0 <= col && col < Columns); return _Index[row * Columns + col]; } -}; - -//----------------------------------------------------------------------------- -// Misc Dear ImGui extensions -//----------------------------------------------------------------------------- - -#if IMGUI_VERSION_NUM < 18924 -struct ImGuiTabBar; -struct ImGuiTabItem; -#endif - -namespace ImGui -{ - -IMGUI_API void ItemErrorFrame(ImU32 col); - -#if IMGUI_VERSION_NUM < 18927 -ImGuiID TableGetInstanceID(ImGuiTable* table, int instance_no = 0); -#endif - -// Str support for InputText() -IMGUI_API bool InputText(const char* label, Str* str, ImGuiInputTextFlags flags = 0, ImGuiInputTextCallback callback = NULL, void* user_data = NULL); -IMGUI_API bool InputTextWithHint(const char* label, const char* hint, Str* str, ImGuiInputTextFlags flags = 0, ImGuiInputTextCallback callback = NULL, void* user_data = NULL); -IMGUI_API bool InputTextMultiline(const char* label, Str* str, const ImVec2& size = ImVec2(0, 0), ImGuiInputTextFlags flags = 0, ImGuiInputTextCallback callback = NULL, void* user_data = NULL); - -// Splitter -IMGUI_API bool Splitter(const char* id, float* value_1, float* value_2, int axis, int anchor = 0, float min_size_0 = -1.0f, float min_size_1 = -1.0f); - -// Misc -IMGUI_API ImFont* FindFontByPrefix(const char* name); - -// Legacy version support -#if IMGUI_VERSION_NUM < 18924 -IMGUI_API const char* TabBarGetTabName(ImGuiTabBar* tab_bar, ImGuiTabItem* tab); -#endif - -} |
