From 2398d8938277a2492b411f8f807bf1935918ccae Mon Sep 17 00:00:00 2001 From: Tom Sepez Date: Wed, 17 Feb 2016 16:46:26 -0800 Subject: Remove CFX_PtrList from renderer main loop. Exposes an iterator over the object list, but not the object holder, since pages and forms inherit from object holder, and we don't want to imply that there's only one thing that might be iterated over for those classes. R=thestig@chromium.org Review URL: https://codereview.chromium.org/1700183002 . --- core/src/fpdfapi/fpdf_edit/fpdf_edit_content.cpp | 21 +++++++-------------- 1 file changed, 7 insertions(+), 14 deletions(-) (limited to 'core/src/fpdfapi/fpdf_edit/fpdf_edit_content.cpp') diff --git a/core/src/fpdfapi/fpdf_edit/fpdf_edit_content.cpp b/core/src/fpdfapi/fpdf_edit/fpdf_edit_content.cpp index 82ab370564..ef0344cda0 100644 --- a/core/src/fpdfapi/fpdf_edit/fpdf_edit_content.cpp +++ b/core/src/fpdfapi/fpdf_edit/fpdf_edit_content.cpp @@ -14,25 +14,18 @@ CFX_ByteTextBuf& operator<<(CFX_ByteTextBuf& ar, CFX_Matrix& matrix) { << matrix.e << " " << matrix.f; return ar; } + CPDF_PageContentGenerator::CPDF_PageContentGenerator(CPDF_Page* pPage) - : m_pPage(pPage) { - m_pDocument = NULL; - if (m_pPage) { - m_pDocument = m_pPage->m_pDocument; - } - FX_POSITION pos = pPage->GetPageObjectList()->GetHeadPosition(); - while (pos) { - InsertPageObject(pPage->GetPageObjectList()->GetNextObject(pos)); - } + : m_pPage(pPage), m_pDocument(m_pPage->m_pDocument) { + for (const auto& pObj : *pPage->GetPageObjectList()) + InsertPageObject(pObj.get()); } -CPDF_PageContentGenerator::~CPDF_PageContentGenerator() {} + FX_BOOL CPDF_PageContentGenerator::InsertPageObject( CPDF_PageObject* pPageObject) { - if (!pPageObject) { - return FALSE; - } - return m_pageObjects.Add(pPageObject); + return pPageObject && m_pageObjects.Add(pPageObject); } + void CPDF_PageContentGenerator::GenerateContent() { CFX_ByteTextBuf buf; CPDF_Dictionary* pPageDict = m_pPage->m_pFormDict; -- cgit v1.2.3