+
+//=======================================================================
+//function : onActionClicked
+//purpose : slot called when an action type changed
+//=======================================================================
+
+void SMESHGUI_RotationDlg::onActionClicked(int button)
+{
+ switch ( button ) {
+ case MOVE_ELEMS_BUTTON:
+ MakeGroupsCheck->setEnabled(false);
+ LineEditNewMesh->setEnabled(false);
+ break;
+ case COPY_ELEMS_BUTTON:
+ LineEditNewMesh->setEnabled(false);
+ MakeGroupsCheck->setText( tr("SMESH_MAKE_GROUPS"));
+ if ( myMesh->_is_nil() || myMesh->NbGroups() > 0)
+ MakeGroupsCheck->setEnabled(true);
+ else
+ MakeGroupsCheck->setEnabled(false);
+ break;
+ case MAKE_MESH_BUTTON:
+ LineEditNewMesh->setEnabled(true);
+ MakeGroupsCheck->setText( tr("SMESH_COPY_GROUPS"));
+ if ( myMesh->_is_nil() || myMesh->NbGroups() > 0)
+ MakeGroupsCheck->setEnabled(true);
+ else
+ MakeGroupsCheck->setEnabled(false);
+ break;
+ }
+ setNewMeshName();
+}
+
+//=======================================================================
+//function : setNewMeshName
+//purpose : update contents of LineEditNewMesh
+//=======================================================================
+
+void SMESHGUI_RotationDlg::setNewMeshName()
+{
+ LineEditNewMesh->setText("");
+ if ( LineEditNewMesh->isEnabled() && !myMesh->_is_nil() ) {
+ QString name;
+ if ( CheckBoxMesh->isChecked() ) {
+ name = LineEditElements->text();
+ }
+ else {
+ _PTR(SObject) meshSO = SMESH::FindSObject( myMesh );
+ name = meshSO->GetName();
+ }
+ if ( !name.isEmpty() )
+ LineEditNewMesh->setText( SMESH::UniqueMeshName( name.latin1(), "rotated"));
+ }
+}
+