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
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
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
47b39f6371
Tables: Demo: Moved Columns section into Tables & Columns section under a Legacy section.
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
a09954bdaf
Tables: Initial demo code.
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
ocornut
f9b873662b
Backends: Win32: Fixed setting of io.DisplaySize to invalid/uninitialized data when after hwnd has been closed.
...
GetClientRect() fails on closed hwnd which left the rectangle uninitialized and copied to DisplaySize. Ensure it is zero + similar failsafe in io.WantSetMousePos path.
2020-12-04 11:48:17 +01:00
ocornut
998d7303b1
Log/Capture: fix capture to work on clipped child windows.
...
+ Tweak ErrorCheckEndFrameRecover() to use local window pointer.
2020-12-03 15:14:32 +01:00
ocornut
d20f2bc90a
Rename example_emscripten/ to example_emscripten_opengl3/ ( #3632 )
2020-12-02 11:23:56 +01:00
ocornut
ae3e2406ec
Misc tweaks/fixes (see details).
...
Combo: ultra minor fix for popup positioning policy mismatch depending on ImGuiComboFlags_PopupAlignLeft flag.
Made ImHashXXX functions return ImGuiID.
IsWindowNavFocusable use !WasActive.. it worked because it was only called in NewFrame()->NavUpdate() before the transition loop + EndFrame() only.
Fix unused variable warning.
2020-11-30 12:47:14 +01:00
ocornut
9801c8c1c5
Texture-based thick lines: comment out dead code (amend b5bae978). ( #3245 )
2020-11-26 19:35:56 +01:00
ocornut
e0cae25c3c
Clarify usage of right-aligned items in Layout>Widgets Width. Tweaks FAQ, added missing syntax coloring.
2020-11-20 17:24:18 +01:00
ocornut
d4f08d893e
InputText: Fixed swiching from single to multi-line while preserving same ID.
2020-11-19 18:30:14 +01:00
ocornut
97265602c4
Internals: added IsWindowAbove() for use for modal/viewport bugfix.
2020-11-19 16:59:21 +01:00
ocornut
9712bff0bb
Internals: added experimental ErrorCheckEndFrameRecover() to unroll/end/pop. ( #1651 , #3600 )
2020-11-19 15:43:42 +01:00
ocornut
c0ac4fb788
Columns/Internals: (Breaking): Renamed data structures. ( #125 , #513 , #913 , #1204 , #1444 , #2142 , #2707 )
2020-11-18 23:42:44 +01:00
ocornut
72de6f3360
Columns/Internals: (Breaking) renamed ImGuiColumnsFlags_* to ImGuiOldColumnFlags_*. ( #125 , #513 , #913 , #1204 , #1444 , #2142 , #2707 )
...
Affected: ImGuiColumnsFlags_None, ImGuiColumnsFlags_NoBorder, ImGuiColumnsFlags_NoResize, ImGuiColumnsFlags_NoPreserveWidths, ImGuiColumnsFlags_NoForceWithinWindow, ImGuiColumnsFlags_GrowParentContentsSize. Added redirection enums. Did not add redirection type.
2020-11-18 23:02:14 +01:00
ocornut
2e64ee050d
Removed duplicate typedef for ImGuiButtonFlags
...
https://github.com/cimgui/cimgui/issues/166
2020-11-18 19:28:30 +01:00
ocornut
71cc636696
Metrics: Rebranded as "Dear ImGui Metrics/Debugger". Fix Show Window Rectangle. Fix Clang OSX warnings. Amend #3592 for Mingw only.
2020-11-13 21:30:19 +01:00
ocornut
e736039538
Nav: Fixed IsItemFocused() from returning false when Nav highlight is hidden because mouse has moved. ( #787 )
2020-11-13 21:10:03 +01:00
ocornut
8119759329
Internals: extracted stack checking code into a ImGuiStackSizes helper struct + added test for FocusScope
...
+ renamed g.ColorModifiers > g.ColorStack, g.StyleModifiers > g.StyleVarStack
2020-11-13 16:33:33 +01:00
ocornut
6e94013a3d
Made ItemFlagsStack and GroupStack shared stacks.
2020-11-13 16:33:33 +01:00
ocornut
12ba6f4606
Fix PushFocusScopeID() + using shared stack. Renamed GetFocusScopeID() to GetFocusedFocusScope() - the two existing functions name are very error prone.
2020-11-13 16:26:59 +01:00
ocornut
a138855d56
Hotfix for PushFocusScope() being utterly wrong (until we split the stacks), Added asserts on PopID to help catch bugs, Added GC trigger.
2020-11-12 22:59:05 +01:00
ocornut
78f1d2d319
ImDrawListSplitter: create first draw cmd on demand + Internals: fix incorrect ImBitArraySetBitRange() (only used by tables)
...
Make it cheaper to allocate unused draw cmd, can't measure perf difference other our stress tests.
2020-11-12 18:17:17 +01:00
ocornut
13258f5957
Internals: zero-clearing ImGuiWindow / ImGuiWindowTempData for simplicity. (amend)
...
All the non-zero fields previously initialized in ImGuiWindowTempData() are in fact setup in Begin: FocusCounterRegular, FocusCounterTabStop, TextWrapPos, LayoutType, ParentLayoutType
2020-11-12 12:19:50 +01:00
ocornut
7a135a763c
Fix format warnings when using gnu printf extensions in a setup that supports them (gcc/mingw). ( #3592 )
2020-11-12 11:56:21 +01:00
ocornut
dcfb986fa8
Made EndFrame() assertion for key modifiers being unchanged during the frame more lenient. ( #3575 )
2020-11-11 18:17:33 +01:00
ocornut
61825c7735
Tab Bar: Fixed minor/unlikely bug skipping over a button when scrolling left with arrows + InputText: minor optimization.
2020-11-11 12:04:35 +01:00
ocornut
5789e69a62
Checkbox: Added CheckboxFlags() helper with int* type. Demo: removed extraneous casts.
2020-11-05 21:32:05 +01:00
ocornut
5f97809cab
Misc tidying up (zero-clear structures, more unused default in ClipRetFullscreen, NavApplyItemToResult() coding style fix)
...
Zero-clearing more structures
Remove arbitrary default ClipRetFullscreen value in ImDrawListSharedData.
Nav extracted NavApplyItemToResult() function.
Coding style fixes in OSX Backends.
2020-11-05 13:24:27 +01:00
ocornut
046057cebb
Selectable: Avoid pushing span-column background if clipped.
2020-11-04 20:11:34 +01:00
ocornut
7a27b2a282
Update Readme, links to Useful Widgets, updated a gif.
2020-11-04 20:11:21 +01:00
ocornut
2bf5ca7ef2
ImDrawListClipper: avoid over reserving memory.
2020-11-04 18:05:51 +01:00
ocornut
d6a2f7e95e
Reduced padding + unused storage in ImDrawList (224->192 bytes) + zero-init ImDrawListSplitter and ImDrawList
...
+ Readme tweak
2020-11-04 13:56:04 +01:00
ocornut
2fa00656a4
Fix for IMGUI_DISABLE_METRICS_WINDOW
2020-11-03 15:46:29 +01:00
ocornut
3777fbbd81
Renamed io.ConfigWindowsMemoryCompactTimer to io.ConfigMemoryCompactTimer as the feature will apply to other data structures.
2020-11-03 14:43:08 +01:00