#include "Link.h"
#include "Catalog.h"
#include "Page.h"
+#include "Annot.h"
class GString;
class BaseStream;
Object *getStructTreeRoot() { return catalog->getStructTreeRoot(); }
// Display a page.
- void displayPage(OutputDev *out, int page, double zoom,
- int rotate, GBool doLinks,
+ void displayPage(OutputDev *out, int page, double hDPI, double vDPI,
+ int rotate, GBool crop, GBool doLinks,
GBool (*abortCheckCbk)(void *data) = NULL,
- void *abortCheckCbkData = NULL);
+ void *abortCheckCbkData = NULL,
+ GBool (*annotDisplayDecideCbk)(Annot *annot, void *user_data) = NULL,
+ void *annotDisplayDecideCbkData = NULL);
// Display a range of pages.
void displayPages(OutputDev *out, int firstPage, int lastPage,
- int zoom, int rotate, GBool doLinks,
+ double hDPI, double vDPI, int rotate,
+ GBool crop, GBool doLinks,
GBool (*abortCheckCbk)(void *data) = NULL,
- void *abortCheckCbkData = NULL);
+ void *abortCheckCbkData = NULL,
+ GBool (*annotDisplayDecideCbk)(Annot *annot, void *user_data) = NULL,
+ void *annotDisplayDecideCbkData = NULL);
// Display part of a page.
- void displayPageSlice(OutputDev *out, int page, double zoom,
- int rotate, int sliceX, int sliceY,
- int sliceW, int sliceH,
+ void displayPageSlice(OutputDev *out, int page,
+ double hDPI, double vDPI,
+ int rotate, GBool crop,
+ int sliceX, int sliceY, int sliceW, int sliceH,
GBool (*abortCheckCbk)(void *data) = NULL,
- void *abortCheckCbkData = NULL);
+ void *abortCheckCbkData = NULL,
+ GBool (*annotDisplayDecideCbk)(Annot *annot, void *user_data) = NULL,
+ void *annotDisplayDecideCbkData = NULL);
// Find a page, given its object ID. Returns page number, or 0 if
// not found.
// If point <x>,<y> is in a link, return the associated action;
// else return NULL.
- LinkAction *findLink(double x, double y) { return links->find(x, y); }
+ LinkAction *findLink(double x, double y)
+ { return links ? links->find(x, y) : (LinkAction *)NULL; }
// Return true if <x>,<y> is in a link.
GBool onLink(double x, double y) { return links->onLink(x, y); }
// Save this file with another name.
GBool saveAs(GString *name);
-
private:
GBool setup(GString *ownerPassword, GString *userPassword);
Outline *outline;
#endif
-
GBool ok;
int errCode;
};