objectdraw
Class WindowController

java.lang.Object
  extended by java.awt.Component
      extended by java.awt.Container
          extended by java.awt.Panel
              extended by java.applet.Applet
                  extended by javax.swing.JApplet
                      extended by objectdraw.Controller
                          extended by objectdraw.WindowController
All Implemented Interfaces:
ImageObserver, MenuContainer, Serializable, Accessible, RootPaneContainer
Direct Known Subclasses:
FrameWindowController

public class WindowController
extends Controller

WindowController is a Swing compatible class designed to be extended to produce programs that handle simple mouse events and draw graphics in a single window on the screen. In a program written by extending this class, the instructions to be executed in response to various mouse events are placed in the bodies of the methods onMousePress, onMouseRelease, onMouseClick, onMouseMove, onMouseDrag, onMouseEnter, and onMouseExit. Each of these methods is passed a Location describing the location of the mouse at the time of the event. As in the Controller class, initialization code can be placed in the body of the definition of a begin method. Throughout the definition of a class that extends WindowController, the name "canvas" can be used to refer to the program's DrawingCanvas.

Version:
1.1.2 released September 2005
See Also:
Controller, FrameWindowController, AWTWindowController, Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class javax.swing.JApplet
JApplet.AccessibleJApplet
 
Nested classes/interfaces inherited from class java.applet.Applet
Applet.AccessibleApplet
 
Nested classes/interfaces inherited from class java.awt.Panel
Panel.AccessibleAWTPanel
 
Nested classes/interfaces inherited from class java.awt.Container
Container.AccessibleAWTContainer
 
Nested classes/interfaces inherited from class java.awt.Component
Component.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategy
 
Field Summary
protected  DrawingCanvas canvas
          The canvas that the program creates automatically.
 
Fields inherited from class objectdraw.Controller
DEFAULT_WINDOW_HEIGHT, DEFAULT_WINDOW_WIDTH
 
Fields inherited from class javax.swing.JApplet
accessibleContext, rootPane, rootPaneCheckingEnabled
 
Fields inherited from class java.awt.Component
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
 
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
 
Constructor Summary
WindowController()
           
 
Method Summary
 void begin()
          Programs written by extending Controller can perform any required initialization by defining a begin method containing the code to perform the initialization steps.
protected  void helpinit()
          Initializes the program by creating a window containing a canvas and invoking the user supplied begin method.
 void onMouseClick(Location point)
          Invoked when the mouse has been clicked on the WindowController's canvas.
 void onMouseDrag(Location point)
          Invoked when a mouse button is pressed on the canvas and then dragged.
 void onMouseEnter(Location point)
          Invoked when the mouse enters the WindowController's canvas.
 void onMouseExit(Location point)
          Invoked when the mouse exits the the WindowController's canvas.
 void onMouseMove(Location point)
          Invoked when the mouse button has been moved on the canvas (with no buttons down).
 void onMousePress(Location point)
          Invoked when a mouse button has been pressed on the WindowController's canvas.
 void onMouseRelease(Location point)
          Invoked when a mouse button has been released on the WindowController's canvas.
 
Methods inherited from class objectdraw.Controller
destroy, getAudio, getImage, getVersion, init, placeInFrame, resize, setup, start, startController, startController, stop
 
Methods inherited from class javax.swing.JApplet
addImpl, createRootPane, getAccessibleContext, getContentPane, getGlassPane, getGraphics, getJMenuBar, getLayeredPane, getRootPane, getTransferHandler, isRootPaneCheckingEnabled, paramString, remove, repaint, setContentPane, setGlassPane, setJMenuBar, setLayeredPane, setLayout, setRootPane, setRootPaneCheckingEnabled, setTransferHandler, update
 
Methods inherited from class java.applet.Applet
getAppletContext, getAppletInfo, getAudioClip, getAudioClip, getCodeBase, getDocumentBase, getImage, getImage, getLocale, getParameter, getParameterInfo, isActive, isValidateRoot, newAudioClip, play, play, resize, setStub, showStatus
 
Methods inherited from class java.awt.Panel
addNotify
 
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, addPropertyChangeListener, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getAlignmentX, getAlignmentY, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getInsets, getLayout, getListeners, getMaximumSize, getMinimumSize, getMousePosition, getPreferredSize, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paint, paintComponents, preferredSize, print, printComponents, processContainerEvent, processEvent, remove, removeAll, removeContainerListener, removeNotify, setComponentZOrder, setFocusCycleRoot, setFocusTraversalKeys, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setFont, transferFocusDownCycle, validate, validateTree
 
Methods inherited from class java.awt.Component
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, contains, createImage, createImage, createVolatileImage, createVolatileImage, disable, disableEvents, dispatchEvent, enable, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBaseline, getBaselineResizeBehavior, getBounds, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getGraphicsConfiguration, getHeight, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocation, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getSize, getToolkit, getTreeLock, getWidth, getX, getY, gotFocus, handleEvent, hasFocus, hide, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isDoubleBuffered, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isOpaque, isPreferredSizeSet, isShowing, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, prepareImage, prepareImage, printAll, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processKeyEvent, processMouseEvent, processMouseMotionEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, reshape, revalidate, setBackground, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setEnabled, setFocusable, setFocusTraversalKeysEnabled, setForeground, setIgnoreRepaint, setLocale, setLocation, setLocation, setMaximumSize, setMinimumSize, setName, setPreferredSize, setSize, setSize, setVisible, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

canvas

protected DrawingCanvas canvas
The canvas that the program creates automatically.

Constructor Detail

WindowController

public WindowController()
Method Detail

begin

public void begin()
Description copied from class: Controller
Programs written by extending Controller can perform any required initialization by defining a begin method containing the code to perform the initialization steps.

Overrides:
begin in class Controller

helpinit

protected void helpinit()
Initializes the program by creating a window containing a canvas and invoking the user supplied begin method.

Overrides:
helpinit in class Controller

onMouseClick

public void onMouseClick(Location point)
Invoked when the mouse has been clicked on the WindowController's canvas.

Parameters:
point - the point the mouse clicked on

onMouseDrag

public void onMouseDrag(Location point)
Invoked when a mouse button is pressed on the canvas and then dragged. Mouse drag events will continue to be delivered to the controller until the mouse button is released (regardless of whether the mouse position is within the bounds of the canvas).

Parameters:
point - the point the mouse drags

onMouseEnter

public void onMouseEnter(Location point)
Invoked when the mouse enters the WindowController's canvas.

Parameters:
point - the point the mouse enters

onMouseExit

public void onMouseExit(Location point)
Invoked when the mouse exits the the WindowController's canvas.

Parameters:
point - the point the mouse exits

onMouseMove

public void onMouseMove(Location point)
Invoked when the mouse button has been moved on the canvas (with no buttons down).

Parameters:
point - the point the mouse moves

onMousePress

public void onMousePress(Location point)
Invoked when a mouse button has been pressed on the WindowController's canvas.

Parameters:
point - the point the mouse pressed on

onMouseRelease

public void onMouseRelease(Location point)
Invoked when a mouse button has been released on the WindowController's canvas.

Parameters:
point - the point the mouse released on