public class TLcdGXYBusyLayerTreeNodeCellRenderer extends ALcdBusyLayerTreeNodeCellRenderer
This class is a wrapper around a TLcdLayerTreeNodeCellRenderer
, adding support for displaying a busy icon to the renderer.
asynchronously
.
Here the renderer makes a distinction between painting
and
busy
layers.
painter provider
that is a busy ILcdStatusSource
ILcdGXYViewLabelPlacer
.If logging is enabled for this class, the renderer will use separate colors for asynchronous layers with separate paint queues. Logging can be enabled by adding this to your logging properties file:
com.luciad.view.gxy.swing.TLcdGXYBusyLayerTreeNodeCellRenderer.level = FINEST
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 |
---|
TLcdGXYBusyLayerTreeNodeCellRenderer(ILcdGXYView aGXYView)
Wrap a new
TLcdGXYBusyLayerTreeNodeCellRenderer around a
TLcdLayerTreeNodeCellRenderer , created for the view aGXYView . |
TLcdGXYBusyLayerTreeNodeCellRenderer(ILcdGXYView aGXYView,
TLcdLayerTreeNodeCellRenderer aDelegateRenderer)
Wrap a new
TLcdGXYBusyLayerTreeNodeCellRenderer around aDelegateRenderer . |
TLcdGXYBusyLayerTreeNodeCellRenderer(ILcdGXYView aGXYView,
TLcdLayerTreeNodeCellRenderer aDelegateRenderer,
ILcdIcon aPaintingIcon,
ILcdIcon aBusyIcon)
Wrap a new
TLcdGXYBusyLayerTreeNodeCellRenderer around
aDelegateRenderer , where the painting icon is aPaintingIcon and the
busyicon aBusyIcon . |
Modifier and Type | Method and Description |
---|---|
Component |
getTreeCellRendererComponent(JTree tree,
Object value,
boolean selected,
boolean expanded,
boolean leaf,
int row,
boolean hasFocus) |
protected boolean |
isLayerOrDescendantBusy(ILcdLayer aLayer)
This method indicates whether or not the passed layer or one of its descendants is busy.
|
protected boolean |
isLayerOrDescendantPainting(ILcdLayer aLayer)
This method indicates whether or not the passed layer or one of its descendants is painting.
|
getDelegateRenderer, layerStateChanged, updateRendererFromLayer, 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, getPreferredSize, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getUIClassID, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, hide, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingOrigin, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintChildren, paintComponent, paintImmediately, paintImmediately, paramString, print, printAll, printBorder, 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, getAccessibleContext, 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 TLcdGXYBusyLayerTreeNodeCellRenderer(ILcdGXYView aGXYView, TLcdLayerTreeNodeCellRenderer aDelegateRenderer, ILcdIcon aPaintingIcon, ILcdIcon aBusyIcon)
Wrap a new TLcdGXYBusyLayerTreeNodeCellRenderer
around
aDelegateRenderer
, where the painting icon is aPaintingIcon
and the
busyicon aBusyIcon
. This renderer can only be used on one TLcdLayerTree
at the same time. The wrapped
TLcdLayerTreeNodeCellRenderer
must not be set on another tree.
aGXYView
- the view containing the layers which will be displayed in the layer
treeaDelegateRenderer
- the renderer which is wrappedaPaintingIcon
- the icon used to indicate the layer is being painted. See
TLcdGXYAsynchronousLayerMonitor
for a definition of painting and busy.
The icon is automatically rotated, and assumed to not change its content
(e.g. an image icon).aBusyIcon
- the icon used to indicate the layer is busy, as a result of some other
layer being painted in the same queue. See
TLcdGXYAsynchronousLayerMonitor
for a definition of painting and busy.
The icon is automatically rotated, and assumed to not change its content
(e.g. an image icon).public TLcdGXYBusyLayerTreeNodeCellRenderer(ILcdGXYView aGXYView, TLcdLayerTreeNodeCellRenderer aDelegateRenderer)
Wrap a new TLcdGXYBusyLayerTreeNodeCellRenderer
around aDelegateRenderer
.
This renderer can only be used on one TLcdLayerTree
at the
same time. The wrapped TLcdLayerTreeNodeCellRenderer
must not be set on another tree.
aGXYView
- the view containing the layers which will be displayed in the layer
treeaDelegateRenderer
- the renderer which is wrapperpublic TLcdGXYBusyLayerTreeNodeCellRenderer(ILcdGXYView aGXYView)
Wrap a new TLcdGXYBusyLayerTreeNodeCellRenderer
around a
TLcdLayerTreeNodeCellRenderer
, created for the view aGXYView
. This
renderer can only be used on one TLcdLayerTree
at
the same time. The wrapped TLcdLayerTreeNodeCellRenderer
must not be set on another
tree.
aGXYView
- the view containing the layers which will be displayed in the layer treepublic Component getTreeCellRendererComponent(JTree tree, Object value, boolean selected, boolean expanded, boolean leaf, int row, boolean hasFocus)
getTreeCellRendererComponent
in interface TreeCellRenderer
getTreeCellRendererComponent
in class ALcdBusyLayerTreeNodeCellRenderer
protected boolean isLayerOrDescendantBusy(ILcdLayer aLayer)
For this implementation, busy is defined as the result of
(TLcdGXYAsynchronousLayerMonitor.isGXYLayerBusy(com.luciad.view.gxy.ILcdGXYLayer)
)
for an asynchronously painted layer (see ILcdGXYAsynchronousLayerWrapper
). In addition, a
layer is considered to be busy when it contains labels that are being asynchronously decluttered.
isLayerOrDescendantBusy
in class ALcdBusyLayerTreeNodeCellRenderer
aLayer
- a layer for which the busy state needs to be retrieved.ALcdBusyLayerTreeNodeCellRenderer.layerStateChanged(com.luciad.view.ILcdLayer)
protected boolean isLayerOrDescendantPainting(ILcdLayer aLayer)
For this implementation, busy is defined as the result of
(TLcdGXYAsynchronousLayerMonitor.isGXYLayerPainting(com.luciad.view.gxy.ILcdGXYLayer)
)
for an asynchronously painted layer (see ILcdGXYAsynchronousLayerWrapper
).
isLayerOrDescendantPainting
in class ALcdBusyLayerTreeNodeCellRenderer
aLayer
- a layer for which the painting state needs to be retrieved.ALcdBusyLayerTreeNodeCellRenderer.layerStateChanged(com.luciad.view.ILcdLayer)