| Index: fpdfsdk/fpdfformfill.cpp
|
| diff --git a/fpdfsdk/fpdfformfill.cpp b/fpdfsdk/fpdfformfill.cpp
|
| index 86585842e11defe60c1984616ff7f062a39a1413..bf44b5ea554eb2cac7402a3e747ee710aca580ea 100644
|
| --- a/fpdfsdk/fpdfformfill.cpp
|
| +++ b/fpdfsdk/fpdfformfill.cpp
|
| @@ -17,8 +17,8 @@
|
| #include "core/fpdfdoc/include/cpdf_interform.h"
|
| #include "core/fpdfdoc/include/cpdf_occontext.h"
|
| #include "core/fxge/include/cfx_fxgedevice.h"
|
| -#include "fpdfsdk/include/cpdfdoc_environment.h"
|
| #include "fpdfsdk/include/cpdfsdk_document.h"
|
| +#include "fpdfsdk/include/cpdfsdk_environment.h"
|
| #include "fpdfsdk/include/cpdfsdk_interform.h"
|
| #include "fpdfsdk/include/cpdfsdk_pageview.h"
|
| #include "fpdfsdk/include/fsdk_actionhandler.h"
|
| @@ -37,6 +37,10 @@
|
|
|
| namespace {
|
|
|
| +CPDFSDK_Environment* HandleToCPDFSDKEnvironment(FPDF_FORMHANDLE handle) {
|
| + return static_cast<CPDFSDK_Environment*>(handle);
|
| +}
|
| +
|
| CPDFSDK_InterForm* FormHandleToInterForm(FPDF_FORMHANDLE hHandle) {
|
| CPDFSDK_Document* pSDKDoc = CPDFSDK_Document::FromFPDFFormHandle(hHandle);
|
| return pSDKDoc ? pSDKDoc->GetInterForm() : nullptr;
|
| @@ -86,7 +90,7 @@ void FFLCommon(FPDF_FORMHANDLE hHandle,
|
| CPDF_Document* pPDFDoc = pDocument->GetPDFDoc();
|
| if (!pPDFDoc)
|
| return;
|
| - CPDFDoc_Environment* pEnv = (CPDFDoc_Environment*)hHandle;
|
| + CPDFSDK_Environment* pEnv = HandleToCPDFSDKEnvironment(hHandle);
|
| CPDFSDK_Document* pFXDoc = pEnv->GetSDKDocument();
|
| if (!pFXDoc)
|
| return;
|
| @@ -238,7 +242,7 @@ FPDFDOC_InitFormFillEnvironment(FPDF_DOCUMENT document,
|
| if (!pDocument)
|
| return nullptr;
|
|
|
| - CPDFDoc_Environment* pEnv = new CPDFDoc_Environment(pDocument, formInfo);
|
| + CPDFSDK_Environment* pEnv = new CPDFSDK_Environment(pDocument, formInfo);
|
| #ifdef PDF_ENABLE_XFA
|
| pEnv->SetSDKDocument(pDocument->GetSDKDocument(pEnv));
|
| CPDFXFA_App* pApp = CPDFXFA_App::GetInstance();
|
| @@ -253,7 +257,7 @@ DLLEXPORT void STDCALL
|
| FPDFDOC_ExitFormFillEnvironment(FPDF_FORMHANDLE hHandle) {
|
| if (!hHandle)
|
| return;
|
| - CPDFDoc_Environment* pEnv = (CPDFDoc_Environment*)hHandle;
|
| + CPDFSDK_Environment* pEnv = HandleToCPDFSDKEnvironment(hHandle);
|
| #ifdef PDF_ENABLE_XFA
|
| CPDFXFA_App* pApp = CPDFXFA_App::GetInstance();
|
| pApp->RemoveFormFillEnv(pEnv);
|
| @@ -641,7 +645,8 @@ DLLEXPORT void STDCALL FORM_OnBeforeClosePage(FPDF_PAGE page,
|
| if (!hHandle)
|
| return;
|
|
|
| - CPDFSDK_Document* pSDKDoc = ((CPDFDoc_Environment*)hHandle)->GetSDKDocument();
|
| + CPDFSDK_Document* pSDKDoc =
|
| + HandleToCPDFSDKEnvironment(hHandle)->GetSDKDocument();
|
| if (!pSDKDoc)
|
| return;
|
|
|
| @@ -659,13 +664,13 @@ DLLEXPORT void STDCALL FORM_OnBeforeClosePage(FPDF_PAGE page,
|
|
|
| DLLEXPORT void STDCALL FORM_DoDocumentJSAction(FPDF_FORMHANDLE hHandle) {
|
| CPDFSDK_Document* pSDKDoc = CPDFSDK_Document::FromFPDFFormHandle(hHandle);
|
| - if (pSDKDoc && ((CPDFDoc_Environment*)hHandle)->IsJSInitiated())
|
| + if (pSDKDoc && HandleToCPDFSDKEnvironment(hHandle)->IsJSInitiated())
|
| pSDKDoc->ProcJavascriptFun();
|
| }
|
|
|
| DLLEXPORT void STDCALL FORM_DoDocumentOpenAction(FPDF_FORMHANDLE hHandle) {
|
| CPDFSDK_Document* pSDKDoc = CPDFSDK_Document::FromFPDFFormHandle(hHandle);
|
| - if (pSDKDoc && ((CPDFDoc_Environment*)hHandle)->IsJSInitiated())
|
| + if (pSDKDoc && HandleToCPDFSDKEnvironment(hHandle)->IsJSInitiated())
|
| pSDKDoc->ProcOpenAction();
|
| }
|
|
|
| @@ -684,7 +689,7 @@ DLLEXPORT void STDCALL FORM_DoDocumentAAction(FPDF_FORMHANDLE hHandle,
|
| if (aa.ActionExist((CPDF_AAction::AActionType)aaType)) {
|
| CPDF_Action action = aa.GetAction((CPDF_AAction::AActionType)aaType);
|
| CPDFSDK_ActionHandler* pActionHandler =
|
| - ((CPDFDoc_Environment*)hHandle)->GetActionHander();
|
| + HandleToCPDFSDKEnvironment(hHandle)->GetActionHander();
|
| pActionHandler->DoAction_Document(action, (CPDF_AAction::AActionType)aaType,
|
| pSDKDoc);
|
| }
|
| @@ -708,7 +713,7 @@ DLLEXPORT void STDCALL FORM_DoPageAAction(FPDF_PAGE page,
|
| if (!pSDKDoc->GetPageView(pPage, false))
|
| return;
|
|
|
| - CPDFDoc_Environment* pEnv = pSDKDoc->GetEnv();
|
| + CPDFSDK_Environment* pEnv = pSDKDoc->GetEnv();
|
| CPDFSDK_ActionHandler* pActionHandler = pEnv->GetActionHander();
|
| CPDF_Dictionary* pPageDict = pPDFPage->m_pFormDict;
|
| CPDF_AAction aa(pPageDict->GetDictBy("AA"));
|
|
|