Class AbstractTreeTransferHandler
- java.lang.Object
-
- javax.swing.TransferHandler
-
- com.inductiveautomation.ignition.client.util.gui.tree.AbstractTreeTransferHandler
-
- All Implemented Interfaces:
java.awt.dnd.DropTargetListener,java.io.Serializable,java.util.EventListener
- Direct Known Subclasses:
ClientTagTreeTransferHandler,TagTransferHandler
public abstract class AbstractTreeTransferHandler extends javax.swing.TransferHandler implements java.awt.dnd.DropTargetListenerA class that can acts as a 1.4 TransferHandler, and a 1.3 DropTargetListener all at once.- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description protected java.awt.StrokehighlightStrokeprotected javax.swing.tree.TreePathlastHighlightprotected java.awt.Rectanglerectprotected AutoscrollingJTreetree
-
Constructor Summary
Constructors Modifier Constructor Description protectedAbstractTreeTransferHandler(AutoscrollingJTree tree, int action, boolean beADropTarget)
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description protected abstract booleancanPerformAction(AutoscrollingJTree target, java.util.List<java.awt.datatransfer.DataFlavor> flavors, int action, java.awt.Point location, javax.swing.tree.TreePath dropPath)protected abstract booleancanStartDrag(javax.swing.tree.TreePath[] paths)protected voidclearHighlight()protected java.awt.datatransfer.TransferablecreateTransferable(javax.swing.JComponent c)java.awt.datatransfer.TransferablecreateTransferable(javax.swing.JComponent c, boolean drag)protected abstract java.awt.datatransfer.TransferablecreateTransferableForCutCopy(javax.swing.tree.TreePath[] paths)protected abstract java.awt.datatransfer.TransferablecreateTransferableForDrag(javax.swing.tree.TreePath[] paths)voiddragEnter(java.awt.dnd.DropTargetDragEvent dtde)voiddragExit(java.awt.dnd.DropTargetEvent dte)voiddragOver(java.awt.dnd.DropTargetDragEvent dtde)protected voiddrawHighlight(javax.swing.tree.TreePath path)voiddrop(java.awt.dnd.DropTargetDropEvent dtde)voiddropActionChanged(java.awt.dnd.DropTargetDragEvent dtde)protected abstract booleanexecuteDrop(AutoscrollingJTree tree, java.awt.datatransfer.Transferable transferable, javax.swing.tree.TreePath parentTreePath, int action)voidexportToClipboard(javax.swing.JComponent comp, java.awt.datatransfer.Clipboard clip, int action)Copied from super so that it calls createTransferableForCutCopy instead of the normal one.intgetSourceActions(javax.swing.JComponent c)---------------------------- Methods from TransferHandler ------------------------------protected abstract intgetSourceActions(javax.swing.tree.TreePath[] selPaths)Override to provide the actions available for the given pathsprotected javax.swing.tree.TreePathpathFor(java.awt.Point pt)
-
-
-
Field Detail
-
tree
protected AutoscrollingJTree tree
-
rect
protected java.awt.Rectangle rect
-
lastHighlight
protected javax.swing.tree.TreePath lastHighlight
-
highlightStroke
protected java.awt.Stroke highlightStroke
-
-
Constructor Detail
-
AbstractTreeTransferHandler
protected AbstractTreeTransferHandler(AutoscrollingJTree tree, int action, boolean beADropTarget)
- Parameters:
tree- The tree in question.action- A bitmask to use as the acceptable actions (@seeDropTarget.getDefaultActions()beADropTarget- Should this tree be a drop target?
-
-
Method Detail
-
drawHighlight
protected void drawHighlight(javax.swing.tree.TreePath path)
-
clearHighlight
protected void clearHighlight()
-
dragEnter
public void dragEnter(java.awt.dnd.DropTargetDragEvent dtde)
- Specified by:
dragEnterin interfacejava.awt.dnd.DropTargetListener
-
dragExit
public void dragExit(java.awt.dnd.DropTargetEvent dte)
- Specified by:
dragExitin interfacejava.awt.dnd.DropTargetListener
-
dragOver
public void dragOver(java.awt.dnd.DropTargetDragEvent dtde)
- Specified by:
dragOverin interfacejava.awt.dnd.DropTargetListener
-
dropActionChanged
public void dropActionChanged(java.awt.dnd.DropTargetDragEvent dtde)
- Specified by:
dropActionChangedin interfacejava.awt.dnd.DropTargetListener
-
drop
public void drop(java.awt.dnd.DropTargetDropEvent dtde)
- Specified by:
dropin interfacejava.awt.dnd.DropTargetListener
-
pathFor
protected javax.swing.tree.TreePath pathFor(java.awt.Point pt)
-
getSourceActions
public int getSourceActions(javax.swing.JComponent c)
---------------------------- Methods from TransferHandler ------------------------------- Overrides:
getSourceActionsin classjavax.swing.TransferHandler
-
getSourceActions
protected abstract int getSourceActions(javax.swing.tree.TreePath[] selPaths)
Override to provide the actions available for the given paths
-
createTransferable
protected java.awt.datatransfer.Transferable createTransferable(javax.swing.JComponent c)
- Overrides:
createTransferablein classjavax.swing.TransferHandler
-
createTransferable
public java.awt.datatransfer.Transferable createTransferable(javax.swing.JComponent c, boolean drag)
-
exportToClipboard
public void exportToClipboard(javax.swing.JComponent comp, java.awt.datatransfer.Clipboard clip, int action) throws java.lang.IllegalStateExceptionCopied from super so that it calls createTransferableForCutCopy instead of the normal one.- Overrides:
exportToClipboardin classjavax.swing.TransferHandler- Throws:
java.lang.IllegalStateException
-
canStartDrag
protected abstract boolean canStartDrag(javax.swing.tree.TreePath[] paths)
-
createTransferableForDrag
protected abstract java.awt.datatransfer.Transferable createTransferableForDrag(javax.swing.tree.TreePath[] paths)
-
createTransferableForCutCopy
protected abstract java.awt.datatransfer.Transferable createTransferableForCutCopy(javax.swing.tree.TreePath[] paths)
-
canPerformAction
protected abstract boolean canPerformAction(AutoscrollingJTree target, java.util.List<java.awt.datatransfer.DataFlavor> flavors, int action, java.awt.Point location, javax.swing.tree.TreePath dropPath)
-
executeDrop
protected abstract boolean executeDrop(AutoscrollingJTree tree, java.awt.datatransfer.Transferable transferable, javax.swing.tree.TreePath parentTreePath, int action)
-
-