Docjar: A Java Source and Docuemnt Enginecom.*    java.*    javax.*    org.*    all    new    plug-in

Quick Search    Search Deep

org.scopemvc.view.swing
Class SwingView  view SwingView download SwingView.java

java.lang.Object
  extended byjava.awt.Component
      extended byjava.awt.Container
          extended byjavax.swing.JComponent
              extended byjavax.swing.JPanel
                  extended byorg.scopemvc.view.swing.SwingView
All Implemented Interfaces:
javax.accessibility.Accessible, java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, org.scopemvc.core.View
Direct Known Subclasses:
SPanel, SUnboundPanel

public abstract class SwingView
extends javax.swing.JPanel
implements org.scopemvc.core.View

An abstract base JPanel implementation of View for use in Swing-based user interfaces. org.scopemvc.controller.swing.SwingContext assumes the use of SwingView subclasses, for which the following methods should be overridden:

Binding to the model object should be implemented in subclasses appropriately -- see SPanel for an example. This split in functionality is to support splitting Scope into a Controller/View subsystem and an independent model subsystem.

SwingView subclasses must issue a CHANGE_MODEL_CONTROL_ID Control when the shown model object changes. This supports BasicController which needs to know when its current model changes.

Version:
$Revision: 1.3 $ $Date: 2002/01/26 09:46:21 $

Nested Class Summary
 
Nested classes inherited from class javax.swing.JPanel
javax.swing.JPanel.AccessibleJPanel
 
Nested classes inherited from class javax.swing.JComponent
javax.swing.JComponent.AccessibleJComponent
 
Nested classes inherited from class java.awt.Container
java.awt.Container.AccessibleAWTContainer
 
Nested classes inherited from class java.awt.Component
java.awt.Component.AccessibleAWTComponent, java.awt.Component.BltBufferStrategy, java.awt.Component.FlipBufferStrategy
 
Field Summary
static java.awt.Rectangle CENTRED
           
private  org.scopemvc.core.Controller controller
           
private static org.apache.commons.logging.Log LOG
           
static int MODAL_DIALOG
           
static int MODELESS_DIALOG
           
static int PRIMARY_WINDOW
           
private  java.awt.Rectangle viewBounds
          The bounds that the view will be shown at.
 
Fields inherited from class javax.swing.JComponent
accessibleContext, listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
 
Fields inherited from class java.awt.Container
 
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
SwingView()
          Automatically install a SwingContext if SwingView is created anywhere and no ViewContext has been set previously.
 
Method Summary
 org.scopemvc.core.Control getCloseControl()
          The Control issued when the window containing this View is closed.
 org.scopemvc.core.Controller getController()
           
 int getDisplayMode()
          Determines the type of window used to show this view.
 java.awt.Rectangle getLastShownBounds()
          Deprecated. see getViewBounds() 55
 javax.swing.JMenuBar getMenuBar()
          The menubar to attach to a window showing this view, or null if none.
 java.lang.String getTitle()
          Provides the title for windows that show this view.
 java.awt.Rectangle getViewBounds()
          Get bounds to show this view at.
 boolean isResizable()
          Should a window showing this view be resizable?
 void issueControl(org.scopemvc.core.Control inControl)
          Issue a Control to the parent Controller, or if no direct parent, search upwards in the View hierarchy for the next up.
 void setController(org.scopemvc.core.Controller inController)
          The parent Controller must register itself with the SwingView via this method in order to receive Control from it.
 void setLastShownBounds(java.awt.Rectangle inLastShownBounds)
          Deprecated. see setViewBounds(java.awt.Rectangle) 55
 void setViewBounds(java.awt.Rectangle inViewBounds)
          Called when hiding a view to store last bounds of this view when visible.
 java.lang.String toString()
          Returns a string representation of this component.
 
Methods inherited from class javax.swing.JPanel
getAccessibleContext, getUI, getUIClassID, paramString, setUI, updateUI
 
