public class ViewManager extends java.lang.Object implements JMapEventDispatcher, ViewEventListener, java.awt.event.MouseListener, java.awt.event.MouseMotionListener
Modifier and Type | Field and Description |
---|---|
protected Tool |
currentTool |
protected View |
currentView |
protected LayerRefreshManager |
layerRefreshManager |
protected java.util.Vector<java.awt.event.MouseListener> |
mouseListeners |
protected java.util.Vector<java.awt.event.MouseMotionListener> |
mouseMotionListeners |
protected ViewManagerEventDispatcher |
viewEventDispatcher |
protected java.util.Vector<View> |
views |
Constructor and Description |
---|
ViewManager()
Constructs a new ViewManager object
|
Modifier and Type | Method and Description |
---|---|
void |
addMouseListener(java.awt.event.MouseListener listener)
Adds a new listener for mouse events.
|
void |
addMouseMotionListener(java.awt.event.MouseMotionListener listener)
Adds a new listener for mouse motion events.
|
void |
addView(View view)
Adds a new view to the list of views managed by this ViewManager object.
|
void |
addViewEventListener(ViewEventListener listener)
Adds a new listener for view events.
|
void |
addViewManagerEventListener(ViewManagerEventListener viewManagerEventListener)
Adds a new ViewManager listener.
|
void |
close()
Closes all views managed by this ViewManager object.
|
void |
dispatchEvent(JMapEvent event)
The
dispatchEvent method is used to dispatch synchronously
JMap events to all registered listeners. |
void |
fireViewActivated(View view)
Fires a new viewActivated event using this ViewManager as the source of the event
|
void |
fireViewActivated(View view,
java.lang.Object src)
Fires a new viewActivated event
|
void |
fireViewDeactivated(View view) |
View |
getActiveView()
Returns the current active view.
|
LayerManager |
getLayerManager()
Returns the layer manager of the active view.
|
View |
getView(java.lang.String viewName) |
int |
getViewCount()
Returns the number of views managed by the view manager.
|
View[] |
getViews()
Returns an array of views managed by this ViewManager object.
|
void |
mouseClicked(java.awt.event.MouseEvent e) |
void |
mouseDragged(java.awt.event.MouseEvent e) |
void |
mouseEntered(java.awt.event.MouseEvent e) |
void |
mouseExited(java.awt.event.MouseEvent e) |
void |
mouseMoved(java.awt.event.MouseEvent e) |
void |
mousePressed(java.awt.event.MouseEvent e) |
void |
mouseReleased(java.awt.event.MouseEvent e) |
void |
redraw(OrientedRectangle wcRegion,
int drawOptions)
Redraws all views.
|
void |
refresh()
Refreshes all views managed by this ViewManager object.
|
void |
removeAllViews()
Removes all views managed by this ViewManager object.
|
void |
removeMouseListener(java.awt.event.MouseListener listener)
Removes a listener for mouse events.
|
void |
removeMouseMotionListener(java.awt.event.MouseMotionListener listener)
Removes a listener for mouse motion events.
|
void |
removeView(View view)
Removes the specified view of the list managed by this ViewManager object.
|
void |
removeViewEventListener(ViewEventListener listener)
Removes a listener for view events.
|
void |
removeViewManagerEventListener(ViewManagerEventListener viewManagerEventListener)
Removes a ViewManager listener.
|
void |
setCurrentTool(Tool currentTool)
Sets the current tool to be used by all registered View objects.
|
void |
viewChangedOccurred(ViewChangedEvent event)
This method handles ViewChangedEvent
|
void |
viewPopupMenuShowing(ViewPopupMenuShowingEvent event)
This method handles ViewPopupMenuShowing
|
void |
viewReadyOccurred(ViewReadyEvent event)
This method handles ViewReadyOccurred
|
void |
viewRedrawOccurred(ViewRedrawEvent event)
This method handles viewRedrawOccurred
|
void |
viewRepaintOccurred(ViewRepaintEvent event)
This method handles viewRepaintOccurred
|
void |
viewStaticElementChanged(ViewStaticElementEvent event)
This method handles viewStaticElementChanged
|
void |
viewToolChangedOccurred(ViewToolChangedEvent event)
This method handles ViewToolChangedEvent
|
protected Tool currentTool
protected final ViewManagerEventDispatcher viewEventDispatcher
protected final java.util.Vector<java.awt.event.MouseListener> mouseListeners
protected final java.util.Vector<java.awt.event.MouseMotionListener> mouseMotionListeners
protected java.util.Vector<View> views
protected View currentView
protected LayerRefreshManager layerRefreshManager
public void dispatchEvent(JMapEvent event)
dispatchEvent
method is used to dispatch synchronously
JMap events to all registered listeners. The main use of the JMapEventDispatcher
interface is to dispatch events that were previously added to the JMap event queue.
ViewEvent
and ViewManagerEvent
will be accepted by this method. Any other
JMap event types will cause the view manager to throw an exception.dispatchEvent
in interface JMapEventDispatcher
event
- the event to be dispatched.java.lang.IllegalArgumentException
- will be thrown if the JMapEvent
instance
is no an instance of the ViewEvent
class.JMapEventQueue.push(JMapEvent, JMapEventDispatcher)
public void addView(View view)
view
- the view to be addedpublic View getView(java.lang.String viewName)
public void removeView(View view)
view
- the View object to remove from the list.public void removeAllViews()
public void addViewEventListener(ViewEventListener listener)
listener
- the corresponding ViewEventListenerpublic void removeViewEventListener(ViewEventListener listener)
listener
- the corresponding ViewEventListenerpublic void addMouseListener(java.awt.event.MouseListener listener)
listener
- the corresponding MouseListenerpublic void removeMouseListener(java.awt.event.MouseListener listener)
listener
- the corresponding MouseListenerpublic void addMouseMotionListener(java.awt.event.MouseMotionListener listener)
listener
- the corresponding MouseMotionListenerpublic void removeMouseMotionListener(java.awt.event.MouseMotionListener listener)
listener
- the corresponding MouseMotionListenerpublic int getViewCount()
public View[] getViews()
public View getActiveView()
null
if there's
no views in this view manager.public void refresh()
public void redraw(OrientedRectangle wcRegion, int drawOptions)
drawOptions
- a bit field value that specified parts to be drawn.wcRegion
- the region to redraw.public void close()
public void setCurrentTool(Tool currentTool)
currentTool
- the tool to be used.public void viewChangedOccurred(ViewChangedEvent event)
ViewEventListener
viewChangedOccurred
in interface ViewEventListener
event
- the corresponding ViewChangedEvent objectpublic void viewToolChangedOccurred(ViewToolChangedEvent event)
ViewEventListener
viewToolChangedOccurred
in interface ViewEventListener
event
- the corresponding ViewToolChangedEvent objectpublic void viewPopupMenuShowing(ViewPopupMenuShowingEvent event)
ViewEventListener
viewPopupMenuShowing
in interface ViewEventListener
event
- the corresponding ViewPopupMenuShowingEvent objectpublic void viewRedrawOccurred(ViewRedrawEvent event)
ViewEventListener
viewRedrawOccurred
in interface ViewEventListener
event
- the corresponding ViewRedrawEvent objectpublic void viewRepaintOccurred(ViewRepaintEvent event)
ViewEventListener
viewRepaintOccurred
in interface ViewEventListener
event
- the corresponding ViewRepaintEvent objectpublic void viewStaticElementChanged(ViewStaticElementEvent event)
ViewEventListener
viewStaticElementChanged
in interface ViewEventListener
event
- the corresponding ViewStaticElementEvent objectpublic void viewReadyOccurred(ViewReadyEvent event)
ViewEventListener
viewReadyOccurred
in interface ViewEventListener
event
- the corresponding ViewReadyEvent objectpublic void mouseClicked(java.awt.event.MouseEvent e)
mouseClicked
in interface java.awt.event.MouseListener
public void mouseEntered(java.awt.event.MouseEvent e)
mouseEntered
in interface java.awt.event.MouseListener
public void mouseExited(java.awt.event.MouseEvent e)
mouseExited
in interface java.awt.event.MouseListener
public void mousePressed(java.awt.event.MouseEvent e)
mousePressed
in interface java.awt.event.MouseListener
public void mouseReleased(java.awt.event.MouseEvent e)
mouseReleased
in interface java.awt.event.MouseListener
public void mouseDragged(java.awt.event.MouseEvent e)
mouseDragged
in interface java.awt.event.MouseMotionListener
public void mouseMoved(java.awt.event.MouseEvent e)
mouseMoved
in interface java.awt.event.MouseMotionListener
public LayerManager getLayerManager()
null
if there's no view in this view manager.public void addViewManagerEventListener(ViewManagerEventListener viewManagerEventListener)
viewManagerEventListener
- the view manager listener to addViewManagerEventListener
public void removeViewManagerEventListener(ViewManagerEventListener viewManagerEventListener)
viewManagerEventListener
- the view manager listener to remove
public void fireViewActivated(View view)
view
- activated viewpublic void fireViewActivated(View view, java.lang.Object src)
view
- activated viewsrc
- the source of the eventpublic void fireViewDeactivated(View view)