3 import java.util.ArrayList;
4 import javax.swing.AbstractListModel;
6 import tim.prune.data.DataPoint;
7 import tim.prune.data.Track;
10 * Class to act as list model for the waypoint list
12 public class WaypointListModel extends AbstractListModel
15 ArrayList<DataPoint> _waypoints = null;
18 * Constructor giving Track object
19 * @param inTrack Track object
21 public WaypointListModel(Track inTrack)
24 _waypoints = new ArrayList<DataPoint>();
25 _track.getWaypoints(_waypoints);
29 * @see javax.swing.ListModel#getSize()
33 return _waypoints.size();
37 * @see javax.swing.ListModel#getElementAt(int)
39 public Object getElementAt(int inIndex)
41 return _waypoints.get(inIndex).getWaypointName();
45 * Get the waypoint at the given index
46 * @param inIndex index number, starting at 0
47 * @return DataPoint object
49 public DataPoint getWaypoint(int inIndex)
51 return _waypoints.get(inIndex);
55 * Fire event to notify that contents have changed
57 public void fireChanged()
59 _track.getWaypoints(_waypoints);
60 this.fireContentsChanged(this, 0, getSize()-1);