SRJRCFrames
v0.1.296

de.schwarzrot.ui.support
Class AbstractWizardPage<E extends Entity>

java.lang.Object
  extended by java.awt.Component
      extended by java.awt.Container
          extended by javax.swing.JComponent
              extended by javax.swing.JPanel
                  extended by de.schwarzrot.ui.support.AbstractWizardPage<E>
Type Parameters:
E - - entity that forms the data basis for this wizard page
All Implemented Interfaces:
Checkable, WizardPage<E>, ImageObserver, MenuContainer, Serializable, Accessible
Direct Known Subclasses:
AbstractWizardInfoPage

public abstract class AbstractWizardPage<E extends Entity>
extends JPanel
implements WizardPage<E>

is a JPanel that has support for validating forms in conjunction with Wizard. The Wizard and all WizzardPages share the same PresentationModel, so validation has to be performed at focus-change, taking care about any buffered models. The bean of the PresentationModel, the subject, get's updated, when all WizzardPages have been checked to be valid. That means "all or nothing". The WizzardPage does not need to care about the order of pages or their walk-through. It only focuses on its own interest.

Initialization is a 2 step process, so the constructor may not create any GUI element! Use buildPane to populate a WizzardPage with GUI elements.

Validatable from JGoodies can not be used with GUI-parts, as the method conflicts with Container.validate - so we had to create an interface Checkable with different method name.

Author:
Reinhard Mantey
See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class javax.swing.JPanel
JPanel.AccessibleJPanel
 
Nested classes/interfaces inherited from class javax.swing.JComponent
JComponent.AccessibleJComponent
 
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 static FormComponentFactory componentFactory
           
protected static MessageSource msgSource
           
 
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.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
AbstractWizardPage(AbstractWizard<E> master, String id)
           
 
Method Summary
 void addConstraint(ValidationConstraint vc)
           
 JComponent buildPane()
           
 com.jgoodies.validation.ValidationResult check()
           
 JComponent getClientArea()
           
 List<ValidationConstraint> getConstraints()
           
protected  org.apache.commons.logging.Log getLogger()
           
 com.jgoodies.binding.PresentationModel<E> getPresentationModel()
           
 String getTitle()
           
 AbstractWizard<?> getWizard()
           
 boolean hasErrors()
           
 void setClientArea(JComponent client)
           
protected  void setResult(com.jgoodies.validation.ValidationResult res)
           
 void setShouldSkip(boolean shouldSkip)
           
protected abstract  void setupComponent()
          cause we use 2 stage initialization, this method is implicit invoked to populate the WizzardPage with visual elements.
protected abstract  void setupConstraints()
          add the constraints, the validator should use to validate this page
 void setWizard(AbstractWizard<?> wizard)
           
 boolean shouldSkip()
           
 
Methods inherited from class javax.swing.JPanel
getAccessibleContext, getUI, getUIClassID, paramString, setUI, updateUI
 
Methods inherited from class javax.swing.JComponent
addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBaseline, getBaselineResizeBehavior, getBorder, getBounds, getClientProperty, getComponentGraphics, getComponentPopupMenu, getConditionForKeyStroke, getDebugGraphicsOptions, getDefaultLocale, getFontMetrics, getGraphics, getHeight, getInheritsPopupMenu, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPopupLocation, getPreferredSize, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintChildren, paintComponent, paintImmediately, paintImmediately, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyBinding, processKeyEvent, processMouseEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setComponentPopupMenu, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setEnabled, setFocusTraversalKeys, setFont, setForeground, setInheritsPopupMenu, 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, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getLayout, getMousePosition, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, printComponents, processContainerEvent, processEvent, remove, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusCycleRoot, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setLayout, transferFocusBackward, 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, getForeground, getGraphicsConfiguration, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocale, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, 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, isMaximumSizeSet, isMinimumSizeSet, isPreferredSizeSet, 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, 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, toString, transferFocus, transferFocusUpCycle
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface de.schwarzrot.ui.WizardPage
reset
 

Field Detail

componentFactory

protected static FormComponentFactory componentFactory

msgSource

protected static MessageSource msgSource
Constructor Detail

AbstractWizardPage

public AbstractWizardPage(AbstractWizard<E> master,
                          String id)
Method Detail

addConstraint

public void addConstraint(ValidationConstraint vc)
Specified by:
addConstraint in interface WizardPage<E extends Entity>

buildPane

public JComponent buildPane()
Specified by:
buildPane in interface WizardPage<E extends Entity>

check

public com.jgoodies.validation.ValidationResult check()
Specified by:
check in interface Checkable

getClientArea

public JComponent getClientArea()

getConstraints

public List<ValidationConstraint> getConstraints()
Specified by:
getConstraints in interface WizardPage<E extends Entity>

getPresentationModel

public com.jgoodies.binding.PresentationModel<E> getPresentationModel()
Specified by:
getPresentationModel in interface WizardPage<E extends Entity>

getTitle

public String getTitle()
Specified by:
getTitle in interface WizardPage<E extends Entity>

getWizard

public final AbstractWizard<?> getWizard()

hasErrors

public boolean hasErrors()
Specified by:
hasErrors in interface WizardPage<E extends Entity>

setClientArea

public void setClientArea(JComponent client)

setShouldSkip

public void setShouldSkip(boolean shouldSkip)

setWizard

public final void setWizard(AbstractWizard<?> wizard)

shouldSkip

public boolean shouldSkip()
Specified by:
shouldSkip in interface WizardPage<E extends Entity>

getLogger

protected final org.apache.commons.logging.Log getLogger()

setResult

protected void setResult(com.jgoodies.validation.ValidationResult res)

setupComponent

protected abstract void setupComponent()
cause we use 2 stage initialization, this method is implicit invoked to populate the WizzardPage with visual elements.


setupConstraints

protected abstract void setupConstraints()
add the constraints, the validator should use to validate this page


SRJRCFrames
v0.1.296

hosted at
Find SRJRCFrames at SourceForge.net. Fast, secure and free:
           Open Source Software download
Submit a bug or request a feature

SRJRCFrames is published according to the GNU General Public License
Copyright 2005-2012 Reinhard Mantey - some rights reserved.