Class ContainerTable<M extends AbstractContainerManager,C extends AbstractContainer>
- java.lang.Object
-
- java.awt.Component
-
- java.awt.Container
-
- javax.swing.JComponent
-
- javax.swing.JTable
-
- adams.gui.core.BaseTable
-
- adams.gui.visualization.container.ContainerTable<M,C>
-
- Type Parameters:
M
- the type of container manager to useC
- the type of container to use
- All Implemented Interfaces:
SpreadSheetSupporter
,ImageObserver
,MenuContainer
,Serializable
,EventListener
,Accessible
,CellEditorListener
,ListSelectionListener
,RowSorterListener
,TableColumnModelListener
,TableModelListener
,Scrollable
- Direct Known Subclasses:
TimeseriesContainerTable
public class ContainerTable<M extends AbstractContainerManager,C extends AbstractContainer> extends BaseTable
A table for displaying the currently loaded containers.- Version:
- $Revision$
- Author:
- fracpete (fracpete at waikato dot ac dot nz)
- See Also:
- Serialized Form
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class adams.gui.core.BaseTable
BaseTable.ColumnWidthApproach
-
Nested classes/interfaces inherited from class javax.swing.JTable
JTable.AccessibleJTable, JTable.DropLocation, JTable.PrintMode
-
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 Modifier and Type Field Description protected boolean
m_ColumnWidthsSet
whether the column widths have been set already.protected boolean
m_ManuallyResized
whether a manual resize occurred.-
Fields inherited from class adams.gui.core.BaseTable
m_CellPopupMenuListeners, m_ColumnWidthApproach, m_FileChooser, m_HeaderPopupMenuListeners, m_MaxColumnOptimalColumnWidthCalc, m_MaxColumnOptimalHeaderWidthCalc, m_RemoveItemsListeners, m_ShowSimpleCellPopupMenu, m_ShowSimpleHeaderPopupMenu, m_SimpleCellPopupMenuListener, m_SimpleHeaderPopupMenuListener, m_TableHelper, m_TooManyColumnsDefaultWidth
-
Fields inherited from class javax.swing.JTable
AUTO_RESIZE_ALL_COLUMNS, AUTO_RESIZE_LAST_COLUMN, AUTO_RESIZE_NEXT_COLUMN, AUTO_RESIZE_OFF, AUTO_RESIZE_SUBSEQUENT_COLUMNS, autoCreateColumnsFromModel, autoResizeMode, cellEditor, cellSelectionEnabled, columnModel, dataModel, defaultEditorsByColumnClass, defaultRenderersByColumnClass, editingColumn, editingRow, editorComp, gridColor, preferredViewportSize, rowHeight, rowMargin, rowSelectionAllowed, selectionBackground, selectionForeground, selectionModel, showHorizontalLines, showVerticalLines, tableHeader
-
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 Constructor Description ContainerTable()
Initializes the table with an empty model.ContainerTable(ContainerModel<M,C> model)
Initializes the table with the given model.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description int
getActualIndex(int index)
Returns the actual index in the container manager of the specified container.int[]
getActualIndices(int[] indices)
Returns the actual indices in the container manager of the specified containers.M
getManager()
Returns the underlying manager.void
invalidateColumnWidths()
Invalidates the column widths and layout.boolean
isColumnWidthsSet()
Returns whether the column widths have been set.boolean
isManuallyResized()
Returns whether the columns where manually resized.void
removeAllContainers()
Removes all containers from the table.void
removeContainers(int[] indices)
Removes the containers from the table.void
revalidate()
Revalidates the table layout.void
setModel(TableModel value)
Uses the given model.void
tableChanged(TableModelEvent e)
Invoked when this table'sTableModel
generates aTableModelEvent
.protected void
updateColumnWidths()
Updates the column widths.-
Methods inherited from class adams.gui.core.BaseTable
adaptiveOptimalColumnWidth, addCellPopupMenuListener, addHeaderPopupMenuListener, addRemoveItemsListener, copyToClipboard, createSimpleCellPopupMenu, createSimpleHeaderPopupMenu, enterColumnWidth, finishInit, getColumnWidthApproach, getColumnWidths, getFileChooser, getMaxColumnOptimalColumnWidthCalc, getMaxColumnOptimalHeaderWidthCalc, getSelectedRow, getSelectedRows, getShowSimpleCellPopupMenu, getShowSimpleHeaderPopupMenu, getTableHelper, getTooManyColumnsDefaultWidth, initGUI, initialUseOptimalColumnWidths, invertRowSelection, invertSelection, modelToSpreadSheet, notifyCellPopupMenuListener, notifyHeaderPopupMenuListener, notifyRemoveItemsListeners, removeCellPopupMenuListener, removeHeaderPopupMenuListener, removeRemoveItemsListener, saveAs, scrollColumnToVisible, scrollRowToVisible, selectAll, selectionRowToModelRow, selectNone, setColumnWidth, setColumnWidth, setColumnWidthApproach, setColumnWidths, setColumnWidths, setColumnWidths, setMaxColumnOptimalColumnWidthCalc, setMaxColumnOptimalHeaderWidthCalc, setOptimalColumnWidth, setOptimalColumnWidth, setOptimalColumnWidthBounded, setOptimalColumnWidthBounded, setOptimalColumnWidths, setOptimalColumnWidthsBounded, setOptimalHeaderWidth, setOptimalHeaderWidth, setSelectedRow, setSelectedRows, setShowSimpleCellPopupMenu, setShowSimpleHeaderPopupMenu, setShowSimplePopupMenus, setTooManyColumnsDefaultWidth, showCell, showSimpleCellPopupMenu, showSimpleHeaderPopupMenu, toSpreadSheet, toSpreadSheet, toSpreadSheet
-
Methods inherited from class javax.swing.JTable
addColumn, addColumnSelectionInterval, addNotify, addRowSelectionInterval, changeSelection, clearSelection, columnAdded, columnAtPoint, columnMarginChanged, columnMoved, columnRemoved, columnSelectionChanged, configureEnclosingScrollPane, convertColumnIndexToModel, convertColumnIndexToView, convertRowIndexToModel, convertRowIndexToView, createDefaultColumnModel, createDefaultColumnsFromModel, createDefaultDataModel, createDefaultEditors, createDefaultRenderers, createDefaultSelectionModel, createDefaultTableHeader, createScrollPaneForTable, doLayout, editCellAt, editCellAt, editingCanceled, editingStopped, getAccessibleContext, getAutoCreateColumnsFromModel, getAutoCreateRowSorter, getAutoResizeMode, getCellEditor, getCellEditor, getCellRect, getCellRenderer, getCellSelectionEnabled, getColumn, getColumnClass, getColumnCount, getColumnModel, getColumnName, getColumnSelectionAllowed, getDefaultEditor, getDefaultRenderer, getDragEnabled, getDropLocation, getDropMode, getEditingColumn, getEditingRow, getEditorComponent, getFillsViewportHeight, getGridColor, getIntercellSpacing, getModel, getPreferredScrollableViewportSize, getPrintable, getRowCount, getRowHeight, getRowHeight, getRowMargin, getRowSelectionAllowed, getRowSorter, getScrollableBlockIncrement, getScrollableTracksViewportHeight, getScrollableTracksViewportWidth, getScrollableUnitIncrement, getSelectedColumn, getSelectedColumnCount, getSelectedColumns, getSelectedRowCount, getSelectionBackground, getSelectionForeground, getSelectionModel, getShowHorizontalLines, getShowVerticalLines, getSurrendersFocusOnKeystroke, getTableHeader, getToolTipText, getUI, getUIClassID, getUpdateSelectionOnSort, getValueAt, initializeLocalVars, isCellEditable, isCellSelected, isColumnSelected, isEditing, isRowSelected, moveColumn, paramString, prepareEditor, prepareRenderer, print, print, print, print, print, processKeyBinding, removeColumn, removeColumnSelectionInterval, removeEditor, removeNotify, removeRowSelectionInterval, resizeAndRepaint, rowAtPoint, setAutoCreateColumnsFromModel, setAutoCreateRowSorter, setAutoResizeMode, setCellEditor, setCellSelectionEnabled, setColumnModel, setColumnSelectionAllowed, setColumnSelectionInterval, setDefaultEditor, setDefaultRenderer, setDragEnabled, setDropMode, setEditingColumn, setEditingRow, setFillsViewportHeight, setGridColor, setIntercellSpacing, setPreferredScrollableViewportSize, setRowHeight, setRowHeight, setRowMargin, setRowSelectionAllowed, setRowSelectionInterval, setRowSorter, setSelectionBackground, setSelectionForeground, setSelectionMode, setSelectionModel, setShowGrid, setShowHorizontalLines, setShowVerticalLines, setSurrendersFocusOnKeystroke, setTableHeader, setUI, setUpdateSelectionOnSort, setValueAt, sizeColumnsToFit, sizeColumnsToFit, sorterChanged, unconfigureEnclosingScrollPane, updateUI, valueChanged
-
Methods inherited from class javax.swing.JComponent
addAncestorListener, 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, 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, processKeyEvent, processMouseEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resetKeyboardActions, reshape, 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, setVisible, unregisterKeyboardAction, update
-
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, addImpl, addPropertyChangeListener, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, 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 Detail
-
ContainerTable
public ContainerTable()
Initializes the table with an empty model.
-
ContainerTable
public ContainerTable(ContainerModel<M,C> model)
Initializes the table with the given model.- Parameters:
model
- the model to use
-
-
Method Detail
-
getActualIndex
public int getActualIndex(int index)
Returns the actual index in the container manager of the specified container.- Parameters:
index
- the index to convert- Returns:
- the actual index as used by the container manager
-
getActualIndices
public int[] getActualIndices(int[] indices)
Returns the actual indices in the container manager of the specified containers.- Parameters:
indices
- the indices to convert- Returns:
- the actual indices as used by the container manager
-
removeAllContainers
public void removeAllContainers()
Removes all containers from the table.
-
removeContainers
public void removeContainers(int[] indices)
Removes the containers from the table.- Parameters:
indices
- the indices in the table of the containers to remove; use null to remove all
-
setModel
public void setModel(TableModel value)
Uses the given model.
-
updateColumnWidths
protected void updateColumnWidths()
Updates the column widths.
-
isColumnWidthsSet
public boolean isColumnWidthsSet()
Returns whether the column widths have been set.- Returns:
- true if column widths set
-
isManuallyResized
public boolean isManuallyResized()
Returns whether the columns where manually resized.- Returns:
- true if resized
-
invalidateColumnWidths
public void invalidateColumnWidths()
Invalidates the column widths and layout.
-
revalidate
public void revalidate()
Revalidates the table layout.- Overrides:
revalidate
in classJComponent
-
getManager
public M getManager()
Returns the underlying manager.- Returns:
- the manager, null if none available
-
tableChanged
public void tableChanged(TableModelEvent e)
Invoked when this table'sTableModel
generates aTableModelEvent
. TheTableModelEvent
should be constructed in the coordinate system of the model; the appropriate mapping to the view coordinate system is performed by thisJTable
when it receives the event.Application code will not use these methods explicitly, they are used internally by
JTable
.Note that as of 1.3, this method clears the selection, if any.
- Specified by:
tableChanged
in interfaceTableModelListener
- Overrides:
tableChanged
in classJTable
- Parameters:
e
- the event
-
-