diff options
author | Jonathan Gordon <rockbox@jdgordon.info> | 2010-03-06 00:29:46 +0000 |
---|---|---|
committer | Jonathan Gordon <rockbox@jdgordon.info> | 2010-03-06 00:29:46 +0000 |
commit | a9b5f4d810903996d868b0fcdcf9859cf3f47d7d (patch) | |
tree | 4acbdcace28f00451d5b5c9687cc53c6f997886c /apps/gui/skin_engine/skin_display.c | |
parent | 43ed678b4645a48cf2072ab72c93e730f4d329ff (diff) | |
download | rockbox-a9b5f4d810903996d868b0fcdcf9859cf3f47d7d.tar.gz rockbox-a9b5f4d810903996d868b0fcdcf9859cf3f47d7d.zip |
cleanup statusbar+base skin relationship...
* remove the "custom" option from the statusbar setting. if a sbs file is set then statusbar setting is ignored, no other user visible change there.
* new tag, %wi - use to draw the inbuilt statusbar in the current viewport
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25038 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'apps/gui/skin_engine/skin_display.c')
-rw-r--r-- | apps/gui/skin_engine/skin_display.c | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/apps/gui/skin_engine/skin_display.c b/apps/gui/skin_engine/skin_display.c index d610fe4a4d..316b97523c 100644 --- a/apps/gui/skin_engine/skin_display.c +++ b/apps/gui/skin_engine/skin_display.c | |||
@@ -630,7 +630,8 @@ static bool get_line(struct gui_wps *gwps, | |||
630 | struct skin_subline *subline, | 630 | struct skin_subline *subline, |
631 | struct align_pos *align, | 631 | struct align_pos *align, |
632 | char *linebuf, | 632 | char *linebuf, |
633 | int linebuf_size) | 633 | int linebuf_size, |
634 | unsigned refresh_mode) | ||
634 | { | 635 | { |
635 | struct wps_data *data = gwps->data; | 636 | struct wps_data *data = gwps->data; |
636 | 637 | ||
@@ -639,6 +640,7 @@ static bool get_line(struct gui_wps *gwps, | |||
639 | char *linebuf_end = linebuf + linebuf_size - 1; | 640 | char *linebuf_end = linebuf + linebuf_size - 1; |
640 | bool update = false; | 641 | bool update = false; |
641 | int i; | 642 | int i; |
643 | (void)refresh_mode; /* silence warning on charcell */ | ||
642 | 644 | ||
643 | /* alignment-related variables */ | 645 | /* alignment-related variables */ |
644 | int cur_align; | 646 | int cur_align; |
@@ -676,6 +678,11 @@ static bool get_line(struct gui_wps *gwps, | |||
676 | img->display = subimage; | 678 | img->display = subimage; |
677 | break; | 679 | break; |
678 | } | 680 | } |
681 | case WPS_TOKEN_DRAW_INBUILTBAR: | ||
682 | gui_statusbar_draw(&(statusbars.statusbars[gwps->display->screen_type]), | ||
683 | refresh_mode == WPS_REFRESH_ALL, | ||
684 | data->tokens[i].value.data); | ||
685 | break; | ||
679 | #endif | 686 | #endif |
680 | 687 | ||
681 | case WPS_TOKEN_ALIGN_LEFT: | 688 | case WPS_TOKEN_ALIGN_LEFT: |
@@ -1176,8 +1183,8 @@ static bool skin_redraw(struct gui_wps *gwps, unsigned refresh_mode) | |||
1176 | || new_subline_refresh || hidden_vp) | 1183 | || new_subline_refresh || hidden_vp) |
1177 | { | 1184 | { |
1178 | /* get_line tells us if we need to update the line */ | 1185 | /* get_line tells us if we need to update the line */ |
1179 | update_line = get_line(gwps, subline, | 1186 | update_line = get_line(gwps, subline, &align, |
1180 | &align, linebuf, sizeof(linebuf)); | 1187 | linebuf, sizeof(linebuf), vp_refresh_mode); |
1181 | } | 1188 | } |
1182 | #ifdef HAVE_LCD_BITMAP | 1189 | #ifdef HAVE_LCD_BITMAP |
1183 | /* peakmeter */ | 1190 | /* peakmeter */ |