Commit Graph

6114 Commits

Author SHA1 Message Date
ocornut 9372601322 Tables: Fixed stacked popups incorrectly accessing g.CurrentTable of parent-in-stack windows. 2020-12-04 19:15:23 +01:00
omar eb18636e02 Tables: Fix settings not being saved in child window (issue 3367) + fix for change in master. 2020-12-04 19:15:23 +01:00
omar 9d8b40414a Tables: Added TableSetBgColor() api with color for RowBg and CellBg colors. 2020-12-04 19:15:23 +01:00
omar b6405a291d Tables: Fixed TableHeader() not declaring its height properly. Do NOT declare width. 2020-12-04 19:15:23 +01:00
omar 0847373b98 Tables: Comments on Sizing Policies + Rename border V/H flags HInner -> InnerH + offset every flags by two. 2020-12-04 19:15:23 +01:00
omar 30e21eb280 Tables: non-resizable columns also submit their requested width for auto-fit, 2020-12-04 19:15:22 +01:00
omar a0e6aa1766 Tables: Fix calculation of auto-fit (remove padding). Demo setting a width in columns setup + ImGuiTableFlags_NoKeepColumnsVisible. 2020-12-04 19:15:22 +01:00
omar c96c84b6dc Tables: Store submitted column width and avoid saving default default widths. 2020-12-04 19:15:22 +01:00
omar 57916b891b Tables: Simplified TableHeader() and not relying on Selectable(), fixed various padding issues. Added work-around for CellRect.Min.x offset by CellSpacing.x. 2020-12-04 19:15:22 +01:00
omar fcdfde2bc6 Tables: Extracted border size into a named variable. 2020-12-04 19:15:22 +01:00
omar 03c8bfaf23 Tables: Removed extra +1.0f pixels initially allocated to make right-most column visible, fix visible padding asymmetry. Tweaked debug code in demo.
Seems visible enough without. Whole thing is/was fishy, may return to it but right cleaning up seems viable.
2020-12-04 19:15:22 +01:00
omar 353bb68e90 Tables: Demo custom per-popup popups, demonstrate TableGetHoveredColumn() and ImGuiPopupFlags_NoOpenOverExistingPopup. 2020-12-04 19:15:22 +01:00
omar 745d8cdb49 Tables: Made TableHeader() responsible for opening per-column context menu to move responsibility away from TableAutoHeaders(). 2020-12-04 19:15:22 +01:00
ocornut 27e779b3ef Tables: Removed dubious window->SkipItem assignment in TableAutoHeaders(). 2020-12-04 19:15:22 +01:00
ocornut 7ca70dcb81 Tables: Using same seed ID regardless of when using a child window or not. 2020-12-04 19:15:22 +01:00
ocornut 798aed729a Tables: Added TableGetHoveredColumn(), extracted some context menu code out, simplifying TableAutoHeaders() toward aim of it being a user-land function. 2020-12-04 19:15:22 +01:00
ocornut 4c4882ffe4 Tables: Fixed channel merge when resizing columns with headers. Disable unnecessary and broken merge when using _NoClipX. 2020-12-04 19:15:22 +01:00
omar 8530b6af3d Tables: Not flagging whole column as SkipItems based on clipping visibility (breaks layout) 2020-12-04 19:15:22 +01:00
omar 363eae94e6 Tables: Further fix #3293, #3163 + fixed for row unfreezing border not always showing due to unset clip rect. 2020-12-04 19:15:22 +01:00
omar b741639468 Tables: Fix rendering of row bg and line separators (#3293, broken by fixes #3163, code was accidently relying on SetCurrentChannel not updating rectangle)
+ Used shortcut in PushTableBackground/PopTableBackground
2020-12-04 19:15:22 +01:00
ocornut 58411f27cb Tables: Avoid TableGetSortSpecs() having a side-effect on sort specs sanitization. 2020-12-04 19:15:22 +01:00
ocornut dc915c86ca Tables: Fixed a manual resize path not marking settings as dirty, TableSortSpecsSanitize() doesn't need to test table->IsInitializing 2020-12-04 19:15:22 +01:00
Rokas Kupstys 8690d1f9ce Tables: Fix sort specs sometimes incorrectly reporting sort spec count when table loses _MultiSortable flag during runtime. 2020-12-04 19:15:22 +01:00
ocornut af992d1321 Tables: Tweak settings functions to more prominently clarify the two levels of function. 2020-12-04 19:15:22 +01:00
omar 7513842284 Tables: Fix assert/crash when a visible column is clipped in a multi clip group situation. 2020-12-04 19:15:22 +01:00
omar e41fc7b5b0 Tables: Fix TableDrawMergeChannels() mistakenly merging unfrozen columns cliprect with host cliprect. Comments, debug. 2020-12-04 19:15:21 +01:00
omar fec9d7d226 Tables: Rescale fixed widths when font size change to support varying dpi scale at runtime and on .ini reload. 2020-12-04 19:15:21 +01:00
omar 6bc0bbccf3 Tables: Restore width/weight saving/loading code. Non-weighted width currently not font/DPI change friendly. 2020-12-04 19:15:21 +01:00
omar af52a0cea2 Tables: Resizing weighted column preserve sum of weights. Fix ResizedColumn init leading to undesirable TableSetColumnWidth() on first run. Rework TableSettingsHandler_ReadLine() structure to allow other types of line. 2020-12-04 19:15:21 +01:00
omar bc170e7325 Tables: Renamed ResizeWeight->WidthStretchWeight, WidthRequested->WidthFixedRequest, clarififications, comments. 2020-12-04 19:15:21 +01:00
omar 23c60b2814 Tables: Renamed internal fields: Active->Visible, Visible->VisibleUnclipped to be less misleading. 2020-12-04 19:15:21 +01:00
omar dff26191bd Tables: Try to report contents width to outer window, generally better auto-fit. 2020-12-04 19:15:21 +01:00
omar 466b6e619a Tables: Fixed incorrect application of CursorMaxPos.x (3162) 2020-12-04 19:15:21 +01:00
omar 95c273618e Tables: Allow hot-reload of settings (merge policy), tidying up settings code 2020-12-04 19:15:21 +01:00
omar 9b6d0fdb7a Tables: Fixed ignoring DefaultHide or DefaultSort data from flags when loading settings that don't have them. 2020-12-04 19:15:21 +01:00
omar 9f43aae226 Tables: Calculating ideal total width, some renaming, comments. Clarify that inner_width is unused with ScrollX=0. Clip many comments to 120 columns. 2020-12-04 19:15:21 +01:00
omar b7ff85d9ad Tables: Browse settings list in Metrics (outside of Table entry). 2020-12-04 19:15:21 +01:00
omar 8eb1c925f0 Tables: Internals: Added FindTableByID(), removing trailing spaces.
# Conflicts:
#	imgui_internal.h
2020-12-04 19:15:21 +01:00
omar e60b5a3f75 Tables: Internals: Added TableGetColumnResizeID(), renamed InstanceNo > InstanceCurrent. 2020-12-04 19:15:21 +01:00
omar 104b11051f Tables: Added ImGuiTableColumnFlags_NoReorder. 2020-12-04 19:15:21 +01:00
omar b7fa96679e Tables: Locking IndentX per-row so multiple columns with IndentEnabled don't get indent shearing. 2020-12-04 19:15:21 +01:00
omar 5ffc9e0846 Tables: Renaming Table's DisplayOrder[] -> DisplayOrderToIndex[], Columns's IndexDisplayOrder -> DisplayOrder 2020-12-04 19:15:21 +01:00
omar a956629b40 Tables: Using same allocation for our Columns and DisplayOrder array. Mostly designed to facilitate adding new arrays. 2020-12-04 19:15:21 +01:00
omar 6dff061309 Internals: added ImSpanAllocator<> helper. 2020-12-04 19:15:20 +01:00
omar 182115409a Internals: added ImSpan helper structure + 2020/10/01 stricter bound checking 2020-12-04 19:15:20 +01:00
ocornut 054c67079a Tables: Fix scrolling with more than 32 columns (3058). Fix limit of 63 columms instead of 64. Added BitArray. 2020-12-04 19:15:20 +01:00
ocornut d37cef40f2 Tables: Tidying up TableDrawMergeChannels() with a struct. (3058) 2020-12-04 19:15:20 +01:00
ocornut 7277ab6530 Tables: Comments, renamed merge_set_xxx to merge_group_xxx. Removed unused array and incorrect assert, replaced with earlier correct assert. (3058) 2020-12-04 19:15:20 +01:00
ocornut 0190b619cf Tables: Fixed demo layout when clipped. Fixed warnings. 2020-12-04 19:15:20 +01:00
ocornut f130db51ae Tables: Added TableSetColumnWidth() api variant aimed at becoming public facing. 2020-12-04 19:15:20 +01:00