## com.bbn.openmap.omGraphics
Class EditableOMDistance

    java.lang.Object
      com.bbn.openmap.event.MapMouseAdapter
          com.bbn.openmap.omGraphics.EditableOMGraphic
              com.bbn.openmap.omGraphics.EditableOMAbstractLine
                  com.bbn.openmap.omGraphics.EditableOMPoly
                      com.bbn.openmap.omGraphics.EditableOMDistance

All Implemented Interfaces:
  MapMouseListener

public class EditableOMDistance
extends EditableOMPoly

The EditableOMDistance encompasses an OMDistance, providing methods for modifying or creating it.

Field Summary

Fields inherited from class com.bbn.openmap.omGraphics.EditableOMPoly
`gpm, gpo, manualEnclosed, OFFSET_POINT_INDEX, poly, polyGrabPoints`

Fields inherited from class com.bbn.openmap.omGraphics.EditableOMAbstractLine
`arrowheadMenu, i18n`

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
`EditableOMDistance()` Create the EditableOMDistance, setting the state machine to create the poly off of the gestures.
`EditableOMDistance(GraphicAttributes ga)` Create an EditableOMDistance with the polyType and renderType parameters in the GraphicAttributes object.
`EditableOMDistance(OMDistance omp)` Create the EditableOMDistance with an OMDistance already defined, ready for editing.

Method Summary
`void` `createGraphic(GraphicAttributes ga)` Create and set the graphic within the state machine.
`OMGraphic` `createGraphic(int renderType, int lineType)` Extendable method to create specific subclasses of OMDistances.
`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.

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

`addMovingPoint, addPoint, addPoint, addPoint, addPoint, addPolyGrabPointsToOGP, assertGrabPoints, attachToMovingGrabPoint, createGrabPoint, deletePoint, deletePoint, detachFromMovingGrabPoint, enablePolygonButton, enablePolygonEditButtons, enclose, evaluateEnclosed, generate, getGrabPoint, getGrabPoints, getGraphic, getGUI, getImageURL, getMovingPoint, getPolyGUI, getPolyGUI, init, isEnclosed, move, regenerate, render, setEnclosed, setGrabPoint, setGrabPoints, setGrabPoints, setGrabPoints, setGraphic, setMovingPoint, syncEnclosed, unsyncEnclosed, whichGrabPoint`

Methods inherited from class com.bbn.openmap.omGraphics.EditableOMAbstractLine
`createArrowIcon, getArrowHeadMenu`

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

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

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

Constructor Detail

### EditableOMDistance

    public EditableOMDistance()

  Create the EditableOMDistance, setting the state machine to create the poly off of the gestures.

### EditableOMDistance

    public EditableOMDistance(GraphicAttributes ga)

  Create an EditableOMDistance with the polyType and renderType parameters in the GraphicAttributes object.

### EditableOMDistance

    public EditableOMDistance(OMDistance omp)

  Create the EditableOMDistance with an OMDistance already defined, ready for editing.

Parameters:
  `omp` - OMDistance 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 poly to create.

  Overrides:
    `createGraphic` in class `EditableOMPoly`

### createGraphic

    public OMGraphic createGraphic(int renderType,
                                   int lineType)

  Extendable method to create specific subclasses of OMDistances.

  Overrides:
    `createGraphic` in class `EditableOMPoly`

### 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`

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