| Index: xfa/fxfa/app/xfa_ffdoc.cpp
|
| diff --git a/xfa/fxfa/app/xfa_ffdoc.cpp b/xfa/fxfa/app/xfa_ffdoc.cpp
|
| index 01d40ee8ccd61bf4a912a817580741e75483cb85..94f035251e31ed79e6ebc488c6aa5eea36c477bd 100644
|
| --- a/xfa/fxfa/app/xfa_ffdoc.cpp
|
| +++ b/xfa/fxfa/app/xfa_ffdoc.cpp
|
| @@ -4,22 +4,27 @@
|
|
|
| // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com
|
|
|
| -#include "xfa/fxfa/app/xfa_ffdoc.h"
|
| +#include "xfa/include/fxfa/xfa_ffdoc.h"
|
|
|
| #include "core/fpdfapi/fpdf_parser/include/cpdf_array.h"
|
| #include "core/fpdfapi/fpdf_parser/include/cpdf_document.h"
|
| #include "core/fxcrt/include/fx_ext.h"
|
| +#include "core/fxcrt/include/fx_memory.h"
|
| #include "core/include/fpdfdoc/fpdf_doc.h"
|
| #include "xfa/fde/xml/fde_xml_imp.h"
|
| #include "xfa/fgas/crt/fgas_algorithm.h"
|
| #include "xfa/fwl/core/ifwl_notedriver.h"
|
| -#include "xfa/fxfa/app/xfa_ffapp.h"
|
| -#include "xfa/fxfa/app/xfa_ffdocview.h"
|
| #include "xfa/fxfa/app/xfa_ffnotify.h"
|
| #include "xfa/fxfa/app/xfa_ffwidget.h"
|
| -#include "xfa/fxfa/app/xfa_fontmgr.h"
|
| #include "xfa/fxfa/parser/xfa_docdata.h"
|
| +#include "xfa/fxfa/parser/xfa_document_serialize.h"
|
| #include "xfa/fxfa/parser/xfa_parser.h"
|
| +#include "xfa/fxfa/parser/xfa_parser_imp.h"
|
| +#include "xfa/fxfa/parser/xfa_parser_imp.h"
|
| +#include "xfa/include/fxfa/xfa_checksum.h"
|
| +#include "xfa/include/fxfa/xfa_ffapp.h"
|
| +#include "xfa/include/fxfa/xfa_ffdocview.h"
|
| +#include "xfa/include/fxfa/xfa_fontmgr.h"
|
|
|
| CXFA_FFDoc::CXFA_FFDoc(CXFA_FFApp* pApp, IXFA_DocProvider* pDocProvider)
|
| : m_pDocProvider(pDocProvider),
|
| @@ -38,7 +43,7 @@ uint32_t CXFA_FFDoc::GetDocType() {
|
| }
|
| int32_t CXFA_FFDoc::StartLoad() {
|
| m_pNotify = new CXFA_FFNotify(this);
|
| - IXFA_DocParser* pDocParser = IXFA_DocParser::Create(m_pNotify);
|
| + CXFA_DocumentParser* pDocParser = new CXFA_DocumentParser(m_pNotify);
|
| int32_t iStatus = pDocParser->StartParse(m_pStream);
|
| m_pDocument = pDocParser->GetDocument();
|
| return iStatus;
|
| @@ -182,7 +187,7 @@ void CXFA_FFDoc::StopLoad() {
|
| m_dwDocType = XFA_DOCTYPE_Dynamic;
|
| }
|
| }
|
| -IXFA_DocView* CXFA_FFDoc::CreateDocView(uint32_t dwView) {
|
| +CXFA_FFDocView* CXFA_FFDoc::CreateDocView(uint32_t dwView) {
|
| CXFA_FFDocView* pDocView =
|
| (CXFA_FFDocView*)m_mapTypeToDocView.GetValueAt((void*)(uintptr_t)dwView);
|
| if (!pDocView) {
|
| @@ -191,7 +196,7 @@ IXFA_DocView* CXFA_FFDoc::CreateDocView(uint32_t dwView) {
|
| }
|
| return pDocView;
|
| }
|
| -CXFA_FFDocView* CXFA_FFDoc::GetDocView(IXFA_DocLayout* pLayout) {
|
| +CXFA_FFDocView* CXFA_FFDoc::GetDocView(CXFA_LayoutProcessor* pLayout) {
|
| FX_POSITION ps = m_mapTypeToDocView.GetStartPosition();
|
| while (ps) {
|
| void* pType;
|
| @@ -393,11 +398,8 @@ CFDE_XMLElement* CXFA_FFDoc::GetPackageData(const CFX_WideStringC& wsPackage) {
|
| }
|
| FX_BOOL CXFA_FFDoc::SavePackage(const CFX_WideStringC& wsPackage,
|
| IFX_FileWrite* pFile,
|
| - IXFA_ChecksumContext* pCSContext) {
|
| - IXFA_PacketExport* pExport = IXFA_PacketExport::Create(m_pDocument);
|
| - if (!pExport) {
|
| - return FALSE;
|
| - }
|
| + CXFA_ChecksumContext* pCSContext) {
|
| + CXFA_DataExporter* pExport = new CXFA_DataExporter(m_pDocument);
|
| uint32_t packetHash =
|
| FX_HashCode_String_GetW(wsPackage.GetPtr(), wsPackage.GetLength());
|
| CXFA_Node* pNode = NULL;
|
| @@ -422,11 +424,8 @@ FX_BOOL CXFA_FFDoc::SavePackage(const CFX_WideStringC& wsPackage,
|
| return bFlags;
|
| }
|
| FX_BOOL CXFA_FFDoc::ImportData(IFX_FileRead* pStream, FX_BOOL bXDP) {
|
| - FX_BOOL bRet = FALSE;
|
| - IXFA_PacketImport* pImport = IXFA_PacketImport::Create(m_pDocument);
|
| - if (pImport) {
|
| - bRet = pImport->ImportData(pStream);
|
| - pImport->Release();
|
| - }
|
| - return bRet;
|
| + std::unique_ptr<CXFA_DataImporter, ReleaseDeleter<CXFA_DataImporter>>
|
| + importer(new CXFA_DataImporter(m_pDocument));
|
| +
|
| + return importer->ImportData(pStream);
|
| }
|
|
|