Changes in / [6319:6318] in josm


Ignore:
File:
1 edited

Legend:

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

    r6319 r6318  
    1515import java.beans.PropertyChangeEvent;
    1616import java.beans.PropertyChangeListener;
    17 import java.util.ArrayList;
    1817import java.util.Collections;
    1918import java.util.EventObject;
    20 import java.util.List;
    21 import java.util.Map;
    2219import java.util.concurrent.CopyOnWriteArrayList;
    2320
     
    3835
    3936import org.openstreetmap.josm.Main;
    40 import org.openstreetmap.josm.actions.PasteTagsAction;
     37import org.openstreetmap.josm.actions.PasteTagsAction.TagPaster;
    4138import org.openstreetmap.josm.data.osm.OsmPrimitive;
    42 import org.openstreetmap.josm.data.osm.PrimitiveData;
    4339import org.openstreetmap.josm.data.osm.Relation;
    44 import org.openstreetmap.josm.data.osm.Tag;
    4540import org.openstreetmap.josm.gui.dialogs.relation.RunnableAction;
    46 import static org.openstreetmap.josm.gui.help.HelpUtil.ht;
    4741import org.openstreetmap.josm.gui.tagging.ac.AutoCompletionList;
    4842import org.openstreetmap.josm.gui.tagging.ac.AutoCompletionManager;
    4943import org.openstreetmap.josm.tools.ImageProvider;
    50 import org.openstreetmap.josm.tools.TextTagParser;
    51 import org.openstreetmap.josm.tools.Utils;
    5244
    5345/**
     
    332324            Relation relation = new Relation();
    333325            model.applyToPrimitive(relation);
    334            
    335             String buf = Utils.getClipboardContent();
    336             if (buf == null || buf.isEmpty() || buf.matches("(\\d+,)*\\d+")) {
    337                 List<PrimitiveData> directlyAdded = Main.pasteBuffer.getDirectlyAdded();
    338                 if (directlyAdded==null || directlyAdded.isEmpty()) return;
    339                 PasteTagsAction.TagPaster tagPaster = new PasteTagsAction.TagPaster(directlyAdded, Collections.<OsmPrimitive>singletonList(relation));
    340                 model.updateTags(tagPaster.execute());
    341             } else {
    342                 // Paste tags from arbitrary text
    343                  Map<String, String> tags = TextTagParser.readTagsFromText(buf);
    344                  if (tags==null || tags.isEmpty()) {
    345                     TextTagParser.showBadBufferMessage(ht("/Action/PasteTags"));
    346                  } else if (TextTagParser.validateTags(tags)) {
    347                      List<Tag> newTags = new ArrayList<Tag>();
    348                      for (Map.Entry<String, String> entry: tags.entrySet()) {
    349                         String k = entry.getKey();
    350                         String v = entry.getValue();
    351                         newTags.add(new Tag(k,v));
    352                      }
    353                      model.updateTags(newTags);
    354                  }
    355             }
    356         }
    357        
     326            TagPaster tagPaster = new TagPaster(Main.pasteBuffer.getDirectlyAdded(), Collections.<OsmPrimitive>singletonList(relation));
     327            model.updateTags(tagPaster.execute());
     328        }
     329
    358330        protected void updateEnabledState() {
    359331            setEnabled(TagTable.this.isEnabled());
Note: See TracChangeset for help on using the changeset viewer.