summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
Diffstat (limited to 'include')
-rw-r--r--include/vcl/filter/PDFiumLibrary.hxx44
1 files changed, 13 insertions, 31 deletions
diff --git a/include/vcl/filter/PDFiumLibrary.hxx b/include/vcl/filter/PDFiumLibrary.hxx
index 1c60e52d5f09..7bf14eb910dc 100644
--- a/include/vcl/filter/PDFiumLibrary.hxx
+++ b/include/vcl/filter/PDFiumLibrary.hxx
@@ -177,48 +177,30 @@ public:
virtual basegfx::B2DRectangle getCharBox(int nIndex, double fPageHeight) = 0;
};
-class VCL_DLLPUBLIC PDFiumPage final
+class VCL_DLLPUBLIC PDFiumPage
{
-private:
- FPDF_PAGE mpPage;
-
-private:
- PDFiumPage(const PDFiumPage&) = delete;
- PDFiumPage& operator=(const PDFiumPage&) = delete;
-
public:
- PDFiumPage(FPDF_PAGE pPage)
- : mpPage(pPage)
- {
- }
+ virtual ~PDFiumPage() = default;
- ~PDFiumPage()
- {
- if (mpPage)
- FPDF_ClosePage(mpPage);
- }
-
- FPDF_PAGE getPointer() { return mpPage; }
-
- int getObjectCount();
- std::unique_ptr<PDFiumPageObject> getObject(int nIndex);
+ virtual int getObjectCount() = 0;
+ virtual std::unique_ptr<PDFiumPageObject> getObject(int nIndex) = 0;
- int getAnnotationCount();
- int getAnnotationIndex(std::unique_ptr<PDFiumAnnotation> const& rAnnotation);
+ virtual int getAnnotationCount() = 0;
+ virtual int getAnnotationIndex(std::unique_ptr<PDFiumAnnotation> const& rAnnotation) = 0;
- std::unique_ptr<PDFiumAnnotation> getAnnotation(int nIndex);
+ virtual std::unique_ptr<PDFiumAnnotation> getAnnotation(int nIndex) = 0;
- std::unique_ptr<PDFiumTextPage> getTextPage();
+ virtual std::unique_ptr<PDFiumTextPage> getTextPage() = 0;
/// Get bitmap checksum of the page, without annotations/commenting.
- BitmapChecksum getChecksum(int nMDPPerm);
+ virtual BitmapChecksum getChecksum(int nMDPPerm) = 0;
- double getWidth();
- double getHeight();
+ virtual double getWidth() = 0;
+ virtual double getHeight() = 0;
- bool hasTransparency();
+ virtual bool hasTransparency() = 0;
- bool hasLinks();
+ virtual bool hasLinks() = 0;
};
/// Represents one digital signature, as exposed by PDFium.