## com.bbn.openmap.omGraphics
Class EditableOMRangeRings

    java.lang.Object
      com.bbn.openmap.event.MapMouseAdapter
          com.bbn.openmap.omGraphics.EditableOMGraphic
              com.bbn.openmap.omGraphics.EditableOMCircle
                  com.bbn.openmap.omGraphics.EditableOMRangeRings

All Implemented Interfaces:
  MapMouseListener

public class EditableOMRangeRings
extends EditableOMCircle

Field Summary
`protected java.text.DecimalFormat` `df`
`protected boolean` `drawLabelsHolder`
`protected I18n` `i18n`
`protected javax.swing.JTextField` `intervalField`
`protected static int` `lastInterval`
`protected static Length` `lastUnit`
`protected javax.swing.JToolBar` `rrToolBar`
`protected static boolean` `snapToInterval`

Fields inherited from class com.bbn.openmap.omGraphics.EditableOMCircle
`CENTER_POINT_INDEX, circle, E_POINT_INDEX, gpc, gpe, gpm, gpn, gpne, gpnw, gpo, gpr, gps, gpse, gpsw, gpw, lastRenderType, N_POINT_INDEX, NE_POINT_INDEX, NW_POINT_INDEX, OFFSET_POINT_INDEX, RADIUS_POINT_INDEX, S_POINT_INDEX, SE_POINT_INDEX, SW_POINT_INDEX, W_POINT_INDEX`

Fields inherited from class com.bbn.openmap.omGraphics.EditableOMGraphic
`actionMask, canGrabGraphic, DEBUG, DEBUG_DETAIL, gPoints, holder, lastMouseEvent, listeners, mouseModeServiceList, movingPoint, projection, showGUI, stateMachine`

Constructor Summary
`EditableOMRangeRings()` Create the EditableOMRangeRings, setting the state machine to create the circle off of the gestures.
`EditableOMRangeRings(GraphicAttributes ga)` Create an EditableOMRangeRings with the circleType and renderType parameters in the GraphicAttributes object.
`EditableOMRangeRings(OMRangeRings omc)` Create the EditableOMRangeRings with an OMCircle already defined, ready for editing.

Method Summary
`void` `createGraphic(GraphicAttributes ga)` Create and set the graphic within the state machine.
`java.awt.Component` `getGUI(GraphicAttributes graphicAttributes)` Modifies the gui to not include line type adjustments, and adds widgets to control range ring settings.
`protected javax.swing.JToolBar` `getRangeRingGUI()`
`int` `interpretValue(java.lang.String intervalStr)`
`boolean` `isSnapToInterval()`
`protected void` `modifyOMGraphicForEditRender()` A convenience method that gives an EditableOMGraphic a chance to modify the OMGraphic so it can be drawn quickly, by turning off labels, etc, right before the XORpainting happens.
`protected void` `resetOMGraphicAfterEditRender()` A convenience method that gives an EditableOMGraphic a chance to reset the OMGraphic so it can be rendered normally, after it has been modified for quick paints.
`protected void` `setRadius(float radius)` To be overloaded if needed when setting circle's radius.
`void` `setSnapToInterval(boolean sti)`
`void` `updateInterval(int val)`
`void` `updateInterval(java.lang.String intervalStr)`

Methods inherited from class com.bbn.openmap.omGraphics.EditableOMCircle
`assertGrabPoints, attachToMovingGrabPoint, clearGrabPoints, detachFromMovingGrabPoint, generate, getCanGrabGraphic, getGraphic, getMovingPoint, init, move, regenerate, render, setGrabPoints, setGrabPoints, setGraphic, setMovingPoint`

Methods inherited from class com.bbn.openmap.omGraphics.EditableOMGraphic

