Commit Graph

  • de72e9cc87 Internals: ImLerp() helper for ImVec4 omar 2017-10-19 23:29:27 +02:00
  • f6ff373b22 Nav: #define IMGUI_HAS_NAV to ease sharing code across branches of imgui omar 2017-10-23 14:54:23 +02:00
  • 97bf2131e2 Fixed calling SetNextTreeNodeOpen() on a collapsed window leaking to next frame. omar 2017-10-23 14:37:47 +02:00
  • 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 omar 2017-10-23 12:38:39 +02:00
  • 025d4f0c97 Merge branch 'master' into navigation omar 2017-10-23 12:34:46 +02:00
  • e7922b3fa0 Factorized some code (+ declared as static function without namespace, a pattern with the Nav branch has started to use) omar 2017-10-23 12:34:15 +02:00
  • 2ef2c104a1 Begin: Minor tweaks omar 2017-10-23 11:36:43 +02:00
  • 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) omar 2017-10-23 11:26:52 +02:00
  • 6f0aa766e1 Nav: Added internal ImGuiNavReadMode_Released test for key releases. omar 2017-10-23 11:26:30 +02:00
  • d769e2515a Merge branch 'master' into navigation omar 2017-10-23 10:05:36 +02:00
  • 50f5be9266 Examples: GLFW+GL2/GL3: Minor tweaks, comments. omar 2017-10-23 10:04:38 +02:00
  • d6a9956781 Examples: DirectX9/10/11: Added WM_SYSKEYDOWN / WM_SYSKEYUP handlers so e.g. VK_MENU can be read. omar 2017-10-23 10:01:18 +02:00
  • c14a66970b Examples: DirectX9/10/11: Renamed WndProc handler to use a generic Win32 name + returning 0 to all messages is more correct. omar 2017-10-23 09:57:59 +02:00
  • cb10da02f9 Merge branch 'Gargaj-patch-1' omar 2017-10-23 09:47:49 +02:00
  • a96f095deb Examples: DirectX10, DirectX11: Using SetCapture/ReleaseCapture to get correct behavior (#1375) ps: DirectX 12 example (#302) may want to adopt that as well. omar 2017-10-23 09:46:49 +02:00
  • 3e0765ee22 Examples: DirectX9: Using SetCapture/ReleaseCapture to get correct behavior (#1375) omar 2017-10-23 09:43:13 +02:00
  • e03198bb0f Fixed compilation for #1375 + coding style fixes. omar 2017-10-23 09:08:12 +02:00
  • c36e7fae93 Merge branch 'patch-1' of https://github.com/Gargaj/imgui into Gargaj-patch-1 omar 2017-10-23 09:07:01 +02:00
  • 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) omar 2017-10-22 10:54:53 +02:00
  • b177f2432d MenuItem(): Tweak to not draw over all horizontal space when in horizontal layout mode. (#1387) omar 2017-10-22 10:36:22 +02:00
  • b52e207758 Merge branch 'inolen-atlas_build_clear_font' omar 2017-10-22 10:25:08 +02:00
  • 7f880674e5 Font: Renamed ImFont::Clear() to ImFont::ClearOutputData() for consistency with what ImFontAtlas does. DisplayOffset is set by constructor but not reset by ClearOutputData. (#1349) omar 2017-10-22 10:24:56 +02:00
  • fce41d0b55 Demo: Fixed Fonts "set as default button" not having collading id on collapsed nodes. omar 2017-10-22 10:21:49 +02:00
  • 08e411c310 Merge branch 'atlas_build_clear_font' of https://github.com/inolen/imgui into inolen-atlas_build_clear_font omar 2017-10-22 10:17:28 +02:00
  • 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) omar 2017-10-20 22:12:10 +02:00
  • 1c5b3fb1d2 Merge branch 'master' into navigation omar 2017-10-20 21:17:57 +02:00
  • f7259e60ee Comments omar 2017-10-20 21:17:51 +02:00
  • 23b9060468 Nav: Honoring ImGuiItemFlags_NoNav which is used by color picker (#787) omar 2017-10-20 20:35:39 +02:00
  • e4bb9102f9 Merge branch 'master' into navigation omar 2017-10-20 20:32:17 +02:00
  • 6ab737a4bb Popups: Fixed right-click to close popups not handling modal windows properly. (~#439) omar 2017-10-20 20:31:01 +02:00
  • 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) omar 2017-10-20 19:25:34 +02:00
  • 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) omar 2017-10-20 19:24:12 +02:00
  • 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. omar 2017-10-20 18:56:31 +02:00
  • 0ea66dc260 Fixed bad merge from Master omar 2017-10-20 18:16:53 +02:00
  • 1172ff62e1 Merge branch 'master' into navigation omar 2017-10-20 18:10:07 +02:00
  • 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) omar 2017-10-20 17:59:59 +02:00
  • 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) omar 2017-10-20 17:59:48 +02:00
  • 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. omar 2017-10-20 17:52:22 +02:00
  • 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. omar 2017-10-20 16:40:10 +02:00
  • 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) omar 2017-10-20 16:13:13 +02:00
  • 3b485cda51 Fixed a bug allowing to move a _NoMove window from a child that doesn't have the flag. (#1381) broken by e56eba44fe (#1337) omar 2017-10-20 16:09:24 +02:00
  • 87ae40843c Popups: popups can be closed with a right-click anywhere, without altering focus under the popup.(~#439) omar 2017-10-20 13:26:39 +02:00
  • 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) omar 2017-10-20 13:21:42 +02:00
  • 5f7299e15a Refactor EndFrame() code that process focusing window with left mouse button. This commit should be no-op. omar 2017-10-20 13:07:57 +02:00
  • 2a32a2e662 Demos: Tweaks of popups/context/menus section. omar 2017-10-20 12:38:48 +02:00
  • e384078d7a IO: reordering some supposedly private fields. omar 2017-10-19 22:49:36 +02:00
  • 51eed2f257 Merge branch 'master' into navigation omar 2017-10-19 19:42:27 +02:00
  • 5b699517d4 Internals: PaintVerts** renamed to ShadeVerts**, moved to imgui_draw.cpp and exposed in imgui_internal.h (+1 squashed commits) omar 2017-10-19 19:33:03 +02:00
  • 22977ffedb Documentation: Extra comments + tweaks to make usage of long-line more bearable. omar 2017-10-19 19:30:46 +02:00
  • d3c2e904d8 Internals: Added ImLinearSweep() helper. omar 2017-10-19 19:29:59 +02:00
  • 938f1b720f Merge branch 'master' into navigation omar 2017-10-19 00:04:53 +02:00
  • 370a48c10b Internals: RenderCollapseTriangle() -> RenderTriangle(), takes a ImGuiDir omar 2017-10-18 23:46:16 +02:00
  • 073dd60b4b Merge branch 'master' into navigation omar 2017-10-18 19:55:34 +02:00
  • 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) omar 2017-10-18 19:51:32 +02:00
  • 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) omar 2017-10-18 19:51:32 +02:00
  • a126c702d9 Merge branch 'master' into navigation omar 2017-10-18 13:09:28 +02:00
  • 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. omar 2017-10-17 23:31:17 +02:00
  • 1c4af303bf Internals:Helpers: Added ImSwap(int,int), exposed ImStrncpy(). omar 2017-10-17 23:18:20 +02:00
  • bf778ebb7e Checkbox: Using checkmark. MenuItem: Tweaked checkmark, thicker. omar 2017-10-18 13:06:49 +02:00
  • d96b6ecf88 Merge branch 'master' into navigation omar 2017-10-17 16:20:35 +02:00
  • 03b76bf05b Begin: Marked 5 parameters version of Begin() as obsolete. Now waiting for a riot to happen! omar 2017-10-17 16:19:21 +02:00
  • 78a85ba3fe Begin: Work toward obsoleting the 5-arguments Begin() overload. Internal BeginEx() becomes the normal public Begin() again! (4) omar 2017-10-17 16:15:46 +02:00
  • 2739b6ebcd Begin: Work toward obsoleting the 5-arguments Begin() overload. Removed bg_alpha from internal BeginEx(). (3) omar 2017-10-17 16:14:20 +02:00
  • 4aa9d2089d Begin: Work toward obsoleting the 5-arguments Begin() overload. Removed size_on_first_use from internal BeginEx(). (2) omar 2017-10-17 15:51:20 +02:00
  • 55d873875e Begin: Work toward obsoleting the 5-arguments Begin() overload. (1) omar 2017-10-17 15:47:55 +02:00
  • 839067fda9 Capture/release window in DX9 implementation GargajandGitHub 2017-10-17 12:37:21 +02:00
  • 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. omar 2017-10-16 23:36:34 +02:00
  • c76f014292 Fix IsItemHovered() issue on child by temporarily reverting 344d48be31. This is not the ideal solution. (Fix #1370) omar 2017-10-16 16:41:09 +02:00
  • af565ea828 Nav: InputTextMultiline: Fixed navigation/selection. Disabled selecting all when activating a multi-line text editor. (#787) omar 2017-10-16 02:41:28 +02:00
  • 7ea52ac1e4 Nav: InputTextMultiline: Fixed navigation/selection. Disabled selecting all when activating a multi-line text editor. (#787) omar 2017-10-16 02:30:59 +02:00
  • 82a27fd3aa Nav: InputText: Fixed using Up/Down history callback feature when Nav is enabled (#787) omar 2017-10-16 02:06:42 +02:00
  • b70c2fa887 Nav: Internals: Moved some internal code to namespace, comments omar 2017-10-16 00:46:23 +02:00
  • ae1866c424 Nav: NavProcessItem() updates current NavLayer. Basically we're hearing toward rebuilidng nav info from an id. (#787). omar 2017-10-16 00:38:42 +02:00
  • 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) omar 2017-10-16 00:36:31 +02:00
  • 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) omar 2017-10-16 00:33:30 +02:00
  • 633f60cdb2 Update README.md omarandGitHub 2017-10-15 21:30:06 +02:00
  • 83416fa5da Merge branch 'master' into navigation omar 2017-10-15 21:28:17 +02:00
  • e32569dd5a ImDrawList: Fixed a bug in ChannelsMerge() leading to an extraneous draw call being created, which unexpectly led to more dramatic condition but to faulty draw command merging code. (#1172, #1368) omar 2017-10-15 21:06:33 +02:00
  • bebc49bc2a Merge pull request #1368 from ripieces/rendering-issue-1172 omarandGitHub 2017-10-15 21:07:05 +02:00
  • 7a8eb5bdc9 Rendering issue fix Dominik Tugend 2017-10-15 19:27:53 +02:00
  • d761825cfb Nav: Renaming a field + Comments. omar 2017-10-13 22:33:06 +02:00
  • ce7b04e8b9 Removed apparently unncessary code in InputFloatN() and InputInt(). omar 2017-10-13 23:59:17 +02:00
  • 251bc6c22c Update README.md omarandGitHub 2017-10-13 21:29:31 +02:00
  • b498856c9d Update README.md omarandGitHub 2017-10-13 20:05:50 +02:00
  • dbab9b248a Update README.md omarandGitHub 2017-10-13 20:03:56 +02:00
  • db5f1b79cd Nav: ButtonBehavior() keep _displaying_ NavId item as howered when refocusing or moving window, which is consistent with IsItemHovered() and reduce noise/flicker (#787) omar 2017-10-13 19:18:59 +02:00
  • c42baf392a Reluctantly exposed GetActiveID(), GetHoveredID() in imgui_internal because the demo code will need it. omar 2017-10-13 16:48:14 +02:00
  • 53780a4fcc Nav: Shallow tweaks. omar 2017-10-13 16:23:44 +02:00
  • f852b9a52a Exposed Scrollbar() in imgui_internal.h and removed a bool arg omar 2017-10-13 13:29:42 +02:00
  • b667d5a9e7 Nav: Internals: Renamed ImGuiButtonFlags_NoNavOverride to ImGuiButtonFlags_NoNavFocus + fixed a theorically missing test in ButtonBehavior() (#787) omar 2017-10-13 13:26:02 +02:00
  • 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(). omar 2017-10-13 13:23:21 +02:00
  • 8b095e483b Internals: Moved SetNavID() and renamed casing to be consistent with stuff exposed in imgui_internal.h omar 2017-10-13 13:07:45 +02:00
  • 4be967823f Exposed Scrollbar() in imgui_internal.h and removed a bool arg omar 2017-10-13 13:29:42 +02:00
  • 48498b337d Internals: SetActiveID window cannot be NULL omar 2017-10-13 13:07:07 +02:00
  • 4548bcb5c9 Nav: commiting shallow bits to reduce noise from working copy/upcoming commit. omar 2017-10-12 02:09:13 +02:00
  • 17519c313a Nav: Extract part of NavUpdate() into a saner NavUpdateWindowingTarget() (#787) omar 2017-10-11 20:47:41 +02:00
  • 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) omar 2017-10-11 20:37:45 +02:00
  • f0d437dd9c Nav: SetActiveId() uses SetActiveIDNoNav() to avoid duplicating logic. (#787) omar 2017-10-11 20:29:53 +02:00
  • 2047c58efb Nav: Extract part of NavUpdate() into a saner NavScrollToBringItemIntoView() (#787) omar 2017-10-11 20:28:16 +02:00
  • 7a14d7dfdc Nav: More consistently drawing a (thin) navigation rectangle hover filled frames such as tree nodes, collapsing header, menus. (#787) omar 2017-10-11 19:05:36 +02:00