org.tbee.swing.table
Class FTable

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 org.tbee.swing.table.FTable
All Implemented Interfaces:
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

public class FTable
extends javax.swing.JTable

Obtained from: http://www.chka.de/swing/table/FTable.java This fixes a number of JTable quirks. Here it is used to fix the "focused cell and edited cell are not the same". Maybe in JDK1.5 or higher it can be removed.

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
static java.lang.String SOURCECODE_VERSION
          Standard variable for determining version of a class file.
 
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 java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
 
Constructor Summary
FTable()
           
FTable(int numRows, int numColumns)
           
FTable(java.lang.Object[][] rowData, java.lang.Object[] columnNames)
           
FTable(javax.swing.table.TableModel data)
           
FTable(javax.swing.table.TableModel data, javax.swing.table.TableColumnModel columns)
           
FTable(javax.swing.table.TableModel dm, javax.swing.table.TableColumnModel cm, javax.swing.ListSelectionModel sm)
           
FTable(java.util.Vector rowData, java.util.Vector columnNames)
           
 
Method Summary
 void cancelEditing()
          If cell editing is in progress: cancel it.
 void changeSelection(int row, int column, boolean toggle, boolean extend)
           
 void columnAdded(javax.swing.event.TableColumnModelEvent e)
           
 void columnMarginChanged(javax.swing.event.ChangeEvent e)
           
 void columnMoved(javax.swing.event.TableColumnModelEvent e)
           
 void columnRemoved(javax.swing.event.TableColumnModelEvent e)
           
protected  void configureEnclosingScrollPane()
           
 void doLayout()
           
 boolean editCellAt(int row, int column, java.util.EventObject e)
           
 void editingCanceled(javax.swing.event.ChangeEvent e)
           
 void editingStopped(javax.swing.event.ChangeEvent e)
           
 void finishEditing()
          If cell editing is in progress: try to stop it, if that fails, cancel it.
 java.awt.Rectangle getCellRect(int row, int column, boolean includeSpacing)
           
 boolean getScrollableTracksViewportHeight()
           
 boolean getScrollableTracksViewportWidth()
           
 java.lang.String getToolTipText(java.awt.event.MouseEvent e)
           
protected  boolean processKeyBinding(javax.swing.KeyStroke k, java.awt.event.KeyEvent e, int condition, boolean pressed)
           
protected  void processKeyEvent(java.awt.event.KeyEvent e)
           
 void removeEditor()
           
protected  javax.swing.table.TableColumn resizingColumn()
           
 void selectAll()
           
 void setColumnModel(javax.swing.table.TableColumnModel c)
           
 void setModel(javax.swing.table.TableModel data)
           
 void setRowHeight(int height)
           
 void setRowHeight(int row, int height)
           
 void setSelectionModel(javax.swing.ListSelectionModel s)
           
 void setTableHeader(javax.swing.table.JTableHeader h)
           
 boolean stopEditing()
          If cell editing is in progress: try to stop it.
 void tableChanged(javax.swing.event.TableModelEvent e)
           
protected  void unconfigureEnclosingScrollPane()
           
 
Methods inherited from class javax.swing.JTable
addColumn, addColumnSelectionInterval, addNotify, addRowSelectionInterval, clearSelection, columnAtPoint, columnSelectionChanged, convertColumnIndexToModel, convertColumnIndexToView, convertRowIndexToModel, convertRowIndexToView, createDefaultColumnModel, createDefaultColumnsFromModel, createDefaultDataModel, createDefaultEditors, createDefaultRenderers, createDefaultSelectionModel, createDefaultTableHeader, createScrollPaneForTable, editCellAt, getAccessibleContext, getAutoCreateColumnsFromModel, getAutoCreateRowSorter, getAutoResizeMode, getCellEditor, getCellEditor, 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, getScrollableUnitIncrement, getSelectedColumn, getSelectedColumnCount, getSelectedColumns, getSelectedRow, getSelectedRowCount, getSelectedRows, getSelectionBackground, getSelectionForeground, getSelectionModel, getShowHorizontalLines, getShowVerticalLines, getSurrendersFocusOnKeystroke, getTableHeader, getUI, getUIClassID, getUpdateSelectionOnSort, getValueAt, initializeLocalVars, isCellEditable, isCellSelected, isColumnSelected, isEditing, isRowSelected, moveColumn, paramString, prepareEditor, prepareRenderer, print, print, print, print, print, removeColumn, removeColumnSelectionInterval, removeNotify, removeRowSelectionInterval, resizeAndRepaint, rowAtPoint, setAutoCreateColumnsFromModel, setAutoCreateRowSorter, setAutoResizeMode, setCellEditor, setCellSelectionEnabled, setColumnSelectionAllowed, setColumnSelectionInterval, setDefaultEditor, setDefaultRenderer, setDragEnabled, setDropMode, setEditingColumn, setEditingRow, setFillsViewportHeight, setGridColor, setIntercellSpacing, setPreferredScrollableViewportSize, setRowMargin, setRowSelectionAllowed, setRowSelectionInterval, setRowSorter, setSelectionBackground, setSelectionForeground, setSelectionMode, setShowGrid, setShowHorizontalLines, setShowVerticalLines, setSurrendersFocusOnKeystroke, setUI, setUpdateSelectionOnSort, setValueAt, sizeColumnsToFit, sizeColumnsToFit, sorterChanged, 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, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintChildren, paintComponent, paintImmediately, paintImmediately, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, 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
 

Field Detail

SOURCECODE_VERSION

public static final java.lang.String SOURCECODE_VERSION
Standard variable for determining version of a class file.

See Also:
Constant Field Values
Constructor Detail

FTable

public FTable()

FTable

public FTable(javax.swing.table.TableModel data)

FTable

public FTable(javax.swing.table.TableModel data,
              javax.swing.table.TableColumnModel columns)

FTable

public FTable(javax.swing.table.TableModel dm,
              javax.swing.table.TableColumnModel cm,
              javax.swing.ListSelectionModel sm)

FTable

public FTable(int numRows,
              int numColumns)

FTable

public FTable(java.util.Vector rowData,
              java.util.Vector columnNames)

FTable

public FTable(java.lang.Object[][] rowData,
              java.lang.Object[] columnNames)
Method Detail

configureEnclosingScrollPane

protected void configureEnclosingScrollPane()
Overrides:
configureEnclosingScrollPane in class javax.swing.JTable

unconfigureEnclosingScrollPane

protected void unconfigureEnclosingScrollPane()
Overrides:
unconfigureEnclosingScrollPane in class javax.swing.JTable

setTableHeader

public void setTableHeader(javax.swing.table.JTableHeader h)
Overrides:
setTableHeader in class javax.swing.JTable

changeSelection

public void changeSelection(int row,
                            int column,
                            boolean toggle,
                            boolean extend)
Overrides:
changeSelection in class javax.swing.JTable

setColumnModel

public void setColumnModel(javax.swing.table.TableColumnModel c)
Overrides:
setColumnModel in class javax.swing.JTable

setSelectionModel

public void setSelectionModel(javax.swing.ListSelectionModel s)
Overrides:
setSelectionModel in class javax.swing.JTable

setModel

public void setModel(javax.swing.table.TableModel data)
Overrides:
setModel in class javax.swing.JTable

setRowHeight

public void setRowHeight(int height)
Overrides:
setRowHeight in class javax.swing.JTable

setRowHeight

public void setRowHeight(int row,
                         int height)
Overrides:
setRowHeight in class javax.swing.JTable

getScrollableTracksViewportHeight

public boolean getScrollableTracksViewportHeight()
Specified by:
getScrollableTracksViewportHeight in interface javax.swing.Scrollable
Overrides:
getScrollableTracksViewportHeight in class javax.swing.JTable

getScrollableTracksViewportWidth

public boolean getScrollableTracksViewportWidth()
Specified by:
getScrollableTracksViewportWidth in interface javax.swing.Scrollable
Overrides:
getScrollableTracksViewportWidth in class javax.swing.JTable

resizingColumn

protected javax.swing.table.TableColumn resizingColumn()

selectAll

public void selectAll()
Overrides:
selectAll in class javax.swing.JTable

columnAdded

public void columnAdded(javax.swing.event.TableColumnModelEvent e)
Specified by:
columnAdded in interface javax.swing.event.TableColumnModelListener
Overrides:
columnAdded in class javax.swing.JTable

columnRemoved

public void columnRemoved(javax.swing.event.TableColumnModelEvent e)
Specified by:
columnRemoved in interface javax.swing.event.TableColumnModelListener
Overrides:
columnRemoved in class javax.swing.JTable

columnMoved

public void columnMoved(javax.swing.event.TableColumnModelEvent e)
Specified by:
columnMoved in interface javax.swing.event.TableColumnModelListener
Overrides:
columnMoved in class javax.swing.JTable

getCellRect

public java.awt.Rectangle getCellRect(int row,
                                      int column,
                                      boolean includeSpacing)
Overrides:
getCellRect in class javax.swing.JTable

columnMarginChanged

public void columnMarginChanged(javax.swing.event.ChangeEvent e)
Specified by:
columnMarginChanged in interface javax.swing.event.TableColumnModelListener
Overrides:
columnMarginChanged in class javax.swing.JTable

doLayout

public void doLayout()
Overrides:
doLayout in class javax.swing.JTable

tableChanged

public void tableChanged(javax.swing.event.TableModelEvent e)
Specified by:
tableChanged in interface javax.swing.event.TableModelListener
Overrides:
tableChanged in class javax.swing.JTable

editingStopped

public void editingStopped(javax.swing.event.ChangeEvent e)
Specified by:
editingStopped in interface javax.swing.event.CellEditorListener
Overrides:
editingStopped in class javax.swing.JTable

finishEditing

public void finishEditing()
If cell editing is in progress: try to stop it, if that fails, cancel it. When this method returns, the JTable isn't editing.


stopEditing

public boolean stopEditing()
If cell editing is in progress: try to stop it.


cancelEditing

public void cancelEditing()
If cell editing is in progress: cancel it. When this method returns, the JTable isn't editing.


editingCanceled

public void editingCanceled(javax.swing.event.ChangeEvent e)
Specified by:
editingCanceled in interface javax.swing.event.CellEditorListener
Overrides:
editingCanceled in class javax.swing.JTable

removeEditor

public void removeEditor()
Overrides:
removeEditor in class javax.swing.JTable

editCellAt

public boolean editCellAt(int row,
                          int column,
                          java.util.EventObject e)
Overrides:
editCellAt in class javax.swing.JTable

getToolTipText

public java.lang.String getToolTipText(java.awt.event.MouseEvent e)
Overrides:
getToolTipText in class javax.swing.JTable

processKeyBinding

protected boolean processKeyBinding(javax.swing.KeyStroke k,
                                    java.awt.event.KeyEvent e,
                                    int condition,
                                    boolean pressed)
Overrides:
processKeyBinding in class javax.swing.JTable

processKeyEvent

protected void processKeyEvent(java.awt.event.KeyEvent e)
Overrides:
processKeyEvent in class javax.swing.JComponent


Copyright © 2010 KnowledgePlaza. All Rights Reserved.