Source code of Windows XP (NT5)
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
/************************************************************/ /* Windows Write, Copyright 1985-1992 Microsoft Corporation */ /************************************************************/
/* propdefs.h - MW defsfor char/para properties */
#define hpsNegMin 128
/* NOTE - "hpsNormal" is used for incremental encoding/decoding of chps in doc
files, hpsDefault is the size the guy starts typing into a new doc with */ #define hpsNormal 24
#ifdef KOREA
#define hpsDefault 24
#else
#ifdef JAPAN
#define hpsDefault 24 //T-HIROYN Win3.1
#else
#define hpsDefault 20
#endif
#endif
struct TBD /* Tab Descriptor */ { unsigned dxa; /* distance from left margin of tab stop */ unsigned char jc : 3; /* justification code */ unsigned char tlc : 3; /* leader dot code */ unsigned char opcode : 2; /* operation code for Format Tabs */ CHAR chAlign; /* ASCII code of char to align on
if jcTab=3, or 0 to align on '.' */ };
#define cchTBD (sizeof (struct TBD))
#define cwTBD (sizeof (struct TBD) / sizeof (int))
#define itbdMax 13
#define itbdMaxWord 20
#define cchMaxNum 10
struct CHP /* Character properties */ { unsigned fStyled : 1; /* BYTE 0 */ unsigned stc : 7; /* style */ unsigned fBold : 1; /* BYTE 1 */ unsigned fItalic : 1; unsigned ftc : 6; /* Font code */ unsigned hps : 8; /* Size in half pts */ /* BYTE 2 */ unsigned fUline : 1; /* BYTE 3 */ unsigned fStrike : 1; unsigned fDline: 1; unsigned fOverset : 1; unsigned csm : 2; /* Case modifier */ unsigned fSpecial : 1; unsigned : 1; unsigned ftcXtra : 3; /* BYTE 4 */ unsigned fOutline : 1; unsigned fShadow : 1; unsigned : 3; unsigned hpsPos : 8; /* BYTE 5 */ unsigned fFixedPitch : 1; /* used internally only */ unsigned psWidth : 7; unsigned chLeader : 8; unsigned ichRun : 8; unsigned cchRun : 8; };
#define cchCHP (sizeof (struct CHP))
#define cwCHP (cchCHP / sizeof (int))
#define cchCHPUsed (cchCHP - 3)
#define csmNormal 0
#define csmUpper 1
#define csmSmallCaps 3
/* Justification codes: must agree with menu.mod */ #define jcLeft 0
#define jcCenter 1
#define jcRight 2
#define jcBoth 3
#define jcTabMin 4
#define jcTabLeft 4
#define jcTabCenter 5
#define jcTabRight 6
#define jcTabDecimal 7
/* nice, safe invalid jc value */ #define jcNil -1
/* Tab leader codes: must agree with menu.mod */ #define tlcWhite 0
#define tlcDot 1
#define tlcHyphen 2
#define tlcUline 3
struct PAP /* Paragraph properties */ { unsigned fStyled : 1; /* BYTE 0 */ unsigned stc : 7; unsigned jc : 2; /* BYTE 1 */ unsigned fKeep : 1; unsigned fKeepFollow : 1; unsigned : 4; unsigned stcNormChp : 7; /* BYTE 2 */ unsigned : 9; /* BYTE 3 */ unsigned dxaRight; /* BYTE 4-5 */ unsigned dxaLeft; /* BYTE 6-7 */ unsigned dxaLeft1; /* BYTE 8-9 */ unsigned dyaLine; /* 10-11 */ unsigned dyaBefore; /* 12-13 */ unsigned dyaAfter; /* 14-15 */ unsigned rhc : 4; /* Running hd code */ unsigned fGraphics : 1; /* Graphics bit */ unsigned wUnused1 : 11; int wUnused2; int wUnused3; struct TBD rgtbd[itbdMaxWord]; };
#define cchPAP (sizeof (struct PAP))
#define cwPAP (cchPAP / sizeof (int))
#define cwPAPBase (cwPAP - cwTBD * itbdMaxWord)
struct SEP { /* Section properties */ unsigned fStyled : 1; /* BYTE 0 */ unsigned stc : 7; unsigned bkc : 3; /* Break code */ /* BYTE 1 */ unsigned nfcPgn : 3; /* Pgn format code */ unsigned :2; unsigned yaMac; /* Page height */ /* BYTE 2-3 */ unsigned xaMac; /* Page width */ /* BYTE 4-5 */ unsigned pgnStart; /* Starting pgn */ /* BYTE 6-7 */ unsigned yaTop; /* Start of text */ /* BYTE 8-9 */ unsigned dyaText; /* Height of text */ /* 10-11 */ unsigned xaLeft; /* Left text margin */ /* 12-13 */ unsigned dxaText; /* Width of text */ /* 14-15 */ unsigned rhc : 4; /* *** RESERVED *** */ /* 16 */ /* (Must be same as PAP) */ unsigned : 2; unsigned fAutoPgn : 1; /* Print pgns without hdr */ unsigned fEndFtns : 1; /* Footnotes at end of doc */ unsigned cColumns : 8; /* # of columns */ /* BYTE 17 */ unsigned yaRH1; /* Pos of top hdr */ /* 18-19 */ unsigned yaRH2; /* Pos of bottom hdr */ /* 20-21 */ unsigned dxaColumns; /* Intercolumn gap */ /* 22-23 */ unsigned dxaGutter; /* Gutter width */ /* 24-25 */ unsigned yaPgn; /* Y pos of page nos */ /* 26-27 */ unsigned xaPgn; /* X pos of page nos */ /* 28-29 */ CHAR rgbJunk[cchPAP - 30]; /* Pad to cchPAP */ };
#define cchSEP (sizeof (struct SEP))
#define cwSEP (cchSEP / sizeof (int))
struct PROP { /* A CHP, PAP, or SEP. */ unsigned char fStyled : 1; unsigned char stc : 7; CHAR rgb[cchPAP - 1]; /* Variable size */ };
#define cchPROP (sizeof (struct PROP))
typedef struct { /* tri-state value for character/paragraph properties */ unsigned wTsv; /* 16 bit value */ unsigned char fGray; }TSV;
#define cchTSV (sizeof (TSV))
#define itsvMax 6
#define itsvchMax 6
#define itsvparaMax 5
/* character index values */ #define itsvBold 0
#define itsvItalic 1
#define itsvUline 2
#define itsvPosition 3 /* 0 = normal; >0 = superscript; <0 = subscript */
#define itsvFfn 4 /* font name and family */
#define itsvSize 5 /* font size */
/* paragraph index values */ #define itsvJust 0 /* justification (left, center, right, both) */
#define itsvSpacing 1
#define itsvLIndent 2 /* left indent */
#define itsvFIndent 3 /* first line indent */
#define itsvRIndent 4 /* right indent */
#define cyaInch czaInch
#define cxaInch czaInch
#define cyaTl czaLine
#define dxaNest 720
extern int cxaTc;
#define yaNil 0xffff
#define xaNil 0xffff
#define ypNil 0xffff
#define xpNil 0xffff
#define dyaMinUseful cyaInch
#define dxaMinUseful (cxaInch / 2)
#define cColumnsMax (10)
#define bkcLine 0
#define bkcColumn 1
#define bkcPage 2
#define bkcRecto 3
#define bkcVerso 4
#define nfcArabic 0
#define nfcUCRoman 1
#define nfcLCRoman 2
#define nfcUCLetter 3
#define nfcLCLetter 4
#define pgnNil (-1)
struct PROP *PpropXlate();
/* Running head codes */ #define RHC_fBottom 1
#define RHC_fOdd 2
#define RHC_fEven 4
#define RHC_fFirst 8
#define rhcDefault (RHC_fOdd + RHC_fEven)
|