Package org.opensourcephysics.controls
Class OSPControl
java.lang.Object
java.awt.Component
java.awt.Container
java.awt.Window
java.awt.Frame
javax.swing.JFrame
org.opensourcephysics.display.OSPFrame
org.opensourcephysics.controls.ControlFrame
org.opensourcephysics.controls.OSPControl
- All Implemented Interfaces:
ImageObserver
,MenuContainer
,PropertyChangeListener
,Serializable
,EventListener
,Accessible
,RootPaneContainer
,WindowConstants
,Control
,MainFrame
,AppFrame
,Hidable
- Direct Known Subclasses:
AnimationControl
,CalculationControl
A Control that shows its parameters in a JTable. Custom buttons can be added.
- Version:
- 1.0
- Author:
- Wolfgang Christian
- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from class javax.swing.JFrame
JFrame.AccessibleJFrame
Nested classes/interfaces inherited from class java.awt.Frame
Frame.AccessibleAWTFrame
Nested classes/interfaces inherited from class java.awt.Window
Window.AccessibleAWTWindow, Window.Type
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
Fields inherited from class org.opensourcephysics.controls.ControlFrame
clearItem, copyItem, displayMenu, editMenu, fileMenu, inspectItem, languageItems, languageMenu, model, ospApp, printFrameItem, readItem, saveAsItem, saveFrameAsEPSItem, sizeDownItem, sizeUpItem, xmlDefault
Fields inherited from class org.opensourcephysics.display.OSPFrame
action, animated, autoclear, buttonPanel, childFrames, constructorThreadGroup, customButtons, keepHidden, myFontLevel, strategy
Fields inherited from class javax.swing.JFrame
accessibleContext, rootPane, rootPaneCheckingEnabled
Fields inherited from class java.awt.Frame
CROSSHAIR_CURSOR, DEFAULT_CURSOR, E_RESIZE_CURSOR, HAND_CURSOR, ICONIFIED, MAXIMIZED_BOTH, MAXIMIZED_HORIZ, MAXIMIZED_VERT, MOVE_CURSOR, N_RESIZE_CURSOR, NE_RESIZE_CURSOR, NORMAL, NW_RESIZE_CURSOR, S_RESIZE_CURSOR, SE_RESIZE_CURSOR, SW_RESIZE_CURSOR, TEXT_CURSOR, W_RESIZE_CURSOR, WAIT_CURSOR
Fields inherited from class java.awt.Component
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
Fields inherited from interface org.opensourcephysics.controls.Control
NOT_EDITABLE_BACKGROUND
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
Fields inherited from interface javax.swing.WindowConstants
DISPOSE_ON_CLOSE, DO_NOTHING_ON_CLOSE, EXIT_ON_CLOSE, HIDE_ON_CLOSE
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionAdds a custom button to the control's frame.Adds a custom button to the control's frame.void
addControlListener
(String methodName) Adds a ControlTableListener that invokes method in the control's model.void
addControlListener
(String methodName, Object target) Adds a ControlTableListener that invokes method in the given object.void
calculationDone
(String message) A signal that a method has completed.void
Remove all text from the message area.void
Remove all text from the data input area.static OSPControl
Creates an OSP control and establishes communication between the control and the model.boolean
getBoolean
(String par) Reads a parameter value from the input display.double
Reads a parameter value from the input display.int
Reads a parameter value from the input display.static XML.ObjectLoader
Returns an XML.ObjectLoader to save and load data for this object.Gets this frame.getModel()
Gets the object with the specified property name.Reads the current property names.Reads the current property names.Reads a parameter value from the input display.protected void
init()
Initializes this control after all objects have been created.protected JMenu
Adds a Display menu to the menu bar.void
Prints text in the message area.void
println()
Prints a blank line in the message area.void
Prints a line of text in the message area.void
Listens for property change events.protected void
Refreshes the user interface in response to display changes such as Language.void
removeParameter
(String par) Removes a parameter from the table.void
setDividerLocation
(int loc) Sets the location of the divider between the control table and the message panel.void
setEditable
(String parameter, boolean editable) Sets the editable property of the given parameter so that it can not be changed from within the GUI.void
setLockValues
(boolean lock) Locks the control's interface.void
Adds an initial boolean value of a parameter to the input display.void
Adds an initial value of a parameter to the input display.void
Adds an initial value of a parameter to the input display.void
Adds a parameter to the input display.toString()
Creates a string representation of the control parameters.Methods inherited from class org.opensourcephysics.controls.ControlFrame
copy, getOSPApp, inspectXML, loadXML, loadXML, loadXML, loadXML, readParameters, save, saveXML
Methods inherited from class org.opensourcephysics.display.OSPFrame
addButton, addChildFrame, bufferStrategyShow, clearChildFrames, clearData, clearDataAndRepaint, createBufferStrategy, dispose, getChildFrames, getChooser, getConstructorThreadGroup, getMenu, invalidateImage, isAnimated, isAutoclear, isIconified, isKeepHidden, loadToolsMenu, parseXMLMenu, parseXMLMenu, removeMenu, removeMenuItem, render, setAnimated, setAutoclear, setDefaultCloseOperation, setFontLevel, setKeepHidden, setResizeAction, setSize, setTitle, setVisible, show, wishesToExit
Methods inherited from class javax.swing.JFrame
addImpl, createRootPane, frameInit, getAccessibleContext, getContentPane, getDefaultCloseOperation, getGlassPane, getGraphics, getJMenuBar, getLayeredPane, getRootPane, getTransferHandler, isDefaultLookAndFeelDecorated, isRootPaneCheckingEnabled, paramString, processWindowEvent, remove, repaint, setContentPane, setDefaultLookAndFeelDecorated, setGlassPane, setIconImage, setJMenuBar, setLayeredPane, setLayout, setRootPane, setRootPaneCheckingEnabled, setTransferHandler, update
Methods inherited from class java.awt.Frame
addNotify, getCursorType, getExtendedState, getFrames, getIconImage, getMaximizedBounds, getMenuBar, getState, getTitle, isResizable, isUndecorated, remove, removeNotify, setBackground, setCursor, setExtendedState, setMaximizedBounds, setMenuBar, setOpacity, setResizable, setShape, setState, setUndecorated
Methods inherited from class java.awt.Window
addPropertyChangeListener, addPropertyChangeListener, addWindowFocusListener, addWindowListener, addWindowStateListener, applyResourceBundle, applyResourceBundle, createBufferStrategy, createBufferStrategy, getBackground, getBufferStrategy, getFocusableWindowState, getFocusCycleRootAncestor, getFocusOwner, getFocusTraversalKeys, getIconImages, getInputContext, getListeners, getLocale, getModalExclusionType, getMostRecentFocusOwner, getOpacity, getOwnedWindows, getOwner, getOwnerlessWindows, getShape, getToolkit, getType, getWarningString, getWindowFocusListeners, getWindowListeners, getWindows, getWindowStateListeners, hide, isActive, isAlwaysOnTop, isAlwaysOnTopSupported, isAutoRequestFocus, isFocusableWindow, isFocusCycleRoot, isFocused, isLocationByPlatform, isOpaque, isShowing, isValidateRoot, pack, paint, postEvent, processEvent, processWindowFocusEvent, processWindowStateEvent, removeWindowFocusListener, removeWindowListener, removeWindowStateListener, reshape, setAlwaysOnTop, setAutoRequestFocus, setBounds, setBounds, setCursor, setFocusableWindowState, setFocusCycleRoot, setIconImages, setLocation, setLocation, setLocationByPlatform, setLocationRelativeTo, setMinimumSize, setModalExclusionType, setSize, setType, toBack, toFront
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getAlignmentX, getAlignmentY, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalPolicy, getInsets, getLayout, getMaximumSize, getMinimumSize, getMousePosition, getPreferredSize, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, print, printComponents, processContainerEvent, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusTraversalKeys, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setFont, 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, contains, createImage, createImage, createVolatileImage, createVolatileImage, disable, disableEvents, dispatchEvent, enable, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBaseline, getBaselineResizeBehavior, getBounds, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getGraphicsConfiguration, getHeight, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocation, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getSize, getTreeLock, getWidth, getX, getY, gotFocus, handleEvent, hasFocus, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isDoubleBuffered, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isPreferredSizeSet, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, prepareImage, prepareImage, printAll, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processKeyEvent, processMouseEvent, processMouseMotionEvent, processMouseWheelEvent, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, requestFocus, requestFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, requestFocusInWindow, resize, resize, revalidate, setComponentOrientation, setDropTarget, setEnabled, setFocusable, setFocusTraversalKeysEnabled, setForeground, setIgnoreRepaint, setLocale, setMaximumSize, setMixingCutoutShape, setName, setPreferredSize, show, size, transferFocus, transferFocusBackward, transferFocusUpCycle
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Methods inherited from interface org.opensourcephysics.display.AppFrame
getDefaultCloseOperation
Methods inherited from interface org.opensourcephysics.controls.MainFrame
addChildFrame, clearChildFrames, getChildFrames, getOSPApp
Methods inherited from interface java.awt.MenuContainer
getFont, postEvent
-
Constructor Details
-
OSPControl
Constructs an OSPControl.- Parameters:
_model
-
-
-
Method Details
-
getMainFrame
Gets this frame. Implementation of MainFrame interface.- Specified by:
getMainFrame
in interfaceMainFrame
- Returns:
- OSPFrame
-
loadDisplayMenu
Adds a Display menu to the menu bar. Overrides OSPFrame method.- Overrides:
loadDisplayMenu
in classControlFrame
- Returns:
- the display menu
-
refreshGUI
protected void refreshGUI()Refreshes the user interface in response to display changes such as Language.- Overrides:
refreshGUI
in classControlFrame
-
propertyChange
Listens for property change events.- Specified by:
propertyChange
in interfacePropertyChangeListener
- Parameters:
e
- the property change event
-
init
protected void init()Initializes this control after all objects have been created. Override this method and change the default close operation if this control is used with an applet. -
getModel
-
setDividerLocation
public void setDividerLocation(int loc) Sets the location of the divider between the control table and the message panel.- Parameters:
loc
- int
-
setEditable
Sets the editable property of the given parameter so that it can not be changed from within the GUI.- Parameters:
parameter
- Stringeditable
- boolean
-
setLockValues
public void setLockValues(boolean lock) Locks the control's interface. Values sent to the control will not update the display until the control is unlocked.- Specified by:
setLockValues
in interfaceControl
- Parameters:
lock
- boolean
-
toString
Creates a string representation of the control parameters. -
setValue
Adds a parameter to the input display. -
setValue
Adds an initial boolean value of a parameter to the input display. -
setValue
Adds an initial value of a parameter to the input display. -
setValue
Adds an initial value of a parameter to the input display. -
removeParameter
Removes a parameter from the table.- Parameters:
par
- the parameter name
-
getDouble
Reads a parameter value from the input display. -
getInt
Reads a parameter value from the input display. -
getObject
Gets the object with the specified property name. Throws an UnsupportedOperationException if the named object has not been stored.- Specified by:
getObject
in interfaceControl
- Parameters:
par
-- Returns:
- the object
- Throws:
UnsupportedOperationException
-
getString
Reads a parameter value from the input display. -
getBoolean
Reads a parameter value from the input display.- Specified by:
getBoolean
in interfaceControl
- Parameters:
par
- the parameter name- Returns:
- the value of of the parameter
-
getPropertyNames
Reads the current property names.- Specified by:
getPropertyNames
in interfaceControl
- Returns:
- the property names
-
getPropertyNamesRaw
Reads the current property names.- Specified by:
getPropertyNamesRaw
in interfaceControl
- Returns:
- the property names
-
addButton
Adds a custom button to the control's frame.- Parameters:
methodName
- the name of the method; the method has no parameterstext
- the button's text label- Returns:
- the custom button
-
addButton
Adds a custom button to the control's frame.- Parameters:
methodName
- the name of the method; the method has no parameterstext
- the button's text labeltoolTipText
- the button's tool tip text- Returns:
- the custom button
-
addControlListener
Adds a ControlTableListener that invokes method in the control's model. The method in the model is invoked with the table's variable name passed as a parameter.- Parameters:
methodName
- the name of the method; the method has no parameters
-
addControlListener
Adds a ControlTableListener that invokes method in the given object. The method in the target is invoked with the table's variable name passed as a parameter.- Parameters:
methodName
- the name of the method; the method has no parameterstarget
- the target for the method
-
println
Prints a line of text in the message area. -
println
public void println()Prints a blank line in the message area. -
print
Prints text in the message area. -
clearMessages
public void clearMessages()Remove all text from the message area.- Specified by:
clearMessages
in interfaceControl
-
clearValues
public void clearValues()Remove all text from the data input area.- Specified by:
clearValues
in interfaceControl
-
calculationDone
A signal that a method has completed. A message is printed in the message area.- Specified by:
calculationDone
in interfaceControl
- Parameters:
message
-
-
getLoader
Returns an XML.ObjectLoader to save and load data for this object.- Returns:
- the object loader
-
createApp
Creates an OSP control and establishes communication between the control and the model. Custom buttons are usually added to this control to invoke actions in the model.- Parameters:
model
- Object- Returns:
- AnimationControl
-