com.izforge.izpack.panels.installationgroup
Class InstallationGroupPanel

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.gui.IzPanel
                      extended by com.izforge.izpack.panels.installationgroup.InstallationGroupPanel
All Implemented Interfaces:
AbstractUIHandler, ISummarisable, LayoutConstants, ImageObserver, MenuContainer, Serializable, EventListener, Accessible, ListSelectionListener, SwingConstants

public class InstallationGroupPanel
extends IzPanel
implements ListSelectionListener

A panel which displays the available installGroups found on the packs to allow the user to select a subset of the packs based on the pack installGroups attribute. This panel will be skipped if there are no pack elements with an installGroups attribute.

Version:
$Revision: 1.1.1.1 $
Author:
Scott.Stark@jboss.org
See Also:
Serialized Form

Nested Class Summary
protected static class InstallationGroupPanel.GroupData
           
 
Nested classes/interfaces inherited from class com.izforge.izpack.installer.gui.IzPanel
IzPanel.Filler
 
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
 
Fields inherited from class com.izforge.izpack.installer.gui.IzPanel
DELIMITER, HEADLINE, headLineLabel, initialFocus, installData, layoutHelper, parent
 
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.api.handler.AbstractUIHandler
ANSWER_CANCEL, ANSWER_NO, ANSWER_YES, CHOICES_YES_NO
 
Fields inherited from interface com.izforge.izpack.gui.LayoutConstants
ABSOLUTE_STRETCH, ALL_GAP, AUTOMATIC_GAP, CONTROL_CONSTRAINT, CONTROL_GAP, CONTROL_TO_LABEL_GAP, CONTROL_TO_TEXT_GAP, CURRENT_COLUMN, CURRENT_ROW, DEFAULT_CONTROL_ALIGNMENT, DEFAULT_LABEL_ALIGNMENT, DEFAULT_TEXT_ALIGNMENT, FILL_OUT_COLUMN_HEIGHT, FILL_OUT_COLUMN_SIZE, FILL_OUT_COLUMN_WIDTH, FILLER1_GAP, FILLER13_GAP, FILLER2_GAP, FILLER4_GAP, FILLER5_GAP, FULL_COLUMN_STRETCH, FULL_LINE_COMPONENT_CONSTRAINT, FULL_LINE_CONTROL_CONSTRAINT, FULL_LINE_STRETCH, GAP_LOAD_MARKER, LABEL_CONSTRAINT, LABEL_GAP, LABEL_TO_CONTROL_GAP, LABEL_TO_TEXT_GAP, NEXT_COLUMN, NEXT_LINE, NEXT_ROW, NO_FILL_OUT_COLUMN, NO_GAP, NO_STRETCH, PARAGRAPH_GAP, RELATIVE_STRETCH, TEXT_CONSTRAINT, TEXT_GAP, TEXT_TO_CONTROL_GAP, TEXT_TO_LABEL_GAP, TOP_GAP, XDUMMY_CONSTRAINT, XY_VARIABLE_CONSTRAINT, YDUMMY_CONSTRAINT
 
Fields inherited from interface javax.swing.SwingConstants
BOTTOM, CENTER, EAST, HORIZONTAL, LEADING, LEFT, NEXT, NORTH, NORTH_EAST, NORTH_WEST, PREVIOUS, RIGHT, SOUTH, SOUTH_EAST, SOUTH_WEST, TOP, TRAILING, VERTICAL, WEST
 
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
 
Constructor Summary
InstallationGroupPanel(Panel panel, InstallerFrame parent, GUIInstallData installData, Resources resources, PlatformModelMatcher matcher)
          The constructor.
 
Method Summary
protected  void addDependents(Pack p, HashMap<String,Pack> packsByName, InstallationGroupPanel.GroupData data)
           
protected  void buildLayout()
          Create the panel ui.
 void createInstallationRecord(IXMLElement panelRoot)
          Creates an installation record for unattended installations on InstallationGroupPanel, created during GUI installations.
protected  String getGroupDescription(String group)
          Look for a key = InstallationGroupPanel.description.[group] entry: first using installData.langpack.getString(key+".html") next using installData.langpack.getString(key) next using installData.getVariable(key) lastly, defaulting to group + " installation"
protected  String getGroupSortKey(String group)
          Look for a key = InstallationGroupPanel.sortKey.[group] entry: by using installData.getVariable(key) if this variable is not defined, defaults to group
protected  HashMap<String,InstallationGroupPanel.GroupData> getInstallGroups(GUIInstallData idata)
          Build the set of unique installGroups installDataGUI.
protected  String getLocalizedGroupName(String group)
          Look for a key = InstallationGroupPanel.group.[group] entry: first using installData.langpackgetString(key+".html") next using installData.langpack.getString(key) next using installData.getVariable(key) lastly, defaulting to group
