org.opensha.commons.param.editor.impl
Class ParameterListParameterEditor

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 org.opensha.commons.gui.LabeledBorderPanel
                      extended by org.opensha.commons.param.editor.AbstractParameterEditor<ParameterList>
                          extended by org.opensha.commons.param.editor.impl.ParameterListParameterEditor
All Implemented Interfaces:
ActionListener, ImageObserver, MenuContainer, Serializable, EventListener, Accessible, ParameterEditor<ParameterList>, ParameterChangeListener
Direct Known Subclasses:
TreeBranchWeightsParameterEditor

public class ParameterListParameterEditor
extends AbstractParameterEditor<ParameterList>
implements ActionListener, ParameterChangeListener

Title: ParameterListParameterEditor

Description: This class is more like a parameterList consisting of any number of parameters. This parameterList considered as a single Parameter. This parameter editor will show up as the button on th GUI interface and when the user punches the button, all the parameters will pop up in a seperate window showing all the parameters contained within this parameter.

Version:
1.0
Author:
: Ned Field, Nitin Gupta and Vipin Gupta
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 String C
          Class name for debugging.
protected static boolean D
          If true print out debug statements.
protected  ParameterListEditor editor
           
protected  JDialog frame
           
protected  boolean parameterChangeFlag
           
 
Fields inherited from class org.opensha.commons.param.editor.AbstractParameterEditor
CONST_BORDER, DEFAULT_FONT, ETCHED, FOCUS_BORDER, LABEL_DIM, LABEL_PANEL_DIM, WIGET_PANEL_DIM
 
Fields inherited from class org.opensha.commons.gui.LabeledBorderPanel
addDefault, borderColor, editorPanel, GBL, jScrollPane1, mainPanel, PARAMETER_LABEL_FONT, PARAMTER_FORE_COLOR, title
 
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
ParameterListParameterEditor(Parameter<ParameterList> model)
           
ParameterListParameterEditor(Parameter<ParameterList> model, boolean useButton)
           
 
Method Summary
 void actionPerformed(ActionEvent e)
          This function is called when the user click for the ParameterListParameterEditor Button
protected  JComponent buildWidget()
          This will be called by refreshParamEditor to initially build the widget component.
protected  void button_actionPerformed(ActionEvent e)
          This function is called when user punches the button to update the ParameterList Parameter
 boolean isParameterSupported(Parameter<ParameterList> param)
          Abstract method that allows subclasses to define if a specific parameter is valid.
 void parameterChange(ParameterChangeEvent event)
          Keeps track when parameter has been changed
 void setEnabled(boolean isEnabled)
          It enables/disables the editor according to whether user is allowed to fill in the values.
 void setModal(boolean modal)
           
 void setParameterVisible(String parameterName, boolean visible)
          Hides or shows one of the ParameterEditors in the ParameterList.
protected  JComponent updateWidget()
          This is called by refreshParamEditor when the parameters value is changed externally and the widget needs to be updated to reflect the new value.
 
Methods inherited from class org.opensha.commons.param.editor.AbstractParameterEditor
getComponent, getLabelToolTipText, getParameter, getValue, getWidget, getWidgetToolTipText, isFocusEnabled, makeSingleConstraintValueLabel, refreshParamEditor, removeWidget, setEditorBorder, setFocusEnabled, setParameter, setValue, unableToSetValue, updateTitle
 
Methods inherited from class org.opensha.commons.gui.LabeledBorderPanel
add, add, add, add, add, getBorderColor, getTitle, initParameterLookAndFeel, jbInit, remove, remove, removeAll, setBorderColor, setLayout, setTitle, setTitleFont, setTitleJustification, setTitlePosition
 
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, 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
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, removeContainerListener, setComponentZOrder, setFocusCycleRoot, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, 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
 
Methods inherited from interface org.opensha.commons.param.editor.ParameterEditor
isVisible, setVisible
 

Field Detail

C

protected static final String C
Class name for debugging.

See Also:
Constant Field Values

D

protected static final boolean D
If true print out debug statements.

See Also:
Constant Field Values

editor

protected ParameterListEditor editor

frame

protected JDialog frame

parameterChangeFlag

protected boolean parameterChangeFlag
Constructor Detail

ParameterListParameterEditor

public ParameterListParameterEditor(Parameter<ParameterList> model)

ParameterListParameterEditor

public ParameterListParameterEditor(Parameter<ParameterList> model,
                                    boolean useButton)
Method Detail

setEnabled

public void setEnabled(boolean isEnabled)
It enables/disables the editor according to whether user is allowed to fill in the values.

Specified by:
setEnabled in interface ParameterEditor<ParameterList>
Specified by:
setEnabled in class AbstractParameterEditor<ParameterList>

setParameterVisible

public void setParameterVisible(String parameterName,
                                boolean visible)
Hides or shows one of the ParameterEditors in the ParameterList. setting the boolean parameter to true shows the panel, setting it to false hides the panel.

Parameters:
parameterName - The parameter editor to toggle on or off.
visible - The boolean flag. If true editor is visible.

parameterChange

public void parameterChange(ParameterChangeEvent event)
Keeps track when parameter has been changed

Specified by:
parameterChange in interface ParameterChangeListener
Parameters:
event -

actionPerformed

public void actionPerformed(ActionEvent e)
This function is called when the user click for the ParameterListParameterEditor Button

Specified by:
actionPerformed in interface ActionListener
Parameters:
ae -

button_actionPerformed

protected void button_actionPerformed(ActionEvent e)
This function is called when user punches the button to update the ParameterList Parameter

Parameters:
e -

isParameterSupported

public boolean isParameterSupported(Parameter<ParameterList> param)
Description copied from class: AbstractParameterEditor
Abstract method that allows subclasses to define if a specific parameter is valid. An editor could, for example, disallow null parameters or only allow parameters with a specific type of constraint. This is called when setParameter is called.

Specified by:
isParameterSupported in class AbstractParameterEditor<ParameterList>
Returns:

buildWidget

protected JComponent buildWidget()
Description copied from class: AbstractParameterEditor
This will be called by refreshParamEditor to initially build the widget component.

Specified by:
buildWidget in class AbstractParameterEditor<ParameterList>
Returns:
widget editing component to be displayed in the editor

updateWidget

protected JComponent updateWidget()
Description copied from class: AbstractParameterEditor
This is called by refreshParamEditor when the parameters value is changed externally and the widget needs to be updated to reflect the new value. If the widget can be simply updated to display/edit the new value, it should do so.

If it needs to be rebuilt, then this can either return null (which will result in a subsequent call to buildWidget), or return the new component.

Specified by:
updateWidget in class AbstractParameterEditor<ParameterList>
Returns:
updated component, or new component/null if it needs to be rebuilt

setModal

public void setModal(boolean modal)