/** Handles mouse up events. The events are forwarded to the current tracker. */
 public void mouseUp(MouseEvent e, int x, int y) {
   view().unfreezeView();
   if (fChild != null) { // JDK1.1 doesn't guarantee mouseDown, mouseDrag, mouseUp
     fChild.mouseUp(e, x, y);
     fChild.deactivate();
     fChild = null;
   }
 }
 private void setTool(Tool t, String name) {
   if (fTool != null) {
     fTool.deactivate();
   }
   fTool = t;
   if (fTool != null) {
     showStatus(name);
     fTool.activate();
   }
 }
 protected void setTracker(Tool newTracker) {
   if (tracker != null) {
     tracker.deactivate(getEditor());
     tracker.removeToolListener(this);
   }
   tracker = newTracker;
   if (tracker != null) {
     tracker.activate(getEditor());
     tracker.addToolListener(this);
   }
 }
  public void toolDone(ToolEvent event) {
    // Empty
    Tool newTracker = getSelectAreaTracker();

    if (newTracker != null) {
      if (tracker != null) {
        tracker.deactivate(getEditor());
        tracker.removeToolListener(this);
      }
      tracker = newTracker;
      tracker.activate(getEditor());
      tracker.addToolListener(this);
    }
    fireToolDone();
  }
 public void deactivate(DrawingEditor editor) {
   super.deactivate(editor);
   tracker.deactivate(editor);
 }