public class LayerListTransferHandler extends javax.swing.TransferHandler
It supports copy (duplication) of layers, simple moves and linking layers to a new layer manager.
Constructor and Description |
---|
LayerListTransferHandler() |
Modifier and Type | Method and Description |
---|---|
boolean |
canImport(javax.swing.TransferHandler.TransferSupport support) |
private static java.util.List<Layer> |
createCopy(java.util.List<Layer> layersToUse,
java.util.List<Layer> namesToAvoid) |
protected java.awt.datatransfer.Transferable |
createTransferable(javax.swing.JComponent c) |
private static java.util.List<java.lang.String> |
getNames(java.util.List<Layer> namesToAvoid) |
int |
getSourceActions(javax.swing.JComponent c) |
boolean |
importData(javax.swing.TransferHandler.TransferSupport support) |
private static boolean |
onlyDataLayersSelected(LayerListDialog.LayerListModel tableModel) |
private static java.lang.String |
suggestNewLayerName(java.lang.String name,
java.util.Collection<java.lang.String> layerNames) |
static java.lang.String |
suggestNewLayerName(java.lang.String name,
java.util.List<Layer> namesToAvoid)
Suggests a new name in the form "copy of name"
|
public LayerListTransferHandler()
public int getSourceActions(javax.swing.JComponent c)
getSourceActions
in class javax.swing.TransferHandler
private static boolean onlyDataLayersSelected(LayerListDialog.LayerListModel tableModel)
protected java.awt.datatransfer.Transferable createTransferable(javax.swing.JComponent c)
createTransferable
in class javax.swing.TransferHandler
public boolean canImport(javax.swing.TransferHandler.TransferSupport support)
canImport
in class javax.swing.TransferHandler
public boolean importData(javax.swing.TransferHandler.TransferSupport support)
importData
in class javax.swing.TransferHandler
private static java.util.List<Layer> createCopy(java.util.List<Layer> layersToUse, java.util.List<Layer> namesToAvoid)
public static java.lang.String suggestNewLayerName(java.lang.String name, java.util.List<Layer> namesToAvoid)
name
- The base namenamesToAvoid
- The list of layers to use to avoid duplicate names.private static java.util.List<java.lang.String> getNames(java.util.List<Layer> namesToAvoid)
private static java.lang.String suggestNewLayerName(java.lang.String name, java.util.Collection<java.lang.String> layerNames)