com.mxgraph.swing.handler

## Class mxEdgeHandler

- java.lang.Object
- - com.mxgraph.swing.handler.mxCellHandler
  - - com.mxgraph.swing.handler.mxEdgeHandler

- Direct Known Subclasses:
    mxElbowEdgeHandler

      public class mxEdgeHandler
      extends mxCellHandler

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `protected boolean` | `cloneEnabled`
    `protected boolean` | `constrainedEvent` Workaround for shift-key-state not correct in mouseReleased.
    `protected java.lang.String` | `error`
    `protected boolean` | `gridEnabledEvent` Workaround for alt-key-state not correct in mouseReleased.
    `protected mxCellMarker` | `marker`
    `protected java.awt.Point[]` | `p`

    - ### Fields inherited from class com.mxgraph.swing.handler.mxCellHandler

      `bounds, first, graphComponent, handles, handlesVisible, index, preview, state`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `mxEdgeHandler(mxGraphComponent graphComponent, mxCellState state)`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `protected void` | `connect(java.lang.Object edge, java.lang.Object terminal, boolean isSource, boolean isClone)` Connects the given edge to the given source or target terminal.
    `protected mxPoint` | `convertPoint(mxPoint point, boolean gridEnabled)`
    `protected java.awt.Rectangle` | `createHandle(java.awt.Point center)`
    `protected java.awt.Rectangle` | `createHandle(java.awt.Point center, int size)`
    `protected java.awt.Rectangle[]` | `createHandles()` Creates the rectangles that define the handles.
    `protected java.awt.Point[]` | `createPoints(mxCellState s)`
    `protected javax.swing.JComponent` | `createPreview()` Creates the preview for this handler.
    `protected java.awt.Cursor` | `getCursor(java.awt.event.MouseEvent e, int index)` Returns the cursor for the given event and handle.
    `protected java.awt.Color` | `getHandleFillColor(int index)` Returns the color to be used to fill the handle at the specified index.
    `int` | `getIndexAt(int x, int y)` Returns the index of the handle at the given location.
    `protected java.awt.Rectangle` | `getPreviewBounds()`
    `java.awt.Color` | `getSelectionColor()` Returns the color used to draw the selection border.
    `java.awt.Stroke` | `getSelectionStroke()` Returns the stroke used to draw the selection border.
    `protected boolean` | `isCellBendable()`
    `boolean` | `isCloneEnabled()`
    `protected boolean` | `isFlipEvent(java.awt.event.MouseEvent e)`
    `protected boolean` | `isHandleVisible(int index)` Hides the middle handle if the edge is not bendable.
    `protected boolean` | `isIgnoredEvent(java.awt.event.MouseEvent e)` No flip event is ignored.
    `boolean` | `isSource(int index)` Returns true if the current index is 0.
    `boolean` | `isTarget(int index)` Returns true if the current index is the last index.
    `void` | `mouseDragged(java.awt.event.MouseEvent e)` Processes the given event.
    `void` | `mousePressed(java.awt.event.MouseEvent e)` Processes the given event.
    `void` | `mouseReleased(java.awt.event.MouseEvent e)` Processes the given event.
    `protected void` | `moveLabelTo(mxCellState edgeState, double x, double y)` Moves the label to the given position.
    `protected void` | `movePoint(java.lang.Object edge, int pointIndex, mxPoint point)` Moves the edges control point with the given index to the given point.
    `void` | `paint(java.awt.Graphics g)` Paints the visible handles of this handler.
    `void` | `reset()` Extends the implementation to reset the current error and marker.
    `void` | `setCloneEnabled(boolean cloneEnabled)`
    `java.lang.String` | `validateConnection(java.lang.Object source, java.lang.Object target)` Returns the error message or an empty string if the connection for the given source target pair is not valid.

    - ### Methods inherited from class com.mxgraph.swing.handler.mxCellHandler

      `destroy, getBounds, getGraphComponent, getHandleBorderColor, getHandleCount, getIndex, getState, getToolTipText, isActive, isHandleEnabled, isHandlesVisible, isLabel, isLabelMovable, mouseMoved, refresh, setHandlesVisible, start`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Field Detail

    - #### cloneEnabled

          protected boolean cloneEnabled

    - #### p

          protected java.awt.Point[] p

    - #### error

          protected transient java.lang.String error

    - #### gridEnabledEvent

          protected transient boolean gridEnabledEvent

      Workaround for alt-key-state not correct in mouseReleased.

    - #### constrainedEvent

          protected transient boolean constrainedEvent

      Workaround for shift-key-state not correct in mouseReleased.

    - #### marker

          protected mxCellMarker marker

  - ### Constructor Detail

    - #### mxEdgeHandler

          public mxEdgeHandler(mxGraphComponent graphComponent,
                       mxCellState state)

      Parameters:
        `graphComponent` -
        `state` -

  - ### Method Detail

    - #### setCloneEnabled

          public void setCloneEnabled(boolean cloneEnabled)

    - #### isCloneEnabled

          public boolean isCloneEnabled()

    - #### isIgnoredEvent

          protected boolean isIgnoredEvent(java.awt.event.MouseEvent e)

      No flip event is ignored.
      Overrides:
        `isIgnoredEvent` in class `mxCellHandler`

    - #### isFlipEvent

          protected boolean isFlipEvent(java.awt.event.MouseEvent e)

    - #### validateConnection

          public java.lang.String validateConnection(java.lang.Object source,
                                            java.lang.Object target)

      Returns the error message or an empty string if the connection for the given source target pair is not valid. Otherwise it returns null.

    - #### isSource

          public boolean isSource(int index)

      Returns true if the current index is 0.

    - #### isTarget

          public boolean isTarget(int index)

      Returns true if the current index is the last index.

    - #### isHandleVisible

          protected boolean isHandleVisible(int index)

      Hides the middle handle if the edge is not bendable.
      Overrides:
        `isHandleVisible` in class `mxCellHandler`

    - #### isCellBendable

          protected boolean isCellBendable()

    - #### createHandles

          protected java.awt.Rectangle[] createHandles()

      Description copied from class: `mxCellHandler`
      Creates the rectangles that define the handles.
      Overrides:
        `createHandles` in class `mxCellHandler`

    - #### getHandleFillColor

          protected java.awt.Color getHandleFillColor(int index)

      Description copied from class: `mxCellHandler`
      Returns the color to be used to fill the handle at the specified index.
      Overrides:
        `getHandleFillColor` in class `mxCellHandler`

    - #### getIndexAt

          public int getIndexAt(int x,
                       int y)

      Description copied from class: `mxCellHandler`
      Returns the index of the handle at the given location.
      Overrides:
        `getIndexAt` in class `mxCellHandler`
      Parameters:
        `x` -
        `y` -
      Returns:
        Returns the inde of the handle at the given location.

    - #### createHandle

          protected java.awt.Rectangle createHandle(java.awt.Point center)

    - #### createHandle

          protected java.awt.Rectangle createHandle(java.awt.Point center,
                                        int size)

    - #### createPoints

          protected java.awt.Point[] createPoints(mxCellState s)

    - #### createPreview

          protected javax.swing.JComponent createPreview()

      Description copied from class: `mxCellHandler`
      Creates the preview for this handler.
      Overrides:
        `createPreview` in class `mxCellHandler`

    - #### convertPoint

          protected mxPoint convertPoint(mxPoint point,
                             boolean gridEnabled)

      Parameters:
        `point` -
        `gridEnabled` -
      Returns:
        Returns the scaled, translated and grid-aligned point.

    - #### getPreviewBounds

          protected java.awt.Rectangle getPreviewBounds()

      Returns:
        Returns the bounds of the preview.

    - #### mousePressed

          public void mousePressed(java.awt.event.MouseEvent e)

      Description copied from class: `mxCellHandler`
      Processes the given event.
      Overrides:
        `mousePressed` in class `mxCellHandler`

    - #### mouseDragged

          public void mouseDragged(java.awt.event.MouseEvent e)

      Description copied from class: `mxCellHandler`
      Processes the given event.
      Overrides:
        `mouseDragged` in class `mxCellHandler`

    - #### mouseReleased

          public void mouseReleased(java.awt.event.MouseEvent e)

      Description copied from class: `mxCellHandler`
      Processes the given event.
      Overrides:
        `mouseReleased` in class `mxCellHandler`

    - #### reset

          public void reset()

      Extends the implementation to reset the current error and marker.
      Overrides:
        `reset` in class `mxCellHandler`

    - #### movePoint

          protected void movePoint(java.lang.Object edge,
                       int pointIndex,
                       mxPoint point)

      Moves the edges control point with the given index to the given point.

    - #### connect

          protected void connect(java.lang.Object edge,
                     java.lang.Object terminal,
                     boolean isSource,
                     boolean isClone)

      Connects the given edge to the given source or target terminal.
      Parameters:
        `edge` -
        `terminal` -
        `isSource` -

    - #### moveLabelTo

          protected void moveLabelTo(mxCellState edgeState,
                         double x,
                         double y)

      Moves the label to the given position.

    - #### getCursor

          protected java.awt.Cursor getCursor(java.awt.event.MouseEvent e,
                                  int index)

      Description copied from class: `mxCellHandler`
      Returns the cursor for the given event and handle.
      Overrides:
        `getCursor` in class `mxCellHandler`

    - #### getSelectionColor

          public java.awt.Color getSelectionColor()

      Description copied from class: `mxCellHandler`
      Returns the color used to draw the selection border. This implementation returns null.
      Overrides:
        `getSelectionColor` in class `mxCellHandler`

    - #### getSelectionStroke

          public java.awt.Stroke getSelectionStroke()

      Description copied from class: `mxCellHandler`
      Returns the stroke used to draw the selection border. This implementation returns null.
      Overrides:
        `getSelectionStroke` in class `mxCellHandler`

    - #### paint

          public void paint(java.awt.Graphics g)

      Description copied from class: `mxCellHandler`
      Paints the visible handles of this handler.
      Overrides:
        `paint` in class `mxCellHandler`

Copyright (c) 2010 Gaudenz Alder. All rights reserved.