diff --git a/menu/menu_displaylist.c b/menu/menu_displaylist.c index bb33a3ebe1..6a7620c878 100644 --- a/menu/menu_displaylist.c +++ b/menu/menu_displaylist.c @@ -2173,6 +2173,9 @@ static int menu_displaylist_parse_settings_internal(void *data, case PARSE_ONLY_FLOAT: precond = ST_FLOAT; break; + case PARSE_ONLY_STRING: + precond = ST_STRING; + break; case PARSE_ONLY_STRING_OPTIONS: precond = ST_STRING_OPTIONS; break; @@ -2235,6 +2238,10 @@ static int menu_displaylist_parse_settings_internal(void *data, if (type == ST_FLOAT) break; goto loop; + case PARSE_ONLY_STRING: + if (type == ST_STRING) + break; + goto loop; case PARSE_ONLY_STRING_OPTIONS: if (type == ST_STRING_OPTIONS) break; @@ -2265,6 +2272,7 @@ loop: case PARSE_ONLY_BOOL: case PARSE_ONLY_INT: case PARSE_ONLY_UINT: + case PARSE_ONLY_STRING: case PARSE_ONLY_STRING_OPTIONS: case PARSE_ACTION: time_to_exit = true; @@ -2326,6 +2334,9 @@ static int menu_displaylist_parse_settings_internal_enum(void *data, case PARSE_ONLY_FLOAT: precond = ST_FLOAT; break; + case PARSE_ONLY_STRING: + precond = ST_STRING; + break; case PARSE_ONLY_STRING_OPTIONS: precond = ST_STRING_OPTIONS; break; @@ -2388,6 +2399,10 @@ static int menu_displaylist_parse_settings_internal_enum(void *data, if (type == ST_FLOAT) break; goto loop; + case PARSE_ONLY_STRING: + if (type == ST_STRING) + break; + goto loop; case PARSE_ONLY_STRING_OPTIONS: if (type == ST_STRING_OPTIONS) break; @@ -2418,6 +2433,7 @@ loop: case PARSE_ONLY_BOOL: case PARSE_ONLY_INT: case PARSE_ONLY_UINT: + case PARSE_ONLY_STRING: case PARSE_ONLY_STRING_OPTIONS: case PARSE_ACTION: time_to_exit = true; diff --git a/menu/menu_displaylist.h b/menu/menu_displaylist.h index d259af7093..91dbe69dd3 100644 --- a/menu/menu_displaylist.h +++ b/menu/menu_displaylist.h @@ -32,17 +32,18 @@ RETRO_BEGIN_DECLS enum menu_displaylist_parse_type { - PARSE_NONE = (1 << 0), - PARSE_GROUP = (1 << 1), - PARSE_ACTION = (1 << 2), - PARSE_ONLY_INT = (1 << 3), - PARSE_ONLY_UINT = (1 << 4), - PARSE_ONLY_BOOL = (1 << 5), - PARSE_ONLY_FLOAT = (1 << 6), - PARSE_ONLY_BIND = (1 << 7), - PARSE_ONLY_GROUP = (1 << 8), - PARSE_ONLY_STRING_OPTIONS = (1 << 9), - PARSE_SUB_GROUP = (1 << 10) + PARSE_NONE = (1 << 0), + PARSE_GROUP = (1 << 1), + PARSE_ACTION = (1 << 2), + PARSE_ONLY_INT = (1 << 3), + PARSE_ONLY_UINT = (1 << 4), + PARSE_ONLY_BOOL = (1 << 5), + PARSE_ONLY_FLOAT = (1 << 6), + PARSE_ONLY_BIND = (1 << 7), + PARSE_ONLY_GROUP = (1 << 8), + PARSE_ONLY_STRING = (1 << 9), + PARSE_ONLY_STRING_OPTIONS = (1 << 10), + PARSE_SUB_GROUP = (1 << 11) }; enum menu_displaylist_ctl_state