1 /************************************************************************/
2 /*									*/
3 /*  Bookkeeping for BOOKMARK fields.					*/
4 /*									*/
5 /************************************************************************/
6 
7 #   ifndef DOC_BOOKMARK_FIELD_H
8 #   define DOC_BOOKMARK_FIELD_H
9 
10 #   define	DOCmaxBOOKMARK	40
11 
12 #   include	<utilMemoryBuffer.h>
13 
14 struct DocumentField;
15 struct MemoryBuffer;
16 struct FieldInstructions;
17 
18 /************************************************************************/
19 /*									*/
20 /*  Administrative routines.						*/
21 /*									*/
22 /************************************************************************/
23 
24 extern int docFieldGetBookmark(	const MemoryBuffer **		markName,
25 				const struct DocumentField *	df );
26 
27 extern int docIsTocBookmark(	long *				pId,
28 				const struct DocumentField *	df );
29 
30 extern int docFieldMatchesBookmark(	const struct DocumentField *	df,
31 					const MemoryBuffer *	markName );
32 
33 extern int docSetBookmarkField(		struct FieldInstructions *	fi,
34 					const struct MemoryBuffer *	mb );
35 
36 extern int docAdaptBookmarkName(	struct MemoryBuffer *	markName );
37 
38 extern int docBookmarkFromText(		struct MemoryBuffer *	markName,
39 					const char *		text,
40 					int			len );
41 
42 extern int docBookmarkSuffixIndex(
43 				const struct MemoryBuffer *	markName,
44 				int				wanted );
45 
46 #   endif /*  DOC_BOOKMARK_FIELD_H  */
47