Class SimpleHandleTracker

All Implemented Interfaces:
HandleTracker, Tracker, Disableable

public class SimpleHandleTracker extends AbstractTracker implements HandleTracker
SimpleHandleTracker implements interactions with the handles of a Figure.

The SimpleHandleTracker handles one of the three states of the SelectionTool. Iz comes into action, when the user presses the mouse button over a Figure.

Design pattern:
Name: Chain of Responsibility.
Role: Handler.
Partners: SelectionTool as Handler, SelectAreaTracker as Handler, DragTracker as Handler, HandleTracker as Handler.

Design pattern:
Name: State.
Role: State.
Partners: SelectAreaTracker as State, DragTracker as State, SelectionTool as Context.

Author:
Werner Randelshofer
See Also:
  • Constructor Details

    • SimpleHandleTracker

      public SimpleHandleTracker()
  • Method Details

    • setHandles

      public void setHandles(Handle handle, Collection<Figure> compatibleFigures)
      Specified by:
      setHandles in interface HandleTracker
    • trackMousePressed

      public void trackMousePressed(javafx.scene.input.MouseEvent event, DrawingView dv)
      Description copied from interface: Tracker
      Handle input event forwarded from the parent Tool.
      Specified by:
      trackMousePressed in interface Tracker
      Parameters:
      event - an event
      dv - a view
    • trackMouseClicked

      public void trackMouseClicked(javafx.scene.input.MouseEvent event, DrawingView dv)
      Description copied from interface: Tracker
      Handle input event forwarded from the parent Tool.
      Specified by:
      trackMouseClicked in interface Tracker
      Parameters:
      event - an event
      dv - a view
    • trackMouseReleased

      public void trackMouseReleased(javafx.scene.input.MouseEvent event, DrawingView dv)
      Description copied from interface: Tracker
      Handle input event forwarded from the parent Tool.
      Specified by:
      trackMouseReleased in interface Tracker
      Parameters:
      event - an event
      dv - a view
    • trackMouseDragged

      public void trackMouseDragged(javafx.scene.input.MouseEvent event, DrawingView dv)
      Description copied from interface: Tracker
      Handle input event forwarded from the parent Tool.
      Specified by:
      trackMouseDragged in interface Tracker
      Parameters:
      event - an event
      dv - a view
    • trackKeyPressed

      public void trackKeyPressed(javafx.scene.input.KeyEvent event, DrawingView view)
      Specified by:
      trackKeyPressed in interface Tracker
    • trackKeyReleased

      public void trackKeyReleased(javafx.scene.input.KeyEvent event, DrawingView view)
      Specified by:
      trackKeyReleased in interface Tracker
    • trackKeyTyped

      public void trackKeyTyped(javafx.scene.input.KeyEvent event, DrawingView view)
      Specified by:
      trackKeyTyped in interface Tracker