OLD | NEW |
---|---|
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 "xfa/fxfa/parser/xfa_layout_pagemgr_new.h" | 7 #include "xfa/fxfa/parser/xfa_layout_pagemgr_new.h" |
8 | 8 |
9 #include "xfa/fxfa/fm2js/xfa_fm2jsapi.h" | 9 #include "xfa/fxfa/fm2js/xfa_fm2jsapi.h" |
10 #include "xfa/fxfa/parser/xfa_docdata.h" | 10 #include "xfa/fxfa/parser/xfa_docdata.h" |
11 #include "xfa/fxfa/parser/xfa_doclayout.h" | 11 #include "xfa/fxfa/parser/xfa_doclayout.h" |
12 #include "xfa/fxfa/parser/xfa_document.h" | 12 #include "xfa/fxfa/parser/xfa_document.h" |
13 #include "xfa/fxfa/parser/xfa_document_datamerger_imp.h" | 13 #include "xfa/fxfa/parser/xfa_document_datamerger_imp.h" |
14 #include "xfa/fxfa/parser/xfa_document_layout_imp.h" | 14 #include "xfa/fxfa/parser/xfa_document_layout_imp.h" |
15 #include "xfa/fxfa/parser/xfa_layout_appadapter.h" | 15 #include "xfa/fxfa/parser/xfa_layout_appadapter.h" |
16 #include "xfa/fxfa/parser/xfa_layout_itemlayout.h" | 16 #include "xfa/fxfa/parser/xfa_layout_itemlayout.h" |
17 #include "xfa/fxfa/parser/xfa_localemgr.h" | 17 #include "xfa/fxfa/parser/xfa_localemgr.h" |
18 #include "xfa/fxfa/parser/xfa_object.h" | 18 #include "xfa/fxfa/parser/xfa_object.h" |
19 #include "xfa/fxfa/parser/xfa_parser.h" | 19 #include "xfa/fxfa/parser/xfa_parser.h" |
20 #include "xfa/fxfa/parser/xfa_script.h" | 20 #include "xfa/fxfa/parser/xfa_script.h" |
21 #include "xfa/fxfa/parser/xfa_utils.h" | 21 #include "xfa/fxfa/parser/xfa_utils.h" |
22 #include "xfa/fxfa/parser/xfa_parser_imp.h" | |
23 #include "xfa/fxfa/app/xfa_ffnotify.h" | |
24 #include "xfa/fxfa/parser/xfa_script_imp.h" | |
22 | 25 |
23 CXFA_LayoutPageMgr::CXFA_LayoutPageMgr(CXFA_LayoutProcessor* pLayoutProcessor) | 26 CXFA_LayoutPageMgr::CXFA_LayoutPageMgr(CXFA_LayoutProcessor* pLayoutProcessor) |
24 : m_pLayoutProcessor(pLayoutProcessor), | 27 : m_pLayoutProcessor(pLayoutProcessor), |
25 m_pTemplatePageSetRoot(nullptr), | 28 m_pTemplatePageSetRoot(nullptr), |
26 m_pPageSetLayoutItemRoot(nullptr), | 29 m_pPageSetLayoutItemRoot(nullptr), |
27 m_pPageSetCurRoot(nullptr), | 30 m_pPageSetCurRoot(nullptr), |
28 m_pCurrentContainerRecord(nullptr), | 31 m_pCurrentContainerRecord(nullptr), |
29 m_pCurPageArea(nullptr), | 32 m_pCurPageArea(nullptr), |
30 m_nAvailPages(0), | 33 m_nAvailPages(0), |
31 m_nCurPageCount(0), | 34 m_nCurPageCount(0), |
(...skipping 43 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
75 iCount++; | 78 iCount++; |
76 if (pPageArea->GetFirstChildByClass(XFA_ELEMENT_ContentArea)) { | 79 if (pPageArea->GetFirstChildByClass(XFA_ELEMENT_ContentArea)) { |
77 return TRUE; | 80 return TRUE; |
78 } | 81 } |
79 } | 82 } |
80 } | 83 } |
81 if (iCount > 0) { | 84 if (iCount > 0) { |
82 return FALSE; | 85 return FALSE; |
83 } | 86 } |
84 CXFA_Document* pDocument = pTemplateNode->GetDocument(); | 87 CXFA_Document* pDocument = pTemplateNode->GetDocument(); |
85 IXFA_ObjFactory* pObjFactory = pDocument->GetParser()->GetFactory(); | 88 CXFA_Document* pObjFactory = pDocument->GetParser()->GetFactory(); |
86 pPageArea = m_pTemplatePageSetRoot->GetChild(0, XFA_ELEMENT_PageArea); | 89 pPageArea = m_pTemplatePageSetRoot->GetChild(0, XFA_ELEMENT_PageArea); |
87 if (!pPageArea) { | 90 if (!pPageArea) { |
88 pPageArea = pObjFactory->CreateNode(m_pTemplatePageSetRoot->GetPacketID(), | 91 pPageArea = pObjFactory->CreateNode(m_pTemplatePageSetRoot->GetPacketID(), |
89 XFA_ELEMENT_PageArea); | 92 XFA_ELEMENT_PageArea); |
90 if (!pPageArea) { | 93 if (!pPageArea) { |
91 return FALSE; | 94 return FALSE; |
92 } | 95 } |
93 m_pTemplatePageSetRoot->InsertChild(pPageArea, NULL); | 96 m_pTemplatePageSetRoot->InsertChild(pPageArea, NULL); |
94 pPageArea->SetFlag(XFA_NODEFLAG_Initialized); | 97 pPageArea->SetFlag(XFA_NODEFLAG_Initialized); |
95 } | 98 } |
(...skipping 303 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
399 } | 402 } |
400 void CXFA_LayoutPageMgr::AddPageAreaLayoutItem(CXFA_ContainerRecord* pNewRecord, | 403 void CXFA_LayoutPageMgr::AddPageAreaLayoutItem(CXFA_ContainerRecord* pNewRecord, |
401 CXFA_Node* pNewPageArea) { | 404 CXFA_Node* pNewPageArea) { |
402 CXFA_ContainerLayoutItem* pNewPageAreaLayoutItem = NULL; | 405 CXFA_ContainerLayoutItem* pNewPageAreaLayoutItem = NULL; |
403 if (m_PageArray.GetSize() > m_nAvailPages) { | 406 if (m_PageArray.GetSize() > m_nAvailPages) { |
404 CXFA_ContainerLayoutItem* pContainerItem = m_PageArray[m_nAvailPages]; | 407 CXFA_ContainerLayoutItem* pContainerItem = m_PageArray[m_nAvailPages]; |
405 pContainerItem->m_pFormNode = pNewPageArea; | 408 pContainerItem->m_pFormNode = pNewPageArea; |
406 m_nAvailPages++; | 409 m_nAvailPages++; |
407 pNewPageAreaLayoutItem = pContainerItem; | 410 pNewPageAreaLayoutItem = pContainerItem; |
408 } else { | 411 } else { |
409 IXFA_Notify* pNotify = | 412 CXFA_FFNotify* pNotify = |
410 pNewPageArea->GetDocument()->GetParser()->GetNotify(); | 413 pNewPageArea->GetDocument()->GetParser()->GetNotify(); |
411 CXFA_ContainerLayoutItem* pContainerItem = | 414 CXFA_ContainerLayoutItem* pContainerItem = |
412 (CXFA_ContainerLayoutItem*)pNotify->OnCreateLayoutItem(pNewPageArea); | 415 (CXFA_ContainerLayoutItem*)pNotify->OnCreateLayoutItem(pNewPageArea); |
413 m_PageArray.Add(pContainerItem); | 416 m_PageArray.Add(pContainerItem); |
414 m_nAvailPages++; | 417 m_nAvailPages++; |
415 pNotify->OnPageEvent(pContainerItem, XFA_PAGEEVENT_PageAdded, | 418 pNotify->OnPageEvent(pContainerItem, XFA_PAGEEVENT_PageAdded, |
416 (void*)(uintptr_t)m_nAvailPages); | 419 (void*)(uintptr_t)m_nAvailPages); |
417 pNewPageAreaLayoutItem = pContainerItem; | 420 pNewPageAreaLayoutItem = pContainerItem; |
418 } | 421 } |
419 pNewRecord->pCurPageSet->AddChild(pNewPageAreaLayoutItem); | 422 pNewRecord->pCurPageSet->AddChild(pNewPageAreaLayoutItem); |
(...skipping 172 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
592 AddPageAreaLayoutItem(pRecord, pNode); | 595 AddPageAreaLayoutItem(pRecord, pNode); |
593 } | 596 } |
594 } break; | 597 } break; |
595 } | 598 } |
596 } | 599 } |
597 } | 600 } |
598 } | 601 } |
599 int32_t CXFA_LayoutPageMgr::GetPageCount() const { | 602 int32_t CXFA_LayoutPageMgr::GetPageCount() const { |
600 return m_PageArray.GetSize(); | 603 return m_PageArray.GetSize(); |
601 } | 604 } |
602 IXFA_LayoutPage* CXFA_LayoutPageMgr::GetPage(int32_t index) const { | 605 CXFA_ContainerLayoutItem* CXFA_LayoutPageMgr::GetPage(int32_t index) const { |
603 if (index < 0 || index >= m_PageArray.GetSize()) | 606 if (index < 0 || index >= m_PageArray.GetSize()) |
604 return nullptr; | 607 return nullptr; |
605 return m_PageArray[index]; | 608 return m_PageArray[index]; |
606 } | 609 } |
607 int32_t CXFA_LayoutPageMgr::GetPageIndex(const IXFA_LayoutPage* pPage) const { | 610 int32_t CXFA_LayoutPageMgr::GetPageIndex( |
611 const CXFA_ContainerLayoutItem* pPage) const { | |
608 // FIXME: Find() method should take const. | 612 // FIXME: Find() method should take const. |
609 return m_PageArray.Find(static_cast<CXFA_ContainerLayoutItem*>( | 613 return m_PageArray.Find(static_cast<CXFA_ContainerLayoutItem*>( |
Tom Sepez
2016/03/31 17:01:57
one of these casts can go.
dsinclair
2016/03/31 19:52:27
Done.
| |
610 const_cast<IXFA_LayoutPage*>(pPage))); | 614 const_cast<CXFA_ContainerLayoutItem*>(pPage))); |
611 } | 615 } |
612 FX_BOOL CXFA_LayoutPageMgr::RunBreak(XFA_ELEMENT eBreakType, | 616 FX_BOOL CXFA_LayoutPageMgr::RunBreak(XFA_ELEMENT eBreakType, |
613 XFA_ATTRIBUTEENUM eTargetType, | 617 XFA_ATTRIBUTEENUM eTargetType, |
614 CXFA_Node* pTarget, | 618 CXFA_Node* pTarget, |
615 FX_BOOL bStartNew) { | 619 FX_BOOL bStartNew) { |
616 FX_BOOL bRet = FALSE; | 620 FX_BOOL bRet = FALSE; |
617 switch (eTargetType) { | 621 switch (eTargetType) { |
618 case XFA_ATTRIBUTEENUM_ContentArea: | 622 case XFA_ATTRIBUTEENUM_ContentArea: |
619 if (pTarget && pTarget->GetClassID() != XFA_ELEMENT_ContentArea) { | 623 if (pTarget && pTarget->GetClassID() != XFA_ELEMENT_ContentArea) { |
620 pTarget = NULL; | 624 pTarget = NULL; |
(...skipping 867 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
1488 m_nCurPageCount = 0; | 1492 m_nCurPageCount = 0; |
1489 m_bCreateOverFlowPage = FALSE; | 1493 m_bCreateOverFlowPage = FALSE; |
1490 m_pPageSetMap.RemoveAll(); | 1494 m_pPageSetMap.RemoveAll(); |
1491 } | 1495 } |
1492 CXFA_LayoutItem* CXFA_LayoutPageMgr::FindOrCreateLayoutItem( | 1496 CXFA_LayoutItem* CXFA_LayoutPageMgr::FindOrCreateLayoutItem( |
1493 CXFA_Node* pFormNode) { | 1497 CXFA_Node* pFormNode) { |
1494 return pFormNode->GetDocument()->GetParser()->GetNotify()->OnCreateLayoutItem( | 1498 return pFormNode->GetDocument()->GetParser()->GetNotify()->OnCreateLayoutItem( |
1495 pFormNode); | 1499 pFormNode); |
1496 } | 1500 } |
1497 static void XFA_SyncRemoveLayoutItem(CXFA_LayoutItem* pParentLayoutItem, | 1501 static void XFA_SyncRemoveLayoutItem(CXFA_LayoutItem* pParentLayoutItem, |
1498 IXFA_Notify* pNotify, | 1502 CXFA_FFNotify* pNotify, |
1499 IXFA_DocLayout* pDocLayout) { | 1503 CXFA_LayoutProcessor* pDocLayout) { |
1500 CXFA_LayoutItem* pNextLayoutItem; | 1504 CXFA_LayoutItem* pNextLayoutItem; |
1501 CXFA_LayoutItem* pCurLayoutItem = pParentLayoutItem->m_pFirstChild; | 1505 CXFA_LayoutItem* pCurLayoutItem = pParentLayoutItem->m_pFirstChild; |
1502 while (pCurLayoutItem) { | 1506 while (pCurLayoutItem) { |
1503 pNextLayoutItem = pCurLayoutItem->m_pNextSibling; | 1507 pNextLayoutItem = pCurLayoutItem->m_pNextSibling; |
1504 if (pCurLayoutItem->m_pFirstChild) { | 1508 if (pCurLayoutItem->m_pFirstChild) { |
1505 XFA_SyncRemoveLayoutItem(pCurLayoutItem, pNotify, pDocLayout); | 1509 XFA_SyncRemoveLayoutItem(pCurLayoutItem, pNotify, pDocLayout); |
1506 } | 1510 } |
1507 pNotify->OnLayoutEvent(pDocLayout, pCurLayoutItem, | 1511 pNotify->OnLayoutEvent(pDocLayout, pCurLayoutItem, |
1508 XFA_LAYOUTEVENT_ItemRemoving); | 1512 XFA_LAYOUTEVENT_ItemRemoving); |
1509 delete pCurLayoutItem; | 1513 delete pCurLayoutItem; |
1510 pCurLayoutItem = pNextLayoutItem; | 1514 pCurLayoutItem = pNextLayoutItem; |
1511 } | 1515 } |
1512 } | 1516 } |
1513 void CXFA_LayoutPageMgr::SaveLayoutItem(CXFA_LayoutItem* pParentLayoutItem) { | 1517 void CXFA_LayoutPageMgr::SaveLayoutItem(CXFA_LayoutItem* pParentLayoutItem) { |
1514 CXFA_LayoutItem* pNextLayoutItem; | 1518 CXFA_LayoutItem* pNextLayoutItem; |
1515 CXFA_LayoutItem* pCurLayoutItem = pParentLayoutItem->m_pFirstChild; | 1519 CXFA_LayoutItem* pCurLayoutItem = pParentLayoutItem->m_pFirstChild; |
1516 while (pCurLayoutItem) { | 1520 while (pCurLayoutItem) { |
1517 pNextLayoutItem = pCurLayoutItem->m_pNextSibling; | 1521 pNextLayoutItem = pCurLayoutItem->m_pNextSibling; |
1518 if (pCurLayoutItem->IsContentLayoutItem()) { | 1522 if (pCurLayoutItem->IsContentLayoutItem()) { |
1519 uint32_t dwFlag = pCurLayoutItem->m_pFormNode->GetFlag(); | 1523 uint32_t dwFlag = pCurLayoutItem->m_pFormNode->GetFlag(); |
1520 if (dwFlag & (XFA_NODEFLAG_HasRemoved)) { | 1524 if (dwFlag & (XFA_NODEFLAG_HasRemoved)) { |
1521 IXFA_Notify* pNotify = | 1525 CXFA_FFNotify* pNotify = |
1522 m_pTemplatePageSetRoot->GetDocument()->GetParser()->GetNotify(); | 1526 m_pTemplatePageSetRoot->GetDocument()->GetParser()->GetNotify(); |
1523 IXFA_DocLayout* pDocLayout = | 1527 CXFA_LayoutProcessor* pDocLayout = |
1524 m_pTemplatePageSetRoot->GetDocument()->GetDocLayout(); | 1528 m_pTemplatePageSetRoot->GetDocument()->GetDocLayout(); |
1525 if (pCurLayoutItem->m_pFirstChild) { | 1529 if (pCurLayoutItem->m_pFirstChild) { |
1526 XFA_SyncRemoveLayoutItem(pCurLayoutItem, pNotify, pDocLayout); | 1530 XFA_SyncRemoveLayoutItem(pCurLayoutItem, pNotify, pDocLayout); |
1527 } | 1531 } |
1528 pNotify->OnLayoutEvent(pDocLayout, pCurLayoutItem, | 1532 pNotify->OnLayoutEvent(pDocLayout, pCurLayoutItem, |
1529 XFA_LAYOUTEVENT_ItemRemoving); | 1533 XFA_LAYOUTEVENT_ItemRemoving); |
1530 delete pCurLayoutItem; | 1534 delete pCurLayoutItem; |
1531 pCurLayoutItem = pNextLayoutItem; | 1535 pCurLayoutItem = pNextLayoutItem; |
1532 continue; | 1536 continue; |
1533 } | 1537 } |
(...skipping 37 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
1571 } | 1575 } |
1572 return NULL; | 1576 return NULL; |
1573 } else if (pCurNode->GetClassID() == XFA_ELEMENT_Overflow) { | 1577 } else if (pCurNode->GetClassID() == XFA_ELEMENT_Overflow) { |
1574 return pCurNode; | 1578 return pCurNode; |
1575 } | 1579 } |
1576 } | 1580 } |
1577 return NULL; | 1581 return NULL; |
1578 } | 1582 } |
1579 void CXFA_LayoutPageMgr::MergePageSetContents() { | 1583 void CXFA_LayoutPageMgr::MergePageSetContents() { |
1580 CXFA_Document* pDocument = m_pTemplatePageSetRoot->GetDocument(); | 1584 CXFA_Document* pDocument = m_pTemplatePageSetRoot->GetDocument(); |
1581 IXFA_Notify* pNotify = pDocument->GetParser()->GetNotify(); | 1585 CXFA_FFNotify* pNotify = pDocument->GetParser()->GetNotify(); |
1582 IXFA_DocLayout* pDocLayout = pDocument->GetDocLayout(); | 1586 CXFA_LayoutProcessor* pDocLayout = pDocument->GetDocLayout(); |
1583 CXFA_ContainerLayoutItem* pRootLayout = GetRootLayoutItem(); | 1587 CXFA_ContainerLayoutItem* pRootLayout = GetRootLayoutItem(); |
1584 { | 1588 { |
1585 for (int32_t iIndex = 0; iIndex < pDocument->m_pPendingPageSet.GetSize(); | 1589 for (int32_t iIndex = 0; iIndex < pDocument->m_pPendingPageSet.GetSize(); |
1586 iIndex++) { | 1590 iIndex++) { |
1587 CXFA_NodeIteratorTemplate<CXFA_Node, CXFA_TraverseStrategy_XFANode> | 1591 CXFA_NodeIteratorTemplate<CXFA_Node, CXFA_TraverseStrategy_XFANode> |
1588 sIterator(pDocument->m_pPendingPageSet.GetAt(iIndex)); | 1592 sIterator(pDocument->m_pPendingPageSet.GetAt(iIndex)); |
1589 for (CXFA_Node* pNode = sIterator.GetCurrent(); pNode; | 1593 for (CXFA_Node* pNode = sIterator.GetCurrent(); pNode; |
1590 pNode = sIterator.MoveToNext()) { | 1594 pNode = sIterator.MoveToNext()) { |
1591 if (pNode->IsContainerNode()) { | 1595 if (pNode->IsContainerNode()) { |
1592 CXFA_Node* pBindNode = pNode->GetBindData(); | 1596 CXFA_Node* pBindNode = pNode->GetBindData(); |
(...skipping 190 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
1783 case XFA_ELEMENT_PageArea: | 1787 case XFA_ELEMENT_PageArea: |
1784 m_pLayoutProcessor->GetRootRootItemLayoutProcessor() | 1788 m_pLayoutProcessor->GetRootRootItemLayoutProcessor() |
1785 ->DoLayoutPageArea(pContainerItem); | 1789 ->DoLayoutPageArea(pContainerItem); |
1786 break; | 1790 break; |
1787 default: | 1791 default: |
1788 break; | 1792 break; |
1789 } | 1793 } |
1790 } | 1794 } |
1791 } | 1795 } |
1792 } | 1796 } |
1793 void XFA_SyncContainer(IXFA_Notify* pNotify, | 1797 void XFA_SyncContainer(CXFA_FFNotify* pNotify, |
1794 IXFA_DocLayout* pDocLayout, | 1798 CXFA_LayoutProcessor* pDocLayout, |
1795 CXFA_LayoutItem* pContainerItem, | 1799 CXFA_LayoutItem* pContainerItem, |
1796 uint32_t dwRelevant, | 1800 uint32_t dwRelevant, |
1797 FX_BOOL bVisible, | 1801 FX_BOOL bVisible, |
1798 int32_t nPageIndex) { | 1802 int32_t nPageIndex) { |
1799 FX_BOOL bVisibleItem = FALSE; | 1803 FX_BOOL bVisibleItem = FALSE; |
1800 uint32_t dwStatus = 0; | 1804 uint32_t dwStatus = 0; |
1801 uint32_t dwRelevantContainer = 0; | 1805 uint32_t dwRelevantContainer = 0; |
1802 if (bVisible) { | 1806 if (bVisible) { |
1803 XFA_ATTRIBUTEENUM eAttributeValue = | 1807 XFA_ATTRIBUTEENUM eAttributeValue = |
1804 pContainerItem->m_pFormNode->GetEnum(XFA_ATTRIBUTE_Presence); | 1808 pContainerItem->m_pFormNode->GetEnum(XFA_ATTRIBUTE_Presence); |
(...skipping 13 matching lines...) Expand all Loading... | |
1818 pChild = pChild->m_pNextSibling) { | 1822 pChild = pChild->m_pNextSibling) { |
1819 if (pChild->IsContentLayoutItem()) { | 1823 if (pChild->IsContentLayoutItem()) { |
1820 XFA_SyncContainer(pNotify, pDocLayout, pChild, dwRelevantContainer, | 1824 XFA_SyncContainer(pNotify, pDocLayout, pChild, dwRelevantContainer, |
1821 bVisibleItem, nPageIndex); | 1825 bVisibleItem, nPageIndex); |
1822 } | 1826 } |
1823 } | 1827 } |
1824 } | 1828 } |
1825 void CXFA_LayoutPageMgr::SyncLayoutData() { | 1829 void CXFA_LayoutPageMgr::SyncLayoutData() { |
1826 MergePageSetContents(); | 1830 MergePageSetContents(); |
1827 LayoutPageSetContents(); | 1831 LayoutPageSetContents(); |
1828 IXFA_Notify* pNotify = | 1832 CXFA_FFNotify* pNotify = |
1829 m_pTemplatePageSetRoot->GetDocument()->GetParser()->GetNotify(); | 1833 m_pTemplatePageSetRoot->GetDocument()->GetParser()->GetNotify(); |
1830 int32_t nPageIdx = -1; | 1834 int32_t nPageIdx = -1; |
1831 CXFA_ContainerLayoutItem* pRootLayoutItem = GetRootLayoutItem(); | 1835 CXFA_ContainerLayoutItem* pRootLayoutItem = GetRootLayoutItem(); |
1832 for (; pRootLayoutItem; | 1836 for (; pRootLayoutItem; |
1833 pRootLayoutItem = | 1837 pRootLayoutItem = |
1834 (CXFA_ContainerLayoutItem*)pRootLayoutItem->m_pNextSibling) { | 1838 (CXFA_ContainerLayoutItem*)pRootLayoutItem->m_pNextSibling) { |
1835 CXFA_NodeIteratorTemplate< | 1839 CXFA_NodeIteratorTemplate< |
1836 CXFA_ContainerLayoutItem, | 1840 CXFA_ContainerLayoutItem, |
1837 CXFA_TraverseStrategy_ContentAreaContainerLayoutItem> | 1841 CXFA_TraverseStrategy_ContentAreaContainerLayoutItem> |
1838 iteratorParent(pRootLayoutItem); | 1842 iteratorParent(pRootLayoutItem); |
(...skipping 83 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
1922 } | 1926 } |
1923 pRootLayoutItem = m_pPageSetLayoutItemRoot; | 1927 pRootLayoutItem = m_pPageSetLayoutItemRoot; |
1924 CXFA_ContainerLayoutItem* pNextLayout = NULL; | 1928 CXFA_ContainerLayoutItem* pNextLayout = NULL; |
1925 for (; pRootLayoutItem; pRootLayoutItem = pNextLayout) { | 1929 for (; pRootLayoutItem; pRootLayoutItem = pNextLayout) { |
1926 pNextLayout = (CXFA_ContainerLayoutItem*)pRootLayoutItem->m_pNextSibling; | 1930 pNextLayout = (CXFA_ContainerLayoutItem*)pRootLayoutItem->m_pNextSibling; |
1927 SaveLayoutItem(pRootLayoutItem); | 1931 SaveLayoutItem(pRootLayoutItem); |
1928 delete pRootLayoutItem; | 1932 delete pRootLayoutItem; |
1929 } | 1933 } |
1930 m_pPageSetLayoutItemRoot = NULL; | 1934 m_pPageSetLayoutItemRoot = NULL; |
1931 } | 1935 } |
OLD | NEW |