|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectjava.awt.Component
java.awt.Container
javax.swing.JComponent
javax.swing.JPanel
de.jaret.util.ui.timebars.swing.TimeBarViewer
public class TimeBarViewer
Viewer for a TimeBarModel (Swing version). Displays the intervals using a renderer. Supports sorting and/or filtering of the rows in the model without affecting the model itself.
NOTE: The Swing version is not as complete as the swt version!
The implementation depends on the TimeBarViewerDelegate
for the operations and calculations that is
shared between the Swing and the SWT implementation of the viewer. The delegate is accesible via the method
getDelegate()
. It supplies additional functionality not delegated by methods in this class (will be done
in future releases).
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 |
Nested classes/interfaces inherited from interface de.jaret.util.ui.timebars.TimeBarViewerInterface |
---|
TimeBarViewerInterface.Orientation |
Field Summary | |
---|---|
protected javax.swing.JPopupMenu |
_bodyContextMenu
context menu for the body of the viewer. |
protected TimeBarViewerDelegate |
_delegate
The delegate is the heart of the joined implementation between Swing and SWT version of the viewer. |
de.jaret.util.ui.timebars.swing.TimeBarViewer.Diagram |
_diagram
the diagram pane itself. |
protected TimeBarGapRenderer |
_gapRenderer
gap renderer. |
protected java.util.List<? extends de.jaret.util.date.Interval> |
_ghostIntervals
list of ghost intervals to be painted. |
protected java.util.List<java.lang.Integer> |
_ghostIntervalYCoordinates
y offsets for the ghost intervals. |
protected java.awt.Point |
_ghostOrigin
the origin for painting the ghost intervals/rows. |
protected java.util.List<TimeBarRow> |
_ghostRows
list of ghost rows to paint. |
protected java.util.List<java.lang.Integer> |
_ghostRowYCoordinates
y offsets for the ghost rows. |
protected IGlobalAssistantRenderer |
_globalAssistantRenderer
gloab assistant renderer. |
protected GridRenderer |
_gridRenderer
renderer used for rendering the grid/background. |
protected javax.swing.JComponent |
_gridRendererComponent
used to cache the grid renderer component. |
protected javax.swing.JPopupMenu |
_headerContextMenu
context menu for the header. |
protected HeaderRenderer |
_headerRenderer
renderer for the row headers. |
protected javax.swing.JPopupMenu |
_hierarchyContextMenu
context menu for the hierarchy area. |
protected HierarchyRenderer |
_hierarchyRenderer
renderer for the hierarchy section. |
protected javax.swing.JPanel |
_horizontalScrollPanel
panel the horizontal scrollbar is placed on. |
protected IMarkerRenderer |
_markerRenderer
marker renderer. |
protected IMiscRenderer |
_miscRenderer
Renderer for various elements. |
protected java.util.Map<java.lang.Class<? extends de.jaret.util.date.Interval>,javax.swing.JPopupMenu> |
_registeredPopupMenues
map of registered popup menus for intervals. |
protected IRelationRenderer |
_relationRenderer
Relation render. |
protected java.util.Map<java.lang.Class<? extends de.jaret.util.date.Interval>,TimeBarRenderer> |
_rendererMap
mapping between interval classes and renderers. |
protected boolean |
_requiresPopupTriggerCheck
flag indicating popupTrigger is not set for MouseReleased event. |
protected javax.swing.JPopupMenu |
_timeScaleContextMenu
context menu for the time scale. |
protected TimeScaleRenderer |
_timeScaleRenderer
renderer used for the stimescale. |
protected javax.swing.JComponent |
_timeScaleRendererComponent
used to cache the time scale component for static use (tooltips). |
protected javax.swing.JPopupMenu |
_titleContextMenu
context menu for the title area. |
protected ITitleRenderer |
_titleRenderer
Renderer used to render the title area. null indicates no renderer. |
protected boolean |
_useTitleRendererComponentInPlace
|
protected javax.swing.JPanel |
_verticalScrollPanel
panel the vertical scrollbar is placed on. |
protected javax.swing.JScrollBar |
_xScrollBar
horizontal scrollbar if existing. |
protected javax.swing.JScrollBar |
_yScrollBar
vertical scrollbar if existing. |
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 | |
---|---|
TimeBarViewer()
Constructs a timebarviewer without a model. |
|
TimeBarViewer(TimeBarModel model)
Constructs a timebarviewer with both y and x scrollbars. |
|
TimeBarViewer(TimeBarModel model,
boolean suppressXScroll,
boolean suppressYScroll)
Constructs a timebar viewer. |
Method Summary | |
---|---|
void |
addFocussedIntervalListener(FocussedIntervalListener listener)
Add a listener to be informed when the focus inside the viewer changes. |
void |
addIntervalModificator(IntervalModificator intervalModificator)
Add an intervalModificator controlling changes on the intervals. |
void |
addMarker(TimeBarMarker marker)
Add a timebar marker. |
void |
addMarkers(java.util.List<TimeBarMarker> markers)
Directly set a list of markers. |
void |
addMouseListener(java.awt.event.MouseListener l)
|
void |
addSelectionRectListener(ISelectionRectListener listener)
Add a listener to be informed when the selection rect changes. |
void |
addTimeBarChangeListener(ITimeBarChangeListener listener)
Add a listener to be informaed about interval changes. |
void |
clearRegionRect()
Remove the selction of a region if existent. |
void |
componentHidden(java.awt.event.ComponentEvent e)
|
void |
componentMoved(java.awt.event.ComponentEvent e)
|
void |
componentResized(java.awt.event.ComponentEvent e)
|
void |
componentShown(java.awt.event.ComponentEvent e)
|
de.jaret.util.date.JaretDate |
dateForX(int x)
Get the corresponding date for an x coordinate in the viewer area. |
de.jaret.util.date.JaretDate |
dateForXY(int x,
int y)
Get the corresponding date for a point in the viewer area. |
void |
deHighlightRow()
|
void |
displayBodyContextMenu(int x,
int y)
Display the context menu for the normal viewer body. |
void |
displayHeaderContextMenu(TimeBarRow row,
int x,
int y)
Display the header context menu. |
void |
displayHierarchyContextMenu(TimeBarRow row,
int x,
int y)
Display the hierarchy area context menu. |
void |
displayIntervalContextMenu(de.jaret.util.date.Interval interval,
int x,
int y)
Display the context menu for an interval. |
void |
displayTimeScaleContextMenu(int x,
int y)
Display the context menu for the time scale. |
void |
displayTitleContextMenu(int x,
int y)
Display the title area context menu. |
void |
doScrollHorizontal(int diff)
Do horizontal scrolling by diff pixel. |
void |
doScrollVertical(int diff)
Do vertical scrolling by diff pixel. |
void |
firePropertyChangeX(java.lang.String propName,
java.lang.Object oldVal,
java.lang.Object newVal)
Fire a property change. |
void |
fireSelectionChanged()
Called by the delegate whenever the selection changed (to support selction provider under SWT). |
boolean |
getAdjustMinMaxDatesByModel()
Retrieve the adjustment policy for min and max date. |
int |
getAutoScaleRows()
Get the number of rows (columns) that the viewer scales itself to. |
int |
getAutoscrollDelta()
Retrieve the currently set autoscroll delta. |
javax.swing.JPopupMenu |
getBodyContextMenu()
Retrieve the context menu set for the body. |
TimeBarViewerDelegate |
getDelegate()
Retrieve the delegate ATTENTION: the delegate is for mostly internal usage only. |
boolean |
getDragAllSelectedIntervals()
If true all selected intervals will be dragged together with the interval on that the drag happened. |
boolean |
getDrawOverlapping()
Retrieve the drawing mode. |
boolean |
getDrawRowGrid()
Retrieve the status of row grid drawing. |
de.jaret.util.date.JaretDate |
getEndDate()
|
int |
getFirstRowDisplayed()
Retrieve the index of the first row that is displayed. |
int |
getFirstRowOffset()
Retrieve the pixeloffset for the first row. |
TimeBarGapRenderer |
getGapRenderer()
|
IGlobalAssistantRenderer |
getGlobalAssistantRenderer()
Get the current global assistant renderer. |
GridRenderer |
getGridRenderer()
|
javax.swing.JPopupMenu |
getHeaderContextMenu()
Retrieve the context menu set for the header. |
java.lang.String |
getHeaderToolTipText(TimeBarRow row,
int x,
int y)
Retrieve the tooltip for a position on a row. |
boolean |
getHideRoot()
Retrieve whether the root node is shown when using a hierachical model. |
HierarchicalTimeBarModel |
getHierarchicalModel()
Retrieve the hierarchical model of the viewer. |
HierarchicalViewState |
getHierarchicalViewState()
Retrieve the hierarchical viewstate used by the viewer. |
javax.swing.JPopupMenu |
getHierarchyContextMenu()
Retrieve the context menu set for the hierrarchy. |
java.lang.String |
getHierarchyToolTipText(TimeBarNode node,
int x,
int y)
Retrieve the tooltip for a position in the hierarchy. |
int |
getHierarchyWidth()
Retrieve the width of the hierarchy area. |
javax.swing.JPanel |
getHorizontalScrollPanel()
Retrieve the panel that the horizontal scroll bar is plcaed on (BorderLayout, CENETER). |
protected javax.swing.JComponent |
getIntervalComponent(de.jaret.util.date.Interval interval,
java.awt.Rectangle intervalRect)
Retrieve the JComponent for a given row and interval. |
protected javax.swing.JComponent |
getIntervalComponent(de.jaret.util.date.Interval interval,
java.awt.Rectangle intervalRect,
boolean overlapping)
Retrieve the JComponent for an interval. |
protected javax.swing.JComponent |
getIntervalComponent(TimeBarRow row,
de.jaret.util.date.Interval interval)
Retrieve the JComponent for a given row and interval. |
java.lang.String |
getIntervalToolTipText(de.jaret.util.date.Interval interval,
java.awt.Rectangle intervalRect,
int x,
int y)
Get the tooltip text for a given location in a rendered interval. |
boolean |
getMarkerDraggingInDiagramArea()
Retrieve whether marker dragging in the diagram area is activated. |
IMarkerRenderer |
getMarkerRenderer()
Retrieve the configured marker renderer. |
java.util.List<TimeBarMarker> |
getMarkers()
Retrieve the list of al markers. |
int |
getMarkerWidth(TimeBarMarker marker)
Get the width for marker painting (as requested by a marker renderer). |
de.jaret.util.date.JaretDate |
getMaxDate()
Retrieve the maximum date that can be displayed. |
de.jaret.util.date.JaretDate |
getMinDate()
Retrieve the minimum value present in the data of the viewer. |
IMiscRenderer |
getMiscRenderer()
Get the current misc renderer. |
TimeBarModel |
getModel()
Retrieve the flat model used by the viewer. |
java.lang.String |
getName()
Retrieve the name set on the viewer. |
boolean |
getOptimizeScrolling()
Get whether optimzed scrollnig is used. |
IOverlapStrategy |
getOverlapStrategy()
Retrieve the used strategy for determing overlap information. |
double |
getPixelPerSecond()
Return the pixel per second ratio. |
de.jaret.util.misc.Pair<TimeBarRow,de.jaret.util.date.JaretDate> |
getPopUpInformation()
Retrieve the row and date of the click leading to the activation of a context menu. |
javax.swing.JPopupMenu |
getPopupMenu(java.lang.Class<? extends de.jaret.util.date.Interval> clazz)
Retrieve the popup menu registered for a given interval class. |
TimeBarNode |
getPpsRow()
Retrieve the row that hold intervals (PpsIntervals) defining the pps value for different intervals. |
TBRect |
getRegionRect()
Retrieve the selected region. |
boolean |
getRegionRectEnable()
Retrieve whether region selections are enabled. |
IRelationRenderer |
getRelationRenderer()
Retrieve the relation renderer currently set. |
java.util.List<IIntervalRelation> |
getRelationsForCoord(int x,
int y)
Retrieve the list of relations hit for a coordinate. |
java.lang.String |
getRelationTooltip(int x,
int y)
Provide the tooltip for a relation if any. |
protected TimeBarRenderer |
getRenderer(java.lang.Class<? extends de.jaret.util.date.Interval> clazz)
Retrieve a renderer for a given class. |
java.util.Map<java.lang.Class<? extends de.jaret.util.date.Interval>,TimeBarRenderer> |
getRendererMapping()
Retrieve the complete renderer map. |
TimeBarRowFilter |
getRowFilter()
|
TimeBarRow |
getRowForXY(int x,
int y)
Retrieve the row for a given point. |
TimeBarRow |
getRowForY(int y)
Retrieve the row for a given y coodinate (x if oriented vertcal; use getRowForXY instead!). |
int |
getRowHeight()
Retrieve the current row height or the default row height if variable row heights/widths are enabled. |
TimeBarRowSorter |
getRowSorter()
|
int |
getScrollLookBackMinutes()
Retrieve the time to be additionally considered (looking back) when deciding which intervals are to be painted. |
int |
getScrollLookForwardMinutes()
Retrieve the time to be additionally considered (looking forward) when deciding which intervals are to be painted. |
boolean |
getScrollOnFocus()
Retrieve the state of the scroll to focus flag. |
int |
getSecondsDisplayed()
Get the seconds currently displayed by the diagram. |
int |
getSelectionDelta()
Retrieve the selection delta used to determine whether a marker or interval edge is clicked/dragged. |
TimeBarSelectionModel |
getSelectionModel()
Get the selection model of the viewer. |
de.jaret.util.date.JaretDate |
getStartDate()
Retrive the current start date of the displayed time span. |
boolean |
getStrictClipTimeCheck()
Retrieve the strategy for filtering when painting (see TimeBarViewerInterface.setStrictClipTimeCheck(boolean) ). |
TimeBarViewerInterface.Orientation |
getTBOrientation()
Retrieve the orientation of the viewer. |
TimeBarRenderer |
getTimeBarRenderer()
Retrieve the default renderer currently used for rendering intervals (regsitered for Interval.class). |
ITimeBarViewState |
getTimeBarViewState()
Retrieve the statndard viewstate of the viewer containing the row heights/column widths. |
javax.swing.JPopupMenu |
getTimeScaleContextMenu()
Retrieve the context menu set for the time scale. |
TimeScaleRenderer |
getTimeScaleRenderer()
|
java.lang.String |
getTimeScaleToolTipText(int x,
int y)
Retrieve the tooltip for a position on the timescale. |
java.lang.String |
getTitle()
Retrieve the title. |
javax.swing.JPopupMenu |
getTitleContextMenu()
Retrieve the context menu set for the title area. |
ITitleRenderer |
getTitleRenderer()
Retrieve the renderer that is currently used to render the title area. |
boolean |
getUseUniformHeight()
Retrieve whether uniform height is use for all intervals in a row. |
javax.swing.JPanel |
getVerticalScrollPanel()
Retrieve the panel that the vertical scroll bar is plcaed on (BorderLayout, CENETER). |
int |
getXAxisHeight()
Retrieve the height (or width when orientation is vertical) of the timescale. |
javax.swing.JScrollBar |
getXScrollBar()
Retrieve the x scroll bar. |
int |
getYAxisWidth()
Retrieve the width of the y axis (header area). |
int |
getYForRow(TimeBarRow row)
Retrieve the y coordinate in the diagram pane for the given row. |
javax.swing.JScrollBar |
getYScrollBar()
Retrieve the y scroll bar. |
boolean |
hasVariableXScale()
Retrieve the state of the variable xscale state. |
void |
highlightRow(int y)
|
void |
highlightRow(TimeBarRow timeBarRow)
|
boolean |
isAutoscrollEnabled()
Get the autoscroll behaviour. |
boolean |
isDisplayed(de.jaret.util.date.JaretDate date)
Check whether a date is currently visible. |
boolean |
isInDiagram(int x,
int y)
Check whether a given point is in the main diagram area. |
boolean |
isInHierarchySelectionArea(TimeBarNode node,
int x,
int y)
Check whether the given position is in the selection area of the hierarchy. |
boolean |
isInRowAxis(int x,
int y)
Check whether a given point is in the row axis area (hierarchy or header). |
boolean |
isInToggleArea(TimeBarNode node,
int x,
int y)
Check whether the given position should toggle expanded state of a node. |
boolean |
isLineDraggingAllowed()
Check whether it is allowed to drag the limiting lines of the hierarchy ara and the header (yaxis) area. |
boolean |
isMilliAccuracy()
Check whether th delegate is setup for millisecond accuracy. |
boolean |
isRowHeightDragginAllowed()
Check whether row height dragging is allowed. |
void |
registerPopupMenu(java.lang.Class<? extends de.jaret.util.date.Interval> clazz,
javax.swing.JPopupMenu popup)
Register a popup menu for a given interval class. |
void |
registerTimeBarRenderer(java.lang.Class<? extends de.jaret.util.date.Interval> intervalClass,
TimeBarRenderer renderer)
Register a renderer for an interval class or interface. |
void |
remFocussedIntervalListener(FocussedIntervalListener listener)
Remove a focussedIntervalListener. |
void |
remIntervalModificator(IntervalModificator intervalModificator)
Remove an interval modificator. |
void |
remMarker(TimeBarMarker marker)
Remove a timebar marker. |
void |
removeTimeBarChangeListener(ITimeBarChangeListener listener)
Remove a timebar change listener. |
void |
remSelectionRectListener(ISelectionRectListener listener)
Remove a selection rect listener. |
void |
repaint(java.awt.Rectangle r)
Mark area to be repainted. |
TimeBarRow |
rowForY(int y)
|
boolean |
rowLineHit(int x,
int y)
Check whether a row delimiter line is hit by a coordinate. |
int |
scrollDateToVisible(de.jaret.util.date.JaretDate date)
Scroll a date into the visible area of the viewer. |
void |
scrollIntervalToVisible(TimeBarRow row,
de.jaret.util.date.Interval interval)
Make sure the specified interval is in the visibe area of the viewer. |
void |
scrollRowToVisible(TimeBarRow row)
Make sure the specified row is visible. |
void |
setAdjustMinMaxDatesByModel(boolean adjust)
Set the adjustment policy. |
void |
setAutoScaleRows(int rows)
Set a number of rows (columns) to be displayed by the viewer. |
void |
setAutoscrollDelta(int autoscrollDelta)
Set the autoscroll delta. |
void |
setAutoscrollEnabled(boolean enableAutoscroll)
Set the autoscroll behaviour. |
void |
setBodyContextMenu(javax.swing.JPopupMenu bodyContextMenu)
Set the context menu to be used for the body area. |
void |
setCursor(int cursorType)
Set the cursor type. |
void |
setDragAllSelectedIntervals(boolean dragAllSelectedIntervals)
If set to true all selected intervals are dragged when an interval is dragged. |
void |
setDrawOverlapping(boolean drawOverlapping)
Set the drawing mode. |
void |
setDrawRowGrid(boolean drawRowGrid)
Set the row grid drawing status. |
void |
setFirstRow(int firstRow,
int pixOffset)
Set the first row to be displayed. |
void |
setFirstRowDisplayed(int rowIdx)
Set the first row to be displayed. |
void |
setFirstRowDisplayed(TimeBarRow row)
Set the the first row to be displayed. |
void |
setFirstRowOffset(int offset)
Set the pixeloffset of the first row. |
void |
setGapRenderer(TimeBarGapRenderer gapRenderer)
|
void |
setGhostIntervals(java.util.List<? extends de.jaret.util.date.Interval> intervals,
java.util.List<java.lang.Integer> yCoordinates)
Set the list of ghost intervals to be drawn. |
void |
setGhostOrigin(int x,
int y)
Set the origin (current drag position) to shift the ghost elements. |
void |
setGlobalAssistantRenderer(IGlobalAssistantRenderer globalAssistantRenderer)
Set a gloabl assistant renederer. |
void |
setGridRenderer(GridRenderer gridRenderer)
|
void |
setHeaderContextMenu(javax.swing.JPopupMenu headerContextMenu)
Set the context menu to be used for the header area. |
void |
setHeaderRenderer(HeaderRenderer renderer)
Set the renderer to be used for rendering the row headers. |
void |
setHideRoot(boolean hideRoot)
Set whether the root node should be shown when using a hierachical model. |
void |
setHierarchicalViewState(HierarchicalViewState hierarchicalViewState)
Set the hierarchical viewstate to be used. |
void |
setHierarchyContextMenu(javax.swing.JPopupMenu hierarchyContextMenu)
Set the context menu to be used for the hierarchy area. |
void |
setHierarchyRenderer(HierarchyRenderer renderer)
Set the renderer to be used for rendering the hierarchy area. |
void |
setHierarchyWidth(int width)
Set the width of the hierarchy area of the viewer. |
void |
setInitialDisplayRange(de.jaret.util.date.JaretDate startDate,
int secondsDisplayed)
Set a date range and scaling that will be set as the initial display right after the viewer is displayed. |
void |
setIntervalFilter(TimeBarIntervalFilter intervalFilter)
|
void |
setLastRow(int index)
Set the last row in the viewer. |
void |
setLastRow(TimeBarRow row)
Set the last row in the viewer. |
void |
setLineDraggingAllowed(boolean lineDraggingAllowed)
Set the allowance for line dragging of the limiting lines for hierarchy and header(yaxis) areas. |
void |
setMarkerDraggingInDiagramArea(boolean allowed)
Set whether marker dragging is allowed in the diagram area (If intervals are modificable the marker will only be grabbed when no other operation is applicable). |
void |
setMarkerRenderer(IMarkerRenderer markerRenderer)
Set the marker renderer to be used. |
void |
setMaxDate(de.jaret.util.date.JaretDate maxDate)
Set the maximum date to be displayed. |
void |
setMilliAccuracy(boolean milliAccuracy)
Set the delegates status concerning millisecond accuracy. |
void |
setMinDate(de.jaret.util.date.JaretDate minDate)
Set the minimum date to be displayed. |
void |
setMiscRenderer(IMiscRenderer miscRenderer)
Set the misc renderer to be used for rendering some parts/elements in the viewer. |
void |
setModel(HierarchicalTimeBarModel hModel)
Set a hierarchical model to be displayed. |
void |
setModel(TimeBarModel model)
Set the flat model to be displayed. |
void |
setName(java.lang.String name)
Set a name as a simple string property for internal application use. |
void |
setOptimizeScrolling(boolean optimizeScrolling)
Set whether optimized scrolling should be used. |
void |
setOverlapStrategy(IOverlapStrategy overlapStrategy)
Set the strategy to be used for calculating overlap information. |
void |
setPixelPerSecond(double pixelPerSecond)
Sets the scale of the x axis as pixel per second, thus a value of 1000.0 / (24.0 * 60 * 60) will result in displaying one day over 1000 pixel. |
void |
setRegionRectEnable(boolean enabled)
Enable/Disable region selections. |
void |
setRelationRenderer(IRelationRenderer relationRenderer)
Set the relation renderer to use. |
void |
setRowFilter(TimeBarRowFilter rowFilter)
|
void |
setRowHeight(int rowHeight)
Set the height for the rows in pixel. |
void |
setRowHeightDraggingAllowed(boolean rowHeightDraggingAllowed)
Set whether row height dragging should be allowed. |
void |
setRowSorter(TimeBarRowSorter rowSorter)
|
void |
setScrollLookBackMinutes(int scrollLookBackMinutes)
Set the additional time to be considered when deciding whether to draw an interval looking back. |
void |
setScrollLookForwardMinutes(int scrollLookForwardMinutes)
Set the additional time to be considered when deciding whether to draw an interval looking forward. |
void |
setScrollOnFocus(boolean scrollOnFocus)
If set to true the viewer will scroll to the begin of an interval if it's focussed. |
void |
setSecondsDisplayed(int seconds,
boolean center)
Set the scaling of the x axis by specifying the number of seconds that should be displayed. |
void |
setSecondsDisplayed(int seconds,
de.jaret.util.date.JaretDate centerDate)
Set the scaling of the x axis by specifying the number of seconds that should be displayed. |
void |
setSelectionDelta(int selectionDelta)
Set the selection delta used to determine whether a marker or interval edge is clicked/dragged. |
void |
setSelectionModel(TimeBarSelectionModel selectionModel)
Set the selectionmodel to be used by the viewer. |
void |
setStartDate(de.jaret.util.date.JaretDate startDate)
Set the start date of the display. |
void |
setStrictClipTimeCheck(boolean strictClipTimeCheck)
Set the optimization strategy for interval filtering when painting. |
void |
setTBOrientation(TimeBarViewerInterface.Orientation orientation)
Set the orientation of the viewer. |
void |
setTimeBarRenderer(TimeBarRenderer renderer)
Set the default renderer to be used for rendering the timebars. |
void |
setTimeScaleContextMenu(javax.swing.JPopupMenu timeScaleContextMenu)
Set the context menu to be used for the time scale area. |
void |
setTimeScalePosition(int timeScalePosition)
|
void |
setTimeScaleRenderer(TimeScaleRenderer timeScaleRenderer)
Set a renderer for the x axis. |
void |
setTitle(java.lang.String title)
Set a title for the viewer to be displayed. |
void |
setTitleContextMenu(javax.swing.JPopupMenu titleContextMenu)
Set the context menu to be used for the titel area. |
void |
setTitleRenderer(ITitleRenderer titleRenderer)
Set the title renderer. |
void |
setUseTitleRendererComponentInPlace(boolean useTitleRendererComponentInPlace)
If set to true this will cause the title renderer component to be used directly instead of beeing just used to paint. |
void |
setUseUniformHeight(boolean useUniformHeight)
Set whether all intervals in a non overlapping drawn row should use the same height/width. |
void |
setVariableXScale(boolean state)
Set the state for the variable xscale. |
void |
setXAxisHeight(int height)
Set the height (or width) of the timescale. |
void |
setYAxisWidth(int width)
Set the width of the y axis (the header area). |
void |
stateChanged(javax.swing.event.ChangeEvent e)
Invoked when one of the scrollbars was moved. |
java.awt.Rectangle |
timeBarContainingRect(de.jaret.util.date.Interval interval,
java.awt.Rectangle intervalRect,
boolean overlapping)
Calculate/get the containing rectangle of a rendered interval. |
boolean |
timeBarContains(de.jaret.util.date.Interval interval,
java.awt.Rectangle intervalRect,
int x,
int y,
boolean overlapping)
Check whether a location is contained in a rendered interval. |
void |
updateXScrollBar(int max,
int pos,
int secondsDisplayed)
Update the x scrollbar. |
void |
updateYScrollBar(int max,
int pos,
int rowsDisplayed)
Update the y scrollbar. |
int |
xForDate(de.jaret.util.date.JaretDate date)
Get the corresponding x coordinate in the viewer area for a given date. |
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, 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, 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, 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, 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 |
Methods inherited from interface de.jaret.util.ui.timebars.TimeBarViewerInterface |
---|
addPropertyChangeListener, firePropertyChange, getHeight, getToolTipText, getWidth, removePropertyChangeListener, repaint, repaint |
Field Detail |
---|
protected TimeBarViewerDelegate _delegate
protected transient TimeScaleRenderer _timeScaleRenderer
protected javax.swing.JComponent _timeScaleRendererComponent
protected transient GridRenderer _gridRenderer
protected javax.swing.JComponent _gridRendererComponent
protected TimeBarGapRenderer _gapRenderer
protected HeaderRenderer _headerRenderer
protected HierarchyRenderer _hierarchyRenderer
protected transient IMiscRenderer _miscRenderer
protected transient ITitleRenderer _titleRenderer
protected transient IRelationRenderer _relationRenderer
protected transient IMarkerRenderer _markerRenderer
protected transient IGlobalAssistantRenderer _globalAssistantRenderer
protected javax.swing.JScrollBar _xScrollBar
protected javax.swing.JScrollBar _yScrollBar
public de.jaret.util.ui.timebars.swing.TimeBarViewer.Diagram _diagram
protected java.util.Map<java.lang.Class<? extends de.jaret.util.date.Interval>,TimeBarRenderer> _rendererMap
protected java.util.Map<java.lang.Class<? extends de.jaret.util.date.Interval>,javax.swing.JPopupMenu> _registeredPopupMenues
protected javax.swing.JPopupMenu _bodyContextMenu
protected javax.swing.JPopupMenu _timeScaleContextMenu
protected javax.swing.JPopupMenu _headerContextMenu
protected javax.swing.JPopupMenu _hierarchyContextMenu
protected javax.swing.JPopupMenu _titleContextMenu
protected boolean _requiresPopupTriggerCheck
protected javax.swing.JPanel _horizontalScrollPanel
protected javax.swing.JPanel _verticalScrollPanel
protected boolean _useTitleRendererComponentInPlace
protected java.util.List<? extends de.jaret.util.date.Interval> _ghostIntervals
protected java.util.List<java.lang.Integer> _ghostIntervalYCoordinates
protected java.awt.Point _ghostOrigin
protected java.util.List<TimeBarRow> _ghostRows
protected java.util.List<java.lang.Integer> _ghostRowYCoordinates
Constructor Detail |
---|
public TimeBarViewer(TimeBarModel model, boolean suppressXScroll, boolean suppressYScroll)
model
- TimeBarModel to be used. The model may be null
.suppressXScroll
- if true the x scrollbar will not be displayedsuppressYScroll
- if true the y scrollbar will not be displayedpublic TimeBarViewer(TimeBarModel model)
model
- timebarmodel to be displayed. The model may be null
.public TimeBarViewer()
Method Detail |
---|
public javax.swing.JScrollBar getXScrollBar()
null
if the scroll bar has been suppressedpublic javax.swing.JScrollBar getYScrollBar()
null
if the scroll bar has been suppressedpublic void addMouseListener(java.awt.event.MouseListener l)
addMouseListener
in class java.awt.Component
public void setModel(TimeBarModel model)
setModel
in interface TimeBarViewerInterface
model
- the model to be displyedpublic TimeBarModel getModel()
getModel
in interface TimeBarViewerInterface
public void setRowFilter(TimeBarRowFilter rowFilter)
public TimeBarRowFilter getRowFilter()
public void setRowSorter(TimeBarRowSorter rowSorter)
public TimeBarRowSorter getRowSorter()
public void setIntervalFilter(TimeBarIntervalFilter intervalFilter)
public void setTimeBarRenderer(TimeBarRenderer renderer)
renderer
- the renderer to be used if no other registered renderer is appropriatepublic TimeBarRenderer getTimeBarRenderer()
public void registerTimeBarRenderer(java.lang.Class<? extends de.jaret.util.date.Interval> intervalClass, TimeBarRenderer renderer)
intervalClass
- class of the intervalsrenderer
- renderer for the given classpublic java.util.Map<java.lang.Class<? extends de.jaret.util.date.Interval>,TimeBarRenderer> getRendererMapping()
protected TimeBarRenderer getRenderer(java.lang.Class<? extends de.jaret.util.date.Interval> clazz)
clazz
- class in question
public void setHeaderRenderer(HeaderRenderer renderer)
renderer
- HeaderRenderer to be used or null
indicating headers should not be renderedpublic void setHierarchyRenderer(HierarchyRenderer renderer)
renderer
- HierarchyRenderer to be used or null
indicating headers should not be renderedpublic void setPixelPerSecond(double pixelPerSecond)
setPixelPerSecond
in interface TimeBarViewerInterface
pixelPerSecond
- pixel per secondpublic double getPixelPerSecond()
getPixelPerSecond
in interface TimeBarViewerInterface
public void setRowHeight(int rowHeight)
setRowHeight
in interface TimeBarViewerInterface
rowHeight
- new row heightpublic int getRowHeight()
getRowHeight
in interface TimeBarViewerInterface
public void updateXScrollBar(int max, int pos, int secondsDisplayed)
updateXScrollBar
in interface TimeBarViewerInterface
max
- max value for the scrollbar (seconds)pos
- current positions in secondssecondsDisplayed
- the number of seconds displayed by the viewerpublic void updateYScrollBar(int max, int pos, int rowsDisplayed)
updateYScrollBar
in interface TimeBarViewerInterface
max
- max value for the scrollbar (row)pos
- first row displayedrowsDisplayed
- number of rows currently displayedpublic void stateChanged(javax.swing.event.ChangeEvent e)
stateChanged
in interface javax.swing.event.ChangeListener
e
- eventChangeListener.stateChanged(javax.swing.event.ChangeEvent)
public void componentHidden(java.awt.event.ComponentEvent e)
componentHidden
in interface java.awt.event.ComponentListener
public void componentMoved(java.awt.event.ComponentEvent e)
componentMoved
in interface java.awt.event.ComponentListener
public void componentResized(java.awt.event.ComponentEvent e)
componentResized
in interface java.awt.event.ComponentListener
public void componentShown(java.awt.event.ComponentEvent e)
componentShown
in interface java.awt.event.ComponentListener
protected javax.swing.JComponent getIntervalComponent(TimeBarRow row, de.jaret.util.date.Interval interval)
row
- rowinterval
- interval
protected javax.swing.JComponent getIntervalComponent(de.jaret.util.date.Interval interval, java.awt.Rectangle intervalRect)
interval
- intervalintervalRect
- rectangle denoting the area of the interval
protected javax.swing.JComponent getIntervalComponent(de.jaret.util.date.Interval interval, java.awt.Rectangle intervalRect, boolean overlapping)
interval
- the intervalintervalRect
- rectangle marking the drawing boundsoverlapping
- if the interval is overlapping
public TimeScaleRenderer getTimeScaleRenderer()
public void setTimeScaleRenderer(TimeScaleRenderer timeScaleRenderer)
timeScaleRenderer
- The timeScaleRenderer to set.public IMiscRenderer getMiscRenderer()
public void setMiscRenderer(IMiscRenderer miscRenderer)
miscRenderer
- the renderer to usepublic ITitleRenderer getTitleRenderer()
null
if no renderer is set.public void setTitleRenderer(ITitleRenderer titleRenderer)
titleRenderer
- the new renderer or null
to disable titel rendering.public IRelationRenderer getRelationRenderer()
null
if none is set.public void setRelationRenderer(IRelationRenderer relationRenderer)
relationRenderer
- the renderer or null
to disable relation rendering.public IMarkerRenderer getMarkerRenderer()
public void setMarkerRenderer(IMarkerRenderer markerRenderer)
markerRenderer
- the marker renderer to be used.public IGlobalAssistantRenderer getGlobalAssistantRenderer()
public void setGlobalAssistantRenderer(IGlobalAssistantRenderer globalAssistantRenderer)
globalAssistantRenderer
- the rendererpublic GridRenderer getGridRenderer()
public void setGridRenderer(GridRenderer gridRenderer)
gridRenderer
- The gridRenderer to set.public TimeBarGapRenderer getGapRenderer()
public void setGapRenderer(TimeBarGapRenderer gapRenderer)
gapRenderer
- The gapRenderer to set.public void registerPopupMenu(java.lang.Class<? extends de.jaret.util.date.Interval> clazz, javax.swing.JPopupMenu popup)
clazz
- class that the menu is forpopup
- popup menu to showpublic javax.swing.JPopupMenu getPopupMenu(java.lang.Class<? extends de.jaret.util.date.Interval> clazz)
clazz
- class in question
null
public void firePropertyChangeX(java.lang.String propName, java.lang.Object oldVal, java.lang.Object newVal)
firePropertyChangeX
in interface TimeBarViewerInterface
propName
- property nameoldVal
- old valuenewVal
- new valuepublic boolean timeBarContains(de.jaret.util.date.Interval interval, java.awt.Rectangle intervalRect, int x, int y, boolean overlapping)
timeBarContains
in interface TimeBarViewerInterface
interval
- Interval to be checkedintervalRect
- bounding rect for the intervalx
- location xy
- location yoverlapping
- true if there are overlapping intervals and drawing mode is not drawOverlapped
public java.awt.Rectangle timeBarContainingRect(de.jaret.util.date.Interval interval, java.awt.Rectangle intervalRect, boolean overlapping)
timeBarContainingRect
in interface TimeBarViewerInterface
interval
- Interval for which the containing rect should be calculatedintervalRect
- Rectangle in the viewer (bounding rectangle)overlapping
- true if there are overlapping intervals and drawing mode is not drawOverlapped
public void setCursor(int cursorType)
setCursor
in interface TimeBarViewerInterface
cursorType
- java.awt.cursor typepublic java.lang.String getIntervalToolTipText(de.jaret.util.date.Interval interval, java.awt.Rectangle intervalRect, int x, int y)
getIntervalToolTipText
in interface TimeBarViewerInterface
interval
- IntervalintervalRect
- bounding rectangle for the intervalx
- location xy
- location y
public de.jaret.util.date.JaretDate getStartDate()
getStartDate
in interface TimeBarViewerInterface
public void setStartDate(de.jaret.util.date.JaretDate startDate)
setStartDate
in interface TimeBarViewerInterface
startDate
- first date to be displayedpublic de.jaret.util.date.JaretDate getMinDate()
getMinDate
in interface TimeBarViewerInterface
public void setMinDate(de.jaret.util.date.JaretDate minDate)
setMinDate
in interface TimeBarViewerInterface
minDate
- minimum date to be displayedpublic de.jaret.util.date.JaretDate getMaxDate()
getMaxDate
in interface TimeBarViewerInterface
public void setMaxDate(de.jaret.util.date.JaretDate maxDate)
setMaxDate
in interface TimeBarViewerInterface
maxDate
- maximum date to be displayedpublic TimeBarSelectionModel getSelectionModel()
getSelectionModel
in interface TimeBarViewerInterface
public void setSelectionModel(TimeBarSelectionModel selectionModel)
setSelectionModel
in interface TimeBarViewerInterface
selectionModel
- selection model to be usedpublic int getFirstRowDisplayed()
getFirstRowDisplayed
in interface TimeBarViewerInterface
public void setFirstRowDisplayed(int rowIdx)
setFirstRowDisplayed
in interface TimeBarViewerInterface
rowIdx
- index of the first row to be displayedpublic void setFirstRowDisplayed(TimeBarRow row)
setFirstRowDisplayed
in interface TimeBarViewerInterface
row
- row that should be the topmost row displayed.public void setFirstRow(int firstRow, int pixOffset)
setFirstRow
in interface TimeBarViewerInterface
firstRow
- upmost row to be displayedpixOffset
- pixel offsetpublic void setLastRow(int index)
setLastRow
in interface TimeBarViewerInterface
index
- index of the row to be displayed at the bottom of the viewer.public void setLastRow(TimeBarRow row)
setLastRow
in interface TimeBarViewerInterface
row
- the row to be displayed at the bottom of the viewer.public de.jaret.util.date.JaretDate getEndDate()
public int getFirstRowOffset()
getFirstRowOffset
in interface TimeBarViewerInterface
public void setFirstRowOffset(int offset)
setFirstRowOffset
in interface TimeBarViewerInterface
offset
- pixeloffset for the first rowpublic void setTimeScalePosition(int timeScalePosition)
public void setAdjustMinMaxDatesByModel(boolean adjust)
setAdjustMinMaxDatesByModel
in interface TimeBarViewerInterface
adjust
- if set to true min and max dates are set by the modelpublic boolean getAdjustMinMaxDatesByModel()
getAdjustMinMaxDatesByModel
in interface TimeBarViewerInterface
public TimeBarRow rowForY(int y)
public de.jaret.util.date.JaretDate dateForX(int x)
dateForX
in interface TimeBarViewerInterface
x
- in the viewer area
public de.jaret.util.date.JaretDate dateForXY(int x, int y)
dateForXY
in interface TimeBarViewerInterface
x
- x coordinate in the viewer areay
- y coordinate in the viewer area
public int xForDate(de.jaret.util.date.JaretDate date)
xForDate
in interface TimeBarViewerInterface
date
- Date
public void highlightRow(int y)
public void highlightRow(TimeBarRow timeBarRow)
public void deHighlightRow()
public void setDrawRowGrid(boolean drawRowGrid)
setDrawRowGrid
in interface TimeBarViewerInterface
drawRowGrid
- if true, rows will be separated by a thin linepublic boolean getDrawRowGrid()
getDrawRowGrid
in interface TimeBarViewerInterface
public void setYAxisWidth(int width)
setYAxisWidth
in interface TimeBarViewerInterface
width
- width in pixelpublic int getYAxisWidth()
getYAxisWidth
in interface TimeBarViewerInterface
public void setHierarchyWidth(int width)
setHierarchyWidth
in interface TimeBarViewerInterface
width
- width in pixelspublic int getHierarchyWidth()
getHierarchyWidth
in interface TimeBarViewerInterface
public void addIntervalModificator(IntervalModificator intervalModificator)
addIntervalModificator
in interface TimeBarViewerInterface
intervalModificator
- interval modificator to addpublic void remIntervalModificator(IntervalModificator intervalModificator)
remIntervalModificator
in interface TimeBarViewerInterface
intervalModificator
- interval modificator to removepublic void setAutoscrollEnabled(boolean enableAutoscroll)
setAutoscrollEnabled
in interface TimeBarViewerInterface
enableAutoscroll
- true for enabling autoscrollpublic boolean isAutoscrollEnabled()
isAutoscrollEnabled
in interface TimeBarViewerInterface
public java.lang.String getTimeScaleToolTipText(int x, int y)
getTimeScaleToolTipText
in interface TimeBarViewerInterface
x
- x coordinatey
- y coordinate
null
indicating no tt is availablepublic java.lang.String getHeaderToolTipText(TimeBarRow row, int x, int y)
getHeaderToolTipText
in interface TimeBarViewerInterface
row
- row displayed on the locationx
- x coordinatey
- y coordinate
null
indicating no tt is availablepublic java.lang.String getHierarchyToolTipText(TimeBarNode node, int x, int y)
getHierarchyToolTipText
in interface TimeBarViewerInterface
node
- node displayed at the locationx
- x coordinatey
- y coordinate
null
indicating no tt is availablepublic HierarchicalViewState getHierarchicalViewState()
getHierarchicalViewState
in interface TimeBarViewerInterface
public void setHierarchicalViewState(HierarchicalViewState hierarchicalViewState)
setHierarchicalViewState
in interface TimeBarViewerInterface
hierarchicalViewState
- viewstate to usepublic void setModel(HierarchicalTimeBarModel hModel)
setModel
in interface TimeBarViewerInterface
hModel
- hierarchial modelpublic HierarchicalTimeBarModel getHierarchicalModel()
null
if a flat model has been set
directly.
getHierarchicalModel
in interface TimeBarViewerInterface
public int getMarkerWidth(TimeBarMarker marker)
getMarkerWidth
in interface TimeBarViewerInterface
marker
- marker to check the width for
public void setTitle(java.lang.String title)
setTitle
in interface TimeBarViewerInterface
title
- or null
indicating no title.public java.lang.String getTitle()
getTitle
in interface TimeBarViewerInterface
public javax.swing.JPopupMenu getBodyContextMenu()
null
public void setBodyContextMenu(javax.swing.JPopupMenu bodyContextMenu)
bodyContextMenu
- context menu or null
for no context menupublic javax.swing.JPopupMenu getTimeScaleContextMenu()
null
public void setTimeScaleContextMenu(javax.swing.JPopupMenu timeScaleContextMenu)
timeScaleContextMenu
- context menu or null
for no context menupublic javax.swing.JPopupMenu getHeaderContextMenu()
null
public void setHeaderContextMenu(javax.swing.JPopupMenu headerContextMenu)
headerContextMenu
- context menu or null
for no context menupublic javax.swing.JPopupMenu getHierarchyContextMenu()
null
public void setHierarchyContextMenu(javax.swing.JPopupMenu hierarchyContextMenu)
hierarchyContextMenu
- context menu or null
for no context menupublic javax.swing.JPopupMenu getTitleContextMenu()
null
public void setTitleContextMenu(javax.swing.JPopupMenu titleContextMenu)
titleContextMenu
- context menu or null
for no context menupublic void displayBodyContextMenu(int x, int y)
displayBodyContextMenu
in interface TimeBarViewerInterface
x
- x coordinate for the menuy
- y coordinate for the menupublic void displayTimeScaleContextMenu(int x, int y)
displayTimeScaleContextMenu
in interface TimeBarViewerInterface
x
- x coordinate for the menuy
- y coordinate for the menupublic void displayIntervalContextMenu(de.jaret.util.date.Interval interval, int x, int y)
displayIntervalContextMenu
in interface TimeBarViewerInterface
interval
- interval clicked onx
- x coordinate for the menuy
- y coordinate for the menupublic void displayHeaderContextMenu(TimeBarRow row, int x, int y)
displayHeaderContextMenu
in interface TimeBarViewerInterface
row
- row clicked onx
- x coordinate for the menuy
- y coordinate for the menupublic void displayHierarchyContextMenu(TimeBarRow row, int x, int y)
displayHierarchyContextMenu
in interface TimeBarViewerInterface
row
- row clicked onx
- x coordinate for the menuy
- y coordinate for the menupublic void displayTitleContextMenu(int x, int y)
displayTitleContextMenu
in interface TimeBarViewerInterface
x
- x coordinate for the menuy
- y coordinate for the menupublic boolean isInToggleArea(TimeBarNode node, int x, int y)
isInToggleArea
in interface TimeBarViewerInterface
node
- the node renderedx
- x coordinatey
- y coordinate
public boolean isInHierarchySelectionArea(TimeBarNode node, int x, int y)
isInHierarchySelectionArea
in interface TimeBarViewerInterface
node
- the nodex
- x coordinatey
- y coordinate
public void setDrawOverlapping(boolean drawOverlapping)
drawOverlapping
- if set to true intervals will be painted on another. If set to false, every interval will
only get a fraction of the space corresponding to the count of overlapping intervals.public boolean getDrawOverlapping()
public void addMarker(TimeBarMarker marker)
addMarker
in interface TimeBarViewerInterface
marker
- marker to addpublic void remMarker(TimeBarMarker marker)
remMarker
in interface TimeBarViewerInterface
marker
- marker to removepublic java.util.List<TimeBarMarker> getMarkers()
getMarkers
in interface TimeBarViewerInterface
public void addMarkers(java.util.List<TimeBarMarker> markers)
addMarkers
in interface TimeBarViewerInterface
markers
- list of timebar markerspublic int getSelectionDelta()
getSelectionDelta
in interface TimeBarViewerInterface
public void setSelectionDelta(int selectionDelta)
A selection delta of n means clicks willl have to be on the element or (n-1) pixels away to consider an element hit.
setSelectionDelta
in interface TimeBarViewerInterface
selectionDelta
- max distance for detectionpublic boolean isLineDraggingAllowed()
isLineDraggingAllowed
in interface TimeBarViewerInterface
public void setLineDraggingAllowed(boolean lineDraggingAllowed)
setLineDraggingAllowed
in interface TimeBarViewerInterface
lineDraggingAllowed
- true for enabling the drag possibilitypublic int getYForRow(TimeBarRow row)
getYForRow
in interface TimeBarViewerInterface
row
- row
public TimeBarRow getRowForY(int y)
getRowForY
in interface TimeBarViewerInterface
y
- coordinate
null
public TimeBarRow getRowForXY(int x, int y)
getRowForXY
in interface TimeBarViewerInterface
x
- x coordinatey
- y coordinate
null
public boolean isMilliAccuracy()
isMilliAccuracy
in interface TimeBarViewerInterface
public void setMilliAccuracy(boolean milliAccuracy)
setMilliAccuracy
in interface TimeBarViewerInterface
milliAccuracy
- true to use ms accuracypublic TimeBarNode getPpsRow()
getPpsRow
in interface TimeBarViewerInterface
null
if no variable xscale has been defined.public boolean hasVariableXScale()
hasVariableXScale
in interface TimeBarViewerInterface
public void setVariableXScale(boolean state)
setVariableXScale
in interface TimeBarViewerInterface
state
- true if a variable scale should be used.public void doScrollHorizontal(int diff)
doScrollHorizontal
in interface TimeBarViewerInterface
diff
- pixel difference (positive for right scroll)public void doScrollVertical(int diff)
doScrollVertical
in interface TimeBarViewerInterface
diff
- pixel difference (positive for downwards scroll)public boolean getOptimizeScrolling()
getOptimizeScrolling
in interface TimeBarViewerInterface
public void setOptimizeScrolling(boolean optimizeScrolling)
false
since this may cause problems
on some platforms using SWT (Linux/GTK and OSX/intel). Optimized scrolling can not be used together with a
variable xscale.
setOptimizeScrolling
in interface TimeBarViewerInterface
optimizeScrolling
- true for optimized scrollingpublic TimeBarViewerInterface.Orientation getTBOrientation()
getTBOrientation
in interface TimeBarViewerInterface
public void setTBOrientation(TimeBarViewerInterface.Orientation orientation)
setTBOrientation
in interface TimeBarViewerInterface
orientation
- the new orientation for the viewerpublic int getAutoScaleRows()
getAutoScaleRows
in interface TimeBarViewerInterface
public void setAutoScaleRows(int rows)
setAutoScaleRows
in interface TimeBarViewerInterface
rows
- the number of rows or -1 for no special scaling (default)public int getXAxisHeight()
getXAxisHeight
in interface TimeBarViewerInterface
public void setXAxisHeight(int height)
setXAxisHeight
in interface TimeBarViewerInterface
height
- height or width for the time scalepublic void fireSelectionChanged()
fireSelectionChanged
in interface TimeBarViewerInterface
public void addTimeBarChangeListener(ITimeBarChangeListener listener)
addTimeBarChangeListener
in interface TimeBarViewerInterface
listener
- listenerpublic void removeTimeBarChangeListener(ITimeBarChangeListener listener)
removeTimeBarChangeListener
in interface TimeBarViewerInterface
listener
- listener to removepublic void addFocussedIntervalListener(FocussedIntervalListener listener)
addFocussedIntervalListener
in interface TimeBarViewerInterface
listener
- listener to be added.public void remFocussedIntervalListener(FocussedIntervalListener listener)
remFocussedIntervalListener
in interface TimeBarViewerInterface
listener
- listener to be removed from the listener list.public ITimeBarViewState getTimeBarViewState()
getTimeBarViewState
in interface TimeBarViewerInterface
public boolean isRowHeightDragginAllowed()
isRowHeightDragginAllowed
in interface TimeBarViewerInterface
true
if enabledpublic void setRowHeightDraggingAllowed(boolean rowHeightDraggingAllowed)
setRowHeightDraggingAllowed
in interface TimeBarViewerInterface
rowHeightDraggingAllowed
- true
to allow interactive dragging of row heightspublic boolean rowLineHit(int x, int y)
rowLineHit
in interface TimeBarViewerInterface
x
- x coordy
- y coord
true
if a row line is hitpublic boolean isInRowAxis(int x, int y)
isInRowAxis
in interface TimeBarViewerInterface
x
- x coordinatey
- y coordinate
true
if the point is in either hierarchy or header areapublic boolean isInDiagram(int x, int y)
isInDiagram
in interface TimeBarViewerInterface
x
- x coordinatey
- y coordinate
true
if the point is in the diagram rectanglepublic boolean getStrictClipTimeCheck()
TimeBarViewerInterface.setStrictClipTimeCheck(boolean)
).
getStrictClipTimeCheck
in interface TimeBarViewerInterface
true
if strict checking is enabledpublic void setStrictClipTimeCheck(boolean strictClipTimeCheck)
setStrictClipTimeCheck
in interface TimeBarViewerInterface
strictClipTimeCheck
- If set to true, intervals are filtered strictly by their interval bounds, disallowing
rendering beyond the bounding box calculated by the interval bounds. Defaults to false resulting in filtering by
the preferred drawing area.public int getSecondsDisplayed()
getSecondsDisplayed
in interface TimeBarViewerInterface
public IOverlapStrategy getOverlapStrategy()
getOverlapStrategy
in interface TimeBarViewerInterface
public void setOverlapStrategy(IOverlapStrategy overlapStrategy)
setOverlapStrategy
in interface TimeBarViewerInterface
overlapStrategy
- the strytegy to be used. May not be null
.public int getScrollLookBackMinutes()
getScrollLookBackMinutes
in interface TimeBarViewerInterface
public void setScrollLookBackMinutes(int scrollLookBackMinutes)
setScrollLookBackMinutes
in interface TimeBarViewerInterface
scrollLookBackMinutes
- time in minutespublic void setScrollLookForwardMinutes(int scrollLookForwardMinutes)
setScrollLookForwardMinutes
in interface TimeBarViewerInterface
scrollLookForwardMinutes
- time in minutespublic int getScrollLookForwardMinutes()
getScrollLookForwardMinutes
in interface TimeBarViewerInterface
public java.lang.String getName()
getName
in interface TimeBarViewerInterface
getName
in class java.awt.Component
null
if no name has been setpublic void setName(java.lang.String name)
setName
in interface TimeBarViewerInterface
setName
in class java.awt.Component
name
- name of the viewerpublic TimeBarViewerDelegate getDelegate()
getDelegate
in interface TimeBarViewerInterface
public int getAutoscrollDelta()
getAutoscrollDelta
in interface TimeBarViewerInterface
public void setAutoscrollDelta(int autoscrollDelta)
setAutoscrollDelta
in interface TimeBarViewerInterface
autoscrollDelta
- delta in pixelpublic boolean getDragAllSelectedIntervals()
true
all selected intervals will be dragged together with the interval on that the drag happened.
getDragAllSelectedIntervals
in interface TimeBarViewerInterface
public void setDragAllSelectedIntervals(boolean dragAllSelectedIntervals)
true
all selected intervals are dragged when an interval is dragged. The default is false.
setDragAllSelectedIntervals
in interface TimeBarViewerInterface
dragAllSelectedIntervals
- true
to drag all selcted intervalspublic java.util.List<IIntervalRelation> getRelationsForCoord(int x, int y)
getRelationsForCoord
in interface TimeBarViewerInterface
x
- x coordinatey
- y coordinate
null
if no relations can be foundpublic java.lang.String getRelationTooltip(int x, int y)
getRelationTooltip
in interface TimeBarViewerInterface
x
- x coordinatey
- y coordinate
null
public boolean getScrollOnFocus()
getScrollOnFocus
in interface TimeBarViewerInterface
true
if the viewer should scroll to the focussed intervalpublic void setScrollOnFocus(boolean scrollOnFocus)
setScrollOnFocus
in interface TimeBarViewerInterface
scrollOnFocus
- true
for scrolling to the focussed intervalpublic void addSelectionRectListener(ISelectionRectListener listener)
addSelectionRectListener
in interface TimeBarViewerInterface
listener
- listener to be added.public void remSelectionRectListener(ISelectionRectListener listener)
remSelectionRectListener
in interface TimeBarViewerInterface
listener
- listener to be removed from the listener list.public boolean getHideRoot()
getHideRoot
in interface TimeBarViewerInterface
true
if the root is not shownpublic void setHideRoot(boolean hideRoot)
setHideRoot
in interface TimeBarViewerInterface
hideRoot
- true
if the root node should be hiddenpublic boolean getMarkerDraggingInDiagramArea()
getMarkerDraggingInDiagramArea
in interface TimeBarViewerInterface
true
if marker dragging in the diagram area is allowedpublic void setMarkerDraggingInDiagramArea(boolean allowed)
setMarkerDraggingInDiagramArea
in interface TimeBarViewerInterface
allowed
- true
for allowing marker drag in the diagram area.public void clearRegionRect()
clearRegionRect
in interface TimeBarViewerInterface
public TBRect getRegionRect()
getRegionRect
in interface TimeBarViewerInterface
null
public boolean getRegionRectEnable()
getRegionRectEnable
in interface TimeBarViewerInterface
public void setRegionRectEnable(boolean enabled)
setRegionRectEnable
in interface TimeBarViewerInterface
enabled
- true
enablingpublic void repaint(java.awt.Rectangle r)
repaint
in interface TimeBarViewerInterface
repaint
in class javax.swing.JComponent
r
- java.awt.Rectangle that needs to be repaintedpublic boolean getUseUniformHeight()
getUseUniformHeight
in interface TimeBarViewerInterface
true
if all intervals in a non overlapping drawn row should use the same height/widthpublic void setUseUniformHeight(boolean useUniformHeight)
setUseUniformHeight
in interface TimeBarViewerInterface
useUniformHeight
- true
for uniform heights/widthspublic void setSecondsDisplayed(int seconds, boolean center)
setSecondsDisplayed
in interface TimeBarViewerInterface
seconds
- number of seconds that will be displayed on the x axiscenter
- if set to true
the center date will be fixed while scalingpublic void setSecondsDisplayed(int seconds, de.jaret.util.date.JaretDate centerDate)
setSecondsDisplayed
in interface TimeBarViewerInterface
seconds
- number of seconds that will be displayed on the x axiscenterDate
- date that will be fixed while scalingpublic boolean isDisplayed(de.jaret.util.date.JaretDate date)
isDisplayed
in interface TimeBarViewerInterface
date
- dat eto check
true
if the date is currently displayedpublic void setInitialDisplayRange(de.jaret.util.date.JaretDate startDate, int secondsDisplayed)
setInitialDisplayRange
in interface TimeBarViewerInterface
startDate
- start datesecondsDisplayed
- seconds to be displayed in the viewerpublic javax.swing.JPanel getHorizontalScrollPanel()
null
if the scroll bar has been suppressedpublic javax.swing.JPanel getVerticalScrollPanel()
null
if the scroll bar has been suppressedpublic de.jaret.util.misc.Pair<TimeBarRow,de.jaret.util.date.JaretDate> getPopUpInformation()
getPopUpInformation
in interface TimeBarViewerInterface
null
if no click has been
recorded.public void setGhostIntervals(java.util.List<? extends de.jaret.util.date.Interval> intervals, java.util.List<java.lang.Integer> yCoordinates)
intervals
- list of intervals or null
to delete ghosted intervals.yCoordinates
- list of y offsets for the ghost intervals (maybe null
when deleting ghost
intervalspublic void setGhostOrigin(int x, int y)
x
- x coordinatey
- y coordniatepublic void setUseTitleRendererComponentInPlace(boolean useTitleRendererComponentInPlace)
useTitleRendererComponentInPlace
- true for direct use of the componentpublic int scrollDateToVisible(de.jaret.util.date.JaretDate date)
scrollDateToVisible
in interface TimeBarViewerInterface
date
- date to be shown.
public void scrollRowToVisible(TimeBarRow row)
scrollRowToVisible
in interface TimeBarViewerInterface
row
- TimeBarRow to be in the visible area.public void scrollIntervalToVisible(TimeBarRow row, de.jaret.util.date.Interval interval)
scrollIntervalToVisible
in interface TimeBarViewerInterface
row
- TimeBarRow of the intervalinterval
- inteval.
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |