forked from len0rd/rockbox
Add a general-purpose parse_list function to parse a string containing a delimited list of items and adapt the parse_image_load() function in the WPS parser to use it. This function will also be used to parse the upcoming WPS %V viewport tag, but I'm committing it separately as these changes are unrelated to the viewport implementation itself.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16728 a1c6a512-1295-4272-9138-f99709370657
This commit is contained in:
parent
bb026334c0
commit
e92d2c51ed
6 changed files with 137 additions and 48 deletions
|
@ -273,7 +273,7 @@ int do_item_menu(int cur_sel, char* copy_buffer)
|
|||
|| (c>='0' && c<= '9'))
|
||||
#define hex2dec(c) (((c) >= '0' && ((c) <= '9')) ? (toupper(c)) - '0' : \
|
||||
(toupper(c)) - 'A' + 10)
|
||||
int hex_to_rgb(const char* hex)
|
||||
int hex_to_rgb(const char* hex, int* color)
|
||||
{ int ok = 1;
|
||||
int i;
|
||||
int red, green, blue;
|
||||
|
@ -290,11 +290,12 @@ int hex_to_rgb(const char* hex)
|
|||
red = (hex2dec(hex[0]) << 4) | hex2dec(hex[1]);
|
||||
green = (hex2dec(hex[2]) << 4) | hex2dec(hex[3]);
|
||||
blue = (hex2dec(hex[4]) << 4) | hex2dec(hex[5]);
|
||||
return LCD_RGBPACK(red,green,blue);
|
||||
*color = LCD_RGBPACK(red,green,blue);
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
|
||||
return 0;
|
||||
return -1;
|
||||
}
|
||||
#endif /* HAVE_LCD_COLOR */
|
||||
|
||||
|
@ -407,7 +408,7 @@ enum plugin_status plugin_start(struct plugin_api* api, void* parameter)
|
|||
case 1:
|
||||
edit_text = false;
|
||||
if (value)
|
||||
color = hex_to_rgb(value);
|
||||
hex_to_rgb(value, &color);
|
||||
else color = 0;
|
||||
rb->strcpy(extension, name);
|
||||
rb->set_color(rb->screens[SCREEN_MAIN], name, &color, -1);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue