/* Copyright (c) Xerox Corporation 1993. All rights reserved. */
/* tiogatxt.ch -- Text subclass that can read Tioga files.
David Nichols
December, 1990 */
struct tiogatxt←Run {
long looks; /* bitmap of looks */
long start; /* start position */
long len; /* length */
};
struct tiogatxt←Env {
struct environment *env; /* current environment */
struct environment *env2; /* wrapped around env, maybe */
long pos; /* where to start it */
int comment; /* is this node a comment? */
};
#define tiogatxt←NUMLOOKS 26
class tiogatxt: text {
overrides:
SetAttributes(struct attributes *atts);
Read(FILE *file, long id) returns long;
Write(FILE *file, long writeID, int level) returns long;
ViewName() returns char *;
data:
char *reader; /* saved tread←Reader */
struct tiogatxt←Run *runs; /* saved runs during reading */
int nRuns; /* number of them */
int nAllocedRuns; /* space for them */
struct tiogatxt←Env *envs; /* stacked envs during reading */
int nEnvs; /* number of them */
int nAllocedEnvs; /* space for them */
struct style *topStyle; /* special top-level style */
struct style *lookTable[tiogatxt←NUMLOOKS]; /* cached looks for reading */
};