summaryrefslogtreecommitdiffstats
path: root/apps/settings_list.h
diff options
context:
space:
mode:
authorJonathan Gordon <rockbox@jdgordon.info>2007-02-08 10:28:42 +0000
committerJonathan Gordon <rockbox@jdgordon.info>2007-02-08 10:28:42 +0000
commitfe3cfcc9b2b0ce5f0862f891762794ddf42bb6ab (patch)
tree996bf94f160d31eb8879295efb3b159ebdea0042 /apps/settings_list.h
parente645e2dcf2cc03c7e4c9a9d26ac93bbf82e8414b (diff)
downloadrockbox-fe3cfcc9b2b0ce5f0862f891762794ddf42bb6ab.tar.gz
rockbox-fe3cfcc9b2b0ce5f0862f891762794ddf42bb6ab.tar.bz2
rockbox-fe3cfcc9b2b0ce5f0862f891762794ddf42bb6ab.zip
Convert the sound menu to the new system
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12230 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'apps/settings_list.h')
-rw-r--r--apps/settings_list.h28
1 files changed, 16 insertions, 12 deletions
diff --git a/apps/settings_list.h b/apps/settings_list.h
index 663d9db228..7a5a445469 100644
--- a/apps/settings_list.h
+++ b/apps/settings_list.h
@@ -64,22 +64,26 @@ struct filename_setting {
#define F_FILENAME 0x40
struct int_setting {
- void (*option_callback)(int);
- int unit;
- int min;
- int max;
- int step;
- void (*formatter)(char*, int, int, const char*);
+ void (*option_callback)(int);
+ int unit;
+ int min;
+ int max;
+ int step;
+ void (*formatter)(char*, int, int, const char*);
};
#define F_INT_SETTING 0x80
struct choice_setting {
- void (*option_callback)(int);
- int count;
- unsigned char **desc;
+ void (*option_callback)(int);
+ int count;
+ union {
+ unsigned char **desc;
+ int *talks;
+ };
};
#define F_CHOICE_SETTING 0x100
-
+#define F_CHOICETALKS 0x200 /* uses .talks in the above struct for the talks */
+ /* and cfg_vals for the strings to display */
/* these use the _isfunc_type type for the function */
/* typedef int (*_isfunc_type)(void); */
#define F_MIN_ISFUNC 0x100000 /* min(above) is function pointer to above type */
@@ -96,10 +100,10 @@ struct choice_setting {
- number of bytes for a NVRAM setting is changed
- a NVRAM setting is removed
*/
-#define F_TEMPVAR 0x200 /* used if the setting should be set using a temp var */
+#define F_TEMPVAR 0x400 /* used if the setting should be set using a temp var */
struct settings_list {
- uint32_t flags; /* ____ ____ TFFF ____ NNN_ __TC IFRB STTT */
+ uint32_t flags; /* ____ ____ TFFF ____ NNN_ _TVC IFRB STTT */
void *setting;
int lang_id; /* -1 for none */
union storage_type default_val;