package tim.prune.function.distance; import java.util.ArrayList; import javax.swing.table.AbstractTableModel; import tim.prune.I18nManager; import tim.prune.data.DataPoint; /** * General table model class for the two models in the distance function */ public abstract class GenericTableModel extends AbstractTableModel { /** list of points */ protected ArrayList _pointList = null; /** Column heading */ private static String _currPointLabel = I18nManager.getText("dialog.distances.currentpoint"); /** * Initialize the table model with the point list * @param inPointList list of points */ public void init(ArrayList inPointList) { _pointList = inPointList; } /** * @return row count */ public int getRowCount() { if (_pointList == null) {return 0;} return _pointList.size(); } /** * Get the name of the specified point from the list * @param inIndex index of point * @return waypoint name if waypoint, otherwise "current point" */ protected String getPointName(int inIndex) { if (_pointList == null) {return "null";} DataPoint point = _pointList.get(inIndex); if (point.isWaypoint()) {return point.getWaypointName();} return _currPointLabel; } }