diff options
Diffstat (limited to 'apps/menu.c')
-rw-r--r-- | apps/menu.c | 17 |
1 files changed, 14 insertions, 3 deletions
diff --git a/apps/menu.c b/apps/menu.c index a45567415d..e1a5e99c68 100644 --- a/apps/menu.c +++ b/apps/menu.c | |||
@@ -494,13 +494,24 @@ bool do_setting_from_menu(const struct menu_item_ex *temp) | |||
494 | } | 494 | } |
495 | if (setting->flags&F_INT_SETTING) | 495 | if (setting->flags&F_INT_SETTING) |
496 | { | 496 | { |
497 | int min, max, step; | ||
498 | if (setting->flags&F_FLIPLIST) | ||
499 | { | ||
500 | min = setting->int_setting->max; | ||
501 | max = setting->int_setting->min; | ||
502 | step = -setting->int_setting->step; | ||
503 | } | ||
504 | else | ||
505 | { | ||
506 | max = setting->int_setting->max; | ||
507 | min = setting->int_setting->min; | ||
508 | step = setting->int_setting->step; | ||
509 | } | ||
497 | set_int_ex(str(setting->lang_id), | 510 | set_int_ex(str(setting->lang_id), |
498 | NULL, | 511 | NULL, |
499 | setting->int_setting->unit,var, | 512 | setting->int_setting->unit,var, |
500 | setting->int_setting->option_callback, | 513 | setting->int_setting->option_callback, |
501 | setting->int_setting->step, | 514 | step, min, max, |
502 | setting->int_setting->min, | ||
503 | setting->int_setting->max, | ||
504 | setting->int_setting->formatter, | 515 | setting->int_setting->formatter, |
505 | setting->int_setting->get_talk_id); | 516 | setting->int_setting->get_talk_id); |
506 | } | 517 | } |