// Backend used new io.AddKeyEvent() API: Good! Verify that old arrays are never written to externally.
for(intn=0;n<ImGuiKey_LegacyNativeKey_END;n++)
IM_ASSERT((io.KeysDown[n]==false||IsKeyDown(n))&&"Backend needs to either only use io.AddKeyEvent(), either only fill legacy io.KeysDown[] + io.KeyMap[]. Not both!");
IM_ASSERT((io.KeysDown[n]==false||IsKeyDown((ImGuiKey)n))&&"Backend needs to either only use io.AddKeyEvent(), either only fill legacy io.KeysDown[] + io.KeyMap[]. Not both!");
// (Integer encoded as XYYZZ for use in #if preprocessor conditionals, e.g. '#if IMGUI_VERSION_NUM > 12345')
#define IMGUI_VERSION "1.89 WIP"
#define IMGUI_VERSION_NUM 18821
#define IMGUI_VERSION_NUM 18822
#define IMGUI_HAS_TABLE
/*
@ -162,20 +162,26 @@ struct ImGuiTextBuffer; // Helper to hold and append into a text buf
structImGuiTextFilter;// Helper to parse and apply text filters (e.g. "aaaaa[,bbbbb][,ccccc]")
structImGuiViewport;// A Platform Window (always only one in 'master' branch), in the future may represent Platform Monitor
// Enums/Flags (declared as int for compatibility with old C++, to allow using as flags without overhead, and to not pollute the top of this file)
// Enumerations
// - We don't use strongly typed enums much because they add constraints (can't extend in private code, can't store typed in bit fields, extra casting on iteration)
// - Tip: Use your programming IDE navigation facilities on the names in the _central column_ below to find the actual flags/enum lists!
// In Visual Studio IDE: CTRL+comma ("Edit.GoToAll") can follow symbols in comments, whereas CTRL+F12 ("Edit.GoToImplementation") cannot.
// With Visual Assist installed: ALT+G ("VAssistX.GoToImplementation") can also follow symbols in comments.
enumImGuiKey:int;// -> enum ImGuiKey // Enum: A key identifier
typedefintImGuiCol;// -> enum ImGuiCol_ // Enum: A color identifier for styling
typedefintImGuiCond;// -> enum ImGuiCond_ // Enum: A condition for many Set*() functions
typedefintImGuiDataType;// -> enum ImGuiDataType_ // Enum: A primary data type
typedefintImGuiDir;// -> enum ImGuiDir_ // Enum: A cardinal direction
typedefintImGuiKey;// -> enum ImGuiKey_ // Enum: A key identifier
staticinlineintGetKeyIndex(ImGuiKeykey){IM_ASSERT(key>=ImGuiKey_NamedKey_BEGIN&&key<ImGuiKey_NamedKey_END&&"ImGuiKey and native_index was merged together and native_index is disabled by IMGUI_DISABLE_OBSOLETE_KEYIO. Please switch to ImGuiKey.");returnkey;}
staticinlineImGuiKeyGetKeyIndex(ImGuiKeykey){IM_ASSERT(key>=ImGuiKey_NamedKey_BEGIN&&key<ImGuiKey_NamedKey_END&&"ImGuiKey and native_index was merged together and native_index is disabled by IMGUI_DISABLE_OBSOLETE_KEYIO. Please switch to ImGuiKey.");returnkey;}
structfuncs{staticboolIsLegacyNativeDupe(ImGuiKeykey){returnkey<512&&ImGui::GetIO().KeyMap[key]!=-1;}};// Hide Native<>ImGuiKey duplicates when both exists in the array
ImGui::Text("Chars queue:");for(inti=0;i<io.InputQueueCharacters.Size;i++){ImWcharc=io.InputQueueCharacters[i];ImGui::SameLine();ImGui::Text("\'%c\' (0x%04X)",(c>''&&c<=255)?(char)c:'?',c);}// FIXME: We should convert 'c' to UTF-8 here but the functions are not public.