2005-10-28 00:00:00 +00:00
|
|
|
/***************************************************************************
|
|
|
|
* __________ __ ___.
|
|
|
|
* Open \______ \ ____ ____ | | _\_ |__ _______ ___
|
|
|
|
* Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
|
|
|
|
* Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
|
|
|
|
* Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
|
|
|
|
* \/ \/ \/ \/ \/
|
|
|
|
* $Id$
|
|
|
|
*
|
2005-10-30 01:24:35 +00:00
|
|
|
* Copyright (C) 2005 Kevin Ferrare
|
2005-10-28 00:00:00 +00:00
|
|
|
*
|
|
|
|
* All files in this archive are subject to the GNU General Public License.
|
|
|
|
* See the file COPYING in the source tree root for full license agreement.
|
|
|
|
*
|
|
|
|
* This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
|
|
|
|
* KIND, either express or implied.
|
|
|
|
*
|
|
|
|
****************************************************************************/
|
|
|
|
|
|
|
|
#ifndef _GUI_SCROLLBAR_H_
|
|
|
|
#define _GUI_SCROLLBAR_H_
|
2005-11-16 02:12:25 +00:00
|
|
|
#include "screen_access.h"
|
2005-10-28 00:00:00 +00:00
|
|
|
|
2005-11-16 02:12:25 +00:00
|
|
|
#ifdef HAVE_LCD_BITMAP
|
2005-10-28 00:00:00 +00:00
|
|
|
|
|
|
|
enum orientation {
|
2006-10-13 04:16:49 +00:00
|
|
|
VERTICAL = 0x0000, /* Vertical orientation */
|
|
|
|
HORIZONTAL = 0x0001, /* Horizontal orientation */
|
|
|
|
#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
|
|
|
|
color even if FOREGROUND */
|
|
|
|
INNER_FILL_MASK = 0x000c,
|
|
|
|
#endif
|
2005-10-28 00:00:00 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
/*
|
|
|
|
* Draws a scrollbar on the given screen
|
|
|
|
* - screen : the screen to put the scrollbar on
|
|
|
|
* - x : x start position of the scrollbar
|
|
|
|
* - y : y start position of the scrollbar
|
|
|
|
* - width : you won't guess =(^o^)=
|
|
|
|
* - height : I won't tell you either !
|
|
|
|
* - items : total number of items on the screen
|
|
|
|
* - min_shown : index of the starting item on the screen
|
|
|
|
* - max_shown : index of the last item on the screen
|
|
|
|
* - orientation : either VERTICAL or HORIZONTAL
|
|
|
|
*/
|
|
|
|
extern void gui_scrollbar_draw(struct screen * screen, int x, int y,
|
|
|
|
int width, int height, int items,
|
|
|
|
int min_shown, int max_shown,
|
2006-10-13 04:16:49 +00:00
|
|
|
unsigned flags);
|
2006-02-10 13:57:11 +00:00
|
|
|
extern void gui_bitmap_scrollbar_draw(struct screen * screen, struct bitmap bm, int x, int y,
|
|
|
|
int width, int height, int items,
|
|
|
|
int min_shown, int max_shown,
|
2006-10-13 04:16:49 +00:00
|
|
|
unsigned flags);
|
2007-08-05 10:25:00 +00:00
|
|
|
extern void show_busy_slider(struct screen *s, int x, int y, int width, int height);
|
2005-10-28 00:00:00 +00:00
|
|
|
#endif /* HAVE_LCD_BITMAP */
|
|
|
|
#endif /* _GUI_SCROLLBAR_H_ */
|