Commit Graph

318 Commits

Author SHA1 Message Date
omar
20983773f1 Nav: MainMenuBar now releases focus when user gets out of the menu layer. WindowingTarget when applying focus to a window with only menus automatically sets the layer. (#787)
This is enough for basic mouse/gamepad usage, but 1- previous window gets an unfocused title bar color temporarily, 2- generaly for gamepad and especially keyboard we need much more to get this done right
2017-10-23 12:38:39 +02:00
omar
51eed2f257 Merge branch 'master' into navigation 2017-10-19 19:42:27 +02:00
omar
5b699517d4 Internals: PaintVerts** renamed to ShadeVerts**, moved to imgui_draw.cpp and exposed in imgui_internal.h (+1 squashed commits) 2017-10-19 19:42:19 +02:00
omar
d3c2e904d8 Internals: Added ImLinearSweep() helper. 2017-10-19 19:29:59 +02:00
omar
938f1b720f Merge branch 'master' into navigation
# Conflicts:
#	imgui.cpp
2017-10-19 00:04:53 +02:00
omar
370a48c10b Internals: RenderCollapseTriangle() -> RenderTriangle(), takes a ImGuiDir 2017-10-18 23:46:16 +02:00
omar
a03093b2d4 CollapsingHeader(bool*) variant: fixed for IsItemHovered() to work properly in the nav branch.Basically the close button now has to use ItemAdd() to be navable into, which overwrite the IsItemHovered data. (#600, #787) 2017-10-18 19:55:08 +02:00
omar
29a652adee CollapsingHeader(bool*) variant: fixed for IsItemHovered() to work properly in the nav branch.Basically the close button now has to use ItemAdd() to be navable into, which overwrite the IsItemHovered data. (#600, #787) 2017-10-18 19:51:32 +02:00
omar
a126c702d9 Merge branch 'master' into navigation
# Conflicts:
#	imgui_internal.h
2017-10-18 13:09:28 +02:00
omar
ef3f87eec5 Internals: ButtonBehavior: made ImGuiButtonFlags_PressedOnClick and ImGuiButtonFlags_PressedOnDoubleClick set the click offset correctly + hold on g.ActiveId so Held state can be reported. Added ImGuiButtonFlags_NoHoldingActiveId flag to disable the later. 2017-10-18 13:08:25 +02:00
omar
1c4af303bf Internals:Helpers: Added ImSwap(int,int), exposed ImStrncpy(). 2017-10-18 13:08:14 +02:00
omar
bf778ebb7e Checkbox: Using checkmark. MenuItem: Tweaked checkmark, thicker. 2017-10-18 13:06:49 +02:00
omar
78a85ba3fe Begin: Work toward obsoleting the 5-arguments Begin() overload. Internal BeginEx() becomes the normal public Begin() again! (4) 2017-10-17 16:15:46 +02:00
omar
2739b6ebcd Begin: Work toward obsoleting the 5-arguments Begin() overload. Removed bg_alpha from internal BeginEx(). (3) 2017-10-17 16:14:20 +02:00
omar
4aa9d2089d Begin: Work toward obsoleting the 5-arguments Begin() overload. Removed size_on_first_use from internal BeginEx(). (2) 2017-10-17 15:51:20 +02:00
omar
55d873875e Begin: Work toward obsoleting the 5-arguments Begin() overload. (1) 2017-10-17 15:47:55 +02:00
omar
d761825cfb Nav: Renaming a field + Comments. 2017-10-15 17:57:15 +02:00
omar
c42baf392a Reluctantly exposed GetActiveID(), GetHoveredID() in imgui_internal because the demo code will need it. 2017-10-13 16:48:14 +02:00
omar
f852b9a52a Exposed Scrollbar() in imgui_internal.h and removed a bool arg 2017-10-13 13:31:34 +02:00
omar
b667d5a9e7 Nav: Internals: Renamed ImGuiButtonFlags_NoNavOverride to ImGuiButtonFlags_NoNavFocus + fixed a theorically missing test in ButtonBehavior() (#787) 2017-10-13 13:31:34 +02:00
omar
0371219222 Nav: Internals: Renamed SetActiveIDNoNav -> SetActiveID() and old SetActiveID() -> SetFocusID(), both functions needs to be called when both are desirabled. (#787)
May break code relying on imgui_internal.h, relying on nav and not calling ButtonBehavior().
2017-10-13 13:31:34 +02:00
omar
4be967823f Exposed Scrollbar() in imgui_internal.h and removed a bool arg 2017-10-13 13:30:28 +02:00
omar
7a14d7dfdc Nav: More consistently drawing a (thin) navigation rectangle hover filled frames such as tree nodes, collapsing header, menus. (#787) 2017-10-11 19:05:36 +02:00
omar
69dd895358 Nav: Renaming NavInitDefaultRequest -> NavInitRequest 2017-10-06 15:54:29 -07:00
omar
d2975115cd Nav: Caching into g.NavAnyRequest to minimize hot path cost (and so we can add many more request sources) 2017-10-06 15:14:28 -07:00
omar
c3105919ba Nav: Minor tweaks also toward removing processing from ItemAdd() 2017-10-06 14:51:15 -07:00
omar
64ce83b9ed Merge branch 'master' into navigation
# Conflicts:
#	imgui.cpp
#	imgui_internal.h
2017-10-06 14:27:29 -07:00
omar
042153d254 Internal: ItemAdd(), IsClippedEx(): removed unnecessary indirection for ID parameter 2017-10-06 14:23:18 -07:00
omar
59c6f35bf6 Added ActivateItem(), GetItemID() functions. 2017-10-05 21:34:01 -07:00
omar
80c4e2fe7b Nav: Tidying up activation mechanism so that setting NavActivateId can trigger buttons. 2017-10-05 21:27:08 -07:00
omar
2f27b733be Nav: Fixed uninitialized context variables for sanity. 2017-10-05 18:33:40 -07:00
omar
f2c9bd8d4f Nav: Fixed uninitialized context variables for sanity. 2017-10-05 16:39:59 -07:00
omar
f326fac64a Nav: Menus and popups now have move request wrap around vertically (using the move request forward thing added recently). (#787) 2017-10-05 10:29:17 -07:00
omar
42ee537be3 Comments 2017-10-04 10:45:35 -07:00
omar
a56b71e866 Nav: Added code to render thin highlight type. (#787) 2017-10-04 10:44:27 -07:00
omar
64a51327d3 Nav: Added NavMoveResultParentId internal info to record when the parent/context of a given NavId. Useful for various algorithms (currently looking at range selection stuff) (#787) 2017-10-03 13:25:40 -07:00
omar
74da533c93 Nav: Added NavJustNavigatedId internal info to record when we land on a given item after a navigation request, useful for various algorithms (currently looking at range selection stuff) (#787) 2017-10-03 11:22:38 -07:00
omar
88a354585a Nav: It's now possible to navigate sibling of a menu-bar while navigating inside one of their child. If a Left<>Right navigation request fails to find a match we forward the request to the root menu. (#787, #126)
Currently the sibling menu is isn't automatically opened, that's still left to it (and even that can be anoying in Windows when the first menu-item is a child menu)
2017-09-29 23:39:34 +02:00
omar
587e637db0 Nav: Taking note that we should aim to remove MenuBarAppending later. 2017-09-29 23:37:14 +02:00
omar
1eaa9d0621 Nav: Fixed uninitialized variable (that had no side-effects due to the code/data flow involved) 2017-09-29 23:37:14 +02:00
omar
8a5a29f0be Nav: Renamed internal field. 2017-09-29 19:28:19 +02:00
omar
9712a81f85 Nav: Rectangle rectangle stored per window and per layer as well. Makes things simpler, allows enable us to visualize more data. 2017-09-29 19:26:03 +02:00
omar
9737efb2f1 Nav: Store per-window last nav id also per-layer so we can easily query them for menu navigation code. (#787) 2017-09-29 17:58:25 +02:00
omar
8a814487fe Merge branch 'master' into navigation
# Conflicts:
#	imgui.cpp
#	imgui_internal.h
2017-09-29 16:30:43 +02:00
omar
30b1d85962 Nav: Commiting some better organized Debug helper because this going to stay for a bit. 2017-09-28 23:48:30 +02:00
omar
164f22d5b7 Comments 2017-09-28 22:00:49 +02:00
omar
df366b230e ColorPicker4: Use nav flag to provide a slighly better experience when using navigation (#787, #346) 2017-09-28 20:22:30 +02:00
omar
2d859dee4e Nav: Added ImGuiItemFlags_NoNav item flag 2017-09-28 19:58:01 +02:00
omar
4b4e455c40 Nav: Internal nenaming 2017-09-28 19:41:30 +02:00
omar
50ba543743 Comments 2017-09-28 19:35:10 +02:00