Compare commits

...

5 commits

Author SHA1 Message Date
Christian Soffke
5aa2b339d5 plugins & debug menu: apply consistent titles
Purge "Menu" or "Rockbox" from plugin menu titles
and match application names from manual.

Exception: "Main Menu" is left unchanged as the
title for the Main Menu Configuration plugin, since
it appears in Rockbox's Settings menu and therefore
should match the name of the setting.

E.g.:

"Rockbox Goban" => "Goban"
"Image Viewer Menu" => "Image Viewer"
"Viewer Menu" => "Text Viewer"
"Menu" => "Chess Clock"
"Do What?" => "Text Editor"
"Mpegplayer Menu" => "MPEG Player"
"Multiboot Settings" => "Multiboot"
"Disktidy" => "Disk Tidy"
...

Change-Id: Ie6d3be7557f31a36309489037ad8b2b27b06706e
2025-12-23 10:25:05 -05:00
Christian Soffke
fe690dfa20 plugins: playing time: adjust error message, keep theme enabled
Replace generic error message  with voiced
info about the number of tracks skipped

Change-Id: I334fac447eeef2eb5c0d302675b98027b01b09d0
2025-12-23 10:22:14 -05:00
Christian Soffke
4e211b55f9 plugins: sort, vbrfix: add warning
Destructive operations should come with a
warning, especially if they are easy to
select by accident from the Open With... menu.
vbrfix even seems to be selected by default
for audio files (which is probably not ideal).

Change-Id: I4d2c79f2f19129d8b0257655e2d7c6093ad86eca
2025-12-23 09:58:23 -05:00
Christian Soffke
f316535684 plugins: view-text, zxbox: fix panic when called without parameter
Change-Id: Ife654e6dcb29916f661ce0c2232f4060ac02f5d2
2025-12-21 23:58:04 -05:00
Solomon Peachy
a2e63fca59 FS#13721: Updated French Translation (Matthieu BACHELIER)
Change-Id: Id49928589f68ff5d77a830c76823a4e21d952360
2025-12-21 17:54:55 -05:00
64 changed files with 392 additions and 431 deletions

View file

