// ********************************************************************** // // <copyright> // // BBN Technologies // 10 Moulton Street // Cambridge, MA 02138 // (617) 873-8000 // // Copyright (C) BBNT Solutions LLC. All rights reserved. // // </copyright> // ********************************************************************** // // $Source: /cvs/distapps/openmap/src/openmap/com/bbn/openmap/layer/editor/EditorTool.java,v $ // $RCSfile: EditorTool.java,v $ // $Revision: 1.3 $ // $Date: 2004/10/14 18:05:55 $ // $Author: dietrick $ // // ********************************************************************** package com.bbn.openmap.layer.editor; import java.awt.Container; import com.bbn.openmap.LightMapHandlerChild; import com.bbn.openmap.omGraphics.OMAction; import com.bbn.openmap.omGraphics.OMGraphic; import com.bbn.openmap.omGraphics.event.MapMouseInterpreter; /** * An EditorTool is a component that provides specific functionality to the * EditorLayer. The EditorTool is responsible for modifying or creating a set of * OMGraphics in a certain way, where the OMGraphics actually represent a * specific set of objects on the map, and the actions on the OMGraphics need to * be controlled. */ public interface EditorTool extends MapMouseInterpreter, LightMapHandlerChild { /** * Method where the EditorLayer lets the tool know that the editing function * has come full circle, so the user interface can be adjusted. */ public void drawingComplete(OMGraphic omg, OMAction action); /** * A method that is checked by the EditorLayer to see if the EditorTool * wants to receive mouse events. */ public boolean wantsEvents(); /** * A method that lets the EditorTool know whether its interface should be * visible. Usually, called when the layer is turned on or off. */ public void setVisible(boolean value); /** * A method that lets the EditorTool respond to queries wondering whether * its interface is visible. */ public boolean isVisible(); /** * The method that allows an EditorTool provide it's GUI. */ public Container getFace(); /** * Called when the EditorLayer is removed from application. */ public void dispose(); }