/* drwE01 */


#if defined NAMESPACE_DRWIMPC
  namespace DrWimpC {
#endif


#if defined NAMESPACE_OSLIB
  using namespace OSLib;
#endif


#ifdef __cplusplus 
extern "C" {
#endif

extern int drw_list_line_spacingOS(drw_lw_data *lwd,
                                   int linespacing,
                                   double scale);
extern void drw_calcredrawlines(wimp_draw *redraw,
                                drw_lw_data *lwd,
                                int printing,
                                int page);
extern int drw_process_list_key_press(wimp_key_no wkey,
                                      int dkinuse,
                                      drw_dk_flags dkflagwd,
                                      drw_lw_data *lwd);
extern int drw_lw_key_press(wimp_w whan,
                            wimp_i icon,
                            wimp_key_no wkey,
                            int dkinuse,
                            drw_dk_flags dkflagwd);
extern void drw_lw_set_type_and_data(drw_lw_data *lwd,
                                     int listtype,
                                     void *listdata);
extern void drw_lw_set_selected(drw_lw_data *lwd,
                                int lineno);
extern void drw_lw_set_sel_on_key_up_down(drw_lw_data *lwd,
                                          int selonupdown);
extern void drw_lw_set_leftmargin(drw_lw_data *lwd,
                                  int leftmargin);
extern void drw_lw_set_dragline(drw_lw_data *lwd,
                                int dragline);
extern void drw_lw_calc_wheight(drw_lw_data *lwd);
extern void drw_lw_set_listsize(drw_lw_data *lwd,
                                int listsize,
                                int redraw_window,
                                int resize_to_start_height,
                                int check_width,
                                wimp_w reopenat);
extern void drw_lw_set_vis_to_wk_flag(drw_lw_data *lwd,
                                      int flagval);
extern void drw_lw_set_min_width_flag(drw_lw_data *lwd,
                                      int flagval);
extern int drw_lw_set_work_width(drw_lw_data *lwd,
                                 int newwidth);
extern void drw_lw_set_listwindow(drw_lw_data *lwd,
                                  wimp_w listwindow);
extern wimp_w drw_lw_set_list_hdr_pane(drw_lw_data *lwd,
                                       wimp_w whan,
                                       int closeifopen);
extern void drw_lw_set_bottomspace(drw_lw_data *lwd,
                                   int bottomspace);
extern void drw_lw_set_font(drw_lw_data *lwd,
                            char *fontname,
                            int fontsize);
extern void drw_lw_set_line_col(drw_lw_data *lwd,
                                os_colour r,
                                os_colour g,
                                os_colour b,
                                int fg,
                                int selectedline,
                                int isselectedline);
extern void drw_lw_set_openat(drw_lw_data *lwd,
                              drw_visible_window_posn *openat);
extern void drw_lw_set_use_openat(drw_lw_data *lwd,
                                  int useopenat);
extern void drw_lw_set_list_menu(drw_lw_data *lwd,
                                 wimp_menu *listmenu,
                                 drw_process_lwd_msl_fn mslfn);
extern void drw_lw_init_data(drw_lw_data *lwd,
                             int listsize,
                             wimp_w listhdrpane,
                             wimp_w listwindow,
                             char *fontname,
                             int fontsize,
                             int leftmargin,
                             int bottomspace,
                             int dragline,
                             int listtype,
                             void *listdata,
                             void *userdata,
                             drw_make_list_lineno_fn mklinefn);
extern void drw_lw_set_user_data(drw_lw_data *lwd,
                                 void *userdata);
extern void drw_lw_set_drag_lines(drw_lw_data *lwd,
                                  int state_select,
                                  int state_adjust);
extern int drw_lw_get_text_widthOS(drw_lw_data *lwd,
                                   char *textline);
extern int drw_get_max_li_line_widthOS(drw_lw_data *lwd,
                                       int numitems);
extern int drw_check_li_list_wwidth(drw_lw_data *lwd,
                                    int numitems);
extern int drw_lw_redrawtextline(drw_lw_data *lwd,
                                 int x,
                                 int y,
                                 int lineno,
                                 int currvwidth);
extern void drw_lw_app_resizepane(drw_lw_data *lwd);
extern int drw_lw_end_of_drag(wimp_dragged *dragged);
extern void drw_lwd_update_wline(drw_lw_data *lwd,
                                 int line);
extern int drw_get_list_lineno(drw_lw_data *lwd,
                               int worky);
extern int drw_lw_line_is_in_list(drw_lw_data *lwd,
                                  int lineno);
extern int drw_process_list_window_click(wimp_mouse_state buttontype,
                                         int mousex,
                                         int mousey,
                                         int workx,
                                         int worky,
                                         drw_lw_data *lwd);
extern int drw_lw_mouse_click(wimp_w whan,
                              wimp_i icon,
                              wimp_mouse_state buttons,
                              int mousex,
                              int mousey,
                              int x,
                              int y);
extern void drw_lw_escape_pressed(wimp_w whan);
extern void drw_lw_add_right_margin(drw_lw_data *lwd,
                                    int addrtmargin);
extern void drw_lw_set_auto_scroll_flags(drw_lw_data *lwd,
                                         int autoscroll,
                                         int scroll_on_drag_select,
                                         int scroll_on_drag_adjust);
extern void drw_lw_set_endofdragfn(drw_lw_data *lwd,
                                   drw_lwd_end_of_drag_fn endofdragfn);
extern void drw_lw_set_clickfn(drw_lw_data *lwd,
                               drw_process_lwd_click_fn clickfn);
extern void drw_lw_set_keyfn(drw_lw_data *lwd,
                             drw_process_lwd_keypr_fn keyfn);
extern void drw_lw_set_hlight_whole_line(drw_lw_data *lwd,
                                         int hlightwholeline);
extern void drw_lw_set_key_press_hlight(drw_lw_data *lwd,
                                        int keypresshlight);
extern void drw_lw_set_no_hlight(drw_lw_data *lwd,
                                 int nostarthlight,
                                 int nohlight_line,
                                 int nohlight_on_drag);
extern void drw_lw_set_hlight_ignore_keys(drw_lw_data *lwd,
                                         int ignore_h_arrows,
                                         int ignore_v_arrows);
extern void drw_lw_set_no_wrap_round(drw_lw_data *lwd,
                                     int nowrapround);
extern void drw_lw_set_font_blending(drw_lw_data *lwd,
                                     int blending);
extern void drw_lw_units_inch(drw_lw_data *lwd,
                              int inches);
extern void drw_lw_set_manual_gain_caret(drw_lw_data *lwd,
                                         int gaincaret);
extern void drw_lw_set_auto_lose_caret(drw_lw_data *lwd,
                                       int losecaret);
extern wimp_w drw_lw_get_pane(wimp_w whan);
extern wimp_menu *drw_lw_get_list_menu(wimp_w whan, wimp_i icon);
extern int drw_lw_menu_selection(wimp_menu *menu,
                                 int item,
                                 char *font,
                                 wimp_pointer *wptr,
                                 int is_adjust_click);
extern void drw_lw_open_list_window(drw_lw_data *lwd,
                                    int x,
                                    int y,
                                    int newscrollposx,
                                    int newscrollposy,
                                    drw_visible_window_posn *wvposn,
                                    wimp_w stackpos);
extern void drw_lw_open_list(drw_lw_data *lwd,
                             int x,
                             int y,
                             wimp_w stack);
extern int drw_lw_open_lw(wimp_w whan,
                          int x0,
                          int y1,
                          wimp_w wnext);
extern void drw_lw_list_modified(drw_lw_data *lwd,
                                 int ismodified);
extern int drw_lw_preclose_list(drw_lw_data *lwd);
extern int drw_lw_preclose_lw(wimp_w whan,
                              int *closew);
extern void drw_lw_close_list(drw_lw_data *lwd);
extern void drw_lw_close_lw(wimp_w whan);
extern void drw_lw_in_out_w(wimp_w whan,
                            wimp_event_no eventno);
extern void drw_lw_redraw_list(drw_lw_data *lwd,
                               wimp_draw *r,
                               int printing,
                               int page);
extern void drw_lw_redraw_lw(wimp_draw *r,
                             int printing,
                             int page);
extern void drw_lw_ascr_w(wimp_w whan,
                          drw_ascr_data *wascr,
                          int ascrreason);
extern void drw_lw_null_lw(void);
extern void drw_lw_start_auto_hlight(drw_lw_data *lwd);
extern void drw_lw_stop_auto_hlight(drw_lw_data *lwd,
                                    int resetw);
extern void drw_lw_highlight_line(int linenow);
extern void drw_lw_process_null(void);
extern void drw_lw_init(void);
extern void drw_put_list_sprite_linest(drw_lw_data *lwd,
                                       int atx,
                                       int aty,
                                       char *spritenamein);
extern void drw_lw_redraw_win_after_update(drw_lw_data *lwd,
                                           int lineno,
                                           int isnewitem,
                                           int resize_to_start_height,
                                           int check_width,
                                           wimp_w reopenat);

#ifdef __cplusplus
}
#endif

#if defined NAMESPACE_DRWIMPC
  }
#endif

