disable the unrecognized nls flag
[AROS-Contrib.git] / arospdf / xpdf / Outline.h
blobe955e3eff6bb6347d737434d1f7a2d6b5306f619
1 //========================================================================
2 //
3 // Outline.h
4 //
5 // Copyright 2002-2003 Glyph & Cog, LLC
6 //
7 //========================================================================
9 #ifndef OUTLINE_H
10 #define OUTLINE_H
12 #include <aconf.h>
14 #ifdef USE_GCC_PRAGMAS
15 #pragma interface
16 #endif
18 #include "Object.h"
19 #include "CharTypes.h"
21 class GString;
22 class GList;
23 class XRef;
24 class LinkAction;
26 //------------------------------------------------------------------------
28 class Outline {
29 public:
31 Outline(xObject *outlineObj, XRef *xref);
32 ~Outline();
34 GList *getItems() { return items; }
36 private:
38 GList *items; // NULL if document has no outline
39 // [OutlineItem]
42 //------------------------------------------------------------------------
44 class OutlineItem {
45 public:
47 OutlineItem(Dict *dict, XRef *xrefA);
48 ~OutlineItem();
50 static GList *readItemList(xObject *firstItemRef, xObject *lastItemRef,
51 XRef *xrefA);
53 void open();
54 void close();
56 Unicode *getTitle() { return title; }
57 int getTitleLength() { return titleLen; }
58 LinkAction *getAction() { return action; }
59 GBool isOpen() { return startsOpen; }
60 GBool hasKids() { return firstRef.isRef(); }
61 GList *getKids() { return kids; }
63 private:
65 XRef *xref;
66 Unicode *title;
67 int titleLen;
68 LinkAction *action;
69 xObject firstRef;
70 xObject lastRef;
71 xObject nextRef;
72 GBool startsOpen;
73 GList *kids; // NULL unless this item is open [OutlineItem]
76 #endif