Changeset 2273 in josm


Ignore:
Timestamp:
2009-10-11T16:37:08+02:00 (15 years ago)
Author:
jttt
Message:

Replace testing for id <= 0 with isNew() method

Location:
trunk/src/org/openstreetmap/josm
Files:
36 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/org/openstreetmap/josm/actions/AbstractInfoAction.java

    r2256 r2273  
    108108        Iterator<OsmPrimitive> it = primitivesToShow.iterator();
    109109        while(it.hasNext()) {
    110             if (it.next().getId() == 0) {
     110            if (it.next().isNew()) {
    111111                it.remove();
    112112            }
  • trunk/src/org/openstreetmap/josm/actions/CombineWayAction.java

    r2256 r2273  
    8181        for (Way w : combinedWays) {
    8282            targetWay = w;
    83             if (w.getId() != 0) {
     83            if (!w.isNew()) {
    8484                break;
    8585            }
  • trunk/src/org/openstreetmap/josm/actions/MergeNodesAction.java

    r2256 r2273  
    8989        Node targetNode = null;
    9090        for (Node n: candidates) {
    91             if (n.getId() > 0) {
     91            if (!n.isNew()) {
    9292                targetNode = n;
    9393                break;
  • trunk/src/org/openstreetmap/josm/actions/SaveActionBase.java

    r2070 r2273  
    3636    public boolean doSave() {
    3737        Layer layer = null;
    38         if (layer == null && Main.map != null && (Main.map.mapView.getActiveLayer() instanceof OsmDataLayer
     38        if (Main.map != null && (Main.map.mapView.getActiveLayer() instanceof OsmDataLayer
    3939                || Main.map.mapView.getActiveLayer() instanceof GpxLayer)) {
    4040            layer = Main.map.mapView.getActiveLayer();
     
    140140    private boolean isDataSetEmpty(OsmDataLayer layer) {
    141141        for (OsmPrimitive osm : layer.data.allNonDeletedPrimitives())
    142             if (!osm.isDeleted() || osm.getId() > 0)
     142            if (!osm.isDeleted() || !osm.isNew())
    143143                return false;
    144144        return true;
  • trunk/src/org/openstreetmap/josm/actions/UpdateSelectionAction.java

    r2256 r2273  
    134134     *
    135135     */
    136     class UpdatePrimitivesTask extends PleaseWaitRunnable {
     136    static class UpdatePrimitivesTask extends PleaseWaitRunnable {
    137137        private DataSet ds;
    138138        private boolean canceled;
     
    170170        protected void initMultiFetchReaderWithNodes(MultiFetchServerObjectReader reader) {
    171171            for (OsmPrimitive primitive : toUpdate) {
    172                 if (primitive instanceof Node && primitive.getId() > 0) {
     172                if (primitive instanceof Node && !primitive.isNew()) {
    173173                    reader.append((Node)primitive);
    174174                } else if (primitive instanceof Way) {
    175175                    Way way = (Way)primitive;
    176176                    for (Node node: way.getNodes()) {
    177                         if (node.getId() > 0) {
     177                        if (!node.isNew()) {
    178178                            reader.append(node);
    179179                        }
     
    185185        protected void initMultiFetchReaderWithWays(MultiFetchServerObjectReader reader) {
    186186            for (OsmPrimitive primitive : toUpdate) {
    187                 if (primitive instanceof Way && primitive.getId() > 0) {
     187                if (primitive instanceof Way && !primitive.isNew()) {
    188188                    reader.append((Way)primitive);
    189189                }
     
    193193        protected void initMultiFetchReaderWithRelations(MultiFetchServerObjectReader reader) {
    194194            for (OsmPrimitive primitive : toUpdate) {
    195                 if (primitive instanceof Relation && primitive.getId() > 0) {
     195                if (primitive instanceof Relation && !primitive.isNew()) {
    196196                    reader.append((Relation)primitive);
    197197                }
  • trunk/src/org/openstreetmap/josm/actions/UploadAction.java

    r2255 r2273  
    55
    66import java.awt.event.ActionEvent;
    7 import java.awt.event.ActionListener;
    87import java.awt.event.KeyEvent;
    98import java.io.IOException;
     
    1817import java.util.regex.Pattern;
    1918
    20 import javax.swing.JButton;
    21 import javax.swing.JDialog;
    2219import javax.swing.JOptionPane;
    2320
     
    3835import org.openstreetmap.josm.gui.PleaseWaitRunnable;
    3936import org.openstreetmap.josm.gui.HelpAwareOptionPane.ButtonSpec;
    40 import org.openstreetmap.josm.gui.help.HelpBrowser;
    41 import org.openstreetmap.josm.gui.help.HelpBuilder;
    4237import org.openstreetmap.josm.gui.io.UploadDialog;
    4338import org.openstreetmap.josm.gui.layer.OsmDataLayer;
     
    5348import org.openstreetmap.josm.tools.ImageProvider;
    5449import org.openstreetmap.josm.tools.Shortcut;
    55 import org.openstreetmap.josm.tools.WindowGeometry;
    5650import org.xml.sax.SAXException;
    5751
     
    234228        String lbl = "";
    235229        switch(primitiveType) {
    236             case NODE: lbl =  tr("Synchronize node {0} only", id); break;
    237             case WAY: lbl =  tr("Synchronize way {0} only", id); break;
    238             case RELATION: lbl =  tr("Synchronize relation {0} only", id); break;
     230        case NODE: lbl =  tr("Synchronize node {0} only", id); break;
     231        case WAY: lbl =  tr("Synchronize way {0} only", id); break;
     232        case RELATION: lbl =  tr("Synchronize relation {0} only", id); break;
    239233        }
    240234        ButtonSpec[] spec = new ButtonSpec[] {
     
    280274        );
    281275        switch(ret) {
    282             case 0: synchronizePrimitive(primitiveType, id); break;
    283             case 1: synchronizeDataSet(); break;
    284             default: return;
     276        case 0: synchronizePrimitive(primitiveType, id); break;
     277        case 1: synchronizeDataSet(); break;
     278        default: return;
    285279        }
    286280    }
  • trunk/src/org/openstreetmap/josm/actions/UploadSelectionAction.java

    r2256 r2273  
    6868        HashSet<OsmPrimitive> ret = new HashSet<OsmPrimitive>();
    6969        for (OsmPrimitive p : ds.nodes) {
    70             if (p.isDeleted() && p.getId() > 0 && p.isVisible() && p.isModified()) {
     70            if (p.isDeleted() && !p.isNew() && p.isVisible() && p.isModified()) {
    7171                ret.add(p);
    7272            }
    7373        }
    7474        for (OsmPrimitive p : ds.ways) {
    75             if (p.isDeleted() && p.getId() > 0 && p.isVisible() && p.isModified()) {
     75            if (p.isDeleted() && !p.isNew() && p.isVisible() && p.isModified()) {
    7676                ret.add(p);
    7777            }
    7878        }
    7979        for (OsmPrimitive p : ds.relations) {
    80             if (p.isDeleted() && p.getId() > 0 && p.isVisible() && p.isModified()) {
     80            if (p.isDeleted() && !p.isNew() && p.isVisible() && p.isModified()) {
    8181                ret.add(p);
    8282            }
     
    8888        HashSet<OsmPrimitive> ret = new HashSet<OsmPrimitive>();
    8989        for (OsmPrimitive p: primitives) {
    90             if (p.getId() == 0) {
     90            if (p.isNew()) {
    9191                ret.add(p);
    9292            } else if (p.isVisible() && p.isModified() && !p.incomplete) {
     
    135135    protected boolean hasPrimitivesToDelete(Collection<OsmPrimitive> primitives) {
    136136        for (OsmPrimitive p: primitives)
    137             if (p.isDeleted() && p.isModified() && p.getId() > 0)
     137            if (p.isDeleted() && p.isModified() && !p.isNew())
    138138                return true;
    139139        return false;
     
    188188
    189189        public void visit(Node n) {
    190             if (n.getId() == 0 || ((n.isModified() || n.isDeleted()) && n.isVisible())) {
     190            if (n.isNew() || ((n.isModified() || n.isDeleted()) && n.isVisible())) {
    191191                // upload new nodes as well as modified and deleted ones
    192192                hull.add(n);
     
    195195
    196196        public void visit(Way w) {
    197             if (w.getId() == 0 || ((w.isModified() || w.isDeleted()) && w.isVisible())) {
     197            if (w.isNew() || ((w.isModified() || w.isDeleted()) && w.isVisible())) {
    198198                // upload new ways as well as modified and deleted ones
    199199                hull.add(w);
     
    207207
    208208        public void visit(Relation r) {
    209             if (r.getId() == 0 || ((r.isModified() || r.isDeleted()) && r.isVisible())) {
     209            if (r.isNew() || ((r.isModified() || r.isDeleted()) && r.isVisible())) {
    210210                hull.add(r);
    211211                for (OsmPrimitive p : r.getMemberPrimitives()) {
     
    214214                    // so wont check here for deleted primitives here
    215215                    //
    216                     if (p.getId() == 0) {
     216                    if (p.isNew()) {
    217217                        p.visit(this);
    218218                    }
     
    297297            HashSet<OsmPrimitive> ret = new HashSet<OsmPrimitive>();
    298298            for (OsmPrimitive p: toUpload) {
    299                 if (p.isDeleted() && p.getId() >0) {
     299                if (p.isDeleted() && !p.isNew()) {
    300300                    ret.add(p);
    301301                }
  • trunk/src/org/openstreetmap/josm/actions/downloadtasks/DownloadOsmTaskList.java

    r2253 r2273  
    155155        HashSet<OsmPrimitive> ret = new HashSet<OsmPrimitive>();
    156156        for (OsmPrimitive primitive : ds.nodes) {
    157             if (!primitive.incomplete && primitive.getId() == 0) {
     157            if (!primitive.incomplete && primitive.isNew()) {
    158158                ret.add(primitive);
    159159            }
    160160        }
    161161        for (OsmPrimitive primitive : ds.ways) {
    162             if (! primitive.incomplete && primitive.getId() == 0) {
     162            if (! primitive.incomplete && primitive.isNew()) {
    163163                ret.add(primitive);
    164164            }
    165165        }
    166166        for (OsmPrimitive primitive : ds.relations) {
    167             if (! primitive.incomplete && primitive.getId() == 0) {
     167            if (! primitive.incomplete && primitive.isNew()) {
    168168                ret.add(primitive);
    169169            }
  • trunk/src/org/openstreetmap/josm/actions/search/SearchCompiler.java

    r2264 r2273  
    3333    private String  rxErrorMsg = marktr("The regex \"{0}\" had a parse error at offset {1}, full error:\n\n{2}");
    3434    private PushbackTokenizer tokenizer;
    35     private static CollectBackReferencesVisitor childBackRefs;
     35    private CollectBackReferencesVisitor childBackRefs;
    3636
    3737    public SearchCompiler(boolean caseSensitive, boolean regexSearch, PushbackTokenizer tokenizer) {
     
    230230
    231231            switch (mode) {
    232                 case NONE:
    233                     return false;
    234                 case MISSING_KEY:
    235                     return osm.get(key) == null;
    236                 case ANY:
    237                     return true;
    238                 case ANY_VALUE:
    239                     return osm.get(key) != null;
    240                 case ANY_KEY:
    241                     for (String v:osm.getKeys().values()) {
    242                         if (v.equals(value))
     232            case NONE:
     233                return false;
     234            case MISSING_KEY:
     235                return osm.get(key) == null;
     236            case ANY:
     237                return true;
     238            case ANY_VALUE:
     239                return osm.get(key) != null;
     240            case ANY_KEY:
     241                for (String v:osm.getKeys().values()) {
     242                    if (v.equals(value))
     243                        return true;
     244                }
     245                return false;
     246            case EXACT:
     247                return value.equals(osm.get(key));
     248            case ANY_KEY_REGEXP:
     249                for (String v:osm.getKeys().values()) {
     250                    if (valuePattern.matcher(v).matches())
     251                        return true;
     252                }
     253                return false;
     254            case ANY_VALUE_REGEXP:
     255            case EXACT_REGEXP:
     256                for (Entry<String, String> entry:osm.entrySet()) {
     257                    if (keyPattern.matcher(entry.getKey()).matches()) {
     258                        if (mode == Mode.ANY_VALUE_REGEXP
     259                                || valuePattern.matcher(entry.getValue()).matches())
    243260                            return true;
    244261                    }
    245                     return false;
    246                 case EXACT:
    247                     return value.equals(osm.get(key));
    248                 case ANY_KEY_REGEXP:
    249                     for (String v:osm.getKeys().values()) {
    250                         if (valuePattern.matcher(v).matches())
    251                             return true;
    252                     }
    253                     return false;
    254                 case ANY_VALUE_REGEXP:
    255                 case EXACT_REGEXP:
    256                     for (Entry<String, String> entry:osm.entrySet()) {
    257                         if (keyPattern.matcher(entry.getKey()).matches()) {
    258                             if (mode == Mode.ANY_VALUE_REGEXP
    259                                     || valuePattern.matcher(entry.getValue()).matches())
    260                                 return true;
    261                         }
    262                     }
    263                     return false;
    264                 case MISSING_KEY_REGEXP:
    265                     for (String k:osm.keySet()) {
    266                         if (keyPattern.matcher(k).matches())
    267                             return false;
    268                     }
    269                     return true;
     262                }
     263                return false;
     264            case MISSING_KEY_REGEXP:
     265                for (String k:osm.keySet()) {
     266                    if (keyPattern.matcher(k).matches())
     267                        return false;
     268                }
     269                return true;
    270270            }
    271271            throw new AssertionError("Missed state");
     
    417417    private static class Modified extends Match {
    418418        @Override public boolean match(OsmPrimitive osm) {
    419             return osm.isModified() || osm.getId() == 0;
     419            return osm.isModified() || osm.isNew();
    420420        }
    421421        @Override public String toString() {return "modified";}
     
    473473
    474474    private static class Child extends Match {
    475         private Match parent;
    476         public Child(Match m) { parent = m; }
    477         @Override public boolean match(OsmPrimitive osm) throws ParseError {
     475        private final Match parent;
     476        private final CollectBackReferencesVisitor childBackRefs;
     477
     478        public Child(Match m, CollectBackReferencesVisitor childBackRefs) {
    478479            // "child" (null) should mean the same as "child()"
    479480            // (Always). I.e. match everything
    480             if (parent == null) {
     481            if (m == null) {
    481482                parent = new Always();
    482             }
    483 
     483            } else {
     484                parent = m;
     485            }
     486            this.childBackRefs = childBackRefs;
     487        }
     488
     489        @Override public boolean match(OsmPrimitive osm) throws ParseError {
    484490            boolean isChild = false;
    485491            childBackRefs.initialize();
     
    592598            return new Selected();
    593599        else if (tok.equals("child"))
    594             return new Child(parseParens());
     600            return new Child(parseParens(), childBackRefs);
    595601        else if (tok.equals("parent"))
    596602            return new Parent(parseParens());
  • trunk/src/org/openstreetmap/josm/actions/upload/CyclicUploadDependencyException.java

    r2168 r2273  
    2222        if (r.getName() != null) {
    2323            sb.append("'").append(r.getName()).append("'");
    24         } else if (r.getId() > 0) {
     24        } else if (!r.isNew()) {
    2525            sb.append(r.getId());
    2626        } else {
  • trunk/src/org/openstreetmap/josm/command/DeleteCommand.java

    r2173 r2273  
    109109            String msg = "";
    110110            switch(OsmPrimitiveType.from(primitive)) {
    111                 case NODE: msg = "Delete node {0}"; break;
    112                 case WAY: msg = "Delete way {0}"; break;
    113                 case RELATION:msg = "Delete relation {0}"; break;
     111            case NODE: msg = "Delete node {0}"; break;
     112            case WAY: msg = "Delete way {0}"; break;
     113            case RELATION:msg = "Delete relation {0}"; break;
    114114            }
    115115
     
    130130            apiname = t.getAPIName();
    131131            switch(t) {
    132                 case NODE: msg = trn("Delete {0} node", "Delete {0} nodes", toDelete.size(), toDelete.size()); break;
    133                 case WAY: msg = trn("Delete {0} way", "Delete {0} ways", toDelete.size(), toDelete.size()); break;
    134                 case RELATION: msg = trn("Delete {0} relation", "Delete {0} relations", toDelete.size(), toDelete.size()); break;
     132            case NODE: msg = trn("Delete {0} node", "Delete {0} nodes", toDelete.size(), toDelete.size()); break;
     133            case WAY: msg = trn("Delete {0} way", "Delete {0} ways", toDelete.size(), toDelete.size()); break;
     134            case RELATION: msg = trn("Delete {0} relation", "Delete {0} relations", toDelete.size(), toDelete.size()); break;
    135135            }
    136136        }
     
    185185            return 1;
    186186
    187         String role = new String();
     187        String role = "";
    188188        for (RelationMember m : ref.getMembers()) {
    189189            if (m.getMember() == osm) {
     
    399399            }
    400400            Way w = (Way) primitive;
    401             if (w.getId() == 0) { // new ways with id == 0 are fine,
     401            if (w.isNew()) { // new ways with id == 0 are fine,
    402402                continue; // process existing ways only
    403403            }
     
    407407            // nodes ...
    408408            for (Node n : wnew.getNodes()) {
    409                 if (n.getId() != 0 || !primitivesToDelete.contains(n)) {
     409                if (!n.isNew() || !primitivesToDelete.contains(n)) {
    410410                    nodesToKeep.add(n);
    411411                }
     
    470470        if (a != null) {
    471471            for (OsmPrimitive osm : primitivesToDelete) {
    472                 if (osm instanceof Node && osm.getId() != 0) {
     472                if (osm instanceof Node && !osm.isNew()) {
    473473                    Node n = (Node) osm;
    474474                    if (!a.contains(n.getCoor())) {
  • trunk/src/org/openstreetmap/josm/data/APIDataSet.java

    r2250 r2273  
    5858                continue;
    5959            }
    60             if (osm.getId() == 0 && !osm.isDeleted()) {
     60            if (osm.isNew() && !osm.isDeleted()) {
    6161                toAdd.addLast(osm);
    6262            } else if (osm.isModified() && !osm.isDeleted()) {
    6363                toUpdate.addLast(osm);
    64             } else if (osm.isDeleted() && osm.getId() != 0 && osm.isModified()) {
     64            } else if (osm.isDeleted() && !osm.isNew() && osm.isModified()) {
    6565                toDelete.addFirst(osm);
    6666            }
     
    119119        toDelete.clear();
    120120        for (OsmPrimitive osm: primitives) {
    121             if (osm.getId() == 0 && !osm.isDeleted()) {
     121            if (osm.isNew() && !osm.isDeleted()) {
    122122                toAdd.addLast(osm);
    123123            } else if (osm.isModified() && !osm.isDeleted()) {
    124124                toUpdate.addLast(osm);
    125             } else if (osm.isDeleted() && osm.getId() != 0 && osm.isModified()) {
     125            } else if (osm.isDeleted() && !osm.isNew() && osm.isModified()) {
    126126                toDelete.addFirst(osm);
    127127            }
     
    216216            boolean refersToNewRelation = false;
    217217            for (RelationMember m : relation.getMembers()) {
    218                 if (m.isRelation() && m.getMember().getId() <= 0) {
     218                if (m.isRelation() && m.getMember().isNew()) {
    219219                    refersToNewRelation = true;
    220220                    break;
     
    253253            this.relations = new HashSet<Relation>();
    254254            for(Relation relation: relations) {
    255                 if (relation.getId() > 0 ) {
     255                if (!relation.isNew() ) {
    256256                    continue;
    257257                }
    258258                this.relations.add(relation);
    259259                for (RelationMember m: relation.getMembers()) {
    260                     if (m.isRelation() && m.getMember().getId() == 0) {
     260                    if (m.isRelation() && m.getMember().isNew()) {
    261261                        addDependency(relation, (Relation)m.getMember());
    262262                    }
     
    306306                    new Comparator<Relation>() {
    307307                        public int compare(Relation o1, Relation o2) {
    308                             return new Integer(uploadOrder.indexOf(o1)).compareTo(uploadOrder.indexOf(o2));
     308                            return Integer.valueOf(uploadOrder.indexOf(o1)).compareTo(uploadOrder.indexOf(o2));
    309309                        }
    310310                    }
  • trunk/src/org/openstreetmap/josm/data/osm/OsmPrimitive.java

    r2264 r2273  
    332332    public long getId() {
    333333        return id;
     334    }
     335
     336    /**
     337     *
     338     * @return True if primitive is new (not yet uploaded the server, id <= 0)
     339     */
     340    public boolean isNew() {
     341        return id <= 0;
    334342    }
    335343
  • trunk/src/org/openstreetmap/josm/data/osm/visitor/CreateOsmChangeVisitor.java

    r2025 r2273  
    5252            osmwriter.visit(n);
    5353        } else {
    54             switchMode((n.getId() == 0) ? "create" : "modify");
     54            switchMode(n.isNew() ? "create" : "modify");
    5555            osmwriter.setWithBody(true);
    5656            osmwriter.visit(n);
     
    6363            osmwriter.visit(w);
    6464        } else {
    65             switchMode((w.getId() == 0) ? "create" : "modify");
     65            switchMode(w.isNew() ? "create" : "modify");
    6666            osmwriter.setWithBody(true);
    6767            osmwriter.visit(w);
     
    7474            osmwriter.visit(r);
    7575        } else {
    76             switchMode((r.getId() == 0) ? "create" : "modify");
     76            switchMode(r.isNew() ? "create" : "modify");
    7777            osmwriter.setWithBody(true);
    7878            osmwriter.visit(r);
  • trunk/src/org/openstreetmap/josm/data/osm/visitor/MergeSourceBuildingVisitor.java

    r2181 r2273  
    123123            clone = new Relation(primitive.getId());
    124124        }
    125         clone.incomplete = true;
    126125        mappedPrimitives.put(primitive, clone);
    127126    }
     
    173172        // ... and the way itself
    174173        rememberWay(w);
    175     }
    176 
    177     protected boolean isNew(OsmPrimitive primitive) {
    178         return primitive.getId() == 0;
    179174    }
    180175
     
    202197                if (isInSelectionBase(node)) {
    203198                    rememberNode(node);
    204                 } else if (isNew(node)) {
     199                } else if (node.isNew()) {
    205200                    rememberNode(node);
    206201                } else  {
     
    211206                if (isInSelectionBase(way)) {
    212207                    way.visit(this);
    213                 } else if (isNew(way)) {
     208                } else if (way.isNew()) {
    214209                    way.visit(this);
    215210                } else {
     
    220215                if (isInSelectionBase(member.getMember())) {
    221216                    relation.visit(this);
    222                 } else if (isNew(relation)) {
     217                } else if (relation.isNew()) {
    223218                    relation.visit(this);
    224219                } else {
  • trunk/src/org/openstreetmap/josm/data/osm/visitor/MergeVisitor.java

    r2070 r2273  
    6262        this.theirDataSet = theirDataSet;
    6363
    64         for (Node n : myDataSet.nodes) if (n.getId() != 0) {
     64        for (Node n : myDataSet.nodes) if (!n.isNew()) {
    6565            nodeshash.put(n.getId(), n);
    6666        }
    67         for (Way w : myDataSet.ways) if (w.getId() != 0) {
     67        for (Way w : myDataSet.ways) if (!w.isNew()) {
    6868            wayshash.put(w.getId(), w);
    6969        }
    70         for (Relation r : myDataSet.relations) if (r.getId() != 0) {
     70        for (Relation r : myDataSet.relations) if (!r.isNew()) {
    7171            relshash.put(r.getId(), r);
    7272        }
     
    9898            HashMap<Long, P> primitivesWithDefinedIds) {
    9999
    100         if (other.getId() > 0 ) {
     100        if (!other.isNew() ) {
    101101            // try to merge onto a matching primitive with the same
    102102            // defined id
     
    109109            //
    110110            for (P my : myPrimitives) {
    111                 if (my.getId() >0 ) {
     111                if (!my.isNew()) {
    112112                    continue;
    113113                }
  • trunk/src/org/openstreetmap/josm/gui/DefaultNameFormatter.java

    r2136 r2273  
    9797            }
    9898            if (name == null) {
    99                 name = node.getId() == 0 ? tr("node") : ""+ node.getId();
     99                name = node.isNew() ? tr("node") : ""+ node.getId();
    100100            }
    101101            name += " (" + node.getCoor().latToString(CoordinateFormat.getDefaultFormat()) + ", " + node.getCoor().lonToString(CoordinateFormat.getDefaultFormat()) + ")";
  • trunk/src/org/openstreetmap/josm/gui/MapStatus.java

    r2264 r2273  
    320320            // pressed. Cannot use "setSelected()" because it will cause a
    321321            // fireSelectionChanged event which is unnecessary at this point.
    322             if((mods & MouseEvent.SHIFT_DOWN_MASK) == 0)
     322            if((mods & MouseEvent.SHIFT_DOWN_MASK) == 0) {
    323323                ds.clearSelection();
     324            }
    324325
    325326            // This will cycle through the available items.
     
    415416            final StringBuilder text = new StringBuilder();
    416417            String name = osm.getDisplayName(DefaultNameFormatter.getInstance());
    417             if (osm.getId() == 0 || osm.isModified()) {
     418            if (osm.isNew() || osm.isModified()) {
    418419                name = "<i><b>"+ name + "*</b></i>";
    419420            }
    420421            text.append(name);
    421422
    422             if (osm.getId() != 0) {
     423            if (!osm.isNew()) {
    423424                text.append(" [id="+osm.getId()+"]");
    424425            }
  • trunk/src/org/openstreetmap/josm/gui/NavigatableComponent.java

    r2264 r2273  
    318318            // when multiple nodes on one point, prefer new or selected nodes
    319319            else if(dist == minDistanceSq && minPrimitive != null
    320                     && ((n.getId() == 0 && ds.isSelected(n))
    321                             || (!ds.isSelected(minPrimitive) && (ds.isSelected(n) || n.getId() == 0)))) {
     320                    && ((n.isNew() && ds.isSelected(n))
     321                            || (!ds.isSelected(minPrimitive) && (ds.isSelected(n) || n.isNew())))) {
    322322                minPrimitive = n;
    323323            }
  • trunk/src/org/openstreetmap/josm/gui/conflict/pair/nodes/NodeListMergeModel.java

    r2181 r2273  
    7676    @Override
    7777    public boolean isEqualEntry(Node e1, Node e2) {
    78         if (e1.getId() > 0)
     78        if (!e1.isNew())
    7979            return e1.getId() == e2.getId();
    8080        else
  • trunk/src/org/openstreetmap/josm/gui/conflict/pair/properties/PropertiesMergeModel.java

    r2181 r2273  
    212212    public LatLon getMergedCoords() {
    213213        switch(coordMergeDecision) {
    214             case KEEP_MINE: return myCoords;
    215             case KEEP_THEIR: return theirCoords;
    216             case UNDECIDED: return null;
     214        case KEEP_MINE: return myCoords;
     215        case KEEP_THEIR: return theirCoords;
     216        case UNDECIDED: return null;
    217217        }
    218218        // should not happen
     
    246246    public Boolean getMergedDeletedState() {
    247247        switch(deletedMergeDecision) {
    248             case KEEP_MINE: return myDeletedState;
    249             case KEEP_THEIR: return theirDeletedState;
    250             case UNDECIDED: return null;
     248        case KEEP_MINE: return myDeletedState;
     249        case KEEP_THEIR: return theirDeletedState;
     250        case UNDECIDED: return null;
    251251        }
    252252        // should not happen
     
    279279    public Boolean getMergedVisibleState() {
    280280        switch(visibleMergeDecision) {
    281             case KEEP_MINE: return myVisibleState;
    282             case KEEP_THEIR: return theirVisibleState;
    283             case UNDECIDED: return null;
     281        case KEEP_MINE: return myVisibleState;
     282        case KEEP_THEIR: return theirVisibleState;
     283        case UNDECIDED: return null;
    284284        }
    285285        // should not happen
     
    484484
    485485        switch(ret) {
    486             case JOptionPane.CLOSED_OPTION: return false;
    487             case JOptionPane.YES_OPTION: return true;
    488             case JOptionPane.NO_OPTION: return false;
     486        case JOptionPane.CLOSED_OPTION: return false;
     487        case JOptionPane.YES_OPTION: return true;
     488        case JOptionPane.NO_OPTION: return false;
    489489        }
    490490        return false;
     
    513513
    514514        switch(ret) {
    515             case JOptionPane.CLOSED_OPTION: return false;
    516             case JOptionPane.YES_OPTION: return true;
    517             case JOptionPane.NO_OPTION: return false;
     515        case JOptionPane.CLOSED_OPTION: return false;
     516        case JOptionPane.YES_OPTION: return true;
     517        case JOptionPane.NO_OPTION: return false;
    518518        }
    519519        return false;
     
    535535        HashMap<Long,OsmPrimitive> candidates = new HashMap<Long,OsmPrimitive>();
    536536        for (Node n : way.getNodes()) {
    537             if (n.getId() > 0 && ! candidates.values().contains(n)) {
     537            if (!n.isNew() && !candidates.values().contains(n)) {
    538538                candidates.put(n.getId(), n);
    539539            }
     
    572572        HashMap<Long,OsmPrimitive> candidates = new HashMap<Long, OsmPrimitive>();
    573573        for (RelationMember m : r.getMembers()) {
    574             if (m.getMember().getId() > 0 && !candidates.values().contains(m.getMember())) {
     574            if (!m.getMember().isNew() && !candidates.values().contains(m.getMember())) {
    575575                candidates.put(m.getMember().getId(), m.getMember());
    576576            }
  • trunk/src/org/openstreetmap/josm/gui/conflict/pair/relation/RelationMemberListMergeModel.java

    r2181 r2273  
    2525    public boolean isEqualEntry(RelationMember e1, RelationMember e2) {
    2626        boolean ret = e1.getRole().equals(e2.getRole());
    27         if (e1.getMember().getId() > 0 ) {
     27        if (!e1.getMember().isNew() ) {
    2828            ret = ret && (e1.getMember().getId() == e2.getMember().getId());
    2929        } else {
  • trunk/src/org/openstreetmap/josm/gui/dialogs/HistoryDialog.java

    r2243 r2273  
    144144     *
    145145     */
    146     class HistoryItemTableModel extends DefaultTableModel implements SelectionChangedListener{
     146    static class HistoryItemTableModel extends DefaultTableModel implements SelectionChangedListener{
    147147        private ArrayList<OsmPrimitive> data;
    148148        private DefaultListSelectionModel selectionModel;
     
    196196                return;
    197197            for (OsmPrimitive primitive: Main.main.getCurrentDataSet().getSelected()) {
    198                 if (primitive.getId() == 0) {
     198                if (primitive.isNew()) {
    199199                    continue;
    200200                }
     
    226226     * The column model
    227227     */
    228     class HistoryTableColumnModel extends DefaultTableColumnModel {
     228    static class HistoryTableColumnModel extends DefaultTableColumnModel {
    229229        protected void createColumns() {
    230230            TableColumn col = null;
  • trunk/src/org/openstreetmap/josm/gui/dialogs/relation/ChildRelationBrowser.java

    r2181 r2273  
    365365                if (member.isRelation()) {
    366366                    Relation child = member.getRelation();
    367                     if (!downloadedRelationIds.contains(child)) {
     367                    if (!downloadedRelationIds.contains(child.getId())) {
    368368                        relationsToDownload.push(child);
    369369                    }
     
    403403                while(! relationsToDownload.isEmpty() && !cancelled) {
    404404                    Relation r = relationsToDownload.pop();
    405                     if (r.getId() == 0) {
     405                    if (r.isNew()) {
    406406                        continue;
    407407                    }
     
    514514                while(it.hasNext() && !cancelled) {
    515515                    Relation r = it.next();
    516                     if (r.getId() == 0) {
     516                    if (r.isNew()) {
    517517                        continue;
    518518                    }
  • trunk/src/org/openstreetmap/josm/gui/dialogs/relation/GenericRelationEditor.java

    r2163 r2273  
    592592            );
    593593            switch(ret) {
    594                 case ConditionalOptionPaneUtil.DIALOG_DISABLED_OPTION: return;
    595                 case JOptionPane.CLOSED_OPTION: return;
    596                 case JOptionPane.NO_OPTION: return;
    597                 case JOptionPane.YES_OPTION:
    598                     memberTableModel.removeMembersReferringTo(toCheck);
    599                     break;
     594            case ConditionalOptionPaneUtil.DIALOG_DISABLED_OPTION: return;
     595            case JOptionPane.CLOSED_OPTION: return;
     596            case JOptionPane.NO_OPTION: return;
     597            case JOptionPane.YES_OPTION:
     598                memberTableModel.removeMembersReferringTo(toCheck);
     599                break;
    600600            }
    601601        }
     
    628628            );
    629629            switch(ret) {
    630                 case ConditionalOptionPaneUtil.DIALOG_DISABLED_OPTION : return true;
    631                 case JOptionPane.YES_OPTION: return true;
    632                 case JOptionPane.NO_OPTION: return false;
    633                 case JOptionPane.CLOSED_OPTION: return false;
    634                 case JOptionPane.CANCEL_OPTION: throw new AddAbortException();
     630            case ConditionalOptionPaneUtil.DIALOG_DISABLED_OPTION : return true;
     631            case JOptionPane.YES_OPTION: return true;
     632            case JOptionPane.NO_OPTION: return false;
     633            case JOptionPane.CLOSED_OPTION: return false;
     634            case JOptionPane.CANCEL_OPTION: throw new AddAbortException();
    635635            }
    636636            // should not happen
     
    10641064            );
    10651065            switch(ret) {
    1066                 case JOptionPane.CANCEL_OPTION: return false;
    1067                 case JOptionPane.YES_OPTION: return true;
    1068                 case JOptionPane.NO_OPTION: return false;
     1066            case JOptionPane.CANCEL_OPTION: return false;
     1067            case JOptionPane.YES_OPTION: return true;
     1068            case JOptionPane.NO_OPTION: return false;
    10691069            }
    10701070            return false;
     
    12001200
    12011201        protected void updateEnabledState() {
    1202             setEnabled(getRelation() != null && getRelation().getId() > 0);
     1202            setEnabled(getRelation() != null && !getRelation().isNew());
    12031203        }
    12041204    }
     
    12401240            );
    12411241            switch(ret) {
    1242                 case JOptionPane.YES_OPTION: return true;
    1243                 case ConditionalOptionPaneUtil.DIALOG_DISABLED_OPTION: return true;
    1244                 default:
    1245                     return false;
     1242            case JOptionPane.YES_OPTION: return true;
     1243            case ConditionalOptionPaneUtil.DIALOG_DISABLED_OPTION: return true;
     1244            default:
     1245                return false;
    12461246            }
    12471247        }
  • trunk/src/org/openstreetmap/josm/gui/dialogs/relation/MemberTableModel.java

    r2083 r2273  
    202202        for (int i=0; i< members.size();i++) {
    203203            RelationMember member = members.get(i);
    204             if (member.getMember().getId() == 0) {
     204            if (member.getMember().isNew()) {
    205205                continue;
    206206            }
  • trunk/src/org/openstreetmap/josm/gui/dialogs/relation/ParentRelationLoadingTask.java

    r2181 r2273  
    7979        if (layer == null)
    8080            throw new IllegalArgumentException(tr("Parameter ''{0}'' must not be null.", "layer"));
    81         if (child.getId() == 0)
     81        if (child.isNew())
    8282            throw new IllegalArgumentException(tr("Value of child.getId() > 0 expected. Got {1}.", child.getId()));
    8383        referrers = null;
  • trunk/src/org/openstreetmap/josm/gui/dialogs/relation/ReferringRelationsBrowserModel.java

    r2070 r2273  
    8989
    9090    public boolean canReload() {
    91         return relation != null && relation.getId() > 0;
     91        return relation != null && !relation.isNew();
    9292    }
    9393
  • trunk/src/org/openstreetmap/josm/gui/dialogs/relation/RelationEditor.java

    r2181 r2273  
    117117        if (getRelation() == null) {
    118118            setTitle(tr("Create new relation in layer ''{0}''", layer.getName()));
    119         } else if (getRelation().getId() == 0) {
     119        } else if (getRelation().isNew()) {
    120120            setTitle(tr("Edit new relation in layer ''{0}''", layer.getName()));
    121121        } else {
  • trunk/src/org/openstreetmap/josm/gui/dialogs/relation/RelationTree.java

    r2070 r2273  
    9191            TreePath path  = event.getPath();
    9292            Relation parent = (Relation)event.getPath().getLastPathComponent();
    93             if (! parent.incomplete || parent.getId() == 0)
     93            if (! parent.incomplete || parent.isNew())
    9494                // we don't load complete  or new relations
    9595                return;
  • trunk/src/org/openstreetmap/josm/gui/io/UploadDialog.java

    r2241 r2273  
    362362    protected String getUploadComment() {
    363363        switch(southTabbedPane.getSelectedIndex()) {
    364             case 0:
    365                 return pnlChangesetSelection.getUploadComment();
    366             case 1:
    367                 TagModel tm = tagEditorPanel.getModel().get("comment");
    368                 return tm == null? "" : tm.getValue();
     364        case 0:
     365            return pnlChangesetSelection.getUploadComment();
     366        case 1:
     367            TagModel tm = tagEditorPanel.getModel().get("comment");
     368            return tm == null? "" : tm.getValue();
    369369        }
    370370        return "";
  • trunk/src/org/openstreetmap/josm/io/MultiFetchServerObjectReader.java

    r2181 r2273  
    155155    public MultiFetchServerObjectReader append(Node node) {
    156156        if (node == null) return this;
    157         if (node.getId() == 0) return this;
     157        if (node.isNew()) return this;
    158158        remember(node.getId(), OsmPrimitiveType.NODE);
    159159        return this;
     
    169169    public MultiFetchServerObjectReader append(Way way) {
    170170        if (way == null) return this;
    171         if (way.getId() == 0) return this;
     171        if (way.isNew()) return this;
    172172        for (Node node: way.getNodes()) {
    173             if (node.getId() > 0) {
     173            if (!node.isNew()) {
    174174                remember(node.getId(), OsmPrimitiveType.NODE);
    175175            }
     
    188188    public MultiFetchServerObjectReader append(Relation relation) {
    189189        if (relation == null) return this;
    190         if (relation.getId() == 0) return this;
     190        if (relation.isNew()) return this;
    191191        remember(relation.getId(), OsmPrimitiveType.RELATION);
    192192        for (RelationMember member : relation.getMembers()) {
  • trunk/src/org/openstreetmap/josm/io/OsmApi.java

    r2222 r2273  
    555555                String errorBody = responseBody == null ? null : responseBody.toString().trim();
    556556                switch(retCode) {
    557                     case HttpURLConnection.HTTP_OK:
    558                         break; // do nothing
    559                     case HttpURLConnection.HTTP_GONE:
    560                         throw new OsmApiPrimitiveGoneException(errorHeader, errorBody);
    561                     default:
    562                         throw new OsmApiException(retCode, errorHeader, errorBody);
     557                case HttpURLConnection.HTTP_OK:
     558                    break; // do nothing
     559                case HttpURLConnection.HTTP_GONE:
     560                    throw new OsmApiPrimitiveGoneException(errorHeader, errorBody);
     561                default:
     562                    throw new OsmApiException(retCode, errorHeader, errorBody);
    563563
    564564                }
  • trunk/src/org/openstreetmap/josm/io/OsmServerBackreferenceReader.java

    r2181 r2273  
    5151        if (primitive == null)
    5252            throw new IllegalArgumentException(tr("Parameter ''{0}'' must not be null.", "primitive"));
    53         if (primitive.getId() == 0)
     53        if (primitive.isNew())
    5454            throw new IllegalArgumentException(tr("ID parameter ''{0}'' > 0 expected. Got ''{1}''.", "primitive", primitive.getId()));
    5555        this.id = primitive.getId();
     
    222222            if (isReadFull() ||primitiveType.equals(OsmPrimitiveType.NODE)) {
    223223                for (Way way: waysToCheck) {
    224                     if (way.getId() > 0 && way.incomplete) {
     224                    if (!way.isNew() && way.incomplete) {
    225225                        OsmServerObjectReader reader = new OsmServerObjectReader(way.getId(), OsmPrimitiveType.from(way), true /* read full */);
    226226                        DataSet wayDs = reader.parseOsm(progressMonitor.createSubTaskMonitor(1, false));
     
    233233                Collection<Relation> relationsToCheck  = new ArrayList<Relation>(ds.relations);
    234234                for (Relation relation: relationsToCheck) {
    235                     if (relation.getId() > 0 && relation.incomplete) {
     235                    if (!relation.isNew() && relation.incomplete) {
    236236                        OsmServerObjectReader reader = new OsmServerObjectReader(relation.getId(), OsmPrimitiveType.from(relation), true /* read full */);
    237237                        DataSet wayDs = reader.parseOsm(progressMonitor.createSubTaskMonitor(1, false));
  • trunk/src/org/openstreetmap/josm/io/OsmServerWriter.java

    r2198 r2273  
    7979                String msg = "";
    8080                switch(OsmPrimitiveType.from(osm)) {
    81                     case NODE: msg = marktr("{0}% ({1}/{2}), {3} left. Uploading node ''{4}'' (id: {5})"); break;
    82                     case WAY: msg = marktr("{0}% ({1}/{2}), {3} left. Uploading way ''{4}'' (id: {5})"); break;
    83                     case RELATION: msg = marktr("{0}% ({1}/{2}), {3} left. Uploading relation ''{4}'' (id: {5})"); break;
     81                case NODE: msg = marktr("{0}% ({1}/{2}), {3} left. Uploading node ''{4}'' (id: {5})"); break;
     82                case WAY: msg = marktr("{0}% ({1}/{2}), {3} left. Uploading way ''{4}'' (id: {5})"); break;
     83                case RELATION: msg = marktr("{0}% ({1}/{2}), {3} left. Uploading relation ''{4}'' (id: {5})"); break;
    8484                }
    8585                progressMonitor.subTask(
     
    178178        if (osm.isDeleted()) {
    179179            api.deletePrimitive(osm, progressMonitor);
    180         } else if (osm.getId() == 0) {
     180        } else if (osm.isNew()) {
    181181            api.createPrimitive(osm, progressMonitor);
    182182        } else {
  • trunk/src/org/openstreetmap/josm/io/OsmWriter.java

    r2115 r2273  
    8787
    8888    private boolean shouldWrite(OsmPrimitive osm) {
    89         return osm.getId() != 0 || !osm.isDeleted();
     89        return !osm.isNew() || !osm.isDeleted();
    9090    }
    9191
     
    173173     */
    174174    private long getUsedId(OsmPrimitive osm) {
    175         if (osm.getId() != 0)
     175        if (!osm.isNew())
    176176            return osm.getId();
    177177        if (usedNewIds.containsKey(osm))
Note: See TracChangeset for help on using the changeset viewer.