com.metamatrix.toolbox.ui.widget
Class PropertiedObjectArrayTable

java.lang.Object
  extended by java.awt.Component
      extended by java.awt.Container
          extended by javax.swing.JComponent
              extended by javax.swing.JTable
                  extended by com.metamatrix.toolbox.ui.widget.TableWidget
                      extended by com.metamatrix.toolbox.ui.widget.TreeNodeTableWidget
                          extended by com.metamatrix.toolbox.ui.widget.PropertiedObjectArrayTable
All Implemented Interfaces:
UIConstants, TableColumnSortListener, java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, java.util.EventListener, javax.accessibility.Accessible, javax.swing.event.CellEditorListener, javax.swing.event.ListSelectionListener, javax.swing.event.RowSorterListener, javax.swing.event.TableColumnModelListener, javax.swing.event.TableModelListener, javax.swing.Scrollable
Direct Known Subclasses:
DirectoryEntryTable

public class PropertiedObjectArrayTable
extends TreeNodeTableWidget

This class is intended to be used everywhere within the application that a table needs to be displayed.

Since:
2.0
Version:
2.0
Author:
K. Goring
See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class javax.swing.JTable
javax.swing.JTable.AccessibleJTable, javax.swing.JTable.DropLocation, javax.swing.JTable.PrintMode
 
Nested classes/interfaces inherited from class javax.swing.JComponent
javax.swing.JComponent.AccessibleJComponent
 
Nested classes/interfaces inherited from class java.awt.Container
java.awt.Container.AccessibleAWTContainer
 
Nested classes/interfaces inherited from class java.awt.Component
java.awt.Component.AccessibleAWTComponent, java.awt.Component.BaselineResizeBehavior, java.awt.Component.BltBufferStrategy, java.awt.Component.FlipBufferStrategy
 
Field Summary
 
Fields inherited from class com.metamatrix.toolbox.ui.widget.TableWidget
CHECKBOX_BORDER_PROPERTY, FOCUS_BACKGROUND_PROPERTY, FOCUS_BORDER_PROPERTY, NO_FOCUS_BORDER_PROPERTY, PROPERTY_PREFIX
 
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
accessibleContext, 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
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
 
Fields inherited from interface com.metamatrix.toolbox.ui.UIConstants
DATE_FORMAT_PROPERTY, SPACER_HORIZONTAL_LENGTH_PROPERTY, WINDOW_BORDER_PROPERTY
 
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
 
Constructor Summary
PropertiedObjectArrayTable()
           
PropertiedObjectArrayTable(PropertiedObjectEditor editor)
           
 
Method Summary
 void addListSelectionListener(javax.swing.event.ListSelectionListener lsl)
          addListSelectionListener accepts a Listener for events that occur to the Table that are selection events.
protected  TableComparator createDefaultComparator()
           
protected  javax.swing.table.DefaultTableCellRenderer getCellRenderer()
           
protected  java.lang.Object[][] getData()
          Creates the data object used to populate the DirectoryEntry details table.
protected  java.lang.String[] getEmptyTableHeaderArray()
          Get the DirectoryEntryView's property's definition names to be displayed by the details table
protected  java.lang.String[] getPropertyDefNames()
          Get the DirectoryEntryView's property's definition names to be displayed by the details table
protected  java.lang.Object[] getRowData(PropertiedObject node)
          Creates the data array for each row of the details table from the directoryEntryView's properties.
 java.lang.Object getSelectedObject()
           
 java.lang.Object getSelectedObject(int row)
           
 java.util.Collection getSelectedObjects()
           
