mirror of
https://github.com/ocornut/imgui.git
synced 2026-01-09 23:54:20 +00:00
Changed ImTextCharToUtf8() to return bytes count rather than original pointer. (#8820)
Amend c2bf4abfa1
This commit is contained in:
parent
3401dbde92
commit
ed5bd1f9ef
3 changed files with 12 additions and 7 deletions
15
imgui.cpp
15
imgui.cpp
|
|
@ -2582,11 +2582,11 @@ static inline int ImTextCharToUtf8_inline(char* buf, int buf_size, unsigned int
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
const char* ImTextCharToUtf8(char out_buf[5], unsigned int c)
|
int ImTextCharToUtf8(char out_buf[5], unsigned int c)
|
||||||
{
|
{
|
||||||
int count = ImTextCharToUtf8_inline(out_buf, 5, c);
|
int count = ImTextCharToUtf8_inline(out_buf, 5, c);
|
||||||
out_buf[count] = 0;
|
out_buf[count] = 0;
|
||||||
return out_buf;
|
return count;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Not optimal but we very rarely use this function.
|
// Not optimal but we very rarely use this function.
|
||||||
|
|
@ -16922,8 +16922,10 @@ void ImGui::DebugNodeFont(ImFont* font)
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
char c_str[5];
|
char c_str[5];
|
||||||
Text("Fallback character: '%s' (U+%04X)", ImTextCharToUtf8(c_str, font->FallbackChar), font->FallbackChar);
|
ImTextCharToUtf8(c_str, font->FallbackChar);
|
||||||
Text("Ellipsis character: '%s' (U+%04X)", ImTextCharToUtf8(c_str, font->EllipsisChar), font->EllipsisChar);
|
Text("Fallback character: '%s' (U+%04X)", c_str, font->FallbackChar);
|
||||||
|
ImTextCharToUtf8(c_str, font->EllipsisChar);
|
||||||
|
Text("Ellipsis character: '%s' (U+%04X)", c_str, font->EllipsisChar);
|
||||||
|
|
||||||
for (int src_n = 0; src_n < font->Sources.Size; src_n++)
|
for (int src_n = 0; src_n < font->Sources.Size; src_n++)
|
||||||
{
|
{
|
||||||
|
|
@ -16965,7 +16967,10 @@ void ImGui::DebugNodeFont(ImFont* font)
|
||||||
{
|
{
|
||||||
char utf8_buf[5];
|
char utf8_buf[5];
|
||||||
for (unsigned int n = c; n < c_end; n++)
|
for (unsigned int n = c; n < c_end; n++)
|
||||||
BulletText("Codepoint U+%04X (%s)", n, ImTextCharToUtf8(utf8_buf, n));
|
{
|
||||||
|
ImTextCharToUtf8(utf8_buf, n);
|
||||||
|
BulletText("Codepoint U+%04X (%s)", n, utf8_buf);
|
||||||
|
}
|
||||||
TreePop();
|
TreePop();
|
||||||
}
|
}
|
||||||
TableNextColumn();
|
TableNextColumn();
|
||||||
|
|
|
||||||
2
imgui.h
2
imgui.h
|
|
@ -29,7 +29,7 @@
|
||||||
// Library Version
|
// Library Version
|
||||||
// (Integer encoded as XYYZZ for use in #if preprocessor conditionals, e.g. '#if IMGUI_VERSION_NUM >= 12345')
|
// (Integer encoded as XYYZZ for use in #if preprocessor conditionals, e.g. '#if IMGUI_VERSION_NUM >= 12345')
|
||||||
#define IMGUI_VERSION "1.92.2 WIP"
|
#define IMGUI_VERSION "1.92.2 WIP"
|
||||||
#define IMGUI_VERSION_NUM 19211
|
#define IMGUI_VERSION_NUM 19212
|
||||||
#define IMGUI_HAS_TABLE // Added BeginTable() - from IMGUI_VERSION_NUM >= 18000
|
#define IMGUI_HAS_TABLE // Added BeginTable() - from IMGUI_VERSION_NUM >= 18000
|
||||||
#define IMGUI_HAS_TEXTURES // Added ImGuiBackendFlags_RendererHasTextures - from IMGUI_VERSION_NUM >= 19198
|
#define IMGUI_HAS_TEXTURES // Added ImGuiBackendFlags_RendererHasTextures - from IMGUI_VERSION_NUM >= 19198
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -417,7 +417,7 @@ IMGUI_API const char* ImParseFormatSanitizeForScanning(const char* fmt_in, cha
|
||||||
IMGUI_API int ImParseFormatPrecision(const char* format, int default_value);
|
IMGUI_API int ImParseFormatPrecision(const char* format, int default_value);
|
||||||
|
|
||||||
// Helpers: UTF-8 <> wchar conversions
|
// Helpers: UTF-8 <> wchar conversions
|
||||||
IMGUI_API const char* ImTextCharToUtf8(char out_buf[5], unsigned int c); // return out_buf
|
IMGUI_API int ImTextCharToUtf8(char out_buf[5], unsigned int c); // return output UTF-8 bytes count
|
||||||
IMGUI_API int ImTextStrToUtf8(char* out_buf, int out_buf_size, const ImWchar* in_text, const ImWchar* in_text_end); // return output UTF-8 bytes count
|
IMGUI_API int ImTextStrToUtf8(char* out_buf, int out_buf_size, const ImWchar* in_text, const ImWchar* in_text_end); // return output UTF-8 bytes count
|
||||||
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
|
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
|
||||||
IMGUI_API int ImTextStrFromUtf8(ImWchar* out_buf, int out_buf_size, const char* in_text, const char* in_text_end, const char** in_remaining = NULL); // return input UTF-8 bytes count
|
IMGUI_API int ImTextStrFromUtf8(ImWchar* out_buf, int out_buf_size, const char* in_text, const char* in_text_end, const char** in_remaining = NULL); // return input UTF-8 bytes count
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue