Browse Source

Platform: provide position in GlfwApplication::MouseEvent.

Kinda useless without it, I would say.
pull/193/head
Vladimír Vondruš 9 years ago
parent
commit
11d664efef
  1. 6
      src/Magnum/Platform/GlfwApplication.cpp
  2. 6
      src/Magnum/Platform/GlfwApplication.h

6
src/Magnum/Platform/GlfwApplication.cpp

@ -189,7 +189,9 @@ void GlfwApplication::staticMouseMoveEvent(GLFWwindow* window, double x, double
}
void GlfwApplication::staticMouseEvent(GLFWwindow*, int button, int action, int mods) {
MouseEvent e(static_cast<MouseEvent::Button>(button), {static_cast<InputEvent::Modifier>(mods)});
double x, y;
glfwGetCursorPos(_instance->_window, &x, &y);
MouseEvent e(static_cast<MouseEvent::Button>(button), {Int(x), Int(y)}, {static_cast<InputEvent::Modifier>(mods)});
if(action == GLFW_PRESS) {
_instance->mousePressEvent(e);
@ -208,7 +210,7 @@ void GlfwApplication::staticMouseScrollEvent(GLFWwindow* window, double xoffset,
#pragma GCC diagnostic push
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
#endif
MouseEvent e1((yoffset > 0.0) ? MouseEvent::Button::WheelUp : MouseEvent::Button::WheelDown, KeyEvent::getCurrentGlfwModifiers(window));
MouseEvent e1((yoffset > 0.0) ? MouseEvent::Button::WheelUp : MouseEvent::Button::WheelDown, {}, KeyEvent::getCurrentGlfwModifiers(window));
#ifdef __GNUC__
#pragma GCC diagnostic pop
#endif

6
src/Magnum/Platform/GlfwApplication.h

@ -864,13 +864,17 @@ class GlfwApplication::MouseEvent: public GlfwApplication::InputEvent {
/** @brief Button */
constexpr Button button() const { return _button; }
/** @brief Position */
constexpr Vector2i position() const { return _position; }
/** @brief Modifiers */
constexpr Modifiers modifiers() const { return _modifiers; }
private:
constexpr MouseEvent(Button button, Modifiers modifiers): _button(button), _modifiers(modifiers) {}
constexpr MouseEvent(Button button, const Vector2i& position, Modifiers modifiers): _button(button), _position{position}, _modifiers(modifiers) {}
const Button _button;
const Vector2i _position;
const Modifiers _modifiers;
};

Loading…
Cancel
Save