X-Git-Url: https://gitweb.fperrin.net/?a=blobdiff_plain;f=tim%2Fprune%2Fsave%2FFileSaver.java;h=6be44eb80bc3eb6beb828f0270db15c75255954e;hb=4d5796d02a15808311c09448d79e6e7d1de9d636;hp=78fbe3e5d38e49cecc98fee01b360c27e0b154b0;hpb=140e9d165f85c3d4f0435a311e091209313faa2a;p=GpsPrune.git diff --git a/tim/prune/save/FileSaver.java b/tim/prune/save/FileSaver.java index 78fbe3e..6be44eb 100644 --- a/tim/prune/save/FileSaver.java +++ b/tim/prune/save/FileSaver.java @@ -40,6 +40,7 @@ import tim.prune.data.Coordinate; import tim.prune.data.DataPoint; import tim.prune.data.Field; import tim.prune.data.FieldList; +import tim.prune.data.RecentFile; import tim.prune.data.Timestamp; import tim.prune.data.Track; import tim.prune.load.GenericFileFilter; @@ -500,8 +501,9 @@ public class FileSaver { DataPoint point = track.getPoint(p); boolean savePoint = ((point.isWaypoint() && _pointTypeSelector.getWaypointsSelected()) - || (!point.isWaypoint() && point.getPhoto()==null && _pointTypeSelector.getTrackpointsSelected()) - || (!point.isWaypoint() && point.getPhoto()!=null && _pointTypeSelector.getPhotopointsSelected())) + || (!point.isWaypoint() && !point.hasMedia() && _pointTypeSelector.getTrackpointsSelected()) + || (!point.isWaypoint() && point.getPhoto()!=null && _pointTypeSelector.getPhotopointsSelected()) + || (!point.isWaypoint() && point.getAudio()!=null && _pointTypeSelector.getAudiopointsSelected())) && (!_pointTypeSelector.getJustSelection() || (p>=selStart && p<=selEnd)); if (!savePoint) {continue;} numSaved++; @@ -512,9 +514,8 @@ public class FileSaver info = _model.getFieldInfo(f); if (info.isSelected()) { - if (!firstField) - { - // output field separator + // output field separator + if (!firstField) { buffer.append(delimiter); } saveField(buffer, point, info.getField(), coordFormat, altitudeFormat, timestampFormat); @@ -527,7 +528,10 @@ public class FileSaver } // Store directory in config for later Config.setConfigString(Config.KEY_TRACK_DIR, saveFile.getParentFile().getAbsolutePath()); + // Add to recent file list + Config.getRecentFileList().addFile(new RecentFile(inSaveFile, true)); // Save successful + UpdateMessageBroker.informSubscribers(); UpdateMessageBroker.informSubscribers(I18nManager.getText("confirm.save.ok1") + " " + numSaved + " " + I18nManager.getText("confirm.save.ok2") + " " + saveFile.getAbsolutePath()); @@ -592,7 +596,7 @@ public class FileSaver { if (inTimestampFormat == Timestamp.FORMAT_ORIGINAL) { // output original string - inBuffer.append(inPoint.getFieldValue(Field.TIMESTAMP)); + inBuffer.append(inPoint.getTimestamp().getText(Timestamp.FORMAT_ORIGINAL)); } else { // format value accordingly