123 lines
3 KiB
C
123 lines
3 KiB
C
|
/************************************************************/
|
|||
|
/* Windows Write, Copyright 1985-1992 Microsoft Corporation */
|
|||
|
/************************************************************/
|
|||
|
|
|||
|
/* fkpdefs.h -- mw formatted disk page definitions */
|
|||
|
/* #include filedefs.h, propdefs.h first */
|
|||
|
|
|||
|
|
|||
|
#define ifcMacInit 10
|
|||
|
|
|||
|
#define cbFkp (cbSector - sizeof (typeFC) - 1)
|
|||
|
|
|||
|
#define cchMaxGrpfsprm cbSector
|
|||
|
#define cchMaxFsprm 2
|
|||
|
|
|||
|
struct FKP
|
|||
|
{ /* Formatted disK Page */
|
|||
|
typeFC fcFirst; /* First fc which has formatting info here */
|
|||
|
CHAR rgb[cbFkp];
|
|||
|
CHAR crun;
|
|||
|
};
|
|||
|
|
|||
|
|
|||
|
struct RUN
|
|||
|
{ /* Char or para run descriptor */
|
|||
|
typeFC fcLim; /* last fc of run */
|
|||
|
int b; /* Byte offset from page start; if -1, standard props */
|
|||
|
};
|
|||
|
|
|||
|
#define cchRUN (sizeof (struct RUN))
|
|||
|
#define bfcRUN 0
|
|||
|
|
|||
|
struct FCHP
|
|||
|
{ /* File CHaracter Properties */
|
|||
|
CHAR cch; /* Number of bytes stored in chp (rest are vchpStd) */
|
|||
|
/* Must not be 0. */
|
|||
|
CHAR rgchChp[sizeof (struct CHP)];
|
|||
|
};
|
|||
|
|
|||
|
|
|||
|
struct FPAP
|
|||
|
{ /* File ParagrAph Properties */
|
|||
|
CHAR cch; /* Number of bytes stored in pap (rest are vpapStd) */
|
|||
|
/* Must not be 0. */
|
|||
|
CHAR rgchPap[sizeof (struct PAP)];
|
|||
|
};
|
|||
|
|
|||
|
|
|||
|
|
|||
|
struct FPRM
|
|||
|
{ /* File PropeRty Modifiers (stored in scratch file) */
|
|||
|
CHAR cch;
|
|||
|
CHAR grpfsprm[cchMaxGrpfsprm + cchMaxFsprm]; /* + for overflow */
|
|||
|
};
|
|||
|
|
|||
|
|
|||
|
struct FKPD
|
|||
|
{ /* FKP Descriptor (used for maintaining insert properties) */
|
|||
|
int brun; /* offset to next run to add */
|
|||
|
int bchFprop; /* offset to byte after last unused byte */
|
|||
|
typePN pn; /* pn of working FKP in scratch file */
|
|||
|
struct BTE (**hgbte)[]; /* pointer to bin table */
|
|||
|
int ibteMac; /* Number of bin table entries */
|
|||
|
};
|
|||
|
|
|||
|
|
|||
|
struct BTE
|
|||
|
{ /* Bin Table Entry */
|
|||
|
typeFC fcLim;
|
|||
|
typePN pn;
|
|||
|
};
|
|||
|
#define cwBTE (sizeof(struct BTE)/sizeof(int))
|
|||
|
|
|||
|
struct FND
|
|||
|
{ /* Footnote descriptor */
|
|||
|
typeCP cpRef; /* Or fcRef (cp of ftn reference) */
|
|||
|
typeCP cpFtn; /* Or fc... (first cp of text) */
|
|||
|
};
|
|||
|
|
|||
|
#define cchFND (sizeof (struct FND))
|
|||
|
#define cwFND (cchFND / sizeof (int))
|
|||
|
#define bcpRefFND 0
|
|||
|
#define bcpFtnFND (sizeof (typeCP))
|
|||
|
#define cwFNTBBase 2
|
|||
|
#define ifndMaxFile ((cbSector - cwFNTBBase * sizeof (int)) / cchFND)
|
|||
|
|
|||
|
struct FNTB
|
|||
|
{ /* Footnote table */
|
|||
|
int cfnd; /* Number of entries (sorted ascending) */
|
|||
|
int cfndMax; /* Heap space allocated */
|
|||
|
struct FND rgfnd[ifndMaxFile]; /* Size varies */
|
|||
|
};
|
|||
|
|
|||
|
|
|||
|
|
|||
|
struct FNTB **HfntbEnsure(), **HfntbGet();
|
|||
|
|
|||
|
#define HsetbGet(doc) ((**hpdocdod)[doc].hsetb)
|
|||
|
|
|||
|
struct SED
|
|||
|
{ /* Section descriptor */
|
|||
|
typeCP cp;
|
|||
|
int fn;
|
|||
|
typeFC fc;
|
|||
|
};
|
|||
|
|
|||
|
#define cchSED (sizeof (struct SED))
|
|||
|
#define cwSED (cchSED / sizeof (int))
|
|||
|
#define bcpSED 0
|
|||
|
#define cwSETBBase 2
|
|||
|
#define isedMaxFile ((cbSector - cwSETBBase * sizeof (int)) / cchSED)
|
|||
|
|
|||
|
|
|||
|
struct SETB
|
|||
|
{ /* Section table */
|
|||
|
int csed;
|
|||
|
int csedMax;
|
|||
|
struct SED rgsed[isedMaxFile]; /* Size varies */
|
|||
|
};
|
|||
|
|
|||
|
|
|||
|
struct SETB **HsetbCreate(), **HsetbEnsure();
|
|||
|
|