1 /* AbiWord
2  * Copyright (C) 1998 AbiSource, Inc.
3  *
4  * This program is free software; you can redistribute it and/or
5  * modify it under the terms of the GNU General Public License
6  * as published by the Free Software Foundation; either version 2
7  * of the License, or (at your option) any later version.
8  *
9  * This program is distributed in the hope that it will be useful,
10  * but WITHOUT ANY WARRANTY; without even the implied warranty of
11  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
12  * GNU General Public License for more details.
13  *
14  * You should have received a copy of the GNU General Public License
15  * along with this program; if not, write to the Free Software
16  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
17  * 02110-1301 USA.
18  */
19 
20 
21 #ifndef PF_FRAG_STRUX_SECTION_H
22 #define PF_FRAG_STRUX_SECTION_H
23 
24 #include "ut_types.h"
25 #include "pf_Frag.h"
26 #include "pf_Frag_Strux.h"
27 
28 #define pf_FRAG_STRUX_SECTION_LENGTH 1
29 
30 class pt_PieceTable;
31 
32 /*!
33  pf_Frag_Strux_Section represents structure information for
34  a section in the document.
35 */
36 
37 class ABI_EXPORT pf_Frag_Strux_Section : public pf_Frag_Strux
38 {
39 public:
40 	pf_Frag_Strux_Section(pt_PieceTable * pPT,
41 						  PT_AttrPropIndex indexAP);
42 	virtual ~pf_Frag_Strux_Section();
43 
44 #ifdef PT_TEST
45 	virtual void			__dump(FILE * fp) const;
46 #endif
47 };
48 
49 
50 /*!
51  pf_Frag_Strux_SectionHdrFtr represents structure information for
52  a header/footer section in the document.
53 */
54 
55 class ABI_EXPORT pf_Frag_Strux_SectionHdrFtr : public pf_Frag_Strux
56 {
57 public:
58 	pf_Frag_Strux_SectionHdrFtr(pt_PieceTable * pPT,
59 						  PT_AttrPropIndex indexAP);
60 	virtual ~pf_Frag_Strux_SectionHdrFtr();
61 
62 #ifdef PT_TEST
63 	virtual void			__dump(FILE * fp) const;
64 #endif
65 };
66 
67 /*!
68  pf_Frag_Strux_SectionEndnote represents structure information for
69  a Endnote section in the document.
70 */
71 
72 class ABI_EXPORT pf_Frag_Strux_SectionEndnote : public pf_Frag_Strux
73 {
74 public:
75 	pf_Frag_Strux_SectionEndnote(pt_PieceTable * pPT,
76 						  PT_AttrPropIndex indexAP);
77 	virtual ~pf_Frag_Strux_SectionEndnote();
78 
79 #ifdef PT_TEST
80 	virtual void			__dump(FILE * fp) const;
81 #endif
82 };
83 
84 
85 /*!
86  pf_Frag_Strux_SectionFrames represents structure information for
87  a Frames section in the document.
88 */
89 
90 class ABI_EXPORT pf_Frag_Strux_SectionFrame : public pf_Frag_Strux
91 {
92 public:
93 	pf_Frag_Strux_SectionFrame(pt_PieceTable * pPT,
94 						  PT_AttrPropIndex indexAP);
95 	virtual ~pf_Frag_Strux_SectionFrame();
96 
97 #ifdef PT_TEST
98 	virtual void			__dump(FILE * fp) const;
99 #endif
100 };
101 
102 
103 /*!
104  pf_Frag_Strux_SectionEndFrame represents structure information for
105  a EndFrame section in the document.
106 */
107 
108 class ABI_EXPORT pf_Frag_Strux_SectionEndFrame : public pf_Frag_Strux
109 {
110 public:
111 	pf_Frag_Strux_SectionEndFrame(pt_PieceTable * pPT,
112 						  PT_AttrPropIndex indexAP);
113 	virtual ~pf_Frag_Strux_SectionEndFrame();
114 
115 #ifdef PT_TEST
116 	virtual void			__dump(FILE * fp) const;
117 #endif
118 };
119 
120 
121 /*!
122  pf_Frag_Strux_SectionTable represents structure information for
123  a table section in the document.
124 */
125 
126 class ABI_EXPORT pf_Frag_Strux_SectionTable : public pf_Frag_Strux
127 {
128 public:
129 	pf_Frag_Strux_SectionTable(pt_PieceTable * pPT,
130 						  PT_AttrPropIndex indexAP);
131 	virtual ~pf_Frag_Strux_SectionTable();
132 
133 #ifdef PT_TEST
134 	virtual void			__dump(FILE * fp) const;
135 #endif
136 };
137 
138 
139 /*!
140  pf_Frag_Strux_SectionCell represents structure information for
141  a cell section in the document.
142 */
143 
144 class ABI_EXPORT pf_Frag_Strux_SectionCell : public pf_Frag_Strux
145 {
146 public:
147 	pf_Frag_Strux_SectionCell(pt_PieceTable * pPT,
148 						  PT_AttrPropIndex indexAP);
149 	virtual ~pf_Frag_Strux_SectionCell();
150 
151 #ifdef PT_TEST
152 	virtual void			__dump(FILE * fp) const;
153 #endif
154 };
155 
156 
157 /*!
158  pf_Frag_Strux_SectionFootnote represents structure information for
159  a footnote section in the document.
160 */
161 
162 class ABI_EXPORT pf_Frag_Strux_SectionFootnote : public pf_Frag_Strux
163 {
164 public:
165 	pf_Frag_Strux_SectionFootnote(pt_PieceTable * pPT,
166 						  PT_AttrPropIndex indexAP);
167 	virtual ~pf_Frag_Strux_SectionFootnote();
168 
169 #ifdef PT_TEST
170 	virtual void			__dump(FILE * fp) const;
171 #endif
172 };
173 
174 
175 /*!
176  pf_Frag_Strux_SectionAnnotation represents structure information for
177  a Annotation section in the document.
178 */
179 
180 class ABI_EXPORT pf_Frag_Strux_SectionAnnotation : public pf_Frag_Strux
181 {
182 public:
183 	pf_Frag_Strux_SectionAnnotation(pt_PieceTable * pPT,
184 						  PT_AttrPropIndex indexAP);
185 	virtual ~pf_Frag_Strux_SectionAnnotation();
186 
187 #ifdef PT_TEST
188 	virtual void			__dump(FILE * fp) const;
189 #endif
190 };
191 
192 
193 
194 /*!
195  pf_Frag_Strux_SectionMarginnote represents structure information for
196  a header/footer section in the document.
197 */
198 
199 class ABI_EXPORT pf_Frag_Strux_SectionMarginnote : public pf_Frag_Strux
200 {
201 public:
202 	pf_Frag_Strux_SectionMarginnote(pt_PieceTable * pPT,
203 						  PT_AttrPropIndex indexAP);
204 	virtual ~pf_Frag_Strux_SectionMarginnote();
205 
206 #ifdef PT_TEST
207 	virtual void			__dump(FILE * fp) const;
208 #endif
209 };
210 
211 
212 /*!
213  pf_Frag_Strux_SectionEndTable represents structure information for
214  the end of a Table section in the document.
215 */
216 
217 class ABI_EXPORT pf_Frag_Strux_SectionEndTable : public pf_Frag_Strux
218 {
219 public:
220 	pf_Frag_Strux_SectionEndTable(pt_PieceTable * pPT,
221 						  PT_AttrPropIndex indexAP);
222 	virtual ~pf_Frag_Strux_SectionEndTable();
223 
224 #ifdef PT_TEST
225 	virtual void			__dump(FILE * fp) const;
226 #endif
227 };
228 
229 
230 /*!
231  pf_Frag_Strux_SectionEndCell represents structure information for
232  the end of a Cell section in the document.
233 */
234 
235 class ABI_EXPORT pf_Frag_Strux_SectionEndCell : public pf_Frag_Strux
236 {
237 public:
238 	pf_Frag_Strux_SectionEndCell(pt_PieceTable * pPT,
239 						  PT_AttrPropIndex indexAP);
240 	virtual ~pf_Frag_Strux_SectionEndCell();
241 
242 #ifdef PT_TEST
243 	virtual void			__dump(FILE * fp) const;
244 #endif
245 };
246 
247 
248 /*!
249  pf_Frag_Strux_SectionEndFootnote represents structure information for
250  the end of a Footnote section in the document.
251 */
252 
253 class ABI_EXPORT pf_Frag_Strux_SectionEndFootnote : public pf_Frag_Strux
254 {
255 public:
256 	pf_Frag_Strux_SectionEndFootnote(pt_PieceTable * pPT,
257 						  PT_AttrPropIndex indexAP);
258 	virtual ~pf_Frag_Strux_SectionEndFootnote();
259 
260 #ifdef PT_TEST
261 	virtual void			__dump(FILE * fp) const;
262 #endif
263 };
264 
265 
266 /*!
267  pf_Frag_Strux_SectionEndAnnotation represents structure information for
268  the end of a Annotation section in the document.
269 */
270 
271 class ABI_EXPORT pf_Frag_Strux_SectionEndAnnotation : public pf_Frag_Strux
272 {
273 public:
274 	pf_Frag_Strux_SectionEndAnnotation(pt_PieceTable * pPT,
275 						  PT_AttrPropIndex indexAP);
276 	virtual ~pf_Frag_Strux_SectionEndAnnotation();
277 
278 #ifdef PT_TEST
279 	virtual void			__dump(FILE * fp) const;
280 #endif
281 };
282 
283 
284 
285 
286 /*!
287  pf_Frag_Strux_SectionEndMarginnote represents structure information for
288  the end of a Table section in the document.
289 */
290 
291 class ABI_EXPORT pf_Frag_Strux_SectionEndMarginnote : public pf_Frag_Strux
292 {
293 public:
294 	pf_Frag_Strux_SectionEndMarginnote(pt_PieceTable * pPT,
295 						  PT_AttrPropIndex indexAP);
296 	virtual ~pf_Frag_Strux_SectionEndMarginnote();
297 
298 #ifdef PT_TEST
299 	virtual void			__dump(FILE * fp) const;
300 #endif
301 };
302 
303 /*!
304  pf_Frag_Strux_SectionEndEndnote represents structure information for
305  the end of a Endnote section in the document.
306 */
307 
308 class ABI_EXPORT pf_Frag_Strux_SectionEndEndnote : public pf_Frag_Strux
309 {
310 public:
311 	pf_Frag_Strux_SectionEndEndnote(pt_PieceTable * pPT,
312 						  PT_AttrPropIndex indexAP);
313 	virtual ~pf_Frag_Strux_SectionEndEndnote();
314 
315 #ifdef PT_TEST
316 	virtual void			__dump(FILE * fp) const;
317 #endif
318 };
319 
320 
321 /*!
322  pf_Frag_Strux_SectionTOC represents structure information for
323  a Table of Conents section in the document.
324 */
325 
326 class ABI_EXPORT pf_Frag_Strux_SectionTOC : public pf_Frag_Strux
327 {
328 public:
329 	pf_Frag_Strux_SectionTOC(pt_PieceTable * pPT,
330 						  PT_AttrPropIndex indexAP);
331 	virtual ~pf_Frag_Strux_SectionTOC();
332 
333 #ifdef PT_TEST
334 	virtual void			__dump(FILE * fp) const;
335 #endif
336 };
337 
338 
339 /*!
340  pf_Frag_Strux_SectionEndTOC represents structure information for
341  the end of a Table of Contents section in the document.
342 */
343 
344 class ABI_EXPORT pf_Frag_Strux_SectionEndTOC : public pf_Frag_Strux
345 {
346 public:
347 	pf_Frag_Strux_SectionEndTOC(pt_PieceTable * pPT,
348 						  PT_AttrPropIndex indexAP);
349 	virtual ~pf_Frag_Strux_SectionEndTOC();
350 
351 #ifdef PT_TEST
352 	virtual void			__dump(FILE * fp) const;
353 #endif
354 };
355 
356 #endif /* PF_FRAG_STRUX_SECTION_H */
357