Package ghidra.graph.viewer.renderer

# Class VisualGraphRenderer<V extends VisualVertex,E extends VisualEdge<V>>

java.lang.Object
edu.uci.ics.jung.visualization.renderers.BasicRenderer<V,E>
ghidra.graph.viewer.renderer.VisualGraphRenderer<V,E>

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

All Implemented Interfaces:
  `edu.uci.ics.jung.visualization.renderers.Renderer<V,E>`

public class VisualGraphRenderer<V extends VisualVertex,E extends VisualEdge<V>> extends edu.uci.ics.jung.visualization.renderers.BasicRenderer<V,E>
This was created to add the ability to paint selected vertices above other vertices. We need this since the Jung Graph has no notion of Z-order and thus does not let us specify that any particular vertex should be above another one.

- ## Nested Class Summary

  ## Nested classes/interfaces inherited from interface edu.uci.ics.jung.visualization.renderers.Renderer

  `edu.uci.ics.jung.visualization.renderers.Renderer.Edge<V extends Object,E extends Object>, edu.uci.ics.jung.visualization.renderers.Renderer.EdgeLabel<V extends Object,E extends Object>, edu.uci.ics.jung.visualization.renderers.Renderer.Vertex<V extends Object,E extends Object>, edu.uci.ics.jung.visualization.renderers.Renderer.VertexLabel<V extends Object,E extends Object>`

- ## Field Summary

  Fields
  Modifier and Type
  Field
  Description
  `static Map<VisualGraphLayout<?,?>,LayoutLocationMap<?,?>>`
  `DEBUG_ROW_COL_MAP`
  Used for displaying grid information for graph layouts

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `VisualGraphRenderer(edu.uci.ics.jung.visualization.renderers.Renderer.EdgeLabel<V,E> edgeLabelRenderer)`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `void`
  `render(edu.uci.ics.jung.visualization.RenderContext<V,E> renderContext, edu.uci.ics.jung.algorithms.layout.Layout<V,E> layout)`
  `void`
  `renderEdgeLabel(edu.uci.ics.jung.visualization.RenderContext<V,E> rc, edu.uci.ics.jung.algorithms.layout.Layout<V,E> layout, E e)`
  `void`
  `renderVertexLabel(edu.uci.ics.jung.visualization.RenderContext<V,E> rc, edu.uci.ics.jung.algorithms.layout.Layout<V,E> layout, V v)`

  ### Methods inherited from class edu.uci.ics.jung.visualization.renderers.BasicRenderer

  `getEdgeLabelRenderer, getEdgeRenderer, getVertexLabelRenderer, getVertexRenderer, renderEdge, renderVertex, setEdgeLabelRenderer, setEdgeRenderer, setVertexLabelRenderer, setVertexRenderer`

  ### Methods inherited from class java.lang.Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- ## Field Details

  - ### DEBUG_ROW_COL_MAP

    public static Map<VisualGraphLayout<?,?>,LayoutLocationMap<?,?>> DEBUG_ROW_COL_MAP
    Used for displaying grid information for graph layouts

- ## Constructor Details

  - ### VisualGraphRenderer

    public VisualGraphRenderer(edu.uci.ics.jung.visualization.renderers.Renderer.EdgeLabel<V,E> edgeLabelRenderer)

- ## Method Details

  - ### render

    public void render(edu.uci.ics.jung.visualization.RenderContext<V,E> renderContext, edu.uci.ics.jung.algorithms.layout.Layout<V,E> layout)
    Specified by:
      `render` in interface `edu.uci.ics.jung.visualization.renderers.Renderer<V extends VisualVertex,E extends VisualEdge<V>>`
    Overrides:
      `render` in class `edu.uci.ics.jung.visualization.renderers.BasicRenderer<V extends VisualVertex,E extends VisualEdge<V>>`

  - ### renderVertexLabel

    public void renderVertexLabel(edu.uci.ics.jung.visualization.RenderContext<V,E> rc, edu.uci.ics.jung.algorithms.layout.Layout<V,E> layout, V v)
    Specified by:
      `renderVertexLabel` in interface `edu.uci.ics.jung.visualization.renderers.Renderer<V extends VisualVertex,E extends VisualEdge<V>>`
    Overrides:
      `renderVertexLabel` in class `edu.uci.ics.jung.visualization.renderers.BasicRenderer<V extends VisualVertex,E extends VisualEdge<V>>`

  - ### renderEdgeLabel

    public void renderEdgeLabel(edu.uci.ics.jung.visualization.RenderContext<V,E> rc, edu.uci.ics.jung.algorithms.layout.Layout<V,E> layout, E e)
    Specified by:
      `renderEdgeLabel` in interface `edu.uci.ics.jung.visualization.renderers.Renderer<V extends VisualVertex,E extends VisualEdge<V>>`
    Overrides:
      `renderEdgeLabel` in class `edu.uci.ics.jung.visualization.renderers.BasicRenderer<V extends VisualVertex,E extends VisualEdge<V>>`