org.eclipse.graphiti.features.impl
Class AbstractSaveImageFeature

java.lang.Object
  extended by org.eclipse.graphiti.features.impl.AbstractFeature
      extended by org.eclipse.graphiti.features.impl.AbstractSaveImageFeature
All Implemented Interfaces:
IFeature, IFeatureProviderHolder, ISaveImageFeature, IDescription, IName
Direct Known Subclasses:
DefaultSaveImageFeature

public abstract class AbstractSaveImageFeature
extends AbstractFeature
implements ISaveImageFeature

Abstract base implementation of a save as image feature.

Since:
0.10

Field Summary
private static String NAME
           
 
Constructor Summary
AbstractSaveImageFeature(IFeatureProvider fp)
          Constructor that is to be called by any subclass.
 
Method Summary
 boolean canExecute(IContext context)
          Checks if this feature can be executed by delegating to the method canSave(ISaveImageContext).
 boolean canSave(ISaveImageContext context)
          Checks if this feature can execute.
 void execute(IContext context)
          Executes this save image feature by sequentially calling preSave(ISaveImageContext), ISaveImageFeature.save(ISaveImageContext) and postSave(ISaveImageContext).
 String getName()
          Returns the name of the save as image feature, by default "Save As Image"
 boolean hasDoneChanges()
          Hook method that reports if changes have been done while executing this feature.
 void postSave(ISaveImageContext context)
          Hook method for executing stuff that needs to be done after actually saving a diagram as an image.
 void preSave(ISaveImageContext context)
          Hook method for executing stuff that needs to be done before actually saving a diagram as an image.
 
Methods inherited from class org.eclipse.graphiti.features.impl.AbstractFeature
addGraphicalRepresentation, canUndo, getAllBusinessObjectsForPictogramElement, getBusinessObjectForPictogramElement, getDescription, getDiagram, getDiagramBehavior, getFeatureProvider, getProgressCallback, getUserDecision, isAvailable, layoutPictogramElement, link, link, manageColor, manageColor, manageDefaultFont, 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.ISaveImageFeature
save
 
Methods inherited from interface org.eclipse.graphiti.features.IFeature
canUndo, isAvailable
 
Methods inherited from interface org.eclipse.graphiti.IDescription
getDescription
 
Methods inherited from interface org.eclipse.graphiti.features.IFeatureProviderHolder
getFeatureProvider
 

Field Detail

NAME

private static final String NAME
Constructor Detail

AbstractSaveImageFeature

public AbstractSaveImageFeature(IFeatureProvider fp)
Constructor that is to be called by any subclass.

Parameters:
fp - The feature provider that created the feature
Method Detail

getName

public String getName()
Returns the name of the save as image feature, by default "Save As Image"

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

canExecute

public boolean canExecute(IContext context)
Checks if this feature can be executed by delegating to the method canSave(ISaveImageContext).

Specified by:
canExecute in interface IFeature
Parameters:
context - Context information for printing.
Returns:
true in case this save image feature can be executed, false otherwise.
See Also:
IContext

canSave

public boolean canSave(ISaveImageContext context)
Checks if this feature can execute. The default implementation simply returns true.

Specified by:
canSave in interface ISaveImageFeature
Parameters:
context - Context information for saving an image.
Returns:
true in case this save image feature can be executed, false otherwise.

preSave

public void preSave(ISaveImageContext context)
Hook method for executing stuff that needs to be done before actually saving a diagram as an image. The default implementation does nothing.

Specified by:
preSave in interface ISaveImageFeature
Parameters:
context - Context information for saving.

execute

public final void execute(IContext context)
Executes this save image feature by sequentially calling preSave(ISaveImageContext), ISaveImageFeature.save(ISaveImageContext) and postSave(ISaveImageContext). This method will fail in case the passed context is no ISaveImageContext.

Specified by:
execute in interface IFeature
Parameters:
context - Context information for saving.
See Also:
IContext

postSave

public void postSave(ISaveImageContext context)
Hook method for executing stuff that needs to be done after actually saving a diagram as an image. The default implementation does nothing.

Specified by:
postSave in interface ISaveImageFeature
Parameters:
context - Context information for saving.

hasDoneChanges

public boolean hasDoneChanges()
Hook method that reports if changes have been done while executing this feature. In case false is returned the feature will not appear in the undo stack. The default implementation simply returns false.

Specified by:
hasDoneChanges in interface IFeature
Overrides:
hasDoneChanges in class AbstractFeature
Returns:
true in case changes have been made, false otherwise.


Copyright (c) SAP AG 2005, 2012.