diff options
author | Stéphane Doyon <s.doyon@videotron.ca> | 2007-11-07 03:25:33 +0000 |
---|---|---|
committer | Stéphane Doyon <s.doyon@videotron.ca> | 2007-11-07 03:25:33 +0000 |
commit | a4f491cac1f17dd338ba6d4c39537f5223c988ec (patch) | |
tree | 94b0818c6e4ede0cae671535420a5006210038f1 /apps | |
parent | d65f9f15f96892754f482f42de793a427d4fb738 (diff) | |
download | rockbox-a4f491cac1f17dd338ba6d4c39537f5223c988ec.tar.gz rockbox-a4f491cac1f17dd338ba6d4c39537f5223c988ec.zip |
Add a setting to control whether or not to speak the file type (r15506).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15508 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'apps')
-rw-r--r-- | apps/lang/english.lang | 14 | ||||
-rw-r--r-- | apps/menus/settings_menu.c | 3 | ||||
-rw-r--r-- | apps/plugin.h | 4 | ||||
-rw-r--r-- | apps/settings.h | 1 | ||||
-rw-r--r-- | apps/settings_list.c | 2 | ||||
-rw-r--r-- | apps/tree.c | 17 |
6 files changed, 32 insertions, 9 deletions
diff --git a/apps/lang/english.lang b/apps/lang/english.lang index 232efcbfd0..e79f865bde 100644 --- a/apps/lang/english.lang +++ b/apps/lang/english.lang | |||
@@ -11462,3 +11462,17 @@ | |||
11462 | *: "Announce Battery Level" | 11462 | *: "Announce Battery Level" |
11463 | </voice> | 11463 | </voice> |
11464 | </phrase> | 11464 | </phrase> |
11465 | <phrase> | ||
11466 | id: LANG_VOICE_FILETYPE | ||
11467 | desc: voice settings menu | ||
11468 | user: | ||
11469 | <source> | ||
11470 | *: "Say file type" | ||
11471 | </source> | ||
11472 | <dest> | ||
11473 | *: "Say file type" | ||
11474 | </dest> | ||
11475 | <voice> | ||
11476 | *: "Say file type" | ||
11477 | </voice> | ||
11478 | </phrase> | ||
diff --git a/apps/menus/settings_menu.c b/apps/menus/settings_menu.c index 1cea2b8c53..d1ca4a8d50 100644 --- a/apps/menus/settings_menu.c +++ b/apps/menus/settings_menu.c | |||
@@ -443,11 +443,12 @@ static int talk_callback(int action,const struct menu_item_ex *this_item) | |||
443 | } | 443 | } |
444 | return action; | 444 | return action; |
445 | } | 445 | } |
446 | MENUITEM_SETTING(talk_filetype_item, &global_settings.talk_filetype, NULL); | ||
446 | MENUITEM_SETTING(talk_battery_level_item, | 447 | MENUITEM_SETTING(talk_battery_level_item, |
447 | &global_settings.talk_battery_level, NULL); | 448 | &global_settings.talk_battery_level, NULL); |
448 | MAKE_MENU(voice_settings_menu, ID2P(LANG_VOICE), 0, Icon_Voice, | 449 | MAKE_MENU(voice_settings_menu, ID2P(LANG_VOICE), 0, Icon_Voice, |
449 | &talk_menu_item, &talk_dir_item, &talk_dir_clip_item, | 450 | &talk_menu_item, &talk_dir_item, &talk_dir_clip_item, |
450 | &talk_file_item, &talk_file_clip_item, | 451 | &talk_file_item, &talk_file_clip_item, &talk_filetype_item, |
451 | &talk_battery_level_item); | 452 | &talk_battery_level_item); |
452 | /* VOICE MENU */ | 453 | /* VOICE MENU */ |
453 | /***********************************/ | 454 | /***********************************/ |
diff --git a/apps/plugin.h b/apps/plugin.h index 16333bb092..300cad0781 100644 --- a/apps/plugin.h +++ b/apps/plugin.h | |||
@@ -112,12 +112,12 @@ | |||
112 | #define PLUGIN_MAGIC 0x526F634B /* RocK */ | 112 | #define PLUGIN_MAGIC 0x526F634B /* RocK */ |
113 | 113 | ||
114 | /* increase this every time the api struct changes */ | 114 | /* increase this every time the api struct changes */ |
115 | #define PLUGIN_API_VERSION 87 | 115 | #define PLUGIN_API_VERSION 88 |
116 | 116 | ||
117 | /* update this to latest version if a change to the api struct breaks | 117 | /* update this to latest version if a change to the api struct breaks |
118 | backwards compatibility (and please take the opportunity to sort in any | 118 | backwards compatibility (and please take the opportunity to sort in any |
119 | new function which are "waiting" at the end of the function table) */ | 119 | new function which are "waiting" at the end of the function table) */ |
120 | #define PLUGIN_MIN_API_VERSION 87 | 120 | #define PLUGIN_MIN_API_VERSION 88 |
121 | 121 | ||
122 | /* plugin return codes */ | 122 | /* plugin return codes */ |
123 | enum plugin_status { | 123 | enum plugin_status { |
diff --git a/apps/settings.h b/apps/settings.h index 2f926c91f6..d4498cf721 100644 --- a/apps/settings.h +++ b/apps/settings.h | |||
@@ -529,6 +529,7 @@ struct user_settings | |||
529 | bool talk_dir_clip; /* use directory .talk clips */ | 529 | bool talk_dir_clip; /* use directory .talk clips */ |
530 | int talk_file; /* voice file mode: 0=off, 1=number, 2=spell */ | 530 | int talk_file; /* voice file mode: 0=off, 1=number, 2=spell */ |
531 | bool talk_file_clip; /* use file .talk clips */ | 531 | bool talk_file_clip; /* use file .talk clips */ |
532 | bool talk_filetype; /* say file type */ | ||
532 | bool talk_battery_level; | 533 | bool talk_battery_level; |
533 | 534 | ||
534 | /* file browser sorting */ | 535 | /* file browser sorting */ |
diff --git a/apps/settings_list.c b/apps/settings_list.c index def6973378..d1d8905cfd 100644 --- a/apps/settings_list.c +++ b/apps/settings_list.c | |||
@@ -753,6 +753,8 @@ const struct settings_list settings[] = { | |||
753 | ID2P(LANG_OFF), ID2P(LANG_VOICE_NUMBER), | 753 | ID2P(LANG_OFF), ID2P(LANG_VOICE_NUMBER), |
754 | ID2P(LANG_VOICE_SPELL)), | 754 | ID2P(LANG_VOICE_SPELL)), |
755 | OFFON_SETTING(F_TEMPVAR, talk_file_clip, LANG_VOICE_FILE_TALK, false, "talk file clip", NULL), | 755 | OFFON_SETTING(F_TEMPVAR, talk_file_clip, LANG_VOICE_FILE_TALK, false, "talk file clip", NULL), |
756 | OFFON_SETTING(F_TEMPVAR, talk_filetype, LANG_VOICE_FILETYPE, | ||
757 | false, "talk filetype", NULL), | ||
756 | OFFON_SETTING(F_TEMPVAR, talk_battery_level, | 758 | OFFON_SETTING(F_TEMPVAR, talk_battery_level, |
757 | LANG_TALK_BATTERY_LEVEL, false, | 759 | LANG_TALK_BATTERY_LEVEL, false, |
758 | "Announce Battery Level", NULL), | 760 | "Announce Battery Level", NULL), |
diff --git a/apps/tree.c b/apps/tree.c index 1d1592b4fa..13b0756cbb 100644 --- a/apps/tree.c +++ b/apps/tree.c | |||
@@ -268,15 +268,19 @@ static int tree_voice_cb(int selected_item, void * data) | |||
268 | talk_id(is_dir ? VOICE_DIR : VOICE_FILE, false); | 268 | talk_id(is_dir ? VOICE_DIR : VOICE_FILE, false); |
269 | talk_number(selected_item+1 - (is_dir ? 0 : local_tc->dirsindir), | 269 | talk_number(selected_item+1 - (is_dir ? 0 : local_tc->dirsindir), |
270 | true); | 270 | true); |
271 | if(!is_dir && *local_tc->dirfilter < NUM_FILTER_MODES) | 271 | if(global_settings.talk_filetype |
272 | && !is_dir && *local_tc->dirfilter < NUM_FILTER_MODES) | ||
272 | say_filetype(attr); | 273 | say_filetype(attr); |
273 | break; | 274 | break; |
274 | case 2: /* spelled */ | 275 | case 2: /* spelled */ |
275 | talk_shutup(); | 276 | talk_shutup(); |
276 | if(is_dir) | 277 | if(global_settings.talk_filetype) |
277 | talk_id(VOICE_DIR, true); | 278 | { |
278 | else if(*local_tc->dirfilter < NUM_FILTER_MODES) | 279 | if(is_dir) |
279 | say_filetype(attr); | 280 | talk_id(VOICE_DIR, true); |
281 | else if(*local_tc->dirfilter < NUM_FILTER_MODES) | ||
282 | say_filetype(attr); | ||
283 | } | ||
280 | talk_spell(name, true); | 284 | talk_spell(name, true); |
281 | break; | 285 | break; |
282 | } | 286 | } |
@@ -1208,7 +1212,8 @@ static int ft_play_dirname(char* name) | |||
1208 | DEBUGF("Found: %s\n", dirname_mp3_filename); | 1212 | DEBUGF("Found: %s\n", dirname_mp3_filename); |
1209 | 1213 | ||
1210 | talk_file(dirname_mp3_filename, false); | 1214 | talk_file(dirname_mp3_filename, false); |
1211 | talk_id(VOICE_DIR, true); | 1215 | if(global_settings.talk_filetype) |
1216 | talk_id(VOICE_DIR, true); | ||
1212 | return 1; | 1217 | return 1; |
1213 | } | 1218 | } |
1214 | 1219 | ||