Changeset 1951 in josm for trunk/src/org


Ignore:
Timestamp:
2009-08-10T20:36:40+02:00 (15 years ago)
Author:
jttt
Message:

Replace some occurrences of RelationMember.member with getters

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

Legend:

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

    r1937 r1951  
    77import java.awt.event.ActionEvent;
    88import java.awt.event.KeyEvent;
     9import java.util.ArrayList;
    910import java.util.Collection;
    1011import java.util.HashMap;
     
    225226        // modify all relations containing the now-deleted ways
    226227        for (Relation r : relationsUsingWays) {
    227             Relation newRel = new Relation(r);
    228             newRel.members.clear();
     228            List<RelationMember> newMembers = new ArrayList<RelationMember>();
    229229            HashSet<String> rolesToReAdd = new HashSet<String>();
    230230            for (RelationMember rm : r.getMembers()) {
     
    234234                    rolesToReAdd.add(rm.getRole());
    235235                } else {
    236                     newRel.members.add(rm);
     236                    newMembers.add(rm);
    237237                }
    238238            }
    239239            for (String role : rolesToReAdd) {
    240                 newRel.members.add(new RelationMember(role, modifyWay));
    241             }
     240                newMembers.add(new RelationMember(role, modifyWay));
     241            }
     242            Relation newRel = new Relation(r);
     243            newRel.setMembers(newMembers);
    242244            cmds.add(new ChangeCommand(r, newRel));
    243245        }
  • trunk/src/org/openstreetmap/josm/actions/MergeNodesAction.java

    r1937 r1951  
    1212import java.util.HashSet;
    1313import java.util.LinkedList;
     14import java.util.List;
    1415import java.util.Map;
    1516import java.util.Set;
     
    275276        // modify all relations containing the now-deleted nodes
    276277        for (Relation r : relationsUsingNodes) {
    277             Relation newRel = new Relation(r);
    278             newRel.members.clear();
     278            List<RelationMember> newMembers = new ArrayList<RelationMember>();
    279279            HashSet<String> rolesToReAdd = new HashSet<String>();
    280280            for (RelationMember rm : r.getMembers()) {
     
    284284                    rolesToReAdd.add(rm.getRole());
    285285                } else {
    286                     newRel.members.add(rm);
     286                    newMembers.add(rm);
    287287                }
    288288            }
    289289            for (String role : rolesToReAdd) {
    290                 newRel.members.add(new RelationMember(role, dest));
    291             }
     290                newMembers.add(new RelationMember(role, dest));
     291            }
     292            Relation newRel = new Relation(r);
     293            newRel.setMembers(newMembers);
    292294            cmds.add(new ChangeCommand(r, newRel));
    293295        }
  • trunk/src/org/openstreetmap/josm/actions/SplitWayAction.java

    r1938 r1951  
    326326                            j++;
    327327                            if (backwards) {
    328                                 c.members.add(i, em);
     328                                c.addMember(i, em);
    329329                            } else {
    330                                 c.members.add(j, em);
     330                                c.addMember(j, em);
    331331                            }
    332332                        }
  • trunk/src/org/openstreetmap/josm/command/RelationMemberConflictResolverCommand.java

    r1750 r1951  
    4040
    4141    /**
    42      * 
     42     *
    4343     * @param my my relation
    4444     * @param their their relation
     
    7272        // nodes
    7373        //
    74         my.members.clear();
    75         for (int i=0; i<mergedMembers.size();i++) {
    76             RelationMember n = mergedMembers.get(i);
    77             my.members.add(n);
    78         }
     74        my.setMembers(mergedMembers);
    7975
    8076        // remember the layer
    81         layer = Main.main.map.mapView.getEditLayer();
     77        layer = Main.map.mapView.getEditLayer();
    8278        return true;
    8379    }
  • trunk/src/org/openstreetmap/josm/command/RemoveRelationMemberCommand.java

    r1814 r1951  
    4444    @Override public boolean executeCommand() {
    4545        super.executeCommand();
    46         int removed_at = relation.members.indexOf(member);
    47         relation.members.remove(member);
    48         if ((location != -1) && (removed_at != location)) {
    49             relation.members.add(removed_at, member);
     46        int removeIndex = relation.getMembers().indexOf(member);
     47        if ((location != -1) && (removeIndex != location)) {
    5048            Main.debug("error removing relation member");
    5149            return false;
     50        } else {
     51            relation.removeMember(removeIndex);
     52            relation.modified = true;
     53            return true;
    5254        }
    53         relation.modified = true;
    54         return true;
    5555    }
    5656
    5757    @Override public void undoCommand() {
    5858        super.undoCommand();
    59         relation.members.add(member);
     59        relation.addMember(member);
    6060        relation.modified = this.getOrig(relation).modified;
    6161    }
  • trunk/src/org/openstreetmap/josm/data/osm/Relation.java

    r1926 r1951  
    6363    public RelationMember getMember(int index) {
    6464        return members.get(index);
     65    }
     66
     67    /**
     68     *
     69     * @param member
     70     * @since 1951
     71     */
     72    public void addMember(RelationMember member) {
     73        members.add(member);
     74    }
     75
     76    /**
     77     *
     78     * @param index
     79     * @param member
     80     * @since 1951
     81     */
     82    public void addMember(int index, RelationMember member) {
     83        members.add(index, member);
     84    }
     85
     86    /**
     87     * Replace member at position specified by index.
     88     * @param index
     89     * @param member
     90     * @return Member that was at the position
     91     * @since 1951
     92     */
     93    public RelationMember setMember(int index, RelationMember member) {
     94        return members.set(index, member);
     95    }
     96
     97    /**
     98     * Removes member at specified position.
     99     * @param index
     100     * @return Member that was at the position
     101     * @since 1951
     102     */
     103    public RelationMember removeMember(int index) {
     104        return members.remove(index);
    65105    }
    66106
  • trunk/src/org/openstreetmap/josm/data/osm/visitor/MergeSourceBuildingVisitor.java

    r1937 r1951  
    9090            clone = new Relation(r);
    9191        }
    92         clone.members.clear();
     92
     93        List<RelationMember> newMembers = new ArrayList<RelationMember>();
    9394        for (RelationMember member: r.getMembers()) {
    94             RelationMember cloneMember = new RelationMember(member.getRole(), mappedPrimitives.get(member.getMember()));
    95             clone.members.add(cloneMember);
    96         }
     95            newMembers.add(
     96                new RelationMember(member.getRole(), mappedPrimitives.get(member.getMember())));
     97
     98        }
     99        clone.setMembers(newMembers);
     100
    97101        if (! mappedPrimitives.keySet().contains(r)) {
    98102            mappedPrimitives.put(r, clone);
     
    104108            return;
    105109        Relation clone = new Relation(r);
    106         clone.members.clear();
     110        clone.setMembers(null);
    107111        mappedPrimitives.put(r, clone);
    108112    }
     
    148152            clone = new Relation(r);
    149153        }
    150         clone.members.clear();
     154        clone.setMembers(null);
    151155        clone.incomplete = true;
    152156        if (! isAlreadyRemembered(r)) {
  • trunk/src/org/openstreetmap/josm/gui/dialogs/PropertiesDialog.java

    r1945 r1951  
    854854            Relation rel = new Relation(cur);
    855855            Collection<OsmPrimitive> sel = Main.main.getCurrentDataSet().getSelected();
     856            int index = 0;
    856857            for (RelationMember rm : cur.getMembers()) {
    857858                for (OsmPrimitive osm : sel) {
    858859                    if (rm.getMember() == osm)
    859860                    {
    860                         rel.members.remove(rm);
     861                        rel.removeMember(index);
    861862                        break;
    862863                    }
    863864                }
     865                index++;
    864866            }
    865867            Main.main.undoRedo.add(new ChangeCommand(cur, rel));
  • trunk/src/org/openstreetmap/josm/gui/dialogs/relation/MemberTableModel.java

    r1937 r1951  
    229229        if (relation == null)
    230230            return false;
    231         if (relation.members.size() != members.size())
     231        if (relation.getMembersCount() != members.size())
    232232            return false;
    233         for (int i = 0; i < relation.members.size(); i++) {
    234             if (!relation.members.get(i).equals(members.get(i)))
     233        for (int i = 0; i < relation.getMembersCount(); i++) {
     234            if (!relation.getMember(i).equals(members.get(i)))
    235235                return false;
    236236        }
  • trunk/src/org/openstreetmap/josm/gui/dialogs/relation/RelationTreeModel.java

    r1938 r1951  
    5757        if (members == null) return;
    5858        Relation root = new Relation();
    59         root.members.addAll(members);
     59        root.setMembers(members);
    6060        this.root = root;
    6161        listeners = new CopyOnWriteArrayList<TreeModelListener>();
     
    150150        if (members == null) return;
    151151        Relation r = new Relation();
    152         r.members.addAll(members);
     152        r.setMembers(members);
    153153        this.root = r;
    154154        fireRootReplacedEvent();
  • trunk/src/org/openstreetmap/josm/io/OsmReader.java

    r1928 r1951  
    412412            if (en == null) throw new Error("Failed to create relation " + e.getKey().id);
    413413
     414            List<RelationMember> relationMembers = new ArrayList<RelationMember>();
     415
    414416            for (RelationMemberData emd : e.getValue()) {
    415417                OsmPrimitive member;
     
    438440                    throw new SAXException(tr("Unknown relation member type {0}", emd.type));
    439441                }
    440                 en.members.add(new RelationMember(emd.role, member));
    441             }
     442                relationMembers.add(new RelationMember(emd.role, member));
     443            }
     444            en.setMembers(relationMembers);
    442445        }
    443446        hm = null;
Note: See TracChangeset for help on using the changeset viewer.