Hi all,

Is there a convention about input events sequences in OSG? I first thought that click and drag sequence would always be: push - [drag]* - release. This should work fine for most cases.

The problems come with the double-click event. Although the name of the event refers to a "click" which usually means a push-release pair, the EventQueue::mouseDoubleButtonPress method is used to adapt the event. This method imply that the event is actually a button press. As an example, this is corroborated by Qt which documents its MouseButtonPress as "Mouse press event" and its MouseButtonDblClick as "Mouse press again event".

I have done two tests, one with the osgManipulator example and one with a viewer adapted on Qt, both on Windows Vista. All tests show that the actual double-click sequence is: push - release - doubleclick - [drag]* - release.

The problem I see is that the double-click (actually the second-push) breaks the assumption that a drag follows a push This can be seen in most OSG objects that implicitly make this assumption, as about nothing in OSG currently treat the 'doubleclick' event. From example, if you double-click+drag on a Dragger, it ignores the 'drag' events, since they were preceded by a 'release' event that sets the dragger as inactive.

I was wondering if this is an intended behaviour?

regards,

Vincent Gadoury
_______________________________________________
osg-users mailing list
osg-users@lists.openscenegraph.org
http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org

Reply via email to