626 Commits (d5400d9517090dd99893ebb5147971288269efce)

Author SHA1 Message Date
omar f0364aa359 Merge branch 'context'
# Conflicts:
#	examples/allegro5_example/main.cpp
#	examples/directx10_example/main.cpp
#	examples/directx11_example/main.cpp
#	examples/directx9_example/main.cpp
#	examples/marmalade_example/main.cpp
#	examples/opengl2_example/main.cpp
#	examples/opengl3_example/main.cpp
#	examples/sdl_opengl2_example/main.cpp
#	examples/sdl_opengl3_example/main.cpp
#	examples/vulkan_example/main.cpp
7 years ago
omar 7e32fc7109 Nav: Toward automatically mapping keyboard input. Renamed ImGuiNavInput_PadXXX to ImGuiNavInput_XXX. Renamed ImGuiNavInput_KeyXXX to ImGuiNavInput_KeyXXX_ (internal). (#787) 7 years ago
omar cea8017e0b Merge branch 'master' into context 7 years ago
omar db071184a0 Merge branch 'master' into navigation
# Conflicts:
#	imgui.cpp
#	imgui_internal.h
7 years ago
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) 7 years ago
omar e6926d9f7c Internals: Refactored bool LastItemRectHovered into flags. (#1597) 7 years ago
omar ce2b8d3255 Nav: Comments, removed extraneous parameter. 7 years ago
omar 0c0d811859 Nav: SetItemDefaultFocus() doesn't make the navigation cursorr highlight visible. Renamed NavInitResultExplicit to NavInitRequestFromMove. (#787) 7 years ago
omar e5e3cc617e Nav: Maintaining a NavActivatePressedId field that widget can conveniently use along with NavActivateDownId. 7 years ago
omar f35734c925 Nav: Debugging code. (#787) 7 years ago
omar 8ad88f725c Nav: Minor tidying up. (#787) 7 years ago
omar bed55a41e1 Internals: ImRect: Added IsInverted() helper. 7 years ago
omar e2654a097b ImRect: added IsInverted() helper. 7 years ago
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) 7 years ago
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) 7 years ago
omar 950f260a32 Nav: Fixed Selectable/MenuItem Nav Highlight from using rounding when outer highlight stays square. (#787) 7 years ago
omar 79ff3c2d49 Merge branch 'master' into navigation 7 years ago
omar 07163804df Internals: Renamed CloseInactivePopups() to a better ClosePopupsOverWindow(). Exposed in imgui_internal.h 7 years ago
omar fd6d8863f7 Nav: SetFocusID() clears NavInitRequest for consistency (repro would a same frame interaction / race condition). (#787) 7 years ago
omar 8cc2dbc3bd Internals: Nav: Extracted code into IsWindowNavFocusable(). (#787) 7 years ago
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. 7 years ago
omar 27980d9688 Merge branch 'master' into context 7 years ago
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) 7 years ago
omar c8d8dc7f0a Nav: Internals: Renamed RootNavWindow to NavRootWindow (#787) 7 years ago
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.
7 years ago
omar 1cf38d0334 Internals: Nav: Renamed ImGuiNavForward enum (#787) 7 years ago
omar 4654040bcb Nav: Comments, added enum to clarify NavForward code. (#787) 7 years ago
omar 3ded262776 Merge branch 'master' into navigation 7 years ago
omar 04d5783ffd Nav: Cleaning up + using ImGuiInputSource source enum instead of a silly bool. (#787) 7 years ago
omar f2d5300408 Nav: Keyboard: Added CTRL+TAB (and CTRL+Shift+TAB) style window selection. (#787) 7 years ago
omar 8bf0c89c0d Internals: ImRect::Contains(ImRect&) include boundaries (whereas Contains(ImVec2) should not). 7 years ago
omar d404b93b6b Nav: Mouse clicking on a window (to select/move) disables hides nav highlight. (#787) + comments 7 years ago
omar f3776055d6 Merge branch 'master' into context 7 years ago
omar 28671aa821 Nav: Internals: Moved some enums and functions to internals, renamed ImGuiNavReadMode to ImGuiInputReadMode as well. (#787) 7 years ago
omar d500113f1d Merge branch 'master' into navigation
# Conflicts:
#	imgui.cpp
#	imgui_demo.cpp
7 years ago
omar 9a76fd30fd Added SetNextWindowBgAlpha() helper. (#1567) particularly helpul with the marking of the old 5-parameters version of Begin() as obsolete. 7 years ago
omar db2ba13154 Internals: Exposed SetCurrentFont() in imgui_internal.h 7 years ago
omar 1acb155419 Internals: Moved unnecessary MovingWindowMoveId field. 7 years ago
omar 9edf211c0e Merge branch 'master' into navigation 7 years ago
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)
7 years ago
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) 7 years ago
omar 8877622fa8 Merge branch 'master' into navigation
# Conflicts:
#	imgui.cpp
7 years ago
omar c2ffce3e5a Drag and Drop: Fix comment. Removed IMGUI_PAYLOAD_TYPE_DOCKABLE from master branch. (#143) 7 years ago
omar cc15512bfc InputText: Minor tweak. 7 years ago
omar a221d253f3 Nav: Comment. 7 years ago
omar 472ba1394c Merge branch 'master' into navigation
# Conflicts:
#	imgui.cpp
7 years ago
omar 28a76af185 Internal: DrawData: Tidying, renaming. 7 years ago
omar a77913054f Merge branch 'master' into navigation
# Conflicts:
#	imgui.cpp
#	imgui_internal.h
7 years ago
omar 1182174d81 Internals: DrawData: We don't need an intermediate layer for popups. 7 years ago
omar 038453258e Internals: DrawData: Refactored chunks into a ImDrawDataBuilder we can reuse. 7 years ago
omar 061d8df033 MIssing IMGUI_API for a type with non-inline methods. 7 years ago
omar 06eef2ce6f Internals: DrawData: renamed fields only (committing separately so that next commit is less nosiy). 7 years ago
omar 514d30d8cd MovingWindow: Track click offset based on MovingWindow and not its RootWindow. Followup to 3849bb4470. Comments + adding a local to ease patch #1345. 7 years ago
omar db63e71f13 Internals: Exposed SetCurrentFont() in imgui_internal.h 7 years ago
omar 1493de4f81 Internals: Merge of harmless stuff from Navigation stuff. Added GetHoveredID() internal helper. 7 years ago
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) 7 years ago
omar c9be7d7254 Merge branch 'master' into navigation
# Conflicts:
#	imgui.cpp
#	imgui_internal.h
7 years ago
omar 0a98202714 Nav: Standardized FIXME-NAV marker. 7 years ago
omar 16285603f2 Internals: Initializing fields in same order as declaration order + fixed uninitialized DragDropAcceptIdCurrRectSurface (was harmless) 7 years ago
omar 919fc548ad Merge branch 'master' into navigation 7 years ago
omar 0cabd81071 Internals: Rect: Added ClipWillFull helper + comments on variations. 7 years ago
omar 92d75c44bc Internals: ImVec2 versions of ImMin, ImMax inline float version for a faster full-on-debug-no-inline experience. 7 years ago
omar 3f4eccf154 Merge branch 'master' into navigation
# Conflicts:
#	imgui.cpp
7 years ago
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) 7 years ago
omar deab2ab015 Popups: Gently handle the user mistakenly calling OpenPopup() every frame. (when reopen_existing is true). (#1497) 7 years ago
omar 69ff65f054 Internals: Popup: Renaming fields. 7 years ago
omar 3678307cd9 Popup, Menus: Tweaks and comments. 7 years ago
omar 369189b675 Internals: Popup: Explicitely setting up ImGuiPopupRef reduces confusion. 7 years ago
omar a34490239c Internals: Popup: Separating MousePosOnOpen and PopupPosOnOpen. They are equal in the master branch but different in the navigation branch. 7 years ago
omar 95b773370f Revert "Internals: Added LastActiveId, LastActiveIdTimer. (#1537)" Will come up with a better design later.
This reverts commit 007f4034c9.
7 years ago
omar 007f4034c9 Internals: Added LastActiveId, LastActiveIdTimer. (#1537) 7 years ago
omar 29c194b2a4 Merge branch 'master' into navigation
# Conflicts:
#	imgui.cpp
7 years ago
omar 4fc9f44073 Merge of minor left-overs from private work branch to reduce drifts. Should be functionally a no-op. 7 years ago
omar b2ec0741f1 Internals: Settings api tweaks 7 years ago
omar 2b8224692e Merge branch 'master' into navigation 7 years ago
omar f9b2058d5a Internals: Renamed ImGuiSimpleColumns to ImGuiMenuColumns to avoid confusion. Reduced internal buffer size (we only use 3 slots). 7 years ago
omar 96ccc484f9 Merge branch 'master' into navigation
# Conflicts:
#	imgui_internal.h
7 years ago
omar 3c6fbe0849 Renamed ImGuiSizeConstraintCallback to ImGuiSizeCallback, ImGuiSizeConstraintCallbackData to ImGuiSizeCallbackData. 7 years ago
omar 7fcbd45500 Internals: NextWindow: Renamed, moved functions to member. 7 years ago
omar e339949de1 Internals: NextWindow: Using ImGuiCond for consistency. 7 years ago
omar 04b44398eb Internals: refactored g.SetNextWindow fields into g.NextWindow. structure (so it can be more easily transported/copied) 7 years ago
omar 7a15fc8de5 Merge branch 'master' into navigation 7 years ago
omar 6ec00a366a Internals: ImRect: Minor formatting tweaks. 7 years ago
omar fbf2435f38 Exposed IM_OFFSETOF() helper in imgui.h 7 years ago
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.
7 years ago
omar c4e6d622c1 Merge branch 'master' into navigation
# Conflicts:
#	imgui.cpp
#	imgui.h
7 years ago
omar 49eed6e2d1 Version 1.54 WIP 7 years ago
omar 436cad4bca Merge branch 'master' into navigation
# Conflicts:
#	imgui.h
7 years ago
omar e916310b2e Version 1.53 7 years ago
omar 67191badc2 Merge branch 'master' into navigation 7 years ago
omar bb8dfe4a34 Fixed incorrect IM_DELETE macro (9cda86d55a) (#1517, #484, #504) 7 years ago
omar ffb4f6ca8c Merge branch 'master' into navigation 7 years ago
omar 9cda86d55a Internals: Added IM_NEW, IM_DELETE helper macros (#1517, #484, #504) 7 years ago
omar 1f26652944 Various zealous warning fixes (thanks Clang). 7 years ago
omar 287380261c Merge branch 'master' into navigation
# Conflicts:
#	imgui.cpp
7 years ago
omar c8c872c753 Internals: String functions uses size_t in their signature 7 years ago
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. 7 years ago
omar 4c2514dc29 Merge branch 'master' into navigation 7 years ago
omar b9391d1692 Columns: Internal: Columns have their no set of flags so NoResize can be setup by internal code. (#125) 7 years ago
omar cc3192f347 Merge branch 'master' into navigation
# Conflicts:
#	imgui_internal.h
7 years ago
omar ddbcda8c1b Columns: Column width data is no longer lost while dragging toward the right side. (#1499, #125) 7 years ago
omar e8e84a6ad6 Columns: Added internal tracking of a few flag temporarily, to facilitate the work of third-parties who have columns patches. (#125) 7 years ago
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) 7 years ago
omar b016215c80 Columns: Refactor: Not using statestorage lookup anymore. (#125, #1499) 7 years ago
omar 3a31a75e3b Columns: Refactor: Renamed all members. (#125, #1499) 7 years ago
omar 78320aa633 Columns: Refactor: Moved columns data into their own data structure. Minimum changes now to ease diffing. (#125, #1499) 7 years ago
omar 16fb58984f Merge branch 'master' into navigation 7 years ago
omar 90d0b8b58b Navigation: minor sync to reduce drifts between changes 7 years ago
omar 8b59ed0708 Drag and Drop: Exposed some internals. 7 years ago
omar 7c7a7baf76 Merged miscellaneous small stuff (from nav/dock branches). 7 years ago
omar fa9327ccf8 Merge branch 'master' into navigation
# Conflicts:
#	imgui.cpp
#	imgui.h
#	imgui_draw.cpp
#	imgui_internal.h
7 years ago
omar d0a1be0de0 Merge branch 'drag_and_drop' 7 years ago
omar 3ea5e67ba2 Merge branch 'master' into navigation
# Conflicts:
#	imgui.cpp
#	imgui_demo.cpp
7 years ago
omar 28bbf1ade6 Fixed ParentWindow setup which broke Modal windows (fix c65124f415) 7 years ago
omar 052b6021dd Merge branch 'master' into drag_and_drop
# Conflicts:
#	imgui.cpp
#	imgui.h
#	imgui_internal.h
7 years ago
omar 0a3db267c3 Merge branch 'master' into navigation
# Conflicts:
#	imgui.cpp
#	imgui.h
#	imgui_demo.cpp
#	imgui_internal.h
7 years ago
omar c22657985a Added GetFrameHeight() function (used to be SmallSquareSize internally) 7 years ago
omar ee7f1921e8 Internals: Added GetSmallSquareSize() 7 years ago
omar c65124f415 Internals: ParentWindow is now NULL for non-child windows and means what everyone expects. 7 years ago
omar f42d7b89e2 Internals: Removed misleading GetWindowParent() function. + renaming to clear confusing. 7 years ago
omar 4a555d35f0 IsWindowHovered(): split ImGuiHoveredFlags_FlattenChild into separate ChildWindows and RootWindow flags. Allowing more combination and a better symetry with IsWindowFocused() flags. (#1382) 7 years ago
omar 45f440bb7d Internals: Renamed ImGuiButtonFlags_FlattenChilds -> ImGuiButtonFlags_FlattenChildren, ImGuiButtonFlags_AllowOverlapMode -> ImGuiButtonFlags_AllowItemOverlap 7 years ago
omar 2b9d8ab91d Merge branch 'master' into drag_and_drop
# Conflicts:
#	imgui.cpp
#	imgui.h
7 years ago
omar d1db229907 Merge branch 'master' into navigation
# Conflicts:
#	imgui_demo.cpp
7 years ago
omar e3e0326ea9 Exposed BeginCombo() publicly. 7 years ago
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) 7 years ago
omar a6f37287d8 Merge branch 'master' into navigation
# Conflicts:
#	imgui.cpp
7 years ago
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. 7 years ago
omar 7bf85db6c4 Drag and drop: Added COL3F payload for color without alpha overwrite. Exposed standard color payload types in imgui.h (#143) 7 years ago
omar 553b0fcf8f Merge branch 'master' into navigation
# Conflicts:
#	imgui.cpp
7 years ago
omar 45466a8cf9 Internals: BeginCombo() added dummy ImGuiComboFlags. 7 years ago
omar e6215b6ca0 Merge branch 'master' into navigation + merge fix
# Conflicts:
#	imgui.cpp
7 years ago
omar 8959c64b33 Internals: Cleanup FindBestPopupWindowPos() to be more digestible, since we are bounds to rework the logic there. No functional changes intended 7 years ago
omar 2fc6a82665 Merge branch 'master' into navigation
# Conflicts:
#	imgui.cpp
#	imgui.h
7 years ago
omar beda5fc5a0 Fixed scrollbar enable/disable calculation when size is modified programmatically. This is the generalization of the fix in 2df8fa95df. 7 years ago
omar e103fe8c1f Tweak four-corners resize grip code. Added ImRect::FixInverted() helper. (#822) 7 years ago
omar 729333293c Merge branch 'master' into navigation
# Conflicts:
#	imgui.cpp
#	imgui.h
7 years ago
omar b9dc0caee3 Tweak four-corners resize grip code. Added ImRect::FixInverted() helper. (#822) 7 years ago
omar 364251146b Merge branch 'master' into navigation
# Conflicts:
#	imgui.cpp
7 years ago
omar 16d9fa30b2 Merge branch 'master' into drag_and_drop 7 years ago
omar c860a0a85c Internals: ImRect: Added IsFinite() helper. 7 years ago
omar 81cbaef806 Merge branch 'master' into navigation 7 years ago
omar 52e475230f Settings: Internals: Renaming. 7 years ago
omar 7ae71e4984 Settings: Internals: Added FindSettingsHandler() 7 years ago
omar 35eb5c5c99 Settings: Internals: Exposed FindWindowSettings(). Simplified some code. 7 years ago
omar 963259d128 Settings: Internals: Renamed ImGuiSettingsWindow to ImGuiWindowSettings. 7 years ago
omar 63712d5f5c Merge branch 'master' into drag_and_drop 7 years ago
omar 9191b17218 Merge branch 'master' into navigation 7 years ago
omar f3ec608c19 Settings: Initializing ImGuiSettingsWindow so external users don't end up with uncleared data. Exposed MarkIniSettingsDirty() in imgui_internal.h 7 years ago
omar 7e2d0d734c Settings: basic refactor so that additional data structures can be loaded/saved. Parser/saver is still the minimum viable poor-man parsing. 7 years ago