summaryrefslogtreecommitdiff
path: root/fpdfsdk/include/fsdk_mgr.h
diff options
context:
space:
mode:
authorTom Sepez <tsepez@chromium.org>2015-11-25 16:05:49 -0800
committerTom Sepez <tsepez@chromium.org>2015-11-25 16:05:49 -0800
commit51da093564cdfd32a6ac02ad75e981787a0f1b35 (patch)
tree9885c9445759de43e45db33a975b79de45b8dd8a /fpdfsdk/include/fsdk_mgr.h
parent43dd873cb0e92ca777d3ed9d905bc7955556220b (diff)
downloadpdfium-51da093564cdfd32a6ac02ad75e981787a0f1b35.tar.xz
Inflict PDF_ENABLE_XFA ifdefs on XFA fpdfsdk/
R=thestig@chromium.org Review URL: https://codereview.chromium.org/1477583002 .
Diffstat (limited to 'fpdfsdk/include/fsdk_mgr.h')
-rw-r--r--fpdfsdk/include/fsdk_mgr.h38
1 files changed, 38 insertions, 0 deletions
diff --git a/fpdfsdk/include/fsdk_mgr.h b/fpdfsdk/include/fsdk_mgr.h
index 3fc40ba085..4b217f1ad3 100644
--- a/fpdfsdk/include/fsdk_mgr.h
+++ b/fpdfsdk/include/fsdk_mgr.h
@@ -10,8 +10,10 @@
#include <map>
#include "core/include/fpdftext/fpdf_text.h"
+#ifdef PDF_ENABLE_XFA
#include "fpdfxfa/fpdfxfa_doc.h"
#include "fpdfxfa/fpdfxfa_page.h"
+#endif
#include "fsdk_actionhandler.h"
#include "fsdk_annothandler.h"
#include "fsdk_baseannot.h"
@@ -38,12 +40,14 @@ class CPDFDoc_Environment final {
CPDFDoc_Environment(UnderlyingDocumentType* pDoc, FPDF_FORMFILLINFO* pFFinfo);
~CPDFDoc_Environment();
+#ifdef PDF_ENABLE_XFA
void Release() {
if (m_pInfo && m_pInfo->Release)
m_pInfo->Release(m_pInfo);
delete this;
}
+#endif
void FFI_Invalidate(FPDF_PAGE page,
double left,
double top,
@@ -208,6 +212,7 @@ class CPDFDoc_Environment final {
sizeOfArray);
}
+#ifdef PDF_ENABLE_XFA
void FFI_DisplayCaret(FPDF_PAGE page,
FPDF_BOOL bVisible,
double left,
@@ -446,6 +451,7 @@ class CPDFDoc_Environment final {
return L"";
}
+#endif
FX_BOOL IsJSInitiated() const { return m_pInfo && m_pInfo->m_pJsPlatform; }
void SetSDKDocument(CPDFSDK_Document* pFXDoc) { m_pSDKDoc = pFXDoc; }
CPDFSDK_Document* GetSDKDocument() const { return m_pSDKDoc; }
@@ -482,19 +488,29 @@ class CPDFSDK_Document {
// Gets the document object for the next layer down; for master this is
// a CPDF_Document, but for XFA it is a CPDFXFA_Document.
UnderlyingDocumentType* GetUnderlyingDocument() const {
+#ifndef PDF_ENABLE_XFA
+ return GetPDFDocument();
+#else
return GetXFADocument();
+#endif
}
// Gets the CPDF_Document, either directly in master, or from the
// CPDFXFA_Document for XFA.
+#ifndef PDF_ENABLE_XFA
+ CPDF_Document* GetPDFDocument() const { return m_pDoc; }
+#else
CPDF_Document* GetPDFDocument() const {
return m_pDoc ? m_pDoc->GetPDFDoc() : nullptr;
}
// Gets the XFA document directly (XFA-only).
CPDFXFA_Document* GetXFADocument() const { return m_pDoc; }
+#endif
+#ifdef PDF_ENABLE_XFA
int GetPageViewCount() const { return m_pageMap.size(); }
+#endif
CPDFSDK_PageView* GetPageView(UnderlyingPageType* pPage,
FX_BOOL ReNew = TRUE);
CPDFSDK_PageView* GetPageView(int nIndex);
@@ -548,8 +564,12 @@ class CPDFSDK_PageView final {
~CPDFSDK_PageView();
void PageView_OnDraw(CFX_RenderDevice* pDevice,
CPDF_Matrix* pUser2Device,
+#ifndef PDF_ENABLE_XFA
+ CPDF_RenderOptions* pOptions);
+#else
CPDF_RenderOptions* pOptions,
const FX_RECT& pClip);
+#endif
const CPDF_Annot* GetPDFAnnotAtPoint(FX_FLOAT pageX, FX_FLOAT pageY);
CPDFSDK_Annot* GetFXAnnotAtPoint(FX_FLOAT pageX, FX_FLOAT pageY);
const CPDF_Annot* GetPDFWidgetAtPoint(FX_FLOAT pageX, FX_FLOAT pageY);
@@ -567,20 +587,28 @@ class CPDFSDK_PageView final {
CPDFSDK_Annot* AddAnnot(CPDF_Dictionary* pDict);
CPDFSDK_Annot* AddAnnot(const FX_CHAR* lpSubType, CPDF_Dictionary* pDict);
CPDFSDK_Annot* AddAnnot(CPDF_Annot* pPDFAnnot);
+#ifdef PDF_ENABLE_XFA
CPDFSDK_Annot* AddAnnot(IXFA_Widget* pPDFAnnot);
+#endif
FX_BOOL DeleteAnnot(CPDFSDK_Annot* pAnnot);
size_t CountAnnots() const;
CPDFSDK_Annot* GetAnnot(size_t nIndex);
CPDFSDK_Annot* GetAnnotByDict(CPDF_Dictionary* pDict);
+#ifndef PDF_ENABLE_XFA
+ CPDF_Page* GetPDFPage() { return m_page; }
+#else
CPDFSDK_Annot* GetAnnotByXFAWidget(IXFA_Widget* hWidget);
CPDFXFA_Page* GetPDFXFAPage() { return m_page; }
CPDF_Page* GetPDFPage();
+#endif
CPDF_Document* GetPDFDocument();
CPDFSDK_Document* GetSDKDocument() { return m_pSDKDoc; }
FX_BOOL OnLButtonDown(const CPDF_Point& point, FX_UINT nFlag);
FX_BOOL OnLButtonUp(const CPDF_Point& point, FX_UINT nFlag);
+#ifdef PDF_ENABLE_XFA
FX_BOOL OnRButtonDown(const CPDF_Point& point, FX_UINT nFlag);
FX_BOOL OnRButtonUp(const CPDF_Point& point, FX_UINT nFlag);
+#endif
FX_BOOL OnChar(int nChar, FX_UINT nFlag);
FX_BOOL OnKeyDown(int nKeyCode, int nFlag);
FX_BOOL OnKeyUp(int nKeyCode, int nFlag);
@@ -604,6 +632,9 @@ class CPDFSDK_PageView final {
FX_BOOL IsValid() { return m_bValid; }
void SetLock(FX_BOOL bLocked) { m_bLocked = bLocked; }
FX_BOOL IsLocked() { return m_bLocked; }
+#ifndef PDF_ENABLE_XFA
+ void TakeOverPage() { m_bTakeOverPage = TRUE; }
+#endif
private:
void PageView_OnHighlightFormFields(CFX_RenderDevice* pDevice,
@@ -614,12 +645,19 @@ class CPDFSDK_PageView final {
nonstd::unique_ptr<CPDF_AnnotList> m_pAnnotList;
std::vector<CPDFSDK_Annot*> m_fxAnnotArray;
CPDFSDK_Document* m_pSDKDoc;
+#ifndef PDF_ENABLE_XFA
+ CPDFSDK_Widget* m_CaptureWidget;
+#else
CPDFSDK_Annot* m_CaptureWidget;
+#endif
FX_BOOL m_bEnterWidget;
FX_BOOL m_bExitWidget;
FX_BOOL m_bOnWidget;
FX_BOOL m_bValid;
FX_BOOL m_bLocked;
+#ifndef PDF_ENABLE_XFA
+ FX_BOOL m_bTakeOverPage;
+#endif
};
template <class TYPE>