blob: 986964450ab6f641d6199424355c8895d6cb32e3 [file] [log] [blame]
package $packageName$.diagram;
import org.eclipse.graphiti.dt.IDiagramTypeProvider;
import org.eclipse.graphiti.features.IAddFeature;
import org.eclipse.graphiti.features.ICreateConnectionFeature;
import org.eclipse.graphiti.features.context.IAddConnectionContext;
import org.eclipse.graphiti.features.context.IAddContext;
import org.eclipse.graphiti.pattern.DefaultFeatureProviderWithPatterns;
import $packageName$.features.Add$connectionDomainObjectClassNameShort$ConnectionFeature;
import $packageName$.features.Create$connectionDomainObjectClassNameShort$ConnectionFeature;
import $packageName$.patterns.$shapeDomainObjectClassNameShort$Pattern;
public class $featureProviderClassName$ extends DefaultFeatureProviderWithPatterns {
public $featureProviderClassName$(IDiagramTypeProvider dtp) {
super(dtp);
addPattern(new $shapeDomainObjectClassNameShort$Pattern());
}
@Override
public ICreateConnectionFeature[] getCreateConnectionFeatures() {
return new ICreateConnectionFeature[] {new Create$connectionDomainObjectClassNameShort$ConnectionFeature(this)};
}
@Override
public IAddFeature getAddFeature(IAddContext context) {
// TODO: check for right domain object instances below
if (context instanceof IAddConnectionContext /* && context.getNewObject() instanceof $connectionDomainObjectClassNameShort$ */) {
return new Add$connectionDomainObjectClassNameShort$ConnectionFeature(this);
}
return super.getAddFeature(context);
}
}