diff --git a/openVulkanoCpp/Base/UI/IWindow.hpp b/openVulkanoCpp/Base/UI/IWindow.hpp index b9ce2bd..0eb288e 100644 --- a/openVulkanoCpp/Base/UI/IWindow.hpp +++ b/openVulkanoCpp/Base/UI/IWindow.hpp @@ -62,6 +62,8 @@ namespace openVulkanoCpp virtual void SetPosition(int posX, int posY) = 0; inline void SetPosition(Math::Vector2i pos) { SetPosition(pos.x, pos.y); }; + virtual void SetMouseVisibility(bool hideMouse) {}; + virtual void Show() = 0; virtual void Hide() = 0; virtual void Show(bool show) = 0; diff --git a/openVulkanoCpp/Host/GLFW/WindowGLFW.cpp b/openVulkanoCpp/Host/GLFW/WindowGLFW.cpp index 7129874..f542e59 100644 --- a/openVulkanoCpp/Host/GLFW/WindowGLFW.cpp +++ b/openVulkanoCpp/Host/GLFW/WindowGLFW.cpp @@ -75,8 +75,15 @@ namespace openVulkanoCpp::GLFW glfwSetCursorPosCallback(window, MouseMoveCallback); glfwSetScrollCallback(window, MouseScrollCallback); glfwSetCursorEnterCallback(window, MouseEnterExitCallback); - //glfwSetInputMode(window, GLFW_RAW_MOUSE_MOTION, GLFW_TRUE); - //glfwSetInputMode(window, GLFW_CURSOR, GLFW_CURSOR_DISABLED); + + // Set mouse visibility + } + + void WindowGLFW::SetMouseVisibility(bool hideMouse) + { + glfwSetInputMode(window, GLFW_RAW_MOUSE_MOTION, hideMouse); + glfwSetInputMode(window, GLFW_CURSOR, hideMouse ? GLFW_CURSOR_DISABLED : GLFW_CURSOR_NORMAL); + } GLFWmonitor* WindowGLFW::GetPrimaryMonitor() diff --git a/openVulkanoCpp/Host/GLFW/WindowGLFW.hpp b/openVulkanoCpp/Host/GLFW/WindowGLFW.hpp index 20f5a18..620f34d 100644 --- a/openVulkanoCpp/Host/GLFW/WindowGLFW.hpp +++ b/openVulkanoCpp/Host/GLFW/WindowGLFW.hpp @@ -53,6 +53,8 @@ namespace openVulkanoCpp::GLFW void Hide() override; + void SetMouseVisibility(bool hideMouse) override; + void SetTitle(const std::string& title) override; void SetSize(uint32_t width, uint32_t height) override;