9 #include "imstkDeviceControl.h" 10 #include "imstkMath.h" 11 #include "imstkMacros.h" 15 class MouseDeviceClient;
31 void setDevice(std::shared_ptr<DeviceClient> device)
override;
33 virtual void OnButtonPress(
const int imstkNotUsed(key)) { }
35 virtual void OnButtonRelease(
const int imstkNotUsed(key)) { }
37 virtual void OnScroll(
const double imstkNotUsed(dx)) { }
39 virtual void OnMouseMove(
const Vec2d& imstkNotUsed(pos)) { }
45 virtual void mouseButtonPressEvent(
MouseEvent* e);
50 virtual void mouseButtonReleaseEvent(
MouseEvent* e);
63 std::shared_ptr<MouseDeviceClient> m_mouseDevice =
nullptr;
This is the base class for mouse based controls It can be constructed and observed or subclassed and ...
While the DeviceClient provides quantities from the device, the control defines what to do with those...
Provides the information of a mouse event, this includes button presses/releases and scrolling...