package jetbrains.mps.ide.refactoring; /*Generated by MPS */ import jetbrains.mps.ide.platform.refactoring.RenameDialog; import jetbrains.mps.project.MPSProject; import org.jetbrains.mps.openapi.model.EditableSModel; import java.awt.HeadlessException; import org.jetbrains.mps.openapi.model.SModelName; import javax.lang.model.SourceVersion; import jetbrains.mps.refactoring.Renamer; public class RenameModelDialog extends RenameDialog { private final MPSProject myProject; private final EditableSModel myModelDescriptor; public RenameModelDialog(MPSProject mpsProject, EditableSModel sm) throws HeadlessException { super(mpsProject.getProject(), sm.getName().getValue(), "model"); myProject = mpsProject; myModelDescriptor = sm; setTitle("Rename Model"); } @Override protected void doRefactoringAction() { final SModelName newModelName = new SModelName(getCurrentValue()); if (!((SourceVersion.isName(newModelName.getLongName())))) { setErrorText("Model name should be valid Java package"); return; } if (!((newModelName.equals(myModelDescriptor.getName())))) { myProject.getRepository().getModelAccess().executeCommand(new Runnable() { public void run() { Renamer.renameModel(myModelDescriptor, newModelName.getValue()); } }); } super.doRefactoringAction(); } }