// License: GPL. For details, see LICENSE file. package org.openstreetmap.josm.gui.datatransfer.importers; import java.awt.datatransfer.DataFlavor; import java.awt.datatransfer.UnsupportedFlavorException; import java.io.File; import java.io.IOException; import java.util.List; import javax.swing.TransferHandler.TransferSupport; import org.openstreetmap.josm.Main; import org.openstreetmap.josm.actions.OpenFileAction; import org.openstreetmap.josm.data.coor.EastNorth; import org.openstreetmap.josm.gui.layer.OsmDataLayer; /** * This transfer support allows us to import a file that is dropped / copied on to the map. * @author Michael Zangl * @since 10604 */ public final class FilePaster extends AbstractOsmDataPaster { /** * Create a new {@link FilePaster} */ public FilePaster() { super(DataFlavor.javaFileListFlavor); } @Override public boolean importData(TransferSupport support, OsmDataLayer layer, EastNorth pasteAt) throws UnsupportedFlavorException, IOException { @SuppressWarnings("unchecked") List<File> files = (List<File>) support.getTransferable().getTransferData(df); OpenFileAction.OpenFileTask task = new OpenFileAction.OpenFileTask(files, null); task.setRecordHistory(true); Main.worker.submit(task); return true; } }