Class BasicEdgeHighlighter

  • All Implemented Interfaces:
    CanvasComponent, Figure, FigureContainer, FigureSet, VisibleComponent, UserObjectContainer

    public class BasicEdgeHighlighter
    extends FigureDecorator
    A decorator figure that displays a highlight behind an edge. This capability was planned for BasicHighlighter but there doesn't seem to be an easy way to determine that an edge is being painted. This class is a stripped down version of BasicHighlighter with the paint method modified so that it assumes that an edge is being highlighted.
    Since:
    Ptolemy II 8.0
    Version:
    $Id$
    Author:
    Rowland R Johnson
    Pt.AcceptedRating:
    Red (rowland)
    Pt.ProposedRating:
    Red (rowland)
    • Constructor Detail

      • BasicEdgeHighlighter

        public BasicEdgeHighlighter()
        Create a new highlighter with a default paint, "halo", and stroke.
    • Method Detail

      • hit

        public boolean hit​(java.awt.geom.Rectangle2D region)
        Return false. This method always returns false, as it is meaningless (and dangerous!) to be able to hit a highlight.
        Specified by:
        hit in interface Figure
        Overrides:
        hit in class FigureDecorator
        Parameters:
        region - The rectangle to be checked.
        Returns:
        true if the figure is hit by the given rectangle.
      • newInstance

        public FigureDecorator newInstance​(Figure f)
        Create a new instance of this highlighter.
        Specified by:
        newInstance in class FigureDecorator
        Parameters:
        f - The figure
        Returns:
        The new instance of the figure decorator.
      • paint

        public void paint​(java.awt.Graphics2D g)
        Paint the edge. This method first paints the highlight over the contained edge by drawing a line width determined by halo. It then paints the contained edge.
        Specified by:
        paint in interface VisibleComponent
        Overrides:
        paint in class FigureDecorator
        Parameters:
        g - The Graphics context
      • repaint

        public void repaint​(DamageRegion d)
        Receive repaint notification. This method generates another repaint() call, with a larger region, in order to ensure that the highlight is repainted.
        Specified by:
        repaint in interface CanvasComponent
        Overrides:
        repaint in class AbstractFigureContainer
        Parameters:
        d - The region where a repaint has occurred.
      • repaint

        public void repaint()
        Request a repaint of the figure and highlight. This method reads the bounding box of the highlighted figure, and requests a repaint of that box stretched in each direction by the halo.
        Specified by:
        repaint in interface CanvasComponent
        Overrides:
        repaint in class AbstractFigure