omar
3f297e74e4
Merging the minor/shallow changes from Navigation branch.
2018-02-05 14:52:28 +01:00
omar
2081fc15b5
Added assert in BeginChild(ImGuiId id).
2018-02-05 13:42:34 +01:00
omar
223be68d77
Nav: Debugging stuff.
2018-02-05 13:42:33 +01:00
omar
66ff820eaa
Nav: Ensure g.NavScoringRectScreen is always finite and not inverted. ( #787 )
2018-02-04 18:30:46 +01:00
omar
0bd15b52a6
Merge branch 'master' into navigation
...
# Conflicts:
# imgui.cpp
2018-02-04 13:16:13 +01:00
omar
147ec8d1e2
Style Added style.MouseCursorScale, may remove ( #939 ).
2018-02-04 12:17:35 +01:00
omar
648de2fc00
Nav: Press Left on a child with ImGuiTreeNodeFlags_NavCloseFromChild moves you to parent node instead of closing it immediately. More standard. ( #787 , #1079 )
2018-02-02 18:38:18 +01:00
omar
ce9d7baaba
Nav: TreeNode: Added ImGuiTreeNodeFlags_NavCloseFromChild flag, allow closing a TreeNode() from any of child. The explicit flag is not great, perhaps allowing some form of inheritance would help. ( #787 , #1079 )
2018-02-02 17:47:05 +01:00
omar
9120938200
Nav: Revert 5c9ea4d53a
with comments. ( #787 )
2018-02-01 23:53:00 +01:00
omar
96ddfbc973
Nav: Modal windows can't be closed with Nav PadCancel. ( #787 )
2018-02-01 23:36:22 +01:00
omar
efbd8cebe7
Nav: Comments ( #787 )
2018-02-01 22:53:08 +01:00
omar
c4fc879508
CloseButton: Fixed cross positioning.
2018-02-01 22:33:48 +01:00
omar
942c140710
CloseButton: Fixed cross positioning.
2018-02-01 22:32:52 +01:00
omar
68d3e139a7
Nav: When focusing a parent window while closing a popup, hide its highlight for one frame to avoid potential double highlight and flicker with the common pattern of menu items leading to the opening other windows. ( #787 )
2018-02-01 22:28:58 +01:00
omar
950f260a32
Nav: Fixed Selectable/MenuItem Nav Highlight from using rounding when outer highlight stays square. ( #787 )
2018-02-01 22:25:25 +01:00
omar
c7b7b181b5
Nav: CloseButton reacts when clipped. ( #787 )
2018-02-01 22:13:25 +01:00
omar
5c9ea4d53a
Nav: Fixed press Left on sub-menu when parent wasn't a menu - we were just checking at the wrong level. ( #787 )
2018-02-01 21:33:23 +01:00
omar
eb737e0a42
Nav: Child window is restored on focus follow up. Fix bdd868704f
. ( #787 , ~#727) One visible issue was pressing Left to leave a child menu.
2018-02-01 21:27:46 +01:00
omar
95f9c74b9a
Metrics: Displaying some of the important internal window flags.
2018-02-01 21:27:45 +01:00
omar
79ff3c2d49
Merge branch 'master' into navigation
2018-02-01 18:33:40 +01:00
omar
07163804df
Internals: Renamed CloseInactivePopups() to a better ClosePopupsOverWindow(). Exposed in imgui_internal.h
2018-02-01 18:31:41 +01:00
omar
5812d0b751
Nav: Using CTRL+TAB / PadFocusNext/Prev to Focus a window closes the previous window popups. ( #787 )
2018-02-01 18:29:30 +01:00
omar
fd6d8863f7
Nav: SetFocusID() clears NavInitRequest for consistency (repro would a same frame interaction / race condition). ( #787 )
2018-02-01 18:19:36 +01:00
omar
ef2c3bcdee
Nav: Fixed InitRequest leaking when changing window (repro was to navigate inside File->Options->[Child] then press Left and notice how we would land on parent window on the fist item after the current one). ( #787 )
2018-02-01 18:02:55 +01:00
omar
8cc2dbc3bd
Internals: Nav: Extracted code into IsWindowNavFocusable(). ( #787 )
2018-02-01 14:56:56 +01:00
omar
bdd868704f
Nav: Child window is restored on focus when returning to layer 0 or refocusing. This is a little experimental and potentially error-prone right now. ( #787 , vaguely relate to ~#727) Ideally we should maintain a non-sorted last-focused list that include childs windows.
2018-02-01 00:50:42 +01:00
omar
7b22a91578
Nav / Slider: Fixed reaching edge of integer slider with navigation input, bug introduced on January 25 in Nav branch 10a4a77b27
. ( #787 )
2018-02-01 00:08:13 +01:00
omar
eaa6f490a2
Merge branch 'master' into navigation
...
# Conflicts:
# imgui_demo.cpp
2018-01-31 23:38:05 +01:00
omar
9bc5c089b6
Internal: Avoid needlessly bringing parent of front-most child back to front. This is mostly to reduce flicker/confusion in Metrics when traversing windows. We could aim at separating the child windows from non-child windows at some point.
2018-01-31 23:37:05 +01:00
omar
76d8af4036
Nav: when browsing a window that has no activable items (scroll only) we keep a highlight on the child. ( #787 )
2018-01-31 21:25:52 +01:00
omar
aa2dda7610
Nav: Tweak code to be easier to follow + updated todo list after clarifying an issue.
2018-01-31 21:06:47 +01:00
omar
e6c0b212e8
Nav: Fixed initial movement (which sends an InitRequest) from clearing NavDisableHighlight and fully enabling Nav feedbacks. ( #787 )
...
NB: Setting g.NavInitResultExplicit = false on InitRequest match was added in initial commit c2cb2a6928
2018-01-31 18:53:15 +01:00
omar
9c8fb804ed
Log: Comments and extraneous assets to clarify intent. ( #1584 )
2018-01-31 17:41:26 +01:00
omar
27980d9688
Merge branch 'master' into context
2018-01-31 16:02:26 +01:00
omar
47e81a6194
Merge branch 'master' into navigation
2018-01-31 16:00:25 +01:00
omar
cd3dd886de
Moved extra_fonts/ to misc/fonts/. Moved .natvis file to misc/natvis/ ( #1569 )
2018-01-31 16:00:07 +01:00
omar
23c11e9764
Merge branch 'master' into navigation
...
# Conflicts:
# imgui.cpp
2018-01-31 15:43:19 +01:00
omar
596b6d6de2
Style: Enable window border by default. ( #707 )
2018-01-31 00:03:11 +01:00
omar
bebe03db05
Metrics: Minor formatting tweaks
2018-01-30 21:17:27 +01:00
omar
bd579e5429
Nav: Removed io.NavUsable --> io.NavActive, io.NavActive --> io.NavVisible. ( #787 ). NavActive takes account of NavFlags enable flags.
2018-01-30 20:07:12 +01:00
omar
9fc6f5907b
Nav: Fixed NavRectRel being cleared for one frame when restoring layer 0 with Alt/Menu key or Escape. Maybe was inconsequential. ( #787 )
2018-01-30 18:34:32 +01:00
omar
1ed7bce3ed
Nav: Removed old unused code. ( #787 )
2018-01-30 18:34:17 +01:00
omar
a8763d14c5
Internals: Renaming.
2018-01-30 15:08:53 +01:00
omar
38197a236d
Internals: Renaming.
2018-01-30 15:07:20 +01:00
omar
a7ad5134e5
Nav: window that are filling the entire display/viewport gets their windowing highlight clamped within. ( #787 )
2018-01-30 15:05:46 +01:00
omar
acf21ee429
Nav: Windows with ImGuiWindowFlags_NoBringToFrontOnFocus flag aren't temporarily displayed on the front when using CTRL-TAB. ( #787 )
2018-01-30 15:05:32 +01:00
omar
bed6ef03f5
Nav: workaround to kindly handle ALT-TAB without detecting TAB-release on backends that clear all keys on unfocus. ( #787 )
2018-01-29 23:59:47 +01:00
omar
c851b33352
Nav: Added proper version of ImGuiWindowFlags_NavFlattened that handles scrolling nicely. Marked as private as I'm not happy with the name. ( #787 )
2018-01-29 23:59:46 +01:00
omar
b40dc5c4f2
Nav: NavScoreItem uses g.CurrentWindow and not g.NavWindow. This was changed as part of b3cba62b80
when first trying to implement the NavFlattenedFlag. As it turns out we won't need it. Committing separately for safety. ( #787 )
2018-01-29 23:59:43 +01:00
omar
020b153d35
Nav: calling NavMoveRequestCancel() more consistently when hijacking a request. Not strictly necessary. ( #787 )
2018-01-29 23:59:43 +01:00
omar
c8d8dc7f0a
Nav: Internals: Renamed RootNavWindow to NavRootWindow ( #787 )
2018-01-29 23:59:43 +01:00
omar
72485a5d04
Nav: Refactor NavMoveResult** flags into ImGuiNavMoveResult structure as we are going to want two instances of it. ( #787 ) (+1 squashed commits)
...
+ store window inside result.
2018-01-29 23:59:42 +01:00
omar
1cf38d0334
Internals: Nav: Renamed ImGuiNavForward enum ( #787 )
2018-01-29 18:12:32 +01:00
omar
4654040bcb
Nav: Comments, added enum to clarify NavForward code. ( #787 )
2018-01-29 17:35:36 +01:00
omar
c8b9b2c6bd
Nav: Mouse hovering selectable / menu items only activate them if they are on the active NavLayer. ( #787 )
2018-01-29 15:46:41 +01:00
omar
21771adb94
Nav: Debug overlay uses default font. ( #787 )
2018-01-29 15:35:51 +01:00
omar
3ded262776
Merge branch 'master' into navigation
2018-01-26 16:07:43 +01:00
omar
2d9d7a10ca
Scrollbar: Fix for ScrollbarY enable check after ScrollbarX has been enabled. ( #1574 ) Looks like a bug introduced in c36e586cce
.
2018-01-26 11:43:43 +01:00
omar
1f3b66b10a
Scrollbar: Fix ScrollbarX enable test subtracting WindowPadding.x. This has been here since 65a191c005
( #246 ) tho at the time it is possible that SizeContents wasn't calculated as evenly.
...
Test: auto-resize with: ImGui::Begin("Test", NULL, ImGuiWindowFlags_HorizontalScrollbar); ImGui::Button("##xxx", ImVec2(500,500)); ImGui::End();
2018-01-26 11:43:31 +01:00
omar
10a4a77b27
Nav: Drag, Slider: When already past a limit and pushing in the direction of the limit, we don't clamp values again. ( #787 )
2018-01-25 20:39:34 +01:00
omar
04d5783ffd
Nav: Cleaning up + using ImGuiInputSource source enum instead of a silly bool. ( #787 )
2018-01-25 19:36:38 +01:00
omar
d088bd86ad
Nav: Added keyboard moving and resizing via the CTRL-TAB windowing mode. ( #787 )
2018-01-25 19:25:30 +01:00
omar
486f0a8ba0
Fixed potential warning (forward declaration and definition didn't match signature. forward declaration only here for consistency)
2018-01-25 19:07:35 +01:00
omar
f2d5300408
Nav: Keyboard: Added CTRL+TAB (and CTRL+Shift+TAB) style window selection. ( #787 )
2018-01-25 19:03:47 +01:00
omar
ed088b00be
Nav: Style: Improved display of windowing highlight (for focus selection via PadMenu or Ctrl+TAB). ( #787 , #707 )
2018-01-25 18:50:30 +01:00
omar
e9070e768e
Nav: Fixed renaming of c09016b12a
that were incorrect. ImGuiNavInput_PadLeft -> PadDpadLeft, _PadScrollLeft -> PadLStickLeft. ( #787 )
2018-01-25 16:17:36 +01:00
omar
5d31e1696f
Fix SetNextWindowContentSize() with 0.0f on Y axis (or SetNextWindowContentWidth()) overwriting the contents size. Broken in eab6333a0b
. ( #1363 )
2018-01-25 15:37:24 +01:00
omar
5f7f27c8de
Nav: Comments. ( #787 )
2018-01-24 20:07:35 +01:00
omar
d404b93b6b
Nav: Mouse clicking on a window (to select/move) disables hides nav highlight. ( #787 ) + comments
2018-01-24 19:57:39 +01:00
omar
89b0ca1f8f
Nav: FocusWindow() doesn't reset NavRectRel (which was flickering e.g. when returning to a parent menu). This was added in the initial nav branch commit and I don't see a reason for it. ( #787 )
2018-01-24 19:55:56 +01:00
omar
f3776055d6
Merge branch 'master' into context
2018-01-24 19:31:11 +01:00
omar
455989b8b1
Nav: Added io.NavFlags to hold various options. Added ImGuiNavFlags_EnableGamepad and ImGuiNavFlags_EnableKeyboard for bindings to use ( #787 )
2018-01-24 17:41:47 +01:00
omar
28671aa821
Nav: Internals: Moved some enums and functions to internals, renamed ImGuiNavReadMode to ImGuiInputReadMode as well. ( #787 )
2018-01-24 17:41:47 +01:00
omar
8227176c17
Nav: Menus: Fix for using Left direction inside a menu with widgets layed out horizontally. Left to close is now handled as a fallback inside EndMenu(). ( #787 )
2018-01-24 17:41:47 +01:00
omar
c09016b12a
Nav: Renamed ImGuiNavInput_PadLeft / etc. to ImGuiNavInput_PadLStickLeft. Renamed ImGuiNavInput_PadScrollLeft to ImGuiNavInput_PadRStickLeft, aka removing trying-too-hard semantic from the enums. ( #787 )
2018-01-24 17:41:47 +01:00
omar
bd278e958e
Nav: Added ImGuiNavInput_KeyLeft/Right/Up/Down set so we can differenciate gamepad/keyboard inputs. ( #787 )
2018-01-24 17:41:47 +01:00
ocornut
680162eb32
Merge branch 'master' into navigation
2018-01-24 17:41:14 +01:00
omar
5148937d4d
Fixed old Begin() calling SetNextWindowBgAlpha() with negative values. ( #1567 , #1568 )
2018-01-24 17:39:21 +01:00
omar
37ee99983f
Clear BgAlphaCond properly after consuming it. Fixes 9a76fd30fd
( #1567 )
2018-01-24 15:09:02 +01:00
omar
64b786c2aa
Nav: Tweak/fixed popup positioning when using nav without the io.NavMovesMouse flag (it was always assuming a mouse cursor and allocating space for it) ( #787 )
...
Note that this bit include badly hardcoded sizes, expecting an improvement later.
2018-01-24 10:31:54 +01:00
omar
cea78cc576
Nav: Update hovered logic, so IsItemHovered and ButtonBehavior are more consistent with each other. The known case this fixes is nav focusing on a color button, tooltip appears, mouse move: previously tooltip would stay up. ( #787 )
2018-01-24 10:24:41 +01:00
omar
eb7ec781dc
Nav: Tweak GetNavInputAmount(). Split debug defines.
2018-01-23 21:56:15 +01:00
omar
f6ee8d30fb
Comments ( #1567 )
2018-01-23 19:21:17 +01:00
omar
d500113f1d
Merge branch 'master' into navigation
...
# Conflicts:
# imgui.cpp
# imgui_demo.cpp
2018-01-23 19:16:43 +01:00
omar
9a76fd30fd
Added SetNextWindowBgAlpha() helper. ( #1567 ) particularly helpul with the marking of the old 5-parameters version of Begin() as obsolete.
2018-01-23 19:13:49 +01:00
omar
13c407591e
Nav: Comments, tweaks
2018-01-23 16:45:46 +01:00
omar
db2ba13154
Internals: Exposed SetCurrentFont() in imgui_internal.h
2018-01-23 16:33:06 +01:00
omar
9076366c17
Style: Exposed ImGuiStyleVar_WindowTitleAlign, ImGuiStyleVar_ScrollbarSize, ImGuiStyleVar_ScrollbarRounding, ImGuiStyleVar_GrabRounding + added an assert to reduce accidental breakage. ( #1181 )
2018-01-23 09:57:49 +01:00
omar
1acb155419
Internals: Moved unnecessary MovingWindowMoveId field.
2018-01-22 14:31:20 +01:00
omar
5097368bd5
Tweaked FAQ.
2018-01-22 12:01:24 +01:00
omar
2026e792cd
Context: NewFrame() asserts ( #1565 )
2018-01-21 21:12:52 +01:00
omar
9edf211c0e
Merge branch 'master' into navigation
2018-01-21 20:46:50 +01:00
omar
3ed2ddbfbe
Metrics: Removed context size display.
2018-01-21 20:32:05 +01:00
omar
5e2aa6185c
Reorganized context handling to be more explicit,
...
- YOU NOW NEED TO CALL ImGui::CreateContext() AT THE BEGINNING OF YOUR APP, AND CALL ImGui::DestroyContext() AT THE END.
- removed Shutdown() function, as DestroyContext() serve this purpose.
- you may pass a ImFontAtlas* pointer to CreateContext() to share a font atlas between contexts. Otherwhise CreateContext() will create its own font atlas instance.
- removed allocator parameters from CreateContext(), they are now setup with SetAllocatorFunctions(), and shared by all contexts.
- removed the default global context and font atlas instance, which were confusing for users of DLL reloading and users of multiple contexts
(#1565 , #586 , #992 , #1007 , #1558 )
2018-01-21 20:16:54 +01:00
omar
7e4d28a49d
Context: Renamed SetMemoryAllocators() to SetAllocatorFunctions(). Tweaked comments. ( #1565 , #586 , #992 , #1007 , #1558 )
2018-01-21 20:16:54 +01:00
omar
e45d7a7060
Context: Added IMGUI_DISABLE_DEFAULT_ALLOCATORS to disable linking with malloc/free. ( #1565 , #586 , #992 , #1007 , #1558 )
2018-01-21 20:16:54 +01:00
omar
5a301c29dc
Context: Removed allocator parameters from CreateContext(), they are now setup with SetMemoryAllocators() and shared by all contexts. ( #1565 , #586 , #992 , #1007 , #1558 )
2018-01-21 20:16:54 +01:00
omar
ac5b7a1bdf
Comments
2018-01-21 20:10:23 +01:00
Panos Karabelas
7c8a19978d
Simplified return of ImGui::IsKeyReleased()
2018-01-21 16:02:09 +00:00
omar
cd1409f4bf
ImFontAtlas: Moved mouse cursor data out of ImGuiContext, fix drawing them with multiple context. Also remove the last remaining undesirable dependency on GImGui in imgui_draw.cpp, finishing the work recently done with ImDrawListSharedData. Hurra! ( #939 )
2018-01-20 20:25:12 +01:00