Added View::removeEventHandler(..) method and added check into addEventHandler() to prevent handlers being added twice.
This commit is contained in:
@@ -357,7 +357,20 @@ void View::home()
|
||||
|
||||
void View::addEventHandler(osgGA::GUIEventHandler* eventHandler)
|
||||
{
|
||||
_eventHandlers.push_back(eventHandler);
|
||||
EventHandlers::iterator itr = std::find(_eventHandlers.begin(), _eventHandlers.end(), eventHandler);
|
||||
if (itr == _eventHandlers.end())
|
||||
{
|
||||
_eventHandlers.push_back(eventHandler);
|
||||
}
|
||||
}
|
||||
|
||||
void View::removeEventHandler(osgGA::GUIEventHandler* eventHandler)
|
||||
{
|
||||
EventHandlers::iterator itr = std::find(_eventHandlers.begin(), _eventHandlers.end(), eventHandler);
|
||||
if (itr != _eventHandlers.end())
|
||||
{
|
||||
_eventHandlers.erase(itr);
|
||||
}
|
||||
}
|
||||
|
||||
void View::setCoordinateSystemNodePath(const osg::NodePath& nodePath)
|
||||
|
||||
Reference in New Issue
Block a user