/* Directives.h */ #ifndef __DIRECTIVES__ #define __DIRECTIVES__ struct Directive { // these can not change within a text line SInt16 hlMargin; // horizontal left margin (percentage converted to pixels) SInt16 hrMargin; // horizontal right margin (percentage converted to pixels) SInt16 vlHeight; // vertical line height (percentage, 100=normal, 200=double-space) SInt16 vTop; // vertical top (in pixels) SInt16 vBottom; // vertical bottom (in pixels) SInt16 justify; // justification SInt16 justifyBlock; // block justification // SInt16 vpTop; // obsolete SInt16 vpMode; // vertical position mode SInt16 vpPosition; // top position for VP SInt16 colPalette; // color palette number SInt16 bgColor; // background color SInt16 wrapType; // text wrap algorithm SInt16 vLine; // line count for VM or VL SInt16 paletNum; // palette number (multiple palettes currently not supported) // these CAN change within a text line SInt16 fontNum; // font number (index to fonts array) SInt16 txFace; // text face SInt16 fgColor; // text color }; typedef struct Directive Directive; enum { // vpMode values vpVBottom, vpVTop, vpVMiddle, vpVLine, vpVPosition, vpVAbove, vpVUnder }; enum { // justify & justifyBlock values justLeft, justCenter, justRight, justFull }; enum { // wrapType values wrapNone = 0, wrapSmart, wrapStupid }; extern Directive dirs[31]; // directive data extern char dirNames[31][21]; // directive names char *DoDirective( Directive *dir, char *s ); void DirectivesInit( void ); void DirectivesFinal( void ); #endif /* __DIRECTIVES__ */