diff options
author | Stéphane Doyon <s.doyon@videotron.ca> | 2008-07-15 13:21:08 +0000 |
---|---|---|
committer | Stéphane Doyon <s.doyon@videotron.ca> | 2008-07-15 13:21:08 +0000 |
commit | ee206db6204c38a0be366a7765a16e248d795601 (patch) | |
tree | 43607c0881bc0a1de3c76dac173d507a8a46483d /apps/menus/recording_menu.c | |
parent | 3a74208d4e5a67d86c4b1b978ebf5ecfb0347a55 (diff) | |
download | rockbox-ee206db6204c38a0be366a7765a16e248d795601.tar.gz rockbox-ee206db6204c38a0be366a7765a16e248d795601.zip |
rectrigger: voice the splashes, and say "off" when start/stop
threshold is 0, matching the displayed string.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@18044 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'apps/menus/recording_menu.c')
-rw-r--r-- | apps/menus/recording_menu.c | 29 |
1 files changed, 19 insertions, 10 deletions
diff --git a/apps/menus/recording_menu.c b/apps/menus/recording_menu.c index ae58472942..c13edfa157 100644 --- a/apps/menus/recording_menu.c +++ b/apps/menus/recording_menu.c | |||
@@ -324,7 +324,7 @@ MENUITEM_SETTING(rec_prerecord_time, &global_settings.rec_prerecord_time, NULL); | |||
324 | static int clear_rec_directory(void) | 324 | static int clear_rec_directory(void) |
325 | { | 325 | { |
326 | strcpy(global_settings.rec_directory, REC_BASE_DIR); | 326 | strcpy(global_settings.rec_directory, REC_BASE_DIR); |
327 | gui_syncsplash(HZ, str(LANG_RESET_DONE_CLEAR)); | 327 | gui_syncsplash(HZ, ID2P(LANG_RESET_DONE_CLEAR)); |
328 | return false; | 328 | return false; |
329 | } | 329 | } |
330 | MENUITEM_FUNCTION(clear_rec_directory_item, 0, ID2P(LANG_CLEAR_REC_DIR), | 330 | MENUITEM_FUNCTION(clear_rec_directory_item, 0, ID2P(LANG_CLEAR_REC_DIR), |
@@ -415,15 +415,24 @@ static char * trigger_get_name(int selected_item, void * data, | |||
415 | return option_get_valuestring(s, buffer, buffer_len, temp); | 415 | return option_get_valuestring(s, buffer, buffer_len, temp); |
416 | } | 416 | } |
417 | } | 417 | } |
418 | static void trigger_speak_item(const struct settings_list *s, bool title) | 418 | static void trigger_speak_item(const struct settings_list **settings, |
419 | int selected_setting, bool title) | ||
419 | { | 420 | { |
421 | const struct settings_list *s = settings[selected_setting]; | ||
420 | int temp; | 422 | int temp; |
421 | if (!global_settings.talk_menu) | 423 | if (!global_settings.talk_menu) |
422 | return; | 424 | return; |
423 | temp = option_value_as_int(s); | ||
424 | if (title) | 425 | if (title) |
425 | talk_id(s->lang_id, false); | 426 | talk_id(s->lang_id, false); |
426 | option_talk_value(s, temp, title?true:false); | 427 | temp = option_value_as_int(s); |
428 | if ((selected_setting == START_THRESHOLD || | ||
429 | selected_setting == STOP_THRESHOLD) && | ||
430 | temp == 0) | ||
431 | { | ||
432 | talk_id(LANG_OFF, title?true:false); | ||
433 | } else { | ||
434 | option_talk_value(s, temp, title?true:false); | ||
435 | } | ||
427 | } | 436 | } |
428 | int rectrigger(void) | 437 | int rectrigger(void) |
429 | { | 438 | { |
@@ -495,7 +504,7 @@ int rectrigger(void) | |||
495 | settings_apply_trigger(); | 504 | settings_apply_trigger(); |
496 | peak_meter_trigger (global_settings.rec_trigger_mode != TRIG_MODE_OFF); | 505 | peak_meter_trigger (global_settings.rec_trigger_mode != TRIG_MODE_OFF); |
497 | 506 | ||
498 | trigger_speak_item(settings[0], true); | 507 | trigger_speak_item(settings, 0, true); |
499 | 508 | ||
500 | while (!done) | 509 | while (!done) |
501 | { | 510 | { |
@@ -517,7 +526,7 @@ int rectrigger(void) | |||
517 | switch (action) | 526 | switch (action) |
518 | { | 527 | { |
519 | case ACTION_STD_CANCEL: | 528 | case ACTION_STD_CANCEL: |
520 | gui_syncsplash(HZ/2, str(LANG_CANCEL)); | 529 | gui_syncsplash(HZ/2, ID2P(LANG_CANCEL)); |
521 | global_settings.rec_start_thres_db = old_start_thres_db; | 530 | global_settings.rec_start_thres_db = old_start_thres_db; |
522 | global_settings.rec_start_thres_linear = old_start_thres_linear; | 531 | global_settings.rec_start_thres_linear = old_start_thres_linear; |
523 | global_settings.rec_start_duration = old_start_duration; | 532 | global_settings.rec_start_duration = old_start_duration; |
@@ -538,13 +547,13 @@ int rectrigger(void) | |||
538 | case ACTION_SETTINGS_DEC: | 547 | case ACTION_SETTINGS_DEC: |
539 | case ACTION_SETTINGS_DECREPEAT: | 548 | case ACTION_SETTINGS_DECREPEAT: |
540 | option_select_next_val(settings[i/2], true, false); | 549 | option_select_next_val(settings[i/2], true, false); |
541 | trigger_speak_item(settings[i/2], false); | 550 | trigger_speak_item(settings, i/2, false); |
542 | changed = true; | 551 | changed = true; |
543 | break; | 552 | break; |
544 | case ACTION_SETTINGS_INC: | 553 | case ACTION_SETTINGS_INC: |
545 | case ACTION_SETTINGS_INCREPEAT: | 554 | case ACTION_SETTINGS_INCREPEAT: |
546 | option_select_next_val(settings[i/2], false, false); | 555 | option_select_next_val(settings[i/2], false, false); |
547 | trigger_speak_item(settings[i/2], false); | 556 | trigger_speak_item(settings, i/2, false); |
548 | changed = true; | 557 | changed = true; |
549 | break; | 558 | break; |
550 | case ACTION_STD_PREV: | 559 | case ACTION_STD_PREV: |
@@ -554,14 +563,14 @@ int rectrigger(void) | |||
554 | i = (TRIG_OPTION_COUNT*2) - 2; | 563 | i = (TRIG_OPTION_COUNT*2) - 2; |
555 | gui_synclist_select_item(&lists, i); | 564 | gui_synclist_select_item(&lists, i); |
556 | i = gui_synclist_get_sel_pos(&lists); | 565 | i = gui_synclist_get_sel_pos(&lists); |
557 | trigger_speak_item(settings[i/2], true); | 566 | trigger_speak_item(settings, i/2, true); |
558 | changed = true; | 567 | changed = true; |
559 | break; | 568 | break; |
560 | case ACTION_STD_NEXT: | 569 | case ACTION_STD_NEXT: |
561 | case ACTION_STD_NEXTREPEAT: | 570 | case ACTION_STD_NEXTREPEAT: |
562 | gui_synclist_select_item(&lists, (i+2) % (TRIG_OPTION_COUNT*2)); | 571 | gui_synclist_select_item(&lists, (i+2) % (TRIG_OPTION_COUNT*2)); |
563 | i = gui_synclist_get_sel_pos(&lists); | 572 | i = gui_synclist_get_sel_pos(&lists); |
564 | trigger_speak_item(settings[i/2], true); | 573 | trigger_speak_item(settings, i/2, true); |
565 | changed = true; | 574 | changed = true; |
566 | break; | 575 | break; |
567 | } | 576 | } |