org.opennms.bb.eui.common.components
Class BBFileManipTable

java.lang.Object
  |
  +--java.awt.Component
        |
        +--java.awt.Container
              |
              +--javax.swing.JComponent
                    |
                    +--javax.swing.JTable
                          |
                          +--org.opennms.bb.eui.common.components.BBFileManipTable
All Implemented Interfaces:
Accessible, CellEditorListener, EventListener, ImageObserver, ListSelectionListener, MenuContainer, Scrollable, Serializable, TableColumnModelListener, TableModelListener
Direct Known Subclasses:
SnmpFileManipTable, SnmpFileManipTable

public class BBFileManipTable
extends JTable

BBFileManipTable is a table that visually indicates the row selected

It allows the user to change the values in all the text columns and provides a browse column for browsing the directories for the value of the first column

Author:
Sowmya
See Also:
Serialized Form

Inner classes inherited from class javax.swing.JTable
JTable.AccessibleJTable, JTable.BooleanEditor, JTable.BooleanRenderer, JTable.DateRenderer, JTable.DoubleRenderer, JTable.GenericEditor, JTable.IconRenderer, JTable.NumberEditor, JTable.NumberRenderer
 
Inner classes inherited from class javax.swing.JComponent
JComponent.AccessibleJComponent, JComponent.ActionStandin, JComponent.IntVector, JComponent.KeyboardState
 
Inner classes inherited from class java.awt.Container
Container.AccessibleAWTContainer
 
Inner classes inherited from class java.awt.Component
Component.AccessibleAWTComponent, Component.AWTTreeLock
 
Field Summary
static int ARROW_COL
           
static int BROWSE_COL
           
(package private) static int iLastEditingCol
           
(package private) static int iLastEditingRow
           
protected  BBManipTableModel infoTableModel
           
(package private) static int TABLE_HEIGHT
           
(package private) static int TABLE_WIDTH
           
 
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, columnsWereSwapped, dataModel, defaultEditorsByColumnClass, defaultRenderersByColumnClass, editingColumn, editingRow, editorComp, gridColor, preferredViewportSize, reentrantCall, rowHeight, rowMargin, rowModel, rowSelectionAllowed, selectionBackground, selectionForeground, selectionModel, showHorizontalLines, showVerticalLines, tableHeader, uiClassID
 
Fields inherited from class javax.swing.JComponent
_bounds, accessibleContext, actionMap, ACTIONMAP_CREATED, alignmentX, alignmentY, ANCESTOR_INPUTMAP_CREATED, ANCESTOR_USING_BUFFER, ancestorInputMap, ancestorNotifier, autoscroller, border, changeSupport, clientProperties, CREATED_DOUBLE_BUFFER, flags, FOCUS_INPUTMAP_CREATED, focusInputMap, HAS_FOCUS, htmlKey, htmlView, inputVerifier, IS_DOUBLE_BUFFERED, IS_OPAQUE, IS_PAINTING_TILE, IS_PRINTING, IS_PRINTING_ALL, KEY_EVENTS_ENABLED, KEYBOARD_BINDINGS_KEY, listenerList, maximumSize, minimumSize, NEXT_FOCUS, paintImmediatelyClip, paintingChild, preferredSize, readObjectCallbacks, REQUEST_FOCUS_DISABLED, tmpRect, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, verifyInputWhenFocusTarget, vetoableChangeSupport, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW, WHEN_IN_FOCUSED_WINDOW_BINDINGS, WIF_INPUTMAP_CREATED, windowInputMap
 
Fields inherited from class java.awt.Container
component, containerListener, containerSerializedDataVersion, dbg, dispatcher, layoutMgr, listeningBoundsChildren, listeningChildren, maxSize, ncomponents, needsPaint, printing, printingThreads, serialVersionUID
 
Fields inherited from class java.awt.Component
actionListenerK, adjustmentListenerK, appContext, background, BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, componentListener, componentListenerK, componentOrientation, componentSerializedDataVersion, containerListenerK, cursor, dropTarget, enabled, eventMask, focusListener, focusListenerK, font, foreground, graphicsConfig, hasFocus, height, hierarchyBoundsListener, hierarchyBoundsListenerK, hierarchyListener, hierarchyListenerK, incRate, inputMethodListener, inputMethodListenerK, isInc, isPacked, itemListenerK, keyListener, keyListenerK, LEFT_ALIGNMENT, locale, LOCK, metrics, minSize, mouseListener, mouseListenerK, mouseMotionListener, mouseMotionListenerK, name, nameExplicitlySet, newEventsOnly, ownedWindowK, parent, peer, peerFont, popups, prefSize, privateKey, RIGHT_ALIGNMENT, textListenerK, TOP_ALIGNMENT, valid, visible, width, windowClosingException, windowListenerK, x, y
 
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
 