protected  void initializePropertiedObjectArrayEntryTable()
          Initialize the PropertiedObjectArrayTable
 boolean isEmpty()
          flags whether or not the table is empty
 void refresh()
           
 void setEmptyMessage(java.lang.String msg)
          sets the message that appears in the table when the selected entry is empty
 void setPropertiedObjectEditor(PropertiedObjectEditor editor)
           
 void setTableArray(java.util.Collection propertiedObjects)
           
 void setTableArray(java.util.Collection propertiedObjects, java.util.Collection propDefnsToShow)
           
 void setTableArray(java.util.Collection propertiedObjects, java.util.Collection propDefnsToShow, PropertiedObjectEditor editor)
           
 void setTableArray(java.util.Collection propertiedObjects, PropertiedObjectEditor editor)
           
 void tableChanged(javax.swing.event.TableModelEvent event)
          Overridden to hide the column containing the PropertiedObjects and to set the renderer on the Name column (if it exists) to one that displays appropriate icons.
 
Methods inherited from class com.metamatrix.toolbox.ui.widget.TreeNodeTableWidget
getPropertyDefinitionsShown, getTreeNode, getTreeNodes, getTreeView, initializeTreeNodeTable, setDragAndDropController, setEmptyTableColumnName, setPropertyDefinitionsShown, setTreeNodeEditor, setTreeNodes, setTreeView, updateModel
 
Methods inherited from class com.metamatrix.toolbox.ui.widget.TableWidget
addColumn, addFilter, allowsMultipleColumnSorting, clearFilters, columnMarginChanged, columnSorted, convertRowIndexToModel, convertRowIndexToView, createDefaultColumnModel, createDefaultColumnsFromModel, createDefaultDataModel, createDefaultHeaderRenderer, createDefaultPopupMenuFactory, createDefaultRenderers, createDefaultSorter, createDefaultTableHeader, createEnhancedColumnModel, createEnhancedModel, createModelRowMap, createToolTip, getComparator, getEnhancedColumnModel, getEnhancedModel, getFilters, getHiddenColumnCount, getHiddenColumns, getPopupMenuFactory, getPreferredSize, getRowCount, getScrollableTracksViewportWidth, getSortedColumnCount, getSortedColumns, getSorter, getValueAt, increaseColumnSize, initializeTableWidget, isCellEditable, isColumnEditable, isEditable, isFiltered, isFilteredBy, isRowEditable, isSortable, isSorted, mapModelRows, removeFilter, setAllowsMultipleColumnSorting, setCellEditable, setColumnEditable, setColumnHidden, setColumnModel, setColumnNotSorted, setColumnNotSorted, setColumnsHidden, setColumnsNotSorted, setColumnSortedAscending, setColumnSortedAscending, setColumnSortedDescending, setColumnSortedDescending, setComparator, setEditable, setModel, setPopupMenuFactory, setRowEditable, setSortable, setSorter, setTableHeader, setValueAt, sizeColumnsToFit, sizeColumnsToFitContainer, sizeColumnsToFitData, sizeColumnsToFitData, sizeColumnsToFitViewport, sizeColumnToFitData, sizeColumnToFitData, sizeColumnToFitDataInternal, sort, unsortAll
 
Methods inherited from class javax.swing.JTable
addColumnSelectionInterval, addNotify, addRowSelectionInterval, changeSelection, clearSelection, columnAdded, columnAtPoint, columnMoved, columnRemoved, columnSelectionChanged, configureEnclosingScrollPane, convertColumnIndexToModel, convertColumnIndexToView, createDefaultEditors, createDefaultSelectionModel, 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, getRowHeight, getRowHeight, getRowMargin, getRowSelectionAllowed, getRowSorter, getScrollableBlockIncrement, getScrollableTracksViewportHeight, getScrollableUnitIncrement, getSelectedColumn, getSelectedColumnCount, getSelectedColumns, getSelectedRow, getSelectedRowCount, getSelectedRows, getSelectionBackground, getSelectionForeground, getSelectionModel, getShowHorizontalLines, getShowVerticalLines, getSurrendersFocusOnKeystroke, getTableHeader, getToolTipText, getUI, getUIClassID, getUpdateSelectionOnSort, initializeLocalVars, isCellSelected, isColumnSelected, isEditing, isRowSelected, moveColumn, paramString, prepareEditor, prepareRenderer, print, print, print, print, print, processKeyBinding, removeColumn, removeColumnSelectionInterval, removeEditor, removeNotify, removeRowSelectionInterval, resizeAndRepaint, rowAtPoint, selectAll, setAutoCreateColumnsFromModel, setAutoCreateRowSorter, setAutoResizeMode, setCellEditor, setCellSelectionEnabled, 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, setUI, setUpdateSelectionOnSort, sizeColumnsToFit, sorterChanged, unconfigureEnclosingScrollPane, updateUI, valueChanged
 
