Added setHandled/getHandled to osgGA::GUIEventAdapter

This commit is contained in:
Robert Osfield 2007-01-24 12:21:29 +00:00
parent 3c96113970
commit a01cade782
3 changed files with 12 additions and 3 deletions

View File

@ -257,6 +257,12 @@ public:
GUIEventAdapter();
GUIEventAdapter(const GUIEventAdapter& rhs);
/** Set whether this event has been handled by an event handler or not.*/
void setHandled(bool handled) { _handled = handled; }
/** Get whether this event has been handled by an event handler or not.*/
bool getHandled() const { return _handled; }
/** Get the Type of the GUI GUIEventAdapter.*/
void setEventType(EventType Type) { _eventType = Type; }
@ -393,7 +399,8 @@ public:
/** Force users to create on heap, so that multiple referencing is safe.*/
virtual ~GUIEventAdapter();
bool _handled;
EventType _eventType;
double _time;

View File

@ -16,6 +16,7 @@
using namespace osgGA;
GUIEventAdapter::GUIEventAdapter():
_handled(false),
_eventType(NONE),
_time(0.0),
_windowX(0),
@ -42,6 +43,7 @@ GUIEventAdapter::GUIEventAdapter():
GUIEventAdapter::GUIEventAdapter(const GUIEventAdapter& rhs):
osg::Referenced(),
_handled(rhs._handled),
_eventType(rhs._eventType),
_time(rhs._time),
_windowX(rhs._windowX),

View File

@ -28,11 +28,11 @@ void GUIEventHandler::operator()(osg::Node* node, osg::NodeVisitor* nv)
{
if (handle(*(*itr), *(ev->getActionAdapter()), node, nv))
{
return;
(*itr)->setHandled(true);
}
}
}
traverse(node,nv);
if (node->getNumChildrenRequiringEventTraversal()>0) traverse(node,nv);
}
void GUIEventHandler::event(osg::NodeVisitor* nv, osg::Drawable* drawable)