Changeset 18287 in josm for trunk/src/org/openstreetmap/josm/io
- Timestamp:
- 2021-10-19T01:26:15+02:00 (3 years ago)
- Location:
- trunk/src/org/openstreetmap/josm/io
- Files:
-
- 7 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/org/openstreetmap/josm/io/GpxWriter.java
r18219 r18287 149 149 validprefixes = namespaces.stream().map(n -> n.getPrefix()).collect(Collectors.toList()); 150 150 151 data.creator = JOSM_CREATOR_NAME; 151 152 out.println("<?xml version='1.0' encoding='UTF-8'?>"); 152 out.println("<gpx version=\"1.1\" creator=\"JOSM GPX export\" xmlns=\"http://www.topografix.com/GPX/1/1\""); 153 154 out.print("<gpx version=\"1.1\" creator=\""); 155 out.print(JOSM_CREATOR_NAME); 156 out.println("\" xmlns=\"http://www.topografix.com/GPX/1/1\""); 153 157 154 158 StringBuilder schemaLocations = new StringBuilder("http://www.topografix.com/GPX/1/1 http://www.topografix.com/GPX/1/1/gpx.xsd"); -
trunk/src/org/openstreetmap/josm/io/session/GpxTracksSessionExporter.java
r18133 r18287 7 7 import java.io.Writer; 8 8 import java.nio.charset.StandardCharsets; 9 import java.time.Instant; 9 10 10 11 import org.openstreetmap.josm.gui.layer.GpxLayer; … … 16 17 */ 17 18 public class GpxTracksSessionExporter extends GenericSessionExporter<GpxLayer> { 19 20 private Instant metaTime; 18 21 19 22 /** … … 37 40 Writer writer = new OutputStreamWriter(out, StandardCharsets.UTF_8); 38 41 GpxWriter w = new GpxWriter(new PrintWriter(writer)); 42 if (metaTime != null) { 43 w.setMetaTime(metaTime); 44 } 39 45 w.write(layer.data); 40 46 w.flush(); 41 47 } 48 49 protected void setMetaTime(Instant metaTime) { 50 this.metaTime = metaTime; 51 } 42 52 } -
trunk/src/org/openstreetmap/josm/io/session/GpxTracksSessionImporter.java
r18208 r18287 55 55 importData = GpxImporter.loadLayers(in, support.getFile(fileStr), support.getLayerName(), progressMonitor); 56 56 } 57 if (importData.getGpxLayer() != null && importData.getGpxLayer().data != null) { 58 importData.getGpxLayer().data.fromSession = true; 59 } 57 60 58 61 support.addPostLayersTask(importData.getPostLayerTask()); -
trunk/src/org/openstreetmap/josm/io/session/MarkerSessionExporter.java
r17733 r18287 10 10 import java.io.Writer; 11 11 import java.nio.charset.StandardCharsets; 12 import java.time.Instant; 12 13 import java.util.Collection; 13 14 import java.util.Collections; … … 32 33 */ 33 34 public class MarkerSessionExporter extends AbstractSessionExporter<MarkerLayer> { 35 36 private Instant metaTime; 34 37 35 38 /** … … 87 90 Writer writer = new OutputStreamWriter(out, StandardCharsets.UTF_8); 88 91 MarkerWriter w = new MarkerWriter(new PrintWriter(writer)); 92 if (metaTime != null) { 93 w.setMetaTime(metaTime); 94 } 89 95 w.write(layer); 90 96 w.flush(); 97 } 98 99 protected void setMetaTime(Instant metaTime) { 100 this.metaTime = metaTime; 91 101 } 92 102 … … 110 120 public void write(MarkerLayer layer) { 111 121 GpxData data = new GpxData(); 122 layer.data.getLayerPrefs().forEach((k, v) -> { 123 if (k != null && k.indexOf("markers.") == 0) { 124 data.getLayerPrefs().put(k, v); 125 } 126 }); 112 127 data.put(GpxData.META_DESC, "exported JOSM marker layer"); 113 128 for (Marker m : layer.data) { -
trunk/src/org/openstreetmap/josm/io/session/MarkerSessionImporter.java
r18208 r18287 6 6 import java.io.IOException; 7 7 import java.io.InputStream; 8 import java.util.List;9 8 10 9 import javax.xml.xpath.XPath; … … 15 14 16 15 import org.openstreetmap.josm.gui.io.importexport.GpxImporter; 17 import org.openstreetmap.josm.gui.layer.GpxLayer;18 16 import org.openstreetmap.josm.gui.layer.Layer; 19 17 import org.openstreetmap.josm.gui.layer.markerlayer.MarkerLayer; … … 51 49 support.addPostLayersTask(importData.getPostLayerTask()); 52 50 53 GpxLayer gpxLayer = null; 54 List<SessionReader.LayerDependency> deps = support.getLayerDependencies(); 55 if (!deps.isEmpty()) { 56 Layer layer = deps.get(0).getLayer(); 57 if (layer instanceof GpxLayer) { 58 gpxLayer = (GpxLayer) layer; 59 } 60 } 61 62 MarkerLayer markerLayer = importData.getMarkerLayer(); 63 if (markerLayer != null) { 64 markerLayer.fromLayer = gpxLayer; 65 } 66 67 return markerLayer; 51 return importData.getMarkerLayer(); 68 52 } 69 53 } catch (XPathExpressionException e) { -
trunk/src/org/openstreetmap/josm/io/session/SessionReader.java
r17659 r18287 4 4 import static org.openstreetmap.josm.tools.I18n.tr; 5 5 6 import java.awt.Color;7 6 import java.awt.GraphicsEnvironment; 8 7 import java.io.BufferedInputStream; … … 47 46 import org.openstreetmap.josm.io.IllegalDataException; 48 47 import org.openstreetmap.josm.tools.CheckParameterUtil; 49 import org.openstreetmap.josm.tools.ColorHelper;50 48 import org.openstreetmap.josm.tools.JosmRuntimeException; 51 49 import org.openstreetmap.josm.tools.Logging; … … 620 618 } 621 619 } 622 String colorString = el.getAttribute("color");623 if (colorString != null) {624 try {625 Color color = ColorHelper.html2color(colorString);626 layer.setColor(color);627 } catch (RuntimeException ex) {628 Logging.warn("Cannot parse color " + colorString);629 }630 }631 620 layer.setName(names.get(entry.getKey())); 632 621 layers.add(layer); -
trunk/src/org/openstreetmap/josm/io/session/SessionWriter.java
r18133 r18287 44 44 import org.openstreetmap.josm.gui.layer.markerlayer.MarkerLayer; 45 45 import org.openstreetmap.josm.gui.preferences.projection.ProjectionPreference; 46 import org.openstreetmap.josm.tools.ColorHelper;47 46 import org.openstreetmap.josm.tools.JosmRuntimeException; 48 47 import org.openstreetmap.josm.tools.Logging; … … 241 240 if (!Utils.equalsEpsilon(layer.getOpacity(), 1.0)) { 242 241 el.setAttribute("opacity", Double.toString(layer.getOpacity())); 243 }244 if (layer.getColor() != null) {245 el.setAttribute("color", ColorHelper.color2html(layer.getColor()));246 242 } 247 243 Set<Layer> deps = dependencies.get(layer);
Note:
See TracChangeset
for help on using the changeset viewer.