@ -2937,7 +2937,7 @@ static int menu_action_callback(int btn, struct gui_synclist *lists)
} }
else if (btn == ACTION_STD_CONTEXT) else if (btn == ACTION_STD_CONTEXT)
{ {
MENUITEM_STRINGLIST(menu_items, "Debug Menu", NULL, ID2P(LANG_ADD_TO_FAVES)); MENUITEM_STRINGLIST(menu_items, "Debug", NULL, ID2P(LANG_ADD_TO_FAVES));
if (do_menu(&menu_items, NULL, NULL, false) == 0) if (do_menu(&menu_items, NULL, NULL, false) == 0)
shortcuts_add(SHORTCUT_DEBUGITEM, menuitems[selection].desc); shortcuts_add(SHORTCUT_DEBUGITEM, menuitems[selection].desc);
return ACTION_STD_CANCEL; return ACTION_STD_CANCEL;
@ -2974,7 +2974,7 @@ int debug_menu(void)
{ {
struct simplelist_info info; struct simplelist_info info;
simplelist_info_init(&info, "Debug Menu", ARRAYLEN(menuitems), NULL); simplelist_info_init(&info, "Debug", ARRAYLEN(menuitems), NULL);
info.action_callback = menu_action_callback; info.action_callback = menu_action_callback;
info.get_name = menu_get_name; info.get_name = menu_get_name;
info.get_talk = menu_get_talk; info.get_talk = menu_get_talk;

View file

@ -12754,20 +12754,6 @@
*: "Average bit rate" *: "Average bit rate"
</voice> </voice>
</phrase> </phrase>
<phrase>
id: LANG_PLAYTIME_ERROR
desc: playing time screen
user: core
<source>
*: "Error while gathering info"
</source>
<dest>
*: "Error while gathering info"
</dest>
<voice>
*: "Error while gathering info"
</voice>
</phrase>
<phrase> <phrase>
id: LANG_PLAYING_TIME id: LANG_PLAYING_TIME
desc: onplay menu desc: onplay menu
@ -16079,20 +16065,6 @@
*: "Default Browser" *: "Default Browser"
</voice> </voice>
</phrase> </phrase>
<phrase>
id: LANG_AMAZE_MENU
desc: Amaze game
user: core
<source>
*: "Amaze Main Menu"
</source>
<dest>
*: "Amaze Main Menu"
</dest>
<voice>
*: "Amaze Main Menu"
</voice>
</phrase>
<phrase> <phrase>
id: LANG_SET_MAZE_SIZE id: LANG_SET_MAZE_SIZE
desc: Maze size in Amaze game desc: Maze size in Amaze game
@ -16345,34 +16317,6 @@
*: "Mik mod Settings" *: "Mik mod Settings"
</voice> </voice>
</phrase> </phrase>
<phrase>
id: LANG_MIKMOD_MENU
desc: mikmod plugin
user: core
<source>
*: "Mikmod Menu"
</source>
<dest>
*: "Mikmod Menu"
</dest>
<voice>
*: "Mik mod Menu"
</voice>
</phrase>
<phrase>
id: LANG_CHESSBOX_MENU
desc: chessbox plugin
user: core
<source>
*: "Chessbox Menu"
</source>
<dest>
*: "Chessbox Menu"
</dest>
<voice>
*: "Chess box Menu"
</voice>
</phrase>
<phrase> <phrase>
id: VOICE_INVALID_VOICE_FILE id: VOICE_INVALID_VOICE_FILE
desc: played if the voice file fails to load desc: played if the voice file fails to load

View file

@ -34,6 +34,7 @@
# - Olivier Kaloudoff # - Olivier Kaloudoff
# - Jaussoin Timothée # - Jaussoin Timothée
# - CHAPUIS Adhemar # - CHAPUIS Adhemar
# - Matthieu BACHELIER
# #
# Original comments below: # Original comments below:
# #
@ -3442,57 +3443,6 @@
*: "Capacité de la batterie" *: "Capacité de la batterie"
</voice> </voice>
</phrase> </phrase>
<phrase>
id: LANG_BATTERY_TYPE
desc: deprecated
user: core
<source>
*: none
battery_types: ""
</source>
<dest>
*: none
battery_types: ""
</dest>
<voice>
*: none
battery_types: ""
</voice>
</phrase>
<phrase>
id: LANG_BATTERY_TYPE_1
desc: deprecated
user: core
<source>
*: none
battery_types,xduoox3: ""
</source>
<dest>
*: none
battery_types,xduoox3: ""
</dest>
<voice>
*: none
battery_types,xduoox3: ""
</voice>
</phrase>
<phrase>
id: LANG_BATTERY_TYPE_2
desc: deprecated
user: core
<source>
*: none
battery_types,xduoox3: ""
</source>
<dest>
*: none
battery_types,xduoox3: ""
</dest>
<voice>
*: none
battery_types,xduoox3: ""
</voice>
</phrase>
<phrase> <phrase>
id: LANG_DISK_MENU id: LANG_DISK_MENU
desc: in the system sub menu desc: in the system sub menu
@ -3634,8 +3584,8 @@
<dest> <dest>
*: none *: none
rtc: "ON = Valider" rtc: "ON = Valider"
gigabeat*,iaudiom5,iaudiox5,ipod*,iriverh10,iriverh10_5gb,mrobe100,sansac200*,sansaclip*,sansaconnect,sansae200*,sansafuze*: "SELECT = Valider"
aigoerosq,erosqnative,gogearsa9200,samsungyh*,xduoox3*: "PLAY = Valider" aigoerosq,erosqnative,gogearsa9200,samsungyh*,xduoox3*: "PLAY = Valider"
gigabeat*,iaudiom5,iaudiox5,ipod*,iriverh10,iriverh10_5gb,mrobe100,sansac200*,sansaclip*,sansaconnect,sansae200*,sansafuze*: "SELECT = Valider"
iriverh100,iriverh120,iriverh300: "NAVI = Valider" iriverh100,iriverh120,iriverh300: "NAVI = Valider"
mpiohd300: "ENTER = Valider" mpiohd300: "ENTER = Valider"
mrobe500: "HEART = Valider" mrobe500: "HEART = Valider"
@ -3643,7 +3593,6 @@
</dest> </dest>
<voice> <voice>
*: none *: none
gigabeat*,gogearsa9200,iaudiom5,iaudiox5,ipod*,iriverh10,iriverh100,iriverh10_5gb,iriverh120,iriverh300,mrobe100,rtc,samsungyh*,sansac200*,sansae200*: ""
</voice> </voice>
</phrase> </phrase>
<phrase> <phrase>
@ -3667,8 +3616,8 @@
<dest> <dest>
*: none *: none
rtc: "OFF = Annuler" rtc: "OFF = Annuler"
gigabeatfx,mrobe500: "POWER = Annuler"
aigoerosq,erosqnative,gigabeats,sansafuzeplus,xduoox3*: "BACK = Annuler" aigoerosq,erosqnative,gigabeats,sansafuzeplus,xduoox3*: "BACK = Annuler"
gigabeatfx,mrobe500: "POWER = Annuler"
gogearsa9200: "LEFT = Annuler" gogearsa9200: "LEFT = Annuler"
iaudiom5,iaudiox5: "RECORD = Annuler" iaudiom5,iaudiox5: "RECORD = Annuler"
ipod*,mpiohd300,sansac200*: "MENU = Annuler" ipod*,mpiohd300,sansac200*: "MENU = Annuler"
@ -3680,7 +3629,6 @@
</dest> </dest>
<voice> <voice>
*: none *: none
gigabeat*,gogearsa9200,iaudiom5,iaudiox5,ipod*,iriverh10,iriverh100,iriverh10_5gb,iriverh120,iriverh300,mrobe100,rtc,samsungyh*,sansac200*,sansae200*: ""
</voice> </voice>
</phrase> </phrase>
<phrase> <phrase>
@ -4758,7 +4706,7 @@
</dest> </dest>
<voice> <voice>
*: none *: none
radio: "" radio: "Recherche en cours"
</voice> </voice>
</phrase> </phrase>
<phrase> <phrase>
@ -5868,20 +5816,6 @@
*: "pistes enregistrées" *: "pistes enregistrées"
</voice> </voice>
</phrase> </phrase>
<phrase>
id: LANG_CATALOG
desc: deprecated
user: core
<source>
*: ""
</source>
<dest>
*: ""
</dest>
<voice>
*: ""
</voice>
</phrase>
<phrase> <phrase>
id: LANG_RECURSE_DIRECTORY id: LANG_RECURSE_DIRECTORY
desc: In playlist menu desc: In playlist menu
@ -7332,7 +7266,7 @@
*: "Impossible d'ouvrir %s" *: "Impossible d'ouvrir %s"
</dest> </dest>
<voice> <voice>
*: "" *: "Impossible d'ouvrir cette extension"
</voice> </voice>
</phrase> </phrase>
<phrase> <phrase>
@ -7346,7 +7280,7 @@
*: "Lecture de %s impossible" *: "Lecture de %s impossible"
</dest> </dest>
<voice> <voice>
*: "" *: "Lecture du fichier impossible"
</voice> </voice>
</phrase> </phrase>
<phrase> <phrase>
@ -12580,20 +12514,6 @@
*: "Intégration de l'écran de lecture en cours" *: "Intégration de l'écran de lecture en cours"
</voice> </voice>
</phrase> </phrase>
<phrase>
id: LANG_PLAYTIME_REMAINING
desc: deprecated
user: core
<source>
*: ""
</source>
<dest>
*: ""
</dest>
<voice>
*: ""
</voice>
</phrase>
<phrase> <phrase>
id: LANG_RESIZE_COVERS id: LANG_RESIZE_COVERS
desc: in the pictureflow settings menu desc: in the pictureflow settings menu
@ -12694,16 +12614,16 @@
</phrase> </phrase>
<phrase> <phrase>
id: LANG_TOGGLE_ITEM id: LANG_TOGGLE_ITEM
desc: in main_menu_config desc: deprecated
user: core user: core
<source> <source>
*: "Toggle Item" *: ""
</source> </source>
<dest> <dest>
*: "Changer l'état" *: ""
</dest> </dest>
<voice> <voice>
*: "Changer l'état" *: ""
</voice> </voice>
</phrase> </phrase>
<phrase> <phrase>
@ -13382,13 +13302,13 @@
</phrase> </phrase>
<phrase> <phrase>
id: LANG_MAIN_MENU_ORDER id: LANG_MAIN_MENU_ORDER
desc: main_menu_config plugin title desc: deprecated
user: core user: core
<source> <source>
*: "Rockbox Main Menu Order" *: ""
</source> </source>
<dest> <dest>
*: "Ordre du menu principal Rockbox" *: ""
</dest> </dest>
<voice> <voice>
*: "" *: ""
@ -13759,20 +13679,6 @@
*: "Mettre à jour le cache" *: "Mettre à jour le cache"
</voice> </voice>
</phrase> </phrase>
<phrase>
id: LANG_CACHE_REBUILT_NEXT_RESTART
desc: deprecated
user: core
<source>
*: ""
</source>
<dest>
*: ""
</dest>
<voice>
*: ""
</voice>
</phrase>
<phrase> <phrase>
id: LANG_CHANGE_VOLUME id: LANG_CHANGE_VOLUME
desc: in playback control menu desc: in playback control menu
@ -17021,3 +16927,85 @@
*: "Liste de lecture terminée. Rejouer?" *: "Liste de lecture terminée. Rejouer?"
</voice> </voice>
</phrase> </phrase>
<phrase>
id: LANG_USB_DAC
desc: in settings_menu
user: core
<source>
*: none
usbdac: "USB-DAC"
</source>
<dest>
*: none
usbdac: "USB-DAC"
</dest>
<voice>
*: none
usbdac: "USB-DAC"
</voice>
</phrase>
<phrase>
id: LANG_WHILE_USB_CHARGE_ONLY
desc: in settings_menu
user: core
<source>
*: none
usbdac: "While In USB Charge-Only Mode"
</source>
<dest>
*: none
usbdac: "En mode de charge USB, uniquement"
</dest>
<voice>
*: none
usbdac: "En mode de charge USB, uniquement"
</voice>
</phrase>
<phrase>
id: LANG_WHILE_MASS_STORAGE_USB_ONLY
desc: in settings_menu
user: core
<source>
*: none
usbdac: "While In USB Mass-Storage Mode"
</source>
<dest>
*: none
usbdac: "En mode de stockage de masse USB"
</dest>
<voice>
*: none
usbdac: "En mode de stockage de masse USB"
</voice>
</phrase>
<phrase>
id: LANG_USB_DAC_ACTIVE
desc: for splash
user: core
<source>
*: none
usbdac: "USB-DAC Active"
</source>
<dest>
*: none
usbdac: "DAC USB actif"
</dest>
<voice>
*: none
usbdac: "DAC USB actif"
</voice>
</phrase>
<phrase>
id: LANG_SORT_PLAYLISTS
desc: playlists sorting setting
user: core
<source>
*: "Sort Playlists"
</source>
<dest>
*: "Trier les listes de lecture"
</dest>
<voice>
*: "trier les listes de lecture"
</voice>
</phrase>

View file

@ -886,6 +886,7 @@ int plugin_load(const char* plugin, const void* parameter)
/* for some plugins, the SBS can be left enabled */ /* for some plugins, the SBS can be left enabled */
const char *sepch = strrchr(plugin, PATH_SEPCH); const char *sepch = strrchr(plugin, PATH_SEPCH);
bool theme_enabled = sepch && (!strcmp("properties.rock", sepch + 1) || bool theme_enabled = sepch && (!strcmp("properties.rock", sepch + 1) ||
!strcmp("playing_time.rock", sepch + 1) ||
!strcmp("main_menu_config.rock", sepch + 1) || !strcmp("main_menu_config.rock", sepch + 1) ||
!strcmp("disktidy.rock", sepch + 1)); !strcmp("disktidy.rock", sepch + 1));

View file

@ -809,7 +809,7 @@ static bool confirm_quit(void)
static int do_2048_pause_menu(void) static int do_2048_pause_menu(void)
{ {
int sel = 0; int sel = 0;
MENUITEM_STRINGLIST(menu,"2048 Menu", NULL, MENUITEM_STRINGLIST(menu,"2048", NULL,
"Resume Game", "Resume Game",
"Start New Game", "Start New Game",
"High Scores", "High Scores",
@ -1014,7 +1014,7 @@ static enum plugin_status do_2048_menu(void)
int sel = 0; int sel = 0;
loaded = load_game(); loaded = load_game();
MENUITEM_STRINGLIST(menu, MENUITEM_STRINGLIST(menu,
"2048 Menu", "2048",
mainmenu_cb, mainmenu_cb,
"Resume Game", "Resume Game",
"Start New Game", "Start New Game",

View file

@ -1301,7 +1301,7 @@ int menu(void)
bool exit_menu = false; bool exit_menu = false;
int selection = 0, result = 0, status = 1; int selection = 0, result = 0, status = 1;
MENUITEM_STRINGLIST(menu, ID2P(LANG_AMAZE_MENU), menu_cb, MENUITEM_STRINGLIST(menu, "Amaze", menu_cb,
ID2P(LANG_CHESSBOX_MENU_RESUME_GAME), ID2P(LANG_CHESSBOX_MENU_RESUME_GAME),
ID2P(LANG_CHESSBOX_MENU_NEW_GAME), ID2P(LANG_CHESSBOX_MENU_NEW_GAME),
ID2P(LANG_SET_MAZE_SIZE), ID2P(LANG_SET_MAZE_SIZE),

View file

@ -1412,7 +1412,7 @@ static unsigned int blackjack_menu(void) {
int selection = 0; int selection = 0;
bool breakout = false; bool breakout = false;
MENUITEM_STRINGLIST(menu, "BlackJack Menu", blackjack_menu_cb, MENUITEM_STRINGLIST(menu, "Blackjack", blackjack_menu_cb,
"Resume Game", "Start New Game", "Resume Game", "Start New Game",
"High Scores", "Help", "High Scores", "Help",
"Playback Control", "Playback Control",

View file

@ -1601,7 +1601,7 @@ static int brickmania_menu(void)
rb->touchscreen_set_mode(rb->global_settings->touch_mode); rb->touchscreen_set_mode(rb->global_settings->touch_mode);
#endif #endif
MENUITEM_STRINGLIST(main_menu, "Brickmania Menu", brickmania_menu_cb, MENUITEM_STRINGLIST(main_menu, "Brickmania", brickmania_menu_cb,
"Resume Game", "Start New Game", "Resume Game", "Start New Game",
"Difficulty", "Help", "High Scores", "Difficulty", "Help", "High Scores",
"Playback Control", "Playback Control",

View file

@ -2503,7 +2503,7 @@ static int bubbles_menu(struct game_context* bb) {
int selected = 0; int selected = 0;
bool startgame = false; bool startgame = false;
MENUITEM_STRINGLIST(menu,"Bubbles Menu",bubbles_menu_cb, MENUITEM_STRINGLIST(menu,"Bubbles",bubbles_menu_cb,
"Resume Game", "Start New Game", "Resume Game", "Start New Game",
"Level", "High Scores", "Playback Control", "Level", "High Scores", "Playback Control",
"Quit without Saving", "Quit"); "Quit without Saving", "Quit");

View file

@ -893,7 +893,7 @@ static bool edit_memo(int change, struct shown *shown)
{ "Sun", -1 }, { "Sun", -1 },
}; };
MENUITEM_STRINGLIST(edit_menu, "Edit menu", edit_menu_cb, MENUITEM_STRINGLIST(edit_menu, "Edit", edit_menu_cb,
"Remove", "Edit", "Remove", "Edit",
"New Weekly", "New Monthly", "New Weekly", "New Monthly",
"New Yearly", "New One off", "New Yearly", "New One off",

View file

@ -542,7 +542,7 @@ static int cb_menu_viewer(void)
{ {
int selection; int selection;
MENUITEM_STRINGLIST(menu, ID2P(LANG_CHESSBOX_MENU), NULL, MENUITEM_STRINGLIST(menu, "Chessbox", NULL,
ID2P(LANG_CHESSBOX_MENU_RESTART_GAME), ID2P(LANG_CHESSBOX_MENU_RESTART_GAME),
ID2P(LANG_CHESSBOX_MENU_SELECT_OTHER_GAME), ID2P(LANG_CHESSBOX_MENU_SELECT_OTHER_GAME),
ID2P(LANG_CHESSBOX_MENU_RESUME_GAME), ID2P(LANG_CHESSBOX_MENU_RESUME_GAME),
@ -787,7 +787,7 @@ static int cb_menu(void)
{ {
int selection; int selection;
MENUITEM_STRINGLIST(menu,ID2P(LANG_CHESSBOX_MENU), NULL, MENUITEM_STRINGLIST(menu,"Chessbox", NULL,
ID2P(LANG_CHESSBOX_MENU_NEW_GAME), ID2P(LANG_CHESSBOX_MENU_NEW_GAME),
ID2P(LANG_CHESSBOX_MENU_RESUME_GAME), ID2P(LANG_CHESSBOX_MENU_RESUME_GAME),
ID2P(LANG_CHESSBOX_MENU_SAVE_GAME), ID2P(LANG_CHESSBOX_MENU_SAVE_GAME),

View file

@ -688,7 +688,7 @@ static int run_timer(int nr)
/* MENU */ /* MENU */
case CHC_MENU: case CHC_MENU:
{ {
MENUITEM_STRINGLIST(menu, "Menu", NULL, MENUITEM_STRINGLIST(menu, "Chess Clock", NULL,
"Delete player", "Restart round", "Delete player", "Restart round",
"Set round time", "Set total time", "Set round time", "Set total time",
"Playback Control"); "Playback Control");

View file

@ -766,7 +766,7 @@ static int chopMenu(int menunum)
{ "Steep", -1 }, { "Steep", -1 },
}; };
MENUITEM_STRINGLIST(menu,"Chopper Menu",chopMenuCb, MENUITEM_STRINGLIST(menu,"Chopper",chopMenuCb,
"Resume Game","Start New Game", "Resume Game","Start New Game",
"Level","Playback Control","Quit"); "Level","Playback Control","Quit");
_ingame = (menunum!=0); _ingame = (menunum!=0);

View file

@ -781,7 +781,7 @@ static int clix_menu(struct clix_game_state_t* state, bool ingame)
_ingame = ingame; _ingame = ingame;
MENUITEM_STRINGLIST (main_menu, "Clix Menu", clix_menu_cb, MENUITEM_STRINGLIST (main_menu, "Clix", clix_menu_cb,
"Resume Game", "Resume Game",
"Start New Game", "Start New Game",
"Help", "Help",

View file

@ -375,7 +375,7 @@ static int menu_cb(int action,
} }
static void main_menu(void) { static void main_menu(void) {
MENUITEM_STRINGLIST(main_menu, "Codebuster Menu", menu_cb, MENUITEM_STRINGLIST(main_menu, "Codebuster", menu_cb,
"Resume Game", "Start New Game", "Settings", "Resume Game", "Start New Game", "Settings",
"Playback Control", "Quit"); "Playback Control", "Quit");
int cur_item = 0; int cur_item = 0;

View file

@ -526,7 +526,7 @@ static enum plugin_status do_dart_scorer_menu(void)
int sel = 0; int sel = 0;
loaded = load_game(); loaded = load_game();
MENUITEM_STRINGLIST(menu, MENUITEM_STRINGLIST(menu,
"Dart Scorer Menu", "Dart Scorer",
mainmenu_cb, mainmenu_cb,
"Resume Game", "Resume Game",
"Start New Game", "Start New Game",

View file

@ -182,7 +182,7 @@ static bool dice_menu(struct dices * dice) {
int selection; int selection;
bool menu_quit = false, result = false; bool menu_quit = false, result = false;
MENUITEM_STRINGLIST(menu, "Dice Menu", NULL, MENUITEM_STRINGLIST(menu, "Dice", NULL,
"Roll Dice", "Roll Dice",
"Number of Dice", "Number of Sides", "Number of Dice", "Number of Sides",
"Playback Control", "Quit"); "Playback Control", "Quit");

View file

@ -678,7 +678,7 @@ static enum plugin_status tidy_lcd_menu(void)
int selection = 0; int selection = 0;
struct simplelist_info list; struct simplelist_info list;
MENUITEM_STRINGLIST(menu, "Disktidy", disktidy_menu_cb, MENUITEM_STRINGLIST(menu, "Disk Tidy", disktidy_menu_cb,
"Start Cleaning", "Files to Clean", "Last Run Stats", "Start Cleaning", "Files to Clean", "Last Run Stats",
"Playback Control", "Quit"); "Playback Control", "Quit");

View file

@ -592,7 +592,7 @@ int doom_menu()
static struct opt_items names[7]; static struct opt_items names[7];
MENUITEM_STRINGLIST(menu, "Doom Menu", NULL, MENUITEM_STRINGLIST(menu, "Doom", NULL,
"Game", "Addons", "Demos", "Game", "Addons", "Demos",
"Options", "Play Game", "Quit"); "Options", "Play Game", "Quit");

View file

@ -215,7 +215,7 @@ static const struct opt_items fps_settings[9] = {
int fps_values[9] = { int fps_values[9] = {
20, 25, 30, 35, 40, 45, 50, 55, 60 }; 20, 25, 30, 35, 40, 45, 50, 55, 60 };
MENUITEM_STRINGLIST(menu, "Fireworks Menu", NULL, MENUITEM_STRINGLIST(menu, "Fireworks", NULL,
"Start Demo", "Auto-Fire", "Particles Per Firework", "Start Demo", "Auto-Fire", "Particles Per Firework",
"Particle Life", "Gravity", "Show Rockets", "Particle Life", "Gravity", "Show Rockets",
"FPS (Speed)", "Playback Control", "Quit"); "FPS (Speed)", "Playback Control", "Quit");

View file

@ -612,7 +612,7 @@ static bool
do_main_menu (void) do_main_menu (void)
{ {
int selection = 0; int selection = 0;
MENUITEM_STRINGLIST (menu, "Rockbox Goban", NULL, MENUITEM_STRINGLIST (menu, "Goban", NULL,
"New", "New",
"Save", "Save",
"Save As", "Save As",
@ -620,7 +620,7 @@ do_main_menu (void)
"Playback Control", "Playback Control",
"Zoom Level", "Zoom Level",
"Options", "Options",
"Context Menu", "Perform Task",
"Quit"); "Quit");
/* for "New" in menu */ /* for "New" in menu */
@ -997,7 +997,7 @@ do_context_menu (void)
bool done = false; bool done = false;
int temp; int temp;
MENUITEM_STRINGLIST (context_menu, "Context Menu", NULL, MENUITEM_STRINGLIST (context_menu, "Perform Task", NULL,
"Play Mode (default)", "Play Mode (default)",
"Add Black Mode", "Add Black Mode",
"Add White Mode", "Add White Mode",
@ -1132,7 +1132,7 @@ do_options_menu (void)
int selection; int selection;
bool done = false; bool done = false;
MENUITEM_STRINGLIST (options_menu, "Options Menu", NULL, MENUITEM_STRINGLIST (options_menu, "Options", NULL,
"Show Child Variations?", "Show Child Variations?",
"Disable Idle Poweroff?", "Disable Idle Poweroff?",
"Idle Autosave Time", "Idle Autosave Time",

View file

@ -275,7 +275,7 @@ static int show_menu(void) /* return 1 to quit */
MIID_QUIT, MIID_QUIT,
}; };
MENUITEM_STRINGLIST(menu, "Image Viewer Menu", NULL, MENUITEM_STRINGLIST(menu, "Image Viewer", NULL,
ID2P(LANG_RETURN), ID2P(LANG_RETURN),
ID2P(LANG_SLIDESHOW_MODE), ID2P(LANG_SLIDESHOW_MODE),
ID2P(LANG_SLIDESHOW_TIME), ID2P(LANG_SLIDESHOW_TIME),
@ -1112,10 +1112,10 @@ enum plugin_status plugin_start(const void* parameter)
if (!parameter) if (!parameter)
{ {
if (!find_album_art(&offset, &filesize, &status)) if (!find_album_art(&offset, &filesize, &status))
{ {
rb->splash(HZ * 2, "No file"); rb->splash(HZ * 2, "No file");
return PLUGIN_ERROR; return PLUGIN_ERROR;
} }
is_album_art = true; is_album_art = true;
} }
@ -1123,10 +1123,10 @@ enum plugin_status plugin_start(const void* parameter)
{ {
rb->strcpy(np_file, parameter); rb->strcpy(np_file, parameter);
if ((status = get_image_type(np_file, false)) == IMAGE_UNKNOWN) if ((status = get_image_type(np_file, false)) == IMAGE_UNKNOWN)
{ {
rb->splash(HZ * 2, "Unsupported file"); rb->splash(HZ * 2, "Unsupported file");
return PLUGIN_ERROR; return PLUGIN_ERROR;
} }
} }
#ifdef USE_PLUG_BUF #ifdef USE_PLUG_BUF

View file

@ -1480,7 +1480,7 @@ static int jewels_game_menu(struct game_context* bj, bool ingame)
{ "Puzzle", -1 }, { "Puzzle", -1 },
}; };
MENUITEM_STRINGLIST (main_menu, "Jewels Menu", jewels_menu_cb, MENUITEM_STRINGLIST (main_menu, "Jewels", jewels_menu_cb,
"Resume Game", "Resume Game",
"Start New Game", "Start New Game",
"Mode", "Mode",

View file

@ -2419,7 +2419,7 @@ static const char* lrc_debug_data(int selected, void * data,
static bool lrc_debug_menu(void) static bool lrc_debug_menu(void)
{ {
struct simplelist_info info; struct simplelist_info info;
rb->simplelist_info_init(&info, "Debug Menu", 6, NULL); rb->simplelist_info_init(&info, "Debug", 6, NULL);
info.scroll_all = true; info.scroll_all = true;
info.get_name = lrc_debug_data; info.get_name = lrc_debug_data;
return rb->simplelist_show_list(&info); return rb->simplelist_show_list(&info);
@ -2442,13 +2442,13 @@ static int lrc_menu(void)
LRC_MENU_QUIT, LRC_MENU_QUIT,
}; };
MENUITEM_STRINGLIST(menu, "Lrcplayer Menu", NULL, MENUITEM_STRINGLIST(menu, "Lrcplayer", NULL,
"Theme Settings", "Theme Settings",
"Display Settings", "Display Settings",
"Lyrics Settings", "Lyrics Settings",
"Playback Control", "Playback Control",
#ifdef LRC_DEBUG #ifdef LRC_DEBUG
"Debug Menu", "Debug",
#endif #endif
"Time Offset", "Timetag Editor", "Time Offset", "Timetag Editor",
"Quit"); "Quit");

View file

@ -61,7 +61,7 @@ const struct button_mapping *plugin_contexts[]
#define MAZEZAM_TEXT_CHECKPOINT "Checkpoint reached" #define MAZEZAM_TEXT_CHECKPOINT "Checkpoint reached"
#define MAZEZAM_TEXT_WELLDONE_TITLE "You have escaped!" #define MAZEZAM_TEXT_WELLDONE_TITLE "You have escaped!"
#define MAZEZAM_TEXT_WELLDONE_OPTION "Goodbye" #define MAZEZAM_TEXT_WELLDONE_OPTION "Goodbye"
#define MAZEZAM_TEXT_MAZEZAM_MENU "MazezaM Menu" #define MAZEZAM_TEXT_MAZEZAM_MENU "MazezaM"
#define MAZEZAM_TEXT_RETRY_LEVEL "Retry level" #define MAZEZAM_TEXT_RETRY_LEVEL "Retry level"
#define MAZEZAM_TEXT_AUDIO_PLAYBACK "Playback Control" #define MAZEZAM_TEXT_AUDIO_PLAYBACK "Playback Control"
#define MAZEZAM_TEXT_QUIT "Quit" #define MAZEZAM_TEXT_QUIT "Quit"

View file

@ -652,7 +652,7 @@ static int main_menu(void)
int selection = 0; int selection = 0;
int result; int result;
MENUITEM_STRINGLIST(main_menu,ID2P(LANG_MIKMOD_MENU), NULL, MENUITEM_STRINGLIST(main_menu,"Mikmod", NULL,
ID2P(LANG_SETTINGS), ID2P(LANG_SETTINGS),
ID2P(LANG_RETURN), ID2P(LANG_RETURN),
ID2P(LANG_MENU_QUIT)); ID2P(LANG_MENU_QUIT));

View file

@ -821,7 +821,7 @@ static enum minesweeper_status menu( void )
int selection = 0, result = MINESWEEPER_QUIT; int selection = 0, result = MINESWEEPER_QUIT;
bool menu_quit = false; bool menu_quit = false;
MENUITEM_STRINGLIST( menu, "Minesweeper Menu", NULL, "Play Minesweeper", MENUITEM_STRINGLIST( menu, "Minesweeper", NULL, "Play Minesweeper",
"Mine Percentage", "Number of Rows", "Mine Percentage", "Number of Rows",
"Number of Columns", "Playback Control", "Quit" ); "Number of Columns", "Playback Control", "Quit" );

View file

@ -1038,7 +1038,7 @@ static int show_start_menu(uint32_t duration)
int result = 0; int result = 0;
bool menu_quit = false; bool menu_quit = false;
MENUITEM_STRINGLIST(menu, "Mpegplayer Menu", mpeg_sysevent_callback, MENUITEM_STRINGLIST(menu, "MPEG Player", mpeg_sysevent_callback,
ID2P(LANG_RESTART_PLAYBACK), ID2P(LANG_RESTART_PLAYBACK),
ID2P(LANG_RESUME_PLAYBACK), ID2P(LANG_RESUME_PLAYBACK),
ID2P(LANG_SET_RESUME_TIME), ID2P(LANG_SET_RESUME_TIME),
@ -1138,7 +1138,7 @@ int mpeg_menu(void)
{ {
int result; int result;
MENUITEM_STRINGLIST(menu, "Mpegplayer Menu", mpeg_sysevent_callback, MENUITEM_STRINGLIST(menu, "MPEG Player", mpeg_sysevent_callback,
ID2P(LANG_SETTINGS), ID2P(LANG_SETTINGS),
ID2P(LANG_RESUME_PLAYBACK), ID2P(LANG_RESUME_PLAYBACK),
ID2P(LANG_MENU_QUIT)); ID2P(LANG_MENU_QUIT));

View file

@ -336,7 +336,7 @@ static int menu_action_cb(int action, struct gui_synclist* lists)
static bool show_menu(void) static bool show_menu(void)
{ {
struct simplelist_info info; struct simplelist_info info;
rb->simplelist_info_init(&info, "Multiboot Settings", MB_NUM_ITEMS, NULL); rb->simplelist_info_init(&info, "Multiboot", MB_NUM_ITEMS, NULL);
info.get_name = menu_get_name_cb; info.get_name = menu_get_name_cb;
info.action_callback = menu_action_cb; info.action_callback = menu_action_cb;
return rb->simplelist_show_list(&info); return rb->simplelist_show_list(&info);

View file

@ -245,7 +245,7 @@ static bool pacbox_menu(void)
PBMI_QUIT, PBMI_QUIT,
}; };
MENUITEM_STRINGLIST(menu, "Pacbox Menu", NULL, MENUITEM_STRINGLIST(menu, "Pacbox", NULL,
"Difficulty", "Pacmen Per Game", "Bonus Life", "Difficulty", "Pacmen Per Game", "Bonus Life",
"Ghost Names", "Display FPS", "Sound", "Ghost Names", "Display FPS", "Sound",
#ifdef AI #ifdef AI

View file

@ -1355,7 +1355,7 @@ static unsigned int pegbox_menu(struct game_context* pb, bool ingame)
int selected = 0; int selected = 0;
int last_level = pb->level; int last_level = pb->level;
MENUITEM_STRINGLIST (main_menu, "Pegbox Menu", pegbox_menu_cb, MENUITEM_STRINGLIST (main_menu, "Pegbox", pegbox_menu_cb,
"Resume Game", "Restart Level", "Start Game", "Resume Game", "Restart Level", "Start Game",
"Select Level", "Help", "Select Level", "Help",
"Playback Control", "Quit"); "Playback Control", "Quit");

View file

@ -3700,7 +3700,7 @@ static int main_menu(void)
rb->lcd_set_foreground(N_BRIGHT(255)); rb->lcd_set_foreground(N_BRIGHT(255));
#endif #endif
MENUITEM_STRINGLIST(main_menu, "PictureFlow Main Menu", NULL, MENUITEM_STRINGLIST(main_menu, "PictureFlow", NULL,
ID2P(LANG_SORT_ALBUMS_BY), ID2P(LANG_SORT_ALBUMS_BY),
ID2P(LANG_SHOW_TRACKS_WHILE_BROWSING), ID2P(LANG_SHOW_TRACKS_WHILE_BROWSING),
ID2P(LANG_GOTO_LAST_ALBUM), ID2P(LANG_GOTO_LAST_ALBUM),

View file

@ -568,7 +568,7 @@ The bottom right displays the number of moves taken, the number of moves used by
function app_menu() function app_menu()
local options = {"Resume game", "Start new game", "Change difficulty", local options = {"Resume game", "Start new game", "Change difficulty",
"Help", "Quit without saving", "Quit"} "Help", "Quit without saving", "Quit"}
local item = rb.do_menu("Pixel painter menu", options, nil, false) local item = rb.do_menu("Pixel Painter", options, nil, false)
if item == 0 then if item == 0 then
redraw_game(game_state, highscores) redraw_game(game_state, highscores)

View file

@ -55,6 +55,7 @@ enum ePT_SUM {
struct playing_time_info { struct playing_time_info {
char single_mode_tag[MAX_PATH]; /* Relevant tag when single mode enabled */ char single_mode_tag[MAX_PATH]; /* Relevant tag when single mode enabled */
char error_str[16]; /* Error message to display to user */
unsigned long long size[ePT_COUNT]; /* File size of tracks */ unsigned long long size[ePT_COUNT]; /* File size of tracks */
unsigned long long length[ePT_COUNT]; /* Length of tracks */ unsigned long long length[ePT_COUNT]; /* Length of tracks */
unsigned long curr_track_length[ePT_COUNT]; /* Current track length */ unsigned long curr_track_length[ePT_COUNT]; /* Current track length */
@ -529,7 +530,19 @@ static bool playing_time(void)
if (!success) if (!success)
return false; return false;
if (pti.error_count > 0) if (pti.error_count > 0)
rb->splash(HZ, ID2P(LANG_PLAYTIME_ERROR)); {
rb->snprintf(pti.error_str, sizeof pti.error_str,
"%d %s", pti.error_count, rb->str(LANG_TRACKS));
if (rb->global_settings->talk_menu)
{
rb->talk_id(LANG_ERROR_FORMATSTR, false);
rb->talk_number(pti.error_count, true);
rb->talk_id(LANG_TRACKS, true);
rb->talk_force_enqueue_next();
}
/* (voiced above) */
rb->splashf(HZ, rb->str(LANG_ERROR_FORMATSTR), pti.error_str);
}
pt_store_converted_totals(&pti); pt_store_converted_totals(&pti);
return pt_display_stats(&pti); return pt_display_stats(&pti);
@ -547,6 +560,8 @@ enum plugin_status plugin_start(const void* parameter)
return status; return status;
} }
/* Only relevant if launched using hotkey from the
WPS. Otherwise theme should be enabled already. */
FOR_NB_SCREENS(i) FOR_NB_SCREENS(i)
rb->viewportmanager_theme_enable(i, true, NULL); rb->viewportmanager_theme_enable(i, true, NULL);

View file

@ -2624,7 +2624,7 @@ static void bench_aa(void)
static void debug_menu(void) static void debug_menu(void)
{ {
MENUITEM_STRINGLIST(menu, "Debug Menu", NULL, MENUITEM_STRINGLIST(menu, "Debug", NULL,
"Slowmo factor", "Slowmo factor",
"Randomize colors", "Randomize colors",
"Toggle flash pixel on timer", "Toggle flash pixel on timer",
@ -2815,7 +2815,7 @@ static int pause_menu(void)
"Extensive Help", // 8 "Extensive Help", // 8
"Playback Control", // 9 "Playback Control", // 9
"Game Type", // 10 "Game Type", // 10
"Debug Menu", // 11 "Debug", // 11
"Configure Game", // 12 "Configure Game", // 12
"Preferences", // 13 "Preferences", // 13
"Quit without Saving", // 14 "Quit without Saving", // 14
@ -3414,7 +3414,7 @@ static void puzzles_main(void)
#endif #endif
/* must be done before any menu needs to be displayed */ /* must be done before any menu needs to be displayed */
rb->snprintf(menu_desc, sizeof(menu_desc), "%s Menu", midend_which_game(me)->name); rb->snprintf(menu_desc, sizeof(menu_desc), "%s", midend_which_game(me)->name);
#ifdef HAVE_ADJUSTABLE_CPU_FREQ #ifdef HAVE_ADJUSTABLE_CPU_FREQ
/* about to go to menu or button block */ /* about to go to menu or button block */

View file

@ -328,7 +328,7 @@ static int edit_list(void)
case ACTION_STD_CONTEXT: case ACTION_STD_CONTEXT:
{ {
int len; int len;
MENUITEM_STRINGLIST(menu, "Remove Menu", NULL, MENUITEM_STRINGLIST(menu, "Remove", NULL,
"Remove Folder", "Remove Folder Tree"); "Remove Folder", "Remove Folder Tree");
switch (rb->do_menu(&menu, NULL, NULL, false)) switch (rb->do_menu(&menu, NULL, NULL, false))
@ -357,7 +357,7 @@ static int edit_list(void)
break; break;
case ACTION_STD_CANCEL: case ACTION_STD_CANCEL:
{ {
MENUITEM_STRINGLIST(menu, "Exit Menu", NULL, MENUITEM_STRINGLIST(menu, "Exit", NULL,
"Save and Exit", "Ignore Changes and Exit"); "Save and Exit", "Ignore Changes and Exit");
switch (rb->do_menu(&menu, NULL, NULL, false)) switch (rb->do_menu(&menu, NULL, NULL, false))
@ -548,7 +548,7 @@ static int start_shuffled_play(void)
static enum plugin_status main_menu(void) static enum plugin_status main_menu(void)
{ {
bool exit = false; bool exit = false;
MENUITEM_STRINGLIST(menu, "Main Menu", NULL, MENUITEM_STRINGLIST(menu, "Random Folder Advance", NULL,
"Generate Folder List", "Generate Folder List",
"Edit Folder List", "Edit Folder List",
"Export List To Textfile", "Export List To Textfile",

View file

@ -1021,7 +1021,7 @@ enum plugin_status plugin_start(const void* nothing)
text_vp.height = screen_vp.height - text_vp.y; text_vp.height = screen_vp.height - text_vp.y;
#endif #endif
MENUITEM_STRINGLIST(main_menu, "Resistor Code Calculator:", NULL, MENUITEM_STRINGLIST(main_menu, "Resistor Calculator", NULL,
"Colours -> Resistance", "Resistance -> Colours", "Colours -> Resistance", "Resistance -> Colours",
"LED resistor calculator", "Help", "Exit"); "LED resistor calculator", "Help", "Exit");
while (!menuquit) { while (!menuquit) {

View file

@ -416,7 +416,7 @@ static bool reversi_gui_menu(void) {
int index, num_items, i; int index, num_items, i;
int result; int result;
MENUITEM_STRINGLIST(menu, "Reversi Menu", NULL, MENUITEM_STRINGLIST(menu, "Reversi", NULL,
"Start new game", "Pass the move", "Start new game", "Pass the move",
MENU_TEXT_STRAT_BLACK, MENU_TEXT_STRAT_WHITE, MENU_TEXT_STRAT_BLACK, MENU_TEXT_STRAT_WHITE,
MENU_TEXT_WRAP_MODE, "Playback Control", "Quit"); MENU_TEXT_WRAP_MODE, "Playback Control", "Quit");

View file

@ -1480,7 +1480,7 @@ static int rockblox_menu(void)
{ {
int selected = 0; int selected = 0;
MENUITEM_STRINGLIST(main_menu, "Rockblox Menu", rockblox_menu_cb, MENUITEM_STRINGLIST(main_menu, "Rockblox", rockblox_menu_cb,
"Resume Game", "Start New Game", "Resume Game", "Start New Game",
"Help", "High Scores", "Playback Control", "Help", "High Scores", "Playback Control",
"Quit without Saving", "Quit"); "Quit without Saving", "Quit");

View file

@ -89,7 +89,7 @@ int do_user_menu(void) {
while (rb->button_get(false) != BUTTON_NONE) while (rb->button_get(false) != BUTTON_NONE)
rb->yield(); rb->yield();
MENUITEM_STRINGLIST(menu, "Rockboy Menu", NULL, MENUITEM_STRINGLIST(menu, "Rockboy", NULL,
"Load Game", "Save Game", "Load Game", "Save Game",
"Options", "Reset", "Quit"); "Options", "Reset", "Quit");

View file

@ -1031,7 +1031,7 @@ enum {
TEXT_MENU_PREVIEW, TEXT_MENU_APPLY, TEXT_MENU_CANCEL, TEXT_MENU_PREVIEW, TEXT_MENU_APPLY, TEXT_MENU_CANCEL,
}; };
MENUITEM_STRINGLIST(main_menu, "RockPaint", NULL, MENUITEM_STRINGLIST(main_menu, "Rockpaint", NULL,
"Resume", "New", "Load", "Save", "Resume", "New", "Load", "Save",
"Set Width", "Set Height", "Set Width", "Set Height",
"Brush Size", "Brush Speed", "Brush Size", "Brush Speed",

View file

@ -520,7 +520,7 @@ static int snake_menu_cb(int action,
static int snake_game_menu(void) static int snake_game_menu(void)
{ {
MENUITEM_STRINGLIST(main_menu,"Snake Menu",snake_menu_cb, MENUITEM_STRINGLIST(main_menu,"Snake",snake_menu_cb,
"Resume Game", "Resume Game",
"Start New Game", "Start New Game",
"Snake Speed", "Snake Speed",

View file

@ -1598,7 +1598,7 @@ static void game_init(void)
{ "Type B", -1 }, { "Type B", -1 },
}; };
MENUITEM_STRINGLIST(menu, "Snake2 Menu", NULL, MENUITEM_STRINGLIST(menu, "Snake 2", NULL,
"Start New Game", "Start New Game",
"Game Type", "Select Maze", "Speed", "Game Type", "Select Maze", "Speed",
"High Scores", "High Scores",

View file

@ -1607,7 +1607,7 @@ static int sokoban_menu(void)
bool menu_quit; bool menu_quit;
int start_selected = 0; int start_selected = 0;
MENUITEM_STRINGLIST(menu, "Sokoban Menu", NULL, MENUITEM_STRINGLIST(menu, "Sokoban", NULL,
"Resume", "Select Level", "Audio Playback", "Keys", "Resume", "Select Level", "Audio Playback", "Keys",
"Load Default Level Set", "Quit Without Saving", "Load Default Level Set", "Quit Without Saving",
"Save Progress & Quit"); "Save Progress & Quit");

View file

@ -1095,7 +1095,7 @@ static int solitaire_menu(bool in_game)
int selected = 0; int selected = 0;
int result = -1; int result = -1;
MENUITEM_STRINGLIST(menu, "Solitaire Menu", solitaire_menu_cb, MENUITEM_STRINGLIST(menu, "Solitaire", solitaire_menu_cb,
"Resume Game", "Start New Game", "Resume Game", "Start New Game",
"Draw Cards Option", "Draw Cards Option",
"Help", "Playback Control", "Help", "Playback Control",

View file

@ -185,7 +185,11 @@ enum plugin_status plugin_start(const void* parameter)
{ {
char *buf; char *buf;
int rc; int rc;
if(!parameter) return PLUGIN_ERROR; if(!parameter)
return PLUGIN_ERROR;
if (!rb->yesno_pop_confirm(ID2P(LANG_REALLY_OVERWRITE)))
return PLUGIN_OK;
filename = (char *)parameter; filename = (char *)parameter;

View file

@ -1946,7 +1946,7 @@ static int spacerocks_menu_cb(int action,
static int spacerocks_menu(void) static int spacerocks_menu(void)
{ {
int selection = 0; int selection = 0;
MENUITEM_STRINGLIST(main_menu, "Spacerocks Menu", spacerocks_menu_cb, MENUITEM_STRINGLIST(main_menu, "Spacerocks", spacerocks_menu_cb,
"Resume Game", "Start New Game", "Resume Game", "Start New Game",
"Help", "High Scores", "Help", "High Scores",
"Playback Control", "Quit"); "Playback Control", "Quit");

View file

@ -518,7 +518,7 @@ static bool confirm_restart(void)
static int config_menu(void) static int config_menu(void)
{ {
MENUITEM_STRINGLIST(menu, "Speedread Menu", NULL, MENUITEM_STRINGLIST(menu, "Speedread", NULL,
"Resume Reading", "Resume Reading",
"Restart from Beginning", "Restart from Beginning",
"Change Font", "Change Font",

View file

@ -1405,7 +1405,7 @@ static int star_menu(void)
int selection, level=1; int selection, level=1;
bool menu_quit = false; bool menu_quit = false;
MENUITEM_STRINGLIST(menu, "Star Menu", NULL, MENUITEM_STRINGLIST(menu, "Star", NULL,
"Start Game","Choose Level", "Start Game","Choose Level",
"Help", "Playback Control", "Quit"); "Help", "Playback Control", "Quit");

View file

@ -912,7 +912,7 @@ static int sudoku_menu(struct sudoku_state_t* state)
{ {
int result; int result;
MENUITEM_STRINGLIST(menu, "Sudoku Menu", NULL, MENUITEM_STRINGLIST(menu, "Sudoku", NULL,
"Audio Playback", "Audio Playback",
#ifdef HAVE_LCD_COLOR #ifdef HAVE_LCD_COLOR
"Number Display", "Number Display",
@ -982,7 +982,7 @@ static int sudoku_edit_menu(struct sudoku_state_t* state)
{ {
int result; int result;
MENUITEM_STRINGLIST(menu, "Edit Menu", NULL, MENUITEM_STRINGLIST(menu, "Edit", NULL,
"Save as", "Quit"); "Save as", "Quit");
result = rb->do_menu(&menu, NULL, NULL, false); result = rb->do_menu(&menu, NULL, NULL, false);

View file

@ -660,7 +660,7 @@ static int start_menu(void)
{ {
int selection = 0; int selection = 0;
MENUITEM_STRINGLIST(menu, "Super Domination Menu", NULL, MENUITEM_STRINGLIST(menu, "Super Domination", NULL,
"Play Super Domination", "Settings", "Play Super Domination", "Settings",
"Help", "Playback Control", "Quit"); "Help", "Playback Control", "Quit");
@ -747,7 +747,7 @@ static int save_game(void)
static int ingame_menu(void) static int ingame_menu(void)
{ {
MENUITEM_STRINGLIST(menu, "Super Domination Menu", NULL, MENUITEM_STRINGLIST(menu, "Super Domination", NULL,
"Return to game", "Save Game", "Return to game", "Save Game",
"Playback Control", "Quit"); "Playback Control", "Quit");

View file

@ -435,7 +435,7 @@ static bool test_speed(void)
/* this is the plugin entry point */ /* this is the plugin entry point */
enum plugin_status plugin_start(const void* parameter) enum plugin_status plugin_start(const void* parameter)
{ {
MENUITEM_STRINGLIST(menu, "Test Disk Menu", NULL, MENUITEM_STRINGLIST(menu, "Test Disk", NULL,
"Disk speed", "Write & verify"); "Disk speed", "Write & verify");
int selected=0; int selected=0;
bool quit = false; bool quit = false;

View file

@ -285,7 +285,7 @@ enum plugin_status plugin_start(const void *parameter)
MENU_QUIT, MENU_QUIT,
}; };
MENUITEM_STRINGLIST(menu, "Test Sampr Menu", NULL, MENUITEM_STRINGLIST(menu, "Test Sampr", NULL,
#ifndef HAVE_VOLUME_IN_LIST #ifndef HAVE_VOLUME_IN_LIST
"Set Volume", "Set Volume",
#endif /* HAVE_VOLUME_IN_LIST */ #endif /* HAVE_VOLUME_IN_LIST */

View file

@ -485,7 +485,7 @@ enum plugin_status plugin_start(const void* parameter)
case ACTION_STD_CANCEL: case ACTION_STD_CANCEL:
if (changed) if (changed)
{ {
MENUITEM_STRINGLIST(menu, "Do What?", NULL, MENUITEM_STRINGLIST(menu, "Text Editor", NULL,
"Return", "Return",
"Playback Control", "Save Changes", "Playback Control", "Save Changes",
"Save As...", "Save and Exit", "Save As...", "Save and Exit",

View file

@ -292,7 +292,7 @@ unsigned tv_display_menu(void)
{ {
unsigned result = TV_MENU_RESULT_EXIT_MENU; unsigned result = TV_MENU_RESULT_EXIT_MENU;
MENUITEM_STRINGLIST(menu, "Viewer Menu", NULL, MENUITEM_STRINGLIST(menu, "Text Viewer", NULL,
ID2P(LANG_RETURN), ID2P(LANG_RETURN),
"Viewer Options", "Viewer Options",
ID2P(LANG_PLAYBACK_CONTROL), ID2P(LANG_PLAYBACK_CONTROL),

View file

@ -281,6 +281,9 @@ enum plugin_status plugin_start(const void *parameter)
if (!parameter) if (!parameter)
return PLUGIN_ERROR; return PLUGIN_ERROR;
if (!rb->yesno_pop_confirm(ID2P(LANG_REALLY_OVERWRITE)))
return PLUGIN_OK;
audiobuf = rb->plugin_get_audio_buffer(&audiobuflen); audiobuf = rb->plugin_get_audio_buffer(&audiobuflen);
#ifdef HAVE_ADJUSTABLE_CPU_FREQ #ifdef HAVE_ADJUSTABLE_CPU_FREQ

View file

@ -28,6 +28,8 @@
/* this is the plugin entry point */ /* this is the plugin entry point */
enum plugin_status plugin_start(const void* parameter) enum plugin_status plugin_start(const void* parameter)
{ {
if (!parameter)
return PLUGIN_ERROR;
char** title_and_text = (char**)parameter; char** title_and_text = (char**)parameter;
view_text(title_and_text[0], title_and_text[1]); view_text(title_and_text[0], title_and_text[1]);

View file

@ -2540,7 +2540,7 @@ enum plugin_status plugin_start(const void* parameter)
{ STR(LANG_OUT_OF_CONTROL) } { STR(LANG_OUT_OF_CONTROL) }
}; };
MENUITEM_STRINGLIST(menu, "Wormlet Menu", NULL, MENUITEM_STRINGLIST(menu, "Wormlet", NULL,
ID2P(LANG_PLAY_WORMLET), ID2P(LANG_NUMBER_OF_WORMS), ID2P(LANG_PLAY_WORMLET), ID2P(LANG_NUMBER_OF_WORMS),
ID2P(LANG_NUMBER_OF_PLAYERS), ID2P(LANG_CONTROL_STYLE), ID2P(LANG_NUMBER_OF_PLAYERS), ID2P(LANG_CONTROL_STYLE),
ID2P(LANG_WORM_GROWTH_PER_FOOD), ID2P(LANG_WORM_SPEED), ID2P(LANG_WORM_GROWTH_PER_FOOD), ID2P(LANG_WORM_SPEED),

View file

@ -1165,7 +1165,7 @@ static int xobox_menu(bool ingame)
rb->button_clear_queue(); rb->button_clear_queue();
int selection = 0; int selection = 0;
MENUITEM_STRINGLIST(main_menu, "Xobox Menu", xobox_menu_cb, MENUITEM_STRINGLIST(main_menu, "Xobox", xobox_menu_cb,
"Resume Game", "Start New Game", "Resume Game", "Start New Game",
"Speed", "Difficulty", "Speed", "Difficulty",
"High Scores", "Playback Control", "High Scores", "Playback Control",

View file

@ -124,7 +124,7 @@ void sysmenu_exec(void)
Menu_QUIT Menu_QUIT
}; };
MENUITEM_STRINGLIST(sysmenu_mainItems, "xrick Menu", NULL, MENUITEM_STRINGLIST(sysmenu_mainItems, "xrick", NULL,
"Resume Game", "Resume Game",
"Restart Game", "Restart Game",
#ifdef ENABLE_CHEATS #ifdef ENABLE_CHEATS

View file

@ -351,7 +351,7 @@ void sys_menu(struct System* sys)
rb->lcd_update(); rb->lcd_update();
mainmenu_sysptr = sys; mainmenu_sysptr = sys;
MENUITEM_STRINGLIST(menu, "XWorld Menu", mainmenu_cb, MENUITEM_STRINGLIST(menu, "XWorld", mainmenu_cb,
"Resume Game", /* 0 */ "Resume Game", /* 0 */
"Start New Game", /* 1 */ "Start New Game", /* 1 */
"Video Settings", /* 2 */ "Video Settings", /* 2 */
@ -730,7 +730,7 @@ static void do_pause_menu(struct System* sys)
#endif #endif
int sel = 0; int sel = 0;
MENUITEM_STRINGLIST(menu, "XWorld Menu", NULL, MENUITEM_STRINGLIST(menu, "XWorld", NULL,
"Resume Game", /* 0 */ "Resume Game", /* 0 */
"Start New Game", /* 1 */ "Start New Game", /* 1 */
"Video Settings", /* 2 */ "Video Settings", /* 2 */

View file

@ -326,7 +326,7 @@ static bool zxbox_menu(void)
int menu_quit=0; int menu_quit=0;
int exit=0; int exit=0;
char c; char c;
MENUITEM_STRINGLIST(menu, "ZXBox Menu", NULL, MENUITEM_STRINGLIST(menu, "ZXBox", NULL,
"VKeyboard", "Play/Pause Tape", "VKeyboard", "Play/Pause Tape",
"Save quick snapshot", "Load quick snapshot", "Save quick snapshot", "Load quick snapshot",
"Save Snapshot", "Toggle \"fast\" mode", "Save Snapshot", "Toggle \"fast\" mode",

View file

@ -57,6 +57,9 @@ long start_time IBSS_ATTR = 0;
enum plugin_status plugin_start(const void* parameter) enum plugin_status plugin_start(const void* parameter)
{ {
if (!parameter)
return PLUGIN_ERROR;
#if LCD_DEPTH > 1 #if LCD_DEPTH > 1
rb->lcd_set_backdrop(NULL); rb->lcd_set_backdrop(NULL);
#endif #endif

View file

@ -748,6 +748,7 @@ Chu Khánh Hanh
Hoàng Manh Phú Hoàng Manh Phú
Gyúróczki Norbert Gyúróczki Norbert
Ivan Romaniuk-Mikhailovsky Ivan Romaniuk-Mikhailovsky
Matthieu BACHELIER
The libmad team The libmad team
The wavpack team The wavpack team