Methods inherited from class javax.swing.JComponent
addAncestorListener, addNotify, addPropertyChangeListener, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBorder, getBounds, getClientProperty, getComponentGraphics, getConditionForKeyStroke, getDebugGraphicsOptions, getDefaultLocale, getGraphics, getHeight, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPreferredSize, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, isDoubleBuffered, isLightweightComponent, isManagingFocus, isMaximumSizeSet, isMinimumSizeSet, isOpaque, isOptimizedDrawingEnabled, isPaintingTile, isPreferredSizeSet, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintChildren, paintComponent, paintImmediately, paintImmediately, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyBinding, processKeyEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setEnabled, setFont, setForeground, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setUI, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, update
 
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, addImpl, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getLayout, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, printComponents, processContainerEvent, processEvent, remove, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusCycleRoot, setFocusTraversalKeys, setFocusTraversalPolicy, setLayout, 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, createImage, createImage, createVolatileImage, createVolatileImage, disableEvents, dispatchEvent, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getGraphicsConfiguration, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocale, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMouseWheelListeners, getName, getParent, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, hide, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isShowing, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, prepareImage, prepareImage, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processMouseEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setName, setSize, setSize, show, show, size, transferFocus, transferFocusBackward, transferFocusUpCycle
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface org.scopemvc.core.View
getBoundModel, setBoundModel
 

Field Detail

LOG

private static final org.apache.commons.logging.Log LOG

PRIMARY_WINDOW

public static final int PRIMARY_WINDOW
See Also:
Constant Field Values

MODAL_DIALOG

public static final int MODAL_DIALOG
See Also:
Constant Field Values

MODELESS_DIALOG

public static final int MODELESS_DIALOG
See Also:
Constant Field Values

CENTRED

public static final java.awt.Rectangle CENTRED

viewBounds

private java.awt.Rectangle viewBounds
The bounds that the view will be shown at. If null use default position. The bounds are saved on hideView so the view come back at the same position when shown again.


controller

private org.scopemvc.core.Controller controller
Constructor Detail

SwingView

public SwingView()
Automatically install a SwingContext if SwingView is created anywhere and no ViewContext has been set previously.

Method Detail

getTitle

public java.lang.String getTitle()
Provides the title for windows that show this view.


getDisplayMode

public int getDisplayMode()
Determines the type of window used to show this view.


getCloseControl

public org.scopemvc.core.Control getCloseControl()
The Control issued when the window containing this View is closed.


isResizable

public boolean isResizable()
Should a window showing this view be resizable?


getMenuBar

public javax.swing.JMenuBar getMenuBar()
The menubar to attach to a window showing this view, or null if none.


toString

public java.lang.String toString()
Description copied from class: java.awt.Component
Returns a string representation of this component. This is implemented as getClass().getName() + '[' + paramString() + ']'.


getViewBounds

public final java.awt.Rectangle getViewBounds()
Get bounds to show this view at. If null default positioning, if CENTRED_BOUNDS then centre the view on the screen.


getLastShownBounds

public final java.awt.Rectangle getLastShownBounds()
Deprecated. see getViewBounds() 55


setViewBounds

public void setViewBounds(java.awt.Rectangle inViewBounds)
Called when hiding a view to store last bounds of this view when visible. Override to return null if the view should always be packed and placed in default location. Call this during View ctor to set up initial bounds.


setLastShownBounds

public void setLastShownBounds(java.awt.Rectangle inLastShownBounds)
Deprecated. see setViewBounds(java.awt.Rectangle) 55


setController

public final void setController(org.scopemvc.core.Controller inController)
The parent Controller must register itself with the SwingView via this method in order to receive Control from it. Only one Controller can parent a SwingView, which should be fine if a Chain of Command is used between Controllers.

Specified by:
setController in interface org.scopemvc.core.View

getController

public org.scopemvc.core.Controller getController()
Specified by:
getController in interface org.scopemvc.core.View

issueControl

public void issueControl(org.scopemvc.core.Control inControl)
Issue a Control to the parent Controller, or if no direct parent, search upwards in the View hierarchy for the next up.

Specified by:
issueControl in interface org.scopemvc.core.View