summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJens Arnold <amiconn@rockbox.org>2007-11-25 20:05:04 +0000
committerJens Arnold <amiconn@rockbox.org>2007-11-25 20:05:04 +0000
commite54244480dd003a8fd0cc315089ff69da62ed230 (patch)
treefbd26b26e5e3fdc6dbb3bdbdcad70d32b5002411
parentd63f2375a20e37c12a93737b34d723fb8cac3c26 (diff)
downloadrockbox-e54244480dd003a8fd0cc315089ff69da62ed230.tar.gz
rockbox-e54244480dd003a8fd0cc315089ff69da62ed230.zip
Convert 2 more settings to table settings. * Fix duplicate value display if the first value is selected in a table setting.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15805 a1c6a512-1295-4272-9138-f99709370657
-rw-r--r--apps/gui/gwps-common.c9
-rw-r--r--apps/gui/option_select.c4
-rw-r--r--apps/settings.h14
-rw-r--r--apps/settings_list.c32
-rw-r--r--firmware/powermgmt.c7
5 files changed, 13 insertions, 53 deletions
diff --git a/apps/gui/gwps-common.c b/apps/gui/gwps-common.c
index ee0bc3bdb4..5f421de2d8 100644
--- a/apps/gui/gwps-common.c
+++ b/apps/gui/gwps-common.c
@@ -145,13 +145,6 @@ bool update_onvol_change(struct gui_wps * gwps)
145 145
146bool ffwd_rew(int button) 146bool ffwd_rew(int button)
147{ 147{
148 static const uint16_t ff_rew_steps[] = {
149 1000, 2000, 3000, 4000,
150 5000, 6000, 8000, 10000,
151 15000, 20000, 25000, 30000,
152 45000, 60000
153 };
154
155 unsigned int step = 0; /* current ff/rewind step */ 148 unsigned int step = 0; /* current ff/rewind step */
156 unsigned int max_step = 0; /* maximum ff/rewind step */ 149 unsigned int max_step = 0; /* maximum ff/rewind step */
157 int ff_rewind_count = 0; /* current ff/rewind count (in ticks) */ 150 int ff_rewind_count = 0; /* current ff/rewind count (in ticks) */
@@ -227,7 +220,7 @@ bool ffwd_rew(int button)
227 220
228 wps_state.ff_rewind = true; 221 wps_state.ff_rewind = true;
229 222
230 step = ff_rew_steps[global_settings.ff_rewind_min_step]; 223 step = 1000 * global_settings.ff_rewind_min_step;
231 224
232 accel_tick = current_tick + 225 accel_tick = current_tick +
233 global_settings.ff_rewind_accel*HZ; 226 global_settings.ff_rewind_accel*HZ;
diff --git a/apps/gui/option_select.c b/apps/gui/option_select.c
index a72cdb5a60..2feece3b94 100644
--- a/apps/gui/option_select.c
+++ b/apps/gui/option_select.c
@@ -398,9 +398,9 @@ bool option_screen(struct settings_list *setting,
398 const struct table_setting *info = setting->table_setting; 398 const struct table_setting *info = setting->table_setting;
399 int i; 399 int i;
400 nb_items = info->count; 400 nb_items = info->count;
401 selected = 0; 401 selected = -1;
402 table_setting_array_position = -1; 402 table_setting_array_position = -1;
403 for (i=0;selected==0 && i<nb_items;i++) 403 for (i=0;selected==-1 && i<nb_items;i++)
404 { 404 {
405 if (setting->flags&F_ALLOW_ARBITRARY_VALS && 405 if (setting->flags&F_ALLOW_ARBITRARY_VALS &&
406 (oldvalue < info->values[i])) 406 (oldvalue < info->values[i]))
diff --git a/apps/settings.h b/apps/settings.h
index 369c7fdb4b..ec5b9c9543 100644
--- a/apps/settings.h
+++ b/apps/settings.h
@@ -88,20 +88,6 @@ struct opt_items {
88#define BOOKMARK_UNIQUE_ONLY 2 88#define BOOKMARK_UNIQUE_ONLY 2
89#define BOOKMARK_RECENT_ONLY_YES 3 89#define BOOKMARK_RECENT_ONLY_YES 3
90#define BOOKMARK_RECENT_ONLY_ASK 4 90#define BOOKMARK_RECENT_ONLY_ASK 4
91#define FF_REWIND_1000 0
92#define FF_REWIND_2000 1
93#define FF_REWIND_3000 2
94#define FF_REWIND_4000 3
95#define FF_REWIND_5000 4
96#define FF_REWIND_6000 5
97#define FF_REWIND_8000 6
98#define FF_REWIND_10000 7
99#define FF_REWIND_15000 8
100#define FF_REWIND_20000 9
101#define FF_REWIND_25000 10
102#define FF_REWIND_30000 11
103#define FF_REWIND_45000 12
104#define FF_REWIND_60000 13
105 91
106#define TRIG_MODE_OFF 0 92#define TRIG_MODE_OFF 0
107#define TRIG_MODE_NOREARM 1 93#define TRIG_MODE_NOREARM 1
diff --git a/apps/settings_list.c b/apps/settings_list.c
index ab6af2dfad..2f68077901 100644
--- a/apps/settings_list.c
+++ b/apps/settings_list.c
@@ -231,18 +231,6 @@ static int32_t backlight_getlang(int value)
231 return TALK_ID(value, UNIT_SEC); 231 return TALK_ID(value, UNIT_SEC);
232} 232}
233#endif 233#endif
234/* ffwd/rewind and scan acceleration stuff */
235static const unsigned char ff_rewind_min_stepvals[] = {1,2,3,4,5,6,8,10,15,20,25,30,45,60};
236static int32_t ff_rewind_min_step_getlang(int value)
237{
238 return TALK_ID(ff_rewind_min_stepvals[value], UNIT_SEC);
239}
240static void ff_rewind_min_step_formatter(char *buffer, size_t buffer_size,
241 int val, const char *unit)
242{
243 (void)unit;
244 snprintf(buffer, buffer_size, "%ds", ff_rewind_min_stepvals[val]);
245}
246static int32_t scanaccel_getlang(int value) 234static int32_t scanaccel_getlang(int value)
247{ 235{
248 if (value == 0) 236 if (value == 0)
@@ -259,12 +247,11 @@ static void scanaccel_formatter(char *buffer, size_t buffer_size,
259 snprintf(buffer, buffer_size, "2x/%ds", val); 247 snprintf(buffer, buffer_size, "2x/%ds", val);
260} 248}
261 249
262static const unsigned char poweroff_idle_timer_times[] = {0,1,2,3,4,5,6,7,8,9,10,15,30,45,60};
263static int32_t poweroff_idle_timer_getlang(int value) 250static int32_t poweroff_idle_timer_getlang(int value)
264{ 251{
265 if (value == 0) 252 if (value == 0)
266 return LANG_OFF; 253 return LANG_OFF;
267 return TALK_ID(poweroff_idle_timer_times[value], UNIT_MIN); 254 return TALK_ID(value, UNIT_MIN);
268} 255}
269static void poweroff_idle_timer_formatter(char *buffer, size_t buffer_size, 256static void poweroff_idle_timer_formatter(char *buffer, size_t buffer_size,
270 int val, const char *unit) 257 int val, const char *unit)
@@ -273,7 +260,7 @@ static void poweroff_idle_timer_formatter(char *buffer, size_t buffer_size,
273 if (val == 0) 260 if (val == 0)
274 strcpy(buffer, str(LANG_OFF)); 261 strcpy(buffer, str(LANG_OFF));
275 else 262 else
276 snprintf(buffer, buffer_size, "%dm", poweroff_idle_timer_times[val]); 263 snprintf(buffer, buffer_size, "%dm", val);
277} 264}
278 265
279#ifndef HAVE_SCROLLWHEEL 266#ifndef HAVE_SCROLLWHEEL
@@ -481,10 +468,10 @@ const struct settings_list settings[] = {
481#endif /* HAVE_LCD_BITMAP */ 468#endif /* HAVE_LCD_BITMAP */
482 OFFON_SETTING(0,show_icons, LANG_SHOW_ICONS ,true,"show icons", NULL), 469 OFFON_SETTING(0,show_icons, LANG_SHOW_ICONS ,true,"show icons", NULL),
483 /* system */ 470 /* system */
484 INT_SETTING_W_CFGVALS(0, poweroff, LANG_POWEROFF_IDLE, 10, "idle poweroff", 471 TABLE_SETTING(F_ALLOW_ARBITRARY_VALS, poweroff, LANG_POWEROFF_IDLE, 10,
485 "off,1,2,3,4,5,6,7,8,9,10,15,30,45,60", UNIT_MIN, 472 "idle poweroff", "off", UNIT_MIN, poweroff_idle_timer_formatter,
486 0, 14, 1, poweroff_idle_timer_formatter, 473 poweroff_idle_timer_getlang, set_poweroff_timeout, 15,
487 poweroff_idle_timer_getlang, set_poweroff_timeout), 474 0,1,2,3,4,5,6,7,8,9,10,15,30,45,60),
488 SYSTEM_SETTING(NVRAM(4),runtime,0), 475 SYSTEM_SETTING(NVRAM(4),runtime,0),
489 SYSTEM_SETTING(NVRAM(4),topruntime,0), 476 SYSTEM_SETTING(NVRAM(4),topruntime,0),
490 477
@@ -639,10 +626,9 @@ const struct settings_list settings[] = {
639 OFFON_SETTING(0,play_selected,LANG_PLAY_SELECTED,true,"play selected",NULL), 626 OFFON_SETTING(0,play_selected,LANG_PLAY_SELECTED,true,"play selected",NULL),
640 OFFON_SETTING(0,party_mode,LANG_PARTY_MODE,false,"party mode",NULL), 627 OFFON_SETTING(0,party_mode,LANG_PARTY_MODE,false,"party mode",NULL),
641 OFFON_SETTING(0,fade_on_stop,LANG_FADE_ON_STOP,true,"volume fade",NULL), 628 OFFON_SETTING(0,fade_on_stop,LANG_FADE_ON_STOP,true,"volume fade",NULL),
642 INT_SETTING_W_CFGVALS(0, ff_rewind_min_step, LANG_FFRW_STEP, FF_REWIND_1000, 629 TABLE_SETTING(F_ALLOW_ARBITRARY_VALS, ff_rewind_min_step,
643 "scan min step", "1,2,3,4,5,6,8,10,15,20,25,30,45,60", UNIT_SEC, 630 LANG_FFRW_STEP, 1, "scan min step", NULL, UNIT_SEC,
644 13, 0, -1, ff_rewind_min_step_formatter, 631 NULL, NULL, NULL, 14, 1,2,3,4,5,6,8,10,15,20,25,30,45,60),
645 ff_rewind_min_step_getlang, NULL),
646 INT_SETTING(0, ff_rewind_accel, LANG_FFRW_ACCEL, 3, "scan accel", 632 INT_SETTING(0, ff_rewind_accel, LANG_FFRW_ACCEL, 3, "scan accel",
647 UNIT_SEC, 16, 0, -1, scanaccel_formatter, scanaccel_getlang, NULL), 633 UNIT_SEC, 16, 0, -1, scanaccel_formatter, scanaccel_getlang, NULL),
648#if (CONFIG_CODEC == SWCODEC) && !defined(HAVE_FLASH_STORAGE) 634#if (CONFIG_CODEC == SWCODEC) && !defined(HAVE_FLASH_STORAGE)
diff --git a/firmware/powermgmt.c b/firmware/powermgmt.c
index 54e7592987..18764591ab 100644
--- a/firmware/powermgmt.c
+++ b/firmware/powermgmt.c
@@ -197,11 +197,6 @@ void reset_poweroff_timer(void)
197 197
198#else /* not SIMULATOR ******************************************************/ 198#else /* not SIMULATOR ******************************************************/
199 199
200static const unsigned char poweroff_idle_timeout_value[15] =
201{
202 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 15, 30, 45, 60
203};
204
205#if CONFIG_CHARGING == CHARGING_CONTROL 200#if CONFIG_CHARGING == CHARGING_CONTROL
206int long_delta; /* long term delta battery voltage */ 201int long_delta; /* long term delta battery voltage */
207int short_delta; /* short term delta battery voltage */ 202int short_delta; /* short term delta battery voltage */
@@ -506,7 +501,7 @@ static void battery_status_update(void)
506 */ 501 */
507static void handle_auto_poweroff(void) 502static void handle_auto_poweroff(void)
508{ 503{
509 long timeout = poweroff_idle_timeout_value[poweroff_timeout]*60*HZ; 504 long timeout = poweroff_timeout*60*HZ;
510 int audio_stat = audio_status(); 505 int audio_stat = audio_status();
511 506
512#if CONFIG_CHARGING 507#if CONFIG_CHARGING