Commit Graph

96 Commits

Author SHA1 Message Date
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
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
Omar ae6fc48f60 Tables: Fix sort direction (issue 3023). Remove SortOrder from ImGuiTableSortSpecsColumn. Made sort arrow smaller. Added debug stuff in metrics. 2020-12-04 19:15:20 +01:00
omar 643cf6fc8c Tables: Added ImGuiTableFlags_NoKeepColumnsVisible wip flag useful for layout purpose. (WIP) 2020-12-04 19:15:20 +01:00
omar 104ec408a8 Tables: Fixed content size calculation creating feedback loops. Fixed handling of _DefaultSort with _PreferSortXXXflags (@parbo). Comments. 2020-12-04 19:15:20 +01:00
omar 787a309445 Tables: Fixed headers closing popups. 2020-12-04 19:15:20 +01:00
omar f5eee210a0 Tables: TableHeader() uses provided row min header rather than incremental one to allow multi-item multi-line in header cells. Demo TableHeader() - will caveat, comments. 2020-12-04 19:15:20 +01:00
omar 5431cbd3f0 Tables: Honor width/weight passed to TableSetupColumn() after .ini load since we don't actually restore that data currently.
Demo: Remove filter from Advanced Table demo since it's breaking with clipping.
2020-12-04 19:15:20 +01:00
omar 0e7b3f2f2f Tables: Made only first column honor Indent by default (like Columns api) and exposed flags. Added simple Tree demo. 2020-12-04 19:15:20 +01:00
omar 2958e37310 Tables: Storing per-column SkipItems as a shortcut. Comments, Spacings.
# Conflicts:
#	imgui_internal.h
2020-12-04 19:15:20 +01:00
omar 31de161066 Tables: Fix for hiding first column (fix fcceff5c + reading PrevLineTextBaseOffset in EndCell of inactive column). 2020-12-04 19:15:20 +01:00
omar 164caa2db7 Tables: Support for multi-line columns name. Renaming of some fields from BackupXXX to HostXXX. Comments. 2020-12-04 19:15:20 +01:00
omar e85c226da4 Tables: Fix reordering across hidden columns. Fix for frozen columns to never be larger than scrolling visible rect width. 2020-12-04 19:15:20 +01:00
omar 416e9bb38d Tables: Clarify internal calculations of row height so that TableGetCellRect() include expected paddings. Add demo code. Comments.
Remove misleading commented-out flags for now.
2020-12-04 19:15:20 +01:00
omar 325b4c69ba Tables: Moved border colors to the Style (maybe temporarily?) instead of hardcoding them. 2020-12-04 19:15:19 +01:00
omar 17578e215a Tables: Separating inner/outer borders flags per axis so it is possible to remove outer vertical borders to mimic old columns.
VInner or VOuter only don't have correct padding/spacing.
2020-12-04 19:15:19 +01:00
omar 1db8d421cf Tables: Fix scroll when releasing resize for multi-instances. Comments. Renaming. 2020-12-04 19:15:19 +01:00
omar 78b12068d9 Tables: Disable initial output prior to NextRow call to avoid misleading users.
Fixed some inconsistency with BeginTable/EndTable without row.
Move some of the TableBegin() code in TableBeginUpdateColumns().
Allow to submit multiple header lines.
2020-12-04 19:15:19 +01:00
omar 046fad01f1 Tables: Return false when window is Collapsed (consistent + helpful for doc) + Fix empty context menu. 2020-12-04 19:15:19 +01:00
omar 81453ac42c Tables: Comments, better assert, moved some internal flags out of the way. 2020-12-04 19:15:19 +01:00
omar 0c3d7bb154 Tables: Double-clicking on fixed column to resize. Extracted code BeginTableEx().
# Conflicts:
#	imgui_internal.h
2020-12-04 19:15:19 +01:00
omar 883c236eda Tables: Handle columns clipped due to host rect
Return false in user functions, set SkipItems in window, redirect to dummy draw channel.
2020-12-04 19:15:19 +01:00
omar eee82e0451 Tables: Columns with no policy in a scrolling table will default to WidthFixed instead of WidthAlwaysAutoResize if an explicit value is passed to TableSetupColumn() 2020-12-04 19:15:19 +01:00
omar e06a36ab12 Tables: Support for multiple Tables using same id where most settings are synced.
(some minor one-frame lack of sync when e.g. toggling visibility in context menu)
2020-12-04 19:15:19 +01:00
omar 8da7d3c3e5 Tables: Initial commit. [Squashed 123+5 commits from tables_wip/] 2020-12-04 19:15:19 +01:00
ocornut 818e1a4eb4 Tables: Moving legacy Columns code 2020-12-04 19:15:19 +01:00
omar 9c8671e7b0 Tables: Add empty file, skeleton. 2020-12-04 19:15:19 +01:00