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;
{
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++;
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);
}
// 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());