Class AbstractOsmDataPaster
- java.lang.Object
-
- org.openstreetmap.josm.gui.datatransfer.importers.AbstractOsmDataPaster
-
- Direct Known Subclasses:
AbstractTagPaster,FilePaster,OsmLinkPaster,PrimitiveDataPaster
public abstract class AbstractOsmDataPaster extends java.lang.Object
This is an abstract class that helps implementing the transfer support required by swing.It implements a mechanism to import a given data flavor into the current OSM data layer.
- Since:
- 10604
-
-
Field Summary
Fields Modifier and Type Field Description protected java.awt.datatransfer.DataFlavordf
-
Constructor Summary
Constructors Modifier Constructor Description protectedAbstractOsmDataPaster(java.awt.datatransfer.DataFlavor df)Create a newAbstractOsmDataPaster
-
Method Summary
All Methods Static Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description abstract booleanimportData(javax.swing.TransferHandler.TransferSupport support, OsmDataLayer layer, EastNorth pasteAt)Attempts to import the given transfer data.booleanimportTagsOn(javax.swing.TransferHandler.TransferSupport support, java.util.Collection<? extends OsmPrimitive> selection)Imports only if this import changes the tags only.private static booleanisCopy(javax.swing.TransferHandler.TransferSupport support)booleansupports(java.util.Collection<java.awt.datatransfer.DataFlavor> available)Checks if this supports any of the available flavors.booleansupports(javax.swing.TransferHandler.TransferSupport support)Checks if this supports importing the given transfer support.
-
-
-
Field Detail
-
df
protected final java.awt.datatransfer.DataFlavor df
-
-
Constructor Detail
-
AbstractOsmDataPaster
protected AbstractOsmDataPaster(java.awt.datatransfer.DataFlavor df)
Create a newAbstractOsmDataPaster- Parameters:
df- The data flavor that this support supports.
-
-
Method Detail
-
supports
public boolean supports(javax.swing.TransferHandler.TransferSupport support)
Checks if this supports importing the given transfer support.- Parameters:
support- The support that should be supported.- Returns:
- True if we support that transfer.
-
supports
public boolean supports(java.util.Collection<java.awt.datatransfer.DataFlavor> available)
Checks if this supports any of the available flavors.- Parameters:
available- The flavors that should be supported- Returns:
- True if any of them is supported.
-
isCopy
private static boolean isCopy(javax.swing.TransferHandler.TransferSupport support)
-
importData
public abstract boolean importData(javax.swing.TransferHandler.TransferSupport support, OsmDataLayer layer, EastNorth pasteAt) throws java.awt.datatransfer.UnsupportedFlavorException, java.io.IOException
Attempts to import the given transfer data.- Parameters:
support- The transfer support to import from.layer- The layer to paste at. May be null.pasteAt- The position to paste at.- Returns:
trueif the import was successful.- Throws:
java.awt.datatransfer.UnsupportedFlavorException- if the requested data flavor is not supportedjava.io.IOException- if an I/O error occurs
-
importTagsOn
public boolean importTagsOn(javax.swing.TransferHandler.TransferSupport support, java.util.Collection<? extends OsmPrimitive> selection) throws java.awt.datatransfer.UnsupportedFlavorException, java.io.IOException
Imports only if this import changes the tags only. Does nothing if more than tags would be changed.- Parameters:
support- The supportselection- The primitives to apply on.- Returns:
trueif an import was done.- Throws:
java.awt.datatransfer.UnsupportedFlavorException- if the requested data flavor is not supportedjava.io.IOException- if an I/O error occurs
-
-