Commit Graph

3371 Commits

Author SHA1 Message Date
omar
1a0d2578a1 Viewport: Merging fixes + relying on multiple viewport overlaps. Follow-up to previous attempts are reworking the split/merge mechanisms. (#1542) 2018-11-26 21:35:44 +01:00
omar
c93e92671a Viewport: Fixes moving child menu viewport (fix 379733a). 2018-11-26 16:55:40 +01:00
omar
5261e5a6ba Merge branch 'master' into viewport
# Conflicts:
#	examples/imgui_impl_sdl.cpp
2018-11-26 14:53:51 +01:00
omar
379733aba1 Viewport: Fix viewport regression with protruding child window creating their own viewport. (fixes cae4d02, 760c1d95) (#1542) 2018-11-26 14:53:04 +01:00
omar
d8ab2c1ac9 Viewport: Added support for minimized window which caused problem when ImGuiBackendFlags_HasMouseHoveredViewport was not supported. (#1542) + todo 2018-11-23 16:55:33 +01:00
omar
862781b195 Viewport: Avoid unnecessary reapplying platform pos/size every frame. (#2205) + Fix GLFW ImGui_ImplGlfw_CreateWindow() from not applying position immediately. Clear LastNameHash properly (bug already fixed in Docking branch) 2018-11-23 16:35:17 +01:00
omar
cae4d020dc Viewport: Merging/Extracting to/from main host viewport is now performed based on current state rather than triggers. Windows which don't fit in host window are now consistently in their own viewport. Toward simplifying the UpdateSelectWindowViewport() function. Probably broke something.. (#1542) 2018-11-22 21:18:14 +01:00
omar
1f78e08427 Viewport: UpdateTryMergeWindowIntoHostViewport() calls BringWindowToDisplayFront() - possible now that BringWindowToFocusFront() is a different function. 2018-11-22 21:16:43 +01:00
omar
d27ffefbd4 Version 1.67 WIP 2018-11-22 18:59:57 +01:00
omar
d9c54826bb Viewport: Stop relying on viewport->CreatedPlatformWindow to create Platform_DestroyWindow and Renderer_DestroyWindow. Explicitly require Platform_GetWindowFocus() to require supporting empty data. 2018-11-22 17:27:35 +01:00
omar
d87b80c6c1 Merge branch 'master' into viewport
# Conflicts:
#	imgui.cpp
2018-11-22 15:28:27 +01:00
omar
da3c4330c1 Version 1.66 2018-11-22 15:11:52 +01:00
omar
cc4b1f9e47 Nav: Fixed explicit directional input not re-highlighting current nav item if there is a single item in the window and highlight has been previously disabled by the mouse. (#787) 2018-11-21 16:07:04 +01:00
omar
b9ae9bb1e3 Internals: Using GetOverlayDrawList(ImGuiWindow*) to match syntax of viewport/master branches. Fixed compiling with IMGUI_DEBUG_NAV_RECTS 2018-11-21 15:37:29 +01:00
omar
50c43d1c8e Removed unnecessary ImGui:: prefixes. 2018-11-15 16:43:05 +01:00
omar
6b4443755d Internals: Added FindWindowByID() helper. (#2190) 2018-11-15 16:41:48 +01:00
omar
dcbf976a8e Merge branch 'master' into viewport + comments
# Conflicts:
#	examples/imgui_impl_opengl3.cpp
#	imgui.cpp
2018-11-15 13:58:46 +01:00
omar
aa668c410a Nav: Fixed an assert in certain circumstance (mostly when using popups) when mouse positions stop being valid. (#2168) + adding a else block to make NavCalcPreferredRefPos() more explicit. 2018-11-15 13:56:27 +01:00
omar
f2d577c33f Viewport: BeginMainMenuBar(): explicitly set viewport to avoid creating new one when ImGuiConfigFlags_ViewportsNoMerge is set + misc shallow changes. 2018-11-13 22:14:40 +01:00
omar
19b4fcdacb Made IsWindowFocused() work outside of NewFrame()-EndFrame() and added comments about how ImGuiFocusedFlags_AnyWindow should NOT be used in place of io.WantCaptureMouse. (#2185) 2018-11-13 11:23:15 +01:00
omar
797f2044cd Viewport: Fixed SDL+OpenGL2 example to work with multi-viewports. (#2175) 2018-11-06 09:51:09 +01:00
omar
52ca91ca57 Merge branch 'master' into viewport 2018-11-05 17:29:31 +01:00
omar
c808eb92c6 Config: Added IMGUI_DISABLE_WIN32_FUNCTIONS to disable linking with _any_ Win32 function, as a general forward compatible measure. 2018-11-05 17:28:00 +01:00
Torkel Bjørnson-Langen
1441756a0f Doc: Fixed comments referring to LoadFromFileTTF() instead of AddFontFromFileTTF() (#2153) 2018-11-05 14:17:51 +01:00
omar
50f6e12d31 Merge branch 'master' into viewport
# Conflicts:
#	imgui.cpp
2018-10-25 23:41:13 +02:00
omar
12c72d2893 Fixed OpenGL texture loading example in comment + Discourse link to root of discourse 2018-10-25 21:32:29 +02:00
omar
a72d5ada61 Misc comments improvements 2018-10-25 19:02:43 +02:00
omar
ac9aaf4b6e Comments in demo and opengl code + Internals: Added HoveredIdNotActiveTimer tracking hovering time unless the item is active, which is a commonly useful pattern. 2018-10-25 17:45:48 +02:00
omar
f270c81c49 Viewport, Docking: Fixed incorrectly setting the ImGuiViewportFlags_NoInputs flag, affecting split docking node. (#2109) 2018-10-23 18:26:45 +02:00
omar
056af2b1af Merge branch 'master' into viewport
# Conflicts:
#	imgui.cpp
#	imgui.h
2018-10-18 10:56:26 +02:00
omar
5be915d6ab Added ImGuiWindowFlags_NoMouseInputs which is basically the old ImGuiWindowFlags_NoInputs (essentially we have renamed ImGuiWindowFlags_NoInputs to ImGuiWindowFlags_NoMouseInputs). Made the new ImGuiWindowFlags_NoInputs encompass both NoMouseInputs+NoNav, which is consistent with its description. (#1660, #787) 2018-10-15 18:23:18 +02:00
omar
90b50bd4c3 Window: Added ImGuiWindowFlags_NoBackground flag for consistency and to ease creating new flag combinations. Added ImGuiWindowFlags_NoDecoration helper flag which is essentially NoTitleBar+NoResize+NoScrollbar+NoCollapse. (#1660) 2018-10-15 18:16:49 +02:00
omar
69db792bf0 Viewport: Exposed GetOverlayDrawList(ImGuiViewport* viewport) in public API. (#1542, #1660, #1878, etc.) 2018-10-15 17:38:36 +02:00
omar
e73217d6f7 Merge branch 'master' into viewport
# Conflicts:
#	examples/imgui_impl_sdl.cpp
#	imgui.cpp
2018-10-12 15:50:48 +02:00
omar
ca753829cb Revert using wchar_t functions (9cf94d5 + 2eaf5b0). Big mistake, wchar_t is not guaranteed to be 16-bits. 2018-10-12 15:48:38 +02:00
omar
28953208d4 Tests: Added imgui-test engine hooks (experimental). 2018-10-12 15:47:15 +02:00
omar
9cf94d5dd6 RenderText(), InputTextMultiline(): Optimization for large text by using memchr, wmemchr, wcschr when appropriate. 2018-10-12 12:34:47 +02:00
omar
0fe48cbb61 Renamed misc/stl/imgui_stl.h,.cpp to misc/cpp/imgui_stdlib.h in prevision for other files.(#2035, #2096)
Added misc/README file.
2018-10-12 11:16:51 +02:00
omar
ed4dcd9072 Shutdown: Unlock font atlas before destroying context, so we can destroy a context between NewFrame and EndFrame if we wait (facilitate main loop structures). Internals: GetWindowScrollMaxX(), GetWindowScrollMaxY() 2018-10-11 22:38:26 +02:00
omar
15ec78e9d8 Internal: Moved stored window name update code to the first_begin_of_the_frame block. This will be useful in the Docking branch. 2018-10-11 21:32:20 +02:00
omar
cf0afb48ac TextUnformatted: Using memchr(), fixed not properly testing for text_end bound + comments.
Internals: Added ImStreolRange() + used in LogRenderedText() + comments.
2018-10-11 12:53:10 +02:00
omar
d02b11dfbd ImGuiTextBuffer: Avoid heap allocation when empty. 2018-10-11 12:08:09 +02:00
omar
1efafa1d29 Comments + internal using Tab Stop terminology (ImGuiItemFlags_NoTabStop instead of !ImGuiItemFlags_AllowKeyboardFocus) 2018-10-10 12:09:06 +02:00
omar
3a7828de6b Viewport: Added ImGuiConfigFlags_ViewportsDecoration to re-enable platform decoration (#1542) 2018-10-09 18:35:45 +02:00
omar
33b88a0339 Merge branch 'master' into viewport
# Conflicts:
#	imgui.cpp
2018-10-02 18:55:36 +02:00
omar
fbfe193fcd Window, Inputs: Fixed resizing from edges when io.MousePos is not pixel-rounded by rounding mouse position input. (#2110) 2018-10-02 18:49:55 +02:00
omar
ae7f833c69 Window: Resizing from edges (with io.ConfigResizeWindowsFromEdges Beta flag) extends the hit region of root floating windows outside the window, making it easier to resize windows. Resize grips are also extended accordingly so there are no discontinuity when hovering between borders and corners. (#1495, #822, #2110) 2018-10-02 18:43:10 +02:00
omar
e623be998d Drag and Drop: Added GetDragDropPayload() to peek directly into the payload (if any) from anywhere. (#143) 2018-10-01 15:53:18 +02:00
omar
3dcd552628 Fixed extraneous static attribute. (#2105) 2018-09-27 13:01:51 +02:00
Loïc HAMOT
9aae21483a Fix missing IMGUI_API and mismatching namespace internal's CreateNewWindowSettings (#2105) 2018-09-27 12:59:22 +02:00
omar
6cc380fc41 Merge branch 'master' into viewport
# Conflicts:
#	examples/imgui_impl_win32.cpp
#	examples/imgui_impl_win32.h
#	imgui.cpp
2018-09-26 21:34:52 +02:00
omar
61d94ff88e Renamed SetScrollHere() to SetScrollHereY(). Kept redirection function (will obsolete). 2018-09-26 21:30:37 +02:00
omar
a7d3ae8937 BeginChild(): Fixed BeginChild(const char*, ...) variation erroneously not applying the ID stack to the provided string to uniquely identify the child window. This was undoing an intentional change introduced in 1.50 and broken in 1.60. (#1698, #894, #713) + reworked the Begin/BeginChild comments in imgui.h. 2018-09-26 21:24:42 +02:00
omar
1127804109 Viewport: Misc tweaks. 2018-09-24 10:39:15 +02:00
omar
5eabf44021 Nav: Use Platform_SetWindowFocus when CTRL+Tabbing to another viewport. 2018-09-21 11:49:43 +02:00
omar
132d8c5a99 Viewport: Increased threshold for setting ImGuiViewportFlags_NoFocusOnAppearing. (#1542), 2 doesn't seem enough with some docking setup. 2018-09-14 11:37:17 +02:00
omar
85a3fb3bef Viewport: Fix an issue introduced on ~August 16, which would assert when viewport are disabled. Also made the DestroyPlatformWindow process more sturdy. (#1542) 2018-09-13 17:11:06 +02:00
omar
f29b3b4033 Nav: Added a way for code to cancel Alt for menu toggle (ImGuiNavInput_KeyMenu_). Cancelling out on platform window. close request. (#1542, #787) 2018-09-11 15:35:53 +02:00
omar
df65d4a14f Merge branch 'master' into viewport
# Conflicts:
#	imgui.cpp
#	imgui_internal.h
2018-09-11 11:18:46 +02:00
omar
e2436ca625 Nav, Focus: Fixed ImGuiWindowFlags_NoBringToFrontOnFocus windows not being restoring focus properly after the main menu bar or last focused window is deactivated. 2018-09-10 20:40:21 +02:00
omar
062b1f0463 Fixed calling SetNextWindowSize()/SetWindowSize() with non-integer values leading to accidental alteration of window position. We now round the provided size. (#2067) 2018-09-07 22:30:46 +02:00
omar
2eaf722fd7 Fixed calling DestroyContext() always saving .ini data with the current context instead of the supplied context pointer. (#2066) 2018-09-07 17:24:56 +02:00
omar
eb7033e75b Version 1.66 WIP 2018-09-06 21:44:59 +02:00
omar
b974fffea0 Merge branch 'master' into viewport
# Conflicts:
#	imgui.cpp
2018-09-06 15:59:35 +02:00
omar
e0cab5664a Version 1.65 2018-09-06 15:58:58 +02:00
omar
5a679a45cc Renamed stb_truetype.h to imstb_truetype.h, stb_textedit.h to imstb_textedit.h, and stb_rect_pack.h to imstb_rectpack.h. (#1718, #2036)
If you were conveniently using the imgui copy of those STB headers in your project, you will have to update your include paths.
The reason for this change is to avoid conflicts for projects that may also be importing their own copy of the STB libraries. Note that imgui's copy of stb_textedit.h is modified.
2018-09-06 15:58:25 +02:00
omar
a2616c79fe Merge branch 'master' into viewport
# Conflicts:
#	imgui.cpp
2018-09-06 11:42:11 +02:00
omar
e58bc3d5b7 Refactor: Tweaked and improved the sectioning to facilitate grepping/moving around and applied to all files. (#2036) 2018-09-06 11:36:00 +02:00
omar
0b18c11440 Refactor: Moved ImFile functions. (#2036) 2018-09-06 11:36:00 +02:00
omar
ab64e8f993 Refactor: Moved one indentation level in the bulk of the ShowMetricsWindow() function. Should appear as a small diff if whitespaces changes are ignored. (#2036) 2018-09-06 11:36:00 +02:00
omar
31b5b18611 Merge branch 'master' into viewport
# Conflicts:
#	imgui.cpp
2018-09-05 20:59:27 +02:00
omar
bb3184af74 Refactor: moved low-layout helpers to imgui_widgets.cpp (Spacing, Dummy, NewLine, Separator, etc.) (#2036) 2018-09-05 20:54:28 +02:00
omar
cbdce80837 Internals: Refactor: Moved render functions to their own section. (#2036) 2018-09-05 20:46:57 +02:00
omar
8601c39571 Viewport: Making the code a little more sturdy (flag changes) + added descriptions. (#1542) 2018-09-05 17:50:55 +02:00
omar
af27ec296b Merge branch 'master' into viewport + added viewport ConfigFlags/BackendFlags
# Conflicts:
#	imgui.cpp
#	imgui.h
2018-09-05 17:38:47 +02:00
omar
65876f348a Nav: Removed the [Beta] tag from various descriptions of the gamepad/keyboard navigation system. Although it is not perfect and will keep being improved, it is fairly functional and used by many. (#787) 2018-09-05 17:33:00 +02:00
omar
77ba883f23 Renamed io.OptCursorBlink/io.ConfigCursorBlink to io.ConfigInputTextCursorBlink. (#1427) + changed ImGuiIO layout. 2018-09-05 17:29:47 +02:00
omar
bbcc976739 Demo: Added a "Configuration" block to make io.ConfigFlags/io.BackendFlags more prominent. 2018-09-05 17:29:47 +02:00
omar
b944aa623c Minor mostly inconsequential merges from Viewport + LoadIniSettingsFromMemory() entirely skip lines starting with ';' 2018-09-05 11:52:48 +02:00
omar
a848807847 Minor inconsequential merges from Master/Docking branches 2018-09-05 11:51:45 +02:00
omar
bdb30d7145 Merge branch 'master' into viewport 2018-09-05 11:08:57 +02:00
omar
897e5c6231 Viewport: Moved code following refactor. (#2036, #1542) 2018-09-05 11:08:44 +02:00
omar
40db2ca098 Fixed a build issue with non-Cygwin GCC under Windows. 2018-09-04 18:58:20 +02:00
omar
1007873d94 Misc: merge minor/inconsequential stuff from Docking branch to reduce drift. 2018-09-03 19:51:22 +02:00
omar
bcb1441ce7 Version 1.65 WIP 2018-09-03 14:38:04 +02:00
omar
fd201a90f1 Merge branch 'master' into viewport
# Conflicts:
#	imgui.cpp
2018-08-31 18:39:02 +02:00
omar
5d40d295b3 Comments, readme updates 2018-08-31 11:37:14 +02:00
omar
fd90afef43 Refactor: Internals: Moved Viewport functions in imgui.cpp in their own section. (part 3) (#2036, #1542) 2018-08-31 11:11:18 +02:00
omar
5207afa0dd Refactor: Internals: Moved Viewport functions in imgui.cpp in their own section. (part 2) (#2036, #1542) 2018-08-31 11:06:21 +02:00
omar
0c24fe276c Merge branch 'master_164' into viewport_164
# Conflicts:
#	imgui.cpp
#	imgui_draw.cpp
#	imgui_widgets.cpp
2018-08-31 10:28:21 +02:00
omar
48db5713d6 Version 1.64 2018-08-31 10:00:03 +02:00
omar
38cfcf9fbc Tweak comments and indexes 2018-08-31 09:59:58 +02:00
omar
c83391262e Refactor: Internals: Moved Tooltip functions in imgui.cpp in their own section + comments. (#2036) 2018-08-30 21:21:14 +02:00
omar
00262d51ad Refactor: Internals: Moved Popup functions in imgui.cpp in their own section. (part 3) (#2036) 2018-08-30 21:19:30 +02:00
omar
d7c04ccbfb Refactor: Internals: Moved Popup functions in imgui.cpp in their own section. (part 2) (#2036) 2018-08-30 21:18:16 +02:00
omar
b1f263b34b Refactor: Internals: Moved Popup functions in imgui.cpp in their own section. (part 1) (#2036) 2018-08-30 21:16:30 +02:00
omar
a58e4dfd0f Refactor: Moved Scrollbar function from imgui.cpp to imgui_widgets.cpp, added file index (#2036) 2018-08-30 21:16:23 +02:00
omar
8a216fe756 Refactor: Internals: Moved Tooltip functions in imgui.cpp in their own section + comments. (#2036) 2018-08-30 21:15:12 +02:00
omar
fd2bfb7e07 Refactor: Internals: Moved Popup functions in imgui.cpp in their own section. (part 3) (#2036) 2018-08-30 21:00:51 +02:00
omar
064b949bc2 Refactor: Internals: Moved Popup functions in imgui.cpp in their own section. (part 2) (#2036) 2018-08-30 20:59:24 +02:00