Tables: fixed an assert when combining Tables, Frozen Rows, Clipper and BeginMultiSelect() in a certain order. (#8595, #8250)

The table->CurrentColumn != -1 test in BeginMultiSelect() was affected. It would have been possible to amend the test with table->IsInsideRow but this seems generally saner.

Docs: fixed typo. (#8592)
This commit is contained in:
ocornut
2025-04-26 15:41:08 +02:00
parent 75964a9860
commit cbb8edb0b7
3 changed files with 6 additions and 1 deletions

View File

@@ -78,6 +78,8 @@ Other changes:
- TreeNode: fixed incorrect clipping of arrow/bullet when using ImGuiTreeNodeFlags_SpanAllColumns. - TreeNode: fixed incorrect clipping of arrow/bullet when using ImGuiTreeNodeFlags_SpanAllColumns.
- Tables: fixed TableHeader() eager vertical clipping of text which may be noticeable - Tables: fixed TableHeader() eager vertical clipping of text which may be noticeable
with FramePadding.y was too small. (#6236) with FramePadding.y was too small. (#6236)
- Tables: fixed an assert when combining Tables, Frozen Rows, Clipper and BeginMultiSelect()
in a certain order. (#8595, #8250)
- Tabs: fixes small issues with how "..." ellipsis moved depending on visibility - Tabs: fixes small issues with how "..." ellipsis moved depending on visibility
of Close Button or Unsaved Document marker. (#8387) of Close Button or Unsaved Document marker. (#8387)
- Nav: fixed assertion when holding gamepad FaceLeft/West button to open - Nav: fixed assertion when holding gamepad FaceLeft/West button to open

View File

@@ -120,7 +120,7 @@ See the [Getting Started](https://github.com/ocornut/imgui/wiki/Getting-Started)
On most platforms and when using C++, **you should be able to use a combination of the [imgui_impl_xxxx](https://github.com/ocornut/imgui/tree/master/backends) backends without modification** (e.g. `imgui_impl_win32.cpp` + `imgui_impl_dx11.cpp`). If your engine supports multiple platforms, consider using more imgui_impl_xxxx files instead of rewriting them: this will be less work for you, and you can get Dear ImGui running immediately. You can _later_ decide to rewrite a custom backend using your custom engine functions if you wish so. On most platforms and when using C++, **you should be able to use a combination of the [imgui_impl_xxxx](https://github.com/ocornut/imgui/tree/master/backends) backends without modification** (e.g. `imgui_impl_win32.cpp` + `imgui_impl_dx11.cpp`). If your engine supports multiple platforms, consider using more imgui_impl_xxxx files instead of rewriting them: this will be less work for you, and you can get Dear ImGui running immediately. You can _later_ decide to rewrite a custom backend using your custom engine functions if you wish so.
Integrating Dear ImGui within your custom engine is a matter of 1) wiring mouse/keyboard/gamepad inputs 2) uploading a texture to your GPU/render engine 3) providing a render function that can bind textures and render textured triangles, which is essentially what Backends are doing. The [examples/](https://github.com/ocornut/imgui/tree/master/examples) folder is populated with applications doing just that: setting up a window and using backends. If you follow the [Getting Started](https://github.com/ocornut/imgui/wiki/Getting-Started) guide it should in theory takes you less than an hour to integrate Dear ImGui. **Make sure to spend time reading the [FAQ](https://www.dearimgui.com/faq), comments, and the examples applications!** Integrating Dear ImGui within your custom engine is a matter of 1) wiring mouse/keyboard/gamepad inputs 2) uploading a texture to your GPU/render engine 3) providing a render function that can bind textures and render textured triangles, which is essentially what Backends are doing. The [examples/](https://github.com/ocornut/imgui/tree/master/examples) folder is populated with applications doing just that: setting up a window and using backends. If you follow the [Getting Started](https://github.com/ocornut/imgui/wiki/Getting-Started) guide it should in theory take you less than an hour to integrate Dear ImGui. **Make sure to spend time reading the [FAQ](https://www.dearimgui.com/faq), comments, and the examples applications!**
Officially maintained backends/bindings (in repository): Officially maintained backends/bindings (in repository):
- Renderers: DirectX9, DirectX10, DirectX11, DirectX12, Metal, OpenGL/ES/ES2, SDL_GPU, SDL_Renderer2/3, Vulkan, WebGPU. - Renderers: DirectX9, DirectX10, DirectX11, DirectX12, Metal, OpenGL/ES/ES2, SDL_GPU, SDL_Renderer2/3, Vulkan, WebGPU.

View File

@@ -1953,7 +1953,10 @@ void ImGui::TableEndRow(ImGuiTable* table)
IM_ASSERT(table->IsInsideRow); IM_ASSERT(table->IsInsideRow);
if (table->CurrentColumn != -1) if (table->CurrentColumn != -1)
{
TableEndCell(table); TableEndCell(table);
table->CurrentColumn = -1;
}
// Logging // Logging
if (g.LogEnabled) if (g.LogEnabled)