`_getMovingPoint, addEOMGListener, cleanMap, finalize, fireEvent, fireEvent, fireEvent, fireEvent, getActionMask, getGrabPoint, getGrabPoints, getGUI, getMouseModeServiceList, getMovingPoint, getProjection, getShowGUI, getStateMachine, handleInitialMouseEvent, mouseClicked, mouseDragged, mouseEntered, mouseExited, mouseMoved, mouseMoved, mousePressed, mouseReleased, redraw, redraw, redraw, removeEOMGListener, repaint, repaintRender, reset, setActionMask, setCanGrabGraphic, setGrabPoint, setGrabPoints, setMouseModeServiceList, setProjection, setShowGUI, setStateMachine`

Methods inherited from class java.lang.Object
`clone, equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Field Detail

### lastInterval

    protected static int lastInterval

### lastUnit

    protected static Length lastUnit

### snapToInterval

    protected static boolean snapToInterval

### intervalField

    protected javax.swing.JTextField intervalField

### rrToolBar

    protected javax.swing.JToolBar rrToolBar

### df

    protected transient java.text.DecimalFormat df

### i18n

    protected I18n i18n

### drawLabelsHolder

    protected boolean drawLabelsHolder

Constructor Detail

### EditableOMRangeRings

    public EditableOMRangeRings()

  Create the EditableOMRangeRings, setting the state machine to create the circle off of the gestures.

### EditableOMRangeRings

    public EditableOMRangeRings(GraphicAttributes ga)

  Create an EditableOMRangeRings with the circleType and renderType parameters in the GraphicAttributes object.

### EditableOMRangeRings

    public EditableOMRangeRings(OMRangeRings omc)

  Create the EditableOMRangeRings with an OMCircle already defined, ready for editing.

Parameters:
  `omc` - OMCircle that should be edited.

Method Detail

### createGraphic

    public void createGraphic(GraphicAttributes ga)

  Create and set the graphic within the state machine. The GraphicAttributes describe the type of circle to create.

  Overrides:
    `createGraphic` in class `EditableOMCircle`

### getGUI

    public java.awt.Component getGUI(GraphicAttributes graphicAttributes)

  Modifies the gui to not include line type adjustments, and adds widgets to control range ring settings.

  Overrides:
    `getGUI` in class `EditableOMCircle`
  Parameters:
    `graphicAttributes` - the GraphicAttributes to use to get the GUI widget from to control those parameters for this EOMG.
  Returns:
    java.awt.Component to use to control parameters for this EOMG.

### updateInterval

    public void updateInterval(int val)

### updateInterval

    public void updateInterval(java.lang.String intervalStr)

### interpretValue

    public int interpretValue(java.lang.String intervalStr)

### getRangeRingGUI

    protected javax.swing.JToolBar getRangeRingGUI()

### modifyOMGraphicForEditRender

    protected void modifyOMGraphicForEditRender()

  A convenience method that gives an EditableOMGraphic a chance to modify the OMGraphic so it can be drawn quickly, by turning off labels, etc, right before the XORpainting happens. The OMGraphic should be configured so that the render method does the least amount of painting possible. Note that the DrawingAttributes for the OMGraphic have already been set to DrawingAttributes.DEFAULT (black line, clear fill).

  Overrides:
    `modifyOMGraphicForEditRender` in class `EditableOMGraphic`

### resetOMGraphicAfterEditRender

    protected void resetOMGraphicAfterEditRender()

  A convenience method that gives an EditableOMGraphic a chance to reset the OMGraphic so it can be rendered normally, after it has been modified for quick paints. The DrawingAttributes for the OMGraphic have already been reset to their normal settings, from the DrawingAttributes.DEFAULT settings that were used for the quick paint.

  Overrides:
    `resetOMGraphicAfterEditRender` in class `EditableOMGraphic`

### isSnapToInterval

    public boolean isSnapToInterval()

### setSnapToInterval

    public void setSnapToInterval(boolean sti)

### setRadius

    protected void setRadius(float radius)

  Description copied from class: `EditableOMCircle`
  To be overloaded if needed when setting circle's radius.

  Overrides:
    `setRadius` in class `EditableOMCircle`
  Parameters:
    `radius` - in DECIMAL_DEGREES

Copyright (C) BBNT Solutions LLC; See http://openmap.bbn.com/ for details