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.DataFlavor
df
-
Constructor Summary
Constructors Modifier Constructor Description protected
AbstractOsmDataPaster(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 boolean
importData(javax.swing.TransferHandler.TransferSupport support, OsmDataLayer layer, EastNorth pasteAt)
Attempts to import the given transfer data.boolean
importTagsOn(javax.swing.TransferHandler.TransferSupport support, java.util.Collection<? extends OsmPrimitive> selection)
Imports only if this import changes the tags only.private static boolean
isCopy(javax.swing.TransferHandler.TransferSupport support)
boolean
supports(java.util.Collection<java.awt.datatransfer.DataFlavor> available)
Checks if this supports any of the available flavors.boolean
supports(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:
true
if 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:
true
if 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
-
-