package bluej.pkgmgr;

import bluej.Config;
import bluej.extensions.SourceType;
import bluej.utility.JavaNames;
import bluej.utility.javafx.dialog.InputDialog;
import javafx.stage.Window;
import threadchecker.OnThread;
import threadchecker.Tag;


| Dialog for duplicating a Java/Stride class. | | @author Amjad Altadmri | @OnThread(Tag.FXPlatform) public class DuplicateClassDialog extends InputDialog<String>{
| Creates a DuplicateClassDialog, which prompts the user to enter (or confirm a suggested) name for the new class. | | @param parent the PkgMgrFrame's window which represents the package working on. | @param name the suggested name for the duplicated class. | @param sourceType the type of the class's source; currently, Java or Stride. | public DuplicateClassDialog(Window parent, String name, SourceType sourceType) { super(Config.getString("pkgmgr.duplicate.title"), Config.getString("pkgmgr.newClass.label"), Config.getString("pkgmgr.newClass.prompt"), "new-class-dialog", "." + sourceType.name()); initOwner(parent); setOKEnabled(false); field.setText(name); } @Override public String convert(String fieldText) { return fieldText.trim(); } @Override public boolean validate(String oldInput, String newInput) { newInput = newInput.trim(); if (!newInput.isEmpty() && JavaNames.isIdentifier(newInput)) { setOKEnabled(true); setErrorText(""); return true; } else { setErrorText(Config.getString("pkgmgr.duplicate.error.notValidClassName")); setOKEnabled(false); return true; } } }

.   DuplicateClassDialog
.   convert
.   validate




57 neLoCode + 6 LoComm