+
+ // Display Entity
+ mi = popup->findItem( 1135 );
+ int aIsSomething=0;
+ if (aNbVolumes>0) aIsSomething++;
+ if (aNbFaces>0) aIsSomething++;
+ if (aNbEdges>0) aIsSomething++;
+ if ( mi && (aIsSomething <= 1)){
+ popup->removeItem(1135);
+ }else if ( mi && mi->popup() ) {
+ QPopupMenu* aPopup = mi->popup();
+ unsigned int aMode = anActor->GetEntityMode();
+
+ bool aIsVolumesMode = aMode & SMESH_Actor::eVolumes;
+ bool aIsFacesMode = aMode & SMESH_Actor::eFaces;
+ bool aIsEdgesMode = aMode & SMESH_Actor::eEdges;
+
+ if(aNbVolumes == 0)
+ aPopup->removeItem( 219 );
+ else
+ aPopup->setItemChecked( 219, aIsVolumesMode );
+
+ if(aNbFaces == 0)
+ aPopup->removeItem( 218 );
+ else
+ aPopup->setItemChecked( 218, aIsFacesMode );
+
+
+ if(aNbEdges == 0)
+ aPopup->removeItem( 217 );
+ else
+ aPopup->setItemChecked( 217, aIsEdgesMode );
+
+
+ bool aIsRemove = (aNbVolumes == 0 || aIsVolumesMode);
+ aIsRemove &= (aNbFaces == 0 || aIsFacesMode);
+ aIsRemove &= (aNbEdges == 0 || aIsEdgesMode);
+
+ if(aIsRemove)
+ aPopup->removeItem( 220 );
+ }
+
+ // Controls