1 /************************************************************************/
2 /*									*/
3 /*  A list of fields.							*/
4 /*									*/
5 /************************************************************************/
6 
7 #   ifndef DOC_DOCUMENT_FIELD_LIST_H
8 #   define DOC_DOCUMENT_FIELD_LIST_H
9 
10 #   include	<utilPagedList.h>
11 
12 typedef struct DocumentFieldList
13     {
14     PagedList		dflPagedList;
15     } DocumentFieldList;
16 
17 struct DocumentField;
18 struct SelectionScope;
19 struct EditPosition;
20 struct MemoryBuffer;
21 
22 extern struct DocumentField * docGetFieldByNumber(
23 					const DocumentFieldList *	dfl,
24 					int				n );
25 
26 extern void docDeleteFieldFromList(	DocumentFieldList *		dfl,
27 					struct DocumentField *		df );
28 
29 extern int docGetFieldKindByNumber(	const DocumentFieldList *	dfl,
30 					int				n );
31 
32 extern void docCleanFieldList(		DocumentFieldList *	dfl );
33 extern void docInitFieldList(		DocumentFieldList *	dfl );
34 
35 extern int docSetPageOfField(		DocumentFieldList *	dfl,
36 					int			n,
37 					int			page );
38 
39 extern struct DocumentField * docClaimField(	DocumentFieldList *	dfl );
40 
41 extern struct DocumentField *	docClaimFieldCopy(
42 				DocumentFieldList *		dfl,
43 				const struct DocumentField *	dfFrom,
44 				const struct SelectionScope *	ss,
45 				const struct EditPosition *	epStart );
46 
47 extern int docFindBookmarkField( struct DocumentField **	pDf,
48 				const DocumentFieldList *	dfl,
49 				const struct MemoryBuffer *	markName );
50 
51 extern int docMakeBookmarkList(	char ***			pBookmarks,
52 				int *				pBookmarkCount,
53 				int				includeTocMarks,
54 				const DocumentFieldList *	dfl );
55 
56 #   endif /*  DOC_DOCUMENT_FIELD_LIST_H  */
57