Class IndicatorTool

  • All Implemented Interfaces:
    java.awt.event.KeyListener, java.awt.event.MouseListener, java.awt.event.MouseMotionListener, java.awt.event.MouseWheelListener, java.util.EventListener, Tool
    Direct Known Subclasses:
    BoxBandTool, EditVertexTool, LineBandTool

    public abstract class IndicatorTool
    extends BasicTool
    • Field Detail

      • bandColor

        private java.awt.Color bandColor
      • mousePoint

        private java.awt.Point mousePoint
      • lastShapeDrawn

        private java.awt.Shape lastShapeDrawn
      • lastLabelDrawn

        private java.lang.String lastLabelDrawn
      • lastLabelLoc

        private java.awt.Point lastLabelLoc
      • isIndicatorVisible

        private boolean isIndicatorVisible
      • originalColor

        private java.awt.Color originalColor
      • originalStroke

        private java.awt.Stroke originalStroke
      • originalFont

        private java.awt.Font originalFont
    • Constructor Detail

      • IndicatorTool

        public IndicatorTool()
      • IndicatorTool

        public IndicatorTool​(java.awt.Cursor cursor)
    • Method Detail

      • getShape

        protected java.awt.Shape getShape()
        Gets the shape for displaying the current state of the action. Subclasses should override.
        Returns:
        null if nothing should be drawn
      • isIndicatorVisible

        public boolean isIndicatorVisible()
        Important for XOR drawing. Even if #getShape returns null, this method will return true between calls of #redrawShape and #clearShape.
      • setIndicatorVisible

        private void setIndicatorVisible​(boolean isIndicatorVisible)
      • clearIndicator

        protected void clearIndicator()
      • redrawIndicator

        protected void redrawIndicator()
      • clearShape

        private void clearShape​(java.awt.Graphics2D graphics)
      • redrawShape

        private void redrawShape​(java.awt.Graphics2D graphics)
                          throws java.lang.Exception
        Throws:
        java.lang.Exception
      • drawShapeXOR

        private void drawShapeXOR​(java.awt.Graphics2D g)
                           throws java.lang.Exception
        Throws:
        java.lang.Exception
      • drawShapeXOR

        private void drawShapeXOR​(java.awt.Graphics2D graphics,
                                  java.awt.Shape shape,
                                  java.lang.String label,
                                  java.awt.Point labelLoc)
      • setup

        private void setup​(java.awt.Graphics2D graphics)
      • teardown

        private void teardown​(java.awt.Graphics2D graphics)
      • recordLabel

        private void recordLabel​(java.awt.Point p)
      • getLabel

        private java.lang.String getLabel()
      • mouseDragged

        public void mouseDragged​(java.awt.event.MouseEvent e)
        Specified by:
        mouseDragged in interface java.awt.event.MouseMotionListener
        Overrides:
        mouseDragged in class BasicTool
      • mouseMoved

        public void mouseMoved​(java.awt.event.MouseEvent e)
        Specified by:
        mouseMoved in interface java.awt.event.MouseMotionListener
        Overrides:
        mouseMoved in class BasicTool