summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJonathan Gordon <rockbox@jdgordon.info>2008-04-23 10:28:34 +0000
committerJonathan Gordon <rockbox@jdgordon.info>2008-04-23 10:28:34 +0000
commit33b785e40bc2e302cd670a5896429e59cf201be3 (patch)
treebb048ae91a0d30b342fb0ac4bfdda63852df38eb
parent45f6469ad1e44d56b5bd14a5eb9cc605bfd92eb0 (diff)
downloadrockbox-33b785e40bc2e302cd670a5896429e59cf201be3.tar.gz
rockbox-33b785e40bc2e302cd670a5896429e59cf201be3.zip
allow the plugin playback control menu to be put in a viewport.
fix text editor so it is actually possible to get to the control menu if the file hasnt been changed (its in the regular menu now) git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17221 a1c6a512-1295-4272-9138-f99709370657
-rw-r--r--apps/plugins/jewels.c2
-rw-r--r--apps/plugins/jpeg.c2
-rw-r--r--apps/plugins/lib/playback_control.c5
-rw-r--r--apps/plugins/lib/playback_control.h3
-rw-r--r--apps/plugins/mazezam.c2
-rw-r--r--apps/plugins/sokoban.c2
-rw-r--r--apps/plugins/solitaire.c2
-rw-r--r--apps/plugins/sudoku/sudoku.c2
-rw-r--r--apps/plugins/text_editor.c9
-rw-r--r--apps/plugins/viewer.c2
10 files changed, 19 insertions, 12 deletions
diff --git a/apps/plugins/jewels.c b/apps/plugins/jewels.c
index eb8e70072e..7d81476390 100644
--- a/apps/plugins/jewels.c
+++ b/apps/plugins/jewels.c
@@ -1698,7 +1698,7 @@ static int jewels_main(struct game_context* bj) {
1698 continue; 1698 continue;
1699 1699
1700 case MRES_PLAYBACK: 1700 case MRES_PLAYBACK:
1701 playback_control(rb); 1701 playback_control(rb, NULL);
1702 rb->lcd_setfont(FONT_SYSFIXED); 1702 rb->lcd_setfont(FONT_SYSFIXED);
1703 inmenu = false; 1703 inmenu = false;
1704 selected = false; 1704 selected = false;
diff --git a/apps/plugins/jpeg.c b/apps/plugins/jpeg.c
index 710772f270..596d4d73e7 100644
--- a/apps/plugins/jpeg.c
+++ b/apps/plugins/jpeg.c
@@ -2580,7 +2580,7 @@ int show_menu(void) /* return 1 to quit */
2580 2580
2581#if PLUGIN_BUFFER_SIZE >= MIN_MEM 2581#if PLUGIN_BUFFER_SIZE >= MIN_MEM
2582 case MIID_SHOW_PLAYBACK_MENU: 2582 case MIID_SHOW_PLAYBACK_MENU:
2583 playback_control(rb); 2583 playback_control(rb, NULL);
2584 break; 2584 break;
2585#endif 2585#endif
2586#ifdef HAVE_LCD_COLOR 2586#ifdef HAVE_LCD_COLOR
diff --git a/apps/plugins/lib/playback_control.c b/apps/plugins/lib/playback_control.c
index 2bed02e7b0..cba4f5a0ee 100644
--- a/apps/plugins/lib/playback_control.c
+++ b/apps/plugins/lib/playback_control.c
@@ -108,8 +108,9 @@ void playback_control_init(struct plugin_api* newapi)
108 api = newapi; 108 api = newapi;
109} 109}
110 110
111bool playback_control(struct plugin_api* newapi) 111bool playback_control(struct plugin_api* newapi,
112 struct viewport parent[NB_SCREENS])
112{ 113{
113 api = newapi; 114 api = newapi;
114 return api->do_menu(&playback_control_menu, NULL, NULL, false) == MENU_ATTACHED_USB; 115 return api->do_menu(&playback_control_menu, NULL, parent, false) == MENU_ATTACHED_USB;
115} 116}
diff --git a/apps/plugins/lib/playback_control.h b/apps/plugins/lib/playback_control.h
index 83f07644a9..6029152dcf 100644
--- a/apps/plugins/lib/playback_control.h
+++ b/apps/plugins/lib/playback_control.h
@@ -25,6 +25,7 @@ extern const struct menu_item_ex playback_control_menu;
25void playback_control_init(struct plugin_api* newapi); 25void playback_control_init(struct plugin_api* newapi);
26 26
27/* Use this if your menu still uses the old menu api */ 27/* Use this if your menu still uses the old menu api */
28bool playback_control(struct plugin_api* api); 28bool playback_control(struct plugin_api* api,
29 struct viewport parent[NB_SCREENS]);
29 30
30#endif /* __PLAYBACK_CONTROL_H__ */ 31#endif /* __PLAYBACK_CONTROL_H__ */
diff --git a/apps/plugins/mazezam.c b/apps/plugins/mazezam.c
index f898fc6031..2ee6e20059 100644
--- a/apps/plugins/mazezam.c
+++ b/apps/plugins/mazezam.c
@@ -641,7 +641,7 @@ static void in_game_menu(void)
641 break; 641 break;
642 642
643 case 2: /* Audio playback */ 643 case 2: /* Audio playback */
644 playback_control(rb); 644 playback_control(rb, NULL);
645 state = STATE_IN_LEVEL; 645 state = STATE_IN_LEVEL;
646 break; 646 break;
647 647
diff --git a/apps/plugins/sokoban.c b/apps/plugins/sokoban.c
index 8b1fe508ce..c8a6ba7c92 100644
--- a/apps/plugins/sokoban.c
+++ b/apps/plugins/sokoban.c
@@ -1193,7 +1193,7 @@ static int sokoban_menu(void)
1193 break; 1193 break;
1194 1194
1195 case 2: /* Audio playback control */ 1195 case 2: /* Audio playback control */
1196 playback_control(rb); 1196 playback_control(rb, NULL);
1197 menu_quit = false; 1197 menu_quit = false;
1198 break; 1198 break;
1199 1199
diff --git a/apps/plugins/solitaire.c b/apps/plugins/solitaire.c
index 6cb995ffba..40f9a241ea 100644
--- a/apps/plugins/solitaire.c
+++ b/apps/plugins/solitaire.c
@@ -747,7 +747,7 @@ int solitaire_menu(bool in_game)
747 break; 747 break;
748 748
749 case 4: 749 case 4:
750 playback_control(rb); 750 playback_control(rb, NULL);
751 break; 751 break;
752 752
753 case 5: 753 case 5:
diff --git a/apps/plugins/sudoku/sudoku.c b/apps/plugins/sudoku/sudoku.c
index 553357fc5c..d76b68ef27 100644
--- a/apps/plugins/sudoku/sudoku.c
+++ b/apps/plugins/sudoku/sudoku.c
@@ -1078,7 +1078,7 @@ bool sudoku_menu(struct sudoku_state_t* state)
1078 1078
1079 switch (result) { 1079 switch (result) {
1080 case SM_AUDIO_PLAYBACK: 1080 case SM_AUDIO_PLAYBACK:
1081 playback_control(rb); 1081 playback_control(rb, NULL);
1082 break; 1082 break;
1083 1083
1084#ifdef HAVE_LCD_COLOR 1084#ifdef HAVE_LCD_COLOR
diff --git a/apps/plugins/text_editor.c b/apps/plugins/text_editor.c
index 5397260c0d..617155fb2b 100644
--- a/apps/plugins/text_editor.c
+++ b/apps/plugins/text_editor.c
@@ -221,7 +221,8 @@ int do_item_menu(int cur_sel, char* copy_buffer)
221 MENUITEM_STRINGLIST(menu, "Line Options", NULL, 221 MENUITEM_STRINGLIST(menu, "Line Options", NULL,
222 "Cut/Delete", "Copy", 222 "Cut/Delete", "Copy",
223 "Insert Above", "Insert Below", 223 "Insert Above", "Insert Below",
224 "Concat To Above", "Save"); 224 "Concat To Above", "Save",
225 "Show Playback Menu",);
225 226
226 switch (rb->do_menu(&menu, NULL, NULL, false)) 227 switch (rb->do_menu(&menu, NULL, NULL, false))
227 { 228 {
@@ -260,6 +261,10 @@ int do_item_menu(int cur_sel, char* copy_buffer)
260 case 5: /* save */ 261 case 5: /* save */
261 ret = MENU_RET_SAVE; 262 ret = MENU_RET_SAVE;
262 break; 263 break;
264 case 6: /* playback menu */
265 playback_control(rb, NULL);
266 ret = MENU_RET_UPDATE;
267 break;
263 default: 268 default:
264 ret = MENU_RET_NO_UPDATE; 269 ret = MENU_RET_NO_UPDATE;
265 break; 270 break;
@@ -474,7 +479,7 @@ enum plugin_status plugin_start(struct plugin_api* api, void* parameter)
474 case 0: 479 case 0:
475 break; 480 break;
476 case 1: 481 case 1:
477 playback_control(rb); 482 playback_control(rb, NULL);
478 break; 483 break;
479 case 2: //save to disk 484 case 2: //save to disk
480 save_changes(1); 485 save_changes(1);
diff --git a/apps/plugins/viewer.c b/apps/plugins/viewer.c
index a4619269e5..a2afbc0641 100644
--- a/apps/plugins/viewer.c
+++ b/apps/plugins/viewer.c
@@ -1426,7 +1426,7 @@ static void viewer_menu(void)
1426 done = viewer_options_menu(); 1426 done = viewer_options_menu();
1427 break; 1427 break;
1428 case 2: /* playback control */ 1428 case 2: /* playback control */
1429 playback_control(rb); 1429 playback_control(rb, NULL);
1430 break; 1430 break;
1431 case 3: /* return */ 1431 case 3: /* return */
1432 break; 1432 break;