X-Git-Url: https://gitweb.fperrin.net/?p=GpsPrune.git;a=blobdiff_plain;f=tim%2Fprune%2Fdata%2FDataPoint.java;h=34d7bd72055275f81339e1fe23c434d2008603c6;hp=e053e1ad14405add6a237b4e748884c8575fe3c4;hb=4d5796d02a15808311c09448d79e6e7d1de9d636;hpb=f35b6d628f68e3b5ef19965ad8988d0dd1eb8efa diff --git a/tim/prune/data/DataPoint.java b/tim/prune/data/DataPoint.java index e053e1a..34d7bd7 100644 --- a/tim/prune/data/DataPoint.java +++ b/tim/prune/data/DataPoint.java @@ -19,8 +19,8 @@ public class DataPoint private Timestamp _timestamp = null; /** Attached photo */ private Photo _photo = null; - /** Attached audio file */ - private AudioFile _audio = null; + /** Attached audio clip */ + private AudioClip _audio = null; private String _waypointName = null; private boolean _startOfSegment = false; private boolean _markedForDeletion = false; @@ -38,6 +38,8 @@ public class DataPoint _fieldValues = inValueArray; // save list of fields _fieldList = inFieldList; + // Remove double quotes around values + removeQuotes(_fieldValues); // parse fields into objects parseFields(null, inAltFormat); } @@ -164,7 +166,7 @@ public class DataPoint } else { // use default altitude format from config - parseFields(inField, Config.getConfigBoolean(Config.KEY_METRIC_UNITS)?Altitude.Format.METRES:Altitude.Format.FEET); + parseFields(inField, Config.getUnitSet().getDefaultAltitudeFormat()); } } @@ -315,10 +317,10 @@ public class DataPoint } /** - * Set the audio file for this point + * Set the audio clip for this point * @param inAudio audio object */ - public void setAudio(AudioFile inAudio) { + public void setAudio(AudioClip inAudio) { _audio = inAudio; _modifyCount++; } @@ -326,23 +328,23 @@ public class DataPoint /** * @return associated audio object */ - public AudioFile getAudio() { + public AudioClip getAudio() { return _audio; } /** * Attach the given media object according to type - * @param inMedia either a photo or an audio file + * @param inMedia either a photo or an audio clip */ - public void attachMedia(MediaFile inMedia) + public void attachMedia(MediaObject inMedia) { if (inMedia != null) { if (inMedia instanceof Photo) { setPhoto((Photo) inMedia); inMedia.setDataPoint(this); } - else if (inMedia instanceof AudioFile) { - setAudio((AudioFile) inMedia); + else if (inMedia instanceof AudioClip) { + setAudio((AudioClip) inMedia); inMedia.setDataPoint(this); } } @@ -363,6 +365,25 @@ public class DataPoint return _photo != null || _audio != null; } + /** + * @return name of attached photo and/or audio + */ + public String getMediaName() + { + String mediaName = null; + if (_photo != null) mediaName = _photo.getName(); + if (_audio != null) + { + if (mediaName == null) { + mediaName = _audio.getName(); + } + else { + mediaName = mediaName + ", " + _audio.getName(); + } + } + return mediaName; + } + /** * Interpolate a set of points between this one and the given one * @param inEndPoint end point of interpolation @@ -457,6 +478,41 @@ public class DataPoint } + /** + * Remove all single and double quotes surrounding each value + * @param inValues array of values + */ + private static void removeQuotes(String[] inValues) + { + if (inValues == null) {return;} + for (int i=0; i