public class TreeTableHeader extends GanttChartControl implements PropertyChangeListener, MouseListener, MouseMotionListener, IColumnModelListener, ISortingListener
TreeTable
. It's
purpose is to visualize the columns that are provided by the Gantt chart's
column model (see IColumnModel
).DefaultColumnModel
,
Serialized FormJPanel.AccessibleJPanel
JComponent.AccessibleJComponent
Container.AccessibleAWTContainer
Component.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategy
listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
accessibleContext, BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
Constructor and Description |
---|
TreeTableHeader(AbstractGanttChart gc)
Constructs a new column header.
|
Modifier and Type | Method and Description |
---|---|
void |
columnModelChanged(ColumnModelEvent evt)
The listener's callback method that will be invoked when columns get
added, removed, inserted.
|
TreeTableColumn |
getColumn(int index)
Returns the tree table column for the given index.
|
TreeTableColumn |
getColumnAt(int x)
Returns the column located at the given location.
|
Rectangle |
getColumnBounds(int index)
Returns the bounds of the column at the given index.
|
Rectangle |
getColumnBounds(TreeTableColumn c)
Returns the bounds of the given column.
|
IColumnHeaderRenderer |
getColumnHeaderRenderer(Class cl)
Returns a column header renderer for an object type.
|
int |
getColumnIndexAt(int x)
Returns the index of the column at the given x-coordinate.
|
int |
getColumnLocation(TreeTableColumn c)
Returns the x-coordinate of the given column.
|
TreeTableColumn |
getDraggedColumn()
Returns the tree table column on which drag operations are currently
performed (resize or move).
|
TreeTableColumn |
getFillerColumn()
Returns the filler column that gets placed at the end of the column
header and that causes a column to be rendered when the left-hand side of
the Gantt chart gets resized so much that it is larger than the table
that it contains.
|
Color |
getGridColor()
Returns the color used by the table header to draw its grid lines.
|
ITreeTableHeaderMenuProvider |
getMenuProvider()
Returns the menu provider used by the tree table header to lookup a popup
menu based on the location and context of the popup trigger event.
|
IColumnModel |
getModel()
Returns the column model that gets visualized by the column header.
|
Dimension |
getPreferredSize() |
Map<Class,IColumnHeaderRenderer> |
getRendererMap()
Returns the map that stores the mappings between column header values and
column header renderers.
|
int |
getSortCount()
The tree table supports multi-column sorting and this method returns the
number of columns used for sorting.
|
int |
getSortPosition(int modelIndex)
The tree table and the tree table header support multi column sorting.
|
boolean |
isDoubleClickResizeEnabled()
Determines whether the user can auto resize a column by double clicking
on its right edge.
|
boolean |
isFocusEnabled()
Determines whether focus will be shown to the user when the mouse cursor
hovers over a column header.
|
boolean |
isShowingFillerColumn()
Returns TRUE if the tree table places an unused filler column to the
right of the last used column.
|
void |
mouseClicked(MouseEvent e) |
void |
mouseDragged(MouseEvent e) |
void |
mouseEntered(MouseEvent e) |
void |
mouseExited(MouseEvent e) |
void |
mouseMoved(MouseEvent e) |
void |
mousePressed(MouseEvent e) |
void |
mouseReleased(MouseEvent e) |
protected void |
paintColumnHeader(Graphics g,
TreeTableColumn column,
int x,
int y,
int width,
int height)
Paints the column header for the given column.
|
protected void |
paintColumnHeaders(Graphics g)
Paints all column headers.
|
protected void |
paintComponent(Graphics g) |
void |
propertyChange(PropertyChangeEvent evt) |
void |
setColumnHeaderRenderer(Class objectType,
IColumnHeaderRenderer renderer)
Maps the implementation of a column header renderer to a class
definition.
|
void |
setDoubleClickResizeEnabled(boolean enabled)
Specifies whether the user can auto resize a column by double clicking on
its right edge.
|
void |
setFocusEnabled(boolean focusEnabled)
Specifies whether focus will be shown to the user when the mouse cursor
hovers over a column header.
|
void |
setGridColor(Color color)
Sets the color used by the table header to draw its grid lines.
|
void |
setMenuProvider(ITreeTableHeaderMenuProvider provider)
Sets the menu provider used by the tree table header to lookup a popup
menu based on the location and context of the popup trigger event.
|
void |
setRendererMap(Map<Class,IColumnHeaderRenderer> map)
Sets the map that stores the mappings between column header values and
column header renderers.
|
void |
setShowingFillerColumn(boolean show)
Specifies whether an unused filler column will be placed to the right of
the last used column.
|
void |
sortColumn(TreeTableColumn col,
boolean keepSortedColumns)
Sorts the given column.
|
void |
sorting(SortingEvent evt)
Callback method that gets invoked when a sort starts or finishes.
|
getGanttChart, print, printBorder
getAccessibleContext, getUI, getUIClassID, paramString, setUI, updateUI
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, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, hide, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingOrigin, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintChildren, paintImmediately, paintImmediately, printAll, 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
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, transferFocusDownCycle, validate, validateTree
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, 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, transferFocusBackward, transferFocusUpCycle
public TreeTableHeader(AbstractGanttChart gc)
gc
- the parent Gantt chart containerprotected void paintComponent(Graphics g)
paintComponent
in class JComponent
protected void paintColumnHeaders(Graphics g)
g
- the graphics context into which to drawpaintColumnHeader(Graphics, TreeTableColumn, int, int, int, int)
protected void paintColumnHeader(Graphics g, TreeTableColumn column, int x, int y, int width, int height)
g
- the graphics context into which to drawcolumn
- the column for which to draw a headerx
- the x-coordinate of the headery
- the y-coordinate of the headerwidth
- the width of the headerheight
- the height of the headerpublic int getSortPosition(int modelIndex)
modelIndex
- the model index that gets checked for its sort positionpublic int getSortCount()
public TreeTableColumn getDraggedColumn()
public Dimension getPreferredSize()
getPreferredSize
in class JComponent
public int getColumnIndexAt(int x)
Integer.MIN_VALUE
if no column could be found. The filler column
will not be taken into consideration.x
- the x-coordinate to checkInteger.MIN_VALUE
if no column can be
foundpublic IColumnModel getModel()
public void setFocusEnabled(boolean focusEnabled)
focusEnabled
- if TRUE the background color of column header will change when
the mouse cursor hovers over itpublic boolean isFocusEnabled()
public void columnModelChanged(ColumnModelEvent evt)
IColumnModelListener
columnModelChanged
in interface IColumnModelListener
evt
- the event descriptionpublic TreeTableColumn getColumn(int index)
index
- the index for which to return a columnpublic TreeTableColumn getColumnAt(int x)
x
- the location for which to return the columnpublic void mouseClicked(MouseEvent e)
mouseClicked
in interface MouseListener
public void sortColumn(TreeTableColumn col, boolean keepSortedColumns)
col
- the column to sortkeepSortedColumns
- if TRUE the sorting of the other columns will be maintainedpublic void mousePressed(MouseEvent e)
mousePressed
in interface MouseListener
public void mouseReleased(MouseEvent e)
mouseReleased
in interface MouseListener
public void mouseEntered(MouseEvent e)
mouseEntered
in interface MouseListener
public void mouseExited(MouseEvent e)
mouseExited
in interface MouseListener
public void mouseDragged(MouseEvent e)
mouseDragged
in interface MouseMotionListener
public void mouseMoved(MouseEvent e)
mouseMoved
in interface MouseMotionListener
public int getColumnLocation(TreeTableColumn c)
c
- the tree table columnpublic Rectangle getColumnBounds(TreeTableColumn c)
c
- the tree table columnpublic Rectangle getColumnBounds(int index)
index
- the column's indexpublic TreeTableColumn getFillerColumn()
setShowingFillerColumn(boolean)
public boolean isShowingFillerColumn()
public void setShowingFillerColumn(boolean show)
show
- flag signalling use of filler columnpublic Color getGridColor()
public void setGridColor(Color color)
color
- the grid line colorpublic void propertyChange(PropertyChangeEvent evt)
propertyChange
in interface PropertyChangeListener
propertyChange
in class GanttChartControl
public void setColumnHeaderRenderer(Class objectType, IColumnHeaderRenderer renderer)
objectType
- the type of those header values that will be rendered with the
given rendererrenderer
- an implementation that will be used to renderer instances of
the given object typeDefaultColumnHeaderRenderer
,
getColumnHeaderRenderer(Class)
public IColumnHeaderRenderer getColumnHeaderRenderer(Class cl)
cl
- the type of the object in need of renderingsetColumnHeaderRenderer(Class, IColumnHeaderRenderer)
,
DefaultColumnHeaderRenderer
public ITreeTableHeaderMenuProvider getMenuProvider()
public void setMenuProvider(ITreeTableHeaderMenuProvider provider)
provider
- the table header's menu providerpublic Map<Class,IColumnHeaderRenderer> getRendererMap()
public void setRendererMap(Map<Class,IColumnHeaderRenderer> map)
map
- the renderer mappublic boolean isDoubleClickResizeEnabled()
public void setDoubleClickResizeEnabled(boolean enabled)
enabled
- if TRUE the double-click auto-resize feature is enabledpublic void sorting(SortingEvent evt)
ISortingListener
sorting
in interface ISortingListener
evt
- an event object with details about the sorting operationCopyright © 2006–2016 Dirk Lemmermann Software & Consulting. All rights reserved.