/***************************************************************************

	usrintrf.c

	PSP user interface draw functions.

***************************************************************************/

#ifndef PSP_USRINTRF_H
#define PSP_USRINTRF_H

#define FONT_WHITE			0x7fff
#define FONT_BLACK			0x0000

#define ICON_L_CONFIG   	0
#define ICON_L_KEYCONFIG	1
#define ICON_L_FOLDER	  	2
#define ICON_L_RETURN	 	3
#define ICON_L_RESET	 	4
#define ICON_L_EXIT		  	5

#define ICON_S_CONFIG   	0
#define ICON_S_KEYCONFIG	1
#define ICON_S_FOLDER   	2
#define ICON_S_UPPERDIR 	3
#define ICON_S_MEMSTICK 	4
#define ICON_S_ZIPFILE  	5
#define ICON_S_BATTERY1  	6
#define ICON_S_BATTERY2  	7
#define ICON_S_BATTERY3  	8
#define ICON_S_BATTERY4  	9

int font_get_string_width(const char *s);
void font_print(int sx, int sy, u16 color, const char *s);
void font_print_center(int sy, u16 color, const char *s);
void font_print_shadow(int sx, int sy, u16 color, const char *s, int level);
void font_print_shadow_center(int sy, u16 color, const char *s, int level);

void small_font_print(int sx, int sy, u16 color, const char *s, int bg);
void small_font_print_center(int sy, u16 color, const char *s, int bg);

void large_icon(int sx, int sy, u16 color, int no);
void large_icon_shadow(int sx, int sy, u16 color, int no, int level);
void large_icon_lightshadow(int sx, int sy, u16 color, int no, int level);

void small_icon(int sx, int sy, u16 color, int no);
void small_icon_shadow(int sx, int sy, u16 color, int no, int level);
void small_icon_lightshadow(int sx, int sy, u16 color, int no, int level);

void boxfill_gradation(int sx, int sy, int ex, int ey, int scolor, int ecolor, int alpha);
void boxfill_alpha(int sx, int sy, int ex, int ey, int color, int alpha);
void boxfill(int sx, int sy, int ex, int ey, int color);

void hline_gradation(int sx, int ex, int y, int scolor, int ecolor, int alpha);
void vline_gradation(int x, int sy, int ey, int scolor, int ecolor, int alpha);

void draw_dialog(int sx, int sy, int ex, int ey);
void draw_scrollbar(int sx, int sy, int ex, int ey, int line_height, int total_lines, int current_line);

#endif /* PSP_USRINTRF_H */
