Dear ImGui with IMM32
git clone --recursive git@github.com:maildrop/DearImGui-with-IMM32.git
cd DearImGui-with-IMM32
vs_custom_build.bat
vs_custom_build.bat clones vcpkg and installs SDL2, so it will take some time.
and
open file IMM32IMGUI.sln with Visual Studio 2019
This software is the MIT License (MIT). (Excluding sample Japanese fonts)
IMM32IMGUI/NotoSansMonoCJKjp-Regular.otf
Noto is a trademark of Google Inc. Noto fonts are open source. All Noto fonts are published under the SIL Open Font License, Version 1.1. Language data and some sample texts are from the Unicode CLDR project.
https://scripts.sil.org/cms/scripts/page.php?site_id=nrsi&id=OFL
Add ImGuiColorTextEdit to widgetTest and check the operation. Unfortunately, I needed to add a bit of code to set the position of the IME Window. Forked for this. maildrop/ImGuiColorTextEdit
ImGuiColorTextEdit/CONTRIBUTING saying
Avoid using ImGui internal since it would make the source fragile against internal changes in ImGui.
But dear ImGUI has the position of IME in ImGuiContext::PlatformImePos
ImGui::GetCurrentContext()->PlatformImePos
This ImGuiContext is defined in imgui_internal.h.
Therefore, it is not possible to pull request my forked version.
- https://github.com/maildrop/DearImGui-with-IMM32/blob/master/IMM32IMGUI/main.cpp
- https://github.com/maildrop/DearImGui-with-IMM32/blob/master/widgetTest/widgetTest.cpp
#if defined (_WIN32)
#include "imgui_imm32_onthespot.h"
#include "imgui_imm32_onthespot_sdl.h" /* If you are using SDL, include imgui_imm32_onthesport_sdl.h */
#endif /* defined( _WIN32 ) */
Include the necessary header files.
ImGUIIMMCommunication imguiIMMCommunication{};
VERIFY( imguiIMMCommunication.subclassify( window ) );
Declare the function object at outside of the message loop.
DearImGui-with-IMM32 uses SetWindowSubclass() to get IMM32 window messages.
imguiIMMCommunication();
Finally, call the function object.