Overview | Package | Class | Tree | Deprecated | Index | Help
| Copyright 2012-04-26 Werner Randelshofer
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.monte.media.gui.datatransfer
Class FileTextFieldTransferHandler

    java.lang.Object
      javax.swing.TransferHandler
          org.monte.media.gui.datatransfer.FileTextFieldTransferHandler

All Implemented Interfaces:
  java.io.Serializable

    public class FileTextFieldTransferHandler

extends javax.swing.TransferHandler

The FileTextFieldTransferHandler can be used to add drag and drop support for JTextFields, which contain the path to a file.

Version:
  1.2 2010-10-03 Adds support for file filter.
  1.1 2008-12-03 Added file selection mode.
  1.0 September 8, 2007 Created.
Author:
  Werner Randelshofer
See Also:
  Serialized Form

Nested Class Summary

Nested classes/interfaces inherited from class javax.swing.TransferHandler
`javax.swing.TransferHandler.DropLocation, javax.swing.TransferHandler.TransferSupport`

Field Summary

Fields inherited from class javax.swing.TransferHandler
`COPY, COPY_OR_MOVE, LINK, MOVE, NONE`

Constructor Summary
`FileTextFieldTransferHandler()` Creates a new instance.
`FileTextFieldTransferHandler(int fileSelectionMode)` Creates a new instance.
`FileTextFieldTransferHandler(int fileSelectionMode, java.io.FileFilter filter)` Creates a new instance.

Method Summary
`boolean` | `canImport(javax.swing.JComponent comp, java.awt.datatransfer.DataFlavor[] transferFlavors)`
`protected java.awt.datatransfer.Transferable` | `createTransferable(javax.swing.JComponent comp)`
`protected void` | `exportDone(javax.swing.JComponent comp, java.awt.datatransfer.Transferable data, int action)` This method is called after data has been exported.
`java.io.FileFilter` | `getFileFilter()`
`protected java.awt.datatransfer.DataFlavor` | `getImportFlavor(java.awt.datatransfer.DataFlavor[] flavors, javax.swing.text.JTextComponent c)` Try to find a flavor that can be used to import a Transferable.
`int` | `getSourceActions(javax.swing.JComponent comp)` This is the type of transfer actions supported by the source.
`protected void` | `handleReaderImport(java.io.Reader in, javax.swing.text.JTextComponent c, boolean useRead)` Import the given stream data into the text component.
`boolean` | `importData(javax.swing.JComponent comp, java.awt.datatransfer.Transferable t)`
`void` | `setFileFilter(java.io.FileFilter fileFilter)`

Methods inherited from class javax.swing.TransferHandler
`canImport, exportAsDrag, exportToClipboard, getCopyAction, getCutAction, getPasteAction, getVisualRepresentation, importData`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### FileTextFieldTransferHandler

    public FileTextFieldTransferHandler()

  Creates a new instance.

### FileTextFieldTransferHandler

    public FileTextFieldTransferHandler(int fileSelectionMode)

  Creates a new instance.

  Parameters:
    `fileSelectionMode` - JFileChooser file selection mode.

### FileTextFieldTransferHandler

    public FileTextFieldTransferHandler(int fileSelectionMode,
                                        java.io.FileFilter filter)

  Creates a new instance.

  Parameters:
    `fileSelectionMode` - JFileChooser file selection mode.

Method Detail

### importData

    public boolean importData(javax.swing.JComponent comp,
                              java.awt.datatransfer.Transferable t)

  Overrides:
    `importData` in class `javax.swing.TransferHandler`

### createTransferable

    protected java.awt.datatransfer.Transferable createTransferable(javax.swing.JComponent comp)

  Overrides:
    `createTransferable` in class `javax.swing.TransferHandler`

### canImport

    public boolean canImport(javax.swing.JComponent comp,
                             java.awt.datatransfer.DataFlavor[] transferFlavors)

  Overrides:
    `canImport` in class `javax.swing.TransferHandler`

### getImportFlavor

    protected java.awt.datatransfer.DataFlavor getImportFlavor(java.awt.datatransfer.DataFlavor[] flavors,
                                                               javax.swing.text.JTextComponent c)

  Try to find a flavor that can be used to import a Transferable. The set of usable flavors are tried in the following order:
  1. First, an attempt to find a text/plain flavor is made.
  2. Second, an attempt to find a flavor representing a String reference in the same VM is made.
  3. Lastly, DataFlavor.stringFlavor is searched for.

### handleReaderImport

    protected void handleReaderImport(java.io.Reader in,
                                      javax.swing.text.JTextComponent c,
                                      boolean useRead)
                               throws javax.swing.text.BadLocationException,
                                      java.io.IOException

  Import the given stream data into the text component.

  Throws:
    `javax.swing.text.BadLocationException`
    `java.io.IOException`

### getSourceActions

    public int getSourceActions(javax.swing.JComponent comp)

  This is the type of transfer actions supported by the source. Some models are not mutable, so a transfer operation of COPY only should be advertised in that case.

  Overrides:
    `getSourceActions` in class `javax.swing.TransferHandler`
  Parameters:
    `comp` - The component holding the data to be transfered. This argument is provided to enable sharing of TransferHandlers by multiple components.
  Returns:
    This is implemented to return NONE if the component is a JPasswordField since exporting data via user gestures is not allowed. If the text component is editable, COPY_OR_MOVE is returned, otherwise just COPY is allowed.

### exportDone

    protected void exportDone(javax.swing.JComponent comp,
                              java.awt.datatransfer.Transferable data,
                              int action)

  This method is called after data has been exported. This method should remove the data that was transfered if the action was MOVE.

  Overrides:
    `exportDone` in class `javax.swing.TransferHandler`
  Parameters:
    `comp` - The component that was the source of the data.
    `data` - The data that was transferred or possibly null if the action is `NONE`.
    `action` - The actual action that was performed.

### getFileFilter

    public java.io.FileFilter getFileFilter()

  Returns:
    the fileFilter

### setFileFilter

    public void setFileFilter(java.io.FileFilter fileFilter)

  Parameters:
    `fileFilter` - the fileFilter to set

Overview | Package | Class | Tree | Deprecated | Index | Help
| Copyright 2012-04-26 Werner Randelshofer
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD