\r
import tim.prune.I18nManager;\r
import tim.prune.data.DataPoint;\r
+import tim.prune.data.PhotoList;\r
import tim.prune.data.TrackInfo;\r
\r
/**\r
{\r
private int _startIndex = -1;\r
private DataPoint[] _points = null;\r
+ private PhotoList _photoList = null;\r
\r
\r
/**\r
{\r
_startIndex = inTrackInfo.getSelection().getStart();\r
_points = inTrackInfo.cloneSelectedRange();\r
+ _photoList = inTrackInfo.getPhotoList().cloneList();\r
}\r
\r
\r
*/\r
public void performUndo(TrackInfo inTrackInfo)\r
{\r
+ // restore photos to how they were before\r
+ inTrackInfo.getPhotoList().restore(_photoList);\r
+ // reconnect photos to points\r
+ for (int i=0; i<_points.length; i++)\r
+ {\r
+ DataPoint point = _points[i];\r
+ if (point != null && point.getPhoto() != null)\r
+ {\r
+ point.getPhoto().setDataPoint(point);\r
+ }\r
+ }\r
// restore point array into track\r
inTrackInfo.getTrack().insertRange(_points, _startIndex);\r
}\r