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