#include <GLViewer_Context.h>
+/*!Constructor. Initialize by GLViewer_Viewer2d and SUIT_SelectionMgr.*/
SalomeApp_GLSelector::SalomeApp_GLSelector( GLViewer_Viewer2d* viewer, SUIT_SelectionMgr* mgr )
: SUIT_Selector( mgr, viewer ),
myViewer( viewer )
connect( myViewer, SIGNAL( selectionChanged() ), this, SLOT( onSelectionChanged() ) );
}
+/*!Destructor. Do nothing.*/
SalomeApp_GLSelector::~SalomeApp_GLSelector()
{
}
+/*!Gets viewer*/
GLViewer_Viewer2d* SalomeApp_GLSelector::viewer() const
{
return myViewer;
}
+/*!On selection changed event.*/
void SalomeApp_GLSelector::onSelectionChanged()
{
selectionChanged();
}
+/*!Gets list of selected Data Owner objects.*/
void SalomeApp_GLSelector::getSelection( SUIT_DataOwnerPtrList& aList ) const
{
if ( !myViewer )
}
}
+/*!Sets to selected list of Data Owner objects.*/
void SalomeApp_GLSelector::setSelection( const SUIT_DataOwnerPtrList& aList )
{
if ( !myViewer )
return;
QMap<QString, GLViewer_Object*> aDisplayed;
- const ObjectMap& displayed = cont->getObjects();
- for ( ObjectMap::const_iterator it = displayed.begin(); it != displayed.end(); ++it )
+ const ObjList& displayed = cont->getObjects();
+ for ( ObjList::const_iterator it = displayed.begin(); it != displayed.end(); ++it )
{
- if ( it.key()->getVisible() )
+ GLViewer_Object* obj = *it;
+ if ( obj && obj->getVisible() )
{
- GLViewer_Object* obj = it.key();
- if ( obj )
- {
- SALOME_GLOwner* owner = dynamic_cast< SALOME_GLOwner* >( obj->owner() );
- if ( owner )
- aDisplayed.insert( owner->entry(), obj );
- }
+ SALOME_GLOwner* owner = dynamic_cast< SALOME_GLOwner* >( obj->owner() );
+ if ( owner )
+ aDisplayed.insert( owner->entry(), obj );
}
}