X-Git-Url: http://gitweb.fperrin.net/?p=GpsPrune.git;a=blobdiff_plain;f=tim%2Fprune%2Fdata%2FSelection.java;h=4849a4a42bcddb948172bf494f9180d5639eb9a0;hp=f09088dc218e6f498cef7d78a498a5995e019c02;hb=5625a1abadb5f2ca5f017fe7dbda1d5141cb637b;hpb=23959e65a6a0d581e657b07186d18b7a1ac5afeb diff --git a/tim/prune/data/Selection.java b/tim/prune/data/Selection.java index f09088d..4849a4a 100644 --- a/tim/prune/data/Selection.java +++ b/tim/prune/data/Selection.java @@ -13,6 +13,7 @@ public class Selection private int _currentPoint = -1; private boolean _valid = false; private int _startIndex = -1, _endIndex = -1; + private int _currentPhotoIndex = -1; private IntegerRange _altitudeRange = null; private int _climb = -1, _descent = -1; private int _altitudeFormat = Altitude.FORMAT_NONE; @@ -258,6 +259,7 @@ public class Selection { _currentPoint = -1; deselectRange(); + deselectPhoto(); } @@ -377,6 +379,47 @@ public class Selection } + /** + * Deselect photo + */ + public void deselectPhoto() + { + _currentPhotoIndex = -1; + check(); + } + + + /** + * Select the specified photo and point + * @param inPhotoIndex index of selected photo in PhotoList + * @param inPointIndex index of selected point + */ + public void selectPhotoAndPoint(int inPhotoIndex, int inPointIndex) + { + _currentPhotoIndex = inPhotoIndex; + if (inPointIndex > -1) + { + // select associated point, if any + selectPoint(inPointIndex); + } + else + { + // Check if not already done + check(); + } + } + + + /** + * @return currently selected photo index + */ + public int getCurrentPhotoIndex() + { + // System.out.println("Current photo index = " + _currentPhotoIndex); + return _currentPhotoIndex; + } + + /** * Check that the selection still makes sense * and fire update message to listeners