org.eclipse.graphiti.ui.features
Class AbstractDrillDownFeature

java.lang.Object
  extended by org.eclipse.graphiti.features.impl.AbstractFeature
      extended by org.eclipse.graphiti.features.custom.AbstractCustomFeature
          extended by org.eclipse.graphiti.ui.features.AbstractDrillDownFeature
All Implemented Interfaces:
ICustomFeature, IFeature, IFeatureProviderHolder, IDescription, IName

public abstract class AbstractDrillDownFeature
extends AbstractCustomFeature

The Class AbstractDrillDownFeature.


Nested Class Summary
private  class AbstractDrillDownFeature.DiagramLabelProvider
          The Class DiagramLabelProvider.
 
Field Summary
private static String NAME
           
 
Constructor Summary
AbstractDrillDownFeature(IFeatureProvider fp)
          Creates a new AbstractDrillDownFeature.
 
Method Summary
 boolean canExecute(ICustomContext context)
          Can execute.
 void execute(ICustomContext context)
          Execute.
protected  String getDiagramEditorId(Diagram diagram)
          Returns the editor id of the diagram editor to open by default DiagramEditor.DIAGRAM_EDITOR_ID.
protected abstract  Collection<Diagram> getDiagrams()
          Returns all diagrams which are considered for navigation.
protected  Collection<Diagram> getLinkedDiagrams(PictogramElement pe)
          Returns a list of all diagrams, which are connected to the given pictogram element.
 String getName()
          Gets the name.
protected  TransactionalEditingDomain getTransActionalEditingDomainForNewDiagram()
           
 boolean hasDoneChanges()
          Is queried by the framework after a feature has been executed to find out if this feature should appear in the undo stack of e.g.
protected  void openDiagramEditor(Diagram diagram)
          Opens the diagram editor for the drill down.
 
Methods inherited from class org.eclipse.graphiti.features.custom.AbstractCustomFeature
canExecute, execute, getDescription, getImageId, isAvailable
 
Methods inherited from class org.eclipse.graphiti.features.impl.AbstractFeature
addGraphicalRepresentation, canUndo, getAllBusinessObjectsForPictogramElement, getBusinessObjectForPictogramElement, getDiagram, getDiagramBehavior, getFeatureProvider, getProgressCallback, getUserDecision, layoutPictogramElement, link, link, manageColor, manageColor, manageDefaultFont, manageFont, manageFont, setProgressCallback, toString, updatePictogramElement
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface org.eclipse.graphiti.features.IFeature
canUndo
 
Methods inherited from interface org.eclipse.graphiti.features.IFeatureProviderHolder
getFeatureProvider
 

Field Detail

NAME

private static final String NAME
Constructor Detail

AbstractDrillDownFeature

public AbstractDrillDownFeature(IFeatureProvider fp)
Creates a new AbstractDrillDownFeature.

Parameters:
fp - the feature provider
Method Detail

getName

public String getName()
Description copied from interface: IName
Gets the name.

Specified by:
getName in interface IName
Overrides:
getName in class AbstractFeature
Returns:
the name

execute

public void execute(ICustomContext context)
Description copied from interface: ICustomFeature
Execute.

Parameters:
context - the context

openDiagramEditor

protected void openDiagramEditor(Diagram diagram)
Opens the diagram editor for the drill down. Users can override this method in order to open different editors, open editors in different windows or do completely different stuff for the drill down.

Parameters:
diagram - the diagram for which the editor will be opened.

getDiagramEditorId

protected String getDiagramEditorId(Diagram diagram)
Returns the editor id of the diagram editor to open by default DiagramEditor.DIAGRAM_EDITOR_ID. Users can override and return a different editor id, must be the id of a subclass of DiagramEditor.

Parameters:
diagram - the diagram for which the editor will be opened
Returns:
the editor id of the diagram editor to open

canExecute

public boolean canExecute(ICustomContext context)
Description copied from interface: ICustomFeature
Can execute.

Specified by:
canExecute in interface ICustomFeature
Overrides:
canExecute in class AbstractCustomFeature
Parameters:
context - the context
Returns:
true, if successful

hasDoneChanges

public boolean hasDoneChanges()
Description copied from interface: IFeature
Is queried by the framework after a feature has been executed to find out if this feature should appear in the undo stack of e.g. an editor. By default all features should appear there (see implementation in AbstractFeature), but features may decide to override this behavior. Note that this is a dynamic attribute of the feature that is queried each time after the feature has been executed.

IMPORTANT NOTE: The implementor of the feature is responsible for correctly implementing this method! It might lead to inconsistencies in the command stack if this method returns false although the feature did changes.

Specified by:
hasDoneChanges in interface IFeature
Overrides:
hasDoneChanges in class AbstractFeature
Returns:
true if the feature should appear in the undo stack, false otherwise

getLinkedDiagrams

protected Collection<Diagram> getLinkedDiagrams(PictogramElement pe)
Returns a list of all diagrams, which are connected to the given pictogram element. This means, that the diagrams and the pictogram element have at least one linked business object in common.

Parameters:
pe - The pictogram element for which to return the connected diagrams.
Returns:
A list of all diagrams, which are connected to the given pictogram element.

getDiagrams

protected abstract Collection<Diagram> getDiagrams()
Returns all diagrams which are considered for navigation.

Returns:
the diagrams

getTransActionalEditingDomainForNewDiagram

protected TransactionalEditingDomain getTransActionalEditingDomainForNewDiagram()


Copyright (c) SAP AG 2005, 2012.