Rokas Kupstys
15fe7ba31f
ColorPicker: Fix not being able to pick exactly (1.0f, 1.0f, 1.0f) color by dragging toward the edges of the SV square. ( #3517 )
...
Old code attempted to mitigate hue/saturation resetting for colors where these components are undefined. Since we now explicitly back up and restore these components this workaround is no longer necessary.
2021-09-21 15:10:07 +02:00
Rokas Kupstys
30546bc0e7
ColorEdit: Fix multiple issues. ( #4014 )
...
* Change g.ColorEditLastColor type to ImU32 and store RGB color value.
- Fixes inability to change hue when saturation is 0. (#4014 )
- Fixes edgecases where lossy color conversion prevent restoration of hue/saturation.
- Fixes hue value jitter when modifying color using SV square.
* Fix hue resetting to 0 when it is set to 255 by explicitly restoring hue if it is 0 and previous value was 1.
* Further reduce hue jitter by restoring hue when color is modified using SV square.
2021-09-21 15:10:07 +02:00
ocornut
ddddabdccf
InputText: amend validation test to allow pushing Activate events remotely. ( #4552 , #2321 )
2021-09-17 16:44:14 +02:00
ocornut
2cffcbdc64
InputText: fix Space key with nav enabled interfering with input text boxes (fix bd6c9e99
). made it possible to activate InputText with tweak gamepad button (why not, now that we can cancel) ( #4552 , #2321 )
2021-09-17 16:30:32 +02:00
ocornut
3973de7933
Internals: removed last parameter to IsClippedEx() + fix PVS studio warnings.
2021-09-16 18:07:17 +02:00
ocornut
4f10fe0a27
TreePush: removed arbitrary/weird suppot for TreePush((const char*)NULL)
2021-09-15 12:12:49 +02:00
ocornut
7b8bc864e9
Menus: Fixed vertical alignments of MenuItem() calls within a menu bar. (broken by f8fae022
). ( #4538 )
2021-09-14 11:09:39 +02:00
ocornut
82754561e2
Nav: Fixed a few widgets from not setting reference keyboard/gamepad navigation ID when activated with mouse.
2021-09-13 15:17:54 +02:00
ocornut
17a7084b57
Menus: Fixed crash when navigating left inside a child window inside a sub-menu. ( #4510 ).
2021-09-10 15:37:59 +02:00
ocornut
d9b427cce0
Nav: clarified/renamed NavInputId as NavAcivateInputId, added flags shared by both.
...
(this commit should have no visible side effect but is designed to introduce the followup commit refactoring SetKeyboardFocusHere into using a Nav request)
2021-09-07 18:10:31 +02:00
ocornut
bd6c9e99fc
InputText: Allow cancelling/validating input with gamepad nav events.
...
Amend 158995f2
(#2321 )
2021-09-06 18:47:12 +02:00
ocornut
0a154b30ad
Nav, ButtonBehavior: reworked old code which ended up 1) calling SetActiveId repeately and 2) misleadingly set g.NavActivateId (amend af38749e
)
2021-09-03 17:27:27 +02:00
ocornut
ade4c15eea
Nav: Tidying up, renaming + update AnyRequest flag in NavMoveRequestSubmit().
2021-09-03 16:35:41 +02:00
ocornut
528104a89b
Menus: adjust closing logic to accomodate for varying font size and dpi + remove seemingly redundant use of g.NavActivateId where pressed was enough.
2021-09-03 16:35:27 +02:00
ocornut
3d9d3b49ae
Internals: folded ImGuiItemAddFlags into ImGuiItemFlags. ImGuiItemAddFlags_Focusable > ImGuiItemFlags_Inputable. One step in the big nav/tab/focus rework.
...
Bonus simplified Selectable() handling of its custom disabled flag. (#211 )
2021-09-01 14:46:08 +02:00
ocornut
a735a8c084
Nav: storing NavRect in LastItemData. Fix race condition where framed items (Rect != NavRect) calling SetFocusID() would store the wrong NavRectRel until next frame
...
(haven't dugged in the possible side-effects of that race condition)
2021-09-01 12:12:51 +02:00
ocornut
7b913db1ce
Nav: split NavMoveRequest into NavMoveSubmitted + NavMoveScoringItems to allow operation to defer a move request and provide result immediately + fix regular scoring needlesly running during init + some renaming.
2021-08-31 18:19:52 +02:00
Filippo Crocchini
eb6c16d3dd
PlotHistogram: Fixed zero-line position when manually specifying min<0 and max>0. ( #4349 )
...
+ amended demo tweaks by ocornut
2021-08-31 13:14:43 +02:00
ocornut
7c4ffe490d
Menus: added internal's BeginMenuEx() matching MenuItemEx() with icon parameter. (amend f8fae022
)
2021-08-30 19:54:42 +02:00
ocornut
ccfb20095e
Nav: small refactor of forwarding, clarified that MoveDir only set when RequestActive, removed one indent level in NavUpdatePageUpPageDown().
2021-08-27 20:48:01 +02:00
ocornut
20a1edef89
Nav: made EndMenuBar() use NavMoveRequestForward() for consistency. Moved forward clearing to NavMoveRequestApplyResult(). Improved/fixed comments.
2021-08-27 17:21:10 +02:00
ocornut
780c1ee265
TextUnformatted: Accept null ranges including (NULL,NULL) without asserting. ( #3615 )
2021-08-24 19:30:02 +02:00
ocornut
0608887fb5
InputTextMultiline: Fixed label size not being included into window contents rect unless the whole widget is clipped.
2021-08-23 17:07:46 +02:00
ocornut
0649f750b4
Version 1.85 WIP
2021-08-23 15:31:06 +02:00
ocornut
d2ffbd9b86
Version 1.84
...
Fix PVS Studio false positive //-V1020
Fix missing #ifndef for IMGUI_IMPL_OPENGL_LOADER_CUSTOM path
2021-08-20 18:03:55 +02:00
ocornut
c543d93af1
Expose BeginDisabled()/EndDisabled() in public API. Add to demo. ( #211 )
2021-08-20 16:34:43 +02:00
ocornut
161b74e871
Fix tabbing in/out of an InputTextMultiline(), broken by 6b8a059
.
2021-08-17 20:46:39 +02:00
Oliver 'kfsone' Smith
7e9e1ff1c2
InputText: Fix named filtering flags disabling newline or tabs in multiline inputs ( #4409 , #4410 )
2021-08-17 16:10:11 +02:00
ocornut
e362c5af48
Internals: ColorEdit: renamed some internal masks to match our common coding style.
...
ImGuiColorEditFlags__DisplayMask > ImGuiColorEditFlags_DisplayMask_, ImGuiColorEditFlags__OptionsDefault > ImGuiColorEditFlags_DefaultOptions_, ImGuiColorEditFlags__DataTypeMask > ImGuiColorEditFlags_DataTypeMask_ etc.
2021-07-26 20:44:59 +02:00
ocornut
90bf996e1a
Internals: widgets always read back from g.LastItemData.InFlags (so we can now modify per-item disable state more easily). ( #211 )
2021-07-19 21:26:34 +02:00
ocornut
6b8a059fc9
Internals: moved LastItem data to a shared structure (instead of one per window)
...
(should be a no-op as we are restoring things in Begin/End. Toward faciliate backup/restore of LastItemData and favor pulling from here instead of CurrentItemFlags, toward #211 )
2021-07-19 21:25:47 +02:00
ocornut
1ad153056a
Internals: ItemAdd: set LastItemXXX fields before navigation calls + comments about io.IniFilename ( #4294 )
2021-07-19 21:24:15 +02:00
ocornut
17ec4f1f6f
TestEngine, MenuItem: call IMGUI_TEST_ENGINE_ITEM_INFO() at the right stack level. (amend f8fae02
)
2021-07-12 16:42:53 +02:00
ocornut
246ad6c03c
Disabled: items more consistently release active id if the active item got disabled. ( #211 ) (amend 2952525
)
2021-07-12 15:39:47 +02:00
Rokas Kupstys
5dd1e38b7a
Disabled: disabled items set HoveredId, allowing e.g. HoveredIdTimer to function. ( #211 , #3419 ) + Menus: fix hovering a disabled menu or menu item not closing other menus.
...
Rework of https://github.com/rokups/imgui/commit/c24b470
Note that the declared intent of that commit "Prevents window from being dragged if mouse hovers a disabled item." was already fullfilled by a876ad87
.
Changes in ButtonBehavior() not needed anymore since ImGuiButtonFlags_Disabled is gone
2021-07-09 19:54:46 +02:00
ocornut
cac869b333
Disabled: don't prevent Selectable() from being selected. ( #211 ) + BeginMenu()/MenuItemEx() uses PushDisabled() the standard way.
...
ImGuiSelectableFlags_Disabled is now unused by the library and might be marked obsolete later.
2021-07-09 19:54:43 +02:00
ocornut
29525255f3
Disabled items more consistently release active id if the active item got disabled. ( #211 )
2021-07-09 19:54:41 +02:00
ocornut
ba1c8464ef
Internals: Removed ImGuiButtonFlags_Disabled (which had inconsistent behavior) in favor of ImGuiItemFlags_Disabled. Selectable()'s ImGuiSelectableFlags_Disabled now uses the later. ( #211 )
2021-07-09 19:54:37 +02:00
ocornut
f6682404e1
InputInt/InputFloat: When used with Steps values and _ReadOnly flag, the step button look disabled. ( #211 )
2021-07-09 19:54:34 +02:00
ocornut
97638bf977
BeginMenu: remove unnecessary call to ItemHoverable() which is already done by the Selectable() call.
...
Amend 88d7b3de
2021-07-09 18:57:28 +02:00
ocornut
4a100f7f11
Nav: Disabled items are not candidate for default focus. ( #211 , #787 ) + simplify handling of ImGuiButtonFlags_PressedOnDragDropHold path.
2021-07-09 18:57:23 +02:00
ocornut
f8fae02270
Menus: rework to allow for an icon column (not yet exposed, but usable via internals) + fix menus being affected by style.SelectableTextAlign ( #126 )
2021-07-08 15:05:02 +02:00
ocornut
696d3e056e
Internals: Menus: Naming offset field + fix spacing/offset computation to handle more offsets.
2021-07-07 20:47:37 +02:00
ocornut
3512f2c2c2
Internals: Menus: minor tidying up + renaming in ImGuiMenuColumns + removing extraneous offset field which is always zero + using smaller types.
...
sizeof() 36 -> 20
2021-07-07 20:16:55 +02:00
ocornut
20d415e939
FIx static analysers warnings and disable false positives.
2021-06-24 17:15:14 +02:00
ocornut
1965f38e9e
ImGuiWindowFlags_UnsavedDocument/ImGuiTabItmeFlags_UnsavedDocument display a dot instead of a '*'.
2021-06-24 14:30:32 +02:00
ocornut
f0c4d609a6
Default window focus scope not 0. Added ImGuiSelectableFlags_SelectOnNav with comments and caveats. ( #1861 , #4242,)
...
Focus scope default value: amend 7ee623d9
a5041c88
2ebe08be
2021-06-21 17:47:45 +02:00
ocornut
a15c42d5bd
Nav: moved RenderNavHighlight() calls of TreeNode and Selectable out of if (hovered || selected) tests. Should make no difference as NavId currently returns hovered. ( #1861 , #4242 )
2021-06-21 17:38:56 +02:00
Rokas Kupstys
d5828cd988
SplitterBehavior: fix using IsItemHovered() after SplitterBehavior()
2021-06-16 15:42:42 +02:00
ocornut
0cca0d1617
Internals/experimental: BeginComboPreview(), EndComboPreview(). ( #4168 , #1658 )
...
(amended)
2021-06-15 15:27:28 +02:00
ocornut
060b6ee7d1
Internals: Combo: Extracted into a BeginComboPopup() function. ( #4168 )
...
Renamed frame_bb > bb locally.
2021-05-28 17:45:07 +02:00
ocornut
5b4bc985ad
Nav, Combo: removed unnecessary window->LastNavIds[] assignment in combo code. + minor renaming.
2021-05-28 17:27:52 +02:00
ocornut
79e18896fe
TabBar: Fixed using more than 32 KB-worth of tab names. ( #4176 )
2021-05-27 12:01:00 +02:00
ocornut
e31d13fa76
Version 1.84 WIP
2021-05-25 13:36:53 +02:00
ocornut
ad5d1a8429
Version 1.83
2021-05-24 17:39:25 +02:00
ocornut
029c83c73e
Combos: Changed the combo popup to use a different id to also using a context menu with the default item id. ( #4167 )
2021-05-24 15:09:39 +02:00
ocornut
5d77b6f274
Docs: update links, sponsors
2021-05-21 15:24:57 +02:00
ocornut
45f5ed52c1
Menus: made MenuItem() in a menu bar reflect the 'selected' argument with a highlight. ( #4128 )
2021-05-20 15:00:36 +02:00
ocornut
e7e170c534
InputText: Internal renaming to use our own types to clarify code a little bit.
2021-05-18 14:48:54 +02:00
ocornut
26a1bbfe1e
InputText: Fixed CTRL+Arrow or OSX double-click leaking the presence of spaces when ImGuiInputTextFlags_Password is used. ( #4155 , #4156 ) [@michael-swan]
2021-05-18 14:46:25 +02:00
ocornut
393941ceea
Refactor focusable/tabbalbe item registration toward allowing to handle it prior to clipping (not yet the case) ( #343 , #4079 )
...
Now performed in ItemAdd(). It can't be trivially moved above clipping effectively because it would require us to scroll to be useful, meaning we'd be better off locking the bounding box a frame earlier. Still wip.
As-is this commit has no value for end-user, but it's a reengineering that moves us closer to the solution. + Internals: moved internal flags.
2021-04-30 22:40:02 +02:00
ocornut
9b90639577
Internals: ItemFlags is a shared resource as advertised. Fix Begin/PushItemFlags/End sequence (mostly for consistency)
2021-04-30 21:34:17 +02:00
ocornut
10a1c5b021
TestEngine: fixed wrong flags passed to ItemInfo queries. Was luckily/misleadingly not causing issues as the test-engine flags we tested were upper bits not colliding with the other type.
...
Moved those flags higher as well. (unrelated to the fix itself)
2021-04-30 19:32:41 +02:00
ocornut
89162a04f4
Fixes for PVS Studio and MSVC static analyzers. Using a macro to suppress single-use MSVC false positives. ( #3938 , #4073 )
2021-04-29 21:20:32 +02:00
ocornut
d28535f351
Fixes for Visual Studio 2019 static analyzers. ( #3938 , #4073 ) + two minor edge case were invalid scalar input (e.g. a sign only) would return buffer as modified.
2021-04-29 17:10:27 +02:00
ocornut
2dec7b3301
InputText: Align caret/cursor to pixel coordinates. ( #4080 )
2021-04-27 13:31:32 +02:00
ocornut
daf97832f1
Internals: Nav: renaming.
2021-04-23 18:39:08 +02:00
ocornut
c283a1da5b
Fixed clipping of multi-line value text when label is single-line + Fixed vertical alignment of single-line value text when label is multi-line. ( #4004 )
2021-04-06 18:35:06 +02:00
Doug Binks
f08566b4d7
InputText: Do not filter private unicode codepoints (e.g. icons) when pasted from clipboard. ( #4005 )
2021-04-06 12:00:52 +02:00
Chris Ohk
eab3ae473c
Fix warning message C4100 ( #3974 )
...
- warning C4100: 'fmt_out_size': unreferenced formal parameter
2021-03-27 17:11:57 +01:00
ocornut
1dcd3a45cc
ColorEdit4: Alpha default to 255 (instead of 0) when omitted in hex input. ( #3973 )
...
Courtesy of @squadack
2021-03-26 11:34:07 +01:00
ocornut
688e06490e
TabBar: Amend previous commit. Fix tab reordering when tab bar has scrolling.
...
Some tidying up with helpers + honor 16-bit offsets as with other tab bar features (unlikely single reorder can reach that but consistent)
2021-03-25 19:16:24 +01:00
Rokas Kupstys
475c0fcc39
TabBar: Use mouse position instead of hardcoded +1/-1 offset when reordering tabs.
...
Fixes tab reordering in test engine when using fast mode.
2021-03-25 19:12:49 +01:00
ocornut
a58271c079
Internals: extracted a more reusable BeginViewportSideBar() out of BeginMainMenuBar(). ( #3966 , #3518 )
...
Complement ca34c81c
in docking branch which removed assumption that we can't tell size ahead of Begin().
2021-03-25 16:20:42 +01:00
ocornut
59da01901e
Scrolling: Fix scroll tracking with e.g. SetScrollHereX/Y() when WindowPadding < ItemSpacing. Fix scroll snapping on edge of scroll region when both scrollbars are enabled.
...
CalcNextScrollFromScrollTargetAndClamp() fixed snapping edge calculation missing ScrollbarSizes.y
2021-03-19 16:58:23 +01:00
ocornut
a1a39c632a
Version 1.83 WIP
2021-03-16 14:45:30 +01:00
ocornut
4bf646e4b0
Drags, Sliders, Inputs: Specifying a NULL format to Float functions default them to "%.3f" to be consistent with the compile-time default. ( #3922 )
2021-03-16 12:59:35 +01:00
ocornut
35b1148efb
Version 1.82
2021-03-15 20:26:48 +01:00
ocornut
352f64697c
Internals: rename legagy tab focus fields to TabFocusXXXX for clarity + removed one unnecessary FocusWindow() call.
2021-03-15 20:10:08 +01:00
ocornut
d94644261d
Drags, Sliders: Support ImGuiSliderFlags_Logarithmic flag with integers. Because why not? ( #3786 )
...
Renamed is_decimal to is_floating_point.
2021-03-15 12:21:37 +01:00
ocornut
287bd9b984
InputText: renamed ImGuiInputTextFlags_AlwaysInsertMode to ImGuiInputTextFlags_AlwaysOverwrite. ( #2863 )
2021-03-12 18:23:30 +01:00
ocornut
033dfd9d35
ImDrawFlags: rework/revert c2d6d26
+ 39432bf
in a way that is closer to old version and back to opt-in but with default 0 = all corners.
2021-03-12 16:31:46 +01:00
Rokas Kupstys
c2d6d26139
ImDrawList: upgraded AddRect(), AddRectFilled(), PathRect() to use general ImDrawFlags instead of ImDrawCornersFlags
2021-03-11 16:03:32 +01:00
C.Even
a3ebd160cb
Fix unused variable warning in ImGui::EndListBox() ( #3897 )
2021-03-11 10:04:50 +01:00
ocornut
6ba1334903
Nav: internals: renaming ImGuiInputSource so it is not specific to nav. Comments.
2021-03-10 16:36:39 +01:00
Rokas Kupstys
01a2bac7d5
DrawList: Replace "bool close" in drawing functions with flags.
2021-03-10 12:57:01 +01:00
ocornut
a64e0eb3a4
Nav: merged SetNavID() and SetNavIDWithRectRel() to improve sanity, moved flags overwrite off them. ( #787 )
2021-03-09 17:21:01 +01:00
ocornut
4bb5a36f90
Nav: do not clear per-window NavId when window reappears. Process NavInit regardless of current highllight state. Consistently set g.NavLayer in SetNavID(). ( #787 )
2021-03-09 12:39:18 +01:00
ocornut
e842b196df
Amend sanitization of format strings. Support ' without stb_printf. Simpler loops, will also be used for ImStrv branch. ( 8ee77f1
) ( #3604 )
...
Widgets: Sliders: Fix a bug where numbers after format specifier (eg. %d123) would cause RoundScalarWithFormatT() return incorrect value.
2021-03-05 18:27:35 +01:00
Rokas Kupstys
8ee77f1b65
Widgets: Sliders: Skip custom stb_sprintf.h format flags (', #, _) in RoundScalarWithFormatT() as they break ImAtof()/ImAtoi() and cause Drag*()/Slider*() widgets display incorrect values. ( #3604 )
...
Widgets: Sliders: Fix a bug where numbers after format specifier (eg. %d123) would cause RoundScalarWithFormatT() return incorrect value.
2021-03-05 18:06:54 +01:00
ocornut
fdebb2e093
Internals: removed HoveredRootWindow, tweak IsWindowHovered().
2021-03-05 15:56:59 +01:00
ocornut
3776ba565f
Internals: TabBar: minor tweaks and renaming.
2021-02-24 19:40:15 +01:00
ocornut
a8f76c23a4
Window: Shrink close button hit-testing region when it covers an abnormally high portion of the window visible area (e.g. when window is collapsed and moved in a corner)to facilitate moving the window away. ( #3825 )
2021-02-18 17:23:10 +01:00
ocornut
0ecdf8167c
DragScalar: Fixed crash when using DragScalar() directly with ImGuiSliderFlags_AlwaysClamp + only one of either p_min or p_max set. ( #3824 ) [@harry75369]
2021-02-18 16:12:41 +01:00
ocornut
30b7545841
Version 1.82 WIP
2021-02-15 18:10:14 +01:00
ocornut
4df57136e9
Version 1.81
2021-02-10 21:16:58 +01:00
ocornut
f14042ca78
Viewports Added ImGui::GetMainViewport() as a way to get the bounds and work area of the host display. ( #3789 , #1542 )
...
Viewports: Backport a few constructs from 'docking' branch.
Viewports: Added ImGuiViewportFlags_IsPlatformWindow, ImGuiViewportFlags_IsPlatformMonitor, ImGuiViewportFlags_OwnedByApp (none of them were in docking branch yet). ImGuiViewportFlags_IsPlatformMonitor is merely there to convey future intent, not yet used.
Reduce uses of io.DisplaySize.
MainMenuBar: Backport work area handling code from 'docking' branch.
Metrics: Backported "Viewports" debug visualizer from 'docking' branch.
Demo: Rework 'Examples->Fullscreen Window'.
Demo: 'Simple Overlay' demo now moves under main menu-bar (if any) using GetMainViewport()'s work area.
2021-02-10 16:09:53 +01:00
ocornut
03d74a293d
ListBox: renamed ListBoxHeader>BeginListBox, ListBoxFooter>EndListBox. Added demo bits.
2021-02-03 16:33:22 +01:00
ocornut
6f6d4e0b70
ListBoxHeader: In version taking height in number of items, made vertical padding consistent regardless of if (items_count <= height_in_items) or not.
...
Demo: Tweaks.
2021-02-03 15:07:14 +01:00
ocornut
e5cbf60def
ListBox: tweaked default height calculation. simplifying code internally (rework passing of full rect). Should have no visible side-effects + misc comments.
2021-02-03 14:54:56 +01:00