Package org.eclipse.zest.core.viewers
Class AbstractStructuredGraphViewer
java.lang.Object
org.eclipse.jface.viewers.Viewer
org.eclipse.jface.viewers.ContentViewer
org.eclipse.jface.viewers.StructuredViewer
org.eclipse.zest.core.viewers.AbstractZoomableViewer
org.eclipse.zest.core.viewers.AbstractStructuredGraphViewer
- All Implemented Interfaces:
IInputProvider
,IInputSelectionProvider
,IPostSelectionProvider
,ISelectionProvider
- Direct Known Subclasses:
GraphViewer
Abstraction of graph viewers to implement functionality used by all of them.
Not intended to be implemented by clients. Use one of the provided children
instead.
- Since:
- 1.14
- @noextend
- This class is not intended to be subclassed by clients.
-
Nested Class Summary
Nested classes/interfaces inherited from class org.eclipse.jface.viewers.StructuredViewer
StructuredViewer.ColorAndFontCollector, StructuredViewer.ColorAndFontCollectorWithProviders
-
Field Summary
Fields inherited from class org.eclipse.jface.viewers.Viewer
WIDGET_DATA_KEY
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoid
addConstraintAdapter
(ConstraintAdapter constraintAdapter) Adds a new constraint adapter to the list of constraintsaddGraphModelConnection
(Object element, GraphNode source, GraphNode target) addGraphModelContainer
(Object element) addGraphModelNode
(Object element, IFigure figure) addGraphModelNode
(IContainer container, Object element) void
Creates a new node and adds it to the graph.void
addRelationship
(Object connection) Adds a new relationship given the connection.void
addRelationship
(Object connection, Object srcNode, Object destNode) Creates a new relationship between the source node and the destination node.abstract void
Applies the viewers layouts.protected GraphConnection
createConnectionObject
(Graph graphModel, GraphNode source, GraphNode destination) Implement and return the new connection object, enables to define custom graph connectionsprotected GraphNode
createNodeObject
(Graph graphModel, IFigure figure) Implement and return the new node object, enables to define custom graph nodesprotected Widget
doFindInputItem
(Object element) protected GraphItem
doFindItem
(Object element) protected void
doUpdateItem
(Widget item, Object element, boolean fullMap) protected void
protected GraphItem[]
Object[]
protected GraphConnection[]
getConnectionsArray
(Graph graph) Converts the list of GraphModelConnection objects into an array and returns it.int
List
<? extends ConstraintAdapter> Gets all the constraint adapters currently on the viewerprotected abstract org.eclipse.zest.core.viewers.internal.IStylingGraphModelFactory
Returns the factory used to create the model.getGraphModelNode
(Object obj) int
Returns the style set for the graphprotected abstract LayoutAlgorithm
Gets the current layout algorithm.Object[]
protected GraphNode[]
getNodesArray
(Graph graph) Converts the list of GraphModelNode objects into an array an returns it.int
Returns the style set for the nodes.protected Object[]
getRawChildren
(Object parent) Gets the internal model elements that are selected.protected void
inputChanged
(Object input, Object oldInput) protected void
internalRefresh
(Object element) void
void
void
removeNode
(Object element) Removes the given element from the layout algorithm and the model.void
removeRelationship
(Object connection) Removes the given connection object from the layout algorithm and the model.void
void
setConnectionStyle
(int connectionStyle) Sets the default style for connections in this graph.void
setLayoutAlgorithm
(LayoutAlgorithm algorithm) Equivalent to setLayoutAlgorithm(algorithm, false).abstract void
setLayoutAlgorithm
(LayoutAlgorithm algorithm, boolean run) Sets the layout algorithm for this viewer.void
setNodeStyle
(int nodeStyle) Sets the default style for nodes in this graph.protected void
setSelectionToWidget
(List l, boolean reveal) void
Methods inherited from class org.eclipse.zest.core.viewers.AbstractZoomableViewer
getZoomManager, zoomTo
Methods inherited from class org.eclipse.jface.viewers.StructuredViewer
addDoubleClickListener, addDragSupport, addDropSupport, addFilter, addOpenListener, addPostSelectionChangedListener, assertContentProviderType, assertElementsNotNull, associate, buildLabel, disassociate, equals, filter, findItem, findItems, fireDoubleClick, fireOpen, firePostSelectionChanged, getColorAndFontCollector, getComparator, getComparer, getFilteredChildren, getFilters, getItem, getRoot, getSelection, getSortedChildren, getSorter, getStructuredSelection, handleDispose, handleDoubleSelect, handleInvalidSelection, handleLabelProviderChanged, handleOpen, handlePostSelect, handleSelect, hasFilters, hookControl, internalRefresh, internalUpdate, mapElement, needsRefilter, preservingSelection, refresh, refresh, refresh, refresh, refreshItem, removeDoubleClickListener, removeFilter, removeOpenListener, removePostSelectionChangedListener, resetFilters, setComparator, setComparer, setContentProvider, setFilters, setInput, setLabelProvider, setSelection, setSelectionToWidget, setSorter, setUseHashlookup, testFindItem, testFindItems, unmapAllElements, unmapElement, unmapElement, update, update, updateItem, updateSelection, usingElementMap
Methods inherited from class org.eclipse.jface.viewers.ContentViewer
getContentProvider, getInput, getLabelProvider, labelProviderChanged
Methods inherited from class org.eclipse.jface.viewers.Viewer
addHelpListener, addSelectionChangedListener, fireHelpRequested, fireSelectionChanged, getControl, getData, handleHelpRequest, removeHelpListener, removeSelectionChangedListener, scrollDown, scrollUp, setData, setSelection
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface org.eclipse.jface.viewers.ISelectionProvider
addSelectionChangedListener, removeSelectionChangedListener, setSelection
-
Constructor Details
-
AbstractStructuredGraphViewer
protected AbstractStructuredGraphViewer(int graphStyle)
-
-
Method Details
-
setNodeStyle
public void setNodeStyle(int nodeStyle) Sets the default style for nodes in this graph. Note: if an input is set on the viewer, a ZestException will be thrown.- Parameters:
nodeStyle
- the style for the nodes.- See Also:
-
setConnectionStyle
public void setConnectionStyle(int connectionStyle) Sets the default style for connections in this graph. Note: if an input is set on the viewer, a ZestException will be thrown.- Parameters:
connectionStyle
- the style for the connections.- See Also:
-
getGraphStyle
public int getGraphStyle()Returns the style set for the graph- Returns:
- The style set of the graph
-
getNodeStyle
public int getNodeStyle()Returns the style set for the nodes.- Returns:
- the style set for the nodes.
-
getGraphControl
-
getConnectionStyle
public int getConnectionStyle()- Returns:
- the connection style.
-
addConstraintAdapter
Adds a new constraint adapter to the list of constraints- Parameters:
constraintAdapter
-
-
getConstraintAdapters
Gets all the constraint adapters currently on the viewer -
setLayoutAlgorithm
Sets the layout algorithm for this viewer. Subclasses may place restrictions on the algorithms that it accepts.- Parameters:
algorithm
- the layout algorithmrun
- true if the layout algorithm should be run immediately. This is a hint.
-
getLayoutAlgorithm
Gets the current layout algorithm.- Returns:
- the current layout algorithm.
-
setLayoutAlgorithm
Equivalent to setLayoutAlgorithm(algorithm, false).- Parameters:
algorithm
-
-
getNodeElements
-
getConnectionElements
-
getNodesMap
- @noreference
- This method is not intended to be referenced by clients.
-
addGraphModelContainer
- @noreference
- This method is not intended to be referenced by clients.
-
addGraphModelNode
- @noreference
- This method is not intended to be referenced by clients.
-
createNodeObject
Implement and return the new node object, enables to define custom graph nodes- Parameters:
graphModel
- where the created nodes gets added tofigure
- of the created node object- Returns:
- instance of a
GraphNode
- Since:
- 1.7
-
createConnectionObject
protected GraphConnection createConnectionObject(Graph graphModel, GraphNode source, GraphNode destination) Implement and return the new connection object, enables to define custom graph connections- Parameters:
graphModel
- where the created nodes gets added tosource
-GraphNode
destination
-GraphNode
- Returns:
- instance of a
GraphConnection
- Since:
- 1.7
-
addGraphModelNode
- @noreference
- This method is not intended to be referenced by clients.
-
addGraphModelConnection
- @noreference
- This method is not intended to be referenced by clients.
-
getGraphModelConnection
- @noreference
- This method is not intended to be referenced by clients.
-
getGraphModelNode
- @noreference
- This method is not intended to be referenced by clients.
-
removeGraphModelConnection
- @noreference
- This method is not intended to be referenced by clients.
-
removeGraphModelNode
- @noreference
- This method is not intended to be referenced by clients.
-
internalRefresh
- Specified by:
internalRefresh
in classStructuredViewer
-
doUpdateItem
- Specified by:
doUpdateItem
in classStructuredViewer
-
doFindInputItem
- Specified by:
doFindInputItem
in classStructuredViewer
-
doFindItem
- Specified by:
doFindItem
in classStructuredViewer
-
getSelectionFromWidget
- Specified by:
getSelectionFromWidget
in classStructuredViewer
-
findItems
-
setSelectionToWidget
- Specified by:
setSelectionToWidget
in classStructuredViewer
-
getWidgetSelection
Gets the internal model elements that are selected. -
inputChanged
- Overrides:
inputChanged
in classViewer
-
getFactory
protected abstract org.eclipse.zest.core.viewers.internal.IStylingGraphModelFactory getFactory()Returns the factory used to create the model. This must not be called before the content provider is set.- @nooverride
- This method is not intended to be re-implemented or extended by clients.
- @noreference
- This method is not intended to be referenced by clients.
-
filterVisuals
protected void filterVisuals() -
getRawChildren
- Overrides:
getRawChildren
in classStructuredViewer
-
reveal
- Specified by:
reveal
in classStructuredViewer
-
unReveal
-
applyLayout
public abstract void applyLayout()Applies the viewers layouts. -
removeRelationship
Removes the given connection object from the layout algorithm and the model.- Parameters:
connection
-
-
addNode
Creates a new node and adds it to the graph. If it already exists nothing happens.- Parameters:
element
-
-
removeNode
Removes the given element from the layout algorithm and the model.- Parameters:
element
- The node element to remove.
-
addRelationship
Creates a new relationship between the source node and the destination node. If either node doesn't exist then it will be created.- Parameters:
connection
- The connection data object.srcNode
- The source node data object.destNode
- The destination node data object.
-
addRelationship
Adds a new relationship given the connection. It will use the content provider to determine the source and destination nodes.- Parameters:
connection
- The connection data object.
-
getConnectionsArray
Converts the list of GraphModelConnection objects into an array and returns it.- Returns:
- GraphModelConnection[]
-
getNodesArray
Converts the list of GraphModelNode objects into an array an returns it.- Returns:
- GraphModelNode[]
-