home *** CD-ROM | disk | FTP | other *** search
/ Crawly Crypt Collection 2 / crawlyvol2.bin / program / c / fldlib93 / examples / fldlib.h < prev    next >
Encoding:
C/C++ Source or Header  |  1994-05-21  |  1.7 KB  |  68 lines

  1. #include <aes.h>
  2.  
  3. #ifndef FLYDIAL
  4. #define FLYDIAL
  5.  
  6. /* FLD structure - used internally by FLYDIAL */
  7. /* Can be accessed externally by fld_getfld() */
  8.  
  9. typedef struct fly_dialog  {
  10.     int                                 windowhandle;
  11.     short                                fldhandle,
  12.                                              type,
  13.                                              focus,
  14.                                              index;
  15.     char                                 *title;
  16.     char                                iconified;
  17.     OBJECT                            *form;
  18.     int                                 (*xredraw)(int, GRECT*);
  19.     struct fly_dialog     *next;
  20. } FLD;
  21.  
  22.  
  23. /* Function prototypes */
  24.  
  25. short    fld_open(OBJECT *form, short centred, char *title, short type);
  26. void    fld_draw(short fldhandle, int startobj, int depth);
  27. short    fld_key(short kc, short *type, short *fldhandle);
  28. short    fld_mouse(short x, short y, short numclicks, short *type, short *fldhandle);
  29. int        fld_mesag(short *msgbuf);
  30. void    fld_exit(void);
  31. void    fld_close(short fldhandle);
  32. int        fld_getwin(short fldhandle);
  33. FLD*    fld_getfld(short fldhandle);
  34. OBJECT*fld_getform(short fldhandle);
  35. FLD*    fld_findtype(short type);
  36. FLD*    fld_findform(OBJECT *form);
  37. short    fld_do(OBJECT *tree, char *title);
  38. short    fld_domulti(short *type, short *fldhandle);
  39. void    fld_ability(int bitmask);
  40.  
  41.  
  42. /* Form positions on opening */
  43.  
  44. #define FLDC_NONE        0        /* No centreing */
  45. #define FLDC_SCREEN    1        /* Centre on screen */
  46. #define FLDC_MOUSE    2        /* Centre on mouse pointer */
  47.  
  48.  
  49. /* Ability codes */
  50.  
  51. #define FLDA_NONE   0x0000   /* No special program abilities */
  52. #define FLDA_CLOSE  0x0001   /* Close dialog handling */
  53. #define FLDA_ICON   0x0002   /* Iconify handling */
  54.  
  55.  
  56. /* fld_mouse/fld_key/fld_mesag return values */
  57.  
  58. #define FLDR_NONE   -1       /* No action required */
  59.  
  60.  
  61.  
  62. /* Variables */
  63.  
  64. extern OBJECT *fld_tempform;
  65. extern int     fld_tempstart,
  66.                fld_tempdepth;
  67.  
  68. #endif