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
2e1ac0f683
Viewport, Platform: SDL: Makes the CreateViewport function restore current GL context so in theory it is free from side-effect. That said, it seems like there is a bug in SDL because our CreateViewport (currently in Render(), not for long) have affect a jerky side-effect if SDL_GL_MakeCurrent() is called before Render(). ( #1542 )
2018-03-15 19:25:23 +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
09d8943967
Examples Refactor: GLFW: Explicit functions to init GLFW with OpenGL or Vulkan since we cannot read the api hints from glfw.
2018-03-15 16:42:21 +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
83ef61fa56
Examples: SDL: Fix for versions olders than 2.0.6
2018-03-14 14:14:16 +01:00
omar
d0e0b106f0
Examples: SDL,GLFW,Vulkan: The Platform<>Renderer link is handled by SDL/GLFW platforms, both can compile without Vulkan headers, SDL+Vulkan is now on part with GLFW+Vulkan (aka broken the same way!). ( #1542 )
2018-03-13 23:16:15 +01:00
omar
98b66a5fc9
Examples: Using draw_data->DisplaySize, followup to c50198debe
. Fix Vulkan secondary viewport rendering. SDL+Vulkan: Matched changes. Fix vcprojs. ( #1542 , #1042 )
2018-03-13 23:07:12 +01:00
omar
c50198debe
Viewport: Obsoleted io.DisplayPos (which was a Viewport branch thing), added ImDrawData::DisplayPos, DisplaySize ( #1542 ) wip
2018-03-13 16:20:27 +01:00
omar
b88492746e
Examples, Viewport: Vulkan: Experiment (broken) multi-viewport support, merging code from ParticlePeter branches. ( #1542 , #1042 )
2018-03-12 18:43:25 +01:00
omar
f6fc28dfd2
Merge branch 'master' into viewport (inc Vulkan resize fix merge #1042 )
2018-03-12 17:50:32 +01:00
omar
cdeef65b05
Examples: Vulkan: Passing Queue, QueueFamily to binding. Fixed scissor (fixed in master). ImGui_ImplVulkanH_DestroyWindowData() waits for device to be idle. ( #1042 )
2018-03-12 17:37:28 +01:00
omar
1e81a53e75
Examples: DPI: Minor warning fix. ( #1676 )
2018-03-12 16:22:24 +01:00
omar
37cb177745
Examples: Vulkan: Only resize swap chain and framebuffer once. ( #1042 )
2018-03-12 14:47:41 +01:00
omar
1c18d65313
Examples: Renamed glfw error callback for clarity.
2018-03-12 14:43:37 +01:00
Peter Particle
b2453d7e8f
Fixed resize window validation errors with removing frame prerender once and present last but one frame functionality. Frame rate is still similar.
2018-03-12 14:34:36 +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
aa3fe81c87
Examples: DPI: Hacked in a quick compile-and-run-everywhere call to SetProcessDpiAwareness(), will need to revisit.
2018-03-08 18:46:30 +01:00
omar
9ea16e344a
Viewport: Disable extra viewports from hosting other windows. ( #1542 )
2018-03-07 16:34:18 +01:00
omar
d8719cf59b
Fixed warnings.
2018-03-07 14:46:53 +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
52c78820aa
Examples: SDL: Fix for pre 2.0.4.
2018-03-07 12:19:19 +01:00
omar
19b92751b9
Examples: Updated Makefile and batch files to work with new examples. Using lowercase "gl.h" as it seems this is what Linux wants.
2018-03-07 12:05:47 +01:00
omar
f318f2d5ea
Examples: Added Makefile for SDL+OpenGL2 example. ( #1668 )
2018-03-07 11:51:41 +01:00
omar
7fd62baa42
Examples: Added Makefile for SDL+OpenGL2 example. ( #1668 )
2018-03-07 11:50:56 +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
a2ed3ee2cf
Examples: OpenGL3: Added a way to override the glsl version number through the Init call. ( #1667 , #1466 )
2018-03-06 19:48:30 +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
cab41d954e
Examples: Vulkan: Further refactor.
2018-03-03 22:38:24 +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
e0cbfd74d7
Examples: Vulkan: Moved CreateOrResizeWindowData func to imgui_impl_vulkan.h
2018-03-02 23:59:21 +01:00
omar
426930e028
Examples: Vulkan: Moved main.cpp data structures to imgui_impl_vulkan.h as shared helpers for the benefit of both the example and the platform/viewport renderer interface.
2018-03-02 23:05:23 +01:00
omar
e9fa17e1bf
Viewport: Replaced UpdatePlatformWindows/RenderPlatformWindows by RenderAdditionalViewports(). The update is always called in EndFrame(). ( #1542 )
2018-03-02 22:44:06 +01:00
omar
7113fc7dee
Examples: Vulkan: Moved variables into per-window data, refactored/tweaks to that the bug functions main.cpp for both SDL and GLFW examples match (they'll probably be moved to imgui_impl_vulkan as helpers).
2018-03-02 21:37:14 +01:00
omar
e0f283cfcb
Examples: Vulkan: Fix 7b968b098e
2018-03-02 20:09:21 +01:00
omar
7b968b098e
Examples: Vulkan: Reduced duplicate code by skipping present on the first frame. Amend 201d589714
by @ParticlePeter
2018-03-02 20:01:18 +01:00
omar
e927a6ac4a
Examples: Vulkan: Various tweak. Misc refactor into per-frame data. Duplicate buffer creation code moved to CreateOrResizeBuffer().
2018-03-02 19:40:09 +01:00
omar
9da475e4e8
Examples: GLFW, Vulkan: GLFW binding viewport tweaks to supports Vulkan better (do not call SwapBuffer, share context etc.). Added DUMMY (empty) platform/viewport interface in the viewport code.
2018-03-02 19:24:24 +01:00
omar
5b282bdd48
Examples: Renamed glfw error callback so it's more clear what it is.
2018-03-02 19:24:23 +01:00
omar
fc80f2b41a
Merge branch 'examples_refactor' into viewport
...
# Conflicts:
# examples/directx10_example/main.cpp
# examples/directx11_example/main.cpp
# examples/directx12_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.h
2018-03-01 23:27:11 +01:00
omar
68e9ef9885
Examples: Vulkan: SDL: Fixed missing resize handler (not properly merged from #1367 ) + tweaks.
2018-03-01 23:22:02 +01:00
omar
296db2ed33
Examples: Vulkan: Moved code into shared helpers: ImGui_ImplVulkan_SelectSurfaceFormat, ImGui_ImplVulkan_SelectPresentMode.
2018-03-01 23:22:02 +01:00
omar
3171d61dfc
Examples: Vulkan: Various tweaks to name variable more consistently like Vulkan + a few comments + a few imgui style code compaction.
2018-03-01 23:22:01 +01:00
omar
57e9f61852
Examples: Vulkan: Debug report tweak + always enable in Debug build.
2018-03-01 18:59:07 +01:00
omar
cf365ed00b
Examples: Fixed enabling IMGUI_VULKAN_DEBUG_REPORT which was broken during refactor because of duplicate 'extensions' local variable.
2018-03-01 18:41:19 +01:00
omar
b37ef20c5c
Makefile: updated sdl_opengl3_example with all changes from #885 .
2018-03-01 15:54:12 +01:00
Sam Hocevar
124d8522b1
Do not store compiled objects outside the project tree.
2018-03-01 15:50:39 +01:00
Sam Hocevar
b6f251103b
Define SOURCES instead of OBJS in Makefiles.
...
OBJS is still deduced from SOURCES, but this change gives better control
over where the object files get actually written.
2018-03-01 15:46:43 +01:00
Sam Hocevar
d4f63c3844
Use make variables $@ and $^ where appropriate.
2018-03-01 15:45:34 +01:00
Sam Hocevar
551932697d
Ensure make clean
is idempotent.
...
Prior to this, `make clean` would fail if the project was not already
fully built, and a second invokation would always fail.
2018-03-01 15:45:23 +01:00
omar
d98a5d54aa
Renamed ImGuiNavFlags io.NavFlags to ImGuiConfigFlags io.ConfigFlags. ( #787 )
2018-02-28 19:03:39 +01:00
omar
8074d56bdd
Renamed ImGuiNavFlags io.NavFlags to ImGuiConfigFlags io.ConfigFlags. ( #787 )
2018-02-28 18:58:34 +01:00
omar
2c9f45bbe7
Renamed ImGuiNavFlags io.NavFlags to ImGuiConfigFlags io.ConfigFlags. ( #787 )
2018-02-28 18:51:40 +01:00
omar
fc3c3de70d
Examples: DX10: Multi viewport/platform support (based on DX11 version). ( #1542 )
2018-02-28 18:35:16 +01:00
omar
997d1bd0eb
Examples: NULL pointers for consistency.
2018-02-27 23:34:28 +01:00
omar
baef79415b
Examples: DX12: Empty skeleton toward implementing the multi-viewport api for DirectX12. (WIP/test API) ( #1542 , #301 )
2018-02-27 23:34:28 +01:00
omar
cb601d79e8
Examples: SDL: Initial attempt at implementing the viewport/platform api. (WIP/test API) ( #1542 )
...
ImGui_ImplSDL2_Init() now takes a SDL GL context.
2018-02-27 23:34:27 +01:00
omar
4cee46f909
Examples: GLFW + OpenGL3: Initial attempt at implementing the viewport/platform api. (WIP/test API) ( #1542 )
2018-02-27 23:27:41 +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
29510fcb83
Examples: Misc tweaks/fixes.
2018-02-27 10:29:37 +01:00
omar
3f335b0d42
Merge branch 'master' into examples_refactor
...
# Conflicts:
# examples/opengl3_example/imgui_impl_glfw_gl3.cpp
# examples/sdl_opengl3_example/imgui_impl_sdl_gl3.cpp
2018-02-26 18:22:36 +01:00
omar
d7f97922b8
Examples: Fix d749d49903
missing the deletion code. ( #1217 )
2018-02-23 22:46:14 +01:00
omar
d749d49903
Examples: OpenGL3: Create the VAO in the render function so the setup can more easily be used with multiple shared GL context. ( #1217 )
2018-02-23 12:37:49 +01:00
omar
ffda84cfae
Examples: DirectX12: Merged to new example format, imgui_impl_dx12.cpp contains the DX12 stuff, couple with imgui_impl_win32.cpp
2018-02-23 10:56:06 +01:00
omar
e6bc840f6f
Merge branch 'master' into examples_refactor
2018-02-23 10:47:32 +01:00
omar
288351a801
Examples: DirectX12: Tweaked assertion to more accurately represent what it wants to say. ( #301 )
2018-02-23 00:00:43 +01:00
omar
63be3e7c82
Update README.txt
2018-02-22 23:20:37 +01:00
omar
7e24ce0956
Examples: DirectX12: Fixed shutdown issue. ( #301 )
2018-02-22 23:04:28 +01:00
omar
9be7d048c8
Examples: DirectX12: Merge, various styling tweaks, update for 1.60 wip, synchronized Win32 features with other examples. ( #301 )
2018-02-22 23:03:47 +01:00
omar
913f3692a2
Examples: DirectX12: Removed from current solution which is meant to be VS2010 compatible for now (will change soon).
2018-02-22 22:38:22 +01:00
omar
0d063585e8
Merge branch 'jdm3_master'
2018-02-22 17:04:15 +01:00
omar
f43068c543
Examples: DirectX10, DirectX11: Simplified main example code.
2018-02-22 13:15:16 +01:00
omar
0b26387a2b
Simplified .gitignore list
2018-02-21 23:14:55 +01:00
omar
493ec0bc98
Simplified .gitignore list
2018-02-21 23:13:53 +01:00
omar
f7ef10e547
Examples: Titles/comments in headers
2018-02-21 23:05:17 +01:00
omar
91cadc1130
Merge branch 'master' into examples_refactor
2018-02-21 22:47:03 +01:00
omar
9b9d9321cf
Examples: SDL: Using %SDL2_DIR% in the .vcproj instead of %SDL_DIR%, the earlier is more standard.
2018-02-21 22:46:49 +01:00
omar
47d1360124
Examples: Using SDL2_DIR instead of SDL_DIR (more standard).
2018-02-21 22:41:46 +01:00
omar
f67699456c
Examples: Added SDL+Vulkan example, the abstraction worked here :) (ref #1367 )
2018-02-21 22:41:04 +01:00
omar
387f724d33
Examples: Vulkan: Formatting and tweaks (to match SDL's main).
2018-02-21 22:39:49 +01:00
omar
bcdfd5d61c
Merge branch 'master' into examples_refactor
2018-02-20 16:18:02 +01:00
omar
9c20a40b36
Examples: OpenGL: Cast call to glPolygonMode(). ( #1628 ).
2018-02-20 15:49:17 +01:00
omar
daddd09cd5
Examples: Mouse cursor handling comments/tweaks to homogenize. ( #1495 )
2018-02-20 14:23:22 +01:00
omar
d534207622
Examples: GLFW: Added support for mouse cursors (ImGui::GetMouseCursor() value and WM_SETCURSOR message handling). ( #1495 )
2018-02-20 14:18:02 +01:00
omar
11b12488e8
Examples: GLFW*: Renamed GLFW callbacks exposed in .h to not include GL2/GL3/Vulkan in their name.
2018-02-20 14:09:46 +01:00
omar
7e2e0535dd
Examples: DirectX 9,10,11: Inputs: Added support for mouse cursors (ImGui::GetMouseCursor() value and WM_SETCURSOR message handling). ( #1495 )
2018-02-20 13:55:09 +01:00
omar
e660d92fa5
Examples: GLFW: Added mouse cursors support ( #1495 )
2018-02-19 22:29:52 +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
df9051ded2
Examples: Vulkan: Added support for io.DisplayPos.
2018-02-18 21:15:51 +01:00
omar
230c5ca735
Examples: Vulkan: Fixed GLFW calls.
2018-02-18 21:15:41 +01:00
omar
3bd3693fb7
Examples: DirectX10, DirectX11, OpenGL2, OpenGL3: Added support for io.DisplayPos.
2018-02-18 21:09:28 +01:00
omar
6d0f9244b8
Examples: Allegro5, Marmalade: Moved bindings to parent folder. Renamed Allegro stuff from *A5_ to *Allegro5_
2018-02-18 20:26:20 +01:00
omar
80a8aea7e3
Examples: Added SDL, Vulkan examples to .sln file.
2018-02-18 20:26:20 +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
6cd4e30b58
Examples: DirectX10: Reusing imgui_impl_win32, removed that code from imgui_impl_dx10
2018-02-18 20:26:20 +01:00