org.jfree.ui

## Class WizardDialog

- java.lang.Object
- - java.awt.Component
  - - java.awt.Container
    - - java.awt.Window
      - - java.awt.Dialog
        - - javax.swing.JDialog
          - - org.jfree.ui.WizardDialog

- All Implemented Interfaces:
    java.awt.event.ActionListener, java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, java.util.EventListener, javax.accessibility.Accessible, javax.swing.RootPaneContainer, javax.swing.WindowConstants

      public class WizardDialog
      extends javax.swing.JDialog
      implements java.awt.event.ActionListener

  A dialog that presents the user with a sequence of steps for completing a task. The dialog contains "Next" and "Previous" buttons, allowing the user to navigate through the task.

  When the user backs up by one or more steps, the dialog keeps the completed steps so that they can be reused if the user doesn't change anything - this handles the cases where the user backs up a few steps just to review what has been completed.

  But if the user changes some options in an earlier step, then the dialog may have to discard the later steps and have them repeated.

  THIS CLASS IS NOT WORKING CORRECTLY YET.

  Author:
    David Gilbert
  See Also:
    Serialized Form

- - ### Nested Class Summary

    - ### Nested classes/interfaces inherited from class javax.swing.JDialog

      `javax.swing.JDialog.AccessibleJDialog`

    - ### Nested classes/interfaces inherited from class java.awt.Dialog

      `java.awt.Dialog.AccessibleAWTDialog, java.awt.Dialog.ModalExclusionType, java.awt.Dialog.ModalityType`

    - ### Nested classes/interfaces inherited from class java.awt.Window

      `java.awt.Window.AccessibleAWTWindow`

    - ### 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

    - ### Fields inherited from class javax.swing.JDialog

      `accessibleContext, rootPane, rootPaneCheckingEnabled`

    - ### Fields inherited from class java.awt.Dialog

      `DEFAULT_MODALITY_TYPE`

    - ### Fields inherited from class java.awt.Component

      `BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT`

    - ### Fields inherited from interface javax.swing.WindowConstants

      `DISPOSE_ON_CLOSE, DO_NOTHING_ON_CLOSE, EXIT_ON_CLOSE, HIDE_ON_CLOSE`

    - ### Fields inherited from interface java.awt.image.ImageObserver

      `ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `WizardDialog(javax.swing.JDialog owner, boolean modal, java.lang.String title, WizardPanel firstPanel)` Standard constructor - builds and returns a new WizardDialog.
    `WizardDialog(javax.swing.JFrame owner, boolean modal, java.lang.String title, WizardPanel firstPanel)` Standard constructor - builds a new WizardDialog owned by the specified JFrame.

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `actionPerformed(java.awt.event.ActionEvent event)` Handles events.
    `boolean` | `canDoNextPanel()` Returns true if there is a 'next' panel, and false otherwise.
    `boolean` | `canDoPreviousPanel()` Returns true if it is possible to back up to the previous panel, and false otherwise.
    `boolean` | `canFinish()` Returns true if it is possible to finish the sequence at this point (possibly with defaults for the remaining entries).
    `javax.swing.JPanel` | `createContent()` Creates a panel containing the user interface for the dialog.
    `void` | `finish()` Finishes the wizard.
    `java.lang.Object` | `getResult()` Returns the result of the wizard sequence.
    `int` | `getStepCount()` Returns the total number of steps in the wizard sequence, if this number is known.
    `WizardPanel` | `getWizardPanel(int step)` Returns the panel for the specified step (steps are numbered from zero).
    `boolean` | `isCancelled()` Checks, whether the user cancelled the dialog.
    `void` | `next()` Displays the next step in the wizard sequence.
    `void` | `previous()` Handles a click on the "previous" button, by displaying the previous panel in the sequence.

    - ### Methods inherited from class javax.swing.JDialog

      `addImpl, createRootPane, dialogInit, getAccessibleContext, getContentPane, getDefaultCloseOperation, getGlassPane, getGraphics, getJMenuBar, getLayeredPane, getRootPane, getTransferHandler, isDefaultLookAndFeelDecorated, isRootPaneCheckingEnabled, paramString, processWindowEvent, remove, repaint, setContentPane, setDefaultCloseOperation, setDefaultLookAndFeelDecorated, setGlassPane, setJMenuBar, setLayeredPane, setLayout, setRootPane, setRootPaneCheckingEnabled, setTransferHandler, update`

    - ### Methods inherited from class java.awt.Dialog

      `addNotify, getModalityType, getTitle, hide, isModal, isResizable, isUndecorated, setModal, setModalityType, setResizable, setTitle, setUndecorated, setVisible, show, toBack`

    - ### Methods inherited from class java.awt.Window

      `addPropertyChangeListener, addPropertyChangeListener, addWindowFocusListener, addWindowListener, addWindowStateListener, applyResourceBundle, applyResourceBundle, createBufferStrategy, createBufferStrategy, dispose, getBufferStrategy, getFocusableWindowState, getFocusCycleRootAncestor, getFocusOwner, getFocusTraversalKeys, getGraphicsConfiguration, getIconImages, getInputContext, getListeners, getLocale, getModalExclusionType, getMostRecentFocusOwner, getOwnedWindows, getOwner, getOwnerlessWindows, getToolkit, getWarningString, getWindowFocusListeners, getWindowListeners, getWindows, getWindowStateListeners, isActive, isAlwaysOnTop, isAlwaysOnTopSupported, isFocusableWindow, isFocusCycleRoot, isFocused, isLocationByPlatform, isShowing, pack, postEvent, processEvent, processWindowFocusEvent, processWindowStateEvent, removeNotify, removeWindowFocusListener, removeWindowListener, removeWindowStateListener, reshape, setAlwaysOnTop, setBounds, setBounds, setCursor, setFocusableWindowState, setFocusCycleRoot, setIconImage, setIconImages, setLocationByPlatform, setLocationRelativeTo, setMinimumSize, setModalExclusionType, setSize, setSize, toFront`

    - ### Methods inherited from class java.awt.Container

      `add, add, add, add, add, addContainerListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getAlignmentX, getAlignmentY, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalPolicy, getInsets, getLayout, getMaximumSize, getMinimumSize, getMousePosition, getPreferredSize, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paint, paintComponents, preferredSize, print, printComponents, processContainerEvent, remove, removeAll, removeContainerListener, setComponentZOrder, 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, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getHeight, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocation, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getSize, getTreeLock, getWidth, getX, getY, gotFocus, handleEvent, hasFocus, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isDoubleBuffered, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isOpaque, isPreferredSizeSet, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, 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, resize, resize, setBackground, setComponentOrientation, setDropTarget, setEnabled, setFocusable, setFocusTraversalKeysEnabled, setForeground, setIgnoreRepaint, setLocale, setLocation, setLocation, setMaximumSize, setName, setPreferredSize, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

