Package org.opensourcephysics.tools
Class ParamEditor
java.lang.Object
java.awt.Component
java.awt.Container
javax.swing.JComponent
javax.swing.JPanel
org.opensourcephysics.tools.FunctionEditor
org.opensourcephysics.tools.ParamEditor
- All Implemented Interfaces:
ImageObserver,MenuContainer,PropertyChangeListener,Serializable,EventListener,Accessible
- Direct Known Subclasses:
InitialValueEditor
A FunctionEditor for Parameters.
- Author:
- Douglas Brown
- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from class org.opensourcephysics.tools.FunctionEditor
FunctionEditor.DefaultEdit, FunctionEditor.FObject, FunctionEditor.Table, FunctionEditor.TableModelNested classes/interfaces inherited from class javax.swing.JPanel
JPanel.AccessibleJPanelNested classes/interfaces inherited from class javax.swing.JComponent
JComponent.AccessibleJComponentNested classes/interfaces inherited from class java.awt.Container
Container.AccessibleAWTContainerNested classes/interfaces inherited from class java.awt.Component
Component.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategy -
Field Summary
FieldsModifier and TypeFieldDescriptionprotected String[]protected double[]protected JCheckBoxprotected booleanFields inherited from class org.opensourcephysics.tools.FunctionEditor
ADD_EDIT, addButtonPanel, allowPopopFieldTooltip, anglesInDegrees, circularErrors, confirmChanges, DEGREES, editTypes, errors, evaluate, EXPRESSION_EDIT, forbiddenNames, functionPanel, NAME_EDIT, names, newButtonTipText, objects, OMEGA, paramEditor, PROPERTY_FUNCTIONEDITOR_ANGLESINRADIANS, PROPERTY_FUNCTIONEDITOR_CLIPBOARD, PROPERTY_FUNCTIONEDITOR_DESCRIPTION, PROPERTY_FUNCTIONEDITOR_EDIT, PROPERTY_FUNCTIONEDITOR_FOCUS, PROPERTY_FUNCTIONEDITOR_PARAM_DESCRIPTION, referencesChecked, removablesAtTop, REMOVE_EDIT, skipAllName, table, tableCellEditor, tableCellRenderer, tableModel, THETA, titledBorderText, undoEditsEnabledFields inherited from class javax.swing.JComponent
listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOWFields inherited from class java.awt.Component
accessibleContext, BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENTFields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH -
Constructor Summary
ConstructorsConstructorDescriptionDefault constructorParamEditor(DatasetManager input) Constructor using a DatasetManager to define initial parameters -
Method Summary
Modifier and TypeMethodDescriptionprotected voidCreates the GUI.protected FunctionEditor.FObjectcreateObject(String name, String expression, FunctionEditor.FObject obj) Creates an object with specified name and expression.protected voidSets the synced property of a Parameter.protected voidRefreshes button states.voidEvaluates all current objects.evaluateDependents(Parameter seed) Evaluates parameters that depend on the named parameter.protected voidEvaluates an object.protected StringReturns the default name for newly created objects.Returns the description of the object.String[]Gets the current parameter descriptions.Returns the expression of the object.Returns the name of the object.Gets an array containing copies of the current parameters.Returns a tooltip for the object.double[]Gets the current parameter values.protected booleanisDisallowedName(FunctionEditor.FObject obj, String name) Returns true if a name is already in use.booleanDetermines if an object's expression is editable.protected booleanDetermines if an object is important.protected booleanReturns true if the object expression is invalid.booleanDetermines if an object's name is editable.voidLoads parameters from the current datasetManager.protected voidPastes the clipboard contents.voidRefreshes the GUI.protected voidRefreshes the parameters associated with a user function.voidsetDescription(String name, String description) Sets the description of the named parameter, if any.voidsetDescription(FunctionEditor.FObject obj, String desc) Sets the description of an object.voidsetFunctionEditors(FunctionEditor[] editors) Sets the function editors that use these parameters.voidsetParameters(Parameter[] params) Replaces the current parameters with new ones.protected voidsetReferences(FunctionEditor.FObject obj, BitSet directReferences) Subclasses implement to set objects referenced in an object's expression.voidsetSyncing(boolean sync) Turns on syncing, used by ModelBuilder to sync Parametersprotected voidMethods inherited from class org.opensourcephysics.tools.FunctionEditor
addObject, addObject, checkGUI, containsInvalidExpressions, createUniqueObject, format, getClipboardContentsAsync, getConfirmChanges, getFunctionPanel, getNames, getObject, getObjects, getParamEditor, getPartlyEditableRowCount, getPreferredSize, getSelectedObject, getSelectedObjects, getTable, getUndoableEdit, getVariablePoints, getVariablesString, getVariablesString, hasReference, haveGUI, isRemovable, isValidExpression, propertyChange, references, refreshStrings, removeObject, round, setAnglesInDegrees, setArrays, setBorderTitle, setConfirmChanges, setCustomButtons, setExpression, setFunctionPanel, setObjects, setParamEditor, setVisible, tabToNext, updateTableMethods inherited from class javax.swing.JPanel
getAccessibleContext, getUI, getUIClassID, paramString, setUI, updateUIMethods 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, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, hide, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingOrigin, 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, unregisterKeyboardAction, updateMethods 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, transferFocusDownCycle, validate, validateTreeMethods 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, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, 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, requestFocus, requestFocus, requestFocusInWindow, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setMixingCutoutShape, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
-
Field Details
-
paramValues
protected double[] paramValues -
paramDescriptions
-
syncedCheckbox
-
syncing
protected boolean syncing
-
-
Constructor Details
-
ParamEditor
public ParamEditor()Default constructor -
ParamEditor
Constructor using a DatasetManager to define initial parameters- Parameters:
input- the DatasetManager
-
-
Method Details
-
createGUI
protected void createGUI()Description copied from class:FunctionEditorCreates the GUI.- Overrides:
createGUIin classFunctionEditor
-
refreshGUI
public void refreshGUI()Description copied from class:FunctionEditorRefreshes the GUI.- Overrides:
refreshGUIin classFunctionEditor
-
enableMenuButtons
protected void enableMenuButtons()Description copied from class:FunctionEditorRefreshes button states.- Overrides:
enableMenuButtonsin classFunctionEditor
-
doSyncAction
protected void doSyncAction()Sets the synced property of a Parameter.- Parameters:
synced- booleanparam- the Parameter
-
getParameters
Gets an array containing copies of the current parameters.- Returns:
- an array of Parameters
-
setParameters
Replaces the current parameters with new ones.- Parameters:
params- an array of Parameters
-
setFunctionEditors
Sets the function editors that use these parameters.- Parameters:
editors- an array of FunctionEditors
-
getValues
public double[] getValues()Gets the current parameter values.- Returns:
- an array of values
-
getDescriptions
Gets the current parameter descriptions.- Returns:
- an array of descriptions
-
getName
Returns the name of the object.- Specified by:
getNamein classFunctionEditor- Parameters:
obj- the object- Returns:
- the name
-
getExpression
Returns the expression of the object.- Specified by:
getExpressionin classFunctionEditor- Parameters:
obj- the object- Returns:
- the expression
-
getDescription
Returns the description of the object.- Specified by:
getDescriptionin classFunctionEditor- Parameters:
obj- the object- Returns:
- the description
-
setDescription
Sets the description of an object.- Overrides:
setDescriptionin classFunctionEditor- Parameters:
obj- the objectdesc- the description
-
setDescription
Sets the description of the named parameter, if any.- Parameters:
name- the namedescription- the description
-
setSyncing
public void setSyncing(boolean sync) Turns on syncing, used by ModelBuilder to sync Parameters- Parameters:
obj- the object
-
getTooltip
Returns a tooltip for the object.- Specified by:
getTooltipin classFunctionEditor- Parameters:
obj- the object- Returns:
- the tooltip
-
isNameEditable
Determines if an object's name is editable.- Overrides:
isNameEditablein classFunctionEditor- Parameters:
obj- the object- Returns:
- true if the name is editable
-
isExpressionEditable
Determines if an object's expression is editable.- Overrides:
isExpressionEditablein classFunctionEditor- Parameters:
obj- the object- Returns:
- true if the expression is editable
-
evaluateObject
Evaluates an object. -
evaluateDependents
Evaluates parameters that depend on the named parameter.- Parameters:
seed- the independent parameter- Returns:
- a list of evaluated dependent parameters
-
evaluateAll
public void evaluateAll()Evaluates all current objects.- Specified by:
evaluateAllin classFunctionEditor
-
isDisallowedName
Returns true if a name is already in use.- Overrides:
isDisallowedNamein classFunctionEditor- Parameters:
obj- the object (may be null)name- the proposed name for the object- Returns:
- true if duplicate
-
pasteAction
protected void pasteAction()Pastes the clipboard contents.- Overrides:
pasteActionin classFunctionEditor
-
isInvalidExpression
Returns true if the object expression is invalid.- Specified by:
isInvalidExpressionin classFunctionEditor
-
createObject
protected FunctionEditor.FObject createObject(String name, String expression, FunctionEditor.FObject obj) Creates an object with specified name and expression. This always returns a new Parameter but copies the editable properties.- Specified by:
createObjectin classFunctionEditor- Parameters:
name- the nameexpression- the expressionobj- ignored- Returns:
- the object
-
setTitles
protected void setTitles()- Specified by:
setTitlesin classFunctionEditor
-
loadParametersFromData
public void loadParametersFromData()Loads parameters from the current datasetManager. -
refreshParametersFromFunction
Refreshes the parameters associated with a user function. -
getDefaultName
Returns the default name for newly created objects.- Overrides:
getDefaultNamein classFunctionEditor
-
isImportant
Description copied from class:FunctionEditorDetermines if an object is important.- Specified by:
isImportantin classFunctionEditor- Parameters:
obj- the object- Returns:
- true if important
-
setReferences
Description copied from class:FunctionEditorSubclasses implement to set objects referenced in an object's expression.- Specified by:
setReferencesin classFunctionEditor
-