com.dlsc.flexgantt.swing.treetable

## Class DefaultTreeTableRowHeaderRenderer

- java.lang.Object
- - java.awt.Component
  - - java.awt.Container
    - - javax.swing.JComponent
      - - javax.swing.JLabel
        - - com.dlsc.flexgantt.swing.treetable.DefaultTreeTableRowHeaderRenderer

- All Implemented Interfaces:
    IRowHeaderRenderer<TreeTableRowHeader>, ITreeTableRowHeaderRenderer, IRenderer, ImageObserver, MenuContainer, Serializable, Accessible, SwingConstants
  Direct Known Subclasses:
    MacTreeTableRowHeaderRenderer

      public class DefaultTreeTableRowHeaderRenderer
      extends JLabel
      implements ITreeTableRowHeaderRenderer

  The default implementation of `IRowHeaderRenderer`.
  Since:
    1.0
  Version:
    $Revision: 1.11 $
  Author:
    Dirk Lemmermann
  See Also:
    `AbstractRowHeader.setRowHeaderRenderer(Class, IRowHeaderRenderer)`, `AbstractGanttChart.setTreeTableRowHeaderWidth(int)`, Serialized Form

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Class and Description
    --- | ---
    `static class` | `DefaultTreeTableRowHeaderRenderer.Type` A type enumerator that is used to indicate to the renderer whether the application wants standard row numbers to be shown or information based on model information.

    - ### Nested classes/interfaces inherited from class javax.swing.JLabel

      `JLabel.AccessibleJLabel`

    - ### Nested classes/interfaces inherited from class javax.swing.JComponent

      `JComponent.AccessibleJComponent`

    - ### Nested classes/interfaces inherited from class java.awt.Container

      `Container.AccessibleAWTContainer`

    - ### Nested classes/interfaces inherited from class java.awt.Component

      `Component.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategy`

  - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `protected Icon` | `createIcon` The icon used to mark the row where the user can create a new entry.

    - ### Fields inherited from class javax.swing.JLabel

      `labelFor`

    - ### Fields inherited from class javax.swing.JComponent

      `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

      `accessibleContext, BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT`

    - ### Fields inherited from interface javax.swing.SwingConstants

      `BOTTOM, CENTER, EAST, HORIZONTAL, LEADING, LEFT, NEXT, NORTH, NORTH_EAST, NORTH_WEST, PREVIOUS, RIGHT, SOUTH, SOUTH_EAST, SOUTH_WEST, TOP, TRAILING, VERTICAL, WEST`

    - ### Fields inherited from interface java.awt.image.ImageObserver

      `ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `DefaultTreeTableRowHeaderRenderer()` Constructs a new renderer.
    `DefaultTreeTableRowHeaderRenderer(DefaultTreeTableRowHeaderRenderer.Type type)` Constructs a new renderer.

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `protected String` | `createText(Object rowHeaderValue)` Returns a text representation of the given row header value that was previously retrieved from the tree table model.
    `void` | `firePropertyChange(String propertyName, boolean oldValue, boolean newValue)` Overriden for performance reasons.
    `void` | `firePropertyChange(String propertyName, byte oldValue, byte newValue)` Overriden for performance reasons.
    `void` | `firePropertyChange(String propertyName, char oldValue, char newValue)` Overriden for performance reasons.
    `void` | `firePropertyChange(String propertyName, double oldValue, double newValue)` Overriden for performance reasons.
    `void` | `firePropertyChange(String propertyName, float oldValue, float newValue)` Overriden for performance reasons.
    `void` | `firePropertyChange(String propertyName, long oldValue, long newValue)` Overriden for performance reasons.
    `protected void` | `firePropertyChange(String propertyName, Object oldValue, Object newValue)` Overriden for performance reasons.
    `void` | `firePropertyChange(String propertyName, short oldValue, short newValue)` Overriden for performance reasons.
    `Icon` | `getCollapsedIcon()` Returns the icon shown by the row header renderer to express that the tree node is collapsed.
    `Icon` | `getCreateIcon()` Returns the icon used to mark the row where new entries can be created.
    `Icon` | `getEmptyIcon()` Returns the placeholder icon used for a row header renderer if a row can not be expanded or collapsed.
    `Icon` | `getExpandedIcon()` Returns the icon shown by the row header renderer to express that the tree node is expanded.
    `Color` | `getFocusBackground()` Returns the background color used for indicating that the header is the focus owner.
    `Color` | `getFocusForeground()` Returns the foreground color used for indicating that the header is the focus owner.
    `Component` | `getRowHeaderRendererComponent(TreeTableRowHeader header, Object node, Object headerValue, int depth, boolean selected, boolean expanded, boolean leaf, int row, boolean hasFocus, boolean newNodePosition)` Returns a component suitable for rendering a row header.
    `Rectangle` | `getRowHeaderToggleBounds(TreeTableRowHeader header, int x, int y, int width, int height)` Returns the bounds of the toggle used for expanding and collapsing the hierarchy / tree table node.
    `void` | `invalidate()` Overriden for performance reasons.
    `boolean` | `isDisplayedAsLeaf(ITreeTableModel model, Object node)` Determines whether the given node will be displayed as a leaf or not.
    `boolean` | `isShowingFocus()` Determines whether the renderer visualizes mouse over events or not.
    `boolean` | `isShowingSelection()` Determines whether the renderer visualizes that the row next to it is currently selected.
    `boolean` | `isVisible()` Overriden in order to fix a bug in AWT, which causes the cursor to flicker during drag and drop operations.
    `protected void` | `paintComponent(Graphics g)`
    `void` | `repaint()` Overriden for performance reasons.
    `void` | `repaint(int x, int y, int width, int height)` Overriden for performance reasons.
    `void` | `repaint(long tm)` Overriden for performance reasons.
    `void` | `revalidate()` Overriden for performance reasons.
    `void` | `setCollapsedIcon(Icon icon)` Sets the icon shown by the row header renderer to express that the tree node is collapsed.
    `void` | `setCreateIcon(Icon icon)` Sets the icon used to mark the row where new entries can be created.
    `void` | `setExpandedIcon(Icon icon)` Sets the icon shown by the row header renderer to express that the tree node is expanded.
    `void` | `setFocusBackground(Color color)` Sets the background color used for indicating that the header is the focus owner.
    `void` | `setFocusForeground(Color color)` Sets the foreground color used for indicating that the header is the focus owner.
    `void` | `setShowingFocus(boolean showingFocus)` Determines whether the renderer visualizes mouse over events or not.
    `void` | `setShowingSelection(boolean showingSelection)` Determines whether the renderer visualizes that the row next to it is currently selected.
    `void` | `validate()` Overriden for performance reasons.

    - ### Methods inherited from class javax.swing.JLabel

      `checkHorizontalKey, checkVerticalKey, getAccessibleContext, getDisabledIcon, getDisplayedMnemonic, getDisplayedMnemonicIndex, getHorizontalAlignment, getHorizontalTextPosition, getIcon, getIconTextGap, getLabelFor, getText, getUI, getUIClassID, getVerticalAlignment, getVerticalTextPosition, imageUpdate, paramString, setDisabledIcon, setDisplayedMnemonic, setDisplayedMnemonic, setDisplayedMnemonicIndex, setHorizontalAlignment, setHorizontalTextPosition, setIcon, setIconTextGap, setLabelFor, setText, setUI, setVerticalAlignment, setVerticalTextPosition, updateUI`

    - ### Methods inherited from class javax.swing.JComponent

      `addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, 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, hide, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingOrigin, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintChildren, paintImmediately, paintImmediately, 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, 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, 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, validateTree`

    - ### Methods inherited from class java.awt.Component

      `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, 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, inside, isBackgroundSet, isCursorSet, isDisplayable, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isPreferredSizeSet, isShowing, isValid, 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, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

- - ### Field Detail

    - #### createIcon

          protected Icon createIcon

      The icon used to mark the row where the user can create a new entry.
      Since:
        1.0

  - ### Constructor Detail

    - #### DefaultTreeTableRowHeaderRenderer

          public DefaultTreeTableRowHeaderRenderer(DefaultTreeTableRowHeaderRenderer.Type type)

      Constructs a new renderer.
      Parameters:
        `type` - the type of rendering requested from the renderer
      Since:
        1.0

    - #### DefaultTreeTableRowHeaderRenderer

          public DefaultTreeTableRowHeaderRenderer()

      Constructs a new renderer.
      Since:
        1.0

  - ### Method Detail

    - #### setExpandedIcon

          public void setExpandedIcon(Icon icon)

      Sets the icon shown by the row header renderer to express that the tree node is expanded.
      Parameters:
        `icon` - the icon shown by the row header renderer to express that the tree node is expanded
      Since:
        1.0

    - #### getExpandedIcon

          public Icon getExpandedIcon()

      Returns the icon shown by the row header renderer to express that the tree node is expanded.
      Returns:
        the icon shown by the row header renderer to express that the tree node is expanded
      Since:
        1.0

    - #### setCollapsedIcon

          public void setCollapsedIcon(Icon icon)

      Sets the icon shown by the row header renderer to express that the tree node is collapsed.
      Parameters:
        `icon` - the icon shown by the row header renderer to express that the tree node is collapsed
      Since:
        1.0

    - #### getCollapsedIcon

          public Icon getCollapsedIcon()

      Returns the icon shown by the row header renderer to express that the tree node is collapsed.
      Returns:
        the icon shown by the row header renderer to express that the tree node is collapsed
      Since:
        1.0

    - #### getEmptyIcon

          public Icon getEmptyIcon()

      Returns the placeholder icon used for a row header renderer if a row can not be expanded or collapsed. The empty icon has to be the maximum width and height of the expanded and the collapsed icon.
      Returns:
        the placeholder icon used for leaf nodes
      Since:
        1.0

    - #### getRowHeaderRendererComponent

          public Component getRowHeaderRendererComponent(TreeTableRowHeader header,
                                                         Object node,
                                                         Object headerValue,
                                                         int depth,
                                                         boolean selected,
                                                         boolean expanded,
                                                         boolean leaf,
                                                         int row,
                                                         boolean hasFocus,
                                                         boolean newNodePosition)

      Description copied from interface: `IRowHeaderRenderer`
      Returns a component suitable for rendering a row header.
      Specified by:
        `getRowHeaderRendererComponent` in interface `IRowHeaderRenderer<TreeTableRowHeader>`
      Parameters:
        `header` - the row header component in which the header gets rendererd
        `node` - the tree node to which the row header belongs
        `headerValue` - the header value object
        `depth` - the hierarcy depth of the row for which the header gets rendered
        `selected` - a flag signalling whether the row is currently selected
        `expanded` - a flag signalling whether the hierarcy node to which the header belongs is currently in an expanded state (opened)
        `leaf` - a flag signalling whether the hierarchy node to which the header belongs is a leaf (has no children)
        `row` - the row in which the header is located
        `hasFocus` - a flag signalling whether the header is the focus owner
        `newNodePosition` - a flag signalling whether the row is used for creating new tree nodes
      Returns:
        a component suitable for rendering the header

    - #### isDisplayedAsLeaf

          public boolean isDisplayedAsLeaf(ITreeTableModel model,
                                           Object node)

      Description copied from interface: `ITreeTableRowHeaderRenderer`
      Determines whether the given node will be displayed as a leaf or not. A leaf can not be expanded or collapsed, hence no expansion toggle icon will be visible. The default implementation of this method in `DefaultTreeTableRowHeaderRenderer` calls `TreeModel.isLeaf(Object)`. Subclasses can choose to change this behaviour by, for example, changing the code to check the child count of the node. This way the expansion icon could be configured to only show up if the tree node actually does have at least one child.
      Specified by:
        `isDisplayedAsLeaf` in interface `ITreeTableRowHeaderRenderer`
      Parameters:
        `model` - the tree model to which the node belongs
        `node` - the tree node to check
      Returns:
        TRUE if the node shall be displayed as a leaf

    - #### createText

          protected String createText(Object rowHeaderValue)

      Returns a text representation of the given row header value that was previously retrieved from the tree table model.
      Parameters:
        `rowHeaderValue` - the row header value that will be shown by the renderer
      Returns:
        a text representation of the given row header value
      Since:
        1.1
      See Also:
        `ITreeTableModel.getRowHeaderValue(Object)`

    - #### getCreateIcon

          public Icon getCreateIcon()

      Returns the icon used to mark the row where new entries can be created.
      Returns:
        the icon for the 'new entry' row
      Since:
        1.0
      See Also:
        `setCreateIcon(Icon)`

    - #### setCreateIcon

          public void setCreateIcon(Icon icon)

      Sets the icon used to mark the row where new entries can be created. param icon the icon for the 'new entry' row
      Parameters:
        `icon` - the icon that will be shown in the row where new rows can be created
      Since:
        1.0
      See Also:
        `setCreateIcon(Icon)`

    - #### paintComponent

          protected void paintComponent(Graphics g)

      Overrides:
        `paintComponent` in class `JComponent`

    - #### getRowHeaderToggleBounds

          public Rectangle getRowHeaderToggleBounds(TreeTableRowHeader header,
                                                    int x,
                                                    int y,
                                                    int width,
                                                    int height)

      Description copied from interface: `ITreeTableRowHeaderRenderer`
      Returns the bounds of the toggle used for expanding and collapsing the hierarchy / tree table node.
      Specified by:
        `getRowHeaderToggleBounds` in interface `ITreeTableRowHeaderRenderer`
      Parameters:
        `header` - the row header component
        `x` - the x-coordinate where the header will be rendered
        `y` - the y-coordinate where the header will be rendered
        `width` - the width of the header
        `height` - the height of the header
      Returns:
        the bounds of the expand / collapse toggle

    - #### getFocusForeground

          public Color getFocusForeground()

      Returns the foreground color used for indicating that the header is the focus owner.
      Returns:
        the focus foreground color
      Since:
        1.1

    - #### setFocusForeground

          public void setFocusForeground(Color color)

      Sets the foreground color used for indicating that the header is the focus owner.
      Parameters:
        `color` - the focus foreground color
      Since:
        1.1

    - #### getFocusBackground

          public Color getFocusBackground()

      Returns the background color used for indicating that the header is the focus owner.
      Returns:
        the focus background color
      Since:
        1.1

    - #### setFocusBackground

          public void setFocusBackground(Color color)

      Sets the background color used for indicating that the header is the focus owner.
      Parameters:
        `color` - the focus background color
      Since:
        1.1

    - #### isShowingFocus

          public boolean isShowingFocus()

      Determines whether the renderer visualizes mouse over events or not.
      Returns:
        true if the renderer draws differently when the mouse hovers over it
      Since:
        2.0

    - #### setShowingFocus

          public void setShowingFocus(boolean showingFocus)

      Determines whether the renderer visualizes mouse over events or not.
      Parameters:
        `showingFocus` - if TRUE the renderer draws differently when the mouse hovers over it
      Since:
        2.0

    - #### isShowingSelection

          public boolean isShowingSelection()

      Determines whether the renderer visualizes that the row next to it is currently selected.
      Returns:
        true if the renderer draws differently when the row is selected it
      Since:
        2.0

    - #### setShowingSelection

          public void setShowingSelection(boolean showingSelection)

      Determines whether the renderer visualizes that the row next to it is currently selected.
      Parameters:
        `showingSelection` - if TRUE the renderer draws differently when the row is selected it
      Since:
        2.0

    - #### validate

          public void validate()

      Overriden for performance reasons.
      Overrides:
        `validate` in class `Container`
      Since:
        1.0

    - #### invalidate

          public void invalidate()

      Overriden for performance reasons.
      Overrides:
        `invalidate` in class `Container`
      Since:
        1.0

    - #### revalidate

          public void revalidate()

      Overriden for performance reasons.
      Overrides:
        `revalidate` in class `JComponent`
      Since:
        1.0

    - #### firePropertyChange

          public void firePropertyChange(String propertyName,
                                         boolean oldValue,
                                         boolean newValue)

      Overriden for performance reasons.
      Overrides:
        `firePropertyChange` in class `JComponent`
      Since:
        1.0

    - #### firePropertyChange

          public void firePropertyChange(String propertyName,
                                         byte oldValue,
                                         byte newValue)

      Overriden for performance reasons.
      Overrides:
        `firePropertyChange` in class `Component`
      Since:
        1.0

    - #### firePropertyChange

          public void firePropertyChange(String propertyName,
                                         char oldValue,
                                         char newValue)

      Overriden for performance reasons.
      Overrides:
        `firePropertyChange` in class `JComponent`
      Since:
        1.0

    - #### firePropertyChange

          public void firePropertyChange(String propertyName,
                                         double oldValue,
                                         double newValue)

      Overriden for performance reasons.
      Overrides:
        `firePropertyChange` in class `Component`
      Since:
        1.0

    - #### firePropertyChange

          public void firePropertyChange(String propertyName,
                                         float oldValue,
                                         float newValue)

      Overriden for performance reasons.
      Overrides:
        `firePropertyChange` in class `Component`
      Since:
        1.0

    - #### firePropertyChange

          public void firePropertyChange(String propertyName,
                                         long oldValue,
                                         long newValue)

      Overriden for performance reasons.
      Overrides:
        `firePropertyChange` in class `Component`
      Since:
        1.0

    - #### firePropertyChange

          protected void firePropertyChange(String propertyName,
                                            Object oldValue,
                                            Object newValue)

      Overriden for performance reasons.
      Overrides:
        `firePropertyChange` in class `Component`
      Since:
        1.0

    - #### firePropertyChange

          public void firePropertyChange(String propertyName,
                                         short oldValue,
                                         short newValue)

      Overriden for performance reasons.
      Overrides:
        `firePropertyChange` in class `Component`
      Since:
        1.0

    - #### repaint

          public void repaint()

      Overriden for performance reasons.
      Overrides:
        `repaint` in class `Component`
      Since:
        1.0

    - #### repaint

          public void repaint(int x,
                              int y,
                              int width,
                              int height)

      Overriden for performance reasons.
      Overrides:
        `repaint` in class `Component`
      Since:
        1.0

    - #### repaint

          public void repaint(long tm)

      Overriden for performance reasons.
      Overrides:
        `repaint` in class `Component`
      Since:
        1.0

    - #### isVisible

          public boolean isVisible()

      Overriden in order to fix a bug in AWT, which causes the cursor to flicker during drag and drop operations.
      Overrides:
        `isVisible` in class `Component`
      Since:
        1.1

Copyright © 2006–2020 Dirk Lemmermann Software & Consulting. All rights reserved.