Methods inherited from class javax.swing.JComponent
addAncestorListener, addVetoableChangeListener, computeVisibleRect, contains, 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, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, 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, 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, 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, transferFocusBackward, 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, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, hide, 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, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusUpCycle
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

PropertiedObjectArrayTable

public PropertiedObjectArrayTable()

PropertiedObjectArrayTable

public PropertiedObjectArrayTable(PropertiedObjectEditor editor)
Method Detail

addListSelectionListener

public void addListSelectionListener(javax.swing.event.ListSelectionListener lsl)
addListSelectionListener accepts a Listener for events that occur to the Table that are selection events.

Parameters:
lsl - the Listener of the Table Events.

setEmptyMessage

public void setEmptyMessage(java.lang.String msg)
sets the message that appears in the table when the selected entry is empty

Parameters:
msg - the String to be displayed.

isEmpty

public boolean isEmpty()
flags whether or not the table is empty

Parameters:
isEmpty - the state of emptiness

initializePropertiedObjectArrayEntryTable

protected void initializePropertiedObjectArrayEntryTable()
Initialize the PropertiedObjectArrayTable


createDefaultComparator

protected TableComparator createDefaultComparator()
Overrides:
createDefaultComparator in class TableWidget
Since:
2.0

getCellRenderer

protected javax.swing.table.DefaultTableCellRenderer getCellRenderer()
Since:
2.0

getData

protected java.lang.Object[][] getData()
Creates the data object used to populate the DirectoryEntry details table.


getRowData

protected java.lang.Object[] getRowData(PropertiedObject node)
Creates the data array for each row of the details table from the directoryEntryView's properties. The first element of the data array is the DirectoryElement itself.


getSelectedObject

public java.lang.Object getSelectedObject()

getSelectedObject

public java.lang.Object getSelectedObject(int row)

getSelectedObjects

public java.util.Collection getSelectedObjects()

refresh

public void refresh()

getPropertyDefNames

protected java.lang.String[] getPropertyDefNames()
Get the DirectoryEntryView's property's definition names to be displayed by the details table


getEmptyTableHeaderArray

protected java.lang.String[] getEmptyTableHeaderArray()
Get the DirectoryEntryView's property's definition names to be displayed by the details table


setPropertiedObjectEditor

public void setPropertiedObjectEditor(PropertiedObjectEditor editor)

setTableArray

public void setTableArray(java.util.Collection propertiedObjects)

setTableArray

public void setTableArray(java.util.Collection propertiedObjects,
                          java.util.Collection propDefnsToShow)

setTableArray

public void setTableArray(java.util.Collection propertiedObjects,
                          PropertiedObjectEditor editor)

setTableArray

public void setTableArray(java.util.Collection propertiedObjects,
                          java.util.Collection propDefnsToShow,
                          PropertiedObjectEditor editor)

tableChanged

public void tableChanged(javax.swing.event.TableModelEvent event)
Overridden to hide the column containing the PropertiedObjects and to set the renderer on the Name column (if it exists) to one that displays appropriate icons.

Specified by:
tableChanged in interface javax.swing.event.TableModelListener
Overrides:
tableChanged in class TableWidget
Since:
2.0


Copyright © 2009. All Rights Reserved.