public class DragLayer extends AbstractSystemLayer implements DragGestureListener, DragSourceListener, DropTargetListener, MouseMotionListener
alpha, changeSupport, ganttChart, layerContainer, PROPERTY_ALPHA, PROPERTY_VISIBLE| Constructor and Description |
|---|
DragLayer(LayerContainer lc)
Constructs a new drag layer.
|
| Modifier and Type | Method and Description |
|---|---|
void |
addDragLayerListener(IDragLayerListener l)
Adds a drag layer listener to the drag layer.
|
protected Image |
createDragImage(ObjectBounds bounds)
Creates an image that will be shown in combination with the drag cursor
during drag & drop operations.
|
protected Cursor |
createEditModeCursor(IEditModeController.EditMode mode)
Factory method for the cursors of the various edit modes.
|
protected Cursor |
createEditModeCustomCursors(IEditModeController.EditMode mode)
Factory method for the cursors of the various edit modes.
|
protected Cursor |
createEditModeDefaultCursors(IEditModeController.EditMode mode)
Factory method for the cursors of the various edit modes.
|
void |
dragDropEnd(DragSourceDropEvent dsde) |
void |
dragEnter(DragSourceDragEvent dsde) |
void |
dragEnter(DropTargetDragEvent dtde) |
void |
dragExit(DragSourceEvent dse) |
void |
dragExit(DropTargetEvent dte) |
void |
dragGestureRecognized(DragGestureEvent dge) |
void |
dragOver(DragSourceDragEvent dsde) |
void |
dragOver(DropTargetDragEvent dtde) |
void |
drop(DropTargetDropEvent dtde) |
void |
dropActionChanged(DragSourceDragEvent dsde) |
void |
dropActionChanged(DropTargetDragEvent dtde) |
protected void |
fireDragLayerEvent(DragLayerEvent evt)
Sends the given event object to all drag layer listeners that are
currently observing the drag layer.
|
IDragInfoRenderer |
getDragInfoRenderer(Class cl)
Returns a drag info renderer for a given timeline object type.
|
IDragRowRenderer |
getDragRowRenderer(Class cl)
Returns a drag row renderer for a given tree / hierarchy node.
|
DropTarget |
getDropTarget()
Returns the drop target object associated with the drag layer / the layer
container.
|
IEditModeController.EditMode |
getEditMode()
Returns the active edit mode.
|
IEditModeController |
getEditModeController(Class cl)
Returns an edit mode controller for a given timeline object type.
|
MouseEvent |
getTriggerEvent()
Returns the mouse event, which triggered the last drag gesture.
|
boolean |
isDragging()
Determines whether the user is currently dragging an object.
|
boolean |
isDragInfoVisible()
Determines whether the drag information is shown during a drag & drop
operation.
|
boolean |
isShowingDefaultCursors()
Determines whether the
#createEditModeCursor(EditMode) method
delegates to #createEditModeDefaultCursors(EditMode) or
#createEditModeCustomCursors(EditMode). |
void |
mouseDragged(MouseEvent e) |
void |
mouseMoved(MouseEvent e) |
protected void |
paintDragRowRenderers(Graphics g)
Paints the drag row renderers during a drag operation.
|
protected void |
paintLayer(Graphics g) |
void |
removeDragLayerListener(IDragLayerListener l)
Removes a drag layer listener from the drag layer.
|
void |
setDragInfoRenderer(Class objectType,
IDragInfoRenderer renderer)
Maps the implementation of a drag info renderer to a timeline object
type.
|
void |
setDragInfoVisible(boolean visible)
Specifies whether the drag information is shown during a drag & drop
operation.
|
void |
setDragRowRenderer(Class objectType,
IDragRowRenderer renderer)
Maps the implementation of a drag row renderer to a tree node type.
|
void |
setEditModeController(Class objectType,
IEditModeController controller)
Maps the implementation of an edit mode controller to a timeline object
type.
|
void |
setShowingDefaultCursors(boolean show)
Specifies whether the
#createEditModeCursor(EditMode) method
delegates to #createEditModeDefaultCursors(EditMode) or
#createEditModeCustomCursors(EditMode). |
addPropertyChangeListener, getAlpha, getDateline, getEventline, getGanttChart, getHeight, getLayerContainer, getLayerPolicyProvider, getModel, getName, getStartRow, getTimeAt, getTimeline, getTimeLocation, getTimeSpanUsed, getToolTipText, getTreeTable, getTreeTablePolicyProvider, getWidth, isVisible, removePropertyChangeListener, repaint, repaint, repaint, setAlpha, setVisible, tearDownpublic DragLayer(LayerContainer lc)
lc - the layer container to which the drag layer belongspublic boolean isDragging()
protected void paintLayer(Graphics g)
paintLayer in class AbstractLayerprotected void paintDragRowRenderers(Graphics g)
IDragRowRenderer implementation for each
row in the layer container. The renderer can then visualize information
relevant for the drag operation (for example: "drop here not allowed"
causes the row to be grayed out).g - the graphics context into which to drawsetDragRowRenderer(Class, IDragRowRenderer)public void setDragInfoRenderer(Class objectType, IDragInfoRenderer renderer)
objectType - the type of the timeline object for which the info will be
rendered with the given rendererrenderer - a renderer implementation that will be used to renderer
instances of the given timeline object typeDefaultDragInfoRendererpublic IDragInfoRenderer getDragInfoRenderer(Class cl)
cl - the timeline object type in need of renderingsetDragInfoRenderer(Class, IDragInfoRenderer),
DefaultDragInfoRendererpublic boolean isDragInfoVisible()
IDragInfoPolicy,
IDragInfoRenderer,
setDragInfoRenderer(Class, IDragInfoRenderer)public void setDragInfoVisible(boolean visible)
visible - if TRUE the drag info will be shownIDragInfoPolicy,
IDragInfoRenderer,
setDragInfoRenderer(Class, IDragInfoRenderer)public void setDragRowRenderer(Class objectType, IDragRowRenderer renderer)
objectType - the type of the tree node for which the row will be rendered
with the given rendererrenderer - a renderer implementation that will be used to renderer the
row with drag and drop informationDefaultDragRowRendererpublic IDragRowRenderer getDragRowRenderer(Class cl)
cl - the object type of the tree nodesetDragRowRenderer(Class, IDragRowRenderer),
DefaultDragRowRendererpublic void mouseMoved(MouseEvent e)
mouseMoved in interface MouseMotionListenerpublic void mouseDragged(MouseEvent e)
mouseDragged in interface MouseMotionListenerpublic void dragGestureRecognized(DragGestureEvent dge)
dragGestureRecognized in interface DragGestureListenerprotected Image createDragImage(ObjectBounds bounds)
bounds - the object bounds for which to create an imagepublic void dragDropEnd(DragSourceDropEvent dsde)
dragDropEnd in interface DragSourceListenerpublic void dragEnter(DragSourceDragEvent dsde)
dragEnter in interface DragSourceListenerpublic void dragExit(DragSourceEvent dse)
dragExit in interface DragSourceListenerpublic void dragOver(DragSourceDragEvent dsde)
dragOver in interface DragSourceListenerpublic void dropActionChanged(DragSourceDragEvent dsde)
dropActionChanged in interface DragSourceListenerpublic void dragEnter(DropTargetDragEvent dtde)
dragEnter in interface DropTargetListenerpublic void dragExit(DropTargetEvent dte)
dragExit in interface DropTargetListenerpublic void dragOver(DropTargetDragEvent dtde)
dragOver in interface DropTargetListenerpublic void drop(DropTargetDropEvent dtde)
drop in interface DropTargetListenerpublic void dropActionChanged(DropTargetDragEvent dtde)
dropActionChanged in interface DropTargetListenerpublic void addDragLayerListener(IDragLayerListener l)
l - the drag layer listenerpublic void removeDragLayerListener(IDragLayerListener l)
l - the drag layer listenerprotected void fireDragLayerEvent(DragLayerEvent evt)
evt - the drag layer event that will be sent to all listenerspublic void setEditModeController(Class objectType, IEditModeController controller)
objectType - the type of the timeline object for which the edit mode will
be calculated by the given controllercontroller - an edit mode controller implementation that will make the
actual decision on the edit mode that will be used when the
mouse cursor hovers over a timeline object of the given typeDefaultEditModeControllerpublic IEditModeController getEditModeController(Class cl)
cl - the timeline object type in need of renderingsetDragInfoRenderer(Class, IDragInfoRenderer),
DefaultDragInfoRendererpublic void setShowingDefaultCursors(boolean show)
#createEditModeCursor(EditMode) method
delegates to #createEditModeDefaultCursors(EditMode) or
#createEditModeCustomCursors(EditMode).show - if TRUE the layer will display the default cursors while
draggingpublic boolean isShowingDefaultCursors()
#createEditModeCursor(EditMode) method
delegates to #createEditModeDefaultCursors(EditMode) or
#createEditModeCustomCursors(EditMode).protected Cursor createEditModeCursor(IEditModeController.EditMode mode)
isShowingDefaultCursors() the method
delegates to #createEditModeDefaultCursors(EditMode) or
#createEditModeCustomCursors(EditMode).mode - the edit mode for which to create a cursorprotected Cursor createEditModeCustomCursors(IEditModeController.EditMode mode)
IconRegistry via the following
identifiers:
The hotspot for the cursors is always (16, 16) except for the percentage
complete cursor (31, 15).mode - the edit mode for which to create a cursorprotected Cursor createEditModeDefaultCursors(IEditModeController.EditMode mode)
IconRegistry via the following identifiers:
The hotspot for the percentage complete cursor located at (31, 15).mode - the edit mode for which to create a cursorpublic IEditModeController.EditMode getEditMode()
public DropTarget getDropTarget()
MultiDropTargetpublic MouseEvent getTriggerEvent()
DragGestureEvent.getTriggerEvent()Copyright © 2006–2020 Dirk Lemmermann Software & Consulting. All rights reserved.