Class VisualGraphViewUpdater<V extends VisualVertex,​E extends VisualEdge<V>>

  • Type Parameters:
    V - the vertex type
    E - the edge type

    public class VisualGraphViewUpdater<V extends VisualVertex,​E extends VisualEdge<V>>
    extends java.lang.Object
    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 Detail

    • Method Detail

      • addJobScheduledListener

        public void addJobScheduledListener​(Callback c)
        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

        public void fitGraphToViewerNow​(edu.uci.ics.jung.visualization.VisualizationServer<V,​E> theViewer)
      • fitGraphToViewerLater

        public void fitGraphToViewerLater()
        Will schedule the fitting work to happen now if now work is being done, or later otherwis
      • fitGraphToViewerLater

        public void fitGraphToViewerLater​(edu.uci.ics.jung.visualization.VisualizationServer<V,​E> theViewer)
      • zoomInCompletely

        public void zoomInCompletely()
      • zoomInCompletely

        public void zoomInCompletely​(V centerOnVertex)
      • moveVertexToCenterTopWithoutAnimation

        public void moveVertexToCenterTopWithoutAnimation​(V vertex)
      • moveVertexToCenterWithoutAnimation

        public void moveVertexToCenterWithoutAnimation​(V vertex)
      • moveVertexToCenterWithAnimation

        public void moveVertexToCenterWithAnimation​(V vertex)
      • moveVertexToCenterWithAnimation

        public void moveVertexToCenterWithAnimation​(V vertex,
                                                    BusyListener callbackListener)
      • moveVertexToCenterTopWithAnimation

        public void moveVertexToCenterTopWithAnimation​(V vertex)
      • moveVertexToCenterTopWithAnimation

        public void moveVertexToCenterTopWithAnimation​(V vertex,
                                                       BusyListener callbackListener)
      • moveViewerLocationWithoutAnimation

        public void moveViewerLocationWithoutAnimation​(java.awt.Point translation)
      • centerViewSpacePointWithAnimation

        public void centerViewSpacePointWithAnimation​(java.awt.Point point)
      • centerViewSpacePointWithoutAnimation

        public void centerViewSpacePointWithoutAnimation​(java.awt.Point point)
      • centerLayoutSpacePointWithoutAnimation

        public void centerLayoutSpacePointWithoutAnimation​(java.awt.Point point)
      • setLayoutSpacePointWithoutAnimation

        public void setLayoutSpacePointWithoutAnimation​(java.awt.geom.Point2D point)
      • setLayoutSpacePointWithAnimation

        public void setLayoutSpacePointWithAnimation​(java.awt.Point point)
      • ensureVertexVisible

        public void ensureVertexVisible​(V vertex,
                                        java.awt.Rectangle area)
      • ensureVertexAreaVisible

        public void ensureVertexAreaVisible​(V vertex,
                                            java.awt.Rectangle area,
                                            BusyListener callbackListener)
      • updateEdgeShapes

        public void updateEdgeShapes​(java.util.Collection<E> edges)
      • twinkeVertex

        public void twinkeVertex​(V vertex)
      • 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

        public void scheduleViewChangeJob​(GraphJob job)
      • stopEdgeHoverAnimation

        public void stopEdgeHoverAnimation()
      • stopAllAnimation

        public void stopAllAnimation()
      • stopAllNonMutativeAnimation

        protected void stopAllNonMutativeAnimation()