|
@@ -30,72 +30,6 @@ HOW TO UPDATE?
|
|
|
and API updates have been a little more frequent lately. They are documented below and in imgui.cpp and should not affect all users.
|
|
|
- Please report any issue!
|
|
|
|
|
|
------------------------------------------------------------------------
|
|
|
- DOCKING+MULTI-VIEWPORT BRANCH (In Progress)
|
|
|
------------------------------------------------------------------------
|
|
|
-
|
|
|
-DOCKING FEATURES
|
|
|
-(see https://github.com/ocornut/imgui/wiki/Docking for quick intro)
|
|
|
-
|
|
|
-- Added Docking system: [BETA] (#2109, #351)
|
|
|
- - Added ImGuiConfigFlags_DockingEnable flag to enable Docking.
|
|
|
- Set with `io.ConfigFlags |= ImGuiConfigFlags_DockingEnable;`.
|
|
|
- - Added DockSpace(), DockSpaceOverViewport() API.
|
|
|
- - Added ImGuiDockNodeFlags flags for DockSpace().
|
|
|
- - Added SetNextWindowDockID(), SetNextWindowClass() API.
|
|
|
- - Added GetWindowDockID(), IsWindowDocked() API.
|
|
|
- - Added ImGuiWindowFlags_NoDocking window flag to disable the possibility for a window to be docked.
|
|
|
- Popup, Menu and Child windows always have the ImGuiWindowFlags_NoDocking flag set.
|
|
|
- - Added ImGuiWindowClass to specify advanced docking/viewport related flags via SetNextWindowClass().
|
|
|
- - Added io.ConfigDockingNoSplit option.
|
|
|
- - Added io.ConfigDockingWithShift option.
|
|
|
- - Added io.ConfigDockingAlwaysTabBar option.
|
|
|
- - Added io.ConfigDockingTransparentPayload option.
|
|
|
- - Style: Added ImGuiCol_DockingPreview, ImGuiCol_DockingEmptyBg colors.
|
|
|
- - Demo: Added "DockSpace" example app showcasing use of explicit dockspace nodes.
|
|
|
-
|
|
|
-MULTI-VIEWPORT FEATURES
|
|
|
-(see https://github.com/ocornut/imgui/wiki/Multi-Viewports for quick intro)
|
|
|
-
|
|
|
-Breaking Changes:
|
|
|
-
|
|
|
-- IMPORTANT: When multi-viewports are enabled (with io.ConfigFlags |= ImGuiConfigFlags_ViewportsEnable),
|
|
|
- all coordinates/positions will be in your natural OS coordinates space. It means that:
|
|
|
- - Reference to hard-coded positions such as in SetNextWindowPos(ImVec2(0,0)) are _probably_ not what you want anymore.
|
|
|
- Use GetMainViewport()->Pos to offset hard-coded positions, e.g. SetNextWindowPos(GetMainViewport()->Pos).
|
|
|
- - Likewise io.MousePos and GetMousePos() will use OS coordinates.
|
|
|
- If you query mouse positions to interact with non-imgui coordinates you will need to offset them.
|
|
|
- e.g. subtract GetWindowViewport()->Pos.
|
|
|
-- IO: Removed io.DisplayVisibleMin, io.DisplayVisibleMax settings (they were marked obsoleted, used to clip within the (0,0)..(DisplaySize) range).
|
|
|
-
|
|
|
-Other changes:
|
|
|
-(FIXME: This need a fuller explanation!)
|
|
|
-
|
|
|
-- Added ImGuiPlatformIO structure and GetPlatformIO().
|
|
|
- - Similarly to ImGuiIO and GetIO(), this structure is the main point of communication for backends supporting multi-viewports.
|
|
|
- - Backend sets functions in ImGuiPlatformIO to manipulate platform windows.
|
|
|
- - ImGuiPlatformIO::Monitors is a list of platform monitors (input from backend)
|
|
|
- - ImGuiPlatformIO::Viewports is a list of viewports (output from dear imgui)
|
|
|
-- Added ImGuiPlatformMonitor to feed OS monitor information in the ImGuiPlatformIO::Monitors.
|
|
|
-- Added GetWindowViewport(), SetNextWindowViewport().
|
|
|
-- Added GetWindowDpiScale().
|
|
|
-- Added GetOverlayDrawList(ImGuiViewport* viewport).
|
|
|
- The no-parameter version of GetOverlayDrawList() return the overlay for the current window's viewport.
|
|
|
-- Added UpdatePlatformWindows(), RenderPlatformWindowsDefault(), DestroyPlatformWindows() for usage in application setup.
|
|
|
-- Added FindViewportByID(), FindViewportByPlatformHandle() for usage by backends.
|
|
|
-- Added ImGuiConfigFlags_ViewportsEnable configuration flag and other viewport options.
|
|
|
-- Added io.ConfigViewportsNoAutoMerge option.
|
|
|
-- Added io.ConfigViewportsNoTaskBarIcon option.
|
|
|
-- Added io.ConfigViewportsNoDecoration option.
|
|
|
-- Added io.ConfigViewportsNoDefaultParent option.
|
|
|
-- Added ImGuiBackendFlags_PlatformHasViewports, ImGuiBackendFlags_RendererHasViewports, ImGuiBackendFlags_HasMouseHoveredViewport backend flags.
|
|
|
-- Added io.AddMouseViewportEvent() (optional _even_ for multi-viewport support, tied to ImGuiBackendFlags_HasMouseHoveredViewport flag).
|
|
|
-- Expanded ImGuiViewport structure, ImGuiViewportFlags flags.
|
|
|
-- Added ImGuiWindowClass and SetNextWindowClass() for passing viewport related hints to the OS/platform back-end.
|
|
|
-- Examples: Renderer: OpenGL2, OpenGL3, DirectX9, DirectX10, DirectX11, DirectX12, Vulkan: Added support for multi-viewports.
|
|
|
-- Examples: Platforms: Win32, GLFW, SDL2: Added support for multi-viewports.
|
|
|
- Note that Linux/Mac still have inconsistent support for multi-viewports. If you want to help see https://github.com/ocornut/imgui/issues/2117.
|
|
|
-
|
|
|
|
|
|
-----------------------------------------------------------------------
|
|
|
VERSION 1.89.8 WIP (In Progress)
|