diff --git a/cimgui.cpp b/cimgui.cpp index 4a9bbdf..b32ae79 100644 --- a/cimgui.cpp +++ b/cimgui.cpp @@ -2235,3 +2235,28 @@ CIMGUI_API void igColorConvertHSVtoRGB(float h,float s,float v,float *out_r,floa { ImGui::ColorConvertHSVtoRGB(h,s,v,*out_r,*out_g,*out_b); } + +CIMGUI_API ImVector_ImWchar* ImVector_ImWchar_create() +{ + return IM_NEW(ImVector) (); +} +CIMGUI_API void ImVector_ImWchar_destroy(ImVector_ImWchar* p) +{ + IM_DELETE(p); +} +CIMGUI_API void ImVector_ImWchar_Init(ImVector_ImWchar* p) +{ + IM_PLACEMENT_NEW(p) ImVector(); +} +CIMGUI_API void ImVector_ImWchar_UnInit(ImVector_ImWchar* p) +{ + p->~ImVector(); +} +CIMGUI_API GlyphRangesBuilder* GlyphRangesBuilder_create() +{ + return IM_NEW(GlyphRangesBuilder)(); +} +CIMGUI_API void GlyphRangesBuilder_destroy(GlyphRangesBuilder* p) +{ + IM_DELETE(p); +} \ No newline at end of file diff --git a/cimgui.h b/cimgui.h index 917e221..48b62f9 100644 --- a/cimgui.h +++ b/cimgui.h @@ -834,7 +834,12 @@ typedef ImVector ImVector_TextRange; typedef ImVector ImVector_ImWchar; #else //CIMGUI_DEFINE_ENUMS_AND_STRUCTS typedef ImVector ImVector_TextRange; -typedef ImVector ImVector_ImWchar; +//typedef ImVector ImVector_ImWchar; +typedef struct { + int Size; + int Capacity; + ImWchar * Data; +} ImVector_ImWchar; #endif //CIMGUI_DEFINE_ENUMS_AND_STRUCTS CIMGUI_API ImGuiContext* igCreateContext(ImFontAtlas* shared_font_atlas); CIMGUI_API void igDestroyContext(ImGuiContext* ctx); @@ -1378,5 +1383,12 @@ CIMGUI_API float igGET_FLT_MAX(); CIMGUI_API void igColorConvertRGBtoHSV(float r,float g,float b,float *out_h,float *out_s,float *out_v); CIMGUI_API void igColorConvertHSVtoRGB(float h,float s,float v,float *out_r,float *out_g,float *out_b); +CIMGUI_API ImVector_ImWchar* ImVector_ImWchar_create(); +CIMGUI_API void ImVector_ImWchar_destroy(ImVector_ImWchar* p); +CIMGUI_API void ImVector_ImWchar_Init(ImVector_ImWchar* p); +CIMGUI_API void ImVector_ImWchar_UnInit(ImVector_ImWchar* p); +CIMGUI_API GlyphRangesBuilder* GlyphRangesBuilder_create(); +CIMGUI_API void GlyphRangesBuilder_destroy(GlyphRangesBuilder* p); +