Package ghidra.app.util
Class FileOpenDropHandler
- java.lang.Object
-
- ghidra.app.util.FileOpenDropHandler
-
- All Implemented Interfaces:
Droppable,DropTargetHandler,java.awt.event.ContainerListener,java.util.EventListener
public class FileOpenDropHandler extends java.lang.Object implements DropTargetHandler, Droppable, java.awt.event.ContainerListener
Handles drag/drop events on a given component such that a file dropped on the component from the front end tool will cause that file to be opened. Properly handles drop events with child components and listens for components being added/removed in order to properly support drag/drop with all components.
-
-
Constructor Summary
Constructors Constructor Description FileOpenDropHandler(PluginTool tool, java.awt.Component component)Construct a new FileOpenDropHandler.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description voidadd(java.lang.Object obj, java.awt.dnd.DropTargetDropEvent e, java.awt.datatransfer.DataFlavor f)Add the object to the droppable component.static voidaddDataFlavorHandler(java.awt.datatransfer.DataFlavor dataFlavor, FileOpenDataFlavorHandler handler)voidcomponentAdded(java.awt.event.ContainerEvent e)voidcomponentRemoved(java.awt.event.ContainerEvent e)voiddispose()Dispose this drop handler.voiddragUnderFeedback(boolean ok, java.awt.dnd.DropTargetDragEvent e)Set drag feedback according to the ok parameterbooleanisDropOk(java.awt.dnd.DropTargetDragEvent e)Return true if is OK to drop the transferable at the location specified the eventstatic FileOpenDataFlavorHandlerremoveDataFlavorHandler(java.awt.datatransfer.DataFlavor dataFlavor)voidundoDragUnderFeedback()Revert back to normal if any drag feedback was set
-
-
-
Constructor Detail
-
FileOpenDropHandler
public FileOpenDropHandler(PluginTool tool, java.awt.Component component)
Construct a new FileOpenDropHandler.- Parameters:
tool- plugin toolcomponent- component that is the drop target
-
-
Method Detail
-
dispose
public void dispose()
Dispose this drop handler.- Specified by:
disposein interfaceDropTargetHandler
-
isDropOk
public boolean isDropOk(java.awt.dnd.DropTargetDragEvent e)
Description copied from interface:DroppableReturn true if is OK to drop the transferable at the location specified the event
-
add
public void add(java.lang.Object obj, java.awt.dnd.DropTargetDropEvent e, java.awt.datatransfer.DataFlavor f)Description copied from interface:DroppableAdd the object to the droppable component. The DropTargetAdapter calls this method from its drop() method.
-
dragUnderFeedback
public void dragUnderFeedback(boolean ok, java.awt.dnd.DropTargetDragEvent e)Description copied from interface:DroppableSet drag feedback according to the ok parameter- Specified by:
dragUnderFeedbackin interfaceDroppable- Parameters:
ok- true means the drop action is OKe- event that has current state of drag and drop operation
-
undoDragUnderFeedback
public void undoDragUnderFeedback()
Description copied from interface:DroppableRevert back to normal if any drag feedback was set- Specified by:
undoDragUnderFeedbackin interfaceDroppable
-
componentAdded
public void componentAdded(java.awt.event.ContainerEvent e)
- Specified by:
componentAddedin interfacejava.awt.event.ContainerListener
-
componentRemoved
public void componentRemoved(java.awt.event.ContainerEvent e)
- Specified by:
componentRemovedin interfacejava.awt.event.ContainerListener
-
addDataFlavorHandler
public static void addDataFlavorHandler(java.awt.datatransfer.DataFlavor dataFlavor, FileOpenDataFlavorHandler handler)
-
removeDataFlavorHandler
public static FileOpenDataFlavorHandler removeDataFlavorHandler(java.awt.datatransfer.DataFlavor dataFlavor)
-
-