Index: fpdfsdk/fpdfxfa/cpdfxfa_docenvironment.cpp |
diff --git a/fpdfsdk/fpdfxfa/fpdfxfa_doc.cpp b/fpdfsdk/fpdfxfa/cpdfxfa_docenvironment.cpp |
similarity index 56% |
copy from fpdfsdk/fpdfxfa/fpdfxfa_doc.cpp |
copy to fpdfsdk/fpdfxfa/cpdfxfa_docenvironment.cpp |
index 709cf058170743aa8bc061bd7f9efcdfa34e74cf..1aac4b585ba5d28f9501f35b8796769a676b8d7a 100644 |
--- a/fpdfsdk/fpdfxfa/fpdfxfa_doc.cpp |
+++ b/fpdfsdk/fpdfxfa/cpdfxfa_docenvironment.cpp |
@@ -1,28 +1,20 @@ |
-// Copyright 2014 PDFium Authors. All rights reserved. |
+// Copyright 2016 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 |
-#include "fpdfsdk/fpdfxfa/include/fpdfxfa_doc.h" |
+#include "fpdfsdk/fpdfxfa/include/cpdfxfa_docenvironment.h" |
#include "core/fpdfapi/fpdf_parser/include/cpdf_array.h" |
-#include "core/fpdfapi/fpdf_parser/include/cpdf_document.h" |
-#include "core/fpdfapi/fpdf_parser/include/cpdf_stream_acc.h" |
#include "core/fpdfapi/fpdf_parser/include/cpdf_string.h" |
-#include "fpdfsdk/fpdfxfa/include/fpdfxfa_app.h" |
+#include "core/fpdfapi/fpdf_parser/include/cpdf_stream_acc.h" |
+#include "fpdfsdk/fpdfxfa/include/fpdfxfa_doc.h" |
#include "fpdfsdk/fpdfxfa/include/fpdfxfa_page.h" |
-#include "fpdfsdk/fpdfxfa/include/fpdfxfa_util.h" |
-#include "fpdfsdk/include/fsdk_define.h" |
#include "fpdfsdk/include/cpdfsdk_interform.h" |
-#include "fpdfsdk/include/fsdk_mgr.h" |
#include "fpdfsdk/javascript/ijs_runtime.h" |
-#include "public/fpdf_formfill.h" |
-#include "xfa/fxfa/include/cxfa_eventparam.h" |
-#include "xfa/fxfa/include/xfa_ffapp.h" |
-#include "xfa/fxfa/include/xfa_ffdoc.h" |
+#include "fpdfsdk/include/fsdk_mgr.h" |
Tom Sepez
2016/09/08 17:12:37
nit: header order.
dsinclair
2016/09/08 18:07:49
Sorting is hard.
|
#include "xfa/fxfa/include/xfa_ffdocview.h" |
-#include "xfa/fxfa/include/xfa_ffpageview.h" |
#include "xfa/fxfa/include/xfa_ffwidget.h" |
#include "xfa/fxfa/include/xfa_ffwidgethandler.h" |
@@ -40,11 +32,6 @@ |
#define FXFA_FORM 0x01000000 |
#define FXFA_PDF 0x10000000 |
-#ifndef _WIN32 |
-extern void SetLastError(int err); |
-extern int GetLastError(); |
-#endif |
- |
namespace { |
CFX_FloatRect FXRect2PDFRect(const CFX_RectF& fxRectF) { |
@@ -54,196 +41,35 @@ CFX_FloatRect FXRect2PDFRect(const CFX_RectF& fxRectF) { |
} // namespace |
-CPDFXFA_Document::CPDFXFA_Document(std::unique_ptr<CPDF_Document> pPDFDoc, |
- CPDFXFA_App* pProvider) |
- : m_iDocType(DOCTYPE_PDF), |
- m_pPDFDoc(std::move(pPDFDoc)), |
- m_pXFADocView(nullptr), |
- m_pApp(pProvider), |
- m_pJSContext(nullptr), |
- m_nLoadStatus(FXFA_LOADSTATUS_PRELOAD), |
- m_nPageCount(0) {} |
- |
-CPDFXFA_Document::~CPDFXFA_Document() { |
- m_nLoadStatus = FXFA_LOADSTATUS_CLOSING; |
- |
- if (m_pXFADoc) { |
- CXFA_FFApp* pApp = m_pApp->GetXFAApp(); |
- if (pApp) { |
- CXFA_FFDocHandler* pDocHandler = pApp->GetDocHandler(); |
- if (pDocHandler) |
- CloseXFADoc(pDocHandler); |
- } |
- m_pXFADoc.reset(); |
- } |
- if (m_pJSContext && m_pSDKDoc && m_pSDKDoc->GetEnv()) |
- m_pSDKDoc->GetEnv()->GetJSRuntime()->ReleaseContext(m_pJSContext); |
+CPDFXFA_DocEnvironment::CPDFXFA_DocEnvironment(CPDFXFA_Document* doc) |
Tom Sepez
2016/09/08 17:12:37
any code changes here? Its just moved up from bel
dsinclair
2016/09/08 18:07:49
The code changes were all to change things like m_
|
+ : m_pDocument(doc), m_pJSContext(nullptr) {} |
- m_nLoadStatus = FXFA_LOADSTATUS_CLOSED; |
+CPDFXFA_DocEnvironment::~CPDFXFA_DocEnvironment() { |
+ if (m_pJSContext && m_pDocument->GetSDKDoc() && |
+ m_pDocument->GetSDKDoc()->GetEnv()) |
+ m_pDocument->GetSDKDoc()->GetEnv()->GetJSRuntime()->ReleaseContext( |
+ m_pJSContext); |
} |
-FX_BOOL CPDFXFA_Document::LoadXFADoc() { |
- m_nLoadStatus = FXFA_LOADSTATUS_LOADING; |
- |
- if (!m_pPDFDoc) |
- return FALSE; |
- |
- m_XFAPageList.RemoveAll(); |
- |
- CXFA_FFApp* pApp = m_pApp->GetXFAApp(); |
- if (!pApp) |
- return FALSE; |
- |
- m_pXFADoc.reset(pApp->CreateDoc(this, m_pPDFDoc.get())); |
- if (!m_pXFADoc) { |
- SetLastError(FPDF_ERR_XFALOAD); |
- return FALSE; |
- } |
- |
- CXFA_FFDocHandler* pDocHandler = pApp->GetDocHandler(); |
- if (!pDocHandler) { |
- SetLastError(FPDF_ERR_XFALOAD); |
- return FALSE; |
- } |
- |
- m_pXFADoc->StartLoad(); |
- int iStatus = m_pXFADoc->DoLoad(nullptr); |
- if (iStatus != XFA_PARSESTATUS_Done) { |
- CloseXFADoc(pDocHandler); |
- SetLastError(FPDF_ERR_XFALOAD); |
- return FALSE; |
- } |
- m_pXFADoc->StopLoad(); |
- m_pXFADoc->GetXFADoc()->InitScriptContext(m_pApp->GetJSERuntime()); |
- |
- if (m_pXFADoc->GetDocType() == XFA_DOCTYPE_Dynamic) |
- m_iDocType = DOCTYPE_DYNAMIC_XFA; |
- else |
- m_iDocType = DOCTYPE_STATIC_XFA; |
- |
- m_pXFADocView = m_pXFADoc->CreateDocView(XFA_DOCVIEW_View); |
- if (m_pXFADocView->StartLayout() < 0) { |
- CloseXFADoc(pDocHandler); |
- SetLastError(FPDF_ERR_XFALAYOUT); |
- return FALSE; |
- } |
- |
- m_pXFADocView->DoLayout(nullptr); |
- m_pXFADocView->StopLayout(); |
- m_nLoadStatus = FXFA_LOADSTATUS_LOADED; |
- |
- return TRUE; |
+void CPDFXFA_DocEnvironment::SetChangeMark(CXFA_FFDoc* hDoc) { |
+ if (hDoc == m_pDocument->GetXFADoc() && m_pDocument->GetSDKDoc()) |
+ m_pDocument->GetSDKDoc()->SetChangeMark(); |
} |
-int CPDFXFA_Document::GetPageCount() { |
- if (!m_pPDFDoc && !m_pXFADoc) |
- return 0; |
- |
- switch (m_iDocType) { |
- case DOCTYPE_PDF: |
- case DOCTYPE_STATIC_XFA: |
- if (m_pPDFDoc) |
- return m_pPDFDoc->GetPageCount(); |
- case DOCTYPE_DYNAMIC_XFA: |
- if (m_pXFADoc) |
- return m_pXFADocView->CountPageViews(); |
- default: |
- return 0; |
- } |
-} |
- |
-CPDFXFA_Page* CPDFXFA_Document::GetPage(int page_index) { |
- if (page_index < 0) |
- return nullptr; |
- |
- CPDFXFA_Page* pPage = nullptr; |
- int nCount = m_XFAPageList.GetSize(); |
- if (nCount > 0 && page_index < nCount) { |
- pPage = m_XFAPageList.GetAt(page_index); |
- if (pPage) |
- pPage->Retain(); |
- } else { |
- m_nPageCount = GetPageCount(); |
- m_XFAPageList.SetSize(m_nPageCount); |
- } |
- if (pPage) |
- return pPage; |
- |
- pPage = new CPDFXFA_Page(this, page_index); |
- if (!pPage->LoadPage()) { |
- pPage->Release(); |
- return nullptr; |
- } |
- m_XFAPageList.SetAt(page_index, pPage); |
- return pPage; |
-} |
- |
-CPDFXFA_Page* CPDFXFA_Document::GetPage(CXFA_FFPageView* pPage) { |
- if (!pPage) |
- return nullptr; |
- |
- if (!m_pXFADoc) |
- return nullptr; |
- |
- if (m_iDocType != DOCTYPE_DYNAMIC_XFA) |
- return nullptr; |
- |
- int nSize = m_XFAPageList.GetSize(); |
- for (int i = 0; i < nSize; i++) { |
- CPDFXFA_Page* pTempPage = m_XFAPageList.GetAt(i); |
- if (!pTempPage) |
- continue; |
- if (pTempPage->GetXFAPageView() && pTempPage->GetXFAPageView() == pPage) |
- return pTempPage; |
- } |
- |
- return nullptr; |
-} |
- |
-void CPDFXFA_Document::DeletePage(int page_index) { |
- // Delete from the document first because, if GetPage was never called for |
- // this |page_index| then |m_XFAPageList| may have size < |page_index| even |
- // if it's a valid page in the document. |
- if (m_pPDFDoc) |
- m_pPDFDoc->DeletePage(page_index); |
- |
- if (page_index < 0 || page_index >= m_XFAPageList.GetSize()) |
+void CPDFXFA_DocEnvironment::InvalidateRect(CXFA_FFPageView* pPageView, |
+ const CFX_RectF& rt, |
+ uint32_t dwFlags /* = 0 */) { |
+ if (!m_pDocument->GetXFADoc() || !m_pDocument->GetSDKDoc()) |
return; |
- if (CPDFXFA_Page* pPage = m_XFAPageList.GetAt(page_index)) |
- pPage->Release(); |
-} |
- |
-void CPDFXFA_Document::RemovePage(CPDFXFA_Page* page) { |
- m_XFAPageList.SetAt(page->GetPageIndex(), nullptr); |
-} |
- |
-CPDFSDK_Document* CPDFXFA_Document::GetSDKDocument( |
- CPDFDoc_Environment* pFormFillEnv) { |
- if (!m_pSDKDoc && pFormFillEnv) |
- m_pSDKDoc.reset(new CPDFSDK_Document(this, pFormFillEnv)); |
- return m_pSDKDoc.get(); |
-} |
- |
-void CPDFXFA_Document::SetChangeMark(CXFA_FFDoc* hDoc) { |
- if (hDoc == m_pXFADoc.get() && m_pSDKDoc) |
- m_pSDKDoc->SetChangeMark(); |
-} |
- |
-void CPDFXFA_Document::InvalidateRect(CXFA_FFPageView* pPageView, |
- const CFX_RectF& rt, |
- uint32_t dwFlags /* = 0 */) { |
- if (!m_pXFADoc || !m_pSDKDoc) |
+ if (m_pDocument->GetDocType() != DOCTYPE_DYNAMIC_XFA) |
return; |
- if (m_iDocType != DOCTYPE_DYNAMIC_XFA) |
- return; |
- |
- CPDFXFA_Page* pPage = GetPage(pPageView); |
+ CPDFXFA_Page* pPage = m_pDocument->GetPage(pPageView); |
if (!pPage) |
return; |
- CPDFDoc_Environment* pEnv = m_pSDKDoc->GetEnv(); |
+ CPDFDoc_Environment* pEnv = m_pDocument->GetSDKDoc()->GetEnv(); |
if (!pEnv) |
return; |
@@ -252,16 +78,18 @@ void CPDFXFA_Document::InvalidateRect(CXFA_FFPageView* pPageView, |
rcPage.right, rcPage.top); |
} |
-void CPDFXFA_Document::DisplayCaret(CXFA_FFWidget* hWidget, |
- FX_BOOL bVisible, |
- const CFX_RectF* pRtAnchor) { |
- if (!hWidget || !pRtAnchor || !m_pXFADoc || !m_pSDKDoc || !m_pXFADocView) |
+void CPDFXFA_DocEnvironment::DisplayCaret(CXFA_FFWidget* hWidget, |
+ FX_BOOL bVisible, |
+ const CFX_RectF* pRtAnchor) { |
+ if (!hWidget || !pRtAnchor || !m_pDocument->GetXFADoc() || |
Tom Sepez
2016/09/08 17:12:37
Do we have to worry about null m_pDocuments now th
dsinclair
2016/09/08 18:07:49
Technically, probably. What about storing as a CPD
Tom Sepez
2016/09/08 18:22:01
Nah, lets just assert non-nullness in the ctor at
|
+ !m_pDocument->GetSDKDoc() || !m_pDocument->GetXFADocView()) |
return; |
- if (m_iDocType != DOCTYPE_DYNAMIC_XFA) |
+ if (m_pDocument->GetDocType() != DOCTYPE_DYNAMIC_XFA) |
return; |
- CXFA_FFWidgetHandler* pWidgetHandler = m_pXFADocView->GetWidgetHandler(); |
+ CXFA_FFWidgetHandler* pWidgetHandler = |
+ m_pDocument->GetXFADocView()->GetWidgetHandler(); |
if (!pWidgetHandler) |
return; |
@@ -269,11 +97,11 @@ void CPDFXFA_Document::DisplayCaret(CXFA_FFWidget* hWidget, |
if (!pPageView) |
return; |
- CPDFXFA_Page* pPage = GetPage(pPageView); |
+ CPDFXFA_Page* pPage = m_pDocument->GetPage(pPageView); |
if (!pPage) |
return; |
- CPDFDoc_Environment* pEnv = m_pSDKDoc->GetEnv(); |
+ CPDFDoc_Environment* pEnv = m_pDocument->GetSDKDoc()->GetEnv(); |
if (!pEnv) |
return; |
@@ -282,11 +110,11 @@ void CPDFXFA_Document::DisplayCaret(CXFA_FFWidget* hWidget, |
rcCaret.right, rcCaret.bottom); |
} |
-FX_BOOL CPDFXFA_Document::GetPopupPos(CXFA_FFWidget* hWidget, |
- FX_FLOAT fMinPopup, |
- FX_FLOAT fMaxPopup, |
- const CFX_RectF& rtAnchor, |
- CFX_RectF& rtPopup) { |
+FX_BOOL CPDFXFA_DocEnvironment::GetPopupPos(CXFA_FFWidget* hWidget, |
+ FX_FLOAT fMinPopup, |
+ FX_FLOAT fMaxPopup, |
+ const CFX_RectF& rtAnchor, |
+ CFX_RectF& rtPopup) { |
if (!hWidget) |
return FALSE; |
@@ -294,13 +122,13 @@ FX_BOOL CPDFXFA_Document::GetPopupPos(CXFA_FFWidget* hWidget, |
if (!pXFAPageView) |
return FALSE; |
- CPDFXFA_Page* pPage = GetPage(pXFAPageView); |
+ CPDFXFA_Page* pPage = m_pDocument->GetPage(pXFAPageView); |
if (!pPage) |
return FALSE; |
CXFA_WidgetAcc* pWidgetAcc = hWidget->GetDataAcc(); |
int nRotate = pWidgetAcc->GetRotate(); |
- CPDFDoc_Environment* pEnv = m_pSDKDoc->GetEnv(); |
+ CPDFDoc_Environment* pEnv = m_pDocument->GetSDKDoc()->GetEnv(); |
if (!pEnv) |
return FALSE; |
@@ -398,8 +226,8 @@ FX_BOOL CPDFXFA_Document::GetPopupPos(CXFA_FFWidget* hWidget, |
return TRUE; |
} |
-FX_BOOL CPDFXFA_Document::PopupMenu(CXFA_FFWidget* hWidget, |
- CFX_PointF ptPopup) { |
+FX_BOOL CPDFXFA_DocEnvironment::PopupMenu(CXFA_FFWidget* hWidget, |
+ CFX_PointF ptPopup) { |
if (!hWidget) |
return FALSE; |
@@ -407,11 +235,11 @@ FX_BOOL CPDFXFA_Document::PopupMenu(CXFA_FFWidget* hWidget, |
if (!pXFAPageView) |
return FALSE; |
- CPDFXFA_Page* pPage = GetPage(pXFAPageView); |
+ CPDFXFA_Page* pPage = m_pDocument->GetPage(pXFAPageView); |
if (!pPage) |
return FALSE; |
- CPDFDoc_Environment* pEnv = m_pSDKDoc->GetEnv(); |
+ CPDFDoc_Environment* pEnv = m_pDocument->GetSDKDoc()->GetEnv(); |
if (!pEnv) |
return FALSE; |
@@ -432,129 +260,133 @@ FX_BOOL CPDFXFA_Document::PopupMenu(CXFA_FFWidget* hWidget, |
return pEnv->FFI_PopupMenu(pPage, hWidget, menuFlag, ptPopup, nullptr); |
} |
-void CPDFXFA_Document::PageViewEvent(CXFA_FFPageView* pPageView, |
- uint32_t dwFlags) { |
- CPDFDoc_Environment* pEnv = m_pSDKDoc->GetEnv(); |
+void CPDFXFA_DocEnvironment::PageViewEvent(CXFA_FFPageView* pPageView, |
+ uint32_t dwFlags) { |
+ CPDFDoc_Environment* pEnv = m_pDocument->GetSDKDoc()->GetEnv(); |
if (!pEnv) |
return; |
- if (m_nLoadStatus == FXFA_LOADSTATUS_LOADING || |
- m_nLoadStatus == FXFA_LOADSTATUS_CLOSING || |
+ if (m_pDocument->GetLoadStatus() == FXFA_LOADSTATUS_LOADING || |
+ m_pDocument->GetLoadStatus() == FXFA_LOADSTATUS_CLOSING || |
XFA_PAGEVIEWEVENT_StopLayout != dwFlags) |
return; |
- int nNewCount = GetPageCount(); |
- if (nNewCount == m_nPageCount) |
+ int nNewCount = m_pDocument->GetPageCount(); |
+ if (nNewCount == m_pDocument->GetOriginalPageCount()) |
return; |
- CXFA_FFDocView* pXFADocView = GetXFADocView(); |
+ CXFA_FFDocView* pXFADocView = m_pDocument->GetXFADocView(); |
if (!pXFADocView) |
return; |
- for (int iPageIter = 0; iPageIter < m_nPageCount; iPageIter++) { |
- CPDFXFA_Page* pPage = m_XFAPageList.GetAt(iPageIter); |
+ for (int iPageIter = 0; iPageIter < m_pDocument->GetOriginalPageCount(); |
+ iPageIter++) { |
+ CPDFXFA_Page* pPage = m_pDocument->GetXFAPageList()->GetAt(iPageIter); |
if (!pPage) |
continue; |
- m_pSDKDoc->RemovePageView(pPage); |
+ m_pDocument->GetSDKDoc()->RemovePageView(pPage); |
pPage->SetXFAPageView(pXFADocView->GetPageView(iPageIter)); |
} |
- int flag = (nNewCount < m_nPageCount) ? FXFA_PAGEVIEWEVENT_POSTREMOVED |
- : FXFA_PAGEVIEWEVENT_POSTADDED; |
- int count = FXSYS_abs(nNewCount - m_nPageCount); |
- m_nPageCount = nNewCount; |
- m_XFAPageList.SetSize(nNewCount); |
+ int flag = (nNewCount < m_pDocument->GetOriginalPageCount()) |
+ ? FXFA_PAGEVIEWEVENT_POSTREMOVED |
+ : FXFA_PAGEVIEWEVENT_POSTADDED; |
+ int count = FXSYS_abs(nNewCount - m_pDocument->GetOriginalPageCount()); |
+ m_pDocument->SetOriginalPageCount(nNewCount); |
pEnv->FFI_PageEvent(count, flag); |
} |
-void CPDFXFA_Document::WidgetPostAdd(CXFA_FFWidget* hWidget, |
- CXFA_WidgetAcc* pWidgetData) { |
- if (m_iDocType != DOCTYPE_DYNAMIC_XFA || !hWidget) |
+void CPDFXFA_DocEnvironment::WidgetPostAdd(CXFA_FFWidget* hWidget, |
+ CXFA_WidgetAcc* pWidgetData) { |
+ if (m_pDocument->GetDocType() != DOCTYPE_DYNAMIC_XFA || !hWidget) |
return; |
CXFA_FFPageView* pPageView = hWidget->GetPageView(); |
if (!pPageView) |
return; |
- CPDFXFA_Page* pXFAPage = GetPage(pPageView); |
+ CPDFXFA_Page* pXFAPage = m_pDocument->GetPage(pPageView); |
if (!pXFAPage) |
return; |
- m_pSDKDoc->GetPageView(pXFAPage, true)->AddAnnot(hWidget); |
+ m_pDocument->GetSDKDoc()->GetPageView(pXFAPage, true)->AddAnnot(hWidget); |
} |
-void CPDFXFA_Document::WidgetPreRemove(CXFA_FFWidget* hWidget, |
- CXFA_WidgetAcc* pWidgetData) { |
- if (m_iDocType != DOCTYPE_DYNAMIC_XFA || !hWidget) |
+void CPDFXFA_DocEnvironment::WidgetPreRemove(CXFA_FFWidget* hWidget, |
+ CXFA_WidgetAcc* pWidgetData) { |
+ if (m_pDocument->GetDocType() != DOCTYPE_DYNAMIC_XFA || !hWidget) |
return; |
CXFA_FFPageView* pPageView = hWidget->GetPageView(); |
if (!pPageView) |
return; |
- CPDFXFA_Page* pXFAPage = GetPage(pPageView); |
+ CPDFXFA_Page* pXFAPage = m_pDocument->GetPage(pPageView); |
if (!pXFAPage) |
return; |
- CPDFSDK_PageView* pSdkPageView = m_pSDKDoc->GetPageView(pXFAPage, true); |
+ CPDFSDK_PageView* pSdkPageView = |
+ m_pDocument->GetSDKDoc()->GetPageView(pXFAPage, true); |
if (CPDFSDK_Annot* pAnnot = pSdkPageView->GetAnnotByXFAWidget(hWidget)) |
pSdkPageView->DeleteAnnot(pAnnot); |
} |
-int32_t CPDFXFA_Document::CountPages(CXFA_FFDoc* hDoc) { |
- if (hDoc == m_pXFADoc.get() && m_pSDKDoc) |
- return GetPageCount(); |
+int32_t CPDFXFA_DocEnvironment::CountPages(CXFA_FFDoc* hDoc) { |
+ if (hDoc == m_pDocument->GetXFADoc() && m_pDocument->GetSDKDoc()) |
+ return m_pDocument->GetPageCount(); |
return 0; |
} |
-int32_t CPDFXFA_Document::GetCurrentPage(CXFA_FFDoc* hDoc) { |
- if (hDoc != m_pXFADoc.get() || !m_pSDKDoc) |
+int32_t CPDFXFA_DocEnvironment::GetCurrentPage(CXFA_FFDoc* hDoc) { |
+ if (hDoc != m_pDocument->GetXFADoc() || !m_pDocument->GetSDKDoc()) |
return -1; |
- if (m_iDocType != DOCTYPE_DYNAMIC_XFA) |
+ if (m_pDocument->GetDocType() != DOCTYPE_DYNAMIC_XFA) |
return -1; |
- CPDFDoc_Environment* pEnv = m_pSDKDoc->GetEnv(); |
+ CPDFDoc_Environment* pEnv = m_pDocument->GetSDKDoc()->GetEnv(); |
if (!pEnv) |
return -1; |
return pEnv->FFI_GetCurrentPageIndex(this); |
} |
-void CPDFXFA_Document::SetCurrentPage(CXFA_FFDoc* hDoc, int32_t iCurPage) { |
- if (hDoc != m_pXFADoc.get() || !m_pSDKDoc || |
- m_iDocType != DOCTYPE_DYNAMIC_XFA || iCurPage < 0 || |
- iCurPage >= m_pSDKDoc->GetPageCount()) { |
+void CPDFXFA_DocEnvironment::SetCurrentPage(CXFA_FFDoc* hDoc, |
+ int32_t iCurPage) { |
+ if (hDoc != m_pDocument->GetXFADoc() || !m_pDocument->GetSDKDoc() || |
+ m_pDocument->GetDocType() != DOCTYPE_DYNAMIC_XFA || iCurPage < 0 || |
+ iCurPage >= m_pDocument->GetSDKDoc()->GetPageCount()) { |
return; |
} |
- CPDFDoc_Environment* pEnv = m_pSDKDoc->GetEnv(); |
+ CPDFDoc_Environment* pEnv = m_pDocument->GetSDKDoc()->GetEnv(); |
if (!pEnv) |
return; |
pEnv->FFI_SetCurrentPage(this, iCurPage); |
} |
-FX_BOOL CPDFXFA_Document::IsCalculationsEnabled(CXFA_FFDoc* hDoc) { |
- if (hDoc != m_pXFADoc.get() || !m_pSDKDoc) |
+FX_BOOL CPDFXFA_DocEnvironment::IsCalculationsEnabled(CXFA_FFDoc* hDoc) { |
+ if (hDoc != m_pDocument->GetXFADoc() || !m_pDocument->GetSDKDoc()) |
return FALSE; |
- if (m_pSDKDoc->GetInterForm()) |
- return m_pSDKDoc->GetInterForm()->IsXfaCalculateEnabled(); |
+ if (m_pDocument->GetSDKDoc()->GetInterForm()) |
+ return m_pDocument->GetSDKDoc()->GetInterForm()->IsXfaCalculateEnabled(); |
return FALSE; |
} |
-void CPDFXFA_Document::SetCalculationsEnabled(CXFA_FFDoc* hDoc, |
- FX_BOOL bEnabled) { |
- if (hDoc != m_pXFADoc.get() || !m_pSDKDoc) |
+void CPDFXFA_DocEnvironment::SetCalculationsEnabled(CXFA_FFDoc* hDoc, |
+ FX_BOOL bEnabled) { |
+ if (hDoc != m_pDocument->GetXFADoc() || !m_pDocument->GetSDKDoc()) |
return; |
- if (m_pSDKDoc->GetInterForm()) |
- m_pSDKDoc->GetInterForm()->XfaEnableCalculate(bEnabled); |
+ if (m_pDocument->GetSDKDoc()->GetInterForm()) |
+ m_pDocument->GetSDKDoc()->GetInterForm()->XfaEnableCalculate(bEnabled); |
} |
-void CPDFXFA_Document::GetTitle(CXFA_FFDoc* hDoc, CFX_WideString& wsTitle) { |
- if (hDoc != m_pXFADoc.get() || !m_pPDFDoc) |
+void CPDFXFA_DocEnvironment::GetTitle(CXFA_FFDoc* hDoc, |
+ CFX_WideString& wsTitle) { |
+ if (hDoc != m_pDocument->GetXFADoc() || !m_pDocument->GetPDFDoc()) |
return; |
- CPDF_Dictionary* pInfoDict = m_pPDFDoc->GetInfo(); |
+ CPDF_Dictionary* pInfoDict = m_pDocument->GetPDFDoc()->GetInfo(); |
if (!pInfoDict) |
return; |
@@ -563,25 +395,26 @@ void CPDFXFA_Document::GetTitle(CXFA_FFDoc* hDoc, CFX_WideString& wsTitle) { |
csTitle.ReleaseBuffer(csTitle.GetLength()); |
} |
-void CPDFXFA_Document::SetTitle(CXFA_FFDoc* hDoc, |
- const CFX_WideString& wsTitle) { |
- if (hDoc != m_pXFADoc.get() || !m_pPDFDoc) |
+void CPDFXFA_DocEnvironment::SetTitle(CXFA_FFDoc* hDoc, |
+ const CFX_WideString& wsTitle) { |
+ if (hDoc != m_pDocument->GetXFADoc() || !m_pDocument->GetPDFDoc()) |
return; |
- if (CPDF_Dictionary* pInfoDict = m_pPDFDoc->GetInfo()) |
+ if (CPDF_Dictionary* pInfoDict = m_pDocument->GetPDFDoc()->GetInfo()) |
pInfoDict->SetAt("Title", new CPDF_String(wsTitle)); |
} |
-void CPDFXFA_Document::ExportData(CXFA_FFDoc* hDoc, |
- const CFX_WideString& wsFilePath, |
- FX_BOOL bXDP) { |
- if (hDoc != m_pXFADoc.get()) |
+void CPDFXFA_DocEnvironment::ExportData(CXFA_FFDoc* hDoc, |
+ const CFX_WideString& wsFilePath, |
+ FX_BOOL bXDP) { |
+ if (hDoc != m_pDocument->GetXFADoc()) |
return; |
- if (m_iDocType != DOCTYPE_DYNAMIC_XFA && m_iDocType != DOCTYPE_STATIC_XFA) |
+ if (m_pDocument->GetDocType() != DOCTYPE_DYNAMIC_XFA && |
+ m_pDocument->GetDocType() != DOCTYPE_STATIC_XFA) |
return; |
- CPDFDoc_Environment* pEnv = m_pSDKDoc->GetEnv(); |
+ CPDFDoc_Environment* pEnv = m_pDocument->GetSDKDoc()->GetEnv(); |
if (!pEnv) |
return; |
@@ -608,13 +441,13 @@ void CPDFXFA_Document::ExportData(CXFA_FFDoc* hDoc, |
content = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\r\n"; |
fileWrite.WriteBlock(content.c_str(), fileWrite.GetSize(), |
content.GetLength()); |
- m_pXFADocView->GetDoc()->SavePackage(XFA_HASHCODE_Data, &fileWrite, |
- nullptr); |
+ m_pDocument->GetXFADocView()->GetDoc()->SavePackage(XFA_HASHCODE_Data, |
+ &fileWrite, nullptr); |
} else if (fileType == FXFA_SAVEAS_XDP) { |
- if (!m_pPDFDoc) |
+ if (!m_pDocument->GetPDFDoc()) |
return; |
- CPDF_Dictionary* pRoot = m_pPDFDoc->GetRoot(); |
+ CPDF_Dictionary* pRoot = m_pDocument->GetPDFDoc()->GetRoot(); |
if (!pRoot) |
return; |
@@ -639,13 +472,13 @@ void CPDFXFA_Document::ExportData(CXFA_FFDoc* hDoc, |
if (!pStream) |
continue; |
if (pPrePDFObj->GetString() == "form") { |
- m_pXFADocView->GetDoc()->SavePackage(XFA_HASHCODE_Form, &fileWrite, |
- nullptr); |
+ m_pDocument->GetXFADocView()->GetDoc()->SavePackage( |
+ XFA_HASHCODE_Form, &fileWrite, nullptr); |
continue; |
} |
if (pPrePDFObj->GetString() == "datasets") { |
- m_pXFADocView->GetDoc()->SavePackage(XFA_HASHCODE_Datasets, &fileWrite, |
- nullptr); |
+ m_pDocument->GetXFADocView()->GetDoc()->SavePackage( |
+ XFA_HASHCODE_Datasets, &fileWrite, nullptr); |
continue; |
} |
if (i == size - 1) { |
@@ -670,16 +503,16 @@ void CPDFXFA_Document::ExportData(CXFA_FFDoc* hDoc, |
} |
} |
-void CPDFXFA_Document::GotoURL(CXFA_FFDoc* hDoc, |
- const CFX_WideString& bsURL, |
- FX_BOOL bAppend) { |
- if (hDoc != m_pXFADoc.get()) |
+void CPDFXFA_DocEnvironment::GotoURL(CXFA_FFDoc* hDoc, |
+ const CFX_WideString& bsURL, |
+ FX_BOOL bAppend) { |
+ if (hDoc != m_pDocument->GetXFADoc()) |
return; |
- if (m_iDocType != DOCTYPE_DYNAMIC_XFA) |
+ if (m_pDocument->GetDocType() != DOCTYPE_DYNAMIC_XFA) |
return; |
- CPDFDoc_Environment* pEnv = m_pSDKDoc->GetEnv(); |
+ CPDFDoc_Environment* pEnv = m_pDocument->GetSDKDoc()->GetEnv(); |
if (!pEnv) |
return; |
@@ -688,54 +521,55 @@ void CPDFXFA_Document::GotoURL(CXFA_FFDoc* hDoc, |
pEnv->FFI_GotoURL(this, str, bAppend); |
} |
-FX_BOOL CPDFXFA_Document::IsValidationsEnabled(CXFA_FFDoc* hDoc) { |
- if (hDoc != m_pXFADoc.get() || !m_pSDKDoc) |
+FX_BOOL CPDFXFA_DocEnvironment::IsValidationsEnabled(CXFA_FFDoc* hDoc) { |
+ if (hDoc != m_pDocument->GetXFADoc() || !m_pDocument->GetSDKDoc()) |
return FALSE; |
- if (m_pSDKDoc->GetInterForm()) |
- return m_pSDKDoc->GetInterForm()->IsXfaValidationsEnabled(); |
+ if (m_pDocument->GetSDKDoc()->GetInterForm()) |
+ return m_pDocument->GetSDKDoc()->GetInterForm()->IsXfaValidationsEnabled(); |
return TRUE; |
} |
-void CPDFXFA_Document::SetValidationsEnabled(CXFA_FFDoc* hDoc, |
- FX_BOOL bEnabled) { |
- if (hDoc != m_pXFADoc.get() || !m_pSDKDoc) |
+void CPDFXFA_DocEnvironment::SetValidationsEnabled(CXFA_FFDoc* hDoc, |
+ FX_BOOL bEnabled) { |
+ if (hDoc != m_pDocument->GetXFADoc() || !m_pDocument->GetSDKDoc()) |
return; |
- if (m_pSDKDoc->GetInterForm()) |
- m_pSDKDoc->GetInterForm()->XfaSetValidationsEnabled(bEnabled); |
+ if (m_pDocument->GetSDKDoc()->GetInterForm()) |
+ m_pDocument->GetSDKDoc()->GetInterForm()->XfaSetValidationsEnabled( |
+ bEnabled); |
} |
-void CPDFXFA_Document::SetFocusWidget(CXFA_FFDoc* hDoc, |
- CXFA_FFWidget* hWidget) { |
- if (hDoc != m_pXFADoc.get()) |
+void CPDFXFA_DocEnvironment::SetFocusWidget(CXFA_FFDoc* hDoc, |
+ CXFA_FFWidget* hWidget) { |
+ if (hDoc != m_pDocument->GetXFADoc()) |
return; |
if (!hWidget) { |
- m_pSDKDoc->SetFocusAnnot(nullptr); |
+ m_pDocument->GetSDKDoc()->SetFocusAnnot(nullptr); |
return; |
} |
- int pageViewCount = m_pSDKDoc->GetPageViewCount(); |
+ int pageViewCount = m_pDocument->GetSDKDoc()->GetPageViewCount(); |
for (int i = 0; i < pageViewCount; i++) { |
- CPDFSDK_PageView* pPageView = m_pSDKDoc->GetPageView(i); |
+ CPDFSDK_PageView* pPageView = m_pDocument->GetSDKDoc()->GetPageView(i); |
if (!pPageView) |
continue; |
CPDFSDK_Annot* pAnnot = pPageView->GetAnnotByXFAWidget(hWidget); |
if (pAnnot) { |
- m_pSDKDoc->SetFocusAnnot(pAnnot); |
+ m_pDocument->GetSDKDoc()->SetFocusAnnot(pAnnot); |
break; |
} |
} |
} |
-void CPDFXFA_Document::Print(CXFA_FFDoc* hDoc, |
- int32_t nStartPage, |
- int32_t nEndPage, |
- uint32_t dwOptions) { |
- if (hDoc != m_pXFADoc.get()) |
+void CPDFXFA_DocEnvironment::Print(CXFA_FFDoc* hDoc, |
+ int32_t nStartPage, |
+ int32_t nEndPage, |
+ uint32_t dwOptions) { |
+ if (hDoc != m_pDocument->GetXFADoc()) |
return; |
- CPDFDoc_Environment* pEnv = m_pSDKDoc->GetEnv(); |
+ CPDFDoc_Environment* pEnv = m_pDocument->GetSDKDoc()->GetEnv(); |
if (!pEnv || !pEnv->GetFormFillInfo() || |
!pEnv->GetFormFillInfo()->m_pJsPlatform || |
!pEnv->GetFormFillInfo()->m_pJsPlatform->Doc_print) { |
@@ -750,13 +584,13 @@ void CPDFXFA_Document::Print(CXFA_FFDoc* hDoc, |
dwOptions & XFA_PRINTOPT_PrintAnnot); |
} |
-FX_ARGB CPDFXFA_Document::GetHighlightColor(CXFA_FFDoc* hDoc) { |
- if (hDoc != m_pXFADoc.get()) |
+FX_ARGB CPDFXFA_DocEnvironment::GetHighlightColor(CXFA_FFDoc* hDoc) { |
+ if (hDoc != m_pDocument->GetXFADoc()) |
return 0; |
- if (!m_pSDKDoc) |
+ if (!m_pDocument->GetSDKDoc()) |
return 0; |
- CPDFSDK_InterForm* pInterForm = m_pSDKDoc->GetInterForm(); |
+ CPDFSDK_InterForm* pInterForm = m_pDocument->GetSDKDoc()->GetInterForm(); |
if (!pInterForm) |
return 0; |
@@ -766,7 +600,7 @@ FX_ARGB CPDFXFA_Document::GetHighlightColor(CXFA_FFDoc* hDoc) { |
return argb; |
} |
-FX_BOOL CPDFXFA_Document::NotifySubmit(FX_BOOL bPrevOrPost) { |
+FX_BOOL CPDFXFA_DocEnvironment::NotifySubmit(FX_BOOL bPrevOrPost) { |
if (bPrevOrPost) |
return OnBeforeNotifySubmit(); |
@@ -774,19 +608,21 @@ FX_BOOL CPDFXFA_Document::NotifySubmit(FX_BOOL bPrevOrPost) { |
return TRUE; |
} |
-FX_BOOL CPDFXFA_Document::OnBeforeNotifySubmit() { |
- if (m_iDocType != DOCTYPE_DYNAMIC_XFA && m_iDocType != DOCTYPE_STATIC_XFA) |
+FX_BOOL CPDFXFA_DocEnvironment::OnBeforeNotifySubmit() { |
+ if (m_pDocument->GetDocType() != DOCTYPE_DYNAMIC_XFA && |
+ m_pDocument->GetDocType() != DOCTYPE_STATIC_XFA) |
return TRUE; |
- if (!m_pXFADocView) |
+ if (!m_pDocument->GetXFADocView()) |
return TRUE; |
- CXFA_FFWidgetHandler* pWidgetHandler = m_pXFADocView->GetWidgetHandler(); |
+ CXFA_FFWidgetHandler* pWidgetHandler = |
+ m_pDocument->GetXFADocView()->GetWidgetHandler(); |
if (!pWidgetHandler) |
return TRUE; |
std::unique_ptr<CXFA_WidgetAccIterator> pWidgetAccIterator( |
- m_pXFADocView->CreateWidgetAccIterator()); |
+ m_pDocument->GetXFADocView()->CreateWidgetAccIterator()); |
if (pWidgetAccIterator) { |
CXFA_EventParam Param; |
Param.m_eType = XFA_EVENT_PreSubmit; |
@@ -794,7 +630,8 @@ FX_BOOL CPDFXFA_Document::OnBeforeNotifySubmit() { |
pWidgetHandler->ProcessEvent(pWidgetAcc, &Param); |
} |
- pWidgetAccIterator.reset(m_pXFADocView->CreateWidgetAccIterator()); |
+ pWidgetAccIterator.reset( |
+ m_pDocument->GetXFADocView()->CreateWidgetAccIterator()); |
if (!pWidgetAccIterator) |
return TRUE; |
@@ -803,7 +640,7 @@ FX_BOOL CPDFXFA_Document::OnBeforeNotifySubmit() { |
while (pWidgetAcc) { |
int fRet = pWidgetAcc->ProcessValidate(-1); |
if (fRet == XFA_EVENTERROR_Error) { |
- CPDFDoc_Environment* pEnv = m_pSDKDoc->GetEnv(); |
+ CPDFDoc_Environment* pEnv = m_pDocument->GetSDKDoc()->GetEnv(); |
if (!pEnv) |
return FALSE; |
@@ -818,24 +655,26 @@ FX_BOOL CPDFXFA_Document::OnBeforeNotifySubmit() { |
} |
pWidgetAcc = pWidgetAccIterator->MoveToNext(); |
} |
- m_pXFADocView->UpdateDocView(); |
+ m_pDocument->GetXFADocView()->UpdateDocView(); |
return TRUE; |
} |
-void CPDFXFA_Document::OnAfterNotifySubmit() { |
- if (m_iDocType != DOCTYPE_DYNAMIC_XFA && m_iDocType != DOCTYPE_STATIC_XFA) |
+void CPDFXFA_DocEnvironment::OnAfterNotifySubmit() { |
+ if (m_pDocument->GetDocType() != DOCTYPE_DYNAMIC_XFA && |
+ m_pDocument->GetDocType() != DOCTYPE_STATIC_XFA) |
return; |
- if (!m_pXFADocView) |
+ if (!m_pDocument->GetXFADocView()) |
return; |
- CXFA_FFWidgetHandler* pWidgetHandler = m_pXFADocView->GetWidgetHandler(); |
+ CXFA_FFWidgetHandler* pWidgetHandler = |
+ m_pDocument->GetXFADocView()->GetWidgetHandler(); |
if (!pWidgetHandler) |
return; |
std::unique_ptr<CXFA_WidgetAccIterator> pWidgetAccIterator( |
- m_pXFADocView->CreateWidgetAccIterator()); |
+ m_pDocument->GetXFADocView()->CreateWidgetAccIterator()); |
if (!pWidgetAccIterator) |
return; |
@@ -846,22 +685,24 @@ void CPDFXFA_Document::OnAfterNotifySubmit() { |
pWidgetHandler->ProcessEvent(pWidgetAcc, &Param); |
pWidgetAcc = pWidgetAccIterator->MoveToNext(); |
} |
- m_pXFADocView->UpdateDocView(); |
+ m_pDocument->GetXFADocView()->UpdateDocView(); |
} |
-FX_BOOL CPDFXFA_Document::SubmitData(CXFA_FFDoc* hDoc, CXFA_Submit submit) { |
- if (!NotifySubmit(TRUE) || !m_pXFADocView) |
+FX_BOOL CPDFXFA_DocEnvironment::SubmitData(CXFA_FFDoc* hDoc, |
+ CXFA_Submit submit) { |
+ if (!NotifySubmit(TRUE) || !m_pDocument->GetXFADocView()) |
return FALSE; |
- m_pXFADocView->UpdateDocView(); |
+ m_pDocument->GetXFADocView()->UpdateDocView(); |
FX_BOOL ret = SubmitDataInternal(hDoc, submit); |
NotifySubmit(FALSE); |
return ret; |
} |
-IFX_FileRead* CPDFXFA_Document::OpenLinkedFile(CXFA_FFDoc* hDoc, |
- const CFX_WideString& wsLink) { |
- CPDFDoc_Environment* pEnv = m_pSDKDoc->GetEnv(); |
+IFX_FileRead* CPDFXFA_DocEnvironment::OpenLinkedFile( |
+ CXFA_FFDoc* hDoc, |
+ const CFX_WideString& wsLink) { |
+ CPDFDoc_Environment* pEnv = m_pDocument->GetSDKDoc()->GetEnv(); |
if (!pEnv) |
return FALSE; |
@@ -876,15 +717,15 @@ IFX_FileRead* CPDFXFA_Document::OpenLinkedFile(CXFA_FFDoc* hDoc, |
return new CFPDF_FileStream(pFileHandler); |
} |
-FX_BOOL CPDFXFA_Document::ExportSubmitFile(FPDF_FILEHANDLER* pFileHandler, |
- int fileType, |
- FPDF_DWORD encodeType, |
- FPDF_DWORD flag) { |
- if (!m_pXFADocView) |
+FX_BOOL CPDFXFA_DocEnvironment::ExportSubmitFile(FPDF_FILEHANDLER* pFileHandler, |
+ int fileType, |
+ FPDF_DWORD encodeType, |
+ FPDF_DWORD flag) { |
+ if (!m_pDocument->GetXFADocView()) |
return FALSE; |
CFX_ByteString content; |
- CPDFDoc_Environment* pEnv = m_pSDKDoc->GetEnv(); |
+ CPDFDoc_Environment* pEnv = m_pDocument->GetSDKDoc()->GetEnv(); |
if (!pEnv) |
return FALSE; |
@@ -892,7 +733,8 @@ FX_BOOL CPDFXFA_Document::ExportSubmitFile(FPDF_FILEHANDLER* pFileHandler, |
if (fileType == FXFA_SAVEAS_XML) { |
const char kContent[] = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\r\n"; |
fileStream.WriteBlock(kContent, 0, strlen(kContent)); |
- m_pXFADoc->SavePackage(XFA_HASHCODE_Data, &fileStream, nullptr); |
+ m_pDocument->GetXFADoc()->SavePackage(XFA_HASHCODE_Data, &fileStream, |
+ nullptr); |
return TRUE; |
} |
@@ -903,12 +745,12 @@ FX_BOOL CPDFXFA_Document::ExportSubmitFile(FPDF_FILEHANDLER* pFileHandler, |
flag = FXFA_CONFIG | FXFA_TEMPLATE | FXFA_LOCALESET | FXFA_DATASETS | |
FXFA_XMPMETA | FXFA_XFDF | FXFA_FORM; |
} |
- if (!m_pPDFDoc) { |
+ if (!m_pDocument->GetPDFDoc()) { |
fileStream.Flush(); |
return FALSE; |
} |
- CPDF_Dictionary* pRoot = m_pPDFDoc->GetRoot(); |
+ CPDF_Dictionary* pRoot = m_pDocument->GetPDFDoc()->GetRoot(); |
if (!pRoot) { |
fileStream.Flush(); |
return FALSE; |
@@ -953,9 +795,11 @@ FX_BOOL CPDFXFA_Document::ExportSubmitFile(FPDF_FILEHANDLER* pFileHandler, |
if (pPrePDFObj->GetString() == "form" && !(flag & FXFA_FORM)) |
continue; |
if (pPrePDFObj->GetString() == "form") { |
- m_pXFADoc->SavePackage(XFA_HASHCODE_Form, &fileStream, nullptr); |
+ m_pDocument->GetXFADoc()->SavePackage(XFA_HASHCODE_Form, &fileStream, |
+ nullptr); |
} else if (pPrePDFObj->GetString() == "datasets") { |
- m_pXFADoc->SavePackage(XFA_HASHCODE_Datasets, &fileStream, nullptr); |
+ m_pDocument->GetXFADoc()->SavePackage(XFA_HASHCODE_Datasets, &fileStream, |
+ nullptr); |
} else { |
// PDF,creator. |
} |
@@ -963,13 +807,8 @@ FX_BOOL CPDFXFA_Document::ExportSubmitFile(FPDF_FILEHANDLER* pFileHandler, |
return TRUE; |
} |
-void CPDFXFA_Document::ClearChangeMark() { |
- if (m_pSDKDoc) |
- m_pSDKDoc->ClearChangeMark(); |
-} |
- |
-void CPDFXFA_Document::ToXFAContentFlags(CFX_WideString csSrcContent, |
- FPDF_DWORD& flag) { |
+void CPDFXFA_DocEnvironment::ToXFAContentFlags(CFX_WideString csSrcContent, |
+ FPDF_DWORD& flag) { |
if (csSrcContent.Find(L" config ", 0) != -1) |
flag |= FXFA_CONFIG; |
if (csSrcContent.Find(L" template ", 0) != -1) |
@@ -990,12 +829,12 @@ void CPDFXFA_Document::ToXFAContentFlags(CFX_WideString csSrcContent, |
} |
} |
-FX_BOOL CPDFXFA_Document::MailToInfo(CFX_WideString& csURL, |
- CFX_WideString& csToAddress, |
- CFX_WideString& csCCAddress, |
- CFX_WideString& csBCCAddress, |
- CFX_WideString& csSubject, |
- CFX_WideString& csMsg) { |
+FX_BOOL CPDFXFA_DocEnvironment::MailToInfo(CFX_WideString& csURL, |
+ CFX_WideString& csToAddress, |
+ CFX_WideString& csCCAddress, |
+ CFX_WideString& csBCCAddress, |
+ CFX_WideString& csSubject, |
+ CFX_WideString& csMsg) { |
CFX_WideString srcURL = csURL; |
srcURL.TrimLeft(); |
if (srcURL.Left(7).CompareNoCase(L"mailto:") != 0) |
@@ -1055,9 +894,9 @@ FX_BOOL CPDFXFA_Document::MailToInfo(CFX_WideString& csURL, |
return TRUE; |
} |
-FX_BOOL CPDFXFA_Document::SubmitDataInternal(CXFA_FFDoc* hDoc, |
- CXFA_Submit submit) { |
- CPDFDoc_Environment* pEnv = m_pSDKDoc->GetEnv(); |
+FX_BOOL CPDFXFA_DocEnvironment::SubmitDataInternal(CXFA_FFDoc* hDoc, |
+ CXFA_Submit submit) { |
+ CPDFDoc_Environment* pEnv = m_pDocument->GetSDKDoc()->GetEnv(); |
if (!pEnv) |
return FALSE; |
@@ -1156,31 +995,37 @@ FX_BOOL CPDFXFA_Document::SubmitDataInternal(CXFA_FFDoc* hDoc, |
return bRet; |
} |
-FX_BOOL CPDFXFA_Document::SetGlobalProperty(CXFA_FFDoc* hDoc, |
- const CFX_ByteStringC& szPropName, |
- CFXJSE_Value* pValue) { |
- if (hDoc != m_pXFADoc.get()) |
+FX_BOOL CPDFXFA_DocEnvironment::SetGlobalProperty( |
+ CXFA_FFDoc* hDoc, |
+ const CFX_ByteStringC& szPropName, |
+ CFXJSE_Value* pValue) { |
+ if (hDoc != m_pDocument->GetXFADoc()) |
return FALSE; |
- if (m_pSDKDoc && m_pSDKDoc->GetEnv()->GetJSRuntime()) |
- return m_pSDKDoc->GetEnv()->GetJSRuntime()->SetValueByName(szPropName, |
- pValue); |
+ if (m_pDocument->GetSDKDoc() && |
+ m_pDocument->GetSDKDoc()->GetEnv()->GetJSRuntime()) |
+ return m_pDocument->GetSDKDoc()->GetEnv()->GetJSRuntime()->SetValueByName( |
+ szPropName, pValue); |
return FALSE; |
} |
-FX_BOOL CPDFXFA_Document::GetGlobalProperty(CXFA_FFDoc* hDoc, |
- const CFX_ByteStringC& szPropName, |
- CFXJSE_Value* pValue) { |
- if (hDoc != m_pXFADoc.get()) |
+FX_BOOL CPDFXFA_DocEnvironment::GetGlobalProperty( |
+ CXFA_FFDoc* hDoc, |
+ const CFX_ByteStringC& szPropName, |
+ CFXJSE_Value* pValue) { |
+ if (hDoc != m_pDocument->GetXFADoc()) |
return FALSE; |
- if (!m_pSDKDoc || !m_pSDKDoc->GetEnv()->GetJSRuntime()) |
+ if (!m_pDocument->GetSDKDoc() || |
+ !m_pDocument->GetSDKDoc()->GetEnv()->GetJSRuntime()) |
return FALSE; |
if (!m_pJSContext) { |
- m_pSDKDoc->GetEnv()->GetJSRuntime()->SetReaderDocument(m_pSDKDoc.get()); |
- m_pJSContext = m_pSDKDoc->GetEnv()->GetJSRuntime()->NewContext(); |
+ m_pDocument->GetSDKDoc()->GetEnv()->GetJSRuntime()->SetReaderDocument( |
+ m_pDocument->GetSDKDoc()); |
+ m_pJSContext = |
+ m_pDocument->GetSDKDoc()->GetEnv()->GetJSRuntime()->NewContext(); |
} |
- return m_pSDKDoc->GetEnv()->GetJSRuntime()->GetValueByName(szPropName, |
- pValue); |
+ return m_pDocument->GetSDKDoc()->GetEnv()->GetJSRuntime()->GetValueByName( |
+ szPropName, pValue); |
} |