X-Git-Url: http://gitweb.fperrin.net/?a=blobdiff_plain;f=tim%2Fprune%2Fdata%2FField.java;h=d020a7ebdd5789e080e1323dd2459a8796c851cc;hb=4d5796d02a15808311c09448d79e6e7d1de9d636;hp=089d8cdc2d1a623b89f0d7b7e4615b6524fb128e;hpb=54b9d8bc8f0025ccf97a67d9dd217ef1f9cf082f;p=GpsPrune.git diff --git a/tim/prune/data/Field.java b/tim/prune/data/Field.java index 089d8cd..d020a7e 100644 --- a/tim/prune/data/Field.java +++ b/tim/prune/data/Field.java @@ -4,39 +4,50 @@ import tim.prune.I18nManager; /** * Class to represent a field of a data point - * including its type */ public class Field { private String _labelKey = null; private String _customLabel = null; - private FieldType _type = null; private boolean _builtin = false; - public static final Field LATITUDE = new Field("fieldname.latitude", FieldType.COORD); - public static final Field LONGITUDE = new Field("fieldname.longitude", FieldType.COORD); - public static final Field ALTITUDE = new Field("fieldname.altitude", FieldType.INT); - public static final Field TIMESTAMP = new Field("fieldname.timestamp", FieldType.TIME); - public static final Field WAYPT_NAME = new Field("fieldname.waypointname", FieldType.NONE); - public static final Field WAYPT_TYPE = new Field("fieldname.waypointtype", FieldType.NONE); - public static final Field NEW_SEGMENT = new Field("fieldname.newsegment", FieldType.BOOL); + public static final Field LATITUDE = new Field("fieldname.latitude", true); + public static final Field LONGITUDE = new Field("fieldname.longitude", true); + public static final Field ALTITUDE = new Field("fieldname.altitude", true); + public static final Field TIMESTAMP = new Field("fieldname.timestamp", true); + public static final Field WAYPT_NAME = new Field("fieldname.waypointname", true); + public static final Field WAYPT_TYPE = new Field("fieldname.waypointtype", true); + public static final Field DESCRIPTION = new Field("fieldname.description", true); + public static final Field NEW_SEGMENT = new Field("fieldname.newsegment", true); + public static final Field SPEED = new Field("fieldname.speed", true); + public static final Field VERTICAL_SPEED = new Field("fieldname.verticalspeed", true); + + // TODO: Field for photo filename, ability to load (from text) and save (to text) + + /** List of all the available fields */ private static final Field[] ALL_AVAILABLE_FIELDS = { - LATITUDE, LONGITUDE, ALTITUDE, TIMESTAMP, WAYPT_NAME, WAYPT_TYPE, NEW_SEGMENT, - new Field("fieldname.custom", FieldType.NONE) + LATITUDE, LONGITUDE, ALTITUDE, TIMESTAMP, WAYPT_NAME, WAYPT_TYPE, DESCRIPTION, NEW_SEGMENT, + SPEED, VERTICAL_SPEED, + new Field(I18nManager.getText("fieldname.custom")) }; /** * Private constructor * @param inLabelKey Key for label texts - * @param inType type of field + * @param inBuiltin true for built-in types, false for custom */ - private Field(String inLabelKey, FieldType inType) + private Field(String inLabelKey, boolean inBuiltin) { - _labelKey = inLabelKey; - _customLabel = null; - _type = inType; - _builtin = true; + if (inBuiltin) { + _labelKey = inLabelKey; + _customLabel = null; + } + else { + _labelKey = null; + _customLabel = inLabelKey; + } + _builtin = inBuiltin; } @@ -46,9 +57,7 @@ public class Field */ public Field(String inLabel) { - _labelKey = null; - _customLabel = inLabel; - _type = FieldType.NONE; + this(inLabel, false); } /** @@ -78,14 +87,6 @@ public class Field return _builtin; } - /** - * @return field type - */ - public FieldType getType() - { - return _type; - } - /** * Checks if the two fields are equal * @param inOther other Field object @@ -103,7 +104,8 @@ public class Field */ public static Field getField(String inFieldName) { - for (int i=0; i