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
cfcad42b89
Viewport: Win32: Workaround to the fact that ::WindowFromPoint() seems to return Windows using ImGuiViewportFlags_NoInputs / HTTRANSPARENT when dragging nearby the platform title bar. This is to allow using platform decoration. I don't understand this well atm. ( #1542 )
2019-01-02 19:03:45 +01:00
omar
4a6f95acc8
Viewport: Added Platform_UpdateWindow hook for general purpose: Rework Win32 code to reflect viewport flags changes into Win32 while the window is active.
2019-01-02 19:03:36 +01:00
omar
951c9dd68b
Merge branch 'master' into viewport
...
# Conflicts:
# examples/imgui_impl_sdl.cpp
2019-01-02 19:00:31 +01:00
omar
a9a60a24c1
Tweaked asserts
2018-12-23 17:51:50 +01:00
omar
5d20da1b36
Viewport, DPI: Now using DpiScale from the ImGuiPlatformMonitor array instead of calling Platform_GetWindowDpiScale() before the platform window creation. Might even tentatively see if things work out without Platform_GetWindowDpiScale. ( #1676 )
2018-12-14 12:12:26 +01:00
omar
f3a0b17bb8
Viewport: Win32, GLFW, SDL: Clarified back-ends by using global mouse position direction. GLFW: disabled io.MouseHoveredViewport setting under Mac/Linux. ( #1542 , #2117 ) + various comments.
2018-12-06 16:30:10 +01:00
omar
7658035e5a
About, IO: Added io.BackendPlatformName, io.BackendRendererName for informational/QA purpose.
2018-11-30 18:30:21 +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
a423f032ee
About, IO: Added io.BackendPlatformName, io.BackendRendererName for informational/QA purpose.
2018-11-30 18:18:15 +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
9ee86f22b7
Examples: Win32: Handle UTf-8 in platform window title setting. ( #2164 )
2018-11-05 17:37:06 +01:00
omar
52ca91ca57
Merge branch 'master' into viewport
2018-11-05 17:29:31 +01:00
omar
6cc380fc41
Merge branch 'master' into viewport
...
# Conflicts:
# examples/imgui_impl_win32.cpp
# examples/imgui_impl_win32.h
# imgui.cpp
2018-09-26 21:34:52 +02:00
omar
7c3b9172ad
Examples: Referring to missing gamepad support in back-end that are missing it.
2018-09-20 10:37:55 +02:00
omar
b85f345369
Merge branch 'master' into viewport
...
# Conflicts:
# examples/imgui_impl_dx9.cpp
# examples/imgui_impl_opengl2.cpp
# examples/imgui_impl_opengl3.cpp
# examples/imgui_impl_vulkan.cpp
2018-09-14 11:32:55 +02:00
omar
1afd29d382
Examples: Using "dear imgui" terminology in all examples headers/comments + fix minor typo.
2018-09-13 16:50:13 +02: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
Ryan Crandall
34203d5008
imgui_impl_win32: Don't redefine WIN32_LEAN_AND_MEAN if already defined ( #2014 )
2018-08-09 17:32:31 +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
14cef31467
Merge branch 'master' into viewport
...
# Conflicts:
# imgui.cpp
2018-07-09 16:24:01 +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
c4e34aaace
Examples: Comments to clarify how the keyboard data is indexed.
2018-06-30 14:33:45 +02:00
omar
62b3d7c51e
Fixed software Hand cursor from not actually working. Fixed demo from crashing. Fixed typo and extraneous trailing space. Added Changelogs. ( #1913 , #1914 )
2018-06-29 16:36:40 +02:00
Aiekick
ecd9a223e3
add hand cursor support (+11 squashed commit)
2018-06-29 16:36:40 +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
cac4c3f9b8
Examples: The functions in imgui_impl_xxx.cpp are prefixed with IMGUI_IMPL_API (which defaults to IMGUI_API) to facilitate some uses. ( #1888 ) + Comments in imgui.h
2018-06-21 12:04:00 +02:00
omar
c44a4bed84
Examples: Fixed bindings to use ImGuiMouseCursor_COUNT instead of old name ImGuiMouseCursor_Count_ so they can compile with IMGUI_DISABLE_OBSOLETE_FUNCTIONS. ( #1887 )
2018-06-20 11:06:29 +02:00
omar
24aeca3d0c
Merge branch 'master' into viewport
...
# Conflicts:
# examples/imgui_impl_dx10.cpp
# examples/imgui_impl_dx10.h
# examples/imgui_impl_dx11.cpp
# examples/imgui_impl_glfw.cpp
# examples/imgui_impl_glfw.h
# examples/imgui_impl_opengl2.cpp
# examples/imgui_impl_opengl2.h
# examples/imgui_impl_opengl3.cpp
# examples/imgui_impl_sdl.cpp
# examples/imgui_impl_sdl.h
# examples/imgui_impl_vulkan.h
# examples/imgui_impl_win32.cpp
2018-06-12 16:24:24 +02:00
omar
bdb3d72d37
Examples: Win32: Fixed handling of mouse wheel messages to support finer position messages (typically sent by track-pads). ( #1874 )
2018-06-11 17:36:18 +02:00
omar
7acb46bec5
Examples: Comments to make ImGuiConfigFlags_NoMouseCursorChange more visible ( #1027 ). + Allegro5: Added support for ImGuiConfigFlags_NoMouseCursorChange flag.
2018-06-11 12:33:51 +02:00
omar
13a3a2d0f3
Merge branch 'examples_refactor2' into viewport ( #1870 )
...
# Conflicts:
# examples/README.txt
# examples/directx11_example/main.cpp
# examples/directx12_example/main.cpp
# 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_opengl2.h
# examples/imgui_impl_opengl3.cpp
# examples/imgui_impl_sdl2.cpp
# examples/imgui_impl_sdl2.h
# examples/imgui_impl_vulkan.cpp
# examples/imgui_impl_vulkan.h
# examples/imgui_impl_win32.cpp
# examples/imgui_impl_win32.h
# examples/opengl2_example/main.cpp
# examples/opengl3_example/main.cpp
# examples/sdl_opengl2_example/main.cpp
# examples/sdl_opengl3_example/main.cpp
# examples/sdl_vulkan_example/main.cpp
# examples/vulkan_example/main.cpp
# imgui.cpp
# imgui.h
2018-06-10 15:04:46 +02:00
omar
85f9694bd4
Big example binding refactor (manually imported from Viewport branch, stripped out of Viewport code). ( #1870 )
...
Read examples/README.txt for some details.
ImDrawData: Added DisplayPos, DisplaySize fields honored by all backends (not strictly necessary to honor just now, but doing it to be ahead)
2018-06-08 19:37:33 +02:00
omar
8c374512fd
Examples, Platform: Removed the call to ImGui::NewFrame() from the platform _NewFrame() function e.g. ImGui_ImplWin32_NewFrame(), ImGui_ImplSDL2_NewFrame(), ImGui_ImplGlfw_NewFrame(), etc. Moved to main.cpp for consistency. ( #1542 )
2018-06-07 22:10:31 +02:00
omar
090eb437ed
Viewport, Platform: Cleaned up xxx_UpdateMouseCursor() functions to make them more consistent. ( #1542 )
2018-05-11 16:41:43 +02:00
omar
d574604a5d
Viewport, Platform: Win32: Fixed handling of io.WantSetMousePos + added a bunch of comments. GLFW, SDL2: Added handling of io.WantSetMousePos. ( #1542 )
2018-05-11 16:41:03 +02:00
omar
6eacddb50f
Viewport: Changed Monitor field to use Pos+Size (more consistent), changed FullMin,FullMax to MainPos,MainSize. Made main viewport accessible in PlatformIO on first frame. Fixed casing of ImGuiViewportFlags_TopMost flag. ( #1542 )
2018-05-10 13:10:04 +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
7a41e0b1ea
Platform: Added platform_io.Platform_SetWindowFocus, Platform_GetWindowFocus function wrappers (unused yet). Exact specs tbd because our simplified concept of focus doesn't necessary match the more complex OS native concepts. ( #1542 )
2018-04-25 15:15:14 +02:00
omar
e3e4b7bdf5
Viewport: Fixed mouse hover flicker on mouse button release frame after moving a window. ( #1542 )
...
Platform: Clarifying some comments in back-ends.
2018-04-24 17:10:27 +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
376f2aec54
Viewport: Clamp windows within monitors + fallback rescue window when it is out of sight (e.g. removed monitor, changed resolution) + Win32: declare primary monitor at the beginning of the list. ( #1542 )
2018-04-23 23:01:37 +02:00
omar
d268471285
Viewport: Added ImGuiConfigFlags_ViewportsNoMerge flag (to enforce a platform window for all floating windows) + minor tidying up and addition of non-functional wip code.
2018-04-23 18:56:25 +02:00
omar
423577e14e
Viewport, Platforms: SDL: Fixed initial focus click being ignored as a mouse button. GLFW: Fixed mouse cursor support for multi-viewport with GLFW 3.3 (current master) - somehow doesn't appear to work with GLFW 3.2 but I'm not too fussed about it. ( #1542 )
2018-04-23 16:46:25 +02:00
omar
4433ce4312
Viewport, Platform: Added work area in ImGuiPlatformMonitor. Renamed fields. ( #1542 )
2018-04-23 12:38:20 +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
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
950539b768
Viewport, Platform, DPI: Back-end store per-monitor DPI information in ImGuiPlatformMonitor. ( #1542 , #1676 )
2018-04-13 20:26:36 +02:00
omar
22d6f00110
Viewport: Fixed DPI changing viewport from interfering with moving another window (disabling code) + metrics crash fix on closed viewport window + Windows 10 call to SetThreadDpiAwarenessContext(DPI_AWARENESS_CONTEXT_PER_MONITOR_AWARE_V2) for DPI, with no noticeable improvements. ( #1542 , #1676 )
2018-04-13 11:14:06 +02:00
omar
285269ef55
Viewport, Platform: Added ImGuiViewportFlags_TopMost that will be used by tooltip window (without it, clicking and holding the window emitting the tooltip would move the tooltip to the back) + GLFW backend fixes for non-win32 platforms. ( #1542 )
2018-04-11 21:27:19 +02:00
omar
83bd3595a4
Viewport: Merged ImGuiPlatformData into ImGuiPlatformIO. Comments. ( #1542 )
2018-04-10 22:58:39 +02:00
omar
32ee0a3947
Viewport, Platform: Added a way to register monitor bounds to imgui so they can be used to clamp individual-viewport tooltips/popups so they don't straddle monitors. ( #1542 )
2018-04-10 22:32:08 +02:00
omar
7ddc22b326
Viewports, DPI: Renamed config flags. ( #1542 )
2018-04-10 20:02:43 +02:00
omar
0d5042f0f3
Viewport: Popups, Tooltips can individually request no task bar icons to the platform layer. ( #1542 )
2018-04-10 19:15:44 +02:00
omar
d4dd448511
Examples, Platform, Viewport: Fixed inconsistent window ownership issues. Added comments. Made Win32/SDL back-ends track ownership.
2018-04-09 22:01:58 +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
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
84c6ea0cee
Viewport: Comments about honoring ImGuiViewportFlags_NoInputs and MouseHoveredViewport. ( #1542 )
2018-04-05 12:27:17 +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
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
0e09032750
Viewport, Examples: Renamed types used by examples. ( #1542 )
2018-03-18 22:19:02 +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
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
1e81a53e75
Examples: DPI: Minor warning fix. ( #1676 )
2018-03-12 16:22:24 +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
a2fbcc9ad4
Examples: DPI: Portable DPI related helpers in the _Win32 examples. Using one in examples's main.cpp, the GetDpiScale functions are not wired anywhere for now. ( #1542 , #1676 )
2018-03-12 10:31:39 +01:00
omar
1eb89d7e3b
Viewport: Changed signature of ResizeViewport to be consistent with other similar functions.
2018-03-08 20:32:34 +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
9dcc07422e
Viewport: Reorganized viewport enable flags. Both user + platform + renderer need to enable a flag. ( #1542 )
2018-03-07 12:35:26 +01:00
omar
d98a5d54aa
Renamed ImGuiNavFlags io.NavFlags to ImGuiConfigFlags io.ConfigFlags. ( #787 )
2018-02-28 19:03:39 +01:00
omar
25349b31d7
Examples: DX11 + Win32: Initial attempt at implementing the viewport/platform api. (WIP/test API) ( #1542 )
2018-02-27 23:26:51 +01:00
omar
f7ef10e547
Examples: Titles/comments in headers
2018-02-21 23:05:17 +01:00
omar
bcdfd5d61c
Merge branch 'master' into examples_refactor
2018-02-20 16:18:02 +01:00
omar
9fdf72e42b
Examples: WIn32: Prefixing every Win32 function calls with :: to denote global namespace in a consistent manner.
2018-02-18 21:23:11 +01:00
omar
4f0db01f7c
Examples: DirectX9: Reusing imgui_impl_win32, removed that code from imgui_impl_dx9
2018-02-18 20:26:20 +01:00
omar
19540479d4
Examples: DirectX11: Extracted imgui_impl_dx11.* instead imgui_impl_dx11 and imgui_impl_win32
2018-02-18 20:26:20 +01:00