edu.ucla.stat.SOCR.util
Class RowHeaderTable

java.lang.Object
  extended by java.awt.Component
      extended by java.awt.Container
          extended by javax.swing.JComponent
              extended by javax.swing.JPanel
                  extended by edu.ucla.stat.SOCR.util.RowHeaderTable
All Implemented Interfaces:
java.awt.event.KeyListener, java.awt.image.ImageObserver, java.awt.MenuContainer, java.beans.PropertyChangeListener, java.io.Serializable, java.util.EventListener, javax.accessibility.Accessible, javax.swing.event.TableModelListener

public class RowHeaderTable
extends javax.swing.JPanel
implements java.awt.event.KeyListener, java.beans.PropertyChangeListener, javax.swing.event.TableModelListener

Package: edu.ucla.stat.SOCR.util User: Khashim Date: Aug 20, 2008 Time: 11:39:01 PM

Author:
Jameel
See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class javax.swing.JPanel
javax.swing.JPanel.AccessibleJPanel
 
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
protected  int columnCount
           
protected  javax.swing.table.TableColumnModel columnModel
           
protected  java.util.Vector<java.lang.String> columnNames
           
protected  EditableHeaderTable dataTable
           
protected  java.lang.String dataText
           
protected  java.lang.String defaultHeader
           
protected  javax.swing.JTable headerTable
           
protected  javax.swing.table.DefaultTableModel hModel
           
protected  int rowCount
           
protected  java.util.Vector<java.lang.String> rowNames
           
protected  SortedTableModel sortableModel
           
protected  javax.swing.table.DefaultTableModel tModel
           
 
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 java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
 
Constructor Summary
RowHeaderTable()
           
RowHeaderTable(javax.swing.table.DefaultTableModel model)
           
RowHeaderTable(int numCols, int numRows)
           
RowHeaderTable(int numCols, java.lang.String[] columnHeaders, int numRows, java.lang.String[] rowHeaders)
           
RowHeaderTable(java.lang.String[] columnHeaders, java.lang.String[] rowHeaders)
           
 
Method Summary
 void appendTableColumns(int n)
           
 void appendTableColumns(java.lang.String[] columnNames)
           
 void appendTableRows(int n)
           
 void appendTableRows(java.lang.String[] rowNames)
           
protected  void convertHeaders(java.util.Vector<java.lang.String> vHeaders, java.lang.String[] headers)
           
 javax.swing.JTable getDataTable()
           
 javax.swing.table.DefaultTableModel getRowHeaderModel()
           
 javax.swing.JTable getRowHeaderTable()
           
 javax.swing.table.DefaultTableModel getTableModel()
           
protected  void hookTableAction()
          Add customized table actions.
protected  void initTable()
           
 boolean isCellsEditable()
           
 boolean isHeadersEditable()
           
 void keyPressed(java.awt.event.KeyEvent e)
           
 void keyReleased(java.awt.event.KeyEvent e)
           
 void keyTyped(java.awt.event.KeyEvent e)
           
 void propertyChange(java.beans.PropertyChangeEvent evt)
          This method gets called when a bound property is changed.
 void resetTable()
           
protected  void resetTableColumns(int n)
           
protected  void resetTableRows(int n)
           
 void setCellsEditable(boolean editable)
           
protected  void setDefaultColumnNames()
           
protected  void setDefaultRowNames()
           
 void setHeadersEditable(boolean editable)
           
protected  void setRowNames()
           
 void tableChanged(javax.swing.event.TableModelEvent e)
          This fine grain notification tells listeners the exact range of cells, rows, or columns that changed.
 
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, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, 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, 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, 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, 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
 

Field Detail

dataTable

protected EditableHeaderTable dataTable

headerTable

protected javax.swing.JTable headerTable

columnCount

protected int columnCount

rowCount

protected int rowCount

dataText

protected java.lang.String dataText

defaultHeader

protected java.lang.String defaultHeader

columnNames

protected java.util.Vector<java.lang.String> columnNames

rowNames

protected java.util.Vector<java.lang.String> rowNames

tModel

protected javax.swing.table.DefaultTableModel tModel

hModel

protected javax.swing.table.DefaultTableModel hModel

sortableModel

protected SortedTableModel sortableModel

columnModel

protected javax.swing.table.TableColumnModel columnModel
Constructor Detail

RowHeaderTable

public RowHeaderTable()

RowHeaderTable

public RowHeaderTable(int numCols,
                      int numRows)

RowHeaderTable

public RowHeaderTable(java.lang.String[] columnHeaders,
                      java.lang.String[] rowHeaders)

RowHeaderTable

public RowHeaderTable(int numCols,
                      java.lang.String[] columnHeaders,
                      int numRows,
                      java.lang.String[] rowHeaders)

RowHeaderTable

public RowHeaderTable(javax.swing.table.DefaultTableModel model)
Method Detail

initTable

protected void initTable()

isHeadersEditable

public boolean isHeadersEditable()

setHeadersEditable

public void setHeadersEditable(boolean editable)

isCellsEditable

public boolean isCellsEditable()

setCellsEditable

public void setCellsEditable(boolean editable)

getDataTable

public javax.swing.JTable getDataTable()

getRowHeaderTable

public javax.swing.JTable getRowHeaderTable()

getTableModel

public javax.swing.table.DefaultTableModel getTableModel()

getRowHeaderModel

public javax.swing.table.DefaultTableModel getRowHeaderModel()

resetTable

public void resetTable()

setRowNames

protected void setRowNames()

setDefaultColumnNames

protected void setDefaultColumnNames()

setDefaultRowNames

protected void setDefaultRowNames()

convertHeaders

protected void convertHeaders(java.util.Vector<java.lang.String> vHeaders,
                              java.lang.String[] headers)

resetTableRows

protected void resetTableRows(int n)

resetTableColumns

protected void resetTableColumns(int n)

appendTableRows

public void appendTableRows(int n)

appendTableRows

public void appendTableRows(java.lang.String[] rowNames)

appendTableColumns

public void appendTableColumns(int n)

appendTableColumns

public void appendTableColumns(java.lang.String[] columnNames)

hookTableAction

protected void hookTableAction()
Add customized table actions. Clicking tab in the last cell will add one new column. Clicking return in the last cell will add one new row.


keyPressed

public void keyPressed(java.awt.event.KeyEvent e)
Specified by:
keyPressed in interface java.awt.event.KeyListener

keyReleased

public void keyReleased(java.awt.event.KeyEvent e)
Specified by:
keyReleased in interface java.awt.event.KeyListener

keyTyped

public void keyTyped(java.awt.event.KeyEvent e)
Specified by:
keyTyped in interface java.awt.event.KeyListener

propertyChange

public void propertyChange(java.beans.PropertyChangeEvent evt)
This method gets called when a bound property is changed.

Specified by:
propertyChange in interface java.beans.PropertyChangeListener
Parameters:
evt - A PropertyChangeEvent object describing the event source and the property that has changed.

tableChanged

public void tableChanged(javax.swing.event.TableModelEvent e)
This fine grain notification tells listeners the exact range of cells, rows, or columns that changed.

Specified by:
tableChanged in interface javax.swing.event.TableModelListener