Ticket #8902: environment.diff
| File environment.diff, 4.3 KB (added by , 12 years ago) |
|---|
-
src/org/openstreetmap/josm/gui/mappaint/Environment.java
77 77 return e; 78 78 } 79 79 80 public Environment withParentAndIndexAndLinkContext(OsmPrimitive parent, int index) { 81 Environment e = new Environment(this); 82 e.parent = parent; 83 e.index = index; 84 e.context = Context.LINK; 85 return e; 86 } 87 80 88 public Environment withChild(OsmPrimitive child) { 81 89 Environment e = new Environment(this); 82 90 e.child = child; 83 91 return e; 84 92 } 85 93 94 95 public Environment withChildAndIndexAndLinkContext(OsmPrimitive child, int index) { 96 Environment e = new Environment(this); 97 e.child = child; 98 e.index = index; 99 e.context = Context.LINK; 100 return e; 101 } 102 86 103 public Environment withIndex(int index) { 87 104 Environment e = new Environment(this); 88 105 e.index = index; -
src/org/openstreetmap/josm/gui/mappaint/mapcss/MapCSSStyleSource.java
166 166 if (sub == null) { 167 167 sub = "default"; 168 168 } 169 170 if (sub.equals("*")) { 169 else if ("*".equals(sub)) { 171 170 for (Entry<String, Cascade> entry : mc.getLayers()) { 172 171 env.layer = entry.getKey(); 173 172 if (Utils.equal(env.layer, "*")) { … … 176 175 r.execute(env); 177 176 } 178 177 } 178 179 179 env.layer = sub; 180 180 r.execute(env); 181 181 } -
src/org/openstreetmap/josm/gui/mappaint/mapcss/Selector.java
107 107 for (int i=0; i<w.getNodesCount(); i++) { 108 108 Node n = w.getNode(i); 109 109 if (n.equals(e.osm)) { 110 if (link.matches(e.withParent (w).withIndex(i).withLinkContext())) {110 if (link.matches(e.withParentAndIndexAndLinkContext(w, i))) { 111 111 e.parent = w; 112 112 e.index = i; 113 113 return; … … 129 129 for (int i=0; i < r.getMembersCount(); i++) { 130 130 RelationMember m = r.getMember(i); 131 131 if (m.getMember().equals(e.osm)) { 132 if (link.matches(e.withParent (r).withIndex(i).withLinkContext())) {132 if (link.matches(e.withParentAndIndexAndLinkContext(r, i))) { 133 133 e.parent = r; 134 134 e.index = i; 135 135 return; … … 155 155 for (int i=0; i<wayNodes.size(); i++) { 156 156 Node n = wayNodes.get(i); 157 157 if (left.matches(e.withPrimitive(n))) { 158 if (link.matches(e.withChild (n).withIndex(i).withLinkContext())) {158 if (link.matches(e.withChildAndIndexAndLinkContext(n, i))) { 159 159 e.child = n; 160 160 e.index = i; 161 161 return true; … … 168 168 for (int i=0; i<members.size(); i++) { 169 169 OsmPrimitive member = members.get(i).getMember(); 170 170 if (left.matches(e.withPrimitive(member))) { 171 if (link.matches(e.withChild (member).withIndex(i).withLinkContext())) {171 if (link.matches(e.withChildAndIndexAndLinkContext(member, i))) { 172 172 e.child = member; 173 173 e.index = i; 174 174 return true;
