Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(830)

Side by Side Diff: core/src/fpdfapi/fpdf_edit/fpdf_edit_content.cpp

Issue 1701073002: Split CPDF_PageObjectHolder off from CPDF_PageObjectList (Closed) Base URL: https://pdfium.googlesource.com/pdfium.git@master
Patch Set: m_pPage can never be null, remove checks. Created 4 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « core/include/fpdftext/fpdf_text.h ('k') | core/src/fpdfapi/fpdf_font/fpdf_font.cpp » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2014 PDFium Authors. All rights reserved. 1 // Copyright 2014 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 "core/include/fpdfapi/fpdf_module.h" 7 #include "core/include/fpdfapi/fpdf_module.h"
8 #include "core/include/fpdfapi/fpdf_page.h" 8 #include "core/include/fpdfapi/fpdf_page.h"
9 #include "core/include/fpdfapi/fpdf_serial.h" 9 #include "core/include/fpdfapi/fpdf_serial.h"
10 #include "core/src/fpdfapi/fpdf_page/pageint.h" 10 #include "core/src/fpdfapi/fpdf_page/pageint.h"
11 11
12 CFX_ByteTextBuf& operator<<(CFX_ByteTextBuf& ar, CFX_Matrix& matrix) { 12 CFX_ByteTextBuf& operator<<(CFX_ByteTextBuf& ar, CFX_Matrix& matrix) {
13 ar << matrix.a << " " << matrix.b << " " << matrix.c << " " << matrix.d << " " 13 ar << matrix.a << " " << matrix.b << " " << matrix.c << " " << matrix.d << " "
14 << matrix.e << " " << matrix.f; 14 << matrix.e << " " << matrix.f;
15 return ar; 15 return ar;
16 } 16 }
17 CPDF_PageContentGenerator::CPDF_PageContentGenerator(CPDF_Page* pPage) 17 CPDF_PageContentGenerator::CPDF_PageContentGenerator(CPDF_Page* pPage)
18 : m_pPage(pPage) { 18 : m_pPage(pPage) {
19 m_pDocument = NULL; 19 m_pDocument = NULL;
20 if (m_pPage) { 20 if (m_pPage) {
21 m_pDocument = m_pPage->m_pDocument; 21 m_pDocument = m_pPage->m_pDocument;
22 } 22 }
23 FX_POSITION pos = pPage->GetFirstObjectPosition(); 23 FX_POSITION pos = pPage->GetPageObjectList()->GetHeadPosition();
24 while (pos) { 24 while (pos) {
25 InsertPageObject(pPage->GetNextObject(pos)); 25 InsertPageObject(pPage->GetPageObjectList()->GetNextObject(pos));
26 } 26 }
27 } 27 }
28 CPDF_PageContentGenerator::~CPDF_PageContentGenerator() {} 28 CPDF_PageContentGenerator::~CPDF_PageContentGenerator() {}
29 FX_BOOL CPDF_PageContentGenerator::InsertPageObject( 29 FX_BOOL CPDF_PageContentGenerator::InsertPageObject(
30 CPDF_PageObject* pPageObject) { 30 CPDF_PageObject* pPageObject) {
31 if (!pPageObject) { 31 if (!pPageObject) {
32 return FALSE; 32 return FALSE;
33 } 33 }
34 return m_pageObjects.Add(pPageObject); 34 return m_pageObjects.Add(pPageObject);
35 } 35 }
(...skipping 120 matching lines...) Expand 10 before | Expand all | Expand 10 after
156 CPDF_StreamAcc contentStream; 156 CPDF_StreamAcc contentStream;
157 contentStream.LoadAllData(pStream); 157 contentStream.LoadAllData(pStream);
158 ProcessForm(buf, contentStream.GetData(), contentStream.GetSize(), matrix); 158 ProcessForm(buf, contentStream.GetData(), contentStream.GetSize(), matrix);
159 } 159 }
160 CPDF_Stream* pStream = new CPDF_Stream(NULL, 0, NULL); 160 CPDF_Stream* pStream = new CPDF_Stream(NULL, 0, NULL);
161 pStream->SetData(buf.GetBuffer(), buf.GetLength(), FALSE, FALSE); 161 pStream->SetData(buf.GetBuffer(), buf.GetLength(), FALSE, FALSE);
162 m_pDocument->AddIndirectObject(pStream); 162 m_pDocument->AddIndirectObject(pStream);
163 m_pPage->m_pFormDict->SetAtReference("Contents", m_pDocument, 163 m_pPage->m_pFormDict->SetAtReference("Contents", m_pDocument,
164 pStream->GetObjNum()); 164 pStream->GetObjNum());
165 } 165 }
OLDNEW
« no previous file with comments | « core/include/fpdftext/fpdf_text.h ('k') | core/src/fpdfapi/fpdf_font/fpdf_font.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698