Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(358)

Side by Side Diff: fpdfsdk/include/cpdfsdk_annothandlermgr.h

Issue 2384503003: Move fpdfsdk/include to fpdfsdk (Closed)
Patch Set: Rebase to master Created 4 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « fpdfsdk/include/cpdfsdk_annot.h ('k') | fpdfsdk/include/cpdfsdk_annotiterator.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
(Empty)
1 // Copyright 2016 PDFium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4
5 // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com
6
7 #ifndef FPDFSDK_INCLUDE_CPDFSDK_ANNOTHANDLERMGR_H_
8 #define FPDFSDK_INCLUDE_CPDFSDK_ANNOTHANDLERMGR_H_
9
10 #include <map>
11 #include <memory>
12
13 #include "core/fpdfdoc/cpdf_annot.h"
14 #include "core/fxcrt/fx_basic.h"
15 #include "core/fxcrt/fx_coordinates.h"
16 #include "fpdfsdk/include/cpdfsdk_annot.h"
17
18 class CFX_Matrix;
19 class CFX_RenderDevice;
20 class CPDFSDK_Environment;
21 class CPDFSDK_BAAnnotHandler;
22 class CPDFSDK_WidgetHandler;
23 class CPDFSDK_PageView;
24 class IPDFSDK_AnnotHandler;
25
26 #ifdef PDF_ENABLE_XFA
27 class CPDFSDK_XFAWidgetHandler;
28 class CXFA_FFWidget;
29 #endif // PDF_ENABLE_XFA
30
31 class CPDFSDK_AnnotHandlerMgr {
32 public:
33 explicit CPDFSDK_AnnotHandlerMgr(CPDFSDK_Environment* pApp);
34 ~CPDFSDK_AnnotHandlerMgr();
35
36 CPDFSDK_Annot* NewAnnot(CPDF_Annot* pAnnot, CPDFSDK_PageView* pPageView);
37 #ifdef PDF_ENABLE_XFA
38 CPDFSDK_Annot* NewAnnot(CXFA_FFWidget* pAnnot, CPDFSDK_PageView* pPageView);
39 #endif // PDF_ENABLE_XFA
40 void ReleaseAnnot(CPDFSDK_Annot* pAnnot);
41
42 void Annot_OnCreate(CPDFSDK_Annot* pAnnot);
43 void Annot_OnLoad(CPDFSDK_Annot* pAnnot);
44
45 IPDFSDK_AnnotHandler* GetAnnotHandler(CPDFSDK_Annot* pAnnot) const;
46 void Annot_OnDraw(CPDFSDK_PageView* pPageView,
47 CPDFSDK_Annot* pAnnot,
48 CFX_RenderDevice* pDevice,
49 CFX_Matrix* pUser2Device,
50 bool bDrawAnnots);
51
52 void Annot_OnMouseEnter(CPDFSDK_PageView* pPageView,
53 CPDFSDK_Annot::ObservedPtr* pAnnot,
54 uint32_t nFlags);
55 void Annot_OnMouseExit(CPDFSDK_PageView* pPageView,
56 CPDFSDK_Annot::ObservedPtr* pAnnot,
57 uint32_t nFlags);
58 FX_BOOL Annot_OnLButtonDown(CPDFSDK_PageView* pPageView,
59 CPDFSDK_Annot::ObservedPtr* pAnnot,
60 uint32_t nFlags,
61 const CFX_FloatPoint& point);
62 FX_BOOL Annot_OnLButtonUp(CPDFSDK_PageView* pPageView,
63 CPDFSDK_Annot::ObservedPtr* pAnnot,
64 uint32_t nFlags,
65 const CFX_FloatPoint& point);
66 FX_BOOL Annot_OnLButtonDblClk(CPDFSDK_PageView* pPageView,
67 CPDFSDK_Annot::ObservedPtr* pAnnot,
68 uint32_t nFlags,
69 const CFX_FloatPoint& point);
70 FX_BOOL Annot_OnMouseMove(CPDFSDK_PageView* pPageView,
71 CPDFSDK_Annot::ObservedPtr* pAnnot,
72 uint32_t nFlags,
73 const CFX_FloatPoint& point);
74 FX_BOOL Annot_OnMouseWheel(CPDFSDK_PageView* pPageView,
75 CPDFSDK_Annot::ObservedPtr* pAnnot,
76 uint32_t nFlags,
77 short zDelta,
78 const CFX_FloatPoint& point);
79 FX_BOOL Annot_OnRButtonDown(CPDFSDK_PageView* pPageView,
80 CPDFSDK_Annot::ObservedPtr* pAnnot,
81 uint32_t nFlags,
82 const CFX_FloatPoint& point);
83 FX_BOOL Annot_OnRButtonUp(CPDFSDK_PageView* pPageView,
84 CPDFSDK_Annot::ObservedPtr* pAnnot,
85 uint32_t nFlags,
86 const CFX_FloatPoint& point);
87 FX_BOOL Annot_OnChar(CPDFSDK_Annot* pAnnot, uint32_t nChar, uint32_t nFlags);
88 FX_BOOL Annot_OnKeyDown(CPDFSDK_Annot* pAnnot, int nKeyCode, int nFlag);
89 FX_BOOL Annot_OnKeyUp(CPDFSDK_Annot* pAnnot, int nKeyCode, int nFlag);
90
91 FX_BOOL Annot_OnSetFocus(CPDFSDK_Annot::ObservedPtr* pAnnot, uint32_t nFlag);
92 FX_BOOL Annot_OnKillFocus(CPDFSDK_Annot::ObservedPtr* pAnnot, uint32_t nFlag);
93
94 #ifdef PDF_ENABLE_XFA
95 FX_BOOL Annot_OnChangeFocus(CPDFSDK_Annot::ObservedPtr* pSetAnnot,
96 CPDFSDK_Annot::ObservedPtr* pKillAnnot);
97 #endif // PDF_ENABLE_XFA
98
99 CFX_FloatRect Annot_OnGetViewBBox(CPDFSDK_PageView* pPageView,
100 CPDFSDK_Annot* pAnnot);
101 FX_BOOL Annot_OnHitTest(CPDFSDK_PageView* pPageView,
102 CPDFSDK_Annot* pAnnot,
103 const CFX_FloatPoint& point);
104
105 private:
106 IPDFSDK_AnnotHandler* GetAnnotHandler(CPDF_Annot::Subtype nSubtype) const;
107 CPDFSDK_Annot* GetNextAnnot(CPDFSDK_Annot* pSDKAnnot, FX_BOOL bNext);
108
109 std::unique_ptr<CPDFSDK_BAAnnotHandler> m_pBAAnnotHandler;
110 std::unique_ptr<CPDFSDK_WidgetHandler> m_pWidgetHandler;
111 #ifdef PDF_ENABLE_XFA
112 std::unique_ptr<CPDFSDK_XFAWidgetHandler> m_pXFAWidgetHandler;
113 #endif // PDF_ENABLE_XFA
114
115 CPDFSDK_Environment* m_pEnv;
116 };
117
118 #endif // FPDFSDK_INCLUDE_CPDFSDK_ANNOTHANDLERMGR_H_
OLDNEW
« no previous file with comments | « fpdfsdk/include/cpdfsdk_annot.h ('k') | fpdfsdk/include/cpdfsdk_annotiterator.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698