/* drwUxtedit */


#if defined NAMESPACE_DRWIMPC
  namespace DrWimpC {
#endif


#if defined NAMESPACE_OSLIB
  using namespace OSLib;
#endif


#ifdef __cplusplus 
extern "C" {
#endif

extern void drw_u_extedit_init(void);
extern extedit_job_handle drw_u_extedit_set_job_handle(int source1,
                                                       int source2,
                                                       int source3,
                                                       int source4);
extern int drw_u_extedit_read_only_ok(extedit_job_handle job_handle,
                                      int source1,
                                      int source2,
                                      int source3,
                                      int source4);
extern extedit_data_type drw_u_retry_extedit(int source1,
                                             int source2,
                                             int source3,
                                             int source4,
                                             extedit_message_rq *emrq);
extern int drw_u_extedit_start_save(int returningdata,
                                    extedit_job_handle job_handle,
                                    int source1,
                                    int source2,
                                    int source3,
                                    int source4,
                                    extedit_message_rq *emrq,
                                    int *est_size,
                                    bits *rtfiletype,
                                    drw_wcaretseln *cseln,
                                    char *filename);
extern int drw_u_extedit_abort_job(extedit_job_handle job_handle,
                                   int source1,
                                   int source2,
                                   int source3,
                                   int source4);
extern int drw_u_extedit_aborted_job(int source1,
                                     int source2,
                                     int source3,
                                     int source4,
                                     extedit_message_rq *emrq);
extern int drw_u_extedit_accept(extedit_job_handle job_handle,
                                extedit_data_type data_type,
                                const char *parent_name,
                                char *leaf_name,
                                bits file_type,
                                bits sub_type,
                                int *read_only,
                                int *source1,
                                int *source2,
                                int *source3,
                                int *source4);
extern void drw_u_extedit_process_cursor(extedit_job_handle job_handle,
                                         int source1,
                                         int source2,
                                         int source3,
                                         int source4,
                                         int new_cursor_pos,
                                         int new_sos_pos,
                                         int new_eos_pos,
                                         int *old_cursor_pos,
                                         int *old_sos_pos,
                                         int *old_eos_pos);
extern void drw_u_process_returned_cursor(extedit_job_handle job_handle,
                                          int source1,
                                          int source2,
                                          int source3,
                                          int source4,
                                          int old_cursor_pos,
                                          int old_sos_pos,
                                          int old_eos_pos,
                                          int new_cursor_pos,
                                          int new_sos_pos,
                                          int new_eos_pos);
extern int drw_u_extedit_process_save(extedit_job_handle job_handle,
                                      int source1,
                                      int source2,
                                      int source3,
                                      int source4,
                                      bits file_type,
                                      bits sub_type,
                                      bits *rtfile_type,
                                      char *file_name,
                                      int *est_size,
                                      int *buffpos,
                                      byte **rtbuffer);
extern void drw_u_extedit_load_data(extedit_job_handle job_handle,
                                    int source1,
                                    int source2,
                                    int source3,
                                    int source4,
                                    extedit_flags extflags,
                                    char *filename,
                                    wimp_w whan,
                                    wimp_i icon,
                                    bits filetype,
                                    int workx,
                                    int worky);
extern void drw_u_extedit_post_dtfr(bits msgtype,
                                    char *path,
                                    char *leafname,
                                    wimp_w whandle,
                                    wimp_i iconno,
                                    char *ftype,
                                    bits filetype,
                                    int workx,
                                    int worky);
extern int drw_u_extedit_save_data(extedit_job_handle job_handle,
                                   int source1,
                                   int source2,
                                   int source3,
                                   int source4,
                                   char *filename,
                                   bits filetype,
                                   drw_wcaretseln *cseln);
extern void drw_u_extedit_recv_dl_ack(extedit_job_handle job_handle,
                                      int source1,
                                      int source2,
                                      int source3,
                                      int source4,
                                      wimp_t desttask,
                                      int inmyref,
                                      int inyourref,
                                      wimp_w destwhan,
                                      wimp_i destic,
                                      int destx,
                                      int desty,
                                      int est_size,
                                      bits filetype,
                                      char *filename);
extern int drw_u_extedit_resize_window(extedit_job_handle job_handle,
                                       wimp_w whan,
                                       int source1,
                                       int source2,
                                       int source3,
                                       int source4);
extern int drw_u_extedit_cu_anyway(extedit_data_type data_type,
                                   const char *parent_name,
                                   char *leaf_name,
                                   int source1,
                                   int source2,
                                   int source3,
                                   int source4);
extern char *drw_u_extedit_srce_filename(char *suggested_file_name,
                                         extedit_job_handle job_handle,
                                         int source1,
                                         int source2,
                                         int source3,
                                         int source4,
                                         int iseditrequest);
extern int drw_u_save_anyway(extedit_job_handle job_handle,
                             extedit_data_type data_type,
                             extedit_flags cu_editing,
                             int source1,
                             int source2,
                             int source3,
                             int source4,
                             char *filename);
extern int drw_u_extedit_check_names(wimp_t taskh,
                                     wimp_w editwhan,
                                     char *editwtitle,
                                     char *leafname,
                                     extedit_job_handle job_handle,
                                     drw_extedit_source_str *exdsrce);

#ifdef __cplusplus
}
#endif

#if defined NAMESPACE_DRWIMPC
  }
#endif

