1 /************************************************************************/
2 /*									*/
3 /*  The various kinds of trees in a document.				*/
4 /*									*/
5 /************************************************************************/
6 
7 #   ifndef	DOC_TREE_TYPE_H
8 #   define	DOC_TREE_TYPE_H
9 
10 typedef enum TreeType
11     {
12     DOCinUNKNOWN= 0,
13 
14     DOCinBODY,
15 
16     /*  As of Word 11, the right (odd) header is used without facing pages.
17     DOCinSECT_HEADER, */
18     DOCinFIRST_HEADER,
19     DOCinLEFT_HEADER,
20     DOCinRIGHT_HEADER,
21 
22     /*  As of Word 11, the right (odd) footer is used without facing pages.
23     DOCinSECT_FOOTER, */
24     DOCinFIRST_FOOTER,
25     DOCinLEFT_FOOTER,
26     DOCinRIGHT_FOOTER,
27 
28     DOCinFOOTNOTE,
29     DOCinENDNOTE,
30     DOCinANNOTATION,
31 
32     DOCinFTNSEP,
33     DOCinFTNSEPC,
34     DOCinFTNCN,
35 
36     DOCinAFTNSEP,
37     DOCinAFTNSEPC,
38     DOCinAFTNCN,
39 
40     DOCinSHPTXT,
41 
42     DOCin_COUNT
43     } TreeType;
44 
45 extern const int DOC_HeaderFooterTypes[];
46 extern const int DOC_HeaderFooterTypeCount;
47 
48 # define docIsHeaderType( t )	( (t) == DOCinFIRST_HEADER || \
49 				  (t) == DOCinLEFT_HEADER || \
50 				  (t) == DOCinRIGHT_HEADER )
51 
52 # define docIsFooterType( t )	( (t) == DOCinFIRST_FOOTER || \
53 				  (t) == DOCinLEFT_FOOTER || \
54 				  (t) == DOCinRIGHT_FOOTER )
55 
56 # define docIsSeparatorType( t )( (t) == DOCinFTNSEP || \
57 				  (t) == DOCinFTNSEPC || \
58 				  (t) == DOCinFTNCN || \
59 				  (t) == DOCinAFTNSEP || \
60 				  (t) == DOCinAFTNSEPC || \
61 				  (t) == DOCinAFTNCN )
62 
63 # define docTreeInColumnType( t ) \
64 		    ( (t) == DOCinBODY		|| \
65 		      (t) == DOCinFOOTNOTE	|| \
66 		      (t) == DOCinENDNOTE	|| \
67 		      docIsSeparatorType( t )	)
68 
69 /************************************************************************/
70 /*									*/
71 /*  Routine declarations.						*/
72 /*									*/
73 /************************************************************************/
74 
75 #   endif
76