Commit Graph

3685 Commits

Author SHA1 Message Date
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
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