Class TemplateCreateNewModelElementStrategyProvider
- java.lang.Object
-
- org.eclipse.emf.ecp.ui.view.swt.reference.ReferenceServiceCustomizationVendor<CreateNewModelElementStrategy>
-
- org.eclipse.emfforms.internal.core.services.datatemplate.TemplateCreateNewModelElementStrategyProvider
-
- All Implemented Interfaces:
CreateNewModelElementStrategy.Provider
,Vendor<CreateNewModelElementStrategy>
public class TemplateCreateNewModelElementStrategyProvider extends ReferenceServiceCustomizationVendor<CreateNewModelElementStrategy> implements CreateNewModelElementStrategy.Provider
Provides a strategy to theDefaultReferenceService
that allows creating new model elements based on a template with pre-defined values.- Author:
- Lucas Koehler
-
-
Constructor Summary
Constructors Constructor Description TemplateCreateNewModelElementStrategyProvider()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
addEClassSelectionStrategyProvider(EClassSelectionStrategy.Provider provider)
Add anEClass
selection strategy provider.void
addFilterServiceProvider(TemplateFilterService.Provider provider)
Add a template filter service provider.protected java.util.Set<Template>
collectAvailableTemplates(org.eclipse.emf.ecore.EObject eObject, org.eclipse.emf.ecore.EReference eReference)
Collect a list of available templates for the givenEReference
.CreateNewModelElementStrategy
createCreateNewModelElementStrategy()
Creates theCreateNewModelElementStrategy
.protected java.util.function.Predicate<? super Template>
getFilter(org.eclipse.emf.ecore.EObject owner, org.eclipse.emf.ecore.EReference reference)
Obtain a filter predicate for the templates provided for the givenreference
of anowner
object in the editor.protected boolean
handles(org.eclipse.emf.ecore.EObject owner, org.eclipse.emf.ecore.EReference reference)
Queries whether I should bid on the givenowner
andreference
.-
Methods inherited from class org.eclipse.emf.ecp.ui.view.swt.reference.ReferenceServiceCustomizationVendor
bid
-
-
-
-
Method Detail
-
addEClassSelectionStrategyProvider
public void addEClassSelectionStrategyProvider(EClassSelectionStrategy.Provider provider)
Add anEClass
selection strategy provider.- Parameters:
provider
- the provider to add
-
addFilterServiceProvider
public void addFilterServiceProvider(TemplateFilterService.Provider provider)
Add a template filter service provider.- Parameters:
provider
- the provider to add- Since:
- 1.21
-
handles
protected boolean handles(org.eclipse.emf.ecore.EObject owner, org.eclipse.emf.ecore.EReference reference)
Description copied from class:ReferenceServiceCustomizationVendor
Queries whether I should bid on the givenowner
andreference
. The default implementation just returnstrue
; subclasses should override.- Overrides:
handles
in classReferenceServiceCustomizationVendor<CreateNewModelElementStrategy>
- Parameters:
owner
- the owner of a reference being edited by the Reference Servicereference
- the reference being edited- Returns:
- whether I should bid
-
collectAvailableTemplates
protected java.util.Set<Template> collectAvailableTemplates(org.eclipse.emf.ecore.EObject eObject, org.eclipse.emf.ecore.EReference eReference)
Collect a list of available templates for the givenEReference
.- Parameters:
eObject
- the parentEObject
eReference
- theEReference
to find templates for- Returns:
- list of available templates
-
createCreateNewModelElementStrategy
public CreateNewModelElementStrategy createCreateNewModelElementStrategy()
Creates theCreateNewModelElementStrategy
.- Returns:
- The created
CreateNewModelElementStrategy
-
getFilter
protected java.util.function.Predicate<? super Template> getFilter(org.eclipse.emf.ecore.EObject owner, org.eclipse.emf.ecore.EReference reference)
Obtain a filter predicate for the templates provided for the givenreference
of anowner
object in the editor.- Parameters:
owner
- theEObject
in the modelreference
- theEReference
in which templates are to be instantiated- Returns:
- the filter, or
null
if none - Since:
- 1.21
-
-