// does nothing if previously detected object is equal to the current one
if (myMainSel->OnePicked()->Selectable() == myLastPicked)
{
- return AIS_SOD_OnlyOneDetected;
+ return myLastPicked->State() == 1
+ ? AIS_SOD_Selected
+ : AIS_SOD_OnlyOneDetected;
}
// Previously detected object is unhilighted if it is not selected or hilighted
toUpdateViewer = Standard_True;
}
- if (myLastPicked->State() == 1)
- {
- aStatus = AIS_SOD_Selected;
- }
+ aStatus = myLastPicked->State() == 1
+ ? AIS_SOD_Selected
+ : AIS_SOD_OnlyOneDetected;
}
}
else
}
myLastinMain.Nullify();
+ myLastPicked.Nullify();
}
if (toUpdateViewer)
}
}
- myLastPicked.Nullify();
mylastmoveview = theView;
return aStatus;
}