Move Info tab content to a separate widget.
[maemo-rb.git] / apps / gui / scrollbar.h
blob606b9bd3d30c419372e7fd1057dab1dc4e133936
1 /***************************************************************************
2 * __________ __ ___.
3 * Open \______ \ ____ ____ | | _\_ |__ _______ ___
4 * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
5 * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
6 * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
7 * \/ \/ \/ \/ \/
8 * $Id$
10 * Copyright (C) 2005 Kevin Ferrare
12 * This program is free software; you can redistribute it and/or
13 * modify it under the terms of the GNU General Public License
14 * as published by the Free Software Foundation; either version 2
15 * of the License, or (at your option) any later version.
17 * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
18 * KIND, either express or implied.
20 ****************************************************************************/
22 #ifndef _GUI_SCROLLBAR_H_
23 #define _GUI_SCROLLBAR_H_
24 #include "screen_access.h"
26 #ifdef HAVE_LCD_BITMAP
28 enum orientation {
29 VERTICAL = 0x0000, /* Vertical orientation */
30 HORIZONTAL = 0x0001, /* Horizontal orientation */
31 INVERTFILL = 0x0002, /* Invert the fill direction */
32 INNER_NOFILL = 0x0004, /* Do not fill inner part */
33 #ifdef HAVE_LCD_COLOR
34 FOREGROUND = 0x0020, /* Do not clear background pixels */
35 INNER_FILL = 0x0040, /* Fill inner part even if FOREGROUND */
36 INNER_BGFILL = 0x0080, /* Fill inner part with background
37 color even if FOREGROUND */
38 INNER_FILL_MASK = 0x00c0,
39 #endif
40 DONT_CLEAR_EXCESS = 0x0100, /* Don't clear the entire bar area */
44 * Draws a scrollbar on the given screen
45 * - screen : the screen to put the scrollbar on
46 * - x : x start position of the scrollbar
47 * - y : y start position of the scrollbar
48 * - width : you won't guess =(^o^)=
49 * - height : I won't tell you either !
50 * - items : total number of items on the screen
51 * - min_shown : index of the starting item on the screen
52 * - max_shown : index of the last item on the screen
53 * - orientation : either VERTICAL or HORIZONTAL
55 extern void gui_scrollbar_draw(struct screen * screen, int x, int y,
56 int width, int height, int items,
57 int min_shown, int max_shown,
58 unsigned flags);
59 extern void gui_bitmap_scrollbar_draw(struct screen * screen, struct bitmap *bm,
60 int x, int y,
61 int width, int height, int items,
62 int min_shown, int max_shown,
63 unsigned flags);
64 extern void show_busy_slider(struct screen *s, int x, int y,
65 int width, int height);
66 #endif /* HAVE_LCD_BITMAP */
67 #endif /* _GUI_SCROLLBAR_H_ */