#include "FontAtlasWrapper.h" #include "WrapperConverter.h" #include "imguiWrappedHeader.h" IggGlyphRanges iggGetGlyphRangesAll() { static const ImWchar ranges[] = { 0x0001, 0xFFFF, 0, }; return static_cast(const_cast(&ranges[0])); } IggGlyphRanges iggGetGlyphRangesDefault(IggFontAtlas handle) { ImFontAtlas *fontAtlas = reinterpret_cast(handle); return static_cast(const_cast(fontAtlas->GetGlyphRangesDefault())); } IggGlyphRanges iggGetGlyphRangesKorean(IggFontAtlas handle) { ImFontAtlas *fontAtlas = reinterpret_cast(handle); return static_cast(const_cast(fontAtlas->GetGlyphRangesKorean())); } IggGlyphRanges iggGetGlyphRangesJapanese(IggFontAtlas handle) { ImFontAtlas *fontAtlas = reinterpret_cast(handle); return static_cast(const_cast(fontAtlas->GetGlyphRangesJapanese())); } IggGlyphRanges iggGetGlyphRangesChineseFull(IggFontAtlas handle) { ImFontAtlas *fontAtlas = reinterpret_cast(handle); return static_cast(const_cast(fontAtlas->GetGlyphRangesChineseFull())); } IggGlyphRanges iggGetGlyphRangesChineseSimplifiedCommon(IggFontAtlas handle) { ImFontAtlas *fontAtlas = reinterpret_cast(handle); return static_cast(const_cast(fontAtlas->GetGlyphRangesChineseSimplifiedCommon())); } IggGlyphRanges iggGetGlyphRangesCyrillic(IggFontAtlas handle) { ImFontAtlas *fontAtlas = reinterpret_cast(handle); return static_cast(const_cast(fontAtlas->GetGlyphRangesCyrillic())); } IggGlyphRanges iggGetGlyphRangesThai(IggFontAtlas handle) { ImFontAtlas *fontAtlas = reinterpret_cast(handle); return static_cast(const_cast(fontAtlas->GetGlyphRangesThai())); } IggFont iggAddFontDefault(IggFontAtlas handle) { ImFontAtlas *fontAtlas = reinterpret_cast(handle); ImFont *font = fontAtlas->AddFontDefault(); return static_cast(font); } IggFont iggAddFontDefaultV(IggFontAtlas handle, IggFontConfig config) { ImFontAtlas *fontAtlas = reinterpret_cast(handle); ImFontConfig *fontConfig = reinterpret_cast(config); ImFont *font = fontAtlas->AddFontDefault(fontConfig); return static_cast(font); } IggFont iggAddFontFromFileTTF(IggFontAtlas handle, char const *filename, float sizePixels, IggFontConfig config, IggGlyphRanges glyphRanges) { ImFontAtlas *fontAtlas = reinterpret_cast(handle); ImFontConfig *fontConfig = reinterpret_cast(config); ImWchar *glyphChars = reinterpret_cast(glyphRanges); ImFont *font = fontAtlas->AddFontFromFileTTF(filename, sizePixels, fontConfig, glyphChars); return static_cast(font); } IggFont iggAddFontFromMemoryTTF(IggFontAtlas handle, char *font_data, int font_size, float sizePixels, IggFontConfig config, IggGlyphRanges glyphRanges) { ImFontAtlas *fontAtlas = reinterpret_cast(handle); ImFontConfig *fontConfig = reinterpret_cast(config); ImWchar *glyphChars = reinterpret_cast(glyphRanges); ImFont *font = fontAtlas->AddFontFromMemoryTTF(font_data, font_size, sizePixels, fontConfig, glyphChars); return static_cast(font); } void iggFontAtlasSetTexDesiredWidth(IggFontAtlas handle, int value) { ImFontAtlas *fontAtlas = reinterpret_cast(handle); fontAtlas->TexDesiredWidth = value; } void iggFontAtlasGetTexDataAsAlpha8(IggFontAtlas handle, unsigned char **pixels, int *width, int *height, int *bytesPerPixel) { ImFontAtlas *fontAtlas = reinterpret_cast(handle); fontAtlas->GetTexDataAsAlpha8(pixels, width, height, bytesPerPixel); } void iggFontAtlasGetTexDataAsRGBA32(IggFontAtlas handle, unsigned char **pixels, int *width, int *height, int *bytesPerPixel) { ImFontAtlas *fontAtlas = reinterpret_cast(handle); fontAtlas->GetTexDataAsRGBA32(pixels, width, height, bytesPerPixel); } void iggFontAtlasSetTextureID(IggFontAtlas handle, IggTextureID id) { ImFontAtlas *fontAtlas = reinterpret_cast(handle); fontAtlas->SetTexID(reinterpret_cast(id)); } void iggFontAtlasBuild(IggFontAtlas handle) { ImFontAtlas *fontAtlas = reinterpret_cast(handle); fontAtlas->Build(); } void iggFontAtlasClear(IggFontAtlas handle) { ImFontAtlas *fontAtlas = reinterpret_cast(handle); fontAtlas->Clear(); } unsigned int iggFontAtlasGetFontBuilderFlags(IggFontAtlas handle) { ImFontAtlas *fontAtlas = reinterpret_cast(handle); return fontAtlas->FontBuilderFlags; } void iggFontAtlasSetFontBuilderFlags(IggFontAtlas handle, unsigned int flags) { ImFontAtlas *fontAtlas = reinterpret_cast(handle); fontAtlas->FontBuilderFlags = flags; } int iggFontAtlasFontCount(IggFontAtlas handle) { ImFontAtlas *fontAtlas = reinterpret_cast(handle); return fontAtlas->Fonts.size(); }