Ignore:
Timestamp:
2015-10-29T12:52:09+01:00 (8 years ago)
Author:
simon04
Message:

see #10730 - Way splitting: fix and test (route) relation adaption

File:
1 edited

Legend:

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

    r8964 r8965  
    567567            newSelection.add(way);
    568568        }
     569        final int indexOfWayToKeep = newWays.indexOf(wayToKeep);
    569570        newWays.remove(wayToKeep);
    570571
     
    677678
    678679                        int j = i_c;
    679                         for (Way wayToAdd : newWays) {
     680                        final List<Way> waysToAddBefore = newWays.subList(0, indexOfWayToKeep);
     681                        for (Way wayToAdd : waysToAddBefore) {
    680682                            RelationMember em = new RelationMember(rm.getRole(), wayToAdd);
    681683                            j++;
    682                             if ((backwards != null) && backwards) {
     684                            if (Boolean.TRUE.equals(backwards)) {
     685                                c.addMember(i_c + 1, em);
     686                            } else {
     687                                c.addMember(j - 1, em);
     688                            }
     689                        }
     690                        final List<Way> waysToAddAfter = newWays.subList(indexOfWayToKeep, newWays.size());
     691                        for (Way wayToAdd : waysToAddAfter) {
     692                            RelationMember em = new RelationMember(rm.getRole(), wayToAdd);
     693                            j++;
     694                            if (Boolean.TRUE.equals(backwards)) {
    683695                                c.addMember(i_c, em);
    684696                            } else {
Note: See TracChangeset for help on using the changeset viewer.