| OLD | NEW |
| 1 // Copyright 2016 PDFium Authors. All rights reserved. | 1 // Copyright 2016 PDFium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com | 5 // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com |
| 6 | 6 |
| 7 #include "fpdfsdk/fpdfxfa/include/cpdfxfa_docenvironment.h" | 7 #include "fpdfsdk/fpdfxfa/include/cpdfxfa_docenvironment.h" |
| 8 | 8 |
| 9 #include "core/fpdfapi/fpdf_parser/include/cpdf_array.h" | 9 #include "core/fpdfapi/fpdf_parser/include/cpdf_array.h" |
| 10 #include "core/fpdfapi/fpdf_parser/include/cpdf_string.h" | 10 #include "core/fpdfapi/fpdf_parser/include/cpdf_string.h" |
| (...skipping 368 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 379 | 379 |
| 380 void CPDFXFA_DocEnvironment::GetTitle(CXFA_FFDoc* hDoc, | 380 void CPDFXFA_DocEnvironment::GetTitle(CXFA_FFDoc* hDoc, |
| 381 CFX_WideString& wsTitle) { | 381 CFX_WideString& wsTitle) { |
| 382 if (hDoc != m_pDocument->GetXFADoc() || !m_pDocument->GetPDFDoc()) | 382 if (hDoc != m_pDocument->GetXFADoc() || !m_pDocument->GetPDFDoc()) |
| 383 return; | 383 return; |
| 384 | 384 |
| 385 CPDF_Dictionary* pInfoDict = m_pDocument->GetPDFDoc()->GetInfo(); | 385 CPDF_Dictionary* pInfoDict = m_pDocument->GetPDFDoc()->GetInfo(); |
| 386 if (!pInfoDict) | 386 if (!pInfoDict) |
| 387 return; | 387 return; |
| 388 | 388 |
| 389 CFX_ByteString csTitle = pInfoDict->GetStringBy("Title"); | 389 CFX_ByteString csTitle = pInfoDict->GetStringFor("Title"); |
| 390 wsTitle = wsTitle.FromLocal(csTitle.GetBuffer(csTitle.GetLength())); | 390 wsTitle = wsTitle.FromLocal(csTitle.GetBuffer(csTitle.GetLength())); |
| 391 csTitle.ReleaseBuffer(csTitle.GetLength()); | 391 csTitle.ReleaseBuffer(csTitle.GetLength()); |
| 392 } | 392 } |
| 393 | 393 |
| 394 void CPDFXFA_DocEnvironment::SetTitle(CXFA_FFDoc* hDoc, | 394 void CPDFXFA_DocEnvironment::SetTitle(CXFA_FFDoc* hDoc, |
| 395 const CFX_WideString& wsTitle) { | 395 const CFX_WideString& wsTitle) { |
| 396 if (hDoc != m_pDocument->GetXFADoc() || !m_pDocument->GetPDFDoc()) | 396 if (hDoc != m_pDocument->GetXFADoc() || !m_pDocument->GetPDFDoc()) |
| 397 return; | 397 return; |
| 398 | 398 |
| 399 if (CPDF_Dictionary* pInfoDict = m_pDocument->GetPDFDoc()->GetInfo()) | 399 if (CPDF_Dictionary* pInfoDict = m_pDocument->GetPDFDoc()->GetInfo()) |
| 400 pInfoDict->SetAt("Title", new CPDF_String(wsTitle)); | 400 pInfoDict->SetFor("Title", new CPDF_String(wsTitle)); |
| 401 } | 401 } |
| 402 | 402 |
| 403 void CPDFXFA_DocEnvironment::ExportData(CXFA_FFDoc* hDoc, | 403 void CPDFXFA_DocEnvironment::ExportData(CXFA_FFDoc* hDoc, |
| 404 const CFX_WideString& wsFilePath, | 404 const CFX_WideString& wsFilePath, |
| 405 FX_BOOL bXDP) { | 405 FX_BOOL bXDP) { |
| 406 if (hDoc != m_pDocument->GetXFADoc()) | 406 if (hDoc != m_pDocument->GetXFADoc()) |
| 407 return; | 407 return; |
| 408 | 408 |
| 409 if (m_pDocument->GetDocType() != DOCTYPE_DYNAMIC_XFA && | 409 if (m_pDocument->GetDocType() != DOCTYPE_DYNAMIC_XFA && |
| 410 m_pDocument->GetDocType() != DOCTYPE_STATIC_XFA) | 410 m_pDocument->GetDocType() != DOCTYPE_STATIC_XFA) |
| (...skipping 29 matching lines...) Expand all Loading... |
| 440 m_pDocument->GetXFADocView()->GetDoc()->SavePackage(XFA_HASHCODE_Data, | 440 m_pDocument->GetXFADocView()->GetDoc()->SavePackage(XFA_HASHCODE_Data, |
| 441 &fileWrite, nullptr); | 441 &fileWrite, nullptr); |
| 442 } else if (fileType == FXFA_SAVEAS_XDP) { | 442 } else if (fileType == FXFA_SAVEAS_XDP) { |
| 443 if (!m_pDocument->GetPDFDoc()) | 443 if (!m_pDocument->GetPDFDoc()) |
| 444 return; | 444 return; |
| 445 | 445 |
| 446 CPDF_Dictionary* pRoot = m_pDocument->GetPDFDoc()->GetRoot(); | 446 CPDF_Dictionary* pRoot = m_pDocument->GetPDFDoc()->GetRoot(); |
| 447 if (!pRoot) | 447 if (!pRoot) |
| 448 return; | 448 return; |
| 449 | 449 |
| 450 CPDF_Dictionary* pAcroForm = pRoot->GetDictBy("AcroForm"); | 450 CPDF_Dictionary* pAcroForm = pRoot->GetDictFor("AcroForm"); |
| 451 if (!pAcroForm) | 451 if (!pAcroForm) |
| 452 return; | 452 return; |
| 453 | 453 |
| 454 CPDF_Array* pArray = ToArray(pAcroForm->GetObjectBy("XFA")); | 454 CPDF_Array* pArray = ToArray(pAcroForm->GetObjectFor("XFA")); |
| 455 if (!pArray) | 455 if (!pArray) |
| 456 return; | 456 return; |
| 457 | 457 |
| 458 int size = pArray->GetCount(); | 458 int size = pArray->GetCount(); |
| 459 for (int i = 1; i < size; i += 2) { | 459 for (int i = 1; i < size; i += 2) { |
| 460 CPDF_Object* pPDFObj = pArray->GetObjectAt(i); | 460 CPDF_Object* pPDFObj = pArray->GetObjectAt(i); |
| 461 CPDF_Object* pPrePDFObj = pArray->GetObjectAt(i - 1); | 461 CPDF_Object* pPrePDFObj = pArray->GetObjectAt(i - 1); |
| 462 if (!pPrePDFObj->IsString()) | 462 if (!pPrePDFObj->IsString()) |
| 463 continue; | 463 continue; |
| 464 if (!pPDFObj->IsReference()) | 464 if (!pPDFObj->IsReference()) |
| (...skipping 276 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 741 fileStream.Flush(); | 741 fileStream.Flush(); |
| 742 return FALSE; | 742 return FALSE; |
| 743 } | 743 } |
| 744 | 744 |
| 745 CPDF_Dictionary* pRoot = m_pDocument->GetPDFDoc()->GetRoot(); | 745 CPDF_Dictionary* pRoot = m_pDocument->GetPDFDoc()->GetRoot(); |
| 746 if (!pRoot) { | 746 if (!pRoot) { |
| 747 fileStream.Flush(); | 747 fileStream.Flush(); |
| 748 return FALSE; | 748 return FALSE; |
| 749 } | 749 } |
| 750 | 750 |
| 751 CPDF_Dictionary* pAcroForm = pRoot->GetDictBy("AcroForm"); | 751 CPDF_Dictionary* pAcroForm = pRoot->GetDictFor("AcroForm"); |
| 752 if (!pAcroForm) { | 752 if (!pAcroForm) { |
| 753 fileStream.Flush(); | 753 fileStream.Flush(); |
| 754 return FALSE; | 754 return FALSE; |
| 755 } | 755 } |
| 756 | 756 |
| 757 CPDF_Array* pArray = ToArray(pAcroForm->GetObjectBy("XFA")); | 757 CPDF_Array* pArray = ToArray(pAcroForm->GetObjectFor("XFA")); |
| 758 if (!pArray) { | 758 if (!pArray) { |
| 759 fileStream.Flush(); | 759 fileStream.Flush(); |
| 760 return FALSE; | 760 return FALSE; |
| 761 } | 761 } |
| 762 | 762 |
| 763 int size = pArray->GetCount(); | 763 int size = pArray->GetCount(); |
| 764 for (int i = 1; i < size; i += 2) { | 764 for (int i = 1; i < size; i += 2) { |
| 765 CPDF_Object* pPDFObj = pArray->GetObjectAt(i); | 765 CPDF_Object* pPDFObj = pArray->GetObjectAt(i); |
| 766 CPDF_Object* pPrePDFObj = pArray->GetObjectAt(i - 1); | 766 CPDF_Object* pPrePDFObj = pArray->GetObjectAt(i - 1); |
| 767 if (!pPrePDFObj->IsString()) | 767 if (!pPrePDFObj->IsString()) |
| (...skipping 244 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1012 if (!m_pJSContext) { | 1012 if (!m_pJSContext) { |
| 1013 m_pDocument->GetSDKDoc()->GetEnv()->GetJSRuntime()->SetReaderDocument( | 1013 m_pDocument->GetSDKDoc()->GetEnv()->GetJSRuntime()->SetReaderDocument( |
| 1014 m_pDocument->GetSDKDoc()); | 1014 m_pDocument->GetSDKDoc()); |
| 1015 m_pJSContext = | 1015 m_pJSContext = |
| 1016 m_pDocument->GetSDKDoc()->GetEnv()->GetJSRuntime()->NewContext(); | 1016 m_pDocument->GetSDKDoc()->GetEnv()->GetJSRuntime()->NewContext(); |
| 1017 } | 1017 } |
| 1018 | 1018 |
| 1019 return m_pDocument->GetSDKDoc()->GetEnv()->GetJSRuntime()->GetValueByName( | 1019 return m_pDocument->GetSDKDoc()->GetEnv()->GetJSRuntime()->GetValueByName( |
| 1020 szPropName, pValue); | 1020 szPropName, pValue); |
| 1021 } | 1021 } |
| OLD | NEW |