Changeset 11706 in josm for trunk/src/org
- Timestamp:
- 2017-03-09T08:55:03+01:00 (8 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/org/openstreetmap/josm/data/imagery/ImageryLayerInfo.java
r11703 r11706 185 185 Collections.sort(allDefaultLayers); 186 186 buildIdMap(allDefaultLayers, defaultLayerIds); 187 updateEntriesFromDefaults(); 187 updateEntriesFromDefaults(!loadError); 188 188 buildIdMap(layers, layerIds); 189 189 if (!loadError && !defaultLayerIds.isEmpty()) { … … 219 219 /** 220 220 * Update user entries according to the list of default entries. 221 */ 222 public void updateEntriesFromDefaults() { 221 * @param dropold if <code>true</code> old entries should be removed 222 * @since 11706 223 */ 224 public void updateEntriesFromDefaults(boolean dropold) { 223 225 // add new default entries to the user selection 224 226 boolean changed = false; 225 Collection<String> knownDefaults = Main.pref.getCollection("imagery.layers.default"); 226 Collection<String> newKnownDefaults = new TreeSet<>( knownDefaults);227 Collection<String> knownDefaults = new TreeSet<>(Main.pref.getCollection("imagery.layers.default")); 228 Collection<String> newKnownDefaults = new TreeSet<>(); 227 229 for (ImageryInfo def : defaultLayers) { 228 230 if (def.isDefaultEntry()) { 229 231 boolean isKnownDefault = false; 230 for (String url: knownDefaults) {231 if (isSimilar( url, def.getUrl())) {232 for (String entry : knownDefaults) { 233 if (isSimilar(entry, def.getId())) { 232 234 isKnownDefault = true; 235 newKnownDefaults.add(entry); 236 knownDefaults.remove(entry); 237 break; 238 } else if (isSimilar(entry, def.getUrl())) { 239 isKnownDefault = true; 240 newKnownDefaults.add(def.getId()); 241 knownDefaults.remove(entry); 233 242 break; 234 243 } … … 236 245 boolean isInUserList = false; 237 246 if (!isKnownDefault) { 238 newKnownDefaults.add(def.getUrl()); 247 if (def.getId() != null) { 248 newKnownDefaults.add(def.getId()); 249 } else { 250 newKnownDefaults.add(def.getUrl()); 251 } 239 252 for (ImageryInfo i : layers) { 240 253 if (isSimilar(def, i)) { … … 249 262 } 250 263 } 264 } 265 if (!dropold && !knownDefaults.isEmpty()) { 266 newKnownDefaults.addAll(knownDefaults); 251 267 } 252 268 Main.pref.putCollection("imagery.layers.default", newKnownDefaults);
Note:
See TracChangeset
for help on using the changeset viewer.