# Class HTMLEditorKit.LinkController

java.lang.Object
java.awt.event.MouseAdapter
javax.swing.text.html.HTMLEditorKit.LinkController

All Implemented Interfaces:
  `MouseListener, MouseMotionListener, MouseWheelListener, Serializable, EventListener`

Enclosing class:
  `HTMLEditorKit`

public static class HTMLEditorKit.LinkController extends MouseAdapter implements MouseMotionListener, Serializable
Class to watch the associated component and fire hyperlink events on it when appropriate.

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `LinkController()`
  Constructs a `LinkController`.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `protected void`
  `activateLink(int pos, JEditorPane editor)`
  Calls linkActivated on the associated JEditorPane if the given position represents a link.
  `void`
  `mouseClicked(MouseEvent e)`
  Called for a mouse click event.

  ### Methods declared in class MouseAdapter

  `mouseDragged, mouseEntered, mouseExited, mouseMoved, mousePressed, mouseReleased, mouseWheelMoved`
  Modifier and Type
  Method
  Description
  `void`
  `mouseDragged(MouseEvent e)`
  Invoked when a mouse button is pressed on a component and then dragged.
  `void`
  `mouseEntered(MouseEvent e)`
  Invoked when the mouse enters a component.
  `void`
  `mouseExited(MouseEvent e)`
  Invoked when the mouse exits a component.
  `void`
  `mouseMoved(MouseEvent e)`
  Invoked when the mouse cursor has been moved onto a component but no buttons have been pushed.
  `void`
  `mousePressed(MouseEvent e)`
  Invoked when a mouse button has been pressed on a component.
  `void`
  `mouseReleased(MouseEvent e)`
  Invoked when a mouse button has been released on a component.
  `void`
  `mouseWheelMoved(MouseWheelEvent e)`
  Invoked when the mouse wheel is rotated.

  ### Methods declared in class Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`
  Modifier and Type
  Method
  Description
  `protected Object`
  `clone()`
  Creates and returns a copy of this object.
  `boolean`
  `equals(Object obj)`
  Indicates whether some other object is "equal to" this one.
  `protected void`
  `finalize()`
  Deprecated, for removal: This API element is subject to removal in a future version.
  Finalization is deprecated and subject to removal in a future release.
  `final Class<?>`
  `getClass()`
  Returns the runtime class of this `Object`.
  `int`
  `hashCode()`
  Returns a hash code value for this object.
  `final void`
  `notify()`
  Wakes up a single thread that is waiting on this object's monitor.
  `final void`
  `notifyAll()`
  Wakes up all threads that are waiting on this object's monitor.
  `String`
  `toString()`
  Returns a string representation of the object.
  `final void`
  `wait()`
  Causes the current thread to wait until it is awakened, typically by being notified or interrupted.
  `final void`
  `wait(long timeoutMillis)`
  Causes the current thread to wait until it is awakened, typically by being notified or interrupted, or until a certain amount of real time has elapsed.
  `final void`
  `wait(long timeoutMillis, int nanos)`
  Causes the current thread to wait until it is awakened, typically by being notified or interrupted, or until a certain amount of real time has elapsed.

- ## Constructor Details

  - ### LinkController

    public LinkController()
    Constructs a `LinkController`.

- ## Method Details

  - ### mouseClicked

    public void mouseClicked(MouseEvent e)
    Called for a mouse click event. If the component is read-only (ie a browser) then the clicked event is used to drive an attempt to follow the reference specified by a link.
    Specified by:
      `mouseClicked` in interface `MouseListener`
    Parameters:
      `e` - the mouse event
    See Also:
      - `MouseListener.mouseClicked(MouseEvent)`

  - ### activateLink

    protected void activateLink(int pos, JEditorPane editor)
    Calls linkActivated on the associated JEditorPane if the given position represents a link.

    This is implemented to forward to the method with the same name, but with the following args both == -1.

    Parameters:
      `pos` - the position
      `editor` - the editor pane