X-Git-Url: https://www.fi.muni.cz/~kas/git//home/kas/public_html/git/?a=blobdiff_plain;f=pdf%2Fxpdf%2FPDFDoc.h;h=99832f81b6f688150c4d7b89e52341c8ea0ad4f3;hb=884f739665dc56e66f51e104350f2affd33f2dd8;hp=c12531e9387c76bf7c89c9a8e146cb1e9e5500e8;hpb=2a393c134fe3fe8eb85bf818cb7ad6ae4396322a;p=evince.git diff --git a/pdf/xpdf/PDFDoc.h b/pdf/xpdf/PDFDoc.h index c12531e9..99832f81 100644 --- a/pdf/xpdf/PDFDoc.h +++ b/pdf/xpdf/PDFDoc.h @@ -2,14 +2,16 @@ // // PDFDoc.h // -// Copyright 1996-2002 Glyph & Cog, LLC +// Copyright 1996-2003 Glyph & Cog, LLC // //======================================================================== #ifndef PDFDOC_H #define PDFDOC_H -#ifdef __GNUC__ +#include + +#ifdef USE_GCC_PRAGMAS #pragma interface #endif @@ -25,6 +27,7 @@ class OutputDev; class Links; class LinkAction; class LinkDest; +class Outline; //------------------------------------------------------------------------ // PDFDoc @@ -34,9 +37,9 @@ class PDFDoc { public: PDFDoc(GString *fileNameA, GString *ownerPassword = NULL, - GString *userPassword = NULL, GBool printCommandsA = gFalse); + GString *userPassword = NULL); PDFDoc(BaseStream *strA, GString *ownerPassword = NULL, - GString *userPassword = NULL, GBool printCommandsA = gFalse); + GString *userPassword = NULL); ~PDFDoc(); // Was PDF document successfully opened? @@ -77,11 +80,22 @@ public: // Display a page. void displayPage(OutputDev *out, int page, double zoom, - int rotate, GBool doLinks); + int rotate, GBool doLinks, + GBool (*abortCheckCbk)(void *data) = NULL, + void *abortCheckCbkData = NULL); // Display a range of pages. void displayPages(OutputDev *out, int firstPage, int lastPage, - int zoom, int rotate, GBool doLinks); + int zoom, int rotate, GBool doLinks, + GBool (*abortCheckCbk)(void *data) = NULL, + void *abortCheckCbkData = NULL); + + // Display part of a page. + void displayPageSlice(OutputDev *out, int page, double zoom, + int rotate, int sliceX, int sliceY, + int sliceW, int sliceH, + GBool (*abortCheckCbk)(void *data) = NULL, + void *abortCheckCbkData = NULL); // Find a page, given its object ID. Returns page number, or 0 if // not found. @@ -99,6 +113,11 @@ public: LinkDest *findDest(GString *name) { return catalog->findDest(name); } +#ifndef DISABLE_OUTLINE + // Return the outline object. + Outline *getOutline() { return outline; } +#endif + // Is the file encrypted? GBool isEncrypted() { return xref->isEncrypted(); } @@ -117,6 +136,7 @@ public: // Return the document's Info dictionary (if any). Object *getDocInfo(Object *obj) { return xref->getDocInfo(obj); } + Object *getDocInfoNF(Object *obj) { return xref->getDocInfoNF(obj); } // Return the PDF version specified by the file. double getPDFVersion() { return pdfVersion; } @@ -124,6 +144,7 @@ public: // Save this file with another name. GBool saveAs(GString *name); + private: GBool setup(GString *ownerPassword, GString *userPassword); @@ -137,7 +158,10 @@ private: XRef *xref; Catalog *catalog; Links *links; - GBool printCommands; +#ifndef DISABLE_OUTLINE + Outline *outline; +#endif + GBool ok; int errCode;