ocornut
b0db741770
Demo tweaks. Moved Tabs to Widgets section. Added to Tables demo. Increased version following 00b35c08
.
2021-01-14 11:59:33 +01:00
ocornut
00b35c081e
Tables: (breaking) removed ImGuiTableColumnFlags_WidthAuto which now can be expressed as _Fixed + _NoResize. WidthRequest gets updated when RequestOutputMaskByIndex is set rather than Visible.
2021-01-13 18:42:02 +01:00
ocornut
36535514d5
Backends: DX12: Fix warning ( #3706 ). Disable obsolete Tables enums, leave them commented out. Using _MSVC_LANG to enable offsetof() and static_assert() on VS2015.3+
2021-01-11 10:54:52 +01:00
ocornut
e18abe3619
Tables: (Breaking) Added ImGuiTableFlags_SizingFixedSame, ImGuiTableFlags_SizingStretchProp. Removed ImGuiTableFlags_SameWidths.
...
Simplified some code and clariffied that currently non-resizable = always revert to default (while waiting to untangle Fixed vs Auto and programmatic override not going through TableSetupColumn)
Whereas ImGuiTableFlags_SameWidths has some unusual handling of mixed Fixed/Stretch columns, we know treat them separately.
2021-01-08 18:40:52 +01:00
ocornut
0e3ba37e6d
Tables: Tidying up. Shuffle some columns fields to facilitate debugging + comments + demo tweaks + metrics highlight.
2021-01-08 18:32:18 +01:00
ocornut
414f82254b
Tables: (Breaking) rename ImGuiTableFlags_SizingPolicyFixed > ImGuiTableFlags_SizingFixedFit, ImGuiTableFlags_SizingPolicyStretch > ImGuiTableFlags_SizingStretchSame in prevision for new policies.
2021-01-08 18:10:55 +01:00
ocornut
8b5f3798e0
Tables: Moved demo chunks. Made right-most non-resizable same-width column hidden to alleviate the issue where they are off by 1 pixel.
2021-01-07 17:11:18 +01:00
ocornut
9bcf77eb81
Fixed using IsItemEdited() after Combo() not matching the return value from Combo(). ( #2034 ) + fix some PVS warnings, fix typo, blanks.
...
Amend e28b1078
2021-01-04 19:15:20 +01:00
ocornut
eb88fee052
Tables: internal tidying up, calculate WidthAuto in first loop of layout + TableSetupColumn() with unspecified stretch weight leaves it at -1.0f (unset) rather than overrding default. Amend 3b3503e
.
...
Both changes are intended to have no side-effects. Committed separately from upcoming commit for easier future bissecting.
Small demo fix.
2020-12-25 16:30:44 +01:00
ocornut
3573195112
Tables: (breaking) rename ImGuiTableFlags_ColumnsWidthStretch > ImGuiTableFlags_SizingPolicyStretch, ImGuiTableFlags_ColumnsWidthFixed > ImGuiTableFlags_SizingPolicyFixed in prevision for other policies.
2020-12-24 18:32:27 +01:00
ocornut
b015ea93fd
Style tweaks, disabled default window rounding by default, reduced size of resize grip, made less prominent, increased WindowBg alpha in classic style.
...
TestEngine: Fixed Checkbox() not reporting its checkable state when clipped.
2020-12-24 18:31:51 +01:00
ocornut
3fbb928c9f
Tables: explicit/custom width in TableSetupColumn() is reapplied when table or column becomes not resizable. Comments.
2020-12-23 12:14:55 +01:00
ocornut
956435768f
Tables: (breaking) renamed ImGuiTableColumnFlags_WidthAutoResize to _WidthAuto., default to WidthFixed policy when host window has auto-resize.
...
Fix edge case with TableSetColumnWidth on small windows (amend 972ca816
)
2020-12-23 11:39:15 +01:00
ocornut
1aa59f90d0
Minor API comments and tweaks, standardize index used in imgui.h. Tables: tweaked TableSetupColumn() assert to use IM_ASSERT_USER_ERROR().
2020-12-22 15:30:26 +01:00
ocornut
2e48c2da81
Removed redirecting functions/enums names that were marked obsolete in 1.63 (August 2018) + tables tweaks.
2020-12-21 19:42:37 +01:00
ocornut
4d8e839ddf
Renamed ImDrawList::AddBezierCurve() to ImDrawList::AddBezierCubic(), ImDrawList::PathBezierCurveTo() to ImDrawList::PathBezierCubicCurveTo(). ( #3127 , #3664 , #3665 )
...
Renamed corresponding internal functions as well.
2020-12-21 17:13:36 +01:00
ocornut
550bfcfc59
Amend defce31
Add ImDrawList::AddQuadBezierCurve(), ImDrawList::PathQuadBezierCurveTo() ( #3127 , #3664 , #3665 )
2020-12-21 16:30:10 +01:00
Aiekick
defce31c2e
Add ImDrawList::AddQuadBezierCurve(), ImDrawList::PathQuadBezierCurveTo() ( #3127 , #3664 , #3665 )
2020-12-21 16:25:14 +01:00
ocornut
ae63d56426
Tables: remove ImGuiTableFlags_NoHeadersWidth since it is so rarely used and can be specified on a per-column basis.
2020-12-18 19:03:47 +01:00
ocornut
532aa5a69b
Tables: (breaking) change outer_size.x default value to -FLT_MIN, make outer_size.x == 0.0f act as ImGuiTableFlags_NoHostExtendX ( #3605 , ad83976b
) when no scrolling and no stretch column. Which is more consistent.
...
Demo: moved "Compact table" to "Padding" section, makes more sense. Tweaked demo.
2020-12-18 17:51:50 +01:00
ocornut
30468829c2
Tables: Internal: Maintain InnerRect to further clarify some code. Renamed Bg1 fields to Bg2 (used by Selectable) as the other handles Bg0+Bg1.
2020-12-18 14:32:51 +01:00
ocornut
ad83976b35
Tables: Added ImGuiTableFlags_NoHostExtendX ( #3605 ) marked as WIP, will probably rename.
...
Moved some code from BeginTable() to TableUpdateLayout() to late latch some of the required data.
2020-12-18 14:32:51 +01:00
ocornut
bd899efbd0
Tables: fixed "resize to default" of multiple stretch column (added 3b3503e
, broken 7a61f340
).
...
Fixed a warning.
Storing RightMostStretchedColumn column for resizing code.
Avoid clearing RightMostEnabledColumn in BeginTable() so resizing code can potentially use it.
(Added regression tests for resize all to default imgui_dev)
2020-12-14 15:49:20 +01:00
ocornut
738606a294
Tables: added ImGuiTableFlags_SortTristate. Renamed ImGuiTableFlags_MultiSortable to ImGuiTableFlags_SortMulti. Removed now unused FlagsIn storage.
2020-12-11 23:01:09 +01:00
ocornut
17536f9add
Tables: more consistent use of CellPadding.x*2 and clip-rect on right-most side of non-bordered column + fix cellbg for standalone TableHeader call.
...
Using CellPadding.x on both sides when BorderV is off, generally most consistent and with default value (4,2) promotes at-glance visible spacing between non-bordered columns. Effectively double horizontal padding on non-bordered columns.
Made ClipRect.Max.x matches WorkMaxX which is where we'd like to go for windows themselves.
TableHeader() submit single cell bg color if not already submitted as a full header row.
Misc comments/docs updates.
2020-12-09 15:13:09 +01:00
ocornut
0b14dd9e55
Tables: fixed propagation of line height from outside the table. Added outer-width demo.
2020-12-04 19:15:27 +01:00
ocornut
6e38026627
Tables: changelog. removed TableGetHoveredColumn() from public API in favor of using TableGetColumnFlags(). renamed ImGuiTableSortSpecsColumn to ImGuiTableColumnSortSpecs.
2020-12-04 19:15:27 +01:00
ocornut
b194df413c
Tables: exposed status flags via TableGetColumnFlags(), removed TableGetColumnIsSorted()
...
Scoped width auto calc.
2020-12-04 19:15:27 +01:00
ocornut
984c4cb5f8
Tables: distinguishing per-column IsVisible from IsRequestOutput which is returned to user. Clarified clipping rules/requirements. Comments.
2020-12-04 19:15:27 +01:00
ocornut
7aed4b152b
Tables: improve index, file structure tweaks.
2020-12-04 19:15:26 +01:00
ocornut
a70c6aae9f
Tables: demo synced tables + fix resizing indented synced tables.
2020-12-04 19:15:26 +01:00
ocornut
0c9ab0acdd
Tables: setup and maintain ItemWidth per column.
2020-12-04 19:15:26 +01:00
ocornut
8f126d5d95
Tables: rename ImGuiTableFlags_SizingPolicyStretchX to ImGuiTableFlags_ColumnsWidthStretch, ImGuiTableFlags_SizingPolicyFixedX to ImGuiTableFlags_ColumnsWidthFixed.
2020-12-04 19:15:26 +01:00
ocornut
41f89e0f59
Tables: added ImGuiTableFlags_SameWidths, used in demo. Reordered columns flags and exposed them all in Columns Flags section.
2020-12-04 19:15:26 +01:00
ocornut
3a2f0bfc04
Tables: demo inner_size + scrollx + stretch, added TableGetRowIndex(), renamed _WidthAlwaysAutoResize to _WidthAutoResize.
2020-12-04 19:15:25 +01:00
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.
2020-12-04 19:15:25 +01:00
ocornut
c5dcf2fde1
Tables: rework keep-visible/max-width code to be less incorrect, but right-most column may effectively has few pixels less of visible cliprect width.
...
See table_width_distrib and table_width_keep_visible tests.
+ fix minor left-side clipping on post-frozen column
+ made TableHeader() use reliable column->MaxX
2020-12-04 19:15:25 +01:00
ocornut
52f24df668
Tables: comments, tweaks, added internal TableSetColumnVisible(), merged the two TableSetColumnWidth().
2020-12-04 19:15:25 +01:00
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.
2020-12-04 19:15:25 +01:00
ocornut
5465d30d67
Tables: added ImGuiTableFlags_PreciseStretchWidths.
2020-12-04 19:15:25 +01:00
ocornut
10db896813
Tables: store RawData in a simple void* pointer, rename ContentMinX > WorkMinX, misc tidying up.
...
Removed unnecessary casts when using CheckboxFlags().
2020-12-04 19:15:25 +01:00
ocornut
fe6131168a
Tables: Additionally commentary about clipper in the demo + minor padding tweak.
2020-12-04 19:15:25 +01:00
ocornut
557253e776
Tables: create a separate background draw channel for rows below the frozen line.
2020-12-04 19:15:24 +01:00
ocornut
d9ca3939e1
Tables: Tidy up comments. Replaced some Columns by Tables in demo. Removed ImGuiTableFlags_Scroll (combining ScrollX/ScrollY) because each axis inccur different requirements/constraints.
2020-12-04 19:15:24 +01:00
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.
2020-12-04 19:15:24 +01:00
ocornut
77e561aaf3
Tables: Made demo options consistently compact, replaced constants with font-based sizes, added comments on memory allocations.
2020-12-04 19:15:24 +01:00
ocornut
02b27b75a4
Tables: Added ImGuiTableFlags_NoBordersInBody, ImGuiTableFlags_NoBordersInBodyUntilResize, removed ImGuiTableFlags_BordersFullHeightV.
2020-12-04 19:15:24 +01:00
ocornut
172704c079
Tables: Add demo code. Remove dead code + seemingly duplicate border in TableDrawBorders().
2020-12-04 19:15:24 +01:00
ocornut
e66b28693a
Tables: Added ImGuiTableFlags_ContextMenuInBody flag.
...
Worked to get TableOpenContextMenu() in public API but kept it internal.
2020-12-04 19:15:24 +01:00
ocornut
6182973bde
Tables: (Breaking) Rename TableNextCell() to TableNextColumn(), made TableNextRow() NOT enter into first column.
2020-12-04 19:15:24 +01:00