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

Quick Search    Search Deep

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

java.lang.Object
  extended byjava.awt.Component
      extended byjava.awt.Container
          extended byjavax.swing.JComponent
              extended byjavax.swing.text.JTextComponent
                  extended byjavax.swing.JTextField
                      extended byjavax.swing.JPasswordField
                          extended byorg.scopemvc.view.swing.SPasswordField
All Implemented Interfaces:
javax.accessibility.Accessible, java.awt.event.ActionListener, java.util.EventListener, java.awt.event.FocusListener, java.awt.image.ImageObserver, java.awt.MenuContainer, org.scopemvc.view.util.ModelBindable, org.scopemvc.core.PropertyView, Refreshable, javax.swing.Scrollable, java.io.Serializable, javax.swing.SwingConstants, org.scopemvc.core.View

public class SPasswordField
extends javax.swing.JPasswordField
implements org.scopemvc.core.PropertyView, java.awt.event.FocusListener, java.awt.event.ActionListener, org.scopemvc.view.util.ModelBindable, Refreshable

A JPasswordField that works the same way as STextField.

Note this is a copy/paste from STextField because no multiple inheritance and JPasswordField plaf objects depend on instanceof JPasswordField (which isn't an interface... doh!).

Version:
$Revision: 1.5 $ $Date: 2002/01/26 09:46:20 $

Nested Class Summary
 
Nested classes inherited from class javax.swing.JPasswordField
javax.swing.JPasswordField.AccessibleJPasswordField
 
Nested classes inherited from class javax.swing.JTextField
javax.swing.JTextField.AccessibleJTextField
 
Nested classes inherited from class javax.swing.text.JTextComponent
javax.swing.text.JTextComponent.AccessibleJTextComponent, javax.swing.text.JTextComponent.KeyBinding
 
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
private  SwingBoundModel boundModel
          Helper to manage model to view binding.
private  java.lang.String controlID
          ID of the Control issued when user hits Enter in the STextField.
private  boolean disableOnNull
          Does this textfield disable itself if the model property it is bound to becomes null?
private static org.apache.commons.logging.Log LOG
           
private  org.scopemvc.util.convertor.StringConvertor stringConvertor
          The StringConvertor used to convert the model property to and from the String representation that the user edits in the textfield.
private  ValidationHelper validationHelper
          Helper to manage validation state.
private  boolean valueIsNull
          STextField can "hold" a null when bound to a property that happens to be null.
 
Fields inherited from class javax.swing.JPasswordField
 
Fields inherited from class javax.swing.JTextField
notifyAction
 
Fields inherited from class javax.swing.text.JTextComponent
DEFAULT_KEYMAP, FOCUS_ACCELERATOR_KEY
 
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 javax.swing.SwingConstants
BOTTOM, CENTER, EAST, HORIZONTAL, LEADING, LEFT, NEXT, NORTH, NORTH_EAST, NORTH_WEST, PREVIOUS, RIGHT, SOUTH, SOUTH_EAST, SOUTH_WEST, TOP, TRAILING, VERTICAL, WEST
 
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
 
Constructor Summary
SPasswordField()
           
 
Method Summary
 void actionPerformed(java.awt.event.ActionEvent e)
          Sync model object to View and issue a Control if ControlID set.
 javax.swing.JToolTip createToolTip()
          Return the toolTip property of this component, creating it and setting it if it is currently null.
 void focusGained(java.awt.event.FocusEvent inEvent)
          This method is called when a component gains the keyboard focus.
 void focusLost(java.awt.event.FocusEvent inEvent)
          This method is invoked when a component loses the keyboard focus.
 java.lang.Object getBoundModel()
           
 org.scopemvc.core.Controller getController()
          Don't assign a Controller to STextField, instead delegate to the containing SwingView that has a parent Controller.
 java.lang.String getPasswordText()
           
 org.scopemvc.core.Selector getSelector()
           
 java.lang.Object getViewValue()
          Get the current value (what would be set as a property of the bound model object) being presented on the View.
 boolean isDisableOnNull()
           
 void issueControl(org.scopemvc.core.Control inControl)
          Don't assign a Controller to STextField, instead delegate to the containing SwingView that has a parent Controller.
 void refresh()
          Update the widget with the current state of the bound model.
 void setBoundModel(java.lang.Object inModel)
           
 void setControlID(java.lang.String inControlID)
          Set the ID of the Control that will be issued when Enter key is pressed in this STextField.
 void setController(org.scopemvc.core.Controller inController)
          Don't assign a Controller to STextField, instead delegate to the containing SwingView that has a parent Controller.
 void setDisableOnNull(boolean inDisable)
          Set this to true if the textfield should be disabled when it edits a null property value.
 void setSelector(org.scopemvc.core.Selector inSelector)
           
 void setSelectorString(java.lang.String inSelectorString)
           
 void setText(java.lang.String t)
          Override to call super.setText() only if new value not equals() old value.
protected  void setupStringConvertor()
           
 void updateFromProperty(java.lang.Object inValue, boolean inReadOnly)
          Converts the incoming value to a String via appropriate org.scopemvc.util.convertor.StringConvertor.
 void validationFailed(java.lang.Exception inException)
          Validation failed while getting a value from View into the bound model object.
 void validationSuccess()
          Clear previous validation failure.
 
Methods inherited from class javax.swing.JPasswordField
copy, cut, echoCharIsSet, getAccessibleContext, getEchoChar, getPassword, getText, getText, getUIClassID, paramString, setEchoChar
 
Methods inherited from class javax.swing.JTextField
addActionListener, configurePropertiesFromAction, createActionPropertyChangeListener, createDefaultModel, fireActionPerformed, getAction, getActionListeners, getActions, getColumns, getColumnWidth, getHorizontalAlignment, getHorizontalVisibility, getPreferredSize, getScrollOffset, isValidateRoot, postActionEvent, removeActionListener, scrollRectToVisible, setAction, setActionCommand, setColumns, setDocument, setFont, setHorizontalAlignment, setScrollOffset
 
Methods inherited from class javax.swing.text.JTextComponent
addCaretListener, addInputMethodListener, addKeymap, fireCaretUpdate, getCaret, getCaretColor, getCaretListeners, getCaretPosition, getDisabledTextColor, getDocument, getDragEnabled, getFocusAccelerator, getHighlighter, getInputMethodListeners, getKeymap, getKeymap, getMargin, getNavigationFilter, getPreferredScrollableViewportSize, getScrollableBlockIncrement, getScrollableTracksViewportHeight, getScrollableTracksViewportWidth, getScrollableUnitIncrement, getSelectedText, getSelectedTextColor, getSelectionColor, getSelectionEnd, getSelectionStart, getToolTipText, getUI, isEditable, loadKeymap, modelToView, moveCaretPosition, paste, read, removeCaretListener, removeInputMethodListener, removeKeymap, replaceSelection, select, selectAll, setCaret, setCaretColor, setCaretPosition, setDisabledTextColor, setDragEnabled, setEditable, setFocusAccelerator, setHighlighter, setKeymap, setMargin, setNavigationFilter, setSelectedTextColor, setSelectionColor, setSelectionEnd, setSelectionStart, setUI, updateUI, viewToModel, write
 
Methods inherited from class javax.swing.JComponent
addAncestorListener, addNotify, addPropertyChangeListener, addVetoableChangeListener, computeVisibleRect, contains, 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, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, isDoubleBuffered, isLightweightComponent, isManagingFocus, isMaximumSizeSet, isMinimumSizeSet, isOpaque, isOptimizedDrawingEnabled, isPaintingTile, isPreferredSizeSet, isRequestFocusEnabled, 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, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setEnabled, 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, 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, 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, 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, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

LOG

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

boundModel

private SwingBoundModel boundModel
Helper to manage model to view binding.


validationHelper

private ValidationHelper validationHelper
Helper to manage validation state.


controlID

private java.lang.String controlID
ID of the Control issued when user hits Enter in the STextField.


valueIsNull

private boolean valueIsNull
STextField can "hold" a null when bound to a property that happens to be null.


disableOnNull

private boolean disableOnNull
Does this textfield disable itself if the model property it is bound to becomes null?


stringConvertor

private org.scopemvc.util.convertor.StringConvertor stringConvertor
The StringConvertor used to convert the model property to and from the String representation that the user edits in the textfield.

Constructor Detail

SPasswordField

public SPasswordField()
Method Detail

setDisableOnNull

public final void setDisableOnNull(boolean inDisable)
Set this to true if the textfield should be disabled when it edits a null property value. Otherwise, a null property is treated as an empty String.


isDisableOnNull

public final boolean isDisableOnNull()

getBoundModel

public final java.lang.Object getBoundModel()
Specified by:
getBoundModel in interface org.scopemvc.core.View

setBoundModel

public final void setBoundModel(java.lang.Object inModel)
Specified by:
setBoundModel in interface org.scopemvc.core.View

getSelector

public final org.scopemvc.core.Selector getSelector()
Specified by:
getSelector in interface org.scopemvc.core.PropertyView

setSelector

public final void setSelector(org.scopemvc.core.Selector inSelector)
Specified by:
setSelector in interface org.scopemvc.core.PropertyView

setSelectorString

public final void setSelectorString(java.lang.String inSelectorString)

setupStringConvertor

protected void setupStringConvertor()

updateFromProperty

public void updateFromProperty(java.lang.Object inValue,
                               boolean inReadOnly)
Converts the incoming value to a String via appropriate org.scopemvc.util.convertor.StringConvertor. For incoming null either disable field or set text to empty String.

Specified by:
updateFromProperty in interface org.scopemvc.view.util.ModelBindable

setText

public void setText(java.lang.String t)
Override to call super.setText() only if new value not equals() old value.


getViewValue

public java.lang.Object getViewValue()
                              throws java.lang.IllegalArgumentException
Description copied from interface: org.scopemvc.view.util.ModelBindable
Get the current value (what would be set as a property of the bound model object) being presented on the View.

Specified by:
getViewValue in interface org.scopemvc.view.util.ModelBindable

validationFailed

public void validationFailed(java.lang.Exception inException)
Description copied from interface: org.scopemvc.view.util.ModelBindable
Validation failed while getting a value from View into the bound model object. Use this to indicate to the user that the value being edited is invalid.

Specified by:
validationFailed in interface org.scopemvc.view.util.ModelBindable

validationSuccess

public void validationSuccess()
Description copied from interface: org.scopemvc.view.util.ModelBindable
Clear previous validation failure.

Specified by:
validationSuccess in interface org.scopemvc.view.util.ModelBindable

createToolTip

public javax.swing.JToolTip createToolTip()
Description copied from class: javax.swing.JComponent
Return the toolTip property of this component, creating it and setting it if it is currently null. This method can be overridden in subclasses which wish to control the exact form of tooltip created.


focusLost

public void focusLost(java.awt.event.FocusEvent inEvent)
Description copied from interface: java.awt.event.FocusListener
This method is invoked when a component loses the keyboard focus.

Specified by:
focusLost in interface java.awt.event.FocusListener

focusGained

public void focusGained(java.awt.event.FocusEvent inEvent)
Description copied from interface: java.awt.event.FocusListener
This method is called when a component gains the keyboard focus.

Specified by:
focusGained in interface java.awt.event.FocusListener

setControlID

public final void setControlID(java.lang.String inControlID)
Set the ID of the Control that will be issued when Enter key is pressed in this STextField. If null no Control will be issued.


actionPerformed

public void actionPerformed(java.awt.event.ActionEvent e)
Sync model object to View and issue a Control if ControlID set.

Specified by:
actionPerformed in interface java.awt.event.ActionListener

setController

public void setController(org.scopemvc.core.Controller inController)
Don't assign a Controller to STextField, instead delegate to the containing SwingView that has a parent Controller.

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

getController

public org.scopemvc.core.Controller getController()
Don't assign a Controller to STextField, instead delegate to the containing SwingView that has a parent Controller.

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

issueControl

public void issueControl(org.scopemvc.core.Control inControl)
Don't assign a Controller to STextField, instead delegate to the containing SwingView that has a parent Controller.

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

refresh

public void refresh()
Description copied from interface: Refreshable
Update the widget with the current state of the bound model. Probably something like this:
     Object propertyValue = boundModel.getPropertyValue();
     boolean propertyReadOnly = boundModel.getPropertyReadOnly();
     updateFromProperty(propertyValue, propertyReadOnly);
 

Specified by:
refresh in interface Refreshable

getPasswordText

public java.lang.String getPasswordText()