X-Git-Url: https://gitweb.fperrin.net/?a=blobdiff_plain;f=tim%2Fprune%2Fload%2Fxml%2FGpxHandler.java;h=a4906ac0a5b81d9dac6076d1e542a0b4339a7e7f;hb=140e9d165f85c3d4f0435a311e091209313faa2a;hp=771621b57f75b98ca1d5229704dda7b63e3a446b;hpb=da0b1f449260a0b4a94318006382a9039726ef3e;p=GpsPrune.git diff --git a/tim/prune/load/xml/GpxHandler.java b/tim/prune/load/xml/GpxHandler.java index 771621b..a4906ac 100644 --- a/tim/prune/load/xml/GpxHandler.java +++ b/tim/prune/load/xml/GpxHandler.java @@ -6,6 +6,7 @@ import org.xml.sax.Attributes; import org.xml.sax.SAXException; import tim.prune.data.Field; +import tim.prune.load.TrackNameList; /** @@ -13,14 +14,22 @@ import tim.prune.data.Field; */ public class GpxHandler extends XmlHandler { + private boolean _insidePoint = false; private boolean _insideWaypoint = false; private boolean _insideName = false; private boolean _insideElevation = false; private boolean _insideTime = false; + private boolean _insideType = false; + private boolean _startSegment = true; + private boolean _isTrackPoint = false; + private int _trackNum = -1; + private String _trackName = null; private String _name = null, _latitude = null, _longitude = null; private String _elevation = null; private String _time = null; - private ArrayList _pointList = new ArrayList(); + private String _type = null; + private ArrayList _pointList = new ArrayList(); + private TrackNameList _trackNameList = new TrackNameList(); /** @@ -31,9 +40,11 @@ public class GpxHandler extends XmlHandler Attributes attributes) throws SAXException { // Read the parameters for waypoints and track points - if (qName.equalsIgnoreCase("wpt") || qName.equalsIgnoreCase("trkpt")) + if (qName.equalsIgnoreCase("wpt") || qName.equalsIgnoreCase("trkpt") || qName.equalsIgnoreCase("rtept")) { + _insidePoint = true; _insideWaypoint = qName.equalsIgnoreCase("wpt"); + _isTrackPoint = qName.equalsIgnoreCase("trkpt"); int numAttributes = attributes.getLength(); for (int i=0; i