Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

final proposal for Issue #153 #170

Open
wants to merge 5 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
16 changes: 8 additions & 8 deletions app/res/values-de/cues.xml
Original file line number Diff line number Diff line change
Expand Up @@ -14,20 +14,20 @@
~
~ You should have received a copy of the GNU General Public License
~ along with this program. If not, see <http://www.gnu.org/licenses/>.-->
<string name="cue_workout">Aktivität</string>
<string name="cue_activity">Intervall</string>
<string name="cue_lap">Runde</string>
<string name="cue_workout">0&#60;Aktivität</string>
<string name="cue_activity">0&#60;Intervall</string>
<string name="cue_lap">0&#60;Runde</string>
<string name="cue_warmup">Aufwärmphase</string>
<string name="cue_cooldown">Abkühlphase</string>
<string name="cue_current">Aktuell</string>
<string name="cue_recovery">Erholung</string>
<string name="cue_perkilometer">pro Kilometer</string>
<string name="cue_permile">pro Meile</string>
<string name="cue_started">begonnen</string>
<string name="cue_paused">pausiert</string>
<string name="cue_resumed">fortgeführt</string>
<string name="cue_stopped">gestoppt</string>
<string name="cue_completed">abgeschlossen</string>
<string name="cue_started">0&#60;begonnen</string>
<string name="cue_paused">0&#60;pausiert</string>
<string name="cue_resumed">0&#60;fortgeführt</string>
<string name="cue_stopped">0&#60;gestoppt</string>
<string name="cue_completed">0&#60;abgeschlossen</string>
<string name="cue_speedup">beschleunige</string>
<string name="cue_slowdown">werde langsamer</string>
<plurals name="cue_hour">
Expand Down
16 changes: 8 additions & 8 deletions app/res/values-en-rNL/cues.xml
Original file line number Diff line number Diff line change
Expand Up @@ -14,20 +14,20 @@
~
~ You should have received a copy of the GNU General Public License
~ along with this program. If not, see <http://www.gnu.org/licenses/>.-->
<string name="cue_workout">activiteit</string>
<string name="cue_activity">interval</string>
<string name="cue_lap">ronde</string>
<string name="cue_workout">0&#60;activiteit</string>
<string name="cue_activity">0&#60;interval</string>
<string name="cue_lap">0&#60;ronde</string>
<string name="cue_warmup">warming-up</string>
<string name="cue_cooldown">cooling-down</string>
<string name="cue_current">huidige</string>
<string name="cue_recovery">herstel</string>
<string name="cue_perkilometer">per kilometer</string>
<string name="cue_permile">per mijl</string>
<string name="cue_started">gestart</string>
<string name="cue_paused">gepauzeerd</string>
<string name="cue_resumed">hervatten</string>
<string name="cue_stopped">gestopt</string>
<string name="cue_completed">afgerond</string>
<string name="cue_started">0&#60;gestart</string>
<string name="cue_paused">0&#60;gepauzeerd</string>
<string name="cue_resumed">0&#60;hervatten</string>
<string name="cue_stopped">0&#60;gestopt</string>
<string name="cue_completed">0&#60;afgerond</string>
<string name="cue_speedup">versnellen</string>
<string name="cue_slowdown">vertragen</string>
<plurals name="cue_hour">
Expand Down
16 changes: 8 additions & 8 deletions app/res/values-es/cues.xml
Original file line number Diff line number Diff line change
Expand Up @@ -14,19 +14,19 @@
~
~ You should have received a copy of the GNU General Public License
~ along with this program. If not, see <http://www.gnu.org/licenses/>.-->
<string name="cue_workout">actividad</string>
<string name="cue_activity">intervalo</string>
<string name="cue_lap">vuelta</string>
<string name="cue_workout">0&#60;actividad</string>
<string name="cue_activity">0&#60;intervalo</string>
<string name="cue_lap">0&#60;vuelta</string>
<string name="cue_warmup">calentamiento</string>
<string name="cue_cooldown">enfriamiento</string>
<string name="cue_current">actual</string>
<string name="cue_perkilometer">por kilómetro</string>
<string name="cue_permile">por milla</string>
<string name="cue_started">empezado</string>
<string name="cue_paused">en pausa</string>
<string name="cue_resumed">reanudado</string>
<string name="cue_stopped">parado</string>
<string name="cue_completed">completado</string>
<string name="cue_started">0&#60;empezado</string>
<string name="cue_paused">0&#60;en pausa</string>
<string name="cue_resumed">0&#60;reanudado</string>
<string name="cue_stopped">0&#60;parado</string>
<string name="cue_completed">0&#60;completado</string>
<string name="cue_speedup">acelerar</string>
<string name="cue_slowdown">decelerar</string>
<plurals name="cue_hour">
Expand Down
16 changes: 8 additions & 8 deletions app/res/values-fr/cues.xml
Original file line number Diff line number Diff line change
Expand Up @@ -14,20 +14,20 @@
~
~ You should have received a copy of the GNU General Public License
~ along with this program. If not, see <http://www.gnu.org/licenses/>.-->
<string name="cue_workout">activité</string>
<string name="cue_activity">intervalle</string>
<string name="cue_lap">tour</string>
<string name="cue_workout">0&#60;activité</string>
<string name="cue_activity">0&#60;intervalle</string>
<string name="cue_lap">0&#60;tour</string>
<string name="cue_warmup">échauffement</string>
<string name="cue_cooldown">refroidissement</string>
<string name="cue_current">courant</string>
<string name="cue_recovery">récupération</string>
<string name="cue_perkilometer">par kilomètre</string>
<string name="cue_permile">par mille</string>
<string name="cue_started">démarré</string>
<string name="cue_paused">pausé</string>
<string name="cue_resumed">repris</string>
<string name="cue_stopped">stoppé</string>
<string name="cue_completed">terminé</string>
<string name="cue_started">0&#60;démarré</string>
<string name="cue_paused">0&#60;pausé</string>
<string name="cue_resumed">0&#60;repris</string>
<string name="cue_stopped">0&#60;stoppé</string>
<string name="cue_completed">0&#60;terminé</string>
<string name="cue_speedup">accéléré</string>
<string name="cue_slowdown">ralentir</string>
<plurals name="cue_hour">
Expand Down
16 changes: 8 additions & 8 deletions app/res/values-nl-rNL/cues.xml
Original file line number Diff line number Diff line change
Expand Up @@ -14,20 +14,20 @@
~
~ You should have received a copy of the GNU General Public License
~ along with this program. If not, see <http://www.gnu.org/licenses/>.-->
<string name="cue_workout">activiteit</string>
<string name="cue_activity">interval</string>
<string name="cue_lap">ronde</string>
<string name="cue_workout">0&#60;activiteit</string>
<string name="cue_activity">0&#60;interval</string>
<string name="cue_lap">0&#60;ronde</string>
<string name="cue_warmup">warming-up</string>
<string name="cue_cooldown">cooling-down</string>
<string name="cue_current">huidige</string>
<string name="cue_recovery">herstel</string>
<string name="cue_perkilometer">per kilometer</string>
<string name="cue_permile">per mijl</string>
<string name="cue_started">gestart</string>
<string name="cue_paused">gepauzeerd</string>
<string name="cue_resumed">hervatten</string>
<string name="cue_stopped">gestopt</string>
<string name="cue_completed">afgerond</string>
<string name="cue_started">0&#60;gestart</string>
<string name="cue_paused">0&#60;gepauzeerd</string>
<string name="cue_resumed">0&#60;hervatten</string>
<string name="cue_stopped">0&#60;gestopt</string>
<string name="cue_completed">0&#60;afgerond</string>
<string name="cue_speedup">versnellen</string>
<string name="cue_slowdown">vertragen</string>
<plurals name="cue_hour">
Expand Down
16 changes: 8 additions & 8 deletions app/res/values-nl/cues.xml
Original file line number Diff line number Diff line change
Expand Up @@ -14,20 +14,20 @@
~
~ You should have received a copy of the GNU General Public License
~ along with this program. If not, see <http://www.gnu.org/licenses/>.-->
<string name="cue_workout">activiteit</string>
<string name="cue_activity">interval</string>
<string name="cue_lap">ronde</string>
<string name="cue_workout">0&#60;activiteit</string>
<string name="cue_activity">0&#60;interval</string>
<string name="cue_lap">0&#60;ronde</string>
<string name="cue_warmup">warming-up</string>
<string name="cue_cooldown">cooling-down</string>
<string name="cue_current">huidige</string>
<string name="cue_recovery">herstel</string>
<string name="cue_perkilometer">per kilometer</string>
<string name="cue_permile">per mijl</string>
<string name="cue_started">gestart</string>
<string name="cue_paused">gepauzeerd</string>
<string name="cue_resumed">hervatten</string>
<string name="cue_stopped">gestopt</string>
<string name="cue_completed">afgerond</string>
<string name="cue_started">0&#60;gestart</string>
<string name="cue_paused">0&#60;gepauzeerd</string>
<string name="cue_resumed">0&#60;hervatten</string>
<string name="cue_stopped">0&#60;gestopt</string>
<string name="cue_completed">0&#60;afgerond</string>
<string name="cue_speedup">versnellen</string>
<string name="cue_slowdown">vertragen</string>
<plurals name="cue_hour">
Expand Down
19 changes: 11 additions & 8 deletions app/res/values-pl/cues.xml
Original file line number Diff line number Diff line change
Expand Up @@ -14,20 +14,23 @@
~
~ You should have received a copy of the GNU General Public License
~ along with this program. If not, see <http://www.gnu.org/licenses/>.-->
<string name="cue_workout">aktywność</string>
<string name="cue_activity">interwał</string>
<string name="cue_lap">okrążenie</string>
<string name="cue_interval_pattern">{1} {0} {2}</string>
<string name="cue_event_pattern">{0} {1}</string>
<string name="cue_workout">10#Treningu|20#Trening</string>
<string name="cue_activity">10#Interwału|20#interwał</string>
<string name="cue_lap">10#Okrążenia|20#Okrążenie</string>
<string name="cue_dimension_pattern">1#{3}|2#{3}|3#{3}|4#{3}|5#{3}|6#{3}</string>
<string name="cue_warmup">rozgrzewka</string>
<string name="cue_cooldown">uspokojenie</string>
<string name="cue_current">aktualny</string>
<string name="cue_recovery">regeneracja</string>
<string name="cue_perkilometer">na kilometr</string>
<string name="cue_permile">na milę</string>
<string name="cue_started">rozpoczęte</string>
<string name="cue_paused">zatrzymana</string>
<string name="cue_resumed">wznowiona</string>
<string name="cue_stopped">zatrzymana</string>
<string name="cue_completed">zakończony</string>
<string name="cue_started">101#rozpoczęty|102#rozpoczęty|103#rozpoczęte|112#rozpoczęta|115#rozpoczęte</string>
<string name="cue_paused">201#wstrzymany|202#wstrzymany|203#wstrzymane</string>
<string name="cue_resumed">301#wznowiony|302#wznowiony|303#wznowione</string>
<string name="cue_stopped">401#zatrzymany|402#zatrzymany|403#zatrzymane</string>
<string name="cue_completed">501#zakończony|502#zakończony|503#zakończone</string>
<string name="cue_speedup">przyśpiesz</string>
<string name="cue_slowdown">zwolnij</string>
<plurals name="cue_hour">
Expand Down
16 changes: 8 additions & 8 deletions app/res/values-tr/cues.xml
Original file line number Diff line number Diff line change
Expand Up @@ -14,19 +14,19 @@
~
~ You should have received a copy of the GNU General Public License
~ along with this program. If not, see <http://www.gnu.org/licenses/>.-->
<string name="cue_workout">aktivite</string>
<string name="cue_activity">aralık</string>
<string name="cue_lap">tur</string>
<string name="cue_workout">0&#60;aktivite</string>
<string name="cue_activity">0&#60;aralık</string>
<string name="cue_lap">0&#60;tur</string>
<string name="cue_warmup">ısınma</string>
<string name="cue_cooldown">soğuma</string>
<string name="cue_current">şimdiki</string>
<string name="cue_perkilometer">kilometre başına</string>
<string name="cue_permile">mil başına</string>
<string name="cue_started">başlandı</string>
<string name="cue_paused">duraklatıldı</string>
<string name="cue_resumed">devam edildi</string>
<string name="cue_stopped">durduruldu</string>
<string name="cue_completed">tamamlandı</string>
<string name="cue_started">0&#60;başlandı</string>
<string name="cue_paused">0&#60;duraklatıldı</string>
<string name="cue_resumed">0&#60;devam edildi</string>
<string name="cue_stopped">0&#60;durduruldu</string>
<string name="cue_completed">0&#60;tamamlandı</string>
<string name="cue_speedup">hızlan</string>
<string name="cue_slowdown">yavaşla</string>
<plurals name="cue_hour">
Expand Down
24 changes: 16 additions & 8 deletions app/res/values/cues.xml
Original file line number Diff line number Diff line change
Expand Up @@ -14,20 +14,28 @@
~
~ You should have received a copy of the GNU General Public License
~ along with this program. If not, see <http://www.gnu.org/licenses/>.-->
<string name="cue_workout">activity</string>
<string name="cue_activity">interval</string>
<string name="cue_lap">lap</string>
<string name="cue_interval_pattern">{0} {1} {2}</string>
<string name="cue_event_pattern">{0} {1}</string>
<string name="cue_workout">0&#60;activity</string>
<string name="cue_activity">0&#60;interval</string>
<string name="cue_lap">0&#60;lap</string>
<!-- Pattern for inclusion of dimension in the audio cue
{1} is the dimension id, {2} is the actual dimension name
For dimension id see Constants.java
To include the dimension into the cue change e.g. 1# into 1#{2}
-->
<string name="cue_dimension_pattern">1#|2#|3#|4#|5#|6#{3}</string>
<string name="cue_warmup">warm up</string>
<string name="cue_cooldown">cool down</string>
<string name="cue_current">current</string>
<string name="cue_recovery">recovery</string>
<string name="cue_perkilometer">per kilometer</string>
<string name="cue_permile">per mile</string>
<string name="cue_started">started</string>
<string name="cue_paused">paused</string>
<string name="cue_resumed">resumed</string>
<string name="cue_stopped">stopped</string>
<string name="cue_completed">completed</string>
<string name="cue_started">0&#60;started</string>
<string name="cue_paused">0&#60;paused</string>
<string name="cue_resumed">0&#60;resumed</string>
<string name="cue_stopped">0&#60;stopped</string>
<string name="cue_completed">0&#60;completed</string>
<string name="cue_speedup">speed up</string>
<string name="cue_slowdown">slow down</string>
<plurals name="cue_hour">
Expand Down
75 changes: 71 additions & 4 deletions app/src/org/runnerup/util/Formatter.java
Original file line number Diff line number Diff line change
Expand Up @@ -28,8 +28,12 @@
import android.text.format.DateUtils;

