source: trunk/poppler/mypoppler/poppler/PageLabelInfo.h @ 461

Last change on this file since 461 was 277, checked in by rbri, 12 years ago

PDF plugin: Poppler library updated to version 0.12.3

File size: 1.2 KB
Line 
1//========================================================================
2//
3// This file is under the GPLv2 or later license
4//
5// Copyright (C) 2005-2006 Kristian HÞgsberg <krh@redhat.com>
6// Copyright (C) 2005 Albert Astals Cid <aacid@kde.org>
7//
8// To see a description of the changes please see the Changelog file that
9// came with your tarball or type make ChangeLog if you are building from git
10//
11//========================================================================
12
13#include <limits.h>
14#include <stdlib.h>
15#include <stdio.h>
16#include <ctype.h>
17#include <assert.h>
18
19#include "goo/gtypes.h"
20#include "goo/GooList.h"
21#include "goo/GooString.h"
22#include "Object.h"
23
24class PageLabelInfo {
25public:
26  PageLabelInfo(Object *tree, int numPages);
27  ~PageLabelInfo();
28  GBool labelToIndex(GooString *label, int *index);
29  GBool indexToLabel(int index, GooString *label);
30
31private:
32  void parse(Object *tree);
33
34private:
35  struct Interval {
36    Interval(Object *dict, int baseA);
37    ~Interval();
38    GooString *prefix;
39    enum NumberStyle {
40      None,
41      Arabic,
42      LowercaseRoman,
43      UppercaseRoman,
44      UppercaseLatin,
45      LowercaseLatin
46    } style;
47    int first, base, length;
48  };
49
50  GooList intervals;
51};
Note: See TracBrowser for help on using the repository browser.