Constructor Summary
BBFileManipTable(Vector inpColNames)
          Create the table with just the columns(with no data rows) - the input data is added with value for the first arrow column
BBFileManipTable(Vector inpRowData, Vector inpColNames)
          Creates the table
 
Method Summary
 void addRow(Vector data)
          Adds the vector as the last row of the table
(package private)  void BBFileManipTableInit()
          Initialize the table features/elements
 void clearSelection()
          Clear all the selections in the table
 void createTable(Vector inpRowData, Vector inpColNames)
          Creates the table - the input data is added with values for the first arrow column
 Vector getColumns()
          Returns the column names Note: The actual table data has an extra column for the arrow.
 Vector getData()
          Returns the data Note: The actual table data has an extra column for the arrow.
 BBManipTableModel getTableModel()
          Returns the attached table model
 void pasteRow(Vector data)
          Inserts the vector next to the currently selected row
protected  void processKeyEvent(KeyEvent e)
          Handles the key events and action for the tab key
 void removeRow(int iRow)
          Removes the row# iRow
 void selectCellAt(int row, int col)
          Selects the cell (row, col)
protected  void setHeaderToolTips()
          Does nothing - sub-classes will need to override this method to set tooltips if desired
 boolean setInitialFocus()
          Selects the first column of the first row
 void setTableColumnWidths()
          Sets the column widths of the columns in the table to the the viewport width / number of columns or length of the column name whichever is greater
 void setTableColumnWidths(int iWidth, int iHeight)
          Sets the column widths of the columns in the table to the the passed width / number of columns or length of the column name whichever is greater
private  void shiftTabToNextCell()
          Move to the previous cell on a shift+tab
private  void tabToNextCell()
          Move to the next cell on tab
 void updateUI()
          Updates UI to set it back to BBFileManipTableUI
 boolean validateValues(String panelName)
          Returns true by default.
 
Methods inherited from class javax.swing.JTable
accommodateDelta, addColumn, addColumnSelectionInterval, addNotify, addRowSelectionInterval, adjustSizes, adjustSizes, boundColumn, boundRow, changeSelection, changeSelectionModel, columnAdded, columnAtPoint, columnMarginChanged, columnMoved, columnRemoved, columnSelectionChanged, compWriteObjectNotify, configureEnclosingScrollPane, convertColumnIndexToModel, convertColumnIndexToView, createDefaultColumnModel, createDefaultColumnsFromModel, createDefaultDataModel, createDefaultEditors, createDefaultRenderers, createDefaultSelectionModel, createDefaultTableHeader, createScrollPaneForTable, doLayout, editCellAt, editCellAt, editingCanceled, editingStopped, getAccessibleContext, getAutoCreateColumnsFromModel, getAutoResizeMode, getCellEditor, getCellEditor, getCellRect, getCellRenderer, getCellSelectionEnabled, getColumn, getColumnClass, getColumnCount, getColumnModel, getColumnName, getColumnSelectionAllowed, getDefaultEditor, getDefaultRenderer, getEditingColumn, getEditingRow, getEditorComponent, getGridColor, getIntercellSpacing, getModel, getPreferredScrollableViewportSize, getRowCount, getRowHeight, getRowHeight, getRowMargin, getRowModel, getRowSelectionAllowed, getScrollableBlockIncrement, getScrollableTracksViewportHeight, getScrollableTracksViewportWidth, getScrollableUnitIncrement, getSelectedColumn, getSelectedColumnCount, getSelectedColumns, getSelectedRow, getSelectedRowCount, getSelectedRows, getSelectionBackground, getSelectionForeground, getSelectionModel, getShowHorizontalLines, getShowVerticalLines, getTableHeader, getToolTipText, getUI, getUIClassID, getValueAt, initializeLocalVars, isCellEditable, isCellSelected, isColumnSelected, isEditing, isFocusTraversable, isManagingFocus, isRowSelected, limit, moveColumn, paramString, prepareEditor, prepareRenderer, processKeyBinding, readObject, removeColumn, removeColumnSelectionInterval, removeEditor, removeNotify, removeRowSelectionInterval, resizeAndRepaint, rowAtPoint, selectAll, setAutoCreateColumnsFromModel, setAutoResizeMode, setCellEditor, setCellSelectionEnabled, setColumnModel, setColumnSelectionAllowed, setColumnSelectionInterval, setComponentOrientation, setDefaultEditor, setDefaultRenderer, setEditingColumn, setEditingRow, setGridColor, setIntercellSpacing, setLazyEditor, setLazyRenderer, setLazyValue, setModel, setPreferredScrollableViewportSize, setRowHeight, setRowHeight, setRowMargin, setRowSelectionAllowed, setRowSelectionInterval, setSelectionBackground, setSelectionForeground, setSelectionMode, setSelectionModel, setShowGrid, setShowHorizontalLines, setShowVerticalLines, setTableHeader, setUI, setValueAt, setWidthsFromPreferredWidths, sizeColumnsToFit, sizeColumnsToFit, swapColumns, tableChanged, tableRowsDeleted, tableRowsInserted, unconfigureEnclosingScrollPane, updateSubComponentUI, valueChanged, viewIndexForColumn, writeObject
 
