org.eclipse.datatools.sqltools.sqlbuilder.views
Class TableNavigator

java.lang.Object
  extended by org.eclipse.swt.widgets.Widget
      extended by org.eclipse.swt.widgets.Control
          extended by org.eclipse.swt.widgets.Scrollable
              extended by org.eclipse.swt.widgets.Composite
                  extended by org.eclipse.swt.widgets.Canvas
                      extended by org.eclipse.swt.custom.TableCursor
                          extended by org.eclipse.datatools.sqltools.sqlbuilder.views.TableNavigator
All Implemented Interfaces:
org.eclipse.swt.graphics.Drawable

public class TableNavigator
extends org.eclipse.swt.custom.TableCursor

Adds a TableCursor to a StructuredViewer - for keyboard navigation of the table The intent of this class is to provide the standard listeners for using F2 to activate cell editors. Due to a current bug in the TableCursor, TableViewers using this class must make a call similar to the TableNavigator method moveCellEditorsAbove(cellEditors) whenever a setCellEditors call is made in the StructuredViewer. This is so that the cell editor control shows up above the table cursor control.


Nested Class Summary
 class TableNavigator.SelectionKeyAdapter
           
 
Field Summary
static java.lang.String copyright
           
 
Fields inherited from class org.eclipse.swt.widgets.Composite
embeddedHandle
 
Fields inherited from class org.eclipse.swt.widgets.Widget
handle
 
Constructor Summary
TableNavigator(org.eclipse.swt.widgets.Table table, org.eclipse.jface.viewers.StructuredViewer viewer)
           
 
Method Summary
 void addKeyListeners(org.eclipse.jface.viewers.StructuredViewer viewer)
           
 void addMouseListeners(org.eclipse.jface.viewers.StructuredViewer viewer)
           
 void addPaintListener(org.eclipse.jface.viewers.StructuredViewer viewer)
           
 TableNavigator.SelectionKeyAdapter getKeyAdapter(org.eclipse.jface.viewers.StructuredViewer viewer)
           
 org.eclipse.swt.widgets.Table getTable()
           
 void moveCellEditorsAbove(org.eclipse.jface.viewers.CellEditor[] editorArray)
          Ensure that cell editor control shows up above the table cursor control.
 void refresh()
           
 void setKeyAdapter(TableNavigator.SelectionKeyAdapter kAdapter)
           
 
Methods inherited from class org.eclipse.swt.custom.TableCursor
addSelectionListener, getBackground, getColumn, getForeground, getRow, removeSelectionListener, setBackground, setForeground, setSelection, setSelection, setVisible
 
Methods inherited from class org.eclipse.swt.widgets.Canvas
drawBackground, getCaret, getIME, scroll, setCaret, setFont, setIME
 
Methods inherited from class org.eclipse.swt.widgets.Composite
changed, computeSize, drawBackground, getBackgroundMode, getChildren, getClientArea, getLayout, getLayoutDeferred, getTabList, isLayoutDeferred, layout, layout, layout, layout, layout, setBackgroundMode, setFocus, setLayout, setLayoutDeferred, setTabList
 
Methods inherited from class org.eclipse.swt.widgets.Scrollable
computeTrim, getBorderWidth, getHorizontalBar, getVerticalBar
 
Methods inherited from class org.eclipse.swt.widgets.Control
addControlListener, addDragDetectListener, addFocusListener, addHelpListener, addKeyListener, addMenuDetectListener, addMouseListener, addMouseMoveListener, addMouseTrackListener, addMouseWheelListener, addPaintListener, addTraverseListener, computeSize, dragDetect, dragDetect, forceFocus, getAccessible, getBackgroundImage, getBounds, getCursor, getDragDetect, getEnabled, getFont, getLayoutData, getLocation, getMenu, getMonitor, getParent, getRegion, getShell, getSize, getToolTipText, getVisible, internal_dispose_GC, internal_new_GC, isEnabled, isFocusControl, isReparentable, isVisible, moveAbove, moveBelow, pack, pack, print, redraw, redraw, removeControlListener, removeDragDetectListener, removeFocusListener, removeHelpListener, removeKeyListener, removeMenuDetectListener, removeMouseListener, removeMouseMoveListener, removeMouseTrackListener, removeMouseWheelListener, removePaintListener, removeTraverseListener, setBackgroundImage, setBounds, setBounds, setCapture, setCursor, setDragDetect, setEnabled, setLayoutData, setLocation, setLocation, setMenu, setParent, setRedraw, setRegion, setSize, setSize, setToolTipText, toControl, toControl, toDisplay, toDisplay, traverse, traverse, traverse, update
 
Methods inherited from class org.eclipse.swt.widgets.Widget
addDisposeListener, addListener, dispose, getData, getData, getDisplay, getListeners, getStyle, isDisposed, isListening, notifyListeners, removeDisposeListener, removeListener, reskin, setData, setData, toString
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

copyright

public static final java.lang.String copyright
See Also:
Constant Field Values
Constructor Detail

TableNavigator

public TableNavigator(org.eclipse.swt.widgets.Table table,
                      org.eclipse.jface.viewers.StructuredViewer viewer)
Method Detail

getTable

public org.eclipse.swt.widgets.Table getTable()

addPaintListener

public void addPaintListener(org.eclipse.jface.viewers.StructuredViewer viewer)

getKeyAdapter

public TableNavigator.SelectionKeyAdapter getKeyAdapter(org.eclipse.jface.viewers.StructuredViewer viewer)

setKeyAdapter

public void setKeyAdapter(TableNavigator.SelectionKeyAdapter kAdapter)

addKeyListeners

public void addKeyListeners(org.eclipse.jface.viewers.StructuredViewer viewer)

addMouseListeners

public void addMouseListeners(org.eclipse.jface.viewers.StructuredViewer viewer)

moveCellEditorsAbove

public void moveCellEditorsAbove(org.eclipse.jface.viewers.CellEditor[] editorArray)
Ensure that cell editor control shows up above the table cursor control. Should be called whenever the table viewer makes a new call to setCellEditors i.e. in constructor and in refreshCellEditors

Parameters:
- - array of cell editors for the StructuredViewer

refresh

public void refresh()