org.sourceforge.espro.gui
Class PageManager

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 org.sourceforge.espro.gui.PageManager
All Implemented Interfaces:
java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, javax.accessibility.Accessible
Direct Known Subclasses:
QuestionnaireAssistant, QuestionnaireEditor

public class PageManager
extends javax.swing.JPanel

This manages the pages of an questionnaire and provides methods to go forward and backwards within a questionnaire. This will be used for both, QuestionnaireEditor and Elicitation.

Version:
1.1
Author:
(c) 2007 Martin Kaffanke
See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class javax.swing.JPanel
javax.swing.JPanel.AccessibleJPanel
 
Nested classes/interfaces inherited from class javax.swing.JComponent
javax.swing.JComponent.AccessibleJComponent
 
Nested classes/interfaces inherited from class java.awt.Container
java.awt.Container.AccessibleAWTContainer
 
Nested classes/interfaces inherited from class java.awt.Component
java.awt.Component.AccessibleAWTComponent, java.awt.Component.BaselineResizeBehavior, java.awt.Component.BltBufferStrategy, java.awt.Component.FlipBufferStrategy
 
Field Summary
protected  javax.swing.JPanel buttons
          The panel with the buttons.
static int NEXT_ACTION
          DOCUMENT ME!
static int PREVIOUS_ACTION
          DOCUMENT ME!
protected  javax.swing.JPanel view
          The panel which holds the pages.
 
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
PageManager()
          Initializes the Page Manager.
 
Method Summary
 void add(javax.swing.JComponent comp, java.lang.String id)
          Adds a new page with the given component at the end of the pages.
 void add(javax.swing.JComponent comp, java.lang.String id, int pos)
          Adds a new page with the given component on page pos.
 void addButton(javax.swing.Action action)
          Adds a Button at the bottom of the page layout.
 void addPageAction(AbstractPageAction listener)
          DOCUMENT ME!
 void addPropertyChangeListener(java.beans.PropertyChangeListener listener)
          Adds a generic property change listener.
 void addPropertyChangeListener(java.lang.String propertyName, java.beans.PropertyChangeListener listener)
          Adds a specific property change listener for the given property name.
protected  void defaultButtons()
          Adds the default buttons to the page manager.
protected  void firePageAction(java.awt.event.ActionEvent evt)
          DOCUMENT ME!
 java.awt.Component getCurrent()
          Returns the page number of the current page.
 int getCurrentPage()
          Returns the current page number, starting with 1.
 NotificationArea getNotify()
          Returns the notify.
 javax.swing.JPanel getView()
          Returns the view (panel which holds the pages, without the buttons) This will normally be needed if you write extensions of this class.
 boolean isBackwards()
          Can the subject go backwards on the pagemanager?
 void remove(java.lang.String id)
          Removes a page.
 void removeAll()
          DOCUMENT ME!
 void removePageAction(AbstractPageAction listener)
          DOCUMENT ME!
 void removePropertyChangeListener(java.beans.PropertyChangeListener listener)
          Removes a property change listener.
 void setBackwards(boolean backwards)
          Can the subject go backwards?
 void setNotify(NotificationArea notify)
          Sets the notify
 void viewPage(java.awt.Component comp)
          Shows the page by given component.
 void viewPage(java.lang.String id)
          Views a specific page.
 
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, 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, 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, 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
 

Field Detail

NEXT_ACTION

public static final int NEXT_ACTION
DOCUMENT ME!

See Also:
Constant Field Values

PREVIOUS_ACTION

public static final int PREVIOUS_ACTION
DOCUMENT ME!

See Also:
Constant Field Values

buttons

protected final javax.swing.JPanel buttons
The panel with the buttons.


view

protected javax.swing.JPanel view
The panel which holds the pages.

Constructor Detail

PageManager

public PageManager()
Initializes the Page Manager.

Method Detail

add

public void add(javax.swing.JComponent comp,
                java.lang.String id)
Adds a new page with the given component at the end of the pages.

Parameters:
comp - The component.
id - The id of the item.
Throws:
java.lang.IllegalArgumentException - DOCUMENT ME!

add

public void add(javax.swing.JComponent comp,
                java.lang.String id,
                int pos)
Adds a new page with the given component on page pos. This moves the current page in position pos one page backwards.

Parameters:
comp - The component
id - The id of the item.
pos - The position to insert the page. If pos is negative or to high, this acts like add(comp) (see below).
Throws:
java.lang.IllegalArgumentException - DOCUMENT ME!

addButton

public void addButton(javax.swing.Action action)
Adds a Button at the bottom of the page layout. This is primary used for previous and next buttons.

Parameters:
action - The action to perform.

addPageAction

public void addPageAction(AbstractPageAction listener)
DOCUMENT ME!

Parameters:
listener - DOCUMENT ME!

addPropertyChangeListener

public void addPropertyChangeListener(java.beans.PropertyChangeListener listener)
Adds a generic property change listener.

Overrides:
addPropertyChangeListener in class java.awt.Container
Parameters:
listener - The listener.

addPropertyChangeListener

public void addPropertyChangeListener(java.lang.String propertyName,
                                      java.beans.PropertyChangeListener listener)
Adds a specific property change listener for the given property name.

Overrides:
addPropertyChangeListener in class java.awt.Container
Parameters:
propertyName - The name of the property.
listener - The listener.

getCurrent

public java.awt.Component getCurrent()
Returns the page number of the current page.

Returns:
The current shown component or null if there is none.

getCurrentPage

public int getCurrentPage()
Returns the current page number, starting with 1.

Returns:
the page number.

getNotify

public NotificationArea getNotify()
Returns the notify.

Returns:
The notify.

getView

public javax.swing.JPanel getView()
Returns the view (panel which holds the pages, without the buttons) This will normally be needed if you write extensions of this class.

Returns:
the view.

isBackwards

public boolean isBackwards()
Can the subject go backwards on the pagemanager?

Returns:
true if backwards is allowed.

remove

public void remove(java.lang.String id)
Removes a page.

Parameters:
id - The id of the page, this corresponds to the id of the item.

removeAll

public void removeAll()
DOCUMENT ME!

Overrides:
removeAll in class java.awt.Container

removePageAction

public void removePageAction(AbstractPageAction listener)
DOCUMENT ME!

Parameters:
listener - DOCUMENT ME!

removePropertyChangeListener

public void removePropertyChangeListener(java.beans.PropertyChangeListener listener)
Removes a property change listener.

Overrides:
removePropertyChangeListener in class java.awt.Component
Parameters:
listener - The listener to remove.

setBackwards

public void setBackwards(boolean backwards)
Can the subject go backwards?

Parameters:
backwards - true if backwards is possible.

setNotify

public void setNotify(NotificationArea notify)
Sets the notify

Parameters:
notify - The notify to set.

viewPage

public void viewPage(java.awt.Component comp)
Shows the page by given component. If the component is null, we will show the first page.

Parameters:
comp - The component.

viewPage

public void viewPage(java.lang.String id)
Views a specific page.

Parameters:
id - The id of the page (the id of the item).

defaultButtons

protected void defaultButtons()
Adds the default buttons to the page manager.


firePageAction

protected void firePageAction(java.awt.event.ActionEvent evt)
DOCUMENT ME!

Parameters:
evt - DOCUMENT ME!