| 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); |
| } |
| } |