Commit Graph

512 Commits

Author SHA1 Message Date
Emmanuel Benoît
77a310736d Horizontal mouse wheel support
This patch adds support for the horizontal mouse wheel in ImGui. It
affects windows that can be scrolled, as long as the Ctrl key is not
being pressed.

The scrolling speed has been set empirically so that it matches the
scrolling speed on the Firefox browser when the horizontal wheel is
used.

Internally, it adds a MouseHorizWheel to ImGuiIO, which is then used in
NewFrame to scroll the current window.

The SDL/GL2, SDL/GL3, GLFW/GL2 and GLFW/GL3 examples has been modified
to use it.
2017-11-27 20:59:05 +01:00
omar
ef5dd30625 Sisyphus says: tweaked comments about not using old-style OpenGL examples (#1459, #1394 etc.) 2017-11-24 09:27:45 +01:00
omar
6bd3b45b34 Sisyphus says: tweaked comments about not using old-style OpenGL examples (#1459, #1394 etc.) 2017-11-24 09:23:17 +01:00
Codecat
979fe30a6f Fix wrong comment in dx implementation headers 2017-11-18 13:56:59 +01:00
omar
fba704bf5d Examples: Added a bunch of comments/referencs related to io.WantCaptureMouse, io.WantCaptureKeyboard (#1262, #1237, #1219, #635, #1058, #1051, #912, #533, #703, #446, #459, #364, #213, #52, and more) 2017-11-01 14:24:09 +01:00
omar
36f00811b9 Examples: Comments to guide people unfamiliar with the librairies used. 2017-10-28 19:28:22 +02:00
omar
cb38caeda4 Examples: Added more comments near the fonts loading section, to catch common questions and errors (e.g. #1397, #1366, #1341, #1222, #1193, #1115, #951, etc.) 2017-10-28 18:21:44 +02:00
omar
c5027d4fa1 Examples: Extra clarification for the 100th person who insist on using the OpenGL2 code in spite of existing documentation leaning against it. (#1394) 2017-10-25 20:55:15 +02:00
omar
d2c65aa3e8 Examples: DirectX9/10/11: Tweak usage of SetCapture/ReleaseCapture. (#1375)
ps: DirectX 12 example (#302) may want to adopt that as well.
2017-10-24 14:48:00 +02:00
omar
50f5be9266 Examples: GLFW+GL2/GL3: Minor tweaks, comments. 2017-10-23 10:04:38 +02:00
omar
d6a9956781 Examples: DirectX9/10/11: Added WM_SYSKEYDOWN / WM_SYSKEYUP handlers so e.g. VK_MENU can be read. 2017-10-23 10:01:18 +02:00
omar
c14a66970b Examples: DirectX9/10/11: Renamed WndProc handler to use a generic Win32 name + returning 0 to all messages is more correct. 2017-10-23 09:57:59 +02:00
omar
a96f095deb Examples: DirectX10, DirectX11: Using SetCapture/ReleaseCapture to get correct behavior (#1375)
ps: DirectX 12 example (#302) may want to adopt that as well.
2017-10-23 09:46:49 +02:00
omar
3e0765ee22 Examples: DirectX9: Using SetCapture/ReleaseCapture to get correct behavior (#1375) 2017-10-23 09:43:30 +02:00
omar
e03198bb0f Fixed compilation for #1375 + coding style fixes. 2017-10-23 09:43:30 +02:00
Gargaj
839067fda9 Capture/release window in DX9 implementation
This helps a lot when the user drags a slider but carries the cursor offscreen before releasing the button - without the capturing, the slider will "stick" to the mouse cursor even after the button has been released. (This should generally be added to all Windows implementations - I won't mind doing it if you think it's a good idea.)
2017-10-17 12:37:21 +02:00
omar
b3099d650c Examples: Adding Roboto to the commented-out font list, and removing the unnecessary ProggyClean from there. 2017-10-04 19:28:04 -07:00
omar
842e88a8e3 Examples: Avoid using ImColor() to not tempt newcomers into looking at it 2017-09-27 15:47:08 +02:00
omar
3dd3d0b248 Examples: DirectX11: allow creating device with feature level 10 sinec we don't really need much for that example. (#1333) 2017-09-24 12:54:49 +02:00
ocornut
d5d825debb Nav/Examples: honoring the io.WantMoveMouse flag in most common examples (#323)
Missing support Vulkan (#549), Apple (#575, #247), SDL (#58, #356),
Allegro, Marmalade (#368, #375)
2017-09-18 16:04:44 +02:00
omar
b8ade0b94f Examples: Main: Removed call to SetNextWindowSize() 2017-09-01 17:07:19 +02:00
omar
4abce8af58 Examples: GL2: Renaming, comments. 2017-09-01 17:07:19 +02:00
omar
d9016964ad Examples: GL3: Comments, tweaks (#1145) 2017-09-01 16:55:04 +02:00
omar
c47e5fc76a Merge branch 'master' of https://github.com/nlguillemot/imgui into nlguillemot-master 2017-09-01 16:49:36 +02:00
omar
7d1f2c0dc5 Examples: GL2: rename functions to include GL2 in name 2017-09-01 16:45:31 +02:00
unknown
cf48e28932 Backup polygon mode, draw with filled polygons, restore state, for clients running opengl with glPolygonMode. closes #798 2017-09-01 20:39:12 +12:00
omar
92a6faca6f IO: io.MousePos needs to be set to ImVec2(-FLT_MAX,-FLT_MAX) when mouse is unavailable/missing. Previously ImVec2(-1,-1) was enough but we'll now accept negative mouse coordinates. 2017-08-25 16:43:25 +08:00
omar
3b11e73333 Examples: gitignore added patterns for modern MSVC versions 2017-08-20 15:17:37 +08:00
omar
b4fe5d36a4 Examples: OpenGL3+SDL: Fix types to uses GlEnum (#1147) 2017-08-12 00:46:58 +08:00
omar
048322f3fd Merge pull request #1147 from TinyTinni/master
Examples: OpenGL3+GLFW3: Fix types to uses GlEnum (#1147)
2017-08-12 00:43:34 +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
645875a240 Examples: Enable vsync by default in example applications (#1213, #1151) 2017-07-23 16:13:17 +08:00
omar
166e8f6261 Examples: OpenGL2+GLFW/SDL: Added commented out glUseProgram(0) in main.cpp for visibility (#1116) 2017-07-23 15:57:39 +08:00
omar
c8794c246e Examples: Vulkan: Batch file builds both debug and release 2017-07-23 15:22:21 +08:00
omar
f3cf5e0322 Examples: SDL+GL3: Fixed old comments (#1229) 2017-07-15 17:50:01 +08:00
omar
52df0032a5 Travis: Blind fix for SDL+GL3 project on the Travis build setup.
Examples: SDL+GL3: Makefile blind fix for OSX (untested) (#1229, #1209)
2017-07-15 13:19:13 +08:00
omar
358e667b7a Travis: Adding the SDL+GL3 project on the Travis build setup (for both Linux and OSX).
Examples: SDL+GL3: Makefile blind fix for OSX (untested) (#1229, #1209)
2017-07-15 13:13:09 +08:00
omar
0fe5728971 Examples: SDL+GL3: Makefile fix for Linux (#1229, #1209) 2017-07-15 13:07:43 +08:00
radius
8b6896faf9 add SDL GL3 makefile 2017-07-02 21:38:27 -05:00
radius
d43695b748 fix gl2 sample too 2017-07-02 21:28:56 -05:00
radius
e0aac34672 fix compilation on MINGW 2017-07-02 11:21:24 -05:00
omar
99ff2ec6fb Examples: DirectX9/10/11: Comments 2017-06-02 11:28:48 +02:00
omar
51c200ac0d Examples: DirectX9: Clarified texture release code (#1163) 2017-06-02 11:25:45 +02:00
TinyTinni
3a7111cfcd casting to GLint on init 2017-05-17 21:42:34 +02:00
Nicolas Guillemot
ad3c1e68ab save and restore sampler in GL 3 examples 2017-05-16 16:43:59 -07:00
TinyTinni
0981d8e381 fixes types 2017-05-16 12:49:47 +02:00
omar
b0db625cab Examples: Vulkan: Fixed an extra validation (tested on Windows with VulkanSDK 1.0.46.0) (#1042) 2017-05-01 17:07:53 +02:00
omar
f87b152522 Examples: Vulkan: Various very minor stylistic fixes, fixing typos in comments, etc. (#1042 #1043) 2017-05-01 17:07:05 +02:00
Peter Particle
201d589714 Image presentation now depends on the completeness of command buffer submission through semaphores.
To maintain maximum frame rate we render to the last acquired swapchain image but present the last but one drawn image. This behavior is optional through conditional compilation macros.
2017-05-01 16:54:49 +02:00
Peter Particle
a9add1ce63 Removed redundant VkResult plugged into VkPresentInfoKHR pResults attribute. This is only meaningful when we present directly to multiple swapchains. In that case we can an VkResult per swapchain. 2017-05-01 16:53:54 +02:00
Peter Particle
eaae754211 Removed redundant barrier.
The transition of the swapchain image(s) can happen implicitly in the renderpass. This approach has been stated to be more efficient than using an explicit barrier.
See "Vulkan Programming Guide", Chapter 7: "Graphics Pipelines", section "Renderpasses".
2017-05-01 16:52:52 +02:00
Peter Particle
33874073dc Fixed all issues found by vulkan debug report. Reasons for the major design changes are commented. 2017-05-01 16:48:16 +02:00
omar
89d03d5cca Examples: Vulkan: Disable IMGUI_VULKAN_DEBUG_REPORT by default. Update .bat files for newer VulkanSDK. 2017-05-01 16:46:57 +02:00
Peter Particle
56dff3a080 Vulkan backend: optionally enabling vulkan validation layers and debug report callback
Additional layer, extension and the callback itself are used/created when IMGUI_VULKAN_DEBUG_REPORT is defined. The callback reports seven (potential!) errors which will be fixed with another pull request.
2017-05-01 16:32:45 +02:00
omar
9fd3ba871b Merge branch 'g_FrameIndex_not_used_fix' of https://github.com/ParticlePeter/imgui into ParticlePeter-g_FrameIndex_not_used_fix 2017-05-01 16:21:43 +02:00
omar
5418bb19ff Examples: Vulkan: windows batch file for 64-bits. 2017-05-01 16:14:13 +02:00
omar
ac2eb4b960 Merge branch 'vk_small_fix' of https://github.com/martty/imgui into martty-vk_small_fix 2017-05-01 15:26:29 +02:00
omar
c3d9e0a6eb Examples: SDL2: Tweaked batch files for Win32. 2017-05-01 15:00:42 +02:00
omar
475446b8b9 Merge pull request #1080 from SaschaWillems/master
Examples: Vulkan: Small changes to be in line with specs and fix validation layer errors/warnings
2017-05-01 14:50:34 +02:00
omar
b3d237a5ce Examples: SDL2: Added build .bat files for win32. 2017-05-01 13:47:59 +02:00
omar
9fdd66330f Examples: SDL2+GL3: Fix blend func state save/restore (#1120) 2017-05-01 12:20:51 +02:00
Gregg Tavares
01286f6636 Fix blend func state save/restore
AFAIK there's no such enum as `GL_BLEND_SRC` or `GL_BLEND_DST` in OpenGL3 and OpenGL4.

Maybe they're left over from previous versions? They don't even seem to exist in OpenGL 2.1. In fact checking they were deprecated in OpenGL 1.5 (they exist in 1.3)
2017-05-01 16:05:45 +09:00
omar
f030087f8e Comments to redirect people to OpenGL3 examples (#1116) 2017-04-26 18:27:10 +02:00
omar
50b4b29beb Examples: GLFW+GL3, SDL+GL3: Fixed modifying bound Texture0 (#1087, #1088, #1116) 2017-04-26 18:16:59 +02:00
saschawillems
4da26d85cd Clip negative scissor offsets to zero 2017-03-26 19:54:59 +02:00
saschawillems
12deb53b11 Set required depth member for buffer image copy 2017-03-26 19:38:05 +02:00
Peter Particle
337019a68f typo, #elif instead of #else, fixed 2017-02-26 17:16:37 +01:00
Peter Particle
fd90da38e1 Vulkan backend: g_FrameIndex not used fix -> huge perf gain
Added a macro to switch between unlimited frame rate (VK_PRESENT_MODE_IMMEDIATE_KHR) and limited to 60 fps (VK_PRESENT_MODE_FIFO_KHR). Only the latter mode is guaranteed to be available, but the former one most likely is.
2017-02-26 13:25:54 +01:00
Marcell Kiss
e0244c8f62 Fix scissor offset being negative 2017-02-11 12:20:12 +01:00
Marcell Kiss
509df3e279 Fix new Vulkan validation warnings 2017-02-11 12:19:44 +01:00
ocornut
1396659b72 Examples: Speculative fix for OSX Makefile to make Travis happy (re #812) 2016-12-21 20:12:43 +01:00
ocornut
d74a3349e9 Examples: DirectX9: Explicitely setting viewport to match that other examples are doing (#937) 2016-12-19 23:15:38 +01:00
ocornut
127dd7c88c Examples: Vulkan: Coding style fixes (#910) 2016-11-13 17:57:43 +01:00
Håvard Mathisen
a5600b6e59 Vulkan example: Proper surface format search. 2016-11-13 05:23:33 +01:00
Håvard Mathisen
b447a71cf6 Vulkan example: Fix gamma for some implementations. 2016-11-13 04:28:26 +01:00
Håvard Mathisen
08ef9819c8 Vulkan example: Fix validation layer warnings and errors and redeclare gl_PerVertex. 2016-11-13 03:00:36 +01:00
ocornut
7c2b35704d Examples: DirectX9-10-11: Only call Windows' SetCursor(NULL) when io.MouseDrawCursor is set (#585, #909) 2016-11-12 19:46:52 +01:00
ocornut
55863dd274 Examples: Vulkan: Shallow stylistic changes (following #879) 2016-11-12 17:49:59 +01:00
ocornut
0449bb98e2 Merge branch 'master' of https://github.com/martty/imgui into martty-master 2016-11-12 17:36:46 +01:00
ocornut
a68ac96bc4 Examples: GL3: Comments about gl3w (#880) 2016-11-12 12:48:33 +01:00
ocornut
775ac24d45 Fixed overzealous GCC warnings (#883) + partly undo 8553bab241 2016-11-12 11:14:37 +01:00
omar
89d033aba3 Merge pull request #898 from tinnnysu/master
Examples: SDL+OpenGL2: Update cmdline syntax in Windows compilation.
2016-11-12 11:08:51 +01:00
ocornut
81eefb704b Minor const fixes for overzealous warnings (#883) 2016-11-11 18:40:13 +01:00
sushitao
833ed760ae update cmdline syntax in windows compilation 2016-11-09 14:53:23 +08:00
Marcell Kiss
53126cd713 Add location decorators & change to use structs as in/out in glsl, update embedded spv (produced with glslangValidator -x) 2016-10-18 22:43:20 +02:00
Marcell Kiss
44250caf50 Null the released resources 2016-10-18 22:07:51 +02:00
ocornut
0d3f8807c7 Added a void* user_data parameter to Clipboard function handlers. (#875) 2016-10-15 11:36:43 +02:00
ocornut
2919c77bee Examples: GLFW+OpenGL3: Fixed Shutdown() calling GL functions with NULL parameters if NewFrame was never called (#800) 2016-10-01 14:59:28 +02:00
ocornut
b96471143f Merge branch 'master' of https://github.com/madeso/imgui into madeso-master 2016-10-01 14:56:24 +02:00
ocornut
612b17ef57 Fixing minor english typos (#827) 2016-09-11 22:02:35 +02:00
ocornut
02399852fe Examples: OpenGL2: Uploading font texture as RGBA32 to increase compatibility with users shaders for beginners (#824) 2016-09-10 17:43:17 +02:00
Felipe Oliveira Carvalho
6e6f04f513 Fix Mac OS X build and remove cruft from Makefile 2016-09-10 11:22:40 +02:00
ocornut
bc57fd5d1d Examples: OpenGL*: Savnig/restoring existing scissor rectangle for completeness (#807) 2016-09-05 23:39:52 +02:00
ocornut
031d4e689d Examples: OpenGL3: Revert Makefile change for OSX for now (#812) 2016-09-05 22:52:45 +02:00
ocornut
2825eaa0be Examples: Accessing ImVector fields directly, feel less stl-ey and fix renderer side assert when render list only contains a callback (#810) 2016-09-03 19:24:57 +02:00
Kun Lin
aa0cb13aa4 Correct name for linking opengl3_example
According to glfw offcial site, linking `libglfw.3.dylib` etc should
use `-lglfw`.

Changed this made the compilation on my Mac successfully.
2016-09-02 21:57:31 +09:00
Gustav
08a9e78da5 fixed space issues 2016-08-29 23:35:56 +02:00
Håvard Mathisen
99b4f951b9 Fix Vulkan example for use when a depth buffer is active. 2016-08-27 19:08:24 +02:00
Gustav
5def10c3a0 Fixed OpenGL error when calling Shutdown without calling NewFrame 2016-08-27 00:32:20 +02:00
ocornut
5ae71aa04a Examples: Renaming opengl_example/ to opengl2_example/ for clarity (1/2 because git) 2016-08-25 10:25:51 +02:00