omar
092426bed2
Docking: Hold Shift to force disable docking. ( #2109 )
2019-04-13 00:27:44 +02:00
omar
c6f1b7b92a
Tests: Added hook/tweaks for imgui-test engine. + Fixed warnings.
2019-04-13 00:27:44 +02:00
omar
328e4fa7e7
Merge branch 'master' into docking
...
# Conflicts:
# imgui_demo.cpp
2019-04-11 15:53:38 +02:00
omar
07a70dc972
Internals: Merge minor things from range_select branch. Added ImGuiButtonFlags_NoHoveredOnNav. Added IsItemToggledSelected() - unused here. Renaming.
2019-04-11 15:40:36 +02:00
omar
f3110a57cd
Docking: Fixed an issue where newly created dock node override hosted window pos/size ( #2109 , #2386 )
2019-04-11 14:51:01 +02:00
omar
7056032483
Merge branch 'vulkan_fix_docking' into docking
2019-04-07 16:23:34 +02:00
omar
50ceb25003
Merge branch 'master' into docking
...
# Conflicts:
# examples/imgui_impl_vulkan.cpp
2019-04-07 16:23:31 +02:00
omar
302af7b2c9
FAQ tweaks. Add missing entries in imgui.cpp (which until now where only in the README).
2019-04-07 16:22:41 +02:00
omar
9c364b16ff
Merge branch 'vulkan_fix_master' into vulkan_fix_docking
2019-04-05 20:30:42 +02:00
omar
c8fd4afd75
Misc: Added IM_MALLOC/IM_FREE macros mimicking IM_NEW/IM_DELETE so user doesn't need to revert to using the ImGui::MemAlloc()/MemFree() calls directly.
2019-04-05 20:20:24 +02:00
omar
bd351e9ac5
Misc: Added IM_MALLOC/IM_FREE macros mimicking IM_NEW/IM_DELETE so user doesn't need to revert to using the ImGui::MemAlloc()/MemFree() calls directly.
2019-04-05 20:20:08 +02:00
omar
d61caf5714
Vulkan, Viewports: ImGui_ImplVulkan_RenderDrawData and renderer back-end automatically manage ImGui_ImplVulkanH_WindowRenderBuffers for each viewports so user doesn't have to do it. ( #2461 , #2348 , #2378 , #2097 )
2019-04-05 18:52:45 +02:00
omar
43a85dd02e
Merge branch 'master' into docking
2019-04-04 22:10:18 +02:00
omar
9ba64f9fe3
Viewport: Fixed PushClipRectFullScreen() missing out on negative coordinates. Among other things, the outer highlight during CTRL+Tab wouldn't appear in negative coordinates monitors. (~#2176, #1542 )
2019-04-04 22:02:36 +02:00
omar
fc52364652
Tabs to Spaces, comments.
2019-04-03 17:25:02 +02:00
omar
49fb8e6c45
Merge branch 'master' into docking
...
# Conflicts:
# examples/imgui_impl_dx9.cpp
# examples/imgui_impl_opengl3.cpp
2019-04-03 11:17:26 +02:00
omar
4a57507f75
InputText: Work-around for buggy standard libraries where isprint('\t') returns true. ( #2467 , #1336 )
...
Not using isprint. + todo items.
2019-04-03 10:40:14 +02:00
omar
9bf6509c6e
Docking: Fixed focus restore lagging by a frame when a tab stops being submitted. ( #2109 ) Building on a little build of technical debt there, should transition toward a more general docking-agnostic system ( #2304 )
2019-03-28 18:43:27 +01:00
omar
5af385ea78
Viewport: Renamed member + added note about a Docking issue with restoring focus.
2019-03-28 18:02:03 +01:00
omar
47219dd5c6
Docking: Remove code in BeginDocked() to set HiddenFramesCannotSkipItems based on upcoming tab bar selection, solely based on focus (might break something subtle?). Follow-up to c355ed1267
. ( #2453 , #2109 )
2019-03-28 16:13:06 +01:00
omar
b6ae8a0dca
Docking: Disable SkipItems when directly/programmatically focused (possible generalization of code currently in BeginDocked which relies on tab bar interaction, will remove that code in next commit). ( #2453 , #2109 )
2019-03-28 16:11:50 +01:00
omar
a33d45d7cd
Merge branch 'master' into docking
...
# Conflicts:
# docs/CHANGELOG.txt
# imgui.cpp
2019-03-28 15:48:25 +01:00
omar
9a0e71a6ec
Internals: Renamed the ImGuiWindow HiddenFrameXXX fields to decorrelate them from resizing behavior, as those values are set by other logic.
2019-03-28 15:41:49 +01:00
omar
5a665e423c
Docking: Added ImGuiDockNodeFlags_NoTabBar (not exposed publicly). ( #2423 , #2109 )
2019-03-27 20:44:49 +01:00
omar
fc95da8aa3
Docking: Internals: Moved CentralNode and HiddenTabBar state into LocalFlags for consistency. ( #2423 , #2109 )
2019-03-27 20:32:44 +01:00
omar
fd5859ed04
Docking: Separating SharedFlags vs LocalFlags in dock node so settings can be applied to individual nodes. Made _NoResize logic on single node applies as expected. ( #2423 , #2109 )
2019-03-27 19:00:36 +01:00
omar
75e3793f4d
Docking: Fix DockBuilderAddNode() not storing flags when creating floating node.
2019-03-27 17:36:52 +01:00
omar
8d4b5fef1d
Renamed ImGuiDockNodeFlags_Dockspace to ImGuiDockNodeFlags_DockSpace for consistency. DockBuilderCopyDockspace() to DockBuilderCopyDockSpace(). Made casing consistent elsewhere. ( #2109 )
2019-03-27 17:36:52 +01:00
omar
04a9ce3a18
Docking: Renamed ImGuiDockNodeFlags_PassthruDockspace to ImGuiDockNodeFlags_PassthruCentralNode. + Comments, shallow tweaks. ( #2109 )
2019-03-27 16:16:31 +01:00
omar
87883abd86
Docking: Tweak and silencing PVS studio static analyzer (back to zero warnings among our selected ones).
2019-03-26 14:15:56 +01:00
Tom Watson
f20725eada
Docking: Fixed an issue where windows docked into a node that's part of their dockspace wouldn't recover their order correctly after init. ( #2109 )
...
(It only worked on floating dock node for the accidental reason that BeginDocked would generally early out on the first frame)
2019-03-26 13:58:03 +01:00
omar
26646f2450
Docking: Wrapping tab bar creation/destroy to make it easier to debug them.
2019-03-26 12:41:50 +01:00
omar
f208fd7ebb
Docking: Fixed crash with ImGuiDockNodeFlags_AutoHideTabBar flag. ( #2423 , #2109 )
2019-03-26 12:33:58 +01:00
omar
cf1b02e54e
Rearrange code in UpdateMouseWheel(). ( #2424 , #1463 ) + Fix old io.FontAllowUserScaling feature (probably should be made obsolete, but until then best fixed)
2019-03-25 19:40:19 +01:00
Luca Rood
1963cc59be
Implement horizontal scrolling with Shift+Scroll
...
This is standard scrolling behaviour in most applications.
2019-03-25 19:09:40 +01:00
omar
9350158d61
Merge branch 'master' into docking
...
# Conflicts:
# docs/CHANGELOG.txt
# examples/imgui_impl_opengl3.cpp
# imgui.cpp
# imgui_internal.h
2019-03-25 16:08:09 +01:00
omar
d9f6ba3035
IsWindowHovered() made change which should have no effect in master but fix result of IsWindowHovered(ImGuiHoveredFlags_ChildWindows) over multiple viewport in docking branch. ( #2432 )
2019-03-25 15:39:11 +01:00
omar
7a5196601e
Docking: BeginDocked() doesn't need to rely on tab bar data (will allow removing tab bar).
2019-03-18 09:48:06 -07:00
omar
c7619d4a6a
Docking: Preserve existing docked nodes when setting the ImGuiDockNodeFlags_NoDockingInCentralNode flag. ( #2423 , #2109 )
2019-03-18 09:48:00 -07:00
omar
221bf93a55
Comments, todo list, remove trailing spaces.
2019-03-17 00:56:21 +01:00
omar
7ba774a440
Viewports: Fixed being unable to refocus windows when ConfigViewportsNoTaskBarIcon + ConfigViewportsNoDecoration are enabled. ( #2420 , #1542 ) [@PathogenDavid] + comments.
2019-03-15 15:35:46 +01:00
omar
857381b9ca
GetMouseDragDelta(): also returns the delta on the mouse button released frame. Verify that mouse positions are valid otherwise returns zero. Removed obsolete comment. Tweaked demo. ( #2419 )
2019-03-15 15:03:37 +01:00
omar
cf2c52282d
Version 1.70 WIP
2019-03-15 13:07:30 +01:00
omar
b1af4d36ce
Merge branch 'master' into docking
...
# Conflicts:
# docs/CHANGELOG.txt
# examples/example_win32_directx10/main.cpp
# examples/example_win32_directx11/main.cpp
# examples/example_win32_directx12/main.cpp
# examples/example_win32_directx9/main.cpp
2019-03-13 15:30:35 +01:00
omar
55c02099c5
Version 1.69, comments, typos
2019-03-13 15:29:43 +01:00
omar
c3f20f6b81
Viewport: DestroyPlatformWindow() skips calling user function if PlatformWindowCreated is set. + Clarified comment about implicit Debug viewport which may be hogging a viewport.
2019-03-13 11:27:30 +01:00
David Maas
e7dca4fec2
Fixed main viewport not being marked as created, which broke updating the IME input position for the main viewport.
...
This change also removes the logic scattered about that compensated for PlatformWindowCreated being wrong for the main viewport.
2019-03-13 10:59:32 +01:00
omar
a26085ed53
Internals: Fixed Navigation from reaching ImGuiItemFlags_Disabled items ( #211 ) + Examples comments
2019-03-12 22:23:56 +01:00
omar
e1acb0b1fa
Docking: Fixed node merging altering window position incorrectly in a way that would make SizeContents incorrect for the next frame (making scrollbar flicker). ( #2414 , #2109 )
2019-03-11 19:46:37 +01:00
omar
3ead9820f7
Viewport: Popups and Tooltips viewports are correctly parented to the parent window's viewport. ( #2409 , #1542 )
2019-03-11 16:51:46 +01:00
omar
f7db4fad31
Merge branch 'master' into docking
...
# Conflicts:
# examples/example_win32_directx11/main.cpp
# examples/example_win32_directx12/main.cpp
# examples/example_win32_directx9/main.cpp
# imgui.cpp
2019-03-11 16:08:16 +01:00
omar
cf4fcc4735
Viewports: Fixed delayed window pos->viewport pos sync leading to monitor not being updated at the time of clamping window position in Begin. ( #2415 , #1542 )
2019-03-11 13:15:00 +01:00
omar
3eedb542a6
Viewports: Renamed ConfigViewportsNoParent to ConfigViewportsNoDefaultParent. Fix outdated comments in examples.
2019-03-11 11:07:23 +01:00
omar
ecf7666624
Docking: Fixed an issue where removing the last window from a dockspace node that is not a central node without remove the node. ( #2414 , #2109 )
2019-03-10 22:19:18 +01:00
Bruce Mitchener
b5d57a6615
Fix typos. ( #2413 )
2019-03-09 10:10:17 +01:00
Bruce Mitchener
17c567c3a9
Don't use const qualified parameters in declarations.
...
This fixes warnings from clang-tidy like this:
parameter 'v_max' is const-qualified in the function declaration;
const-qualification of parameters only has an effect in function definitions
Since values (rather than references or pointers) don't need to be
const, they don't need to be marked that way in the function declaration.
2019-03-08 18:21:11 +01:00
omar
66936880ba
Moved placeholder sections to match Docking branch. Comments.
2019-03-08 18:16:41 +01:00
omar
d77d3416d3
Merge branch 'master' into docking
2019-03-07 18:40:55 +01:00
omar
5ce93bc0cc
Refactor: Move viewport code under other subsystem to simplify merging (4) (moving in multiple commits to make diff/patch behave nicely)
2019-03-07 18:39:31 +01:00
omar
54a129a2e2
Refactor: Move viewport code under other subsystem to simplify merging (3) (moving in multiple commits to make diff/patch behave nicely)
2019-03-07 18:38:40 +01:00
omar
bdf60dac6a
Refactor: Move viewport code under other subsystem to simplify merging (2) (moving in multiple commits to make diff/patch behave nicely)
2019-03-07 18:37:17 +01:00
omar
bbb543fc16
Refactor: Move viewport code under other subsystem to simplify merging (1) (moving in multiple commits to make diff/patch behave nicely)
2019-03-07 18:36:11 +01:00
omar
f717df4eb6
Internal: Columns: Allow to use BeginColumns(1) so code designed for variable number of columns can still call NextColumn etc. ( #125 )
2019-03-07 18:22:28 +01:00
omar
28d8eb220b
Fix for Android char being unsigned by default ( #2408 )
2019-03-07 16:07:16 +01:00
omar
e02d6014bf
Merge branch 'master' into docking
...
# Conflicts:
# imgui.cpp
# imgui_internal.h
2019-03-05 22:13:38 +01:00
omar
344140004b
Fixed IsItemDeactivated()/IsItemDeactivatedAfterEdit() from not correctly returning true when tabbing out of a focusable widget (Input/Slider/Drag) in most situations. ( #2215 , #1875 )
...
+ Minor renaming of a local variable in widget code.
2019-03-05 22:09:25 +01:00
omar
26328fc9fe
Internal: Tabbing/Focus: Tidying up old code, moved some state to context instead of window. Storing new data will allow us to fix the bug mentioned in #2215 (probably in next commit).
2019-03-05 19:51:27 +01:00
omar
ce4e62649a
Internal: Tabbing: Tweaks to FocusableItemRegister and using the standard mechanism to allow/block Tab being interpreting by tabbing instead of InputText() widget.
2019-03-05 18:24:59 +01:00
omar
ac4842fa17
Nav: Fixed Ctrl+Tab keeping active InputText() of a previous window active after the switch. ( #2380 )
2019-03-05 12:03:54 +01:00
omar
8414c0bb09
Merge branch 'master' into docking
...
# Conflicts:
# imgui.cpp
# imgui.h
# imgui_internal.h
2019-03-04 18:08:19 +01:00
omar
94e794f81b
Renamed GetOverlayDrawList() to GetForegroundDrawList() for consistency. Kept redirection function (will obsolete). ( #2391 )
...
Demo: Using GetBackgroundDrawList() and GetForegroundDrawList() in "Custom Rendering" demo.
2019-03-04 16:35:50 +01:00
omar
96b13760d4
Added GetBackgroundDrawList() helper to quickly get access to a ImDrawList that will be rendered behind every other windows. ( #2391 )
2019-03-04 16:10:51 +01:00
omar
49eb5f0280
Merge branch 'master' into docking
...
# Conflicts:
# examples/imgui_impl_opengl3.cpp
2019-03-03 23:34:56 +01:00
omar
1d0b4df3d9
Misc: Asserting in NewFrame() if style.WindowMinSize is zero or smaller than (1.0f,1.0f). Internal: ImHash functions tweaks. Added InputText() to query status section.
2019-02-28 22:57:22 +01:00
omar
ff0c6c2bde
Merge branch 'master' into docking
...
# Conflicts:
# imgui.cpp
# imgui.h
2019-02-27 19:00:09 +01:00
omar
6de09a5e48
Renamed ColorEdit/ColorPicker's ImGuiColorEditFlags_RGB/_HSV/_HEX flags to respectively ImGuiColorEditFlags_DisplayRGB/_DisplayHSV/_DisplayHex. This is anticipation of adding new flags to ColorEdit/ColorPicker functions which would make those ambiguous. ( #2384 ) [@haldean]
2019-02-27 16:45:58 +01:00
omar
4eecf80a4b
Moved Settings section above Docking to facilitate master<>docking merges.
2019-02-26 15:34:47 +01:00
omar
104294c7e4
Moved Logging/Capturing section above Docking to facilitate master<>docking merges.
2019-02-26 15:33:50 +01:00
omar
8915f7933a
Merge branch 'master' into docking
...
# Conflicts:
# imgui.cpp
2019-02-24 23:24:07 +01:00
David Wingrove
5d7bd2309b
Fixes warning caused by a missing switch/case. ( #2382 , #2381 )
2019-02-24 23:19:36 +01:00
omar
9558e327d2
Log/Capture: Fixed extraneous leading carriage return. Fixed an issue when empty string on a new line would not emit a carriage return.
2019-02-23 16:22:55 +01:00
omar
cd67d4d3c1
Log/Capture: Fixed LogXXX functions 'auto_open_depth' parameter being treated as an absolute tree depth instead of a relative one. Fixed CollapsingHeader trailing ascii representation being "#" instead of "##". Minor tidying up the of code.
2019-02-23 16:07:01 +01:00
omar
2cd7de5666
Internal: Log/Capture: Rework to add an internal LogToBuffer() function which is useful for writing automated tests. Clarified logging state by adding an enum.
2019-02-23 15:57:06 +01:00
omar
3eba840053
Nav: Fixed a tap on AltGR (e.g. German keyboard) from navigation to the menu layer. (follow and extend on e.g #369 , #370 )
2019-02-23 14:50:36 +01:00
omar
87ded34f9f
Merge branch 'master' into docking
...
# Conflicts:
# docs/CHANGELOG.txt
# examples/imgui_impl_opengl3.cpp
# imgui_widgets.cpp
2019-02-22 12:29:18 +01:00
omar
81a8730022
Internal: InputText: Renamed is_editable to !is_readonly, Hopefully more explicit. Renamed internal member. Shuffled some code. Added comments, assert (_will_ trigger on !readonly > readonly edge, old bug).
2019-02-21 19:55:36 +01:00
omar
257f5d204e
Version 1.69 WIP
2019-02-20 00:11:36 +01:00
omar
93b06e6e7c
Internal: Changed Scrollbar() signature. Using GetScrollbarID() in InputTextMultiline().
...
Removed multiple semi-colons (#2368 )
2019-02-20 00:08:21 +01:00
omar
9dc02464a4
Merge branch 'master' into docking
...
# Conflicts:
# docs/CHANGELOG.txt
2019-02-19 13:04:35 +01:00
omar
3c15dffc94
Version 1.68
2019-02-19 12:50:46 +01:00
omar
5412cdf2c8
Docking: Made DockBuilderSplitNode/DockNodeTreeSplit work even if the node doesn't have a size yet. ( #2357 , #2109 )
...
Followup to fa0ce4b7d
, at that time I came to the conclusion that programmatic split couldn't work without knowing the size ahead of it. I forgot the reason for that. May bite us back!
2019-02-18 16:23:54 +01:00
omar
3de440fda2
Docking: Fixed assert in DockContextProcessDock() preventing some uses of DockNodeBuilder api. ( #2357 , #2109 )
2019-02-18 16:13:17 +01:00
omar
09c9bf2edb
Merge branch 'master' into docking
...
# Conflicts:
# imgui.cpp
# imgui.h
2019-02-14 20:35:11 +01:00
omar
76dbff37cd
Selectable: Tweaks for #2347 (demo, changelog, member position)
2019-02-14 20:29:50 +01:00
haldean
b277cfffc8
Selectable: add support for specifying text alignment on selectables ( #2347 )
...
Adds a style variable to Selectable that allows clients to specify the
text alignment within Selectables, adds a section in the demo to
demonstrate selectable text alignment, and a pair of sliders in the
style editor to change selectable alignment on the fly.
In terms of implementation, this one is extremely simple: Selectable was
already calling an API that supports text alignment, but had hard-coded
it to top-left. This changes that to just pass the style variable
straight through to RenderTextClipped. Backwards-compatibility is
preserved by defaulting the text_align parameter to (0, 0), i.e.,
top-left.
This also fixes a bug with selectable text rendering that caused
right-aligned text in a selectable to be clipped incorrectly, because
the wrong clipping rectangle was being used.
2019-02-14 19:38:57 +01:00
omar
3c07ec6a61
Made it illegal/assert when io.DisplayTime == 0.0f (with an exception for the first frame).
...
Causing too many subtle side-effect, e.g. IsNavInputPressed() would return true multiple times in a row.
2019-02-14 17:14:29 +01:00
omar
2206df9e7a
Demo: Added Auto-Scroll option in Log/Console. Comments. Removed some ImColor() uses.
2019-02-14 14:08:36 +01:00
omar
57a586b4f1
Font: Moved functions to internal block (not enforced). Made ConfigData pointer const. Added link to stb's notes.
2019-02-13 18:21:21 +01:00
omar
417cf2237f
Font: Fixed high-level ImGui::CalcTextSize() used by most widgets from erroneously subtracting 1.0f*scale to calculated text width. Among noticeable side-effects, it would make sequences of repeated Text/SameLine calls not align the same as a single call, and create mismatch between high-level size calculation and those performed with the lower-level ImDrawList api. ( #792 )
2019-02-12 22:43:56 +01:00
omar
2cada3c143
Merge branch 'master' into docking
...
# Conflicts:
# examples/imgui_impl_opengl2.cpp
# examples/imgui_impl_opengl3.cpp
# imgui.cpp
# imgui_widgets.cpp
2019-02-11 18:59:49 +01:00