1 /************************************************************************/ 2 /* */ 3 /* Document Layout: The frame in which a series of paragraps and */ 4 /* table rows is to be layed out on the page. */ 5 /* */ 6 /************************************************************************/ 7 8 # ifndef DOC_STRIP_FRAME_H 9 # define DOC_STRIP_FRAME_H 10 11 # include <geo2DInteger.h> 12 13 /************************************************************************/ 14 /* */ 15 /* The frame in which a series of successive lines in a paragraph is */ 16 /* is formatted. The frame lies on one page. */ 17 /* */ 18 /* pfContentRect: The rectangle in which text lines are fitted. The */ 19 /* first line potentially has a different rectangle (x0). With a */ 20 /* negative first line indent, the first line protrudes outside */ 21 /* pfContentRect to the left. [This is what CCS2 calls the content */ 22 /* rectangle of a box. I think.] */ 23 /* pfParentRect: The rectangle determined by the parent block or table */ 24 /* column. Indents are subtracted from this rectangle. Tabs are */ 25 /* relative to its left side. */ 26 /* */ 27 /* Coordinates are absolute coordinates on the page or on the window. */ 28 /* [On the window they are shifted by the scrollbars.] */ 29 /* */ 30 /************************************************************************/ 31 32 typedef struct ParagraphFrame 33 { 34 DocumentRectangle pfParaContentRect; 35 DocumentRectangle pfCellContentRect; 36 DocumentRectangle pfCellRect; 37 38 int pfRedrawX0Twips; 39 int pfRedrawX1Twips; 40 } ParagraphFrame; 41 42 /************************************************************************/ 43 /* */ 44 /* Routine declarations. */ 45 /* */ 46 /************************************************************************/ 47 48 extern void docInitParagraphFrame( ParagraphFrame * pf ); 49 50 # endif /* DOC_STRIP_FRAME_H */ 51