summaryrefslogtreecommitdiff
path: root/apps/menus
diff options
context:
space:
mode:
Diffstat (limited to 'apps/menus')
-rw-r--r--apps/menus/display_menu.c44
-rw-r--r--apps/menus/eq_menu.c57
-rw-r--r--apps/menus/main_menu.c49
-rw-r--r--apps/menus/playlist_menu.c18
-rw-r--r--apps/menus/recording_menu.c41
-rw-r--r--apps/menus/settings_menu.c35
6 files changed, 130 insertions, 114 deletions
diff --git a/apps/menus/display_menu.c b/apps/menus/display_menu.c
index 23915dcfef..3714950223 100644
--- a/apps/menus/display_menu.c
+++ b/apps/menus/display_menu.c
@@ -149,7 +149,6 @@ static int set_bg_color(void)
149 screens[SCREEN_MAIN].set_background(global_settings.bg_color); 149 screens[SCREEN_MAIN].set_background(global_settings.bg_color);
150 return res; 150 return res;
151} 151}
152
153static int reset_color(void) 152static int reset_color(void)
154{ 153{
155 global_settings.fg_color = LCD_DEFAULT_FG; 154 global_settings.fg_color = LCD_DEFAULT_FG;
@@ -159,14 +158,14 @@ static int reset_color(void)
159 screens[SCREEN_MAIN].set_background(global_settings.bg_color); 158 screens[SCREEN_MAIN].set_background(global_settings.bg_color);
160 return 0; 159 return 0;
161} 160}
162MENUITEM_FUNCTION(clear_main_bd, ID2P(LANG_CLEAR_BACKDROP), 161MENUITEM_FUNCTION(clear_main_bd, 0, ID2P(LANG_CLEAR_BACKDROP),
163 clear_main_backdrop, NULL, Icon_NOICON); 162 clear_main_backdrop, NULL, 0, NULL, Icon_NOICON);
164MENUITEM_FUNCTION(set_bg_col, ID2P(LANG_BACKGROUND_COLOR), 163MENUITEM_FUNCTION(set_bg_col, 0, ID2P(LANG_BACKGROUND_COLOR),
165 set_bg_color, NULL, Icon_NOICON); 164 set_bg_color, NULL, 0, NULL, Icon_NOICON);
166MENUITEM_FUNCTION(set_fg_col, ID2P(LANG_FOREGROUND_COLOR), 165MENUITEM_FUNCTION(set_fg_col, 0, ID2P(LANG_FOREGROUND_COLOR),
167 set_fg_color, NULL, Icon_NOICON); 166 set_fg_color, NULL, 0, NULL, Icon_NOICON);
168MENUITEM_FUNCTION(reset_colors, ID2P(LANG_RESET_COLORS), 167MENUITEM_FUNCTION(reset_colors, 0, ID2P(LANG_RESET_COLORS),
169 reset_color, NULL, Icon_NOICON); 168 reset_color, NULL, 0, NULL, Icon_NOICON);
170#endif 169#endif
171 170
172/* now the actual menu */ 171/* now the actual menu */
@@ -498,12 +497,12 @@ static int peak_meter_max(void) {
498 settings_apply_pm_range(); 497 settings_apply_pm_range();
499 return retval; 498 return retval;
500} 499}
501MENUITEM_FUNCTION(peak_meter_scale_item, ID2P(LANG_PM_SCALE), 500MENUITEM_FUNCTION(peak_meter_scale_item, 0, ID2P(LANG_PM_SCALE),
502 peak_meter_scale, NULL, Icon_NOICON); 501 peak_meter_scale, NULL, 0, NULL, Icon_NOICON);
503MENUITEM_FUNCTION(peak_meter_min_item, ID2P(LANG_PM_MIN), 502MENUITEM_FUNCTION(peak_meter_min_item, 0, ID2P(LANG_PM_MIN),
504 peak_meter_min, NULL, Icon_NOICON); 503 peak_meter_min, NULL, 0, NULL, Icon_NOICON);
505MENUITEM_FUNCTION(peak_meter_max_item, ID2P(LANG_PM_MAX), 504MENUITEM_FUNCTION(peak_meter_max_item, 0, ID2P(LANG_PM_MAX),
506 peak_meter_max, NULL, Icon_NOICON); 505 peak_meter_max, NULL, 0, NULL, Icon_NOICON);
507MAKE_MENU(peak_meter_menu, ID2P(LANG_PM_MENU), NULL, Icon_NOICON, 506MAKE_MENU(peak_meter_menu, ID2P(LANG_PM_MENU), NULL, Icon_NOICON,
508 &peak_meter_release, &peak_meter_hold, 507 &peak_meter_release, &peak_meter_hold,
509 &peak_meter_clip_hold, 508 &peak_meter_clip_hold,
@@ -534,14 +533,17 @@ static int browse_folder(void *param)
534} 533}
535 534
536#ifdef HAVE_LCD_BITMAP 535#ifdef HAVE_LCD_BITMAP
537MENUITEM_FUNCTION_WPARAM(browse_fonts, ID2P(LANG_CUSTOM_FONT), 536MENUITEM_FUNCTION(browse_fonts, MENU_FUNC_USEPARAM,
538 browse_folder, (void*)&fonts, NULL, Icon_NOICON); 537 ID2P(LANG_CUSTOM_FONT),
538 browse_folder, (void*)&fonts, 0, NULL, Icon_NOICON);
539#endif 539#endif
540MENUITEM_FUNCTION_WPARAM(browse_wps, ID2P(LANG_WHILE_PLAYING), 540MENUITEM_FUNCTION(browse_wps, MENU_FUNC_USEPARAM,
541 browse_folder, (void*)&wps, NULL, Icon_NOICON); 541 ID2P(LANG_WHILE_PLAYING),
542 browse_folder, (void*)&wps, 0, NULL, Icon_NOICON);
542#ifdef HAVE_REMOTE_LCD 543#ifdef HAVE_REMOTE_LCD
543MENUITEM_FUNCTION_WPARAM(browse_rwps, ID2P(LANG_REMOTE_WHILE_PLAYING), 544MENUITEM_FUNCTION(browse_rwps, MENU_FUNC_USEPARAM,
544 browse_folder, (void*)&rwps, NULL, Icon_NOICON); 545 ID2P(LANG_REMOTE_WHILE_PLAYING),
546 browse_folder, (void*)&rwps, 0, NULL, Icon_NOICON);
545#endif 547#endif
546 548
547MENUITEM_SETTING(show_icons, &global_settings.show_icons, NULL); 549MENUITEM_SETTING(show_icons, &global_settings.show_icons, NULL);
diff --git a/apps/menus/eq_menu.c b/apps/menus/eq_menu.c
index 0cf63bb20d..f2c1f9b22d 100644
--- a/apps/menus/eq_menu.c
+++ b/apps/menus/eq_menu.c
@@ -142,21 +142,21 @@ MENUITEM_SETTING(gain_2, &global_settings.eq_band2_gain, dsp_set_coefs_callback)
142MENUITEM_SETTING(gain_3, &global_settings.eq_band3_gain, dsp_set_coefs_callback); 142MENUITEM_SETTING(gain_3, &global_settings.eq_band3_gain, dsp_set_coefs_callback);
143MENUITEM_SETTING(gain_4, &global_settings.eq_band4_gain, dsp_set_coefs_callback); 143MENUITEM_SETTING(gain_4, &global_settings.eq_band4_gain, dsp_set_coefs_callback);
144 144
145MENUITEM_FUNCTION_WPARAM_DYNTEXT(gain_item_0, do_option, (void*)&gain_0, NULL, 145MENUITEM_FUNCTION_DYNTEXT(gain_item_0, MENU_FUNC_USEPARAM, do_option, (void*)&gain_0,
146 gainitem_get_name, 146 0, gainitem_get_name, &global_settings.eq_band0_cutoff,
147 &global_settings.eq_band0_cutoff, Icon_NOICON); 147 NULL, Icon_NOICON);
148MENUITEM_FUNCTION_WPARAM_DYNTEXT(gain_item_1, do_option, (void*)&gain_1, NULL, 148MENUITEM_FUNCTION_DYNTEXT(gain_item_1, MENU_FUNC_USEPARAM, do_option, (void*)&gain_1,
149 gainitem_get_name, 149 0, gainitem_get_name, &global_settings.eq_band1_cutoff,
150 &global_settings.eq_band1_cutoff, Icon_NOICON); 150 NULL, Icon_NOICON);
151MENUITEM_FUNCTION_WPARAM_DYNTEXT(gain_item_2, do_option, (void*)&gain_2, NULL, 151MENUITEM_FUNCTION_DYNTEXT(gain_item_2, MENU_FUNC_USEPARAM, do_option, (void*)&gain_2,
152 gainitem_get_name, 152 0, gainitem_get_name, &global_settings.eq_band2_cutoff,
153 &global_settings.eq_band2_cutoff, Icon_NOICON); 153 NULL, Icon_NOICON);
154MENUITEM_FUNCTION_WPARAM_DYNTEXT(gain_item_3, do_option, (void*)&gain_3, NULL, 154MENUITEM_FUNCTION_DYNTEXT(gain_item_3, MENU_FUNC_USEPARAM, do_option, (void*)&gain_3,
155 gainitem_get_name, 155 0, gainitem_get_name, &global_settings.eq_band3_cutoff,
156 &global_settings.eq_band3_cutoff, Icon_NOICON); 156 NULL, Icon_NOICON);
157MENUITEM_FUNCTION_WPARAM_DYNTEXT(gain_item_4, do_option, (void*)&gain_4, NULL, 157MENUITEM_FUNCTION_DYNTEXT(gain_item_4, MENU_FUNC_USEPARAM, do_option, (void*)&gain_4,
158 gainitem_get_name, 158 0, gainitem_get_name, &global_settings.eq_band4_cutoff,
159 &global_settings.eq_band4_cutoff, Icon_NOICON); 159 NULL, Icon_NOICON);
160 160
161MAKE_MENU(gain_menu, ID2P(LANG_EQUALIZER_GAIN), NULL, Icon_NOICON, &gain_item_0, 161MAKE_MENU(gain_menu, ID2P(LANG_EQUALIZER_GAIN), NULL, Icon_NOICON, &gain_item_0,
162 &gain_item_1, &gain_item_2, &gain_item_3, &gain_item_4); 162 &gain_item_1, &gain_item_2, &gain_item_3, &gain_item_4);
@@ -192,12 +192,15 @@ int do_center_band_menu(void* param)
192} 192}
193MAKE_MENU(band_0_menu, ID2P(LANG_EQUALIZER_BAND_LOW_SHELF), NULL, 193MAKE_MENU(band_0_menu, ID2P(LANG_EQUALIZER_BAND_LOW_SHELF), NULL,
194 Icon_EQ, &cutoff_0, &q_0, &gain_0); 194 Icon_EQ, &cutoff_0, &q_0, &gain_0);
195MENUITEM_FUNCTION_WPARAM_DYNTEXT(band_1_menu, do_center_band_menu, (void*)1, NULL, 195MENUITEM_FUNCTION_DYNTEXT(band_1_menu, MENU_FUNC_USEPARAM,
196 centerband_get_name, (void*)1, Icon_EQ); 196 do_center_band_menu, (void*)1, 0,
197MENUITEM_FUNCTION_WPARAM_DYNTEXT(band_2_menu, do_center_band_menu, (void*)2, NULL, 197 centerband_get_name, (void*)1, NULL, Icon_EQ);
198 centerband_get_name, (void*)2, Icon_EQ); 198MENUITEM_FUNCTION_DYNTEXT(band_2_menu, MENU_FUNC_USEPARAM,
199MENUITEM_FUNCTION_WPARAM_DYNTEXT(band_3_menu, do_center_band_menu, (void*)3, NULL, 199 do_center_band_menu, (void*)2, 0,
200 centerband_get_name, (void*)3, Icon_EQ); 200 centerband_get_name, (void*)2, NULL, Icon_EQ);
201MENUITEM_FUNCTION_DYNTEXT(band_3_menu, MENU_FUNC_USEPARAM,
202 do_center_band_menu, (void*)3, 0,
203 centerband_get_name, (void*)3, NULL, Icon_EQ);
201MAKE_MENU(band_4_menu, ID2P(LANG_EQUALIZER_BAND_HIGH_SHELF), NULL, 204MAKE_MENU(band_4_menu, ID2P(LANG_EQUALIZER_BAND_HIGH_SHELF), NULL,
202 Icon_EQ, &cutoff_4, &q_4, &gain_4); 205 Icon_EQ, &cutoff_4, &q_4, &gain_4);
203 206
@@ -625,13 +628,13 @@ bool eq_browse_presets(void)
625} 628}
626 629
627 630
628MENUITEM_FUNCTION(eq_graphical, ID2P(LANG_EQUALIZER_GRAPHICAL), 631MENUITEM_FUNCTION(eq_graphical, 0, ID2P(LANG_EQUALIZER_GRAPHICAL),
629 (int(*)(void))eq_menu_graphical, NULL, 632 (int(*)(void))eq_menu_graphical, NULL, 0, NULL,
630 Icon_EQ); 633 Icon_EQ);
631MENUITEM_FUNCTION(eq_save, ID2P(LANG_EQUALIZER_SAVE), 634MENUITEM_FUNCTION(eq_save, 0, ID2P(LANG_EQUALIZER_SAVE),
632 (int(*)(void))eq_save_preset, NULL, Icon_NOICON); 635 (int(*)(void))eq_save_preset, NULL, 0, NULL, Icon_NOICON);
633MENUITEM_FUNCTION(eq_browse, ID2P(LANG_EQUALIZER_BROWSE), 636MENUITEM_FUNCTION(eq_browse, 0, ID2P(LANG_EQUALIZER_BROWSE),
634 (int(*)(void))eq_browse_presets, NULL, Icon_NOICON); 637 (int(*)(void))eq_browse_presets, NULL, 0, NULL, Icon_NOICON);
635 638
636MAKE_MENU(equalizer_menu, ID2P(LANG_EQUALIZER), NULL, Icon_EQ, 639MAKE_MENU(equalizer_menu, ID2P(LANG_EQUALIZER), NULL, Icon_EQ,
637 &eq_enable, &eq_graphical, &eq_precut, &gain_menu, 640 &eq_enable, &eq_graphical, &eq_precut, &gain_menu,
diff --git a/apps/menus/main_menu.c b/apps/menus/main_menu.c
index bd7b35dea2..b91b2f5553 100644
--- a/apps/menus/main_menu.c
+++ b/apps/menus/main_menu.c
@@ -95,13 +95,14 @@ static int write_settings_file(void* param)
95 return settings_save_config((intptr_t)param); 95 return settings_save_config((intptr_t)param);
96} 96}
97 97
98MENUITEM_FUNCTION_WPARAM(browse_configs, ID2P(LANG_CUSTOM_CFG), 98MENUITEM_FUNCTION(browse_configs, MENU_FUNC_USEPARAM, ID2P(LANG_CUSTOM_CFG),
99 browse_folder, (void*)&config, NULL, Icon_NOICON); 99 browse_folder, (void*)&config, 0, NULL, Icon_NOICON);
100MENUITEM_FUNCTION_WPARAM(save_settings_item, ID2P(LANG_SAVE_SETTINGS), 100MENUITEM_FUNCTION(save_settings_item, MENU_FUNC_USEPARAM, ID2P(LANG_SAVE_SETTINGS),
101 write_settings_file, (void*)SETTINGS_SAVE_ALL, NULL, Icon_NOICON); 101 write_settings_file, (void*)SETTINGS_SAVE_ALL, 0, NULL, Icon_NOICON);
102MENUITEM_FUNCTION_WPARAM(save_theme_item, ID2P(LANG_SAVE_THEME), 102MENUITEM_FUNCTION(save_theme_item, MENU_FUNC_USEPARAM, ID2P(LANG_SAVE_THEME),
103 write_settings_file, (void*)SETTINGS_SAVE_THEME, NULL, Icon_NOICON); 103 write_settings_file, (void*)SETTINGS_SAVE_THEME, 0, NULL, Icon_NOICON);
104MENUITEM_FUNCTION(reset_settings_item,ID2P(LANG_RESET),reset_settings, NULL, Icon_NOICON); 104MENUITEM_FUNCTION(reset_settings_item, 0, ID2P(LANG_RESET),
105 reset_settings, NULL, 0, NULL, Icon_NOICON);
105 106
106MAKE_MENU(manage_settings, ID2P(LANG_MANAGE_MENU), NULL, Icon_Config, 107MAKE_MENU(manage_settings, ID2P(LANG_MANAGE_MENU), NULL, Icon_Config,
107 &browse_configs, &reset_settings_item, 108 &browse_configs, &reset_settings_item,
@@ -339,8 +340,8 @@ static bool show_info(void)
339 action_signalscreenchange(); 340 action_signalscreenchange();
340 return false; 341 return false;
341} 342}
342MENUITEM_FUNCTION(show_info_item, ID2P(LANG_INFO_MENU), 343MENUITEM_FUNCTION(show_info_item, 0, ID2P(LANG_INFO_MENU),
343 (menu_function)show_info, NULL, Icon_NOICON); 344 (menu_function)show_info, NULL, 0, NULL, Icon_NOICON);
344 345
345 346
346/* sleep Menu */ 347/* sleep Menu */
@@ -372,21 +373,23 @@ static int sleep_timer(void)
372 &sleep_timer_set, -5, 300, 0, sleep_timer_formatter); 373 &sleep_timer_set, -5, 300, 0, sleep_timer_formatter);
373} 374}
374 375
375MENUITEM_FUNCTION(sleep_timer_call, ID2P(LANG_SLEEP_TIMER), sleep_timer, 376MENUITEM_FUNCTION(sleep_timer_call, 0, ID2P(LANG_SLEEP_TIMER), sleep_timer,
376 NULL, Icon_Menu_setting); /* make it look like a 377 NULL, 0, NULL, Icon_Menu_setting); /* make it look like a
377 setting to the user */ 378 setting to the user */
378MENUITEM_FUNCTION(show_credits_item, ID2P(LANG_VERSION), 379MENUITEM_FUNCTION(show_credits_item, 0, ID2P(LANG_VERSION),
379 (menu_function)show_credits, NULL, Icon_NOICON); 380 (menu_function)show_credits, NULL, 0, NULL, Icon_NOICON);
380MENUITEM_FUNCTION(show_runtime_item, ID2P(LANG_RUNNING_TIME), 381MENUITEM_FUNCTION(show_runtime_item, 0, ID2P(LANG_RUNNING_TIME),
381 (menu_function)view_runtime, NULL, Icon_NOICON); 382 (menu_function)view_runtime, NULL, 0, NULL, Icon_NOICON);
382MENUITEM_FUNCTION(debug_menu_item, ID2P(LANG_DEBUG), 383MENUITEM_FUNCTION(debug_menu_item, 0, ID2P(LANG_DEBUG),
383 (menu_function)debug_menu, NULL, Icon_NOICON); 384 (menu_function)debug_menu, NULL, 0, NULL, Icon_NOICON);
384#ifdef SIMULATOR 385#ifdef SIMULATOR
385MENUITEM_FUNCTION(simulate_usb_item, ID2P(LANG_USB), 386MENUITEM_FUNCTION(simulate_usb_item, 0, ID2P(LANG_USB),
386 (menu_function)simulate_usb, NULL, Icon_NOICON); 387 (menu_function)simulate_usb, NULL, 0, NULL, Icon_NOICON);
387#ifdef ROCKBOX_HAS_LOGF 388#ifdef ROCKBOX_HAS_LOGF
388MENUITEM_FUNCTION(logfdisplay_item, "logf",(int (*)(void)) logfdisplay, NULL, Icon_NOICON); 389MENUITEM_FUNCTION(logfdisplay_item, 0, "logf",
389MENUITEM_FUNCTION(logfdump_item, "logfdump",(int (*)(void)) logfdump, NULL, Icon_NOICON); 390 (int (*)(void)) logfdisplay, NULL, 0, NULL, Icon_NOICON);
391MENUITEM_FUNCTION(logfdump_item, 0, "logfdump",
392 (int (*)(void)) logfdump, NULL, 0, NULL, Icon_NOICON);
390#endif 393#endif
391#endif 394#endif
392 395
@@ -406,8 +409,8 @@ MAKE_MENU(info_menu, ID2P(LANG_INFO), 0, Icon_Questionmark,
406/***********************************/ 409/***********************************/
407/* MAIN MENU */ 410/* MAIN MENU */
408 411
409MENUITEM_FUNCTION_WPARAM(browse_themes, ID2P(LANG_CUSTOM_THEME), 412MENUITEM_FUNCTION(browse_themes, MENU_FUNC_USEPARAM, ID2P(LANG_CUSTOM_THEME),
410 browse_folder, (void*)&theme, NULL, Icon_Folder); 413 browse_folder, (void*)&theme, 0, NULL, Icon_Folder);
411 414
412#ifdef HAVE_LCD_CHARCELLS 415#ifdef HAVE_LCD_CHARCELLS
413int mainmenu_callback(int action,const struct menu_item_ex *this_item) 416int mainmenu_callback(int action,const struct menu_item_ex *this_item)
diff --git a/apps/menus/playlist_menu.c b/apps/menus/playlist_menu.c
index d4b311154a..b73341c1d9 100644
--- a/apps/menus/playlist_menu.c
+++ b/apps/menus/playlist_menu.c
@@ -62,14 +62,16 @@ int save_playlist_screen(struct playlist_info* playlist)
62 62
63 return 0; 63 return 0;
64} 64}
65MENUITEM_FUNCTION(create_playlist_item, ID2P(LANG_CREATE_PLAYLIST), 65MENUITEM_FUNCTION(create_playlist_item, 0, ID2P(LANG_CREATE_PLAYLIST),
66 (int(*)(void))create_playlist, NULL, Icon_NOICON); 66 (int(*)(void))create_playlist, NULL, 0, NULL, Icon_NOICON);
67MENUITEM_FUNCTION(view_playlist, ID2P(LANG_VIEW_DYNAMIC_PLAYLIST), 67MENUITEM_FUNCTION(view_playlist, 0, ID2P(LANG_VIEW_DYNAMIC_PLAYLIST),
68 (int(*)(void))playlist_viewer, NULL, Icon_NOICON); 68 (int(*)(void))playlist_viewer, NULL, 0, NULL, Icon_NOICON);
69MENUITEM_FUNCTION_WPARAM(save_playlist, ID2P(LANG_SAVE_DYNAMIC_PLAYLIST), 69MENUITEM_FUNCTION(save_playlist, MENU_FUNC_USEPARAM, ID2P(LANG_SAVE_DYNAMIC_PLAYLIST),
70 (int(*)(void*))save_playlist_screen, NULL, NULL, Icon_NOICON); 70 (int(*)(void*))save_playlist_screen,
71MENUITEM_FUNCTION(catalog, ID2P(LANG_CATALOG), 71 NULL, 0, NULL, Icon_NOICON);
72 (int(*)(void))catalog_view_playlists, NULL, Icon_NOICON); 72MENUITEM_FUNCTION(catalog, 0, ID2P(LANG_CATALOG),
73 (int(*)(void))catalog_view_playlists,
74 NULL, 0, NULL, Icon_NOICON);
73MENUITEM_SETTING(recursive_dir_insert, &global_settings.recursive_dir_insert, NULL); 75MENUITEM_SETTING(recursive_dir_insert, &global_settings.recursive_dir_insert, NULL);
74MENUITEM_SETTING(warn_on_erase, &global_settings.warnon_erase_dynplaylist, NULL); 76MENUITEM_SETTING(warn_on_erase, &global_settings.warnon_erase_dynplaylist, NULL);
75 77
diff --git a/apps/menus/recording_menu.c b/apps/menus/recording_menu.c
index 76763b101d..43bd8a781f 100644
--- a/apps/menus/recording_menu.c
+++ b/apps/menus/recording_menu.c
@@ -90,8 +90,8 @@ static int recsource_func(void)
90 &global_settings.rec_source, INT, names, 90 &global_settings.rec_source, INT, names,
91 n_opts, NULL ); 91 n_opts, NULL );
92} 92}
93MENUITEM_FUNCTION(recsource, ID2P(LANG_RECORDING_SOURCE), 93MENUITEM_FUNCTION(recsource, 0, ID2P(LANG_RECORDING_SOURCE),
94 recsource_func, recmenu_callback, Icon_Menu_setting); 94 recsource_func, NULL, 0, recmenu_callback, Icon_Menu_setting);
95 95
96#if CONFIG_CODEC == SWCODEC 96#if CONFIG_CODEC == SWCODEC
97/* Makes an options list from a source list of options and indexes */ 97/* Makes an options list from a source list of options and indexes */
@@ -205,8 +205,8 @@ static int recfrequency_func(void)
205 return ret; 205 return ret;
206#endif /* CONFIG_CODEC == SWCODEC */ 206#endif /* CONFIG_CODEC == SWCODEC */
207} /* recfrequency */ 207} /* recfrequency */
208MENUITEM_FUNCTION(recfrequency, ID2P(LANG_RECORDING_FREQUENCY), 208MENUITEM_FUNCTION(recfrequency, 0, ID2P(LANG_RECORDING_FREQUENCY),
209 recfrequency_func, NULL, Icon_Menu_setting); 209 recfrequency_func, NULL, 0, NULL, Icon_Menu_setting);
210 210
211 211
212static int recchannels_func(void) 212static int recchannels_func(void)
@@ -253,8 +253,8 @@ static int recchannels_func(void)
253 return ret; 253 return ret;
254#endif /* CONFIG_CODEC == SWCODEC */ 254#endif /* CONFIG_CODEC == SWCODEC */
255} 255}
256MENUITEM_FUNCTION(recchannels, ID2P(LANG_RECORDING_CHANNELS), 256MENUITEM_FUNCTION(recchannels, 0, ID2P(LANG_RECORDING_CHANNELS),
257 recchannels_func, NULL, Icon_Menu_setting); 257 recchannels_func, NULL, 0, NULL, Icon_Menu_setting);
258 258
259#if CONFIG_CODEC == SWCODEC 259#if CONFIG_CODEC == SWCODEC
260 260
@@ -279,11 +279,12 @@ static int recformat_func(void)
279 279
280 return res; 280 return res;
281} /* recformat */ 281} /* recformat */
282MENUITEM_FUNCTION(recformat, ID2P(LANG_RECORDING_FORMAT), 282MENUITEM_FUNCTION(recformat, 0, ID2P(LANG_RECORDING_FORMAT),
283 recformat_func, NULL, Icon_Menu_setting); 283 recformat_func, NULL, 0, NULL, Icon_Menu_setting);
284 284
285MENUITEM_FUNCTION(enc_global_config_menu_item, ID2P(LANG_ENCODER_SETTINGS), 285MENUITEM_FUNCTION(enc_global_config_menu_item, 0, ID2P(LANG_ENCODER_SETTINGS),
286 (int(*)(void))enc_global_config_menu, NULL, Icon_Submenu); 286 (int(*)(void))enc_global_config_menu,
287 NULL, 0, NULL, Icon_Submenu);
287 288
288#endif /* CONFIG_CODEC == SWCODEC */ 289#endif /* CONFIG_CODEC == SWCODEC */
289 290
@@ -323,8 +324,8 @@ static int recdirectory_func(void)
323 &global_settings.rec_directory, INT, 324 &global_settings.rec_directory, INT,
324 names, 2, NULL ); 325 names, 2, NULL );
325} 326}
326MENUITEM_FUNCTION(recdirectory, ID2P(LANG_RECORD_DIRECTORY), 327MENUITEM_FUNCTION(recdirectory, 0, ID2P(LANG_RECORD_DIRECTORY),
327 recdirectory_func, NULL, Icon_Menu_setting); 328 recdirectory_func, NULL, 0, NULL, Icon_Menu_setting);
328 329
329MENUITEM_SETTING(cliplight, &global_settings.cliplight, NULL); 330MENUITEM_SETTING(cliplight, &global_settings.cliplight, NULL);
330 331
@@ -362,10 +363,10 @@ static int agc_cliptime_func(void)
362 &global_settings.rec_agc_cliptime, 363 &global_settings.rec_agc_cliptime,
363 INT, names, 5, NULL ); 364 INT, names, 5, NULL );
364} 365}
365MENUITEM_FUNCTION(agc_preset, ID2P(LANG_RECORD_AGC_PRESET), 366MENUITEM_FUNCTION(agc_preset, 0, ID2P(LANG_RECORD_AGC_PRESET),
366 agc_preset_func, NULL, Icon_Menu_setting); 367 agc_preset_func, NULL, 0, NULL, Icon_Menu_setting);
367MENUITEM_FUNCTION(agc_cliptime, ID2P(LANG_RECORD_AGC_CLIPTIME), 368MENUITEM_FUNCTION(agc_cliptime, 0, ID2P(LANG_RECORD_AGC_CLIPTIME),
368 agc_cliptime_func, NULL, Icon_Menu_setting); 369 agc_cliptime_func, NULL, 0, NULL, Icon_Menu_setting);
369#endif /* HAVE_AGC */ 370#endif /* HAVE_AGC */
370 371
371/** Rec trigger **/ 372/** Rec trigger **/
@@ -796,8 +797,8 @@ bool rectrigger(void)
796 return retval; 797 return retval;
797} 798}
798 799
799MENUITEM_FUNCTION(rectrigger_item, ID2P(LANG_RECORD_TRIGGER), 800MENUITEM_FUNCTION(rectrigger_item, 0, ID2P(LANG_RECORD_TRIGGER),
800 (int(*)(void))rectrigger, NULL, Icon_Menu_setting); 801 (int(*)(void))rectrigger, NULL, 0, NULL, Icon_Menu_setting);
801 802
802 803
803 804
@@ -836,5 +837,5 @@ bool recording_menu(bool no_source)
836 return do_menu(&recording_setting_menu, NULL) == MENU_ATTACHED_USB; 837 return do_menu(&recording_setting_menu, NULL) == MENU_ATTACHED_USB;
837}; 838};
838 839
839MENUITEM_FUNCTION_WPARAM(recording_settings, ID2P(LANG_RECORDING_SETTINGS), 840MENUITEM_FUNCTION(recording_settings, MENU_FUNC_USEPARAM, ID2P(LANG_RECORDING_SETTINGS),
840 (int (*)(void*))recording_menu,0, NULL, Icon_NOICON); 841 (int (*)(void*))recording_menu, 0, 0, NULL, Icon_NOICON);
diff --git a/apps/menus/settings_menu.c b/apps/menus/settings_menu.c
index d150aac148..ace17a2055 100644
--- a/apps/menus/settings_menu.c
+++ b/apps/menus/settings_menu.c
@@ -62,15 +62,19 @@ static void tagcache_update_with_splash(void)
62MENUITEM_SETTING(tagcache_ram, &global_settings.tagcache_ram, NULL); 62MENUITEM_SETTING(tagcache_ram, &global_settings.tagcache_ram, NULL);
63#endif 63#endif
64MENUITEM_SETTING(tagcache_autoupdate, &global_settings.tagcache_autoupdate, NULL); 64MENUITEM_SETTING(tagcache_autoupdate, &global_settings.tagcache_autoupdate, NULL);
65MENUITEM_FUNCTION(tc_init, ID2P(LANG_TAGCACHE_FORCE_UPDATE), 65MENUITEM_FUNCTION(tc_init, 0, ID2P(LANG_TAGCACHE_FORCE_UPDATE),
66 (int(*)(void))tagcache_rebuild_with_splash, NULL, Icon_NOICON); 66 (int(*)(void))tagcache_rebuild_with_splash,
67MENUITEM_FUNCTION(tc_update, ID2P(LANG_TAGCACHE_UPDATE), 67 NULL, 0, NULL, Icon_NOICON);
68 (int(*)(void))tagcache_update_with_splash, NULL, Icon_NOICON); 68MENUITEM_FUNCTION(tc_update, 0, ID2P(LANG_TAGCACHE_UPDATE),
69 (int(*)(void))tagcache_update_with_splash,
70 NULL, 0, NULL, Icon_NOICON);
69MENUITEM_SETTING(runtimedb, &global_settings.runtimedb, NULL); 71MENUITEM_SETTING(runtimedb, &global_settings.runtimedb, NULL);
70MENUITEM_FUNCTION(tc_export, ID2P(LANG_TAGCACHE_EXPORT), 72MENUITEM_FUNCTION(tc_export, 0, ID2P(LANG_TAGCACHE_EXPORT),
71 (int(*)(void))tagtree_export, NULL, Icon_NOICON); 73 (int(*)(void))tagtree_export, NULL, 0,
72MENUITEM_FUNCTION(tc_import, ID2P(LANG_TAGCACHE_IMPORT), 74 NULL, Icon_NOICON);
73 (int(*)(void))tagtree_import, NULL, Icon_NOICON); 75MENUITEM_FUNCTION(tc_import, 0, ID2P(LANG_TAGCACHE_IMPORT),
76 (int(*)(void))tagtree_import, NULL, 0,
77 NULL, Icon_NOICON);
74MAKE_MENU(tagcache_menu, ID2P(LANG_TAGCACHE), 0, Icon_NOICON, 78MAKE_MENU(tagcache_menu, ID2P(LANG_TAGCACHE), 0, Icon_NOICON,
75#ifdef HAVE_TC_RAMCACHE 79#ifdef HAVE_TC_RAMCACHE
76 &tagcache_ram, 80 &tagcache_ram,
@@ -216,7 +220,8 @@ static int timedate_set(void)
216 return result; 220 return result;
217} 221}
218 222
219MENUITEM_FUNCTION(time_set, ID2P(LANG_TIME), timedate_set, NULL, Icon_NOICON); 223MENUITEM_FUNCTION(time_set, 0, ID2P(LANG_TIME),
224 timedate_set, NULL, 0, NULL, Icon_NOICON);
220MENUITEM_SETTING(timeformat, &global_settings.timeformat, NULL); 225MENUITEM_SETTING(timeformat, &global_settings.timeformat, NULL);
221MAKE_MENU(time_menu, ID2P(LANG_TIME_MENU), 0, Icon_NOICON, &time_set, &timeformat); 226MAKE_MENU(time_menu, ID2P(LANG_TIME_MENU), 0, Icon_NOICON, &time_set, &timeformat);
222#endif 227#endif
@@ -225,8 +230,8 @@ MAKE_MENU(time_menu, ID2P(LANG_TIME_MENU), 0, Icon_NOICON, &time_set, &timeforma
225MENUITEM_SETTING(poweroff, &global_settings.poweroff, NULL); 230MENUITEM_SETTING(poweroff, &global_settings.poweroff, NULL);
226 231
227#ifdef HAVE_RTC_ALARM 232#ifdef HAVE_RTC_ALARM
228MENUITEM_FUNCTION(alarm_screen_call, ID2P(LANG_ALARM_MOD_ALARM_MENU), 233MENUITEM_FUNCTION(alarm_screen_call, 0, ID2P(LANG_ALARM_MOD_ALARM_MENU),
229 (menu_function)alarm_screen, NULL, Icon_NOICON); 234 (menu_function)alarm_screen, NULL, 0, NULL, Icon_NOICON);
230#if CONFIG_TUNER || defined(HAVE_RECORDING) 235#if CONFIG_TUNER || defined(HAVE_RECORDING)
231 236
232#if CONFIG_TUNER && !defined(HAVE_RECORDING) 237#if CONFIG_TUNER && !defined(HAVE_RECORDING)
@@ -275,8 +280,8 @@ static int alarm_setting(void)
275 INT, items, i, NULL); 280 INT, items, i, NULL);
276} 281}
277 282
278MENUITEM_FUNCTION(alarm_wake_up_screen, ID2P(LANG_ALARM_WAKEUP_SCREEN), 283MENUITEM_FUNCTION(alarm_wake_up_screen, 0, ID2P(LANG_ALARM_WAKEUP_SCREEN),
279 alarm_setting, alarm_callback, Icon_Menu_setting); 284 alarm_setting, NULL, 0, alarm_callback, Icon_Menu_setting);
280#endif /* CONFIG_TUNER || defined(HAVE_RECORDING) */ 285#endif /* CONFIG_TUNER || defined(HAVE_RECORDING) */
281#endif /* HAVE_RTC_ALARM */ 286#endif /* HAVE_RTC_ALARM */
282 287
@@ -409,8 +414,8 @@ static int language_browse(void)
409{ 414{
410 return (int)rockbox_browse(LANG_DIR, SHOW_LNG); 415 return (int)rockbox_browse(LANG_DIR, SHOW_LNG);
411} 416}
412MENUITEM_FUNCTION(browse_langs, ID2P(LANG_LANGUAGE), language_browse, 417MENUITEM_FUNCTION(browse_langs, 0, ID2P(LANG_LANGUAGE), language_browse,
413 NULL, Icon_Language); 418 NULL, 0, NULL, Icon_Language);
414 419
415MAKE_MENU(settings_menu_item, ID2P(LANG_GENERAL_SETTINGS), 0, 420MAKE_MENU(settings_menu_item, ID2P(LANG_GENERAL_SETTINGS), 0,
416 Icon_General_settings_menu, 421 Icon_General_settings_menu,