diff options
author | dsinclair <dsinclair@chromium.org> | 2016-10-04 14:02:47 -0700 |
---|---|---|
committer | Commit bot <commit-bot@chromium.org> | 2016-10-04 14:02:47 -0700 |
commit | 4d29e78fc80285d222f2bad916354e3db970d0cc (patch) | |
tree | 09b66b68a4a29f50a9c20ef079148b920ef29ff5 /fpdfsdk/fpdfxfa/cpdfxfa_page.h | |
parent | 98151cab3d24c021597d1fb075437675a3db7e12 (diff) | |
download | pdfium-4d29e78fc80285d222f2bad916354e3db970d0cc.tar.xz |
Rename fpdfsdk/fpdfxfa files to match contentschromium/2881
Each of these files contains a single class, rename the file to match the
internal class name.
Review-Url: https://codereview.chromium.org/2385423004
Diffstat (limited to 'fpdfsdk/fpdfxfa/cpdfxfa_page.h')
-rw-r--r-- | fpdfsdk/fpdfxfa/cpdfxfa_page.h | 85 |
1 files changed, 85 insertions, 0 deletions
diff --git a/fpdfsdk/fpdfxfa/cpdfxfa_page.h b/fpdfsdk/fpdfxfa/cpdfxfa_page.h new file mode 100644 index 0000000000..80a183f807 --- /dev/null +++ b/fpdfsdk/fpdfxfa/cpdfxfa_page.h @@ -0,0 +1,85 @@ +// Copyright 2014 PDFium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com + +#ifndef FPDFSDK_FPDFXFA_CPDFXFA_PAGE_H_ +#define FPDFSDK_FPDFXFA_CPDFXFA_PAGE_H_ + +#include <memory> + +#include "core/fxcrt/fx_system.h" + +class CFX_Matrix; +class CPDFXFA_Document; +class CPDF_Dictionary; +class CPDF_Page; +class CXFA_FFPageView; + +class CPDFXFA_Page { + public: + CPDFXFA_Page(CPDFXFA_Document* pDoc, int page_index); + + void Retain() { m_iRef++; } + void Release() { + if (--m_iRef <= 0) + delete this; + } + + FX_BOOL LoadPage(); + FX_BOOL LoadPDFPage(CPDF_Dictionary* pageDict); + CPDFXFA_Document* GetDocument() const { return m_pDocument; } + int GetPageIndex() const { return m_iPageIndex; } + CPDF_Page* GetPDFPage() const { return m_pPDFPage.get(); } + CXFA_FFPageView* GetXFAPageView() const { return m_pXFAPageView; } + + void SetXFAPageView(CXFA_FFPageView* pPageView) { + m_pXFAPageView = pPageView; + } + + FX_FLOAT GetPageWidth() const; + FX_FLOAT GetPageHeight() const; + + void DeviceToPage(int start_x, + int start_y, + int size_x, + int size_y, + int rotate, + int device_x, + int device_y, + double* page_x, + double* page_y); + void PageToDevice(int start_x, + int start_y, + int size_x, + int size_y, + int rotate, + double page_x, + double page_y, + int* device_x, + int* device_y); + + void GetDisplayMatrix(CFX_Matrix& matrix, + int xPos, + int yPos, + int xSize, + int ySize, + int iRotate) const; + + protected: + // Refcounted class. + ~CPDFXFA_Page(); + + FX_BOOL LoadPDFPage(); + FX_BOOL LoadXFAPageView(); + + private: + std::unique_ptr<CPDF_Page> m_pPDFPage; + CXFA_FFPageView* m_pXFAPageView; + CPDFXFA_Document* const m_pDocument; + const int m_iPageIndex; + int m_iRef; +}; + +#endif // FPDFSDK_FPDFXFA_CPDFXFA_PAGE_H_ |