Class CrosshairRenderer

java.lang.Object
org.biojava.utils.AbstractChangeable
org.biojava.bio.gui.sequence.CrosshairRenderer
All Implemented Interfaces:
PairwiseSequenceRenderer, Changeable

CrosshairRenderer draws a crosshair, optionally with coordinates. The crosshair is set to a sequence position by a click and then stays there through scrolls/rescales until the next click. See the processMouseEvent documentation for details of responses to various mouse actions.

Since:
1.2
Author:
Keith James
  • Field Details

    • OUTLINE

      public static final ChangeType OUTLINE
      Constant OUTLINE indicating a change to the crosshair paint.
    • xHair

      protected Line2D xHair
      xHair is the vertical line positioned along the X-axis.
    • yHair

      protected Line2D yHair
      yHair is the horizontal line positioned along the Y-axis.
    • point

      protected Point point
      point is the current location (in sequence coordinates) of the crosshair in the X and Y sequences.
  • Constructor Details

    • CrosshairRenderer

      Creates a new CrosshairRenderer in light grey with coordinates displayed.
    • CrosshairRenderer

      public CrosshairRenderer(Paint outline)
      Creates a new CrosshairRenderer of the specified colour, with coordinates displayed.
      Parameters:
      outline - a Paint.
  • Method Details

    • paint

      public void paint(Graphics2D g2, PairwiseRenderContext context)
      Description copied from interface: PairwiseSequenceRenderer
      paints some or all of the information about the sequence pair.
      Specified by:
      paint in interface PairwiseSequenceRenderer
      Parameters:
      g2 - a Graphics2D.
      context - a PairwiseRenderContext encapsulating the information to be displayed.
    • coordinateDisplayOn

      public void coordinateDisplayOn(boolean display)
      coordinateDisplayOn toggles the display of sequence coordinates.
      Parameters:
      display - a boolean.
    • getOutline

      public Paint getOutline()
      getOutline returns the colour used to draw the lines.
      Returns:
      a Paint.
    • setOutline

      public void setOutline(Paint outline) throws ChangeVetoException
      setOutline sets the the colour used to draw the lines.
      Parameters:
      outline - a Paint.
      Throws:
      ChangeVetoException - if an error occurs.
    • processMouseEvent

      processMouseEvent processes any MouseEvents directed to the renderer.

      Mouse actions are as follows (all are button-1 only):

      • Click sets the crosshair position and returns an event whose target object is the Point in sequence coordinates. The X coordinate is in the primary sequence, the Y coordinate is in the secondary sequence.
      • Press same as Click
      • Drag same as Click, except that the Point is not set
      • Release same as Click, except that the Point is not set
      • Move same as Click, except that the Point is not set and the target is null

      Specified by:
      processMouseEvent in interface PairwiseSequenceRenderer
      Parameters:
      context - a PairwiseRenderContext.
      me - a MouseEvent.
      path - a List.
      Returns:
      a SequenceViewerEvent.