| 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 FPDFSDK_INCLUDE_FSDK_ANNOTHANDLER_H_ | 7 #ifndef FPDFSDK_INCLUDE_FSDK_ANNOTHANDLER_H_ |
| 8 #define FPDFSDK_INCLUDE_FSDK_ANNOTHANDLER_H_ | 8 #define FPDFSDK_INCLUDE_FSDK_ANNOTHANDLER_H_ |
| 9 | 9 |
| 10 #include <map> | 10 #include <map> |
| 11 | 11 |
| 12 #include "../../core/include/fxcrt/fx_basic.h" | 12 #include "../../core/include/fxcrt/fx_basic.h" |
| 13 | 13 |
| 14 class CFFL_IFormFiller; | 14 class CFFL_IFormFiller; |
| 15 class CFX_RenderDevice; | 15 class CFX_RenderDevice; |
| 16 class CPDFDoc_Environment; | 16 class CPDFDoc_Environment; |
| 17 class CPDFSDK_Annot; | 17 class CPDFSDK_Annot; |
| 18 class CPDFSDK_PageView; | 18 class CPDFSDK_PageView; |
| 19 class CPDF_Annot; | 19 class CPDF_Annot; |
| 20 class CPDF_Matrix; | 20 class CPDF_Matrix; |
| 21 class CPDF_Point; | 21 class CPDF_Point; |
| 22 class CPDF_Rect; | 22 class CPDF_Rect; |
| 23 | 23 |
| 24 class IPDFSDK_AnnotHandler { | 24 class CPDFSDK_AnnotHandler { |
| 25 public: | 25 public: |
| 26 virtual ~IPDFSDK_AnnotHandler() {} | 26 explicit CPDFSDK_AnnotHandler(CPDFDoc_Environment* pApp) |
| 27 : m_pApp(pApp), m_pFormFiller(nullptr) {} |
| 27 | 28 |
| 28 virtual CFX_ByteString GetType() = 0; | 29 ~CPDFSDK_AnnotHandler() {} |
| 29 | 30 |
| 30 virtual CFX_ByteString GetName() = 0; | 31 CFX_ByteString GetType() { return CFX_ByteString("Widget"); } |
| 31 | 32 CFX_ByteString GetName() { return CFX_ByteString("WidgetHandler"); } |
| 32 virtual FX_BOOL CanAnswer(CPDFSDK_Annot* pAnnot) = 0; | 33 FX_BOOL CanAnswer(CPDFSDK_Annot* pAnnot); |
| 33 | 34 CPDFSDK_Annot* NewAnnot(CPDF_Annot* pAnnot, CPDFSDK_PageView* pPage); |
| 34 virtual CPDFSDK_Annot* NewAnnot(CPDF_Annot* pAnnot, | 35 void ReleaseAnnot(CPDFSDK_Annot* pAnnot); |
| 35 CPDFSDK_PageView* pPage) = 0; | 36 void DeleteAnnot(CPDFSDK_Annot* pAnnot) {} |
| 36 | 37 CPDF_Rect GetViewBBox(CPDFSDK_PageView* pPageView, CPDFSDK_Annot* pAnnot); |
| 37 virtual void ReleaseAnnot(CPDFSDK_Annot* pAnnot) = 0; | |
| 38 | |
| 39 virtual void DeleteAnnot(CPDFSDK_Annot* pAnnot) = 0; | |
| 40 | |
| 41 virtual CPDF_Rect GetViewBBox(CPDFSDK_PageView* pPageView, | |
| 42 CPDFSDK_Annot* pAnnot) = 0; | |
| 43 | |
| 44 virtual FX_BOOL HitTest(CPDFSDK_PageView* pPageView, | |
| 45 CPDFSDK_Annot* pAnnot, | |
| 46 const CPDF_Point& point) = 0; | |
| 47 | |
| 48 virtual void OnDraw(CPDFSDK_PageView* pPageView, | |
| 49 CPDFSDK_Annot* pAnnot, | |
| 50 CFX_RenderDevice* pDevice, | |
| 51 CPDF_Matrix* pUser2Device, | |
| 52 FX_DWORD dwFlags) = 0; | |
| 53 | |
| 54 virtual void OnDrawSleep(CPDFSDK_PageView* pPageView, | |
| 55 CPDFSDK_Annot* pAnnot, | |
| 56 CFX_RenderDevice* pDevice, | |
| 57 CPDF_Matrix* pUser2Device, | |
| 58 const CPDF_Rect& rcWindow, | |
| 59 FX_DWORD dwFlags) = 0; | |
| 60 | |
| 61 virtual void OnCreate(CPDFSDK_Annot* pAnnot) = 0; | |
| 62 | |
| 63 virtual void OnLoad(CPDFSDK_Annot* pAnnot) = 0; | |
| 64 | |
| 65 virtual void OnDelete(CPDFSDK_Annot* pAnnot) = 0; | |
| 66 | |
| 67 virtual void OnRelease(CPDFSDK_Annot* pAnnot) = 0; | |
| 68 | |
| 69 virtual void OnMouseEnter(CPDFSDK_PageView* pPageView, | |
| 70 CPDFSDK_Annot* pAnnot, | |
| 71 FX_DWORD nFlag) = 0; | |
| 72 virtual void OnMouseExit(CPDFSDK_PageView* pPageView, | |
| 73 CPDFSDK_Annot* pAnnot, | |
| 74 FX_DWORD nFlag) = 0; | |
| 75 | |
| 76 virtual FX_BOOL OnLButtonDown(CPDFSDK_PageView* pPageView, | |
| 77 CPDFSDK_Annot* pAnnot, | |
| 78 FX_DWORD nFlags, | |
| 79 const CPDF_Point& point) = 0; | |
| 80 virtual FX_BOOL OnLButtonUp(CPDFSDK_PageView* pPageView, | |
| 81 CPDFSDK_Annot* pAnnot, | |
| 82 FX_DWORD nFlags, | |
| 83 const CPDF_Point& point) = 0; | |
| 84 virtual FX_BOOL OnLButtonDblClk(CPDFSDK_PageView* pPageView, | |
| 85 CPDFSDK_Annot* pAnnot, | |
| 86 FX_DWORD nFlags, | |
| 87 const CPDF_Point& point) = 0; | |
| 88 virtual FX_BOOL OnMouseMove(CPDFSDK_PageView* pPageView, | |
| 89 CPDFSDK_Annot* pAnnot, | |
| 90 FX_DWORD nFlags, | |
| 91 const CPDF_Point& point) = 0; | |
| 92 virtual FX_BOOL OnMouseWheel(CPDFSDK_PageView* pPageView, | |
| 93 CPDFSDK_Annot* pAnnot, | |
| 94 FX_DWORD nFlags, | |
| 95 short zDelta, | |
| 96 const CPDF_Point& point) = 0; | |
| 97 virtual FX_BOOL OnRButtonDown(CPDFSDK_PageView* pPageView, | |
| 98 CPDFSDK_Annot* pAnnot, | |
| 99 FX_DWORD nFlags, | |
| 100 const CPDF_Point& point) = 0; | |
| 101 virtual FX_BOOL OnRButtonUp(CPDFSDK_PageView* pPageView, | |
| 102 CPDFSDK_Annot* pAnnot, | |
| 103 FX_DWORD nFlags, | |
| 104 const CPDF_Point& point) = 0; | |
| 105 virtual FX_BOOL OnRButtonDblClk(CPDFSDK_PageView* pPageView, | |
| 106 CPDFSDK_Annot* pAnnot, | |
| 107 FX_DWORD nFlags, | |
| 108 const CPDF_Point& point) = 0; | |
| 109 // by wjm. | |
| 110 virtual FX_BOOL OnChar(CPDFSDK_Annot* pAnnot, | |
| 111 FX_DWORD nChar, | |
| 112 FX_DWORD nFlags) = 0; | |
| 113 virtual FX_BOOL OnKeyDown(CPDFSDK_Annot* pAnnot, int nKeyCode, int nFlag) = 0; | |
| 114 virtual FX_BOOL OnKeyUp(CPDFSDK_Annot* pAnnot, int nKeyCode, int nFlag) = 0; | |
| 115 | |
| 116 virtual void OnDeSelected(CPDFSDK_Annot* pAnnot) = 0; | |
| 117 virtual void OnSelected(CPDFSDK_Annot* pAnnot) = 0; | |
| 118 | |
| 119 virtual FX_BOOL OnSetFocus(CPDFSDK_Annot* pAnnot, FX_DWORD nFlag) = 0; | |
| 120 virtual FX_BOOL OnKillFocus(CPDFSDK_Annot* pAnnot, FX_DWORD nFlag) = 0; | |
| 121 }; | |
| 122 | |
| 123 class CPDFSDK_BFAnnotHandler : public IPDFSDK_AnnotHandler { | |
| 124 public: | |
| 125 CPDFSDK_BFAnnotHandler(CPDFDoc_Environment* pApp) | |
| 126 : m_pApp(pApp), m_pFormFiller(NULL) {} | |
| 127 ~CPDFSDK_BFAnnotHandler() override {} | |
| 128 | |
| 129 // IPDFSDK_AnnotHandler | |
| 130 CFX_ByteString GetType() override { return CFX_ByteString("Widget"); } | |
| 131 CFX_ByteString GetName() override { return CFX_ByteString("WidgetHandler"); } | |
| 132 FX_BOOL CanAnswer(CPDFSDK_Annot* pAnnot) override; | |
| 133 CPDFSDK_Annot* NewAnnot(CPDF_Annot* pAnnot, CPDFSDK_PageView* pPage) override; | |
| 134 void ReleaseAnnot(CPDFSDK_Annot* pAnnot) override; | |
| 135 void DeleteAnnot(CPDFSDK_Annot* pAnnot) override {} | |
| 136 CPDF_Rect GetViewBBox(CPDFSDK_PageView* pPageView, | |
| 137 CPDFSDK_Annot* pAnnot) override; | |
| 138 FX_BOOL HitTest(CPDFSDK_PageView* pPageView, | 38 FX_BOOL HitTest(CPDFSDK_PageView* pPageView, |
| 139 CPDFSDK_Annot* pAnnot, | 39 CPDFSDK_Annot* pAnnot, |
| 140 const CPDF_Point& point) override; | 40 const CPDF_Point& point); |
| 141 void OnDraw(CPDFSDK_PageView* pPageView, | 41 void OnDraw(CPDFSDK_PageView* pPageView, |
| 142 CPDFSDK_Annot* pAnnot, | 42 CPDFSDK_Annot* pAnnot, |
| 143 CFX_RenderDevice* pDevice, | 43 CFX_RenderDevice* pDevice, |
| 144 CPDF_Matrix* pUser2Device, | 44 CPDF_Matrix* pUser2Device, |
| 145 FX_DWORD dwFlags) override; | 45 FX_DWORD dwFlags); |
| 146 void OnDrawSleep(CPDFSDK_PageView* pPageView, | 46 void OnDrawSleep(CPDFSDK_PageView* pPageView, |
| 147 CPDFSDK_Annot* pAnnot, | 47 CPDFSDK_Annot* pAnnot, |
| 148 CFX_RenderDevice* pDevice, | 48 CFX_RenderDevice* pDevice, |
| 149 CPDF_Matrix* pUser2Device, | 49 CPDF_Matrix* pUser2Device, |
| 150 const CPDF_Rect& rcWindow, | 50 const CPDF_Rect& rcWindow, |
| 151 FX_DWORD dwFlags) override {} | 51 FX_DWORD dwFlags) {} |
| 152 void OnCreate(CPDFSDK_Annot* pAnnot) override; | 52 void OnCreate(CPDFSDK_Annot* pAnnot); |
| 153 void OnLoad(CPDFSDK_Annot* pAnnot) override; | 53 void OnLoad(CPDFSDK_Annot* pAnnot); |
| 154 void OnDelete(CPDFSDK_Annot* pAnnot) override {} | 54 void OnDelete(CPDFSDK_Annot* pAnnot) {} |
| 155 void OnRelease(CPDFSDK_Annot* pAnnot) override {} | 55 void OnRelease(CPDFSDK_Annot* pAnnot) {} |
| 156 void OnMouseEnter(CPDFSDK_PageView* pPageView, | 56 void OnMouseEnter(CPDFSDK_PageView* pPageView, |
| 157 CPDFSDK_Annot* pAnnot, | 57 CPDFSDK_Annot* pAnnot, |
| 158 FX_DWORD nFlag) override; | 58 FX_DWORD nFlag); |
| 159 void OnMouseExit(CPDFSDK_PageView* pPageView, | 59 void OnMouseExit(CPDFSDK_PageView* pPageView, |
| 160 CPDFSDK_Annot* pAnnot, | 60 CPDFSDK_Annot* pAnnot, |
| 161 FX_DWORD nFlag) override; | 61 FX_DWORD nFlag); |
| 162 FX_BOOL OnLButtonDown(CPDFSDK_PageView* pPageView, | 62 FX_BOOL OnLButtonDown(CPDFSDK_PageView* pPageView, |
| 163 CPDFSDK_Annot* pAnnot, | 63 CPDFSDK_Annot* pAnnot, |
| 164 FX_DWORD nFlags, | 64 FX_DWORD nFlags, |
| 165 const CPDF_Point& point) override; | 65 const CPDF_Point& point); |
| 166 FX_BOOL OnLButtonUp(CPDFSDK_PageView* pPageView, | 66 FX_BOOL OnLButtonUp(CPDFSDK_PageView* pPageView, |
| 167 CPDFSDK_Annot* pAnnot, | 67 CPDFSDK_Annot* pAnnot, |
| 168 FX_DWORD nFlags, | 68 FX_DWORD nFlags, |
| 169 const CPDF_Point& point) override; | 69 const CPDF_Point& point); |
| 170 FX_BOOL OnLButtonDblClk(CPDFSDK_PageView* pPageView, | 70 FX_BOOL OnLButtonDblClk(CPDFSDK_PageView* pPageView, |
| 171 CPDFSDK_Annot* pAnnot, | 71 CPDFSDK_Annot* pAnnot, |
| 172 FX_DWORD nFlags, | 72 FX_DWORD nFlags, |
| 173 const CPDF_Point& point) override; | 73 const CPDF_Point& point); |
| 174 FX_BOOL OnMouseMove(CPDFSDK_PageView* pPageView, | 74 FX_BOOL OnMouseMove(CPDFSDK_PageView* pPageView, |
| 175 CPDFSDK_Annot* pAnnot, | 75 CPDFSDK_Annot* pAnnot, |
| 176 FX_DWORD nFlags, | 76 FX_DWORD nFlags, |
| 177 const CPDF_Point& point) override; | 77 const CPDF_Point& point); |
| 178 FX_BOOL OnMouseWheel(CPDFSDK_PageView* pPageView, | 78 FX_BOOL OnMouseWheel(CPDFSDK_PageView* pPageView, |
| 179 CPDFSDK_Annot* pAnnot, | 79 CPDFSDK_Annot* pAnnot, |
| 180 FX_DWORD nFlags, | 80 FX_DWORD nFlags, |
| 181 short zDelta, | 81 short zDelta, |
| 182 const CPDF_Point& point) override; | 82 const CPDF_Point& point); |
| 183 FX_BOOL OnRButtonDown(CPDFSDK_PageView* pPageView, | 83 FX_BOOL OnRButtonDown(CPDFSDK_PageView* pPageView, |
| 184 CPDFSDK_Annot* pAnnot, | 84 CPDFSDK_Annot* pAnnot, |
| 185 FX_DWORD nFlags, | 85 FX_DWORD nFlags, |
| 186 const CPDF_Point& point) override; | 86 const CPDF_Point& point); |
| 187 FX_BOOL OnRButtonUp(CPDFSDK_PageView* pPageView, | 87 FX_BOOL OnRButtonUp(CPDFSDK_PageView* pPageView, |
| 188 CPDFSDK_Annot* pAnnot, | 88 CPDFSDK_Annot* pAnnot, |
| 189 FX_DWORD nFlags, | 89 FX_DWORD nFlags, |
| 190 const CPDF_Point& point) override; | 90 const CPDF_Point& point); |
| 191 FX_BOOL OnRButtonDblClk(CPDFSDK_PageView* pPageView, | 91 FX_BOOL OnRButtonDblClk(CPDFSDK_PageView* pPageView, |
| 192 CPDFSDK_Annot* pAnnot, | 92 CPDFSDK_Annot* pAnnot, |
| 193 FX_DWORD nFlags, | 93 FX_DWORD nFlags, |
| 194 const CPDF_Point& point) override { | 94 const CPDF_Point& point) { |
| 195 return FALSE; | 95 return FALSE; |
| 196 } | 96 } |
| 197 FX_BOOL OnChar(CPDFSDK_Annot* pAnnot, | 97 FX_BOOL OnChar(CPDFSDK_Annot* pAnnot, FX_DWORD nChar, FX_DWORD nFlags); |
| 198 FX_DWORD nChar, | 98 FX_BOOL OnKeyDown(CPDFSDK_Annot* pAnnot, int nKeyCode, int nFlag); |
| 199 FX_DWORD nFlags) override; | 99 FX_BOOL OnKeyUp(CPDFSDK_Annot* pAnnot, int nKeyCode, int nFlag); |
| 200 FX_BOOL OnKeyDown(CPDFSDK_Annot* pAnnot, int nKeyCode, int nFlag) override; | 100 void OnDeSelected(CPDFSDK_Annot* pAnnot) {} |
| 201 FX_BOOL OnKeyUp(CPDFSDK_Annot* pAnnot, int nKeyCode, int nFlag) override; | 101 void OnSelected(CPDFSDK_Annot* pAnnot) {} |
| 202 void OnDeSelected(CPDFSDK_Annot* pAnnot) override {} | 102 FX_BOOL OnSetFocus(CPDFSDK_Annot* pAnnot, FX_DWORD nFlag); |
| 203 void OnSelected(CPDFSDK_Annot* pAnnot) override {} | 103 FX_BOOL OnKillFocus(CPDFSDK_Annot* pAnnot, FX_DWORD nFlag); |
| 204 FX_BOOL OnSetFocus(CPDFSDK_Annot* pAnnot, FX_DWORD nFlag) override; | |
| 205 FX_BOOL OnKillFocus(CPDFSDK_Annot* pAnnot, FX_DWORD nFlag) override; | |
| 206 | 104 |
| 207 void SetFormFiller(CFFL_IFormFiller* pFiller) { m_pFormFiller = pFiller; } | 105 void SetFormFiller(CFFL_IFormFiller* pFiller) { m_pFormFiller = pFiller; } |
| 208 CFFL_IFormFiller* GetFormFiller() { return m_pFormFiller; } | 106 CFFL_IFormFiller* GetFormFiller() { return m_pFormFiller; } |
| 209 | 107 |
| 210 private: | 108 private: |
| 211 CPDFDoc_Environment* m_pApp; | 109 CPDFDoc_Environment* m_pApp; |
| 212 CFFL_IFormFiller* m_pFormFiller; | 110 CFFL_IFormFiller* m_pFormFiller; |
| 213 }; | 111 }; |
| 214 | 112 |
| 215 #define CBA_AnnotHandlerArray CFX_ArrayTemplate<IPDFSDK_AnnotHandler*> | 113 using CBA_AnnotHandlerArray = CFX_ArrayTemplate<CPDFSDK_AnnotHandler*>; |
| 114 |
| 216 class CPDFSDK_AnnotHandlerMgr { | 115 class CPDFSDK_AnnotHandlerMgr { |
| 217 public: | 116 public: |
| 218 // Destroy the handler | 117 // Destroy the handler |
| 219 explicit CPDFSDK_AnnotHandlerMgr(CPDFDoc_Environment* pApp); | 118 explicit CPDFSDK_AnnotHandlerMgr(CPDFDoc_Environment* pApp); |
| 220 virtual ~CPDFSDK_AnnotHandlerMgr(); | 119 virtual ~CPDFSDK_AnnotHandlerMgr(); |
| 221 | 120 |
| 222 public: | 121 void RegisterAnnotHandler(CPDFSDK_AnnotHandler* pAnnotHandler); |
| 223 void RegisterAnnotHandler(IPDFSDK_AnnotHandler* pAnnotHandler); | 122 void UnRegisterAnnotHandler(CPDFSDK_AnnotHandler* pAnnotHandler); |
| 224 void UnRegisterAnnotHandler(IPDFSDK_AnnotHandler* pAnnotHandler); | |
| 225 | 123 |
| 226 virtual CPDFSDK_Annot* NewAnnot(CPDF_Annot* pAnnot, | 124 virtual CPDFSDK_Annot* NewAnnot(CPDF_Annot* pAnnot, |
| 227 CPDFSDK_PageView* pPageView); | 125 CPDFSDK_PageView* pPageView); |
| 228 virtual void ReleaseAnnot(CPDFSDK_Annot* pAnnot); | 126 virtual void ReleaseAnnot(CPDFSDK_Annot* pAnnot); |
| 229 | 127 |
| 230 virtual void Annot_OnCreate(CPDFSDK_Annot* pAnnot); | 128 virtual void Annot_OnCreate(CPDFSDK_Annot* pAnnot); |
| 231 virtual void Annot_OnLoad(CPDFSDK_Annot* pAnnot); | 129 virtual void Annot_OnLoad(CPDFSDK_Annot* pAnnot); |
| 232 | 130 |
| 233 public: | 131 CPDFSDK_AnnotHandler* GetAnnotHandler(CPDFSDK_Annot* pAnnot) const; |
| 234 IPDFSDK_AnnotHandler* GetAnnotHandler(CPDFSDK_Annot* pAnnot) const; | |
| 235 virtual void Annot_OnDraw(CPDFSDK_PageView* pPageView, | 132 virtual void Annot_OnDraw(CPDFSDK_PageView* pPageView, |
| 236 CPDFSDK_Annot* pAnnot, | 133 CPDFSDK_Annot* pAnnot, |
| 237 CFX_RenderDevice* pDevice, | 134 CFX_RenderDevice* pDevice, |
| 238 CPDF_Matrix* pUser2Device, | 135 CPDF_Matrix* pUser2Device, |
| 239 FX_DWORD dwFlags); | 136 FX_DWORD dwFlags); |
| 240 | 137 |
| 241 virtual void Annot_OnMouseEnter(CPDFSDK_PageView* pPageView, | 138 virtual void Annot_OnMouseEnter(CPDFSDK_PageView* pPageView, |
| 242 CPDFSDK_Annot* pAnnot, | 139 CPDFSDK_Annot* pAnnot, |
| 243 FX_DWORD nFlags); | 140 FX_DWORD nFlags); |
| 244 virtual void Annot_OnMouseExit(CPDFSDK_PageView* pPageView, | 141 virtual void Annot_OnMouseExit(CPDFSDK_PageView* pPageView, |
| (...skipping 42 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 287 virtual FX_BOOL Annot_OnSetFocus(CPDFSDK_Annot* pAnnot, FX_DWORD nFlag); | 184 virtual FX_BOOL Annot_OnSetFocus(CPDFSDK_Annot* pAnnot, FX_DWORD nFlag); |
| 288 virtual FX_BOOL Annot_OnKillFocus(CPDFSDK_Annot* pAnnot, FX_DWORD nFlag); | 185 virtual FX_BOOL Annot_OnKillFocus(CPDFSDK_Annot* pAnnot, FX_DWORD nFlag); |
| 289 | 186 |
| 290 virtual CPDF_Rect Annot_OnGetViewBBox(CPDFSDK_PageView* pPageView, | 187 virtual CPDF_Rect Annot_OnGetViewBBox(CPDFSDK_PageView* pPageView, |
| 291 CPDFSDK_Annot* pAnnot); | 188 CPDFSDK_Annot* pAnnot); |
| 292 virtual FX_BOOL Annot_OnHitTest(CPDFSDK_PageView* pPageView, | 189 virtual FX_BOOL Annot_OnHitTest(CPDFSDK_PageView* pPageView, |
| 293 CPDFSDK_Annot* pAnnot, | 190 CPDFSDK_Annot* pAnnot, |
| 294 const CPDF_Point& point); | 191 const CPDF_Point& point); |
| 295 | 192 |
| 296 private: | 193 private: |
| 297 IPDFSDK_AnnotHandler* GetAnnotHandler(const CFX_ByteString& sType) const; | 194 CPDFSDK_AnnotHandler* GetAnnotHandler(const CFX_ByteString& sType) const; |
| 298 CPDFSDK_Annot* GetNextAnnot(CPDFSDK_Annot* pSDKAnnot, FX_BOOL bNext); | 195 CPDFSDK_Annot* GetNextAnnot(CPDFSDK_Annot* pSDKAnnot, FX_BOOL bNext); |
| 299 | 196 |
| 300 private: | |
| 301 CBA_AnnotHandlerArray m_Handlers; | 197 CBA_AnnotHandlerArray m_Handlers; |
| 302 std::map<CFX_ByteString, IPDFSDK_AnnotHandler*> m_mapType2Handler; | 198 std::map<CFX_ByteString, CPDFSDK_AnnotHandler*> m_mapType2Handler; |
| 303 CPDFDoc_Environment* m_pApp; | 199 CPDFDoc_Environment* m_pApp; |
| 304 }; | 200 }; |
| 305 | 201 |
| 306 typedef int (*AI_COMPARE)(CPDFSDK_Annot* p1, CPDFSDK_Annot* p2); | 202 typedef int (*AI_COMPARE)(CPDFSDK_Annot* p1, CPDFSDK_Annot* p2); |
| 307 | 203 |
| 308 class CPDFSDK_AnnotIterator { | 204 class CPDFSDK_AnnotIterator { |
| 309 public: | 205 public: |
| 310 CPDFSDK_AnnotIterator(CPDFSDK_PageView* pPageView, | 206 CPDFSDK_AnnotIterator(CPDFSDK_PageView* pPageView, |
| 311 FX_BOOL bReverse, | 207 FX_BOOL bReverse, |
| 312 FX_BOOL bIgnoreTopmost = FALSE, | 208 FX_BOOL bIgnoreTopmost = FALSE, |
| (...skipping 18 matching lines...) Expand all Loading... |
| 331 CPDFSDK_Annot* NextAnnot(int& index); | 227 CPDFSDK_Annot* NextAnnot(int& index); |
| 332 CPDFSDK_Annot* PrevAnnot(int& index); | 228 CPDFSDK_Annot* PrevAnnot(int& index); |
| 333 | 229 |
| 334 CFX_PtrArray m_pIteratorAnnotList; | 230 CFX_PtrArray m_pIteratorAnnotList; |
| 335 FX_BOOL m_bReverse; | 231 FX_BOOL m_bReverse; |
| 336 FX_BOOL m_bIgnoreTopmost; | 232 FX_BOOL m_bIgnoreTopmost; |
| 337 FX_BOOL m_bCircle; | 233 FX_BOOL m_bCircle; |
| 338 }; | 234 }; |
| 339 | 235 |
| 340 #endif // FPDFSDK_INCLUDE_FSDK_ANNOTHANDLER_H_ | 236 #endif // FPDFSDK_INCLUDE_FSDK_ANNOTHANDLER_H_ |
| OLD | NEW |