1108 Commits (79c9eaa78ef0dd36a8d1ddf2742b457913ce441a)

Author SHA1 Message Date
ocornut 79c9eaa78e Tables: Internals: renamed Visible to Enabled to avoid confusion with visibility checks. 4 years ago
ocornut 5ef7b831c2 Tables: removed ImGuiTableSortSpecs::ColumnsMask because it needlessly exposes our 64-columns limitation which we'd eventually would like to lift
+ shuffle declarations in internals
4 years ago
ocornut e09454aec4 Tables: removed TableGetColumnIsVisible from public api, re-specced as TableGetColumnIsHidden() returning same flag as setter, clipper increase CurrentRow. 4 years ago
ocornut 0c9ab0acdd Tables: setup and maintain ItemWidth per column. 4 years ago
ocornut 3b3503e60f Tables: decent support for auto-resize of stretch columns (trickier than it sounds)
Four cases:
1. visible columns are all stretch, resize all : "size all to default" reset to default weight
2. visible columns are all stretch, resize one: "size one to fit" set weight, reapply weight (todo: improve weight redistribution in case of >1 siblings)
3. visible columns are mixed, resize all: "size all to fit/default" reset stretchs to default weight, set fixed to auto width
4. visible columns are mixed, resize one: "size one to fit", redistribute weight the same way as a manual resize
+ TableSetupColumn() more consistently clear AutoFitQueue.
+ zero-clear RowCellData buffer.
4 years ago
ocornut 197e9c085b Tables: separate bg0 and bg1 draw channels, selectable above bg color + will facilitate drawing of borders in EndTable().
+ unused code to strip out dummy draw channel calls.
4 years ago
ocornut 52f24df668 Tables: comments, tweaks, added internal TableSetColumnVisible(), merged the two TableSetColumnWidth(). 4 years ago
ocornut bf197c74f6 Tables: storing WorkMaxX, made offset_x == MinX to be clearer, clip rect merge uses ClipRect.max.x directly, removed unused ShrinkWidth code, metrics. 4 years ago
ocornut 10db896813 Tables: store RawData in a simple void* pointer, rename ContentMinX > WorkMinX, misc tidying up.
Removed unnecessary casts when using CheckboxFlags().
4 years ago
ocornut 82cf41d804 Tables: tooltip on clipped TableHeader() (amended) 4 years ago
ocornut 507db499e4 Tables: work on background draw channel handling (amend "create a separate background draw channel") + Selectable disable spacing when spanning. 4 years ago
ocornut fe6131168a Tables: Additionally commentary about clipper in the demo + minor padding tweak. 4 years ago
ocornut 24a7c45b02 Tables: Fix for 64 columns (maximum of 131 temporary draw channels). 4 years ago
ocornut e5a5256971 Tables: Garbage collection to relieve draw splitter buffers + for test engine: compact settings, remove table. 4 years ago
ocornut f80097ca96 Tables: Fix applying WorkRect in non-scrolling tables. Fix inverted BackgroundClipRect being passed to ImDrawCmd. 4 years ago
ocornut 557253e776 Tables: create a separate background draw channel for rows below the frozen line. 4 years ago
ocornut d3222086f0 Tables: Moved TableSetupScrollFreeze(), TableUpdateDrawChannels() lower in more adequate spots.
+ rename IsFreezeRowsPassed to IsUnfrozen.
4 years ago
ocornut 51abdd53e3 Tables: renamed somehow-duplicate ContentWidth members (implicitly == Max - Min), renamed StartX to ContentMinX for consistency. 4 years ago
ocornut 1731ae5a09 Tables: Reworked padding/spacing/width.
All widths are stored without padding.
Decorelate padding from presence of border.
Added ImGuiTableFlags_Pad/NoPad flags.
Added demo.
Merge StartXHeaders and StartXRows into StartX.
Distinguish CellSpacingX1 and CellSpacingX2 for clarity and to avoid loss of width on non-even spacing values.
4 years ago
ocornut ac5b1648e6 Tables: Various internal renaming + merge StartXHeaders/StartXRows into StartX. 4 years ago
ocornut 2ee20fdb7c Tables: Frozen rows/columns in nav menu layer, fixed conflict between column id and holding child id. 4 years ago
ocornut e66b28693a Tables: Added ImGuiTableFlags_ContextMenuInBody flag.
Worked to get TableOpenContextMenu() in public API but kept it internal.
4 years ago
ocornut cc12ea084b Tables: Added TableSetColumnSortDirection() + added in default context menu code (disabled, feels unnecessary, but work is done to ensure programmatic access) 4 years ago
omar 8ec05fc034 Tables: Fixed holding on table pointers accross resize/invalidation of the pool buffer. 4 years ago
omar 931829f701 Tables: (Breaking change) Sorting: Made it users responsability to clear SpecsDirty back to false, so TableGetSortSpecs() doesn't have side-effect any more. + comments 4 years ago
omar 8e97cdf8e8 Tables: Fix for calling TableSetBgColor(ImGuiTableBgTarget_CellBg) multiple times on the same cell. 4 years ago
ocornut 45a80716b1 Tables: Fixed three bugs + metrics tweaks.
- Fixed bug when ending a table within another (outer table column offset was overwritten instead of restored).
- Fixed assert when settings data has mismatching column count.
- Fixed restoring g.CurrentTable when calling EndChild() from inside table inner window.
- Made inactive tables grey in metrics.
- Fix warning.
(amended twice)
4 years ago
omar eb18636e02 Tables: Fix settings not being saved in child window (issue 3367) + fix for change in master. 4 years ago
omar 9d8b40414a Tables: Added TableSetBgColor() api with color for RowBg and CellBg colors. 4 years ago
omar 0847373b98 Tables: Comments on Sizing Policies + Rename border V/H flags HInner -> InnerH + offset every flags by two. 4 years ago
omar c96c84b6dc Tables: Store submitted column width and avoid saving default default widths. 4 years ago
ocornut 798aed729a Tables: Added TableGetHoveredColumn(), extracted some context menu code out, simplifying TableAutoHeaders() toward aim of it being a user-land function. 4 years ago
ocornut 4c4882ffe4 Tables: Fixed channel merge when resizing columns with headers. Disable unnecessary and broken merge when using _NoClipX. 4 years ago
omar 363eae94e6 Tables: Further fix #3293, #3163 + fixed for row unfreezing border not always showing due to unset clip rect. 4 years ago
ocornut 58411f27cb Tables: Avoid TableGetSortSpecs() having a side-effect on sort specs sanitization. 4 years ago
ocornut af992d1321 Tables: Tweak settings functions to more prominently clarify the two levels of function. 4 years ago
omar fec9d7d226 Tables: Rescale fixed widths when font size change to support varying dpi scale at runtime and on .ini reload. 4 years ago
omar 6bc0bbccf3 Tables: Restore width/weight saving/loading code. Non-weighted width currently not font/DPI change friendly. 4 years ago
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. 4 years ago
omar bc170e7325 Tables: Renamed ResizeWeight->WidthStretchWeight, WidthRequested->WidthFixedRequest, clarififications, comments. 4 years ago
omar 23c60b2814 Tables: Renamed internal fields: Active->Visible, Visible->VisibleUnclipped to be less misleading. 4 years ago
omar dff26191bd Tables: Try to report contents width to outer window, generally better auto-fit. 4 years ago
omar 95c273618e Tables: Allow hot-reload of settings (merge policy), tidying up settings code 4 years ago
omar 9b6d0fdb7a Tables: Fixed ignoring DefaultHide or DefaultSort data from flags when loading settings that don't have them. 4 years ago
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. 4 years ago
omar b7ff85d9ad Tables: Browse settings list in Metrics (outside of Table entry). 4 years ago
omar 8eb1c925f0 Tables: Internals: Added FindTableByID(), removing trailing spaces.
# Conflicts:
#	imgui_internal.h
4 years ago
omar e60b5a3f75 Tables: Internals: Added TableGetColumnResizeID(), renamed InstanceNo > InstanceCurrent. 4 years ago
omar 104b11051f Tables: Added ImGuiTableColumnFlags_NoReorder. 4 years ago
omar b7fa96679e Tables: Locking IndentX per-row so multiple columns with IndentEnabled don't get indent shearing. 4 years ago