From Eric Sokolowsky, support for mouse scroll wheel in osgGA/osgProducer.
This commit is contained in:
@@ -68,6 +68,20 @@ void EventAdapter::adaptResize(double time, float Xmin, float Ymin, float Xmax,
|
||||
copyStaticVariables();
|
||||
}
|
||||
|
||||
void EventAdapter::adaptMouseScroll(double time, Producer::KeyboardMouseCallback::ScrollingMotion sm)
|
||||
{
|
||||
_time = time;
|
||||
|
||||
if (sm == Producer::KeyboardMouseCallback::ScrollUp)
|
||||
_eventType = SCROLLUP;
|
||||
else if (sm == Producer::KeyboardMouseCallback::ScrollDown)
|
||||
_eventType = SCROLLDOWN;
|
||||
else
|
||||
_eventType = NONE;
|
||||
|
||||
copyStaticVariables();
|
||||
}
|
||||
|
||||
void EventAdapter::adaptButtonPress(double time,float x, float y, unsigned int button)
|
||||
{
|
||||
_time = time;
|
||||
|
||||
@@ -5,6 +5,16 @@
|
||||
|
||||
using namespace osgProducer;
|
||||
|
||||
void KeyboardMouseCallback::mouseScroll( Producer::KeyboardMouseCallback::ScrollingMotion sm )
|
||||
{
|
||||
osg::ref_ptr<EventAdapter> event = createEventAdapter();
|
||||
event->adaptMouseScroll(getTime(), sm);
|
||||
|
||||
_eventQueueMutex.lock();
|
||||
_eventQueue.push_back(event);
|
||||
_eventQueueMutex.unlock();
|
||||
}
|
||||
|
||||
void KeyboardMouseCallback::buttonPress( float mx, float my, unsigned int mbutton )
|
||||
{
|
||||
_mx = mx;
|
||||
|
||||
Reference in New Issue
Block a user