public class BaseMapTool extends Object implements MapTool, ActionListener, IBehavior, ToolListener, CircleListener, PanListener, PointListener, PolylineListener, RectangleListener
| Modifier and Type | Field and Description |
|---|---|
protected IBehavior |
behavior |
protected boolean |
isCancelDrawing |
protected ToolListener |
listener |
protected int |
type |
ACTION_AREA, ACTION_MEASURE, ACTION_PAN, ACTION_SELECTION, ACTION_ZOOM, EVENT_MEASURE, EVENT_MOVE, EVENT_POINT, EVENT_POINTDOUBLECLICKED, EVENT_POINTFIXED, EVENT_POINTS, EVENT_POLYLINEFINISHED, EVENT_RECTANGLE, TYPE_CIRCLE, TYPE_MOUSEDRAGGED, TYPE_MOUSEMOVENENT, TYPE_MOVE, TYPE_POINT, TYPE_POLYGON, TYPE_POLYLINE, TYPE_RECTANGLE, TYPE_UNKNOW| Constructor and Description |
|---|
BaseMapTool(int type) |
BaseMapTool(ToolListener listener) |
| Modifier and Type | Method and Description |
|---|---|
void |
actionPerformed(ActionEvent arg0) |
protected void |
callActionPerformed(Object event,
int type,
String actionCommand) |
boolean |
cancelDrawing()
Determines if the drawing process that this tool executes on the
MapControl
instance could be canceled or not. |
void |
circle(MeasureEvent event)
Called when user defines a circular area.
|
Image |
getImageCursor()
Gets the mouse cursor of the tool listener associated to this behavior.
|
ToolListener |
getListener()
Gets the
ToolListener used by this behavior to perform actions on the
associated MapControl object. |
MapControl |
getMapControl()
Returns the reference to the
MapControl object that this behavior uses. |
String |
getName() |
int |
getType() |
void |
mouseClicked(MouseEvent e) |
void |
mouseDragged(MouseEvent e) |
void |
mouseEntered(MouseEvent e) |
void |
mouseExited(MouseEvent e) |
void |
mouseMoved(MouseEvent e) |
void |
mousePressed(MouseEvent e) |
void |
mouseReleased(MouseEvent e) |
void |
mouseWheelMoved(MouseWheelEvent e) |
void |
move(MoveEvent event)
Called when user drags the mouse on the view.
|
void |
paintComponent(MapControlDrawer renderer)
Method executed in real-time, when user is working with a tool on the associated
MapControl
object, repainting the MapControl's image. |
void |
point(PointEvent event)
Called when one click is pressed on the associated
MapControl, or the location of the cursor
of the mouse has changed on it. |
void |
pointDoubleClick(PointEvent event)
Called when a double click is pressed on the associated
MapControl. |
void |
pointFixed(MeasureEvent event)
Called when user executes a mouse click and selects a vertex of the polyline.
|
void |
points(MeasureEvent event)
Called when user moves the mouse after selecting a vertex of the polyline.
|
void |
polylineFinished(MeasureEvent event)
Called when user executes a double click with the mouse, finishing the
drawn of the polyline.
|
void |
rectangle(EnvelopeEvent event)
Called when user executes a double click with the mouse, finishing the
drawn of the rectangle.
|
void |
setMapControl(MapControl mc)
Associates this behavior to a
MapControl object. |
protected void |
setName(String name) |
void |
setType(int type) |
protected int type
protected ToolListener listener
protected IBehavior behavior
protected boolean isCancelDrawing
public BaseMapTool(int type)
public BaseMapTool(ToolListener listener)
protected void setName(String name)
public void actionPerformed(ActionEvent arg0)
actionPerformed in interface ActionListenerpublic Image getImageCursor()
IBehaviorGets the mouse cursor of the tool listener associated to this behavior.
getImageCursor in interface IBehaviorgetImageCursor in interface ToolListenergetImageCursor in interface MapToolpublic boolean cancelDrawing()
ToolListenerDetermines if the drawing process that this tool executes on the MapControl
instance could be canceled or not.
cancelDrawing in interface ToolListenertrue if is cancellable; otherwise returns falsepublic void setType(int type)
public MapControl getMapControl()
IBehaviorReturns the reference to the MapControl object that this behavior uses.
getMapControl in interface IBehaviorgetMapControl in interface MapToolMapControl object used this behaviorIBehavior.setMapControl(MapControl)public void setMapControl(MapControl mc)
IBehaviorAssociates this behavior to a MapControl object.
setMapControl in interface IBehaviormc - the MapControl object to associateIBehavior.getMapControl()public ToolListener getListener()
IBehaviorGets the ToolListener used by this behavior to perform actions on the
associated MapControl object.
getListener in interface IBehaviorToolListener used by this behaviorprotected void callActionPerformed(Object event, int type, String actionCommand)
public void rectangle(EnvelopeEvent event) throws BehaviorException
RectangleListenerCalled when user executes a double click with the mouse, finishing the drawn of the rectangle.
All features of the active and vector layers of the associated MapControl object that
their area intersect with the polygonal area defined in the event, will be selected.
rectangle in interface RectangleListenerevent - mouse event and information about the rectangle definedBehaviorException - will be thrown when fails the process of this toolpublic void points(MeasureEvent event) throws BehaviorException
PolylineListenerCalled when user moves the mouse after selecting a vertex of the polyline.
Each kind of polyline listener calculates different information with the data of the
MeasureEvent, according its nature.
points in interface PolylineListenerevent - information about the mouse event, and geometry data of the polylineBehaviorException - will be thrown when fails the process of this toolpublic void pointFixed(MeasureEvent event) throws BehaviorException
PolylineListenerCalled when user executes a mouse click and selects a vertex of the polyline.
pointFixed in interface PolylineListenerevent - information about the mouse event, and geometry data of the polylineBehaviorException - will be thrown when fails the process of this toolpublic void polylineFinished(MeasureEvent event) throws BehaviorException
PolylineListenerCalled when user executes a double click with the mouse, finishing the drawn of the polyline.
All features of the active and vector layers of the associated MapControl object that
their area intersect with the polygonal area defined in the event, will be selected.
polylineFinished in interface PolylineListenerevent - information about the mouse event, and geometry data of the polylineBehaviorException - will be thrown when fails the process of this toolpublic void point(PointEvent event) throws BehaviorException
PointListenerCalled when one click is pressed on the associated MapControl, or the location of the cursor
of the mouse has changed on it.
point in interface PointListenerevent - mouse event with the coordinates of the point selected on the associated MapControlBehaviorException - will be thrown when fails the process of this toolpublic void pointDoubleClick(PointEvent event) throws BehaviorException
PointListenerCalled when a double click is pressed on the associated MapControl.
pointDoubleClick in interface PointListenerevent - mouse event and the coordinates of the point selected on the associated MapControlBehaviorException - will be thrown when fails the process of this toolpublic void move(MoveEvent event) throws BehaviorException
PanListenerCalled when user drags the mouse on the view.
Updates the extent coordinates according to the direction of the movement between the initial and final points of line determined by the move of the mouse.
move in interface PanListenerevent - mouse event information about the initial and final positions of the movementBehaviorException - will be thrown when fails the process of this toolpublic void circle(MeasureEvent event) throws BehaviorException
CircleListenerCalled when user defines a circular area.
circle in interface CircleListenerevent - information about the mouse event, and geometry data related with the operation doneBehaviorException - will be thrown when fails the process of this toolpublic void paintComponent(MapControlDrawer renderer)
IBehaviorMethod executed in real-time, when user is working with a tool on the associated MapControl
object, repainting the MapControl's image.
Returns immediately in all cases, even if the complete image has not yet been loaded.
This method will be implemented according to the specific nature of each behavior, and its extra and particular features.
paintComponent in interface IBehaviorGraphics.drawImage(java.awt.Image, int, int, java.awt.image.ImageObserver)public void mouseClicked(MouseEvent e) throws BehaviorException
mouseClicked in interface IBehaviorBehaviorException - any exception processing the action associated to a mouse clicked event, by the IBehavior objectMouseListener.mouseClicked(java.awt.event.MouseEvent)public void mouseEntered(MouseEvent e) throws BehaviorException
mouseEntered in interface IBehaviorBehaviorException - any exception processing the action associated to a mouse entered event, by the IBehavior objectMouseListener.mouseEntered(java.awt.event.MouseEvent)public void mouseExited(MouseEvent e) throws BehaviorException
mouseExited in interface IBehaviorBehaviorException - any exception processing the action associated to a mouse exited event, by the IBehavior objectMouseListener.mouseExited(java.awt.event.MouseEvent)public void mousePressed(MouseEvent e) throws BehaviorException
mousePressed in interface IBehaviorBehaviorException - any exception processing the action associated to a mouse pressed event, by the IBehavior objectMouseListener.mousePressed(java.awt.event.MouseEvent)public void mouseReleased(MouseEvent e) throws BehaviorException
mouseReleased in interface IBehaviorBehaviorException - any exception processing the action associated to a mouse released event, by the IBehavior objectMouseListener.mouseReleased(java.awt.event.MouseEvent)public void mouseDragged(MouseEvent e) throws BehaviorException
mouseDragged in interface IBehaviorBehaviorException - any exception processing the action associated to a mouse dragged event, by the IBehavior objectMouseMotionListener.mouseDragged(java.awt.event.MouseEvent)public void mouseMoved(MouseEvent e) throws BehaviorException
mouseMoved in interface IBehaviorBehaviorException - any exception processing the action associated to a mouse moved event, by the IBehavior objectMouseMotionListener.mouseMoved(java.awt.event.MouseEvent)public void mouseWheelMoved(MouseWheelEvent e) throws BehaviorException
mouseWheelMoved in interface IBehaviorBehaviorException - any exception processing the action associated to a mouse wheel event, by the IBehavior objectMouseWheelListener.mouseWheelMoved(java.awt.event.MouseWheelEvent)