private boolean check() {
   myError =
       NewModuleUtil.check(
           MPSExtentions.DOT_SOLUTION,
           mySolutionSettings.getSolutionName(),
           mySolutionSettings.getSolutionLocation());
   setErrorText(myError);
   return myError == null;
 }
  @Override
  protected void doOKAction() {
    if (!(check())) {
      return;
    }

    super.doOKAction();

    NewModuleUtil.runModuleCreation(
        myProject,
        new _FunctionTypes._void_P0_E0() {
          public void invoke() {
            myResult =
                NewModuleUtil.createSolution(
                    mySolutionSettings.getSolutionName(),
                    mySolutionSettings.getSolutionLocation(),
                    (MPSProject) myProject);
            ((StandaloneMPSProject) myProject).setFolderFor(myResult, myVirtualFolder);
          }
        });
  }