package bluej.pkgmgr.dependency;
import bluej.extensions.BDependency.Type;
import bluej.pkgmgr.Package;
import bluej.pkgmgr.target.*;
import threadchecker.OnThread;
import threadchecker.Tag;
import java.util.Properties;
| An "extends" dependency between two (class) targets in a package
|
*
* @author Michael Kolling
*/
@OnThread(Tag.FXPlatform)
public class ExtendsDependency extends Dependency{
@OnThread(Tag.Any)
public ExtendsDependency(Package pkg, DependentTarget from, DependentTarget to)
|
|
{
|
|
super(pkg, from, to);
|
|
}
|
|
public ExtendsDependency(Package pkg)
|
|
{
|
|
this(pkg, null, null);
|
|
}
|
|
@OnThread(Tag.FXPlatform)
|
|
public void save(Properties props, String prefix)
|
|
{
|
|
super.save(props, prefix);
|
|
props.put(prefix + ".type", "ExtendsDependency");
}
public void remove()
{
pkg.removeArrow(this);
}
public boolean isResizable()
{
return false;
}
@Override
|
|
@OnThread(Tag.Any)
|
|
public Type getType()
|
|
{
|
|
return Type.EXTENDS;
|
|
}
|
|
@Override
|
|
public boolean isRemovable()
|
|
{
|
|
return true;
|
|
}
|
|
}