com.izforge.izpack.panels
Class PathInputPanel

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 com.izforge.izpack.installer.IzPanel
                      extended by com.izforge.izpack.panels.PathInputPanel
All Implemented Interfaces:
AbstractUIHandler, java.awt.event.ActionListener, java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, java.util.EventListener, javax.accessibility.Accessible
Direct Known Subclasses:
JDKPathPanel, TargetPanel

public class PathInputPanel
extends IzPanel
implements java.awt.event.ActionListener

Base class for panels which asks for paths.

Author:
Klaus Bartz
See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class com.izforge.izpack.installer.IzPanel
IzPanel.Filler
 
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 static java.lang.String defaultInstallDir
           
protected  java.lang.String emptyTargetMsg
           
protected  java.lang.String[] existFiles
          Files which should be exist
protected  boolean mustExist
          Flag whether the choosen path must exist or not
protected  PathSelectionPanel pathSelectionPanel
          The path selection sub panel
private static long serialVersionUID
           
protected  java.lang.String warnMsg
           
 
Fields inherited from class com.izforge.izpack.installer.IzPanel
COLS_1, d, D, defaultGridBagConstraints, gridBagLayoutStarted, gridxCounter, gridyCounter, headline, HEADLINE, headLineLabel, idata, initialFocus, izPanelLayout, myClassname, myFullClassname, myPrefix, parent, ROWS_1, X_ORIGIN, Y_ORIGIN
 
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 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
PathInputPanel(InstallerFrame parent, InstallData idata)
          The constructor.
 
Method Summary
 void actionPerformed(java.awt.event.ActionEvent e)
          Actions-handling method.
 void createLayoutBottom()
          This method does nothing.
static java.lang.String getDefaultInstallDir()
          Returns the default for the installation directory.
 java.lang.String[] getExistFiles()
          Returns the array of strings which are described the files which must exist.
 boolean isMustExist()
          Returns the must exist state.
 boolean isValidated()
          Indicates wether the panel has been validated or not.
 boolean isWriteable()
          This method determines whether the chosen dir is writeable or not.
static void loadDefaultInstallDir(InstallerFrame parentFrame, InstallData idata)
          Loads up the "dir" resource associated with TargetPanel.
protected  boolean pathIsValid()
          Returns whether the chosen path is true or not.
static void setDefaultInstallDir(java.lang.String string)
          Sets the default for the installation directory to the given string.
 void setExistFiles(java.lang.String[] strings)
          Sets the paths of files which must exist under the chosen path.
 void setMustExist(boolean b)
          Sets the must exist state.
 
Methods inherited from class com.izforge.izpack.installer.IzPanel
askQuestion, askQuestion, buildHeadline, completeGridBagLayout, createLabel, createLabel, createMultiLineLabel, createMultiLineLabel, createMultiLineLabelLang, emitError, emitNotification, emitWarning, getClassName, getControlTextFont, getDefaultGridBagConstraints, getI18nStringForClass, getImageIcon, getInitialFocus, getInstallerFrame, getLAF, getNewGridBagConstraints, getNewGridBagConstraints, getNextXGridBagConstraints, getNextYGridBagConstraints, getNextYGridBagConstraints, getString, getSummaryBody, getSummaryCaption, init, makeXMLData, panelActivate, panelDeactivate, resetGridCounter, setDefaultGridBagConstraints, setInitialFocus, setLayout, startGridBagLayout
 
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, 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, transferFocusBackward, transferFocusUpCycle
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

serialVersionUID

private static final long serialVersionUID
See Also:
Constant Field Values

mustExist

protected boolean mustExist
Flag whether the choosen path must exist or not


existFiles

protected java.lang.String[] existFiles
Files which should be exist


pathSelectionPanel

protected PathSelectionPanel pathSelectionPanel
The path selection sub panel


emptyTargetMsg

protected java.lang.String emptyTargetMsg

warnMsg

protected java.lang.String warnMsg

defaultInstallDir

protected static java.lang.String defaultInstallDir
Constructor Detail

PathInputPanel

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

Parameters:
parent - The parent window.
idata - The installation data.
Method Detail

createLayoutBottom

public void createLayoutBottom()
This method does nothing. It is called from ctor of PathInputPanel, to give in a derived class the possibility to add more components under the path input components.


actionPerformed

public void actionPerformed(java.awt.event.ActionEvent e)
Actions-handling method.

Specified by:
actionPerformed in interface java.awt.event.ActionListener
Parameters:
e - The event.

isValidated

public boolean isValidated()
Indicates wether the panel has been validated or not.

Overrides:
isValidated in class IzPanel
Returns:
Wether the panel has been validated or not.

pathIsValid

protected boolean pathIsValid()
Returns whether the chosen path is true or not. If existFiles are not null, the existence of it under the choosen path are detected. This method can be also implemented in derived classes to handle special verification of the path.

Returns:
true if existFiles are exist or not defined, else false

isMustExist

public boolean isMustExist()
Returns the must exist state.

Returns:
the must exist state

setMustExist

public void setMustExist(boolean b)
Sets the must exist state. If it is true, the path must exist.

Parameters:
b - must exist state

getExistFiles

public java.lang.String[] getExistFiles()
Returns the array of strings which are described the files which must exist.

Returns:
paths of files which must exist

setExistFiles

public void setExistFiles(java.lang.String[] strings)
Sets the paths of files which must exist under the chosen path.

Parameters:
strings - paths of files which must exist under the chosen path

loadDefaultInstallDir

public static void loadDefaultInstallDir(InstallerFrame parentFrame,
                                         InstallData idata)
Loads up the "dir" resource associated with TargetPanel. Acceptable dir resource names: TargetPanel.dir.macosx TargetPanel.dir.mac TargetPanel.dir.windows TargetPanel.dir.unix TargetPanel.dir.xxx, where xxx is the lower case version of System.getProperty("os.name"), with any spaces replace with underscores TargetPanel.dir (generic that will be applied if none of above is found) As with all IzPack resources, each the above ids should be associated with a separate filename, which is set in the install.xml file at compile time.


isWriteable

public boolean isWriteable()
This method determines whether the chosen dir is writeable or not.

Returns:
whether the chosen dir is writeable or not

getDefaultInstallDir

public static java.lang.String getDefaultInstallDir()
Returns the default for the installation directory.

Returns:
the default for the installation directory

setDefaultInstallDir

public static void setDefaultInstallDir(java.lang.String string)
Sets the default for the installation directory to the given string.

Parameters:
string - path for default for the installation directory