omar
0f83145aa8
TabBar: Fixed a crash when using BeginTabBar() recursively (didn't affect docking). ( #2371 )
...
Added ImPool::Contains() helper.
2019-02-22 12:24:27 +01:00
omar
332f8f2462
Internal: InputText: Made clipboard copy/cut use its own temporary buffer (like paste) so we can guarantee that TempBuffer if not altered and can be preserved. Renamed TempBufferA to TextA to celebrate this.
2019-02-21 19:55:37 +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
677e64e71e
Internal: InputText: Comments. Renamed internal member. Renamed ImGuiStb->ImStb.
2019-02-20 21:34:08 +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
09c9bf2edb
Merge branch 'master' into docking
...
# Conflicts:
# imgui.cpp
# imgui.h
2019-02-14 20:35:11 +01:00
omar
93d1179805
Examples: Extracted gamepad code into ImGui_ImplGlfw_UpdateGamepads(). Renamed matching Win32 function for consistency.
...
Added more link to nothing's oversample document. Spacing bits.
2019-02-14 19:29:09 +01:00
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 )
2019-02-14 14:07:59 +01:00
omar
4a3a895be9
Merge branch 'master' into docking
...
# Conflicts:
# imgui.cpp
# imgui_demo.cpp
2019-02-06 14:47:53 +01:00
omar
f366828dd2
Minor tweaks to reduce false positive of PVS Studio static analyzer.
2019-02-06 13:16:52 +01:00
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).
2019-02-05 21:17:04 +01:00
omar
be107ba8f8
Merge branch 'master' into docking
...
# Conflicts:
# imgui_internal.h
# imgui_widgets.cpp
2019-02-05 13:52:32 +01:00
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 )
2019-02-05 13:23:44 +01:00
omar
7227454dca
Merge branch 'master' into docking
...
# Conflicts:
# examples/imgui_impl_opengl3.cpp
# imgui.cpp
# imgui.h
2019-02-03 17:31:16 +01:00
omar
c23a19c26f
Internals: Exposed internal SetWindowPos to imgui_internal.h (for imgui-test)
2019-02-03 17:29:51 +01:00
omar
d1c45c0d76
Merge branch 'master' into docking (enable range_select merge)
...
# Conflicts:
# imgui.cpp
# imgui_internal.h
2019-02-01 12:25:49 +01:00
omar
5cb7040f66
Internals: Tracking dummy select scope id (currently always zero) to facilitate merging of the range_select branch. ( #1861 )
2019-02-01 12:14:38 +01:00
omar
0d4a2a2cd0
Internals: Track ActiveIdHasBeenPressed (similar to ActiveIdHasBeenEdited). This is currently mostly for the benefit of the range_select branch. ( #1861 )
2019-02-01 12:14:37 +01:00
omar
e30babef09
Fixed Clang/Win32 warning.
2019-02-01 11:22:53 +01:00
omar
cbf24a9151
Comments. Fix duplicate entries in About box. Synchronize a few small changes from Master branch.
2019-02-01 11:04:04 +01:00
omar
52a9f8bd3e
Merged from Docking branch: Various small changes, comments, typos fixes, moved blocks. To reduce overall drift. Should be no-op.
2019-02-01 10:26:08 +01:00
omar
f906d53f7d
Merge branch 'master' into docking
...
# Conflicts:
# imgui.cpp
2019-01-31 19:19:35 +01:00
omar
1f2bdd37b3
Docking: Builder: Added DockBuilderSetNodePos, DockBuilderSetNodeSize, allow DockBuilderAddNode creating floating node (dockspace requires ImGuiDockNodeFlags_Dockspace) ( #2109 )
2019-01-31 17:01:15 +01:00
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().
2019-01-31 14:59:45 +01:00
omar
578e15f006
Docking: Removed unnecessary ImGuiTabItemFlags_DockedWindow internal flag.
2019-01-31 14:55:00 +01:00
omar
fb4f1ff7f6
InputText: Fixed a bug where ESCAPE would be first captured by the Keyboard Navigation code. ( #2321 , #787 )
2019-01-30 15:16:09 +01:00
omar
0a233a505d
imgui-test: Added extra item info callbacks. Using nav_bb for interactions when possible. Comments, Demo tweaks.
2019-01-30 12:53:01 +01:00
omar
86d3bba157
Added ImGuiDockNodeFlags_AutoHideTabBar. ( #2109 )
2019-01-29 18:28:31 +01:00
omar
13a5f5ba8b
Merge branch 'master' into docking
...
# Conflicts:
# imgui.cpp
2019-01-27 16:46:35 +01:00
omar
c3c2cd1e82
Fix various XCode and PVS-Studio static analyzer warnings ( #2309 )
2019-01-27 16:18:23 +01:00
omar
07ff47bf1b
Docking: Fixed various border / padding related inconsistency with dock node vs floating windows. ( #2109 )
2019-01-23 19:54:45 +01:00
omar
9f96fcff3c
Docking: Added ImGuiDockNodeFlags_Dockspace instead of node internal IsDockspace toward allowing the DockBuilder API to create non-dockspace nodes.
2019-01-23 19:24:34 +01:00
omar
c81a5a6070
Docking: Comments and renaming locals to facilitate debugging.
2019-01-22 12:38:10 +01:00
omar
0947fa3de0
Merge branch 'viewport' into docking
...
# Conflicts:
# imgui.cpp
# imgui_internal.h
2019-01-21 16:54:37 +01:00
omar
cb9a6b8a8b
Merge branch 'master' into viewport
...
# Conflicts:
# examples/README.txt
# imgui.cpp
2019-01-21 16:52:22 +01:00
omar
f14f93ef6e
Fixed range-version of PushID() and GetID() not honoring the ### operator to restart from the seed value.
2019-01-21 16:50:27 +01:00
omar
f94af2f5c5
Merge branch 'viewport' into docking
...
# Conflicts:
# docs/CHANGELOG.txt
# imgui.cpp
# imgui_draw.cpp
2019-01-20 22:13:35 +01:00
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
2019-01-20 22:12:06 +01:00
omar
2c38b32db1
Removed trailing spaces ( #2038 , #2299 )
2019-01-20 17:56:17 +01:00
omar
f94ba546ba
Added checks for "zero-as-null-pointer-constant" warnings for older Clang ( #2299 , followup to #2277 )
2019-01-20 17:46:00 +01:00
omar
d1851ed6b7
Various tweaks and fixes as suggested by PVS Studio (thanks PVS Studio!) [docking branch]
2019-01-16 16:19:38 +01:00
omar
8a45c56c2c
Merge branch 'viewport' into docking
2019-01-15 21:22:29 +01:00
omar
9391a97fbf
Merge branch 'master' into viewport
...
# Conflicts:
# docs/CHANGELOG.txt
# examples/imgui_impl_win32.cpp
# examples/imgui_impl_win32.h
2019-01-15 21:22:21 +01:00
omar
95ee99e6aa
Version 1.68 WIP
2019-01-15 20:19:05 +01:00
omar
515ad62335
Merge branch 'viewport' into docking
...
# Conflicts:
# docs/TODO.txt
2019-01-15 15:14:16 +01:00
omar
73353fad64
Merge branch 'master' into viewport
2019-01-15 15:13:29 +01:00
omar
d38d7c6628
TODO update + internals: changed order or ImGuiLayoutType enums to allow using them for indexing.
2019-01-15 15:06:24 +01:00
omar
ff4bd758ca
Merge branch 'viewport' into docking
2019-01-14 21:30:07 +01:00
omar
e24674fc0e
Merge branch 'master' into viewport
2019-01-14 21:30:01 +01:00
omar
7a5058e3bf
Version 1.67
2019-01-14 17:41:44 +01:00
omar
6e41745f31
Added a bunch of diagnostic ignore to cope with Clang -Weverything being absurd. Also fixed two legit warnings. ( #2277 )
2019-01-13 18:57:46 +01:00
omar
529fccd9c2
Merge branch 'viewport' into docking
2019-01-13 14:19:40 +01:00
omar
4ee4f65c70
Merge branch 'master' into viewport
2019-01-13 14:19:31 +01:00
omar
9a9712807e
ImFontAtlas: Rewrote stb_truetype based builder.
...
- Atlas width is now properly based on total surface rather than glyph count (unless overridden with TexDesiredWidth).
- Fixed atlas builder so missing glyphs won't influence the atlas texture width. (#2233 )
- Fixed atlas builder so duplicate glyphs (when merging fonts) won't be included in the rasterized atlas.
2019-01-10 22:23:05 +01:00
omar
e3ccc96789
Internals: Added ImBoolVector helper.
2019-01-10 16:10:02 +01:00
omar
8011197c50
Merge branch 'viewport' into docking
...
# Conflicts:
# imgui.cpp
2019-01-10 16:02:32 +01:00
omar
c96aaef132
Merge branch 'master' into viewport
...
# Conflicts:
# imgui.cpp
# imgui.h
2019-01-10 16:01:36 +01:00
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).
2019-01-10 15:51:08 +01:00
omar
81eaa49773
Internals: Added comment index in imgui_internal.h
2019-01-10 15:51:08 +01:00
omar
f53cd3ee0f
Internals: LowerBound: Use raw pointer typedefs, we never use iterator anywhere else in the codebase.
...
Demo: Typo.
C98 fix.
2019-01-08 17:37:07 +01:00
omar
b33977bc15
Tests: Reworking hook prototypes for imgui-test to be faster and multi-context friendly.
2019-01-07 23:59:05 +01:00
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.
2019-01-07 23:48:50 +01:00
omar
3997e8b555
Fixed animated window titles from being updated when displayed in the CTRL+Tab list. + Adding overkill helpers for reusing buffers. ( #787 )
2019-01-07 22:46:42 +01:00
omar
6b32570644
Merge branch 'viewport' into docking
...
# Conflicts:
# imgui_internal.h
# imgui_widgets.cpp
2019-01-07 21:29:15 +01:00
omar
5af930f97a
Merge branch 'master' into viewport
...
# Conflicts:
# imgui.cpp
# imgui.h
# imgui_internal.h
2019-01-07 21:28:29 +01:00
omar
acfa4050ec
Tweak changelog + tweak internal render helper functions.
2019-01-07 16:43:55 +01:00
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.
2019-01-04 18:01:43 +01:00
omar
5278da98d2
Merge branch 'viewport' into docking
...
# Conflicts:
# docs/CHANGELOG.txt
# imgui.cpp
# imgui_demo.cpp
2019-01-03 21:40:08 +01:00
omar
606175b98f
Viewport: Fix for minimization of individual viewports (the current back-end forcing a parent/child relationship between secondary viewports and the main viewport have hidden this issue). Follows d8ab2c1ac
.
2019-01-03 21:27:47 +01:00
omar
b26f16a27f
Merge branch 'viewport' into docking
...
# Conflicts:
# imgui.cpp
2019-01-02 23:16:10 +01:00
omar
a0c2e55e8c
Merge branch 'master' into viewport
...
# Conflicts:
# imgui.cpp
# imgui_internal.h
2019-01-02 23:11:52 +01:00
omar
237109caa5
Internals: Extracted code out of EndFrame() into UpdateMouseMovingWindowEndFrame()
2019-01-02 23:08:32 +01:00
omar
b3469fa94b
Alternative fix for bug introduced in d845135
( #1651 ), fix CTRL+Tab and fallback tooltip.
2019-01-02 23:08:32 +01:00
omar
ce1626a51e
Merge branch 'viewport' into docking
...
# Conflicts:
# imgui.cpp
# imgui.h
# imgui_internal.h
2019-01-02 21:36:21 +01:00
omar
0cabe4dedf
Viewport: Added ImGuiWindowClass / SetNextWindowClass() (concept imported from Docking ImGuiDockFamily), which currently allows to overwrite viewport flags on a per-window basis. Exposed FindViewportByID(). Win32: Support for ParentViewportId. ( #1542 )
2019-01-02 21:33:23 +01:00
omar
5305c32242
Viewport: Reorder flags. Set owned viewport common decoration flags in Begin(). Moved code in UpdateViewportsEndFrame() before we introduce family/class based overrides.
2019-01-02 19:03:11 +01:00
omar
e194219f2e
Renamed ImGuiDockFamily to ImGuiWindowClass. Renamed CompatibleWithClassZero to DockingAllowUnclassed. ( #2109 )
2019-01-02 16:22:44 +01:00
omar
a71d3c8cb3
Viewport: Misc comments following user feedbacks..
2018-12-21 18:40:16 +01:00
omar
81a2546cea
Merge branch 'viewport' into docking
...
# Conflicts:
# examples/example_allegro5/main.cpp
# examples/example_win32_directx9/main.cpp
2018-12-20 23:06:29 +01:00
omar
d9fda22763
Viewport: Fixed not clearing request flags in main viewport, which led some back-end (SDL) to break on resize as PlatformRequestResize would stay true forever and inhibit new sizes passed to AddUpdateViewport(). ( #1542 )
2018-12-20 22:33:51 +01:00
omar
088ef6623a
Merge branch 'viewport' into docking
2018-12-18 15:03:01 +01:00
omar
9c916cdaf9
Merge branch 'master' into viewport
...
# Conflicts:
# imgui.cpp
2018-12-18 15:02:35 +01:00
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.
2018-12-18 15:01:15 +01:00
omar
ac9512e095
Merge branch 'master' into docking
...
# Conflicts:
# imgui.cpp
2018-12-14 18:46:24 +01:00
omar
65dac02171
Internals: Popups: Renamed CurrentPopupStack to BeginPopupStack which is much less ambiguous.
2018-12-14 18:44:17 +01:00
omar
f1c7596409
Internals: Popup related comments. Renamed the misleading internal ClosePopup() function. Added bool* test to BeginPopupModal in demo.
2018-12-14 18:42:22 +01:00
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.)
2018-12-14 11:27:02 +01:00
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
2018-12-11 13:23:00 +01:00
omar
c40feabe4d
Merge branch 'master' into viewport
...
# Conflicts:
# imgui.cpp
# imgui_internal.h
2018-12-11 12:41:40 +01:00
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.
2018-12-11 12:36:47 +01:00
omar
15447f5b7b
Using named flags instead of 0 + shallow formatting tweaks from other branches.
2018-12-11 12:14:27 +01:00
omar
e6439e1a16
Merge branch 'viewport' into docking + moved io.ConfigFlags ImGuiConfigFlags_DockingNoSplit to io.ConfigDockingNoSplit
...
# Conflicts:
# imgui.cpp
# imgui.h
# imgui_demo.cpp
2018-12-10 16:21:49 +01:00
omar
26b9e2d0a5
Merge branch 'master' into viewport
...
# Conflicts:
# imgui.cpp
# imgui_demo.cpp
2018-12-10 16:14:31 +01:00
omar
d20e3ee710
Tests: Adding imgui-test engine hooks (experimental) to provide missing widget state to the testing system.
2018-12-10 14:30:41 +01:00
omar
f768727284
Merge branch 'viewport' into docking
...
# Conflicts:
# imgui.cpp
2018-12-06 16:36:17 +01:00
omar
a03846bd9e
Merge branch 'master' into viewport
...
# Conflicts:
# imgui.cpp
# imgui_internal.h
2018-12-06 16:33:39 +01:00
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.
2018-12-04 14:34:49 +01:00
omar
5105c6c0d0
Merge branch 'viewport' into docking
...
# Conflicts:
# docs/CHANGELOG.txt
# imgui.cpp
2018-12-04 00:06:26 +01:00
omar
3a678d48b1
Merge branch 'master' into viewport
...
# Conflicts:
# examples/imgui_impl_dx10.cpp
# examples/imgui_impl_dx11.cpp
2018-12-04 00:05:45 +01:00
omar
8bac6d428d
Docking: Another attempt at tidying the inconsistent focus / tab bar reordering issues, and toward generalizing single window dock nodes. ( #2109 )
2018-12-04 00:01:20 +01:00
omar
f6b6ad1959
Viewport: Minor tweaks, better struct layout.
2018-12-03 20:30:00 +01:00
omar
10e13dd6bb
Version 1.67 WIP (again, this time IMGUI_VERSION_NUM has leeway for another hot-fix).
2018-12-03 12:19:23 +01:00
omar
ac10889bde
Merge branch 'viewport' into docking
...
# Conflicts:
# docs/CHANGELOG.txt
2018-12-03 11:44:51 +01:00
omar
65e579e558
Merge branch 'master' into viewport
...
# Conflicts:
# docs/CHANGELOG.txt
# examples/imgui_impl_dx10.cpp
# examples/imgui_impl_dx11.cpp
# examples/imgui_impl_dx12.cpp
# examples/imgui_impl_glfw.cpp
# examples/imgui_impl_opengl2.cpp
# examples/imgui_impl_opengl3.cpp
# examples/imgui_impl_sdl.cpp
# examples/imgui_impl_vulkan.cpp
# examples/imgui_impl_win32.cpp
# imgui.h
# imgui_demo.cpp
2018-12-03 11:41:53 +01:00
omar
801645d350
Version 1.66b (will revisit how to change IMGUI_VERSION_NUM across versions, this commit reduces the numerical IMGUI_VERSION_NUM compared to the commit on Nov 22).
2018-12-03 10:17:17 +01:00
omar
f78b5a0cdb
Merge branch 'viewport' into docking
2018-11-30 18:27:14 +01:00
omar
afeefadb4e
Merge branch 'master' into viewport
...
# Conflicts:
# examples/imgui_impl_dx10.cpp
# examples/imgui_impl_dx11.cpp
# examples/imgui_impl_glfw.cpp
# examples/imgui_impl_opengl2.cpp
# examples/imgui_impl_opengl3.cpp
# examples/imgui_impl_sdl.cpp
# examples/imgui_impl_win32.cpp
# imgui.h
2018-11-30 18:24:43 +01:00
omar
f663277591
Merge misc/shallow changes from Docking branch to minimize drift: moved some blocks, added comments.
2018-11-30 14:35:13 +01:00
omar
baf67d393f
When the focused window become inactive don't restore focus to a window with the ImGuiWindowFlags_NoInputs flag. ( #2213 )
2018-11-29 23:25:29 +01:00
omar
3c114b280a
Merge branch 'viewport' into docking
...
# Conflicts:
# imgui_internal.h
2018-11-29 21:30:26 +01:00
omar
2fbbcaa339
Viewport: Avoid calling platform functions when window is not created (apart from Platform_GetWindowDpiScale, documented as such). Main viewport situation is still ambiguous. ( #1542 )
2018-11-29 21:28:47 +01:00
omar
36cbe1e521
Viewport: Misc renaming.
2018-11-29 21:21:04 +01:00
omar
19d17ed274
Docking: Added io.ConfigDockingTransparentPayload option (to use with ImGuiConfigFlags_ViewportsNoMerge)
2018-11-29 16:18:01 +01:00
omar
3bcc25f588
Merge branch 'viewport' into docking
...
# Conflicts:
# imgui.cpp
# imgui.h
2018-11-27 19:56:23 +01:00
omar
c08b4b46f4
Viewport: Better support for toggling ImGuiConfigFlags_ViewportsEnable. ( #2196 )
2018-11-27 19:46:36 +01:00
omar
4575354bc0
Docking: Comments + maiintain LastFrameFocused per node + using bitfiield for docking bools.
2018-11-27 13:29:09 +01:00
omar
3f51c831de
Docking: Added internal DockBuilderGetCentralNode(). Fixed being unable to undock whole node from dock button in DockSpace with a central node. ( #2109 )
2018-11-26 22:18:55 +01:00
omar
4a8efd7e68
Docking: Hidden tab-bar triangle reflects focus but using Button colors. ( #2109 )
2018-11-26 17:57:01 +01:00
omar
d23c69d319
Docking: Added context menu option to hide the tab bar of single-window dock nodes, similar to Unreal. ( #2109 )
2018-11-26 17:25:06 +01:00
omar
ddc3f8f069
Merge branch 'viewport' into docking
...
# Conflicts:
# docs/CHANGELOG.txt
# imgui.cpp
# imgui_internal.h
2018-11-26 15:32:04 +01:00
omar
5261e5a6ba
Merge branch 'master' into viewport
...
# Conflicts:
# examples/imgui_impl_sdl.cpp
2018-11-26 14:53:51 +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
760c1d95b9
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:13:07 +01:00
omar
0c4dee083c
Internals: Added ImPool helper data structure (used by testing system, and already in docking branch)
2018-11-22 18:59:57 +01:00
omar
d27ffefbd4
Version 1.67 WIP
2018-11-22 18:59:57 +01:00
omar
2515413080
Merge branch 'viewport' into docking
...
# Conflicts:
# docs/CHANGELOG.txt
# imgui_widgets.cpp
2018-11-22 15:29:18 +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
6b4443755d
Internals: Added FindWindowByID() helper. ( #2190 )
2018-11-15 16:41:48 +01:00
omar
4a43f347bb
Merge branch 'viewport' into docking
...
# Conflicts:
# examples/example_allegro5/main.cpp
# examples/example_marmalade/main.cpp
2018-11-15 14:00:01 +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
6c1ae6cc71
Internals: DragBehavior: Added support for ImGuiDragFlags_Vertical to implement a vertical drag widget (no frontend function provided).
2018-11-09 14:41:40 +01:00
omar
168af9b377
Merge branch 'viewport' into docking
...
# Conflicts:
# imgui_demo.cpp
2018-10-25 23:45:19 +02:00
omar
50f6e12d31
Merge branch 'master' into viewport
...
# Conflicts:
# imgui.cpp
2018-10-25 23:41:13 +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
5f8c9ae0ef
Merge branch 'viewport' into docking
...
# Conflicts:
# imgui.cpp
# imgui.h
2018-10-18 10:57:54 +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
c398153b40
Merge branch 'master' into docking
...
# Conflicts:
# examples/imgui_impl_sdl.cpp
# imgui.cpp
# imgui_internal.h
2018-10-12 13:01:20 +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
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
1efafa1d29
Comments + internal using Tab Stop terminology (ImGuiItemFlags_NoTabStop instead of !ImGuiItemFlags_AllowKeyboardFocus)
2018-10-10 12:09:06 +02:00
omar
84507cc744
Docking: Kept ImGuiDockNodeFlags_PassthruDockspace and removed ImGuiDockNodeFlags_PassthruInEmptyNodes, ImGuiDockNodeFlags_RenderWindowBg. Doesn't include ImGuiDockNodeFlags_NoDockingInCentralNode. ( #2109 )
2018-10-08 12:37:10 +02:00
omar
cb76c086e0
Docking: Removed context parameter from internal DockBuilderXXX api at it is expected we transition it to be public facing. ( #2109 )
2018-10-05 16:14:51 +02:00
omar
4e30698706
Docking: Added ImGuiDockNodeFlags_PassthruDockspace mode (subdivided in three flags: ImGuiDockNodeFlags_NoDockingInCentralNode, ImGuiDockNodeFlags_PassthruInEmptyNodes, ImGuiDockNodeFlags_RenderWindowBg). Added internal facility for register a rectangular hit-test hole in window. Updated DockSpace demo accordingly. ( #2109 )
2018-10-03 22:32:23 +02:00
omar
d348d86df4
Docking: Renamed "DocRoot/DocumentRoot" to "CentralNode", more self explanatory. Moved Splitter update higher up in DockNodeUpdate() + minor misc tweak. ( #2109 )
2018-10-03 17:50:07 +02:00
omar
bd82539ad5
Docking: Fixed DockSpace() child window displaying a scrollbar behind the node backgrounds. Rename ImGuiCol_DockingBg to ImGuiCol_DockingEmptyBg. Added ImGuiDockNode::IsLeaftNode(). ( #2109 )
2018-10-03 14:42:47 +02:00
omar
46dff42239
Docking: Fixed dock node with single window accidental stealing of non-owned host viewport (leading to general havoc).
2018-09-30 19:30:51 +02:00
omar
876a3299fc
Docking: Added DockBuilderCopyDockspace() wip. Added DockBuilderCopyWindowSettings(), renamed DockBuilderForkNode() to DockBuilderCopyNode().
2018-09-28 17:58:55 +02:00
omar
93896d550e
Added FindOrCreateWindowSettings() internal helper.
2018-09-26 23:01:51 +02:00
omar
c0a89f8f4e
ImPool: Added Reserve() helper function.
2018-09-26 21:51:30 +02:00
omar
4053d9d638
Docking: Fixed tab order restoring (follow up to 67be485e
, broken in 455dc6e2
)
2018-09-26 17:11:37 +02:00
omar
45731cca19
Docking: Added DockBuilderForkNode() primitive for usage for user code to fork/copy entire layouts. This will probably need to be added to as I find ways to migrate patterns from user code to the library. Added IMGUI_DEBUG_DOCKING_INI helper to facilitate debugging. (+1 squashed commits)
2018-09-26 17:11:37 +02:00
omar
53a5d32df1
Docking: Reworked SetNextWindowUserType() as SetNextWindowDockFamily(), allowing multiple scene to be tagged with their scene id and not receive tabs from other scene + persistent storage for family id to allow for docking tree fork/remap.
2018-09-25 16:15:25 +02:00
omar
85e1e2b0c8
Docking: Added DockBuilderGetNode() wrapper for consistency.
2018-09-25 14:14:07 +02:00
omar
9960ccddb2
Docking: Added DockBuilderRemoveNode() + various tweaks. Fixed dragging/undocking dock node from CollapseButton.
2018-09-24 23:19:18 +02:00
omar
4021776d0f
Docking: Fix for undocking node where the dockspace node is attached to an immovable parent window. + Tweak .ini output.
2018-09-24 22:14:12 +02:00
omar
fa0ce4b7d5
Docking: Some DockBuilder functions are applied on settings data if windows are not present. Added DockBuilderCreateNode which needs a size else if we can't split properly. DockNodeTreeSplit() doesn't clamp SizeRef. (+1 squashed commits)
2018-09-24 16:38:44 +02:00
omar
2a5ce1849a
Docking, Viewport: Reworked viewport inheritance/transition so that extracting a dock node from a split node owning its viewport will have both viewports be in the expected OS z-order. (The lower window re-use the exiting viewport, the detached node uses a new viewport:
2018-09-24 10:53:51 +02:00
omar
3e47978a80
Docking: Renamed ImGuiDockSpaceFlags to ImGuiDockNodeFlags. Clarified in comments/demos that DockSpace creates a Node. Renamed IsExplicitRoot to IsDockSpace. Assert against explicitly calling DockSpace twice in a frame.
2018-09-20 09:52:51 +02:00
omar
e647f89c33
Docking: Added undocking of whole dock node by dragging from the Collapse button. Super useful and works great!
2018-09-19 22:38:40 +02:00
omar
95d49c3b98
Docking: Internals renaming LastExplicitSize to SizeRef (invalidate .ini data) + todo
2018-09-19 18:25:26 +02:00
omar
291bfe6841
Docking: work to allow programmatic control of dock nodes, various refactor + assert fix. Probably broke something (but I haven't found what yet!)
2018-09-19 16:00:13 +02:00
omar
35032d41fa
Docking: Internals: Transitioning some code toward consistently using ImGuiContext* ctx parameter instead of ImGuiDockContext
2018-09-17 17:06:52 +02:00
omar
b55b9aee9b
Fixed bad merge ( a82be53
) where we lost the version number in Docking branch + moved Docking related API together for now.
2018-09-14 18:09:46 +02:00
omar
175bab4f5f
Docking: Removed SplitRatio from ImGuiDockNode and ImGuiDockNodeSettings, which we don't need anymore.
2018-09-14 17:51:30 +02:00
omar
e32256b4b4
Merge branch 'viewport' into docking
...
# Conflicts:
# docs/CHANGELOG.txt
# imgui_demo.cpp
# imgui_internal.h
2018-09-14 11:38:10 +02:00
omar
1cefc48f13
Docking: Internal renaming and comments. + Fixed DockNodeMoveChildNodes() to transfer the LastExplicitSize value (was inconsequential afaik).
2018-09-11 18:53:08 +02:00
omar
211a9c8fd2
Docking: Added ImGuiDockSpaceFlags_KeepAliveOnly, important for multiple level of tabs. (also renamed ImGuiDockFlags to ImGuiDockSpaceFlags.)
2018-09-11 17:58:09 +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
d5692bff00
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:30:14 +02:00
omar
dcef0c0237
Docking: Updating LastFrameActive earlier in Begin() because BeginDocked() will need to use it. Extracted some code into a DockNodeIsDropAllowedOne() function. Comments.
2018-09-10 20:23:03 +02:00
omar
a68c98bb67
Docking: Added SetNextWindowUserType() + user type filtering in dockspace and window merging. Added DockSpace() flag ImGuiDockFlags_NoSplit. Renaming. Reworked the DockNodeUpdateFindOnlyNodeWithWindows code so DockNodeUpdate can access the first window.
2018-09-10 14:32:00 +02:00
omar
a82be53407
Merge branch 'docking2' into viewport_docking
...
# Conflicts:
# examples/example_glfw_opengl2/main.cpp
# examples/example_glfw_opengl3/main.cpp
# examples/example_glfw_vulkan/main.cpp
# examples/example_sdl_opengl3/main.cpp
# examples/example_sdl_vulkan/main.cpp
# examples/example_win32_directx10/main.cpp
# examples/example_win32_directx11/main.cpp
# examples/example_win32_directx12/main.cpp
# imgui.cpp
# imgui.h
# imgui_demo.cpp
# imgui_internal.h
2018-09-06 22:28:21 +02:00
omar
bd5b38e232
Docking: Added Docking system. Enable with io.ConfigFlags |= ImGuiConfigFlags_DockingEnable. (Part 1) ( #351 )
2018-09-06 21:45:46 +02:00
omar
2ec135c9f7
Docking: Added ImVec2[] non const operator. Added ImStrSkipBlank. Reseting some values earlier in Begin. Added IMGUI_DEBUG_LOG() helper. Added docking source code section.
2018-09-06 21:45:45 +02:00
omar
58d46e1fe6
Tabs: Added BeginTabBar(), EndTabBar(), BeginTabItem(), EndTabItem() + demo. ( #261 , #351 )
2018-09-06 21:45:44 +02:00
omar
c039a77d21
Internals: Added ImPool helper structure. Moved ImVec1f.
2018-09-06 21:45:10 +02:00
omar
52e0de84a9
Internals: Split RenderTextClipped into two functions.
2018-09-06 21:45:09 +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
8601c39571
Viewport: Making the code a little more sturdy (flag changes) + added descriptions. ( #1542 )
2018-09-05 17:50:55 +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
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
d07f494305
Internals: Exposed SliderBehaviorT, DragBehaviorT, RoundScalarWithFormatT, SliderCalcRatioFromValueT. ( #2036 )
...
Renamed RoundScalarWithFormat -> RoundScalarWithFormatT.
Renamed SliderBehaviorCalcRatioFromValue -> SliderCalcRatioFromValueT
2018-09-03 14:49:13 +02:00
omar
bcb1441ce7
Version 1.65 WIP
2018-09-03 14:38:04 +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
81bc4265e5
Refactor: Internals: Moved Settings functions in imgui.cpp in their own section. ( #2036 )
2018-08-30 19:32:52 +02:00
omar
15172f0742
Refactor: Internals: Moved Settings functions in imgui.cpp in their own section. ( #2036 )
2018-08-30 19:23:10 +02:00
omar
6c34bffbb5
Version 1.64 WIP
2018-08-30 19:00:22 +02:00
omar
f2aa124eb8
Version 1.64 WIP
2018-08-30 14:25:23 +02:00
omar
36b2f64051
Merge branch 'master' into viewport
...
# Conflicts:
# examples/example_glfw_opengl3/main.cpp
# examples/imgui_impl_opengl3.cpp
# imgui.cpp
# imgui_internal.h
2018-08-29 17:40:52 +02:00
omar
9e0f24dcb6
Version 1.63
2018-08-29 16:20:25 +02:00
omar
92edb7a4e3
Internals: Tidying up, moving helpers to imgui_internal.h (in prevision of 1.64 refactor)
2018-08-29 16:12:54 +02:00
omar
f9634feb66
Internals: Merged some changes to facilitate 1D->2D transition for some elements, and merging the stack layout PR ( #846 )
2018-08-28 19:10:59 +02:00
omar
f81caac459
Merge branch 'master' into viewport
...
# Conflicts:
# imgui.cpp
# imgui.h
2018-08-25 21:19:42 +02:00
omar
06e917f135
Internals: Renaming of non-user facing parts from ValueChanged to Edited terminology. ( #2034 , #820 , #956 , #1875 )
2018-08-23 13:47:37 +02:00
omar
abaa274592
Internals: Wired a ImGuiItemStatusFlags_ValueChanged into ItemStatusFlags, for an hypothetical IsItemValueChanged() function. ( #2034 )
2018-08-22 22:31:51 +02:00
omar
102d5e6de6
Rearrange header comments to find enums easily + fixed inconsistent sorting.
2018-08-22 22:13:05 +02:00
omar
a4191857c1
Merge branch 'master' into viewport
...
# Conflicts:
# examples/imgui_impl_vulkan.h
# imgui.cpp
2018-08-22 21:35:44 +02:00
omar
2dc5ec95d7
Internals: InputText: Renaming. Comments.
2018-08-22 12:46:46 +02:00
omar
9f393c38e9
InputText: Renamed ImGuiTextEditCallback to ImGuiInputTextCallback, ImGuiTextEditCallbackData to ImGuiInputTextCallbackData for consistency. Kept redirection types (will obsolete).
2018-08-22 12:46:45 +02:00
omar
24ff259816
InputText: Added support for buffer size/capacity changes via the ImGuiInputTextFlags_CallbackResize flag. ( #2006 , #1443 , #1008 ).
2018-08-21 21:36:07 +02:00
omar
4de6e1f7e4
InputText: Internal renaming of some fields + final copy uses edit_state.CurLenA+1 instead of buf_size.
2018-08-21 15:14:10 +02:00
omar
4910629f6a
Internals: Moved code out of SliderBehaviorT to reduce code bloat and also because caller may have use for the grab_bb for styling purposes.
2018-08-20 09:59:51 +02:00
omar
9d7480774f
Merge branch 'master' into viewport
2018-08-17 11:37:03 -07:00
omar
bb2de30e3e
Internals: Added ImTextCountUtf8BytesFromChar() helper.
2018-08-17 11:33:45 -07:00
omar
341ebd961b
Fixed assertion when transitioning from an active ID to another within a group, affecting ColorPicker (broken in 1.62). Made ActiveIdIsAlive track the actual ID to avoid incorrect polling in BeginGroup/EndGroup when the ID changes within the group. ( #2023 , #820 , #956 , #1875 ).
2018-08-16 13:33:16 -07:00
omar
4e33aeed82
Selectable: Added ImGuiSelectableFlags_Disabled flag in the public API. ( #211 )
2018-08-14 16:07:01 -07:00
omar
e5f2295398
Merge branch 'master' into viewport
...
# Conflicts:
# examples/imgui_impl_opengl2.cpp
# examples/imgui_impl_opengl3.cpp
# imgui.cpp
2018-08-13 17:50:48 -07:00
omar
d4cd121ae1
TODO + added missing _None enum for some internals flags.
2018-08-09 21:03:17 +02:00
omar
fda9dc8e18
Internals: Extracted RenderMouseCursor() out of EndFrame(). Moved to imgui_draw.cpp along with RenderArrowPointingAt(). Comments. ( #2013 )
2018-08-09 18:07:49 +02:00
omar
0905202f44
Internals: Minor renaming for consistency.
2018-08-05 18:13:24 +02:00
omar
8ef0ca9765
Merge branch 'master' into viewport
...
# Conflicts:
# examples/imgui_impl_dx11.cpp
# examples/imgui_impl_glfw.cpp
# examples/imgui_impl_sdl.cpp
# imgui.cpp
2018-08-01 12:27:56 +02:00
omar
65b46f62ef
Fixed PushID() from keeping alive the new ID Stack top value (if a previously active widget shared the ID it would be erroneously kept alive) (drag and drop demo could soft-lock the UI until pressing Escape!)
2018-07-31 17:28:18 +02:00
omar
9824bf1ba1
Merge branch 'master' into viewport
...
# Conflicts:
# examples/imgui_impl_opengl3.cpp
# imgui.cpp
2018-07-31 12:12:56 +02:00
omar
e13e5982ff
Drag and Drop: Payload stays available and under the mouse if the source stops being submitted, however the tooltip is replaced by "..." + moved FrameScopeActive = false at the bottom of EndFrame() for safety. ( #1725 )
2018-07-31 12:11:18 +02:00
omar
a7ac9e8346
Made assertion more clear when trying to call Begin() outside of the NewFrame()..EndFrame() scope. ( #1987 )
2018-07-30 18:20:25 +02:00
omar
4d5dcdb57a
Internals: Changed signature of ShadeVerts functions to remove pointers. ( #1286 , #1700 , #1986 )
2018-07-30 17:24:04 +02:00
omar
0095b7a0ea
Merge branch 'master' into viewport
...
# Conflicts:
# imgui.cpp
# imgui_internal.h
2018-07-26 23:55:23 +02:00
omar
28c1a9857e
Internals: Changed SplitterBehavior() signature to be consistent with other similar signatures. ( #319 ).
2018-07-26 23:50:05 +02:00
omar
63df9d6311
Internals: Extracted part of Begin into UpdateWindowParentAndRootLinks(). Useful to call to keep state updated immediately (namely useful for docking) + small tidying up of imgui_internal.h
2018-07-26 23:49:36 +02:00
omar
6b4f6cd2c5
Merge branch 'master' into viewport
...
# Conflicts:
# imgui.cpp
2018-07-26 19:25:55 +02:00
omar
dd0d5debef
Internals: Child windows that are clipped or part of a collapsed parent are not marked as collapsed anymore, but just a separate hidden marker set. We distinguish hiding for size measurement vs hiding for other reasons. Cleaned a little the end of Begin.
2018-07-26 19:24:27 +02:00
omar
0b045d8de5
Nav: Tweaked CTRL+TAB to hide visual noise on fast switch + fading out screen dimming and highlight to make the experience less harsh
2018-07-26 19:03:02 +02:00
omar
1b646a4440
Nav: Tweaked CTRL+TAB to hide visual noise on fast switch + fading out screen dimming and highlight to make the experience less harsh
2018-07-26 19:01:51 +02:00
omar
0c88fad6c2
Internals: SplitterBehavior() added hover_visibility_delay parameter which is helpful to reduce visual noise. ( #319 )
2018-07-25 16:07:05 +02:00
omar
f22024cb19
Internals: Exposed NavScoreItemGetQuadrant() as ImGetDirQuadrantFromDelta() in imgui_internal.h
2018-07-24 16:54:29 +02:00
omar
352695bc57
Merge branch 'master' into viewport
...
# Conflicts:
# examples/imgui_impl_sdl.cpp
# imgui.cpp
2018-07-24 16:50:49 +02:00
omar
357534e588
Made it possible to move a window by dragging from the Collapse button (past the drag threshold). Extracted some code out to a CollapseButton() function.
2018-07-24 16:45:11 +02:00
omar
3a522b2400
Internals: Renamed one of the arrow functions so their name don't collide.
2018-07-24 16:41:17 +02:00
omar
e07f5d4c78
Changed ImGui::GetTime() return value from float to double to avoid accumulating floating point imprecisions over time.
2018-07-22 18:46:41 +02:00
omar
7b4fbf4301
Viewport: Removed the need for the back-end to fill io.MousePosViewport, it seems unnecessary at this point. ( #1542 )
2018-07-17 16:37:10 +02:00
omar
b8b74970d7
Internals: Viewport: Renamed g.MouseRefViewport to g.MouseViewport. ( #1542 )
2018-07-17 16:04:47 +02:00
omar
b30b82835a
Merge branch 'master' into viewport
...
# Conflicts:
# imgui.cpp
# imgui_demo.cpp
# imgui_internal.h
2018-07-12 11:48:49 +02:00
omar
5e73e969fb
Comments, exposed a few things in imgui_internal.h for consistency, added ImQsort wrapper.
2018-07-12 11:08:24 +02:00
omar
88df66ec83
Merge branch 'master' into viewport
...
# Conflicts:
# examples/imgui_impl_opengl3.cpp
# imgui.cpp
# imgui.h
# imgui_draw.cpp
# imgui_internal.h
2018-07-12 10:03:18 +02:00
omar
9007dff5eb
IsItemHovered(): Added ImGuiHoveredFlags_AllowWhenDisabled flag to query hovered status on disabled items. ( #1940 , #211 )
...
+ shallow changelog tweaks
2018-07-10 19:16:57 +02:00
omar
4dfb9ef751
Internals: Extracted StartMouseMovingWindow so we can add code to turn an arbitrary widget into a window mover (will be useful to make the Collapse button a window mover past a mouse drag threshold) + added a couple of _None flags.
2018-07-10 11:16:40 +02:00
omar
140ece0aeb
Internals: HoveredWindowUnderMovingWindow special handling for drag and drop of window without altering the _NoInputs window flag, which worked but messed up the IsWindowHovered() user-facing flags.
2018-07-09 21:18:10 +02:00
omar
574185426c
Internals: Misc/shallow merge from Docking branch.
2018-07-09 21:06:46 +02:00
omar
7033b2043b
Internals: Move IMGUI_CDECL declaration to imgui_internal.h so everyone can profit.
2018-07-09 20:34:12 +02:00
omar
dd61c4802a
Nav: Added a CTRL+TAB window list and changed the highlight system accordingly. ( #787 )
2018-07-09 19:22:49 +02:00
omar
c7016c25e8
Nav: Added a CTRL+TAB window list and changed the highlight system accordingly. ( #787 )
2018-07-09 19:16:48 +02:00
omar
14cef31467
Merge branch 'master' into viewport
...
# Conflicts:
# imgui.cpp
2018-07-09 16:24:01 +02:00
omar
0708f91617
Internals: Removed RootWindowForTabbing, won't be needed. Nav: Not starting NavWindowingTarget when a modal is active (was not noticeable).
2018-07-09 16:20:14 +02:00
omar
bd6097ac6f
Drag and Drop: Calling BeginTooltip() between a BeginDragSource()/EndDragSource() or BeginDropTarget()/EndDropTarget() uses adjusted tooltip settings matching the one created when calling BeginDragSource() without the ImGuiDragDropFlags_SourceNoPreviewTooltip flag. ( #143 ) + additional safety checks.
2018-07-08 20:06:49 +02:00
omar
64938178b7
Internals: Moved selectable flags to avoid collision with public flags + rewrote some tests so we can consistently grep for (held && hovered)
2018-07-08 18:23:12 +02:00
omar
6277781e83
Merge branch 'master' into viewport
...
# Conflicts:
# imgui.cpp
2018-07-08 13:08:16 +02:00
omar
93950b8c32
Internals: Removed unused ShadeVertsLinearAlphaGradientForLeftToRightText code.
2018-07-06 15:50:07 +02:00
omar
770cba0bd0
Merge branch 'master' into viewport
...
# Conflicts:
# examples/imgui_impl_glfw.cpp
# examples/imgui_impl_glfw.h
# examples/imgui_impl_sdl.cpp
# examples/imgui_impl_sdl.h
# examples/imgui_impl_win32.cpp
# examples/imgui_impl_win32.h
# imgui.cpp
# imgui_internal.h
2018-07-02 20:13:16 +02:00
omar
004fe8916a
Internals: Settings: Simple optimization caching index into the settings buffer, to remove an unnecessary O(N*M) search during saving. (with N=active root windows during the session, M=stored settings which grows over time)
2018-06-28 18:42:38 +02:00
omar
7adae3299e
Double-click on resize grip doesn't need to test HoveredWindow (as button has the flattenchild flag anyway) + double-click on title bar verify that we don't have overlapping items to allow contents in title bar. + Comments
2018-06-27 17:29:31 +02:00
omar
c38fe6b0e1
Merge branch 'master' into viewport
...
# Conflicts:
# imgui.cpp
2018-06-26 12:41:36 +02:00
omar
79153cf19f
Internals: Various renaming. e.g. NewFrameUpdateHoveredWindowAndCaptureFlags() to UpdateHoveredWindowAndCaptureFlags() + exposed UpdateMovingWindow() in imgui_internal.h.
2018-06-26 12:40:37 +02:00
omar
14ceaaf460
ArrowButton: Fixed to honor PushButtonRepeat() setting (and internals' ImGuiItemFlags_ButtonRepeat). Setup current line text baseline so that ArrowButton() + SameLine() + Text() are aligned properly.
2018-06-26 12:37:20 +02:00
omar
c1d8dee6c5
Version 1.63 WIP
2018-06-25 09:40:09 +02:00
omar
ce500f8727
Merge branch 'master' into viewport
...
# Conflicts:
# examples/imgui_impl_glfw.cpp
# examples/imgui_impl_win32.cpp
2018-06-22 12:01:42 +02:00
omar
1b74e3be02
Version 1.62
2018-06-22 09:41:25 +02:00
omar
70b0bd13aa
Merge branch 'master' into viewport
...
# Conflicts:
# examples/imgui_impl_opengl2.cpp
# examples/imgui_impl_opengl2.h
# examples/imgui_impl_opengl3.cpp
# examples/imgui_impl_opengl3.h
# imgui.cpp
# imgui.h
2018-06-14 15:30:15 +02:00
omar
d57fc7fb97
Added IsItemDeactivatedAfterChange() if the last item was active previously, isn't anymore, and during its active state modified a value. Note that you may still get false positive. ( #820 , #956 , #1875 )
2018-06-13 00:10:33 +02:00
omar
be4b8b5615
Internals: Added GetItemID(), GetFocusID() for consistency. Made GetActiveID() inline. Comments, fixed typos, demo tweaks.
2018-06-13 00:02:19 +02:00
omar
cd455a4600
Added IsItemDeactivated() to query if the last item was active previously but isn't anymore. Useful for Undo/Redo patterns. ( #820 , #956 , #1875 )
2018-06-12 18:44:33 +02:00
omar
c725710c6d
Comments
2018-06-12 18:25:04 +02:00
omar
93b032ea92
Merge branch 'master' into viewport
...
# Conflicts:
# examples/opengl3_example/imgui_impl_glfw_gl3.cpp
# examples/sdl_opengl3_example/imgui_impl_sdl_gl3.cpp
# imgui.cpp
2018-06-05 15:51:52 +02:00
omar
6d98c0323b
Nav: Added support for PageUp/PageDown (explorer-style: first aim at bottom/top most item, when scroll a page worth of contents). ( #787 )
2018-06-05 15:49:33 +02:00
omar
5a7e98c7cf
Internals: Nav: Removed ParentID from move result (unused, would need to be full-filled for PageUp/PageDown code) + FAQ typo fix.
2018-06-04 15:43:33 +02:00
omar
08e20ae465
Internals: Reintroducing LastActiveIdTimer because it is useful and to reduce merge conflicts. ( #1537 )
2018-05-28 21:48:25 +02:00
omar
d4b151076c
Internals: Added BeginDragDropTooltip() internal function to convey semantic (drag and drop tooltip doesn't get clipped within display boundaries). Revert part of 3218666fb9
. ( #1739 , #143 ).
2018-05-28 21:40:09 +02:00
omar
92b7d6bc4f
Added ImGuiDragDropFlags_AcceptNoPreviewTooltip flag to disable drag source tooltip from the target site ( #143 )
2018-05-28 20:57:41 +02:00
omar
01429e7d16
Merge branch 'master' into viewport
...
# Conflicts:
# examples/opengl3_example/imgui_impl_glfw_gl3.cpp
# examples/sdl_opengl3_example/imgui_impl_sdl_gl3.cpp
# imgui.cpp
# imgui.h
2018-05-17 15:03:56 +02:00
omar
d5c8f404b2
Remove trailing white spaces.
2018-05-17 14:12:37 +02:00
omar
ede5059e69
Internals: Forward declaring and commenting internal structures. Renamed ImGuiDrawContext to ImGuiWindowTempData, but kept .DC member name for backward compatibility purpose
2018-05-17 10:48:15 +02:00
omar
86f8cdbd98
Comments + Internals: Selectable: decoupled internal flags and removed their menu / menu-item semantic as upcoming changes are requiring more flexibility.
2018-05-16 18:03:37 +02:00
omar
99ff6fc7e4
Nav: Draft internal api to forward move request with loop/wrap options. Will rework for parallel scoring of two paths (as a generalization of the NavFlattened concept). ( #787 )
2018-05-14 23:07:35 +02:00
omar
036dce634e
Version 1.62 WIP
2018-05-14 19:19:19 +02:00
omar
b0fb340b57
Merge branch 'master' into viewport
...
# Conflicts:
# imgui.cpp
2018-05-14 13:15:21 +02:00
omar
78b28d545f
Version 1.61 + todo additions
2018-05-14 12:34:47 +02:00
omar
725c13ca68
Fix for atof with glibc.
2018-05-13 22:43:43 +02:00
omar
2a2bb8970d
Added ImAtof, ImCeil, ImFloorStd to IMGUI_DISABLE_MATH_FUNCTIONS for consistency. Configuration comments.
2018-05-13 22:31:29 +02:00
omar
ff033f431b
Added IMGUI_DISABLE_MATH_FUNCTIONS in imconfig.h to make it slightly easier to redefine wrappers to std maths functions such as fabsf(), fmodf(), etc. Comments.
2018-05-13 21:04:07 +02:00
omar
85f3ba844c
Merge branch 'master' into viewport
...
# Conflicts:
# examples/sdl_opengl2_example/imgui_impl_sdl_gl2.cpp
# examples/sdl_opengl3_example/imgui_impl_sdl_gl3.cpp
# imgui.cpp
# imgui.h
2018-05-11 22:22:41 +02:00
omar
fc7fc83f9e
Data types: DragScalar, InputScalar: default parameters. Added IM_STATIC_ASSERT(). Comments.
2018-05-11 19:27:27 +02:00
omar
8149408408
Merge branch 'data_types'
...
# Conflicts:
# CHANGELOG.txt
# imgui.cpp
2018-05-11 16:48:50 +02:00
omar
773d484009
Internals: Made ContentsRegionRect absolute to reduce confusion. Renamed InnerRect to InnerMainRect, renamed WindowRectClipper to OuterRectClipped.
2018-05-09 23:12:34 +02:00
omar
f83f566530
Internals: Nav: Extracted code into a NavClampToVisibleAreaForMoveDir() + fix debug code + inline some functions, removed obsolete EndChild() comment.
2018-05-09 21:48:03 +02:00
omar
5f464877ed
Internals: Declaring DragBehavior, SliderBehavior in there (no warantee given) as they may be useful to custom widgets.
2018-05-08 19:52:56 +02:00
omar
8da0d42ef2
Moved DragScalar, InputScalar, SliderScalar to imgui.h as well as ImGuiDataType ( #320 , #643 , #708 , #1011 )
2018-05-08 19:52:55 +02:00
omar
4ff23d3306
Merge branch 'master' into viewport
...
# Conflicts:
# examples/imgui_impl_dx9.cpp
# imgui.cpp
# imgui.h
2018-05-07 22:23:58 +02:00
omar
0bf43b3a1b
Settings: Added LoadIniSettingsFromDisk(), LoadIniSettingsFromMemory(), SaveIniSettingsToDisk(), SaveIniSettingsToMemory(), io.WantSaveIniSettings. ( #923 , #993 )
2018-05-07 22:18:45 +02:00
omar
023cc25c7c
Internals: Removed unnecessary allocation indirection for g.LogClipboard (this only made sense when there was a global context instance)
2018-05-07 22:15:25 +02:00
omar
3e8087458d
SliderScalar, VSliderScalar(): Support for any data types. Tested with various ranges/limits. Note that Drag/Slider/Input currently fail if the format string doesn't preview the actual value. Will fix next. ( #320 , #643 , #708 , #1011 )
2018-05-04 20:55:51 +02:00
omar
944f414cc6
Internals: A few selected math helpers are now using template to handle all supported types. Added ImPow() to wrap float/double in a standard manner without calling pow(double) when not needed in Drag code.
2018-05-04 18:14:59 +02:00
omar
f4c16fbb99
Internals: Data types: Made format string optional. DragBehavior: Moved a bit of code outside of the template. Slider tidying up. Removed unnecessary call to fabsf().
2018-05-04 17:57:47 +02:00
omar
f47c756755
Internals: Missing const, some renaming. Tweak legacy fast path.
2018-05-03 22:12:55 +02:00
omar
069b284f17
Internals: Tidying up internal helpers. Fixed a case ImParseFormatTrimDecorations() can return an off by one (out of bound) pointer if the format string is invalid. Extracted ImParseFormatFindEnd() out of TrimDecorations so we can use it to find the format type and replace the %f in old Int apis.
2018-05-03 20:22:29 +02:00
omar
086c3925c4
Internals: Fixed DragInt* default format string. InputScalar(), InputScalarN(), removed InputFloatN(), InputInt(). Note that DragInt2/3/4 will %f format strings will currently be broken. ( #320 , #643 , #708 , #1011 )
2018-05-03 19:42:35 +02:00
omar
6c932479f2
Internal: DragScalar(), InputScalar() now support signed/unsigned, 32/64 bits, float/double data types. ( #320 , #643 , #708 , #1011 )
2018-05-03 17:34:38 +02:00
omar
93b8580a8d
Internals: DragFloat: Fixed power handling. Use an temporary accumulator and no absolute values so we will be able to manipulate double as well as 64-bit integers. ( #1011 , #708 , #320 )
2018-05-03 17:34:33 +02:00
omar
3f04fd0644
Internals: DragFloat: Removed DragSpeedScaleFast/DragSpeedScaleSlow since it's not yet usable and Nav version doesn't have an equivalent.
2018-05-03 17:34:29 +02:00
omar
4780ac1ca4
Internals: Data types: Added s64, u64 data types. Added support in InputScalar(). Removed internal.h InputScalarEx() to InputScalar(). Removed cheap-relative-operators support in recently added U32 data path, since this is heading toward being legacy code. + Fixed InputDouble parsing code. ( #1011 , #320 , #708 )
2018-05-03 17:34:22 +02:00
omar
10e3f17235
DragFloat/SliderFloat internal InputScalar trim leading/trailing spaces emitted from the format string when presenting an edit box to the user. ( #648 )
...
Follow up to 6881d065b8
2018-05-03 17:34:02 +02:00
omar
a62f195e83
Internals: Renamed IsCharIsSpace() to IsCharIsBlank*() to match standard terminlogy and added ascii/u16 variations.
2018-05-03 17:33:55 +02:00
omar
ed756d474e
Internals: Added ImGuiDataType_Uint32 data type which is usable with InputScalarEx().
2018-04-30 20:02:33 +02:00
omar
92f0165f85
DragFloat, SliderFloat: Rounding scalar using the provided format string instead of parsed precision. ( #648 )
2018-04-30 16:44:57 +02:00
omar
6881d065b8
DragFloat/SliderFloat internal InputScalar trip trailing decoration off the format string when presenting an edit box to the user. ( #648 )
2018-04-30 15:59:59 +02:00
omar
d7e24416dd
DragFloat/SliderFloat internal InputScalar relies on the user supplied format string to format and parse value. ( #648 )
...
The trailing text after the format will be displayed in the InputText but not affect back parsing. Ideally we can try to strip it later.
2018-04-30 15:21:51 +02:00
omar
f80314754c
InputFloat,InputFloat2,InputFloat3,InputFloat4: Added variations taking a more flexible and consistent optional "const char* format" parameter instead of "int decimal_precision". This allow using custom formats to display values in scientific notation, and is generally more consistent with other API. Obsoleted functions using the optional "int decimal_precision" parameter. ( #648 )
2018-04-28 00:11:40 +02:00
omar
c47d34cf70
Viewport: Exposing SetNextWindowViewport(). Used in demo and old/obsolete SetNextWindowPosCenter() (which is an interesting case). Fixed back-end likely crash calling GetFocus() after viewport destruction. Fixed metrics crash.
2018-04-27 15:13:22 +02:00
omar
cd51f37fc0
Viewport, Platform: Refresh monitor list (win32, glfw) + avoid calling GetWindowFocus before platform window creation to not require of backend to null-check things inconsistently. ( #1542 )
2018-04-26 16:18:47 +02:00
omar
da70c837da
Viewport: Removed unnecessary fields (now that the coordinate system is consistent accross viewports): MouseRefPrevViewport, MouseClickedPosViewportId. ( #1542 )
2018-04-26 15:30:19 +02:00
omar
f1ae07e532
Viewport, Platform: Using Platform_GetWindowFocus to provide a much stronger heuristic of platform z-order, in replacement for when the back-end cannot provide io.MouseHoveredViewport. The pressure for it to work well increased with the use of viewports by popups/menus. ( #1542 )
2018-04-26 11:52:38 +02:00
omar
5979233a3c
Misc: tweaks + minor changes merged from master to reduce branch drift. Removed code that ended up unused.
2018-04-25 18:23:39 +02:00
omar
0b1d6a0d52
Merge branch 'master' into viewport
...
# Conflicts:
# imgui.cpp
# imgui.h
# imgui_internal.h
2018-04-25 18:13:23 +02:00
omar
e3453d0dc4
Misc: Comments and shallow/small changes (merged from viewport branch to minimize branch drift).
2018-04-25 17:58:53 +02:00
omar
3b9b1956cd
Merge branch 'master' into viewport
...
# Conflicts:
# examples/allegro5_example/imgui_impl_a5.cpp
# examples/allegro5_example/imgui_impl_a5.h
# examples/allegro5_example/imgui_impl_allegro5.cpp
# examples/allegro5_example/imgui_impl_allegro5.h
# examples/allegro5_example/main.cpp
# examples/imgui_impl_allegro5.cpp
# examples/imgui_impl_allegro5.h
# imgui.cpp
# imgui_internal.h
2018-04-25 15:32:04 +02:00
omar
01fa934222
Internals: Removed unecessary Pos/PosFloat separation, only reason appears to be mostly pre-1.0. The only piece of code that I expected sub-pixel window position to matter actually already round its delta (wrongly so, will fix later/separately if we want).
2018-04-25 15:24:26 +02:00
omar
cc882b0723
Viewport: Tidying up AddUpdateViewport() calls. Moved flags argument. Removed extraneous mid-frame call to FindPlatformMonitorFromRect(). ( #1542 )
2018-04-25 15:14:51 +02:00
omar
7684f53328
Viewport: Fixed issues with popups drifting in particular when reference mouse position become invalid (e.g. changing app focus while viewported-menu is open). Storing monitor index in viewport at beginning of the frame. ( #1542 )
2018-04-25 11:23:58 +02:00
omar
dc03c93164
Internals: Removed misleading ImRect::FixInverted + fix minor formatting in Readme.
...
Demo: Fixed Overlay: Added a context menu item to enable freely moving the window.
2018-04-24 14:19:10 +02:00
omar
cb78e62df9
Viewport, Platform: Fixed IME positioning for multi-viewport. Moved API from ImGuiIO to ImGuiPlatformIO. Because it is extremely unlikely to people redefined this API manually the moving-forward-breakage is ok. ( #1542 )
...
SDL2 ime support under Win32 never worked properly because of SDL interferences.
2018-04-24 12:40:38 +02:00
omar
456bbffcc4
Viewport: Switched to using unified platform-absolute mouse coordinates, which simplify lots of problems and simplify/reduce tricky conversions, makes ImVec2 less ambiguous. Fixed various viewport/windowing/popups/synchronization bugs. Settings on host-viewport are stored as relative (made settings decently compatible between viewport enable/disabled settings). Merged ImGuiViewport::Pos and ::PlatformPos. Tweaked thumbnails. Better, smaller code. ( #1542 )
2018-04-20 21:36:36 +02:00
omar
637d9c42bf
Viewport: WIP for Tooltips, Popups, Menus to create their own viewport. Resizing a window allows it to leave the main viewport. ( #1542 )
2018-04-19 13:12:02 +02:00
omar
1c385c2ca4
Merge branch 'master' into viewport
...
# Conflicts:
# examples/imgui_impl_dx10.cpp
# examples/imgui_impl_dx11.cpp
# examples/imgui_impl_dx12.cpp
# examples/imgui_impl_dx9.cpp
# examples/opengl2_example/imgui_impl_glfw_gl2.cpp
# examples/opengl3_example/imgui_impl_glfw_gl3.cpp
# examples/sdl_opengl2_example/imgui_impl_sdl_gl2.cpp
# examples/sdl_opengl3_example/imgui_impl_sdl_gl3.cpp
# examples/vulkan_example/imgui_impl_glfw_vulkan.cpp
# imgui.cpp
# imgui_internal.h
2018-04-18 19:06:49 +02:00
omar
6a0b2627ad
BeginMainMenuBar: Followup to 1e41bad9
. Removed public window flag. DisplaySafeAreaPadding defaults to (3,3) instead of (4.4). Comments, tab to spaces, Changelog. ( #1439 )
2018-04-18 17:37:35 +02:00
Doug Binks
1e41bad90f
Added DisplaySafeAreaPadding to MainMenuBar height and fixed starting x position. Fixes main menu bar problems with TVs. ( #1439 )
2018-04-18 15:13:09 +02:00
omar
25f25d546d
Viewport: Fixed manual mouse resize to handle mouse viewport change, which will allow resizing a window while it changes viewport. Releasing manual resize may merge a window. Added ConvertViewportPosToViewportPos() helper. Renamed NewFrameUpdateMovingWindowDropViewport() to UpdateTryMergeWindowIntoHostViewport() and removed the now-unnecessary half of the function. + renaming ( #1542 )
2018-04-17 23:34:19 +02:00
omar
50e453a3e2
Viewport: Comments, tweaks, renaming. Removed unnecessary stuff. Fixed zealous Clang warning. ( #1542 )
2018-04-17 18:25:05 +02:00
omar
0d16492eb7
Viewport: Moved ImGuiWindowFlags_FullViewport to an internal ViewportOwned flag. Renamed AddViewport to AddUpdateViewport. (#Viewport: Shuffled code in Begin to reset size of reappearing popups prior to selecting viewport, to avoid mistakenly using an old size. Moved code out of UpdateSelectWindowViewport() to the section of Begin where positions is being locked down, to avoid code in-between duplicating this. ( #1542 ))
2018-04-16 17:11:59 +02:00
omar
38e357ef10
Viewport: Virtual mouse position are patched immediately when viewports are moved in the virtual space, avoiding interaction glitchs on a resizing frame. ( #1542 )
2018-04-12 19:57:35 +02:00
omar
e25da4230b
Merge branch 'master' into viewport
...
# Conflicts:
# imgui.cpp
# imgui_internal.h
2018-04-11 21:25:44 +02:00
omar
8be6f40ae1
Viewport: per-viewport overlay draw list created on demand. With this pattern it'll be easier to consider adding more (e.g. background draw list). ( #545 )
2018-04-11 21:21:52 +02:00
omar
bfc0efaae9
Internals: Window: Aggregating ImDrawList into the ImGuiWindow structure.
2018-04-11 12:43:38 +02:00
omar
83bd3595a4
Viewport: Merged ImGuiPlatformData into ImGuiPlatformIO. Comments. ( #1542 )
2018-04-10 22:58:39 +02:00
omar
52cac135c9
Internals: Renamed GetFrontMostModalRootWindow() to GetFrontMostPopupModal() and exposed in imgui_internal.h ( #1738 )
2018-04-10 15:04:36 +02:00
omar
56ad2a2d74
Merge branch 'master' into viewport
...
# Conflicts:
# examples/imgui_impl_dx10.cpp
# examples/opengl2_example/imgui_impl_glfw_gl2.cpp
# examples/opengl3_example/imgui_impl_glfw_gl3.cpp
# examples/vulkan_example/main.cpp
# imgui.h
2018-04-09 19:35:14 +02:00
omar
6f1f5cbc20
Version 1.61 WIP
2018-04-09 14:02:32 +02:00
omar
3a29ddbcfa
Version 1.60
2018-04-08 00:45:02 +02:00
omar
6d0c720451
Internals: Removed unused internal variant of ArrowButton().
2018-04-07 23:06:06 +02:00
omar
82b7a39f31
Fixed a few zealous warnings.
2018-04-07 10:38:01 +02:00
omar
f421e73b40
Merge branch 'master' into viewport
...
# Conflicts:
# examples/imgui_impl_dx10.cpp
# examples/imgui_impl_dx11.cpp
# examples/imgui_impl_dx12.cpp
# examples/imgui_impl_dx9.cpp
# examples/opengl2_example/imgui_impl_glfw_gl2.cpp
# examples/opengl3_example/imgui_impl_glfw_gl3.cpp
# examples/sdl_opengl2_example/imgui_impl_sdl_gl2.cpp
# examples/sdl_opengl3_example/imgui_impl_sdl_gl3.cpp
# examples/vulkan_example/imgui_impl_glfw_vulkan.cpp
# imgui.cpp
# imgui.h
# imgui_internal.h
2018-04-06 23:36:23 +02:00
omar
e88fb10d7c
NewFrame: Extract some code into a NewFrameUpdateHoveredWindowAndCaptureFlags() which can be of use with touch-based inputs systems.
2018-04-06 19:36:15 +02:00
omar
ac2027c415
NewFrame: Extract some code into a NewFrameUpdateMouseInputs function. Moved settings saving higher up in the function so it is next to its peers.
2018-04-06 19:36:14 +02:00
omar
72899318e6
Viewport, Platform, Examples: Added support for transparent window via PlatformIO Platform_SetWindowAlpha ( #1542 ) + fixes for GLFW 3.3
2018-04-05 17:07:46 +02:00
omar
0cad274b87
Merge branch 'master' into viewport
...
# Conflicts:
# examples/imgui_impl_dx10.cpp
# examples/imgui_impl_dx11.cpp
# examples/imgui_impl_dx12.cpp
# examples/imgui_impl_dx9.cpp
# examples/opengl2_example/imgui_impl_glfw_gl2.cpp
# examples/opengl3_example/imgui_impl_glfw_gl3.cpp
# examples/sdl_opengl2_example/imgui_impl_sdl_gl2.cpp
# examples/sdl_opengl2_example/imgui_impl_sdl_gl2.h
# examples/sdl_opengl3_example/imgui_impl_sdl_gl3.cpp
# examples/sdl_opengl3_example/imgui_impl_sdl_gl3.h
# imgui.cpp
2018-04-04 19:39:42 +02:00
omar
78610a54d2
Fixed Clang zealous cast-call warning (on par with GCC) which decided to warn against explicit C-style casts now.
2018-04-03 20:55:30 +02:00
omar
ac8931b2e9
Viewport: Moved OverlayDrawList to be a per-viewport instead of being global + fix overlay clipping glitch during viewport creation frame + support for software mouse cursor stradding over multiple viewport. The overlay draw list move is rather important as draw lists are not shared among viewports anymore and we can do a swap of their data without copying it. ( #1542 )
2018-03-22 22:09:42 +01:00
omar
b69dc45f6e
Internals: Removed ImGuiDataType_Float2.
2018-03-22 20:14:31 +01:00
omar
c19b27813d
Added InputDouble() function. We use a format string instead of a decimal_precision parameter to also for "%e" and variants. ( #1011 ) May transition the other InputXXX function to use format strings as well.
2018-03-22 18:58:40 +01:00
omar
172570acae
Merge branch 'master' into viewport
...
# Conflicts:
# examples/imgui_impl_dx10.cpp
# examples/imgui_impl_dx11.cpp
# examples/imgui_impl_dx12.cpp
# examples/imgui_impl_dx9.cpp
# examples/opengl2_example/imgui_impl_glfw_gl2.cpp
# examples/opengl3_example/imgui_impl_glfw_gl3.cpp
# examples/sdl_opengl2_example/imgui_impl_sdl_gl2.cpp
# examples/sdl_opengl3_example/imgui_impl_sdl_gl3.cpp
# examples/vulkan_example/imgui_impl_glfw_vulkan.cpp
# imgui.h
2018-03-20 22:14:34 +01:00
omar
170f44e6f0
IO: Renamed io.WantMoveMouse to io.WantSetMousePos (was added in 1.52, _not_ used by core and only honored by some binding ahead of merging the Nav branch) + internal renaming ( #787 )
2018-03-20 20:12:34 +01:00
omar
c29971cf72
Merge branch 'master' into viewport
...
# Conflicts:
# examples/sdl_opengl2_example/main.cpp
# examples/sdl_opengl3_example/main.cpp
# examples/vulkan_example/main.cpp
2018-03-20 16:05:31 +01:00
omar
ccc9a22db3
Viewport: Changelog + Internals: Renamed viewport mouse fields for consistency (going to add more). ( #1542 )
2018-03-19 22:59:55 +01:00
omar
33ad8b2f0c
Nav: Track nav input source more generally (gamepad vs keyboard) ( #787 ) + update todos and demo tweaks
2018-03-19 13:20:18 +01:00
omar
46b61427e1
Viewport, Platform: Refactored platform interface. Removed need to use imgui_internal.h in backends. Split viewport into public facing ImGuiViewport and internal structure. Exposing enough data to provide custom tweaked renderers. Renamed handlers, fixed lots of inconsistencies. ( #1542 , #1042 )
2018-03-18 18:44:57 +01:00
omar
1ab236d9df
Viewport, Platform: Internal renaming to use more consistent (OsDesktopPos > PlatformPos). ( #1542 )
2018-03-15 20:07:48 +01:00
omar
8364d1ca6c
Viewport: Removed back-end renderer code that implied we need to clear with WindowBg color. Added NoRendererClear flag. ( #1542 , #1042 )
2018-03-15 18:17:04 +01:00
omar
6e58a95a01
Viewport, Platform, Examples: Changes to resizing flow + restored support for Platform events affecting the ImGui windows (so Decorated windows are functional). ( #1542 , #1042 ) ..
...
SDL: Added platform move/resize/close support.
GLFW: Added platform move/resize support. Moved Close to use callback for consistency.
Win32:
Vulkan: Fixed resize support.
Naming is WIP "PlatforrmRequestXXX" is too ambiguous. Basically we either have a ImGui->Platform flow or a Platform->ImGui flow. Working a bigger refactor now.
2018-03-15 10:57:22 +01:00
omar
207ad45983
Metrics: Displaying all draw lists of a window (if it uses layer 0 and has already been appended to earlier in the frame).
2018-03-14 17:50:11 +01:00
omar
8657201257
Merge branch 'master' into viewport
2018-03-13 16:20:02 +01:00
omar
0e3a6ef4f7
Moved IM_NEW, IM_DELETE helpers to imgui.h for convenient use by back-ends and user code.
2018-03-13 16:18:40 +01:00
omar
f6fc28dfd2
Merge branch 'master' into viewport (inc Vulkan resize fix merge #1042 )
2018-03-12 17:50:32 +01:00
omar
b9ac127b0b
Internals: Columns renaming fields
2018-03-12 11:03:27 +01:00
omar
5e63711084
Viewport, DPI: Some early work on per-viewport DPI support. At the moment the easiest way is to replace fonts during the ChangedViewport callback, but down the line we should aim at handling some of it at ImFont level. ( #1542 , #1676 )
2018-03-12 10:31:39 +01:00
omar
a4629b0b36
Viewport, DPI: Select viewport before locking style sizes and before handling double-click-on-title-bar to collapse. ( #1542 , #1676 )
2018-03-12 10:31:38 +01:00
omar
64cbbed152
Merge branch 'master' into viewport
2018-03-09 10:41:12 +01:00
omar
43f375b2f2
Viewport,Platform: Added GetWindowDpiScale() platform interface, changes of scale are reflected by positioning and resizing windows in their given viewport. ( #1542 )
2018-03-09 10:40:38 +01:00
omar
4d46383100
Viewport: Coupling non-main viewport to one window. Viewport name derived from the window. Added ImGuiConfigFlags_PlatformNoTaskBar, off by default (aka re-established task-bars by default for now). ( #1542 )
2018-03-08 20:27:01 +01:00
omar
a1f3949d71
Drag and Drop: Increased payload data type to 32 characters. ( #143 )
2018-03-08 10:42:51 +01:00
omar
9ea16e344a
Viewport: Disable extra viewports from hosting other windows. ( #1542 )
2018-03-07 16:34:18 +01:00
omar
3637193556
Merge branch 'master' into viewport
...
# Conflicts:
# examples/imgui_impl_glfw.h
# examples/opengl3_example/imgui_impl_glfw_gl3.cpp
# examples/sdl_opengl3_example/imgui_impl_sdl_gl3.cpp
# examples/sdl_opengl3_example/imgui_impl_sdl_gl3.h
# imgui.cpp
2018-03-06 20:02:40 +01:00
omar
8e3274e137
Viewport: Tracking current viewport we are appending to + added callback in PlatformInterface for DPI purpose (WIP). ( #1542 )
2018-03-05 22:31:12 +01:00
omar
bf7481eba0
Columns: Extent stop at the right-most clipped pixel. The right-most column might appear a little wider but it's usable space matches the others. ( #125 ). +9 Internal: Store InnerClipRect.
2018-03-04 17:44:17 +01:00
omar
c4a158656e
Merge branch 'master' into viewport
...
# Conflicts:
# examples/allegro5_example/main.cpp
# examples/directx10_example/main.cpp
# examples/directx11_example/main.cpp
# examples/directx12_example/main.cpp
# examples/directx9_example/main.cpp
# examples/imgui_impl_dx10.cpp
# examples/imgui_impl_dx11.cpp
# examples/imgui_impl_dx12.cpp
# examples/imgui_impl_dx9.cpp
# examples/imgui_impl_glfw.h
# examples/imgui_impl_vulkan.cpp
# examples/opengl2_example/imgui_impl_glfw_gl2.cpp
# examples/opengl2_example/main.cpp
# examples/opengl3_example/imgui_impl_glfw_gl3.cpp
# examples/opengl3_example/main.cpp
# examples/sdl_opengl2_example/imgui_impl_sdl_gl2.cpp
# examples/sdl_opengl2_example/main.cpp
# examples/sdl_opengl3_example/imgui_impl_sdl_gl3.cpp
# examples/sdl_opengl3_example/main.cpp
# examples/vulkan_example/main.cpp
# imgui.cpp
# imgui.h
2018-03-03 23:13:31 +01:00
omar
e026c8d3b7
Viewport: Give a chance to platform and renderer to actually destroy their data. Otherwise the regular ImplXXX_Shutdown + following by DestroyContext() order fails to fullifl this. ( #1542 )
2018-03-03 22:53:31 +01:00
omar
69e700f869
Renamed ImGuiStyleVar_Count_ to ImGuiStyleVar_COUNT for consistency with other enums. Added
2018-03-03 20:15:10 +01:00
omar
8a4093f38b
Added ArrowButton(). Exposed ImGuiDir.
2018-03-03 20:08:03 +01:00
omar
11f13ab24f
Internal: renamed RenderTriangle() to RenderArrow().
2018-03-03 19:08:22 +01:00
omar
c994796e26
Internal: Moved IM_NEWLINE helper to imgui_internal.h
2018-02-28 21:45:02 +01:00
omar
d98a5d54aa
Renamed ImGuiNavFlags io.NavFlags to ImGuiConfigFlags io.ConfigFlags. ( #787 )
2018-02-28 19:03:39 +01:00
omar
2c9f45bbe7
Renamed ImGuiNavFlags io.NavFlags to ImGuiConfigFlags io.ConfigFlags. ( #787 )
2018-02-28 18:51:40 +01:00
omar
735267d27c
Viewport: Initial viewport branch+ platform api commit (squashed from previous commits, still very WIP) ( #1542 )
2018-02-27 23:25:39 +01:00
omar
0e62b7d68a
Clearing next window data at the end of Begin() more reliably. Misc comments.
2018-02-27 22:47:45 +01:00
omar
a761779b12
Internals: Settings: Added ReadCloseFn to allow handlers to sanitize data on a per-entry basis.
2018-02-27 22:32:45 +01:00
omar
c7835dd189
ImRect: Removed misleading IsFinite() function used by some Nav code.
2018-02-26 16:35:46 +01:00
omar
27667fc035
TreeNode: Renamed Beta ImGuiTreeNodeFlags_NavCloseFromChild to ImGuiTreeNodeFlags_NavLeftJumpsBackHere. ( #1079 )
2018-02-25 14:15:37 +01:00
omar
b28995b667
Nav: Internals: Exposed NavMoveRequestCancel in imgui_internal.h ( #1640 )
2018-02-22 15:39:49 +01:00
omar
b33f0e215f
Initialization happens during CreateContext(), which makes it easier for platform layers to interact with the context during their initialization.
2018-02-18 23:28:56 +01:00
omar
3b163ac35b
Internals: Clarified internal storage for RootWindow with specific semantic (the Docking branch will need to introduce finer differenciation there.)
2018-02-08 23:11:51 +01:00
omar
7c16d52f72
Updated version to 1.60 WIP to emphasis on the addition of required calls CreateContext/DestroyContext + merged the massive Navigation branch ( #1565 , #787 )
2018-02-06 20:20:34 +01:00
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
2018-02-06 20:16:03 +01:00
omar
7e32fc7109
Nav: Toward automatically mapping keyboard input. Renamed ImGuiNavInput_PadXXX to ImGuiNavInput_XXX. Renamed ImGuiNavInput_KeyXXX to ImGuiNavInput_KeyXXX_ (internal). ( #787 )
2018-02-06 19:23:12 +01:00
omar
cea8017e0b
Merge branch 'master' into context
2018-02-06 18:04:44 +01:00
omar
db071184a0
Merge branch 'master' into navigation
...
# Conflicts:
# imgui.cpp
# imgui_internal.h
2018-02-06 13:51:09 +01:00
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 )
2018-02-06 13:46:14 +01:00
omar
e6926d9f7c
Internals: Refactored bool LastItemRectHovered into flags. ( #1597 )
2018-02-06 13:34:41 +01:00
omar
ce2b8d3255
Nav: Comments, removed extraneous parameter.
2018-02-06 13:16:44 +01:00
omar
0c0d811859
Nav: SetItemDefaultFocus() doesn't make the navigation cursorr highlight visible. Renamed NavInitResultExplicit to NavInitRequestFromMove. ( #787 )
2018-02-05 23:53:40 +01:00
omar
e5e3cc617e
Nav: Maintaining a NavActivatePressedId field that widget can conveniently use along with NavActivateDownId.
2018-02-05 19:37:29 +01:00
omar
f35734c925
Nav: Debugging code. ( #787 )
2018-02-05 17:02:30 +01:00
omar
8ad88f725c
Nav: Minor tidying up. ( #787 )
2018-02-05 14:53:22 +01:00
omar
bed55a41e1
Internals: ImRect: Added IsInverted() helper.
2018-02-05 14:51:28 +01:00
omar
e2654a097b
ImRect: added IsInverted() helper.
2018-02-04 18:30:37 +01:00
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 )
2018-02-02 17:47:05 +01:00
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 )
2018-02-01 22:28:58 +01:00
omar
950f260a32
Nav: Fixed Selectable/MenuItem Nav Highlight from using rounding when outer highlight stays square. ( #787 )
2018-02-01 22:25:25 +01:00
omar
79ff3c2d49
Merge branch 'master' into navigation
2018-02-01 18:33:40 +01:00
omar
07163804df
Internals: Renamed CloseInactivePopups() to a better ClosePopupsOverWindow(). Exposed in imgui_internal.h
2018-02-01 18:31:41 +01:00
omar
fd6d8863f7
Nav: SetFocusID() clears NavInitRequest for consistency (repro would a same frame interaction / race condition). ( #787 )
2018-02-01 18:19:36 +01:00
omar
8cc2dbc3bd
Internals: Nav: Extracted code into IsWindowNavFocusable(). ( #787 )
2018-02-01 14:56:56 +01:00
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.
2018-02-01 00:50:42 +01:00
omar
27980d9688
Merge branch 'master' into context
2018-01-31 16:02:26 +01:00
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 )
2018-01-29 23:59:46 +01:00
omar
c8d8dc7f0a
Nav: Internals: Renamed RootNavWindow to NavRootWindow ( #787 )
2018-01-29 23:59:43 +01:00
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.
2018-01-29 23:59:42 +01:00
omar
1cf38d0334
Internals: Nav: Renamed ImGuiNavForward enum ( #787 )
2018-01-29 18:12:32 +01:00
omar
4654040bcb
Nav: Comments, added enum to clarify NavForward code. ( #787 )
2018-01-29 17:35:36 +01:00
omar
3ded262776
Merge branch 'master' into navigation
2018-01-26 16:07:43 +01:00
omar
04d5783ffd
Nav: Cleaning up + using ImGuiInputSource source enum instead of a silly bool. ( #787 )
2018-01-25 19:36:38 +01:00
omar
f2d5300408
Nav: Keyboard: Added CTRL+TAB (and CTRL+Shift+TAB) style window selection. ( #787 )
2018-01-25 19:03:47 +01:00
omar
8bf0c89c0d
Internals: ImRect::Contains(ImRect&) include boundaries (whereas Contains(ImVec2) should not).
2018-01-25 14:24:57 +01:00
omar
d404b93b6b
Nav: Mouse clicking on a window (to select/move) disables hides nav highlight. ( #787 ) + comments
2018-01-24 19:57:39 +01:00
omar
f3776055d6
Merge branch 'master' into context
2018-01-24 19:31:11 +01:00
omar
28671aa821
Nav: Internals: Moved some enums and functions to internals, renamed ImGuiNavReadMode to ImGuiInputReadMode as well. ( #787 )
2018-01-24 17:41:47 +01:00
omar
d500113f1d
Merge branch 'master' into navigation
...
# Conflicts:
# imgui.cpp
# imgui_demo.cpp
2018-01-23 19:16:43 +01:00
omar
9a76fd30fd
Added SetNextWindowBgAlpha() helper. ( #1567 ) particularly helpul with the marking of the old 5-parameters version of Begin() as obsolete.
2018-01-23 19:13:49 +01:00
omar
db2ba13154
Internals: Exposed SetCurrentFont() in imgui_internal.h
2018-01-23 16:33:06 +01:00
omar
1acb155419
Internals: Moved unnecessary MovingWindowMoveId field.
2018-01-22 14:31:20 +01:00
omar
9edf211c0e
Merge branch 'master' into navigation
2018-01-21 20:46:50 +01:00
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 )
2018-01-21 20:16:54 +01:00
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 )
2018-01-20 20:25:12 +01:00
omar
8877622fa8
Merge branch 'master' into navigation
...
# Conflicts:
# imgui.cpp
2018-01-19 15:42:28 +01:00
omar
c2ffce3e5a
Drag and Drop: Fix comment. Removed IMGUI_PAYLOAD_TYPE_DOCKABLE from master branch. ( #143 )
2018-01-18 17:39:40 +01:00
omar
cc15512bfc
InputText: Minor tweak.
2018-01-17 12:15:24 +01:00
omar
a221d253f3
Nav: Comment.
2018-01-15 20:13:49 +01:00
omar
472ba1394c
Merge branch 'master' into navigation
...
# Conflicts:
# imgui.cpp
2018-01-15 20:13:42 +01:00
omar
28a76af185
Internal: DrawData: Tidying, renaming.
2018-01-15 20:12:48 +01:00
omar
a77913054f
Merge branch 'master' into navigation
...
# Conflicts:
# imgui.cpp
# imgui_internal.h
2018-01-15 18:02:58 +01:00
omar
1182174d81
Internals: DrawData: We don't need an intermediate layer for popups.
2018-01-15 18:00:13 +01:00
omar
038453258e
Internals: DrawData: Refactored chunks into a ImDrawDataBuilder we can reuse.
2018-01-15 17:48:32 +01:00
omar
061d8df033
MIssing IMGUI_API for a type with non-inline methods.
2018-01-15 17:48:32 +01:00
omar
06eef2ce6f
Internals: DrawData: renamed fields only (committing separately so that next commit is less nosiy).
2018-01-15 17:48:32 +01:00
omar
514d30d8cd
MovingWindow: Track click offset based on MovingWindow and not its RootWindow. Followup to 3849bb4470
. Comments + adding a local to ease patch #1345 .
2018-01-14 14:13:54 +01:00
omar
db63e71f13
Internals: Exposed SetCurrentFont() in imgui_internal.h
2018-01-12 20:07:01 +01:00
omar
1493de4f81
Internals: Merge of harmless stuff from Navigation stuff. Added GetHoveredID() internal helper.
2018-01-12 19:53:27 +01:00
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 )
2018-01-12 19:28:37 +01:00
omar
c9be7d7254
Merge branch 'master' into navigation
...
# Conflicts:
# imgui.cpp
# imgui_internal.h
2018-01-12 19:21:12 +01:00
omar
0a98202714
Nav: Standardized FIXME-NAV marker.
2018-01-12 19:13:15 +01:00
omar
16285603f2
Internals: Initializing fields in same order as declaration order + fixed uninitialized DragDropAcceptIdCurrRectSurface (was harmless)
2018-01-12 19:11:11 +01:00
omar
919fc548ad
Merge branch 'master' into navigation
2018-01-10 18:58:26 +01:00
omar
0cabd81071
Internals: Rect: Added ClipWillFull helper + comments on variations.
2018-01-10 14:43:08 +01:00
omar
92d75c44bc
Internals: ImVec2 versions of ImMin, ImMax inline float version for a faster full-on-debug-no-inline experience.
2018-01-10 14:43:02 +01:00
omar
3f4eccf154
Merge branch 'master' into navigation
...
# Conflicts:
# imgui.cpp
2018-01-07 16:22:09 +01:00
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 )
2018-01-07 16:20:02 +01:00
omar
deab2ab015
Popups: Gently handle the user mistakenly calling OpenPopup() every frame. (when reopen_existing is true). ( #1497 )
2018-01-07 16:15:54 +01:00
omar
69ff65f054
Internals: Popup: Renaming fields.
2018-01-07 16:11:25 +01:00
omar
3678307cd9
Popup, Menus: Tweaks and comments.
2018-01-07 15:56:14 +01:00
omar
369189b675
Internals: Popup: Explicitely setting up ImGuiPopupRef reduces confusion.
2018-01-07 15:40:46 +01:00
omar
a34490239c
Internals: Popup: Separating MousePosOnOpen and PopupPosOnOpen. They are equal in the master branch but different in the navigation branch.
2018-01-07 14:03:56 +01:00
omar
95b773370f
Revert "Internals: Added LastActiveId, LastActiveIdTimer. ( #1537 )" Will come up with a better design later.
...
This reverts commit 007f4034c9
.
2018-01-05 17:40:51 +01:00
omar
007f4034c9
Internals: Added LastActiveId, LastActiveIdTimer. ( #1537 )
2018-01-05 15:33:24 +01:00
omar
29c194b2a4
Merge branch 'master' into navigation
...
# Conflicts:
# imgui.cpp
2018-01-03 20:47:42 +01:00
omar
4fc9f44073
Merge of minor left-overs from private work branch to reduce drifts. Should be functionally a no-op.
2018-01-03 20:46:54 +01:00
omar
b2ec0741f1
Internals: Settings api tweaks
2018-01-03 20:45:17 +01:00
omar
2b8224692e
Merge branch 'master' into navigation
2018-01-03 20:26:24 +01:00
omar
f9b2058d5a
Internals: Renamed ImGuiSimpleColumns to ImGuiMenuColumns to avoid confusion. Reduced internal buffer size (we only use 3 slots).
2018-01-03 14:35:11 +01:00
omar
96ccc484f9
Merge branch 'master' into navigation
...
# Conflicts:
# imgui_internal.h
2018-01-03 12:33:27 +01:00
omar
3c6fbe0849
Renamed ImGuiSizeConstraintCallback to ImGuiSizeCallback, ImGuiSizeConstraintCallbackData to ImGuiSizeCallbackData.
2018-01-03 12:31:56 +01:00
omar
7fcbd45500
Internals: NextWindow: Renamed, moved functions to member.
2018-01-03 12:28:16 +01:00
omar
e339949de1
Internals: NextWindow: Using ImGuiCond for consistency.
2018-01-03 12:22:02 +01:00
omar
04b44398eb
Internals: refactored g.SetNextWindow fields into g.NextWindow. structure (so it can be more easily transported/copied)
2018-01-03 12:12:41 +01:00
omar
7a15fc8de5
Merge branch 'master' into navigation
2017-12-29 18:28:23 +01:00
omar
6ec00a366a
Internals: ImRect: Minor formatting tweaks.
2017-12-29 18:28:04 +01:00
omar
fbf2435f38
Exposed IM_OFFSETOF() helper in imgui.h
2017-12-29 18:16:19 +01:00
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
.
2017-12-29 17:59:13 +01:00
omar
c4e6d622c1
Merge branch 'master' into navigation
...
# Conflicts:
# imgui.cpp
# imgui.h
2017-12-29 13:39:07 +01:00
omar
49eed6e2d1
Version 1.54 WIP
2017-12-28 15:17:35 +01:00
omar
436cad4bca
Merge branch 'master' into navigation
...
# Conflicts:
# imgui.h
2017-12-26 15:37:31 +01:00
omar
e916310b2e
Version 1.53
2017-12-25 17:41:41 +01:00
omar
67191badc2
Merge branch 'master' into navigation
2017-12-23 23:10:41 +01:00
omar
bb8dfe4a34
Fixed incorrect IM_DELETE macro ( 9cda86d55a
) ( #1517 , #484 , #504 )
2017-12-23 23:10:26 +01:00
omar
ffb4f6ca8c
Merge branch 'master' into navigation
2017-12-23 16:27:48 +01:00
omar
9cda86d55a
Internals: Added IM_NEW, IM_DELETE helper macros ( #1517 , #484 , #504 )
2017-12-23 16:24:33 +01:00
omar
1f26652944
Various zealous warning fixes (thanks Clang).
2017-12-23 14:07:03 +01:00
omar
287380261c
Merge branch 'master' into navigation
...
# Conflicts:
# imgui.cpp
2017-12-21 19:55:21 +01:00
omar
c8c872c753
Internals: String functions uses size_t in their signature
2017-12-21 19:49:54 +01:00
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.
2017-12-21 18:52:34 +01:00
omar
4c2514dc29
Merge branch 'master' into navigation
2017-12-21 11:18:42 +01:00
omar
b9391d1692
Columns: Internal: Columns have their no set of flags so NoResize can be setup by internal code. ( #125 )
2017-12-15 17:06:47 +01:00
omar
cc3192f347
Merge branch 'master' into navigation
...
# Conflicts:
# imgui_internal.h
2017-12-13 22:09:08 +01:00
omar
ddbcda8c1b
Columns: Column width data is no longer lost while dragging toward the right side. ( #1499 , #125 )
2017-12-13 21:51:23 +01:00
omar
e8e84a6ad6
Columns: Added internal tracking of a few flag temporarily, to facilitate the work of third-parties who have columns patches. ( #125 )
2017-12-13 19:26:04 +01:00
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 )
2017-12-13 19:21:21 +01:00
omar
b016215c80
Columns: Refactor: Not using statestorage lookup anymore. ( #125 , #1499 )
2017-12-13 19:07:09 +01:00
omar
3a31a75e3b
Columns: Refactor: Renamed all members. ( #125 , #1499 )
2017-12-13 18:42:06 +01:00
omar
78320aa633
Columns: Refactor: Moved columns data into their own data structure. Minimum changes now to ease diffing. ( #125 , #1499 )
2017-12-13 18:41:51 +01:00
omar
16fb58984f
Merge branch 'master' into navigation
2017-12-12 23:41:48 +01:00
omar
90d0b8b58b
Navigation: minor sync to reduce drifts between changes
2017-12-12 23:41:20 +01:00
omar
8b59ed0708
Drag and Drop: Exposed some internals.
2017-12-12 23:37:27 +01:00
omar
7c7a7baf76
Merged miscellaneous small stuff (from nav/dock branches).
2017-12-12 23:36:25 +01:00
omar
fa9327ccf8
Merge branch 'master' into navigation
...
# Conflicts:
# imgui.cpp
# imgui.h
# imgui_draw.cpp
# imgui_internal.h
2017-12-12 20:44:12 +01:00
omar
d0a1be0de0
Merge branch 'drag_and_drop'
2017-12-12 20:39:52 +01:00
omar
3ea5e67ba2
Merge branch 'master' into navigation
...
# Conflicts:
# imgui.cpp
# imgui_demo.cpp
2017-12-12 18:47:23 +01:00
omar
28bbf1ade6
Fixed ParentWindow setup which broke Modal windows (fix c65124f415
)
2017-12-12 18:45:57 +01:00
omar
052b6021dd
Merge branch 'master' into drag_and_drop
...
# Conflicts:
# imgui.cpp
# imgui.h
# imgui_internal.h
2017-12-12 15:02:05 +01:00
omar
0a3db267c3
Merge branch 'master' into navigation
...
# Conflicts:
# imgui.cpp
# imgui.h
# imgui_demo.cpp
# imgui_internal.h
2017-12-12 14:58:53 +01:00
omar
c22657985a
Added GetFrameHeight() function (used to be SmallSquareSize internally)
2017-12-12 14:12:49 +01:00
omar
ee7f1921e8
Internals: Added GetSmallSquareSize()
2017-12-12 14:08:58 +01:00
omar
c65124f415
Internals: ParentWindow is now NULL for non-child windows and means what everyone expects.
2017-12-12 12:50:43 +01:00
omar
f42d7b89e2
Internals: Removed misleading GetWindowParent() function. + renaming to clear confusing.
2017-12-12 12:50:42 +01:00
omar
4a555d35f0
IsWindowHovered(): split ImGuiHoveredFlags_FlattenChild into separate ChildWindows and RootWindow flags. Allowing more combination and a better symetry with IsWindowFocused() flags. ( #1382 )
2017-12-12 12:50:42 +01:00
omar
45f440bb7d
Internals: Renamed ImGuiButtonFlags_FlattenChilds -> ImGuiButtonFlags_FlattenChildren, ImGuiButtonFlags_AllowOverlapMode -> ImGuiButtonFlags_AllowItemOverlap
2017-12-11 22:39:10 +01:00
omar
2b9d8ab91d
Merge branch 'master' into drag_and_drop
...
# Conflicts:
# imgui.cpp
# imgui.h
2017-12-11 16:39:27 +01:00
omar
d1db229907
Merge branch 'master' into navigation
...
# Conflicts:
# imgui_demo.cpp
2017-12-10 19:01:59 +01:00
omar
e3e0326ea9
Exposed BeginCombo() publicly.
2017-12-10 18:08:59 +01:00
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 )
2017-12-10 17:36:30 +01:00
omar
a6f37287d8
Merge branch 'master' into navigation
...
# Conflicts:
# imgui.cpp
2017-12-08 15:06:37 +01:00
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.
2017-12-08 15:03:26 +01:00
omar
7bf85db6c4
Drag and drop: Added COL3F payload for color without alpha overwrite. Exposed standard color payload types in imgui.h ( #143 )
2017-12-08 12:48:53 +01:00
omar
553b0fcf8f
Merge branch 'master' into navigation
...
# Conflicts:
# imgui.cpp
2017-12-07 21:20:16 +01:00
omar
45466a8cf9
Internals: BeginCombo() added dummy ImGuiComboFlags.
2017-12-07 21:14:41 +01:00
omar
e6215b6ca0
Merge branch 'master' into navigation + merge fix
...
# Conflicts:
# imgui.cpp
2017-12-07 16:42:52 +01:00
omar
8959c64b33
Internals: Cleanup FindBestPopupWindowPos() to be more digestible, since we are bounds to rework the logic there. No functional changes intended
2017-12-07 13:29:14 +01:00
omar
2fc6a82665
Merge branch 'master' into navigation
...
# Conflicts:
# imgui.cpp
# imgui.h
2017-12-06 17:44:40 +01:00
omar
beda5fc5a0
Fixed scrollbar enable/disable calculation when size is modified programmatically. This is the generalization of the fix in 2df8fa95df
.
2017-12-06 15:13:45 +01:00
omar
e103fe8c1f
Tweak four-corners resize grip code. Added ImRect::FixInverted() helper. ( #822 )
2017-12-06 15:13:45 +01:00
omar
729333293c
Merge branch 'master' into navigation
...
# Conflicts:
# imgui.cpp
# imgui.h
2017-12-05 22:56:35 +01:00
omar
b9dc0caee3
Tweak four-corners resize grip code. Added ImRect::FixInverted() helper. ( #822 )
2017-12-05 22:44:52 +01:00
omar
364251146b
Merge branch 'master' into navigation
...
# Conflicts:
# imgui.cpp
2017-12-05 16:15:05 +01:00
omar
16d9fa30b2
Merge branch 'master' into drag_and_drop
2017-12-05 09:21:07 +01:00
omar
c860a0a85c
Internals: ImRect: Added IsFinite() helper.
2017-12-01 17:39:13 +01:00
omar
81cbaef806
Merge branch 'master' into navigation
2017-11-29 23:49:17 +01:00
omar
52e475230f
Settings: Internals: Renaming.
2017-11-28 23:16:09 +01:00
omar
7ae71e4984
Settings: Internals: Added FindSettingsHandler()
2017-11-28 21:04:38 +01:00
omar
35eb5c5c99
Settings: Internals: Exposed FindWindowSettings(). Simplified some code.
2017-11-28 21:04:38 +01:00
omar
963259d128
Settings: Internals: Renamed ImGuiSettingsWindow to ImGuiWindowSettings.
2017-11-28 21:04:38 +01:00
omar
63712d5f5c
Merge branch 'master' into drag_and_drop
2017-11-28 17:28:45 +01:00
omar
9191b17218
Merge branch 'master' into navigation
2017-11-28 17:28:08 +01:00
omar
f3ec608c19
Settings: Initializing ImGuiSettingsWindow so external users don't end up with uncleared data. Exposed MarkIniSettingsDirty() in imgui_internal.h
2017-11-28 10:49:43 +01:00
omar
7e2d0d734c
Settings: basic refactor so that additional data structures can be loaded/saved. Parser/saver is still the minimum viable poor-man parsing.
2017-11-27 23:57:11 +01:00
omar
d552cabd15
Settings: Internal renaming of structure and fields names.
2017-11-27 23:57:10 +01:00
omar
4e3c7f1557
Nav: Exposed NavInitWindow() in imgui_internal ( #787 )
2017-11-24 16:55:49 +01:00
omar
7763ab3fcc
Menu bar: better software clipping to handle small windows, in particular child window don't have the minimum constraint added in e9a7e73bba
so we need to render clipped menus better.
2017-11-22 15:58:20 +01:00
omar
b618629d99
Merge branch 'master' into navigation
...
# Conflicts:
# imgui.cpp
2017-11-22 12:34:59 +01:00
omar
7d09a0ae99
Menu bar: better software clipping to handle small windows, in particular child window don't have the minimum constraint added in e9a7e73bba
so we need to render clipped menus better.
2017-11-22 12:33:59 +01:00
omar
68b26b4867
Merge branch 'master' into navigation
...
# Conflicts:
# imgui.cpp
2017-11-22 11:04:00 +01:00
omar
302757447a
Internals: Added SplitterBehavior(). ( #319 )
2017-11-20 19:41:17 +01:00
omar
2543807e56
Merge branch 'master' into navigation
...
# Conflicts:
# imgui.cpp
# imgui_internal.h
2017-11-20 13:54:06 +01:00
omar
3f5b2a3fe3
Exposed ImDrawCornerFlags, replaced occurences of ~0 with an explicit ImDrawCornerFlags_All. Inversed BotLeft (prev 1<<3, now 1<<2) and BotRight (prev 1<<2, now 1<<3).
2017-11-20 13:53:16 +01:00
thedmd
8b2d449b16
Add ShadeVertsLinearUV()
2017-11-19 21:56:36 +01:00
omar
92212b17aa
Merge branch 'master' into drag_and_drop
2017-11-19 16:23:37 +01:00
omar
9848a7023b
Merge branch 'master' into navigation
...
# Conflicts:
# imgui.cpp
# imgui_demo.cpp
2017-11-19 16:21:21 +01:00
omar
9a44d447cd
NewFrame() now asserts if neither Render or EndFrame have been called. Exposed EndFrame(). Made it legal to call EndFrame() more than one. ( #1423 etc.)
2017-11-19 12:06:45 +01:00
omar
d211a0e338
Merge branch 'master' into navigation (with style breakable)
...
# Conflicts:
# imgui.cpp
# imgui_draw.cpp
2017-11-19 00:39:37 +01:00
omar
4022ada843
Merge branch 'master' into drag_and_drop
2017-11-19 00:36:32 +01:00
omar
6f7b1bf2e1
Internals: Renamed ImGuiWindow::Accessed to WriteAccessed.
2017-11-19 00:29:29 +01:00
omar
29e0078b66
Internals: Window minor internal renaming + added WindowRounding latch.
2017-11-18 19:06:11 +01:00
omar
834fa52c8e
Columns: Added ImGuiColumnsFlags_GrowParentContentsSize to internal API to restore old content sizes behavior. ( #1444 , #125 )
2017-11-16 17:34:34 +01:00
omar
7746dd104c
Merge branch 'master' into drag_and_drop
2017-11-16 13:28:22 +01:00
omar
44c590393c
Merge branch 'master' into navigation
2017-11-16 13:28:10 +01:00
omar
4ad414c8d4
Internals: Window: Store whether the windows has a close button (we need that info for window/tabs dropping preview calculation)
2017-11-16 13:23:50 +01:00
omar
7c4be0a000
Internals: Added BringWindowToFront(), BringWindowToBack() helpers.
2017-11-16 13:11:49 +01:00
omar
5027311e7f
Drag and drop: Standardizing payload types as defines. ( #143 )
2017-11-15 22:23:21 +01:00
omar
ae060b1d67
Merge branch 'master' into drag_and_drop
2017-11-15 10:24:54 +01:00
omar
2275cb8b83
Merge branch 'master' into navigation
...
# Conflicts:
# imgui.cpp
2017-11-13 15:19:43 +01:00
omar
3e06450d27
Internals: Added ArrowButton() helper.
2017-11-13 15:18:31 +01:00
omar
7908cce25f
Drag and Drop: Added internal BeginDragDropTargetCustom() convenient to avoid submitting dummy ItemAdd. ( #143 )
2017-11-13 15:17:41 +01:00
omar
a297cbafdb
Merge branch 'master' into navigation
2017-11-08 23:17:14 +01:00
omar
b6504b8eee
Drag and drop: Handle overlapping drag target priorities given their surface, which appears to make most sense for drag and drop operations.
2017-11-08 15:47:52 +01:00
omar
aae52522c3
Internals: Remove requirement to define IMGUI_DEFINE_PLACEMENT_NEW ( #1103 )
2017-11-07 14:06:02 +01:00
omar
571b08f315
Internal: FindWindowByName() faster and doesn't touch every windows
2017-11-07 13:59:55 +01:00
omar
de1e7dc088
Drag and Drop: Moved internal fields out of public sight. ( #143 )
2017-11-06 20:04:10 +01:00
omar
66f42324ad
Drag and Drop: Added ImGuiDragDropFlags_SourceNoHoldToOpenOthers flag.
2017-11-01 17:25:42 +01:00
omar
63f6f2dd13
Merge branch 'master' into navigation
...
# Conflicts:
# imgui.cpp
# imgui.h
2017-11-01 15:09:23 +01:00
omar
a810619555
Drag and Drop: Added support for drag and drop hold-long-to-open for CollapsingHeader() and TreeNode(). Open only!
2017-10-30 00:03:04 +01:00
omar
1d7d8f8574
Merge branch 'master' into drag_and_drop
2017-10-29 23:49:24 +01:00
omar
b13d281356
Maintaining ActiveIdTimer and HoveredIdTimer (the later is useful for drag and drop, both will be of course for creators of custom widgets)
2017-10-29 23:49:01 +01:00
omar
0e775807b4
Drag and Drop: Added a mechanism to allow widgets with no identifiers (such as Text/Image) to be used with BeginDragDropSource() given the explicit ImGuiDragDropFlags_SourceAllowNullID flag.
2017-10-29 23:10:44 +01:00
omar
acf78da742
Drag and drop: moved to imgui.h
2017-10-29 21:37:14 +01:00
omar
b5f714e9f9
Drag and Drop: made BeginDragDropSource() clear the IsItemHovered() by default, added a flag to keep it.
2017-10-29 21:31:49 +01:00
omar
c5536e49ef
Drag and drop API experiment
2017-10-29 21:15:02 +01:00
omar
edafbcd630
Merge branch 'master' into navigation
...
# Conflicts:
# imgui.cpp
# imgui.h
2017-10-27 20:04:51 +02:00
omar
77df1ba9e0
Version 1.53 WIP
2017-10-27 19:54:56 +02:00
omar
c0b366b316
Merge branch 'master' into navigation
...
# Conflicts:
# imgui.h
2017-10-27 17:27:53 +02:00
omar
9f200d10d5
Version 1.52
2017-10-27 17:10:41 +02:00
omar
5afee1c6f3
Merge branch 'master' into navigation
...
# Conflicts:
# imgui_internal.h
2017-10-27 16:42:06 +02:00
omar
8dd7648db2
Comments
2017-10-27 16:41:22 +02:00
omar
ccdb58b17e
Internal: Added ImVec4 operators
2017-10-27 16:40:04 +02:00
omar
6243252d5a
Internal: BeginTooltipEx() in imgui_internal.h
2017-10-27 16:21:12 +02:00
omar
f10a1d7b9e
Merge branch 'master' into navigation
...
# Conflicts:
# imgui.cpp
# imgui_internal.h
2017-10-27 15:53:59 +02:00
omar
d42f6bb6cc
Merged a bit of code from Navigation branch to ease further merging (InnerRect is currently not required in the Master branch)
2017-10-27 15:52:45 +02:00
omar
c432fcf2bb
Minor renaming.
2017-10-27 12:01:52 +02:00
omar
a6ff14d66e
Exposed IM_ARRAYSIZE() in imgui.h
2017-10-26 16:12:53 +02:00
omar
549f9e3f03
Merge branch 'master' into navigation
...
# Conflicts:
# imgui_internal.h
2017-10-25 16:37:10 +02:00
omar
4faf99eff5
Added most basic form of Disabled flag to disable interactions (but visuals aren't altered), in imgui_internals.h, undocumented/unsupported ( #211 , #1012 )
2017-10-25 09:28:54 +02:00
omar
d513546325
Merge branch 'master' into navigation
2017-10-24 15:49:01 +02:00
omar
de72e9cc87
Internals: ImLerp() helper for ImVec4
2017-10-23 17:22:00 +02:00
omar
20983773f1
Nav: MainMenuBar now releases focus when user gets out of the menu layer. WindowingTarget when applying focus to a window with only menus automatically sets the layer. ( #787 )
...
This is enough for basic mouse/gamepad usage, but 1- previous window gets an unfocused title bar color temporarily, 2- generaly for gamepad and especially keyboard we need much more to get this done right
2017-10-23 12:38:39 +02:00
omar
d29a6a5a5a
Moved IMGUI_DISABLE_OBSOLETE_FUNCTIONS block lower in the imgui.h file so obsolete functions can use flags. Also sane to quarantine them outside of the respectable area.
2017-10-20 17:29:52 +02:00
omar
51eed2f257
Merge branch 'master' into navigation
2017-10-19 19:42:27 +02:00
omar
5b699517d4
Internals: PaintVerts** renamed to ShadeVerts**, moved to imgui_draw.cpp and exposed in imgui_internal.h (+1 squashed commits)
2017-10-19 19:42:19 +02:00
omar
d3c2e904d8
Internals: Added ImLinearSweep() helper.
2017-10-19 19:29:59 +02:00
omar
938f1b720f
Merge branch 'master' into navigation
...
# Conflicts:
# imgui.cpp
2017-10-19 00:04:53 +02:00
omar
370a48c10b
Internals: RenderCollapseTriangle() -> RenderTriangle(), takes a ImGuiDir
2017-10-18 23:46:16 +02:00
omar
a03093b2d4
CollapsingHeader(bool*) variant: fixed for IsItemHovered() to work properly in the nav branch.Basically the close button now has to use ItemAdd() to be navable into, which overwrite the IsItemHovered data. ( #600 , #787 )
2017-10-18 19:55:08 +02:00
omar
29a652adee
CollapsingHeader(bool*) variant: fixed for IsItemHovered() to work properly in the nav branch.Basically the close button now has to use ItemAdd() to be navable into, which overwrite the IsItemHovered data. ( #600 , #787 )
2017-10-18 19:51:32 +02:00
omar
a126c702d9
Merge branch 'master' into navigation
...
# Conflicts:
# imgui_internal.h
2017-10-18 13:09:28 +02:00
omar
ef3f87eec5
Internals: ButtonBehavior: made ImGuiButtonFlags_PressedOnClick and ImGuiButtonFlags_PressedOnDoubleClick set the click offset correctly + hold on g.ActiveId so Held state can be reported. Added ImGuiButtonFlags_NoHoldingActiveId flag to disable the later.
2017-10-18 13:08:25 +02:00
omar
1c4af303bf
Internals:Helpers: Added ImSwap(int,int), exposed ImStrncpy().
2017-10-18 13:08:14 +02:00
omar
bf778ebb7e
Checkbox: Using checkmark. MenuItem: Tweaked checkmark, thicker.
2017-10-18 13:06:49 +02:00
omar
78a85ba3fe
Begin: Work toward obsoleting the 5-arguments Begin() overload. Internal BeginEx() becomes the normal public Begin() again! (4)
2017-10-17 16:15:46 +02:00
omar
2739b6ebcd
Begin: Work toward obsoleting the 5-arguments Begin() overload. Removed bg_alpha from internal BeginEx(). (3)
2017-10-17 16:14:20 +02:00
omar
4aa9d2089d
Begin: Work toward obsoleting the 5-arguments Begin() overload. Removed size_on_first_use from internal BeginEx(). (2)
2017-10-17 15:51:20 +02:00
omar
55d873875e
Begin: Work toward obsoleting the 5-arguments Begin() overload. (1)
2017-10-17 15:47:55 +02:00
omar
d761825cfb
Nav: Renaming a field + Comments.
2017-10-15 17:57:15 +02:00
omar
c42baf392a
Reluctantly exposed GetActiveID(), GetHoveredID() in imgui_internal because the demo code will need it.
2017-10-13 16:48:14 +02:00
omar
f852b9a52a
Exposed Scrollbar() in imgui_internal.h and removed a bool arg
2017-10-13 13:31:34 +02:00
omar
b667d5a9e7
Nav: Internals: Renamed ImGuiButtonFlags_NoNavOverride to ImGuiButtonFlags_NoNavFocus + fixed a theorically missing test in ButtonBehavior() ( #787 )
2017-10-13 13:31:34 +02:00
omar
0371219222
Nav: Internals: Renamed SetActiveIDNoNav -> SetActiveID() and old SetActiveID() -> SetFocusID(), both functions needs to be called when both are desirabled. ( #787 )
...
May break code relying on imgui_internal.h, relying on nav and not calling ButtonBehavior().
2017-10-13 13:31:34 +02:00
omar
4be967823f
Exposed Scrollbar() in imgui_internal.h and removed a bool arg
2017-10-13 13:30:28 +02:00
omar
7a14d7dfdc
Nav: More consistently drawing a (thin) navigation rectangle hover filled frames such as tree nodes, collapsing header, menus. ( #787 )
2017-10-11 19:05:36 +02:00
omar
69dd895358
Nav: Renaming NavInitDefaultRequest -> NavInitRequest
2017-10-06 15:54:29 -07:00
omar
d2975115cd
Nav: Caching into g.NavAnyRequest to minimize hot path cost (and so we can add many more request sources)
2017-10-06 15:14:28 -07:00
omar
c3105919ba
Nav: Minor tweaks also toward removing processing from ItemAdd()
2017-10-06 14:51:15 -07:00
omar
64ce83b9ed
Merge branch 'master' into navigation
...
# Conflicts:
# imgui.cpp
# imgui_internal.h
2017-10-06 14:27:29 -07:00
omar
042153d254
Internal: ItemAdd(), IsClippedEx(): removed unnecessary indirection for ID parameter
2017-10-06 14:23:18 -07:00
omar
59c6f35bf6
Added ActivateItem(), GetItemID() functions.
2017-10-05 21:34:01 -07:00
omar
80c4e2fe7b
Nav: Tidying up activation mechanism so that setting NavActivateId can trigger buttons.
2017-10-05 21:27:08 -07:00
omar
2f27b733be
Nav: Fixed uninitialized context variables for sanity.
2017-10-05 18:33:40 -07:00
omar
f2c9bd8d4f
Nav: Fixed uninitialized context variables for sanity.
2017-10-05 16:39:59 -07:00
omar
f326fac64a
Nav: Menus and popups now have move request wrap around vertically (using the move request forward thing added recently). ( #787 )
2017-10-05 10:29:17 -07:00
omar
42ee537be3
Comments
2017-10-04 10:45:35 -07:00
omar
a56b71e866
Nav: Added code to render thin highlight type. ( #787 )
2017-10-04 10:44:27 -07:00
omar
64a51327d3
Nav: Added NavMoveResultParentId internal info to record when the parent/context of a given NavId. Useful for various algorithms (currently looking at range selection stuff) ( #787 )
2017-10-03 13:25:40 -07:00
omar
74da533c93
Nav: Added NavJustNavigatedId internal info to record when we land on a given item after a navigation request, useful for various algorithms (currently looking at range selection stuff) ( #787 )
2017-10-03 11:22:38 -07:00
omar
88a354585a
Nav: It's now possible to navigate sibling of a menu-bar while navigating inside one of their child. If a Left<>Right navigation request fails to find a match we forward the request to the root menu. ( #787 , #126 )
...
Currently the sibling menu is isn't automatically opened, that's still left to it (and even that can be anoying in Windows when the first menu-item is a child menu)
2017-09-29 23:39:34 +02:00
omar
587e637db0
Nav: Taking note that we should aim to remove MenuBarAppending later.
2017-09-29 23:37:14 +02:00
omar
1eaa9d0621
Nav: Fixed uninitialized variable (that had no side-effects due to the code/data flow involved)
2017-09-29 23:37:14 +02:00
omar
8a5a29f0be
Nav: Renamed internal field.
2017-09-29 19:28:19 +02:00
omar
9712a81f85
Nav: Rectangle rectangle stored per window and per layer as well. Makes things simpler, allows enable us to visualize more data.
2017-09-29 19:26:03 +02:00
omar
9737efb2f1
Nav: Store per-window last nav id also per-layer so we can easily query them for menu navigation code. ( #787 )
2017-09-29 17:58:25 +02:00
omar
8a814487fe
Merge branch 'master' into navigation
...
# Conflicts:
# imgui.cpp
# imgui_internal.h
2017-09-29 16:30:43 +02:00
omar
30b1d85962
Nav: Commiting some better organized Debug helper because this going to stay for a bit.
2017-09-28 23:48:30 +02:00
omar
164f22d5b7
Comments
2017-09-28 22:00:49 +02:00
omar
df366b230e
ColorPicker4: Use nav flag to provide a slighly better experience when using navigation ( #787 , #346 )
2017-09-28 20:22:30 +02:00
omar
2d859dee4e
Nav: Added ImGuiItemFlags_NoNav item flag
2017-09-28 19:58:01 +02:00
omar
4b4e455c40
Nav: Internal nenaming
2017-09-28 19:41:30 +02:00
omar
50ba543743
Comments
2017-09-28 19:35:10 +02:00
omar
e0a2a832cd
Nav: Changed internal flag to NoNavDefaultFocus to be false by allow, and more consistent ( #787 )
2017-09-28 19:18:41 +02:00
omar
ca4db8c905
Merge branch 'master' into navigation
...
# Conflicts:
# imgui.cpp
# imgui_internal.h
2017-09-28 17:40:25 +02:00
omar
926c1cf9a4
Merged from Navigation branch: ImGuiItemFlags_SelectableDontClosePopup flag
2017-09-28 17:02:28 +02:00
omar
f99348711b
Added VerticalSeparator() entry point in imgui_internal. Seperator() in an horizontal layout context still does that.
2017-09-28 16:41:01 +02:00
omar
d394c7ad0b
Merge branch 'master' into navigation
...
# Conflicts:
# imgui.cpp
# imgui_internal.h
2017-09-28 15:45:35 +02:00
omar
0106dcbd02
Fixed IsItemHovered() - part of the processing has to be done in ItemAdd() because the widget may alter clipping rectangle temporarily.
2017-09-28 15:43:26 +02:00
omar
35f65e05ed
Merge branch 'master' into navigation
2017-09-28 00:33:29 +02:00
omar
fafe65a8fc
Refactor to move the responsability of SetHovered() to ItemHoverable() - previously IsHovered(). Simpler and the parallel to ItemAdd is clearer with the new name.
2017-09-28 00:21:47 +02:00
omar
7bcb1d3816
Internals: ButtonBehavior(), IsHovered() moved the responsability of flatten_child higher level to ButtonBehavior() - not super sure about the elegance of this
2017-09-27 22:59:40 +02:00
omar
cc26db8ec7
Merge branch 'master' into navigation
2017-09-27 17:25:50 +02:00
omar
0adcddac39
IsItemHovered(), ItemAdd(): finishing cleaning up, moved the code to IsItemHovered() so ItemAdd() is more lightweight and the two IsXXXHovered functions are now very similar, making their differences less confusing.
2017-09-27 17:21:50 +02:00
omar
99c7622a1b
ItemAdd(), not performing computation for IsItemRectHovered() which does them itself, allowing us in the next commit to optimize ItemAdd() and make its logic more consistent with IsHovered().
2017-09-27 16:20:53 +02:00
omar
a2b2e56e8e
Merge branch 'master' into navigation
2017-09-27 12:31:12 +02:00
omar
8374a454da
Removed extraneous ImGui:: prefixes. Declared ColorEditOptionsPopup in imgui_internals.h. Tweaked internal signatures.
2017-09-27 11:39:13 +02:00
omar
8fd4beddb8
Merge branch 'master' into navigation
2017-09-26 20:28:40 +02:00
omar
072d6d8cb5
ImFontAtlas: Refactored internals API to 1) avoid building lookup table multiple times for merged fonts + 2) allow the mapping of custom icons inside fonts (wip, uncommited)
2017-09-26 19:26:16 +02:00
omar
f1a20ec66d
Merge branch 'master' into navigation
2017-09-26 16:54:37 +02:00
omar
be03882a15
Separator(): output vertical separator when used in horizontal layout mode, so it works in menu bars.
2017-09-26 15:43:48 +02:00
omar
69d0d33451
Exposed PushMultiItemsWidths() to imgui_internal.h
2017-09-25 22:45:10 +02:00
omar
7e8069dd23
Merge branch 'master' into navigation
2017-09-25 22:08:38 +02:00
omar
0d56140b4a
BeginCombo(): rework internals a little to make it easier to provide custom combo-like elements relying in BeginCombo().
...
BeginPopupEx() doesn't enforce AlwaysAutoResize flag anymore.
2017-09-25 21:45:34 +02:00
omar
4b82759598
SetNextWindowPos: added a ImVec2 pivot parameter for positioning a given a center, bottom-right position, etc. As a generalization of SetNextWindowPosCenter() which is now obsolete. This will be useful for combo-like popups as well.
...
Demo: Simple-overlay window uses the SetWindowPos pivot to select a corner to position itself at.
2017-09-25 18:25:43 +02:00
omar
0a5fb24f10
Popups: Exposing a little more of popups internals in imgui_internals.h
2017-09-25 12:52:06 +02:00
omar
44e8d94aba
Merge branch 'master' into navigation
2017-09-18 15:32:31 +02:00
Bruce Mitchener
2fcdeb7f12
Remove commas after last item in enumeration.
...
This brings these enums to match the rest of the code and fixes
2 warnings under clang about using C++11 extensions.
2017-09-14 10:35:30 +07:00
omar
66a9d4856c
Merge branch 'master' into navigation
...
# Conflicts:
# imgui_internal.h
2017-09-06 20:37:29 +02:00
omar
cb2775ae54
Internals: ImGuiItemFlags comments
2017-09-06 20:36:36 +02:00
omar
62d7fa4324
Merge branch 'master' into navigation
...
# Conflicts:
# imgui.cpp
# imgui_internal.h
2017-09-06 20:33:39 +02:00
omar
f63c03c464
Internals: moved ButtonRepeat and AllowKeyboardFocus bools/stacks to a generic ItemFlags stack. Merged from Navigation branch.
2017-09-06 20:28:36 +02:00
omar
5c4fda0fbc
Merge branch 'master' into navigation
...
# Conflicts:
# imgui.cpp
# imgui_internal.h
2017-09-06 19:17:51 +02:00
omar
2169bf6895
Fixed WantTextInput from being true when an activated Drag or Slider was previously turned into an InputText(). ( #1317 )
2017-09-06 17:25:36 +02:00
omar
790605e359
Minor comments + renaming internal fields
2017-09-06 17:20:54 +02:00
omar
e8dbf1c795
Combo: Internally split into BeginCombo(), EndCombo(), toward a more flexible combo api.
2017-09-01 22:10:13 +02:00
omar
804ee78731
Added IsWindowAppearing().
2017-09-01 21:55:59 +02:00
omar
ddf41b0398
Merged from Navigation branch. TAB/Alt-TAB processing now deactivate if holding Ctrl.
2017-08-29 17:27:19 +08:00
omar
358e7a194e
Added GetKeyPressedAmount() (from Nav branch) to be able to measure fast repeat rate accurately. Added internal CalcTypematicPressedRepeatAmount() function.
2017-08-29 16:13:17 +08:00
omar
ee42fae468
Merge various minor things (supposedly harmless) from Navigation branch into Master to reduce differences. ( #787 )
2017-08-29 16:05:12 +08:00
omar
2ee1b70652
Merge branch 'master' into navigation
...
# Conflicts:
# imgui_internal.h
2017-08-29 15:36:36 +08:00
omar
01d4bf299a
Added overcomplicated RenderRectFilledRangeH() to fix rounded progress bar, which will also help for range widgets and perhaps sliders grabs over rounded areas. ( #1296 , #76 )
2017-08-29 15:22:30 +08:00
omar
7a9ea281be
ImSwap() helper.
2017-08-28 19:27:12 +08:00
omar
1f51e8f39d
Internals: Renamed some ImGuiCorner enums.
2017-08-28 14:11:11 +08:00
omar
807322c9a5
Merge branch 'master' into navigation
...
# Conflicts:
# imgui.cpp
2017-08-26 18:43:10 +08:00
omar
419b22a487
Internals: Split some code out of NewFrame() into an Initialize() function.
2017-08-26 16:35:39 +08:00
omar
f72ca6d22c
ImFontConfig: Added RasterizerMultiply option to alter the brightness of individual fonts at rasterization time, which may help increasing readability for some. Added RasterizerFlags for custom rasterizer flags (aka imgui_freetype)
2017-08-26 14:11:56 +08:00
omar
37f3a718c6
Marked all fmt + va_list functions with format attribute so GCC/Clang can warn about them. Not ignoring -Wsuggest-attribute=format anymore for GCC/Clang.
2017-08-25 16:10:14 +08:00
omar
40f608ce9b
Version 1.52 WIP
2017-08-25 15:12:12 +08:00
omar
55a6209931
Version 1.51
2017-08-25 00:29:59 +08:00
omar
141339e4b7
(internals) Renamed FocusedWindow to NavWindow to match terminology of navigation branch
2017-08-22 19:51:12 +08:00
ocornut
2ad2190d47
Merge 20a0fde012
Tidying up default clipboard handler for non Windows-OS (from Nav branch)
2017-08-22 19:47:52 +08:00
omar
bea06117bb
Nav: Fix navigation inside child windows. Removed GetChildID() and storin/g the info within the window. ( #1291 )
2017-08-22 19:26:21 +08:00
ocornut
50b3a14d0a
Merge 2545d75c3b
from Nav - Tidying up, removed two unnecessary window flags from being exposed in imgui.h
2017-08-22 18:26:27 +08:00
omar
d5b0d51274
Minor miscellaneous merges from Navigation branch to reduce divergence a little bit
2017-08-22 18:13:10 +08:00
omar
9670fe9ca7
Merge branch 'master' into navigation
...
# Conflicts:
# imgui.cpp
# imgui_internal.h
2017-08-22 17:51:20 +08:00
omar
6ee317d26d
ImRect::Clip() -> ClipWith() to clarify meaning, going to undo the change in Nav branch.
2017-08-22 17:46:50 +08:00
omar
53e73182ff
Merge branch 'master' into navigation
...
# Conflicts:
# imgui_internal.h
2017-08-21 00:04:45 +08:00
omar
530baee1a7
Removed tabs that slipped through the cracks
2017-08-21 00:03:37 +08:00
omar
067127f113
Columns: Caching columns clipping rectangles ( #125 )
2017-08-20 23:17:59 +08:00
omar
adeaf1cd72
Columns: Moved PushColumnClipRect() to imgui_internal.h
2017-08-20 23:09:43 +08:00
omar
1c83b073c6
Columns: A set of column (and most importantly the right-most column) do not register its content to the parent, not affecting the window contents size. ( #519 , #125 , #913 )
2017-08-20 20:58:23 +08:00
omar
7f0063f858
Columns: Added ImGuiColumnsFlags_NoResize flag (internal). ( #913 , #125 )
2017-08-20 19:32:50 +08:00
omar
19a42cb2fd
Columns: Moved BeginColumns/EndColumns/flags from #913 to imgui_internals.h + minor shallow tweaks. Removed demo code temporarily. ( #125 )
2017-08-20 18:44:48 +08:00
omar
bc78535bbf
Merge branch 'master' of https://github.com/ggtucker/imgui into ggtucker-master
...
# Conflicts:
# imgui.cpp
# imgui.h
2017-08-20 18:22:34 +08:00
omar
bf0d9c123e
Merge branch 'master' into navigation
2017-08-18 00:25:12 +08:00
omar
8be7a60f20
ImFontAtlas: Re-arranging code to simplify implementation of imgui_freetype. ( #618 )
2017-08-17 21:19:54 +08:00
omar
1086c87767
ImFontAtlas: Re-arranging code to simplify implementation of imgui_freetype. ( #618 )
2017-08-17 21:13:14 +08:00
omar
4075cc58e9
ImFontAtlas; Re-arranging code to simplify implementation of imgui_freetype ( #618 )
2017-08-17 20:44:44 +08:00
omar
a85a14370b
OpenPopupEx() internal tweaks to receive an ImGuiID, BeginPopupContextXXX shortening unnecessarily long identifier.
2017-08-16 15:47:10 +08:00
omar
d2259f65e5
Undo part of 32dbe836d0
to keep the same name for both overloads ( #891 , #799 )
2017-08-16 13:42:41 +08:00
omar
e682362f35
TODO list update, comments
2017-08-16 12:54:51 +08:00
omar
73f9c9d80c
Merge branch 'master' into navigation
...
# Conflicts:
# imgui.cpp
# imgui_demo.cpp
2017-08-11 13:44:25 +08:00
omar
7e452ec737
Renamed ImGuiSetCond_XXX type and enums to ImGuiCond_XXX, kept old enums under #ifdef IMGUI_DISABLE_OBSOLETE_FUNCTIONS
2017-08-11 13:36:28 +08:00
omar
30d1e5712a
Merge branch 'master' into navigation
...
# Conflicts:
# imgui.cpp
# imgui.h
# imgui_internal.h
2017-08-08 17:30:32 +08:00
omar
942cb0e1f2
Added SetColorEditOptions(). ColorPicker4: context menu to select picker type and alpha bar. Reorganized flags (again!). ( #346 )
2017-08-08 15:54:20 +08:00
omar
03700ad15e
Merge remote-tracking branch 'origin' into 2016-07-navigation
2017-08-07 22:51:18 +08:00
omar
fb54dce71c
Internals: Added ImLineClosestPoint, ImTriangleClosestPoint helpers. Changing ImVec2 arg to const ImVec2&
2017-07-31 21:11:41 +08:00
omar
1a26d0bc98
Internals: Added ImDot(), ImRotate(), ImLerp(v2,v2,float) helpers.
2017-07-31 18:56:51 +08:00
omar
72da4081f8
Internals: Added ImTriangleBarycentricCoords() helper. Renamed ImIsPointInTriangle() to ImTriangleContainsPoint(), with different arg order.
2017-07-31 17:54:40 +08:00
omar
390188dfa9
Comments about parts of imgui_internal.h that will self-destruct.
2017-07-30 16:16:06 +08:00
omar
fef8aac523
ColorPicker4: hue/alpha bars draw arrows that would look right on all background. RenderArrow helper. ( #346 )
2017-07-30 16:15:52 +08:00
omar
7537dff806
ColorEdit4: Picker spawned from ColorEdit4 has a preview for original/previous color with revert button - WIP not really happy with it being in ColorEdit4 code ( #346 )
2017-07-29 15:54:45 +08:00
omar
bfec9c657e
ColorButton: Pretty much gave up with getting the checkerboard + AA + rounding + blending + offset all working together with every combination under the sun. It works as long as you don't sneeze. ( #346 )
2017-07-27 16:26:32 +08:00
omar
69dd1ed583
RenderColorRectWithAlphaCheckerboard() in one layer to shunt out anti-alasing artefacts when rounded. Added ImLerp(int,int,float). ( #346 )
2017-07-26 22:20:43 +08:00
omar
19c6a9c0e0
ColorButton, ColorPicker: painfully made RenderColorRectWithAlphaCheckerboard more friendly to using Rounding and Border in style, still not perfect :( ( #346 ) + comments
2017-07-26 17:38:33 +08:00
omar
78a8f798c5
ColorEdit, ColorPicker, ColorButton: Display grid under transparent colors (WIP) ( #346 )
2017-07-26 15:24:09 +08:00
omar
a8b202782f
ColorPicker,ColorButton: Honor Border/Shadow style settings ( #346 )
2017-07-22 19:37:13 +08:00
omar
15be7e1a71
ColorPicker: new prototype for ColorButton() .Added _NoTooltip, _NoLabel flags. Changing _Alpha flag to _NoAlpha makes so much much sense and allow to revert default parameters to zero. ColorEdit4/Picker4 don't attempt to read/write fourth component, making ColorEdit3/Picker3 shorter/faster. Tooltip and Picker called from ColorEdit can have a title. Picker shows colored square. Moved ColorTooltip() to imgui_internal.h ( #346 )
2017-07-22 18:01:16 +08:00
omar
c8553817d9
Merge branch 'master' into 2016-02-colorpicker
2017-07-21 02:34:19 +08:00
omar
138a9dbaeb
Tooltip: SetTooltip() is expanded immediately into a window, honoring current font / styling setting. Add internal mechanism to override tooltips (not exposed in BeginTooltip yet because bools are evil) ( #862 )
2017-07-21 02:21:48 +08:00
omar
85d9c8fb46
Internals: renaming IndexWithinParent to OrderWithinParent
2017-07-20 21:25:31 +08:00
omar
3e4cb40d45
Merge branch 'master' into 2016-02-colorpicker
2017-07-19 14:53:25 +08:00
omar
12d265fa31
Version 1.51 WIP tag
2017-06-13 11:30:22 +02:00
omar
5e1caaaef3
Version 1.50
2017-06-02 12:22:34 +02:00
omar
2a3c61e5f8
Merge branch 'master' into 2016-07-navigation
2017-03-16 19:31:12 +01:00
omar
92ea8d1131
Merge branch 'master' into 2016-02-colorpicker
2017-03-16 19:28:30 +01:00
omar
b8043d3ee5
Internal: Renamed ImLoadFileToMemory to ImFileLoadToMemory to be consistent with ImFileOpen + fix mismatching .h name ( #917 )
2017-01-14 13:47:16 +01:00
omar
b6c0227add
Merge branch 'master' into 2016-02-colorpicker
2017-01-11 21:03:35 +01:00
omar
c76be71acf
Merge branch 'master' into 2016-07-navigation
2017-01-11 21:03:25 +01:00
omar
6257b5814a
Added an explicit (internal) ClearActiveID() helper and removed the default NULL window parameter to internal SetActiveID(),
2017-01-11 20:56:55 +01:00
ocornut
3028ccc25b
Merge remote-tracking branch 'origin' into 2016-07-navigation
2016-11-27 18:25:20 +01:00
ocornut
f4cf972ea9
Merge branch 'master' into 2016-02-colorpicker
2016-11-27 18:21:14 +01:00
ocornut
104b381023
Using _wfopen() under Windows+MSVC because fopen() doesn't support UTF-8 encoding. Wrapped as ImFileOpen(). ( #917 )
2016-11-27 16:43:36 +01:00
Geoffrey Tucker
66c4281290
Began improvements to columns API by splitting the Columns() function into BeginColumns() and EndColumns() and adding additional flags. The columns data still needs to be placed into a stack.
2016-11-13 23:58:09 -08:00
ocornut
1a0e414d3a
Fixed uninitialized variables (wouldn't have a real effect because they'd be cleared in Begin()).
2016-11-12 21:17:30 +01:00
ocornut
98e1d500d4
Support for #define-ing GImGui and IMGUI_SET_CURRENT_CONTEXT_FUNC to enable custom thread-based hackery ( #586 )
2016-11-12 17:08:31 +01:00
ocornut
dd6163241c
Merge branch 'master' into 2016-02-colorpicker
2016-10-16 14:02:15 +02:00
ocornut
bdb34d1c11
Merge branch 'master' into 2016-07-navigation
2016-10-16 14:01:13 +02:00
ocornut
1810b3ff38
Added ImGuiCorner enum to clarify some internal code
2016-10-09 10:56:23 +02:00
ocornut
abaada4224
Removed the inconsistent shadow under RenderCollapseTriangle() (~#707)
2016-10-09 10:31:39 +02:00
ocornut
404979e48d
Merge remote-tracking branch 'origin' into 2016-02-colorpicker
2016-10-07 09:52:00 +02:00
ocornut
fea0fcb7c3
Merge remote-tracking branch 'origin' into 2016-07-navigation
2016-09-25 15:25:55 +02:00
ocornut
f2699de242
Fix using IsItemActive() after EndGroup() or any widget using groups ( #840 , #479 )
2016-09-25 14:18:10 +02:00
ocornut
ed279c0095
Merge remote-tracking branch 'origin' into 2016-07-navigation
2016-09-25 12:59:24 +02:00
ocornut
1b5bbf725b
Merge remote-tracking branch 'origin' into 2016-02-colorpicker
2016-09-25 12:57:22 +02:00
ocornut
56cdbe434d
Style: Added ButtonTextAlign, ImGuiStyleVar_ButtonTextAlign ( #842 )
2016-09-25 12:53:13 +02:00
ocornut
0f303d363a
Refactor text alignment options to use ImVec2, removed ImGuiAlign ( #842 , #222 )
2016-09-25 12:19:15 +02:00
ocornut
de9f8944ea
Internal RenderTextClipped() merged optional/rate clip_min* clip_max* into clip_rect*
2016-09-25 11:38:04 +02:00
ocornut
c5b8c6303a
Refactor PushStyleVar/PopStyleVar so it is constant time + can receive integers (yet unused) ( #842 )
2016-09-25 11:06:14 +02:00
ocornut
b397fb507e
Fixed EndGroup() not restoring offset properly. breaking SameLine() offset (caused by 954c890c67
) ( #829 )
2016-09-13 09:18:17 +02:00
ocornut
ac7826c8a5
ImRect: Added Translate() helper, removed redundant and misleading Reduce()
2016-08-21 14:37:48 +02:00
ocornut
ea2425ad9a
Nav: Fixed entering child with PadActivate not setting ActiveIdSource to Nav ( #323 )
2016-08-21 12:44:59 +02:00
ocornut
695ca7bb45
Nav: Tidying up. Comments. ( #323 )
2016-08-20 23:27:25 +02:00
ocornut
cf16ba6572
Nav: Exposed RenderNavHighlight() in imgui_internal.h to increase discoverability and reordered arguments to be more consistent ( #323 )
2016-08-15 11:52:02 +02:00
ocornut
996eb080fa
Merge remote-tracking branch 'origin' into 2016-02-colorpicker
2016-08-11 22:53:26 +02:00
ocornut
8828889d5e
Refactored rare transient bool stacks into a set of flags, added unexposed ImGuiItemFlags_SelectableDontClosePopup ( #323 )
2016-08-07 20:05:24 +02:00
ocornut
cbf24c13ca
Merge remote-tracking branch 'origin' into 2016-07-navigation
2016-08-07 12:15:21 +02:00
ocornut
a7f6ea592f
Moved GetColorU32 out of imgui_internal.h to avoid inlining mess ( #759 )
2016-08-06 09:22:41 +02:00
ocornut
dcff032429
Nav: Moving all nav inputs to io.NavInputs[] float array, new enum labelled for gamepad. ( #323 )
2016-08-03 23:23:04 +02:00
ocornut
e9c881e4de
Nav: fixed using NavMenu/windowing select when no window is already focused + cleanup code ( #323 )
2016-07-31 16:07:58 +02:00
ocornut
08a28c16ae
Nav: Merge FocusedWindow and NavWindow that were basically duplicate at this point ( #323 )
2016-07-31 13:38:57 +02:00
ocornut
2545d75c3b
Tidying up, removed two unnecessary window flags from being exposed in imgui.h
2016-07-31 13:05:13 +02:00
ocornut
b3cba62b80
Nav: Added experiment ImGuiWindowFlags_NavFlattened flag to cross over between parent and non-scrolling child windows ( #323 )
2016-07-31 12:55:23 +02:00
ocornut
f72e2fd1b1
Merge remote-tracking branch 'origin' into 2016-07-navigation
2016-07-30 23:46:09 +02:00
ocornut
954c890c67
SameLine() with explicit X position is relative to left of group/columns (ref #746 , #125 , #630 )
2016-07-30 23:41:44 +02:00
ocornut
e2dd48ae65
Nav: Split _NoNav window flag into _NoNavInputs and _NoNavFocus ( #323 )
2016-07-30 18:06:05 +02:00
ocornut
04157da291
Nav: first committed pass for manual moving and manual scrolling (after a bunch of attempts) ( #323 )
2016-07-30 17:18:34 +02:00
ocornut
4309b8c1ed
Clarifying that MovedWindow* apply to mouse moving only
2016-07-30 16:25:45 +02:00
ocornut
efc8858328
ImRect: fixed Clip() function being the other way around (INTERNAL API BREAKING CHANGE- wasn't exposed, hoping nobody uses that) + actually fixes the function behavior.
2016-07-30 14:38:33 +02:00
ocornut
d6ce800a20
Nav: ActiveIdAllowNavMove -> ActiveIdAllowNavDirFlags for more flexibility (nav up/down typically allowed on a single-line text input) ( #323 )
2016-07-30 14:31:34 +02:00
ocornut
d9d6b0e629
Nav: Renamed private ImGuiNavDir_ enum to use left/right/up/down to be consistent with key enums ( #323 )
2016-07-30 13:45:46 +02:00
ocornut
b2aaab873d
Nav: collapse button is interactve, allow collapsing, tidying up, resize speed takes account of framebuffer scale ( #323 )
2016-07-30 10:56:52 +02:00
ocornut
20a0fde012
Tidying up default clipboard handler for non Windows-OS
2016-07-30 10:02:46 +02:00
ocornut
aeabda5a5f
Navigation: Tap NavMenu to access menu and close buttons, hold to focus/resize ( #323 )
...
Introducing a concept of NavLayer to filter navigable items
2016-07-24 14:56:14 +02:00
ocornut
175f42420c
Navigation: Can nav-out but not nav-in a window with ImGuiWindowFlags_NoNav flag ( #323 )
2016-07-24 14:41:27 +02:00
ocornut
a424d6f805
Navigation: Fixed missing initialization (had no side-effect, would be set in Begin) ( #323 )
2016-07-24 14:08:50 +02:00
ocornut
5cac4926c8
Fixed display of TitleBgActive color on window before a Modal window + modal window availability for navigation ( #323 )
2016-07-24 13:56:31 +02:00
ocornut
ba43310df1
Navigation: Renaming, shortened some unnecessary long fields names ( #323 )
2016-07-24 12:46:25 +02:00
ocornut
4bbdaa4e3c
Navigation: Moving NavInitWindow() around and making it static ( #323 )
2016-07-24 11:56:36 +02:00
ocornut
c2cb2a6928
Gamepad/Keyboard navigation support, initial commit, WIP ( #323 )
2016-07-20 00:02:59 +02:00
ocornut
0300e73b3f
Comments
2016-07-18 15:26:07 +02:00
ocornut
2df229d002
Fixed incorrect comment for ParentWindow ( #615 , #604 )
2016-07-18 15:26:06 +02:00
ocornut
91e1c56da6
Minor bits.
2016-07-18 15:25:59 +02:00
ocornut
d9e2e688e9
InputTextMultiline(): partial fix for when input and internal buffers differs in a way where scrollbar existence differs. ( #725 )
...
Partial fix, won't stop ids from functioning because of a zombie id.
2016-07-13 01:18:59 +02:00
ocornut
de61fcc619
Minor bits
2016-06-25 17:03:49 +02:00
ocornut
1ef7980e17
Merge branch 'master' into 2016-02-colorpicker
2016-06-15 10:05:17 +02:00
ocornut
c4db79f34b
Member variable name renamed "ID" "Id" for casing consistency
2016-06-12 22:27:15 +02:00
ocornut
d1c073a199
Comments, tweaks
2016-05-31 00:00:44 +02:00
ocornut
5d4cf1c3f3
Version 1.50 WIP
2016-05-30 19:38:36 +02:00
ocornut
adb85d800d
Version 1.49
2016-05-29 19:16:44 +02:00
ocornut
9a751da136
Caving in to ignoring stupid pedantic Clang warnings for old-style-cast in header files
2016-05-29 19:14:19 +02:00
ocornut
3ddb50a925
Merge branch 'master' into 2016-02-colorpicker
2016-05-29 19:07:23 +02:00
ocornut
45dacbf084
Fixed GetWindowContentRegionMax() being off by ScrollSize amount when SizeExplicit is set + caching ContentsRegionRect.
...
Relates to horizontal scrollbar, explicit contents size
2016-05-29 17:50:23 +02:00
ocornut
b7ebeb1610
Added SetNextWindowSizeConstraint() + demo code ( #668 )
2016-05-21 22:53:08 +02:00
ocornut
102d03a7eb
Resizing window doesn't rely on MouseDelta anymore, but rather recompute expected size based absolute mouse coords. ( #668 )
...
Storing ActiveIdClickOffset to generalize pattern already used by
columns.
2016-05-21 20:50:15 +02:00
ocornut
b630cb5b42
ImGuiWindow: Storing ParentWindow ( #615 , #646 )
2016-05-10 17:00:42 +02:00
ocornut
7b9c0a5c3f
Renamed ImGuiState -> ImGuiContext ( #586 , #269 )
2016-05-07 19:55:51 +02:00
ocornut
8b428e8c74
Added CreateContext/DestroyContext/GetCurrentContext/SetCurrentContext() ( #586 , #269 )
2016-05-07 19:54:27 +02:00
ocornut
ce4d731486
Minor comments, tweaks
2016-05-07 18:10:32 +02:00
ocornut
313d388bba
Reorganised windows moving code, documented a lag in FindHoveredWindow(), fixing lag whole moving windows ( #635 )
2016-05-06 11:31:32 +02:00
ocornut
89d5026187
Renamed majority of use of "opened" to "open" for clarity. Renamed SetNextTreeNodeOpened() to SetNextTreeNodeOpen(). ( #625 , #579 )
2016-05-02 12:32:16 +02:00
ocornut
9733f4fa24
Internal RenderBullet() helper.
2016-05-01 20:19:28 +02:00
ocornut
547f34cf22
Refactor ButtonBehavior(), fixed double-click mode also triggering on single-click (relate to #516 )
2016-05-01 17:43:51 +02:00
ocornut
df749e3f13
Added CollapsingHeader() variant with close button, obsoleted 4 parameters version. Refactored code into TreeNodeBehavior. ( #600 )
...
New flag and declaration makes uses of SetNextTreeNode() functions on
collapsing header more obvious as well (#579 ).
2016-05-01 14:34:55 +02:00
ocornut
7406d64c64
PushClipRect(): not altering passed values, leave it to caller responsibility to floor properly (followup #582 )
2016-04-30 18:55:23 +02:00
ocornut
c5149cd53c
MenuItem(): checkmark render in disabled color when disabled
2016-04-27 23:34:24 +02:00
ocornut
6bcc31e575
Merge branch 'master' into 2016-02-colorpicker
2016-04-26 11:06:24 +02:00
ocornut
ea6b615179
Made ImGui::PushClipRect()/PopClipRect() public. Changed ImDrawList::PushClipRect() prototype. Fixed demo. ( #610 )
2016-04-26 11:03:51 +02:00
ocornut
41215534d5
Internal ImRound() -> ImFloor(), ImRect::Round() -> ImRect::Floor(),
2016-04-23 14:10:36 +02:00
ocornut
7ce6c18bbe
Refactored CloseWindowButton() into a CloseButton() helper declared in imgui_internal.h ( #600 )
2016-04-21 09:55:02 +02:00
ocornut
ab4a69bcd4
Comments
2016-04-19 18:31:40 +02:00
ocornut
fc3b8d0a56
Relative order of Child windows creation is preserved during sort ( #595 )
2016-04-19 18:31:25 +02:00
ocornut
77177c18f0
Merge branch 'master' into 2016-02-colorpicker
2016-04-09 19:12:03 +02:00
ocornut
1588eda1ac
Version 1.49 WIP
2016-04-09 19:10:42 +02:00
ocornut
95cbcdca3f
Version 1.48
2016-04-09 17:46:48 +02:00
ocornut
4c1d4233b2
Merge branch 'master' into 2016-02-colorpicker
2016-04-03 01:10:26 +02:00
ocornut
d53c308852
Moved EndFrame() back to imgui_internal.h + comments. Undo cfbf06e394
2016-04-03 00:47:41 +02:00
ocornut
326c4e40f8
Merge branch 'master' into 2016-02-colorpicker
2016-03-28 23:17:13 +02:00
ocornut
cfbf06e394
Comments and moved EndFrame() for imgui_internal.h (for clarity? or extra confusion?)
2016-03-27 10:38:14 +02:00
ocornut
2b7eeba143
Trim trailing spaces
2016-03-26 15:38:52 +01:00
ocornut
baabe3b62c
Merge branch 'master' into 2016-02-colorpicker
2016-03-23 10:50:37 +01:00
ocornut
928832a5bc
Various tidying up / comments, moved columns functions declarations, no functional changes
2016-03-21 22:11:43 +01:00
Kyle Rocha
b8fcb4e7e4
Converted tabs to spaces
2016-03-21 12:40:02 -07:00
Kyle Rocha
3f46d9b933
Renamed FindTextDisplayEnd to FindRenderedTextEnd
2016-03-21 12:33:48 -07:00
Kyle Rocha
5bffc85ba6
Exposed FindTextDisplayEnd to imgui_internal.h
2016-03-21 12:07:13 -07:00
ocornut
459af7683c
Merge branch 'master' into 2016-02-colorpicker
2016-03-04 13:57:33 +01:00
ocornut
2065cbec4d
Removed extraneous comma for pedantic compilers ( #516 )
2016-03-03 00:34:06 +01:00
ocornut
b816d05e33
Minor tidying up following ( #516 ) - renamed ImGuiSelectableFlags_HandleDoubleClick to ImGuiSelectableFlags_AllowDoubleClick + comments
2016-03-03 00:30:08 +01:00
ocornut
6846873f23
Merge branch 'master' of https://github.com/zapolnov/imgui into zapolnov-master
2016-03-03 00:18:58 +01:00
ocornut
d45044fe54
CaptureKeyboardFromApp() / CaptureMouseFromApp(): allow to enforce clearing the capture flag ( #533 ) + demo + made code a little less messy
2016-03-03 00:09:41 +01:00
ocornut
f8fede1d8b
Added ColorPicker3/ColorPicker4, refactoring ColorEdit3/ColorEdit4 adding a bunch of flags and access to picker (wip #346 )
...
Still pretty much experimenting so may break API
2016-02-21 23:23:30 +01:00
ocornut
339b67c01a
Exposed FindWindowByName() in imgui_internal.h
2016-02-20 17:37:36 +01:00
ocornut
b329a36d27
Moved declaration of SetItemAllowOverlap() to imgui.h (ref #517 )
2016-02-02 19:52:30 +01:00
Nikolay Zapolnov
a908c109c0
Added flag for selectables to handle double clicks.
2016-01-31 22:08:35 +01:00
ocornut
7afd62ec57
Tentative fix for GCC/Clang ( #484 , #504 )
2016-01-25 21:45:45 +00:00
ocornut
595684e08c
Remove dependency on <new> header ( #484 , #504 )
...
(Now expecting something to fail somewhere..)
2016-01-25 21:26:53 +00:00
ocornut
005b897d7d
ProgressBar() handling of border size + storing border size in window structure ( #503 )
2016-01-24 11:00:37 +00:00
ocornut
3922988dea
TreeNode(), CollapsingHeader() fixed not being to use "##" sequence in formatted label.
...
Removed DisableHideTextAfterDoubleHash hack used by Metrics window.
2016-01-16 12:25:40 +00:00
ocornut
4e3c6f64c0
Various minor fixes following a pass of cppcheck static analyzer
2015-12-30 11:45:13 +01:00
ocornut
dc4a07c49a
Fixed various Clang -Weverything warnings
2015-12-26 14:59:07 +01:00
ocornut
e41568f87f
Version number 1.48 WIP + Update binaries
2015-12-26 10:02:57 +01:00
ocornut
24d186753e
Version number 1.47
2015-12-25 22:44:03 +01:00
ocornut
e4cf44e967
Minor rebranding "ImGui" -> "dear imgui" ( #21 )
2015-12-24 20:00:50 +01:00
ocornut
40ddf8e287
Exported high-level versions of PushClipRect / PopClipRect to imgui_internal.h ( #448 )
2015-12-24 14:47:11 +01:00
ocornut
6102aa1375
BeginPopupContextWindow() and BeginPopupContextVoid() reopen window on subsequent click ( #439 )
2015-12-20 23:39:47 +01:00
ocornut
66886405f6
Minor comment ( #439 )
2015-12-20 23:32:24 +01:00
ocornut
9b6b1bc0f3
Added GetColorU32 helpers (previously internal and misplaced as window->Color())
2015-12-13 19:32:37 +00:00
ocornut
ecc97bda7d
Added SetItemAllowOverlap() exposed in imgui_internal.h only
2015-12-03 21:30:17 +00:00
ocornut
9dca2ca960
Comments & spacing
2015-11-29 22:01:26 +00:00
ocornut
6269859315
Replace OS IME (Input Method Editor) cursor on top-left when we are not text editing.
2015-11-29 14:15:07 +00:00
ocornut
4ca34a879d
Columns: Fixed bug with indentation within columns, also making code shorter/faster ( #414 , #125 )
2015-11-28 16:36:25 +00:00
ocornut
807d4ff92c
Columns: minor tidying up while investigating severe issues with indenting within columns ( #414 )
2015-11-28 12:14:50 +00:00
ocornut
1aac69c937
Columns: tidying up, moving OffsetT to a ImGuiColumnData structure
2015-11-26 23:01:15 +00:00
ocornut
3102c0c97e
Rename internal ColumnsStartX to IndentX, makes more sense
2015-11-26 22:43:21 +00:00
ocornut
92c518a420
InputText: Added password mode via ImGuiInputTextFlags_Password ( #237 , #363 , #374 )
2015-11-19 23:09:59 +01:00
Jason Wilkins
4dee8473b5
Fixed a couple of problems found by CppCat code analyzer.
...
* incorrect implementation of ImVec4 operator- which always gives a w value of 0
* boolean formula of ((A && B) || B) can be simplified to just (B)
2015-11-10 17:06:37 -06:00
ocornut
1a42a3f91b
Refactor internal SliderBehavior() to take flags instead of a bool.
...
Sorry!
2015-10-30 11:43:23 +01:00
ocornut
3eabad0321
Refactor - Internal ButtonBehavior() removed unnecessary boolean arg, merged into flags using ImGuiButtonFlags_NoKeyModifiers.
...
This is quite a risky change frankly but I'd rather refactor sooner than
later. Hopefully few people are using the internal functions.
2015-10-30 11:36:51 +01:00
ocornut
5f0db60a57
Version number 1.47 WIP
2015-10-18 20:13:01 +01:00
ocornut
72dde4d323
Version 1.46
2015-10-18 17:36:27 +01:00
ocornut
7a61b7dd57
Renamed Window LastFrameDrawn to LastFrameActive, more correct
2015-10-18 16:57:10 +01:00
ocornut
43ff5a41be
InputText(): always use live input data for display in read-only mode ( fix #360 )
2015-10-18 15:50:46 +01:00
ocornut
d087671369
HoveredId is set via a SetHoveredID() function. Added HoveredIdAllowHoveringOthers not used by default API.
2015-10-06 19:27:24 +02:00
ocornut
98465d401b
Silencing inadequate MSVC warnings when exporting as DLL ( #345 )
2015-09-22 00:53:51 +02:00
ocornut
3b01b0a2f2
Extracted a EndFrame() function out of Render() but kept it internal/private + clarified some asserts ( #335 )
2015-09-16 23:48:42 +01:00
ocornut
7b1168eb30
Internal ImLoadFileToMemory() return void* instead of taking void** + allow optional int* file_size
2015-09-11 16:01:54 +01:00
ocornut
07776595c2
Added missing IMGUI_API definitions in imgui_internal ( fix #326 )
2015-09-10 10:22:17 +01:00
ocornut
f5fb5f0c1e
Minor tidying, reordering functions/members/initialisation to follow same orders
2015-09-07 23:39:36 +01:00
ocornut
dafad3903e
Added GetDrawData() alternative to setting a Render function.
2015-09-07 14:56:39 +01:00
ocornut
965fa3cb16
Version number 1.46 WIP
2015-09-02 19:09:19 +01:00
ocornut
c9e19f8953
Version number 1.45
2015-09-01 20:34:10 +01:00
ocornut
71026d3655
Added GetScrollX(), GetScrollX(), GetScrollMaxX() apis + demo ( #246 )
2015-08-30 18:33:38 +01:00
ocornut
a3cad2ff06
BeginChild() fixed missing rounding for child sizes which leaked into layout
2015-08-30 18:06:54 +01:00
ocornut
65a191c005
Added optional Horizontal Scrollbar & allow user to explicitly set content width via SetNextWindowContentSize() etc ( #246 )
...
GetCursorPos, SetCursorPos, GetContentRegionMax,
GetWindowContentRegionMin, GetWindowContentRegionMax are now including
the scrolling amount. It PROBABLY shouldn't break anything for you, but
take note that SetCursorPosX(100.0f) puts you at +100 from the starting
x position which may include scrolling, not at +100 from the window left
side.
2015-08-30 16:37:56 +01:00
ocornut
fc13ae2aa5
Turning float ScrollY into ImVec2 Scroll - no feature change, this is just to remove some syntax noise from the following commit ( #246 )
2015-08-30 15:08:13 +01:00
ocornut
b326c8fd1f
Added GetCurrentWindowRead() for functions that don't write to the window
2015-08-30 11:56:04 +01:00
ocornut
2d565d4bfb
Style: rename ScrollbarWidth to ScrollbarSize (sorry!)
2015-08-29 23:47:47 +01:00
ocornut
65fe60f2b2
Split tree/collapsable into internal TreeNodeBehaviorIsOpened() helper (unsure..) ( #282 )
2015-08-29 18:13:30 +01:00
ocornut
ad3c9f620d
Tabs to spaces
2015-08-25 12:40:40 +01:00
ocornut
b1987d697f
Trim trailing whitespace ( #305 )
2015-08-24 13:50:18 +02:00
ocornut
425c6cb3a3
Remove CaptureInputCharactersFromApp and minor cleanups ( #305 )
2015-08-24 13:47:27 +02:00
Borislav Stanimirov
73917115a8
Added flag showing whether the GUI wants text input
...
Conflicts:
imgui.cpp
2015-08-24 13:44:43 +02:00
ocornut
4ac4d1ac37
ImHash: defaults seed to zero + comment.
2015-08-18 19:17:09 -06:00
ocornut
97be3428f1
Added GetMousePosOnOpeningCurrentPopup().
2015-08-15 15:10:07 -06:00
ocornut
42567a9516
ImGuiTextFilter::PassFilter() supports string range. Added [] helper to ImGuiTextBuffer.
2015-08-13 21:25:32 -06:00
ocornut
f1f4d68f7f
Prevent imgui_internal.h from being included without imgui.h (piles of errors)
2015-08-10 10:26:39 -06:00
ocornut
aa3c26fd30
IM_PRINTFARGS takes one argument. Moved pragma outside of .h ( #295 )
2015-08-08 12:26:22 -06:00
ocornut
b637850260
Merge branch 'master' of https://github.com/tpoechtrager/imgui into tpoechtrager-master
2015-08-08 12:18:59 -06:00
ocornut
14822609bd
Version number 1.45 WIP
2015-08-08 12:18:37 -06:00
Thomas Pöchtrager
947cf3434f
Added printf attribute to printf like text formatting functions
2015-08-08 19:29:11 +02:00
ocornut
a99ba42a39
Version number 1.44
2015-08-08 07:57:29 -06:00
ocornut
88a00f77e9
Cleanup - using ImRect more consistently for ImGui-side cliprect data
2015-08-06 08:23:05 -06:00
ocornut
f1fb62fa6d
Cleanup - shuffle functions around ( #219 )
2015-08-06 08:11:33 -06:00
ocornut
9b19f8c19d
Merge branch 'master' into 2015-07-cleanup
...
Conflicts:
imgui.cpp
2015-08-05 16:57:31 -06:00
ocornut
1b0a8f9ac3
Comments
2015-08-05 10:00:05 -06:00
ocornut
4b29cc9e10
Exposed relevant functions in imgui_internal.h ( #219 )
2015-08-01 21:57:24 -06:00
ocornut
f63beeae86
Internal version of LogText() -> LogRenderedText() + shallow tidying up
2015-07-30 23:48:59 -06:00
ocornut
abf823c6f6
Tidying up
2015-07-30 22:49:10 -06:00
ocornut
7552f48d7b
ImLoadFileToMemory() default parameters
2015-07-21 17:46:49 -06:00
ocornut
dace68b6fd
Big cleanup, split imgui.cpp into imgui_demo.cpp,imgui_draw.cpp imgui_internal.h ( #219 )
2015-07-21 17:00:28 -06:00