Changeset 12604 in josm for trunk/src/org/openstreetmap/josm/io
- Timestamp:
- 2017-08-14T14:42:13+02:00 (7 years ago)
- Location:
- trunk/src/org/openstreetmap/josm/io/session
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/org/openstreetmap/josm/io/session/ImagerySessionExporter.java
r12600 r12604 85 85 ImageryPreferenceEntry e = new ImageryPreferenceEntry(layer.getInfo()); 86 86 Map<String, String> data = new LinkedHashMap<>(Preferences.serializeStruct(e, ImageryPreferenceEntry.class)); 87 if (layer instanceof AbstractTileSourceLayer) { 88 data.putAll(((AbstractTileSourceLayer<?>) layer).getDisplaySettings().toPropertiesMap()); 89 } 87 Utils.instanceOfThen(layer, AbstractTileSourceLayer.class, tsLayer -> { 88 data.putAll(tsLayer.getDisplaySettings().toPropertiesMap()); 89 if (!tsLayer.getDisplaySettings().isAutoZoom()) { 90 data.put("zoom-level", Integer.toString(tsLayer.getZoomLevel())); 91 } 92 }); 90 93 addAttributes(layerElem, data, support); 91 if (layer instanceof AbstractTileSourceLayer){92 OffsetBookmark offset = ((AbstractTileSourceLayer<?>) layer).getDisplaySettings().getOffsetBookmark();94 Utils.instanceOfThen(layer, AbstractTileSourceLayer.class, tsLayer -> { 95 OffsetBookmark offset = tsLayer.getDisplaySettings().getOffsetBookmark(); 93 96 if (offset != null) { 94 97 Map<String, String> offsetProps = offset.toPropertiesMap(); … … 97 100 addAttributes(offsetEl, offsetProps, support); 98 101 } 99 } 102 }); 100 103 ImageryFilterSettings filters = layer.getFilterSettings(); 101 104 if (filters != null) { -
trunk/src/org/openstreetmap/josm/io/session/ImagerySessionImporter.java
r12600 r12604 8 8 import java.util.Map; 9 9 10 import org.openstreetmap.josm.Main; 10 11 import org.openstreetmap.josm.data.Preferences; 11 12 import org.openstreetmap.josm.data.imagery.ImageryInfo; … … 44 45 ImageryInfo info = new ImageryInfo(prefEntry); 45 46 ImageryLayer layer = ImageryLayer.create(info); 46 if (layer instanceof AbstractTileSourceLayer) { 47 AbstractTileSourceLayer<?> tsLayer = (AbstractTileSourceLayer<?>) layer; 47 Utils.instanceOfThen(layer, AbstractTileSourceLayer.class, tsLayer -> { 48 48 tsLayer.getDisplaySettings().applyFromPropertiesMap(attributes); 49 if (!tsLayer.getDisplaySettings().isAutoZoom()) { 50 String zoomStr = attributes.get("zoom-level"); 51 if (zoomStr != null) { 52 support.addPostLayersTask(() -> { 53 try { 54 tsLayer.setZoomLevel(Integer.parseInt(zoomStr)); 55 } catch (NumberFormatException e) { 56 Main.warn(e); 57 } 58 }); 59 } 60 } 49 61 Element offsetEl = getFirstElementByTagName(elem, "offset"); 50 62 if (offsetEl != null) { … … 53 65 tsLayer.getDisplaySettings().setOffsetBookmark(offset); 54 66 } 55 } 67 }); 56 68 Element filtersEl = getFirstElementByTagName(elem, "filters"); 57 69 if (filtersEl != null) {
Note:
See TracChangeset
for help on using the changeset viewer.