Package org.opensourcephysics.display
Class ArrayPanel
java.lang.Object
java.awt.Component
java.awt.Container
javax.swing.JComponent
javax.swing.JPanel
org.opensourcephysics.display.ArrayPanel
- All Implemented Interfaces:
ImageObserver,MenuContainer,PropertyChangeListener,Serializable,EventListener,Accessible,Data
A panel that displays an ArrayTable.
- Version:
- 1.0
- Author:
- Douglas Brown, Wolfgang Christian
- See Also:
-
Nested Class Summary
Nested 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
Fields 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
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic booleancanDisplay(Object obj) Determines if an object is an array that can be displayed.protected voidCreates the GUI.getArray()Gets the object being displayed.static ArrayPanelgetArrayPanel(Object arrayObj) String[]Gets column names from Table Model.double[][]Gets double[][] data from the Table Model and transposes this array if necessary.double[][][]Not used because double[][][] is not used in any OSP Tools.Not used because Data is stored in this object, not in a list of Data objects.Not used Data because is stored in 2D arrays.Color[]Fill colors for columns are not specified.intintgetID()Gets the Data ID.Color[]Lines colors for columns are not specified.intvoidListens for cell events (data changes) from ArrayTable.voidRefresh the data in all the tables.voidGets an array panel for the specified array.voidsetAutoResizeMode(int mode) Sets the table's auto resize mode when the table is resized.voidsetBackground(Color color) Sets the background color of this component.voidsetColumnAlignment(int align) Sets the alignment of the contents of all table columns along the X axis.voidsetColumnAlignment(int ncol, int align) Sets the alignment of the contents of the given column along the X axis.voidsetColumnLock(int columnIndex, boolean locked) Sets the column's lock flag.voidsetColumnLocks(boolean[] locked) Sets the lock flag for multiple columns.voidsetColumnNames(String[] names) Sets the column names in the table models.voidsetColumnNames(String[][] names) Sets the column names in each table model separately.voidsetDataBackground(Color color) Sets the data background color of this component.voidsetDataForeground(Color color) Sets the data foreground color of this component.voidsetEditable(boolean _editable) Sets the editable property for the entire panel.voidsetFirstColIndex(int index) Sets the first column's index.voidsetFirstRowIndex(int index) Sets the first row's index.voidSets the font for this component.voidsetForeground(Color color) Sets the foreground color of this component.voidsetID(int id) Sets the Data ID.voidsetNumericFormat(String _format) Sets the same numeric display format for all columnsvoidsetNumericFormat(String[] _format) Sets the numeric display format for each columnvoidsetPreferredColumnWidth(int nwidth) Sets this column's preferred width of the entire table.voidsetPreferredColumnWidth(int ncol, int nwidth) Sets this column's preferred width of the given column.voidsetRefreshDelay(int delay) Sets theTimer's initial time delay (in milliseconds) to wait after the timer is started before firing the first event.voidsetRowNumberVisible(boolean vis) Sets the display row number flag.voidsetTransposed(boolean transposed) Sets the transposed property for the array.Methods 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, getPreferredSize, 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, setBorder, setComponentPopupMenu, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setEnabled, setFocusTraversalKeys, setInheritsPopupMenu, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setUI, setVerifyInputWhenFocusTarget, setVisible, 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
-
Constructor Details
-
ArrayPanel
public ArrayPanel()Constructor ArrayPanel
-
-
Method Details
-
getArrayPanel
-
setArray
Gets an array panel for the specified array.- Parameters:
arrayObj- the arrayname- the display name for the array
-
canDisplay
Determines if an object is an array that can be displayed.- Parameters:
obj- the object- Returns:
- true if it can be inspected
-
getArray
Gets the object being displayed.- Returns:
-
propertyChange
Listens for cell events (data changes) from ArrayTable.- Specified by:
propertyChangein interfacePropertyChangeListener- Parameters:
e- the property change event
-
setNumericFormat
Sets the same numeric display format for all columns- Parameters:
_format- String
-
setNumericFormat
Sets the numeric display format for each column- Parameters:
_format- String[]
-
setRowNumberVisible
public void setRowNumberVisible(boolean vis) Sets the display row number flag. Table displays row number.- Parameters:
vis-true<\code> if table display row number
-
setColumnNames
Sets the column names in the table models.- Parameters:
names-
-
setColumnNames
Sets the column names in each table model separately.- Parameters:
names-
-
setPreferredColumnWidth
public void setPreferredColumnWidth(int ncol, int nwidth) Sets this column's preferred width of the given column. The minimum width is set to zero and the maximum width is set to 300.- Parameters:
ncol- the columnnwidth- the preferred width
-
setPreferredColumnWidth
public void setPreferredColumnWidth(int nwidth) Sets this column's preferred width of the entire table. The minimum width is set to zero and the maximum width is set to 300.- Parameters:
nwidth- the preferred width
-
setColumnAlignment
public void setColumnAlignment(int ncol, int align) Sets the alignment of the contents of the given column along the X axis. The alignment constants are defined in the SwingConstants class.- Parameters:
ncol- the columnalign- One of the following constants defined inSwingConstants:LEFT,CENTER(the default for image-only labels),RIGHT,LEADING(the default for text-only labels) orTRAILING.
-
setColumnAlignment
public void setColumnAlignment(int align) Sets the alignment of the contents of all table columns along the X axis. The alignment constants are defined in the SwingConstants class.- Parameters:
align- One of the following constants defined inSwingConstants:LEFT,CENTER(the default for image-only labels),RIGHT,LEADING(the default for text-only labels) orTRAILING.
-
getFirstRowIndex
public int getFirstRowIndex() -
setFirstRowIndex
public void setFirstRowIndex(int index) Sets the first row's index.- Parameters:
index-
-
setFirstColIndex
public void setFirstColIndex(int index) Sets the first column's index.- Parameters:
index-
-
setColumnLock
public void setColumnLock(int columnIndex, boolean locked) Sets the column's lock flag.- Parameters:
column- intlocked- boolean
-
setColumnLocks
public void setColumnLocks(boolean[] locked) Sets the lock flag for multiple columns. Previously set locks are cleared.- Parameters:
locked- boolean array
-
setEditable
public void setEditable(boolean _editable) Sets the editable property for the entire panel.- Parameters:
editable- true to allow editing of the cell values
-
setTransposed
public void setTransposed(boolean transposed) Sets the transposed property for the array. A transposed array switches its row and column values in the display.- Parameters:
transposed-
-
setFont
Sets the font for this component.- Overrides:
setFontin classJComponent- Parameters:
font- the desiredFontfor this component- See Also:
-
setForeground
Sets the foreground color of this component. It is up to the look and feel to honor this property, some may choose to ignore it.- Overrides:
setForegroundin classJComponent- Parameters:
fg- the desired foregroundColor- See Also:
-
setBackground
Sets the background color of this component. It is up to the look and feel to honor this property, some may choose to ignore it.- Overrides:
setBackgroundin classJComponent- Parameters:
fg- the desired backgroundColor- See Also:
-
setDataForeground
Sets the data foreground color of this component. It is up to the look and feel to honor this property, some may choose to ignore it.- Parameters:
fg- the desired foregroundColor
-
setDataBackground
Sets the data background color of this component. It is up to the look and feel to honor this property, some may choose to ignore it.- Parameters:
fg- the desired backgroundColor- See Also:
-
setAutoResizeMode
public void setAutoResizeMode(int mode) Sets the table's auto resize mode when the table is resized.- Parameters:
mode- One of 5 legal values: AUTO_RESIZE_OFF, AUTO_RESIZE_NEXT_COLUMN, AUTO_RESIZE_SUBSEQUENT_COLUMNS, AUTO_RESIZE_LAST_COLUMN, AUTO_RESIZE_ALL_COLUMNS
-
getNumColumns
public int getNumColumns() -
refreshTable
public void refreshTable()Refresh the data in all the tables. -
setRefreshDelay
public void setRefreshDelay(int delay) Sets theTimer's initial time delay (in milliseconds) to wait after the timer is started before firing the first event.- Parameters:
delay-
-
createGUI
protected void createGUI()Creates the GUI. -
getColumnNames
Gets column names from Table Model. Implementation of Data interface.- Specified by:
getColumnNamesin interfaceData- Returns:
- an array of names
-
getData2D
public double[][] getData2D()Gets double[][] data from the Table Model and transposes this array if necessary. Implementation of Data interface. -
getData3D
public double[][][] getData3D()Not used because double[][][] is not used in any OSP Tools. Implementation of Data interface method. -
getDataList
Not used because Data is stored in this object, not in a list of Data objects. Implementation of Data interface.- Specified by:
getDataListin interfaceData- Returns:
- a list of Data objects, or null if this object contains data
-
getDatasets
Not used Data because is stored in 2D arrays. Implementation of Data interface.- Specified by:
getDatasetsin interfaceData- Returns:
- list of Datasets
-
getFillColors
Fill colors for columns are not specified. Client should assign colors. Implementation of Data interface.- Specified by:
getFillColorsin interfaceData- Returns:
- a color
-
getLineColors
Lines colors for columns are not specified. Client should assign colors. Implementation of Data interface.- Specified by:
getLineColorsin interfaceData- Returns:
- a color
-
getID
public int getID()Gets the Data ID. -
setID
public void setID(int id) Sets the Data ID.
-