Methods inherited from class javax.swing.JComponent
_paintImmediately, , addAncestorListener, addPropertyChangeListener, addPropertyChangeListener, addVetoableChangeListener, adjustPaintFlags, alwaysOnTop, checkIfChildObscuredBySibling, clearFocusOwners, componentInputMapChanged, computeVisibleRect, computeVisibleRect, contains, createToolTip, disable, enable, enableSerialization, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, getActionForKeyStroke, getActionMap, getActionMap, getAlignmentX, getAlignmentY, getAutoscrolls, getBorder, getBounds, getClientProperties, getClientProperty, getComponentGraphics, getConditionForKeyStroke, getCreatedDoubleBuffer, getDebugGraphicsOptions, getFlag, getGraphics, getHeight, getInputMap, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPreferredSize, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getTopLevelAncestor, getVerifyInputWhenFocusTarget, getVisibleRect, getWidth, getX, getY, grabFocus, hasFocus, hide, isDoubleBuffered, isFocusCycleRoot, isLightweightComponent, isMaximumSizeSet, isMinimumSizeSet, isOpaque, isOptimizedDrawingEnabled, isPaintingTile, isPreferredSizeSet, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintChildren, paintComponent, paintImmediately, paintImmediately, paintWithBuffer, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processFocusEvent, processKeyBindings, processKeyBindingsForAllComponents, processMouseMotionEvent, putClientProperty, rectangleIsObscured, rectangleIsObscuredBySibling, registerKeyboardAction, registerKeyboardAction, registerWithKeyboardManager, registerWithKeyboardManager, removeAncestorListener, removePropertyChangeListener, removePropertyChangeListener, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setCreatedDoubleBuffer, setDebugGraphicsOptions, setDoubleBuffered, setEnabled, setFlag, setFont, setForeground, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPaintingChild, setPreferredSize, setRequestFocusEnabled, setToolTipText, setUI, setVerifyInputWhenFocusTarget, setVisible, shouldDebugGraphics, superProcessMouseMotionEvent, unregisterKeyboardAction, unregisterWithKeyboardManager, unregisterWithKeyboardManager, update
 
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, addImpl, adjustListeningChildren, applyOrientation, checkGD, countComponents, createChildHierarchyEvents, createHierarchyEvents, deliverEvent, dispatchEventImpl, dispatchEventToSelf, eventEnabled, findComponentAt, findComponentAt, findComponentAt, getAccessibleAt, getAccessibleChild, getAccessibleChildrenCount, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents_NoClientCode, getComponents, getLayout, getMouseEventTarget, getWindow, initIDs, insets, invalidate, invalidateTree, isAncestorOf, layout, lightweightPaint, lightweightPrint, list, list, locate, minimumSize, nextFocus, numListening, paintComponents, paintHeavyweightComponents, postProcessKeyEvent, postsOldMouseEvents, preferredSize, preProcessKeyEvent, printComponents, printHeavyweightComponents, processContainerEvent, processEvent, proxyEnableEvents, proxyRequestFocus, remove, remove, removeAll, removeContainerListener, setFocusOwner, setLayout, transferFocus, validate, validateTree
 