- - ### Constructor Detail

    - #### WizardDialog

          public WizardDialog(javax.swing.JDialog owner,
                      boolean modal,
                      java.lang.String title,
                      WizardPanel firstPanel)

      Standard constructor - builds and returns a new WizardDialog.
      Parameters:
        `owner` - the owner.
        `modal` - modal?
        `title` - the title.
        `firstPanel` - the first panel.

    - #### WizardDialog

          public WizardDialog(javax.swing.JFrame owner,
                      boolean modal,
                      java.lang.String title,
                      WizardPanel firstPanel)

      Standard constructor - builds a new WizardDialog owned by the specified JFrame.
      Parameters:
        `owner` - the owner.
        `modal` - modal?
        `title` - the title.
        `firstPanel` - the first panel.

  - ### Method Detail

    - #### getResult

          public java.lang.Object getResult()

      Returns the result of the wizard sequence.
      Returns:
        the result.

    - #### getStepCount

          public int getStepCount()

      Returns the total number of steps in the wizard sequence, if this number is known. Otherwise this method returns zero. Subclasses should override this method unless the number of steps is not known.
      Returns:
        the number of steps.

    - #### canDoPreviousPanel

          public boolean canDoPreviousPanel()

      Returns true if it is possible to back up to the previous panel, and false otherwise.
      Returns:
        boolean.

    - #### canDoNextPanel

          public boolean canDoNextPanel()

      Returns true if there is a 'next' panel, and false otherwise.
      Returns:
        boolean.

    - #### canFinish

          public boolean canFinish()

      Returns true if it is possible to finish the sequence at this point (possibly with defaults for the remaining entries).
      Returns:
        boolean.

    - #### getWizardPanel

          public WizardPanel getWizardPanel(int step)

      Returns the panel for the specified step (steps are numbered from zero).
      Parameters:
        `step` - the current step.
      Returns:
        the panel.

    - #### actionPerformed

          public void actionPerformed(java.awt.event.ActionEvent event)

      Handles events.
      Specified by:
        `actionPerformed` in interface `java.awt.event.ActionListener`
      Parameters:
        `event` - the event.

    - #### previous

          public void previous()

      Handles a click on the "previous" button, by displaying the previous panel in the sequence.

    - #### next

          public void next()

      Displays the next step in the wizard sequence.

    - #### finish

          public void finish()

      Finishes the wizard.

    - #### isCancelled

          public boolean isCancelled()

      Checks, whether the user cancelled the dialog.
      Returns:
        false.

    - #### createContent

          public javax.swing.JPanel createContent()

      Creates a panel containing the user interface for the dialog.
      Returns:
        the panel.