Ignore:
Timestamp:
2013-03-02T09:30:54+01:00 (11 years ago)
Author:
akks
Message:

'JOSM/FastDraw: allow automatic tag adding (Q) '

Location:
applications/editors/josm/plugins/FastDraw
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • applications/editors/josm/plugins/FastDraw/build.xml

    r29263 r29303  
    3030<project name="FastDraw" default="dist" basedir=".">
    3131    <!-- enter the SVN commit message -->
    32     <property name="commit.message" value="JOSM/FastDraw: add option (Q) to draw closed polygons"/>
     32    <property name="commit.message" value="JOSM/FastDraw: allow automatic tag adding (Q) "/>
    3333    <!-- enter the *lowest* JOSM version this plugin is currently compatible with -->
    34     <property name="plugin.main.version" value="5035"/>
     34    <property name="plugin.main.version" value="5738"/>
    3535    <!--
    3636      ************************************************
  • applications/editors/josm/plugins/FastDraw/src/org/openstreetmap/josm/plugins/fastdraw/FDSettings.java

    r29263 r29303  
    3737    public int simplifyMode;
    3838    public float lineWidth;
     39    public String autoTags;
    3940   
    4041    public void loadPrefs() {
     
    5960        simplifyMode = Main.pref.getInteger("fastdraw.simplifymode", 0);
    6061        lineWidth = (float) Main.pref.getDouble("fastdraw.linewidth", 2);
     62        autoTags = Main.pref.get("fastdraw.autotags");
    6163    }
    6264
     
    8284         Main.pref.putInteger("fastdraw.simplifymode", simplifyMode);
    8385         Main.pref.putDouble("fastdraw.linewidth",(double)lineWidth);
     86         Main.pref.put("fastdraw.autotags", autoTags);
    8487         try {Main.pref.save();} catch (IOException e) {
    8588             System.err.println(tr("Can not save preferences"));
  • applications/editors/josm/plugins/FastDraw/src/org/openstreetmap/josm/plugins/fastdraw/FastDrawConfigDialog.java

    r29263 r29303  
    77import java.awt.Component;
    88import java.awt.GridBagLayout;
     9import java.awt.event.ActionEvent;
    910import javax.swing.JOptionPane;
    1011import org.openstreetmap.josm.tools.GBC;
    1112import java.text.NumberFormat;
    1213import java.text.ParseException;
     14import javax.swing.AbstractAction;
     15import javax.swing.JButton;
    1316import org.openstreetmap.josm.Main;
    1417import org.openstreetmap.josm.gui.ExtendedDialog;
     
    1821import javax.swing.JPanel;
    1922import javax.swing.JLabel;
     23import org.openstreetmap.josm.gui.widgets.HistoryComboBox;
     24import org.openstreetmap.josm.io.remotecontrol.AddTagsDialog;
    2025import static org.openstreetmap.josm.tools.I18n.tr;
     26import org.openstreetmap.josm.tools.ImageProvider;
     27import org.openstreetmap.josm.tools.TextTagParser;
     28import org.openstreetmap.josm.tools.Utils;
    2129
    2230public class FastDrawConfigDialog extends ExtendedDialog {
     
    3240        JLabel label3=new JLabel(tr("Max points count per 1 km"));
    3341        JLabel label4=new JLabel(/* I18n: Combobox to select what a press to return key does */ tr("Enter key mode"));
     42        JLabel label5=new JLabel(tr("Auto add tags"));
    3443        JFormattedTextField text1=new JFormattedTextField(NumberFormat.getInstance());
    3544        JFormattedTextField text2=new  JFormattedTextField(NumberFormat.getInstance());
     
    3847//            tr("Autosimplify and save"),tr("Simplify and wait"),tr("Simplify and save"),
    3948//            tr("Save as is")});
    40         JComboBox combo1=new JComboBox(new String[]{tr("Autosimplify"),
     49        JComboBox<String> combo1=new JComboBox(new String[]{tr("Autosimplify"),
    4150            tr("Simplify with initial epsilon"),tr("Save as is")});
    4251        JCheckBox snapCb=new JCheckBox(tr("Snap to nodes"));
     
    4453        JCheckBox fixedSpaceCb = new JCheckBox(tr("Add fixed points on spacebar"));
    4554        JCheckBox drawClosedCb = new JCheckBox(tr("Draw closed polygons only"));
     55        final HistoryComboBox addTags = new HistoryComboBox();
     56        JButton pasteButton = new JButton(new AbstractAction(tr("Paste"), ImageProvider.get("apply")) {
     57            @Override
     58            public void actionPerformed(ActionEvent e) {
     59                String s = Utils.getClipboardContent();
     60                if (TextTagParser.getValidatedTagsFromText(s)!=null) {
     61                    addTags.setText(s);
     62                }
     63            }
     64        });
     65        pasteButton.setToolTipText(tr("Try copying tags from properties table"));
     66       
     67        addTags.setPossibleItems(Main.pref.getCollection("fastdraw.tags-history"));
    4668       
    4769        all.add(label1,GBC.std().insets(10,0,0,0));
     
    5476        all.add(combo1, GBC.eop().fill(GBC.HORIZONTAL).insets(5,0,0,5));
    5577       
     78        all.add(label5,GBC.std().insets(10,0,0,0));
     79        all.add(pasteButton, GBC.eop().insets(0,0,0,5));
     80       
     81        all.add(addTags, GBC.eop().fill(GBC.HORIZONTAL).insets(10,0,5,10));
     82       
    5683        all.add(snapCb,GBC.eop().insets(20,0,0,0));
     84       
    5785        all.add(fixedClickCb,GBC.eop().insets(20,0,0,0));
    5886        all.add(fixedSpaceCb,GBC.eop().insets(20,0,0,0));
    5987        all.add(drawClosedCb,GBC.eop().insets(20,0,0,0));
    6088       
     89        addTags.setText(settings.autoTags);
    6190        text1.setValue(settings.epsilonMult);
    6291        text2.setValue(settings.startingEps);
     
    91120            settings.drawClosed=drawClosedCb.isSelected();
    92121            settings.simplifyMode=combo1.getSelectedIndex();
     122            settings.autoTags=addTags.getText();
     123            addTags.addCurrentItemToHistory();
     124            Main.pref.putCollection("fastdraw.tags-history", addTags.getHistory());
    93125            settings.savePrefs();
    94126            } catch (ParseException e) {
  • applications/editors/josm/plugins/FastDraw/src/org/openstreetmap/josm/plugins/fastdraw/FastDrawingMode.java

    r29263 r29303  
    5151import org.openstreetmap.josm.tools.ImageProvider;
    5252import org.openstreetmap.josm.tools.Shortcut;
     53import org.openstreetmap.josm.tools.TextTagParser;
    5354
    5455class FastDrawingMode extends MapMode implements MapViewPaintable,
     
    610611            }
    611612        }
     613        if (!settings.autoTags.isEmpty()) {
     614            Map<String, String> tags = TextTagParser.readTagsFromText(settings.autoTags);
     615            for (String k: tags.keySet()) {
     616                w.put(k, tags.get(k));
     617            }
     618        }
    612619        if (delCmd!=null) {
    613620            List<Node> nodes = w.getNodes();
Note: See TracChangeset for help on using the changeset viewer.