com.izforge.izpack.installer
Class IzPanel

java.lang.Object
  extended byjava.awt.Component
      extended byjava.awt.Container
          extended byjavax.swing.JComponent
              extended byjavax.swing.JPanel
                  extended bycom.izforge.izpack.installer.IzPanel
All Implemented Interfaces:
AbstractUIHandler, javax.accessibility.Accessible, java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable
Direct Known Subclasses:
CompilePanel, FinishPanel, HelloPanel, HTMLInfoPanel, HTMLLicencePanel, ImgPacksPanel, InfoPanel, InstallPanel, LicencePanel, PacksPanel, ProcessPanel, ShortcutPanel, TargetPanel, UserInputPanel, XInfoPanel

public class IzPanel
extends javax.swing.JPanel
implements AbstractUIHandler

Defines the base class for the IzPack panels. Any panel should be a subclass of it and should belong to the com.izforge.izpack.panels package.

Author:
Julien Ponge
See Also:
Serialized Form

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
protected  InstallData idata
          The installer internal data (actually a melting-pot class with all-public fields.
protected  InstallerFrame parent
          The parent IzPack installer frame.
 
Fields inherited from class javax.swing.JPanel
 
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 com.izforge.izpack.util.AbstractUIHandler
ANSWER_CANCEL, ANSWER_NO, ANSWER_YES, CHOICES_YES_NO, CHOICES_YES_NO_CANCEL
 
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
 
Constructor Summary
IzPanel(InstallerFrame parent, InstallData idata)
          The constructor.
 
Method Summary
 int askQuestion(java.lang.String title, java.lang.String question, int choices)
          Ask the user a question.
 int askQuestion(java.lang.String title, java.lang.String question, int choices, int default_choice)
          Ask the user a question.
 void emitError(java.lang.String title, java.lang.String message)
          Notify the user of some error.
 void emitNotification(java.lang.String message)
          Notify the user about something.
 boolean emitWarning(java.lang.String title, java.lang.String message)
          Warn the user about something.
 boolean isValidated()
          Indicates wether the panel has been validated or not.
 void makeXMLData(XMLElement panelRoot)
          Asks the panel to set its own XML data that can be brought back for an automated installation process.
 void panelActivate()
          This method is called when the panel becomes active.
 void panelDeactivate()
          This method is called when the panel gets desactivated, when the user switches to the next panel.
 
Methods inherited from class javax.swing.JPanel
getAccessibleContext, getUI, getUIClassID, paramString, setUI, updateUI
 
Methods inherited from class javax.swing.JComponent
addAncestorListener, addNotify, addPropertyChangeListener, addPropertyChangeListener, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, 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, getPropertyChangeListeners, getPropertyChangeListeners, 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, removePropertyChangeListener, removePropertyChangeListener, 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, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getLayout, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, printComponents, processContainerEvent, processEvent, remove, remove, removeAll, removeContainerListener, setFocusCycleRoot, setFocusTraversalKeys, setFocusTraversalPolicy, 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, 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, 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, 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

idata

protected InstallData idata
The installer internal data (actually a melting-pot class with all-public fields.


parent

protected InstallerFrame parent
The parent IzPack installer frame.

Constructor Detail

IzPanel

public IzPanel(InstallerFrame parent,
               InstallData idata)
The constructor.

Parameters:
parent - The parent IzPack installer frame.
idata - The installer internal data.
Method Detail

isValidated

public boolean isValidated()
Indicates wether the panel has been validated or not. The installer won't let the user go further through the installation process until the panel is validated. Default behaviour is to return true.

Returns:
A boolean stating wether the panel has been validated or not.

panelActivate

public void panelActivate()
This method is called when the panel becomes active. Default is to do nothing : feel free to implement what you need in your subclasses. A panel becomes active when the user reaches it during the installation process.


panelDeactivate

public void panelDeactivate()
This method is called when the panel gets desactivated, when the user switches to the next panel. By default it doesn't do anything.


makeXMLData

public void makeXMLData(XMLElement panelRoot)
Asks the panel to set its own XML data that can be brought back for an automated installation process. Use it as a blackbox if your panel needs to do something even in automated mode.

Parameters:
panelRoot - The XML root element of the panels blackbox tree.

askQuestion

public int askQuestion(java.lang.String title,
                       java.lang.String question,
                       int choices)
Ask the user a question.

Specified by:
askQuestion in interface AbstractUIHandler
Parameters:
title - Message title.
question - The question.
choices - The set of choices to present.
Returns:
The user's choice.
See Also:
AbstractUIHandler.askQuestion(String, String, int)

askQuestion

public int askQuestion(java.lang.String title,
                       java.lang.String question,
                       int choices,
                       int default_choice)
Ask the user a question.

Specified by:
askQuestion in interface AbstractUIHandler
Parameters:
title - Message title.
question - The question.
choices - The set of choices to present.
default_choice - The default choice. (-1 = no default choice)
Returns:
The user's choice.
See Also:
AbstractUIHandler.askQuestion(String, String, int, int)

emitNotification

public void emitNotification(java.lang.String message)
Notify the user about something.

Specified by:
emitNotification in interface AbstractUIHandler
Parameters:
message - The notification.

emitWarning

public boolean emitWarning(java.lang.String title,
                           java.lang.String message)
Warn the user about something.

Specified by:
emitWarning in interface AbstractUIHandler
Parameters:
message - The warning message.
title - The message title (used for dialog name, might not be displayed)
Returns:
true if the user decided not to continue

emitError

public void emitError(java.lang.String title,
                      java.lang.String message)
Notify the user of some error.

Specified by:
emitError in interface AbstractUIHandler
Parameters:
message - The error message.
title - The message title (used for dialog name, might not be displayed)
Returns:
true if the user decided not to continue