de.lmu.ifi.dbs.elki.gui.multistep.panels
Class ParameterTabPanel

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 de.lmu.ifi.dbs.elki.gui.multistep.panels.ParameterTabPanel
All Implemented Interfaces:
Observable<ParameterTabPanel>, ImageObserver, MenuContainer, Serializable, EventListener, Accessible, ChangeListener
Direct Known Subclasses:
AlgorithmTabPanel, EvaluationTabPanel, InputTabPanel, LoggingTabPanel, OutputTabPanel

public abstract class ParameterTabPanel
extends JPanel
implements Observable<ParameterTabPanel>, ChangeListener

Abstract panel, showing particular options.

See Also:
Serialized Form

Nested Class Summary
 
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
protected static Logging logger
          ELKI logger for the GUI
protected  Observers<ParameterTabPanel> observers
          Observers of this panel
private  ConfiguratorPanel parameterTable
          The parameter table
private  JButton runButton
          The "run" button.
private static long serialVersionUID
          Serial version
static String STATUS_COMPLETE
          Status to signal the step has been run completely.
static String STATUS_CONFIGURED
          Status to signal the step has been configured properly.
static String STATUS_FAILED
          Status to signal the step has failed somehow
static String STATUS_READY
          Status to signal the step is ready to run
static String STATUS_UNCONFIGURED
          Status to signal the step has been configured properly.
private  JLabel statusText
          The status text field
 
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 java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
 
Constructor Summary
ParameterTabPanel()
          Input pane
 
Method Summary
 void addObserver(Observer<? super ParameterTabPanel> o)
          Add an observer to the object.
 void appendParameters(ListParameterization params)
          Collect parameters
 boolean canRun()
          Test if this tab is ready-to-run
protected abstract  void configureStep(Parameterization config)
          Configure this step with the given parameters.
protected  void execute()
          Execute the task.
protected abstract  void executeStep()
          Execute the configured step.
protected abstract  String getStatus()
          Get the current status of this step.
 boolean isComplete()
          Test if this tab is complete
 void removeObserver(Observer<? super ParameterTabPanel> o)
          Remove an observer from the object.
protected  void reportErrors(Parameterization config)
          Report errors in a single error log record.
 void setParameters(Parameterization config)
          Do the actual setParameters invocation.
 void stateChanged(ChangeEvent e)
           
protected  void updateParameterTable()
          Serialize the parameter table and run setParameters()
protected  void updateStatus()
          Invoked to update the UI when the status could have changed.
 
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, toString, transferFocus, 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
Serial version

See Also:
Constant Field Values

STATUS_UNCONFIGURED

public static final String STATUS_UNCONFIGURED
Status to signal the step has been configured properly.

See Also:
Constant Field Values

STATUS_CONFIGURED

public static final String STATUS_CONFIGURED
Status to signal the step has been configured properly.

See Also:
Constant Field Values

STATUS_READY

public static final String STATUS_READY
Status to signal the step is ready to run

See Also:
Constant Field Values

STATUS_COMPLETE

public static final String STATUS_COMPLETE
Status to signal the step has been run completely.

See Also:
Constant Field Values

STATUS_FAILED

public static final String STATUS_FAILED
Status to signal the step has failed somehow

See Also:
Constant Field Values

logger

protected static final Logging logger
ELKI logger for the GUI


parameterTable

private final ConfiguratorPanel parameterTable
The parameter table


runButton

private final JButton runButton
The "run" button.


statusText

private final JLabel statusText
The status text field


observers

protected final Observers<ParameterTabPanel> observers
Observers of this panel

Constructor Detail

ParameterTabPanel

public ParameterTabPanel()
Input pane

Method Detail

updateParameterTable

protected void updateParameterTable()
Serialize the parameter table and run setParameters()


setParameters

public void setParameters(Parameterization config)
Do the actual setParameters invocation.

Parameters:
config - Parameterization

appendParameters

public void appendParameters(ListParameterization params)
Collect parameters

Parameters:
params - Parameter list to add to

reportErrors

protected void reportErrors(Parameterization config)
Report errors in a single error log record.

Parameters:
config - Parameterization

execute

protected void execute()
Execute the task.


configureStep

protected abstract void configureStep(Parameterization config)
Configure this step with the given parameters.

Parameters:
config - Configuration to use.

getStatus

protected abstract String getStatus()
Get the current status of this step.

Returns:
current status

executeStep

protected abstract void executeStep()
Execute the configured step.


canRun

public boolean canRun()
Test if this tab is ready-to-run

Returns:
can-run status

isComplete

public boolean isComplete()
Test if this tab is complete

Returns:
completeness status

updateStatus

protected void updateStatus()
Invoked to update the UI when the status could have changed.


addObserver

public void addObserver(Observer<? super ParameterTabPanel> o)
Description copied from interface: Observable
Add an observer to the object.

Specified by:
addObserver in interface Observable<ParameterTabPanel>
Parameters:
o - Observer to add

removeObserver

public void removeObserver(Observer<? super ParameterTabPanel> o)
Description copied from interface: Observable
Remove an observer from the object.

Specified by:
removeObserver in interface Observable<ParameterTabPanel>
Parameters:
o - Observer to remove

stateChanged

public void stateChanged(ChangeEvent e)
Specified by:
stateChanged in interface ChangeListener

Release 0.4.0 (2011-09-20_1324)