home *** CD-ROM | disk | FTP | other *** search
- /*
- * newslists.h
- * Copyright ⌐ Tom Bereiter, 1990
- */
-
- #define _H_newslists
-
- #include "bits.h"
-
- /* article thread in a group */
- #define THREADINC 16
- typedef struct art {
- char *title; /* article title */
- int re; /* original missing ? */
- int refcnt; /* number of open windows */
- int nthread; /* number of threads in 'thread' */
- int tindex; /* index into 'thread' */
- unsigned int *thread; /* list of article numbers */
- struct art *next; /* next article */
- struct art *prev; /* previous article */
- struct grp *gp; /* back-pointer to group */
- } art_t;
-
- /* current group list */
- typedef struct grp {
- char *gname; /* ascii name of group */
- long first,last; /* first and last valid article numbers */
- long unread; /* number of unread */
- bitmap_t *bm; /* bitmap of articles (first bit is 'first') */
- art_t *art_head; /* list of unread articles */
- int flags; /* (see below) */
- int subindex; /* display order */
- struct grp *next; /* if != NULL points to next subscribed group */
- } grp_t;
-
- #define G_SUB 0x0001 /* group is on subscribed list */
- #define G_INACT 0x0002 /* group is inactive */
-
- #define bmTOTAL(gp) ((gp)->last - (gp)->first + 1)
-
- extern grp_t *grps; /* group list */
- extern long ngrps; /* number of groups in group list */
- extern grp_t *grp_head; /* head of subscribed list */
- extern long nsgrps; /* number of subscribed groups */
-