\r
import tim.prune.I18nManager;\r
import tim.prune.data.DataPoint;\r
+import tim.prune.data.FileInfo;\r
import tim.prune.data.PhotoList;\r
import tim.prune.data.TrackInfo;\r
\r
private int _cropIndex = -1;\r
private int _numLoaded = -1;\r
private DataPoint[] _contents = null;\r
- private String _previousFilename = null;\r
private PhotoList _photoList = null;\r
+ private FileInfo _oldFileInfo = null;\r
\r
\r
/**\r
_cropIndex = inIndex;\r
_numLoaded = inNumLoaded;\r
_contents = null;\r
- _previousFilename = null;\r
}\r
\r
\r
_cropIndex = -1;\r
_numLoaded = inNumLoaded;\r
_contents = inOldTrackInfo.getTrack().cloneContents();\r
- if (inOldTrackInfo.getFileInfo().getNumFiles() == 1)\r
- _previousFilename = inOldTrackInfo.getFileInfo().getFilename();\r
+ _oldFileInfo = inOldTrackInfo.getFileInfo().clone();\r
_photoList = inPhotoList;\r
}\r
\r
*/\r
public void performUndo(TrackInfo inTrackInfo) throws UndoException\r
{\r
- // remove file from fileinfo\r
- inTrackInfo.getFileInfo().removeFile();\r
- if (_previousFilename != null)\r
- {\r
- inTrackInfo.getFileInfo().setFile(_previousFilename);\r
+ // remove source from fileinfo\r
+ if (_oldFileInfo == null) {\r
+ inTrackInfo.getFileInfo().removeSource();\r
+ }\r
+ else {\r
+ inTrackInfo.setFileInfo(_oldFileInfo);\r
}\r
// Crop / replace\r
if (_contents == null)\r