com.dlsc.flexgantt.swing.layer.system

## Class DefaultDragRowRenderer

- java.lang.Object
- - java.awt.Component
  - - java.awt.Container
    - - javax.swing.JComponent
      - - javax.swing.JPanel
        - - com.dlsc.flexgantt.swing.layer.system.DefaultDragRowRenderer

- All Implemented Interfaces:
    IDragRowRenderer, IRenderer, ImageObserver, MenuContainer, Serializable, Accessible

      public class DefaultDragRowRenderer
      extends JPanel
      implements IDragRowRenderer

  The default implementation of the `IDragRowRenderer` interface uses the `IDragAndDropPolicy` to determine whether the currently dragged timeline object can be dropped on the row. If the timeline object can not be dropped then the row will be covered with a semi-transparent gray rectangle. The renderer will only be used when the edit mode (see `IEditModeController.EditMode`) of the `DragLayer` is either CHANGE_NODE or CHANGE_NODE_AND_TIME_SPAN.
  Since:
    1.0
  Version:
    $Revision: 1.8 $
  Author:
    Dirk Lemmermann
  See Also:
    Serialized Form

- - ### Nested Class Summary

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

      `JPanel.AccessibleJPanel`

    - ### 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 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 java.awt.image.ImageObserver

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

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `DefaultDragRowRenderer()` Constructs a new row renderer.

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `firePropertyChange(String propertyName, boolean oldValue, boolean newValue)` Commented out for performance reasons.
    `void` | `firePropertyChange(String propertyName, byte oldValue, byte newValue)` Commented out for performance reasons.
    `void` | `firePropertyChange(String propertyName, char oldValue, char newValue)` Commented out for performance reasons.
    `void` | `firePropertyChange(String propertyName, double oldValue, double newValue)` Commented out for performance reasons.
    `void` | `firePropertyChange(String propertyName, float oldValue, float newValue)` Commented out for performance reasons.
    `void` | `firePropertyChange(String propertyName, long oldValue, long newValue)` Commented out for performance reasons.
    `protected void` | `firePropertyChange(String propertyName, Object oldValue, Object newValue)` Commented out for performance reasons.
    `void` | `firePropertyChange(String propertyName, short oldValue, short newValue)` Commented out for performance reasons.
    `protected TimelineObjectPath` | `getDraggedTimelineObjectPath()` Returns the path to the dragged timeline object.
    `protected DragLayer` | `getDragLayer()` The drag layer for which the renderer gets invoked.
    `protected Object` | `getDragNode()` Returns the node on which the drag operation started.
    `Component` | `getDragRowRendererComponent(DragLayer layer, Object node, TimelineObjectPath draggedTimelineObjectPath, ITimeSpan span, int userDropAction)` Returns a component that will be used to render the row specific drag and drop information.
    `protected Object` | `getNode()` Returns the node for which the renderer is currently being called.
    `protected ITimeSpan` | `getTimeSpan()` Returns the time span where the dragged timeline object would be dropped.
    `protected int` | `getUserDropAction()` Returns the drop action requested by the user (move, copy).
    `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()` Commented out for performance reasons.
    `void` | `repaint(int x, int y, int width, int height)` Commented out for performance reasons.
    `void` | `repaint(long tm)` Commented out for performance reasons.

    - ### 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, 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, 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, transferFocusDownCycle, validate, 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, imageUpdate, 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`

- - ### Constructor Detail

    - #### DefaultDragRowRenderer

          public DefaultDragRowRenderer()

      Constructs a new row renderer.
      Since:
        1.0

  - ### Method Detail

    - #### getDragRowRendererComponent

          public Component getDragRowRendererComponent(DragLayer layer,
                                                       Object node,
                                                       TimelineObjectPath draggedTimelineObjectPath,
                                                       ITimeSpan span,
                                                       int userDropAction)

      Description copied from interface: `IDragRowRenderer`
      Returns a component that will be used to render the row specific drag and drop information.
      Specified by:
        `getDragRowRendererComponent` in interface `IDragRowRenderer`
      Parameters:
        `layer` - the drag layer where the rendering will take place
        `node` - the tree node for which the renderer gets invoked
        `draggedTimelineObjectPath` - the path to the dragged timeline object
        `span` - the time span where the drop would take place if the d&d operation finished now
        `userDropAction` - the type of drop requested by the user (move, copy) (possible values listed in `DnDConstants`)
      Returns:
        a renderer component for the drag information

    - #### paintComponent

          protected void paintComponent(Graphics g)

      Overrides:
        `paintComponent` in class `JComponent`

    - #### getDragLayer

          protected DragLayer getDragLayer()

      The drag layer for which the renderer gets invoked.
      Returns:
        the drag layer that is using the renderer
      Since:
        1.0

    - #### getNode

          protected Object getNode()

      Returns the node for which the renderer is currently being called.
      Returns:
        the node for which the renderer is currently being called
      Since:
        1.0

    - #### getDragNode

          protected Object getDragNode()

      Returns the node on which the drag operation started. The source of the drag event. The dragged timeline object is located on this node.
      Returns:
        the drag node
      Since:
        1.0

    - #### getDraggedTimelineObjectPath

          protected TimelineObjectPath getDraggedTimelineObjectPath()

      Returns the path to the dragged timeline object.
      Returns:
        the path to the dragged timeline object
      Since:
        1.0

    - #### getTimeSpan

          protected ITimeSpan getTimeSpan()

      Returns the time span where the dragged timeline object would be dropped.
      Returns:
        the drop time span
      Since:
        1.0

    - #### getUserDropAction

          protected int getUserDropAction()

      Returns the drop action requested by the user (move, copy). Possible values are listed in `DnDConstants`.
      Returns:
        the user requested drop action
      Since:
        1.0

    - #### firePropertyChange

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

      Commented out for performance reasons.
      Overrides:
        `firePropertyChange` in class `JComponent`
      Since:
        1.1

    - #### firePropertyChange

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

      Commented out for performance reasons.
      Overrides:
        `firePropertyChange` in class `Component`
      Since:
        1.1

    - #### firePropertyChange

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

      Commented out for performance reasons.
      Overrides:
        `firePropertyChange` in class `JComponent`
      Since:
        1.1

    - #### firePropertyChange

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

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

    - #### firePropertyChange

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

      Commented out for performance reasons.
      Overrides:
        `firePropertyChange` in class `Component`
      Since:
        1.1

    - #### firePropertyChange

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

      Commented out for performance reasons.
      Overrides:
        `firePropertyChange` in class `Component`
      Since:
        1.1

    - #### firePropertyChange

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

      Commented out for performance reasons.
      Overrides:
        `firePropertyChange` in class `Component`
      Since:
        1.1

    - #### firePropertyChange

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

      Commented out for performance reasons.
      Overrides:
        `firePropertyChange` in class `Component`
      Since:
        1.1

    - #### repaint

          public void repaint()

      Commented out for performance reasons.
      Overrides:
        `repaint` in class `Component`
      Since:
        1.1

    - #### repaint

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

      Commented out for performance reasons.
      Overrides:
        `repaint` in class `Component`
      Since:
        1.1

    - #### repaint

          public void repaint(long tm)

      Commented out 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.