summaryrefslogtreecommitdiff
path: root/apps/gui/option_select.c
diff options
context:
space:
mode:
authorStéphane Doyon <s.doyon@videotron.ca>2008-05-04 02:57:30 +0000
committerStéphane Doyon <s.doyon@videotron.ca>2008-05-04 02:57:30 +0000
commit49a73ca90f1ceacbf096ddc0064d21c38c56955d (patch)
treea9723df88fc32082eca1e76c6827efd9ff548043 /apps/gui/option_select.c
parentdd4e3848b80a6452012b4b9f947688f9278412e9 (diff)
downloadrockbox-49a73ca90f1ceacbf096ddc0064d21c38c56955d.zip
rockbox-49a73ca90f1ceacbf096ddc0064d21c38c56955d.tar.gz
rockbox-49a73ca90f1ceacbf096ddc0064d21c38c56955d.tar.bz2
rockbox-49a73ca90f1ceacbf096ddc0064d21c38c56955d.tar.xz
Revert r17345 on jdgordon's request, until we figure out why it crashes my x5.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17346 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'apps/gui/option_select.c')
-rw-r--r--apps/gui/option_select.c32
1 files changed, 14 insertions, 18 deletions
diff --git a/apps/gui/option_select.c b/apps/gui/option_select.c
index ffa8f1b..288bf90 100644
--- a/apps/gui/option_select.c
+++ b/apps/gui/option_select.c
@@ -146,21 +146,24 @@ char *option_get_valuestring(struct settings_list *setting,
}
return buffer;
}
-void option_talk_value(const struct settings_list *setting, int value, bool enqueue)
+
+static int option_talk(int selected_item, void * data)
{
+ struct settings_list *setting = (struct settings_list *)data;
+ int temp_var = selection_to_val(setting, selected_item);
if ((setting->flags & F_BOOL_SETTING) == F_BOOL_SETTING)
{
- bool val = value==1?true:false;
+ bool val = temp_var==1?true:false;
talk_id(val? setting->bool_setting->lang_yes :
- setting->bool_setting->lang_no, enqueue);
+ setting->bool_setting->lang_no, false);
}
#if 0 /* probably dont need this one */
else if ((setting->flags & F_FILENAME) == F_FILENAME)
{
-}
+ }
#endif
else if (((setting->flags & F_INT_SETTING) == F_INT_SETTING) ||
- ((setting->flags & F_TABLE_SETTING) == F_TABLE_SETTING))
+ ((setting->flags & F_TABLE_SETTING) == F_TABLE_SETTING))
{
const struct int_setting *int_info = setting->int_setting;
const struct table_setting *tbl_info = setting->table_setting;
@@ -177,9 +180,9 @@ void option_talk_value(const struct settings_list *setting, int value, bool enqu
get_talk_id = tbl_info->get_talk_id;
}
if (get_talk_id)
- talk_id(get_talk_id((int)value, unit), enqueue);
+ talk_id(get_talk_id((int)temp_var, unit), false);
else
- talk_value((int)value, unit, enqueue);
+ talk_value((int)temp_var, unit, false);
}
else if ((setting->flags & F_T_SOUND) == F_T_SOUND)
{
@@ -191,27 +194,20 @@ void option_talk_value(const struct settings_list *setting, int value, bool enqu
talkunit = UNIT_PERCENT;
else if (!strcmp(unit, "Hz"))
talkunit = UNIT_HERTZ;
- talk_value((int)value, talkunit, false);
+ talk_value((int)temp_var, talkunit, false);
}
else if ((setting->flags & F_CHOICE_SETTING) == F_CHOICE_SETTING)
{
- int value = (int)value;
+ int value = (int)temp_var;
if (setting->flags & F_CHOICETALKS)
{
- talk_id(setting->choice_setting->talks[value], enqueue);
+ talk_id(setting->choice_setting->talks[value], false);
}
else
{
- talk_id(P2ID(setting->choice_setting->desc[value]), enqueue);
+ talk_id(P2ID(setting->choice_setting->desc[value]), false);
}
}
-}
-
-static int option_talk(int selected_item, void * data)
-{
- struct settings_list *setting = (struct settings_list *)data;
- int temp_var = selection_to_val(setting, selected_item);
- option_talk_value(setting, temp_var, false);
return 0;
}