filters
Outline.h00001
00002
00003
00004
00005
00006
00007
00008
00009 #ifndef OUTLINE_H
00010 #define OUTLINE_H
00011
00012 #include <aconf.h>
00013
00014 #ifdef USE_GCC_PRAGMAS
00015 #pragma interface
00016 #endif
00017
00018 #include "Object.h"
00019 #include "CharTypes.h"
00020
00021 class GString;
00022 class GList;
00023 class XRef;
00024 class LinkAction;
00025
00026
00027
00028 class Outline {
00029 public:
00030
00031 Outline(Object *outlineObj, XRef *xref);
00032 ~Outline();
00033
00034 GList *getItems() { return items; }
00035
00036 private:
00037
00038 GList *items;
00039
00040 };
00041
00042
00043
00044 class OutlineItem {
00045 public:
00046
00047 OutlineItem(Dict *dict, XRef *xrefA);
00048 ~OutlineItem();
00049
00050 static GList *readItemList(Object *itemRef, XRef *xrefA);
00051
00052 void open();
00053 void close();
00054
00055 Unicode *getTitle() { return title; }
00056 int getTitleLength() { return titleLen; }
00057 LinkAction *getAction() { return action; }
00058 GBool isOpen() { return startsOpen; }
00059 GBool hasKids() { return firstRef.isRef(); }
00060 GList *getKids() { return kids; }
00061
00062 private:
00063
00064 XRef *xref;
00065 Unicode *title;
00066 int titleLen;
00067 LinkAction *action;
00068 Object firstRef;
00069 Object nextRef;
00070 GBool startsOpen;
00071 GList *kids;
00072 };
00073
00074 #endif
|