fix comment b7f41a55cc69

This commit is contained in:
Jimmy Shih
2011-11-05 15:03:18 -07:00
parent c26e63dec3
commit c63763982a
21 changed files with 266 additions and 200 deletions
@@ -125,7 +125,7 @@ limitations under the License.
android:layout_column="2" android:layout_column="2"
android:layout_marginBottom="-9dip" android:layout_marginBottom="-9dip"
android:layout_marginTop="-9dip" android:layout_marginTop="-9dip"
android:text="@string/mile" android:text="@string/unit_mile"
android:textColor="@color/stat_label_text" /> android:textColor="@color/stat_label_text" />
<!-- TODO 4/08/2009 <!-- TODO 4/08/2009
The following is a bad hack to get a spacer the same size as the The following is a bad hack to get a spacer the same size as the
@@ -351,7 +351,7 @@ limitations under the License.
android:layout_column="2" android:layout_column="2"
android:layout_marginBottom="-9dip" android:layout_marginBottom="-9dip"
android:layout_marginTop="-9dip" android:layout_marginTop="-9dip"
android:text="@string/feet" android:text="@string/unit_feet"
android:textColor="@color/stat_label_text"/> android:textColor="@color/stat_label_text"/>
<TextView <TextView
android:background="@color/black" android:background="@color/black"
@@ -375,7 +375,7 @@ limitations under the License.
android:layout_column="5" android:layout_column="5"
android:layout_marginBottom="-9dip" android:layout_marginBottom="-9dip"
android:layout_marginTop="-9dip" android:layout_marginTop="-9dip"
android:text="@string/feet" android:text="@string/unit_feet"
android:textColor="@color/stat_label_text" /> android:textColor="@color/stat_label_text" />
</TableRow> </TableRow>
@@ -409,7 +409,7 @@ limitations under the License.
android:layout_column="2" android:layout_column="2"
android:layout_marginBottom="-9dip" android:layout_marginBottom="-9dip"
android:layout_marginTop="-9dip" android:layout_marginTop="-9dip"
android:text="@string/feet" android:text="@string/unit_feet"
android:textColor="@color/stat_label_text" /> android:textColor="@color/stat_label_text" />
<TextView <TextView
android:background="@color/black" android:background="@color/black"
@@ -433,7 +433,7 @@ limitations under the License.
android:layout_column="5" android:layout_column="5"
android:layout_marginBottom="-9dip" android:layout_marginBottom="-9dip"
android:layout_marginTop="-9dip" android:layout_marginTop="-9dip"
android:text="@string/feet" android:text="@string/unit_feet"
android:textColor="@color/stat_label_text" /> android:textColor="@color/stat_label_text" />
</TableRow> </TableRow>
+6 -6
View File
@@ -306,8 +306,8 @@ limitations under the License.
<!-- Time --> <!-- Time -->
<string name="voice_hour">Stunde</string> <string name="voice_hour">Stunde</string>
<string name="voice_hours">Stunden</string> <string name="voice_hours">Stunden</string>
<string name="hr">Std</string> <string name="unit_hour">Std</string>
<string name="min">Min</string> <string name="unit_minute">Min</string>
<string name="voice_minute">Minute</string> <string name="voice_minute">Minute</string>
<string name="voice_minutes">Minuten</string> <string name="voice_minutes">Minuten</string>
<string name="voice_second">Sekunde</string> <string name="voice_second">Sekunde</string>
@@ -315,11 +315,11 @@ limitations under the License.
<!--string name="milliseconds">ms</string--> <!--string name="milliseconds">ms</string-->
<!-- Distance --> <!-- Distance -->
<!--string name="meter">m</string--> <!--string name="unit_meter">m</string-->
<!--string name="kilometer">km</string--> <!--string name="unit_kilometer">km</string-->
<string name="voice_kilometers">Kilometer</string> <string name="voice_kilometers">Kilometer</string>
<string name="feet">Fuß</string> <string name="unit_feet">Fuß</string>
<!--string name="mile">mi</string--> <!--string name="unit_mile">mi</string-->
<string name="voice_miles">Meilen</string> <string name="voice_miles">Meilen</string>
<!-- Speed and Pace --> <!-- Speed and Pace -->
+1 -1
View File
@@ -382,7 +382,7 @@ limitations under the License.
<!-- Distance --> <!-- Distance -->
<string name="voice_kilometers">kilómetros</string> <string name="voice_kilometers">kilómetros</string>
<string name="feet">pies</string> <string name="unit_feet">pies</string>
<string name="voice_miles">millas</string> <string name="voice_miles">millas</string>
<!-- Speed and Pace --> <!-- Speed and Pace -->
+6 -6
View File
@@ -356,8 +356,8 @@ limitations under the License.
<!-- Time --> <!-- Time -->
<string name="voice_hour">tunti</string> <string name="voice_hour">tunti</string>
<string name="voice_hours">tuntia</string> <string name="voice_hours">tuntia</string>
<string name="hr">h</string> <string name="unit_hour">h</string>
<string name="min">min</string> <string name="unit_minute">min</string>
<string name="voice_minute">minuutti</string> <string name="voice_minute">minuutti</string>
<string name="voice_minutes">minuuttia</string> <string name="voice_minutes">minuuttia</string>
<string name="voice_second">sekunti</string> <string name="voice_second">sekunti</string>
@@ -365,11 +365,11 @@ limitations under the License.
<string name="milliseconds">ms</string> <string name="milliseconds">ms</string>
<!-- Distance --> <!-- Distance -->
<string name="meter">m</string> <string name="unit_meter">m</string>
<string name="kilometer">km</string> <string name="unit_kilometer">km</string>
<string name="voice_kilometers">kilometriä</string> <string name="voice_kilometers">kilometriä</string>
<string name="feet">ft</string> <string name="unit_feet">ft</string>
<string name="mile">mi</string> <string name="unit_mile">mi</string>
<string name="voice_miles">mailia</string> <string name="voice_miles">mailia</string>
<!-- Speed and Pace --> <!-- Speed and Pace -->
+1 -1
View File
@@ -286,7 +286,7 @@ limitations under the License.
<string name="voice_seconds">secondes</string> <string name="voice_seconds">secondes</string>
<!-- Distance --> <!-- Distance -->
<string name="feet">pied</string> <string name="unit_feet">pied</string>
<string name="voice_kilometers">kilomètres</string> <string name="voice_kilometers">kilomètres</string>
<string name="voice_miles">milles</string> <string name="voice_miles">milles</string>
+6 -6
View File
@@ -261,19 +261,19 @@ limitations under the License.
<!-- Time --> <!-- Time -->
<string name="voice_hour">ora</string> <string name="voice_hour">ora</string>
<string name="voice_hours">ore</string> <string name="voice_hours">ore</string>
<string name="hr">h</string> <string name="unit_hour">h</string>
<string name="min">min</string> <string name="unit_minute">min</string>
<string name="voice_minute">minuto</string> <string name="voice_minute">minuto</string>
<string name="voice_minutes">minuti</string> <string name="voice_minutes">minuti</string>
<string name="voice_second">secondo</string> <string name="voice_second">secondo</string>
<string name="voice_seconds">secondi</string> <string name="voice_seconds">secondi</string>
<!-- Distance --> <!-- Distance -->
<string name="meter">m</string> <string name="unit_meter">m</string>
<string name="kilometer">km</string> <string name="unit_kilometer">km</string>
<string name="voice_kilometers">chilometri</string> <string name="voice_kilometers">chilometri</string>
<string name="feet">pd</string> <string name="unit_feet">pd</string>
<string name="mile">mi</string> <string name="unit_mile">mi</string>
<string name="voice_miles">miglia</string> <string name="voice_miles">miglia</string>
<!-- Speed and Pace --> <!-- Speed and Pace -->
+2 -2
View File
@@ -344,8 +344,8 @@ limitations under the License.
<!-- Time --> <!-- Time -->
<string name="voice_hour">時</string> <string name="voice_hour">時</string>
<string name="voice_hours">時</string> <string name="voice_hours">時</string>
<string name="hr">時</string> <string name="unit_hour">時</string>
<string name="min">分</string> <string name="unit_minute">分</string>
<string name="voice_minute">分</string> <string name="voice_minute">分</string>
<string name="voice_minutes">分</string> <string name="voice_minutes">分</string>
<string name="voice_second">秒</string> <string name="voice_second">秒</string>
+6 -6
View File
@@ -289,19 +289,19 @@ limitations under the License.
<!-- Time --> <!-- Time -->
<string name="voice_hour">godzina</string> <string name="voice_hour">godzina</string>
<string name="voice_hours">godziny</string> <string name="voice_hours">godziny</string>
<string name="hr">godz.</string> <string name="unit_hour">godz.</string>
<string name="min">min</string> <string name="unit_minute">min</string>
<string name="voice_minute">minuta</string> <string name="voice_minute">minuta</string>
<string name="voice_minutes">minuty</string> <string name="voice_minutes">minuty</string>
<string name="voice_second">sekunda</string> <string name="voice_second">sekunda</string>
<string name="voice_seconds">sekundy</string> <string name="voice_seconds">sekundy</string>
<!-- Distance --> <!-- Distance -->
<string name="meter">m</string> <string name="unit_meter">m</string>
<string name="kilometer">km</string> <string name="unit_kilometer">km</string>
<string name="voice_kilometers">kilometerów</string> <string name="voice_kilometers">kilometerów</string>
<string name="feet">st.</string> <string name="unit_feet">st.</string>
<string name="mile">mi</string> <string name="unit_mile">mi</string>
<string name="voice_miles">mil</string> <string name="voice_miles">mil</string>
<!-- Speed and Pace --> <!-- Speed and Pace -->
+2 -2
View File
@@ -248,14 +248,14 @@ limitations under the License.
<!-- Time --> <!-- Time -->
<string name="voice_hour">hora</string> <string name="voice_hour">hora</string>
<string name="voice_hours">horas</string> <string name="voice_hours">horas</string>
<string name="hr">h</string> <string name="unit_hour">h</string>
<string name="voice_minute">minuto</string> <string name="voice_minute">minuto</string>
<string name="voice_minutes">minutos</string> <string name="voice_minutes">minutos</string>
<string name="voice_second">segundo</string> <string name="voice_second">segundo</string>
<string name="voice_seconds">segundos</string> <string name="voice_seconds">segundos</string>
<!-- Distance --> <!-- Distance -->
<string name="feet">pés</string> <string name="unit_feet">pés</string>
<string name="voice_kilometers">kilômetros</string> <string name="voice_kilometers">kilômetros</string>
<string name="voice_miles">milhas</string> <string name="voice_miles">milhas</string>
+6 -6
View File
@@ -352,8 +352,8 @@ limitations under the License.
<!-- Time --> <!-- Time -->
<string name="voice_hour">час</string> <string name="voice_hour">час</string>
<string name="voice_hours">часов</string> <string name="voice_hours">часов</string>
<string name="hr">ч</string> <string name="unit_hour">ч</string>
<string name="min">мин</string> <string name="unit_minute">мин</string>
<string name="voice_minute">минута</string> <string name="voice_minute">минута</string>
<string name="voice_minutes">минут</string> <string name="voice_minutes">минут</string>
<string name="voice_second">секунда</string> <string name="voice_second">секунда</string>
@@ -361,11 +361,11 @@ limitations under the License.
<string name="milliseconds">мс</string> <string name="milliseconds">мс</string>
<!-- Distance --> <!-- Distance -->
<string name="meter">м</string> <string name="unit_meter">м</string>
<string name="kilometer">км</string> <string name="unit_kilometer">км</string>
<string name="voice_kilometers">километров</string> <string name="voice_kilometers">километров</string>
<string name="feet">футов</string> <string name="unit_feet">футов</string>
<string name="mile">миль</string> <string name="unit_mile">миль</string>
<string name="voice_miles">мили</string> <string name="voice_miles">мили</string>
<!-- Speed and Pace --> <!-- Speed and Pace -->
+6 -6
View File
@@ -264,19 +264,19 @@ limitations under the License.
<!-- Time --> <!-- Time -->
<string name="voice_hour">timme</string> <string name="voice_hour">timme</string>
<string name="voice_hours">timmar</string> <string name="voice_hours">timmar</string>
<string name="hr">tim</string> <string name="unit_hour">tim</string>
<string name="min">min</string> <string name="unit_minute">min</string>
<string name="voice_minute">minut</string> <string name="voice_minute">minut</string>
<string name="voice_minutes">minuter</string> <string name="voice_minutes">minuter</string>
<string name="voice_second">sekund</string> <string name="voice_second">sekund</string>
<string name="voice_seconds">sekunder</string> <string name="voice_seconds">sekunder</string>
<!-- Distance --> <!-- Distance -->
<string name="meter">m</string> <string name="unit_meter">m</string>
<string name="kilometer">km</string> <string name="unit_kilometer">km</string>
<string name="voice_kilometers">kilometer</string> <string name="voice_kilometers">kilometer</string>
<string name="feet">ft</string> <string name="unit_feet">ft</string>
<string name="mile">mi</string> <string name="unit_mile">mi</string>
<string name="voice_miles">miles</string> <string name="voice_miles">miles</string>
<!-- Speed and Pace --> <!-- Speed and Pace -->
+2 -2
View File
@@ -353,8 +353,8 @@ limitations under the License.
<!-- Time --> <!-- Time -->
<string name="voice_hour">小时</string> <string name="voice_hour">小时</string>
<string name="voice_hours">小时</string> <string name="voice_hours">小时</string>
<string name="hr">时</string> <string name="unit_hour">时</string>
<string name="min">分</string> <string name="unit_minute">分</string>
<string name="voice_minute">分钟</string> <string name="voice_minute">分钟</string>
<string name="voice_minutes">分钟</string> <string name="voice_minutes">分钟</string>
<string name="voice_second">秒</string> <string name="voice_second">秒</string>
+108 -74
View File
@@ -1313,39 +1313,117 @@ limitations under the License.
seconds seconds
</string> </string>
<!-- time --> <!-- Unit -->
<string name="hr" <string name="unit_feet"
translation_description="Abbreviation for hours. E.g, '2 hr'.">
hr
</string>
<string name="second"
translation_description="Abbreviation for second. E.g, '5 s' for 5 seconds.">
s
</string>
<string name="min"
translation_description="Abbreviation for minutes. E.g, '2 min'.">
min
</string>
<!-- distance -->
<string name="kilometer"
translation_description="Abbreviation for kilometers. E.g., '2 km'.">
km
</string>
<string name="meter"
translation_description="Abbreviation for meters. E.g., '2 m'.">
m
</string>
<string name="mile"
translation_description="Abbreviation for miles. E.g., '2 mi'.">
mi
</string>
<string name="feet"
translation_description="Abbreviation for feet. E.g., '2 ft'."> translation_description="Abbreviation for feet. E.g., '2 ft'.">
ft ft
</string> </string>
<string name="unit_hour"
translation_description="Abbreviation for hour. E.g, '2 hr'.">
hr
</string>
<string name="unit_kilometer"
translation_description="Abbreviation for kilometer. E.g., '2 km'.">
km
</string>
<string name="unit_meter"
translation_description="Abbreviation for meter. E.g., '2 m'.">
m
</string>
<string name="unit_mile"
translation_description="Abbreviation for mile. E.g., '2 mi'.">
mi
</string>
<string name="unit_minute"
translation_description="Abbreviation for minute. E.g, '2 min'.">
min
</string>
<!-- Value - values in a setting picker -->
<string name="value_adapt_accuracy"
translation_description="In a setting picker, the value to adapt for accuracy.">
adapt for accuracy
</string>
<string name="value_adapt_battery_life"
translation_description="In a setting picker, the value to adapt for battery life.">
adapt for battery life
</string>
<string name="value_always"
translation_description="In a setting picker, the value to always enable the option.">
Always
</string>
<string name="value_float_mile"
translation_description="In a setting picker, a float value in miles. E.g., '2.2 mi'.">
%.1f mi
</string>
<string name="value_float_mile_poor_gps"
translation_description="In a setting picker, a float value in miles, recommended when having
poor GPS signal. E.g., '2.2 mi (poor GPS)'.">
%.1f mi (poor GPS)
</string>
<string name="value_integer_feet"
translation_description="In a setting picker, an integer value in feet. E.g., '2 ft'.">
%d ft
</string>
<string name="value_integer_feet_excellent_gps"
translation_description="In a setting picker, an integer value in feet, recommended when having
excellent GPS signal. E.g., '2 ft (excellent GPS)'.">
%d ft (excellent GPS)
</string>
<string name="value_integer_feet_recommended"
translation_description="In a setting picker, an integer value in feet that is recommended.
E.g., '2 ft (recommended)'.">
%d ft (recommended)
</string>
<string name="value_integer_kilometer"
translation_description="In a setting picker, an integer value in kilometers. E.g., '2 km'.">
%d km
</string>
<string name="value_integer_meter"
translation_description="In a setting picker, an integer value in meters. E.g., '2 m'.">
%d m
</string>
<string name="value_integer_meter_excellent_gps"
translation_description="In a setting picker, an integer value in meters, recommended when
having excellent GPS signal. E.g., '2 m (excellent GPS)'.">
%d m (excellent GPS)
</string>
<string name="value_integer_meter_poor_gps"
translation_description="In a setting picker, an integer value in meters, recommended when
having poor GPS signal. E.g., '2 m (poor GPS)'.">
%d m (poor GPS)
</string>
<string name="value_integer_meter_recommended"
translation_description="In a setting picker, an integer value in meters that is recommended.
E.g., '2 m (recommended)'.">
%d m (recommended)
</string>
<string name="value_integer_mile"
translation_description="In a setting picker, an integer value in miles. E.g., '2 mi'.">
%d mi
</string>
<string name="value_integer_minute"
translation_description="In a setting picker, an integer value in minutes. E.g., '2 min'.">
%d min
</string>
<string name="value_integer_second"
translation_description="In a setting picker, an integer value in seconds. E.g., '2 s'.">
%d s
</string>
<string name="value_never"
translation_description="In a setting picker, the value to never use the feature.">
Never
</string>
<string name="value_off"
translation_description="In a setting picker, the value to turn off the feature.">
Off
</string>
<string name="value_smallest_recommended"
translation_description="In a setting picker, the value to use the smallest value, also the
recommended value.">
smallest (recommended)
</string>
<!-- Speed unit --> <!-- Speed unit -->
<string name="kilometer_per_hour" <string name="kilometer_per_hour"
translation_description="For speed unit, abbreviation for kilometers per hour. E.g, '5 km/h'."> translation_description="For speed unit, abbreviation for kilometers per hour. E.g, '5 km/h'.">
@@ -1668,52 +1746,8 @@ limitations under the License.
speed thresholds. E.g., use one color for segments where the speed is below the average speed thresholds. E.g., use one color for segments where the speed is below the average
speed of the track."> speed of the track.">
Dynamic Thresholds Dynamic Thresholds
</string>
<string name="auto_resume_track_timeout_never"
translation_description="In the 'Auto-resume timeout' setting, the option to never resume a
recording after phone reboot.">
</string>
<string name="auto_resume_track_timeout_always"
translation_description="In the 'Auto-resume timeout' setting, the option to always resume a
recording after phone reboot.">
Always
</string>
<string name="task_frequency_off"
translation_description="For task frequency settings like voice announcement, the option to turn
off the task.">
Off
</string>
<string name="settings_recommended"
translation_description="For settings, the text next to the recommended value.">
recommended
</string>
<string name="min_required_accuracy_excellent_gps"
translation_description="For the 'Min accuracy' setting, the text next to the option that should
be picked when the phone has excellent GPS.">
excellent GPS
</string>
<string name="min_required_accuracy_poor_gps"
translation_description="In the 'Min accuracy' setting, the text next to the option that should
be picked when the phone has poor GPS.">
poor GPS
</string>
<string name="min_recording_interval_adaptive_battery"
translation_description="In the 'Min time between points' setting, the option to record using
an adaptive algorithm to optimize for battery life.">
battery life (adaptive)
</string> </string>
<string name="min_recording_interval_adaptive_accuracy"
translation_description="In the 'Min time between points' setting, the option to record using
an adaptive algorithm to optimize for high accuracy.">
high accuracy (adaptive)
</string>
<string name="min_recording_interval_highest"
translation_description="In the 'Min time between points' setting, the option to record at the
highest rate.">
highest
</string>
<!-- Activity Types --> <!-- Activity Types -->
<string name="activity_type_airplane" <string name="activity_type_airplane"
translation_description="When entering the Activity Type, an option for airplane."> translation_description="When entering the Activity Type, an option for airplane.">
@@ -832,8 +832,8 @@ public class ChartView extends View {
canvas.drawLine(leftBorder, y, rightEdge, y, borderPaint); canvas.drawLine(leftBorder, y, rightEdge, y, borderPaint);
Context c = getContext(); Context c = getContext();
String s = mode == Mode.BY_DISTANCE String s = mode == Mode.BY_DISTANCE
? (metricUnits ? c.getString(R.string.kilometer) : c.getString(R.string.mile)) ? (metricUnits ? c.getString(R.string.unit_kilometer) : c.getString(R.string.unit_mile))
: c.getString(R.string.min); : c.getString(R.string.unit_minute);
canvas.drawText(s, rightEdge, effectiveHeight + .2f * UNIT_BORDER + topBorder, labelPaint); canvas.drawText(s, rightEdge, effectiveHeight + .2f * UNIT_BORDER + topBorder, labelPaint);
} }
@@ -852,7 +852,7 @@ public class ChartView extends View {
Context c = getContext(); Context c = getContext();
// TODO: This should really show units for all series. // TODO: This should really show units for all series.
String s = metricUnits ? c.getString(R.string.meter) : c.getString(R.string.feet); String s = metricUnits ? c.getString(R.string.unit_meter) : c.getString(R.string.unit_feet);
canvas.drawText(s, leftBorder - UNIT_BORDER * .2f, UNIT_BORDER * .8f + topBorder, labelPaint); canvas.drawText(s, leftBorder - UNIT_BORDER * .2f, UNIT_BORDER * .8f + topBorder, labelPaint);
} }
@@ -123,20 +123,21 @@ public class SettingsActivity extends PreferenceActivity {
String[] options = new String[values.length]; String[] options = new String[values.length];
for (int i = 0; i < values.length; i++) { for (int i = 0; i < values.length; i++) {
if (values[i].equals("-2")) { if (values[i].equals("-2")) {
options[i] = getString(R.string.min_recording_interval_adaptive_battery); options[i] = getString(R.string.value_adapt_battery_life);
} else if (values[i].equals("-1")) { } else if (values[i].equals("-1")) {
options[i] = getString(R.string.min_recording_interval_adaptive_accuracy); options[i] = getString(R.string.value_adapt_accuracy);
} else if (values[i].equals("0")) { } else if (values[i].equals("0")) {
options[i] = getString(R.string.min_recording_interval_highest) + " (" options[i] = getString(R.string.value_smallest_recommended);
+ getString(R.string.settings_recommended) + ")";
} else { } else {
int value = Integer.parseInt(values[i]); int value = Integer.parseInt(values[i]);
String format;
if (value < 60) { if (value < 60) {
options[i] = value + " " + getString(R.string.second); format = getString(R.string.value_integer_second);
} else { } else {
value = value / 60; value = value / 60;
options[i] = value + " " + getString(R.string.min); format = getString(R.string.value_integer_minute);
} }
options[i] = String.format(format, value);
} }
} }
ListPreference list = (ListPreference) findPreference( ListPreference list = (ListPreference) findPreference(
@@ -152,11 +153,13 @@ public class SettingsActivity extends PreferenceActivity {
String[] options = new String[values.length]; String[] options = new String[values.length];
for (int i = 0; i < values.length; i++) { for (int i = 0; i < values.length; i++) {
if (values[i].equals("0")) { if (values[i].equals("0")) {
options[i] = getString(R.string.auto_resume_track_timeout_never); options[i] = getString(R.string.value_never);
} else if (values[i].equals("-1")) { } else if (values[i].equals("-1")) {
options[i] = getString(R.string.auto_resume_track_timeout_always); options[i] = getString(R.string.value_always);
} else { } else {
options[i] = values[i] + " " + getString(R.string.min); int value = Integer.parseInt(values[i]);
String format = getString(R.string.value_integer_minute);
options[i] = String.format(format, value);
} }
} }
ListPreference list = (ListPreference) findPreference( ListPreference list = (ListPreference) findPreference(
@@ -423,16 +426,20 @@ public class SettingsActivity extends PreferenceActivity {
* Sets the display options for a periodic task. * Sets the display options for a periodic task.
*/ */
private void setTaskOptions(boolean isMetric, int listId) { private void setTaskOptions(boolean isMetric, int listId) {
String distanceUnit = isMetric ? getString(R.string.kilometer) : getString(R.string.mile);
String[] values = getResources().getStringArray(R.array.task_frequency_values); String[] values = getResources().getStringArray(R.array.task_frequency_values);
String[] options = new String[values.length]; String[] options = new String[values.length];
for (int i = 0; i < values.length; i++) { for (int i = 0; i < values.length; i++) {
if (values[i].equals("0")) { if (values[i].equals("0")) {
options[i] = getString(R.string.task_frequency_off); options[i] = getString(R.string.value_off);
} else if (values[i].startsWith("-")) { } else if (values[i].startsWith("-")) {
options[i] = values[i].substring(1) + " " + distanceUnit; int value = Integer.parseInt(values[i].substring(1));
String format = isMetric ? getString(R.string.value_integer_kilometer)
: getString(R.string.value_integer_mile);
options[i] = String.format(format, value);
} else { } else {
options[i] = values[i] + " " + getString(R.string.minute); int value = Integer.parseInt(values[i]);
String format = getString(R.string.value_integer_minute);
options[i] = String.format(format, value);
} }
} }
@@ -444,7 +451,6 @@ public class SettingsActivity extends PreferenceActivity {
* Sets the display options for min distance between points. * Sets the display options for min distance between points.
*/ */
private void setMinDistanceOptions(boolean isMetric, int listId) { private void setMinDistanceOptions(boolean isMetric, int listId) {
String unit = isMetric ? getString(R.string.meter) : getString(R.string.feet);
String[] values = getResources().getStringArray(R.array.min_recording_distance_values); String[] values = getResources().getStringArray(R.array.min_recording_distance_values);
String[] options = new String[values.length]; String[] options = new String[values.length];
for (int i = 0; i < values.length; i++) { for (int i = 0; i < values.length; i++) {
@@ -452,10 +458,15 @@ public class SettingsActivity extends PreferenceActivity {
if (!isMetric) { if (!isMetric) {
value = (int) (value * UnitConversions.M_TO_FT); value = (int) (value * UnitConversions.M_TO_FT);
} }
options[i] = value + " " + unit; String format;
if (values[i].equals("5")) { if (values[i].equals("5")) {
options[i] += " (" + getString(R.string.settings_recommended) + ")"; format = isMetric ? getString(R.string.value_integer_meter_recommended)
: getString(R.string.value_integer_feet_recommended);
} else {
format = isMetric ? getString(R.string.value_integer_meter)
: getString(R.string.value_integer_feet);
} }
options[i] = String.format(format, value);
} }
ListPreference list = (ListPreference) findPreference(getString(listId)); ListPreference list = (ListPreference) findPreference(getString(listId));
@@ -470,21 +481,29 @@ public class SettingsActivity extends PreferenceActivity {
String[] options = new String[values.length]; String[] options = new String[values.length];
for (int i = 0; i < values.length; i++) { for (int i = 0; i < values.length; i++) {
int value = Integer.parseInt(values[i]); int value = Integer.parseInt(values[i]);
String format;
if (isMetric) { if (isMetric) {
options[i] = value + " " + getString(R.string.meter); if (values[i].equals("200")) {
format = getString(R.string.value_integer_meter_recommended);
} else {
format = getString(R.string.value_integer_meter);
}
options[i] = String.format(format, value);
} else { } else {
value = (int) (value * UnitConversions.M_TO_FT); value = (int) (value * UnitConversions.M_TO_FT);
if (value < 2000) { if (value < 2000) {
options[i] = value + " " + getString(R.string.feet); if (values[i].equals("200")) {
format = getString(R.string.value_integer_feet_recommended);
} else {
format = getString(R.string.value_integer_feet);
}
options[i] = String.format(format, value);
} else { } else {
double mileValue = value / UnitConversions.MI_TO_FEET; double mile = value / UnitConversions.MI_TO_FEET;
mileValue = (int) (mileValue * 10) / 10.0; format = getString(R.string.value_float_mile);
options[i] = mileValue + " " + getString(R.string.mile); options[i] = String.format(format, mile);
} }
} }
if (values[i].equals("200")) {
options[i] += " (" + getString(R.string.settings_recommended) + ")";
}
} }
ListPreference list = (ListPreference) findPreference(getString(listId)); ListPreference list = (ListPreference) findPreference(getString(listId));
@@ -499,27 +518,40 @@ public class SettingsActivity extends PreferenceActivity {
String[] options = new String[values.length]; String[] options = new String[values.length];
for (int i = 0; i < values.length; i++) { for (int i = 0; i < values.length; i++) {
int value = Integer.parseInt(values[i]); int value = Integer.parseInt(values[i]);
String format;
if (isMetric) { if (isMetric) {
options[i] = value + " " + getString(R.string.meter); if (values[i].equals("200")) {
format = getString(R.string.value_integer_meter_recommended);
} else if (values[i].equals("10")) {
format = getString(R.string.value_integer_meter_excellent_gps);
} else if (values[i].equals("5000")) {
format = getString(R.string.value_integer_meter_poor_gps);
} else {
format = getString(R.string.value_integer_meter);
}
options[i] = String.format(format, value);
} else { } else {
value = (int) (value * UnitConversions.M_TO_FT); value = (int) (value * UnitConversions.M_TO_FT);
if (value < 2000) { if (value < 2000) {
options[i] = value + " " + getString(R.string.feet); if (values[i].equals("200")) {
format = getString(R.string.value_integer_feet_recommended);
} else if (values[i].equals("10")) {
format = getString(R.string.value_integer_feet_excellent_gps);
} else {
format = getString(R.string.value_integer_feet);
}
options[i] = String.format(format, value);
} else { } else {
double mileValue = value / UnitConversions.MI_TO_FEET; double mile = value / UnitConversions.MI_TO_FEET;
mileValue = (int) (mileValue * 10) / 10.0; if (values[i].equals("5000")) {
options[i] = mileValue + " " + getString(R.string.mile); format = getString(R.string.value_float_mile_poor_gps);
} else {
format = getString(R.string.value_float_mile);
}
options[i] = String.format(format, mile);
} }
} }
if (values[i].equals("200")) {
options[i] += " (" + getString(R.string.settings_recommended) + ")";
} else if (values[i].equals("10")) {
options[i] += " (" + getString(R.string.min_required_accuracy_excellent_gps) + ")";
} else if (values[i].equals("5000")) {
options[i] += " (" + getString(R.string.min_required_accuracy_poor_gps) + ")";
}
} }
ListPreference list = (ListPreference) findPreference(getString(listId)); ListPreference list = (ListPreference) findPreference(getString(listId));
list.setEntries(options); list.setEntries(options);
} }
@@ -20,13 +20,13 @@ import com.google.android.apps.mytracks.util.StringUtils;
import com.google.android.apps.mytracks.util.UnitConversions; import com.google.android.apps.mytracks.util.UnitConversions;
import com.google.android.maps.mytracks.R; import com.google.android.maps.mytracks.R;
import java.text.DecimalFormat;
import java.text.NumberFormat;
import android.app.Activity; import android.app.Activity;
import android.util.Log; import android.util.Log;
import android.widget.TextView; import android.widget.TextView;
import java.text.DecimalFormat;
import java.text.NumberFormat;
/** /**
* Various utility functions for views that display statistics information. * Various utility functions for views that display statistics information.
* *
@@ -128,24 +128,24 @@ public class StatsUtilities {
public void setAltitudeUnits(int unitLabelId) { public void setAltitudeUnits(int unitLabelId) {
TextView unitTextView = (TextView) activity.findViewById(unitLabelId); TextView unitTextView = (TextView) activity.findViewById(unitLabelId);
unitTextView.setText(metricUnits ? R.string.meter : R.string.feet); unitTextView.setText(metricUnits ? R.string.unit_meter : R.string.unit_feet);
} }
public void setDistanceUnits(int unitLabelId) { public void setDistanceUnits(int unitLabelId) {
TextView unitTextView = (TextView) activity.findViewById(unitLabelId); TextView unitTextView = (TextView) activity.findViewById(unitLabelId);
unitTextView.setText(metricUnits ? R.string.kilometer : R.string.mile); unitTextView.setText(metricUnits ? R.string.unit_kilometer : R.string.unit_mile);
} }
public void setSpeedUnits(int unitLabelId, int unitLabelBottomId) { public void setSpeedUnits(int unitLabelId, int unitLabelBottomId) {
TextView unitTextView = (TextView) activity.findViewById(unitLabelId); TextView unitTextView = (TextView) activity.findViewById(unitLabelId);
unitTextView.setText(reportSpeed unitTextView.setText(reportSpeed
? (metricUnits ? R.string.kilometer : R.string.mile) ? (metricUnits ? R.string.unit_kilometer : R.string.unit_mile)
: R.string.min); : R.string.unit_minute);
unitTextView = (TextView) activity.findViewById(unitLabelBottomId); unitTextView = (TextView) activity.findViewById(unitLabelBottomId);
unitTextView.setText(reportSpeed unitTextView.setText(reportSpeed
? R.string.hr ? R.string.unit_hour
: (metricUnits ? R.string.kilometer : R.string.mile)); : (metricUnits ? R.string.unit_kilometer : R.string.unit_mile));
} }
public void setTime(int id, long l) { public void setTime(int id, long l) {
@@ -312,17 +312,17 @@ public class TrackList extends ListActivity
if (metricUnits) { if (metricUnits) {
if (length > 1000) { if (length > 1000) {
length /= 1000; length /= 1000;
lengthUnit = getString(R.string.kilometer); lengthUnit = getString(R.string.unit_kilometer);
} else { } else {
lengthUnit = getString(R.string.meter); lengthUnit = getString(R.string.unit_meter);
} }
} else { } else {
if (length > UnitConversions.MI_TO_M) { if (length > UnitConversions.MI_TO_M) {
length /= UnitConversions.MI_TO_M; length /= UnitConversions.MI_TO_M;
lengthUnit = getString(R.string.mile); lengthUnit = getString(R.string.unit_mile);
} else { } else {
length *= UnitConversions.M_TO_FT; length *= UnitConversions.M_TO_FT;
lengthUnit = getString(R.string.feet); lengthUnit = getString(R.string.unit_feet);
} }
} }
textView.setText(String.format("%s %.2f %s", textView.setText(String.format("%s %.2f %s",
@@ -280,11 +280,11 @@ public class DocsHelper {
TripStatistics stats = track.getStatistics(); TripStatistics stats = track.getStatistics();
String distanceUnit = context.getString(metricUnits ? String distanceUnit = context.getString(metricUnits ?
R.string.kilometer : R.string.mile); R.string.unit_kilometer : R.string.unit_mile);
String speedUnit = context.getString(metricUnits ? String speedUnit = context.getString(metricUnits ?
R.string.kilometer_per_hour : R.string.mile_per_hour); R.string.kilometer_per_hour : R.string.mile_per_hour);
String elevationUnit = context.getString(metricUnits ? String elevationUnit = context.getString(metricUnits ?
R.string.meter : R.string.feet); R.string.unit_meter : R.string.unit_feet);
// Prepare the Post-Text we are going to send. // Prepare the Post-Text we are going to send.
DocsTagBuilder tagBuilder = new DocsTagBuilder(metricUnits) DocsTagBuilder tagBuilder = new DocsTagBuilder(metricUnits)
@@ -307,8 +307,8 @@ public class StringUtils implements DescriptionGenerator {
// Line 2 // Line 2
context.getString(R.string.total_distance_label), context.getString(R.string.total_distance_label),
distanceInKm, context.getString(R.string.kilometer), distanceInKm, context.getString(R.string.unit_kilometer),
distanceInMiles, context.getString(R.string.mile), distanceInMiles, context.getString(R.string.unit_mile),
// Line 3 // Line 3
context.getString(R.string.total_time_label), context.getString(R.string.total_time_label),
@@ -323,18 +323,18 @@ public class StringUtils implements DescriptionGenerator {
// Line 6 // Line 6
context.getString(R.string.min_elevation_label), context.getString(R.string.min_elevation_label),
minElevationInMeters, context.getString(R.string.meter), minElevationInMeters, context.getString(R.string.unit_meter),
minElevationInFeet, context.getString(R.string.feet), minElevationInFeet, context.getString(R.string.unit_feet),
// Line 7 // Line 7
context.getString(R.string.max_elevation_label), context.getString(R.string.max_elevation_label),
maxElevationInMeters, context.getString(R.string.meter), maxElevationInMeters, context.getString(R.string.unit_meter),
maxElevationInFeet, context.getString(R.string.feet), maxElevationInFeet, context.getString(R.string.unit_feet),
// Line 8 // Line 8
context.getString(R.string.elevation_gain_label), context.getString(R.string.elevation_gain_label),
elevationGainInMeters, context.getString(R.string.meter), elevationGainInMeters, context.getString(R.string.unit_meter),
elevationGainInFeet, context.getString(R.string.feet), elevationGainInFeet, context.getString(R.string.unit_feet),
// Line 9 // Line 9
context.getString(R.string.max_grade_label), maxGrade, context.getString(R.string.max_grade_label), maxGrade,
@@ -435,8 +435,8 @@ public class StringUtils implements DescriptionGenerator {
+ "%s: %d %s\n" + "%s: %d %s\n"
+ "%s: %d %s\n", + "%s: %d %s\n",
context.getString(R.string.total_distance_label), context.getString(R.string.total_distance_label),
distanceInKm, context.getString(R.string.kilometer), distanceInKm, context.getString(R.string.unit_kilometer),
distanceInMiles, context.getString(R.string.mile), distanceInMiles, context.getString(R.string.unit_mile),
context.getString(R.string.total_time_label), context.getString(R.string.total_time_label),
StringUtils.formatTime(stats.getTotalTime()), StringUtils.formatTime(stats.getTotalTime()),
context.getString(R.string.moving_time_label), context.getString(R.string.moving_time_label),
@@ -451,14 +451,14 @@ public class StringUtils implements DescriptionGenerator {
maxSpeedInKmh, context.getString(R.string.kilometer_per_hour), maxSpeedInKmh, context.getString(R.string.kilometer_per_hour),
maxSpeedInMph, context.getString(R.string.mile_per_hour), maxSpeedInMph, context.getString(R.string.mile_per_hour),
context.getString(R.string.min_elevation_label), context.getString(R.string.min_elevation_label),
minElevationInMeters, context.getString(R.string.meter), minElevationInMeters, context.getString(R.string.unit_meter),
minElevationInFeet, context.getString(R.string.feet), minElevationInFeet, context.getString(R.string.unit_feet),
context.getString(R.string.max_elevation_label), context.getString(R.string.max_elevation_label),
maxElevationInMeters, context.getString(R.string.meter), maxElevationInMeters, context.getString(R.string.unit_meter),
maxElevationInFeet, context.getString(R.string.feet), maxElevationInFeet, context.getString(R.string.unit_feet),
context.getString(R.string.elevation_gain_label), context.getString(R.string.elevation_gain_label),
elevationGainInMeters, context.getString(R.string.meter), elevationGainInMeters, context.getString(R.string.unit_meter),
elevationGainInFeet, context.getString(R.string.feet), elevationGainInFeet, context.getString(R.string.unit_feet),
context.getString(R.string.max_grade_label), context.getString(R.string.max_grade_label),
theMaxGrade, percent, theMaxGrade, percent,
context.getString(R.string.min_grade_label), context.getString(R.string.min_grade_label),
@@ -252,7 +252,7 @@ public class TrackWidgetProvider
String metricUnitsKey = context.getString(R.string.metric_units_key); String metricUnitsKey = context.getString(R.string.metric_units_key);
if (key == null || key.equals(metricUnitsKey)) { if (key == null || key.equals(metricUnitsKey)) {
isMetric = prefs.getBoolean(metricUnitsKey, true); isMetric = prefs.getBoolean(metricUnitsKey, true);
distanceLabel = context.getString(isMetric ? R.string.kilometer : R.string.mile); distanceLabel = context.getString(isMetric ? R.string.unit_kilometer : R.string.unit_mile);
speedLabel = context.getString(isMetric ? R.string.kilometer_per_hour : R.string.mile_per_hour); speedLabel = context.getString(isMetric ? R.string.kilometer_per_hour : R.string.mile_per_hour);
paceLabel = context.getString(isMetric ? R.string.min_per_kilometer : R.string.min_per_mile); paceLabel = context.getString(isMetric ? R.string.min_per_kilometer : R.string.min_per_mile);
} }
@@ -124,18 +124,18 @@ public class DocsHelper_AddTrackRowTest extends TestCase {
final Resources mockResources = AndroidMock.createMock(MockResources.class); final Resources mockResources = AndroidMock.createMock(MockResources.class);
if (useMetric) { if (useMetric) {
AndroidMock.expect(mockResources.getString(R.string.kilometer)) AndroidMock.expect(mockResources.getString(R.string.unit_kilometer))
.andReturn("km"); .andReturn("km");
AndroidMock.expect(mockResources.getString(R.string.kilometer_per_hour)) AndroidMock.expect(mockResources.getString(R.string.kilometer_per_hour))
.andReturn("kph"); .andReturn("kph");
AndroidMock.expect(mockResources.getString(R.string.meter)) AndroidMock.expect(mockResources.getString(R.string.unit_meter))
.andReturn("meter"); .andReturn("meter");
} else { } else {
AndroidMock.expect(mockResources.getString(R.string.mile)) AndroidMock.expect(mockResources.getString(R.string.unit_mile))
.andReturn("mile"); .andReturn("mile");
AndroidMock.expect(mockResources.getString(R.string.mile_per_hour)) AndroidMock.expect(mockResources.getString(R.string.mile_per_hour))
.andReturn("mph"); .andReturn("mph");
AndroidMock.expect(mockResources.getString(R.string.feet)) AndroidMock.expect(mockResources.getString(R.string.unit_feet))
.andReturn("feet"); .andReturn("feet");
} }
AndroidMock.replay(mockResources); AndroidMock.replay(mockResources);