Last change
on this file since 10604 was 10604, checked in by Don-vip, 8 years ago |
fix #12478, fix #12565, fix #11114 - Use Swing Copy/Paste instead of CopyAction/PasteAction with custom buffer (patch by michael2402, modified) - gsoc-core
|
File size:
1.2 KB
|
Line | |
---|
1 | // License: GPL. For details, see LICENSE file.
|
---|
2 | package org.openstreetmap.josm.gui.datatransfer.importers;
|
---|
3 |
|
---|
4 | import java.awt.datatransfer.DataFlavor;
|
---|
5 | import java.awt.datatransfer.UnsupportedFlavorException;
|
---|
6 | import java.io.IOException;
|
---|
7 | import java.util.Map;
|
---|
8 |
|
---|
9 | import javax.swing.TransferHandler.TransferSupport;
|
---|
10 |
|
---|
11 | import org.openstreetmap.josm.Main;
|
---|
12 | import org.openstreetmap.josm.tools.TextTagParser;
|
---|
13 |
|
---|
14 | /**
|
---|
15 | * This transfer support allows us to import tags from the text that was copied to the clipboard.
|
---|
16 | * @author Michael Zangl
|
---|
17 | * @since 10604
|
---|
18 | */
|
---|
19 | public final class TextTagPaster extends AbstractTagPaster {
|
---|
20 |
|
---|
21 | /**
|
---|
22 | * Create a new {@link TextTagPaster}
|
---|
23 | */
|
---|
24 | public TextTagPaster() {
|
---|
25 | super(DataFlavor.stringFlavor);
|
---|
26 | }
|
---|
27 |
|
---|
28 | @Override
|
---|
29 | public boolean supports(TransferSupport support) {
|
---|
30 | try {
|
---|
31 | return super.supports(support) && getTags(support) != null;
|
---|
32 | } catch (UnsupportedFlavorException | IOException e) {
|
---|
33 | Main.warn(e);
|
---|
34 | return false;
|
---|
35 | }
|
---|
36 | }
|
---|
37 |
|
---|
38 | @Override
|
---|
39 | protected Map<String, String> getTags(TransferSupport support) throws UnsupportedFlavorException, IOException {
|
---|
40 | return TextTagParser.readTagsFromText((String) support.getTransferable().getTransferData(df));
|
---|
41 | }
|
---|
42 | }
|
---|
Note:
See
TracBrowser
for help on using the repository browser.