Package ghidra.graph.viewer
Class VisualGraphViewUpdater<V extends VisualVertex,E extends VisualEdge<V>>
java.lang.Object
ghidra.graph.viewer.VisualGraphViewUpdater<V,E>
- Type Parameters:
V
- the vertex typeE
- the edge type
This is the class through which operations travel that manipulate the view and graph while
plugged-in to the UI. (Setup and tear down operations performed before the view
or graph are visible need not pass through this class.) This class is responsible for
controlling how to display view and graph changes, including whether to animate.
The animations are categorized into those that mutate the graph and those that are just display animations (like hover animations).
-
Constructor Summary
ConstructorDescriptionVisualGraphViewUpdater
(GraphViewer<V, E> primaryViewer, VisualGraph<V, E> graph) -
Method Summary
Modifier and TypeMethodDescriptionvoid
Add a listener to be notified when a job is started.void
void
void
void
void
dispose()
void
ensureVertexAreaVisible
(V vertex, Rectangle area, BusyListener callbackListener) void
ensureVertexVisible
(V vertex, Rectangle area) void
Fits the graph into both the primary and satellite viewsvoid
Will schedule the fitting work to happen now if now work is being done, or later otherwisvoid
fitGraphToViewerLater
(edu.uci.ics.jung.visualization.VisualizationServer<V, E> theViewer) void
void
fitGraphToViewerNow
(edu.uci.ics.jung.visualization.VisualizationServer<V, E> theViewer) boolean
boolean
isBusy()
Returns true if this updater is performing any animations or running any jobs that can mutate the graph or viewboolean
Returns true if this updater is running any jobs that can mutate the graph or viewvoid
moveVertexToCenterTopWithAnimation
(V vertex) void
moveVertexToCenterTopWithAnimation
(V vertex, BusyListener callbackListener) void
void
moveVertexToCenterWithAnimation
(V vertex) void
moveVertexToCenterWithAnimation
(V vertex, BusyListener callbackListener) void
moveVertexToCenterWithoutAnimation
(V vertex) void
moveViewerLocationWithoutAnimation
(Point translation) void
void
setGraphPerspective
(GraphPerspectiveInfo<V, E> graphInfo) void
setGraphScale
(double scale) void
void
protected void
setSatelliteViewer
(SatelliteGraphViewer<V, E> satelliteViewer) void
protected void
void
void
twinkeVertex
(V vertex) void
updateEdgeShapes
(Collection<E> edges) void
void
zoomInCompletely
(V centerOnVertex)
-
Constructor Details
-
VisualGraphViewUpdater
-
-
Method Details
-
setSatelliteViewer
-
addJobScheduledListener
Add a listener to be notified when a job is started. Jobs often, but not always, mutate the underlying graph. For this reason, other tasks that use the graph may want to not do their work while a job is running.- Parameters:
c
- the listener
-
isAnimationEnabled
public boolean isAnimationEnabled() -
dispose
public void dispose() -
fitAllGraphsToViewsNow
public void fitAllGraphsToViewsNow()Fits the graph into both the primary and satellite views -
fitGraphToViewerNow
public void fitGraphToViewerNow() -
fitGraphToViewerNow
-
fitGraphToViewerLater
public void fitGraphToViewerLater()Will schedule the fitting work to happen now if now work is being done, or later otherwis -
fitGraphToViewerLater
-
zoomInCompletely
public void zoomInCompletely() -
zoomInCompletely
-
moveVertexToCenterTopWithoutAnimation
-
moveVertexToCenterWithoutAnimation
-
moveVertexToCenterWithAnimation
-
moveVertexToCenterWithAnimation
-
moveVertexToCenterTopWithAnimation
-
moveVertexToCenterTopWithAnimation
-
moveViewerLocationWithoutAnimation
-
centerViewSpacePointWithAnimation
-
centerViewSpacePointWithoutAnimation
-
centerLayoutSpacePointWithoutAnimation
-
setLayoutSpacePointWithoutAnimation
-
setLayoutSpacePointWithAnimation
-
ensureVertexVisible
-
ensureVertexAreaVisible
-
updateEdgeShapes
-
setGraphPerspective
-
twinkeVertex
-
setGraphScale
public void setGraphScale(double scale) -
animateEdgeHover
public void animateEdgeHover() -
isBusy
public boolean isBusy()Returns true if this updater is performing any animations or running any jobs that can mutate the graph or view- Returns:
- true if busy
-
isMutatingGraph
public boolean isMutatingGraph()Returns true if this updater is running any jobs that can mutate the graph or view- Returns:
- true if busy
-
scheduleViewChangeJob
-
stopEdgeHoverAnimation
public void stopEdgeHoverAnimation() -
stopAllAnimation
public void stopAllAnimation() -
stopAllNonMutativeAnimation
protected void stopAllNonMutativeAnimation()
-