Methods inherited from class java.awt.Component
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, areInputMethodsEnabled, bounds, checkImage, checkImage, checkWindowClosingException, coalesceEvents, constructComponentName, contains, createImage, createImage, disableEvents, dispatchEvent, enable, enableEvents, enableInputMethods, getAccessibleIndexInParent, getAccessibleStateSet, getBackground, getBounds, getColorModel, getComponentOrientation, getCursor, getDropTarget, getFont_NoClientCode, getFont, getFontMetrics, getForeground, getGraphicsConfiguration, getInputContext, getInputMethodRequests, getLocale, getLocation, getLocationOnScreen_NoTreeLock, getLocationOnScreen, getName, getNativeContainer, getParent_NoClientCode, getParent, getPeer, getSize, getToolkit, getToolkitImpl, getTreeLock, getWindowForObject, gotFocus, handleEvent, imageUpdate, inside, isDisplayable, isEnabled, isEnabledImpl, isLightweight, isRecursivelyVisible, isShowing, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, prepareImage, prepareImage, processComponentEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processMouseEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, repaint, repaint, repaint, resetGC, resize, resize, setBounds, setBounds, setCursor, setDropTarget, setLocale, setLocation, setLocation, setName, setSize, setSize, show, show, size, toString, transferFocus
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, registerNatives, wait, wait, wait
 

Field Detail

infoTableModel

protected BBManipTableModel infoTableModel

TABLE_WIDTH

static final int TABLE_WIDTH

TABLE_HEIGHT

static final int TABLE_HEIGHT

ARROW_COL

public static int ARROW_COL

BROWSE_COL

public static int BROWSE_COL

iLastEditingRow

static int iLastEditingRow

iLastEditingCol

static int iLastEditingCol
Constructor Detail

BBFileManipTable

public BBFileManipTable(Vector inpColNames)
Create the table with just the columns(with no data rows) - the input data is added with value for the first arrow column

BBFileManipTable

public BBFileManipTable(Vector inpRowData,
                        Vector inpColNames)
Creates the table
Method Detail

createTable

public void createTable(Vector inpRowData,
                        Vector inpColNames)
Creates the table - the input data is added with values for the first arrow column

BBFileManipTableInit

void BBFileManipTableInit()
Initialize the table features/elements

updateUI

public void updateUI()
Updates UI to set it back to BBFileManipTableUI
Overrides:
updateUI in class JTable

clearSelection

public void clearSelection()
Clear all the selections in the table
Overrides:
clearSelection in class JTable

setTableColumnWidths

public void setTableColumnWidths()
Sets the column widths of the columns in the table to the the viewport width / number of columns or length of the column name whichever is greater

Also sets the table scrollpane viewport accordingly


setTableColumnWidths

public void setTableColumnWidths(int iWidth,
                                 int iHeight)
Sets the column widths of the columns in the table to the the passed width / number of columns or length of the column name whichever is greater

Also sets the table scrollpane viewport accordingly


setHeaderToolTips

protected void setHeaderToolTips()
Does nothing - sub-classes will need to override this method to set tooltips if desired

setInitialFocus

public boolean setInitialFocus()
Selects the first column of the first row

selectCellAt

public void selectCellAt(int row,
                         int col)
Selects the cell (row, col)

addRow

public void addRow(Vector data)
Adds the vector as the last row of the table

pasteRow

public void pasteRow(Vector data)
Inserts the vector next to the currently selected row

removeRow

public void removeRow(int iRow)
Removes the row# iRow

processKeyEvent

protected void processKeyEvent(KeyEvent e)
Handles the key events and action for the tab key
Overrides:
processKeyEvent in class JComponent

tabToNextCell

private void tabToNextCell()
Move to the next cell on tab

shiftTabToNextCell

private void shiftTabToNextCell()
Move to the previous cell on a shift+tab

getTableModel

public BBManipTableModel getTableModel()
Returns the attached table model

getColumns

public Vector getColumns()
Returns the column names 
 Note: The actual table data has an extra column for the 
       arrow. This is not returned in the result
 

getData

public Vector getData()
Returns the data  
 Note: The actual table data has an extra column for the 
       arrow. This is not returned in the result
 

validateValues

public boolean validateValues(String panelName)
Returns true by default. Sub-classes override this method if additional validation is required (for example before a save)