home *** CD-ROM | disk | FTP | other *** search
- #ifndef DSTRUCT
- #define DSTRUCT
-
-
- struct BUFDATA
- {
- struct Gadget Gadget1;
- struct Gadget Gadget2;
- struct Gadget Gadget3;
- struct PropInfo Gadget1SInfo;
- int pos;
- int size;
- char buf[1];
- };
-
- union STDATA
- {
- APTR data;
- struct BUFDATA *bdata;
- struct FileInfoBlock *fib;
- struct FileHandle *fh;
- struct FileLock *lock;
- struct InfoData *info;
- };
-
- #define WNAMELEN 20
-
- struct STNODE
- {
- struct STNODE *next, *prev;
- int len; /* Length of this allocation, for convenience */
- int num; /* Number of the node within its type */
- int type; /* One of the ST_ defines above */
- union STDATA d; /* Points to the mem allocted for the struct */
- char wname[WNAMELEN]; /* Name of the window */
- char *oname; /* Name of the object associated with it */
- struct Window *w; /* Points to the window opened to display it */
- };
-
- struct STGLOB
- {
- struct STNODE *stlist;/* Linked list of STNODE structures */
- struct STNODE *unlist;/* Linked list of unlinked nodes */
- int count[ST_NUM]; /* How many of each type there are */
- struct MsgPort *Port; /* Message port to use for comm with Intuition */
- };
-
- #define DOTEXT(y, format, val) \
- sprintf(data, format, val); \
- PrintIText(n->w->RPort, &IText, 0, y);
-
-
- void stfhnew(struct NewWindow **, struct IntuiText **, struct STNODE *);
- void stlocknew(struct NewWindow **, struct IntuiText **, struct STNODE *);
- void stfibnew(struct NewWindow **, struct IntuiText **, struct STNODE *);
- void stinfnew(struct NewWindow **, struct IntuiText **, struct STNODE *);
- void stbufnew(struct NewWindow **, struct IntuiText **, struct STNODE *);
-
-
- int stfhdisp(struct STNODE *);
- int stlockdisp(struct STNODE *);
- int stfibdisp(struct STNODE *);
- int stinfdisp(struct STNODE *);
- int stbufdisp(struct STNODE *);
- int stbufmove(struct STNODE *, int);
-
-
- #endif
-
-