rockbox/apps/gui/scrollbar.h

60 lines
2.4 KiB
C
Raw Normal View History

/***************************************************************************
* __________ __ ___.
* Open \______ \ ____ ____ | | _\_ |__ _______ ___
* Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
* Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
* Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
* \/ \/ \/ \/ \/
* $Id$
*
* Copyright (C) 2005 Kevin Ferrare
*
* 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_
#include "screen_access.h"
#ifdef HAVE_LCD_BITMAP
enum orientation {
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
};
/*
* 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,
unsigned flags);
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,
unsigned flags);
#endif /* HAVE_LCD_BITMAP */
#endif /* _GUI_SCROLLBAR_H_ */