com.izforge.izpack.panels
Class CompilePanel

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
                      extended bycom.izforge.izpack.panels.CompilePanel
All Implemented Interfaces:
AbstractUIHandler, AbstractUIProgressHandler, javax.accessibility.Accessible, java.awt.event.ActionListener, CompileHandler, java.util.EventListener, java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable

public class CompilePanel
extends IzPanel
implements java.awt.event.ActionListener, CompileHandler

The compile panel class. This class allows .java files to be compiled after installation. Parts of the code have been taken from InstallPanel.java and modified a lot.

Author:
Tino Schwarze, Julien Ponge
See Also:
Serialized Form

Nested Class Summary
protected  class CompilePanel.CompilerErrorDialog
          Show a special dialog for compiler errors.
 
Nested classes inherited from class com.izforge.izpack.installer.IzPanel
IzPanel.Filler
 
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  javax.swing.JComboBox argumentsComboBox
          The combobox for compiler argument selection.
protected  javax.swing.JButton browseButton
          The browse button.
protected  javax.swing.JComboBox compilerComboBox
          The combobox for compiler selection.
private  int noOfJobs
          Number of jobs to compile.
protected  javax.swing.JLabel opLabel
          The operation label .
protected  javax.swing.JLabel overallLabel
          The operation label .
protected  javax.swing.JProgressBar overallProgressBar
          The overall progress bar.
protected  javax.swing.JProgressBar packProgressBar
          The pack progress bar.
private static long serialVersionUID
           
protected  javax.swing.JButton startButton
          The start button.
protected  javax.swing.JLabel tipLabel
          The tip label.
private  boolean validated
          True if the compilation has been done.
private  CompileWorker worker
          The compilation worker.
 
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.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
CompilePanel(InstallerFrame parent, InstallData idata)
          The constructor.
 
Method Summary
 void actionPerformed(java.awt.event.ActionEvent e)
          Action function, called when the start button is pressed.
protected  void blockGUI()
          Block the GUI - disalow input.
 void handleCompileError(CompileResult error)
          An error was encountered.
 boolean isValidated()
          Indicates wether the panel has been validated or not.
 void makeXMLData(XMLElement panelRoot)
          Create XML data for automated installation.
 void nextStep(java.lang.String jobName, int max, int jobNo)
          Job changing.
 void panelActivate()
          Called when the panel becomes active.
 void progress(int val, java.lang.String msg)
          Normal progress indicator.
protected  void releaseGUI(boolean allowconfig)
          Release the GUI - allow input.
 void startAction(java.lang.String name, int noOfJobs)
          The compiler starts.
 void stopAction()
          The compiler stops.
 
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, 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, 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
 
Methods inherited from interface com.izforge.izpack.util.AbstractUIHandler
askQuestion, askQuestion, emitError, emitNotification, emitWarning
 

Field Detail

serialVersionUID

private static final long serialVersionUID
See Also:
Constant Field Values

compilerComboBox

protected javax.swing.JComboBox compilerComboBox
The combobox for compiler selection.


argumentsComboBox

protected javax.swing.JComboBox argumentsComboBox
The combobox for compiler argument selection.


startButton

protected javax.swing.JButton startButton
The start button.


browseButton

protected javax.swing.JButton browseButton
The browse button.


tipLabel

protected javax.swing.JLabel tipLabel
The tip label.


opLabel

protected javax.swing.JLabel opLabel
The operation label .


packProgressBar

protected javax.swing.JProgressBar packProgressBar
The pack progress bar.


overallLabel

protected javax.swing.JLabel overallLabel
The operation label .


overallProgressBar

protected javax.swing.JProgressBar overallProgressBar
The overall progress bar.


validated

private boolean validated
True if the compilation has been done.


worker

private CompileWorker worker
The compilation worker. Does all the work.


noOfJobs

private int noOfJobs
Number of jobs to compile. Used for progress indication.

Constructor Detail

CompilePanel

public CompilePanel(InstallerFrame parent,
                    InstallData idata)
             throws java.io.IOException
The constructor.

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

isValidated

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

Overrides:
isValidated in class IzPanel
Returns:
The validation state.

actionPerformed

public void actionPerformed(java.awt.event.ActionEvent e)
Action function, called when the start button is pressed.

Specified by:
actionPerformed in interface java.awt.event.ActionListener

blockGUI

protected void blockGUI()
Block the GUI - disalow input.


releaseGUI

protected void releaseGUI(boolean allowconfig)
Release the GUI - allow input.

Parameters:
allowconfig - allow the user to enter new configuration

handleCompileError

public void handleCompileError(CompileResult error)
An error was encountered.

Specified by:
handleCompileError in interface CompileHandler
Parameters:
error - The error information.
See Also:
CompileHandler

startAction

public void startAction(java.lang.String name,
                        int noOfJobs)
The compiler starts.

Specified by:
startAction in interface AbstractUIProgressHandler
Parameters:
name - The name of the action.
noOfJobs - The number of steps the action consists of.

stopAction

public void stopAction()
The compiler stops.

Specified by:
stopAction in interface AbstractUIProgressHandler

progress

public void progress(int val,
                     java.lang.String msg)
Normal progress indicator.

Specified by:
progress in interface AbstractUIProgressHandler
Parameters:
val - The progression value.
msg - The progression message.

nextStep

public void nextStep(java.lang.String jobName,
                     int max,
                     int jobNo)
Job changing.

Specified by:
nextStep in interface AbstractUIProgressHandler
Parameters:
jobName - The job name.
max - The new maximum progress.
jobNo - The job number.

panelActivate

public void panelActivate()
Called when the panel becomes active.

Overrides:
panelActivate in class IzPanel

makeXMLData

public void makeXMLData(XMLElement panelRoot)
Create XML data for automated installation.

Overrides:
makeXMLData in class IzPanel
Parameters:
panelRoot - The XML root element of the panels blackbox tree.