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 #ifndef XFA_FXFA_PARSER_XFA_DOCUMENT_LAYOUT_IMP_H_ | 7 #ifndef XFA_FXFA_PARSER_XFA_DOCUMENT_LAYOUT_IMP_H_ |
8 #define XFA_FXFA_PARSER_XFA_DOCUMENT_LAYOUT_IMP_H_ | 8 #define XFA_FXFA_PARSER_XFA_DOCUMENT_LAYOUT_IMP_H_ |
9 | 9 |
10 #include "xfa/fxfa/parser/xfa_doclayout.h" | 10 #include "xfa/fxfa/parser/xfa_doclayout.h" |
11 | 11 |
12 class CXFA_ItemLayoutProcessor; | 12 class CXFA_ItemLayoutProcessor; |
13 class CXFA_LayoutPageMgr; | 13 class CXFA_LayoutPageMgr; |
14 class CXFA_ContainerLayoutItem; | 14 class CXFA_ContainerLayoutItem; |
15 | 15 |
16 class CXFA_LayoutProcessor : public IXFA_DocLayout { | 16 class CXFA_LayoutProcessor { |
17 public: | 17 public: |
18 CXFA_LayoutProcessor(CXFA_Document* pDocument); | 18 CXFA_LayoutProcessor(CXFA_Document* pDocument); |
19 ~CXFA_LayoutProcessor(); | 19 ~CXFA_LayoutProcessor(); |
20 virtual CXFA_Document* GetDocument() const; | 20 |
21 virtual int32_t StartLayout(FX_BOOL bForceRestart = FALSE); | 21 CXFA_Document* GetDocument() const; |
22 virtual int32_t DoLayout(IFX_Pause* pPause = NULL); | 22 int32_t StartLayout(FX_BOOL bForceRestart = FALSE); |
23 virtual FX_BOOL IncrementLayout(); | 23 int32_t DoLayout(IFX_Pause* pPause = NULL); |
24 virtual int32_t CountPages() const; | 24 FX_BOOL IncrementLayout(); |
25 virtual IXFA_LayoutPage* GetPage(int32_t index) const; | 25 int32_t CountPages() const; |
26 virtual CXFA_LayoutItem* GetLayoutItem(CXFA_Node* pFormItem); | 26 CXFA_ContainerLayoutItem* GetPage(int32_t index) const; |
| 27 CXFA_LayoutItem* GetLayoutItem(CXFA_Node* pFormItem); |
27 | 28 |
28 void AddChangedContainer(CXFA_Node* pContainer); | 29 void AddChangedContainer(CXFA_Node* pContainer); |
29 void SetForceReLayout(FX_BOOL bForceRestart) { m_bNeeLayout = bForceRestart; } | 30 void SetForceReLayout(FX_BOOL bForceRestart) { m_bNeeLayout = bForceRestart; } |
30 CXFA_ContainerLayoutItem* GetRootLayoutItem() const; | 31 CXFA_ContainerLayoutItem* GetRootLayoutItem() const; |
31 CXFA_ItemLayoutProcessor* GetRootRootItemLayoutProcessor() { | 32 CXFA_ItemLayoutProcessor* GetRootRootItemLayoutProcessor() { |
32 return m_pRootItemLayoutProcessor; | 33 return m_pRootItemLayoutProcessor; |
33 } | 34 } |
34 CXFA_LayoutPageMgr* GetLayoutPageMgr() { return m_pLayoutPageMgr; } | 35 CXFA_LayoutPageMgr* GetLayoutPageMgr() { return m_pLayoutPageMgr; } |
35 | 36 |
36 protected: | 37 protected: |
37 void ClearLayoutData(); | 38 void ClearLayoutData(); |
38 | 39 |
39 FX_BOOL IsNeedLayout(); | 40 FX_BOOL IsNeedLayout(); |
40 | 41 |
41 CXFA_Document* m_pDocument; | 42 CXFA_Document* m_pDocument; |
42 CXFA_ItemLayoutProcessor* m_pRootItemLayoutProcessor; | 43 CXFA_ItemLayoutProcessor* m_pRootItemLayoutProcessor; |
43 CXFA_LayoutPageMgr* m_pLayoutPageMgr; | 44 CXFA_LayoutPageMgr* m_pLayoutPageMgr; |
44 CXFA_NodeArray m_rgChangedContainers; | 45 CXFA_NodeArray m_rgChangedContainers; |
45 uint32_t m_nProgressCounter; | 46 uint32_t m_nProgressCounter; |
46 FX_BOOL m_bNeeLayout; | 47 FX_BOOL m_bNeeLayout; |
47 }; | 48 }; |
48 | 49 |
49 #endif // XFA_FXFA_PARSER_XFA_DOCUMENT_LAYOUT_IMP_H_ | 50 #endif // XFA_FXFA_PARSER_XFA_DOCUMENT_LAYOUT_IMP_H_ |
OLD | NEW |