MCPcopy Create free account
hub / github.com/Aegel5/SimpleSwitcher / TableFixFlags

Function TableFixFlags

imgui_tiny_app/imgui/imgui_tables.cpp:272–303  ·  view source on GitHub ↗

Helper

Source from the content-addressed store, hash-verified

270
271// Helper
272inline ImGuiTableFlags TableFixFlags(ImGuiTableFlags flags, ImGuiWindow* outer_window)
273{
274 // Adjust flags: set default sizing policy
275 if ((flags & ImGuiTableFlags_SizingMask_) == 0)
276 flags |= ((flags & ImGuiTableFlags_ScrollX) || (outer_window->Flags & ImGuiWindowFlags_AlwaysAutoResize)) ? ImGuiTableFlags_SizingFixedFit : ImGuiTableFlags_SizingStretchSame;
277
278 // Adjust flags: enable NoKeepColumnsVisible when using ImGuiTableFlags_SizingFixedSame
279 if ((flags & ImGuiTableFlags_SizingMask_) == ImGuiTableFlags_SizingFixedSame)
280 flags |= ImGuiTableFlags_NoKeepColumnsVisible;
281
282 // Adjust flags: enforce borders when resizable
283 if (flags & ImGuiTableFlags_Resizable)
284 flags |= ImGuiTableFlags_BordersInnerV;
285
286 // Adjust flags: disable NoHostExtendX/NoHostExtendY if we have any scrolling going on
287 if (flags & (ImGuiTableFlags_ScrollX | ImGuiTableFlags_ScrollY))
288 flags &= ~(ImGuiTableFlags_NoHostExtendX | ImGuiTableFlags_NoHostExtendY);
289
290 // Adjust flags: NoBordersInBodyUntilResize takes priority over NoBordersInBody
291 if (flags & ImGuiTableFlags_NoBordersInBodyUntilResize)
292 flags &= ~ImGuiTableFlags_NoBordersInBody;
293
294 // Adjust flags: disable saved settings if there's nothing to save
295 if ((flags & (ImGuiTableFlags_Resizable | ImGuiTableFlags_Hideable | ImGuiTableFlags_Reorderable | ImGuiTableFlags_Sortable)) == 0)
296 flags |= ImGuiTableFlags_NoSavedSettings;
297
298 // Inherit _NoSavedSettings from top-level window (child windows always have _NoSavedSettings set)
299 if (outer_window->RootWindow->Flags & ImGuiWindowFlags_NoSavedSettings)
300 flags |= ImGuiTableFlags_NoSavedSettings;
301
302 return flags;
303}
304
305ImGuiTable* ImGui::TableFindByID(ImGuiID id)
306{

Callers 1

BeginTableExMethod · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected