omar
09c9bf2edb
Merge branch 'master' into docking
...
# Conflicts:
# imgui.cpp
# imgui.h
6 years ago
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.
6 years ago
omar
0236bc246f
Scrollbar: Fade out and disable interaction when too small, in order to facilitate using the resize grab on very small window, as well as reducing visual noise/overlap. (+1 squashed commits)
...
Internals: Added GetScrollbarID(). (#1185 )
6 years ago
omar
0640b6e67c
Shallow tweaks
6 years ago
omar
2cada3c143
Merge branch 'master' into docking
...
# Conflicts:
# examples/imgui_impl_opengl2.cpp
# examples/imgui_impl_opengl3.cpp
# imgui.cpp
# imgui_widgets.cpp
6 years ago
omar
1b63ded8fa
Tabs: Fixed border (when enabled) so it is aligned correctly mid-pixel and appears as bright as other borders.
6 years ago
omar
4a3a895be9
Merge branch 'master' into docking
...
# Conflicts:
# imgui.cpp
# imgui_demo.cpp
6 years ago
omar
29d38b59d0
ListBox/InputTextMultiline: Better optimized when clipped / non-visible.
6 years ago
omar
62084aac0f
DragScalarN, SliderScalarN, InputScalarN: Removed unnecessary string id after the integer PushID() calls.
6 years ago
omar
f366828dd2
Minor tweaks to reduce false positive of PVS Studio static analyzer.
6 years ago
omar
5bdc7d7a6f
Menus: Tweaked horizontal overlap between parent and child menu (to help convey relative depth) from using style.ItemSpacing.x to style.ItemInnerSpacing.x, the later being expected to be smaller. ( #1086 )
6 years ago
omar
97ed97b8ce
Plot: Register an ID to take the click the same way as other framed widgets. Set HoveredId in the FramePadding zone (between inner_bb and frame_bb).
6 years ago
omar
cef4e086ba
Internals: Selectable: Fixed rendering width miscalculation when starting pos is not line start pos, which would generally be unnoticeable. Could affect group lock X with a smaller SetCursorPos value but that's unlikely to be used.
6 years ago
omar
521470b3cd
Internals: Removed unnecessary code.
6 years ago
omar
be107ba8f8
Merge branch 'master' into docking
...
# Conflicts:
# imgui_internal.h
# imgui_widgets.cpp
6 years ago
omar
b980e0077a
Tabs: Moved Tab List Popup to left-side to match docking button. Highlight selected tab. ( #261 , #351 )
6 years ago
omar
d38f4dc143
Tabs: Non-docking tab bars are storing names to allow tab list button + whole style scaling. Added ImGuiTabBarFlags_TabListPopupButton flag to show a popup button on manual tab bars. Locking FramePadding for the scope of a tab-bar to avoid sheering/clipping of tab item. Made scaling of tab ellipsis less awkward. ( #261 , #351 )
6 years ago
omar
f7c879eb60
RadioButton: Fixed label horizontal alignment to precisely match Checkbox(). + Internals: Checkbox, RadioButton: Single call to ItemSize() for flow layout purpose.
6 years ago
omar
0b05ba18df
Internals: DragScalar, SliderScalar: Calling ItemSize before ItemAdd as with every other widgets so we can more easily rearrange the signature of ItemXXX functions (toward allowing non-rounded sizes for scaling and flow layout).
6 years ago
omar
d1c45c0d76
Merge branch 'master' into docking (enable range_select merge)
...
# Conflicts:
# imgui.cpp
# imgui_internal.h
6 years ago
omar
d5945aa25b
Internals: Minor changes to TreeNodeBehavior() and Selectable() for the benefit of fhe range_select branch. ( #1861 )
6 years ago
omar
0d4a2a2cd0
Internals: Track ActiveIdHasBeenPressed (similar to ActiveIdHasBeenEdited). This is currently mostly for the benefit of the range_select branch. ( #1861 )
6 years ago
omar
f906d53f7d
Merge branch 'master' into docking
...
# Conflicts:
# imgui.cpp
6 years ago
omar
dc8ff68871
Docking: VisibleWindow of a node spread its _NoMove attribute to the node (fixed dragging or undocking of dock node host from collapse button). ( #2325 , #2109 )
6 years ago
omar
5536edede9
Docking: Fixed faulty undocking of windows with the _NoMove flag. ( #2325 , #2109 )
...
Whereas BeginAsDockableDragDropTarget could be reworked to filter, we simply set g.HoveredWindowUnderMovingWindow to be NULL when MovingWindow is not set, which was the initial intent.
Also fixed some comments and removed unused braces in TabItemEx().
6 years ago
omar
578e15f006
Docking: Removed unnecessary ImGuiTabItemFlags_DockedWindow internal flag.
6 years ago
omar
1fb57c97c6
Internals: InputScalarAsWidgetReplacement: Fixed seemingly unnecessary calling of SetActiveID/SetHoveredID every frame, which in turns allow us to remove the g.ActiveIdAllow/Block settings duplicated.
6 years ago
omar
fb4f1ff7f6
InputText: Fixed a bug where ESCAPE would be first captured by the Keyboard Navigation code. ( #2321 , #787 )
6 years ago
omar
158995f271
InputText: Fixed a bug where ESCAPE would not restore the initial value in all situations. ( #2321 ) [@relick]
6 years ago
omar
0a233a505d
imgui-test: Added extra item info callbacks. Using nav_bb for interactions when possible. Comments, Demo tweaks.
6 years ago
omar
13a5f5ba8b
Merge branch 'master' into docking
...
# Conflicts:
# imgui.cpp
6 years ago
omar
4e8e177cac
Persistently fixing some PVS-Studio static analyzer false positive warnings.
6 years ago
omar
ee3b4f2bf1
Using IM_UNUSED() macro.
6 years ago
omar
c3c2cd1e82
Fix various XCode and PVS-Studio static analyzer warnings ( #2309 )
6 years ago
omar
07ff47bf1b
Docking: Fixed various border / padding related inconsistency with dock node vs floating windows. ( #2109 )
6 years ago
omar
9f96fcff3c
Docking: Added ImGuiDockNodeFlags_Dockspace instead of node internal IsDockspace toward allowing the DockBuilder API to create non-dockspace nodes.
6 years ago
omar
0947fa3de0
Merge branch 'viewport' into docking
...
# Conflicts:
# imgui.cpp
# imgui_internal.h
6 years ago
omar
cb9a6b8a8b
Merge branch 'master' into viewport
...
# Conflicts:
# examples/README.txt
# imgui.cpp
6 years ago
omar
f14f93ef6e
Fixed range-version of PushID() and GetID() not honoring the ### operator to restart from the seed value.
6 years ago
omar
f94af2f5c5
Merge branch 'viewport' into docking
...
# Conflicts:
# docs/CHANGELOG.txt
# imgui.cpp
# imgui_draw.cpp
6 years ago
omar
8079344cee
Merge branch 'master' into viewport
...
# Conflicts:
# examples/example_sdl_vulkan/main.cpp
# examples/imgui_impl_dx11.cpp
# examples/imgui_impl_dx12.cpp
# examples/imgui_impl_glfw.cpp
# examples/imgui_impl_sdl.cpp
# examples/imgui_impl_vulkan.h
# imgui.cpp
6 years ago
omar
2c38b32db1
Removed trailing spaces ( #2038 , #2299 )
6 years ago
omar
f94ba546ba
Added checks for "zero-as-null-pointer-constant" warnings for older Clang ( #2299 , followup to #2277 )
6 years ago
omar
e9c625a1dc
Merge branch 'master' into viewport
...
# Conflicts:
# docs/CHANGELOG.txt
# examples/imgui_impl_win32.cpp
# imgui_demo.cpp
6 years ago
omar
d1851ed6b7
Various tweaks and fixes as suggested by PVS Studio (thanks PVS Studio!) [docking branch]
6 years ago
omar
32c4e01267
Various tweaks and fixes as suggested by PVS Studio (thanks PVS Studio!)
6 years ago
omar
06aaf23877
Various tweaks and fixes as suggested by PVS Studio (thanks PVS Studio!)
6 years ago
omar
8a45c56c2c
Merge branch 'viewport' into docking
6 years ago
omar
9391a97fbf
Merge branch 'master' into viewport
...
# Conflicts:
# docs/CHANGELOG.txt
# examples/imgui_impl_win32.cpp
# examples/imgui_impl_win32.h
6 years ago
omar
95ee99e6aa
Version 1.68 WIP
6 years ago
omar
ff4bd758ca
Merge branch 'viewport' into docking
6 years ago
omar
e24674fc0e
Merge branch 'master' into viewport
6 years ago
omar
7a5058e3bf
Version 1.67
6 years ago
omar
1da40df279
DragFloat: Fixed broken mouse direction change with power!=1.0. ( #2174 , #2206 ) [@Joshhua5]
6 years ago
omar
6e41745f31
Added a bunch of diagnostic ignore to cope with Clang -Weverything being absurd. Also fixed two legit warnings. ( #2277 )
6 years ago
omar
8011197c50
Merge branch 'viewport' into docking
...
# Conflicts:
# imgui.cpp
6 years ago
omar
c96aaef132
Merge branch 'master' into viewport
...
# Conflicts:
# imgui.cpp
# imgui.h
6 years ago
omar
1f6e0b2f98
ImVector: Made a struct. Using T/T* in the code instead of value_type/iterator. Renamed index_from_pointer() to index_from_ptr() (was not documented, added in 1.63, users not supposed to use ImVector, hopefully not a big deal).
6 years ago
omar
61a99f994e
Minot internal tweaks, comments
6 years ago
omar
b33977bc15
Tests: Reworking hook prototypes for imgui-test to be faster and multi-context friendly.
6 years ago
omar
c2db7f63bd
Selectable() should have an ID even though they are disabled, to be consistent with other widgets. Not sure of the reasoning ~1.41 which made this turn to 0.
6 years ago
omar
6b32570644
Merge branch 'viewport' into docking
...
# Conflicts:
# imgui_internal.h
# imgui_widgets.cpp
6 years ago
omar
5af930f97a
Merge branch 'master' into viewport
...
# Conflicts:
# imgui.cpp
# imgui.h
# imgui_internal.h
6 years ago
omar
1ae7f88495
Tabs: Added ImGuiTabBarFlags_NoTooltip flag. ( #261 , #351 ) + added helpful assert
6 years ago
omar
acfa4050ec
Tweak changelog + tweak internal render helper functions.
6 years ago
omar
c3af134cc8
IO: Renamed InputCharacters[], marked internal as was always intended. AddInputCharacter() goes into a queue which can receive as many characters as needed during the frame. This is useful for automation to not have an upper limit on typing speed. Will later transition key/mouse to use the event queue later.
6 years ago
omar
9ba202821f
Nav: Fixed an keyboard issue where holding Activate/Space for longer than two frames on a button would unnecessary keep the focus on the parent window, which could steal it from newly appearing windows. ( #787 )
6 years ago
omar
d223d1e951
Added bindings in Readme. Added internal IMGUI_DEBUG_LOG() helper. Comments, missing breaking changes note relative to imgui_impl_xxxx changes, not really part of core but worth adding in the imgui.cpp breaking change section.
6 years ago
omar
7f7e8eeecd
Docking: Fixed a bug undocking a window from its tab when it is the only docked window of a root dockspace with ConfigDockingTabBarOnSingleWindows enabled.
6 years ago
omar
ce1626a51e
Merge branch 'viewport' into docking
...
# Conflicts:
# imgui.cpp
# imgui.h
# imgui_internal.h
6 years ago
omar
951c9dd68b
Merge branch 'master' into viewport
...
# Conflicts:
# examples/imgui_impl_sdl.cpp
6 years ago
omar
acacd93836
Renamed extra_flags to flags in InputXXX parameters.
6 years ago
omar
c738f9ef92
InputFloat: When using ImGuiInputTextFlags_ReadOnly the step buttons are disabled. ( #2257 )
6 years ago
omar
088ef6623a
Merge branch 'viewport' into docking
6 years ago
omar
9c916cdaf9
Merge branch 'master' into viewport
...
# Conflicts:
# imgui.cpp
6 years ago
omar
ae76a1fda7
Window, Focus, Popup: Fixed an issue where closing a popup by clicking another window with the _NoMove flag would refocus the parent window of the popup instead of the newly clicked window.
6 years ago
omar
ac9512e095
Merge branch 'master' into docking
...
# Conflicts:
# imgui.cpp
6 years ago
omar
65dac02171
Internals: Popups: Renamed CurrentPopupStack to BeginPopupStack which is much less ambiguous.
6 years ago
omar
f6f5c51106
Internals: Popups: EndMenu() calls ClosePopupToLevel(g.CurrentPopupStack.Size) which is more correct.
6 years ago
omar
587506dd57
Tests: Changed prototype of ImGuiTestEngineHook_ItemAdd to match functions called in same spot. Made ButtonBehavior submit fallback item info if ItemAdd() was not called (for resize grips, resize borders, scrollbar, columns, etc.)
6 years ago
omar
2a1e903f43
Merge branch 'master' into viewport
...
# Conflicts:
# imgui.h
6 years ago
omar
991b16cc6a
Merge branch 'master' into docking
...
# Conflicts:
# imgui.cpp
# imgui_demo.cpp
# imgui_widgets.cpp
6 years ago
omar
1b263f6ab0
Tabs: Fixed support for drag and drop ImGuiButtonFlags_PressedOnDragDropHold. ( #261 ) incorrectly missing from the merge from Docking branch.
6 years ago
omar
5a6b8e00db
BeginTabBar: Fix to push the expected ID into the ID stack (instead of a hash's hash). ( #261 )
6 years ago
omar
067b691fd8
Merge branch 'viewport' into docking
...
# Conflicts:
# docs/TODO.txt
# imgui.cpp
# imgui.h
# imgui_demo.cpp
# imgui_draw.cpp
# imgui_internal.h
# imgui_widgets.cpp
6 years ago
omar
c40feabe4d
Merge branch 'master' into viewport
...
# Conflicts:
# imgui.cpp
# imgui_internal.h
6 years ago
omar
54a60aaa40
Added BETA api for Tab Bar/Tabs widgets. ( #261 , #351 ) (merged this feature from the from Docking branch so it can be used earlier as as standalone feature)
...
- Added BeginTabBar(), EndTabBar(), BeginTabItem(), EndTabItem(), SetTabItemClosed() API.
- Added ImGuiTabBarFlags flags for BeginTabBar().
- Added ImGuiTabItemFlags flags for BeginTabItem().
- Style: Added ImGuiCol_Tab, ImGuiCol_TabHovered, ImGuiCol_TabActive, ImGuiCol_TabUnfocused, ImGuiCol_TabUnfocusedActive colors.
- Demo: Added Layout->Tabs demo code.
- Demo: Added "Documents" example app showcasing possible use for tabs.
6 years ago
omar
15447f5b7b
Using named flags instead of 0 + shallow formatting tweaks from other branches.
6 years ago
omar
e6439e1a16
Merge branch 'viewport' into docking + moved io.ConfigFlags ImGuiConfigFlags_DockingNoSplit to io.ConfigDockingNoSplit
...
# Conflicts:
# imgui.cpp
# imgui.h
# imgui_demo.cpp
6 years ago
omar
26b9e2d0a5
Merge branch 'master' into viewport
...
# Conflicts:
# imgui.cpp
# imgui_demo.cpp
6 years ago
omar
d20e3ee710
Tests: Adding imgui-test engine hooks (experimental) to provide missing widget state to the testing system.
6 years ago
omar
3a5e758ee3
Tabs: Fixed crash when using TabItem in a regular (non-docking) tab bar. ( #2231 )
6 years ago
omar
f768727284
Merge branch 'viewport' into docking
...
# Conflicts:
# imgui.cpp
6 years ago
omar
a03846bd9e
Merge branch 'master' into viewport
...
# Conflicts:
# imgui.cpp
# imgui_internal.h
6 years ago
omar
125e62491e
Internals: Nav: Added ImGuiNavLayer_ to clarify semantic of previously integer NavLayer values, and not pretend that increment/decrement operators on them super flexible. + Storage tweaks.
6 years ago
omar
6644f1ff64
Docking: Added io.ConfigDockingTabBarOnSingleWindows option (mostly made possible by the previous fixes).
...
Note that dock node have regressions compared to current floating window: no collapse, no auto-resize, resize grip under the scrollbar, border issues, general overhead. Will tackle those.
6 years ago
omar
5105c6c0d0
Merge branch 'viewport' into docking
...
# Conflicts:
# docs/CHANGELOG.txt
# imgui.cpp
6 years ago
omar
3a678d48b1
Merge branch 'master' into viewport
...
# Conflicts:
# examples/imgui_impl_dx10.cpp
# examples/imgui_impl_dx11.cpp
6 years ago
omar
8bac6d428d
Docking: Another attempt at tidying the inconsistent focus / tab bar reordering issues, and toward generalizing single window dock nodes. ( #2109 )
6 years ago
omar
10e13dd6bb
Version 1.67 WIP (again, this time IMGUI_VERSION_NUM has leeway for another hot-fix).
6 years ago