/***   [window.h]
*
*	For GNU C Compiler (GCC)
*
***/

#if !defined(_RECT_DEFINED)
struct RECT {
	short	x1;
	short	y1;
	short	x2;
	short	y2;
};
#define _RECT_DEFINED
#endif

/* OpenWindow用 構造体 */
struct opnwin_t {
	const char	*title;		/* 題名 */
	int		x1;			/* 左上x座標 */
	int		y1;			/* 左上y座標 */
	int		x2;			/* 右下x座標 */
	int		y2;			/* 右下y座標 */
	char	canb;		/* ｷｬﾝｾﾙ･ﾎﾞﾀﾝ */
	int		nopt;		/* ｵﾌﾟｼｮﾝの数 */
	const int	*wopt;	/* 各ｵﾌﾟｼｮﾝの幅 */
	char	expb;		/* 伸縮ﾎﾞﾀﾝ */
	char	shdw;		/* 影 */
	char	ord;
};
struct sb_t {
	int	tl;		/* total line */
	int	lpp;	/* lines per page */
	int	blen;	/* bar length */
	int	bml;	/* block min length */
};

void	drawWindow(struct opnwin_t *);
void	DrawButton(int, int, int, int, int);
void	DrawScrollbar(int, int, int, int);
int		Button(int, int, int, int);
int		dragWindow(int, int, struct RECT *, struct RECT *, int, int);
void	Xpage(int, int, int);
void	afterImage(struct RECT *, struct RECT *);
void	SCRB_bar(struct sb_t *, int, int *);
void	SCRB_page(struct sb_t *, int, int *, int *);
