/* Generated by Ctran from listbox.cl */
#define LISTBOX_G
#ifndef WIN_G
#include <win.g>
#endif
#ifndef BWIN_G
#include <bwin.g>
#endif
#ifndef MATCHER_G
#include <matcher.g>
#endif
/* Class Numbers */
#define C_LISTBOX 7
/* Method Numbers */
#define O_LB_DRAW_ITEM 14
#define O_LB_DRAW_EMPHASIS 15
#define O_LB_ITEM_WIDTH 17
#define O_LB_INQUIRE_FOCUS 19
#define O_LB_INQUIRE_LAST 21
#define O_LB_INQUIRE_ITEM 20
#define O_LB_SIZE_WINDOW 16
#define O_LB_TAKE_FOCUS 18
/* Constants for listbox */
#define IN_LISTBOX_MATCHER 0x0001
#define IN_LISTBOX_KEEP_ARRAY 0x0002
#define IN_LISTBOX_TEXT_OFFSET 0x0004
#define IN_LISTBOX_CUR_SET 0x0008
#define IN_LISTBOX_FIRST_SET 0x0010
#define IN_LISTBOX_LAST_SET 0x0020
#define IN_LISTBOX_POS_ALIGN_X 0x0040
#define IN_LISTBOX_POS_ALIGN_Y 0x0080
#define IN_LISTBOX_MIN_WIDTH 0x0100
#define IN_LISTBOX_AUTO_SIZE 0x0200
#define IN_LISTBOX_FORCE_WIDE 0x0400
#define IN_LISTBOX_WRAP_ROUND 0x0800
#define IN_LISTBOX_FIXED_WIDTH 0x8000
#define PR_LISTBOX_KEEP_ARRAY IN_LISTBOX_KEEP_ARRAY
#define PR_LISTBOX_FORCE_WIDE IN_LISTBOX_FORCE_WIDE
#define PR_LISTBOX_WRAP_ROUND IN_LISTBOX_WRAP_ROUND
#define PR_LISTBOX_UNSTABLE 0x1000
#define PR_LISTBOX_BOLD_CURSOR 0x2000
#define PR_LISTBOX_PLAQUE 0x4000
#define PR_LISTBOX_FIXED_WIDTH IN_LISTBOX_FIXED_WIDTH
#define PR_LISTBOX_SMALL_FONT PR_WIN_FORCE_RIGHT
#define LISTBOX_TOP_EDGE (BWIN_CUSHION_Y+2)
#define LISTBOX_BOTTOM_EDGE (LISTBOX_TOP_EDGE+BWIN_SHADOW_1_HEIGHT)
#define LISTBOX_LEFT_EDGE (BWIN_CUSHION_X+2)
#define LISTBOX_RIGHT_EDGE (LISTBOX_LEFT_EDGE+BWIN_SHADOW_1_WIDTH)
#define XLISTBOX_TOP_EDGE (LISTBOX_TOP_EDGE+6)
#define XLISTBOX_BOTTOM_EDGE (LISTBOX_BOTTOM_EDGE+5)
#define XLISTBOX_LEFT_EDGE (LISTBOX_LEFT_EDGE+6)
#define XLISTBOX_RIGHT_EDGE (LISTBOX_RIGHT_EDGE+5)
#define VXLISTBOX_TOP_EDGE (LISTBOX_TOP_EDGE+4)
#define VXLISTBOX_BOTTOM_EDGE (LISTBOX_BOTTOM_EDGE+3)
#define VXLISTBOX_LEFT_EDGE (LISTBOX_LEFT_EDGE+4)
#define VXLISTBOX_RIGHT_EDGE (LISTBOX_RIGHT_EDGE+3)
#define LISTBOX_OBLOID_INDENT 2
#define LISTBOX_TITLELINE_HEIGHT 3
#define LISTBOX_SCROLL_GUTTER 7
#define LISTBOX_SCROLL_OFFSET 1
/* Types for listbox */
typedef struct
{
unsigned short int flags;
PR_VAROOT *array;
unsigned short int offset;
short int current;
unsigned short int top;
unsigned short int first;
unsigned short int last;
P_POINT pos;
unsigned short int minwid;
} IN_LISTBOX;
/* Property of listbox */
typedef struct {
PR_VMATCHER *match;
PR_VAROOT *va;
unsigned short int flags;
short int width;
unsigned short int matchlen;
unsigned short int curoff;
unsigned short int offset;
short int current;
short int top;
short int first;
short int last;
short int vastart;
short int matchstart;
} PRS_LISTBOX;
typedef struct pr_listbox
{
PRS_ROOT root;
PRS_WIN win;
PRS_LISTBOX listbox;
} PR_LISTBOX;
