Commit Graph

4153 Commits

Author SHA1 Message Date
omar
db071184a0 Merge branch 'master' into navigation
# Conflicts:
#	imgui.cpp
#	imgui_internal.h
2018-02-06 13:51:09 +01:00
omar
b50dce54ea Drag and Drop: TreeNode as drop target displays rectangle over full frame. Added optional internal storage for item display rect. Will expose later. (#1597, #143) 2018-02-06 13:46:14 +01:00
omar
c6ba7c8231 Internals: TreeNode: Renaming local to be more consistent with other widgets. 2018-02-06 13:41:46 +01:00
omar
e6926d9f7c Internals: Refactored bool LastItemRectHovered into flags. (#1597) 2018-02-06 13:34:41 +01:00
omar
ce2b8d3255 Nav: Comments, removed extraneous parameter. 2018-02-06 13:16:44 +01:00
omar
0c0d811859 Nav: SetItemDefaultFocus() doesn't make the navigation cursorr highlight visible. Renamed NavInitResultExplicit to NavInitRequestFromMove. (#787) 2018-02-05 23:53:40 +01:00
omar
fb9fecea5e Nav: Sliders and Drags are toggle activated instead of requiring user to cross Cross/Space. (#787) 2018-02-05 20:16:38 +01:00
omar
4932303e62 Nav: DragBehavior: Tweaks (to take the noise out of the next commit). 2018-02-05 20:15:31 +01:00
omar
e5e3cc617e Nav: Maintaining a NavActivatePressedId field that widget can conveniently use along with NavActivateDownId. 2018-02-05 19:37:29 +01:00
omar
fb7cf4a475 Nav: Removed old unnecessary ifdefs. 2018-02-05 18:25:03 +01:00
omar
f35734c925 Nav: Debugging code. (#787) 2018-02-05 17:02:30 +01:00
omar
92ee6b1185 Nav: Sets io.WantCaptureKeyboard when navigation is active. This is a little agressive but probably the best default and also a good way to get feedback. Added ImGuiNavFlags_NoCaptureKeyboard to disable this behavior. Comments. (#787) 2018-02-05 16:07:54 +01:00
omar
348c46d21e Merge branch 'master' into navigation
# Conflicts:
#	imgui.cpp
2018-02-05 15:50:28 +01:00
omar
11d0fc8220 Tooltip: BeginTooltip() sets NoInputs flag. 2018-02-05 15:10:07 +01:00
omar
1dedbf8091 Style: Fixed missing style.MouseCursorScale initialization (#939), messed up original commit badly. 2018-02-05 15:07:25 +01:00
omar
533fe8cb55 Merge branch 'master' into navigation
# Conflicts:
#	imgui.cpp
2018-02-05 14:55:57 +01:00
omar
8ad88f725c Nav: Minor tidying up. (#787) 2018-02-05 14:53:22 +01:00
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
omar
0b1fecb792 Horizontal mouse wheel: renamed io.MouseHorizWheel to io.MouseWheelH. Reorganized the code in NewFrame(). Examples: Updated GLFW+GL and SDL+GL accordingly. (#1463) 2018-01-20 12:36:16 +01:00
omar
6f6b6194b2 Merge branch 'tseeker/20171127-feature-horiz-wheel' of https://github.com/tseeker/imgui into tseeker-tseeker/20171127-feature-horiz-wheel
# Conflicts:
#	examples/sdl_opengl2_example/imgui_impl_sdl_gl2.cpp
#	examples/sdl_opengl3_example/imgui_impl_sdl_gl3.cpp
2018-01-20 12:06:06 +01:00
omar
d4bf9b4686 Renaming for consistency. 2018-01-19 15:47:10 +01:00
omar
8877622fa8 Merge branch 'master' into navigation
# Conflicts:
#	imgui.cpp
2018-01-19 15:42:28 +01:00
omar
e5a6e85f6d Basic undocumented/unsupported combination of Child+Tooltip. The full feature needs substancially more work but this is enough for simplest cases. (#1345) 2018-01-19 15:37:25 +01:00
omar
42a612d7c9 Begin: Removed asserts that got in the way of some flags combination. (#1345) 2018-01-19 15:33:35 +01:00
omar
0978f00911 MovingWindow: Track click offset based on root window (undo 514d30d8cd). This should not affect the patch used for #1345 as the RootWindow for Child+Tooltip window points to itself now. 2018-01-19 15:14:53 +01:00
omar
74dc70c543 DragFloat: Fix/workaround for backends which do not preserve a valid mouse position when dragged out of bounds. (#1559) 2018-01-19 09:16:26 +01:00
omar
63d47e8328 Drag and Drop: Increased payload type string to 12 characters instead of 8.(#143) 2018-01-18 17:32:34 +01:00
omar
932d3f0198 NewFrame(): Added an assert to detect incorrect filling of the io.KeyMap[] array earlier. (#1555) + comments. 2018-01-18 10:06:58 +01:00
omar
7ccbb765e2 InputText: Cursor X position not lost when clicking outside on an item that's submitted after the InputText(). It was only noticeable when restoring focus programmatically. (#1418, #1554) 2018-01-17 12:15:00 +01:00
omar
2f15cc0855 Nav: Fixed popup wrap-around logic for windows with scrolling. (#787) 2018-01-15 21:55:32 +01:00
omar
05885b2e6d Merge fix. 2018-01-15 20:18:01 +01:00
omar
472ba1394c Merge branch 'master' into navigation
# Conflicts:
#	imgui.cpp
2018-01-15 20:13:42 +01:00
omar
28a76af185 Internal: DrawData: Tidying, renaming. 2018-01-15 20:12:48 +01:00
omar
a77913054f Merge branch 'master' into navigation
# Conflicts:
#	imgui.cpp
#	imgui_internal.h
2018-01-15 18:02:58 +01:00
omar
1182174d81 Internals: DrawData: We don't need an intermediate layer for popups. 2018-01-15 18:00:13 +01:00
omar
0c06b43e6b Metrics: Tweaks to hover-window-drawlist to see window bounding box. 2018-01-15 17:55:38 +01:00
omar
038453258e Internals: DrawData: Refactored chunks into a ImDrawDataBuilder we can reuse. 2018-01-15 17:48:32 +01:00
omar
06eef2ce6f Internals: DrawData: renamed fields only (committing separately so that next commit is less nosiy). 2018-01-15 17:48:32 +01:00
omar
6eff21ee5e Revert "Nav: Fixed RenderNavHighlight() clipping, essentially revert 6ea90af6b7. (#787)"
This reverts commit 03f5cd6ca1.
2018-01-15 16:19:01 +01:00
omar
514d30d8cd MovingWindow: Track click offset based on MovingWindow and not its RootWindow. Followup to 3849bb4470. Comments + adding a local to ease patch #1345. 2018-01-14 14:13:54 +01:00
Crunkle
daa38f2ad0 Fix cross compilers 2018-01-14 03:31:22 +00:00
omar
db63e71f13 Internals: Exposed SetCurrentFont() in imgui_internal.h 2018-01-12 20:07:01 +01:00
omar
1493de4f81 Internals: Merge of harmless stuff from Navigation stuff. Added GetHoveredID() internal helper. 2018-01-12 19:53:27 +01:00
omar
c85d7d6e49 Nav: Remove GetItemID(), hide ActivateItem() before this feature is unfinished and has issue (full feature is on hold). Undo part of 59c6f35bf6 (#787) 2018-01-12 19:28:37 +01:00
omar
c9be7d7254 Merge branch 'master' into navigation
# Conflicts:
#	imgui.cpp
#	imgui_internal.h
2018-01-12 19:21:12 +01:00
omar
0a98202714 Nav: Standardized FIXME-NAV marker. 2018-01-12 19:13:15 +01:00
omar
cc173d7619 Begin: FIx previous commit - no need to call on collapsed window. Handle manual resize (grip, border, gamepad) before setting up window DrawList main clipping rectangle. Sane (and required for viewport code). (#822, #1542) 2018-01-11 23:21:24 +01:00
omar
5e9ae92ae9 Begin: Handle manual resize (grip, border, gamepad) before setting up window DrawList main clipping rectangle. Sane (and required for viewport code). (#822, #1542) 2018-01-11 23:17:34 +01:00
omar
f7b10fc954 Merge branch 'master' into navigation
# Conflicts:
#	imgui.cpp
2018-01-11 18:18:44 +01:00
omar
6a1011cf53 MovingWindow: Proper fix for 651538e attempt, without altering MovingWindow which has side-effects. Clicking on a window with the ImGuiWIndowFlags_NoMove flags takes an ActiveId so we can't hover something else. (ref #1381, #1337) 2018-01-11 18:16:16 +01:00
omar
b74f24c3e5 Revert "Clicking on a window with the ImGuiWIndowFlags_NoMove flags takes an ActiveId so we can't hover something else. (ref #1381, #1337)"
This reverts commit 651538e13b.
2018-01-11 18:08:14 +01:00
omar
1c95dea88c Merge branch 'master' into navigation 2018-01-11 17:37:02 +01:00
omar
7d2a068dea Begin: Shuffling bits of code around. 2018-01-11 17:33:37 +01:00
omar
cd7e178eac Merge branch 'master' into navigation
# Conflicts:
#	imgui.cpp
2018-01-11 16:49:59 +01:00
omar
651538e13b Clicking on a window with the ImGuiWIndowFlags_NoMove flags takes an ActiveId so we can't hover something else. (ref #1381, #1337) 2018-01-11 16:43:03 +01:00
omar
a63fbbca8b Added ImGuiHoveredFlags_AnyWindow, ImGuiFocusedFlags_AnyWindow. Obsoleted IsAnyWindowHovered()/IsAnyWindowFocused() in favor of IsWindowHovered(ImGuiHoveredFlags_AnyWindow)/IsWindowFocused(ImGuiFocusedFlags_AnyWindow). Added to demo. (#1382) 2018-01-11 13:51:18 +01:00
omar
67671c0ab5 Merge branch 'master' into navigation
# Conflicts:
#	imgui.cpp
2018-01-10 23:11:26 +01:00
omar
1eee10778b Internals: Begin: Refactor some code into an UpdateManualResize() function. 2018-01-10 23:06:51 +01:00
omar
483f9b0d07 Internals: Begin: Moved DrawList setup code below, the viewport system will need to push the outer clipping rectangle as late as possible. 2018-01-10 22:55:29 +01:00
omar
03f5cd6ca1 Nav: Fixed RenderNavHighlight() clipping, essentially revert 6ea90af6b7. (#787) 2018-01-10 18:58:55 +01:00
omar
919fc548ad Merge branch 'master' into navigation 2018-01-10 18:58:26 +01:00
omar
6c583315e6 Begin: Moving some code around for the benefits of the wip viewport branch. 2018-01-10 18:56:51 +01:00
omar
f610e25682 Internals: Using ImFloor().when appropriate. 2018-01-10 18:33:29 +01:00
omar
fe919995da Merge branch 'master' into navigation 2018-01-08 16:35:12 +01:00
omar
933ee6cd5d InputText: Added alternative clipboard shortcuts: Shift+Delete (cut), Ctrl+Insert (copy), Shift+Insert (paste). (#1541) 2018-01-08 16:01:30 +01:00
omar
fd4d63a0c5 InputText: Moved code for checking clipboard shortcut so we can expand on it. (#1541) 2018-01-08 15:56:01 +01:00
omar
168200f915 Popups: Comments, reorganize bits of the header section, renamed parameters. 2018-01-07 18:17:47 +01:00
omar
a8e5542d78 BeginPopup: Exposed extra_flags publicly. (#1533) 2018-01-07 18:13:01 +01:00
omar
3f4eccf154 Merge branch 'master' into navigation
# Conflicts:
#	imgui.cpp
2018-01-07 16:22:09 +01:00
omar
3fc7cf190d OpenPopup(): Always reopen existing popup. Removed OpenPopupEx() bool reopen_existing which is always true. This also makes the public API on par with OpenPopupEx(). (#1497, #1533) 2018-01-07 16:20:02 +01:00
omar
deab2ab015 Popups: Gently handle the user mistakenly calling OpenPopup() every frame. (when reopen_existing is true). (#1497) 2018-01-07 16:15:54 +01:00
omar
69ff65f054 Internals: Popup: Renaming fields. 2018-01-07 16:11:25 +01:00
omar
3678307cd9 Popup, Menus: Tweaks and comments. 2018-01-07 15:56:14 +01:00
omar
369189b675 Internals: Popup: Explicitely setting up ImGuiPopupRef reduces confusion. 2018-01-07 15:40:46 +01:00
omar
e09852fc49 Popups: Revert aca23fd3f0 (Oct 20, 2017). Because 1) I can't seem to find a default. 2) The if is definitively faulty and would have been all true. 3) It looks like possibly the following commit 6ab737a4bb could have made this unnecessary. Not absolutly certain. (~#439) 2018-01-07 15:34:15 +01:00
omar
63e4677b81 Popup: BeginPopupContextItem(), BeginPopupContextWindow(), BeginPopupContextVoid(), OpenPopupOnItemClick() all react on mouse release instead of mouse click. Note that they don't use the full ButtonBehavior() or tracking aabb on both click and release. Applications I've tried seems to behave inconsistently there but on-release-without-tracking is both fairly common and doesn't require extra code for the id tracking. (~#439) 2018-01-07 15:23:57 +01:00
omar
c337cdcfd3 Internal: ButtonBehavior: Tweak to update g.ActiveIdClickOffset more consistently 2018-01-07 15:02:09 +01:00
omar
7ad169fa09 Merge branch 'master' into navigation + fix previous merge
# Conflicts:
#	imgui.cpp
2018-01-07 14:33:44 +01:00
omar
d730a763f6 Internal: Reworked FocusFrontMostActiveWindow() so it fits the Nav branch usage as well. 2018-01-07 14:32:42 +01:00
omar
66b2ee6ea2 Merge branch 'master' into navigation
# Conflicts:
#	imgui.cpp
2018-01-07 14:25:05 +01:00
omar
a34490239c Internals: Popup: Separating MousePosOnOpen and PopupPosOnOpen. They are equal in the master branch but different in the navigation branch. 2018-01-07 14:03:56 +01:00
omar
5fd19f037f Internals: renamed FocusPreviousWindow() to FocusfrontMostActiveWindow() 2018-01-07 12:48:11 +01:00
omar
2874aabb93 Internals: BringWindowToFront() iterate front to back, faster in majority of use cases. 2018-01-07 12:48:11 +01:00
omar
95b773370f Revert "Internals: Added LastActiveId, LastActiveIdTimer. (#1537)" Will come up with a better design later.
This reverts commit 007f4034c9.
2018-01-05 17:40:51 +01:00
omar
007f4034c9 Internals: Added LastActiveId, LastActiveIdTimer. (#1537) 2018-01-05 15:33:24 +01:00
omar
29c194b2a4 Merge branch 'master' into navigation
# Conflicts:
#	imgui.cpp
2018-01-03 20:47:42 +01:00
omar
4fc9f44073 Merge of minor left-overs from private work branch to reduce drifts. Should be functionally a no-op. 2018-01-03 20:46:54 +01:00
omar
4b1240b2e1 Fixed non-popup child windows not honoring the HiddenFrames flag (can't see a reason). Docking relies on this. 2018-01-03 20:45:24 +01:00
omar
b2ec0741f1 Internals: Settings api tweaks 2018-01-03 20:45:17 +01:00
omar
2b8224692e Merge branch 'master' into navigation 2018-01-03 20:26:24 +01:00
omar
0a0b252bb6 DragDrop: Removed IsDragDropActive() (introduced a few days ago, revert 06bea369c0) as our use case doesn't need it anymore. Will add it if there is a real need. 2018-01-03 17:02:51 +01:00
omar
33f7769d85 Columns: Clear offsets data when columns count changed. (#1525) 2018-01-03 14:38:01 +01:00
omar
f9b2058d5a Internals: Renamed ImGuiSimpleColumns to ImGuiMenuColumns to avoid confusion. Reduced internal buffer size (we only use 3 slots). 2018-01-03 14:35:11 +01:00
omar
05ec0b0736 Casing tweaks + clarify license copyright (simpler/safer?) (#1346) 2018-01-03 14:32:16 +01:00
omar
96ccc484f9 Merge branch 'master' into navigation
# Conflicts:
#	imgui_internal.h
2018-01-03 12:33:27 +01:00
omar
3c6fbe0849 Renamed ImGuiSizeConstraintCallback to ImGuiSizeCallback, ImGuiSizeConstraintCallbackData to ImGuiSizeCallbackData. 2018-01-03 12:31:56 +01:00
omar
7fcbd45500 Internals: NextWindow: Renamed, moved functions to member. 2018-01-03 12:28:16 +01:00
omar
e339949de1 Internals: NextWindow: Using ImGuiCond for consistency. 2018-01-03 12:22:02 +01:00
omar
04b44398eb Internals: refactored g.SetNextWindow fields into g.NextWindow. structure (so it can be more easily transported/copied) 2018-01-03 12:12:41 +01:00
omar
7e03ee8d85 Merge branch 'master' into navigation 2018-01-02 17:21:49 +01:00
Cory McWilliams
561e9f286e Fix a memory leak of ImGuiColumnsSet's Columns vector. ImVector doesn't call destructors. 2018-01-02 10:46:20 -05:00
omar
170bcb2d7c Internals: NewFrame: Shuffled some code around (to minimize upcoming patches) 2018-01-02 12:48:38 +01:00
omar
7a15fc8de5 Merge branch 'master' into navigation 2017-12-29 18:28:23 +01:00
omar
2dd2ca0096 Removed CalcItemRectClosestPoint() which was weird and not really used by anyone except demo code. If you need it it's easy to replicate on your side.
Removed internal corresponding ImRect::GetClosestPoint() for now.
Essentially revert dcaafffe0e.
2017-12-29 17:59:13 +01:00
omar
c4e6d622c1 Merge branch 'master' into navigation
# Conflicts:
#	imgui.cpp
#	imgui.h
2017-12-29 13:39:07 +01:00
omar
4fbdb50dca MenuBar: Fixed menu bar pushing a clipping rect outside of its allocated bound (usually unnoticeable). 2017-12-28 23:53:36 +01:00
omar
4ba2e85744 Demo: Tweak. Comments. Metrics: Added some Drag and Drop info. 2017-12-28 23:53:27 +01:00
omar
90ff4ae5d1 BeginPopupModal(): the conditional test for SetNextWindowPos() was polling the wrong window, which in practice made the test succeed all the time. 2017-12-28 23:52:47 +01:00
omar
e985baa35d Combo: When peeking into the popup window for alignment we check if the window was active, which is more correct. (no known issue in current codebase, but we'll need that change for later) 2017-12-28 23:52:42 +01:00
omar
06bea369c0 DragDrop: Added IsDragDropActive() helper which is useful for binding to decide how to handle mouse inputs. 2017-12-28 23:52:37 +01:00
omar
563d04fdb1 TreeNode: node with the ImGuiTreeNodeFlags_Leaf flag correctly disable highlight when DragDrop is active. (#143, #581) 2017-12-28 23:52:31 +01:00
omar
49eed6e2d1 Version 1.54 WIP 2017-12-28 15:17:35 +01:00
omar
436cad4bca Merge branch 'master' into navigation
# Conflicts:
#	imgui.h
2017-12-26 15:37:31 +01:00
omar
d9034bf2d8 ListBox() changed signature of ListBox() to match Combo(). Still not very happy about not using const char** anymore. (#931) 2017-12-26 15:36:55 +01:00
omar
e916310b2e Version 1.53 2017-12-25 17:41:41 +01:00
omar
ed2105d4a2 Merge branch 'master' into navigation 2017-12-25 16:45:27 +01:00
omar
3849bb4470 Moving window doesn't use accumulating MouseDelta so straying out of boundaries keeps moved window at the same spot. 2017-12-25 16:03:58 +01:00
omar
de5c304b49 Merge branch 'master' into navigation
# Conflicts:
#	imgui.cpp
2017-12-24 18:59:40 +01:00
omar
8d54b1b7af Misc comments, removed duplicated IM_ARRAYSIZE macro in imgui_demo.cpp (it is now declared in imgui.h) 2017-12-24 18:59:14 +01:00
omar
1b86e7343f Renamed the emblematic ShowTestWindow() function to ShowDemoWindow(). Kept redirection function (will obsolete). 2017-12-24 18:16:22 +01:00
omar
cead207535 Comments 2017-12-24 17:58:41 +01:00
omar
6c63c7a8b1 Various zealous warning fixes (thanks Clang). (Navigation branch) 2017-12-23 16:40:12 +01:00
omar
ffb4f6ca8c Merge branch 'master' into navigation 2017-12-23 16:27:48 +01:00
omar
9cda86d55a Internals: Added IM_NEW, IM_DELETE helper macros (#1517, #484, #504) 2017-12-23 16:24:33 +01:00
omar
983d8f5f8e Various zealous warning fixes (Clang). 2017-12-23 15:28:49 +01:00
omar
53b24ff79a Removed reliance on ImU64 type for the ImDrawList assert. (#1184) 2017-12-23 15:02:36 +01:00
omar
1f26652944 Various zealous warning fixes (thanks Clang). 2017-12-23 14:07:03 +01:00
omar
1c1e490316 Merge branch 'master' into navigation 2017-12-22 20:21:54 +01:00
omar
46dcd9aa50 Columns: Made PixelsToOffsetNorm() properly symetrical to OffsetNormToPixels() (#125) 2017-12-22 20:21:35 +01:00
omar
471bcf8b5e Columns: Fixed dragging when using a same of columns multiple times in the frame. (#125) 2017-12-22 20:21:02 +01:00
omar
e1a103b251 Drag and Drop: Disable tracking mouse button ownership when an external drag source is active, to make it easier to achieve drag and drop over multiple OS windows. (#143) 2017-12-22 20:20:52 +01:00
omar
8d21ee56d2 ImDrawList, Font: Fixed bug introduced in 531c11d5c7 (#1519) 2017-12-22 20:19:48 +01:00
omar
287380261c Merge branch 'master' into navigation
# Conflicts:
#	imgui.cpp
2017-12-21 19:55:21 +01:00
omar
c8c872c753 Internals: String functions uses size_t in their signature 2017-12-21 19:49:54 +01:00
omar
996dfb21cf ImDrawList: Added ImDrawListFlags for AA settings. ImDrawList doesn't directly depends on GImGui anymore. 2017-12-21 19:49:54 +01:00
omar
d139bd088d Begin: Moved modal darkening draw block 2017-12-21 19:49:54 +01:00
omar
14cb8177d0 ImDrawList: Removed 'bool anti_aliased = true' final parameter of ImDrawList::AddPolyline() and ImDrawList::AddConvexPolyFilled(). Anti-aliasing is controlled via the regular style.AntiAliased flags. 2017-12-21 19:01:53 +01:00
omar
531c11d5c7 ImDrawList: Small refactor toward removing dependency on GImGui + PushClipRectFullscreen now correctly uses data provided by imgui which can takes account of DisplaySize + Removed static variable in PathArcToFast() which caused linking issues to some. 2017-12-21 18:52:34 +01:00
omar
230f826ef5 ImDrawList: Comments 2017-12-21 18:48:09 +01:00
omar
4c2514dc29 Merge branch 'master' into navigation 2017-12-21 11:18:42 +01:00
omar
6193f46af2 Active Modal window always set the WantCaptureKeyboard flag (#744) 2017-12-21 11:18:30 +01:00
omar
b366dd9322 BeginPopup: Moved flags into individual BeginPopupXXX calls/implementations and outside of BeginPopupex(). Removed _NoResize flag which is extraneous with AlwaysAutoResize. 2017-12-20 17:40:58 +01:00
omar
55c0d2b9ab InputText: renamed ImGuiInputTextFlags_DisableUndo to ImGuiInputTextFlags_NoUndoRedo (#1506, #1508) 2017-12-20 16:25:03 +01:00
ibachar
abaf347deb Added a flag for text input to disable undo / redo 2017-12-17 15:27:56 +02:00
omar
b1d90b565d Columns: Fixed previous commit (wrong chunk commited) (#125) 2017-12-15 17:09:41 +01:00
omar
b9391d1692 Columns: Internal: Columns have their no set of flags so NoResize can be setup by internal code. (#125) 2017-12-15 17:06:47 +01:00
omar
6497f5dc1b Merge branch 'master' into navigation
# Conflicts:
#	imgui.h
2017-12-15 11:59:50 +01:00
omar
0c6e260f73 Drag and Drop: Added ImGuiDragDropFlags_SourceExtern to facilitate interfacing with WM_DROPFILES (#143) 2017-12-15 11:17:21 +01:00
omar
6effcf21d6 Drag and Drop: Source can also inhibit the preview on target, useful for extern sources that only exists for one frame. (#143) 2017-12-15 11:17:21 +01:00
omar
51433e26af Drag and Drop: Renamed to ImGuiDragDropFlags_SourceNoAutoTooltip to ImGuiDragDropFlags_SourceNoPreviewTooltip (#143) 2017-12-15 10:15:51 +01:00
omar
eefea0588a Using the ImGuiWindowFlags_NoScrollWithMouse flag on a child window forwards the mouse wheel event to the parent window, unless either ImGuiWindowFlags_NoInputs or ImGuiWindowFlags_NoScrollbar are also set. (#1380, #1502) 2017-12-14 18:42:41 +01:00
Branimir Karadžić
ac8e708c3e Fixed unused variable warning. 2017-12-14 18:14:43 +01:00
omar
45bca7851d Added ImGuiHoveredFlags_RootAndChildWindows helper for consistency with focused flags. (#1382) 2017-12-13 22:30:16 +01:00
omar
cc3192f347 Merge branch 'master' into navigation
# Conflicts:
#	imgui_internal.h
2017-12-13 22:09:08 +01:00
omar
f265e16b84 Revert "Scrollbar: Minor simplication of the code using InnerRect data." > Introduced sheering on the scrollbar rectangle because InnerRect isn't setup at this point.
This reverts commit 7ac1583411.
2017-12-13 22:07:18 +01:00
omar
ddbcda8c1b Columns: Column width data is no longer lost while dragging toward the right side. (#1499, #125) 2017-12-13 21:51:23 +01:00
omar
ba71e1c0e4 Columns: Minor stylistic fixes. (#125) 2017-12-13 21:48:56 +01:00
omar
f7c5f420e7 BeginChild() fix using negative sizes as window position because of erroneous clamping. It was hard to notice until we added asserts for it. (#1500) 2017-12-13 19:45:03 +01:00
omar
e8e84a6ad6 Columns: Added internal tracking of a few flag temporarily, to facilitate the work of third-parties who have columns patches. (#125) 2017-12-13 19:26:04 +01:00
omar
4ae5c7e227 Columns: Refactor: Moved ColumnsSet[] to window out of DC as they are persistent data for most + fix for pre C++11 compilers. (#125, #1499) 2017-12-13 19:21:21 +01:00
omar
b016215c80 Columns: Refactor: Not using statestorage lookup anymore. (#125, #1499) 2017-12-13 19:07:09 +01:00
omar
3a31a75e3b Columns: Refactor: Renamed all members. (#125, #1499) 2017-12-13 18:42:06 +01:00
omar
78320aa633 Columns: Refactor: Moved columns data into their own data structure. Minimum changes now to ease diffing. (#125, #1499) 2017-12-13 18:41:51 +01:00
omar
027ffd91ea IsWindowFocused(): oops, that was bound to happen with loosely typed enums (this is sort of why I made both values identical - no direct side effects). 2017-12-12 23:49:04 +01:00
omar
16fb58984f Merge branch 'master' into navigation 2017-12-12 23:41:48 +01:00
omar
90d0b8b58b Navigation: minor sync to reduce drifts between changes 2017-12-12 23:41:20 +01:00
omar
8b59ed0708 Drag and Drop: Exposed some internals. 2017-12-12 23:37:27 +01:00
omar
7c7a7baf76 Merged miscellaneous small stuff (from nav/dock branches). 2017-12-12 23:36:25 +01:00
omar
b174fcc9af Added IsAnyWindowFocused() (from Nav branch). 2017-12-12 23:35:04 +01:00
omar
fa9327ccf8 Merge branch 'master' into navigation
# Conflicts:
#	imgui.cpp
#	imgui.h
#	imgui_draw.cpp
#	imgui_internal.h
2017-12-12 20:44:12 +01:00
omar
d0a1be0de0 Merge branch 'drag_and_drop' 2017-12-12 20:39:52 +01:00
omar
ab049c6fc0 Drag and Drop: Fix merge for IMGUI_DISABLE_OBSOLETE_FUNCTIONS 2017-12-12 20:34:16 +01:00
omar
7faa5b16bb Tweak 2017-12-12 19:15:00 +01:00
omar
3ea5e67ba2 Merge branch 'master' into navigation
# Conflicts:
#	imgui.cpp
#	imgui_demo.cpp
2017-12-12 18:47:23 +01:00
omar
02e0a078f4 Begin: Tidying up code to make it more readable. 2017-12-12 18:46:42 +01:00
omar
28bbf1ade6 Fixed ParentWindow setup which broke Modal windows (fix c65124f415) 2017-12-12 18:45:57 +01:00
omar
d561a43a4d Drag and Drop: Drop target infer a fallback ID from the rectangle. Avoid Preview being accepted on drop frame when drop target has no ID. (#143) 2017-12-12 18:17:37 +01:00
omar
e98df91dc4 Drag and Drop: Added ImGuiCol_DragDropTarget (#143, #707) 2017-12-12 15:44:22 +01:00
omar
7ec934f439 Drag and Drop: Comments 2017-12-12 15:33:26 +01:00
omar
052b6021dd Merge branch 'master' into drag_and_drop
# Conflicts:
#	imgui.cpp
#	imgui.h
#	imgui_internal.h
2017-12-12 15:02:05 +01:00
omar
0a3db267c3 Merge branch 'master' into navigation
# Conflicts:
#	imgui.cpp
#	imgui.h
#	imgui_demo.cpp
#	imgui_internal.h
2017-12-12 14:58:53 +01:00
omar
6190ab0084 Renamed GetItemsLineHeightWithSpacing() to GetFrameHeightWithSpacing() 2017-12-12 14:14:58 +01:00
omar
c22657985a Added GetFrameHeight() function (used to be SmallSquareSize internally) 2017-12-12 14:12:49 +01:00
omar
ee7f1921e8 Internals: Added GetSmallSquareSize() 2017-12-12 14:08:58 +01:00
omar
08b72eb5c0 IsWindowFocused() refactor will flags. (#1382)
Marked IsRootWindowFocused() as obsolete in favor of using IsWindowFocused(ImGuiFocusedFlags_RootWindow).
Marked IsRootWindowOrAnyChildFocused() as obsolete in favor of using IsWindowFocused(ImGuiFocusedFlags_RootAndChildWindows).
2017-12-12 14:07:12 +01:00
omar
c65124f415 Internals: ParentWindow is now NULL for non-child windows and means what everyone expects. 2017-12-12 12:50:43 +01:00
omar
f42d7b89e2 Internals: Removed misleading GetWindowParent() function. + renaming to clear confusing. 2017-12-12 12:50:42 +01:00
omar
4a555d35f0 IsWindowHovered(): split ImGuiHoveredFlags_FlattenChild into separate ChildWindows and RootWindow flags. Allowing more combination and a better symetry with IsWindowFocused() flags. (#1382) 2017-12-12 12:50:42 +01:00
omar
f93945540f Renamed ImGuiTreeNodeFlags_AllowOverlapMode to ImGuiTreeNodeFlags_AllowItemOverlap. (#600, #1330) 2017-12-11 22:42:12 +01:00
omar
45f440bb7d Internals: Renamed ImGuiButtonFlags_FlattenChilds -> ImGuiButtonFlags_FlattenChildren, ImGuiButtonFlags_AllowOverlapMode -> ImGuiButtonFlags_AllowItemOverlap 2017-12-11 22:39:10 +01:00
omar
2b9d8ab91d Merge branch 'master' into drag_and_drop
# Conflicts:
#	imgui.cpp
#	imgui.h
2017-12-11 16:39:27 +01:00
omar
38bfdb357e Merge branch 'master' into navigation
# Conflicts:
#	imgui.cpp
#	imgui.h
2017-12-11 16:28:47 +01:00
omar
9fd15defe4 Added an implementation of SetItemDefaultFocus() in the master branch for combo patterns to use and be more forward-compatible. (#787) 2017-12-11 16:19:37 +01:00
omar
d1db229907 Merge branch 'master' into navigation
# Conflicts:
#	imgui_demo.cpp
2017-12-10 19:01:59 +01:00
omar
e3e0326ea9 Exposed BeginCombo() publicly. 2017-12-10 18:08:59 +01:00
omar
eab6333a0b SetNextWindowContentSize() adjust for client->window size, but the fate of borders isn't really clear for now (until now we always tried to make borders not affect layout, so if we want a 200x200 fully visible space with borders and zero window padding user need to include the borders) (#1490) 2017-12-10 17:36:30 +01:00
omar
7ac1583411 Scrollbar: Minor simplication of the code using InnerRect data. 2017-12-10 17:27:37 +01:00
omar
a9b01600ac Internals: window->InnerRect includes removal of borders so it'll be easier to use from other locations. 2017-12-10 17:24:10 +01:00
omar
b75acc21b0 Fix for border under title bar when WindowBorderSize == 0 and FrameBorderSize > 0 2017-12-10 16:48:18 +01:00
omar
f72b002da8 Removed SetNextWindowContentWidth(), prefer using SetNextWindowContentSize(). Kept redirection function (will obsolete). (#246, #519, #1444) 2017-12-10 16:05:47 +01:00
Branimir Karadžić
e23083a080 Fixed warning: logical ‘and’ of equal expressions 2017-12-10 12:15:29 +01:00
omar
0365c524a2 ColorPicker4: Fixed returning true when holding mouse button on the sat/value/alpha locations. (#1489) 2017-12-09 21:25:20 +01:00
omar
a8c7b1a2a2 ColorEdit4: Made IsItemActive() return true when picker popup is active. (#1489) 2017-12-09 21:17:27 +01:00
omar
871a5cecc1 Merge branch 'master' into navigation 2017-12-08 18:32:46 +01:00
omar
c9f0275e22 Combo: Removed ImGuiWindowFlags_ComboBox flag. Moved internal window flags. 2017-12-08 18:32:12 +01:00
omar
457011660e Mouse wheel scrolling doesn't change speed inside Combo box (uses to slow down from 5 to 3) but instead slow down on window that are smaller than the scroll speed. 2017-12-08 18:28:17 +01:00
omar
a263dce2f2 Combo: Cleanup. Removed unrequired uses of the _ComboBox flag (the test in EndChild() is from commit no 1!). We could remove ImGuiWindowFlags_ComboBox soonish. 2017-12-08 17:21:45 +01:00
omar
9ce51ad9f6 Fix bad merge 2017-12-08 15:11:35 +01:00
omar
a6f37287d8 Merge branch 'master' into navigation
# Conflicts:
#	imgui.cpp
2017-12-08 15:06:37 +01:00
omar
7ac5f11b29 Standardizing the casing/format of internal window names + Misc comments. 2017-12-08 15:04:06 +01:00
omar
befc58771c Combo: Recycling windows by using a stack number instead of a unique id, wasitng less windows. 2017-12-08 15:03:37 +01:00
omar
e998c7d3e3 Combo: Moved functions (untouched). 2017-12-08 15:03:32 +01:00
omar
a5e9392140 Combo: Added flags to BeginCombo() new api, removed explicit height, default to 8 instead of 7 items, allow popup height constraints via SetNextWindowSizeConstraints(), width expand if contents doesn't fit, popup reposition policy if it doesn't fit. 2017-12-08 15:03:26 +01:00
omar
d9d231dc6b Internals: Renamed CalcSizeFullWithConstraint() to CalcSizeAfterConstraint() which is more appropriate + added explicit parameter to CalcSizeAutoFit() so it can be used externally. 2017-12-08 15:02:17 +01:00
omar
74f42baf3e Fixed scrollbar issue, source size when explicit was read before applying custom size constraints (followup to cc2c023880 etc.) 2017-12-08 15:00:56 +01:00
omar
541dfd7901 Combo: Comments + fixed missing lower window padding. 2017-12-08 15:00:02 +01:00
omar
9872297a84 Internals: Renamed FindBestPopupWindowPos() to FindBestWindowPosForPopup() 2017-12-08 14:59:49 +01:00
omar
7bf85db6c4 Drag and drop: Added COL3F payload for color without alpha overwrite. Exposed standard color payload types in imgui.h (#143) 2017-12-08 12:48:53 +01:00
omar
b6b940c8ee Merge branch 'master' into navigation + removed extraneous g.NavDisableMouseHover test in IsItemHovered()
# Conflicts:
#	imgui.cpp
2017-12-08 09:35:23 +01:00
omar
e118239f69 IsItemHovered() comments (#1382) 2017-12-08 09:34:05 +01:00
omar
553b0fcf8f Merge branch 'master' into navigation
# Conflicts:
#	imgui.cpp
2017-12-07 21:20:16 +01:00
omar
ca0bb000ad Begin: Factored out a bit of code to CalcSizeContents() 2017-12-07 21:14:54 +01:00
omar
f658edc72a Begin: Remove unnecessary usage of window_is_new flag, as both fields are zero on window creation. 2017-12-07 21:14:49 +01:00
omar
45466a8cf9 Internals: BeginCombo() added dummy ImGuiComboFlags. 2017-12-07 21:14:41 +01:00
omar
97edd42fc0 Indent(), Unindent(): Allow passing negative values. 2017-12-07 21:14:25 +01:00
omar
7f2b9ea4c0 Begin: Minor refactor following fcf652f8ee7267055e331bf7a0133ed477816f27. Merging the if (Collapsed) block with the main one. 2017-12-07 21:14:13 +01:00
omar
8dcc1a8a20 Begin: Sizing fixes regarding uses SetNextWindowSize() on individual axises. 2017-12-07 21:14:00 +01:00
omar
e045eddd77 Minor tweaks. Using ImGuiAxis defines. 2017-12-07 21:13:23 +01:00
omar
92f7bd3605 Fixed 64-bit warnings. 2017-12-07 21:06:15 +01:00
omar
cc2c023880 Fixed scrollbar issue, followup to beda5fc5a0 and 2df8fa95df. 2017-12-07 17:04:53 +01:00
omar
e6215b6ca0 Merge branch 'master' into navigation + merge fix
# Conflicts:
#	imgui.cpp
2017-12-07 16:42:52 +01:00
omar
3c9f9a455e Internals: Cleanup FindBestPopupWindowPos() to be more digestible, since we are bounds to rework the logic there. No functional changes intended. FIXED TYPO. 2017-12-07 16:36:07 +01:00
omar
8959c64b33 Internals: Cleanup FindBestPopupWindowPos() to be more digestible, since we are bounds to rework the logic there. No functional changes intended 2017-12-07 13:29:14 +01:00
omar
20c7aab60c Exposed GetOverlayDrawList(). (~#545, ~#530) 2017-12-07 12:49:52 +01:00
omar
6deb865f78 Nav: Merge fix. 2017-12-06 17:48:28 +01:00
omar
2fc6a82665 Merge branch 'master' into navigation
# Conflicts:
#	imgui.cpp
#	imgui.h
2017-12-06 17:44:40 +01:00
omar
8f41508c52 Begin: Move the code that update the Appearing flag above the BeginDocked() branch. 2017-12-06 17:42:28 +01:00
omar
2fc9a2e6e7 Fixed nav branch merge issue. 2017-12-06 15:20:36 +01:00
omar
beda5fc5a0 Fixed scrollbar enable/disable calculation when size is modified programmatically. This is the generalization of the fix in 2df8fa95df. 2017-12-06 15:13:45 +01:00
omar
ecacaf7f2d Lower-right resize grip only appears when hovered. (#822) 2017-12-06 15:13:45 +01:00
omar
3b7e4eaf38 Comments about ImGuiWindowFlags_ResizeFromAnySide. Removed hovering color. May need its own color. (#822) 2017-12-06 15:13:45 +01:00
omar
531e559e49 Windows can be resized from their borders when ImGuiWindowFlags_ResizeFromAnySide is set. (#822) The interaction is currently unsatisfying because we can only reach a window from its inner rectangle (because of HoveredWindow filtering). 2017-12-06 15:13:45 +01:00
omar
e103fe8c1f Tweak four-corners resize grip code. Added ImRect::FixInverted() helper. (#822) 2017-12-06 15:13:45 +01:00
omar
90ae1c59c4 Added ImGuiWindowFlags_ResizeFromAnySide flag and code to resize from any of the 4 corners (only 2 corners enabled). (#822) 2017-12-06 15:13:45 +01:00
omar
729333293c Merge branch 'master' into navigation
# Conflicts:
#	imgui.cpp
#	imgui.h
2017-12-05 22:56:35 +01:00
omar
0f119865a6 Comments about ImGuiWindowFlags_ResizeFromAnySide. Removed hovering color. May need its own color. (#822) 2017-12-05 22:53:58 +01:00
omar
5686c72bbd Windows can be resized from their borders when ImGuiWindowFlags_ResizeFromAnySide is set. (#822) The interaction is currently unsatisfying because we can only reach a window from its inner rectangle (because of HoveredWindow filtering). 2017-12-05 22:47:20 +01:00
omar
b9dc0caee3 Tweak four-corners resize grip code. Added ImRect::FixInverted() helper. (#822) 2017-12-05 22:44:52 +01:00
omar
2ca4f9e862 Added ImGuiWindowFlags_ResizeFromAnySide flag and code to resize from any of the 4 corners (only 2 corners enabled). (#822) 2017-12-05 22:42:57 +01:00
omar
364251146b Merge branch 'master' into navigation
# Conflicts:
#	imgui.cpp
2017-12-05 16:15:05 +01:00
omar
77d1a4b636 Fixed a one frame glitch, when window claiming focus themselves on appear, the title bar wouldn't use the focused color on that frame. 2017-12-05 16:12:45 +01:00
omar
16d9fa30b2 Merge branch 'master' into drag_and_drop 2017-12-05 09:21:07 +01:00
omar
5f7cd7fb1c Internals: Splitter Behavior doesn't show a border. (#319) 2017-12-01 17:39:50 +01:00
omar
be6384eb2a Style: Tweaked default WindowRounding value from 9 to 7 (#707) 2017-12-01 17:39:31 +01:00
omar
6ea744d8f4 Drag and Drop: Added DragSource from color square. Added DragTarget on ColorEdit4 widget. (#143) 2017-11-30 16:54:39 +01:00
omar
81cbaef806 Merge branch 'master' into navigation 2017-11-29 23:49:17 +01:00
omar
b513fdce48 Scrolling: SetScrollFromPosY() tweak to match change in a0d53fee81084a547bf21f46e736ea89f79fffb5 with similar desirable jump/discontinuity at each limit to skip the (ItemSpacing>WindowPadding) difference (followup to 0e5b64ecd2, #150) 2017-11-29 23:48:32 +01:00
omar
c36e586cce Style, Scrolling: Fixed padding and scrolling asymetry where lower/right sides of a window wouldn't use WindowPadding properly + causing minor scrolling glitches. 2017-11-29 23:48:32 +01:00
omar
25c159fac8 Internals: Removed unnecessary duplicate scrolling code + added extra infos to Metrics window. 2017-11-29 21:10:59 +01:00
omar
52e475230f Settings: Internals: Renaming. 2017-11-28 23:16:09 +01:00
omar
2e1013a0c6 Settings: Internals: Simplifying code a bit. Creating Settings structure during first save. Windows where ImGuiWindowFlags_NoSavedSettings was late toggled will save settings correctly. (#1000) 2017-11-28 21:04:38 +01:00
omar
7ae71e4984 Settings: Internals: Added FindSettingsHandler() 2017-11-28 21:04:38 +01:00
omar
35eb5c5c99 Settings: Internals: Exposed FindWindowSettings(). Simplified some code. 2017-11-28 21:04:38 +01:00
omar
963259d128 Settings: Internals: Renamed ImGuiSettingsWindow to ImGuiWindowSettings. 2017-11-28 21:04:38 +01:00
omar
63712d5f5c Merge branch 'master' into drag_and_drop 2017-11-28 17:28:45 +01:00
omar
9191b17218 Merge branch 'master' into navigation 2017-11-28 17:28:08 +01:00
omar
4a43632163 Build fix 2017-11-28 17:27:54 +01:00
omar
1a8a7c9d17 Settings: Import old style .ini file 2017-11-28 16:23:46 +01:00
omar
e5ebe42207 Settings: Make ImGuiWindow settings always first in the list. 2017-11-28 10:49:43 +01:00
omar
f3ec608c19 Settings: Initializing ImGuiSettingsWindow so external users don't end up with uncleared data. Exposed MarkIniSettingsDirty() in imgui_internal.h 2017-11-28 10:49:43 +01:00
omar
7e2d0d734c Settings: basic refactor so that additional data structures can be loaded/saved. Parser/saver is still the minimum viable poor-man parsing. 2017-11-27 23:57:11 +01:00
omar
d552cabd15 Settings: Internal renaming of structure and fields names. 2017-11-27 23:57:10 +01:00
Emmanuel Benoît
77a310736d Horizontal mouse wheel support
This patch adds support for the horizontal mouse wheel in ImGui. It
affects windows that can be scrolled, as long as the Ctrl key is not
being pressed.

The scrolling speed has been set empirically so that it matches the
scrolling speed on the Firefox browser when the horizontal wheel is
used.

Internally, it adds a MouseHorizWheel to ImGuiIO, which is then used in
NewFrame to scroll the current window.

The SDL/GL2, SDL/GL3, GLFW/GL2 and GLFW/GL3 examples has been modified
to use it.
2017-11-27 20:59:05 +01:00
omar
ade09b9e3c Settings: Basic internal refactor to have functions for saving from/to memory (not exposed) 2017-11-27 19:02:40 +01:00
omar
532f564fd3 ImGuiTextBuffer: Renamed append() helper to appendf(), appendv() to appendfv(). Added reserve(). 2017-11-27 19:02:00 +01:00
omar
d9c5d72962 ImGuiStorage: Added BuildSortByKey() helper to rebuild storage from stratch. 2017-11-24 16:56:17 +01:00
omar
46e994de4e Nav: Do not clear last navigation id stored in a hidden child window. (#787) 2017-11-24 16:55:57 +01:00
omar
4e3c7f1557 Nav: Exposed NavInitWindow() in imgui_internal (#787) 2017-11-24 16:55:49 +01:00
omar
f5c47faee8 Merge branch 'master' into navigation
# Conflicts:
#	imgui.cpp
2017-11-24 16:55:31 +01:00
omar
6bd3b45b34 Sisyphus says: tweaked comments about not using old-style OpenGL examples (#1459, #1394 etc.) 2017-11-24 09:23:17 +01:00
stfx
6d3cfba834
Add Slider hover color just like Drag
I feel like there should be hover color options for each different control instead of the grouped frame color to make it usable for everyone. This also would not reduce performance as all controls already check for hover state as required by the ImGUI::IsHoveredItem() API.
2017-11-23 12:37:11 +01:00
omar
7763ab3fcc Menu bar: better software clipping to handle small windows, in particular child window don't have the minimum constraint added in e9a7e73bba so we need to render clipped menus better. 2017-11-22 15:58:20 +01:00
omar
b618629d99 Merge branch 'master' into navigation
# Conflicts:
#	imgui.cpp
2017-11-22 12:34:59 +01:00
omar
7d09a0ae99 Menu bar: better software clipping to handle small windows, in particular child window don't have the minimum constraint added in e9a7e73bba so we need to render clipped menus better. 2017-11-22 12:33:59 +01:00
omar
aafa6cece5 Tweak expression to be less weird (how did that ever happen?) 2017-11-22 11:26:16 +01:00
Giuseppe Barbieri
21b456e567
Update imgui.cpp 2017-11-22 11:19:52 +01:00
omar
68b26b4867 Merge branch 'master' into navigation
# Conflicts:
#	imgui.cpp
2017-11-22 11:04:00 +01:00
omar
176d8fbe74 Fixed unreferenced variable warnings. 2017-11-22 11:02:42 +01:00
omar
302757447a Internals: Added SplitterBehavior(). (#319) 2017-11-20 19:41:17 +01:00
omar
195abc3d17 Begin: Fix border size latch when rounding uses Child or Popup value. (#707) 2017-11-20 15:19:54 +01:00
omar
2543807e56 Merge branch 'master' into navigation
# Conflicts:
#	imgui.cpp
#	imgui_internal.h
2017-11-20 13:54:06 +01:00
omar
3f5b2a3fe3 Exposed ImDrawCornerFlags, replaced occurences of ~0 with an explicit ImDrawCornerFlags_All. Inversed BotLeft (prev 1<<3, now 1<<2) and BotRight (prev 1<<2, now 1<<3). 2017-11-20 13:53:16 +01:00
omar
7f447c8270 Color picker: Tweak vertex shading code, since we aren't shading between PrimReserve and PrimVert the code can be expressed more naturally. (#346) 2017-11-20 13:16:57 +01:00
omar
dc2768503f Fix for drag and drop branch. 2017-11-19 16:24:17 +01:00
omar
92212b17aa Merge branch 'master' into drag_and_drop 2017-11-19 16:23:37 +01:00
omar
9848a7023b Merge branch 'master' into navigation
# Conflicts:
#	imgui.cpp
#	imgui_demo.cpp
2017-11-19 16:21:21 +01:00
omar
abbf836fd0 Style, Begin: removed ImGuiWindowFlags_ShowBorders window flag. Borders are now fully set up in the ImGuiStyle structure (see e.g. style.FrameBorderSize, style.WindowBorderSize). Use ImGui::ShowStyleEditor() to look them up. (#707, fix #819, #1031, ref #1019, ref #447) 2017-11-19 15:56:51 +01:00
omar
c433bc971f Reorder fields for consistency. 2017-11-19 14:58:10 +01:00
omar
39137ccc3e Style: renamed ImGuiCol_ChildWindowBg to ImGuiCol_ChildBg. (#707) 2017-11-19 13:52:40 +01:00
omar
9a44d447cd NewFrame() now asserts if neither Render or EndFrame have been called. Exposed EndFrame(). Made it legal to call EndFrame() more than one. (#1423 etc.) 2017-11-19 12:06:45 +01:00
omar
538a704143 NewFrame(): using literal strings in the most-frequently firing IM_ASSERT expression to increase the odd of programmers seeing them (especially those who don't use a debugger). 2017-11-19 12:00:07 +01:00
omar
d211a0e338 Merge branch 'master' into navigation (with style breakable)
# Conflicts:
#	imgui.cpp
#	imgui_draw.cpp
2017-11-19 00:39:37 +01:00
omar
4022ada843 Merge branch 'master' into drag_and_drop 2017-11-19 00:36:32 +01:00
omar
8a7f03cbf9 Combo: Offset popup position by border size so that a double border isn't so visible. (#707) 2017-11-19 00:29:59 +01:00
omar
d7af1a218e Style: Added PopupRounding setting. (#1112) 2017-11-19 00:29:29 +01:00
omar
067605052d Fix IsItemHovered() returning true for non-title bar hidden items that are clipped due to window collapsing logic. Fix 27fd1b913b. (#823) 2017-11-19 00:29:29 +01:00
omar
6f7b1bf2e1 Internals: Renamed ImGuiWindow::Accessed to WriteAccessed. 2017-11-19 00:29:29 +01:00
omar
58345b11e1 Style: Removed ImGuiCol_ComboBg in favor of combo boxes using ImGuiCol_PopupBg for consistency. (#707) 2017-11-18 23:44:16 +01:00
omar
29e0078b66 Internals: Window minor internal renaming + added WindowRounding latch. 2017-11-18 19:06:11 +01:00
omar
bd4bc929ce Style: renamed style.ChildWindowRounding to style.ChildRounding, ImGuiStyleVar_ChildWindowRounding to ImGuiStyleVar_ChildRounding. 2017-11-18 18:28:21 +01:00
omar
da2be7bbdc Style: ScaleAllSizes() helper rounds down every values so they are aligned on integers. 2017-11-17 21:29:37 +01:00
omar
834fa52c8e Columns: Added ImGuiColumnsFlags_GrowParentContentsSize to internal API to restore old content sizes behavior. (#1444, #125) 2017-11-16 17:34:34 +01:00
omar
7746dd104c Merge branch 'master' into drag_and_drop 2017-11-16 13:28:22 +01:00
omar
44c590393c Merge branch 'master' into navigation 2017-11-16 13:28:10 +01:00
omar
29d962069d Internals: Updating condition/allow flags with a function. 2017-11-16 13:28:01 +01:00
omar
4ad414c8d4 Internals: Window: Store whether the windows has a close button (we need that info for window/tabs dropping preview calculation) 2017-11-16 13:23:50 +01:00
omar
7c4be0a000 Internals: Added BringWindowToFront(), BringWindowToBack() helpers. 2017-11-16 13:11:49 +01:00
omar
6817f3a3d9 Merge branch 'master' into navigation 2017-11-15 23:44:50 +01:00
omar
e9a7e73bba Windows with MenuBar have a larger minimum height to avoid artefacts (I fixed most of the vertical/horizontal artefacts, but the ones in rounded corners were too hard to fix). 2017-11-15 23:42:18 +01:00
omar
f36037b384 Menu: Fixed minor rendering issues on the right size with rounded window when resizing a window small. 2017-11-15 23:38:17 +01:00
omar
9b82d9fbef Scrollbar: Minor graphical fix for when scrollbar don't have enough visible space to display the full grab. 2017-11-15 23:14:23 +01:00
omar
f5bdf443c9 Minor comments, tweaks 2017-11-15 22:37:43 +01:00
omar
5ea6e80da1 Make it possible to use SetNextWindowPos() on a child window. Useful internally. 2017-11-15 22:23:33 +01:00
omar
44b761b308 Merge branch 'master' into drag_and_drop 2017-11-15 14:41:27 +01:00
omar
27fd1b913b Made it guaranteed by API that after calling Begin() the last Item represent the title bar. (#823) 2017-11-15 14:35:45 +01:00
omar
ae060b1d67 Merge branch 'master' into drag_and_drop 2017-11-15 10:24:54 +01:00
omar
64031852de Merge branch 'master' into navigation 2017-11-14 23:17:58 +01:00
omar
64e79035d5 Scrollbar flicker fix for menus/popups (fixes 4d00dd8326 and 2df8fa95df). Hopefully right this time. 2017-11-14 23:17:28 +01:00
omar
6001d9c7a4 Columns: Clipping columns borders on Y axis on CPU because some GPU drivers appears to be unhappy with triangle spanning large regions (not sure why tbh). (#125)
Demo: Columns: Adding a billion of extra lines and using clipper.
2017-11-14 22:41:54 +01:00
omar
ffad688fc8 Drag and Drop: Added payload->IsPreview() to user can render their custom preview while handling overlapping drop targets. (#143) 2017-11-14 22:11:43 +01:00
omar
852ece3a0e Fixed build (3e06450d27 not meant for master branch, but ok) 2017-11-13 16:04:03 +01:00
omar
2275cb8b83 Merge branch 'master' into navigation
# Conflicts:
#	imgui.cpp
2017-11-13 15:19:43 +01:00
omar
3e06450d27 Internals: Added ArrowButton() helper. 2017-11-13 15:18:31 +01:00
omar
7908cce25f Drag and Drop: Added internal BeginDragDropTargetCustom() convenient to avoid submitting dummy ItemAdd. (#143) 2017-11-13 15:17:41 +01:00
omar
4d00dd8326 Fixed scrollbar flickering on/off when uncollapsing a window (fixes 2df8fa95df) 2017-11-13 15:15:48 +01:00
omar
30bf40195b io.OptNoCursorBlink -> io.OptCursorBlink (#1427) 2017-11-12 16:06:44 +01:00
omar
669498ff26 Added io.OptNoCursorBlink option to disable cursor blinking. (#1427). Renamed io.OSXBehaviors to io.OptMacOSXBehaviors. Should affect users as the compile-time default is usually enough. (#473, #650) 2017-11-12 16:03:09 +01:00
Branimir Karadžić
9daac64ff8 Clean g.WindowsById storage on shutdown. 2017-11-11 10:01:50 +01:00
omar
06075f20ba Merge branch 'master' into navigation 2017-11-10 11:42:08 +01:00
omar
ba09de3a39 Begin: Fixed appending into a child window with a second Begin() from a different window stack querying the wrong window for the window->Collapsed test. 2017-11-10 11:38:01 +01:00
omar
8451855a30 ButtonBehavior: Fixed ImGuiButtonFlags_AllowOverlapMode to avoid temporarily activating widgets on click before they have been correctly double-hovered. (#319, #600) 2017-11-09 20:20:02 +01:00
omar
4b94738c7e Drag and Drop: Drop target rectangle goes out of clipping range (#143) 2017-11-09 20:18:17 +01:00
omar
b1653cd361 Drag and Drop: Allow NULL payload (since type only can be useful). (#143) 2017-11-09 20:18:05 +01:00
omar
a297cbafdb Merge branch 'master' into navigation 2017-11-08 23:17:14 +01:00
omar
2df8fa95df Fixed vertical scrollbar flickering/appearing, typically when manually resizing and using a pattern of filling available height (e.g. full sized BeginChild). THIS IS A GREAT FIX, this glitch was nasty and annoying (and yet somehow nobody reported it?). Hopefully haven't broken anything else... 2017-11-08 23:17:08 +01:00
omar
a4cc3d4637 Minor tweaks/comments. Note that the reordering the one subtraction caused subtle havoc before the patch in 9ac8820ee2. 2017-11-08 22:36:31 +01:00
omar
9ac8820ee2 Fixed non-pixel aligned bounding box of window resize grip, / which triumphally led to any re-arrangement of operations inside the resize grip code outputting non-exact size_target values which led to unstable window position because clamping code uses size in a subtraction, etc etc. Lovely how a whole system can be made to act weird with a single bad input. 2017-11-08 22:32:22 +01:00
omar
b6504b8eee Drag and drop: Handle overlapping drag target priorities given their surface, which appears to make most sense for drag and drop operations. 2017-11-08 15:47:52 +01:00
omar
2ab27be3de Child window with MenuBar use regular WindowPadding.y so layout look consistent in child or in a regular window. 2017-11-07 22:23:20 +01:00
omar
41862b8c0e ButtonBehavior: Fixed ImGuiButtonFlags_NoHoldingActiveID from incorrectly setting ActiveIdClickOffset, which probably have no known effect, but it is more correct this way. (#1418) 2017-11-07 16:41:58 +01:00
omar
1870738880 LowerBound() minor tweaks 2017-11-07 14:05:48 +01:00
omar
571b08f315 Internal: FindWindowByName() faster and doesn't touch every windows 2017-11-07 13:59:55 +01:00
omar
2c7ba21417 Fixed auto-resize allocating too much space for scrollbar when SizeContents is bigger than maximum window size (fixes c0547d358d) (#1417) 2017-11-07 11:37:38 +01:00
omar
0d4c320f88 Merge branch 'master' into navigation
# Conflicts:
#	imgui.cpp
#	imgui.h
#	imgui_draw.cpp
2017-11-06 23:58:28 +01:00
omar
f0b4097c54 Begin: Simplified code and fixed a bug where appending into a window a second time (from a remote window) would incorrectly overwrite RootWindow with the current window in the stack. Our docking code uses this pattern. 2017-11-06 23:55:40 +01:00
omar
de1e7dc088 Drag and Drop: Moved internal fields out of public sight. (#143) 2017-11-06 20:04:10 +01:00
omar
8b725c94cb Drag and Drop: Rework internal to allow overlapping targets (#143) 2017-11-06 19:39:23 +01:00
omar
16a5da9521 RenderTriangle() minor tweak to align Left/Right and Up/Down arrow extents visually 2017-11-03 20:20:25 +01:00
omar
553bdeedf7 Drag and Drop: Made it legal to not call SetDragDropPayload() between BeginDragDropSource() and EndDragDropSource(). (#143) 2017-11-02 18:30:46 +01:00
omar
3461a2f296 Merge branch 'master' into drag_and_drop 2017-11-02 18:06:04 +01:00
omar
982ce50b37 IsWindowHovered() returns true when moving window (#1382, #1404) 2017-11-02 16:44:32 +01:00
omar
ff4d4ca651 IsWindowHovered(): Added ImGuiHoveredFlags_FlattenChilds flag. Made IsRootWindowOrAnyChildHovered() obsolete in favor of IsWindowHovered( ImGuiHoveredFlags_FlattenChilds) (#1382, #1404) 2017-11-02 16:44:24 +01:00
omar
803ac3a5c6 IsWindowHovered() Fix behavior when an item is active to use the same logic as IsItemHovered() (#1382, #1404) 2017-11-02 16:23:03 +01:00
omar
66f42324ad Drag and Drop: Added ImGuiDragDropFlags_SourceNoHoldToOpenOthers flag. 2017-11-01 17:25:42 +01:00
omar
63f6f2dd13 Merge branch 'master' into navigation
# Conflicts:
#	imgui.cpp
#	imgui.h
2017-11-01 15:09:23 +01:00
omar
6ab20ff9bf Minor tweaks to the user guide. 2017-11-01 12:33:58 +01:00
omar
e55caf0b95
Merge pull request #1402 from elect86/patch-1
Minor fix typo
2017-10-30 09:51:49 +01:00
omar
7f06d385a1 Added assertions and comments for incorrect use/understanding of IsWindowFocused() etc. functions 2017-10-30 09:50:54 +01:00
Giuseppe Barbieri
9e3f9fc2dd
Update imgui.cpp 2017-10-30 09:35:42 +01:00
omar
5956fff7e2 Drag and Drop: ImGuiButtonFlags_PressedOnDragDropHold focuses the target window. 2017-10-30 00:10:05 +01:00
omar
a810619555 Drag and Drop: Added support for drag and drop hold-long-to-open for CollapsingHeader() and TreeNode(). Open only! 2017-10-30 00:03:04 +01:00
omar
1d7d8f8574 Merge branch 'master' into drag_and_drop 2017-10-29 23:49:24 +01:00
omar
b13d281356 Maintaining ActiveIdTimer and HoveredIdTimer (the later is useful for drag and drop, both will be of course for creators of custom widgets) 2017-10-29 23:49:01 +01:00
omar
d46772b429 Comments 2017-10-29 23:14:17 +01:00
omar
0e775807b4 Drag and Drop: Added a mechanism to allow widgets with no identifiers (such as Text/Image) to be used with BeginDragDropSource() given the explicit ImGuiDragDropFlags_SourceAllowNullID flag. 2017-10-29 23:10:44 +01:00
omar
b5f714e9f9 Drag and Drop: made BeginDragDropSource() clear the IsItemHovered() by default, added a flag to keep it. 2017-10-29 21:31:49 +01:00
omar
c5536e49ef Drag and drop API experiment 2017-10-29 21:15:02 +01:00
omar
17dd8e7c30 Merge branch 'master' into navigation 2017-10-27 23:01:54 +02:00
omar
b9ebb34a04 Nav: ColorButton: Fixed a case of not using local 'hovered' flag directly, messes with some of my drag and drop work, and I can't find/understand the reason why this was left as is (there _was_ a reason at the time but it appears to be obsolete now?) 2017-10-27 20:54:48 +02:00
omar
f962ca0b01 ColorTooltip: Resize ColorButton to align better with text, now that ColorButton provides a text baseline (0260fdd1c6) 2017-10-27 20:36:51 +02:00
omar
edafbcd630 Merge branch 'master' into navigation
# Conflicts:
#	imgui.cpp
#	imgui.h
2017-10-27 20:04:51 +02:00
omar
c503a50cff Styles: Moved Classic colors code to imgui_draw.cpp. Sneakily added a StyleColorsDark() function. 2017-10-27 20:01:30 +02:00
omar
77df1ba9e0 Version 1.53 WIP 2017-10-27 19:54:56 +02:00
omar
b422f35872 IO: Tracking extra mouse dragging data which is convenient for implementating various manual drag and drop patterns. 2017-10-27 18:21:30 +02:00
omar
c0b366b316 Merge branch 'master' into navigation
# Conflicts:
#	imgui.h
2017-10-27 17:27:53 +02:00
omar
9f200d10d5 Version 1.52 2017-10-27 17:10:41 +02:00
omar
cc78e9a213 Merge branch 'master' into navigation 2017-10-27 16:46:03 +02:00
omar
267ea506de Begin: Fix for unused "Debug" (fix for 3b83cd24f5 ) 2017-10-27 16:45:56 +02:00
omar
5afee1c6f3 Merge branch 'master' into navigation
# Conflicts:
#	imgui_internal.h
2017-10-27 16:42:06 +02:00
omar
3b83cd24f5 Begin: Moved some code inside of the big if (first_begin_of_the_frame) scope 2017-10-27 16:39:55 +02:00
omar
3656f2c769 NewFrame: Allow MovedWindow setting the ImGuiWindowFlags_NoInputs after moving has started in order to be able to detect windows below it, which is useful for e.g. docking mechanisms. 2017-10-27 16:39:23 +02:00
omar
a6edd10ee6 NewFrame: Removed unnecessary call to FindHoveredWindow() and simplified code (went through this multiple times, hopefully haven't broken anything) 2017-10-27 16:38:14 +02:00
omar
6243252d5a Internal: BeginTooltipEx() in imgui_internal.h 2017-10-27 16:21:12 +02:00
omar
f10a1d7b9e Merge branch 'master' into navigation
# Conflicts:
#	imgui.cpp
#	imgui_internal.h
2017-10-27 15:53:59 +02:00
omar
d42f6bb6cc Merged a bit of code from Navigation branch to ease further merging (InnerRect is currently not required in the Master branch) 2017-10-27 15:52:45 +02:00
omar
c432fcf2bb Minor renaming. 2017-10-27 12:01:52 +02:00
omar
549f9e3f03 Merge branch 'master' into navigation
# Conflicts:
#	imgui_internal.h
2017-10-25 16:37:10 +02:00
omar
daef33e268 Comments about mouse setup and clearing HoveredWindow when mouse down isn't owned by imgui (will affect some future hovered test and drag'n drop patterns) (#143, #1382, #1392) 2017-10-25 11:01:41 +02:00
omar
4faf99eff5 Added most basic form of Disabled flag to disable interactions (but visuals aren't altered), in imgui_internals.h, undocumented/unsupported (#211, #1012) 2017-10-25 09:28:54 +02:00
omar
fc25881207 Merge branch 'master' into navigation 2017-10-24 21:13:24 +02:00
omar
efcd53a0c3 Removed direct dependency on sprintf() in imgui.cpp (#1038)
(NB: imgui_demo stills uses it)
2017-10-24 20:57:41 +02:00
omar
1f3372b7f1 ImFormatString, ImFormatStringV(): clarifying specs so that passing a NULL buffer should return the desired length. (#1038) 2017-10-24 20:48:29 +02:00
omar
8fd5620277 Renamed IMGUI_DISABLE_WIN32_DEFAULT_CLIPBOARD_FUNCS/IMGUI_DISABLE_WIN32_DEFAULT_IME_FUNCS to IMGUI_DISABLE_WIN32_DEFAULT_CLIPBOARD_FUNCTIONS/IMGUI_DISABLE_WIN32_DEFAULT_IME_FUNCTIONS for consistency. (ref #238, #520, #738) 2017-10-24 20:23:42 +02:00
omar
7d2cd0e6ff Added IMGUI_DISABLE_FORMAT_STRING_FUNCTIONS support in imconfig.h (#1038) 2017-10-24 20:19:32 +02:00
Patrick Doane
70cb427469 Add missing CloseClipboard call 2017-10-24 20:12:42 +02:00
omar
d513546325 Merge branch 'master' into navigation 2017-10-24 15:49:01 +02:00
omar
5b062c4c29 Fixed typos 2017-10-24 15:26:04 +02:00
omar
0260fdd1c6 ColorButton: As a small convenience, provide a text baseline. 2017-10-24 14:38:32 +02:00
omar
e9ff7162bc ColorButton: Fixed rendering color button with a checkerboard if the transparency comes from the global style.Alpha and not from the actual source color. 2017-10-24 10:43:41 +02:00
omar
97bf2131e2 Fixed calling SetNextTreeNodeOpen() on a collapsed window leaking to next frame. 2017-10-23 14:37:47 +02:00
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
025d4f0c97 Merge branch 'master' into navigation
# Conflicts:
#	imgui.cpp
2017-10-23 12:34:46 +02:00
omar
e7922b3fa0 Factorized some code (+ declared as static function without namespace, a pattern with the Nav branch has started to use) 2017-10-23 12:34:15 +02:00
omar
2ef2c104a1 Begin: Minor tweaks 2017-10-23 11:36:43 +02:00
omar
be12f8c55d Nav: Fixed handling of ImGuiNavInput_KeyMenu so it doesn't set g.NavWindowingTarget at all, reducing size effects + handling menu layer toggle on Alt Release (#787) 2017-10-23 11:26:52 +02:00
omar
6f0aa766e1 Nav: Added internal ImGuiNavReadMode_Released test for key releases. 2017-10-23 11:26:30 +02:00
omar
d769e2515a Merge branch 'master' into navigation 2017-10-23 10:05:36 +02:00
omar
1bc1751670 MenuItem(): Tweaks to mimic exact spacing of BeginMenu() when inside a menu bar, which is a little misleading imho but may be useful. (#1387) 2017-10-22 10:56:37 +02:00
omar
b177f2432d MenuItem(): Tweak to not draw over all horizontal space when in horizontal layout mode. (#1387) 2017-10-22 10:36:22 +02:00
omar
5fa81f2a26 Nav: Added ImGuiNavInput_KeyMenu aside from ImGuiNavInput_PadMenu as it is one differenciator between pad and keyboard that's very annoying with the keyboard.
Remove the move/resize behavior that appears than holding the button for a while. (#787)
2017-10-20 22:12:10 +02:00
omar
1c5b3fb1d2 Merge branch 'master' into navigation 2017-10-20 21:17:57 +02:00
omar
f7259e60ee Comments 2017-10-20 21:17:51 +02:00
omar
23b9060468 Nav: Honoring ImGuiItemFlags_NoNav which is used by color picker (#787) 2017-10-20 20:35:39 +02:00
omar
e4bb9102f9 Merge branch 'master' into navigation 2017-10-20 20:32:17 +02:00
omar
6ab737a4bb Popups: Fixed right-click to close popups not handling modal windows properly. (~#439) 2017-10-20 20:31:01 +02:00
omar
aca23fd3f0 Popups: similarly to previous commit, we fix reopening a popup within a popup stack from truncating the whole stack. This is done by properly refocusing the lower level popup. (~#439) 2017-10-20 19:25:34 +02:00
omar
59a89774d7 Popups: fixed CloseInactivePopups() so that right-clicking to close one level of popups in a popups stack won't close the whole stack. This is done by properly refocusing the lower level popup. Fixes 87ae40843c (~#439) 2017-10-20 19:24:12 +02:00
omar
43df7eb5ea Added OpenPopupOnItemClick(); helper which mimic BeginPopupContextItem() but doesn't do the open.
Made the color popups uses this standard function so they handle reopening a context menu.
2017-10-20 18:56:31 +02:00
omar
0ea66dc260 Fixed bad merge from Master 2017-10-20 18:16:53 +02:00
omar
1172ff62e1 Merge branch 'master' into navigation
# Conflicts:
#	imgui.cpp
#	imgui.h
#	imgui_demo.cpp
#	imgui_internal.h
2017-10-20 18:10:07 +02:00
omar
3cc10d25a9 BeginPopupContextItem(), BeginPopupContextWindow(): Using newly introduced IsItemHovered() flags to allow reopening another context menu (over same or not same item) with right-click. (#439) (+1 squashed commits) 2017-10-20 18:02:52 +02:00
omar
695ea45fca IsWindowHovered(): Changed default behavior to now return false is a widget from another window is active + Added support for ImGuiHoveredFlags_AllowWhenBlockedByActiveItem. (relate to drag'n drop idoms: #143) 2017-10-20 17:59:48 +02:00
omar
564ff2dfd3 IsItemHovered(), IsWindowHovered(): added flags to enable various and more specific behavior. Will enable improvements for popups/context menus and drag'n drop. (relate ~#439, #1013, #143, #925)
The legacy confusing IsItemRectHovered(), IsWindowRectHovered() can be completely removed now.
Changed IsWindowHovered() behavior with default parameter: it now return false is the window is blocked by a popup.
Demo: Added tests for those two functions.
2017-10-20 17:52:22 +02:00
omar
d29a6a5a5a Moved IMGUI_DISABLE_OBSOLETE_FUNCTIONS block lower in the imgui.h file so obsolete functions can use flags. Also sane to quarantine them outside of the respectable area. 2017-10-20 17:29:52 +02:00
omar
e6f06627e9 Made the ImGuiWindowFlags_NoMove flag inherited from parent to child, so in a setup with RootWindow (no flag) -> Child (NoMove flag) -> SubChild (no flag) user won't be able to move the root window by clicking on SubChild. (#1381) 2017-10-20 16:13:13 +02:00
omar
3b485cda51 Fixed a bug allowing to move a _NoMove window from a child that doesn't have the flag. (#1381)
broken by e56eba44fe (#1337)
2017-10-20 16:09:24 +02:00
omar
87ae40843c Popups: popups can be closed with a right-click anywhere, without altering focus under the popup.(~#439) 2017-10-20 13:26:39 +02:00
omar
853018dd4d Popups: Fixed a bug introduced in 1a35766356 which made the BeginPopupContextXXX functions create popups without border. (nb: all that border mess is going away in styling clean up) 2017-10-20 13:21:42 +02:00
omar
5f7299e15a Refactor EndFrame() code that process focusing window with left mouse button. This commit should be no-op. 2017-10-20 13:07:57 +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
22977ffedb Documentation: Extra comments + tweaks to make usage of long-line more bearable. 2017-10-19 19:30:46 +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
bf778ebb7e Checkbox: Using checkmark. MenuItem: Tweaked checkmark, thicker. 2017-10-18 13:06:49 +02:00
omar
d96b6ecf88 Merge branch 'master' into navigation
# Conflicts:
#	imgui_demo.cpp
2017-10-17 16:20:35 +02:00
omar
03b76bf05b Begin: Marked 5 parameters version of Begin() as obsolete. Now waiting for a riot to happen! 2017-10-17 16:19:21 +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
1a35766356 BeginPopupContextItem() now supports a NULL string identifier and uses the last item ID if available. For interactive items (that have an ID) this works! For non interactive items we assert. 2017-10-16 23:37:12 +02:00
omar
c76f014292 Fix IsItemHovered() issue on child by temporarily reverting 344d48be31. This is not the ideal solution. (Fix #1370) 2017-10-16 16:41:09 +02:00
omar
af565ea828 Nav: InputTextMultiline: Fixed navigation/selection. Disabled selecting all when activating a multi-line text editor. (#787) 2017-10-16 02:41:28 +02:00
omar
7ea52ac1e4 Nav: InputTextMultiline: Fixed navigation/selection. Disabled selecting all when activating a multi-line text editor. (#787) 2017-10-16 02:30:59 +02:00
omar
82a27fd3aa Nav: InputText: Fixed using Up/Down history callback feature when Nav is enabled (#787) 2017-10-16 02:06:42 +02:00
omar
b70c2fa887 Nav: Internals: Moved some internal code to namespace, comments 2017-10-16 00:46:23 +02:00
omar
ae1866c424 Nav: NavProcessItem() updates current NavLayer. Basically we're hearing toward rebuilidng nav info from an id. (#787). 2017-10-16 00:38:42 +02:00
omar
97851f7376 Nav: NavProcessItem() computes window-relative rectangle using own Window rather than NavWindow. Not sure what it may mean for child-flattened-nav (disabled). (#787) 2017-10-16 00:36:31 +02:00
omar
7d14262202 Nav: SetFocusID() update NavWindow and NavRectRel just as we get them. Needed by upcoming commit, committing separately as I'm curious if it has any side-effect. (#787) 2017-10-16 00:33:30 +02:00
omar
83416fa5da Merge branch 'master' into navigation 2017-10-15 21:28:17 +02:00
omar
d761825cfb Nav: Renaming a field + Comments. 2017-10-15 17:57:15 +02:00
omar
ce7b04e8b9 Removed apparently unncessary code in InputFloatN() and InputInt(). 2017-10-13 23:59:17 +02:00
omar
db5f1b79cd Nav: ButtonBehavior() keep _displaying_ NavId item as howered when refocusing or moving window, which is consistent with IsItemHovered() and reduce noise/flicker (#787) 2017-10-13 19:18:59 +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
53780a4fcc Nav: Shallow tweaks. 2017-10-13 16:23:44 +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
8b095e483b Internals: Moved SetNavID() and renamed casing to be consistent with stuff exposed in imgui_internal.h 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
48498b337d Internals: SetActiveID window cannot be NULL 2017-10-13 13:07:07 +02:00
omar
4548bcb5c9 Nav: commiting shallow bits to reduce noise from working copy/upcoming commit. 2017-10-12 02:09:13 +02:00
omar
17519c313a Nav: Extract part of NavUpdate() into a saner NavUpdateWindowingTarget() (#787) 2017-10-11 20:47:41 +02:00
omar
b05b31e690 Nav: Made NavWindow always refresh from NavId so we can lazily retrieve the window for user functions that don't have it. This is not required by current commit but I'd rather test it earlier. Idea: eventually if we switch to 64-bit identifiers we could reserve e.g. 20 bits to store a simplified window identifier so we can always retrieve a window from an id. (#787) 2017-10-11 20:37:45 +02:00
omar
f0d437dd9c Nav: SetActiveId() uses SetActiveIDNoNav() to avoid duplicating logic. (#787) 2017-10-11 20:29:53 +02:00
omar
2047c58efb Nav: Extract part of NavUpdate() into a saner NavScrollToBringItemIntoView() (#787) 2017-10-11 20:28:16 +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
3833f1f7a2 Merge branch 'master' into navigation 2017-10-11 15:38:33 +02:00
omar
43b4a81b3e Rnamed AlignFirstTextHeightToWidgets() to AlignTextToFramePadding(). Kept inline redirection function (will obsolete). 2017-10-11 15:36:57 +02:00
omar
c6e370a77a TreeNode: Added ImGuiTreeNodeFlags_FramePadding flag 2017-10-11 15:16:11 +02:00
omar
69dd895358 Nav: Renaming NavInitDefaultRequest -> NavInitRequest 2017-10-06 15:54:29 -07:00
omar
4d83078885 Nav: Moving code next to its peers 2017-10-06 15:50:32 -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
d91b093be6 Nav: Minor tweaks in NavProcessItem() used by ItemAdd() 2017-10-06 14:56:25 -07:00
omar
c3105919ba Nav: Minor tweaks also toward removing processing from ItemAdd() 2017-10-06 14:51:15 -07:00
omar
d16309ca77 Internal: ItemAdd() minor shallow tweaks 2017-10-06 14:40:53 -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
acb6f12d2c Removed extraneous calls to GetCurrentWindowRead() when we already have a ImGuiContext. Internal RenderXXX functions also don't need to write into the Accessed field at all. 2017-10-06 11:48:07 -07:00
omar
6e1199c603 Merge branch 'master' into navigation 2017-10-06 11:24:58 -07:00
omar
f451785c9e Nav: Shuffled code in ItemAdd() so that NavProcessItem() may have access to LastItemId (will be required by tabbing) 2017-10-06 10:17:01 -07:00
omar
e12cfa9dfd Nav: Minor midying up and comments, 2017-10-06 09:44:50 -07:00
omar
40df7a5155 Nav: Removed possibly redundant test prior to calling NavProcessItem() from ItemAdd() 2017-10-06 09:40:13 -07:00
omar
a77dd02e8a Nav: Moving code next to its peers 2017-10-05 22:06:46 -07:00
omar
f5bd4663dd Nav: Moving the big chunk of code from ItemAdd() to NavProcessItem() 2017-10-05 22:02:13 -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
d851775c80 ColorButton: Reduced bordering artefact that would be particularly visible with opaque Col_FrameBg and FrameRounding enabled. 2017-10-05 17:55:27 -07:00
omar
726dcf0dd2 TextUnformatted(): minor tweak 2017-10-05 11:03:38 -07:00
omar
a0d724b450 Made AlignFirstTextHeightToWidgets() saner and faster (still disliking its name very much!) 2017-10-05 11:02:23 -07:00
omar
a3d0755181 Merge branch 'master' into navigation 2017-10-05 10:31:37 -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
a8788e51a7 SetKeyboardFocusHere() added assert to prevent passing values smaller than -1 as we may have to outlaw them (I think nobody was using that) 2017-10-05 09:53:07 -07:00
omar
63cd2bf9b1 Removed obsolete comment. 2017-10-05 09:40:06 -07:00
omar
3ddcdcf6e7 Merge branch 'master' into navigation 2017-10-04 18:46:09 -07:00
omar
67ac7da30f Styles: Added ImGuiStyle::ScaleAllSizes(float) helper to make it easier to have application transition to e.g. High DPI with a matching style. 2017-10-04 18:13:57 -07:00
omar
a56b71e866 Nav: Added code to render thin highlight type. (#787) 2017-10-04 10:44:27 -07:00
matiTechno
b36a043bbf typo 2017-10-04 11:09:21 +02:00
omar
6ea90af6b7 Nav: Highlight clipped within host window then extruded out. (#787) 2017-10-03 13:53:17 -07:00
omar
cb4e6c8212 Nav: Selectable(): activating selectable also sets NavId + removed the MouseDelta test (added in 43ee5d73e9, #323) as I don't think it is needed. (#787) 2017-10-03 13:44:48 -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
7f58bb03c1 Changed the internal name formatting of child windows to use slashes as separator, more readable. 2017-10-02 16:07:34 -07:00
omar
cbc9730798 Metrics: Draw window bounding boxes when hovering Pos/Size. List all draw layers, trimming empty commands like Render() does. 2017-10-02 16:07:33 -07:00
omar
491edfd8d8 Nav: Fixed a crash introduced yesterday. 2017-09-30 23:46:23 +02:00
omar
0046c618b0 Nav: Allow to collapse tree nodes with NavLeft and open them with NavRight (#787, #1079) 2017-09-30 00:47:07 +02:00
omar
ecd72cc0c7 Nav: Disabled the final axial check when considering candidates in most situations except menubars.
It's definitively undesirable inside Menu as we want to catch nav request failures reliably.
I think it may be considered as an option if we find this desirable i some circumstances. Right now ideally I'd remove it totally but with current scoring setup, without it we can't easily reach the Window Close button. (#787)
2017-09-30 00:26:55 +02: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
f4e4c38705 BeginMenu(): fixed logic to distinguish vertical menu from one layed out in a menu bar. Makes MenuItem() in a regular window behave more consistently, and this will be also needed by upcoming menu-navigation changes in the nav branch. (#126, #787) 2017-09-29 23:37:14 +02:00
omar
9912f7eef8 BeginMenu(): fixed logic to distinguish vertical menu from one layed out in a menu bar. Makes MenuItem() in a regular window behave more consistently, and this will be also needed by upcoming menu-navigation changes in the nav branch. (#126, #787) 2017-09-29 22:19:53 +02:00
omar
cf3b21179b Nav: Comments 2017-09-29 20:03:02 +02:00
omar
5a9ebeca9e Nav: Fix typo from 9712a81f85 2017-09-29 19:49:20 +02:00
omar
bfaa426f7f Nav: Minor tidying up (adding local variables to be a little more sane). 2017-09-29 19:48:16 +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
54eb4c485e Nav: Marked misleading/broken code that will never execute. 2017-09-29 19:15:24 +02:00
omar
e3c89aeb10 Nav: Fixed menuitems/selectable on menu layer (layer 1) from storing themselves in wrong layer of LastNavIds when hovered.causing inconsistencies and bugs when hovering menu with mouse then pressing ALT to return to layer 0).
NB: this is not a new bug introduced by the previous commit (which is related to nav layers), bug has been there for a while. (#787)
2017-09-29 18:24:43 +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
fba9353c60 BeginMenu: Shuffling braces around to clarify flow 2017-09-29 16:29:00 +02:00
omar
cf308f4039 Nav: Fixed SetItemDefaultFocus from stealing default focus when we are initializing default focus for a menu bar layer (#787) 2017-09-29 00:20:51 +02:00
omar
f4398226cc Nav: Support for fallback horizontal scrolling with PadLeft/PadRight (nb: fallback scrolling is only used to navigate windows that have no interactive items). (#787) 2017-09-29 00:01:26 +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
1f7f54e196 Removed extraneous test. 2017-09-28 22:00:17 +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
878fa96896 Nav: Re-arranged ItemAdd() to maximize early out (#787) 2017-09-28 19:57:24 +02:00
omar
dd0855de5c ButtonBehavior: Tidying up. 2017-09-28 19:47:45 +02:00
omar
4b4e455c40 Nav: Internal nenaming 2017-09-28 19:41:30 +02:00
omar
e0a2a832cd Nav: Changed internal flag to NoNavDefaultFocus to be false by allow, and more consistent (#787) 2017-09-28 19:18:41 +02:00
omar
af38749ea1 Nav: Fixed ButtonBehavior mistakenly setting active id when the Activate button is held and we have a new NavId, which affected browsing some popups (#787) 2017-09-28 19:07:52 +02:00
omar
ca4db8c905 Merge branch 'master' into navigation
# Conflicts:
#	imgui.cpp
#	imgui_internal.h
2017-09-28 17:40:25 +02:00
omar
e8f7c83138 Begin: Shallow tweak to minimize diff with nav branch 2017-09-28 17:37:55 +02:00
omar
926c1cf9a4 Merged from Navigation branch: ImGuiItemFlags_SelectableDontClosePopup flag 2017-09-28 17:02:28 +02:00
omar
f99348711b Added VerticalSeparator() entry point in imgui_internal. Seperator() in an horizontal layout context still does that. 2017-09-28 16:41:01 +02:00
omar
9142002121 Separator(): Tweak Logging so that the separator text is aligned according to tree padding. 2017-09-28 16:40:28 +02:00
omar
d394c7ad0b Merge branch 'master' into navigation
# Conflicts:
#	imgui.cpp
#	imgui_internal.h
2017-09-28 15:45:35 +02:00
omar
0106dcbd02 Fixed IsItemHovered() - part of the processing has to be done in ItemAdd() because the widget may alter clipping rectangle temporarily. 2017-09-28 15:43:26 +02:00
omar
2a8eb618dc Nav: Fixed NavDown to open menu from a menu bar (#787) 2017-09-28 00:36:58 +02:00
omar
35f65e05ed Merge branch 'master' into navigation 2017-09-28 00:33:29 +02:00
omar
fafe65a8fc Refactor to move the responsability of SetHovered() to ItemHoverable() - previously IsHovered(). Simpler and the parallel to ItemAdd is clearer with the new name. 2017-09-28 00:21:47 +02:00
omar
2159629e9e Removed another msileading difference between the hovered functions (IsWindowContentHoverable() uses the root window already). Sorry for the commit spam! (making small commit to easily be able to Bisect those in case I make a mistake) 2017-09-28 00:05:35 +02:00
omar
eca74d55c7 IsItemHovered(), IsHovered(): Shallow tweaks, eventually removed all the braces. 2017-09-28 00:05:18 +02:00
omar
2b7d4c713e Internals: Moved IsWindowContentHoverable() in the file 2017-09-27 23:31:03 +02:00
omar
c5a79deb38 IsItemHovered(), IsHovered(): Shallow tweaks to make them more symetrical. Removed one set of braces. 2017-09-27 23:10:46 +02:00
omar
7bcb1d3816 Internals: ButtonBehavior(), IsHovered() moved the responsability of flatten_child higher level to ButtonBehavior() - not super sure about the elegance of this 2017-09-27 22:59:40 +02:00
omar
79ef64430c Nav: Fixed merge cc26db8ec7 2017-09-27 17:27:21 +02:00
omar
cc26db8ec7 Merge branch 'master' into navigation 2017-09-27 17:25:50 +02:00
omar
0adcddac39 IsItemHovered(), ItemAdd(): finishing cleaning up, moved the code to IsItemHovered() so ItemAdd() is more lightweight and the two IsXXXHovered functions are now very similar, making their differences less confusing. 2017-09-27 17:21:50 +02:00
omar
19e22baa06 ItemAdd(): more re-ordering of tests to match IsHovered() + comments 2017-09-27 17:06:07 +02:00
omar
344d48be31 IsItemHovered(), ItemAdd(): Fixed seemingly unnecessary comparaison of root windows, makes IsItemHovered() more consistent with internal IsHovered().
Original test was added in 6e99688fa7 should not have been using RootWindow in the first place.
The difference between public-facing and internal versions would only be noticeable with overlapped child windows, which doesn't really happen anyway
2017-09-27 16:49:25 +02:00
omar
c075786d8b ItemAdd(): re-ordering the tests, submission should now be faster. 2017-09-27 16:29:46 +02:00
omar
99c7622a1b ItemAdd(), not performing computation for IsItemRectHovered() which does them itself, allowing us in the next commit to optimize ItemAdd() and make its logic more consistent with IsHovered(). 2017-09-27 16:20:53 +02:00
omar
e87ad328e4 Moved implementation of Hovered-related functions next to each others + comments, before I attempt to work on them. No functional change here. 2017-09-27 16:07:47 +02:00
omar
869732c456 Nav: Removed unnecessary combo code (that kept the combo arrow highlighted after reverting to mouse controls). (#787) 2017-09-27 12:34:18 +02:00
omar
a2b2e56e8e Merge branch 'master' into navigation 2017-09-27 12:31:12 +02:00
omar
e56eba44fe Fixed not being able to move a window by clicking on one of its child window (#1337, #635), broken by 313d388bba 2017-09-27 12:25:40 +02:00
omar
8374a454da Removed extraneous ImGui:: prefixes. Declared ColorEditOptionsPopup in imgui_internals.h. Tweaked internal signatures. 2017-09-27 11:39:13 +02:00
omar
bbd6d5d5b5 Combo: Cleaned up, removed unnecessary code (looks like this part went untouched for a long time!). 2017-09-27 00:20:09 +02:00
omar
8fd4beddb8 Merge branch 'master' into navigation 2017-09-26 20:28:40 +02:00
omar
9e1ad7295f ImFont: Renamed (supposedly internal) fields (e.g. XAdvance to AdvanceX). Custom text renderers might be affected if they didn't use the GetCharAdvance() helper function. 2017-09-26 20:05:16 +02:00
omar
10bb9524eb ImFont: Renamed ImFont::Glyph to ImFontGlyph (for consistency and so ImFontAtlas types can use it without ordering half of the file). Left a redirection type. 2017-09-26 19:54:30 +02:00
omar
f1a20ec66d Merge branch 'master' into navigation 2017-09-26 16:54:37 +02:00
omar
be03882a15 Separator(): output vertical separator when used in horizontal layout mode, so it works in menu bars. 2017-09-26 15:43:48 +02:00
omar
c7a606ab7e Horizontal layout does the minimum job to be usable internally - not exposed (#97) 2017-09-26 15:42:55 +02:00
omar
728deff56c Comments, debug code (commented), todo list 2017-09-26 15:33:57 +02:00
omar
82748df71a WantCaptureMouse: Tweaked logic so WantCaptureMouse can stay false when e.g. hovering over void while an InputText() is active. (#621) 2017-09-26 01:12:09 +02:00
omar
69d0d33451 Exposed PushMultiItemsWidths() to imgui_internal.h 2017-09-25 22:45:10 +02:00
omar
24f21bd4d4 Merge pull request #1113 from Urmeli0815/ImGuiSelectableFlags_MenuItem
MenuItem: only activate on Release, not on Click (nb: and not on ClickRelease to allow opening menu and selecting something with a single click. Windows seems to behave the same, allowing to click and hold to e.g. Open then move cursor, release on Save and save gets activated)
2017-09-25 22:13:38 +02:00
omar
7e8069dd23 Merge branch 'master' into navigation 2017-09-25 22:08:38 +02:00
omar
c0547d358d Begin: Fixed auto-fit calculation code that predict the presence of ascrollbar so it works in the case size constraints are used. I actually don't need this fix now, but earlier experiment with BeginCombo() required this fix. 2017-09-25 22:04:39 +02:00
omar
4b2781fe87 Begin: Moving some code into a CalcSizeAutoFit() function. 2017-09-25 21:57:42 +02:00
omar
0d56140b4a BeginCombo(): rework internals a little to make it easier to provide custom combo-like elements relying in BeginCombo().
BeginPopupEx() doesn't enforce AlwaysAutoResize flag anymore.
2017-09-25 21:45:34 +02:00
omar
4b82759598 SetNextWindowPos: added a ImVec2 pivot parameter for positioning a given a center, bottom-right position, etc. As a generalization of SetNextWindowPosCenter() which is now obsolete. This will be useful for combo-like popups as well.
Demo: Simple-overlay window uses the SetWindowPos pivot to select a corner to position itself at.
2017-09-25 18:25:43 +02:00
omar
0a55573288 Begin(): Minor tidying up of flow 2017-09-25 15:48:52 +02:00
omar
9f34925b2a Window: Tweaked ApplySizeFullWithConstraint() -> CalcSizeFullWithConstraint() so it can be used without side-effect 2017-09-25 13:23:25 +02:00
omar
0a5fb24f10 Popups: Exposing a little more of popups internals in imgui_internals.h 2017-09-25 12:52:06 +02:00
omar
b9c185402e Nav: minor tidying up NavUpdate() to use a local variables, easier to test replacing g.NavWindow with g NavMoveResultWindow for navigation accross flattened child windows. 2017-09-20 23:58:56 +02:00
omar
113b2467cd Minor bits. Reduce usage of GImGui multiple times in same function. 2017-09-20 23:02:06 +02:00
omar
479e532f18 ColorEdit: fixed weird ternary pattern that makes some compiler warning (fair) 2017-09-18 21:41:49 +02:00
omar
f24b5f71ca Merge branch 'master' into navigation 2017-09-18 15:35:47 +02:00
omar
79ce9b74d5 BeginTooltipEx() internal tweaks 2017-09-18 15:35:00 +02:00
omar
44e8d94aba Merge branch 'master' into navigation 2017-09-18 15:32:31 +02:00
omar
105f3b14e4 Merge branch 'master' into styles 2017-09-18 15:11:51 +02:00
omar
9693fd5351 PushStyleVar/PopStyleVar: internal tweaks 2017-09-18 15:07:22 +02:00
omar
7c9e38f60a Style: Moving code in a function to make incoming diff easier to parse. 2017-09-18 15:06:54 +02:00
omar
709653c330 Merge branch 'master' into styles 2017-09-18 15:03:25 +02:00
omar
6c91a1ef7f Minor comments 2017-09-17 23:35:39 +02:00
omar
052999a6ab More consistently uses "Dear ImGui" 2017-09-15 01:31:41 +02:00
omar
54d30d758f Implicit "Debug" window uses a "Debug##Default" identifier to allow the user creating such window with custom flags 2017-09-12 13:16:27 +02:00
omar
62d7fa4324 Merge branch 'master' into navigation
# Conflicts:
#	imgui.cpp
#	imgui_internal.h
2017-09-06 20:33:39 +02:00
omar
f63c03c464 Internals: moved ButtonRepeat and AllowKeyboardFocus bools/stacks to a generic ItemFlags stack. Merged from Navigation branch. 2017-09-06 20:28:36 +02:00
omar
51fcef0c21 BeginCombo() tweaks, merged from Navigation branch. 2017-09-06 19:31:50 +02:00
omar
5c4fda0fbc Merge branch 'master' into navigation
# Conflicts:
#	imgui.cpp
#	imgui_internal.h
2017-09-06 19:17:51 +02:00
omar
2169bf6895 Fixed WantTextInput from being true when an activated Drag or Slider was previously turned into an InputText(). (#1317) 2017-09-06 17:25:36 +02:00
omar
790605e359 Minor comments + renaming internal fields 2017-09-06 17:20:54 +02:00
Václav Patejdl
e1a7aa41cb Improved ColorPicker hue wheel color interpolation 2017-09-05 16:31:54 +02:00
omar
2600b28f5d Begin(): fixed calling Begin() more than once per frame setting window_just_activated_by_user which in turn would set Appearing to true for that frame. 2017-09-04 13:29:57 +02:00
omar
6400f2900a Begin(): renamed locals. 2017-09-04 13:26:46 +02:00
omar
a9c6a0f6ec Begin(): Removed unnecessary code (at the time of 1.18 commit e9e0e36f98, CursorPos was used to compute SizeContentsFit and this was necessary) 2017-09-04 13:24:45 +02:00
omar
89cae37b49 Begin(): Tidying up some code, should be a no-op. 2017-09-04 13:05:20 +02:00
omar
8fbe8709f9 TODO, minor tweak 2017-09-04 13:03:04 +02:00
omar
e8dbf1c795 Combo: Internally split into BeginCombo(), EndCombo(), toward a more flexible combo api. 2017-09-01 22:10:13 +02:00
omar
5658675e9d Combo: Removed unnecessary ClearActiveId() call (from era where active combo stored an id, now we just use popup functionality) 2017-09-01 21:58:58 +02:00
omar
804ee78731 Added IsWindowAppearing(). 2017-09-01 21:55:59 +02:00
Branimir Karadžić
670d40642f Fixed C4267 conversion from size_t to int. 2017-09-01 14:42:49 +08:00
omar
6a1ba317c7 Demo: Minor coding style tweaks so bgfx copy needs less patching. 2017-08-29 19:05:56 +08:00
omar
97a40e74fb Nav: Fixed bad merge of 6def01be5d so the bug fixed in #840 wasn't fully fixed in Nav branch. 2017-08-29 18:45:58 +08:00
omar
96d2942373 InputText: Merged bits from Navigation branch (inc. g.ActiveIdIsJustActivated is only set on the toggle). 2017-08-29 18:40:14 +08:00
omar
9a0171b803 Merge branch 'master' into navigation
# Conflicts:
#	imgui.cpp
2017-08-29 18:29:44 +08:00
omar
35e4fa7b85 Merged from Navigation branch (DragBehavior) 2017-08-29 18:21:36 +08:00
omar
6cca4025ee Merge from Navigation branch: 6aa8019763 2017-08-29 17:56:53 +08:00
omar
ddf41b0398 Merged from Navigation branch. TAB/Alt-TAB processing now deactivate if holding Ctrl. 2017-08-29 17:27:19 +08:00
omar
550dc09998 Merged from Navigation branch (misc) 2017-08-29 17:12:18 +08:00
omar
aef041f948 Merged from Navigation branch 2017-08-29 17:09:56 +08:00
omar
c9298c2657 Merged from Navigation branch:
f71cdd13b7  Internal tidying up, moved code to CalcNextScrollFromScrollTargetAndClamp() so it can be reused by upcoming nav code.
c816e6c742 Fixed SetScrollX() handling of center ratio (which actually wasn't exposed publicly). (#323, #246)
2017-08-29 17:09:44 +08:00
omar
287a4b6b38 Merged from Navigation branch: 5cac4926c8 fix title bar color of window under a modal window. 2017-08-29 16:52:37 +08:00
omar
a9e1d9aab9 Merge branch 'master' into navigation
# Conflicts:
#	imgui.cpp
#	imgui.h
#	imgui_internal.h
2017-08-29 16:21:46 +08:00
omar
358e7a194e Added GetKeyPressedAmount() (from Nav branch) to be able to measure fast repeat rate accurately. Added internal CalcTypematicPressedRepeatAmount() function. 2017-08-29 16:13:17 +08:00
omar
1f1e63f705 Merge various minor things (supposedly harmless) from Navigation branch into Master to reduce differences. Some code in NewFrame() has been moved around. (#787) 2017-08-29 16:06:52 +08:00
omar
ee42fae468 Merge various minor things (supposedly harmless) from Navigation branch into Master to reduce differences. (#787) 2017-08-29 16:05:12 +08:00
omar
6752cba4bc Removed duplicate comments 2017-08-29 15:39:11 +08:00
omar
2ee1b70652 Merge branch 'master' into navigation
# Conflicts:
#	imgui_internal.h
2017-08-29 15:36:36 +08:00
omar
f8eef49575 ProgressBar() fixed rendering when straddling rounded area. (#1296) 2017-08-29 15:23:07 +08:00
omar
7a9ea281be ImSwap() helper. 2017-08-28 19:27:12 +08:00
omar
1f51e8f39d Internals: Renamed some ImGuiCorner enums. 2017-08-28 14:11:11 +08:00
omar
7a7327adde ParseFormatPrecision() returns -1 for scientific noation 'e'/'E', RoundScalar() doesn't alter those. 2017-08-28 13:19:36 +08:00
omar
807322c9a5 Merge branch 'master' into navigation
# Conflicts:
#	imgui.cpp
2017-08-26 18:43:10 +08:00
omar
b295e185ff Updated copyright date for 2017, updated Gallery link 2017-08-26 16:42:40 +08:00
omar
419b22a487 Internals: Split some code out of NewFrame() into an Initialize() function. 2017-08-26 16:35:39 +08:00
omar
5938f1ba61 Added IsMousePosValid() helper. 2017-08-26 15:18:06 +08:00
omar
a02210a455 Fixed compilation with IMGUI_DISABLE_OBSOLETE_FUNCTIONS defined 2017-08-26 00:31:44 +08:00
omar
92a6faca6f IO: io.MousePos needs to be set to ImVec2(-FLT_MAX,-FLT_MAX) when mouse is unavailable/missing. Previously ImVec2(-1,-1) was enough but we'll now accept negative mouse coordinates. 2017-08-25 16:43:25 +08:00
omar
37f3a718c6 Marked all fmt + va_list functions with format attribute so GCC/Clang can warn about them. Not ignoring -Wsuggest-attribute=format anymore for GCC/Clang. 2017-08-25 16:10:14 +08:00
omar
40f608ce9b Version 1.52 WIP 2017-08-25 15:12:12 +08:00
omar
55a6209931 Version 1.51 2017-08-25 00:29:59 +08:00
omar
e6ed2f9939 Nav: Tooltip do not appear in navigation focus list. (#1294, #787) 2017-08-25 00:06:57 +08:00
omar
d213c0eb7e Style: Tweaked default border (undo half-way from original c1e1e015c4) (#707) 2017-08-24 17:30:10 +08:00
omar
b0fc30bd19 Merge branch 'master' into navigation 2017-08-22 20:49:02 +08:00
omar
92efa00bc9 Minor miscellaneous merges from Navigation branch to reduce divergence a little bit 2017-08-22 20:44:39 +08:00
omar
6ed75d3046 Merge branch 'master' into navigation
# Conflicts:
#	imgui.cpp
#	imgui.h
2017-08-22 20:27:39 +08:00
omar
eb2bbf6f29 Renamed IsItemHoveredRect() to IsItemRectHovered(). Renamed IsMouseHoveringWindow() to IsWindowRectHovered() - follow up to previous commit 6be7d4904e merged from Nav. 2017-08-22 20:25:27 +08:00
omar
52b39af0a0 Style: Added obsolete redirects for ImGuiCol_Columns*** fields. (ref 648f75b245) 2017-08-22 20:23:46 +08:00
omar
6be7d4904e Merge part of 88c1966629 from Nav branch. Renamed IsMouseHoveringAnyWindow() -> IsAnyWindowHovered(), IsMouseHoveringWindow() -> IsWindowHoveredRect() for consistency. Kept inline rediection function. 2017-08-22 20:10:02 +08:00
omar
141339e4b7 (internals) Renamed FocusedWindow to NavWindow to match terminology of navigation branch 2017-08-22 19:51:12 +08:00
ocornut
2ad2190d47 Merge 20a0fde012 Tidying up default clipboard handler for non Windows-OS (from Nav branch) 2017-08-22 19:47:52 +08:00
omar
f3ab5e6252 Fixed InputText() bug with ImGuiInputTextFlags_EnterReturnsTrue (in nav branch only) (#787). Thanks @Grouflon 2017-08-22 19:43:49 +08:00
omar
bea06117bb Nav: Fix navigation inside child windows. Removed GetChildID() and storin/g the info within the window. (#1291) 2017-08-22 19:26:21 +08:00
ocornut
50b3a14d0a Merge 2545d75c3b from Nav - Tidying up, removed two unnecessary window flags from being exposed in imgui.h 2017-08-22 18:26:27 +08:00
omar
d5b0d51274 Minor miscellaneous merges from Navigation branch to reduce divergence a little bit 2017-08-22 18:13:10 +08:00
omar
9670fe9ca7 Merge branch 'master' into navigation
# Conflicts:
#	imgui.cpp
#	imgui_internal.h
2017-08-22 17:51:20 +08:00
omar
6ee317d26d ImRect::Clip() -> ClipWith() to clarify meaning, going to undo the change in Nav branch. 2017-08-22 17:46:50 +08:00
omar
6c82af2b96 Navigation branch fix (we changed Clip) 2017-08-22 17:44:49 +08:00
omar
543dc2817f Fixed an assert when calling CloseCurrentPopup() twice in a row. 2017-08-21 22:54:20 +08:00
omar
53e73182ff Merge branch 'master' into navigation
# Conflicts:
#	imgui_internal.h
2017-08-21 00:04:45 +08:00
omar
530baee1a7 Removed tabs that slipped through the cracks 2017-08-21 00:03:37 +08:00
omar
067127f113 Columns: Caching columns clipping rectangles (#125) 2017-08-20 23:17:59 +08:00
omar
adeaf1cd72 Columns: Moved PushColumnClipRect() to imgui_internal.h 2017-08-20 23:09:43 +08:00
omar
54bdd00df7 Columns: Fix for explicit content width and scrollbar. (#519, #125) 2017-08-20 21:32:18 +08:00
omar
83e8d10fab Columns: Columns set resize based on the presence of vertical scrollbar. Not 100% sure about that but it looks like we've fixed enough bugs that this may not cause troubles anymore. (#125, #913, #893, #1138) 2017-08-20 21:08:07 +08:00
omar
1ebd7ec049 Demo: Columns: Added Horizontal Scrolling demo. Tweaked another Columns demo. (#519, #125, #913) 2017-08-20 20:58:24 +08:00
omar
7ff1c149b5 Columns: Fixed another form of shearing made visible by the PreserveWidth option. The code was initially added in c46d5634d4 to fix because we've fixed in e42aaede42eb6d8a47cf104f3afd6057b13a61ee. (#913, #125) 2017-08-20 20:58:24 +08:00
omar
1c83b073c6 Columns: A set of column (and most importantly the right-most column) do not register its content to the parent, not affecting the window contents size. (#519, #125, #913) 2017-08-20 20:58:23 +08:00
omar
7f0063f858 Columns: Added ImGuiColumnsFlags_NoResize flag (internal). (#913, #125) 2017-08-20 19:32:50 +08:00
omar
e70d49ba1f Columns: Fixed one form of shearing during resizing columns with PreserveWidth enabled (there's another issue still). (#913, #125) 2017-08-20 19:32:50 +08:00
omar
9307631c90 Columns: Removed unnecessary/misleading dummy ItemSize(). Was fixed already before, and fixed again in this branch by 3bf2af23e6. (#913, #125). End() calls EndColumns() directly. 2017-08-20 19:32:50 +08:00
omar
a511b00226 Columns: Fixed offset rounding leading to SetColumnOffset() being destructive when ImGuiColumnsFlags_NoPreserveWidths flag is not set. (#913, #125) 2017-08-20 19:32:50 +08:00
omar
3bf2af23e6 Columns: Fixed EndColumns() not repositioning the cursor. (#913) 2017-08-20 18:44:54 +08:00
omar
19a42cb2fd Columns: Moved BeginColumns/EndColumns/flags from #913 to imgui_internals.h + minor shallow tweaks. Removed demo code temporarily. (#125) 2017-08-20 18:44:48 +08:00
omar
bc78535bbf Merge branch 'master' of https://github.com/ggtucker/imgui into ggtucker-master
# Conflicts:
#	imgui.cpp
#	imgui.h
2017-08-20 18:22:34 +08:00
omar
b4eeb4aa8d Renamed GetStyleColName() to GetStyleColorName() for consistency. Extra comments in Api Breaking Changes section. 2017-08-20 17:53:09 +08:00
omar
af2db53780 Added GetStyleColorVec4() 2017-08-20 17:50:25 +08:00
omar
cf84650ee8 GCC warnings fixes 2017-08-20 16:39:43 +08:00
omar
fd394e1e95 Scrollbar: Comments. Fixed potential div-by-zero error which I can repro now, so added an assert to notify us if it's actually ever useful or not. 2017-08-20 16:39:11 +08:00
omar
91d841dd5f Added PushStyleColor(ImGuiCol idx, ImU32 col) overload. (Which _might_ cause an "ambiguous call" compilation error if you are using ImColor() with implicit cast. Cast to ImU32 or ImVec4 explicily to fix.) 2017-08-20 15:28:12 +08:00
omar
bf0d9c123e Merge branch 'master' into navigation 2017-08-18 00:25:12 +08:00
omar
24a78767d2 Merge branch 'master' into styles
# Conflicts:
#	TODO.txt
2017-08-17 17:24:33 +08:00
omar
68bf5ecbc1 Marked the weird IMGUI_ONCE_UPON_A_FRAME helper macro as obsolete. prefer using the more explicit ImGuiOnceUponAFrame. Removed the broken __LINE__ from IMGUI_ONCE_UPON_A_FRAME 2017-08-16 17:51:44 +08:00
omar
a85a14370b OpenPopupEx() internal tweaks to receive an ImGuiID, BeginPopupContextXXX shortening unnecessarily long identifier. 2017-08-16 15:47:10 +08:00
omar
a9915681eb PushID()/PopID() to not need to mark parent window as Accessed (needlessly waking up the root "Debug" window) (#747) 2017-08-16 14:37:54 +08:00
omar
5ea1865fdb (api breaking) changed parameter order for BeginPopupContextWindow(), note that most uses relied on default parameters completely. 2017-08-16 14:24:41 +08:00
omar
d2259f65e5 Undo part of 32dbe836d0 to keep the same name for both overloads (#891, #799) 2017-08-16 13:42:41 +08:00
omar
f98376d02b Merge branch 'is-popup-open' of https://github.com/mkeeter/imgui into mkeeter-is-popup-open
# Conflicts:
#	imgui.cpp
2017-08-16 13:19:15 +08:00
omar
a83f7083ed BeginPopupEx() uses ImGuiID internally 2017-08-16 13:06:14 +08:00
omar
1e162dfc74 PushStyleVar/PopStyleVar: internal tweaks 2017-08-15 19:19:00 +08:00
omar
18f217e631 Style: Moved position of ImGuiCol_TitleBgCollapsed 2017-08-15 19:06:02 +08:00
omar
5429bd892e ColorEdit4: Added "Copy as..." option in context menu (#346) 2017-08-15 18:30:52 +08:00
omar
0f935248e3 Combo, Inputint, InputFloat, ColorEdit4 all use the small size for little square 2017-08-15 17:46:11 +08:00
omar
032c222d57 Merge branch 'master' into styles 2017-08-15 10:52:38 +08:00
omar
9bf5028fd3 Merge branch 'master' into navigation 2017-08-15 00:50:59 +08:00
omar
a6d69f04c0 PlotHistogram: bars are drawn based on the position of zero (#828) 2017-08-14 17:20:05 +08:00
omar
3d6e037c23 Comments (#1034) 2017-08-14 16:51:14 +08:00
omar
bd3dfc0eba Moved TODO list to TODO.txt 2017-08-14 16:51:14 +08:00
omar
c26b29b254 Style: Moving code in a function to make incoming diff easier to parse. 2017-08-14 15:14:46 +08:00
omar
2b7fe73a08 Window size can be loaded from .ini data even if ImGuiWindowFlags_NoResize flag is set (#1048, #1056) 2017-08-14 13:27:19 +08:00
omar
c1e1e015c4 Style: Tweaked default border (which is off by default) to be less noticeable (#707, #1019) 2017-08-14 13:07:55 +08:00
omar
648f75b245 Style: renamed ImGuiCol_Columns_*** to ImGuiCol_Separator_*** (BREAKING), Separator() uses this color as well. (#707, #1019) 2017-08-14 13:04:32 +08:00
omar
6a4064e5f2 PathArcToFast: Minor renaming for clarification. Comments. 2017-08-14 12:25:35 +08:00
omar
8c61a4eb4c Fonts: Adding references to the fact that .OTF fonts are supported (but haven't renamed the entry points) 2017-08-14 11:29:54 +08:00
LuK1337
8352d43a0c Fix broken ImGuiColorEditFlags_NoAlpha flag check
* Fixes warning:
  imgui.cpp:9295:98: warning: enum constant in boolean context [-Wint-in-bool-context]
2017-08-11 22:52:40 +02:00
omar
908b025c3c Fixed (unlikely) Ini saving crash if the ImGuiWindowFlags_NoSavedSettings gets removed from a window after its creation (#1000) + minor FAQ tweaks 2017-08-12 01:23:39 +08:00
omar
08265bfbd9 RenderArrow(): fix warning. re-orderer lines to match enum order. 2017-08-11 14:44:53 +08:00
omar
e3fae56089 Merge branch 'master' into navigation
# Conflicts:
#	imgui.cpp
2017-08-11 14:30:17 +08:00
omar
d7cad903aa Documentation tweaks 2017-08-11 14:29:27 +08:00
omar
73f9c9d80c Merge branch 'master' into navigation
# Conflicts:
#	imgui.cpp
#	imgui_demo.cpp
2017-08-11 13:44:25 +08:00
omar
7e452ec737 Renamed ImGuiSetCond_XXX type and enums to ImGuiCond_XXX, kept old enums under #ifdef IMGUI_DISABLE_OBSOLETE_FUNCTIONS 2017-08-11 13:36:28 +08:00
omar
53d1b1e929 ColorPicker: Fixes for when ImGuiColorEditFlags_NoOptions flag is set: always read a default picker type + forward flag to sub ColorEdit widgets. (#346) 2017-08-10 10:25:50 +08:00
omar
fed18d3203 Removed old ValueColor() helpers. (#346) 2017-08-09 23:04:26 +08:00
omar
fc5ab0cb8d RenderCheckMark() tidying up 2017-08-09 22:56:01 +08:00
omar
4fd148f4f9 Added ImFontAtlas::GlyphRangesBuilder helper + doc 2017-08-09 22:42:03 +08:00
omar
43e2abbee3 Comments, FAQ entry (#586, #1105) 2017-08-09 20:27:59 +08:00
omar
55b99d753c Minor string typo 2017-08-08 23:12:23 +08:00
omar
30d1e5712a Merge branch 'master' into navigation
# Conflicts:
#	imgui.cpp
#	imgui.h
#	imgui_internal.h
2017-08-08 17:30:32 +08:00
omar
a78ef7a369 Comments 2017-08-08 16:07:17 +08:00
omar
942cb0e1f2 Added SetColorEditOptions(). ColorPicker4: context menu to select picker type and alpha bar. Reorganized flags (again!). (#346) 2017-08-08 15:54:20 +08:00
omar
a4012fd5b2 Merge branch 'master' into 2016-02-colorpicker 2017-08-08 11:30:10 +08:00
omar
b5ad88627d Merge various documentation tweaks, comments, todos from the Navigation Branch to reduce drift a little 2017-08-08 11:27:48 +08:00
omar
a1bcc8392e Fixed GetScrollMaxX() debug left-over from 7096fd8500 (#1271) 2017-08-08 11:15:34 +08:00
omar
03700ad15e Merge remote-tracking branch 'origin' into 2016-07-navigation 2017-08-07 22:51:18 +08:00
omar
1c991b525a Merge remote-tracking branch 'origin' into 2016-02-colorpicker 2017-08-07 22:34:30 +08:00
omar
0ab722c3c5 Columns: First first column appearing wider than others (#1266) 2017-08-07 22:28:09 +08:00
omar
d43c25d8f4 SetScrollHere() tweak to make the code a little less confusing 2017-08-07 21:54:41 +08:00
omar
e36b41cbd0 Fixed Y scroll aiming when Horizontal Scrollbar is enabled (#665). Tweak log demo. 2017-08-07 21:53:57 +08:00
omar
7096fd8500 Fixes for Vertical Scrollbar not automatically getting enabled if enabled Horizontal Scrollbar straddle the vertical limit. (#1271, #246) 2017-08-07 19:41:22 +08:00
omar
233a6efeba Fixed GetScrollMaxX(), GetScrollMaxY(). Tweak demo to display more data. Using functions in Begin(). (#1271) 2017-08-07 18:35:15 +08:00
omar
46c73cccff Popups window can be moved (if they don't have explicit positions provided by user, or e.g. sub-menu popup) (#1252) 2017-08-05 19:47:52 +08:00
omar
d762f1dbfb Comments, clarification about io.WantCaptureMouse, io.WantCaptureKeyboard flags timing and NewFrame(). (#1262) 2017-08-05 19:15:03 +08:00
omar
95f2706d1c Clipboard: [windows] Fixed not closing win32 clipboard on early return. (#1264) 2017-08-05 16:05:48 +08:00
omar
40ac84d701 DataTypeApplyOpFromText: renamed local variables + comments to avoid confusion about the fact that int and float paths are not totally symetrical. (#671) 2017-08-03 16:41:29 +08:00
omar
f6460970c5 ColorPicker: Hue wheel + SV triangle picker mode (mode selection flags still wip, missing context menu and persistent options). (#346) 2017-07-31 21:20:42 +08:00
omar
fb54dce71c Internals: Added ImLineClosestPoint, ImTriangleClosestPoint helpers. Changing ImVec2 arg to const ImVec2& 2017-07-31 21:11:41 +08:00
omar
72da4081f8 Internals: Added ImTriangleBarycentricCoords() helper. Renamed ImIsPointInTriangle() to ImTriangleContainsPoint(), with different arg order. 2017-07-31 17:54:40 +08:00
omar
2f508c7073 ColorEdit: Extract ColorOptionsPopup() function out of ColorEdit4(). (#346) 2017-07-31 17:32:07 +08:00
omar
10ef5a63f0 ColorPicker: Rearrange code to introduce alternate HSV picker/selector with simpler diff. (#346) 2017-07-31 16:50:28 +08:00
omar
cc3cce7567 Comments, minor tidying up. 2017-07-31 16:48:45 +08:00
omar
70ee41b8b3 ColorPicker: Reordered drawing code to match left-to-right display. Extra comments. (#346) 2017-07-31 12:08:20 +08:00
omar
4b2f157fb1 Renamed ImGuiColorEditFlags_ModeMask_ to ImGuiColorEditFlags_InputsModeMask_ (#346) 2017-07-31 11:50:14 +08:00
omar
efbb1ae04e ColorPicker4: Fixed forwarding _HDR flag from ColorPicker4 back to ColorEdit4 components. (#346) 2017-07-30 23:22:48 +08:00
omar
3ee969c3e3 ColorPicker: Alpha bar using a checkerboard. (#346) 2017-07-30 23:11:59 +08:00
omar
3075d8bcd4 ColorEdit4: Preliminary support for ImGuiColorEditFlags_HDR flag (currently only lift limits). (#346) 2017-07-30 23:08:43 +08:00
omar
f6a89779c8 ColorEdit4: Hex input clamps integer components to 0..255 range during printout (#346) 2017-07-30 23:06:07 +08:00
omar
e1a00c3d26 ColorButton: Added frame border when style border are off. (#346) @jdumas 2017-07-30 18:09:34 +08:00
omar
90fcd4a829 Renamed ImGuiColorEditFlags_NoColorSquare to ImGuiColorEditFlags_NoSmallPreview (#346) 2017-07-30 17:55:42 +08:00
omar
3fe7739b5d ColorPicker: Honor ImGuiColorEditFlags_NoTooltip if for some reason user wants that. (#346) 2017-07-30 17:53:37 +08:00
omar
3ffcc72f98 ColorPicker: Better cursor/color preview over the color matrix. (#346) 2017-07-30 16:57:44 +08:00
omar
fef8aac523 ColorPicker4: hue/alpha bars draw arrows that would look right on all background. RenderArrow helper. (#346) 2017-07-30 16:15:52 +08:00
omar
3926bd08e1 ColorPicker: Added ImGuiColorEditFlags_NoSidePreview flag + optional reference color. Added more demo code. (#346) 2017-07-29 17:23:32 +08:00
omar
e84224bcd5 ColorEdit4: Can open context menu from inputs/drags as well (#346) 2017-07-29 17:00:56 +08:00
omar
6c82572a35 ColorEdit4: Fixed not returning true when clicking on the Original/Ref color in Picker spawned from ColorEdit4 + shallow tidying up (#346) 2017-07-29 16:11:20 +08:00
omar
7537dff806 ColorEdit4: Picker spawned from ColorEdit4 has a preview for original/previous color with revert button - WIP not really happy with it being in ColorEdit4 code (#346) 2017-07-29 15:54:45 +08:00
omar
6bc1572d31 ColorPicker: Comments. Single input value mode allow access to context-menu options. (#346) 2017-07-29 15:50:24 +08:00
omar
973d4a361b ColorPicker: Forward AlphaPreview flag to its individual inputs/sliders. Split code into extra lines to make logic more readable. (#346) 2017-07-29 14:32:41 +08:00
omar
cdcda9ff68 ColorEdit4: Store edit options per window. Demo: Letting user change edit mode. (#346) 2017-07-29 14:01:05 +08:00
omar
c36d59a42a ColorEdit, ColorPicker: AlphaPreview, AlphaPreviewHalf are explicit. Updated demo and using in style editor. 3x3 checkerboard more readable in half mode. (#346) 2017-07-27 17:16:46 +08:00
omar
b1cbd87a94 ColorEdit4: Minor tidying up. (#346) 2017-07-27 16:49:57 +08:00
omar
bfec9c657e ColorButton: Pretty much gave up with getting the checkerboard + AA + rounding + blending + offset all working together with every combination under the sun. It works as long as you don't sneeze. (#346) 2017-07-27 16:26:32 +08:00
omar
a9df6bfe86 ColorButton: Fixed rounding corners artefact when there is a single cell. 2017-07-27 14:04:58 +08:00
omar
b7a563276d ColorTooltip: Honor ImGuiColorEditFlags_HalfAlphaPreview flag by calling ColorButton(). Added HalfAlphaPreview to demo. (#346) 2017-07-27 11:07:46 +08:00
omar
c1c2b2400a ColorButton: Undo ce203f99f5 2017-07-27 11:04:39 +08:00
omar
2e37db9002 ColorEdit4: Fix not forwarding ImGuiColorEditFlags_AlphaBar flag to ColorPicker4 (#346) 2017-07-27 10:49:01 +08:00
omar
27e5b09af1 ColorButton: ImGuiColorEditFlags_HalfAlphaPreview flag to render both opaque and alpha-with-checkerboard versions of the peak preview (#346) 2017-07-26 23:07:35 +08:00
omar
69dd1ed583 RenderColorRectWithAlphaCheckerboard() in one layer to shunt out anti-alasing artefacts when rounded. Added ImLerp(int,int,float). (#346) 2017-07-26 22:20:43 +08:00
omar
76bae2f015 ColorEdit, ColorPicker: Fixed broken build due to commiting an undesirable change in 78a8f798c5 (#346) 2017-07-26 17:46:48 +08:00
omar
19c6a9c0e0 ColorButton, ColorPicker: painfully made RenderColorRectWithAlphaCheckerboard more friendly to using Rounding and Border in style, still not perfect :( (#346) + comments 2017-07-26 17:38:33 +08:00
omar
6796e771fd ColorEdit, ColorPicker: added ImGuiColorEditFlags_NoAlphaPreview flag (#346). Reorder flags again. 2017-07-26 16:28:01 +08:00
omar
ce203f99f5 ColorButton: Push a text baseline offset if higher than g.FontSize. (#346) 2017-07-26 15:52:17 +08:00
omar
78a8f798c5 ColorEdit, ColorPicker, ColorButton: Display grid under transparent colors (WIP) (#346) 2017-07-26 15:24:09 +08:00
omar
9d0e5beaa7 GetColorU32(ImGuiCol): avoid using GImGui twice since some implementation make it a TLS-ish variable with non-trivial accessors. 2017-07-26 14:35:50 +08:00
omar
95fe11b5bf Added GetColorU32(u32) variant that does the style alpha multiply without a floating point round trip. Not 100% sure about that before the signature may seem ambiguous? But also make using imgui+drawlist more consistent in end-user extensions. 2017-07-26 14:34:59 +08:00
omar
4f1f251bd2 ColorEdit, ColorPicker: Context / options menu allows to toggle between u8 and float display. Using short words to avoid localization. (#346) 2017-07-23 19:02:26 +08:00
omar
8d32e8dae6 ColorPicker: Handle out of 0..1 range colors when displaying the cross hair. (#346) 2017-07-23 18:48:45 +08:00
omar
7b2d79cffd ColorEdit: Added ImGuiColorEditFlags_Float flag to display and edit drag values in 0.0..1.0 range instead of 0..255. (#346) 2017-07-23 18:44:32 +08:00
omar
a8b202782f ColorPicker,ColorButton: Honor Border/Shadow style settings (#346) 2017-07-22 19:37:13 +08:00
omar
790d0eb5be ColorPicker: Added ImGuiColorEditFlags_AlphaBar option (#346) 2017-07-22 19:24:39 +08:00
omar
4355b2e422 ColorPicker: Honor ImGuiColorEditFlags_NoColorSquare flag + comments (#346) 2017-07-22 19:04:10 +08:00
omar
15be7e1a71 ColorPicker: new prototype for ColorButton() .Added _NoTooltip, _NoLabel flags. Changing _Alpha flag to _NoAlpha makes so much much sense and allow to revert default parameters to zero. ColorEdit4/Picker4 don't attempt to read/write fourth component, making ColorEdit3/Picker3 shorter/faster. Tooltip and Picker called from ColorEdit can have a title. Picker shows colored square. Moved ColorTooltip() to imgui_internal.h (#346) 2017-07-22 18:01:16 +08:00
omar
dd9c2f97a8 ColorPicker: Renamed _NoSliders to _NoInputs (#346) 2017-07-22 17:38:38 +08:00
omar
eba33deaf3 ColorPicker: Longer white line for hue/alpha selection, scale down according to ItemInnerSpacing. (#346) 2017-07-22 17:35:18 +08:00
omar
1edeea2f5a ColorPicker: Removed extraneous ImGui:: prefixes + minor comments (#346) 2017-07-22 16:58:28 +08:00
omar
e79d7553b0 ColorPicker: Don't use Alpha setting when enabling all 3 sliders (#346) 2017-07-22 16:52:41 +08:00
omar
97bedd704c Better, unified color tooltip (#346) 2017-07-21 03:06:25 +08:00
omar
c8553817d9 Merge branch 'master' into 2016-02-colorpicker 2017-07-21 02:34:19 +08:00
omar
138a9dbaeb Tooltip: SetTooltip() is expanded immediately into a window, honoring current font / styling setting. Add internal mechanism to override tooltips (not exposed in BeginTooltip yet because bools are evil) (#862) 2017-07-21 02:21:48 +08:00
omar
e4007f7145 Internals: Move GetVisibleRect() a few functions above so it gets to hang out with its peers. 2017-07-20 22:30:56 +08:00
omar
85d9c8fb46 Internals: renaming IndexWithinParent to OrderWithinParent 2017-07-20 21:25:31 +08:00
omar
25f3717a1c Removed IsPosHoveringAnyWindow() which was severaly broken and misleading (most people want to use io.WantCaptureMouse). Added dummy function with assert for now. (#1237) 2017-07-20 20:57:46 +08:00
omar
3e4cb40d45 Merge branch 'master' into 2016-02-colorpicker 2017-07-19 14:53:25 +08:00
omar
41f944238b Comments about GlyphExtraSpacing (#1192) 2017-07-15 18:03:43 +08:00
omar
be7fa76fdd Fixed Clang unknown-warning-ignored warning by ignoring it..... we are truly living in a special time (#1090) 2017-07-15 13:27:44 +08:00
omar
cb6d893a13 Comments (#383, #1224) 2017-07-14 18:12:40 +08:00
omar
d3f4309491 Comments about ImGuiStyleVar enum (#1198) 2017-06-24 13:11:46 +02:00
omar
a5e0210902 Revert 978c84d2e9 because int32 >> 32 tends to warns on some compilers/settings. Add ImU64 type. (#1184) 2017-06-19 21:19:48 +02:00
omar
e47cf79773 Comments tweaks, typos (#1188) 2017-06-17 19:30:30 +02:00
omar
4c8d87d3fb Comments (#1188) 2017-06-17 19:25:58 +02:00
omar
978c84d2e9 Removed dependency on int64_t type (unvailable in VS2008) by rewording an assert (#1184) 2017-06-16 14:08:17 +02:00
omar
12d265fa31 Version 1.51 WIP tag 2017-06-13 11:30:22 +02:00
omar
5e1caaaef3 Version 1.50 2017-06-02 12:22:34 +02:00
omar
7ad84b22f8 Comments 2017-06-02 12:13:47 +02:00
omar
62c4698a73 Further clarifications of the key indices passed to IsKeyXXX functions (#1159) 2017-05-27 17:55:48 +02:00
omar
8228dc20df Merge branch 'master' into 2016-07-navigation 2017-05-26 13:44:08 +02:00
omar
c038339a4c Merge branch 'master' into 2015-02-colorpicker 2017-05-26 13:43:36 +02:00
omar
9da53bcecd ImFontConfig: Removed MergeGlyphCenterV in favor of a more multipurpose ImFontConfig::GlyphOffset. (Breaking change) 2017-05-26 13:42:36 +02:00
omar
bd9868f447 Scrollbar: Avoid rendering when sizes are negative to reduce glitches (not sure how this ever slipped through - perhaps because of WindowMinSize settings). 2017-05-13 20:25:09 +02:00
omar
dbfd5d6e9a Ignoring unreasonnable Clang -wformat-pedantic warning (#1090)
See e.g.
http://clang-developers.42468.n3.nabble.com/The-p-conversion-and-cast-to-void-td4044226.html
2017-05-01 12:55:47 +02:00
omar
27b83a2cac Merge branch 'master' into 2016-07-navigation 2017-05-01 12:38:33 +02:00
omar
89b1497843 Merge branch 'master' into 2016-02-colorpicker 2017-05-01 12:37:34 +02:00
omar
a0a6c8a2ef Renamed ImDrawList::PathFill() to ImDrawList::PathFillConvex() for clarity. (breaking API) 2017-05-01 12:36:46 +02:00
omar
d878462866 End() avoid calling Columns() if no columns set is open, not sure what it wasn't the case.
Pros: Faster. Avoid early crashes StackId underflow that are meant to be more gracefully caught by CheckStacksSize() (with more explicit assert). Cons: Excercise less code.
2017-04-30 12:10:45 +02:00
omar
bbd44b4edd Clarified asserts in CheckStacksSize() when there is a stack mismatch 2017-04-30 12:10:45 +02:00
Michael Link
8df58e2cfd MenuItem should only be selected on release 2017-04-25 15:15:56 +02:00
omar
0e1950f7d6 Comments about child menu positioning (#1086) 2017-04-01 18:01:47 +02:00
omar
2a3c61e5f8 Merge branch 'master' into 2016-07-navigation 2017-03-16 19:31:12 +01:00
omar
92ea8d1131 Merge branch 'master' into 2016-02-colorpicker 2017-03-16 19:28:30 +01:00
Codecat
fdd11658eb Fix ColorButton showing wrong hex value for alpha 2017-03-15 21:25:29 +01:00
omar
b8043d3ee5 Internal: Renamed ImLoadFileToMemory to ImFileLoadToMemory to be consistent with ImFileOpen + fix mismatching .h name (#917) 2017-01-14 13:47:16 +01:00
omar
b6c0227add Merge branch 'master' into 2016-02-colorpicker 2017-01-11 21:03:35 +01:00
omar
c76be71acf Merge branch 'master' into 2016-07-navigation 2017-01-11 21:03:25 +01:00
omar
6257b5814a Added an explicit (internal) ClearActiveID() helper and removed the default NULL window parameter to internal SetActiveID(), 2017-01-11 20:56:55 +01:00
ocornut
a60b2cc645 Merge branch 'master' into 2016-02-colorpicker 2016-12-23 12:15:58 +01:00
ocornut
bb4d19ff7c Merge branch 'master' - merge fix 2016-12-23 12:15:09 +01:00
ocornut
fdc70456f4 Merge branch 'master' into 2016-07-navigation 2016-12-23 12:13:52 +01:00
omar
081aec482b Merge pull request #931 from nlguillemot/master
Combo, ListBox: Extra const correctness.
2016-12-21 20:06:04 +01:00
ocornut
baa2e3b451 Minor documentation tweaks 2016-12-21 18:42:52 +01:00
Nicolas Guillemot
36d78e0565 const correctness for Combo and ListBox
Since Combo and ListBox only read and display the list of items, they
should not modify the pointers inside the array of pointers passed in.
Adding "const" here makes it possible to call these functions with such
an array of const pointers. Previously, a cast to "const char**" was
required as a workaround, otherwise there was a compile error.
2016-12-04 12:54:31 -08:00
ocornut
55d651812d Renaming and massaging internal Settings/Ini functions (#923) 2016-11-29 21:55:20 +01:00
ocornut
0b6211f907 Fixed clicking on a window's void while staying still overzealously marking .ini settings as dirty (#923) 2016-11-29 21:46:21 +01:00
ocornut
9235e0da46 SliderInt, SliderFloat(): Fixed edge case where style.GrabMinSize being bigger than slider width can lead to a division by zero (#919) 2016-11-29 21:07:26 +01:00
ocornut
ca9a918535 SliderInt(): Fixed reverse direction mode when (v_max-v_min)==-1 (#854) (+ ref #919) 2016-11-28 20:43:11 +01:00
ocornut
bbd0a37bd2 ImFileOpen: MinGW uses _wfopen() codepath to support UTF-8 filenames (#917) 2016-11-28 20:30:36 +01:00
ocornut
449c47c789 SliderInt, SliderFloat() interacting enforce modifying to the value to be consistent with other widget behaviors (#919) 2016-11-28 11:05:24 +01:00
ocornut
94c77edfa5 SliderInt, SliderFloat() Better display support for v_min==v_max range. (#919) 2016-11-28 11:03:48 +01:00
ocornut
0a483379af Split SliderBehaviorCalcRatioFromValue() out of SliderBehavior(), fix + Not using fabsf() anymore 2016-11-27 18:34:46 +01:00
ocornut
004e863727 Split SliderBehaviorCalcRatioFromValue() out from SliderBehavior() 2016-11-27 18:32:24 +01:00
ocornut
67c6d6026a Nav: SliderFloat() Fixed non-linear sliders in Nav branch (#787, #323) 2016-11-27 18:29:38 +01:00
ocornut
3028ccc25b Merge remote-tracking branch 'origin' into 2016-07-navigation 2016-11-27 18:25:20 +01:00
ocornut
f4cf972ea9 Merge branch 'master' into 2016-02-colorpicker 2016-11-27 18:21:14 +01:00
ocornut
219e4fb8fb SliderInt, SliderFloat: Passing v_min==v_max disable setting value from clicking/dragging (#919) 2016-11-27 17:49:04 +01:00
ocornut
a868c32ed1 SliderInt, SliderFloat: Renaming 2016-11-27 17:43:32 +01:00
ocornut
61d5b46307 SliderInt, SliderFloat(): support reverse direction (#854) 2016-11-27 17:38:33 +01:00
ocornut
104b381023 Using _wfopen() under Windows+MSVC because fopen() doesn't support UTF-8 encoding. Wrapped as ImFileOpen(). (#917) 2016-11-27 16:43:36 +01:00
Geoffrey Tucker
66c4281290 Began improvements to columns API by splitting the Columns() function into BeginColumns() and EndColumns() and adding additional flags. The columns data still needs to be placed into a stack. 2016-11-13 23:58:09 -08:00
ocornut
98e1d500d4 Support for #define-ing GImGui and IMGUI_SET_CURRENT_CONTEXT_FUNC to enable custom thread-based hackery (#586) 2016-11-12 17:08:31 +01:00
ocornut
8553bab241 Ignoring overzealous GCC warnings (#883) 2016-11-11 20:17:35 +01:00
ocornut
941cf1b436 Merge branch 'master' into 2016-07-navigation 2016-11-09 15:21:36 +01:00
ocornut
ccb3db94da Merge branch 'master' into 2016-02-colorpicker 2016-11-09 15:17:20 +01:00
ocornut
3689efb726 Font: Readme about icons 2016-11-06 22:53:36 +01:00
ocornut
da9feba539 Fixed missing frame padding on title bar text when Collapse triangle is disabled 2016-11-06 22:40:47 +01:00
ocornut
b376b68326 Font: Added io.FontDefault in ImGuiIO structure to make it easier to change default font from third-party or demo code 2016-11-06 21:50:18 +01:00
ocornut
ddf08ec2e8 BeginChild(const char*) applies stack id to provided label (#894, #713) 2016-11-06 15:12:50 +01:00
Matt Keeter
32dbe836d0 Add user-facing IsPopupOpen function 2016-10-29 15:33:09 -04:00
ocornut
dd6163241c Merge branch 'master' into 2016-02-colorpicker 2016-10-16 14:02:15 +02:00
ocornut
bdb34d1c11 Merge branch 'master' into 2016-07-navigation 2016-10-16 14:01:13 +02:00
ocornut
7252d93dcd stb_textedit.h Merged from master 1.9 (merged bits from #473) 2016-10-16 11:34:33 +02:00
ocornut
0d3f8807c7 Added a void* user_data parameter to Clipboard function handlers. (#875) 2016-10-15 11:36:43 +02:00
ocornut
cb7e1c18b5 Separator: Fixed zero-height bounding box resulting in clipping when at top of clipping rectangle (#860) 2016-10-10 22:37:59 +02:00
ocornut
4de35b4f30 Removed left-over empty op 2016-10-09 10:58:38 +02:00
ocornut
1810b3ff38 Added ImGuiCorner enum to clarify some internal code 2016-10-09 10:56:23 +02:00
ocornut
abaada4224 Removed the inconsistent shadow under RenderCollapseTriangle() (~#707) 2016-10-09 10:31:39 +02:00
ocornut
5957af8a80 Fixed not using IM_ARRAYSIZE() where appropriate 2016-10-09 10:08:03 +02:00
ocornut
fa73e5aa0e Plot: Fixed calling with values_count == 0 2016-10-08 12:43:30 +02:00
ocornut
51111b0ed5 FAQ clarified the ClipRect entry a little 2016-10-07 10:27:19 +02:00
ocornut
e4deb7a190 Merge remote-tracking branch 'origin' into 2016-07-navigation 2016-10-07 09:52:14 +02:00
ocornut
404979e48d Merge remote-tracking branch 'origin' into 2016-02-colorpicker 2016-10-07 09:52:00 +02:00
ocornut
a2487bc143 Minor tweaks 2016-10-01 15:16:17 +02:00
ocornut
68c81739bf Minor tidying up following merge BGRA color PR (#844) 2016-10-01 14:29:12 +02:00
ocornut
eb0382a1c1 Merge branch '2016-08-use_bgra_colors' of https://github.com/thedmd/imgui into thedmd-2016-08-use_bgra_colors 2016-10-01 14:19:25 +02:00
ocornut
dfe4683c17 EndGroup(): Made IsItemHovered() work when an item was activated within the group (#849) (loosely follows #840) 2016-10-01 14:10:24 +02:00
Michał Cichoń
1999c01db8 Apply Omar feedback and convert remaining 0xAABBGGRR's into IM_COL32(RR,GG,BB,AA) format. 2016-09-26 12:00:33 +02:00
Michał Cichoń
d75d2b1871 Introduce IMGUI_USE_BGRA_PACKED_COLOR in imconfig.h.
When IMGUI_USE_BGRA_PACKED_COLOR is defined packed color hold in ImU32 use BGRA format instead RGBA.
2016-09-26 12:00:33 +02:00
ocornut
fea0fcb7c3 Merge remote-tracking branch 'origin' into 2016-07-navigation 2016-09-25 15:25:55 +02:00
ocornut
6def01be5d Fixed IsItemActive() lagging by one frame on initial widget activation (#840) 2016-09-25 14:32:38 +02:00
ocornut
f2699de242 Fix using IsItemActive() after EndGroup() or any widget using groups (#840, #479) 2016-09-25 14:18:10 +02:00
ocornut
ed279c0095 Merge remote-tracking branch 'origin' into 2016-07-navigation 2016-09-25 12:59:24 +02:00
ocornut
1b5bbf725b Merge remote-tracking branch 'origin' into 2016-02-colorpicker 2016-09-25 12:57:22 +02:00
ocornut
56cdbe434d Style: Added ButtonTextAlign, ImGuiStyleVar_ButtonTextAlign (#842) 2016-09-25 12:53:13 +02:00
ocornut
0f303d363a Refactor text alignment options to use ImVec2, removed ImGuiAlign (#842, #222) 2016-09-25 12:19:15 +02:00
ocornut
de9f8944ea Internal RenderTextClipped() merged optional/rate clip_min* clip_max* into clip_rect* 2016-09-25 11:38:04 +02:00
ocornut
02cea0c3c3 Comment 2016-09-25 11:16:19 +02:00
ocornut
281898e82e Tidying up PushStyleVar/PopStyleVar() a little more (#842) 2016-09-25 11:14:10 +02:00
ocornut
c5b8c6303a Refactor PushStyleVar/PopStyleVar so it is constant time + can receive integers (yet unused) (#842) 2016-09-25 11:06:14 +02:00
ocornut
6e87f071b8 Shutdown() clear out some remaining pointers (#836) 2016-09-20 12:41:21 +02:00
ocornut
0420ab027e Metrics: Displaying window position + moving extraneous line in IsPopupOpen(). 2016-09-16 01:09:57 +02:00
ocornut
b397fb507e Fixed EndGroup() not restoring offset properly. breaking SameLine() offset (caused by 954c890c67) (#829) 2016-09-13 09:18:17 +02:00
ocornut
612b17ef57 Fixing minor english typos (#827) 2016-09-11 22:02:35 +02:00
ocornut
f6d4ca6473 TODO list 2016-09-07 12:02:37 +02:00
ocornut
c0fcf223be Fixed assert triggering when a window has zero rendering but has a callback (#810) 2016-09-03 19:02:57 +02:00
ocornut
3c384c2f10 Examples: Renaming opengl_example/ to opengl2_example/ for clarity (1/2 because git) 2016-08-25 10:18:09 +02:00
ocornut
ef10b984fe Merge remote-tracking branch 'origin' into 2016-02-colorpicker 2016-08-23 17:00:47 +02:00
ocornut
f39513ac47 Merge remote-tracking branch 'origin' into 2016-07-navigation 2016-08-23 17:00:11 +02:00
ocornut
63d47bc5a4 ImFormatString() Fixed an overflow handling bug with implementation of vsnprintf() that do not return -1 (#793) 2016-08-23 16:55:06 +02:00
ocornut
e8e5c6d788 Nav: Comments. Fixed two -Wall warnings. Removed unused function. (#787) 2016-08-23 08:58:51 +02:00
ocornut
3883a2027f Nav: Fixed Selectable() crash introduced earlier today in 43ee5d73 + added comments/assert (#323) 2016-08-21 17:52:42 +02:00
ocornut
df9bdf38f9 Nav: NavActivateId, NavInputId are no repeat actions. Repeat buttons handle it themselves already anyway. (#323) 2016-08-21 17:32:15 +02:00
ocornut
c6c7371a4c Nav: Removed unnecessary test following 49ca1c2b88 (#323) 2016-08-21 16:11:53 +02:00
ocornut
49ca1c2b88 Nav: InitDefaultRequest saves a fallback item so PadMenu on a collapsed window gets us to the collapse button (#323) 2016-08-21 16:07:55 +02:00
ocornut
2303b67c40 Close button submitted after collapse button. Should have no effect. Consistent with expectation & will be used as fallback for nav (#323) 2016-08-21 16:05:19 +02:00
ocornut
252f094101 Nav: Undo 87eb749cbc, agressively including nav focus test in IsItemHovered() (#323) 2016-08-21 15:26:40 +02:00
ocornut
fddf9ca10e Nav: Fixed nav highlight clipping (affected non non-menu items within menubar) (#323) 2016-08-21 15:25:29 +02:00
ocornut
78b7e2dfb3 Nav: Process and apply mouse move request immediately after move request result comes (#323) 2016-08-21 14:53:26 +02:00
ocornut
f71cdd13b7 Internal tidying up, moved code to CalcNextScrollFromScrollTargetAndClamp() so it can be reused by upcoming nav code. 2016-08-21 14:39:13 +02:00
ocornut
ac7826c8a5 ImRect: Added Translate() helper, removed redundant and misleading Reduce() 2016-08-21 14:37:48 +02:00
ocornut
87eb749cbc Added IsItemHoveredOrFocused() (provisional name), better handling of popup/tooltip positioning when using mouse+nav (#323) 2016-08-21 13:25:40 +02:00
ocornut
ea2425ad9a Nav: Fixed entering child with PadActivate not setting ActiveIdSource to Nav (#323) 2016-08-21 12:44:59 +02:00
ocornut
43ee5d73e9 Nav: Hovering MenuItem/Selectable with mouse makes NavId, matching what seems to be Windows beahvior at least for menus (#323) 2016-08-21 11:45:50 +02:00
ocornut
30c04d0dbe Nav: Mouse pos passed to backend always rounded, so that lossy application of non-integer mouse pos doesn't lead to undesirable movement (#3 2016-08-21 00:10:48 +02:00
ocornut
bf42657850 Nav: Clearing mouse hover flag using MouseClicked[] test instead of MouseDown[] so that invalid mouse button won't keep breaking nav (#323) 2016-08-20 23:59:54 +02:00
ocornut
695ca7bb45 Nav: Tidying up. Comments. (#323) 2016-08-20 23:27:25 +02:00
ocornut
4f7c63a7af Nav: Fixed a bug where mouse positioning requests would be sent while opening submenus with mouse (#323) 2016-08-20 23:25:53 +02:00
ocornut
e4c099d67c Nav: Comments + fixed handling of PadLeft in menus (fix e55882f) (#323) 2016-08-20 22:11:00 +02:00
ocornut
e3fec8c0aa Renamed function (#323) 2016-08-20 19:19:58 +02:00
ocornut
ead79dcdac Metrics: 64-bit display fix 2016-08-15 17:34:17 +02:00
ocornut
3ab0d5cdfd Nav: NavHighlight gets its own color (default to Header color), made rectangle thicker (#323) 2016-08-15 13:07:39 +02:00
ocornut
cf16ba6572 Nav: Exposed RenderNavHighlight() in imgui_internal.h to increase discoverability and reordered arguments to be more consistent (#323) 2016-08-15 11:52:02 +02:00
ocornut
6c19d7b13c Nav: Fixed clipping rect of navigation highlight, notably for collapsing arrow (#323) 2016-08-15 11:41:56 +02:00
ocornut
9501cd9991 InputText: Fixed calling callback on frame of losing active id, fix part of 848e62bfe0 (nav branch only)
#323 #701
2016-08-13 14:22:34 +02:00
ocornut
cff815fd2d Merge branch 'master' into 2016-02-colorpicker 2016-08-11 23:22:15 +02:00
ocornut
a83f9b7885 Merge branch 'master' into 2016-07-navigation 2016-08-11 23:21:04 +02:00
ocornut
0f9addb002 Minor shuffle to ease merging branches. (tentative. fugly but those fields will be removed anyway) 2016-08-11 23:20:53 +02:00
ocornut
bfe1e163b8 Merge remote-tracking branch 'origin' into 2016-02-colorpicker 2016-08-11 23:01:48 +02:00
ocornut
4bc3f9d1f7 Minor shuffle to ease merging branches. 2016-08-11 22:59:44 +02:00
ocornut
996eb080fa Merge remote-tracking branch 'origin' into 2016-02-colorpicker 2016-08-11 22:53:26 +02:00
ocornut
df1d1b5b25 Nav: DragBehavior: Adjust minimum step to displayed precision when using navigation (#323, #180) 2016-08-07 20:40:57 +02:00
ocornut
09cba02d3f Nav: DragBehavior: Fix for fast speed (#323 #180) 2016-08-07 20:31:51 +02:00
ocornut
761a74c62b Selectable/MenuItem: Not activated on Click but only on Release is more standard (#126, #245, #323)
Apparently menu items started with OnClick (vs OnClickHoldRelease) when
doing #126. Hope to not break anything.
Also allows using xxx_DontClosePopup flags.
2016-08-07 20:21:18 +02:00
ocornut
8828889d5e Refactored rare transient bool stacks into a set of flags, added unexposed ImGuiItemFlags_SelectableDontClosePopup (#323) 2016-08-07 20:05:24 +02:00
ocornut
525ef5b357 Nav: Tweaked default highlight clipping (clipped by scrollbar) and removed subtle background (#323) 2016-08-07 15:31:00 +02:00
ocornut
a68132948b Nav: Added ImGuiCol_NavWindowingHighlight into style (#323) 2016-08-07 15:26:04 +02:00
ocornut
6aa8019763 Nav: Fixed bug where pressing NavInput(Triangle) to turn slider/drag into text input would then change subsequent NavActivate as well (#323) 2016-08-07 15:19:29 +02:00
ocornut
e55882f74b Nav: Allow PadLeft to close a menu (#323) 2016-08-07 15:18:04 +02:00
ocornut
c203be94c6 Merge remote-tracking branch 'origin' into 2016-07-navigation 2016-08-07 13:55:59 +02:00
ocornut
6eb35b8a04 BulletText(): doesn't stop displaying at the ## mark 2016-08-07 13:53:41 +02:00
ocornut
8a6d209f68 Nav: Failed movement request with no current NavId fallback to an InitDefaultRequest so that we always land somewhere on first move (#323) 2016-08-07 13:34:25 +02:00
ocornut
5ef8452509 Nav: Comments (#323) 2016-08-07 13:33:15 +02:00
ocornut
cbf24c13ca Merge remote-tracking branch 'origin' into 2016-07-navigation 2016-08-07 12:15:21 +02:00
ocornut
5d1a0a6f77 Removed a handful of obsolete (trivial) function redirection from 1.34 and 1.38 (march-april 2015)
OpenNextNode() -> SetNextTreeNodeOpen()
GetWindowIsFocused() -> IsWindowFocused()
GetItemBoxMin() -> GetItemRectMin()
GetItemBoxMax() -> GetItemRectMax()
IsMouseHoveringBox() -> IsMouseHoveringRect()
IsClipped() -> !IsRectVisible()
2016-08-06 09:48:04 +02:00
ocornut
b8397c2933 Tweak comments (#768) 2016-08-06 09:40:26 +02:00
ocornut
a1521534ba Merge branch '2016-08-generalized_visibility_test' of https://github.com/thedmd/imgui into thedmd-2016-08-generalized_visibility_test 2016-08-06 09:36:24 +02:00
ocornut
af33efb146 Using IM_COL32() for colors in a few spots (#767) 2016-08-06 09:35:05 +02:00
ocornut
a7f6ea592f Moved GetColorU32 out of imgui_internal.h to avoid inlining mess (#759) 2016-08-06 09:22:41 +02:00
Michał Cichoń
7588dfb67e Add ability to test arbitrary rectangle for visibility without need of moving cursor. 2016-08-05 11:47:16 +02:00
ocornut
d85c1be6b6 Nav: Reordered Cancel handling code so you you can leave a child within a popup without closing the popup (#323) 2016-08-04 12:53:46 +02:00
ocornut
c263961f07 Nav: Menu: Allow PadDown to open a menu from a menu bar, PadRight from a menu (#323, #126) 2016-08-04 10:41:33 +02:00
ocornut
dcff032429 Nav: Moving all nav inputs to io.NavInputs[] float array, new enum labelled for gamepad. (#323) 2016-08-03 23:23:04 +02:00
ocornut
c0dcef4e16 Nav: Moving window with nav stick disables mouse hover (#323) 2016-08-03 21:02:27 +02:00
ocornut
36fa2b9523 Nav: DragBehavior removed bogus test (#323) 2016-08-01 22:23:56 +02:00
ocornut
2e52bee12e Merge remote-tracking branch 'origin' into 2016-07-navigation 2016-07-31 17:00:44 +02:00
ocornut
907265d632 Using ImGuiID instead of ImU32 is a few places 2016-07-31 16:48:06 +02:00
ocornut
8b190f1100 Nav: quick tap on NavMenu with no focused window doesn't focus one (holding still does) (#323) 2016-07-31 16:12:01 +02:00
ocornut
e9c881e4de Nav: fixed using NavMenu/windowing select when no window is already focused + cleanup code (#323) 2016-07-31 16:07:58 +02:00
ocornut
1ecbf73c97 Nav: working on early bits of documentation (#323) 2016-07-31 15:41:51 +02:00
ocornut
a154625a56 Nav: Not exposing ImGuiWindowFlags_NavFlattened because it requires much more work (#323) 2016-07-31 13:40:14 +02:00
ocornut
08a28c16ae Nav: Merge FocusedWindow and NavWindow that were basically duplicate at this point (#323) 2016-07-31 13:38:57 +02:00
ocornut
2545d75c3b Tidying up, removed two unnecessary window flags from being exposed in imgui.h 2016-07-31 13:05:13 +02:00
ocornut
b3cba62b80 Nav: Added experiment ImGuiWindowFlags_NavFlattened flag to cross over between parent and non-scrolling child windows (#323) 2016-07-31 12:55:23 +02:00
ocornut
769a1dd748 Nav: No scrolling while using windowing functionalities (#323) 2016-07-31 10:41:41 +02:00
ocornut
a88d189f18 Nav: MoveRequest doesn't affect io.NavUsable so that navigation failure doesn't trigger false positive & not needed (undo part of 3cc1419df) 2016-07-30 23:52:03 +02:00
ocornut
f72e2fd1b1 Merge remote-tracking branch 'origin' into 2016-07-navigation 2016-07-30 23:46:09 +02:00
ocornut
954c890c67 SameLine() with explicit X position is relative to left of group/columns (ref #746, #125, #630) 2016-07-30 23:41:44 +02:00
ocornut
3cc1419df3 Nav: making io.NavActive more suitable for end-user detecting if they should pass inputs to game (#323) 2016-07-30 19:16:41 +02:00
ocornut
cc66731c39 Nav: Calling SetItemDefaultFocus() doesn't make mouse cursor dirty if nav highlight is off (#323) 2016-07-30 19:15:12 +02:00
ocornut
8d0186c82b Nav: programmatic call to SetKeyboardFocusHere() doesn't quality as a nav input (doesn't position mouse) (#323) 2016-07-30 19:08:20 +02:00
ocornut
e2dd48ae65 Nav: Split _NoNav window flag into _NoNavInputs and _NoNavFocus (#323) 2016-07-30 18:06:05 +02:00
ocornut
4c4d750cae Nav: Fixed Collapse icon disappearing when Nav is disabled (since b2aaab873d) (#323) 2016-07-30 18:05:14 +02:00
ocornut
3672105b87 Tidying up 2016-07-30 17:20:59 +02:00
ocornut
04157da291 Nav: first committed pass for manual moving and manual scrolling (after a bunch of attempts) (#323) 2016-07-30 17:18:34 +02:00
ocornut
4309b8c1ed Clarifying that MovedWindow* apply to mouse moving only 2016-07-30 16:25:45 +02:00
ocornut
f2d1472481 Nav: Fixed navigating outside of current scrolling bounds (bug from 0cc20fca83) (#323)
+ spaces
2016-07-30 15:17:12 +02:00
ocornut
efc8858328 ImRect: fixed Clip() function being the other way around (INTERNAL API BREAKING CHANGE- wasn't exposed, hoping nobody uses that) + actually fixes the function behavior. 2016-07-30 14:38:33 +02:00
ocornut
d6ce800a20 Nav: ActiveIdAllowNavMove -> ActiveIdAllowNavDirFlags for more flexibility (nav up/down typically allowed on a single-line text input) (#323) 2016-07-30 14:31:34 +02:00
ocornut
d9d6b0e629 Nav: Renamed private ImGuiNavDir_ enum to use left/right/up/down to be consistent with key enums (#323) 2016-07-30 13:45:46 +02:00
ocornut
cbe03e3108 Nav: CalcListClipping/ImGuiListClipper: fix to ensure we can navigate clipped lists (#323) 2016-07-30 11:22:18 +02:00
ocornut
b3ddae07d1 Nav: not activating widgets with NavActivate when NavMenu is held (#323) 2016-07-30 11:11:17 +02:00
ocornut
b2aaab873d Nav: collapse button is interactve, allow collapsing, tidying up, resize speed takes account of framebuffer scale (#323) 2016-07-30 10:56:52 +02:00
ocornut
4735802096 Shallow tidying up ctrl+wheel scaling code in NewFrame() 2016-07-30 10:26:57 +02:00
ocornut
20a0fde012 Tidying up default clipboard handler for non Windows-OS 2016-07-30 10:02:46 +02:00
ocornut
f34d7ea199 Fixed bad merge 2016-07-29 11:23:04 +02:00
ocornut
5f6f4d0ffc Merge remote-tracking branch 'origin' into 2016-07-navigation 2016-07-29 11:17:13 +02:00
ocornut
7086a17854 InputTextEx: got rid of unnecessary locals. 2016-07-29 11:06:16 +02:00
ocornut
776ea6b946 InputTextEx(): more shallow tidying up, still being cautious with this function 2016-07-29 11:01:06 +02:00
ocornut
666d83b5c7 InputText/IO: Got rid of individual OSX options in ImGuiIO, added io.OSXBehaviors (#473, #650) 2016-07-29 10:56:47 +02:00
ocornut
0ff22dbf0b InputTextEx(): minor tidying up 2016-07-29 10:51:35 +02:00
ocornut
e5b6ddde26 InputText(): minor tidying up/simplification following changes for osx style improvements (#650) 2016-07-29 10:42:08 +02:00
ocornut
802e91f69e Merge branch 'add-osx-homeend-keys' of https://github.com/michaelbartnett/imgui into michaelbartnett-add-osx-homeend-keys 2016-07-29 10:34:01 +02:00
ocornut
aeabda5a5f Navigation: Tap NavMenu to access menu and close buttons, hold to focus/resize (#323)
Introducing a concept of NavLayer to filter navigable items
2016-07-24 14:56:14 +02:00
ocornut
c3aa36d9ab Navigation: Renamed ImGuiKey_NavWindowing to ImGuiKey_NavMenu (#323) 2016-07-24 14:49:16 +02:00
ocornut
175f42420c Navigation: Can nav-out but not nav-in a window with ImGuiWindowFlags_NoNav flag (#323) 2016-07-24 14:41:27 +02:00
ocornut
67feb5ac6c Navigation: comments + moving init block of code above in NavUpdate(), should have no side-effect (committed to simplify next commit) (#323) 2016-07-24 14:15:34 +02:00
ocornut
49ec65b1b5 Navigation: can't manually focus out of a modal window with controller (#323) 2016-07-24 14:00:29 +02:00
ocornut
5cac4926c8 Fixed display of TitleBgActive color on window before a Modal window + modal window availability for navigation (#323) 2016-07-24 13:56:31 +02:00
ocornut
ba43310df1 Navigation: Renaming, shortened some unnecessary long fields names (#323) 2016-07-24 12:46:25 +02:00
ocornut
4bbdaa4e3c Navigation: Moving NavInitWindow() around and making it static (#323) 2016-07-24 11:56:36 +02:00
ocornut
e9d8b48a4c Navigation: Allow to navigate out of text input with direction or NavCancel (#323) 2016-07-23 20:30:44 +02:00
ocornut
2f94563564 Navigation: Collapsed window uses ImGuiCol_TitleBgActive when navigation is active (#323) 2016-07-23 20:09:41 +02:00
ocornut
afadc7cf59 Navigation: Scoring: Improved directional navigation. Not totally cancelling out dx. Better support for zero-spaced items. (#323) 2016-07-23 20:05:17 +02:00
ocornut
e74d96642f Navigation: mouse/popup position gets clamped within visible display (#323) 2016-07-23 19:42:19 +02:00
ocornut
0cc20fca83 Navigation: Scoring uses rectangle as clipped by parent. Fix selectable extending past parent column among other things (#323) 2016-07-23 19:24:56 +02:00
ocornut
2f1fb41579 Navigation: Fixed automatic fallback scrolling from glitching near scroll limits because of miscalculation of SizeContents (#323) 2016-07-23 16:31:23 +02:00
ocornut
ad48309047 Navigation: Fixed using NavWindowed when a menu is open. (#323) 2016-07-23 16:01:27 +02:00
ocornut
2cab404a81 Fixed tooltip positioning issues when using navigation (#323) 2016-07-23 15:44:56 +02:00
ocornut
c2cb2a6928 Gamepad/Keyboard navigation support, initial commit, WIP (#323) 2016-07-20 00:02:59 +02:00
ocornut
4a11cc35b9 Updated code for repeat delay / repeat handling. GetKeyPressedAmount() now returns a count to support fast repeat rate (where DeltaTime > RepeatRate).
Renamed from recently added IsKeyPressed() variant to GetKeyPressedAmount(). (no API breakage, added in branch, bbd3b75609) (#323)
2016-07-19 21:26:36 +02:00
ocornut
88c1966629 Added IsAnyWindowFocused(). Renamed IsMouseHoveringAnyWindow() -> IsAnyWindowHovered(), IsPosHoveringAnyWindow() -> IsAnyWindowHoveredAtPos(), IsMouseHoveringWindow() -> IsWindowHoveredRect() for consistency. Kept inline rediection function. 2016-07-18 18:24:23 +02:00
ocornut
23a81027e8 Comment on invalid comment regarding preserving keyboard focus of a closed window, due to commit 19d02becef. This is probably still what we want. (followup #727) 2016-07-18 18:22:11 +02:00
ocornut
eb405ab375 DragBehavior: Moving code around, in what should be a no-op, to simplify upcoming Nav diff (#323, #180) 2016-07-18 18:22:10 +02:00
ocornut
c816e6c742 Fixed SetScrollX() handling of center ratio (which actually wasn't exposed publicly). (#323, #246) 2016-07-18 18:22:09 +02:00
ocornut
e10ecfe28a BeginChild(): tweak to make the code easier to understand 2016-07-18 18:22:08 +02:00
ocornut
24f79b91bd Style: minor tweak to default color theme to make currently focused window more prominent (#323, #707) 2016-07-18 18:22:07 +02:00
ocornut
068984691e Tab-key focusing inhibited when CTRL is held (#323) 2016-07-18 15:26:05 +02:00
ocornut
267e54cf06 NewFrame(): update activeid data and keyboard before mouse. Should have no side-effects! (So that later we can update Nav between Keyboard and Mouse) (#323) 2016-07-18 15:26:04 +02:00
ocornut
272745bd93 ImGuiIO: initializing fields in the same order as the declaration. 2016-07-18 15:26:03 +02:00
ocornut
848e62bfe0 InputText: don't process keys during the activation frame (this is mostly a workaround to that activation with enter doesn't validate immediately, which is turns triggers an assert in InputScalarAsWidgetReplacement - can't see an issue with changing it this way so trying out) + using local flag clear_active_id to only clear the active id at the end of the frame, which is one of the step that my stash for #701 requires. (#323) 2016-07-18 15:26:02 +02:00
ocornut
57841f417d SliderBehavior, RoundScalar: split into separate functions for usage in upcoming nav commits. Testing power==1.0f without fabsf(). Maybe just use == 1.0f as well? (#323) 2016-07-18 15:26:01 +02:00
ocornut
6f7da2f9f2 Popup: Fixed popup initial frame reading MousePos again instead of the value already stored within the CurrentPopupStack in the previous frame. Doesn't make a big difference here, but will do as gamepad/keyboard navigation will set its own popup position. (#323) 2016-07-18 15:26:01 +02:00
ocornut
91e1c56da6 Minor bits. 2016-07-18 15:25:59 +02:00
ocornut
bbd3b75609 Added IsKeyPressed() with explicit repeat delay and repeat rate (for usage by nav) (#323) 2016-07-18 15:25:58 +02:00
ocornut
9f92cc255b SetActiveId() sets ActiveIdIsJustActivated only when id changes. (#323) 2016-07-18 15:25:57 +02:00
ocornut
ffdd7d7f17 Begin: Moved code that calls FocusWindow() on a newly appearing window lower in the function so that Nav branch can use CursorStartPos on the first window frame. (#323)
Pushing in master because it _should_ be a no-op but I'd rather test for any issue in Begin() as soon as possible.
2016-07-18 15:25:44 +02:00
ocornut
19d02becef Closing the focused window restore focus to the first active root window in descending z-order (part of #727) 2016-07-17 19:17:49 +02:00
ocornut
e215905765 Fixed scrolling offset when using SetScrollY(), SetScrollFromPosY(), SetScrollHere() with menu bar.
Tests:
a) add SetScrollY(+20) after Begin("ImGui Demo") test with/without title/menu.
b) add ImGuiWindowFlags_MenuBar in BeginChild() in scrolling tracking demo.
2016-07-16 18:12:41 +02:00
ocornut
44a13a7f25 Windows: No default IME handler when compiling using GCC. (#738) 2016-07-16 11:29:41 +02:00
ocornut
04b36bc397 TODO list 2016-07-14 13:38:44 +02:00
ocornut
81036ee46f InputTextMultiline(): fix so that IsItemActive() can be used afterwards (otherwise the info was lost by using child/group) 2016-07-14 13:27:14 +02:00
ocornut
88721118fd InputTextEx: comments (related to #725) 2016-07-13 01:54:29 +02:00
ocornut
d9e2e688e9 InputTextMultiline(): partial fix for when input and internal buffers differs in a way where scrollbar existence differs. (#725)
Partial fix, won't stop ids from functioning because of a zombie id.
2016-07-13 01:18:59 +02:00
Michael Bartnett
921fc50c85 add shortcut+backspace support 2016-07-07 13:03:00 -04:00
Michael Bartnett
86f42b5950 osx uses super+arrows for home/end, built on work in ocornut/imgui#473 2016-07-07 13:02:52 -04:00
ocornut
5525c2356a Using GetCurrentWindowRead() instead of GetCurrentWindow() 2016-06-29 10:30:42 +02:00
ocornut
fe7274b6c7 SetCursorScreenPos() fixed not adjusting CursorMaxPos as well 2016-06-29 10:25:47 +02:00
ocornut
b9b3dec7da ImGuiListClipper: Fix to behave within column (#661, #662, #716) 2016-06-29 10:19:01 +02:00
ocornut
74bbfcfaa6 ImGuiListClipper: fixed automatic-height calc path dumbly having user display element 0 twice (#661, #716)
First bug out of two. Was easily visible using e.g. 50% alpha text.
2016-06-29 10:07:36 +02:00
ocornut
297bb3fc92 NextColumn() tidying up with a sane early out 2016-06-29 09:53:02 +02:00
ocornut
ba7acdac47 Added assert to track stb_textedit.h issue (#715) 2016-06-27 12:59:49 +02:00
ocornut
c36fd541ad InputTextMultiline(): Fixed Ctrl+DownArrow moving scrolling out of bounds 2016-06-27 09:56:45 +02:00
ocornut
e06852abaf Fixed Windows default clipboard leaving its buffer unfreed on application's exit. (#714) 2016-06-26 13:24:30 +02:00
ocornut
de61fcc619 Minor bits 2016-06-25 17:03:49 +02:00
ocornut
355dae5d99 Comments amend 3c8e490778 (committed before saving last comment edit) (#703) 2016-06-25 14:37:14 +02:00
ocornut
3c8e490778 Comment on dealing with io.WantCaptureKeyboard (#703) 2016-06-25 14:28:58 +02:00
ocornut
13615a1318 InputText: render currently edited buffer from the internal buffer, toward #701 2016-06-25 13:57:05 +02:00
ocornut
2f4e2eec68 InputText, ImGuiTextFilter: using strncpy instead of printf("%s"). 2016-06-25 13:54:34 +02:00
ocornut
4621b357c1 Wrapped text: fixed incorrect testing for negative wrap coordinates, they are perfectly legal. (#706) 2016-06-19 12:50:22 +02:00
ocornut
92bff4c8d7 ColorEdit4(): better preserve inputting value out of 0..255 range, display then clamped in Hexadecimal form 2016-06-16 23:09:48 +02:00
ocornut
9cb271f4c8 Fixed minor text clipping issue in window title for when using font straying above usual line (#699) 2016-06-15 23:09:40 +02:00
ocornut
1ef7980e17 Merge branch 'master' into 2016-02-colorpicker 2016-06-15 10:05:17 +02:00
ocornut
c4db79f34b Member variable name renamed "ID" "Id" for casing consistency 2016-06-12 22:27:15 +02:00
ocornut
9f21c7189f TextUnformatted() fixed clipping bug in the large-text path when horizontal scroll has been applied (#692, #246) 2016-06-12 12:23:16 +02:00
ocornut
d79186931e ImDrawList: Fixed a (rarely occuring) bug with merging with previous command + unnecessary OverlayDrawList command 2016-06-11 15:42:10 +02:00
ocornut
3fd3eac370 Fixed TextWrapped() override wrap position is one is already set (#690) 2016-06-11 10:23:37 +02:00
ocornut
8291d7dc7c Fixed minor bug introduced in 45dacbf084 (#682)
Actually minor because nobody uses that value. Still a terrible
bug.
2016-05-31 22:34:48 +02:00
ocornut
d1c073a199 Comments, tweaks 2016-05-31 00:00:44 +02:00
ocornut
254a1a9e4c InputText: Added support for CTRL+Backspace. 2016-05-30 20:00:20 +02:00
ocornut
5d4cf1c3f3 Version 1.50 WIP 2016-05-30 19:38:36 +02:00
ocornut
adb85d800d Version 1.49 2016-05-29 19:16:44 +02:00
ocornut
3ddb50a925 Merge branch 'master' into 2016-02-colorpicker 2016-05-29 19:07:23 +02:00
ocornut
0fb51b6b4b Removed various superflous ImGui:: prefixes in internal code 2016-05-29 18:58:41 +02:00
ocornut
9886c1b43d Undo modification of ContentsRegionRect.Max, too many side-effects (undo dff078365f) 2016-05-29 18:37:26 +02:00
ocornut
dcef7dedce Comments (#590) 2016-05-29 18:24:02 +02:00
ocornut
784e1ef053 CollapsingHeader() with close button adapt to horizontal scrolling (#600) 2016-05-29 18:12:25 +02:00
ocornut
dff078365f Fix selectable/tree node not reaching right-side of contents size when horizontal scrolling is active and no explicit size is known 2016-05-29 18:08:51 +02:00
ocornut
45dacbf084 Fixed GetWindowContentRegionMax() being off by ScrollSize amount when SizeExplicit is set + caching ContentsRegionRect.
Relates to horizontal scrollbar, explicit contents size
2016-05-29 17:50:23 +02:00
ocornut
d5a12866fe Comments (#676, #655) 2016-05-29 14:00:35 +02:00
ocornut
1483a69c11 Demo: Tree: showing how to align tree node label with current x position (#324, #581) 2016-05-28 19:30:01 +02:00
ocornut
61c294bb52 Added optional Indent() Unindent() width (#324, #581) 2016-05-28 18:40:00 +02:00
ocornut
a0a48f6e59 Added TreeAdvanceToLabelPos() (#581) 2016-05-28 18:15:54 +02:00
ocornut
806a146198 TreeNodeEx(): ImGuiTreeNodeFlags_AlwaysOpen->ImGuiTreeNodeFlags_Leaf, + added ImGuiTreeNodeFlags_Bullet (#324, #581) 2016-05-28 17:12:13 +02:00
ocornut
8f4b123e1b SetNextWindowSizeConstraint -> SetNextWindowSizeConstraints (#668) 2016-05-28 14:02:14 +02:00
ocornut
213025f3cd BeginMenu: a menu that becomes disabled when open gets closed down, facilitate user's code (#126) 2016-05-28 11:14:02 +02:00
ocornut
65b1ae6ecc Comments (#335) 2016-05-22 10:20:58 +02:00
ocornut
3a776d93f2 Fixed compile issue (bloody git stashes) (#668) 2016-05-21 23:03:21 +02:00
ocornut
b7ebeb1610 Added SetNextWindowSizeConstraint() + demo code (#668) 2016-05-21 22:53:08 +02:00
ocornut
713730af0c Minor sizing refactor, should be no-op. Making it a commit for further bisection since sizing code is super brittle. (#668) 2016-05-21 20:55:28 +02:00
ocornut
102d03a7eb Resizing window doesn't rely on MouseDelta anymore, but rather recompute expected size based absolute mouse coords. (#668)
Storing ActiveIdClickOffset to generalize pattern already used by
columns.
2016-05-21 20:50:15 +02:00
ocornut
81bf5aeb09 Minor bits 2016-05-21 20:07:51 +02:00
ocornut
1dfafeb602 CheckStacksSize() added literal strings in IM_ASSERT calls to reach end-user on common failure 2016-05-17 09:36:27 +02:00
ocornut
0e51f91c5e Including limits.h again to get INT_MAX, assuming previous report of missing limits.h was erroneous (#1, yes, issue ONE!) 2016-05-16 20:27:52 +02:00
ocornut
69a29e4715 Added NewLine() (very shy reminder that #97 isn't done) 2016-05-16 20:14:07 +02:00
ocornut
47d10944a5 Build fix 2016-05-16 20:07:02 +02:00
ocornut
f291f2c5dd InputText(): Fixed cursor rendering on first character when framepadding is 0.0 (following #601) 2016-05-16 19:44:03 +02:00
ocornut
28b09199de ImGuiListClipper: removed assert (#662) 2016-05-16 19:25:42 +02:00
ocornut
7a28f5bb81 ImGuiListClipper new version, detect height automatically, fix compatibility with SetScrollPosHere (#662) 2016-05-16 19:22:51 +02:00
ocornut
e79d2828c4 Metrics window: coarse clipping the detailed vertex buffer for pleasure and benefits. 2016-05-13 23:10:16 +02:00
ocornut
f48f9a30ef ButtonBehavior(), fixed subtle old bug when a repeating button would also return true on release + comments (#656) 2016-05-13 11:13:54 +02:00
ocornut
e1e2752dcb Fixed repeating button behavior triggering twice, typically affect the +/- of InputInt/InputFloat and user repeating buttons (#656)
+ Took note of further work
Broken in 547f34cf22
2016-05-13 10:50:59 +02:00
ocornut
8d5b2fba95 Fixed TitleBg/TitleBgActive color being rendered above WindowBg color, being inconsistent and causing visual artefact (#655)
Broke the meaning of TitleBg and TitleBgActive. Only affect values where
Alpha<1.0f. Fixed default theme.
2016-05-12 23:12:55 +02:00
ocornut
ed20fcf9d5 Fixed incorrect parameter to ButtonBehavior() in Columns code - had no side-effect (#649)
Broken in 3eabad0321
2016-05-11 10:31:30 +02:00
ocornut
91f11fb1bd Comments / todos 2016-05-11 09:58:43 +02:00
ocornut
8648346eab Modal: fixed non-child window stacked over a modal losing its hoverabilty/focusability (#615, #604) 2016-05-10 17:02:10 +02:00
ocornut
b630cb5b42 ImGuiWindow: Storing ParentWindow (#615, #646) 2016-05-10 17:00:42 +02:00
Branimir Karadžić
a59a04f4d0 Fixed iOS/OSX build. 2016-05-10 01:10:31 +02:00
ocornut
aa11934efa Comments to clarify default shared ImFontAtlas and current context pointer thread-safety (#586, #591) 2016-05-08 17:12:54 +02:00
ocornut
382253eccf Merge branch 'master' of https://github.com/ocornut/imgui 2016-05-07 21:10:16 +02:00
ocornut
36ca8a8194 Minor warnings fixes. 2016-05-07 21:09:53 +02:00
omar
8af76d56b4 Merge pull request #639 from sergof/conversion-warnings
Ignore various anal GCC warnings.
2016-05-07 21:08:43 +02:00
ocornut
7b9c0a5c3f Renamed ImGuiState -> ImGuiContext (#586, #269) 2016-05-07 19:55:51 +02:00
ocornut
8b428e8c74 Added CreateContext/DestroyContext/GetCurrentContext/SetCurrentContext() (#586, #269) 2016-05-07 19:54:27 +02:00
Sergej Reich
6e8579fc14 Ignore implicit conversion warnings 2016-05-07 18:49:24 +02:00
ocornut
69cc00f91f ImGuiStorage: Added bool helper functions for completeness. 2016-05-07 18:18:37 +02:00
ocornut
313d388bba Reorganised windows moving code, documented a lag in FindHoveredWindow(), fixing lag whole moving windows (#635) 2016-05-06 11:31:32 +02:00
ocornut
67df0ba185 Updated FAQ and Readme with more prominent info about WantCaptureMouse etc. flags (#635) 2016-05-06 09:18:07 +02:00
ocornut
f22b6e1e09 Fixed/silenced various absurd GCC warnings from outer space (#626) 2016-05-04 23:28:16 +02:00
ocornut
79ad22e1f2 Fixed various Clang -Weverything warnings (#626) 2016-05-04 23:17:53 +02:00
ocornut
efedaa5df3 Updated FAQ (#628) 2016-05-04 20:49:17 +02:00
ocornut
9b79327673 BeginGroup() fixed using within Columns set (fix #630) 2016-05-04 20:22:57 +02:00
ocornut
0058492156 Fonts readme, refering to IconFontCppHeaders, AddRemapChar() function, etc. 2016-05-04 17:20:11 +02:00
ocornut
89d5026187 Renamed majority of use of "opened" to "open" for clarity. Renamed SetNextTreeNodeOpened() to SetNextTreeNodeOpen(). (#625, #579) 2016-05-02 12:32:16 +02:00
Anton Holmberg
4f34ed5010 Fix typo in Programmer guide 2016-05-01 16:18:31 -07:00
ocornut
4170b4847d Style: Changed default IndentSpacing from 22 to 21 (#581, #324) 2016-05-01 23:49:10 +02:00
ocornut
13df4668d1 Added GetTreeNodeToLabelSpacing() helper - tentative name (#581, #324) 2016-05-01 23:47:58 +02:00
ocornut
b93040e600 TreeNode: minor tidying up (#581, #324) 2016-05-01 23:46:48 +02:00
ocornut
bb674ccee6 TreeNode: added ImGuiTreeNodeFlags_AlwaysOpen flag (#581, #324) 2016-05-01 21:15:46 +02:00
ocornut
9733f4fa24 Internal RenderBullet() helper. 2016-05-01 20:19:28 +02:00
ocornut
f79b2d6ce3 TreeNode: added ImGuiTreeNodeFlags_OpenOnArrow flag (#581, #324, #190) 2016-05-01 20:12:14 +02:00
ocornut
df764c21d6 Bullet(), BulletText(): slightly bigger. less polygons 2016-05-01 20:04:48 +02:00
ocornut
470b88e965 ButtonBehavior(): ImGuiButtonFlags_PressedOnDoubleClick clears active id on double-click so that multiple flags don't trigger multiple times 2016-05-01 20:02:25 +02:00
ocornut
4c880b7106 Added ImGuiTreeNodeFlags_OpenOnDoubleClick (#581, #516, #190) 2016-05-01 17:46:08 +02:00
ocornut
a38fd2e186 Added TreeNodeEx() functions (#581, #600, #190) 2016-05-01 17:45:31 +02:00
ocornut
547f34cf22 Refactor ButtonBehavior(), fixed double-click mode also triggering on single-click (relate to #516) 2016-05-01 17:43:51 +02:00
ocornut
ac501102fc Added IsItemClicked() helper (#581) 2016-05-01 17:43:17 +02:00
ocornut
ec6471ca87 TreeNodeEx() wired the display-side ImGuiTreeNodeFlags_Selected flag (#581) 2016-05-01 16:06:46 +02:00
ocornut
ab6bc05fc3 Fixed ImGuiTreeNodeFlags_AllowOverlapMode to behave better on touch-style inputs (#600) 2016-05-01 15:44:50 +02:00
ocornut
df749e3f13 Added CollapsingHeader() variant with close button, obsoleted 4 parameters version. Refactored code into TreeNodeBehavior. (#600)
New flag and declaration makes uses of SetNextTreeNode() functions on
collapsing header more obvious as well (#579).
2016-05-01 14:34:55 +02:00
ocornut
befe02559a Added IsRootWindowOrAnyChildHovered() helper (#615) 2016-05-01 12:14:07 +02:00
ocornut
60d6c6d0e8 Comments/tweaks on ItemAdd() 2016-05-01 11:46:49 +02:00
ocornut
7406d64c64 PushClipRect(): not altering passed values, leave it to caller responsibility to floor properly (followup #582) 2016-04-30 18:55:23 +02:00
ocornut
819cc414b1 Metrics window: uses IM_COL32() macro to generate constant colors. 2016-04-28 10:25:23 +02:00
ocornut
c5149cd53c MenuItem(): checkmark render in disabled color when disabled 2016-04-27 23:34:24 +02:00
ocornut
be7621f7c5 Updated FAQ about non UTF-8 literal (#609, #613) 2016-04-26 19:23:36 +02:00
ocornut
544ba36bf6 Fixed GetFrontMostModalRootWindow() (#604) 2016-04-26 11:59:56 +02:00
ocornut
6bcc31e575 Merge branch 'master' into 2016-02-colorpicker 2016-04-26 11:06:24 +02:00
ocornut
ea6b615179 Made ImGui::PushClipRect()/PopClipRect() public. Changed ImDrawList::PushClipRect() prototype. Fixed demo. (#610) 2016-04-26 11:03:51 +02:00
ocornut
4b6e9ac396 ImFont: Added AddRemapChar() helper (#609) 2016-04-26 10:08:06 +02:00
ocornut
247da0e01b BeginGroup() comment tweaks (#608) 2016-04-25 08:45:32 +02:00
ocornut
4b51e43d60 BeginGroup() extra comment because this is overused and misleading (#608) 2016-04-24 22:52:07 +02:00
ocornut
919eb69931 Scrollbar: minor fix for top-right rounding of scrollbar background when window has menubar but no title bar 2016-04-24 22:38:30 +02:00
ocornut
7da2d51480 MenuBar fixed missing lower border 2016-04-24 22:36:46 +02:00
ocornut
a753aff07a Moved Bullet*() code below TreeNode*() code. 2016-04-24 19:38:37 +02:00
ocornut
a0c411ffd2 Fixed typos in previous commit 1884f550bc (#582, #597)) 2016-04-23 14:40:43 +02:00
ocornut
1884f550bc Fixed clipping rectangle floating point representation to ensure renderer-side ops yield correct results (#582, 597) 2016-04-23 14:22:41 +02:00
ocornut
41215534d5 Internal ImRound() -> ImFloor(), ImRect::Round() -> ImRect::Floor(), 2016-04-23 14:10:36 +02:00
ocornut
44fb99542f ImFont: RenderText() useful directly without ImDrawList::AddText().. Changed prototype. Reserving vertices after skipping non-visible lead. 2016-04-23 11:09:56 +02:00
ocornut
29e259a43c InputText() clipping cursor rendering in case it gets out of the box (which can be forced w/ ImGuiInputTextFlags_NoHorizontalScroll) (#601) 2016-04-22 08:38:56 +02:00
ocornut
7ce6c18bbe Refactored CloseWindowButton() into a CloseButton() helper declared in imgui_internal.h (#600) 2016-04-21 09:55:02 +02:00
ocornut
fc3b8d0a56 Relative order of Child windows creation is preserved during sort (#595) 2016-04-19 18:31:25 +02:00
ocornut
006934fd15 Todo items + not using function called isblank() because it may be a macro in some C library 2016-04-12 22:36:51 +02:00
ocornut
074a6853c7 Moved comments 2016-04-09 19:13:02 +02:00
ocornut
77177c18f0 Merge branch 'master' into 2016-02-colorpicker 2016-04-09 19:12:03 +02:00
ocornut
1588eda1ac Version 1.49 WIP 2016-04-09 19:10:42 +02:00
ocornut
95cbcdca3f Version 1.48 2016-04-09 17:46:48 +02:00
ocornut
4c25de950c Warning fixes for clang. Using int64_t, may be an issue? 2016-04-09 17:46:38 +02:00
ocornut
31852e1d05 Silence borderline warning with -Werror=strict-overflow
Error: assuming signed overflow does not occur when assuming that (X -
c) > X is always false [-Werror=strict-overflow]
2016-04-06 11:11:38 +02:00
ocornut
e808b7cfca Style: removed WindowFillAlphaDefault which was confusing and redundant, baked into WindowBg color. Renamed TooltipBg > PopupBG. (#337)
bg_alpha parameter of 5-parameters version of Begin() is an override,
however that function may become obsolete someday.
2016-04-04 01:37:02 +02:00
ocornut
947171dcef Fixed InputTextMultiLine(), ListBox(), BeginChildFrame(): outer frame not honoring bordering (following #462) 2016-04-04 00:30:50 +02:00
ocornut
07df3cfb3e Added ImGuiWindowFlags_AlwaysUseWindowPadding flag to ensure non-border child window uses window padding (#462) 2016-04-04 00:29:57 +02:00
ocornut
8e353af1d3 Renamed ImGuiWindowFlags_Force**Scrollbar to ImGuiWindowFlags_Always**Scrollbar (#476) 2016-04-03 23:28:05 +02:00
ocornut
f45fd1cef6 Comments 2016-04-03 16:42:35 +02:00
ocornut
4c1d4233b2 Merge branch 'master' into 2016-02-colorpicker 2016-04-03 01:10:26 +02:00
ocornut
650515ce49 Updated todo list and comments 2016-04-03 01:07:11 +02:00
ocornut
c61e08e8c4 InputText: move to next word OS X style behavior on OS X (#473) 2016-04-02 22:06:47 +02:00
ocornut
f48fc51777 IO: Added unused MultiSelectUsesSuperKey dummy field to convey semantic for OS X compatible behavior (#473) 2016-04-02 18:58:42 +02:00
ocornut
aa7a29cdbf InputText(): Added io.DoubleClickSelectsWord option for OS X compatible behavior (#473) 2016-04-02 18:57:50 +02:00
ocornut
587fc60f25 InputText/IO: Added WordMovementUsesAltKey , ShortcutsUseSuperKey for OS X Compatible behavior (#473) 2016-04-02 18:57:08 +02:00
ocornut
9e817a7c38 ColorPicker3/4: Fixed missing ID scoping (#346) 2016-03-28 23:45:23 +02:00
ocornut
6a241d4895 ColorPicker3: Fixed 2016-03-28 23:38:04 +02:00
ocornut
326c4e40f8 Merge branch 'master' into 2016-02-colorpicker 2016-03-28 23:17:13 +02:00
ocornut
cfbf06e394 Comments and moved EndFrame() for imgui_internal.h (for clarity? or extra confusion?) 2016-03-27 10:38:14 +02:00
ocornut
2b7eeba143 Trim trailing spaces 2016-03-26 15:38:52 +01:00
ocornut
d6750c87c2 Combo: display popup above if there's isn't enough space below / or select largest side (#505) 2016-03-25 23:36:43 +01:00
ocornut
7c9fa59329 Combo: Right-most button stays highlight when popup is open. 2016-03-25 22:55:45 +01:00
ocornut
aecf5d12e6 DragFloat(), SliderFloat(), InputFloat(): fixed cases of erroneously returning true repeatedly after a text input modification (#564) 2016-03-25 21:53:59 +01:00
ocornut
5b8aa0dc84 FAQ and comments about the use of ImTextureID (#562, #561, #521, #510, #497, #475) 2016-03-24 11:06:57 +01:00
ocornut
04396ed7a9 FAQ and comments about the use of ImTextureID (#562, #561, #521, #510, #497, #475 ...) 2016-03-24 11:00:47 +01:00
ocornut
d39029f3a8 Branch fix 2016-03-23 10:51:40 +01:00
ocornut
baabe3b62c Merge branch 'master' into 2016-02-colorpicker 2016-03-23 10:50:37 +01:00
ocornut
367c53967f Metrics: inspect individual triangles in drawcall 2016-03-22 21:17:24 +01:00
ocornut
37d50dccf9 Added GetFontTexUvWhitePixel() helper. 2016-03-21 22:30:32 +01:00
ocornut
a274a09955 Renamed GetWindowFont()->GetFont(), GetWindowFontSize()->GetFontSize() (related to #340) 2016-03-21 22:29:11 +01:00
ocornut
928832a5bc Various tidying up / comments, moved columns functions declarations, no functional changes 2016-03-21 22:11:43 +01:00
omar
8e8e59a942 Merge pull request #555 from DMartinek/patch-1
CheckboxFlags: Added support for passing/testing multiple flags at the same time.
2016-03-21 13:09:55 -07:00
Kyle Rocha
3f46d9b933 Renamed FindTextDisplayEnd to FindRenderedTextEnd 2016-03-21 12:33:48 -07:00
Kyle Rocha
5bffc85ba6 Exposed FindTextDisplayEnd to imgui_internal.h 2016-03-21 12:07:13 -07:00
Daniel Martinek
37716184b3 Fixed coding style. 2016-03-18 16:49:19 +01:00
Daniel Martinek
5abb39cb1f Added support for CheckboxFlags that can set multiple flags at the same time. 2016-03-18 14:02:14 +01:00
ocornut
4b7edffe8a Comments 2016-03-08 20:54:21 +01:00
ocornut
9ea093ddd0 DragFloat(): always apply value when mouse is held/widget active, so that can use a drag over an always-reseting value 2016-03-07 13:12:15 +01:00
ocornut
459af7683c Merge branch 'master' into 2016-02-colorpicker 2016-03-04 13:57:33 +01:00
ocornut
3db40903ba InputText() ImGuiInputTextFlags_CallbackAlways event set the EventFlag field of ImGuiTextEditCallbackData (#541) 2016-03-04 13:07:42 +01:00
ocornut
b816d05e33 Minor tidying up following (#516) - renamed ImGuiSelectableFlags_HandleDoubleClick to ImGuiSelectableFlags_AllowDoubleClick + comments 2016-03-03 00:30:08 +01:00
ocornut
6846873f23 Merge branch 'master' of https://github.com/zapolnov/imgui into zapolnov-master 2016-03-03 00:18:58 +01:00
ocornut
d45044fe54 CaptureKeyboardFromApp() / CaptureMouseFromApp(): allow to enforce clearing the capture flag (#533) + demo + made code a little less messy 2016-03-03 00:09:41 +01:00
ocornut
cf12bc7dea InputText: Added BufTextLen in ImGuiTextEditCallbackData. Requesting user to maintain it. Zero-ing structure properly before use. (#541) 2016-03-02 23:34:29 +01:00
ocornut
17d3c202ac BeginChild()/EndChild() fixed incorrect layout to allow widgets submitted after an auto-fit child wnidow (#540) 2016-03-02 21:46:23 +01:00
ocornut
1881cbe860 TextUnformatted: Fixed rare crash bug with large blurb of text (2k+) not finishing with a '\n' and fully above the clipping Y line. (#535) 2016-02-24 22:43:17 +01:00
ocornut
a43a9e602a ColorEdit4: support ImGuiColorEditFlags_NoSliders to display only a button (wip #346) 2016-02-21 23:55:01 +01:00
ocornut
f8fede1d8b Added ColorPicker3/ColorPicker4, refactoring ColorEdit3/ColorEdit4 adding a bunch of flags and access to picker (wip #346)
Still pretty much experimenting so may break API
2016-02-21 23:23:30 +01:00
ocornut
d1061c8799 Exposed FindWindowByName() in imgui_internal.h (missing chunk following 339b67c01a) 2016-02-21 18:10:35 +01:00
ocornut
339b67c01a Exposed FindWindowByName() in imgui_internal.h 2016-02-20 17:37:36 +01:00
ocornut
20ba769644 Allow windows with only a callback only to be functional + minor cleanup (#524) 2016-02-14 10:33:56 +01:00
ocornut
5b7a0b1b40 InputText() added comment (#526) 2016-02-11 23:00:14 +01:00
ocornut
dafedc3246 Demo: use locally defined strdup because compilers/standard librairies are an annoyance (#520) 2016-02-08 08:44:45 +01:00
Nikolay Zapolnov
a908c109c0 Added flag for selectables to handle double clicks. 2016-01-31 22:08:35 +01:00
ocornut
62fe0b59bf Updated todo list 2016-01-30 18:34:19 +01:00
ocornut
2efaa9a86f ImDrawList: fixed index overflow check broken by AddText(). Added extra assert. (#514) 2016-01-30 17:01:10 +01:00
ocornut
a3b00b79f2 Fixed removal of trailing draw command if it is a callback command 2016-01-30 16:37:30 +01:00
ocornut
b671840d15 InputTex(): Comment (#512) 2016-01-30 15:00:45 +01:00
ocornut
b1ec90d565 InputText() fixed clipping bounds of contents (#512) 2016-01-30 14:57:24 +01:00
ocornut
595684e08c Remove dependency on <new> header (#484, #504)
(Now expecting something to fail somewhere..)
2016-01-25 21:26:53 +00:00
ocornut
3ee50af57e Fixed clipping of child windows within parent not taking account of childouter clipping boundaries (including scrollbar, etc.) (#506) 2016-01-25 20:55:34 +00:00
ocornut
005b897d7d ProgressBar() handling of border size + storing border size in window structure (#503) 2016-01-24 11:00:37 +00:00
ocornut
9f6b1ace8f Tidying up internal FindBestPopupWindowPos() 2016-01-23 15:13:55 +00:00
ocornut
94dc3df956 ColorEdit4: Empty label doesn't add InnerSpacing, like other widgets (ref #346) 2016-01-23 14:57:48 +00:00
ocornut
570a9dadc4 Honoring exact width passed to PushItemWidth(), previously it would add extra FramePadding.x*2 over that width. (ref #346)
If you had manual pixel-perfect alignment in place it might affect you.
2016-01-23 12:07:26 +00:00
ocornut
8f0f71c7ba InputScalarEx(): removed unnecessary aabb computation. 2016-01-23 11:56:39 +00:00
ocornut
2a505ebb9a ColorEdit4(): removed unnecessary calls to scanf() when idle in hexadecimal edit mode. 2016-01-23 11:29:22 +00:00
ocornut
56927cbb54 Begin(): made the close button explicitly set the boolean to false instead of toggling it (#499) 2016-01-22 10:00:32 +00:00
ocornut
e585204d82 ImFontAtlas: heuristic increase texture width up to 4096 with 4000+ glyphs. Various comments (#491) 2016-01-20 10:30:28 +00:00
ocornut
3922988dea TreeNode(), CollapsingHeader() fixed not being to use "##" sequence in formatted label.
Removed DisableHideTextAfterDoubleHash hack used by Metrics window.
2016-01-16 12:25:40 +00:00
ocornut
739e73b07b CalcTextSize(): adding early out for empty displayed string (#487) 2016-01-16 12:11:57 +00:00
ocornut
fc66365805 Added overlooked test for label_size.x>0 before calling RenderText for label in a few instances (#487) 2016-01-16 12:01:18 +00:00
ocornut
85725ff9c6 Added ImGuiWindowFlags_ForceVerticalScrollbar, ImGuiWindowFlags_ForceHorizontalScrollbar flags (#476) 2016-01-10 12:01:56 +00:00
ocornut
749e8fa345 Minor optimization so that mass-calling BeginPopupContext* functions can early out more commonly without hashing ID 2015-12-31 12:11:28 +01:00
ocornut
4e3c6f64c0 Various minor fixes following a pass of cppcheck static analyzer 2015-12-30 11:45:13 +01:00
ocornut
d212401624 Fixed ImDrawList::AddRect() which used to render a rectangle 1 px too large on each axis., fixed Image(), ImageButton() as well (#457) 2015-12-27 21:31:43 +01:00
ocornut
dc4a07c49a Fixed various Clang -Weverything warnings 2015-12-26 14:59:07 +01:00
ocornut
e41568f87f Version number 1.48 WIP + Update binaries 2015-12-26 10:02:57 +01:00
ocornut
24d186753e Version number 1.47 2015-12-25 22:44:03 +01:00
ocornut
1c5aa32d2b TODO items. Moved ImDrawList::Clear* methods suggesting they aren't for end-user. 2015-12-25 17:41:45 +01:00
ocornut
e4cf44e967 Minor rebranding "ImGui" -> "dear imgui" (#21) 2015-12-24 20:00:50 +01:00
ocornut
25c9448dda imconfig.h tweak, not advertising IMGUI_INCLUDE_IMGUI_USER_INL anymore. 2015-12-24 20:00:49 +01:00
ocornut
f3b41b35c2 Initial creation of a ImGuiWindowFlags_NoBringToFrontOnFocus window push it at the front of global window list 2015-12-24 14:55:42 +01:00
ocornut
40ddf8e287 Exported high-level versions of PushClipRect / PopClipRect to imgui_internal.h (#448) 2015-12-24 14:47:11 +01:00
ocornut
fc7a3d07bb BeginPopupContextItem: fixed comment (#439) 2015-12-21 17:21:16 +01:00
ocornut
4723d97cfb Added BeginPopupContextItem() comment (#439) 2015-12-21 00:04:33 +01:00
ocornut
6102aa1375 BeginPopupContextWindow() and BeginPopupContextVoid() reopen window on subsequent click (#439) 2015-12-20 23:39:47 +01:00
ocornut
2e5577f44f Fix for popups being incorrectly positioned if their contents are larger than display and WindowPadding < DisplaySafeAreaPadding 2015-12-17 12:22:50 +00:00
ocornut
0873da85ec ImDrawList: Fixed bug with PopClipRect() sometimes altering TextureId + fixed merging of draw calls with same TextureId 2015-12-16 01:01:34 +00:00
ocornut
370de414ef TreeNode(): Fixed horizontal spacing for layout to match Bullet() (followup to #414, #282) 2015-12-13 23:42:44 +00:00
ocornut
2e5352786a Bullet(), BulletText(): vertical and horizontal alignment fixes (namely for widget sized line height). (followup to #414, #282) 2015-12-13 23:41:02 +00:00
ocornut
558430ca8f TreeNode() fixed alignment of collapse arrow to it matches bullet (broken in 4006fb77bc) 2015-12-13 22:07:01 +00:00
ocornut
5084f90a0d Added ProgressBar() (#333) 2015-12-13 21:41:45 +00:00
ocornut
9b6b1bc0f3 Added GetColorU32 helpers (previously internal and misplaced as window->Color()) 2015-12-13 19:32:37 +00:00
ocornut
7b0bf23071 Ensure that individual widgets are pixel aligned when using non pixel snapped font rendering. 2015-12-13 17:12:35 +00:00
ocornut
56c4f5b7dc MenuBar clipping rectangle fix for bordered mode 2015-12-13 16:03:52 +00:00
ocornut
b49a985324 Various adjustment for border to be inside instead of outside the window size 2015-12-13 16:01:25 +00:00
ocornut
b1b759938e Fixed SizeContents and auto-fit size not being rounded to integer, which affects border rendering when using non-default font 2015-12-13 12:52:55 +00:00
ocornut
6c7f8efe1e InputText: update mouse drag on mouse move only & key input reposition selection bounds (better fix for #429) 2015-12-11 22:37:47 +00:00
ocornut
4bfd5cd95f InputText: when keys are being input while mouse is dragging, disable mouse drag until button release (#429) 2015-12-11 22:20:16 +00:00
ocornut
de4ae2d53a Metrics: computing drawcmd bounding box handle case where buffer has been de-indexed. 2015-12-05 11:26:47 +00:00
ocornut
5dec997fbe Minor tidying up of now redundant code 2015-12-04 23:41:24 +00:00
ocornut
c80e2274f1 Renamed Color() helpers to ValueColor() - dangerously named, rarely used and probably to be made obsolete. 2015-12-04 23:39:54 +00:00
ocornut
ecc97bda7d Added SetItemAllowOverlap() exposed in imgui_internal.h only 2015-12-03 21:30:17 +00:00
ocornut
632f9ec36a Commenting asserts 2015-11-30 09:45:45 +00:00
ocornut
5f8200d52c TreeNode/CollapsingHeader: some minor cleanup of that horrible function. 2015-11-29 22:38:58 +00:00
ocornut
d1b4159b51 TreeNode/CollapsingHeader: some minor cleanup of that horrible function. 2015-11-29 22:25:13 +00:00
ocornut
9dca2ca960 Comments & spacing 2015-11-29 22:01:26 +00:00
ocornut
b7e1ae4bf9 Added comment on using PushFont() before building the font (#232) 2015-11-29 21:33:51 +00:00
ocornut
4006fb77bc TreeNode,CollapsingHeader: sizing fixes to support laying out item on same line before/after (#414, #282) 2015-11-29 20:35:58 +00:00
ocornut
546962351b Internal minor renaming 2015-11-29 20:27:48 +00:00
ocornut
6269859315 Replace OS IME (Input Method Editor) cursor on top-left when we are not text editing. 2015-11-29 14:15:07 +00:00
ocornut
5c52e9ec0d Examples: Clarified comments. Removed font merging example from comments. 2015-11-29 11:11:03 +00:00
ocornut
9735563b65 Additional comments for new users 2015-11-29 10:53:03 +00:00
ocornut
ba77166432 Demo: comments (#414) 2015-11-28 17:23:32 +00:00
ocornut
4ca34a879d Columns: Fixed bug with indentation within columns, also making code shorter/faster (#414, #125) 2015-11-28 16:36:25 +00:00
ocornut
a9009b133c Columns: Undo accidental change from 807d4ff92c 2015-11-28 15:52:57 +00:00
ocornut
e4ba6e525b Columns:: columns set with no implicit id include the columns count into the id to avoid collisions (#125) 2015-11-28 15:35:10 +00:00
ocornut
807d4ff92c Columns: minor tidying up while investigating severe issues with indenting within columns (#414) 2015-11-28 12:14:50 +00:00
ocornut
58b23b4785 Columns: avoid growing ColumnsData vector when closing a window with no columns (#125)
(Will break calling GetColumnOffset() when there's no column but it
would only have worked after the first frame anyway, so basically it
didn't work)
2015-11-26 23:07:10 +00:00
ocornut
1aac69c937 Columns: tidying up, moving OffsetT to a ImGuiColumnData structure 2015-11-26 23:01:15 +00:00
ocornut
3102c0c97e Rename internal ColumnsStartX to IndentX, makes more sense 2015-11-26 22:43:21 +00:00
ocornut
92c518a420 InputText: Added password mode via ImGuiInputTextFlags_Password (#237, #363, #374) 2015-11-19 23:09:59 +01:00
ocornut
693efccb62 ImageButton() uses FrameRounding up to a maximum of available framing size (#394) 2015-11-15 19:43:05 +01:00
ocornut
5549744e0f Minor popups comment tweak (#402) 2015-11-15 19:09:30 +01:00
ocornut
f87deff0f3 Moving stdlib.h include outside of imgui.h (#405) 2015-11-13 17:08:54 +01:00
ocornut
9243aee62c Fixed unused variable warning if asserts are compiled out. 2015-11-11 10:26:12 +00:00
Jason Wilkins
4dee8473b5 Fixed a couple of problems found by CppCat code analyzer.
* incorrect implementation of ImVec4 operator- which always gives a w value of 0
* boolean formula of ((A && B) || B) can be simplified to just (B)
2015-11-10 17:06:37 -06:00
ocornut
e4fb14a9e0 TODO notes 2015-11-08 11:00:56 +00:00
ocornut
4982cd136e Fixed Shutdown() not clearing FontAtlas if NewFrame() was never called. (#396, #303) 2015-11-07 23:10:09 +00:00
ocornut
1a42a3f91b Refactor internal SliderBehavior() to take flags instead of a bool.
Sorry!
2015-10-30 11:43:23 +01:00
ocornut
3eabad0321 Refactor - Internal ButtonBehavior() removed unnecessary boolean arg, merged into flags using ImGuiButtonFlags_NoKeyModifiers.
This is quite a risky change frankly but I'd rather refactor sooner than
later. Hopefully few people are using the internal functions.
2015-10-30 11:36:51 +01:00
ocornut
217ef444d4 ColorEdit4: Fixed broken tooltip on hovering the color button (actually fixes #373, #380) 2015-10-19 12:02:52 +01:00
ocornut
5f0db60a57 Version number 1.47 WIP 2015-10-18 20:13:01 +01:00
ocornut
72dde4d323 Version 1.46 2015-10-18 17:36:27 +01:00
ocornut
fbdcb51dde Fix to allow using SetNextWindow* functions with ImGuiSetCond_Appearing on modal windows (#377)
Also affect other popups which called FindBestPopupWindowPos() on their
second frame but it most often acts as a no-op but it wouldn't be
noticeable.
2015-10-18 17:30:53 +01:00
ocornut
8b9c0b2545 Tweaks (calling inner SetNext* functions directly from Begin) 2015-10-18 17:20:03 +01:00
ocornut
7a61b7dd57 Renamed Window LastFrameDrawn to LastFrameActive, more correct 2015-10-18 16:57:10 +01:00
ocornut
465e6839a4 ColorEdit4: hovering the color button shows correct alpha (fix #373) 2015-10-18 16:24:44 +01:00
ocornut
5b7a2149fc ColorConvertFloat4ToU32() round the floats instead of truncating them. 2015-10-18 16:09:37 +01:00
ocornut
43ff5a41be InputText(): always use live input data for display in read-only mode (fix #360) 2015-10-18 15:50:46 +01:00
ocornut
a0d24ac03d Scrollbar: background color less translucent in default style (flattened alpha) so it works better on non-WindowBg colored background. 2015-10-18 15:36:39 +01:00
ocornut
64b6e87f54 Scrollbar: fixed vertical alignment with border + no menu bar (following #365) 2015-10-18 15:35:27 +01:00
ocornut
b090d711e2 InputText: removed the need for text_end pointer in the cursor position calculation loop, allows switching buffers 2015-10-18 15:25:36 +01:00
ocornut
214e87d59c InputText: comments. 2015-10-18 12:18:28 +01:00
ocornut
bc34ac882f InputText: added comments and somehow clarified the optimized code that calculate text position + updated demo 2015-10-18 10:57:29 +01:00
ocornut
d4d2e5bc62 Added items to Todo list 2015-10-12 12:31:41 +02:00
ocornut
a5c895f791 Added SetClipboardText / GetClipboardText helper shortcuts to match MemAlloc / MemFree 2015-10-12 12:20:01 +02:00
ocornut
8eb4df0dd6 Added comments (#369 #370) 2015-10-11 17:20:07 +02:00
richardk
8a6bde3527 Fix for AltGR being send as Ctrl&Alt on german keyboards. Don't consume characters if CTRL key press is detected AND ALT key press is detected in Imgui::InputTextEx 2015-10-11 16:25:49 +02:00
ocornut
fae7b34a3f Fixed bug with handling of malformed utf-8 at the end of a non-zero terminated string range. 2015-10-09 21:47:41 +02:00
ocornut
b8281d96bd Fixed mouse release double-triggering (#359, #362) 2015-10-08 20:59:49 +02:00
ocornut
de92bc873f Scrollbar: fixed minor rendering offset when borders are enabled (fix #365) 2015-10-08 20:25:49 +02:00
ocornut
bd78892164 Fixed IsKeyReleased() and IsMouseReleased() returning true on the first frame.
Loosely related to #362
2015-10-08 15:28:09 +02:00
ocornut
e83b529846 BeginChildFrame() helper has the extra_flags parameter. 2015-10-07 00:22:44 +02:00
ocornut
d087671369 HoveredId is set via a SetHoveredID() function. Added HoveredIdAllowHoveringOthers not used by default API. 2015-10-06 19:27:24 +02:00
ocornut
06d594e86b Dummy() create an item so functions such as IsItemHovered() can be used. 2015-10-05 20:27:22 +02:00
ocornut
54805fd22a InputText: fixed crash when passing a buf_size==0 (which can be of use for read-only selectable text boxes) (#360) 2015-10-05 14:13:24 +02:00
ocornut
e031fe484c Added ImGuiWindowFlags_NoBringToFrontOnFocus behavior. 2015-10-02 19:07:04 +02:00
ocornut
f21fda1231 Scrollbar: Tweaked scrollbar inner padding for small scrollbars. 2015-09-30 21:47:44 +02:00
ocornut
6e4d959953 Window: fixed window lower-right clipping limit so it plays more friendly with both OpenGL and DirectX coordinates.
Not sure about this. Hmm.
2015-09-30 21:30:27 +02:00
ocornut
c9d51d99b4 Scrollbar: tidying up (#355) 2015-09-30 21:19:54 +02:00
ocornut
b92daf0ba2 Scrollbar: fixed rounding of background + child window consistenly have ChildWindowBg color under ScrollbarBg fill (#355) 2015-09-30 21:15:17 +02:00
ocornut
a76b75c2d5 InputFloat() fixed explicit precision modifier, both display and input were broken. 2015-09-30 15:36:17 +02:00
ocornut
ab5def6ad8 PlotHistogram: Minimum bar width ensure better rendering with lots of points (~related to #342) 2015-09-20 12:02:17 +02:00
ocornut
e268303c02 PlotLines: fixed rendering issue added in previous commit (#342) 2015-09-20 11:37:46 +02:00
Mikulas Florek
93200a6c37 fixed rendering of histogram with a lot of values 2015-09-19 21:12:26 +02:00
ocornut
fee9e07e61 Updated FAQ (#341) 2015-09-19 15:22:05 +02:00
ocornut
ff12afbd18 InputText(): fixed cursor pixel-alignment when horizontally scrolled. 2015-09-19 13:48:27 +02:00
ocornut
0e86ed9361 InputText(): fixed mouse-dragging not scroll tracking the cursor when text doesn't fit (fix #339) 2015-09-19 13:45:51 +02:00
ocornut
08bfe9bc7c Fixed assert introduced in 3b01b0a2f2 2015-09-18 15:03:44 +02:00
ocornut
c4562ac573 Fixed mouse click detection to be more friendly to DeltaTime 0.0 (#338) 2015-09-17 23:42:34 +01:00
ocornut
3b01b0a2f2 Extracted a EndFrame() function out of Render() but kept it internal/private + clarified some asserts (#335) 2015-09-16 23:48:42 +01:00
ocornut
0a1d6b6b74 InputText() fixed ignoring text inputs when ALT is pressed (#334) 2015-09-16 10:38:42 +01:00
ocornut
ec7eb05e88 ImGuiTextFilter::Draw helper return bool and resplit when filter is modified 2015-09-14 13:03:20 +01:00
ocornut
f9928e96c7 InputText(): lose cursor/undo-stack when reactivating focus is buffer has changed size 2015-09-12 00:02:59 +01:00
ocornut
7b1168eb30 Internal ImLoadFileToMemory() return void* instead of taking void** + allow optional int* file_size 2015-09-11 16:01:54 +01:00
ocornut
1793c1a991 Comments 2015-09-09 14:15:17 +01:00
ocornut
cafe8b0cd7 Comments 2015-09-09 12:42:59 +01:00
ocornut
fcbbb0070e Fixed assert introduced in dafad3903e if there are no active draw list 2015-09-09 12:39:16 +01:00
ocornut
b4f1e88860 Added ImGuiInputTextFlags_ReadOnly flag for InputText()/InputTextMultiline() (#211) 2015-09-09 09:08:08 +01:00
ocornut
f5fb5f0c1e Minor tidying, reordering functions/members/initialisation to follow same orders 2015-09-07 23:39:36 +01:00
ocornut
dafad3903e Added GetDrawData() alternative to setting a Render function. 2015-09-07 14:56:39 +01:00
ocornut
93f9ad9ddf README.md 2015-09-05 20:03:05 +01:00
ocornut
dbc7903da8 IsMouseHoveringRect() added 'bool clip' parameter to disable clipping the rectangle with the current parameters (#316) 2015-09-03 13:13:13 +01:00
ocornut
fc052e24b2 Added ImGuiWindowFlags_NoFocusOnAppearing flag (#314) 2015-09-02 19:13:25 +01:00
ocornut
965fa3cb16 Version number 1.46 WIP 2015-09-02 19:09:19 +01:00
ocornut
c9e19f8953 Version number 1.45 2015-09-01 20:34:10 +01:00
ocornut
f195bf744f Tabs to spaces 2015-08-30 22:15:33 +01:00
ocornut
71026d3655 Added GetScrollX(), GetScrollX(), GetScrollMaxX() apis + demo (#246) 2015-08-30 18:33:38 +01:00
ocornut
7a31030978 Begin() windows flags are locked on the first begin of the frame, allowing using to not bother passing flags for append 2015-08-30 18:30:54 +01:00
ocornut
bbf09fd47d Fixed initial ScrollbarX decision when no vertical scrollbar is in (#246) 2015-08-30 18:07:04 +01:00
ocornut
a3cad2ff06 BeginChild() fixed missing rounding for child sizes which leaked into layout 2015-08-30 18:06:54 +01:00
ocornut
6eed3dc7c8 GetContentRegionMax() when window content size is explicit we don't adjust it with scrollbar sizes (#246) 2015-08-30 17:46:02 +01:00
ocornut
73e73e6ef9 TextUnformatted(): simplifying 2015-08-30 17:45:05 +01:00
ocornut
e1f8fed734 Separator(): removed unnecessary computation + comment. 2015-08-30 17:25:26 +01:00
ocornut
f128a8bce1 ColumnsStartX include window->Scroll.x to simplify code (#246) 2015-08-30 17:25:10 +01:00
ocornut
8edbdb9775 Style: minor menubar bg alpha tweak. 2015-08-30 16:44:44 +01:00
ocornut
e68d3c614e Style: made scrollbars rounded by default. Because nice. (#246) 2015-08-30 16:43:08 +01:00
ocornut
65a191c005 Added optional Horizontal Scrollbar & allow user to explicitly set content width via SetNextWindowContentSize() etc (#246)
GetCursorPos, SetCursorPos, GetContentRegionMax,
GetWindowContentRegionMin, GetWindowContentRegionMax are now including
the scrolling amount. It PROBABLY shouldn't break anything for you, but
take note that SetCursorPosX(100.0f) puts you at +100 from the starting
x position which may include scrolling, not at +100 from the window left
side.
2015-08-30 16:37:56 +01:00
ocornut
9eed672725 Bullet() fixed inconsistent layout behaviour when clipped. 2015-08-30 15:42:42 +01:00
ocornut
d88b73a8b7 Added GetContentRegionAvailWidth() helper. Demo tweaks. 2015-08-30 15:35:59 +01:00
ocornut
fc13ae2aa5 Turning float ScrollY into ImVec2 Scroll - no feature change, this is just to remove some syntax noise from the following commit (#246) 2015-08-30 15:08:13 +01:00
ocornut
e0c375e7b8 Tidying up 2015-08-30 13:09:56 +01:00
ocornut
b326c8fd1f Added GetCurrentWindowRead() for functions that don't write to the window 2015-08-30 11:56:04 +01:00
ocornut
b994dd777a Fixed OpenPopup() accessing current window, effectively opening "Debug" on an empty window stack 2015-08-30 11:11:15 +01:00
ocornut
0aa353868f Minor internal shortcuts not calling GetCurrentWindow() 2015-08-30 10:49:47 +01:00
ocornut
2d565d4bfb Style: rename ScrollbarWidth to ScrollbarSize (sorry!) 2015-08-29 23:47:47 +01:00
ocornut
64fcb5e568 TreeNode() fixed IsItemHovered() being inconsistent with visual behavior (#282) 2015-08-29 18:15:42 +01:00
ocornut
65fe60f2b2 Split tree/collapsable into internal TreeNodeBehaviorIsOpened() helper (unsure..) (#282) 2015-08-29 18:13:30 +01:00
ocornut
c381d58fb1 TreeNode(): arbitrary interaction padding after text label not part of layout (#282) 2015-08-29 14:12:53 +01:00
ocornut
0a11024459 IO.WantInputCharacters -> WantTextInput (#305) 2015-08-28 15:34:53 +01:00
ocornut
b803d284c3 InvisibleButton() honor negative size consistently with other widgets that do so 2015-08-28 14:18:50 +01:00
ocornut
80ad773c87 ImDrawList: added AddBezier(), PathBezierTo() for cubic bezier curves (#311) 2015-08-28 13:18:34 +01:00
ocornut
e58f99179a Examples: OpenGL: fix for retina screens + io.DisplayFramebufferScale storage (#287) 2015-08-27 19:51:02 +01:00
ocornut
8b225923f8 Malformed UTF-8 don't terminate string, output 0xFFFD (#307) 2015-08-27 13:44:31 +01:00
ocornut
59d498f3d0 Added ColorConvertU32ToFloat4() helper and ImColor(ImU32) constructor. 2015-08-26 21:18:08 +01:00
ocornut
8cf7df7ec4 Added GetWindowHeight() for completeness + BeginGroup() comment. 2015-08-25 16:55:14 +01:00
ocornut
77b82ecad7 ImDrawList: Fixed issues with channels split/merge. Functional without manually adding a draw cmd. + Removed unnecessary parameter to Channe 2015-08-25 16:24:17 +01:00
ocornut
ad00d88923 Window clipping rect fixes (for child windows with borders among others) 2015-08-25 15:01:33 +01:00
ocornut
f0aca186cc Comments 2015-08-25 13:35:25 +01:00
ocornut
ad3c9f620d Tabs to spaces 2015-08-25 12:40:40 +01:00
ocornut
466f01b313 Fixed child windows with the ImGuiWindowFlags_NoMove flag not taking direct focus 2015-08-25 12:39:44 +01:00
ocornut
43d073db1e Metrics: showing some internal state 2015-08-25 12:22:30 +01:00
ocornut
b76353bbb1 Passing ImGuiWindowFlags_NoMove to BeginChild() allows to inhibit moving root window from this child 2015-08-25 11:54:13 +01:00
ocornut
b1987d697f Trim trailing whitespace (#305) 2015-08-24 13:50:18 +02:00
ocornut
425c6cb3a3 Remove CaptureInputCharactersFromApp and minor cleanups (#305) 2015-08-24 13:47:27 +02:00
Borislav Stanimirov
73917115a8 Added flag showing whether the GUI wants text input
Conflicts:
	imgui.cpp
2015-08-24 13:44:43 +02:00
ocornut
b28858b33b InputText: intentionally ignore character input when ctrl/alt are held (not sure if correct) (#279) 2015-08-21 00:24:47 +02:00
ocornut
bbced3f0f0 Build fix 2015-08-18 19:31:44 -06:00
ocornut
4ac4d1ac37 ImHash: defaults seed to zero + comment. 2015-08-18 19:17:09 -06:00
ocornut
97be3428f1 Added GetMousePosOnOpeningCurrentPopup(). 2015-08-15 15:10:07 -06:00
ocornut
ede5956b28 Metrics window: shows indices along with triangles count (#299) 2015-08-13 22:33:33 -06:00
ocornut
07de0448f9 ImGuiTextFilter: default parameter width=0.0f for no override, allow override with negative values 2015-08-13 21:51:34 -06:00
ocornut
42567a9516 ImGuiTextFilter::PassFilter() supports string range. Added [] helper to ImGuiTextBuffer. 2015-08-13 21:25:32 -06:00
ocornut
72d3fca52f Demo: added simple Log demo 2015-08-13 20:59:37 -06:00
ocornut
c98318a914 Renaming some argument to clarify the local vs screen coordinates 2015-08-12 22:46:39 -06:00
ocornut
f421f2f47e IsWindowHovered() takes account of window hoverability (may be disabled because of a popup) + comment
Was a dupe of IsMouseHoveringWindow() anyway, they are now "clearly"
different.
2015-08-12 22:30:07 -06:00
ocornut
0c9fcdbe71 Allow to override ImDrawIdx type (#292) 2015-08-09 11:11:39 -06:00
ocornut
915b46f1c1 Added assert on index overflow (#292) 2015-08-09 11:05:38 -06:00
ocornut
48ed0a10d7 Minor code compaction (following #296) 2015-08-09 10:54:28 -06:00