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

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

Issue 2243623002: Split fpdfsdk/fsdk_annothandler.h into individual classes. (Closed) Base URL: https://pdfium.googlesource.com/pdfium.git@master
Patch Set: Split fpdfsdk/fsdk_annothandler.h into individual classes. Created 4 years, 4 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/fsdk_mgr.h ('k') | pdfium.gyp » ('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_IPDFSDK_ANNOTHANDLER_H_
8 #define FPDFSDK_INCLUDE_IPDFSDK_ANNOTHANDLER_H_
9
10 #include "core/fxcrt/include/fx_basic.h"
11 #include "core/fxcrt/include/fx_coordinates.h"
12
13 #ifdef PDF_ENABLE_XFA
14 #define FSDK_XFAWIDGET_TYPENAME "XFAWidget"
15 #endif // PDF_ENABLE_XFA
16
17 class CFX_Matrix;
18 class CFX_RenderDevice;
19 class CPDF_Annot;
20 class CPDFSDK_Annot;
21 class CPDFSDK_PageView;
22
23 #ifdef PDF_ENABLE_XFA
24 class CXFA_FFWidget;
25 #endif // PDF_ENABLE_XFA
26
27 class IPDFSDK_AnnotHandler {
28 public:
29 virtual ~IPDFSDK_AnnotHandler() {}
30
31 virtual CFX_ByteString GetType() = 0;
32 virtual CFX_ByteString GetName() = 0;
33 virtual FX_BOOL CanAnswer(CPDFSDK_Annot* pAnnot) = 0;
34 virtual CPDFSDK_Annot* NewAnnot(CPDF_Annot* pAnnot,
35 CPDFSDK_PageView* pPage) = 0;
36
37 #ifdef PDF_ENABLE_XFA
38 virtual CPDFSDK_Annot* NewAnnot(CXFA_FFWidget* hWidget,
39 CPDFSDK_PageView* pPage) = 0;
40 #endif // PDF_ENABLE_XFA
41
42 virtual void ReleaseAnnot(CPDFSDK_Annot* pAnnot) = 0;
43 virtual void DeleteAnnot(CPDFSDK_Annot* pAnnot) = 0;
44 virtual CFX_FloatRect GetViewBBox(CPDFSDK_PageView* pPageView,
45 CPDFSDK_Annot* pAnnot) = 0;
46 virtual FX_BOOL HitTest(CPDFSDK_PageView* pPageView,
47 CPDFSDK_Annot* pAnnot,
48 const CFX_FloatPoint& point) = 0;
49 virtual void OnDraw(CPDFSDK_PageView* pPageView,
50 CPDFSDK_Annot* pAnnot,
51 CFX_RenderDevice* pDevice,
52 CFX_Matrix* pUser2Device,
53 uint32_t dwFlags) = 0;
54 virtual void OnDrawSleep(CPDFSDK_PageView* pPageView,
55 CPDFSDK_Annot* pAnnot,
56 CFX_RenderDevice* pDevice,
57 CFX_Matrix* pUser2Device,
58 const CFX_FloatRect& rcWindow,
59 uint32_t dwFlags) = 0;
60
61 virtual void OnCreate(CPDFSDK_Annot* pAnnot) = 0;
62 virtual void OnLoad(CPDFSDK_Annot* pAnnot) = 0;
63 virtual void OnDelete(CPDFSDK_Annot* pAnnot) = 0;
64 virtual void OnRelease(CPDFSDK_Annot* pAnnot) = 0;
65 virtual void OnMouseEnter(CPDFSDK_PageView* pPageView,
66 CPDFSDK_Annot* pAnnot,
67 uint32_t nFlag) = 0;
68 virtual void OnMouseExit(CPDFSDK_PageView* pPageView,
69 CPDFSDK_Annot* pAnnot,
70 uint32_t nFlag) = 0;
71 virtual FX_BOOL OnLButtonDown(CPDFSDK_PageView* pPageView,
72 CPDFSDK_Annot* pAnnot,
73 uint32_t nFlags,
74 const CFX_FloatPoint& point) = 0;
75 virtual FX_BOOL OnLButtonUp(CPDFSDK_PageView* pPageView,
76 CPDFSDK_Annot* pAnnot,
77 uint32_t nFlags,
78 const CFX_FloatPoint& point) = 0;
79 virtual FX_BOOL OnLButtonDblClk(CPDFSDK_PageView* pPageView,
80 CPDFSDK_Annot* pAnnot,
81 uint32_t nFlags,
82 const CFX_FloatPoint& point) = 0;
83 virtual FX_BOOL OnMouseMove(CPDFSDK_PageView* pPageView,
84 CPDFSDK_Annot* pAnnot,
85 uint32_t nFlags,
86 const CFX_FloatPoint& point) = 0;
87 virtual FX_BOOL OnMouseWheel(CPDFSDK_PageView* pPageView,
88 CPDFSDK_Annot* pAnnot,
89 uint32_t nFlags,
90 short zDelta,
91 const CFX_FloatPoint& point) = 0;
92 virtual FX_BOOL OnRButtonDown(CPDFSDK_PageView* pPageView,
93 CPDFSDK_Annot* pAnnot,
94 uint32_t nFlags,
95 const CFX_FloatPoint& point) = 0;
96 virtual FX_BOOL OnRButtonUp(CPDFSDK_PageView* pPageView,
97 CPDFSDK_Annot* pAnnot,
98 uint32_t nFlags,
99 const CFX_FloatPoint& point) = 0;
100 virtual FX_BOOL OnRButtonDblClk(CPDFSDK_PageView* pPageView,
101 CPDFSDK_Annot* pAnnot,
102 uint32_t nFlags,
103 const CFX_FloatPoint& point) = 0;
104 virtual FX_BOOL OnChar(CPDFSDK_Annot* pAnnot,
105 uint32_t nChar,
106 uint32_t nFlags) = 0;
107 virtual FX_BOOL OnKeyDown(CPDFSDK_Annot* pAnnot, int nKeyCode, int nFlag) = 0;
108 virtual FX_BOOL OnKeyUp(CPDFSDK_Annot* pAnnot, int nKeyCode, int nFlag) = 0;
109 virtual void OnDeSelected(CPDFSDK_Annot* pAnnot) = 0;
110 virtual void OnSelected(CPDFSDK_Annot* pAnnot) = 0;
111 virtual FX_BOOL OnSetFocus(CPDFSDK_Annot* pAnnot, uint32_t nFlag) = 0;
112 virtual FX_BOOL OnKillFocus(CPDFSDK_Annot* pAnnot, uint32_t nFlag) = 0;
113 #ifdef PDF_ENABLE_XFA
114 virtual FX_BOOL OnXFAChangedFocus(CPDFSDK_Annot* pOldAnnot,
115 CPDFSDK_Annot* pNewAnnot) = 0;
116 #endif // PDF_ENABLE_XFA
117 };
118
119 #endif // FPDFSDK_INCLUDE_IPDFSDK_ANNOTHANDLER_H_
OLDNEW
« no previous file with comments | « fpdfsdk/include/fsdk_mgr.h ('k') | pdfium.gyp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698