protected  TableModel getModel(Map<String,InstallationGroupPanel.GroupData> groupData)
           
 String getSummaryBody()
           
 boolean isValidated()
          There needs to be a valid selectedGroup to go to the next panel
 void panelActivate()
          If there are no packs with an installGroups attribute, this panel is skipped.
 void panelDeactivate()
          Remove all packs from the GUIInstallData availablePacks and selectedPacks that do not list the selected installation group.
protected  void removeUnusedPacks()
           
 void valueChanged(ListSelectionEvent e)
          Update the current selected install group index.
 
Methods inherited from class com.izforge.izpack.installer.gui.IzPanel
askQuestion, askQuestion, askWarningQuestion, canShowHelp, createLabel, createMultiLineLabel, createMultiLineLabelLang, emitError, emitNotification, emitNotificationFeedback, emitWarning, getControlTextFont, getI18nStringForClass, getI18nStringForClass, getImageIcon, getInitialFocus, getInstallerFrame, getLAF, getLayoutHelper, getMetadata, getResources, getString, getSummaryCaption, initLayoutHelper, panelValidated, parseText, saveData, setHelpUrl, setInitialFocus, showHelp, toString
 
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, transferFocus, transferFocusUpCycle
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

InstallationGroupPanel

public InstallationGroupPanel(Panel panel,
                              InstallerFrame parent,
                              GUIInstallData installData,
                              Resources resources,
                              PlatformModelMatcher matcher)
The constructor.

Parameters:
panel - the panel meta-data
parent - the parent window
installData - the installation data
resources - the resources
matcher - the platform-model matcher
Method Detail

panelActivate

public void panelActivate()
If there are no packs with an installGroups attribute, this panel is skipped. Otherwise, the unique installGroups are displayed in a table.

Overrides:
panelActivate in class IzPanel

panelDeactivate

public void panelDeactivate()
Remove all packs from the GUIInstallData availablePacks and selectedPacks that do not list the selected installation group. Packs without any installGroups are always included.

Overrides:
panelDeactivate in class IzPanel

isValidated

public boolean isValidated()
There needs to be a valid selectedGroup to go to the next panel

Overrides:
isValidated in class IzPanel
Returns:
true if selectedGroup >= 0, false otherwise

valueChanged

public void valueChanged(ListSelectionEvent e)
Update the current selected install group index.

Specified by:
valueChanged in interface ListSelectionListener
Parameters:
e -

createInstallationRecord

public void createInstallationRecord(IXMLElement panelRoot)
Creates an installation record for unattended installations on InstallationGroupPanel, created during GUI installations.

Overrides:
createInstallationRecord in class IzPanel
Parameters:
panelRoot - the root element to add the xml to

getSummaryBody

public String getSummaryBody()
Specified by:
getSummaryBody in interface ISummarisable
Overrides:
getSummaryBody in class IzPanel

buildLayout

protected void buildLayout()
Create the panel ui.


removeUnusedPacks

protected void removeUnusedPacks()

addDependents

protected void addDependents(Pack p,
                             HashMap<String,Pack> packsByName,
                             InstallationGroupPanel.GroupData data)

getInstallGroups

protected HashMap<String,InstallationGroupPanel.GroupData> getInstallGroups(GUIInstallData idata)
Build the set of unique installGroups installDataGUI. The GroupData description is taken from the InstallationGroupPanel.description.[name] property where [name] is the installGroup name. The GroupData size is built from the Pack.size sum.

Parameters:
idata - - the panel install installDataGUI
Returns:
HashMap of unique install group names

getGroupDescription

protected String getGroupDescription(String group)
Look for a key = InstallationGroupPanel.description.[group] entry: first using installData.langpack.getString(key+".html") next using installData.langpack.getString(key) next using installData.getVariable(key) lastly, defaulting to group + " installation"

Parameters:
group - - the installation group name
Returns:
the group description

getGroupSortKey

protected String getGroupSortKey(String group)
Look for a key = InstallationGroupPanel.sortKey.[group] entry: by using installData.getVariable(key) if this variable is not defined, defaults to group

Parameters:
group - - the installation group name
Returns:
the group sortkey

getLocalizedGroupName

protected String getLocalizedGroupName(String group)
Look for a key = InstallationGroupPanel.group.[group] entry: first using installData.langpackgetString(key+".html") next using installData.langpack.getString(key) next using installData.getVariable(key) lastly, defaulting to group

Parameters:
group - - the installation group name
Returns:
the localized group name

getModel

protected TableModel getModel(Map<String,InstallationGroupPanel.GroupData> groupData)


Copyright © 2018. All rights reserved.