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 java.lang.Object implements org.eclipse.ui.IEditorInput, org.eclipse.ui.IPersistableElement, IDiagramEditorInput
The editor input object forIDiagramContainerUI
s. Wraps theURI
of aDiagram
and an ID of a diagram type provider for displaying it with a Graphiti diagram editor.
-
-
Field Summary
Fields Modifier and Type Field Description static java.lang.String
KEY_PROVIDER_ID
The memento key for the ID of the diagram type provider.static java.lang.String
KEY_URI
The memento key for the storedURI
string
-
Constructor Summary
Constructors Constructor Description DiagramEditorInput(org.eclipse.emf.common.util.URI diagramUri, java.lang.String providerId)
Creates a newDiagramEditorInput
out of aURI
string and a Graphiti diagram type provider ID.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static DiagramEditorInput
createEditorInput(Diagram diagram, java.lang.String providerId)
Creates a newDiagramEditorInput
for the givenDiagram
and the given diagram type provider ID.boolean
equals(java.lang.Object obj)
Checks if this instance of the input represent the same object as the given instance.boolean
exists()
Checks if the diagram this input represents exist.java.lang.Object
getAdapter(java.lang.Class adapter)
Adapter method as defined inIAdaptable
, supports adaptation toIFile
.java.lang.String
getFactoryId()
Returns the factory ID for creatingDiagramEditorInput
s from mementos.org.eclipse.jface.resource.ImageDescriptor
getImageDescriptor()
java.lang.String
getName()
org.eclipse.ui.IPersistableElement
getPersistable()
java.lang.String
getProviderId()
Returns the diagram type provider id.java.lang.String
getToolTipText()
org.eclipse.emf.common.util.URI
getUri()
java.lang.String
getUriString()
int
hashCode()
protected boolean
hasName()
Checks if a name is set for this instancevoid
saveState(org.eclipse.ui.IMemento memento)
SavesURI
string, object name and provider ID to the givenIMemento
.protected void
setName(java.lang.String name)
Sets the name for this instance.void
setProviderId(java.lang.String providerId)
Sets the diagram type provider id.java.lang.String
toString()
Used for logging only!void
updateUri(org.eclipse.emf.common.util.URI diagramFileUri)
-
-
-
Field Detail
-
KEY_URI
public static final java.lang.String KEY_URI
The memento key for the storedURI
string- See Also:
- Constant Field Values
-
KEY_PROVIDER_ID
public static java.lang.String KEY_PROVIDER_ID
The memento key for the ID of the diagram type provider.
-
-
Constructor Detail
-
DiagramEditorInput
public DiagramEditorInput(org.eclipse.emf.common.util.URI diagramUri, java.lang.String providerId)
Creates a newDiagramEditorInput
out of aURI
string and a Graphiti diagram type provider ID. For resolving theURI
to anEObject
theResourceSet
that 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
- AURI
that 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
- AString
which holds the diagram type id. When it is null, it is set later inDiagramBehavior#setInput(IEditorInput)
- Throws:
java.lang.IllegalArgumentException
- ifuriString
parameter is null- Since:
- 0.9
- See Also:
URI
-
-
Method Detail
-
createEditorInput
public static DiagramEditorInput createEditorInput(Diagram diagram, java.lang.String providerId)
Creates a newDiagramEditorInput
for the givenDiagram
and the given diagram type provider ID.- Parameters:
diagram
- ADiagram
providerId
- AString
which holds the diagram type provider id.- Returns:
- A
DiagramEditorInput
editor input - Since:
- 0.9
-
getProviderId
public java.lang.String getProviderId()
Returns the diagram type provider id.- Specified by:
getProviderId
in interfaceIDiagramEditorInput
- Returns:
- The providerId.
-
setProviderId
public void setProviderId(java.lang.String providerId)
Sets the diagram type provider id.- Specified by:
setProviderId
in interfaceIDiagramEditorInput
- Parameters:
providerId
- The providerId to set.
-
getFactoryId
public java.lang.String getFactoryId()
Returns the factory ID for creatingDiagramEditorInput
s from mementos.- Specified by:
getFactoryId
in interfaceorg.eclipse.ui.IPersistableElement
- Returns:
- The ID of the associated factory
-
getImageDescriptor
public org.eclipse.jface.resource.ImageDescriptor getImageDescriptor()
- Specified by:
getImageDescriptor
in interfaceorg.eclipse.ui.IEditorInput
- Returns:
- Simply returns
null
.
-
getName
public java.lang.String getName()
- Specified by:
getName
in interfaceorg.eclipse.ui.IEditorInput
- Returns:
- The cached name or the input's
URI
string - See Also:
#getLiveName()
-
hasName
protected boolean hasName()
Checks if a name is set for this instance- Returns:
true
in case a name is set,false
in name isnull
.
-
setName
protected void setName(java.lang.String name)
Sets the name for this instance.- Parameters:
name
- The name to set.
-
getToolTipText
public java.lang.String getToolTipText()
- Specified by:
getToolTipText
in interfaceorg.eclipse.ui.IEditorInput
- Returns:
- The cached tooltip or the input's
URI
string - See Also:
#getLiveToolTipText()
-
getAdapter
public java.lang.Object getAdapter(java.lang.Class adapter)
Adapter method as defined inIAdaptable
, supports adaptation toIFile
.- Specified by:
getAdapter
in interfaceorg.eclipse.core.runtime.IAdaptable
- Parameters:
adapter
- The adapter class to look up- Returns:
- A object castable to the given class, or
null
if this object does not have an adapter for the given class
-
saveState
public void saveState(org.eclipse.ui.IMemento memento)
SavesURI
string, object name and provider ID to the givenIMemento
.- Specified by:
saveState
in interfaceorg.eclipse.ui.IPersistable
- Parameters:
memento
- The memento to store the information in
-
getUriString
public final java.lang.String getUriString()
- Specified by:
getUriString
in interfaceIDiagramEditorInput
- Returns:
- The
URI
string 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
true
is returned.- Specified by:
exists
in interfaceorg.eclipse.ui.IEditorInput
- Returns:
true
if the input's state denotes a living EMF object
-
getPersistable
public org.eclipse.ui.IPersistableElement getPersistable()
- Specified by:
getPersistable
in interfaceorg.eclipse.ui.IEditorInput
- Returns:
- this input if it is persistable, otherwise null
-
getUri
public org.eclipse.emf.common.util.URI getUri()
- Specified by:
getUri
in interfaceIDiagramEditorInput
- Returns:
- the resolved
URI
ornull
in case of failures - Since:
- 0.9
-
equals
public boolean equals(java.lang.Object obj)
Checks if this instance of the input represent the same object as the given instance.- Overrides:
equals
in classjava.lang.Object
- Parameters:
obj
- The object to compare this instance with.- Returns:
true
if the represented objects are the same
-
hashCode
public int hashCode()
- Overrides:
hashCode
in classjava.lang.Object
-
toString
public java.lang.String toString()
Used for logging only!- Overrides:
toString
in classjava.lang.Object
-
updateUri
public void updateUri(org.eclipse.emf.common.util.URI diagramFileUri)
- Specified by:
updateUri
in interfaceIDiagramEditorInput
- Since:
- 0.9
-
-