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
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
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
047d4c4500
Metrics: Extracted most functions.
...
+ avoid using full namesapce prefix
2020-10-30 23:48:58 +01:00
ocornut
e6b99a420b
Tab Bar: Do not display a tooltip if the name already fits over a given tab. ( #3521 )
2020-10-19 15:01:24 +02:00
ocornut
fbe74ed50c
Tab Bar: zero clear more structures.
2020-10-19 12:10:31 +02:00
ocornut
8c9b3c9013
Tab Bar: Fixed using more than 128 tabs in a tab bar.
...
Using ImS16 consistently + some better packing to avoid struct growing size.
2020-10-19 12:01:15 +02:00
ocornut
748bd1ba9c
Tab Bar: Restore cursor position in EndTabBar() when amending (amend f2f32602
) + made LastTabItemIdx consistent ImS8 as other tab storage relies on same type
2020-10-19 11:49:37 +02:00
ocornut
f2f326024c
Tab Bar: Made it possible to append to an existing tab bar by calling BeginTabBar()/EndTabBar() again.
2020-10-14 18:34:33 +02:00
ocornut
04de5ef819
Version 1.80 WIP
2020-10-12 13:04:34 +02:00
ocornut
a38c6dfcc8
Internals: Added support for context hooks (for test engine or other extensions)
2020-10-09 17:13:03 +02:00
ocornut
e5cb04b132
Version 1.79
...
+ Update readme and mission statement.
Removed "Minimize screen reel-estate usage", removed details on memory consumption (still very valid, just too much noise in a mission statement)
2020-10-08 16:01:59 +02:00
ocornut
4fd43a8b64
Internals: removed NavLayerCurrentMask (redundant, add extra shift in ItemAdd().
2020-10-05 14:52:18 +02:00
ocornut
1ec464eb9a
Tab Bar: Further simplification of section/clip rect handling. ( #3291 )
2020-09-22 16:43:40 +02:00
ocornut
6b76781c66
Tab Bar: Tidying up. Rework ShrinkWidths to allow marking tabs as not shrinkable (unused yet) + don't unnecessarily move data within ShrinkWidthBuffer. ( #3291 )
2020-09-22 16:43:39 +02:00
ocornut
205874f5b1
Tab Bar: Fix reorderable tab bars. Fix misleading use of tab_max_width in TabBarLayout(). Misc amends, shortening. ( #3291 )
2020-09-22 16:43:39 +02:00
Louis Schnellbach
3422cb1308
Tab Bar: Various fixes. Tried to reduce code complexity. ( #3291 )
2020-09-22 16:43:39 +02:00
ocornut
5e5f25e2dd
Tab Bar: Rename named sections members into array. Various tidying up. ( #3291 )
2020-09-22 16:43:39 +02:00
Louis Schnellbach
7ac16c02cc
Tab Bar: Fix multiple width and position computation issue. ( #3291 )
2020-09-22 16:43:38 +02:00
ocornut
f23c39c395
Tab Bar: Fixed handling of scrolling policy with leading/trailing tabs. + warning fixes + bunch of renaming. ( #3291 )
...
Demo tweaks.
2020-09-22 16:43:38 +02:00
Louis Schnellbach
4a57a982be
Tab Bar: Added TabItemButton(), ImGuiTabItemFlags_Leading, ImGuiTabItemFlags_Trailing + demo. ( #3291 )
...
(squashed various commits by 2 authors)
2020-09-22 16:43:38 +02:00
ocornut
29836412e1
Internals, CollapsingHeader, TabItem: Standardized using a #CLOSE id prefix for TabItem and ColllapsingHeader (same as window)
2020-09-22 15:49:47 +02:00
ocornut
c47bcb25ed
Fix popup and tooltip positioning when not fitting in the screen. Amend fa42ccea8.
...
# Conflicts:
# docs/CHANGELOG.txt
2020-09-17 11:02:04 +02:00
Rokas Kupstys
b2039aac67
Slider: Fixed to reach maximum value with inverted integer min/max ranges, both with signed and unsigned types. Added reverse Sliders to Demo. ( #3432 , #3449 )
2020-09-07 17:57:23 +02:00
ocornut
70289ab42c
Scrolling: Fixed edge snapping being applied prior to knowing ContentSize. ( #3452 )
...
Fix 473a01adb
.
2020-09-03 17:38:51 +02:00
ocornut
8db94cd992
Internals: Scroll related, comments & shallow tweaks.
2020-09-03 17:07:03 +02:00
ocornut
f4d062fa11
Nav: Added debug logging, extract bits of code into NavUpdateInitResult().
2020-09-01 18:45:39 +02:00
ocornut
ce230fc370
Internals: TabBar renaming and shuffling stuff around.
...
+ sneaking a readme change
2020-08-31 17:49:18 +02:00
ocornut
13f718337a
Internals: Added support for overriding locale decimal point, undocumented. ( #2278 ) + Misc doc update.
...
Doc: Mention IMGUI_VERSION_NUM in recent api breaking changes + textwrap some demo code.
2020-08-28 18:38:31 +02:00
ocornut
093afd4f7f
Internals: Added Name to ImGuiDataTypeInfo + minor misc comments in BeginGroup().
2020-08-26 21:00:43 +02:00
Louis Schnellbach
8c80d533d9
Tab Bar: Fixed a small bug where toggling a tab bar from Reorderable to not Reorderable would leave tabs reordered in the tab list popup.
2020-08-26 16:36:57 +02:00
ocornut
1e8b9f84da
Nav: Removed stateful NavMoveFromClampedRefRect and made it more explicit that nav move request from gamepad start from a clipped location.
2020-08-26 11:28:35 +02:00
Rokas Kupstys
021c28ae39
Nav: Fix ScrollToBringRectIntoView() not bringing entire item into view when nav moves to the left. Correct some comments.
2020-08-25 16:48:49 +02:00
omar
2e50d0706b
Selectable: Tweaks. Added internal ImGuiSelectableFlags_NoPadWithHalfSpacing.
2020-08-24 16:31:00 +02:00
ocornut
7b0570d6ba
Revert "Drags, Sliders: internal ReadOnly flag gets forwarded properly to temp InputText()."
...
This reverts commit 640d1f60ce140e4c2bf858ac2f2e8a96d432e6a4.
2020-08-21 20:15:07 +02:00
ocornut
fdf952108d
Drags, Sliders: internal ReadOnly flag gets forwarded properly to temp InputText().
2020-08-21 19:17:44 +02:00
ocornut
9262609eaf
Version 1.79 WIP
2020-08-20 16:46:44 +02:00
ocornut
fc9ccad6b9
InputText: Add ImGuiInputTextFlags_CallbackEdit, selection helpers in ImGuiInputTextCallbackData(). Add simple InputText() callbacks demo.
2020-08-20 11:25:39 +02:00
ocornut
4c201994d4
DragFloat, DragScalar: Fixed ImGuiSliderFlags_ClampOnInput not being honored in the special case where v_min == v_max. ( #3361 )
2020-08-20 11:21:15 +02:00
ocornut
95c99aaa4b
Version 1.78
2020-08-18 17:50:45 +02:00
ocornut
c6b01e8e1d
Drag, Sliders: Merged ImGuiDragFlags back into ImGuiSliderFlags. ( #3361 , #1823 , #1316 , #642 , #1829 , #3209 )
...
Technically API breaking (but ImGuiDragFlags were pushed on master 16 hours ago)
2020-08-18 17:02:58 +02:00
omar
f32663b33c
Drags, Sliders: Removed locking behavior with min > max (added in 1.73)
2020-08-17 22:10:42 +02:00
omar
7f8f0096d8
Internals: Renamed SliderCalcRatioFromValueT() -> ScaleRatioFromValueT(), SliderCalcValueFromRatioT() -> ScaleValueFromRatioT().
...
Replaced drag/slider flags with a single bool is_logarithmic in those functions.
2020-08-17 22:10:42 +02:00
Ben Carter
fa279a6aa0
Drags, Sliders: Added deadzone to make selecting 0.0 on linear sliders easier, slider navigation delta accumulation. ( #3361 , #1823 , #1316 , #642 )
2020-08-17 22:10:42 +02:00
omar
7607aea018
Drags, Sliders: Removed power features. Old entry points will pass-through if power=1.0f, otherwise assert + safe fallback. Remove 3 redirection functions ( #3361 , #1823 , #1316 , #642 )
2020-08-17 22:10:41 +02:00
omar
43c099f31e
Drags, Sliders: Logarithmic: Moved flags to internals, allowing 1.0f to pass by. ( #3361 , #1823 , #1316 , #642 )
2020-08-17 22:10:41 +02:00
omar
152dae9e2a
Drags, Sliders: Logarithmic: Split back flags into drag/slider flags. Moved to an obsolete section. ( #3361 , #1823 , #1316 , #642 )
2020-08-17 22:10:40 +02:00
Ben Carter
9f98b4e7f2
Drags, Sliders: Logarithmic: Added logarithmic mode support to drag widgets, extended API to add flags to drag/sliders ( #3361 , #1823 , #1316 , #642 )
2020-08-17 22:10:40 +02:00
Ben Carter
a252a287bf
Drags, Sliders: Logarithmic: WIP experiments with trying to make logarithmic sliders sensible ( #3361 , #1823 , #1316 , #642 )
2020-08-17 22:10:40 +02:00
ocornut
46d75202b8
Tab Bar: Allow calling SetTabItemClosed() after a tab has been submitted (will process next frame).
...
+ larger combo height on TabBarTabListPopupButton()
2020-08-17 12:57:47 +02:00
omar
214dd68ec1
Comments, clarifying ClosePopupsOverWindow().
2020-08-11 10:55:53 +02:00
omar
a4dd4d60b4
CI: moved static analysis to a separate project + fix (uninitialized variable, was harmless in this case).
2020-08-10 17:46:02 +02:00
omar
8241cd6284
Make moving window prevent its active id from being stolen ( #3392 , #3243 , #1738 )
...
Amend 7b3d379
, 615e9ae3
# Conflicts:
# imgui.cpp
# imgui_widgets.cpp
2020-08-10 16:30:23 +02:00
omar
89ac87cd91
Internals: Added SetLastItemData, rename ImGuiItemHoveredDataBackup to ImGuiLastItemDataBackup.
2020-08-10 11:31:55 +02:00
omar
8074b49148
Selectable: Fixed highlight/hit extent when used with horizontal scrolling (in or outside columns). ( #3187 , #3386 )
...
# Conflicts:
# imgui_widgets.cpp
2020-08-05 19:24:07 +02:00
omar
4929a8e4a5
InvisibleButton: Made public a small selection of ImGuiButtonFlags (previously in imgui_internal.h) and allowed to pass them to InvisibleButton().
2020-08-03 18:45:30 +02:00
omar
a876ad877d
Window: Fixed clicking over an item which hovering has been disabled (e.g inhibited by a popup) from marking the window as moved.
...
+ comments
2020-08-03 18:05:20 +02:00
omar
76ddacd2a1
Internals: Backport HoveredWindowUnderMovingWindow code from Docking branch.
...
(effectively allowing a window to be a drag payload without have to make it _NoInputs)
2020-07-29 15:32:25 +02:00
omar
218ff3a2a5
Internals: Backport one ->WasActive test in NavRestoreLastChildNavWindow() from 9bf6509c6
+ minor/shallow bits from docking branch.
2020-07-29 15:11:24 +02:00
omar
c7f5876f8a
Internals: backport window HitTestHole code from docking branch + RenderRectFilledWithHole() helper. ( #1512 , #3368 )
2020-07-29 15:03:52 +02:00
omar
fdc526e8f8
Stop advertisting for Drag v_min>v_max which was introduced in 1.73 likely for 0537ac00
then made unnecessary with 32c33c66
, added undocumented ImGuiItemFlags_ReadOnly as possible replacement (unused), ( #211 )
2020-07-23 18:19:11 +02:00
omar
b335225caa
Internals: Extract ImFontAtlasBuildRender1bppRectFromString() out of ImFontAtlasBuildRenderDefaultTexData() + minor renaming, comments
2020-07-22 17:31:59 +02:00
omar
3a6c9907cd
Texture-based thick lines: Minor tweaks and rename toward merging in master. Changes to allow changing AA_SIZE (disable texture path).
2020-07-08 20:18:41 +02:00
omar
78d6bdf080
Texture-based thick lines: Remove unnecessary indirection in fetching UV data, removed lerp call, renames, tweaks.
2020-07-08 17:38:02 +02:00
Ben Carter
403bf45245
Texture-based thick lines: Allow interpolation between textures for non-integer line widths
2020-07-08 17:38:01 +02:00
omar
222b7ddbfa
Texture-based thick lines: Tweaks, fix for truetype builder.
2020-07-08 17:38:01 +02:00
Ben Carter
741ab74b55
Texture-based thick lines: Improvements to code for drawing anti-aliased lines using textures
...
Moved line width into a constant
Removed test code (now in imgui-tests)
Improved matching between geometry and texture rendering at non-integer sizes
2020-07-08 17:38:01 +02:00
Ben Carter
1d3c3070d8
Texture-based thick lines: Initial version of AA line drawing using textures (press SHIFT to enable)
2020-07-08 17:38:01 +02:00
omar
ab4ef822f0
Version 1.78 WIP
2020-06-30 16:56:09 +02:00
Rokas Kupstys
0738611559
Misc: Bunch of code formatting changes suggested by a pass running 'astyle'
2020-06-30 16:37:21 +02:00
omar
dca7c3c629
TestEngine: Added hook to notify test engine of a removed imgui context.
2020-06-29 20:16:55 +02:00
omar
9418dcb693
Version 1.77
...
+ fix minor clang-tidy warnings which seems reasonable
2020-06-29 15:54:28 +02:00
omar
fed80b9537
Popups: Changed 'int mouse_buttons' to ImGuiPopupFlags. Added ImGuiPopupFlags_NoOpenOverExistingPopup, ImGuiPopupFlags_NoOpenOverItems. Refactored signature of BeginPopupContextWindow().
2020-06-23 20:05:15 +02:00
omar
5acf6d861a
Popups: Added ImGuiPopupFlags type, ImGuiPopupFlags_AnyPopupId and ImGuiPopupFlags_AnyPopupLevel flags for IsPopupOpen().
...
# Conflicts:
# docs/CHANGELOG.txt
2020-06-23 20:00:32 +02:00
omar
e0ec69d84b
Internals: Added ImageButtonEx() helper to temporarily bypass ID issues ( #2464 , #1390 )
2020-06-23 15:47:07 +02:00
omar
8ead38c100
Clang: Reduce uses of __has_warning for overall sanity, as compilers are hostile to software targetting multiple compiler version.
2020-06-18 17:02:24 +02:00
omar
704723744e
Disabled latest overzealous warnings from Clang
2020-06-18 16:19:51 +02:00
ocornut
37eb89371b
Popups: Internals: Added IsAnyPopupOpen().
2020-06-16 18:46:25 +02:00
ocornut
d31fe97f74
Popups: Fix an edge case where programatically closing a popup while clicking on its empty space would attempt to focus it and close other popups. ( #2880 )
2020-06-16 17:10:47 +02:00
omar
90c0c0c163
Columns: Lower overhead on column switches and switching to background channel. (second attempt for 9b3ce49
)
...
Internals: Bits, comments, added ImRect::ToVec4()
2020-06-13 18:04:50 +02:00
ocornut
16da8e6da6
Revert "Columns: Lower overhead on column switches and switching to background channel (some stress tests in debug builds went 3->2 ms). ( #125 )"
...
This reverts commit 9b3ce494fd
.
2020-06-10 17:54:19 +02:00
ocornut
9b3ce494fd
Columns: Lower overhead on column switches and switching to background channel (some stress tests in debug builds went 3->2 ms). ( #125 )
...
This change benefits Columns but was primarily made with Tables in mind.
2020-06-08 23:18:23 +02:00
ocornut
57191fe3d0
Comments about limiting WindowRounding to a reasonable size.
2020-06-08 14:17:49 +02:00
ocornut
41e8837f59
Comments, adding some spacing in ImVec2() constructors.
2020-06-02 18:13:54 +02:00
omar
476daf9aac
Settings: Added ReadInitFn pre-load handler.
...
(docking branch already has it, so it'll probably conflict with same contents)
2020-05-13 23:51:29 +02:00
Rokas Kupstys
a6f4b0fd70
Nav, Menus: Fix vertical wrap-around in menus or popups created with multiple appending calls to BeginMenu()/EndMenu() or BeginPopup/EndPopup(). ( #3223 , #1207 )
...
First call to EndPopup() called NavRequestTryWrapWindow() which performed wrap-around operation while we were not done composing menu. This resulted in navigation wrapping around to first item.
Since wrap-around operation is only valid in last call to EndPopup() and there is no way to know which call is last - this operation is delayed to the end of the frame.
2020-05-11 15:30:12 +02:00
omar
4f33dd15c4
Internals: stand-in for large branches to facilitate merging.
2020-05-08 17:00:11 +02:00
omar
5f752a5ba9
Internals: shuffling some sections (2)
2020-05-08 16:30:14 +02:00
omar
f466cfc2ca
Internals: shuffling some sections, added index.
2020-05-08 16:21:00 +02:00
omar
3aa1684129
Comments
2020-05-08 15:59:59 +02:00
omar
d33021d828
Settings: Made it possible to load window .ini data mid-frame. Added clear and post-read handlers. ( #2573 )
2020-05-07 21:38:04 +02:00
omar
b6a04d7750
Settings: Added Clear Settings in Metrics. ( #2188 ) + Preserve last loaded copy in internal buffer used for save (so it can be browsed easily).
2020-05-07 21:38:03 +02:00
omar
0679e05677
Internals: Added code in TempInputScalar() to clamp values, NOT used by stock Drag/Float ( #3209 , #1829 , #946 , #413 )
2020-05-07 12:27:21 +02:00
omar
b4dd28ffbb
Style: Added style.TabMinWidthForUnselectedCloseButton settings.
...
Set to 0.0f (default) to always make a close button appear on hover (same as Chrome, VS).
Set to FLT_MAX to only display a close button when selected (merely hovering is not enough).
Set to an intermediary value to toggle behavior based on width (same as Firefox).
2020-05-04 14:58:21 +02:00
ocornut
c0283c1289
TestEngine: Changed PushID hooks into GetID(), makes more sense and catches more information.
2020-04-20 11:31:30 +02:00
omar
9f9ff84ba1
TestEngine: Added PushID() hooks.
2020-04-16 16:59:46 +02:00
omar
b0e9092d6f
TestEngine: Added extra storage and global enable flag. Added missing ItemInfo hooks.
2020-04-16 16:56:15 +02:00