Xforms4Perl
view release on metacpan or search on metacpan
X11/Xforms/Xforms.h view on Meta::CPAN
* The five Xforms-specific blessed objects
*/
typedef FL_FORM FLForm;
typedef FL_OBJECT FLObject;
typedef FL_IOPT FLOpt;
typedef FD_FSELECTOR FDFselector;
typedef FD_CMDLOG FDCmdlog;
typedef FL_EditKeymap FLEditKeymap;
/*
* Mirror of FL_IOPT sturcture that gives the integers as an array
* - obviously pretty vulnerable to changes!!!
*/
typedef struct
{
float rgamma, ggamma, bgamma;
int opt_int[23];
char *rgbfile; /* where RGB file is */
char vname[24];
} FL_IOPT_ARRAY;
/*
* Mirror of FD_FSELECTOR sturcture that gives the objects as an array
* - obviously pretty vulnerable to changes!!!
*/
typedef struct
{
void *fsel_ob[11];
FL_OBJECT *appbutt[3];
} FD_FSEL_ARRAY;
/*
* Mirror of FD_CMDLOG sturcture that gives the objects as an array
* - obviously pretty vulnerable to changes!!!
*/
typedef struct
{
void *cmd_ob[4];
} FD_CMD_ARRAY;
/*
* Mirror of FL_EditKeymap sturcture that gives the mappings as an array
* - obviously pretty vulnerable to changes!!!
*/
typedef struct
{
long keymap_long[27];
} FL_KEYMAP_ARRAY;
/*
* Mirror of FL_FORM structure that gives fields as arrays
* - obviously pretty vulnerable to changes!!!
*/
typedef struct
{
void *fdui; /* for fdesign */
void *u_vdata; /* for application */
#if FL_INCLUDE_VERSION >= 87
char *u_cdata;
#endif
long u_ldata;
char *label; /* window title */
unsigned long window; /* X resource ID for window */
FL_Coord flf_flc[6];
/* FL_Coord x, y, w, h; /* current geometry info */
/* FL_Coord hotx, hoty; /* hot-spot of the form */
FL_OBJECT *flf_flo[3];
/*struct flobjs_ *first;
struct flobjs_ *last;
struct flobjs_ *focusobj;*/
FL_FORMCALLBACKPTR form_callback;
FL_FORM_ATACTIVATE activate_callback;
FL_FORM_ATDEACTIVATE deactivate_callback;
void *form_cb_data, *activate_data, *deactivate_data;
FL_RAW_CALLBACK key_callback;
FL_RAW_CALLBACK push_callback;
FL_RAW_CALLBACK crossing_callback;
FL_RAW_CALLBACK motion_callback;
FL_RAW_CALLBACK all_callback;
unsigned long compress_mask;
unsigned long evmask;
/* WM_DELETE_WINDOW message handler */
FL_FORM_ATCLOSE close_callback;
void *close_data;
void *flpixmap; /* back buffer */
unsigned long icon_pixmap;
unsigned long icon_mask;
/* interaction and other flags */
int flf_int[10];
/* int vmode; /* current X visual class */
/* int deactivated; /* true if sensitive */
/* int use_pixmap; /* true if dbl buffering */
/* int frozen; /* true if sync change */
/* int visible; /* true if mapped */
/* int wm_border; /* window manager info */
/* unsigned int prop; /* other attributes */
/* int has_auto; /* */
/* int top; /* */
/* int sort_of_modal; /* internal use. */
#if FL_INCLUDE_VERSION >= 87
struct forms_ *parent;
struct forms_ *child;
struct flobjs_ *parent_obj;
int reserved[10]; /* future use */
#else
int reserved[12]; /* future use */
#endif
} FLF_ARRAY;
/*
* Mirror of FL_OBJECT structure that gives fields as arrays
* - obviously pretty vulnerable to changes!!!
*/
typedef struct
{
struct forms_ *form; /* the form this object belong */
void *u_vdata; /* anything user likes */
#if FL_INCLUDE_VERSION >= 87
char *u_cdata;
#endif
long u_ldata; /* anything user lines */
int flo_int2[3];
/* int objclass; /* class of object, button, slider etc */
/* int type; /* type within the class */
/* int boxtype; /* what kind of box type */
FL_Coord flo_flc[5];
/* FL_Coord x, y, w, h; /* obj. location and size */
/* FL_Coord bw;*/
FL_COLOR col1, col2; /* colors of obj */
char *label; /* object label */
FL_COLOR lcol; /* label color */
int flo_int1[3];
/* int align;*/
/* int lsize, lstyle; /* label size and style */
long *shortcut;
int (*handle) (struct flobjs_ *, int, FL_Coord, FL_Coord, int, void *);
void (*object_callback) (struct flobjs_ *, long);
long argument;
void *spec; /* instantiation */
int (*prehandle) (struct flobjs_ *, int, FL_Coord, FL_Coord, int, void *);
int (*posthandle) (struct flobjs_ *, int, FL_Coord, FL_Coord, int, void *);
/* re-configure preference */
unsigned int flo_ui[3];
/* unsigned int resize; /* what to do if WM resizes the FORM */
/* unsigned int nwgravity; /* how to re-position top-left corner */
/* unsigned int segravity; /* how to re-position lower-right corner */
struct flobjs_ *flo_obj[5];
/* struct flobjs_ *prev; /* prev. obj in form */
/* struct flobjs_ *next; /* next. obj in form */
/* struct flobjs_ *parent; */
/* struct flobjs_ *child; */
/* struct flobjs_ *nc; */
int is_child;
void *flpixmap; /* pixmap double buffering stateinfo */
int flo_int[13];
/* int use_pixmap; /* true to use pixmap double buffering */
/* some interaction flags */
/* int double_buffer; /* only used by mesa/gl canvas */
/* int pushed;*/
/* int focus;*/
/* int belowmouse;*/
/* int active; /* if accept event */
/* int input;*/
/* int wantkey;*/
/* int radio;*/
/* int automatic;*/
/* int redraw;*/
/* int visible;*/
/* int clip;*/
unsigned long click_timeout;
void *c_vdata; /* for class use */
#if FL_INCLUDE_VERSION >= 87
char *c_cdata; /* for class use */
#endif
long c_ldata; /* for class use */
#if FL_INCLUDE_VERSION >= 87
unsigned int spec_size; /* for internal use */
FL_COLOR aux_col1, aux_col2;/* aux colors */
FL_COLOR dbl_background; /* double buffer background */
int how_return;
#endif
int reserved[6]; /* for future use */
} FLO_ARRAY;
/*
* The form callback data structure
*/
typedef struct _form_data {
SV * po;
void * u_vdata;
SV * fd_rawcallback;
SV * fd_fselcallback;
SV * fd_callback;
SV * fd_atactivate;
SV * fd_atdeactivate;
SV * fd_atclose;
} form_data;
/*
* The form callback data structure as an array
*/
typedef struct _fd_array {
SV * po;
void * u_vdata;
SV * fd_rawcallback;
SV * fd_fselcallback;
SV * cb_ptr[4];
} fd_array;
/*
* Pup callback logging blocks
*/
typedef struct _pupi_cb {
struct _pupi_cb *next;
int id;
SV * cb;
} pupi_cb;
typedef struct _pupm_cb {
struct _pupm_cb *next;
int id;
SV * cb;
SV * ecb;
SV * lcb;
pupi_cb *items;
} pupm_cb;
/*
* Block for recording xyplot overlay data. Used in co-ordinating
* _add_..._overlay and _get_..._overlay functions
*/
( run in 0.655 second using v1.01-cache-2.11-cpan-39bf76dae61 )