/* Generated by Ctran from pages.cat */
#define PAGES_G
#ifndef VARRAY_G
#include <varray.g>
#endif
#ifndef APPMAN_G
#include <appman.g>
#endif
#ifndef EPDOC_G
#include <epdoc.g>
#endif
#ifndef SCRLAY_G
#include <scrlay.g>
#endif
#ifndef TIME_G
#include <time.g>
#endif
#ifndef PRDRV_G
#include <prdrv.g>
#endif
/* Class Numbers */
#define C_PAGES 8
/* Method Numbers */
/* Constants for pages */
#define PAGES_DONE_PAGE 0
#define PAGES_DONE_DOC 1
#define PAGES_DONE_END 2
#define PAGES_DONE_ERROR 3
#define PAGES_DOC_NEW_PAGE 0x01
#define PAGES_DOC_RESET_PAGE_NUM 0x02
#define PAGES_FLAGS_PRINTING 0x01
#define PAGES_FLAGS_NOTFIRST 0x02
#define PAGES_FLAGS_ZERODOWN 0x04
#define PAGES_REGION_BODY 0
#define PAGES_REGION_TOP 1
#define PAGES_REGION_BOTTOM 2
#define PAGES_REGION_LAST_BOTTOM 3
#define PAGES_REGION_END 4
#define PAGES_REGION_VERY_END 5
#define PAGES_REGION_DOC_END 6
#define PAGES_PAGENUM_ARABIC 0
#define PAGES_PAGENUM_ROMAN_U 1
#define PAGES_PAGENUM_ROMAN_L 2
#define PAGES_HEADER_2_COLUMNS SCRLAY_ALIGN_JUSTIFY+1
#define PAGES_HEADER_3_COLUMNS SCRLAY_ALIGN_JUSTIFY+2
/* Types for pages */
typedef struct
{
unsigned short int x;
unsigned short int y;
} UPOINT;
typedef struct
{
UPOINT tl;
unsigned short int width;
unsigned short int height;
} UEXTENT;
typedef struct
{
short int event;
unsigned short int page;
PR_VAFLAT *pages;
} PAGES_DONE;
typedef struct
{
SCRLAY_FONT f;
unsigned char align;
unsigned char first_page;
} PAGES_HEADER;
typedef struct
{
unsigned short int width;
unsigned short int height;
UEXTENT body;
unsigned short int hdtop;
unsigned short int hdbot;
} PAGES_PAGE;
typedef struct
{
short int offset;
short int last;
short int style;
} PAGES_PAGENUM;
typedef struct
{
PAGES_PAGE pg;
short int pdrflags;
short int docflags;
unsigned short int pgbeg;
unsigned short int pgend;
PAGES_HEADER top;
PAGES_HEADER bot;
PAGES_PAGENUM pgnum;
} PAGES_PARAMS;
typedef struct
{
void *hread;
short int mread;
void *hdone;
short int mdone;
} PAGES_CALLS;
typedef struct
{
PR_WDR *wdr;
PAGES_CALLS c;
char *fname;
char *toptxt;
char *bottxt;
} PAGES_INIT;
/* Property of pages */
typedef struct {
PR_VAFLAT *pagarr;
PR_VASEG *todo;
PR_EPFDOC *ephead;
PR_PRNLAY *prhead;
PR_PDR *pdr;
PAGES_INIT in;
PAGES_PARAMS par;
short int last_pos;
unsigned short int flags;
short int pheight;
short int brk_height;
short int brk_above;
unsigned short int brk_pos;
short int y;
short int nrec;
unsigned short int page;
unsigned char reset_page;
unsigned char newdoc;
unsigned char started;
unsigned char newpage;
short int region;
short int holding;
unsigned short int pos;
WDR_PRINT pr;
SCRLAY_TABS tabs;
SCRLAY_SPACING spacing;
SCRLAY_MARGINS margins;
char time[LN_TIME_DATE_STR];
char date[LN_TIME_TIME_STR-2];
unsigned short int ioclen;
} PRS_PAGES;
typedef struct pr_pages
{
PRS_ROOT root;
PRS_ACTIVE active;
PRS_PAGES pages;
} PR_PAGES;
