Changeset 2578 in josm for trunk/src/org


Ignore:
Timestamp:
2009-12-05T18:23:03+01:00 (14 years ago)
Author:
jttt
Message:

Encalupse OsmPrimitive.incomplete

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

Legend:

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

    r2575 r2578  
    2929
    3030import org.openstreetmap.josm.Main;
    31 import org.openstreetmap.josm.actions.CombineWayAction;
    32 import org.openstreetmap.josm.actions.JosmAction;
    33 import org.openstreetmap.josm.actions.ReverseWayAction;
    34 import org.openstreetmap.josm.actions.SplitWayAction;
    3531import org.openstreetmap.josm.command.AddCommand;
    3632import org.openstreetmap.josm.command.ChangeCommand;
     
    7571            if(this.pos == o.pos)
    7672                return (this.dis - o.dis) > 0 ? 1 : -1;
    77             return this.pos - o.pos;
    78         }
    79     };
     73                return this.pos - o.pos;
     74        }
     75    }
    8076
    8177    // HelperClass
    8278    // Saves a relation and a role an OsmPrimitve was part of until it was stripped from all relations
    8379    private class RelationRole {
    84         public Relation rel;
    85         public String role;
     80        public final Relation rel;
     81        public final String role;
    8682        public RelationRole(Relation rel, String role) {
    8783            this.rel = rel;
    8884            this.role = role;
     85        }
     86
     87        @Override
     88        public int hashCode() {
     89            return rel.hashCode();
    8990        }
    9091
     
    100101    public JoinAreasAction() {
    101102        super(tr("Join overlapping Areas"), "joinareas", tr("Joins areas that overlap each other"), Shortcut.registerShortcut("tools:joinareas", tr("Tool: {0}", tr("Join overlapping Areas")),
    102         KeyEvent.VK_J, Shortcut.GROUP_EDIT, Shortcut.SHIFT_DEFAULT), true);
     103                KeyEvent.VK_J, Shortcut.GROUP_EDIT, Shortcut.SHIFT_DEFAULT), true);
    103104    }
    104105
     
    116117        OsmDataLayer dataLayer = Main.map.mapView.getEditLayer();
    117118        for (DataSource ds : dataLayer.data.dataSources) {
    118             if (ds.bounds != null)
     119            if (ds.bounds != null) {
    119120                bounds.add(ds.bounds);
     121            }
    120122        }
    121123
     
    137139            // This is copied from SimplifyAction and should be probably ported to tools
    138140            for (Node node : way.getNodes()) {
    139                 if(askedAlready) break;
     141                if(askedAlready) {
     142                    break;
     143                }
    140144                boolean isInsideOneBoundingBox = false;
    141145                for (Bounds b : bounds) {
     
    151155                                    + "This can lead to nodes being deleted accidentally.\n"
    152156                                    + "Are you really sure to continue?"),
    153                             tr("Please abort if you are not sure"), JOptionPane.YES_NO_OPTION,
    154                             JOptionPane.WARNING_MESSAGE);
     157                                    tr("Please abort if you are not sure"), JOptionPane.YES_NO_OPTION,
     158                                    JOptionPane.WARNING_MESSAGE);
    155159
    156160                    if (option != JOptionPane.YES_OPTION) return;
     
    173177            DataSet ds = Main.main.getCurrentDataSet();
    174178            ds.fireSelectionChanged();
    175         } else
     179        } else {
    176180            JOptionPane.showMessageDialog(Main.parent, tr("No intersection found. Nothing was changed."));
     181        }
    177182    }
    178183
     
    199204        // Remove ways from all relations so ways can be combined/split quietly
    200205        ArrayList<RelationRole> relations = removeFromRelations(a);
    201         if(!same) relations.addAll(removeFromRelations(b));
     206        if(!same) {
     207            relations.addAll(removeFromRelations(b));
     208        }
    202209
    203210        // Don't warn now, because it will really look corrupted
     
    217224
    218225        // Delete the remaining inner ways
    219         if(innerWays != null && innerWays.size() > 0)
     226        if(innerWays != null && innerWays.size() > 0) {
    220227            cmds.add(DeleteCommand.delete(Main.map.mapView.getEditLayer(), innerWays, true));
     228        }
    221229        commitCommands(marktr("Delete Ways that are not part of an inner multipolygon"));
    222230
     
    228236        stripTags(newInnerWays);
    229237        makeCommitsOneAction(
    230             same
     238                same
    231239                ? marktr("Joined self-overlapping area")
    232                 : marktr("Joined overlapping areas")
     240                        : marktr("Joined overlapping areas")
    233241        );
    234242
    235         if(warnAboutRelations)
     243        if(warnAboutRelations) {
    236244            JOptionPane.showMessageDialog(Main.parent, tr("Some of the ways were part of relations that have been modified. Please verify no errors have been introduced."));
     245        }
    237246
    238247        return true;
     
    254263        for (Way w : ways) {
    255264            for (Entry<String,String> e : w.entrySet()) {
    256                 if (!props.containsKey(e.getKey()))
     265                if (!props.containsKey(e.getKey())) {
    257266                    props.put(e.getKey(), new TreeSet<String>());
     267                }
    258268                props.get(e.getKey()).add(e.getValue());
    259269            }
     
    338348                    continue;
    339349                } else
    340                 if(a.getNode(i).equals(b.getNode(j+1)) || a.getNode(i+1).equals(b.getNode(j+1))) {
    341                     nodes.add(b.getNode(j+1));
    342                     continue;
    343                 }
     350                    if(a.getNode(i).equals(b.getNode(j+1)) || a.getNode(i+1).equals(b.getNode(j+1))) {
     351                        nodes.add(b.getNode(j+1));
     352                        continue;
     353                    }
    344354                LatLon intersection = getLineLineIntersection(
    345355                        a.getNode(i)  .getEastNorth().east(), a.getNode(i)  .getEastNorth().north(),
     
    347357                        b.getNode(j)  .getEastNorth().east(), b.getNode(j)  .getEastNorth().north(),
    348358                        b.getNode(j+1).getEastNorth().east(), b.getNode(j+1).getEastNorth().north());
    349                 if(intersection == null) continue;
     359                if(intersection == null) {
     360                    continue;
     361                }
    350362
    351363                // Create the node. Adding them to the ways must be delayed because we still loop over them
     
    355367                // The distance is needed to sort and add the nodes in direction of the way
    356368                nodesA.add(new NodeToSegs(i,  n, a.getNode(i).getCoor()));
    357                 if(same)
     369                if(same) {
    358370                    nodesA.add(new NodeToSegs(j,  n, a.getNode(j).getCoor()));
    359                 else
     371                } else {
    360372                    nodesB.add(new NodeToSegs(j,  n, b.getNode(j).getCoor()));
     373                }
    361374            }
    362375        }
    363376
    364377        addNodesToWay(a, nodesA);
    365         if(!same) addNodesToWay(b, nodesB);
     378        if(!same) {
     379            addNodesToWay(b, nodesB);
     380        }
    366381
    367382        return nodes;
     
    373388     */
    374389    static private LatLon getLineLineIntersection(
    375                 double x1, double y1, double x2, double y2,
    376                 double x3, double y3, double x4, double y4) {
     390            double x1, double y1, double x2, double y2,
     391            double x3, double y3, double x4, double y4) {
    377392
    378393        if (!Line2D.linesIntersect(x1, y1, x2, y2, x3, y3, x4, y4)) return null;
     
    392407
    393408        return Main.proj.eastNorth2latlon(new EastNorth(
    394             (b1*c2 - b2*c1)/det,
    395             (a2*c1 -a1*c2)/det
     409                (b1*c2 - b2*c1)/det,
     410                (a2*c1 -a1*c2)/det
    396411        ));
    397412    }
     
    421436    private void commitCommands(String description) {
    422437        switch(cmds.size()) {
    423             case 0:
    424                 return;
    425             case 1:
    426                 Main.main.undoRedo.add(cmds.getFirst());
    427                 break;
    428             default:
    429                 Command c = new SequenceCommand(tr(description), cmds);
    430                 Main.main.undoRedo.add(c);
    431                 break;
     438        case 0:
     439            return;
     440        case 1:
     441            Main.main.undoRedo.add(cmds.getFirst());
     442            break;
     443        default:
     444            Command c = new SequenceCommand(tr(description), cmds);
     445            Main.main.undoRedo.add(c);
     446            break;
    432447        }
    433448
     
    444459        ArrayList<RelationRole> result = new ArrayList<RelationRole>();
    445460        for (Relation r : Main.main.getCurrentDataSet().getRelations()) {
    446             if (r.isDeleted() || r.incomplete) continue;
     461            if (r.isDeleted() || r.isIncomplete()) {
     462                continue;
     463            }
    447464            for (RelationMember rm : r.getMembers()) {
    448                 if (rm.getMember() != osm) continue;
     465                if (rm.getMember() != osm) {
     466                    continue;
     467                }
    449468
    450469                Relation newRel = new Relation(r);
     
    455474                cmds.add(new ChangeCommand(r, newRel));
    456475                RelationRole saverel =  new RelationRole(r, rm.getRole());
    457                 if(!result.contains(saverel)) result.add(saverel);
     476                if(!result.contains(saverel)) {
     477                    result.add(saverel);
     478                }
    458479                break;
    459480            }
     
    471492        ArrayList<Way> ways = new ArrayList<Way>();
    472493        ways.add(a);
    473         if(!a.equals(b)) ways.add(b);
     494        if(!a.equals(b)) {
     495            ways.add(b);
     496        }
    474497
    475498        List<OsmPrimitive> affected = new ArrayList<OsmPrimitive>();
     
    493516        Collection<Way> result = new ArrayList<Way>();
    494517        for(OsmPrimitive w: ways) {
    495             if(w instanceof Way) result.add((Way) w);
     518            if(w instanceof Way) {
     519                result.add((Way) w);
     520            }
    496521        }
    497522        return result;
     
    505530    private Collection<Node> getNodesFromWays(Collection<Way> ways) {
    506531        Collection<Node> allNodes = new ArrayList<Node>();
    507         for(Way w: ways) allNodes.addAll(w.getNodes());
     532        for(Way w: ways) {
     533            allNodes.addAll(w.getNodes());
     534        }
    508535        return allNodes;
    509536    }
     
    521548        for(Way w: multigonWays) {
    522549            Polygon poly = new Polygon();
    523             for(Node n: (w).getNodes()) poly.addPoint(latlonToXY(n.getCoor().lat()), latlonToXY(n.getCoor().lon()));
     550            for(Node n: (w).getNodes()) {
     551                poly.addPoint(latlonToXY(n.getCoor().lat()), latlonToXY(n.getCoor().lon()));
     552            }
    524553
    525554            for(Node n: multigonNodes) {
     
    546575    private void getWaysByNode(Collection<Way> innerWays, Collection<Way> w, Node n) {
    547576        for(Way way : w) {
    548             if(!(way).containsNode(n)) continue;
    549             if(!innerWays.contains(way)) innerWays.add(way); // Will need this later for multigons
     577            if(!(way).containsNode(n)) {
     578                continue;
     579            }
     580            if(!innerWays.contains(way)) {
     581                innerWays.add(way); // Will need this later for multigons
     582            }
    550583        }
    551584    }
     
    561594        for(Way w: multigonWays) {
    562595            // Skip inner ways
    563             if(innerWays.contains(w)) continue;
    564 
    565             if(w.getNodesCount() <= 2)
     596            if(innerWays.contains(w)) {
     597                continue;
     598            }
     599
     600            if(w.getNodesCount() <= 2) {
    566601                cmds.add(new DeleteCommand(w));
    567             else
     602            } else {
    568603                join.add(w);
     604            }
    569605        }
    570606
     
    606642            }
    607643            if(a.getNode(0).equals(b.getNode(0)) ||
    608                a.getNode(a.getNodesCount()-1).equals(b.getNode(b.getNodesCount()-1))) {
     644                    a.getNode(a.getNodesCount()-1).equals(b.getNode(b.getNodesCount()-1))) {
    609645                Main.main.getCurrentDataSet().setSelected(b);
    610646                new ReverseWayAction().actionPerformed(null);
     
    644680            boolean hasInnerNodes = false;
    645681            for(Node n : w.getNodes()) {
    646                 if(outerNodes.contains(n)) continue wayIterator;
    647                 if(!hasInnerNodes && innerNodes.contains(n)) hasInnerNodes = true;
    648             }
    649             if(!hasInnerNodes || w.getNodesCount() < 2) continue;
     682                if(outerNodes.contains(n)) {
     683                    continue wayIterator;
     684                }
     685                if(!hasInnerNodes && innerNodes.contains(n)) {
     686                    hasInnerNodes = true;
     687                }
     688            }
     689            if(!hasInnerNodes || w.getNodesCount() < 2) {
     690                continue;
     691            }
    650692            possibleWays.add(w);
    651693        }
     
    671713                for(Way w2 : possibleWays) {
    672714                    // w2 cannot be closed, otherwise it would have been removed above
    673                     if(!waysCanBeCombined(w1, w2)) continue;
     715                    if(!waysCanBeCombined(w1, w2)) {
     716                        continue;
     717                    }
    674718
    675719                    ArrayList<Way> joinThem = new ArrayList<Way>();
     
    719763        List<Way> removables = new ArrayList<Way>();
    720764        for(Way a : ways) {
    721             if(a.isClosed()) continue;
     765            if(a.isClosed()) {
     766                continue;
     767            }
    722768            boolean connectedStart = false;
    723769            boolean connectedEnd = false;
    724770            for(Way b : ways) {
    725                 if(a.equals(b))
     771                if(a.equals(b)) {
    726772                    continue;
    727                 if(b.isFirstLastNode(a.firstNode()))
     773                }
     774                if(b.isFirstLastNode(a.firstNode())) {
    728775                    connectedStart = true;
    729                 if(b.isFirstLastNode(a.lastNode()))
     776                }
     777                if(b.isFirstLastNode(a.lastNode())) {
    730778                    connectedEnd = true;
    731             }
    732             if(!connectedStart || !connectedEnd)
     779                }
     780            }
     781            if(!connectedStart || !connectedEnd) {
    733782                removables.add(a);
     783            }
    734784        }
    735785        ways.removeAll(removables);
     
    749799        for(Node n : w.getNodes()) {
    750800            x.removeNode(n);
    751             if(x.containsNode(n)) count++;
     801            if(x.containsNode(n)) {
     802                count++;
     803            }
    752804            if(count == 2) return true;
    753805        }
     
    784836        Relation newRel = new Relation();
    785837        newRel.put("type", "multipolygon");
    786         for(Way w : inner)
     838        for(Way w : inner) {
    787839            newRel.addMember(new RelationMember("inner", w));
     840        }
    788841        cmds.add(new AddCommand(newRel));
    789842
     
    806859        for(RelationRole r : rels) {
    807860            if( r.rel.get("type") != null &&
    808                 r.rel.get("type").equalsIgnoreCase("multipolygon") &&
    809                 r.role.equalsIgnoreCase("outer")
    810               ) {
     861                    r.rel.get("type").equalsIgnoreCase("multipolygon") &&
     862                    r.role.equalsIgnoreCase("outer")
     863            ) {
    811864                multiouters.add(r);
    812865                continue;
     
    820873        Relation newRel = null;
    821874        switch(multiouters.size()) {
    822             case 0:
    823                 return;
    824             case 1:
    825                 // Found only one to be part of a multipolygon relation, so just add it back as well
    826                 newRel = new Relation(multiouters.get(0).rel);
    827                 newRel.addMember(new RelationMember(multiouters.get(0).role, outer));
    828                 cmds.add(new ChangeCommand(multiouters.get(0).rel, newRel));
    829                 return;
    830             default:
    831                 // Create a new relation with all previous members and (Way)outer as outer.
    832                 newRel = new Relation();
    833                 for(RelationRole r : multiouters) {
    834                     // Add members
    835                     for(RelationMember rm : r.rel.getMembers())
    836                         if(!newRel.getMembers().contains(rm)) newRel.addMember(rm);
    837                     // Add tags
    838                     for (String key : r.rel.keySet()) {
    839                         newRel.put(key, r.rel.get(key));
     875        case 0:
     876            return;
     877        case 1:
     878            // Found only one to be part of a multipolygon relation, so just add it back as well
     879            newRel = new Relation(multiouters.get(0).rel);
     880            newRel.addMember(new RelationMember(multiouters.get(0).role, outer));
     881            cmds.add(new ChangeCommand(multiouters.get(0).rel, newRel));
     882            return;
     883        default:
     884            // Create a new relation with all previous members and (Way)outer as outer.
     885            newRel = new Relation();
     886            for(RelationRole r : multiouters) {
     887                // Add members
     888                for(RelationMember rm : r.rel.getMembers())
     889                    if(!newRel.getMembers().contains(rm)) {
     890                        newRel.addMember(rm);
    840891                    }
    841                     // Delete old relation
    842                     cmds.add(new DeleteCommand(r.rel));
    843                 }
    844                 newRel.addMember(new RelationMember("outer", outer));
    845                 cmds.add(new AddCommand(newRel));
     892                // Add tags
     893                for (String key : r.rel.keySet()) {
     894                    newRel.put(key, r.rel.get(key));
     895                }
     896                // Delete old relation
     897                cmds.add(new DeleteCommand(r.rel));
     898            }
     899            newRel.addMember(new RelationMember("outer", outer));
     900            cmds.add(new AddCommand(newRel));
    846901        }
    847902    }
     
    851906     */
    852907    private void stripTags(Collection<Way> ways) {
    853         for(Way w: ways) stripTags(w);
     908        for(Way w: ways) {
     909            stripTags(w);
     910        }
    854911        commitCommands(marktr("Remove tags from inner ways"));
    855912    }
     
    861918        if(x.getKeys() == null) return;
    862919        Way y = new Way(x);
    863         for (String key : x.keySet())
     920        for (String key : x.keySet()) {
    864921            y.remove(key);
     922        }
    865923        cmds.add(new ChangeCommand(x, y));
    866924    }
     
    875933        cmds.clear();
    876934        int i = Math.max(ur.commands.size() - cmdsCount, 0);
    877         for(; i < ur.commands.size(); i++)
     935        for(; i < ur.commands.size(); i++) {
    878936            cmds.add(ur.commands.get(i));
    879 
    880         for(i = 0; i < cmds.size(); i++)
     937        }
     938
     939        for(i = 0; i < cmds.size(); i++) {
    881940            ur.undo();
     941        }
    882942
    883943        commitCommands(message == null ? marktr("Join Areas Function") : message);
  • trunk/src/org/openstreetmap/josm/actions/UnGlueAction.java

    r2512 r2578  
    9090                int count = 0;
    9191                for (Way w : OsmPrimitive.getFilteredList(n.getReferrers(), Way.class)) {
    92                     if (w.isDeleted() || w.incomplete) {
     92                    if (w.isDeleted() || w.isIncomplete()) {
    9393                        continue;
    9494                    }
     
    308308        HashSet<String> rolesToReAdd = null;
    309309        for (Relation r : OsmPrimitive.getFilteredList(originalNode.getReferrers(), Relation.class)) {
    310             if (r.isDeleted() || r.incomplete) {
     310            if (r.isDeleted() || r.isIncomplete()) {
    311311                continue;
    312312            }
     
    352352            // modify all ways containing the nodes
    353353            for (Way w : OsmPrimitive.getFilteredList(selectedNode.getReferrers(), Way.class)) {
    354                 if (w.isDeleted() || w.incomplete) {
     354                if (w.isDeleted() || w.isIncomplete()) {
    355355                    continue;
    356356                }
  • trunk/src/org/openstreetmap/josm/actions/UpdateSelectionAction.java

    r2512 r2578  
    1010import java.util.Collection;
    1111import java.util.Collections;
    12 import java.util.logging.Logger;
    1312
    1413import javax.swing.JOptionPane;
     
    139138     */
    140139    static class UpdatePrimitivesTask extends PleaseWaitRunnable {
    141         static private final Logger logger = Logger.getLogger(UpdatePrimitivesTask.class.getName());
     140        //static private final Logger logger = Logger.getLogger(UpdatePrimitivesTask.class.getName());
    142141
    143142        private DataSet ds;
     
    228227                //
    229228                for (Way w : ds.getWays()) {
    230                     if (w.incomplete) {
     229                    if (w.isIncomplete()) {
    231230                        OsmServerObjectReader reader = new OsmServerObjectReader(w.getId(), OsmPrimitiveType.WAY, true /* full */);
    232231                        theirDataSet = reader.parseOsm(progressMonitor.createSubTaskMonitor(ProgressMonitor.ALL_TICKS, false));
  • trunk/src/org/openstreetmap/josm/actions/UploadSelectionAction.java

    r2512 r2578  
    1111import java.util.Set;
    1212import java.util.Stack;
    13 import java.util.logging.Logger;
    1413
    1514import javax.swing.JOptionPane;
     
    3938 */
    4039public class UploadSelectionAction extends JosmAction{
    41     static private Logger logger = Logger.getLogger(UploadSelectionAction.class.getName());
     40    //static private Logger logger = Logger.getLogger(UploadSelectionAction.class.getName());
    4241
    4342    public UploadSelectionAction() {
     
    9089            if (p.isNew()) {
    9190                ret.add(p);
    92             } else if (p.isVisible() && p.isModified() && !p.incomplete) {
     91            } else if (p.isVisible() && p.isModified() && !p.isIncomplete()) {
    9392                ret.add(p);
    9493            }
  • trunk/src/org/openstreetmap/josm/actions/downloadtasks/DownloadOsmTaskList.java

    r2512 r2578  
    107107        HashSet<OsmPrimitive> ret = new HashSet<OsmPrimitive>();
    108108        for (OsmPrimitive primitive : ds.getNodes()) {
    109             if (!primitive.incomplete && !primitive.isNew()) {
     109            if (!primitive.isIncomplete() && !primitive.isNew()) {
    110110                ret.add(primitive);
    111111            }
    112112        }
    113113        for (OsmPrimitive primitive : ds.getWays()) {
    114             if (!primitive.incomplete && !primitive.isNew()) {
     114            if (!primitive.isIncomplete() && !primitive.isNew()) {
    115115                ret.add(primitive);
    116116            }
    117117        }
    118118        for (OsmPrimitive primitive : ds.getRelations()) {
    119             if (!primitive.incomplete && !primitive.isNew()) {
     119            if (!primitive.isIncomplete() && !primitive.isNew()) {
    120120                ret.add(primitive);
    121121            }
  • trunk/src/org/openstreetmap/josm/actions/search/SearchCompiler.java

    r2567 r2578  
    487487    private static class Incomplete extends Match {
    488488        @Override public boolean match(OsmPrimitive osm) {
    489             return osm.incomplete;
     489            return osm.isIncomplete();
    490490        }
    491491        @Override public String toString() {return "incomplete";}
  • trunk/src/org/openstreetmap/josm/data/osm/DataSet.java

    r2517 r2578  
    159159        Collection<OsmPrimitive> o = new LinkedList<OsmPrimitive>();
    160160        for (OsmPrimitive osm : allPrimitives())
    161             if (osm.isVisible() && !osm.isDeleted() && !osm.incomplete) {
     161            if (osm.isVisible() && !osm.isDeleted() && !osm.isIncomplete()) {
    162162                o.add(osm);
    163163            }
     
    168168        Collection<OsmPrimitive> o = new LinkedList<OsmPrimitive>();
    169169        for (OsmPrimitive osm : allPrimitives())
    170             if (osm.isVisible() && !osm.isDeleted() && !osm.incomplete && !(osm instanceof Relation)) {
     170            if (osm.isVisible() && !osm.isDeleted() && !osm.isIncomplete() && !(osm instanceof Relation)) {
    171171                o.add(osm);
    172172            }
  • trunk/src/org/openstreetmap/josm/data/osm/DataSetMerger.java

    r2563 r2578  
    145145        if (myWay == null)
    146146            throw new RuntimeException(tr("Missing merge target for way with id {0}", other.getUniqueId()));
    147         if (!myWay.incomplete)return;
    148         if (myWay.incomplete && other.getNodesCount() == 0) return;
     147        if (!myWay.isIncomplete())return;
     148        if (myWay.isIncomplete() && other.getNodesCount() == 0) return;
    149149        for (Node n: myWay.getNodes()) {
    150             if (n.incomplete) return;
    151         }
    152         myWay.incomplete = false;
     150            if (n.isIncomplete()) return;
     151        }
     152        myWay.setIncomplete(false);
    153153    }
    154154
     
    167167        if (myNode == null)
    168168            throw new RuntimeException(tr("Missing merge target for node with id {0}", other.getUniqueId()));
    169         if (myNode.incomplete || myNode.isDeleted() || !myNode.isVisible()) return;
     169        if (myNode.isIncomplete() || myNode.isDeleted() || !myNode.isVisible()) return;
    170170        wayloop: for (Way w: OsmPrimitive.getFilteredList(myNode.getReferrers(), Way.class)) {
    171             if (w.isDeleted() || ! w.isVisible() || ! w.incomplete) {
     171            if (w.isDeleted() || ! w.isVisible() || ! w.isIncomplete()) {
    172172                continue;
    173173            }
    174174            for (Node n: w.getNodes()) {
    175                 if (n.incomplete) {
     175                if (n.isIncomplete()) {
    176176                    continue wayloop;
    177177                }
    178178            }
    179179            // all nodes are complete - set the way complete too
    180             w.incomplete = false;
     180            w.setIncomplete(false);
    181181        }
    182182    }
     
    306306            //
    307307            conflicts.add(target,source);
    308         } else if (target.incomplete && !source.incomplete) {
     308        } else if (target.isIncomplete() && !source.isIncomplete()) {
    309309            // target is incomplete, source completes it
    310310            // => merge source into target
     
    312312            target.mergeFrom(source);
    313313            objectsWithChildrenToMerge.add(source.getPrimitiveId());
    314         } else if (!target.incomplete && source.incomplete) {
     314        } else if (!target.isIncomplete() && source.isIncomplete()) {
    315315            // target is complete and source is incomplete
    316316            // => keep target, it has more information already
    317317            //
    318         } else if (target.incomplete && source.incomplete) {
     318        } else if (target.isIncomplete() && source.isIncomplete()) {
    319319            // target and source are incomplete. Doesn't matter which one to
    320320            // take. We take target.
  • trunk/src/org/openstreetmap/josm/data/osm/DatasetConsistencyTest.java

    r2527 r2578  
    4848    private void checkCompleteWaysWithIncompleteNodes() {
    4949        for (Way way:dataSet.getWays()) {
    50             if (!way.incomplete) {
     50            if (!way.isIncomplete()) {
    5151                for (Node node:way.getNodes()) {
    52                     if (node.incomplete) {
     52                    if (node.isIncomplete()) {
    5353                        writer.println(String.format("%s is complete but contains incomplete node '%s'", way, node));
    5454                    }
     
    6060    private void checkCompleteNodesWithoutCoordinates() {
    6161        for (Node node:dataSet.getNodes()) {
    62             if (!node.incomplete && (node.getCoor() == null || node.getEastNorth() == null)) {
     62            if (!node.isIncomplete() && (node.getCoor() == null || node.getEastNorth() == null)) {
    6363                writer.println(String.format("%s is not incomplete but has null coordinates", node));
    6464            }
     
    6868    private void searchNodes() {
    6969        for (Node n:dataSet.getNodes()) {
    70             if (!n.incomplete) {
     70            if (!n.isIncomplete()) {
    7171                LatLon c = n.getCoor();
    7272                BBox box = new BBox(new LatLon(c.lat() - 0.0001, c.lon() - 0.0001), new LatLon(c.lat() + 0.0001, c.lon() + 0.0001));
     
    8080    private void searchWays() {
    8181        for (Way w:dataSet.getWays()) {
    82             if (!w.incomplete && !dataSet.searchWays(w.getBBox()).contains(w)) {
     82            if (!w.isIncomplete() && !dataSet.searchWays(w.getBBox()).contains(w)) {
    8383                writer.println(String.format("%s not found using Dataset.searchWays()", w));
    8484            }
  • trunk/src/org/openstreetmap/josm/data/osm/Node.java

    r2555 r2578  
    123123    public void mergeFrom(OsmPrimitive other) {
    124124        super.mergeFrom(other);
    125         if (!other.incomplete) {
     125        if (!other.isIncomplete()) {
    126126            setCoor(new LatLon(((Node)other).coor));
    127127        }
  • trunk/src/org/openstreetmap/josm/data/osm/OsmPrimitive.java

    r2574 r2578  
    229229     * and type is known (type is the objects instance class)
    230230     */
    231     public boolean incomplete = false;
     231    private boolean incomplete = false;
    232232
    233233    /**
     
    259259        }
    260260        this.version = 0;
    261         this.incomplete = id > 0;
     261        this.setIncomplete(id > 0);
    262262    }
    263263
     
    357357     */
    358358    public boolean isUsable() {
    359         return !isDeleted() && !incomplete && !isDisabled();
     359        return !isDeleted() && !isIncomplete() && !isDisabled();
    360360    }
    361361
     
    451451        this.id = id;
    452452        this.version = version;
    453         this.incomplete = false;
     453        this.setIncomplete(false);
    454454    }
    455455
     
    468468        this.id = generateUniqueId();
    469469        this.version = 0;
    470         this.incomplete = false;
     470        this.setIncomplete(false);
    471471    }
    472472
     
    913913        timestamp = osm.timestamp;
    914914        version = osm.version;
    915         incomplete = osm.incomplete;
     915        setIncomplete(osm.isIncomplete());
    916916        flags = osm.flags;
    917917        user= osm.user;
     
    940940        timestamp = other.timestamp;
    941941        version = other.version;
    942         incomplete = other.incomplete;
     942        setIncomplete(other.isIncomplete());
    943943        flags = other.flags;
    944944        user= other.user;
     
    960960        if (!isNew() &&  id != other.id)
    961961            return false;
    962         if (incomplete && ! other.incomplete || !incomplete  && other.incomplete)
     962        if (isIncomplete() && ! other.isIncomplete() || !isIncomplete()  && other.isIncomplete())
    963963            return false;
    964964        // can't do an equals check on the internal keys array because it is not ordered
     
    11511151        return new SimplePrimitiveId(getUniqueId(), getType());
    11521152    }
     1153
     1154    public void setIncomplete(boolean incomplete) {
     1155        this.incomplete = incomplete;
     1156    }
     1157
     1158    public boolean isIncomplete() {
     1159        return incomplete;
     1160    }
    11531161}
  • trunk/src/org/openstreetmap/josm/data/osm/Relation.java

    r2555 r2578  
    243243
    244244    public RelationMember firstMember() {
    245         if (incomplete) return null;
     245        if (isIncomplete()) return null;
    246246        return (members.size() == 0) ? null : members.get(0);
    247247    }
    248248    public RelationMember lastMember() {
    249         if (incomplete) return null;
     249        if (isIncomplete()) return null;
    250250        return (members.size() == 0) ? null : members.get(members.size() -1);
    251251    }
  • trunk/src/org/openstreetmap/josm/data/osm/Way.java

    r2555 r2578  
    116116    public ArrayList<Pair<Node,Node>> getNodePairs(boolean sort) {
    117117        ArrayList<Pair<Node,Node>> chunkSet = new ArrayList<Pair<Node,Node>>();
    118         if (incomplete) return chunkSet;
     118        if (isIncomplete()) return chunkSet;
    119119        Node lastN = null;
    120120        for (Node n : this.nodes) {
     
    219219
    220220    @Override public String toString() {
    221         String nodesDesc = incomplete?"(incomplete)":"nodes=" + Arrays.toString(nodes);
     221        String nodesDesc = isIncomplete()?"(incomplete)":"nodes=" + Arrays.toString(nodes);
    222222        return "{Way id=" + getUniqueId() + " version=" + getVersion()+ " " + getFlagsAsString()  + " " + nodesDesc + "}";
    223223    }
     
    245245
    246246    public void removeNode(Node n) {
    247         if (incomplete) return;
     247        if (isIncomplete()) return;
    248248        boolean closed = (lastNode() == n && firstNode() == n);
    249249        int i;
     
    262262
    263263    public void removeNodes(Collection<? extends OsmPrimitive> selection) {
    264         if (incomplete) return;
     264        if (isIncomplete()) return;
    265265        for(OsmPrimitive p : selection) {
    266266            if (p instanceof Node) {
     
    279279    public void addNode(Node n) throws IllegalStateException {
    280280        if (n==null) return;
    281         if (incomplete)
     281        if (isIncomplete())
    282282            throw new IllegalStateException(tr("Cannot add node {0} to incomplete way {1}.", n.getId(), getId()));
    283283        clearCached();
     
    301301    public void addNode(int offs, Node n) throws IllegalStateException, IndexOutOfBoundsException {
    302302        if (n==null) return;
    303         if (incomplete)
     303        if (isIncomplete())
    304304            throw new IllegalStateException(tr("Cannot add node {0} to incomplete way {1}.", n.getId(), getId()));
    305305        clearCached();
     
    327327
    328328    public boolean isClosed() {
    329         if (incomplete) return false;
     329        if (isIncomplete()) return false;
    330330        return nodes.length >= 3 && lastNode() == firstNode();
    331331    }
    332332
    333333    public Node lastNode() {
    334         if (incomplete || nodes.length == 0) return null;
     334        if (isIncomplete() || nodes.length == 0) return null;
    335335        return nodes[nodes.length-1];
    336336    }
    337337
    338338    public Node firstNode() {
    339         if (incomplete || nodes.length == 0) return null;
     339        if (isIncomplete() || nodes.length == 0) return null;
    340340        return nodes[0];
    341341    }
    342342
    343343    public boolean isFirstLastNode(Node n) {
    344         if (incomplete || nodes.length == 0) return false;
     344        if (isIncomplete() || nodes.length == 0) return false;
    345345        return n == firstNode() || n == lastNode();
    346346    }
  • trunk/src/org/openstreetmap/josm/data/osm/visitor/AllNodesVisitor.java

    r1946 r2578  
    3434     */
    3535    public void visit(Way w) {
    36         if (w.incomplete) return;
     36        if (w.isIncomplete()) return;
    3737        for (Node n : w.getNodes())
    3838            visit(n);
  • trunk/src/org/openstreetmap/josm/data/osm/visitor/BoundingXYVisitor.java

    r2572 r2578  
    2828
    2929    public void visit(Way w) {
    30         if (w.incomplete) return;
     30        if (w.isIncomplete()) return;
    3131        for (Node n : w.getNodes())
    3232            visit(n);
  • trunk/src/org/openstreetmap/josm/data/osm/visitor/MapPaintVisitor.java

    r2526 r2578  
    563563                putError(r, tr("Deleted member ''{0}'' in relation.",
    564564                        m.getMember().getDisplayName(DefaultNameFormatter.getInstance())), true);
    565             } else if(m.getMember().incomplete)
     565            } else if(m.getMember().isIncomplete())
    566566                return;
    567567            else
     
    922922                putError(r, tr("Deleted member ''{0}'' in relation.",
    923923                        m.getMember().getDisplayName(DefaultNameFormatter.getInstance())), true);
    924             } else if(m.getMember().incomplete) {
     924            } else if(m.getMember().isIncomplete()) {
    925925                incomplete = true;
    926926            } else {
     
    13831383    boolean drawable(OsmPrimitive osm)
    13841384    {
    1385         return !osm.isDeleted() && !osm.isFiltered() && !osm.incomplete;
     1385        return !osm.isDeleted() && !osm.isFiltered() && !osm.isIncomplete();
    13861386    }
    13871387
     
    15451545        //profilerN = 0;
    15461546        for (final OsmPrimitive osm : data.getSelected()) {
    1547             if (!osm.incomplete && !osm.isDeleted() && !(osm instanceof Node)
     1547            if (!osm.isIncomplete() && !osm.isDeleted() && !(osm instanceof Node)
    15481548                    && osm.mappaintDrawnCode != paintid
    15491549            ) {
     
    15841584        //profilerN = 0;
    15851585        for (final Node osm: data.searchNodes(bbox)) {
    1586             if (!osm.incomplete && !osm.isDeleted() && (data.isSelected(osm) || !osm.isFiltered())
     1586            if (!osm.isIncomplete() && !osm.isDeleted() && (data.isSelected(osm) || !osm.isFiltered())
    15871587                    && osm.mappaintDrawnCode != paintid)
    15881588            {
  • trunk/src/org/openstreetmap/josm/data/osm/visitor/MergeSourceBuildingVisitor.java

    r2512 r2578  
    130130            return;
    131131        Node clone = new Node(n);
    132         clone.incomplete = true;
     132        clone.setIncomplete(true);
    133133        mappedPrimitives.put(n, clone);
    134134    }
     
    139139        Way clone = new Way(w);
    140140        clone.setNodes(null);
    141         clone.incomplete = true;
     141        clone.setIncomplete(true);
    142142        mappedPrimitives.put(w, clone);
    143143    }
     
    152152        }
    153153        clone.setMembers(null);
    154         clone.incomplete = true;
     154        clone.setIncomplete(true);
    155155        if (! isAlreadyRemembered(r)) {
    156156            mappedPrimitives.put(r, clone);
  • trunk/src/org/openstreetmap/josm/data/osm/visitor/SimplePaintVisitor.java

    r2468 r2578  
    249249     */
    250250    public void visit(Node n) {
    251         if (n.incomplete) return;
     251        if (n.isIncomplete()) return;
    252252
    253253        if (inactive || n.isDisabled()) {
     
    301301     */
    302302    public void visit(Way w) {
    303         if (w.incomplete || w.getNodesCount() < 2)
     303        if (w.isIncomplete() || w.getNodesCount() < 2)
    304304            return;
    305305
     
    344344            4, BasicStroke.CAP_SQUARE, BasicStroke.JOIN_BEVEL);
    345345    public void visit(Relation r) {
    346         if (r.incomplete) return;
     346        if (r.isIncomplete()) return;
    347347
    348348        Color col;
     
    357357
    358358        for (RelationMember m : r.getMembers()) {
    359             if (m.getMember().incomplete || m.getMember().isDeleted()) {
     359            if (m.getMember().isIncomplete() || m.getMember().isDeleted()) {
    360360                continue;
    361361            }
     
    374374                boolean first = true;
    375375                for (Node n : m.getWay().getNodes()) {
    376                     if (n.incomplete || n.isDeleted()) {
     376                    if (n.isIncomplete() || n.isDeleted()) {
    377377                        continue;
    378378                    }
  • trunk/src/org/openstreetmap/josm/gui/DefaultNameFormatter.java

    r2563 r2578  
    8888    public String format(Node node) {
    8989        String name = "";
    90         if (node.incomplete) {
     90        if (node.isIncomplete()) {
    9191            name = tr("incomplete");
    9292        } else {
     
    113113    public String format(Way way) {
    114114        String name = "";
    115         if (way.incomplete) {
     115        if (way.isIncomplete()) {
    116116            name = tr("incomplete");
    117117        } else {
     
    151151    public String format(Relation relation) {
    152152        String name;
    153         if (relation.incomplete) {
     153        if (relation.isIncomplete()) {
    154154            name = tr("incomplete");
    155155        } else {
  • trunk/src/org/openstreetmap/josm/gui/NavigatableComponent.java

    r2505 r2578  
    371371            for (Node n : w.getNodes()) {
    372372                i++;
    373                 if (n.isDeleted() || n.incomplete) {
     373                if (n.isDeleted() || n.isIncomplete()) {
    374374                    continue;
    375375                }
  • trunk/src/org/openstreetmap/josm/gui/SelectionManager.java

    r2512 r2578  
    296296                if (alt) {
    297297                    for (Node n : w.getNodes()) {
    298                         if (!n.incomplete && r.contains(nc.getPoint(n))) {
     298                        if (!n.isIncomplete() && r.contains(nc.getPoint(n))) {
    299299                            selection.add(w);
    300300                            break;
     
    304304                    boolean allIn = true;
    305305                    for (Node n : w.getNodes()) {
    306                         if (!n.incomplete && !r.contains(nc.getPoint(n))) {
     306                        if (!n.isIncomplete() && !r.contains(nc.getPoint(n))) {
    307307                            allIn = false;
    308308                            break;
  • trunk/src/org/openstreetmap/josm/gui/dialogs/PropertiesDialog.java

    r2537 r2578  
    750750        if (Main.main.getCurrentDataSet() != null) {
    751751            for (Relation r : Main.main.getCurrentDataSet().getRelations()) {
    752                 if (!r.isFiltered() && !r.incomplete && !r.isDeleted()) {
     752                if (!r.isFiltered() && !r.isIncomplete() && !r.isDeleted()) {
    753753                    for (RelationMember m : r.getMembers()) {
    754754                        if (newSelection.contains(m.getMember())) {
  • trunk/src/org/openstreetmap/josm/gui/dialogs/RelationListDialog.java

    r2563 r2578  
    534534            }
    535535            for (Relation r: relations) {
    536                 if (! r.isDeleted() && r.isVisible() && !r.incomplete) {
     536                if (! r.isDeleted() && r.isVisible() && !r.isIncomplete()) {
    537537                    this.relations.add(r);
    538538                }
  • trunk/src/org/openstreetmap/josm/gui/dialogs/relation/ChildRelationBrowser.java

    r2512 r2578  
    1616import java.util.Set;
    1717import java.util.Stack;
    18 import java.util.logging.Logger;
    1918
    2019import javax.swing.AbstractAction;
     
    5453 */
    5554public class ChildRelationBrowser extends JPanel {
    56     static private final Logger logger = Logger.getLogger(ChildRelationBrowser.class.getName());
     55    //static private final Logger logger = Logger.getLogger(ChildRelationBrowser.class.getName());
    5756
    5857    /** the tree with relation children */
     
    194193            for (int i=0; i < Math.min(selection.length,10);i++) {
    195194                Relation r = (Relation)selection[i].getLastPathComponent();
    196                 if (r.incomplete) {
     195                if (r.isIncomplete()) {
    197196                    continue;
    198197                }
  • trunk/src/org/openstreetmap/josm/gui/dialogs/relation/GenericRelationEditor.java

    r2563 r2578  
    2525import java.util.Iterator;
    2626import java.util.List;
    27 import java.util.logging.Logger;
    2827
    2928import javax.swing.AbstractAction;
     
    7675 */
    7776public class GenericRelationEditor extends RelationEditor  {
    78 
    79     static private final Logger logger = Logger.getLogger(GenericRelationEditor.class.getName());
     77    //static private final Logger logger = Logger.getLogger(GenericRelationEditor.class.getName());
    8078
    8179    /** the tag table and its model */
     
    13821380                return;
    13831381            Relation r = (Relation) primitive;
    1384             if (r.incomplete)
     1382            if (r.isIncomplete())
    13851383                return;
    13861384
  • trunk/src/org/openstreetmap/josm/gui/dialogs/relation/MemberTableModel.java

    r2563 r2578  
    319319        Set<OsmPrimitive> ret = new HashSet<OsmPrimitive>();
    320320        for (RelationMember member : members) {
    321             if (member.getMember().incomplete) {
     321            if (member.getMember().isIncomplete()) {
    322322                ret.add(member.getMember());
    323323            }
     
    334334        Set<OsmPrimitive> ret = new HashSet<OsmPrimitive>();
    335335        for (RelationMember member : getSelectedMembers()) {
    336             if (member.getMember().incomplete) {
     336            if (member.getMember().isIncomplete()) {
    337337                ret.add(member.getMember());
    338338            }
     
    348348    public boolean hasIncompleteMembers() {
    349349        for (RelationMember member : members) {
    350             if (member.getMember().incomplete)
     350            if (member.getMember().isIncomplete())
    351351                return true;
    352352        }
     
    361361    public boolean hasIncompleteSelectedMembers() {
    362362        for (RelationMember member : getSelectedMembers()) {
    363             if (member.getMember().incomplete)
     363            if (member.getMember().isIncomplete())
    364364                return true;
    365365        }
     
    577577            return false;
    578578        Relation r = member.getRelation();
    579         return !r.incomplete;
     579        return !r.isIncomplete();
    580580    }
    581581
     
    881881
    882882            Way w = m.getWay();
    883             if (w == null || w.incomplete) {
     883            if (w == null || w.isIncomplete()) {
    884884                con.set(i, new WayConnectionType());
    885885                resetFirstGoupIdx = true;
  • trunk/src/org/openstreetmap/josm/gui/dialogs/relation/RelationNodeMap.java

    r2512 r2578  
    5757        for (int i = 0; i < members.size(); ++i) {
    5858            RelationMember m = members.get(i);
    59             if (m.getMember().incomplete || !m.isWay())
     59            if (m.getMember().isIncomplete() || !m.isWay())
    6060            {
    6161                notSortable.add(i);
  • trunk/src/org/openstreetmap/josm/gui/dialogs/relation/RelationTree.java

    r2512 r2578  
    9191            TreePath path  = event.getPath();
    9292            Relation parent = (Relation)event.getPath().getLastPathComponent();
    93             if (! parent.incomplete || parent.isNew())
     93            if (! parent.isIncomplete() || parent.isNew())
    9494                // we don't load complete  or new relations
    9595                return;
  • trunk/src/org/openstreetmap/josm/gui/dialogs/relation/RelationTreeModel.java

    r2512 r2578  
    210210    public boolean isLeaf(Object node) {
    211211        Relation r = (Relation)node;
    212         if (r.incomplete) return false;
     212        if (r.isIncomplete()) return false;
    213213        return getNumRelationChildren(r) == 0;
    214214    }
  • trunk/src/org/openstreetmap/josm/gui/layer/OsmDataLayer.java

    r2565 r2578  
    604604        // records them?
    605605        for (Node n : data.getNodes()) {
    606             if (n.incomplete || n.isDeleted() || doneNodes.contains(n)) {
     606            if (n.isIncomplete() || n.isDeleted() || doneNodes.contains(n)) {
    607607                continue;
    608608            }
  • trunk/src/org/openstreetmap/josm/gui/tagging/ac/AutoCompletionCache.java

    r2512 r2578  
    149149        }
    150150        for (Relation relation : layer.data.getRelations()) {
    151             if (relation.incomplete || relation.isDeleted()) {
     151            if (relation.isIncomplete() || relation.isDeleted()) {
    152152                continue;
    153153            }
  • trunk/src/org/openstreetmap/josm/io/MultiFetchServerObjectReader.java

    r2563 r2578  
    378378    protected void rememberNodesOfIncompleteWaysToLoad(DataSet from) {
    379379        for (Way w: from.getWays()) {
    380             if (w.incomplete) {
     380            if (w.isIncomplete()) {
    381381                for (Node n: w.getNodes()) {
    382                     if (n.incomplete) {
     382                    if (n.isIncomplete()) {
    383383                        nodes.add(n.getId());
    384384                    }
  • trunk/src/org/openstreetmap/josm/io/OsmReader.java

    r2563 r2578  
    448448                            "loaded data and is therefore incomplete too.", externalWayId, w.getNodesCount()));
    449449                }
    450                 w.incomplete = true;
     450                w.setIncomplete(true);
    451451                ds.addPrimitive(w);
    452452            } else {
    453                 w.incomplete = false;
     453                w.setIncomplete(false);
    454454                ds.addPrimitive(w);
    455455            }
  • trunk/src/org/openstreetmap/josm/io/OsmServerBackreferenceReader.java

    r2512 r2578  
    224224            if (isReadFull() ||primitiveType.equals(OsmPrimitiveType.NODE)) {
    225225                for (Way way: waysToCheck) {
    226                     if (!way.isNew() && way.incomplete) {
     226                    if (!way.isNew() && way.isIncomplete()) {
    227227                        OsmServerObjectReader reader = new OsmServerObjectReader(way.getId(), OsmPrimitiveType.from(way), true /* read full */);
    228228                        DataSet wayDs = reader.parseOsm(progressMonitor.createSubTaskMonitor(1, false));
     
    235235                Collection<Relation> relationsToCheck  = new ArrayList<Relation>(ds.getRelations());
    236236                for (Relation relation: relationsToCheck) {
    237                     if (!relation.isNew() && relation.incomplete) {
     237                    if (!relation.isNew() && relation.isIncomplete()) {
    238238                        OsmServerObjectReader reader = new OsmServerObjectReader(relation.getId(), OsmPrimitiveType.from(relation), true /* read full */);
    239239                        DataSet wayDs = reader.parseOsm(progressMonitor.createSubTaskMonitor(1, false));
  • trunk/src/org/openstreetmap/josm/io/OsmWriter.java

    r2381 r2578  
    105105
    106106    public void visit(Node n) {
    107         if (n.incomplete) return;
     107        if (n.isIncomplete()) return;
    108108        addCommon(n, "node");
    109109        out.print(" lat='"+n.getCoor().lat()+"' lon='"+n.getCoor().lon()+"'");
     
    116116
    117117    public void visit(Way w) {
    118         if (w.incomplete) return;
     118        if (w.isIncomplete()) return;
    119119        addCommon(w, "way");
    120120        if (!withBody) {
     
    130130
    131131    public void visit(Relation e) {
    132         if (e.incomplete) return;
     132        if (e.isIncomplete()) return;
    133133        addCommon(e, "relation");
    134134        if (!withBody) {
Note: See TracChangeset for help on using the changeset viewer.