package bluej.pkgmgr.target.role;
import bluej.pkgmgr.target.ClassTarget;
import javafx.collections.ObservableList;
import threadchecker.OnThread;
import threadchecker.Tag;
| A role object to represent the behaviour of abstract classes.
|
| @author Andrew Patterson
|
public class AbstractClassRole
extends ClassRole{
public final static String ABSTRACT_ROLE_NAME = "AbstractTarget";
| Create the abstract class role.
|
public AbstractClassRole()
{
}
@OnThread(Tag.Any)
public String getRoleName()
{
return ABSTRACT_ROLE_NAME;
}
@OnThread(Tag.Any)
public String getStereotypeLabel()
{
return "abstract";
}
| Creates a class menu containing any constructors.
|
| <p>Because we are an abstract class we cannot have any constructors
| so we override this method to do nothing.
|
| @param menu the popup menu to add the class menu items to
| @param cl Class object associated with this class target
|
@Override
@OnThread(Tag.FXPlatform)
public boolean createClassConstructorMenu(ObservableList<javafx.scene.control.MenuItem> menu, ClassTarget ct, Class<?> cl)
{
return false;
}
@Override
@OnThread(Tag.Any)
public boolean canConvertToStride()
{
return true;
}
}
top,
use,
map,
class AbstractClassRole
. AbstractClassRole
. getRoleName
. getStereotypeLabel
. createClassConstructorMenu
. canConvertToStride
50 neLoCode
+ 8 LoComm