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 _FSDK_BASEFORM_H_ | 7 #ifndef _FSDK_BASEFORM_H_ |
8 #define _FSDK_BASEFORM_H_ | 8 #define _FSDK_BASEFORM_H_ |
9 | 9 |
10 #if _FX_OS_ == _FX_ANDROID_ | 10 #if _FX_OS_ == _FX_ANDROID_ |
11 #include "time.h" | 11 #include "time.h" |
12 #else | 12 #else |
13 #include <ctime> | 13 #include <ctime> |
14 #endif | 14 #endif |
15 | 15 |
16 class CPDFSDK_Document; | 16 class CPDFSDK_Document; |
17 class CPDFSDK_DateTime; | 17 class CPDFSDK_DateTime; |
18 struct CPWL_Color; | 18 struct CPWL_Color; |
19 class CFFL_FormFiller; | 19 class CFFL_FormFiller; |
20 class CPDFSDK_PageView; | 20 class CPDFSDK_PageView; |
21 class CPDFSDK_InterForm; | 21 class CPDFSDK_InterForm; |
22 | 22 |
23 | 23 typedef struct _PDFSDK_FieldAction { |
24 typedef struct _PDFSDK_FieldAction | 24 _PDFSDK_FieldAction() { |
25 { | 25 bModifier = FALSE; |
26 » _PDFSDK_FieldAction() | 26 bShift = FALSE; |
27 » { | 27 nCommitKey = 0; |
28 » » bModifier = FALSE; | 28 bKeyDown = FALSE; |
29 » » bShift = FALSE; | 29 nSelEnd = nSelStart = 0; |
30 » » nCommitKey = 0; | 30 bWillCommit = FALSE; |
31 » » bKeyDown = FALSE; | 31 bFieldFull = FALSE; |
32 » » nSelEnd = nSelStart = 0; | 32 bRC = TRUE; |
33 » » bWillCommit = FALSE; | 33 } |
34 » » bFieldFull = FALSE; | 34 |
35 » » bRC = TRUE; | 35 FX_BOOL bModifier; // in |
36 » } | 36 FX_BOOL bShift; // in |
37 » | 37 int nCommitKey; // in |
38 » FX_BOOL»» » » » bModifier;» » //in | 38 CFX_WideString sChange; // in[out] |
39 » FX_BOOL»» » » » bShift;»» » //in | 39 CFX_WideString sChangeEx; // in |
40 » int» » » » » » nCommitKey;» »
//in | 40 FX_BOOL bKeyDown; // in |
41 » CFX_WideString» » » sChange;» » //in[out] | 41 int nSelEnd; // in[out] |
42 » CFX_WideString» » » sChangeEx;» » //in | 42 int nSelStart; // in[out] |
43 » FX_BOOL»» » » » bKeyDown;» » //in | 43 CFX_WideString sValue; // in[out] |
44 » int» » » » » » nSelEnd;» »
//in[out] | 44 FX_BOOL bWillCommit; // in |
45 » int» » » » » » nSelStart;» »
//in[out] | 45 FX_BOOL bFieldFull; // in |
46 » CFX_WideString» » » sValue;»» » //in[out] | 46 FX_BOOL bRC; // in[out] |
47 » FX_BOOL»» » » » bWillCommit;» //in | 47 } PDFSDK_FieldAction; |
48 » FX_BOOL»» » » » bFieldFull;» » //in | 48 class CPDFSDK_Widget : public CPDFSDK_Annot { |
49 » FX_BOOL»» » » » bRC;» » » //in[out
] | 49 public: |
50 }PDFSDK_FieldAction; | 50 CPDFSDK_Widget(CPDF_Annot* pAnnot, |
51 class CPDFSDK_Widget:public CPDFSDK_Annot | 51 CPDFSDK_PageView* pPageView, |
52 { | 52 CPDFSDK_InterForm* pInterForm); |
53 public: | 53 virtual ~CPDFSDK_Widget(); |
54 » CPDFSDK_Widget(CPDF_Annot* pAnnot, CPDFSDK_PageView* pPageView, CPDFSDK_
InterForm* pInterForm); | 54 |
55 » virtual ~CPDFSDK_Widget(); | 55 virtual CFX_ByteString GetSubType() const; |
56 | 56 |
57 » virtual CFX_ByteString» » » GetSubType() const; | 57 virtual CPDF_Action GetAAction(CPDF_AAction::AActionType eAAT); |
58 » | 58 |
59 » virtual CPDF_Action» » » » GetAAction(CPDF_AAction:
:AActionType eAAT); | 59 int GetFieldType() const; |
60 | 60 // define layout order to 2. |
61 » int» » » » » » » » GetField
Type() const; | 61 virtual int GetLayoutOrder() const { return 2; } |
62 » //define layout order to 2. | 62 /* |
63 » virtual int» » » » » » GetLayoutOrder()
const {return 2;} | 63 FIELDFLAG_READONLY |
64 » /* | 64 FIELDFLAG_REQUIRED |
65 » FIELDFLAG_READONLY | 65 FIELDFLAG_NOEXPORT |
66 » FIELDFLAG_REQUIRED | 66 */ |
67 » FIELDFLAG_NOEXPORT | 67 |
68 » */ | 68 int GetFieldFlags() const; |
69 » | 69 int GetRotate() const; |
70 » int» » » » » » » » GetField
Flags() const; | 70 |
71 » int» » » » » » » » GetRotat
e() const; | 71 FX_BOOL GetFillColor(FX_COLORREF& color) const; |
72 | 72 FX_BOOL GetBorderColor(FX_COLORREF& color) const; |
73 » FX_BOOL»» » » » » » GetFillColor(FX_
COLORREF& color) const; | 73 FX_BOOL GetTextColor(FX_COLORREF& color) const; |
74 » FX_BOOL»» » » » » » GetBorderColor(F
X_COLORREF& color) const; | 74 FX_FLOAT GetFontSize() const; |
75 » FX_BOOL»» » » » » » GetTextColor(FX_
COLORREF& color) const; | 75 |
76 » FX_FLOAT» » » » » » GetFontSize() co
nst; | 76 int GetSelectedIndex(int nIndex) const; |
77 | 77 CFX_WideString GetValue() const; |
78 » int» » » » » » » » GetSelec
tedIndex(int nIndex) const; | 78 CFX_WideString GetDefaultValue() const; |
79 » CFX_WideString» » » » » GetValue() const; | 79 CFX_WideString GetOptionLabel(int nIndex) const; |
80 » CFX_WideString» » » » » GetDefaultValue() const; | 80 int CountOptions() const; |
81 » CFX_WideString» » » » » GetOptionLabel(int nInde
x) const; | 81 FX_BOOL IsOptionSelected(int nIndex) const; |
82 » int» » » » » » » » CountOpt
ions() const; | 82 int GetTopVisibleIndex() const; |
83 » FX_BOOL»» » » » » » IsOptionSelected
(int nIndex) const; | 83 FX_BOOL IsChecked() const; |
84 » int» » » » » » » » GetTopVi
sibleIndex() const; | 84 /* |
85 » FX_BOOL»» » » » » » IsChecked() cons
t; | 85 BF_ALIGN_LEFT |
86 » /* | 86 BF_ALIGN_MIDDL |
87 » BF_ALIGN_LEFT | 87 BF_ALIGN_RIGHT |
88 » BF_ALIGN_MIDDL | 88 */ |
89 » BF_ALIGN_RIGHT | 89 int GetAlignment() const; |
90 » */ | 90 int GetMaxLen() const; |
91 » int» » » » » » » » GetAlign
ment() const; | 91 CFX_WideString GetAlternateName() const; |
92 » int» » » » » » » » GetMaxLe
n() const; | 92 |
93 » CFX_WideString» » » » » GetAlternateName() const
; | 93 // Set Properties. |
94 | 94 void SetCheck(FX_BOOL bChecked, FX_BOOL bNotify); |
95 //Set Properties. | 95 void SetValue(const CFX_WideString& sValue, FX_BOOL bNotify); |
96 » void» » » » » » » SetCheck(FX_BOOL
bChecked, FX_BOOL bNotify); | 96 void SetDefaultValue(const CFX_WideString& sValue); |
97 » void» » » » » » » SetValue(const C
FX_WideString& sValue, FX_BOOL bNotify); | 97 void SetOptionSelection(int index, FX_BOOL bSelected, FX_BOOL bNotify); |
98 » void» » » » » » » SetDefaultValue(
const CFX_WideString& sValue); | 98 void ClearSelection(FX_BOOL bNotify); |
99 » void» » » » » » » SetOptionSelecti
on(int index, FX_BOOL bSelected, FX_BOOL bNotify); | 99 void SetTopVisibleIndex(int index); |
100 » void» » » » » » » ClearSelection(F
X_BOOL bNotify); | 100 |
101 » void» » » » » » » SetTopVisibleInd
ex(int index); | 101 void ResetAppearance(FX_LPCWSTR sValue, FX_BOOL bValueChanged); |
102 | 102 void ResetFieldAppearance(FX_BOOL bValueChanged); |
103 » void» » » » » » » ResetAppearance(
FX_LPCWSTR sValue, FX_BOOL bValueChanged); | 103 void UpdateField(); |
104 » void» » » » » » » ResetFieldAppear
ance(FX_BOOL bValueChanged); | 104 CFX_WideString OnFormat(int nCommitKey, FX_BOOL& bFormated); |
105 » void» » » » » » » UpdateField(); | 105 |
106 » CFX_WideString» » » » » OnFormat(int nCommitKey,
FX_BOOL& bFormated); | 106 // Message. |
107 » | 107 FX_BOOL OnAAction(CPDF_AAction::AActionType type, |
108 //Message. | 108 PDFSDK_FieldAction& data, |
109 » FX_BOOL»» » » » » » OnAAction(CPDF_A
Action::AActionType type, PDFSDK_FieldAction& data, | 109 CPDFSDK_PageView* pPageView); |
110 » » » » » » » » » »
» » CPDFSDK_PageView* pPageView); | 110 |
111 | 111 CPDFSDK_InterForm* GetInterForm() const { return m_pInterForm; } |
112 » CPDFSDK_InterForm*» » » » GetInterForm() const {re
turn m_pInterForm;} | 112 CPDF_FormField* GetFormField() const; |
113 » CPDF_FormField*»» » » » GetFormField() const; | 113 CPDF_FormControl* GetFormControl() const; |
114 » CPDF_FormControl*» » » » GetFormControl() const; | 114 static CPDF_FormControl* GetFormControl(CPDF_InterForm* pInterForm, |
115 » static CPDF_FormControl*» » GetFormControl(CPDF_InterForm* p
InterForm, CPDF_Dictionary* pAnnotDict); | 115 CPDF_Dictionary* pAnnotDict); |
116 | 116 |
117 » void» » » » » » » DrawShadow(CFX_R
enderDevice* pDevice, CPDFSDK_PageView* pPageView); | 117 void DrawShadow(CFX_RenderDevice* pDevice, CPDFSDK_PageView* pPageView); |
118 » | 118 |
119 » void» » » » » » » SetAppModified()
; | 119 void SetAppModified(); |
120 » void» » » » » » » ClearAppModified
(); | 120 void ClearAppModified(); |
121 » FX_BOOL»» » » » » » IsAppModified()
const; | 121 FX_BOOL IsAppModified() const; |
122 » | 122 |
123 » FX_INT32» » » » » » GetAppearanceAge
() const; | 123 FX_INT32 GetAppearanceAge() const; |
124 » FX_INT32» » » » » » GetValueAge() co
nst; | 124 FX_INT32 GetValueAge() const; |
125 » | 125 |
126 private: | 126 private: |
127 » void» » » » » » » ResetAppearance_
PushButton(); | 127 void ResetAppearance_PushButton(); |
128 » void» » » » » » » ResetAppearance_
CheckBox(); | 128 void ResetAppearance_CheckBox(); |
129 » void» » » » » » » ResetAppearance_
RadioButton(); | 129 void ResetAppearance_RadioButton(); |
130 » void» » » » » » » ResetAppearance_
ComboBox(FX_LPCWSTR sValue); | 130 void ResetAppearance_ComboBox(FX_LPCWSTR sValue); |
131 » void» » » » » » » ResetAppearance_
ListBox(); | 131 void ResetAppearance_ListBox(); |
132 » void» » » » » » » ResetAppearance_
TextField(FX_LPCWSTR sValue); | 132 void ResetAppearance_TextField(FX_LPCWSTR sValue); |
133 » | 133 |
134 » CPDF_Rect» » » » » » GetClientRect()
const; | 134 CPDF_Rect GetClientRect() const; |
135 » CPDF_Rect» » » » » » GetRotatedRect()
const; | 135 CPDF_Rect GetRotatedRect() const; |
136 » | 136 |
137 » CFX_ByteString» » » » » GetBackgroundAppStream()
const; | 137 CFX_ByteString GetBackgroundAppStream() const; |
138 » CFX_ByteString» » » » » GetBorderAppStream() con
st; | 138 CFX_ByteString GetBorderAppStream() const; |
139 » CPDF_Matrix» » » » » » GetMatrix() cons
t; | 139 CPDF_Matrix GetMatrix() const; |
140 » | 140 |
141 » CPWL_Color» » » » » » GetTextPWLColor(
) const; | 141 CPWL_Color GetTextPWLColor() const; |
142 » CPWL_Color» » » » » » GetBorderPWLColo
r() const; | 142 CPWL_Color GetBorderPWLColor() const; |
143 » CPWL_Color» » » » » » GetFillPWLColor(
) const; | 143 CPWL_Color GetFillPWLColor() const; |
144 » | 144 |
145 » void» » » » » » » AddImageToAppear
ance(const CFX_ByteString& sAPType, CPDF_Stream* pImage); | 145 void AddImageToAppearance(const CFX_ByteString& sAPType, CPDF_Stream* pImage); |
146 » void» » » » » » » RemoveAppearance
(const CFX_ByteString& sAPType); | 146 void RemoveAppearance(const CFX_ByteString& sAPType); |
147 public: | 147 |
148 » FX_BOOL»» » » » » » IsWidgetAppearan
ceValid(CPDF_Annot::AppearanceMode mode); | 148 public: |
149 » void» » » » » » » DrawAppearance(C
FX_RenderDevice* pDevice, const CPDF_Matrix* pUser2Device, | 149 FX_BOOL IsWidgetAppearanceValid(CPDF_Annot::AppearanceMode mode); |
150 » » CPDF_Annot::AppearanceMode mode, const CPDF_RenderOptions* pOpti
ons); | 150 void DrawAppearance(CFX_RenderDevice* pDevice, |
151 public: | 151 const CPDF_Matrix* pUser2Device, |
152 » FX_BOOL»» » » » » » HitTest(FX_FLOAT
pageX, FX_FLOAT pageY); | 152 CPDF_Annot::AppearanceMode mode, |
153 private: | 153 const CPDF_RenderOptions* pOptions); |
154 » CPDFSDK_InterForm*» » » » m_pInterForm; | 154 |
155 » FX_BOOL»» » » » » » m_bAppModified; | 155 public: |
156 » FX_INT32» » » » » » m_nAppAge; | 156 FX_BOOL HitTest(FX_FLOAT pageX, FX_FLOAT pageY); |
157 » FX_INT32» » » » » » m_nValueAge; | 157 |
| 158 private: |
| 159 CPDFSDK_InterForm* m_pInterForm; |
| 160 FX_BOOL m_bAppModified; |
| 161 FX_INT32 m_nAppAge; |
| 162 FX_INT32 m_nValueAge; |
158 }; | 163 }; |
159 | 164 |
160 #define CPDFSDK_WidgetMap» » » » CFX_MapPtrTemplate<CPDF_
FormControl*, CPDFSDK_Widget*> | 165 #define CPDFSDK_WidgetMap CFX_MapPtrTemplate<CPDF_FormControl*, CPDFSDK_Widget*> |
161 | 166 |
162 class CPDFSDK_InterForm : public CPDF_FormNotify | 167 class CPDFSDK_InterForm : public CPDF_FormNotify { |
163 { | 168 public: |
164 public: | 169 CPDFSDK_InterForm(CPDFSDK_Document* pDocument); |
165 » CPDFSDK_InterForm(CPDFSDK_Document* pDocument); | 170 virtual ~CPDFSDK_InterForm(); |
166 » virtual ~CPDFSDK_InterForm(); | 171 |
167 » | 172 public: |
168 public: | 173 virtual void Destroy(); |
169 » virtual void» » » » » Destroy(); | 174 virtual CPDF_InterForm* GetInterForm(); |
170 » virtual CPDF_InterForm*»» » GetInterForm(); | 175 |
171 » | 176 CPDFSDK_Document* GetDocument(); |
172 » CPDFSDK_Document*» » » » GetDocument(); | 177 FX_BOOL HighlightWidgets(); |
173 » FX_BOOL»» » » » » » HighlightWidgets
(); | 178 |
174 » | 179 CPDFSDK_Widget* GetSibling(CPDFSDK_Widget* pWidget, FX_BOOL bNext) const; |
175 » CPDFSDK_Widget*»» » » » GetSibling(CPDFSDK_Widge
t* pWidget, FX_BOOL bNext) const; | 180 CPDFSDK_Widget* GetWidget(CPDF_FormControl* pControl) const; |
176 » CPDFSDK_Widget*»» » » » GetWidget(CPDF_FormContr
ol* pControl) const; | 181 void GetWidgets(const CFX_WideString& sFieldName, CFX_PtrArray& widgets); |
177 » void» » » » » » » GetWidgets(const
CFX_WideString& sFieldName, CFX_PtrArray& widgets); | 182 void GetWidgets(CPDF_FormField* pField, CFX_PtrArray& widgets); |
178 » void» » » » » » » GetWidgets(CPDF_
FormField* pField, CFX_PtrArray& widgets); | 183 |
179 » | 184 void AddMap(CPDF_FormControl* pControl, CPDFSDK_Widget* pWidget); |
180 » void» » » » » » » AddMap(CPDF_Form
Control* pControl, CPDFSDK_Widget* pWidget); | 185 void RemoveMap(CPDF_FormControl* pControl); |
181 » void» » » » » » » RemoveMap(CPDF_F
ormControl* pControl); | 186 |
182 » | 187 void EnableCalculate(FX_BOOL bEnabled); |
183 » void» » » » » » » EnableCalculate(
FX_BOOL bEnabled); | 188 FX_BOOL IsCalculateEnabled() const; |
184 » FX_BOOL»» » » » » » IsCalculateEnabl
ed() const; | |
185 | 189 |
186 #ifdef _WIN32 | 190 #ifdef _WIN32 |
187 » CPDF_Stream*» » » » » LoadImageFromFile(const
CFX_WideString& sFile); | 191 CPDF_Stream* LoadImageFromFile(const CFX_WideString& sFile); |
188 #endif | 192 #endif |
189 | 193 |
190 » void» » » » » » » OnKeyStrokeCommi
t(CPDF_FormField* pFormField, CFX_WideString& csValue, FX_BOOL& bRC); | 194 void OnKeyStrokeCommit(CPDF_FormField* pFormField, |
191 » void» » » » » » » OnValidate(CPDF_
FormField* pFormField, CFX_WideString& csValue, FX_BOOL& bRC); | 195 CFX_WideString& csValue, |
192 » void» » » » » » » OnCalculate(CPDF
_FormField* pFormField = NULL); | 196 FX_BOOL& bRC); |
193 » CFX_WideString» » » » » OnFormat(CPDF_FormField*
pFormField, int nCommitKey, FX_BOOL& bFormated); | 197 void OnValidate(CPDF_FormField* pFormField, |
194 » | 198 CFX_WideString& csValue, |
195 » void» » » » » » » ResetFieldAppear
ance(CPDF_FormField* pFormField, FX_LPCWSTR sValue, FX_BOOL bValueChanged); | 199 FX_BOOL& bRC); |
196 » void» » » » » » » UpdateField(CPDF
_FormField* pFormField); | 200 void OnCalculate(CPDF_FormField* pFormField = NULL); |
197 » | 201 CFX_WideString OnFormat(CPDF_FormField* pFormField, |
198 public: | 202 int nCommitKey, |
199 » FX_BOOL»» » » » » » DoAction_Hide(co
nst CPDF_Action& action); | 203 FX_BOOL& bFormated); |
200 » FX_BOOL»» » » » » » DoAction_SubmitF
orm(const CPDF_Action& action); | 204 |
201 » FX_BOOL»» » » » » » DoAction_ResetFo
rm(const CPDF_Action& action); | 205 void ResetFieldAppearance(CPDF_FormField* pFormField, |
202 » FX_BOOL»» » » » » » DoAction_ImportD
ata(const CPDF_Action& action); | 206 FX_LPCWSTR sValue, |
203 » | 207 FX_BOOL bValueChanged); |
204 » void» » » » » » » GetFieldFromObje
cts(const CFX_PtrArray& objects, CFX_PtrArray& fields); | 208 void UpdateField(CPDF_FormField* pFormField); |
205 » FX_BOOL»» » » » » » IsValidField(CPD
F_Dictionary* pFieldDict); | 209 |
206 » FX_BOOL»» » » » » » SubmitFields(con
st CFX_WideString& csDestination, const CFX_PtrArray& fields, | 210 public: |
207 » » FX_BOOL bIncludeOrExclude, FX_BOOL bUrlEncoded); | 211 FX_BOOL DoAction_Hide(const CPDF_Action& action); |
208 » FX_BOOL»» » » » » » SubmitForm(const
CFX_WideString& sDestination, FX_BOOL bUrlEncoded); | 212 FX_BOOL DoAction_SubmitForm(const CPDF_Action& action); |
209 » FX_BOOL»» » » » » » ImportFormFromFD
FFile(const CFX_WideString& csFDFFileName, FX_BOOL bNotify); | 213 FX_BOOL DoAction_ResetForm(const CPDF_Action& action); |
210 » FX_BOOL»» » » » » » ExportFormToFDFF
ile(const CFX_WideString& sFDFFileName); | 214 FX_BOOL DoAction_ImportData(const CPDF_Action& action); |
211 » FX_BOOL»» » » » » » ExportFormToFDFT
extBuf(CFX_ByteTextBuf& textBuf); | 215 |
212 » FX_BOOL»» » » » » » ExportFieldsToFD
FFile(const CFX_WideString& sFDFFileName, const CFX_PtrArray& fields, | 216 void GetFieldFromObjects(const CFX_PtrArray& objects, CFX_PtrArray& fields); |
213 » » FX_BOOL bIncludeOrExclude); | 217 FX_BOOL IsValidField(CPDF_Dictionary* pFieldDict); |
214 » FX_BOOL»» » » » » » ExportFieldsToFD
FTextBuf(const CFX_PtrArray& fields,FX_BOOL bIncludeOrExclude, CFX_ByteTextBuf&
textBuf); | 218 FX_BOOL SubmitFields(const CFX_WideString& csDestination, |
215 » FX_BOOL»» » » » » » ExportFormToTxtF
ile(const CFX_WideString& sTxtFileName); | 219 const CFX_PtrArray& fields, |
216 » FX_BOOL»» » » » » » ImportFormFromTx
tFile(const CFX_WideString& sTxtFileName); | 220 FX_BOOL bIncludeOrExclude, |
217 » CFX_WideString» » » » » GetTemporaryFileName(con
st CFX_WideString& sFileExt); | 221 FX_BOOL bUrlEncoded); |
218 » | 222 FX_BOOL SubmitForm(const CFX_WideString& sDestination, FX_BOOL bUrlEncoded); |
219 private: | 223 FX_BOOL ImportFormFromFDFFile(const CFX_WideString& csFDFFileName, |
220 » virtual int» » » » » » BeforeValueChang
e(const CPDF_FormField* pField, CFX_WideString& csValue); | 224 FX_BOOL bNotify); |
221 » virtual int» » » » » » AfterValueChange
(const CPDF_FormField* pField); | 225 FX_BOOL ExportFormToFDFFile(const CFX_WideString& sFDFFileName); |
222 » virtual int» » » » » » BeforeSelectionC
hange(const CPDF_FormField* pField, CFX_WideString& csValue); | 226 FX_BOOL ExportFormToFDFTextBuf(CFX_ByteTextBuf& textBuf); |
223 » virtual int» » » » » » AfterSelectionCh
ange(const CPDF_FormField* pField); | 227 FX_BOOL ExportFieldsToFDFFile(const CFX_WideString& sFDFFileName, |
224 » virtual int» » » » » » AfterCheckedStat
usChange(const CPDF_FormField* pField, const CFX_ByteArray& statusArray); | 228 const CFX_PtrArray& fields, |
225 » virtual int» » » » » » BeforeFormReset(
const CPDF_InterForm* pForm); | 229 FX_BOOL bIncludeOrExclude); |
226 » virtual int» » » » » » AfterFormReset(c
onst CPDF_InterForm* pForm); | 230 FX_BOOL ExportFieldsToFDFTextBuf(const CFX_PtrArray& fields, |
227 » virtual int» » » » » » BeforeFormImport
Data(const CPDF_InterForm* pForm); | 231 FX_BOOL bIncludeOrExclude, |
228 » virtual int» » » » » » AfterFormImportD
ata(const CPDF_InterForm* pForm); | 232 CFX_ByteTextBuf& textBuf); |
229 » | 233 FX_BOOL ExportFormToTxtFile(const CFX_WideString& sTxtFileName); |
230 private: | 234 FX_BOOL ImportFormFromTxtFile(const CFX_WideString& sTxtFileName); |
231 » FX_BOOL»» » » » » » FDFToURLEncodedD
ata(CFX_WideString csFDFFile, CFX_WideString csTxtFile); | 235 CFX_WideString GetTemporaryFileName(const CFX_WideString& sFileExt); |
232 » FX_BOOL»» » » » » » FDFToURLEncodedD
ata(FX_LPBYTE& pBuf, FX_STRSIZE& nBufSize); | 236 |
233 » int» » » » » » » » GetPageI
ndexByAnnotDict(CPDF_Document* pDocument, CPDF_Dictionary* pAnnotDict) const; | 237 private: |
234 » void» » » » » » » DoFDFBuffer(CFX_
ByteString sBuffer); | 238 virtual int BeforeValueChange(const CPDF_FormField* pField, |
235 » | 239 CFX_WideString& csValue); |
236 private: | 240 virtual int AfterValueChange(const CPDF_FormField* pField); |
237 » CPDFSDK_Document*» » » » m_pDocument; | 241 virtual int BeforeSelectionChange(const CPDF_FormField* pField, |
238 » CPDF_InterForm*»» » » » m_pInterForm; | 242 CFX_WideString& csValue); |
239 » CPDFSDK_WidgetMap» » » » m_Map; | 243 virtual int AfterSelectionChange(const CPDF_FormField* pField); |
240 » FX_BOOL»» » » » » » m_bCalculate; | 244 virtual int AfterCheckedStatusChange(const CPDF_FormField* pField, |
241 » FX_BOOL»» » » » » » m_bBusy; | 245 const CFX_ByteArray& statusArray); |
242 | 246 virtual int BeforeFormReset(const CPDF_InterForm* pForm); |
243 public: | 247 virtual int AfterFormReset(const CPDF_InterForm* pForm); |
244 » FX_BOOL IsNeedHighLight(int nFieldType); | 248 virtual int BeforeFormImportData(const CPDF_InterForm* pForm); |
245 » void RemoveAllHighLight(); | 249 virtual int AfterFormImportData(const CPDF_InterForm* pForm); |
246 » void SetHighlightAlpha(FX_BYTE alpha) {m_iHighlightAlpha = alpha;} | 250 |
247 » FX_BYTE GetHighlightAlpha() {return m_iHighlightAlpha;} | 251 private: |
248 » void SetHighlightColor(FX_COLORREF clr, int nFieldType); | 252 FX_BOOL FDFToURLEncodedData(CFX_WideString csFDFFile, |
249 » FX_COLORREF GetHighlightColor(int nFieldType); | 253 CFX_WideString csTxtFile); |
250 private: | 254 FX_BOOL FDFToURLEncodedData(FX_LPBYTE& pBuf, FX_STRSIZE& nBufSize); |
251 » FX_COLORREF m_aHighlightColor[6]; | 255 int GetPageIndexByAnnotDict(CPDF_Document* pDocument, |
252 » FX_BYTE m_iHighlightAlpha; | 256 CPDF_Dictionary* pAnnotDict) const; |
253 » FX_BOOL»m_bNeedHightlight[6]; | 257 void DoFDFBuffer(CFX_ByteString sBuffer); |
| 258 |
| 259 private: |
| 260 CPDFSDK_Document* m_pDocument; |
| 261 CPDF_InterForm* m_pInterForm; |
| 262 CPDFSDK_WidgetMap m_Map; |
| 263 FX_BOOL m_bCalculate; |
| 264 FX_BOOL m_bBusy; |
| 265 |
| 266 public: |
| 267 FX_BOOL IsNeedHighLight(int nFieldType); |
| 268 void RemoveAllHighLight(); |
| 269 void SetHighlightAlpha(FX_BYTE alpha) { m_iHighlightAlpha = alpha; } |
| 270 FX_BYTE GetHighlightAlpha() { return m_iHighlightAlpha; } |
| 271 void SetHighlightColor(FX_COLORREF clr, int nFieldType); |
| 272 FX_COLORREF GetHighlightColor(int nFieldType); |
| 273 |
| 274 private: |
| 275 FX_COLORREF m_aHighlightColor[6]; |
| 276 FX_BYTE m_iHighlightAlpha; |
| 277 FX_BOOL m_bNeedHightlight[6]; |
254 }; | 278 }; |
255 | 279 |
256 #define BAI_STRUCTURE» » 0 | 280 #define BAI_STRUCTURE 0 |
257 #define BAI_ROW»» » » 1 | 281 #define BAI_ROW 1 |
258 #define BAI_COLUMN» » » 2 | 282 #define BAI_COLUMN 2 |
259 | 283 |
260 #define CPDFSDK_Annots» » » » CFX_ArrayTemplate<CPDFSDK_Annot*
> | 284 #define CPDFSDK_Annots CFX_ArrayTemplate<CPDFSDK_Annot*> |
261 #define CPDFSDK_SortAnnots» » » CGW_ArrayTemplate<CPDFSDK_Annot*
> | 285 #define CPDFSDK_SortAnnots CGW_ArrayTemplate<CPDFSDK_Annot*> |
262 class CBA_AnnotIterator | 286 class CBA_AnnotIterator { |
263 { | 287 public: |
264 public: | 288 CBA_AnnotIterator(CPDFSDK_PageView* pPageView, |
265 » CBA_AnnotIterator(CPDFSDK_PageView* pPageView, const CFX_ByteString& sTy
pe, const CFX_ByteString& sSubType); | 289 const CFX_ByteString& sType, |
266 » virtual ~CBA_AnnotIterator(); | 290 const CFX_ByteString& sSubType); |
267 » | 291 virtual ~CBA_AnnotIterator(); |
268 » virtual CPDFSDK_Annot*» » » » GetFirstAnnot(); | 292 |
269 » virtual CPDFSDK_Annot*» » » » GetLastAnnot(); | 293 virtual CPDFSDK_Annot* GetFirstAnnot(); |
270 » virtual CPDFSDK_Annot*» » » » GetNextAnnot(CPDFSDK_Ann
ot* pAnnot); | 294 virtual CPDFSDK_Annot* GetLastAnnot(); |
271 » virtual CPDFSDK_Annot*» » » » GetPrevAnnot(CPDFSDK_Ann
ot* pAnnot); | 295 virtual CPDFSDK_Annot* GetNextAnnot(CPDFSDK_Annot* pAnnot); |
272 » | 296 virtual CPDFSDK_Annot* GetPrevAnnot(CPDFSDK_Annot* pAnnot); |
273 » virtual void» » » » » » Release(){delete
this;} | 297 |
274 » | 298 virtual void Release() { delete this; } |
275 private: | 299 |
276 » void» » » » » » » » Generate
Results(); | 300 private: |
277 » static int» » » » » » » CompareB
yLeft(CPDFSDK_Annot* p1, CPDFSDK_Annot* p2); | 301 void GenerateResults(); |
278 » static int» » » » » » » CompareB
yTop(CPDFSDK_Annot* p1, CPDFSDK_Annot* p2); | 302 static int CompareByLeft(CPDFSDK_Annot* p1, CPDFSDK_Annot* p2); |
279 » | 303 static int CompareByTop(CPDFSDK_Annot* p1, CPDFSDK_Annot* p2); |
280 » static CPDF_Rect» » » » » GetAnnotRect(CPD
FSDK_Annot* pAnnot); | 304 |
281 » | 305 static CPDF_Rect GetAnnotRect(CPDFSDK_Annot* pAnnot); |
282 private: | 306 |
283 » CPDFSDK_PageView*» » » » » m_pPageView; | 307 private: |
284 » CFX_ByteString» » » » » » m_sType; | 308 CPDFSDK_PageView* m_pPageView; |
285 » CFX_ByteString» » » » » » m_sSubType; | 309 CFX_ByteString m_sType; |
286 » int» » » » » » » » »
m_nTabs; | 310 CFX_ByteString m_sSubType; |
287 » | 311 int m_nTabs; |
288 » CPDFSDK_Annots» » » » » » m_Annots; | 312 |
| 313 CPDFSDK_Annots m_Annots; |
289 }; | 314 }; |
290 | 315 |
291 #endif //#define _FSDK_BASEFORM_H_ | 316 #endif //#define _FSDK_BASEFORM_H_ |
292 | |
OLD | NEW |