From eda80390d5afc4346d2e64a256762df7df30bb17 Mon Sep 17 00:00:00 2001 From: Jonathan Gordon Date: Sun, 15 Aug 2010 14:13:36 +0000 Subject: A bunch of new features for the bar type tags (%pb, %pv, %bl, etc): * the bar orientation (horiz/vert) is now chosen based on the width and heigt values (or can be forced). * the fill direction can now be inverted (fill right to left, or top to bottom is considered inverted) * It can now draw a slider type bar instead of a fill type (or indeed a slider with a fill type) To configure the new bar, any (or all) of the following params can be used after the bmp filename (order makes no difference either): invert - cause the bar to fill in the inverted direction vertical - draw a vertical bar (not needed if the height > width) horizontal - draw a horizontal bar (this is obviously the default) nofill - dont draw the filling bar (this still draws the outline, obviously pointless without the slider param) slider - draw an image for the slider. The next param MUST be the label of the image to draw. No option to use a subimage here, so the whole image needs to be the image you want on the slider. example: %pb(0,0,-,-,-,nofill, slider, slider_image, invert) - draw a boring horizontal progressbar which doesnt fill and only draws the image "slider_image" which moves right to left. the slider type might need some tweaking. let us know how it goes git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27821 a1c6a512-1295-4272-9138-f99709370657 --- apps/gui/scrollbar.h | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) (limited to 'apps/gui/scrollbar.h') diff --git a/apps/gui/scrollbar.h b/apps/gui/scrollbar.h index 03e1e6ec43..e5ffae79b0 100644 --- a/apps/gui/scrollbar.h +++ b/apps/gui/scrollbar.h @@ -28,12 +28,13 @@ enum orientation { VERTICAL = 0x0000, /* Vertical orientation */ HORIZONTAL = 0x0001, /* Horizontal orientation */ + INVERTFILL = 0x0002, /* Invert the fill direction */ #ifdef HAVE_LCD_COLOR - FOREGROUND = 0x0002, /* Do not clear background pixels */ - INNER_FILL = 0x0004, /* Fill inner part even if FOREGROUND */ - INNER_BGFILL = 0x0008, /* Fill inner part with background + FOREGROUND = 0x0020, /* Do not clear background pixels */ + INNER_FILL = 0x0040, /* Fill inner part even if FOREGROUND */ + INNER_BGFILL = 0x0080, /* Fill inner part with background color even if FOREGROUND */ - INNER_FILL_MASK = 0x000c, + INNER_FILL_MASK = 0x00c0, #endif }; -- cgit v1.2.3