public abstract class AbstractFeatureProvider extends java.lang.Object implements IFeatureProvider
Constructor and Description |
---|
AbstractFeatureProvider(IDiagramTypeProvider diagramTypeProvider)
Creates a new
AbstractFeatureProvider . |
Modifier and Type | Method and Description |
---|---|
PictogramElement |
addIfPossible(IAddContext context)
Adds the if possible.
|
IReason |
canAdd(IAddContext context)
Can add.
|
IReason |
canLayout(ILayoutContext context)
Checks if an layout process can be processed.
|
IReason |
canUpdate(IUpdateContext context)
Checks if an update process can be processed.
|
void |
dispose()
This is called to dispose the object.
|
IAddBendpointFeature |
getAddBendpointFeature(IAddBendpointContext context)
Add bendpoint features handle the user's requst to have more connection
bendpoints.
|
IAddFeature |
getAddFeature(IAddContext context)
Add features create graphical representations of domain model objects.
|
java.lang.Object[] |
getAllBusinessObjectsForPictogramElement(PictogramElement pictogramElement)
Returns all business objects which are linked to the given pictogram
element.
|
PictogramElement[] |
getAllPictogramElementsForBusinessObject(java.lang.Object businessObject)
Provides the pictogram elements which represents the given business
object.
|
java.lang.Object |
getBusinessObjectForPictogramElement(PictogramElement pictogramElement)
Returns the first of possibly several business objects which are linked
to the given pictogram element.
|
ICreateConnectionFeature[] |
getCreateConnectionFeatures()
Gets the create connection features.
|
ICreateFeature[] |
getCreateFeatures()
Provides all create features.
|
ICustomFeature[] |
getCustomFeatures(ICustomContext context)
Custom features can do anything.
|
IDeleteFeature |
getDeleteFeature(IDeleteContext context)
Delete features remove the grapical representations of domain model
objects as well as the domain model objects itself.
|
IDiagramTypeProvider |
getDiagramTypeProvider()
Returns the diagram type provider.
|
IDirectEditingFeature |
getDirectEditingFeature(IDirectEditingContext context)
Direct editing features handle direct editing functionality (including
drop down lists and text completion).
|
IDirectEditingInfo |
getDirectEditingInfo()
If a creation feature wants to switch directly into the direct editing
mode (after the object creation),
it must provide the necessary information via this object. |
IFeature[] |
getDragAndDropFeatures(IPictogramElementContext context)
if the user should be able to create connections directly from a
pictogram element without using the connection tool you can provide an
array of features.
|
ILayoutFeature |
getLayoutFeature(ILayoutContext context)
Layout features do the layouting work (sizes and dimensions) inside
(and/or) outside a pictogram element.
|
IMoveAnchorFeature |
getMoveAnchorFeature(IMoveAnchorContext context)
Move features respond to user's move requests.
|
IMoveBendpointFeature |
getMoveBendpointFeature(IMoveBendpointContext context)
Move features respond to user's move requests.
|
IMoveConnectionDecoratorFeature |
getMoveConnectionDecoratorFeature(IMoveConnectionDecoratorContext context)
Move features respond to user's move requests.
|
IMoveShapeFeature |
getMoveShapeFeature(IMoveShapeContext context)
Move shape features respond to user's move requests.
|
PictogramElement |
getPictogramElementForBusinessObject(java.lang.Object businessObject)
Provides the first pictogram element which represents the given business
object.
|
abstract IPrintFeature |
getPrintFeature()
It is planned to use this for printing support.
|
IReconnectionFeature |
getReconnectionFeature(IReconnectionContext context)
Reconnection features handle the change of a connection's start or end
anchor.
|
IRemoveBendpointFeature |
getRemoveBendpointFeature(IRemoveBendpointContext context)
Add bendpoint features handle the user's requst to remove connection
bendpoints.
|
IRemoveFeature |
getRemoveFeature(IRemoveContext context)
Remove features remove the grapical representations of domain model
objects.
|
IResizeShapeFeature |
getResizeShapeFeature(IResizeShapeContext context)
Resize shape features respond to user's resize requests.
|
abstract ISaveImageFeature |
getSaveImageFeature()
It is planned to use this for save as image support.
|
IUpdateFeature |
getUpdateFeature(IUpdateContext context)
Update features do the synchronization work and transport data from
domain model to pictograms model elements.
|
boolean |
hasPictogramElementForBusinessObject(java.lang.Object businessObject)
Check does there have pictogram element linked to this business object.
|
IReason |
layoutIfPossible(ILayoutContext context)
Process the layout process.
|
void |
link(PictogramElement pictogramElement,
java.lang.Object businessObject)
Links the pictogram element with a business object.
|
void |
link(PictogramElement pictogramElement,
java.lang.Object[] businessObjects)
Links the pictogram element with several business objects.
|
IReason |
updateIfPossible(IUpdateContext context)
Process the update process.
|
IReason |
updateIfPossibleAndNeeded(IUpdateContext context)
Update if possible and needed.
|
IReason |
updateNeeded(IUpdateContext context)
Checks if an update process is needed and has be processed.
|
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
getCopyFeature, getPasteFeature
public AbstractFeatureProvider(IDiagramTypeProvider diagramTypeProvider)
AbstractFeatureProvider
.diagramTypeProvider
- the diagram type providerpublic IAddFeature getAddFeature(IAddContext context)
IFeatureProvider
getAddFeature
in interface IFeatureProvider
context
- the contextIAddFeature
public ICreateConnectionFeature[] getCreateConnectionFeatures()
IFeatureProvider
getCreateConnectionFeatures
in interface IFeatureProvider
ICreateConnectionFeature
public ICreateFeature[] getCreateFeatures()
IFeatureProvider
getCreateFeatures
in interface IFeatureProvider
ICreateFeature
public ICustomFeature[] getCustomFeatures(ICustomContext context)
IFeatureProvider
getCustomFeatures
in interface IFeatureProvider
context
- the contextICustomFeature
public IDeleteFeature getDeleteFeature(IDeleteContext context)
IFeatureProvider
getDeleteFeature
in interface IFeatureProvider
context
- the contextIDeleteFeature
public IDiagramTypeProvider getDiagramTypeProvider()
IFeatureProvider
getDiagramTypeProvider
in interface IFeatureProvider
IDiagramTypeProvider
public IMoveAnchorFeature getMoveAnchorFeature(IMoveAnchorContext context)
IFeatureProvider
FixPointAnchor
).getMoveAnchorFeature
in interface IFeatureProvider
context
- the contextIMoveAnchorFeature
public IRemoveFeature getRemoveFeature(IRemoveContext context)
IFeatureProvider
getRemoveFeature
in interface IFeatureProvider
context
- the contextIRemoveFeature
public IUpdateFeature getUpdateFeature(IUpdateContext context)
IFeatureProvider
getUpdateFeature
in interface IFeatureProvider
context
- the contextIUpdateFeature
public ILayoutFeature getLayoutFeature(ILayoutContext context)
IFeatureProvider
getLayoutFeature
in interface IFeatureProvider
context
- the contextILayoutFeature
public IMoveShapeFeature getMoveShapeFeature(IMoveShapeContext context)
IFeatureProvider
getMoveShapeFeature
in interface IFeatureProvider
context
- the contextIMoveShapeFeature
public IMoveConnectionDecoratorFeature getMoveConnectionDecoratorFeature(IMoveConnectionDecoratorContext context)
IFeatureProvider
getMoveConnectionDecoratorFeature
in interface IFeatureProvider
context
- the contextIMoveConnectionDecoratorFeature
public IMoveBendpointFeature getMoveBendpointFeature(IMoveBendpointContext context)
IFeatureProvider
FixPointAnchor
).getMoveBendpointFeature
in interface IFeatureProvider
context
- the contextIMoveBendpointFeature
public IResizeShapeFeature getResizeShapeFeature(IResizeShapeContext context)
IFeatureProvider
getResizeShapeFeature
in interface IFeatureProvider
context
- the contextIResizeShapeFeature
public IAddBendpointFeature getAddBendpointFeature(IAddBendpointContext context)
IFeatureProvider
getAddBendpointFeature
in interface IFeatureProvider
context
- the contextIAddBendpointFeature
,
IAddBendpointContext
public IRemoveBendpointFeature getRemoveBendpointFeature(IRemoveBendpointContext context)
IFeatureProvider
getRemoveBendpointFeature
in interface IFeatureProvider
context
- the contextIRemoveBendpointFeature
public IDirectEditingFeature getDirectEditingFeature(IDirectEditingContext context)
IFeatureProvider
getDirectEditingFeature
in interface IFeatureProvider
context
- the contextIDirectEditingFeature
public IReason canUpdate(IUpdateContext context)
IFeatureProvider
canUpdate
in interface IFeatureProvider
context
- the contextpublic IReason canLayout(ILayoutContext context)
IFeatureProvider
canLayout
in interface IFeatureProvider
context
- the contextpublic IReason updateIfPossible(IUpdateContext context)
IFeatureProvider
updateIfPossible
in interface IFeatureProvider
context
- the contextpublic IReason layoutIfPossible(ILayoutContext context)
IFeatureProvider
layoutIfPossible
in interface IFeatureProvider
context
- the contexttrue
IReason
in
case the layout operation was executed, a false
IReason
otherwise.public IReason updateNeeded(IUpdateContext context)
IFeatureProvider
updateNeeded
in interface IFeatureProvider
context
- the contextpublic IReason updateIfPossibleAndNeeded(IUpdateContext context)
IFeatureProvider
updateIfPossibleAndNeeded
in interface IFeatureProvider
context
- the contextpublic PictogramElement addIfPossible(IAddContext context)
IFeatureProvider
addIfPossible
in interface IFeatureProvider
context
- the contextpublic IReason canAdd(IAddContext context)
IFeatureProvider
canAdd
in interface IFeatureProvider
context
- the contextpublic final IDirectEditingInfo getDirectEditingInfo()
IFeatureProvider
getDirectEditingInfo
in interface IFeatureProvider
IDirectEditingInfo
public IReconnectionFeature getReconnectionFeature(IReconnectionContext context)
IFeatureProvider
getReconnectionFeature
in interface IFeatureProvider
context
- the contextIReconnectionFeature
public abstract IPrintFeature getPrintFeature()
IFeatureProvider
AbstractFeatureProvider
returns the an instance of DefaultPrintFeature
which could be
overridden to influence the standard behaviour.null
to disable printing.getPrintFeature
in interface IFeatureProvider
null
to disable
printing.IPrintFeature
public abstract ISaveImageFeature getSaveImageFeature()
IFeatureProvider
AbstractFeatureProvider
returns the an instance of DefaultSaveImageFeature
which could be
overridden to influence the standard behaviour.null
to disable save as image.getSaveImageFeature
in interface IFeatureProvider
null
to disable save as
image.public IFeature[] getDragAndDropFeatures(IPictogramElementContext context)
IFeatureProvider
getDragAndDropFeatures
in interface IFeatureProvider
context
- - the pictogram element the drag and drop should be initiated
onpublic java.lang.Object[] getAllBusinessObjectsForPictogramElement(PictogramElement pictogramElement)
IMappingProvider
EcoreUtil.equals(org.eclipse.emf.ecore.EObject, org.eclipse.emf.ecore.EObject)
method, but this might be changed by clients by overriding
IToolBehaviorProvider.equalsBusinessObjects(Object, Object)
.getAllBusinessObjectsForPictogramElement
in interface IMappingProvider
pictogramElement
- The pictogram element for which to return the business
objects.IMappingProvider.link(PictogramElement, Object[])
public java.lang.Object getBusinessObjectForPictogramElement(PictogramElement pictogramElement)
IMappingProvider
EcoreUtil.equals(org.eclipse.emf.ecore.EObject, org.eclipse.emf.ecore.EObject)
method, but this might be changed by clients by overriding
IToolBehaviorProvider.equalsBusinessObjects(Object, Object)
. This
is a convenience method for
IMappingProvider.getAllBusinessObjectsForPictogramElement(PictogramElement)
,
because in many usecases only a single business object is linked.getBusinessObjectForPictogramElement
in interface IMappingProvider
pictogramElement
- The pictogram element for which to return the business object.IMappingProvider.link(PictogramElement, Object)
public PictogramElement[] getAllPictogramElementsForBusinessObject(java.lang.Object businessObject)
IMappingProvider
getAllPictogramElementsForBusinessObject
in interface IMappingProvider
businessObject
- the given business objectpublic PictogramElement getPictogramElementForBusinessObject(java.lang.Object businessObject)
getPictogramElementForBusinessObject
in interface IMappingProvider
businessObject
- the business objectIMappingProvider.getAllPictogramElementsForBusinessObject(Object)
public boolean hasPictogramElementForBusinessObject(java.lang.Object businessObject)
hasPictogramElementForBusinessObject
in interface IMappingProvider
businessObject
- the business objectpublic void link(PictogramElement pictogramElement, java.lang.Object businessObject)
IMappingProvider
link
in interface IMappingProvider
pictogramElement
- The pictogram element which to link to a new business object.businessObject
- The business object to link. Can be null to just delete
previous links.public void link(PictogramElement pictogramElement, java.lang.Object[] businessObjects)
IMappingProvider
link
in interface IMappingProvider
pictogramElement
- The pictogram element which to link to new business objects.businessObjects
- The business objects to link. Can be null or empty to just
delete previous links.public void dispose()
IFeatureProvider
dispose
in interface IFeatureProvider