Ignore:
Timestamp:
2011-08-29T09:46:27+02:00 (13 years ago)
Author:
simon04
Message:

fix #4609 - copy node coordinate to clipboard

Location:
trunk/src/org/openstreetmap/josm/gui
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/org/openstreetmap/josm/gui/MainMenu.java

    r4266 r4380  
    2424import org.openstreetmap.josm.actions.CombineWayAction;
    2525import org.openstreetmap.josm.actions.CopyAction;
     26import org.openstreetmap.josm.actions.CopyCoordinatesAction;
    2627import org.openstreetmap.josm.actions.CreateCircleAction;
    2728import org.openstreetmap.josm.actions.CreateMultipolygonAction;
     
    125126    public final RedoAction redo = new RedoAction();
    126127    public final JosmAction copy = new CopyAction();
     128    public final JosmAction copyCoordinates = new CopyCoordinatesAction();
    127129    public final PasteAction paste = new PasteAction();
    128130    public final JosmAction pasteTags = new PasteTagsAction();
     
    257259        editMenu.addSeparator();
    258260        add(editMenu, copy);
     261        add(editMenu, copyCoordinates);
    259262        add(editMenu, paste);
    260263        add(editMenu, pasteTags);
  • trunk/src/org/openstreetmap/josm/gui/download/BoundingBoxSelection.java

    r3424 r4380  
    88import java.awt.GridBagLayout;
    99import java.awt.Toolkit;
    10 import java.awt.datatransfer.DataFlavor;
    1110import java.awt.datatransfer.FlavorEvent;
    1211import java.awt.datatransfer.FlavorListener;
    13 import java.awt.datatransfer.Transferable;
    14 import java.awt.datatransfer.UnsupportedFlavorException;
    1512import java.awt.event.ActionEvent;
    1613import java.awt.event.ActionListener;
     
    1916import java.awt.event.MouseAdapter;
    2017import java.awt.event.MouseEvent;
    21 import java.io.IOException;
    2218
    2319import javax.swing.AbstractAction;
     
    4036import org.openstreetmap.josm.tools.ImageProvider;
    4137import org.openstreetmap.josm.tools.OsmUrlToBounds;
     38import org.openstreetmap.josm.tools.Utils;
    4239
    4340/**
     
    306303        }
    307304
    308         protected String getClipboardContent() {
    309             Transferable t = Toolkit.getDefaultToolkit().getSystemClipboard().getContents(null);
    310             try {
    311                 if (t != null && t.isDataFlavorSupported(DataFlavor.stringFlavor)) {
    312                     String text = (String)t.getTransferData(DataFlavor.stringFlavor);
    313                     return text;
    314                 }
    315             } catch (UnsupportedFlavorException ex) {
    316                 ex.printStackTrace();
    317                 return null;
    318             } catch (IOException ex) {
    319                 ex.printStackTrace();
    320                 return null;
    321             }
    322             return null;
    323         }
    324 
    325305        public void actionPerformed(ActionEvent e) {
    326             String content = getClipboardContent();
     306            String content = Utils.getClipboardContent();
    327307            if (content != null) {
    328308                tfOsmUrl.setText(content);
     
    331311
    332312        protected void updateEnabledState() {
    333             setEnabled(getClipboardContent() != null);
     313            setEnabled(Utils.getClipboardContent() != null);
    334314        }
    335315
  • trunk/src/org/openstreetmap/josm/gui/download/DownloadDialog.java

    r4191 r4380  
    1313import java.awt.GridBagConstraints;
    1414import java.awt.GridBagLayout;
    15 import java.awt.Toolkit;
    16 import java.awt.datatransfer.DataFlavor;
    17 import java.awt.datatransfer.Transferable;
    1815import java.awt.event.ActionEvent;
    1916import java.awt.event.InputEvent;
     
    4441import org.openstreetmap.josm.tools.ImageProvider;
    4542import org.openstreetmap.josm.tools.OsmUrlToBounds;
     43import org.openstreetmap.josm.tools.Utils;
    4644import org.openstreetmap.josm.tools.WindowGeometry;
    4745
     
    183181        getRootPane().getActionMap().put("checkClipboardContents", new AbstractAction() {
    184182            public void actionPerformed(ActionEvent e) {
    185                 checkClipboardContents();
     183                String clip = Utils.getClipboardContent();
     184                if (clip == null) {
     185                    return;
     186                }
     187                Bounds b = OsmUrlToBounds.parse(clip);
     188                if (b != null) {
     189                    boundingBoxChanged(new Bounds(b), null);
     190                }
    186191            }
    187192        });
     
    189194        addWindowListener(new WindowEventHandler());
    190195        restoreSettings();
    191     }
    192 
    193     private void checkClipboardContents() {
    194         String result = "";
    195         Transferable contents = Toolkit.getDefaultToolkit().getSystemClipboard().getContents(null);
    196 
    197         if(contents == null || !contents.isDataFlavorSupported(DataFlavor.stringFlavor))
    198             return;
    199 
    200         try {
    201             result = (String)contents.getTransferData(DataFlavor.stringFlavor);
    202         }
    203         catch(Exception ex) {
    204             return;
    205         }
    206 
    207         Bounds b = OsmUrlToBounds.parse(result);
    208         if (b != null) {
    209             boundingBoxChanged(new Bounds(b),null);
    210         }
    211196    }
    212197
  • trunk/src/org/openstreetmap/josm/gui/widgets/BoundingBoxSelectionPanel.java

    r3083 r4380  
    99import java.awt.Insets;
    1010import java.awt.Toolkit;
    11 import java.awt.datatransfer.DataFlavor;
    1211import java.awt.datatransfer.FlavorEvent;
    1312import java.awt.datatransfer.FlavorListener;
    14 import java.awt.datatransfer.Transferable;
    15 import java.awt.datatransfer.UnsupportedFlavorException;
    1613import java.awt.event.ActionEvent;
    1714import java.awt.event.MouseEvent;
    18 import java.io.IOException;
    1915
    2016import javax.swing.AbstractAction;
     
    3531import org.openstreetmap.josm.tools.ImageProvider;
    3632import org.openstreetmap.josm.tools.OsmUrlToBounds;
     33import org.openstreetmap.josm.tools.Utils;
    3734
    3835/**
     
    237234        }
    238235
    239         protected String getClipboardContent() {
    240             Transferable t = Toolkit.getDefaultToolkit().getSystemClipboard().getContents(null);
    241             try {
    242                 if (t != null && t.isDataFlavorSupported(DataFlavor.stringFlavor)) {
    243                     String text = (String)t.getTransferData(DataFlavor.stringFlavor);
    244                     return text;
    245                 }
    246             } catch (UnsupportedFlavorException ex) {
    247                 ex.printStackTrace();
    248                 return null;
    249             } catch (IOException ex) {
    250                 ex.printStackTrace();
    251                 return null;
    252             }
    253             return null;
    254         }
    255 
    256236        public void actionPerformed(ActionEvent e) {
    257             String content = getClipboardContent();
     237            String content = Utils.getClipboardContent();
    258238            if (content != null) {
    259239                tfOsmUrl.setText(content);
     
    262242
    263243        protected void updateEnabledState() {
    264             setEnabled(getClipboardContent() != null);
     244            setEnabled(Utils.getClipboardContent() != null);
    265245        }
    266246
Note: See TracChangeset for help on using the changeset viewer.