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>
+100 -66
View File
@@ -1313,37 +1313,115 @@ 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'."> translation_description="Abbreviation for feet. E.g., '2 ft'.">
ft
</string>
<string name="unit_hour"
translation_description="Abbreviation for hour. E.g, '2 hr'.">
hr hr
</string> </string>
<string name="second" <string name="unit_kilometer"
translation_description="Abbreviation for second. E.g, '5 s' for 5 seconds."> translation_description="Abbreviation for kilometer. E.g., '2 km'.">
s km
</string> </string>
<string name="unit_meter"
<string name="min" translation_description="Abbreviation for meter. E.g., '2 m'.">
translation_description="Abbreviation for minutes. E.g, '2 min'."> 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 min
</string> </string>
<!-- distance --> <!-- Value - values in a setting picker -->
<string name="kilometer" <string name="value_adapt_accuracy"
translation_description="Abbreviation for kilometers. E.g., '2 km'."> translation_description="In a setting picker, the value to adapt for accuracy.">
km adapt for accuracy
</string> </string>
<string name="meter" <string name="value_adapt_battery_life"
translation_description="Abbreviation for meters. E.g., '2 m'."> translation_description="In a setting picker, the value to adapt for battery life.">
m adapt for battery life
</string> </string>
<string name="mile" <string name="value_always"
translation_description="Abbreviation for miles. E.g., '2 mi'."> translation_description="In a setting picker, the value to always enable the option.">
mi Always
</string> </string>
<string name="feet" <string name="value_float_mile"
translation_description="Abbreviation for feet. E.g., '2 ft'."> translation_description="In a setting picker, a float value in miles. E.g., '2.2 mi'.">
ft %.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> </string>
<!-- Speed unit --> <!-- Speed unit -->
@@ -1670,50 +1748,6 @@ limitations under the License.
Dynamic Thresholds Dynamic Thresholds
</string> </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 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);