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.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
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_WINDOW
Fields inherited from class java.awt.Component
accessibleContext, 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
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic boolean
canDisplay
(Object obj) Determines if an object is an array that can be displayed.protected void
Creates the GUI.getArray()
Gets the object being displayed.static ArrayPanel
getArrayPanel
(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.int
int
getID()
Gets the Data ID.Color[]
Lines colors for columns are not specified.int
void
Listens for cell events (data changes) from ArrayTable.void
Refresh the data in all the tables.void
Gets an array panel for the specified array.void
setAutoResizeMode
(int mode) Sets the table's auto resize mode when the table is resized.void
setBackground
(Color color) Sets the background color of this component.void
setColumnAlignment
(int align) Sets the alignment of the contents of all table columns along the X axis.void
setColumnAlignment
(int ncol, int align) Sets the alignment of the contents of the given column along the X axis.void
setColumnLock
(int columnIndex, boolean locked) Sets the column's lock flag.void
setColumnLocks
(boolean[] locked) Sets the lock flag for multiple columns.void
setColumnNames
(String[] names) Sets the column names in the table models.void
setColumnNames
(String[][] names) Sets the column names in each table model separately.void
setDataBackground
(Color color) Sets the data background color of this component.void
setDataForeground
(Color color) Sets the data foreground color of this component.void
setEditable
(boolean _editable) Sets the editable property for the entire panel.void
setFirstColIndex
(int index) Sets the first column's index.void
setFirstRowIndex
(int index) Sets the first row's index.void
Sets the font for this component.void
setForeground
(Color color) Sets the foreground color of this component.void
setID
(int id) Sets the Data ID.void
setNumericFormat
(String _format) Sets the same numeric display format for all columnsvoid
setNumericFormat
(String[] _format) Sets the numeric display format for each columnvoid
setPreferredColumnWidth
(int nwidth) Sets this column's preferred width of the entire table.void
setPreferredColumnWidth
(int ncol, int nwidth) Sets this column's preferred width of the given column.void
setRefreshDelay
(int delay) Sets theTimer
's initial time delay (in milliseconds) to wait after the timer is started before firing the first event.void
setRowNumberVisible
(boolean vis) Sets the display row number flag.void
setTransposed
(boolean transposed) Sets the transposed property for the array.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, 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, update
Methods 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, 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, 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:
propertyChange
in 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:
setFont
in classJComponent
- Parameters:
font
- the desiredFont
for 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:
setForeground
in 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:
setBackground
in 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:
getColumnNames
in 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:
getDataList
in 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:
getDatasets
in interfaceData
- Returns:
- list of Datasets
-
getFillColors
Fill colors for columns are not specified. Client should assign colors. Implementation of Data interface.- Specified by:
getFillColors
in interfaceData
- Returns:
- a color
-
getLineColors
Lines colors for columns are not specified. Client should assign colors. Implementation of Data interface.- Specified by:
getLineColors
in interfaceData
- Returns:
- a color
-
getID
public int getID()Gets the Data ID. -
setID
public void setID(int id) Sets the Data ID.
-