weka.gui.experiment
Class SetupPanel

java.lang.Object
  extended byjava.awt.Component
      extended byjava.awt.Container
          extended byjavax.swing.JComponent
              extended byjavax.swing.JPanel
                  extended byweka.gui.experiment.SetupPanel
All Implemented Interfaces:
javax.accessibility.Accessible, java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable

public class SetupPanel
extends javax.swing.JPanel

This panel controls the configuration of an experiment.

Version:
$Revision: 1.21 $
Author:
Len Trigg (trigg@cs.waikato.ac.nz), Mark Hall (mhall@cs.waikato.ac.nz)
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  javax.swing.JRadioButton m_advanceDataSetFirst
          Click to advacne data set before custom generator
protected  javax.swing.JRadioButton m_advanceIteratorFirst
          Click to advance custom generator before data set
protected  DatasetListPanel m_DatasetListPanel
          The panel for configuring selected datasets
protected  DistributeExperimentPanel m_DistributeExperimentPanel
          The panel for enabling a distributed experiment
protected  Experiment m_Exp
          The experiment being configured
protected  javax.swing.filechooser.FileFilter m_ExpFilter
          A filter to ensure only experiment files get shown in the chooser
protected  javax.swing.JFileChooser m_FileChooser
          The file chooser for selecting experiments
protected  GeneratorPropertyIteratorPanel m_GeneratorPropertyPanel
          The panel that configures iteration on custom resultproducer property
protected  javax.swing.JButton m_NewBut
          Click to create a new experiment with default settings
protected  javax.swing.JTextArea m_NotesText
          Area for user notes Default of 5 rows
protected  javax.swing.JButton m_OpenBut
          Click to load an experiment
(package private)  java.awt.event.ActionListener m_RadioListener
          Handle radio buttons
protected  GenericObjectEditor m_RLEditor
          The ResultListener editor
protected  PropertyPanel m_RLEditorPanel
          The panel to contain the ResultListener editor
protected  GenericObjectEditor m_RPEditor
          The ResultProducer editor
protected  PropertyPanel m_RPEditorPanel
          The panel to contain the ResultProducer editor
protected  RunNumberPanel m_RunNumberPanel
          The panel for configuring run numbers
protected  javax.swing.JButton m_SaveBut
          Click to save an experiment
protected  java.beans.PropertyChangeSupport m_Support
          Manages sending notifications to people when we change the experiment, at this stage, only the resultlistener so the resultpanel can update.
 
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 java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
 
Constructor Summary
SetupPanel()
          Creates the setup panel with no initial experiment.
SetupPanel(Experiment exp)
          Creates the setup panel with the supplied initial experiment.
 
Method Summary
 void addPropertyChangeListener(java.beans.PropertyChangeListener l)
          Adds a PropertyChangeListener who will be notified of value changes.
 Experiment getExperiment()
          Gets the currently configured experiment.
static void main(java.lang.String[] args)
          Tests out the experiment setup from the command line.
private  void openExperiment()
          Prompts the user to select an experiment file and loads it.
 void removePropertyChangeListener(java.beans.PropertyChangeListener l)
          Removes a PropertyChangeListener.
private  void saveExperiment()
          Prompts the user for a filename to save the experiment to, then saves the experiment.
 void setExperiment(Experiment exp)
          Sets the experiment to configure.
private  void updateRadioLinks()
          Updates the primary loop iteration control of the experiment
 
Methods inherited from class javax.swing.JPanel
getAccessibleContext, getUI, getUIClassID, paramString, setUI, updateUI
 
Methods inherited from class javax.swing.JComponent
addAncestorListener, addNotify, 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, 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

m_Exp

protected Experiment m_Exp
The experiment being configured


m_OpenBut

protected javax.swing.JButton m_OpenBut
Click to load an experiment


m_SaveBut

protected javax.swing.JButton m_SaveBut
Click to save an experiment


m_NewBut

protected javax.swing.JButton m_NewBut
Click to create a new experiment with default settings


m_ExpFilter

protected javax.swing.filechooser.FileFilter m_ExpFilter
A filter to ensure only experiment files get shown in the chooser


m_FileChooser

protected javax.swing.JFileChooser m_FileChooser
The file chooser for selecting experiments


m_RPEditor

protected GenericObjectEditor m_RPEditor
The ResultProducer editor


m_RPEditorPanel

protected PropertyPanel m_RPEditorPanel
The panel to contain the ResultProducer editor


m_RLEditor

protected GenericObjectEditor m_RLEditor
The ResultListener editor


m_RLEditorPanel

protected PropertyPanel m_RLEditorPanel
The panel to contain the ResultListener editor


m_GeneratorPropertyPanel

protected GeneratorPropertyIteratorPanel m_GeneratorPropertyPanel
The panel that configures iteration on custom resultproducer property


m_RunNumberPanel

protected RunNumberPanel m_RunNumberPanel
The panel for configuring run numbers


m_DistributeExperimentPanel

protected DistributeExperimentPanel m_DistributeExperimentPanel
The panel for enabling a distributed experiment


m_DatasetListPanel

protected DatasetListPanel m_DatasetListPanel
The panel for configuring selected datasets


m_NotesText

protected javax.swing.JTextArea m_NotesText
Area for user notes Default of 5 rows


m_Support

protected java.beans.PropertyChangeSupport m_Support
Manages sending notifications to people when we change the experiment, at this stage, only the resultlistener so the resultpanel can update.


m_advanceDataSetFirst

protected javax.swing.JRadioButton m_advanceDataSetFirst
Click to advacne data set before custom generator


m_advanceIteratorFirst

protected javax.swing.JRadioButton m_advanceIteratorFirst
Click to advance custom generator before data set


m_RadioListener

java.awt.event.ActionListener m_RadioListener
Handle radio buttons

Constructor Detail

SetupPanel

public SetupPanel(Experiment exp)
Creates the setup panel with the supplied initial experiment.

Parameters:
exp - a value of type 'Experiment'

SetupPanel

public SetupPanel()
Creates the setup panel with no initial experiment.

Method Detail

setExperiment

public void setExperiment(Experiment exp)
Sets the experiment to configure.

Parameters:
exp - a value of type 'Experiment'

getExperiment

public Experiment getExperiment()
Gets the currently configured experiment.

Returns:
the currently configured experiment.

openExperiment

private void openExperiment()
Prompts the user to select an experiment file and loads it.


saveExperiment

private void saveExperiment()
Prompts the user for a filename to save the experiment to, then saves the experiment.


addPropertyChangeListener

public void addPropertyChangeListener(java.beans.PropertyChangeListener l)
Adds a PropertyChangeListener who will be notified of value changes.

Parameters:
l - a value of type 'PropertyChangeListener'

removePropertyChangeListener

public void removePropertyChangeListener(java.beans.PropertyChangeListener l)
Removes a PropertyChangeListener.

Parameters:
l - a value of type 'PropertyChangeListener'

updateRadioLinks

private void updateRadioLinks()
Updates the primary loop iteration control of the experiment


main

public static void main(java.lang.String[] args)
Tests out the experiment setup from the command line.

Parameters:
args - arguments to the program.