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_FDE_FDE_ITERATOR_H_ | 7 #ifndef XFA_FDE_FDE_ITERATOR_H_ |
8 #define XFA_FDE_FDE_ITERATOR_H_ | 8 #define XFA_FDE_FDE_ITERATOR_H_ |
9 | 9 |
10 #include "xfa/fde/fde_visualset.h" | 10 #include "xfa/fde/fde_visualset.h" |
11 #include "xfa/fgas/crt/fgas_memory.h" | 11 #include "xfa/fgas/crt/fgas_memory.h" |
| 12 #include "xfa/fgas/crt/fgas_utils.h" |
12 | 13 |
13 struct FDE_CANVASITEM { | 14 struct FDE_CANVASITEM { |
14 IFDE_CanvasSet* pCanvas; | 15 IFDE_CanvasSet* pCanvas; |
15 FDE_HVISUALOBJ hCanvas; | 16 FDE_HVISUALOBJ hCanvas; |
16 FX_POSITION hPos; | 17 FX_POSITION hPos; |
17 }; | 18 }; |
18 | 19 |
19 class CFDE_VisualSetIterator : public IFDE_VisualSetIterator, | 20 class CFDE_VisualSetIterator : public IFDE_VisualSetIterator, |
20 public CFX_Target { | 21 public CFX_Target { |
21 public: | 22 public: |
22 CFDE_VisualSetIterator(); | 23 CFDE_VisualSetIterator(); |
23 ~CFDE_VisualSetIterator(); | 24 ~CFDE_VisualSetIterator(); |
24 virtual void Release() { delete this; } | 25 virtual void Release() { delete this; } |
25 | 26 |
26 virtual FX_BOOL AttachCanvas(IFDE_CanvasSet* pCanvas); | 27 virtual FX_BOOL AttachCanvas(IFDE_CanvasSet* pCanvas); |
27 virtual FX_BOOL FilterObjects(uint32_t dwObjects = 0xFFFFFFFF); | 28 virtual FX_BOOL FilterObjects(uint32_t dwObjects = 0xFFFFFFFF); |
28 | 29 |
29 virtual void Reset(); | 30 virtual void Reset(); |
30 virtual FDE_HVISUALOBJ GetNext(IFDE_VisualSet*& pVisualSet, | 31 virtual FDE_HVISUALOBJ GetNext(IFDE_VisualSet*& pVisualSet, |
31 FDE_HVISUALOBJ* phCanvasObj = NULL, | 32 FDE_HVISUALOBJ* phCanvasObj = NULL, |
32 IFDE_CanvasSet** ppCanvasSet = NULL); | 33 IFDE_CanvasSet** ppCanvasSet = NULL); |
33 | 34 |
34 protected: | 35 protected: |
35 uint32_t m_dwFilter; | 36 uint32_t m_dwFilter; |
36 CFX_StackTemplate<FDE_CANVASITEM> m_CanvasStack; | 37 CFX_StackTemplate<FDE_CANVASITEM> m_CanvasStack; |
37 }; | 38 }; |
38 | 39 |
39 #endif // XFA_FDE_FDE_ITERATOR_H_ | 40 #endif // XFA_FDE_FDE_ITERATOR_H_ |
OLD | NEW |