GetCurrentRenderer());
if(SALOME_Actor* aSActor = SALOME_Actor::SafeDownCast(myPicker->GetActor())){
- aSelectionEvent->myIsRectangle = false;
- aSActor->Highlight( GetSelector(), this, aSelectionEvent, true );
+ if(aSActor->hasIO()){
+ aSelectionEvent->myIsRectangle = false;
+ aSActor->Highlight( GetSelector(), this, aSelectionEvent, true );
+ }
}
else{
GetSelector()->ClearIObjects();
aListActors->InitTraversal();
while(vtkActor* aActor = aListActors->GetNextActor()){
if(SALOME_Actor* aSActor = SALOME_Actor::SafeDownCast(aActor)){
- aSActor->Highlight( GetSelector(), this, aSelectionEvent, true );
+ if(aSActor->hasIO()){
+ aSActor->Highlight( GetSelector(), this, aSelectionEvent, true );
+ }
}
}
}
SVTK_SelectorDef
::IsSelected(const Handle(SALOME_InteractiveObject)& theIO) const
{
- return myIObjects.find(theIO) != myIObjects.end();
+ return !theIO.IsNull() && (myIObjects.find(theIO) != myIObjects.end());
}
bool