1 package tim.prune.undo;
\r
3 import tim.prune.I18nManager;
\r
4 import tim.prune.data.TrackInfo;
\r
7 * Operation to undo an insertion (eg interpolate)
\r
9 public class UndoInsert implements UndoOperation
\r
11 private int _startPosition = 0;
\r
12 private int _numInserted = 0;
\r
17 * @param inStart start of insert
\r
18 * @param inNumInserted number of points inserted
\r
20 public UndoInsert(int inStart, int inNumInserted)
\r
22 _startPosition = inStart;
\r
23 _numInserted = inNumInserted;
\r
28 * @return description of operation including parameters
\r
30 public String getDescription()
\r
32 return I18nManager.getText("undo.insert") + " (" + _numInserted + ")";
\r
37 * Perform the undo operation on the given TrackInfo
\r
38 * @param inTrackInfo TrackInfo object on which to perform the operation
\r
40 public void performUndo(TrackInfo inTrackInfo) throws UndoException
\r
42 // restore track to previous values
\r
43 inTrackInfo.getTrack().deleteRange(_startPosition, _startPosition + _numInserted - 1);
\r
45 inTrackInfo.getSelection().select(_startPosition-1, _startPosition-1, _startPosition);
\r