import org.runnerup.R;
import org.runnerup.common.util.Constants;
import org.runnerup.workout.Dimension;
import org.runnerup.workout.feedback.AudioFeedback;

import java.text.ChoiceFormat;
import java.text.MessageFormat;
import java.util.Locale;

@TargetApi(Build.VERSION_CODES.FROYO)
Expand Down Expand Up @@ -57,6 +61,9 @@ public class Formatter implements OnSharedPreferenceChangeListener {
public static final int TXT_SHORT = 5; // brief for printing
public static final int TXT_LONG = 6; // long for printing

private static final int nounKeyBase = 10;
private static final int verbKeyBase = 100;

public Formatter(Context ctx) {
context = ctx;
resources = ctx.getResources();
Expand Down Expand Up @@ -274,12 +281,10 @@ private String formatHeartRateZone(int target, double hrZone) {
case TXT_LONG:
return Double.toString(Math.round(10.0 * hrZone) / 10.0);
case CUE_SHORT:
return resources.getString(R.string.heartrate_zone) + " "
+ Integer.toString((int) Math.floor(hrZone));
return Integer.toString((int) Math.floor(hrZone));
case CUE:
case CUE_LONG:
return resources.getString(R.string.heartrate_zone) + " "
+ Double.toString(Math.floor(10.0 * hrZone) / 10.0);
return Double.toString(Math.floor(10.0 * hrZone) / 10.0);
}
return "";
}
Expand Down Expand Up @@ -541,4 +546,66 @@ public static double getUnitMeters(Context mContext) {
return getUnitMeters(mContext.getResources(),
PreferenceManager.getDefaultSharedPreferences(mContext));
}


private static int getCueNounKey(AudioFeedback feedback) {
switch (feedback.getCueCase()) {
case Constants.CUE_CASE.EVENT:
case Constants.CUE_CASE.DIMENSION:
return nounKeyBase * feedback.getCueCase();//10,20,30
case Constants.CUE_CASE.INTENSITY:
return -1;
default:
return 0;
}
}

private static int getCueVerbKey(AudioFeedback feedback) {
switch (feedback.getCueCase()) {
case Constants.CUE_CASE.EVENT:
return verbKeyBase * feedback.getEvent().getValue() + feedback.getScope().getValue();//101,102,103,104
case Constants.CUE_CASE.DIMENSION:
return -1;
case Constants.CUE_CASE.INTENSITY:
return verbKeyBase * feedback.getEvent().getValue() + (feedback.getIntensity().getValue()+2) * feedback.getCueCase();//106,109,112,115,118,121
default:
return 0;
}
}

public String formatCueSentence(MessageFormat sentence, double val, AudioFeedback feedback) {

ChoiceFormat cueNounPattern, cueVerbPattern, cueDimensionPattern;

switch (feedback.getCueCase()) {
case Constants.CUE_CASE.EVENT:

cueNounPattern = new ChoiceFormat(resources.getString(feedback.getScope().getCueId()));
sentence.setFormatByArgumentIndex(0, cueNounPattern);

cueVerbPattern = new ChoiceFormat(resources.getString(feedback.getEvent().getCueId()));
sentence.setFormatByArgumentIndex(1, cueVerbPattern);

return sentence.format(new Object[] {getCueNounKey(feedback), getCueVerbKey(feedback)});

case Constants.CUE_CASE.DIMENSION:

cueDimensionPattern = new ChoiceFormat(resources.getString(R.string.cue_dimension_pattern));
sentence.setFormatByArgumentIndex(1, cueDimensionPattern);

cueNounPattern = new ChoiceFormat(resources.getString(feedback.getScope().getCueId()));
sentence.setFormatByArgumentIndex(0, cueNounPattern);

return sentence.format(new Object[] {getCueNounKey(feedback), feedback.getDimension().getValue(), format(Formatter.CUE_LONG, feedback.getDimension(), val), resources.getString(feedback.getDimension().getTextId())});

case Constants.CUE_CASE.INTENSITY:

cueVerbPattern = new ChoiceFormat(resources.getString(feedback.getEvent().getCueId()));
sentence.setFormatByArgumentIndex(1, cueVerbPattern);

return sentence.format(new Object[] {resources.getString(feedback.getIntensity().getCueId()), getCueVerbKey(feedback)});
default:
return "";
}
}
}
Loading