Package org.eclipse.graphiti.ui.editor
Class DiagramEditorInput
java.lang.Object
org.eclipse.graphiti.ui.editor.DiagramEditorInput
- All Implemented Interfaces:
org.eclipse.core.runtime.IAdaptable,IDiagramEditorInput,org.eclipse.ui.IEditorInput,org.eclipse.ui.IPersistable,org.eclipse.ui.IPersistableElement
public class DiagramEditorInput
extends Object
implements org.eclipse.ui.IEditorInput, org.eclipse.ui.IPersistableElement, IDiagramEditorInput
The editor input object for
IDiagramContainerUIs. Wraps the URI of
a Diagram and an ID of a diagram type provider for displaying it with
a Graphiti diagram editor.-
Field Summary
Fields -
Constructor Summary
ConstructorsConstructorDescriptionDiagramEditorInput(org.eclipse.emf.common.util.URI diagramUri, String providerId) Creates a newDiagramEditorInputout of aURIstring and a Graphiti diagram type provider ID. -
Method Summary
Modifier and TypeMethodDescriptionstatic DiagramEditorInputcreateEditorInput(Diagram diagram, String providerId) Creates a newDiagramEditorInputfor the givenDiagramand the given diagram type provider ID.booleanChecks if this instance of the input represent the same object as the given instance.booleanexists()Checks if the diagram this input represents exist.getAdapter(Class adapter) Adapter method as defined inIAdaptable, supports adaptation toIFile.Returns the factory ID for creatingDiagramEditorInputs from mementos.org.eclipse.jface.resource.ImageDescriptorgetName()org.eclipse.ui.IPersistableElementReturns the diagram type provider id.org.eclipse.emf.common.util.URIgetUri()final StringinthashCode()protected booleanhasName()Checks if a name is set for this instancevoidsaveState(org.eclipse.ui.IMemento memento) SavesURIstring, object name and provider ID to the givenIMemento.protected voidSets the name for this instance.voidsetProviderId(String providerId) Sets the diagram type provider id.toString()Used for logging only!voidupdateUri(org.eclipse.emf.common.util.URI diagramFileUri)
-
Field Details
-
KEY_URI
The memento key for the storedURIstring- See Also:
-
KEY_PROVIDER_ID
The memento key for the ID of the diagram type provider.
-
-
Constructor Details
-
DiagramEditorInput
Creates a newDiagramEditorInputout of aURIstring and a Graphiti diagram type provider ID. For resolving theURIto anEObjecttheResourceSetthat will be created when a diagram editor starts is taken. This input object will not resolve the diagram.
A diagram type provider ID is held in this class.- Parameters:
diagramUri- AURIthat denotes the input'sEObject. This can either be a URI of a Graphiti diagram or the URI of an EMF resource storing a Graphiti diagram. In the latter case the given URI will b e trimmed to point to the first element in the resource; make sure that this element is a Graphiti diagram, otherwise an exception will be thrown when the diagram editor opens. No check on this is done inside the input object itself!providerId- AStringwhich holds the diagram type id. When it is null, it is set later inDiagramBehavior#setInput(IEditorInput)- Throws:
IllegalArgumentException- ifuriStringparameter is null- Since:
- 0.9
- See Also:
-
URI
-
-
Method Details
-
createEditorInput
Creates a newDiagramEditorInputfor the givenDiagramand the given diagram type provider ID.- Parameters:
diagram- ADiagramproviderId- AStringwhich holds the diagram type provider id.- Returns:
- A
DiagramEditorInputeditor input - Since:
- 0.9
-
getProviderId
Returns the diagram type provider id.- Specified by:
getProviderIdin interfaceIDiagramEditorInput- Returns:
- The providerId.
-
setProviderId
Sets the diagram type provider id.- Specified by:
setProviderIdin interfaceIDiagramEditorInput- Parameters:
providerId- The providerId to set.
-
getFactoryId
Returns the factory ID for creatingDiagramEditorInputs from mementos.- Specified by:
getFactoryIdin interfaceorg.eclipse.ui.IPersistableElement- Returns:
- The ID of the associated factory
-
getImageDescriptor
public org.eclipse.jface.resource.ImageDescriptor getImageDescriptor()- Specified by:
getImageDescriptorin interfaceorg.eclipse.ui.IEditorInput- Returns:
- Simply returns
null.
-
getName
- Specified by:
getNamein interfaceorg.eclipse.ui.IEditorInput- Returns:
- The cached name or the input's
URIstring - See Also:
-
#getLiveName()
-
hasName
protected boolean hasName()Checks if a name is set for this instance- Returns:
truein case a name is set,falsein name isnull.
-
setName
Sets the name for this instance.- Parameters:
name- The name to set.
-
getToolTipText
- Specified by:
getToolTipTextin interfaceorg.eclipse.ui.IEditorInput- Returns:
- The cached tooltip or the input's
URIstring - See Also:
-
#getLiveToolTipText()
-
getAdapter
Adapter method as defined inIAdaptable, supports adaptation toIFile.- Specified by:
getAdapterin interfaceorg.eclipse.core.runtime.IAdaptable- Parameters:
adapter- The adapter class to look up- Returns:
- A object castable to the given class, or
nullif this object does not have an adapter for the given class
-
saveState
public void saveState(org.eclipse.ui.IMemento memento) SavesURIstring, object name and provider ID to the givenIMemento.- Specified by:
saveStatein interfaceorg.eclipse.ui.IPersistable- Parameters:
memento- The memento to store the information in
-
getUriString
- Specified by:
getUriStringin interfaceIDiagramEditorInput- Returns:
- The
URIstring this input and its editors operate on
-
exists
public boolean exists()Checks if the diagram this input represents exist.Note: The editor gets only restored, when
trueis returned.- Specified by:
existsin interfaceorg.eclipse.ui.IEditorInput- Returns:
trueif the input's state denotes a living EMF object
-
getPersistable
public org.eclipse.ui.IPersistableElement getPersistable()- Specified by:
getPersistablein interfaceorg.eclipse.ui.IEditorInput- Returns:
- this input if it is persistable, otherwise null
-
getUri
public org.eclipse.emf.common.util.URI getUri()- Specified by:
getUriin interfaceIDiagramEditorInput- Returns:
- the resolved
URIornullin case of failures - Since:
- 0.9
-
equals
Checks if this instance of the input represent the same object as the given instance. -
hashCode
public int hashCode() -
toString
Used for logging only! -
updateUri
public void updateUri(org.eclipse.emf.common.util.URI diagramFileUri) - Specified by:
updateUriin interfaceIDiagramEditorInput- Since:
- 0.9
-