/* Header file generated by fdesign on Fri Jan 19 00:04:57 2024 */

#ifndef FD_is_mainform_h_
#define FD_is_mainform_h_

#include  "include/forms.h" 

/* Callbacks, globals and object handlers */

void vscroll_callback( FL_OBJECT *, long );
void hscroll_callback( FL_OBJECT *, long );
void filemenu_callback( FL_OBJECT *, long );

void doublebuffer_callback( FL_OBJECT *, long );
void windowlevel_callback( FL_OBJECT *, long );

void scaling_callback( FL_OBJECT *, long );
void switchtopixel_callback( FL_OBJECT *, long );
void colorchange_callback( FL_OBJECT *, long );
void convolve_callback( FL_OBJECT *, long );
void autocrop_callback( FL_OBJECT *, long );

void outformat_callback( FL_OBJECT *, long );




/* Forms and Objects */

typedef struct {
    FL_FORM   * is_mainform;
    void      * vdata;
    char      * cdata;
    long        ldata;
    FL_OBJECT * canvas;
    FL_OBJECT * vscroll;
    FL_OBJECT * hscroll;
    FL_OBJECT * tabfolder;
    FL_OBJECT * progressbar;
    FL_OBJECT * status;
    FL_OBJECT * errormsg;
} FD_is_mainform;

FD_is_mainform * create_form_is_mainform( void );
typedef struct {
    FL_FORM   * viewform;
    void      * vdata;
    char      * cdata;
    long        ldata;
    FL_OBJECT * doublebuffer;
    FL_OBJECT * headerinfo;
    FL_OBJECT * window;
    FL_OBJECT * level;
    FL_OBJECT * pixmap;
} FD_viewform;

FD_viewform * create_form_viewform( void );
typedef struct {
    FL_FORM   * processform;
    void      * vdata;
    char      * cdata;
    long        ldata;
    FL_OBJECT * width;
    FL_OBJECT * height;
    FL_OBJECT * subpixel;
    FL_OBJECT * aspect;
    FL_OBJECT * pixel;
    FL_OBJECT * red;
    FL_OBJECT * green;
    FL_OBJECT * blue;
    FL_OBJECT * colorobj;
    FL_OBJECT * align;
} FD_processform;

FD_processform * create_form_processform( void );
typedef struct {
    FL_FORM   * saveAs_form;
    void      * vdata;
    char      * cdata;
    long        ldata;
    FL_OBJECT * formcontainer;
    FL_OBJECT * outformat;
} FD_saveAs_form;

FD_saveAs_form * create_form_saveAs_form( void );
typedef struct {
    FL_FORM   * annotationform;
    void      * vdata;
    char      * cdata;
    long        ldata;
} FD_annotationform;

FD_annotationform * create_form_annotationform( void );
typedef struct {
    FL_FORM   * paintform;
    void      * vdata;
    char      * cdata;
    long        ldata;
} FD_paintform;

FD_paintform * create_form_paintform( void );

#endif /* FD_is_mainform_h_ */
