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

Side by Side Diff: public/fpdf_formfill.h

Issue 1140653004: Merge to XFA: Tidy public/ directory. (Closed) Base URL: https://pdfium.googlesource.com/pdfium.git@xfa
Patch Set: Created 5 years, 7 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 | « public/fpdf_flatten.h ('k') | public/fpdf_fwlevent.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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 PUBLIC_FPDF_FORMFILL_H_
8 #define PUBLIC_FPDF_FORMFILL_H_
7 9
8 #ifndef _FPDFORMFILL_H
9 #define _FPDFORMFILL_H
10 #include "fpdfview.h" 10 #include "fpdfview.h"
11 11
12 typedef void* FPDF_FORMHANDLE; 12 typedef void* FPDF_FORMHANDLE;
13 13
14 #define DOCTYPE_PDF 0 //Normal pdf Document 14 #define DOCTYPE_PDF 0 //Normal pdf Document
15 #define DOCTYPE_DYNIMIC_XFA 1 //Dynimic xfa Document Type 15 #define DOCTYPE_DYNIMIC_XFA 1 //Dynimic xfa Document Type
16 #define DOCTYPE_STATIC_XFA 2 //Static xfa Document Type 16 #define DOCTYPE_STATIC_XFA 2 //Static xfa Document Type
17 17
18 // Exported Functions 18 // Exported Functions
19 #ifdef __cplusplus 19 #ifdef __cplusplus
20 extern "C" { 20 extern "C" {
21 #endif 21 #endif
22 22
23 typedef struct _IPDF_JsPlatform 23 typedef struct _IPDF_JsPlatform
24 { 24 {
25 /** 25 /**
26 * Version number of the interface. Currently must be 1. 26 * Version number of the interface. Currently must be 1.
27 **/ 27 **/
28 int version; 28 int version;
29 29
30 /** 30 /**
31 * Method: app_alert 31 * Method: app_alert
32 * pop up a dialog to show warning or hint. 32 * pop up a dialog to show warning or hint.
33 * Interface Version: 33 * Interface Version:
34 * 1 34 * 1
35 * Implementation Required: 35 * Implementation Required:
36 * yes 36 * yes
37 * Parameters: 37 * Parameters:
38 * pThis - Pointer to the interface structure itself 38 * pThis - Pointer to the interface structure itself
39 * Msg - A string contain ing the message to be displayed. 39 * Msg - A string containing the message to be displayed.
40 * Title - The title of the dialog. 40 * Title - The title of the dialog.
41 * Type - The stype of button grou p. 41 * Type - The stype of button group.
42 * 0-OK(default); 42 * 0-OK(default);
43 * 1-OK,Cancel; 43 * 1-OK,Cancel;
44 * 2-Yes,NO; 44 * 2-Yes,NO;
45 * 3-Yes, NO, Cance l. 45 * 3-Yes, NO, Cancel.
46 * nIcon - The Icon type. 46 * nIcon - The Icon type.
47 * 0-Error(default) ; 47 * 0-Error(default);
48 * 1-Warning; 48 * 1-Warning;
49 * 2-Question; 49 * 2-Question;
50 * 3-Status. 50 * 3-Status.
51 * 4-Asterisk 51 * 4-Asterisk
52 52
53 * Return Value: 53 * Return Value:
54 * The return value could be the folowing type: 54 * The return value could be the folowing type:
55 * 1-OK; 55 * 1-OK;
56 * 2-Cancel; 56 * 2-Cancel;
57 * 3-NO; 57 * 3-NO;
58 * 4-Yes; 58 * 4-Yes;
59 */ 59 */
60 int (*app_alert)(struct _IPDF_JsPlatform* pThis, FPDF_WIDESTRING Msg, FP DF_WIDESTRING Title, int Type, int Icon); 60 int (*app_alert)(struct _IPDF_JsPlatform* pThis, FPDF_WIDESTRING Msg, FPDF_W IDESTRING Title, int Type, int Icon);
61 61
62 /** 62 /**
63 * Method: app_beep 63 * Method: app_beep
64 * Causes the system to play a sound. 64 * Causes the system to play a sound.
65 * Interface Version: 65 * Interface Version:
66 * 1 66 * 1
67 * Implementation Required: 67 * Implementation Required:
68 * yes 68 * yes
69 * Parameters: 69 * Parameters:
70 * pThis - Pointer to the interface structure itself 70 * pThis - Pointer to the interface structure itself
71 * nType - The sound type. 71 * nType - The sound type.
72 * 0 - Error 72 * 0 - Error
73 * 1 - Warning 73 * 1 - Warning
74 * 2 - Question 74 * 2 - Question
75 * 3 - Status 75 * 3 - Status
76 * 4 - Default (def ault value) 76 * 4 - Default (default value)
77 * Return Value: 77 * Return Value:
78 * None 78 * None
79 */ 79 */
80 void (*app_beep)(struct _IPDF_JsPlatform* pThis, int nType); 80 void (*app_beep)(struct _IPDF_JsPlatform* pThis, int nType);
81 81
82 /** 82 /**
83 * Method: app_response 83 * Method: app_response
84 * Displays a dialog box containing a question and an entry field for the user to reply to the question. 84 * Displays a dialog box containing a question and an entry field f or the user to reply to the question.
85 * Interface Version: 85 * Interface Version:
86 * 1 86 * 1
87 * Implementation Required: 87 * Implementation Required:
88 * yes 88 * yes
89 * Parameters: 89 * Parameters:
90 * pThis - Pointer to the interface structure itself 90 * pThis - Pointer to the interface structure itself
91 * Question - The question to be posed to the user. 91 * Question - The question to be posed to the user.
92 * Title - The title of the dialog box. 92 * Title - The title of the dialog box.
93 * Default - A default value for the answer to the question. If not specified, no default value is presented. 93 * Default - A default value for the answer to the question. If not specified, no default value is presented.
94 * cLabel - A short string to appear in front of and on the same line as the edit text field. 94 * cLabel - A short string to appear in front of and on the same line as the edit text field.
95 * bPassword - If true, indicates that the user's response should show as asterisks (*) or bullets (?) to mask the resp onse, which might be sensitive information. The default is false. 95 * bPassword - If true, indicates that the user's response shou ld show as asterisks (*) or bullets (?) to mask the response, which might be sen sitive information. The default is false.
96 * response - A string buffer allocate d by SDK, to receive the user's response. 96 * response - A string buffer allocated by SDK, to receive the user's response.
97 * length - The length of the buffer, nu mber of bytes. Currently, It's always be 2048. 97 * length - The length of the buffer, number of bytes. Curre ntly, It's always be 2048.
98 * Return Value: 98 * Return Value:
99 * Number of bytes the complete user input would actually r equire, not including trailing zeros, regardless of the value of the length 99 * Number of bytes the complete user input would actually require, not including trailing zeros, regardless of the value of the length
100 * parameter or the presence of the response buffer. 100 * parameter or the presence of the response buffer.
101 * Comments: 101 * Comments:
102 * No matter on what platform, the response buffer should b e always written using UTF-16LE encoding. If a response buffer is 102 * No matter on what platform, the response buffer should be always wri tten using UTF-16LE encoding. If a response buffer is
103 * present and the size of the user input exceeds the capac ity of the buffer as specified by the length parameter, only the 103 * present and the size of the user input exceeds the capacity of the b uffer as specified by the length parameter, only the
104 * first "length" bytes of the user input are to be written to the buffer. 104 * first "length" bytes of the user input are to be written to the buff er.
105 */ 105 */
106 int (*app_response)(struct _IPDF_JsPlatform* pThis, FPDF_WIDESTRING Ques tion, FPDF_WIDESTRING Title, FPDF_WIDESTRING Default, FPDF_WIDESTRING cLabel, FP DF_BOOL bPassword, void* response, int length); 106 int (*app_response)(struct _IPDF_JsPlatform* pThis, FPDF_WIDESTRING Question , FPDF_WIDESTRING Title, FPDF_WIDESTRING Default, FPDF_WIDESTRING cLabel, FPDF_B OOL bPassword, void* response, int length);
107 107
108 /* 108 /*
109 * Method: Doc_getFilePath 109 * Method: Doc_getFilePath
110 * Get the file path of the current document. 110 * Get the file path of the current document.
111 * Interface Version: 111 * Interface Version:
112 * 1 112 * 1
113 * Implementation Required: 113 * Implementation Required:
114 * yes 114 * yes
115 * Parameters: 115 * Parameters:
116 * pThis - Pointer to the interface structure itself 116 * pThis - Pointer to the interface structure itself
117 * filePath - The string buffer to rec eive the file path. Can be NULL. 117 * filePath - The string buffer to receive the file path. Can be NULL.
118 * length - The length of the buffer, nu mber of bytes. Can be 0. 118 * length - The length of the buffer, number of bytes. Can b e 0.
119 * Return Value: 119 * Return Value:
120 * Number of bytes the filePath consumes, including trailin g zeros. 120 * Number of bytes the filePath consumes, including trailing zeros.
121 * Comments: 121 * Comments:
122 * The filePath should be always input in local encoding. 122 * The filePath should be always input in local encoding.
123 * 123 *
124 * The return value always indicated number of bytes requir ed for the buffer, even when there is 124 * The return value always indicated number of bytes required for the b uffer, even when there is
125 * no buffer specified, or the buffer size is less then req uired. In this case, the buffer will not 125 * no buffer specified, or the buffer size is less then required. In th is case, the buffer will not
126 * be modified. 126 * be modified.
127 */ 127 */
128 int (*Doc_getFilePath)(struct _IPDF_JsPlatform* pThis, void* filePath, i nt length); 128 int (*Doc_getFilePath)(struct _IPDF_JsPlatform* pThis, void* filePath, int l ength);
129 129
130 130
131 /* 131 /*
132 * Method: Doc_mail 132 * Method: Doc_mail
133 * Mails the data buffer as an attachment to all re cipients, with or without user interaction. 133 * Mails the data buffer as an attachment to all recipients, with o r without user interaction.
134 * Interface Version: 134 * Interface Version:
135 * 1 135 * 1
136 * Implementation Required: 136 * Implementation Required:
137 * yes 137 * yes
138 * Parameters: 138 * Parameters:
139 * pThis - Pointer to the interface structure itself 139 * pThis - Pointer to the interface structure itself
140 * mailData - Pointer to the data buff er to be sent.Can be NULL. 140 * mailData - Pointer to the data buffer to be sent.Can be NUL L.
141 * length - The size,in bytes, of th e buffer pointed by mailData parameter.Can be 0. 141 * length - The size,in bytes, of the buffer pointed by mail Data parameter.Can be 0.
142 * bUI - If true, the rest of the parameters are used in a compose-new-message window that is displayed to th e user. If false, the cTo parameter is required and all others are optional. 142 * bUI - If true, the rest of the parameters are used in a compose-new-message window that is displayed to the user. If false, the cTo pa rameter is required and all others are optional.
143 * To - A semicolon-deli mited list of recipients for the message. 143 * To - A semicolon-delimited list of recipients for the message.
144 * Subject - The subject of the message. The length limit is 64 KB. 144 * Subject - The subject of the message. The length limit is 64 KB.
145 * CC - A semicolon-deli mited list of CC recipients for the message. 145 * CC - A semicolon-delimited list of CC recipients for the message.
146 * BCC - A semicolon-delimite d list of BCC recipients for the message. 146 * BCC - A semicolon-delimited list of BCC recipients for the message.
147 * Msg - The content of the m essage. The length limit is 64 KB. 147 * Msg - The content of the message. The length limit is 64 KB.
148 * Return Value: 148 * Return Value:
149 * None. 149 * None.
150 * Comments: 150 * Comments:
151 * If the parameter mailData is NULL or length is 0 , the current document will be mailed as an attachment to all recipients. 151 * If the parameter mailData is NULL or length is 0, the current do cument will be mailed as an attachment to all recipients.
152 */ 152 */
153 void (*Doc_mail)(struct _IPDF_JsPlatform* pThis,void* mailData, int leng th,FPDF_BOOL bUI, FPDF_WIDESTRING To, FPDF_WIDESTRING Subject, FPDF_WIDESTRING C C, FPDF_WIDESTRING BCC, FPDF_WIDESTRING Msg); 153 void (*Doc_mail)(struct _IPDF_JsPlatform* pThis,void* mailData, int length,F PDF_BOOL bUI, FPDF_WIDESTRING To, FPDF_WIDESTRING Subject, FPDF_WIDESTRING CC, F PDF_WIDESTRING BCC, FPDF_WIDESTRING Msg);
154 154
155 155
156 /* 156 /*
157 * Method: Doc_print 157 * Method: Doc_print
158 * Prints all or a specific number of pages of the document. 158 * Prints all or a specific number of pages of the document.
159 * Interface Version: 159 * Interface Version:
160 * 1 160 * 1
161 * Implementation Required: 161 * Implementation Required:
162 * yes 162 * yes
163 * Parameters: 163 * Parameters:
164 * pThis - Pointer to the interface structure itself. 164 * pThis - Pointer to the interface structure itself.
165 * bUI - If true, will ca use a UI to be presented to the user to obtain printing information and confirm the action. 165 * bUI - If true, will cause a UI to be presented to the user to obtain printing information and confirm the action.
166 * nStart - A 0-based index that def ines the start of an inclusive range of pages. 166 * nStart - A 0-based index that defines the start of an inc lusive range of pages.
167 * nEnd - A 0-based index that defines the end of an inclusive page range. 167 * nEnd - A 0-based index that defines the end of an inclu sive page range.
168 * bSilent - If true, suppresses the canc el dialog box while the document is printing. The default is false. 168 * bSilent - If true, suppresses the cancel dialog box while the document is printing. The default is false.
169 * bShrinkToFit - If true, the page is shr unk (if necessary) to fit within the imageable area of the printed page. 169 * bShrinkToFit - If true, the page is shrunk (if necessary) t o fit within the imageable area of the printed page.
170 * bPrintAsImage - If true, print pages as an image. 170 * bPrintAsImage - If true, print pages as an image.
171 * bReverse - If true, print from nEnd to nStart. 171 * bReverse - If true, print from nEnd to nStart.
172 * bAnnotations - If true (the default), a nnotations are printed. 172 * bAnnotations - If true (the default), annotations are print ed.
173 */ 173 */
174 void (*Doc_print)(struct _IPDF_JsPlatform* pThis, FPDF_BOOL bUI, int nSt art, int nEnd, FPDF_BOOL bSilent ,FPDF_BOOL bShrinkToFit,FPDF_BOOL bPrintAsImage ,FPDF_BOOL bReverse ,FPDF_BOOL bAnnotations); 174 void (*Doc_print)(struct _IPDF_JsPlatform* pThis, FPDF_BOOL bUI, int nStart, int nEnd, FPDF_BOOL bSilent ,FPDF_BOOL bShrinkToFit,FPDF_BOOL bPrintAsImage ,FP DF_BOOL bReverse ,FPDF_BOOL bAnnotations);
175 175
176 /* 176 /*
177 * Method: Doc_submitForm 177 * Method: Doc_submitForm
178 * Send the form data to a specified URL. 178 * Send the form data to a specified URL.
179 * Interface Version: 179 * Interface Version:
180 * 1 180 * 1
181 * Implementation Required: 181 * Implementation Required:
182 * yes 182 * yes
183 * Parameters: 183 * Parameters:
184 * pThis - Pointer to the interface structure itself 184 * pThis - Pointer to the interface structure itself
185 * formData - Pointer to the data buff er to be sent. 185 * formData - Pointer to the data buffer to be sent.
186 * length - The size,in bytes, of th e buffer pointed by formData parameter. 186 * length - The size,in bytes, of the buffer pointed by form Data parameter.
187 * URL - The URL to send to. 187 * URL - The URL to send to.
188 * Return Value: 188 * Return Value:
189 * None. 189 * None.
190 * 190 *
191 */ 191 */
192 void (*Doc_submitForm)(struct _IPDF_JsPlatform* pThis,void* formData, in t length, FPDF_WIDESTRING URL); 192 void (*Doc_submitForm)(struct _IPDF_JsPlatform* pThis,void* formData, int le ngth, FPDF_WIDESTRING URL);
193 193
194 /* 194 /*
195 * Method: Doc_gotoPage 195 * Method: Doc_gotoPage
196 * Jump to a specified page. 196 * Jump to a specified page.
197 * Interface Version: 197 * Interface Version:
198 * 1 198 * 1
199 * Implementation Required: 199 * Implementation Required:
200 * yes 200 * yes
201 * Parameters: 201 * Parameters:
202 * pThis - Pointer to the interface structure itself 202 * pThis - Pointer to the interface structure itself
203 * nPageNum - The specified page numbe r, zero for the first page. 203 * nPageNum - The specified page number, zero for the first pa ge.
204 * Return Value: 204 * Return Value:
205 * None. 205 * None.
206 * 206 *
207 */ 207 */
208 void (*Doc_gotoPage)(struct _IPDF_JsPlatform* pThis, int nPageNum); 208 void (*Doc_gotoPage)(struct _IPDF_JsPlatform* pThis, int nPageNum);
209 /* 209 /*
210 * Method: Field_browse 210 * Method: Field_browse
211 * Show a file selection dialog, and return the sel ected file path. 211 * Show a file selection dialog, and return the selected file path.
212 * Interface Version: 212 * Interface Version:
213 * 1 213 * 1
214 * Implementation Required: 214 * Implementation Required:
215 * yes 215 * yes
216 * Parameters: 216 * Parameters:
217 * pThis - Pointer to the interface structure itself. 217 * pThis - Pointer to the interface structure itself.
218 * filePath - Pointer to the data buff er to receive the file path.Can be NULL. 218 * filePath - Pointer to the data buffer to receive the file p ath.Can be NULL.
219 * length - The length of the buffer, nu mber of bytes. Can be 0. 219 * length - The length of the buffer, number of bytes. Can b e 0.
220 * Return Value: 220 * Return Value:
221 * Number of bytes the filePath consumes, including trailin g zeros. 221 * Number of bytes the filePath consumes, including trailing zeros.
222 * Comments: 222 * Comments:
223 * The filePath shoule be always input in local encoding. 223 * The filePath shoule be always input in local encoding.
224 */ 224 */
225 int (*Field_browse)(struct _IPDF_JsPlatform* pThis, void* filePath, int length); 225 int (*Field_browse)(struct _IPDF_JsPlatform* pThis, void* filePath, int len gth);
226 226
227 /** 227 /**
228 * pointer to FPDF_FORMFILLINFO interface. 228 * pointer to FPDF_FORMFILLINFO interface.
229 **/ 229 **/
230 void* m_pFormfillinfo; 230 void* m_pFormfillinfo;
231 } IPDF_JSPLATFORM; 231 } IPDF_JSPLATFORM;
232 232
233 // Flags for Cursor type 233 // Flags for Cursor type
234 #define FXCT_ARROW» 0 234 #define FXCT_ARROW 0
235 #define FXCT_NESW» 1» » 235 #define FXCT_NESW 1
236 #define FXCT_NWSE» 2» » 236 #define FXCT_NWSE 2
237 #define FXCT_VBEAM» 3» » 237 #define FXCT_VBEAM 3
238 #define FXCT_HBEAM» 4» 238 #define FXCT_HBEAM 4
239 #define FXCT_HAND» 5 239 #define FXCT_HAND 5
240 240
241 /** 241 /**
242 * Declares of a pointer type to the callback function for the FFI_SetTimer meth od. 242 * Declares of a pointer type to the callback function for the FFI_SetTimer meth od.
243 * Parameters: 243 * Parameters:
244 *» » » idEvent»» -» Identifier of the timer. 244 * idEvent - Identifier of the timer.
245 * Return value: 245 * Return value:
246 *» » » None. 246 * None.
247 **/» 247 **/
248 typedef void» (*TimerCallback)(int idEvent); 248 typedef void (*TimerCallback)(int idEvent);
249 249
250 /** 250 /**
251 * Declares of a struct type to the local system time. 251 * Declares of a struct type to the local system time.
252 **/ 252 **/
253 typedef struct _FPDF_SYSTEMTIME 253 typedef struct _FPDF_SYSTEMTIME
254 { 254 {
255 unsigned short wYear;» » » /* years since 1900 */ 255 unsigned short wYear; /* years since 1900 */
256 unsigned short wMonth;» » » /* months since January - [0,11] */ 256 unsigned short wMonth; /* months since January - [0,11] */
257 unsigned short wDayOfWeek;» » /* days since Sunday - [0,6] */ 257 unsigned short wDayOfWeek; /* days since Sunday - [0,6] */
258 unsigned short wDay;» » » /* day of the month - [1,31] */ 258 unsigned short wDay; /* day of the month - [1,31] */
259 unsigned short wHour;» » » /* hours since midnight - [0,23] */ 259 unsigned short wHour; /* hours since midnight - [0,23] */
260 unsigned short wMinute;» » » /* minutes after the hour - [0,5 9] */ 260 unsigned short wMinute; /* minutes after the hour - [0,59] */
261 unsigned short wSecond;» » » /* seconds after the minute - [0 ,59] */ 261 unsigned short wSecond; /* seconds after the minute - [0,59] */
262 unsigned short wMilliseconds;» /* milliseconds after the second - [0,99 9] */ 262 unsigned short wMilliseconds; /* milliseconds after the second - [0,999] * /
263 }FPDF_SYSTEMTIME; 263 }FPDF_SYSTEMTIME;
264 264
265 //XFA 265 //XFA
266 /** 266 /**
267 * @name Pageview event flags 267 * @name Pageview event flags
268 */ 268 */
269 /*@{*/ 269 /*@{*/
270 /** @brief After a new pageview is added. */ 270 /** @brief After a new pageview is added. */
271 #define FXFA_PAGEVIEWEVENT_POSTADDED» » 1 271 #define FXFA_PAGEVIEWEVENT_POSTADDED 1
272 /** @brief After a pageview is removed. */ 272 /** @brief After a pageview is removed. */
273 #define FXFA_PAGEVIEWEVENT_POSTREMOVED » 3 273 #define FXFA_PAGEVIEWEVENT_POSTREMOVED 3
274 /*@}*/ 274 /*@}*/
275 275
276 // menu 276 // menu
277 /** 277 /**
278 * @name Macro Definitions for Right Context Menu Features Of XFA Fields 278 * @name Macro Definitions for Right Context Menu Features Of XFA Fields
279 */ 279 */
280 /*@{*/ 280 /*@{*/
281 #define» FXFA_MEMU_COPY»» » 1 281 #define FXFA_MEMU_COPY 1
282 #define FXFA_MEMU_CUT» » » 2 282 #define FXFA_MEMU_CUT 2
283 #define FXFA_MEMU_SELECTALL» 4 283 #define FXFA_MEMU_SELECTALL 4
284 #define FXFA_MEMU_UNDO»» » 8 284 #define FXFA_MEMU_UNDO 8
285 #define FXFA_MEMU_REDO»» » 16 285 #define FXFA_MEMU_REDO 16
286 #define FXFA_MEMU_PASTE» » 32 286 #define FXFA_MEMU_PASTE 32
287 /*@}*/ 287 /*@}*/
288 288
289 // file type 289 // file type
290 /** 290 /**
291 * @name Macro Definitions for File Type. 291 * @name Macro Definitions for File Type.
292 */ 292 */
293 /*@{*/ 293 /*@{*/
294 #define FXFA_SAVEAS_XML»» 1 294 #define FXFA_SAVEAS_XML 1
295 #define FXFA_SAVEAS_XDP»» 2 295 #define FXFA_SAVEAS_XDP 2
296 /*@}*/ 296 /*@}*/
297 297
298 typedef struct _FPDF_FORMFILLINFO 298 typedef struct _FPDF_FORMFILLINFO
299 { 299 {
300 /** 300 /**
301 * Version number of the interface. Currently must be 2 (with XFA module ). 301 * Version number of the interface. Currently must be 2 (with XFA module).
302 **/ 302 **/
303 int version; 303 int version;
304 304
305 /** 305 /**
306 * Method: Release 306 * Method: Release
307 * Give implementation a chance to release any data after the interface is no longer used 307 * Give implementation a chance to release any data after the inter face is no longer used
308 * Interface Version: 308 * Interface Version:
309 * 1 309 * 1
310 * Implementation Required: 310 * Implementation Required:
311 * No 311 * No
312 * Comments: 312 * Comments:
313 * Called by Foxit SDK during the final cleanup pro cess. 313 * Called by Foxit SDK during the final cleanup process.
314 * Parameters: 314 * Parameters:
315 * pThis - Pointer to the interface structure itself 315 * pThis - Pointer to the interface structure itself
316 * Return Value: 316 * Return Value:
317 * None 317 * None
318 */ 318 */
319 319
320 void (*Release)(struct _FPDF_FORMFILLINFO* pThis); 320 void (*Release)(struct _FPDF_FORMFILLINFO* pThis);
321 321
322 /** 322 /**
323 * Method: FFI_Invalidate 323 * Method: FFI_Invalidate
324 * Invalidate the client area within the specified rectangle. 324 * Invalidate the client area within the specified rectangle.
325 * Interface Version: 325 * Interface Version:
326 * 1 326 * 1
327 * Implementation Required: 327 * Implementation Required:
328 * yes 328 * yes
329 * Parameters: 329 * Parameters:
330 * pThis - Pointer to the interface structure itself. 330 * pThis - Pointer to the interface structure itself.
331 * page - Handle to the page. Retu rned by FPDF_LoadPage function. 331 * page - Handle to the page. Returned by FPDF_LoadPage fu nction.
332 * left - Left position of the cli ent area in PDF page coordinate. 332 * left - Left position of the client area in PDF page coo rdinate.
333 * top - Top position of the client area in PDF page coordinate. 333 * top - Top position of the client area in PDF page coo rdinate.
334 * right - Right position of the cl ient area in PDF page coordinate. 334 * right - Right position of the client area in PDF page c oordinate.
335 * bottom - Bottom position of the c lient area in PDF page coordinate. 335 * bottom - Bottom position of the client area in PDF page c oordinate.
336 * Return Value: 336 * Return Value:
337 * None. 337 * None.
338 * 338 *
339 *comments: 339 *comments:
340 * All positions are measured in PDF "user space". 340 * All positions are measured in PDF "user space".
341 * Implementation should call FPDF_RenderPageBitmap () function for repainting a specified page area. 341 * Implementation should call FPDF_RenderPageBitmap() function for repainting a specified page area.
342 */ 342 */
343 void (*FFI_Invalidate)(struct _FPDF_FORMFILLINFO* pThis,FPDF_PAGE page, double left, double top, double right, double bottom); 343 void (*FFI_Invalidate)(struct _FPDF_FORMFILLINFO* pThis,FPDF_PAGE page, doub le left, double top, double right, double bottom);
344 344
345 /** 345 /**
346 * Method: FFI_OutputSelectedRect 346 * Method: FFI_OutputSelectedRect
347 * When user is taking the mouse to select texts on a form field, this callback function will keep 347 * When user is taking the mouse to select texts on a form field, t his callback function will keep
348 * returning the selected areas to the implementati on. 348 * returning the selected areas to the implementation.
349 * 349 *
350 * Interface Version: 350 * Interface Version:
351 * 1 351 * 1
352 * Implementation Required: 352 * Implementation Required:
353 * No 353 * No
354 * Parameters: 354 * Parameters:
355 * pThis - Pointer to the interface structure itself. 355 * pThis - Pointer to the interface structure itself.
356 * page - Handle to the page. Retu rned by FPDF_LoadPage function. 356 * page - Handle to the page. Returned by FPDF_LoadPage fu nction.
357 * left - Left position of the cli ent area in PDF page coordinate. 357 * left - Left position of the client area in PDF page coo rdinate.
358 * top - Top position of the client area in PDF page coordinate. 358 * top - Top position of the client area in PDF page coo rdinate.
359 * right - Right position of the cl ient area in PDF page coordinate. 359 * right - Right position of the client area in PDF page c oordinate.
360 * bottom - Bottom position of the c lient area in PDF page coordinate. 360 * bottom - Bottom position of the client area in PDF page c oordinate.
361 * Return Value: 361 * Return Value:
362 * None. 362 * None.
363 * 363 *
364 * comments: 364 * comments:
365 * This CALLBACK function is useful for implementin g special text selection effect. Implementation should 365 * This CALLBACK function is useful for implementing special text s election effect. Implementation should
366 * first records the returned rectangles, then draw them one by one at the painting period, last,remove all 366 * first records the returned rectangles, then draw them one by one at the painting period, last,remove all
367 * the recorded rectangles when finish painting. 367 * the recorded rectangles when finish painting.
368 */ 368 */
369 void (*FFI_OutputSelectedRect)(struct _FPDF_FORMFILLINFO* pThis,FPDF_PAG E page, double left, double top, double right, double bottom); 369 void (*FFI_OutputSelectedRect)(struct _FPDF_FORMFILLINFO* pThis,FPDF_PAGE pa ge, double left, double top, double right, double bottom);
370 370
371 /** 371 /**
372 * Method: FFI_SetCursor 372 * Method: FFI_SetCursor
373 * Set the Cursor shape. 373 * Set the Cursor shape.
374 * Interface Version: 374 * Interface Version:
375 * 1 375 * 1
376 * Implementation Required: 376 * Implementation Required:
377 * yes 377 * yes
378 * Parameters: 378 * Parameters:
379 * pThis - Pointer to the interface structu re itself. 379 * pThis - Pointer to the interface structure itself.
380 * nCursorType - Cursor type. see Flags for Curso r type for the details. 380 * nCursorType - Cursor type. see Flags for Cursor type for the detai ls.
381 * Return value: 381 * Return value:
382 * None. 382 * None.
383 * */ 383 * */
384 void (*FFI_SetCursor)(struct _FPDF_FORMFILLINFO* pThis, int nCursorType) ; 384 void (*FFI_SetCursor)(struct _FPDF_FORMFILLINFO* pThis, int nCursorType);
385 385
386 /** 386 /**
387 * Method: FFI_SetTimer 387 * Method: FFI_SetTimer
388 * This method installs a system timer. A time-out value is specified, 388 * This method installs a system timer. A time-out value is specifi ed,
389 * and every time a time-out occurs, the system pas ses a message to 389 * and every time a time-out occurs, the system passes a message to
390 * the TimerProc callback function. 390 * the TimerProc callback function.
391 * Interface Version: 391 * Interface Version:
392 * 1 392 * 1
393 * Implementation Required: 393 * Implementation Required:
394 * yes 394 * yes
395 * Parameters: 395 * Parameters:
396 * pThis - Pointer to the interface structu re itself. 396 * pThis - Pointer to the interface structure itself.
397 * uElapse - Specifies the time-out value, in milliseconds. 397 * uElapse - Specifies the time-out value, in milliseconds.
398 * lpTimerFunc - A pointer to the callback functi on-TimerCallback. 398 * lpTimerFunc - A pointer to the callback function-TimerCallback.
399 * Return value: 399 * Return value:
400 * The timer identifier of the new timer if the function is successful. 400 * The timer identifier of the new timer if the function is successful.
401 * An application passes this value to the FFI_KillTimer me thod to kill 401 * An application passes this value to the FFI_KillTimer method to kill
402 * the timer. Nonzero if it is successful; otherwise, it is zero. 402 * the timer. Nonzero if it is successful; otherwise, it is zero.
403 * */ 403 * */
404 int (*FFI_SetTimer)(struct _FPDF_FORMFILLINFO* pThis, int uElapse, Time rCallback lpTimerFunc); 404 int (*FFI_SetTimer)(struct _FPDF_FORMFILLINFO* pThis, int uElapse, TimerCal lback lpTimerFunc);
405 405
406 /** 406 /**
407 * Method: FFI_KillTimer 407 * Method: FFI_KillTimer
408 * This method kills the timer event identified by nIDEvent, set by an earlier call to FFI_SetTimer. 408 * This method kills the timer event identified by nIDEvent, set by an earlier call to FFI_SetTimer.
409 * Interface Version: 409 * Interface Version:
410 * 1 410 * 1
411 * Implementation Required: 411 * Implementation Required:
412 * yes 412 * yes
413 * Parameters: 413 * Parameters:
414 * pThis - Pointer to the interface structu re itself. 414 * pThis - Pointer to the interface structure itself.
415 * nTimerID - The timer ID return by FFI_SetTi mer function. 415 * nTimerID - The timer ID return by FFI_SetTimer function.
416 * Return value: 416 * Return value:
417 * None. 417 * None.
418 * */ 418 * */
419 void (*FFI_KillTimer)(struct _FPDF_FORMFILLINFO* pThis, int nTimerID); 419 void (*FFI_KillTimer)(struct _FPDF_FORMFILLINFO* pThis, int nTimerID);
420 420
421 421
422 /** 422 /**
423 * Method: FFI_GetLocalTime 423 * Method: FFI_GetLocalTime
424 * This method receives the current local time on t he system. 424 * This method receives the current local time on the system.
425 * Interface Version: 425 * Interface Version:
426 * 1 426 * 1
427 * Implementation Required: 427 * Implementation Required:
428 * yes 428 * yes
429 * Parameters: 429 * Parameters:
430 * pThis - Pointer to the interface structu re itself. 430 * pThis - Pointer to the interface structure itself.
431 * Return value: 431 * Return value:
432 * None. 432 * None.
433 * */ 433 * */
434 FPDF_SYSTEMTIME (*FFI_GetLocalTime)(struct _FPDF_FORMFILLINFO* pThis); 434 FPDF_SYSTEMTIME (*FFI_GetLocalTime)(struct _FPDF_FORMFILLINFO* pThis);
435 435
436 /** 436 /**
437 * Method: FFI_OnChange 437 * Method: FFI_OnChange
438 * This method will be invoked to notify implementa tion when the value of any FormField on the document had been changed. 438 * This method will be invoked to notify implementation when the va lue of any FormField on the document had been changed.
439 * Interface Version: 439 * Interface Version:
440 * 1 440 * 1
441 * Implementation Required: 441 * Implementation Required:
442 * no 442 * no
443 * Parameters: 443 * Parameters:
444 * pThis - Pointer to the interface structu re itself. 444 * pThis - Pointer to the interface structure itself.
445 * Return value: 445 * Return value:
446 * None. 446 * None.
447 * */ 447 * */
448 void (*FFI_OnChange)(struct _FPDF_FORMFILLINFO* pThis); 448 void (*FFI_OnChange)(struct _FPDF_FORMFILLINFO* pThis);
449 449
450 /** 450 /**
451 * Method: FFI_GetPage 451 * Method: FFI_GetPage
452 * This method receives the page pointer associated with a specified page index. 452 * This method receives the page pointer associated with a specifie d page index.
453 * Interface Version: 453 * Interface Version:
454 * 1 454 * 1
455 * Implementation Required: 455 * Implementation Required:
456 * yes 456 * yes
457 * Parameters: 457 * Parameters:
458 * pThis - Pointer to the interface structu re itself. 458 * pThis - Pointer to the interface structure itself.
459 * document - Handle to document. Returned by FPDF_LoadDocument function. 459 * document - Handle to document. Returned by FPDF_LoadDocument fu nction.
460 * nPageIndex - Index number of the page. 0 for the firs t page. 460 * nPageIndex - Index number of the page. 0 for the first page.
461 * Return value: 461 * Return value:
462 * Handle to the page. Returned by FPDF_LoadPage function. 462 * Handle to the page. Returned by FPDF_LoadPage function.
463 * Comments: 463 * Comments:
464 * In some cases, the document-level JavaScript action may refer to a page which hadn't been loaded yet. 464 * In some cases, the document-level JavaScript action may refer to a p age which hadn't been loaded yet.
465 * To successfully run the javascript action, implementatio n need to load the page for SDK. 465 * To successfully run the javascript action, implementation need to lo ad the page for SDK.
466 * */ 466 * */
467 FPDF_PAGE (*FFI_GetPage)(struct _FPDF_FORMFILLINFO* pThis, FPDF_DO CUMENT document, int nPageIndex); 467 FPDF_PAGE (*FFI_GetPage)(struct _FPDF_FORMFILLINFO* pThis, FPDF_DOCUMENT d ocument, int nPageIndex);
468 468
469 /** 469 /**
470 * Method: FFI_GetCurrentPage 470 * Method: FFI_GetCurrentPage
471 * This method receives the current page pointer. 471 * This method receives the current page pointer.
472 * Interface Version: 472 * Interface Version:
473 * 1 473 * 1
474 * Implementation Required: 474 * Implementation Required:
475 * yes 475 * yes
476 * Parameters: 476 * Parameters:
477 * pThis - Pointer to the interface structu re itself. 477 * pThis - Pointer to the interface structure itself.
478 * document - Handle to document. Returned by FPDF_LoadDocument function. 478 * document - Handle to document. Returned by FPDF_LoadDocument fu nction.
479 * Return value: 479 * Return value:
480 * Handle to the page. Returned by FPDF_LoadPage function. 480 * Handle to the page. Returned by FPDF_LoadPage function.
481 * */ 481 * */
482 FPDF_PAGE (*FFI_GetCurrentPage)(struct _FPDF_FORMFILLINFO* pThis, FPDF_DOCUMENT document); 482 FPDF_PAGE (*FFI_GetCurrentPage)(struct _FPDF_FORMFILLINFO* pThis, FPDF_DOC UMENT document);
483 483
484 /** 484 /**
485 * Method: FFI_GetRotation 485 * Method: FFI_GetRotation
486 * This method receives currently rotation of the p age view. 486 * This method receives currently rotation of the page view.
487 * Interface Version: 487 * Interface Version:
488 * 1 488 * 1
489 * Implementation Required: 489 * Implementation Required:
490 * yes 490 * yes
491 * Parameters: 491 * Parameters:
492 * pThis - Pointer to the interface structu re itself. 492 * pThis - Pointer to the interface structure itself.
493 * page - Handle to page. Returned by FPDF _LoadPage function. 493 * page - Handle to page. Returned by FPDF_LoadPage function.
494 * Return value: 494 * Return value:
495 * The page rotation. Should be 0(0 degree),1(90 degree),2( 180 degree),3(270 degree), in a clockwise direction. 495 * The page rotation. Should be 0(0 degree),1(90 degree),2(180 degree), 3(270 degree), in a clockwise direction.
496 * */ 496 * */
497 int (*FFI_GetRotation)(struct _FPDF_FORMFILLINFO* pThis, FPDF_PAGE p age); 497 int (*FFI_GetRotation)(struct _FPDF_FORMFILLINFO* pThis, FPDF_PAGE page) ;
498 498
499 /** 499 /**
500 * Method: FFI_ExecuteNamedAction 500 * Method: FFI_ExecuteNamedAction
501 * This method will execute an named action. 501 * This method will execute an named action.
502 * Interface Version: 502 * Interface Version:
503 * 1 503 * 1
504 * Implementation Required: 504 * Implementation Required:
505 * yes 505 * yes
506 * Parameters: 506 * Parameters:
507 * pThis - Pointer to the interface structure itself. 507 * pThis - Pointer to the interface structure itself.
508 * namedAction - A byte string which indi cates the named action, terminated by 0. 508 * namedAction - A byte string which indicates the named action, terminated by 0.
509 * Return value: 509 * Return value:
510 * None. 510 * None.
511 * Comments: 511 * Comments:
512 * See the named actions description of <<PDF Reference, ve rsion 1.7>> for more details. 512 * See the named actions description of <<PDF Reference, version 1.7>> for more details.
513 * */ 513 * */
514 void (*FFI_ExecuteNamedAction)(struct _FPDF_FORMFILLINFO* pThis, FPDF _BYTESTRING namedAction); 514 void (*FFI_ExecuteNamedAction)(struct _FPDF_FORMFILLINFO* pThis, FPDF_BYT ESTRING namedAction);
515 /** 515 /**
516 * @brief This method will be called when a text field is getting or losi ng a focus. 516 * @brief This method will be called when a text field is getting or losing a focus.
517 * 517 *
518 * @param[in] pThis Pointer to the interface structure itsel f. 518 * @param[in] pThis Pointer to the interface structure itself.
519 * @param[in] value The string value of the form field, in U TF-16LE format. 519 * @param[in] value The string value of the form field, in UTF-16LE form at.
520 * @param[in] valueLen The length of the string value, number of charac ters (not bytes). 520 * @param[in] valueLen The length of the string value, number of characters (not bytes).
521 * @param[in] is_focus True if the form field is getting a focus, False for losing a focus. 521 * @param[in] is_focus True if the form field is getting a focus, False for losing a focus.
522 * 522 *
523 * @return None. 523 * @return None.
524 * 524 *
525 * @note Currently,only support text field and combobox field. 525 * @note Currently,only support text field and combobox field.
526 * */ 526 * */
527 void (*FFI_SetTextFieldFocus)(struct _FPDF_FORMFILLINFO* pThis, FPDF_ WIDESTRING value, FPDF_DWORD valueLen, FPDF_BOOL is_focus); 527 void (*FFI_SetTextFieldFocus)(struct _FPDF_FORMFILLINFO* pThis, FPDF_WIDE STRING value, FPDF_DWORD valueLen, FPDF_BOOL is_focus);
528 528
529 529
530 /** 530 /**
531 * Method: FFI_DoURIAction 531 * Method: FFI_DoURIAction
532 * This action resolves to a uniform resource ident ifier. 532 * This action resolves to a uniform resource identifier.
533 * Interface Version: 533 * Interface Version:
534 * 1 534 * 1
535 * Implementation Required: 535 * Implementation Required:
536 * No 536 * No
537 * Parameters: 537 * Parameters:
538 * pThis - Pointer to the interface structure itself. 538 * pThis - Pointer to the interface structure itself.
539 * bsURI - A byte string which indi cates the uniform resource identifier, terminated by 0. 539 * bsURI - A byte string which indicates the uniform resour ce identifier, terminated by 0.
540 * Return value: 540 * Return value:
541 * None. 541 * None.
542 * Comments: 542 * Comments:
543 * See the URI actions description of <<PDF Reference, vers ion 1.7>> for more details. 543 * See the URI actions description of <<PDF Reference, version 1.7>> fo r more details.
544 * */ 544 * */
545 void (*FFI_DoURIAction)(struct _FPDF_FORMFILLINFO* pThis, FPDF_BYTEST RING bsURI); 545 void (*FFI_DoURIAction)(struct _FPDF_FORMFILLINFO* pThis, FPDF_BYTESTRING bsURI);
546 546
547 /** 547 /**
548 * Method: FFI_DoGoToAction 548 * Method: FFI_DoGoToAction
549 * This action changes the view to a specified dest ination. 549 * This action changes the view to a specified destination.
550 * Interface Version: 550 * Interface Version:
551 * 1 551 * 1
552 * Implementation Required: 552 * Implementation Required:
553 * No 553 * No
554 * Parameters: 554 * Parameters:
555 * pThis - Pointer to the interface structure itself. 555 * pThis - Pointer to the interface structure itself.
556 * nPageIndex - The index of the PDF pag e. 556 * nPageIndex - The index of the PDF page.
557 * zoomMode - The zoom mode for viewin g page.See Macros "PDFZOOM_XXX" defined in "fpdfdoc.h". 557 * zoomMode - The zoom mode for viewing page.See Macros "PDFZO OM_XXX" defined in "fpdfdoc.h".
558 * fPosArray - The float array which ca rries the position info. 558 * fPosArray - The float array which carries the position info.
559 * sizeofArray - The size of float array. 559 * sizeofArray - The size of float array.
560 * Return value: 560 * Return value:
561 * None. 561 * None.
562 * Comments: 562 * Comments:
563 * See the Destinations description of <<PDF Reference, ver sion 1.7>> in 8.2.1 for more details. 563 * See the Destinations description of <<PDF Reference, version 1.7>> i n 8.2.1 for more details.
564 **/ 564 **/
565 void (*FFI_DoGoToAction)(struct _FPDF_FORMFILLINFO* pThis, int nPageI ndex, int zoomMode, float* fPosArray, int sizeofArray); 565 void (*FFI_DoGoToAction)(struct _FPDF_FORMFILLINFO* pThis, int nPageIndex , int zoomMode, float* fPosArray, int sizeofArray);
566 566
567 /** 567 /**
568 * pointer to IPDF_JSPLATFORM interface 568 * pointer to IPDF_JSPLATFORM interface
569 **/ 569 **/
570 IPDF_JSPLATFORM*» m_pJsPlatform; 570 IPDF_JSPLATFORM* m_pJsPlatform;
571 571
572 /** 572 /**
573 * Method: FFI_DisplayCaret 573 * Method: FFI_DisplayCaret
574 * This method will show the caret at specified pos ition. 574 * This method will show the caret at specified position.
575 * Interface Version: 575 * Interface Version:
576 * 1 576 * 1
577 * Implementation Required: 577 * Implementation Required:
578 * yes 578 * yes
579 * Parameters: 579 * Parameters:
580 * pThis - Pointer to the interface structure itself. 580 * pThis - Pointer to the interface structure itself.
581 * page - Handle to page. Returned by FPDF_LoadPage function. 581 * page - Handle to page. Returned by FPDF_LoadPage functi on.
582 * left - Left position of the cli ent area in PDF page coordinate. 582 * left - Left position of the client area in PDF page coo rdinate.
583 * top - Top position of the client area in PDF page coordinate. 583 * top - Top position of the client area in PDF page coor dinate.
584 * right - Right position of the cl ient area in PDF page coordinate. 584 * right - Right position of the client area in PDF page co ordinate.
585 * bottom - Bottom position of the c lient area in PDF page coordinate. 585 * bottom - Bottom position of the client area in PDF page c oordinate.
586 * Return value: 586 * Return value:
587 * None. 587 * None.
588 **/ 588 **/
589 void (*FFI_DisplayCaret)(struct _FPDF_FORMFILLINFO* pThis, FPDF_PAGE page, FPDF_BOOL bVisible, double left, double top, double right, double bottom); 589 void (*FFI_DisplayCaret)(struct _FPDF_FORMFILLINFO* pThis, FPDF_PAGE page , FPDF_BOOL bVisible, double left, double top, double right, double bottom);
590 /** 590 /**
591 * Method: FFI_GetCurrentPageIndex 591 * Method: FFI_GetCurrentPageIndex
592 * This method will get the current page index. 592 * This method will get the current page index.
593 * Interface Version: 593 * Interface Version:
594 * 1 594 * 1
595 * Implementation Required: 595 * Implementation Required:
596 * yes 596 * yes
597 * Parameters: 597 * Parameters:
598 * pThis - Pointer to the interface structure itself. 598 * pThis - Pointer to the interface structure itself.
599 * document - Handle to document. Retu rned by FPDF_LoadDocument function. 599 * document - Handle to document. Returned by FPDF_LoadDocumen t function.
600 * Return value: 600 * Return value:
601 * The index of current page. 601 * The index of current page.
602 **/ 602 **/
603 int (*FFI_GetCurrentPageIndex)(struct _FPDF_FORMFILLINFO* pT his, FPDF_DOCUMENT document); 603 int (*FFI_GetCurrentPageIndex)(struct _FPDF_FORMFILLINFO* pThis, FPDF_DO CUMENT document);
604 /** 604 /**
605 * Method: FFI_SetCurrentPage 605 * Method: FFI_SetCurrentPage
606 * This method will set the current page. 606 * This method will set the current page.
607 * Interface Version: 607 * Interface Version:
608 * 1 608 * 1
609 * Implementation Required: 609 * Implementation Required:
610 * yes 610 * yes
611 * Parameters: 611 * Parameters:
612 * pThis - Pointer to the interface structure itself. 612 * pThis - Pointer to the interface structure itself.
613 * document - Handle to document. Retu rned by FPDF_LoadDocument function. 613 * document - Handle to document. Returned by FPDF_LoadDocumen t function.
614 * iCurPage - The index of the PDF pag e. 614 * iCurPage - The index of the PDF page.
615 * Return value: 615 * Return value:
616 * None. 616 * None.
617 **/ 617 **/
618 void (*FFI_SetCurrentPage)(struct _FPDF_FORMFILLINFO* pThis, FPDF_DOC UMENT document, int iCurPage); 618 void (*FFI_SetCurrentPage)(struct _FPDF_FORMFILLINFO* pThis, FPDF_DOCUMEN T document, int iCurPage);
619 /** 619 /**
620 * Method: FFI_GotoURL 620 * Method: FFI_GotoURL
621 * This method will link to the specified URL. 621 * This method will link to the specified URL.
622 * Interface Version: 622 * Interface Version:
623 * 1 623 * 1
624 * Implementation Required: 624 * Implementation Required:
625 * no 625 * no
626 * Parameters: 626 * Parameters:
627 * pThis - Pointer to the interface structure itself. 627 * pThis - Pointer to the interface structure itself.
628 * document - Handle to document. Retu rned by FPDF_LoadDocument function. 628 * document - Handle to document. Returned by FPDF_LoadDocumen t function.
629 * wsURL - The string value of the URL, in UTF-16LE format. 629 * wsURL - The string value of the URL, in UTF-16LE format.
630 * Return value: 630 * Return value:
631 * None. 631 * None.
632 **/ 632 **/
633 void (*FFI_GotoURL)(struct _FPDF_FORMFILLINFO* pThis, FPDF_DOCUMENT d ocument, FPDF_WIDESTRING wsURL); 633 void (*FFI_GotoURL)(struct _FPDF_FORMFILLINFO* pThis, FPDF_DOCUMENT docum ent, FPDF_WIDESTRING wsURL);
634 /** 634 /**
635 * Method: FFI_GetPageViewRect 635 * Method: FFI_GetPageViewRect
636 * This method will get the current page view recta ngle. 636 * This method will get the current page view rectangle.
637 * Interface Version: 637 * Interface Version:
638 * 1 638 * 1
639 * Implementation Required: 639 * Implementation Required:
640 * yes 640 * yes
641 * Parameters: 641 * Parameters:
642 * pThis - Pointer to the interface structure itself. 642 * pThis - Pointer to the interface structure itself.
643 * page - Handle to page. Returned by FPDF_LoadPage function. 643 * page - Handle to page. Returned by FPDF_LoadPage functi on.
644 * left - The pointer to receive l eft position of the page view area in PDF page coordinate. 644 * left - The pointer to receive left position of the page view area in PDF page coordinate.
645 * top - The pointer to r eceive top position of the page view area in PDF page coordinate. 645 * top - The pointer to receive top position of the page view area in PDF page coordinate.
646 * right - The pointer to receive r ight position of the client area in PDF page coordinate. 646 * right - The pointer to receive right position of the cli ent area in PDF page coordinate.
647 * bottom - The pointer to receive b ottom position of the client area in PDF page coordinate. 647 * bottom - The pointer to receive bottom position of the cl ient area in PDF page coordinate.
648 * Return value: 648 * Return value:
649 * None. 649 * None.
650 **/ 650 **/
651 void (*FFI_GetPageViewRect)(struct _FPDF_FORMFILLINFO* pThis, FPDF_PA GE page, double* left, double* top, double* right, double* bottom); 651 void (*FFI_GetPageViewRect)(struct _FPDF_FORMFILLINFO* pThis, FPDF_PAGE p age, double* left, double* top, double* right, double* bottom);
652 /** 652 /**
653 * Method: FFI_PopupMenu 653 * Method: FFI_PopupMenu
654 * This method will track the right context menu fo r XFA fields. 654 * This method will track the right context menu for XFA fields.
655 * Interface Version: 655 * Interface Version:
656 * 1 656 * 1
657 * Implementation Required: 657 * Implementation Required:
658 * yes 658 * yes
659 * Parameters: 659 * Parameters:
660 * pThis - Pointer to the interface structure itself. 660 * pThis - Pointer to the interface structure itself.
661 * page - Handle to page. Returned by FPDF_LoadPage function. 661 * page - Handle to page. Returned by FPDF_LoadPage functi on.
662 * hWidget - Handle to XFA fields. 662 * hWidget - Handle to XFA fields.
663 * menuFlag - The menu flags. Please r efer to macro definition of FXFA_MEMU_XXX and this can be one or a combination o f these macros. 663 * menuFlag - The menu flags. Please refer to macro definition of FXFA_MEMU_XXX and this can be one or a combination of these macros.
664 * x - X position of th e client area in PDF page coordinate. 664 * x - X position of the client area in PDF page coordi nate.
665 * y - Y position of th e client area in PDF page coordinate. 665 * y - Y position of the client area in PDF page coordi nate.
666 * Return value: 666 * Return value:
667 * TRUE indicates success; otherwise false. 667 * TRUE indicates success; otherwise false.
668 **/ 668 **/
669 FPDF_BOOL (*FFI_PopupMenu)(struct _FPDF_FORMFILLINFO* pThis, FPDF_PAGE p age, FPDF_WIDGET hWidget, int menuFlag, float x, float y); 669 FPDF_BOOL (*FFI_PopupMenu)(struct _FPDF_FORMFILLINFO* pThis, FPDF_PAGE page, FPDF_WIDGET hWidget, int menuFlag, float x, float y);
670 /** 670 /**
671 * Method: FFI_OpenFile 671 * Method: FFI_OpenFile
672 * This method will open the specified file with th e specified mode. 672 * This method will open the specified file with the specified mode .
673 * Interface Version 673 * Interface Version
674 * 1 674 * 1
675 * Implementation Required: 675 * Implementation Required:
676 * yes 676 * yes
677 * Parameters: 677 * Parameters:
678 * pThis - Pointer to the interface structure itself. 678 * pThis - Pointer to the interface structure itself.
679 * fileFlag - The file flag.Please ref er to macro definition of FXFA_SAVEAS_XXX and this can be one of these macros. 679 * fileFlag - The file flag.Please refer to macro definition o f FXFA_SAVEAS_XXX and this can be one of these macros.
680 * wsURL - The string value of the file URL, in UTF-16LE format. 680 * wsURL - The string value of the file URL, in UTF-16LE fo rmat.
681 * mode - The mode for open file. 681 * mode - The mode for open file.
682 * Return value: 682 * Return value:
683 * The handle to FPDF_FILEHANDLER. 683 * The handle to FPDF_FILEHANDLER.
684 **/ 684 **/
685 FPDF_FILEHANDLER* (*FFI_OpenFile)(struct _FPDF_FORMFILLINFO* pThis, int fileFlag, FPDF_WIDESTRING wsURL, const char* mode); 685 FPDF_FILEHANDLER* (*FFI_OpenFile)(struct _FPDF_FORMFILLINFO* pThis, int file Flag, FPDF_WIDESTRING wsURL, const char* mode);
686 /** 686 /**
687 * Method: FFI_EmailTo 687 * Method: FFI_EmailTo
688 * This method will email the specified file stream to the specified contacter. 688 * This method will email the specified file stream to the specifie d contacter.
689 * Interface Version: 689 * Interface Version:
690 * 1 690 * 1
691 * Implementation Required: 691 * Implementation Required:
692 * yes 692 * yes
693 * Parameters: 693 * Parameters:
694 * pThis - Pointer to the interface structure itself. 694 * pThis - Pointer to the interface structure itself.
695 * pFileHandler - Handle to the FPDF_FILEHANDLER. 695 * pFileHandler - Handle to the FPDF_FILEHANDLER.
696 * pTo - A semicolon-deli mited list of recipients for the message,in UTF-16LE format. 696 * pTo - A semicolon-delimited list of recipients for the message,in UTF-16LE format.
697 * pSubject - The subject of the message,i n UTF-16LE format. 697 * pSubject - The subject of the message,in UTF-16LE format.
698 * pCC - A semicolon-deli mited list of CC recipients for the message,in UTF-16LE format. 698 * pCC - A semicolon-delimited list of CC recipients for the message,in UTF-16LE format.
699 * pBcc - A semicolon-delimited li st of BCC recipients for the message,in UTF-16LE format. 699 * pBcc - A semicolon-delimited list of BCC recipients for the message,in UTF-16LE format.
700 * pMsg - Pointer to the data buff er to be sent.Can be NULL,in UTF-16LE format. 700 * pMsg - Pointer to the data buffer to be sent.Can be NUL L,in UTF-16LE format.
701 * Return value: 701 * Return value:
702 * None. 702 * None.
703 **/ 703 **/
704 void (*FFI_EmailTo)(struct _FPDF_FORMFILLINFO* pThis, FPDF_FILEHANDLE R* fileHandler, FPDF_WIDESTRING pTo, FPDF_WIDESTRING pSubject, FPDF_WIDESTRING p CC, FPDF_WIDESTRING pBcc, FPDF_WIDESTRING pMsg); 704 void (*FFI_EmailTo)(struct _FPDF_FORMFILLINFO* pThis, FPDF_FILEHANDLER* f ileHandler, FPDF_WIDESTRING pTo, FPDF_WIDESTRING pSubject, FPDF_WIDESTRING pCC, FPDF_WIDESTRING pBcc, FPDF_WIDESTRING pMsg);
705 /** 705 /**
706 * Method: FFI_UploadTo 706 * Method: FFI_UploadTo
707 * This method will get upload the specified file s tream to the specified URL. 707 * This method will get upload the specified file stream to the spe cified URL.
708 * Interface Version: 708 * Interface Version:
709 * 1 709 * 1
710 * Implementation Required: 710 * Implementation Required:
711 * yes 711 * yes
712 * Parameters: 712 * Parameters:
713 * pThis - Pointer to the interface structure itself. 713 * pThis - Pointer to the interface structure itself.
714 * pFileHandler - Handle to the FPDF_FILEHANDLER. 714 * pFileHandler - Handle to the FPDF_FILEHANDLER.
715 * fileFlag - The file flag.Please ref er to macro definition of FXFA_SAVEAS_XXX and this can be one of these macros. 715 * fileFlag - The file flag.Please refer to macro definition o f FXFA_SAVEAS_XXX and this can be one of these macros.
716 * uploadTo - Pointer to the URL path, in UTF-16LE format. 716 * uploadTo - Pointer to the URL path, in UTF-16LE format.
717 * Return value: 717 * Return value:
718 * None. 718 * None.
719 **/ 719 **/
720 void (*FFI_UploadTo)(struct _FPDF_FORMFILLINFO* pThis, FPDF_FILEHANDL ER* fileHandler, int fileFlag, FPDF_WIDESTRING uploadTo); 720 void (*FFI_UploadTo)(struct _FPDF_FORMFILLINFO* pThis, FPDF_FILEHANDLER* fileHandler, int fileFlag, FPDF_WIDESTRING uploadTo);
721 721
722 /** 722 /**
723 * Method: FFI_GetPlatform 723 * Method: FFI_GetPlatform
724 * This method will get the current platform. 724 * This method will get the current platform.
725 * Interface Version: 725 * Interface Version:
726 * 1 726 * 1
727 * Implementation Required: 727 * Implementation Required:
728 * yes 728 * yes
729 * Parameters: 729 * Parameters:
730 * pThis - Pointer to the interface structure itself. 730 * pThis - Pointer to the interface structure itself.
731 * platform - Pointer to the data buff er to receive the platform.Can be NULL,in UTF-16LE format. 731 * platform - Pointer to the data buffer to receive the platfo rm.Can be NULL,in UTF-16LE format.
732 * length - The length of the buffer, nu mber of bytes. Can be 0. 732 * length - The length of the buffer, number of bytes. Can b e 0.
733 * Return value: 733 * Return value:
734 * The length of the buffer, number of bytes. 734 * The length of the buffer, number of bytes.
735 **/ 735 **/
736 int (*FFI_GetPlatform)(struct _FPDF_FORMFILLINFO* pThis, voi d* platform, int length); 736 int (*FFI_GetPlatform)(struct _FPDF_FORMFILLINFO* pThis, void* platform, int length);
737 /** 737 /**
738 * Method: FFI_GetLanguage 738 * Method: FFI_GetLanguage
739 * This method will get the current language. 739 * This method will get the current language.
740 * Interface Version: 740 * Interface Version:
741 * 1 741 * 1
742 * Implementation Required: 742 * Implementation Required:
743 * yes 743 * yes
744 * Parameters: 744 * Parameters:
745 * pThis - Pointer to the interface structure itself. 745 * pThis - Pointer to the interface structure itself.
746 * language - Pointer to the data buff er to receive the current language.Can be NULL. 746 * language - Pointer to the data buffer to receive the curren t language.Can be NULL.
747 * length - The length of the buffer, nu mber of bytes. Can be 0. 747 * length - The length of the buffer, number of bytes. Can b e 0.
748 * Return value: 748 * Return value:
749 * The length of the buffer, number of bytes. 749 * The length of the buffer, number of bytes.
750 **/ 750 **/
751 int (*FFI_GetLanguage)(struct _FPDF_FORMFILLINFO* pThis, voi d* language, int length); 751 int (*FFI_GetLanguage)(struct _FPDF_FORMFILLINFO* pThis, void* language, int length);
752 /** 752 /**
753 * Method: FFI_DownloadFromURL 753 * Method: FFI_DownloadFromURL
754 * This method will download the specified file fro m the URL. 754 * This method will download the specified file from the URL.
755 * Interface Version: 755 * Interface Version:
756 * 1 756 * 1
757 * Implementation Required: 757 * Implementation Required:
758 * yes 758 * yes
759 * Parameters: 759 * Parameters:
760 * pThis - Pointer to the interface structure itself. 760 * pThis - Pointer to the interface structure itself.
761 * URL - The string value of the file URL, in UTF-16LE format. 761 * URL - The string value of the file URL, in UTF-16LE fo rmat.
762 * Return value: 762 * Return value:
763 * The handle to FPDF_FILEHANDLER. 763 * The handle to FPDF_FILEHANDLER.
764 **/ 764 **/
765 FPDF_LPFILEHANDLER (*FFI_DownloadFromURL)(struct _FPDF_FORMFILLINFO * pThis, FPDF_WIDESTRING URL); 765 FPDF_LPFILEHANDLER (*FFI_DownloadFromURL)(struct _FPDF_FORMFILLINFO* pThis, FPDF_WIDESTRING URL);
766 /** 766 /**
767 * Method: FFI_PostRequestURL 767 * Method: FFI_PostRequestURL
768 * This method will post the request to the server URL. 768 * This method will post the request to the server URL.
769 * Interface Version: 769 * Interface Version:
770 * 1 770 * 1
771 * Implementation Required: 771 * Implementation Required:
772 * yes 772 * yes
773 * Parameters: 773 * Parameters:
774 * pThis - Pointer to the interface structure itself. 774 * pThis - Pointer to the interface structure itself.
775 * wsURL - The string value of the server URL, in UTF-16LE format. 775 * wsURL - The string value of the server URL, in UTF-16LE format.
776 * wsData - The post data,in UTF-16L E format. 776 * wsData - The post data,in UTF-16LE format.
777 * wsContentType - The content type of the request data,in UTF-16LE format. 777 * wsContentType - The content type of the request data,in UTF-16LE format.
778 * wsEncode - The encode type,in UTF-1 6LE format. 778 * wsEncode - The encode type,in UTF-16LE format.
779 * wsHeader - The request header,in UT F-16LE format. 779 * wsHeader - The request header,in UTF-16LE format.
780 * response - Pointer to the FPDF_BSTR to receive the response data from server,,in UTF-16LE format. 780 * response - Pointer to the FPDF_BSTR to receive the response data from server,,in UTF-16LE format.
781 * Return value: 781 * Return value:
782 * TRUE indicates success, otherwise FALSE. 782 * TRUE indicates success, otherwise FALSE.
783 **/ 783 **/
784 FPDF_BOOL (*FFI_PostRequestURL)(struct _FPDF_FORMFILLINFO* pThis, FPDF_WIDESTRING wsURL, FPDF_WIDESTRING wsData, FPDF_WIDESTRING wsContentType, FP DF_WIDESTRING wsEncode, FPDF_WIDESTRING wsHeader, FPDF_BSTR* respone); 784 FPDF_BOOL (*FFI_PostRequestURL)(struct _FPDF_FORMFILLINFO* pThis, FPDF_WID ESTRING wsURL, FPDF_WIDESTRING wsData, FPDF_WIDESTRING wsContentType, FPDF_WIDES TRING wsEncode, FPDF_WIDESTRING wsHeader, FPDF_BSTR* respone);
785 /** 785 /**
786 * Method: FFI_PutRequestURL 786 * Method: FFI_PutRequestURL
787 * This method will put the request to the server U RL. 787 * This method will put the request to the server URL.
788 * Interface Version: 788 * Interface Version:
789 * 1 789 * 1
790 * Implementation Required: 790 * Implementation Required:
791 * yes 791 * yes
792 * Parameters: 792 * Parameters:
793 * pThis - Pointer to the interface structure itself. 793 * pThis - Pointer to the interface structure itself.
794 * wsURL - The string value of the server URL, in UTF-16LE format. 794 * wsURL - The string value of the server URL, in UTF-16LE format.
795 * wsData - The put data, in UTF-16L E format. 795 * wsData - The put data, in UTF-16LE format.
796 * wsEncode - The encode type, in UTR- 16LE format. 796 * wsEncode - The encode type, in UTR-16LE format.
797 * Return value: 797 * Return value:
798 * TRUE indicates success, otherwise FALSE. 798 * TRUE indicates success, otherwise FALSE.
799 **/ 799 **/
800 FPDF_BOOL (*FFI_PutRequestURL)(struct _FPDF_FORMFILLINFO* pThis, F PDF_WIDESTRING wsURL, FPDF_WIDESTRING wsData, FPDF_WIDESTRING wsEncode); 800 FPDF_BOOL (*FFI_PutRequestURL)(struct _FPDF_FORMFILLINFO* pThis, FPDF_WIDE STRING wsURL, FPDF_WIDESTRING wsData, FPDF_WIDESTRING wsEncode);
801 801
802 } FPDF_FORMFILLINFO; 802 } FPDF_FORMFILLINFO;
803 803
804 804
805 805
806 /** 806 /**
807 * Function: FPDFDOC_InitFormFillEnvironment 807 * Function: FPDFDOC_InitFormFillEnvironment
808 *» » » Init form fill environment. 808 * Init form fill environment.
809 * Comments: 809 * Comments:
810 *» » » This function should be called before any form fill oper ation. 810 * This function should be called before any form fill operation.
811 * Parameters: 811 * Parameters:
812 *» » » document» » -» Handle to document. Retu rned by FPDF_LoadDocument function. 812 * document - Handle to document. Returned by FPDF_LoadDocumen t function.
813 *» » » pFormFillInfo» -» Pointer to a FPDF_FORMFILLINFO s tructure. 813 * pFormFillInfo - Pointer to a FPDF_FORMFILLINFO structure.
814 * Return Value: 814 * Return Value:
815 *» » » Return handler to the form fill module. NULL means fails . 815 * Return handler to the form fill module. NULL means fails.
816 **/ 816 **/
817 DLLEXPORT FPDF_FORMHANDLE STDCALL FPDFDOC_InitFormFillEnvironment(FPDF_DOCUMENT document, FPDF_FORMFILLINFO* formInfo); 817 DLLEXPORT FPDF_FORMHANDLE STDCALL FPDFDOC_InitFormFillEnvironment(FPDF_DOCUMENT document, FPDF_FORMFILLINFO* formInfo);
818 818
819 /** 819 /**
820 * Function: FPDFDOC_ExitFormFillEnvironment 820 * Function: FPDFDOC_ExitFormFillEnvironment
821 *» » » Exit form fill environment. 821 * Exit form fill environment.
822 * Parameters: 822 * Parameters:
823 *» » » hHandle»» -» Handle to the form fill module. Returned by FPDFDOC_InitFormFillEnvironment. 823 * hHandle - Handle to the form fill module. Returned by FPDFDOC_ InitFormFillEnvironment.
824 * Return Value: 824 * Return Value:
825 *» » » NULL. 825 * NULL.
826 **/ 826 **/
827 DLLEXPORT void STDCALL FPDFDOC_ExitFormFillEnvironment(FPDF_FORMHANDLE hHandle); 827 DLLEXPORT void STDCALL FPDFDOC_ExitFormFillEnvironment(FPDF_FORMHANDLE hHandle);
828 828
829 /** 829 /**
830 * Function: FORM_OnAfterLoadPage 830 * Function: FORM_OnAfterLoadPage
831 *» » » This method is required for implementing all the form re lated functions. Should be invoked after user 831 * This method is required for implementing all the form related functi ons. Should be invoked after user
832 *» » » successfully loaded a PDF page, and method FPDFDOC_InitF ormFillEnvironment had been invoked. 832 * successfully loaded a PDF page, and method FPDFDOC_InitFormFillEnvir onment had been invoked.
833 * Parameters: 833 * Parameters:
834 *» » » hHandle»» -» Handle to the form fill module. Returned by FPDFDOC_InitFormFillEnvironment. 834 * hHandle - Handle to the form fill module. Returned by FPDFDOC_ InitFormFillEnvironment.
835 * Return Value: 835 * Return Value:
836 *» » » NONE. 836 * NONE.
837 **/ 837 **/
838 DLLEXPORT void STDCALL FORM_OnAfterLoadPage(FPDF_PAGE page, FPDF_FORMHANDLE hHan dle); 838 DLLEXPORT void STDCALL FORM_OnAfterLoadPage(FPDF_PAGE page, FPDF_FORMHANDLE hHan dle);
839 839
840 /** 840 /**
841 * Function: FORM_OnBeforeClosePage 841 * Function: FORM_OnBeforeClosePage
842 *» » » This method is required for implementing all the form re lated functions. Should be invoked before user 842 * This method is required for implementing all the form related functi ons. Should be invoked before user
843 *» » » close the PDF page. 843 * close the PDF page.
844 * Parameters: 844 * Parameters:
845 *» » » page» » -» Handle to the page. Returned by FPDF_LoadPage function. 845 * page - Handle to the page. Returned by FPDF_LoadPage functi on.
846 *» » » hHandle»» -» Handle to the form fill module. Returned by FPDFDOC_InitFormFillEnvironment. 846 * hHandle - Handle to the form fill module. Returned by FPDFDOC_ InitFormFillEnvironment.
847 * Return Value: 847 * Return Value:
848 *» » » NONE. 848 * NONE.
849 **/ 849 **/
850 DLLEXPORT void STDCALL FORM_OnBeforeClosePage(FPDF_PAGE page, FPDF_FORMHANDLE hH andle); 850 DLLEXPORT void STDCALL FORM_OnBeforeClosePage(FPDF_PAGE page, FPDF_FORMHANDLE hH andle);
851 851
852 /** 852 /**
853 * Function: FORM_DoDocumentJSAction 853 * Function: FORM_DoDocumentJSAction
854 *» » » This method is required for performing Document-level Ja vaScript action. It should be invoked after the PDF document 854 * This method is required for performing Document-level JavaScript act ion. It should be invoked after the PDF document
855 *» » » had been loaded. 855 * had been loaded.
856 * Parameters: 856 * Parameters:
857 *» » » hHandle»» -» Handle to the form fill module. Returned by FPDFDOC_InitFormFillEnvironment. 857 * hHandle - Handle to the form fill module. Returned by FPDFDOC_ InitFormFillEnvironment.
858 * Return Value: 858 * Return Value:
859 *» » » NONE 859 * NONE
860 * Comments: 860 * Comments:
861 *» » » If there is Document-level JavaScript action embedded in the document, this method will execute the javascript action; 861 * If there is Document-level JavaScript action embedded in the documen t, this method will execute the javascript action;
862 *» » » otherwise, the method will do nothing. 862 * otherwise, the method will do nothing.
863 **/ 863 **/
864 DLLEXPORT void STDCALL FORM_DoDocumentJSAction(FPDF_FORMHANDLE hHandle); 864 DLLEXPORT void STDCALL FORM_DoDocumentJSAction(FPDF_FORMHANDLE hHandle);
865 865
866 866
867 /** 867 /**
868 * Function: FORM_DoDocumentOpenAction 868 * Function: FORM_DoDocumentOpenAction
869 *» » » This method is required for performing open-action when the document is opened. 869 * This method is required for performing open-action when the document is opened.
870 * Parameters: 870 * Parameters:
871 *» » » hHandle»» -» Handle to the form fill module. Returned by FPDFDOC_InitFormFillEnvironment. 871 * hHandle - Handle to the form fill module. Returned by FPDFDOC_ InitFormFillEnvironment.
872 * Return Value: 872 * Return Value:
873 *» » » NONE 873 * NONE
874 * Comments: 874 * Comments:
875 *» » » This method will do nothing if there is no open-actions embedded in the document. 875 * This method will do nothing if there is no open-actions embedded in the document.
876 **/ 876 **/
877 DLLEXPORT void STDCALL FORM_DoDocumentOpenAction(FPDF_FORMHANDLE hHandle); 877 DLLEXPORT void STDCALL FORM_DoDocumentOpenAction(FPDF_FORMHANDLE hHandle);
878 878
879 879
880 // additional actions type of document. 880 // additional actions type of document.
881 #define FPDFDOC_AACTION_WC» » 0x10» » //WC, before closing doc ument, JavaScript action. 881 #define FPDFDOC_AACTION_WC 0x10 //WC, before closing document, JavaS cript action.
882 #define FPDFDOC_AACTION_WS» » 0x11» » //WS, before saving docu ment, JavaScript action. 882 #define FPDFDOC_AACTION_WS 0x11 //WS, before saving document, JavaSc ript action.
883 #define FPDFDOC_AACTION_DS» » 0x12» » //DS, after saving docum ent, JavaScript action. 883 #define FPDFDOC_AACTION_DS 0x12 //DS, after saving document, JavaScr ipt action.
884 #define FPDFDOC_AACTION_WP» » 0x13» » //WP, before printing do cument, JavaScript action. 884 #define FPDFDOC_AACTION_WP 0x13 //WP, before printing document, Java Script action.
885 #define FPDFDOC_AACTION_DP» » 0x14» » //DP, after printing doc ument, JavaScript action. 885 #define FPDFDOC_AACTION_DP 0x14 //DP, after printing document, JavaS cript action.
886 /** 886 /**
887 * Function: FORM_DoDocumentAAction 887 * Function: FORM_DoDocumentAAction
888 *» » » This method is required for performing the document's ad ditional-action. 888 * This method is required for performing the document's additional-act ion.
889 * Parameters: 889 * Parameters:
890 *» » » hHandle»» -» Handle to the form fill module. Returned by FPDFDOC_InitFormFillEnvironment. 890 * hHandle - Handle to the form fill module. Returned by FPDFDOC_ InitFormFillEnvironment.
891 *» » » aaType» - The type of the additional-actions which defined above. 891 * aaType - The type of the additional-actions which defined abo ve.
892 * Return Value: 892 * Return Value:
893 *» » » NONE 893 * NONE
894 * Comments: 894 * Comments:
895 *» » » This method will do nothing if there is no document addi tional-action corresponding to the specified aaType. 895 * This method will do nothing if there is no document additional-actio n corresponding to the specified aaType.
896 **/ 896 **/
897 897
898 DLLEXPORT void STDCALL FORM_DoDocumentAAction(FPDF_FORMHANDLE hHandle, int aaTyp e); 898 DLLEXPORT void STDCALL FORM_DoDocumentAAction(FPDF_FORMHANDLE hHandle, int aaTyp e);
899 899
900 // Additional-action types of page object 900 // Additional-action types of page object
901 #define FPDFPAGE_AACTION_OPEN» » 0» » // /O -- An action to be performed when the page is opened 901 #define FPDFPAGE_AACTION_OPEN 0 // /O -- An action to be performed w hen the page is opened
902 #define FPDFPAGE_AACTION_CLOSE» » 1» » // /C -- An action to be performed when the page is closed 902 #define FPDFPAGE_AACTION_CLOSE 1 // /C -- An action to be performed w hen the page is closed
903 903
904 /** 904 /**
905 * Function: FORM_DoPageAAction 905 * Function: FORM_DoPageAAction
906 *» » » This method is required for performing the page object's additional-action when opened or closed. 906 * This method is required for performing the page object's additional- action when opened or closed.
907 * Parameters: 907 * Parameters:
908 *» » » page» » -» Handle to the page. Returned by FPDF_LoadPage function. 908 * page - Handle to the page. Returned by FPDF_LoadPage functi on.
909 *» » » hHandle»» -» Handle to the form fill module. Returned by FPDFDOC_InitFormFillEnvironment. 909 * hHandle - Handle to the form fill module. Returned by FPDFDOC_ InitFormFillEnvironment.
910 *» » » aaType» - The type of the page object's additional -actions which defined above. 910 * aaType - The type of the page object's additional-actions whi ch defined above.
911 * Return Value: 911 * Return Value:
912 *» » » NONE 912 * NONE
913 * Comments: 913 * Comments:
914 *» » » This method will do nothing if no additional-action corr esponding to the specified aaType exists. 914 * This method will do nothing if no additional-action corresponding to the specified aaType exists.
915 **/ 915 **/
916 DLLEXPORT void STDCALL FORM_DoPageAAction(FPDF_PAGE page, FPDF_FORMHANDLE hHandl e, int aaType); 916 DLLEXPORT void STDCALL FORM_DoPageAAction(FPDF_PAGE page, FPDF_FORMHANDLE hHandl e, int aaType);
917 917
918 /** 918 /**
919 * Function: FORM_OnMouseMove 919 * Function: FORM_OnMouseMove
920 *» » » You can call this member function when the mouse cursor moves. 920 * You can call this member function when the mouse cursor moves.
921 * Parameters: 921 * Parameters:
922 *» » » hHandle»» -» Handle to the form fill module. Returned by FPDFDOC_InitFormFillEnvironment. 922 * hHandle - Handle to the form fill module. Returned by FPDFDOC_ InitFormFillEnvironment.
923 *» » » page» » -» Handle to the page. Returned by FPDF_LoadPage function. 923 * page - Handle to the page. Returned by FPDF_LoadPage functi on.
924 *» » » modifier» » -» Indicates whether variou s virtual keys are down. 924 * modifier - Indicates whether various virtual keys are down.
925 *» » » page_x» » -» Specifies the x-coordinate of th e cursor in PDF user space. 925 * page_x - Specifies the x-coordinate of the cursor in PDF user space.
926 *» » » page_y» » -» Specifies the y-coordinate of th e cursor in PDF user space. 926 * page_y - Specifies the y-coordinate of the cursor in PDF user space.
927 * Return Value: 927 * Return Value:
928 *» » » TRUE indicates success; otherwise false. 928 * TRUE indicates success; otherwise false.
929 **/ 929 **/
930 DLLEXPORT FPDF_BOOL STDCALL FORM_OnMouseMove(FPDF_FORMHANDLE hHandle,FPDF_PAGE p age, int modifier, double page_x, double page_y); 930 DLLEXPORT FPDF_BOOL STDCALL FORM_OnMouseMove(FPDF_FORMHANDLE hHandle,FPDF_PAGE p age, int modifier, double page_x, double page_y);
931 931
932 /** 932 /**
933 * Function: FORM_OnLButtonDown 933 * Function: FORM_OnLButtonDown
934 *» » » You can call this member function when the user presses the left mouse button. 934 * You can call this member function when the user presses the left mou se button.
935 * Parameters: 935 * Parameters:
936 *» » » hHandle»» -» Handle to the form fill module. Returned by FPDFDOC_InitFormFillEnvironment. 936 * hHandle - Handle to the form fill module. Returned by FPDFDOC_ InitFormFillEnvironment.
937 *» » » page» » -» Handle to the page. Returned by FPDF_LoadPage function. 937 * page - Handle to the page. Returned by FPDF_LoadPage functi on.
938 *» » » modifier» » -» Indicates whether variou s virtual keys are down. 938 * modifier - Indicates whether various virtual keys are down.
939 *» » » page_x» » -» Specifies the x-coordinate of th e cursor in PDF user space. 939 * page_x - Specifies the x-coordinate of the cursor in PDF user space.
940 *» » » page_y» » -» Specifies the y-coordinate of th e cursor in PDF user space. 940 * page_y - Specifies the y-coordinate of the cursor in PDF user space.
941 * Return Value: 941 * Return Value:
942 *» » » TRUE indicates success; otherwise false. 942 * TRUE indicates success; otherwise false.
943 **/ 943 **/
944 DLLEXPORT FPDF_BOOL STDCALL FORM_OnLButtonDown(FPDF_FORMHANDLE hHandle,FPDF_PAGE page, int modifier, double page_x, double page_y); 944 DLLEXPORT FPDF_BOOL STDCALL FORM_OnLButtonDown(FPDF_FORMHANDLE hHandle,FPDF_PAGE page, int modifier, double page_x, double page_y);
945 945
946 /** 946 /**
947 * Function: FORM_OnLButtonUp 947 * Function: FORM_OnLButtonUp
948 *» » » You can call this member function when the user releases the left mouse button. 948 * You can call this member function when the user releases the left mo use button.
949 * Parameters: 949 * Parameters:
950 *» » » hHandle»» -» Handle to the form fill module. Returned by FPDFDOC_InitFormFillEnvironment. 950 * hHandle - Handle to the form fill module. Returned by FPDFDOC_ InitFormFillEnvironment.
951 *» » » page» » -» Handle to the page. Returned by FPDF_LoadPage function. 951 * page - Handle to the page. Returned by FPDF_LoadPage functi on.
952 *» » » modifier» -» Indicates whether various virtua l keys are down. 952 * modifier - Indicates whether various virtual keys are down.
953 *» » » page_x» » -» Specifies the x-coordinate of th e cursor in device. 953 * page_x - Specifies the x-coordinate of the cursor in device.
954 *» » » page_y» » -» Specifies the y-coordinate of th e cursor in device. 954 * page_y - Specifies the y-coordinate of the cursor in device.
955 * Return Value: 955 * Return Value:
956 *» » » TRUE indicates success; otherwise false. 956 * TRUE indicates success; otherwise false.
957 **/ 957 **/
958 DLLEXPORT FPDF_BOOL STDCALL FORM_OnLButtonUp(FPDF_FORMHANDLE hHandle,FPDF_PAGE p age, int modifier, double page_x, double page_y); 958 DLLEXPORT FPDF_BOOL STDCALL FORM_OnLButtonUp(FPDF_FORMHANDLE hHandle,FPDF_PAGE p age, int modifier, double page_x, double page_y);
959 959
960 DLLEXPORT FPDF_BOOL STDCALL FORM_OnRButtonDown(FPDF_FORMHANDLE hHandle, FPDF_PAG E page, int modifier, double page_x, double page_y); 960 DLLEXPORT FPDF_BOOL STDCALL FORM_OnRButtonDown(FPDF_FORMHANDLE hHandle, FPDF_PAG E page, int modifier, double page_x, double page_y);
961 DLLEXPORT FPDF_BOOL STDCALL FORM_OnRButtonUp(FPDF_FORMHANDLE hHandle, FPDF_PAGE page, int modifier, double page_x, double page_y); 961 DLLEXPORT FPDF_BOOL STDCALL FORM_OnRButtonUp(FPDF_FORMHANDLE hHandle, FPDF_PAGE page, int modifier, double page_x, double page_y);
962 962
963 /** 963 /**
964 * Function: FORM_OnKeyDown 964 * Function: FORM_OnKeyDown
965 *» » » You can call this member function when a nonsystem key i s pressed. 965 * You can call this member function when a nonsystem key is pressed.
966 * Parameters: 966 * Parameters:
967 *» » » hHandle»» -» Handle to the form fill module. Returned by FPDFDOC_InitFormFillEnvironment. 967 * hHandle - Handle to the form fill module. Returned by FPDFDOC_ InitFormFillEnvironment.
968 *» » » page» » -» Handle to the page. Returned by FPDF_LoadPage function. 968 * page - Handle to the page. Returned by FPDF_LoadPage functi on.
969 *» » » nKeyCode» -» Indicates whether various virtua l keys are down. 969 * nKeyCode - Indicates whether various virtual keys are down.
970 *» » » modifier» -» Contains the scan code, key-tran sition code, previous key state, and context code. 970 * modifier - Contains the scan code, key-transition code, previou s key state, and context code.
971 * Return Value: 971 * Return Value:
972 *» » » TRUE indicates success; otherwise false. 972 * TRUE indicates success; otherwise false.
973 **/ 973 **/
974 DLLEXPORT FPDF_BOOL STDCALL FORM_OnKeyDown(FPDF_FORMHANDLE hHandle,FPDF_PAGE pag e, int nKeyCode, int modifier); 974 DLLEXPORT FPDF_BOOL STDCALL FORM_OnKeyDown(FPDF_FORMHANDLE hHandle,FPDF_PAGE pag e, int nKeyCode, int modifier);
975 975
976 /** 976 /**
977 * Function: FORM_OnKeyUp 977 * Function: FORM_OnKeyUp
978 *» » » You can call this member function when a nonsystem key i s released. 978 * You can call this member function when a nonsystem key is released.
979 * Parameters: 979 * Parameters:
980 *» » » hHandle»» -» Handle to the form fill module. Returned by FPDFDOC_InitFormFillEnvironment. 980 * hHandle - Handle to the form fill module. Returned by FPDFDOC_ InitFormFillEnvironment.
981 *» » » page» » -» Handle to the page. Returned by FPDF_LoadPage function. 981 * page - Handle to the page. Returned by FPDF_LoadPage functi on.
982 *» » » nKeyCode» -» The virtual-key code of the give n key. 982 * nKeyCode - The virtual-key code of the given key.
983 *» » » modifier» -» Contains the scan code, key-tran sition code, previous key state, and context code. 983 * modifier - Contains the scan code, key-transition code, previou s key state, and context code.
984 * Return Value: 984 * Return Value:
985 *» » » TRUE indicates success; otherwise false. 985 * TRUE indicates success; otherwise false.
986 **/ 986 **/
987 DLLEXPORT FPDF_BOOL STDCALL FORM_OnKeyUp(FPDF_FORMHANDLE hHandle,FPDF_PAGE page, int nKeyCode, int modifier); 987 DLLEXPORT FPDF_BOOL STDCALL FORM_OnKeyUp(FPDF_FORMHANDLE hHandle,FPDF_PAGE page, int nKeyCode, int modifier);
988 988
989 /** 989 /**
990 * Function: FORM_OnChar 990 * Function: FORM_OnChar
991 *» » » You can call this member function when a keystroke trans lates to a nonsystem character. 991 * You can call this member function when a keystroke translates to a n onsystem character.
992 * Parameters: 992 * Parameters:
993 *» » » hHandle»» -» Handle to the form fill module. Returned by FPDFDOC_InitFormFillEnvironment. 993 * hHandle - Handle to the form fill module. Returned by FPDFDOC_ InitFormFillEnvironment.
994 *» » » page» » -» Handle to the page. Returned by FPDF_LoadPage function. 994 * page - Handle to the page. Returned by FPDF_LoadPage functi on.
995 *» » » nChar» » -» The character code value of the key. 995 * nChar - The character code value of the key.
996 *» » » modifier» -» Contains the scan code, key-tran sition code, previous key state, and context code. 996 * modifier - Contains the scan code, key-transition code, previou s key state, and context code.
997 * Return Value: 997 * Return Value:
998 *» » » TRUE indicates success; otherwise false. 998 * TRUE indicates success; otherwise false.
999 **/ 999 **/
1000 DLLEXPORT FPDF_BOOL STDCALL FORM_OnChar(FPDF_FORMHANDLE hHandle,FPDF_PAGE page, int nChar, int modifier); 1000 DLLEXPORT FPDF_BOOL STDCALL FORM_OnChar(FPDF_FORMHANDLE hHandle,FPDF_PAGE page, int nChar, int modifier);
1001 1001
1002 /** 1002 /**
1003 * Function: FORM_ForceToKillFocus. 1003 * Function: FORM_ForceToKillFocus.
1004 *» » » You can call this member function to force to kill the f ocus of the form field which got focus. 1004 * You can call this member function to force to kill the focus of the form field which got focus.
1005 *» » » It would kill the focus on the form field, save the valu e of form field if it's changed by user. 1005 * It would kill the focus on the form field, save the value of form fi eld if it's changed by user.
1006 * Parameters: 1006 * Parameters:
1007 *» » » hHandle»» -» Handle to the form fill module. Returned by FPDFDOC_InitFormFillEnvironment. 1007 * hHandle - Handle to the form fill module. Returned by FPDFDOC_ InitFormFillEnvironment.
1008 * Return Value: 1008 * Return Value:
1009 *» » » TRUE indicates success; otherwise false. 1009 * TRUE indicates success; otherwise false.
1010 **/ 1010 **/
1011 DLLEXPORT FPDF_BOOL STDCALL FORM_ForceToKillFocus(FPDF_FORMHANDLE hHandle); 1011 DLLEXPORT FPDF_BOOL STDCALL FORM_ForceToKillFocus(FPDF_FORMHANDLE hHandle);
1012 1012
1013 // Field Types 1013 // Field Types
1014 #define FPDF_FORMFIELD_UNKNOWN» » 0» » // Unknown. 1014 #define FPDF_FORMFIELD_UNKNOWN 0 // Unknown.
1015 #define FPDF_FORMFIELD_PUSHBUTTON» 1» » // push button type. 1015 #define FPDF_FORMFIELD_PUSHBUTTON 1 // push button type.
1016 #define FPDF_FORMFIELD_CHECKBOX»» 2» » // check box type. 1016 #define FPDF_FORMFIELD_CHECKBOX 2 // check box type.
1017 #define FPDF_FORMFIELD_RADIOBUTTON» 3» » // radio button type. 1017 #define FPDF_FORMFIELD_RADIOBUTTON 3 // radio button type.
1018 #define FPDF_FORMFIELD_COMBOBOX»» 4» » // combo box type. 1018 #define FPDF_FORMFIELD_COMBOBOX 4 // combo box type.
1019 #define FPDF_FORMFIELD_LISTBOX» » 5» » // list box type. 1019 #define FPDF_FORMFIELD_LISTBOX 5 // list box type.
1020 #define FPDF_FORMFIELD_TEXTFIELD» 6» » // text field type. 1020 #define FPDF_FORMFIELD_TEXTFIELD 6 // text field type.
1021 #define FPDF_FORMFIELD_XFA» » » 7» » // text field ty pe. 1021 #define FPDF_FORMFIELD_XFA 7 // text field type.
1022
1022 /** 1023 /**
1023 * Function: FPDPage_HasFormFieldAtPoint 1024 * Function: FPDPage_HasFormFieldAtPoint
1024 *» » » Check the form filed position by point. 1025 * Check the form filed position by point.
1025 * Parameters: 1026 * Parameters:
1026 *» » » hHandle»» -» Handle to the form fill module. Returned by FPDFDOC_InitFormFillEnvironment. 1027 * hHandle - Handle to the form fill module. Returned by FPDFDOC_ InitFormFillEnvironment.
1027 *» » » page» » -» Handle to the page. Returned by FPDF_LoadPage function. 1028 * page - Handle to the page. Returned by FPDF_LoadPage functi on.
1028 *» » » page_x» » -» X position in PDF "user space". 1029 * page_x - X position in PDF "user space".
1029 *» » » page_y» » -» Y position in PDF "user space". 1030 * page_y - Y position in PDF "user space".
1030 * Return Value: 1031 * Return Value:
1031 *» » » Return the type of the formfiled; -1 indicates no fields . 1032 * Return the type of the formfiled; -1 indicates no fields.
1032 **/ 1033 **/
1033 DLLEXPORT int STDCALL FPDPage_HasFormFieldAtPoint(FPDF_FORMHANDLE hHandle,FPDF_P AGE page,double page_x, double page_y); 1034 DLLEXPORT int STDCALL FPDPage_HasFormFieldAtPoint(FPDF_FORMHANDLE hHandle,FPDF_P AGE page,double page_x, double page_y);
1034 1035
1035 /** 1036 /**
1036 * Function: FPDF_SetFormFieldHighlightColor 1037 * Function: FPDF_SetFormFieldHighlightColor
1037 *» » » Set the highlight color of specified or all the form fie lds in the document. 1038 * Set the highlight color of specified or all the form fields in the d ocument.
1038 * Parameters: 1039 * Parameters:
1039 *» » » hHandle»» -» Handle to the form fill module. Returned by FPDFDOC_InitFormFillEnvironment. 1040 * hHandle - Handle to the form fill module. Returned by FPDFDOC_ InitFormFillEnvironment.
1040 *» » » doc» » » -» Handle to the document. Returned by FPDF_LoadDocument function. 1041 * doc - Handle to the document. Returned by FPDF_LoadDocumen t function.
1041 *» » » fieldType» -» A 32-bit integer indicating the type of a form field(defined above). 1042 * fieldType - A 32-bit integer indicating the type of a form field (defined above).
1042 *» » » color» » -» The highlight color of the form field.Constructed by 0xxxrrggbb. 1043 * color - The highlight color of the form field.Constructed by 0xxxrrggbb.
1043 * Return Value: 1044 * Return Value:
1044 *» » » NONE. 1045 * NONE.
1045 * Comments: 1046 * Comments:
1046 *» » » When the parameter fieldType is set to zero, the highlig ht color will be applied to all the form fields in the 1047 * When the parameter fieldType is set to zero, the highlight color wil l be applied to all the form fields in the
1047 *» » » document. 1048 * document.
1048 *» » » Please refresh the client window to show the highlight i mmediately if necessary. 1049 * Please refresh the client window to show the highlight immediately i f necessary.
1049 **/ 1050 **/
1050 DLLEXPORT void STDCALL FPDF_SetFormFieldHighlightColor(FPDF_FORMHANDLE hHandle, int fieldType, unsigned long color); 1051 DLLEXPORT void STDCALL FPDF_SetFormFieldHighlightColor(FPDF_FORMHANDLE hHandle, int fieldType, unsigned long color);
1051 1052
1052 /** 1053 /**
1053 * Function: FPDF_SetFormFieldHighlightAlpha 1054 * Function: FPDF_SetFormFieldHighlightAlpha
1054 *» » » Set the transparency of the form field highlight color i n the document. 1055 * Set the transparency of the form field highlight color in the docume nt.
1055 * Parameters: 1056 * Parameters:
1056 *» » » hHandle»» -» Handle to the form fill module. Returned by FPDFDOC_InitFormFillEnvironment. 1057 * hHandle - Handle to the form fill module. Returned by FPDFDOC_ InitFormFillEnvironment.
1057 *» » » doc» » » -» Handle to the document. Returned by FPDF_LoadDocument function. 1058 * doc - Handle to the document. Returned by FPDF_LoadDocumen t function.
1058 *» » » alpha» » -» The transparency of the form fie ld highlight color. between 0-255. 1059 * alpha - The transparency of the form field highlight color. between 0-255.
1059 * Return Value: 1060 * Return Value:
1060 *» » » NONE. 1061 * NONE.
1061 **/ 1062 **/
1062 DLLEXPORT void STDCALL FPDF_SetFormFieldHighlightAlpha(FPDF_FORMHANDLE hHandle, unsigned char alpha); 1063 DLLEXPORT void STDCALL FPDF_SetFormFieldHighlightAlpha(FPDF_FORMHANDLE hHandle, unsigned char alpha);
1063 1064
1064 1065
1065 /** 1066 /**
1066 * Function: FPDF_RemoveFormFieldHighlight 1067 * Function: FPDF_RemoveFormFieldHighlight
1067 *» » » Remove the form field highlight color in the document. 1068 * Remove the form field highlight color in the document.
1068 * Parameters: 1069 * Parameters:
1069 *» » » hHandle»» -» Handle to the form fill module. Returned by FPDFDOC_InitFormFillEnvironment. 1070 * hHandle - Handle to the form fill module. Returned by FPDFDOC_ InitFormFillEnvironment.
1070 * Return Value: 1071 * Return Value:
1071 *» » » NONE. 1072 * NONE.
1072 * Comments: 1073 * Comments:
1073 *» » » Please refresh the client window to remove the highlight immediately if necessary. 1074 * Please refresh the client window to remove the highlight immediately if necessary.
1074 **/ 1075 **/
1075 DLLEXPORT void STDCALL FPDF_RemoveFormFieldHighlight(FPDF_FORMHANDLE hHandle); 1076 DLLEXPORT void STDCALL FPDF_RemoveFormFieldHighlight(FPDF_FORMHANDLE hHandle);
1076 1077
1077 /** 1078 /**
1078 * Function: FPDF_FFLDraw 1079 * Function: FPDF_FFLDraw
1079 *» » » Render FormFeilds on a page to a device independent bitm ap. » » » 1080 * Render FormFeilds on a page to a device independent bitmap.
1080 * Parameters: 1081 * Parameters:
1081 *» » » hHandle»» -» Handle to the form fill module. Returned by FPDFDOC_InitFormFillEnvironment. 1082 * hHandle - Handle to the form fill module. Returned by FPDFDOC_ InitFormFillEnvironment.
1082 *» » » bitmap» » -» Handle to the device independent bitmap (as the output buffer). 1083 * bitmap - Handle to the device independent bitmap (as the outp ut buffer).
1083 *» » » » » » » Bitmap handle can be cre ated by FPDFBitmap_Create function. 1084 * Bitmap handle can be created by FPDFBitmap_Create fu nction.
1084 *» » » page» » -» Handle to the page. Returned by FPDF_LoadPage function. 1085 * page - Handle to the page. Returned by FPDF_LoadPage functi on.
1085 *» » » start_x»» -» Left pixel position of the displ ay area in the device coordinate. 1086 * start_x - Left pixel position of the display area in the devic e coordinate.
1086 *» » » start_y»» -» Top pixel position of the displa y area in the device coordinate. 1087 * start_y - Top pixel position of the display area in the device coordinate.
1087 *» » » size_x» » -» Horizontal size (in pixels) for displaying the page. 1088 * size_x - Horizontal size (in pixels) for displaying the page.
1088 *» » » size_y» » -» Vertical size (in pixels) for di splaying the page. 1089 * size_y - Vertical size (in pixels) for displaying the page.
1089 *» » » rotate» » -» Page orientation: 0 (normal), 1 (rotated 90 degrees clockwise), 1090 * rotate - Page orientation: 0 (normal), 1 (rotated 90 degrees clockwise),
1090 *» » » » » » » » 2 (rotated 180 d egrees), 3 (rotated 90 degrees counter-clockwise). 1091 * 2 (rotated 180 degrees), 3 (rotated 90 degrees c ounter-clockwise).
1091 *» » » flags» » -» 0 for normal display, or combina tion of flags defined above. 1092 * flags - 0 for normal display, or combination of flags define d above.
1092 * Return Value: 1093 * Return Value:
1093 *» » » None. 1094 * None.
1094 * Comments: 1095 * Comments:
1095 *» » » This method is designed to only render annotations and F ormFields on the page. 1096 * This method is designed to only render annotations and FormFields on the page.
1096 *» » » Without FPDF_ANNOT specified for flags, Rendering functi ons such as FPDF_RenderPageBitmap or FPDF_RenderPageBitmap_Start will only rende r page contents(without annotations) to a bitmap. 1097 * Without FPDF_ANNOT specified for flags, Rendering functions such as FPDF_RenderPageBitmap or FPDF_RenderPageBitmap_Start will only render page conte nts(without annotations) to a bitmap.
1097 *» » » In order to implement the FormFill functions,Implementat ion should call this method after rendering functions finish rendering the page contents. 1098 * In order to implement the FormFill functions,Implementation should c all this method after rendering functions finish rendering the page contents.
1098 **/ 1099 **/
1099 DLLEXPORT void STDCALL FPDF_FFLDraw(FPDF_FORMHANDLE hHandle,FPDF_BITMAP bitmap, FPDF_PAGE page, int start_x, int start_y, 1100 DLLEXPORT void STDCALL FPDF_FFLDraw(FPDF_FORMHANDLE hHandle,FPDF_BITMAP bitmap, FPDF_PAGE page, int start_x, int start_y,
1100 » » » » » » int size_x, int size_y, int rota te, int flags); 1101 int size_x, int size_y, int rotate, int flags);
1101 /** 1102 /**
1102 * Function: FPDF_HasXFAField 1103 * Function: FPDF_HasXFAField
1103 * This method is designed to check whether a pdf document has XFA fields. 1104 * This method is designed to check whether a pdf document has XFA fields.
1104 * Parameters: 1105 * Parameters:
1105 * document - Handle to document. Retu rned by FPDF_LoadDocument function. 1106 * document - Handle to document. Retu rned by FPDF_LoadDocument function.
1106 * docType - Document type defined as DOCTYPE_xxx. 1107 * docType - Document type defined as DOCTYPE_xxx.
1107 * Return Value: 1108 * Return Value:
1108 * TRUE indicates that the input document has XFA fields, o therwise FALSE. 1109 * TRUE indicates that the input document has XFA fields, o therwise FALSE.
1109 **/ 1110 **/
1110 DLLEXPORT FPDF_BOOL STDCALL FPDF_HasXFAField(FPDF_DOCUMENT document, int* docTyp e); 1111 DLLEXPORT FPDF_BOOL STDCALL FPDF_HasXFAField(FPDF_DOCUMENT document, int* docTyp e);
1111 1112
1112 /** 1113 /**
1113 * Function: FPDF_LoadXFA 1114 * Function: FPDF_LoadXFA
1114 *» » » If the document consists of XFA fields, there should cal l this method to load XFA fields. 1115 * If the document consists of XFA fields, there should call this metho d to load XFA fields.
1115 * Parameters: 1116 * Parameters:
1116 *» » » document» » -» Handle to document. Retu rned by FPDF_LoadDocument function. 1117 * document - Handle to document. Returned by FPDF_LoadDocumen t function.
1117 * Return Value: 1118 * Return Value:
1118 *» » » TRUE indicates success,otherwise FALSE. 1119 * TRUE indicates success,otherwise FALSE.
1119 **/ 1120 **/
1120 DLLEXPORT FPDF_BOOL STDCALL FPDF_LoadXFA(FPDF_DOCUMENT document); 1121 DLLEXPORT FPDF_BOOL STDCALL FPDF_LoadXFA(FPDF_DOCUMENT document);
1121 1122
1122 /** 1123 /**
1123 * Function: FPDF_Widget_Undo 1124 * Function: FPDF_Widget_Undo
1124 *» » » This method will implement the undo feature for the spec ified xfa field. 1125 * This method will implement the undo feature for the specified xfa fi eld.
1125 * Parameters: 1126 * Parameters:
1126 *» » » document» » -» Handle to document. Retu rned by FPDF_LoadDocument function. 1127 * document - Handle to document. Returned by FPDF_LoadDocumen t function.
1127 *» » » hWidget»» » -» Handle to the xfa field. 1128 * hWidget - Handle to the xfa field.
1128 * Return Value: 1129 * Return Value:
1129 *» » » None. 1130 * None.
1130 **/ 1131 **/
1131 DLLEXPORT void STDCALL FPDF_Widget_Undo(FPDF_DOCUMENT document, FPDF_WIDGET hWid get); 1132 DLLEXPORT void STDCALL FPDF_Widget_Undo(FPDF_DOCUMENT document, FPDF_WIDGET hWid get);
1132 /** 1133 /**
1133 * Function: FPDF_Widget_Redo 1134 * Function: FPDF_Widget_Redo
1134 *» » » This method will implement the redo feature for the spec ified xfa field. 1135 * This method will implement the redo feature for the specified xfa fi eld.
1135 * Parameters: 1136 * Parameters:
1136 *» » » document» » -» Handle to document. Retu rned by FPDF_LoadDocument function. 1137 * document - Handle to document. Returned by FPDF_LoadDocumen t function.
1137 *» » » hWidget»» » -» Handle to the xfa field. 1138 * hWidget - Handle to the xfa field.
1138 * Return Value: 1139 * Return Value:
1139 *» » » None. 1140 * None.
1140 **/ 1141 **/
1141 DLLEXPORT void STDCALL FPDF_Widget_Redo(FPDF_DOCUMENT document, FPDF_WIDGET hWid get); 1142 DLLEXPORT void STDCALL FPDF_Widget_Redo(FPDF_DOCUMENT document, FPDF_WIDGET hWid get);
1142 /** 1143 /**
1143 * Function: FPDF_Widget_SelectAll 1144 * Function: FPDF_Widget_SelectAll
1144 *» » » This method will implement the select all feature for th e specified xfa field. 1145 * This method will implement the select all feature for the specified xfa field.
1145 * Parameters: 1146 * Parameters:
1146 *» » » document» » -» Handle to document. Retu rned by FPDF_LoadDocument function. 1147 * document - Handle to document. Returned by FPDF_LoadDocumen t function.
1147 *» » » hWidget»» » -» Handle to the xfa field. 1148 * hWidget - Handle to the xfa field.
1148 * Return Value: 1149 * Return Value:
1149 *» » » None. 1150 * None.
1150 **/ 1151 **/
1151 DLLEXPORT void STDCALL FPDF_Widget_SelectAll(FPDF_DOCUMENT document, FPDF_WIDGET hWidget); 1152 DLLEXPORT void STDCALL FPDF_Widget_SelectAll(FPDF_DOCUMENT document, FPDF_WIDGET hWidget);
1152 /** 1153 /**
1153 * Function: FPDF_Widget_Copy 1154 * Function: FPDF_Widget_Copy
1154 *» » » This method will implement the copy feature for the spec ified xfa field. 1155 * This method will implement the copy feature for the specified xfa fi eld.
1155 * Parameters: 1156 * Parameters:
1156 *» » » document» » -» Handle to document. Retu rned by FPDF_LoadDocument function. 1157 * document - Handle to document. Returned by FPDF_LoadDocumen t function.
1157 *» » » hWidget»» » -» Handle to the xfa field. 1158 * hWidget - Handle to the xfa field.
1158 *» » » wsText» » » -» Pointer to data buffer t o receive the copied data, in UTF-16LE format. 1159 * wsText - Pointer to data buffer to receive the copied dat a, in UTF-16LE format.
1159 *» » » size» » » -» The data buffer size. 1160 * size - The data buffer size.
1160 * Return Value: 1161 * Return Value:
1161 *» » » None. 1162 * None.
1162 **/ 1163 **/
1163 DLLEXPORT void STDCALL FPDF_Widget_Copy(FPDF_DOCUMENT document, FPDF_WIDGET hWid get, FPDF_WIDESTRING wsText, FPDF_DWORD* size); 1164 DLLEXPORT void STDCALL FPDF_Widget_Copy(FPDF_DOCUMENT document, FPDF_WIDGET hWid get, FPDF_WIDESTRING wsText, FPDF_DWORD* size);
1164 /** 1165 /**
1165 * Function: FPDF_Widget_Cut 1166 * Function: FPDF_Widget_Cut
1166 *» » » This method will implement the cut feature for the speci fied xfa field. 1167 * This method will implement the cut feature for the specified xfa fie ld.
1167 * Parameters: 1168 * Parameters:
1168 *» » » document» » -» Handle to document. Retu rned by FPDF_LoadDocument function. 1169 * document - Handle to document. Returned by FPDF_LoadDocumen t function.
1169 *» » » hWidget»» » -» Handle to the xfa field. 1170 * hWidget - Handle to the xfa field.
1170 *» » » wsText» » » -» Pointer to data buffer t o receive the cut data,in UTF-16LE format. 1171 * wsText - Pointer to data buffer to receive the cut data,i n UTF-16LE format.
1171 *» » » size» » » -» The data buffer size,not the byte number. 1172 * size - The data buffer size,not the byte number.
1172 * Return Value: 1173 * Return Value:
1173 *» » » None. 1174 * None.
1174 **/ 1175 **/
1175 DLLEXPORT void STDCALL FPDF_Widget_Cut(FPDF_DOCUMENT document, FPDF_WIDGET hWidg et, FPDF_WIDESTRING wsText, FPDF_DWORD* size); 1176 DLLEXPORT void STDCALL FPDF_Widget_Cut(FPDF_DOCUMENT document, FPDF_WIDGET hWidg et, FPDF_WIDESTRING wsText, FPDF_DWORD* size);
1176 /** 1177 /**
1177 * Function: FPDF_Widget_Paste 1178 * Function: FPDF_Widget_Paste
1178 *» » » This method will implement the paste feature for the spe cified xfa field. 1179 * This method will implement the paste feature for the specified xfa f ield.
1179 * Parameters: 1180 * Parameters:
1180 *» » » document» » -» Handle to document. Retu rned by FPDF_LoadDocument function. 1181 * document - Handle to document. Returned by FPDF_LoadDocumen t function.
1181 *» » » hWidget»» » -» Handle to the xfa field. 1182 * hWidget - Handle to the xfa field.
1182 *» » » wsText» » » -» The paste text buffer, i n UTF-16LE format. 1183 * wsText - The paste text buffer, in UTF-16LE format.
1183 *» » » size» » » -» The data buffer size,not the byte number. 1184 * size - The data buffer size,not the byte number.
1184 * Return Value: 1185 * Return Value:
1185 *» » » None. 1186 * None.
1186 **/ 1187 **/
1187 DLLEXPORT void STDCALL FPDF_Widget_Paste(FPDF_DOCUMENT document, FPDF_WIDGET hWi dget, FPDF_WIDESTRING wsText, FPDF_DWORD size); 1188 DLLEXPORT void STDCALL FPDF_Widget_Paste(FPDF_DOCUMENT document, FPDF_WIDGET hWi dget, FPDF_WIDESTRING wsText, FPDF_DWORD size);
1188 /** 1189 /**
1189 * Function: FPDF_Widget_ReplaceSpellCheckWord 1190 * Function: FPDF_Widget_ReplaceSpellCheckWord
1190 *» » » This method will implement the spell check feature for t he specified xfa field. 1191 * This method will implement the spell check feature for the specified xfa field.
1191 * Parameters: 1192 * Parameters:
1192 *» » » document» » -» Handle to document. Retu rned by FPDF_LoadDocument function. 1193 * document - Handle to document. Returned by FPDF_LoadDocumen t function.
1193 *» » » hWidget»» » -» Handle to the xfa field. 1194 * hWidget - Handle to the xfa field.
1194 *» » » x» » » » -» The x value of t he specified point. 1195 * x - The x value of the specified point.
1195 *» » » y» » » » -» The y value of t he specified point. 1196 * y - The y value of the specified point.
1196 *» » » bsText» » » -» The text buffer needed t o be speck check, in UTF-16LE format. 1197 * bsText - The text buffer needed to be speck check, in UTF -16LE format.
1197 * Return Value: 1198 * Return Value:
1198 *» » » None. 1199 * None.
1199 **/ 1200 **/
1200 DLLEXPORT void STDCALL FPDF_Widget_ReplaceSpellCheckWord(FPDF_DOCUMENT document, FPDF_WIDGET hWidget, float x, float y, FPDF_BYTESTRING bsText); 1201 DLLEXPORT void STDCALL FPDF_Widget_ReplaceSpellCheckWord(FPDF_DOCUMENT document, FPDF_WIDGET hWidget, float x, float y, FPDF_BYTESTRING bsText);
1201 /** 1202 /**
1202 * Function: FPDF_Widget_GetSpellCheckWords 1203 * Function: FPDF_Widget_GetSpellCheckWords
1203 *» » » This method will implement the spell check feature for t he specified xfa field. 1204 * This method will implement the spell check feature for the specified xfa field.
1204 * Parameters: 1205 * Parameters:
1205 *» » » document» » -» Handle to document. Retu rned by FPDF_LoadDocument function. 1206 * document - Handle to document. Returned by FPDF_LoadDocumen t function.
1206 *» » » hWidget»» » -» Handle to the xfa field. 1207 * hWidget - Handle to the xfa field.
1207 *» » » x» » » » -» The x value of t he specified point. 1208 * x - The x value of the specified point.
1208 *» » » y» » » » -» The y value of t he specified point. 1209 * y - The y value of the specified point.
1209 *» » » stringHandle» -» Pointer to FPDF_STRINGHANDLE to receive the speck check text buffer, in UTF-16LE format. 1210 * stringHandle - Pointer to FPDF_STRINGHANDLE to receive the spec k check text buffer, in UTF-16LE format.
1210 * Return Value: 1211 * Return Value:
1211 *» » » None. 1212 * None.
1212 **/ 1213 **/
1213 DLLEXPORT void STDCALL FPDF_Widget_GetSpellCheckWords(FPDF_DOCUMENT document, FP DF_WIDGET hWidget, float x, float y, FPDF_STRINGHANDLE* stringHandle); 1214 DLLEXPORT void STDCALL FPDF_Widget_GetSpellCheckWords(FPDF_DOCUMENT document, FP DF_WIDGET hWidget, float x, float y, FPDF_STRINGHANDLE* stringHandle);
1214 /** 1215 /**
1215 * Function: FPDF_StringHandleCounts 1216 * Function: FPDF_StringHandleCounts
1216 *» » » This method will get the count of the text buffer. 1217 * This method will get the count of the text buffer.
1217 * Parameters: 1218 * Parameters:
1218 *» » » stringHandle» -» Pointer to FPDF_STRINGHANDLE. 1219 * stringHandle - Pointer to FPDF_STRINGHANDLE.
1219 * Return Value: 1220 * Return Value:
1220 *» » » None. 1221 * None.
1221 **/ 1222 **/
1222 DLLEXPORT int STDCALL FPDF_StringHandleCounts(FPDF_STRINGHANDLE stringHandle); 1223 DLLEXPORT int STDCALL FPDF_StringHandleCounts(FPDF_STRINGHANDLE stringHandle);
1223 /** 1224 /**
1224 * Function: FPDF_StringHandleGetStringByIndex 1225 * Function: FPDF_StringHandleGetStringByIndex
1225 *» » » This method will get the specified index of the text buf fer. 1226 * This method will get the specified index of the text buffer.
1226 * Parameters: 1227 * Parameters:
1227 *» » » stringHandle» -» Pointer to FPDF_STRINGHANDLE. 1228 * stringHandle - Pointer to FPDF_STRINGHANDLE.
1228 *» » » index» » » -» The specified index of t ext buffer. 1229 * index - The specified index of text buffer.
1229 *» » » bsText» » » -» Pointer to data buffer t o receive the text buffer, in UTF-16LE format. 1230 * bsText - Pointer to data buffer to receive the text buffe r, in UTF-16LE format.
1230 *» » » size» » » -» The byte size of data bu ffer. 1231 * size - The byte size of data buffer.
1231 * Return Value: 1232 * Return Value:
1232 *» » » TRUE indicates success, otherwise FALSE. 1233 * TRUE indicates success, otherwise FALSE.
1233 **/ 1234 **/
1234 DLLEXPORT FPDF_BOOL STDCALL FPDF_StringHandleGetStringByIndex(FPDF_STRINGHANDLE stringHandle, int index, FPDF_BYTESTRING bsText, FPDF_DWORD* size); 1235 DLLEXPORT FPDF_BOOL STDCALL FPDF_StringHandleGetStringByIndex(FPDF_STRINGHANDLE stringHandle, int index, FPDF_BYTESTRING bsText, FPDF_DWORD* size);
1235 /** 1236 /**
1236 * Function: FPDF_StringHandleRelease 1237 * Function: FPDF_StringHandleRelease
1237 *» » » This method will release the FPDF_STRINGHANDLE. 1238 * This method will release the FPDF_STRINGHANDLE.
1238 * Parameters: 1239 * Parameters:
1239 *» » » stringHandle» -» Pointer to FPDF_STRINGHANDLE. 1240 * stringHandle - Pointer to FPDF_STRINGHANDLE.
1240 * Return Value: 1241 * Return Value:
1241 *» » » None. 1242 * None.
1242 **/ 1243 **/
1243 DLLEXPORT void STDCALL FPDF_StringHandleRelease(FPDF_STRINGHANDLE stringHandle); 1244 DLLEXPORT void STDCALL FPDF_StringHandleRelease(FPDF_STRINGHANDLE stringHandle);
1244 /** 1245 /**
1245 * Function: FPDF_StringHandleAddString 1246 * Function: FPDF_StringHandleAddString
1246 *» » » This method will add the specified text buffer. 1247 * This method will add the specified text buffer.
1247 * Parameters: 1248 * Parameters:
1248 *» » » stringHandle» -» Pointer to FPDF_STRINGHANDLE. 1249 * stringHandle - Pointer to FPDF_STRINGHANDLE.
1249 *» » » bsText» » » -» Pointer to data buffer o f the text buffer, in UTF-16LE format. 1250 * bsText - Pointer to data buffer of the text buffer, in UT F-16LE format.
1250 *» » » size» » » -» The byte size of data bu ffer. 1251 * size - The byte size of data buffer.
1251 * Return Value: 1252 * Return Value:
1252 *» » » TRUE indicates success, otherwise FALSE. 1253 * TRUE indicates success, otherwise FALSE.
1253 **/ 1254 **/
1254 DLLEXPORT FPDF_BOOL STDCALL FPDF_StringHandleAddString(FPDF_STRINGHANDLE stringH andle, FPDF_BYTESTRING bsText, FPDF_DWORD size); 1255 DLLEXPORT FPDF_BOOL STDCALL FPDF_StringHandleAddString(FPDF_STRINGHANDLE stringH andle, FPDF_BYTESTRING bsText, FPDF_DWORD size);
1255 1256
1256 #ifdef __cplusplus 1257 #ifdef __cplusplus
1257 }; 1258 }
1258 #endif 1259 #endif
1259 1260
1260 #endif //_FPDFORMFILL_H 1261 #endif // PUBLIC_FPDF_FORMFILL_H_
1261
OLDNEW
« no previous file with comments | « public/fpdf_flatten.h ('k') | public/fpdf_fwlevent.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698