OLD | NEW |
1 // Copyright 2014 PDFium Authors. All rights reserved. | 1 // Copyright 2014 PDFium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com | 5 // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com |
6 | 6 |
7 #ifndef PUBLIC_FPDF_EXT_H_ | 7 #ifndef PUBLIC_FPDF_EXT_H_ |
8 #define PUBLIC_FPDF_EXT_H_ | 8 #define PUBLIC_FPDF_EXT_H_ |
9 | 9 |
10 #include "fpdfview.h" | 10 #include "fpdfview.h" |
11 | 11 |
12 #ifdef __cplusplus | 12 #ifdef __cplusplus |
13 extern "C" { | 13 extern "C" { |
14 #endif | 14 #endif // __cplusplus |
15 | 15 |
16 // flags for type of unsupport object. | 16 // Unsupported XFA form. |
17 #define FPDF_UNSP_DOC_XFAFORM 1 | 17 #define FPDF_UNSP_DOC_XFAFORM 1 |
| 18 // Unsupported portable collection. |
18 #define FPDF_UNSP_DOC_PORTABLECOLLECTION 2 | 19 #define FPDF_UNSP_DOC_PORTABLECOLLECTION 2 |
| 20 // Unsupported attachment. |
19 #define FPDF_UNSP_DOC_ATTACHMENT 3 | 21 #define FPDF_UNSP_DOC_ATTACHMENT 3 |
| 22 // Unsupported security. |
20 #define FPDF_UNSP_DOC_SECURITY 4 | 23 #define FPDF_UNSP_DOC_SECURITY 4 |
| 24 // Unsupported shared review. |
21 #define FPDF_UNSP_DOC_SHAREDREVIEW 5 | 25 #define FPDF_UNSP_DOC_SHAREDREVIEW 5 |
| 26 // Unsupported shared form, acrobat. |
22 #define FPDF_UNSP_DOC_SHAREDFORM_ACROBAT 6 | 27 #define FPDF_UNSP_DOC_SHAREDFORM_ACROBAT 6 |
| 28 // Unsupported shared form, filesystem. |
23 #define FPDF_UNSP_DOC_SHAREDFORM_FILESYSTEM 7 | 29 #define FPDF_UNSP_DOC_SHAREDFORM_FILESYSTEM 7 |
| 30 // Unsupported shared form, email. |
24 #define FPDF_UNSP_DOC_SHAREDFORM_EMAIL 8 | 31 #define FPDF_UNSP_DOC_SHAREDFORM_EMAIL 8 |
| 32 // Unsupported 3D annotation. |
25 #define FPDF_UNSP_ANNOT_3DANNOT 11 | 33 #define FPDF_UNSP_ANNOT_3DANNOT 11 |
| 34 // Unsupported movie annotation. |
26 #define FPDF_UNSP_ANNOT_MOVIE 12 | 35 #define FPDF_UNSP_ANNOT_MOVIE 12 |
| 36 // Unsupported sound annotation. |
27 #define FPDF_UNSP_ANNOT_SOUND 13 | 37 #define FPDF_UNSP_ANNOT_SOUND 13 |
| 38 // Unsupported screen media annotation. |
28 #define FPDF_UNSP_ANNOT_SCREEN_MEDIA 14 | 39 #define FPDF_UNSP_ANNOT_SCREEN_MEDIA 14 |
| 40 // Unsupported screen rich media annotation. |
29 #define FPDF_UNSP_ANNOT_SCREEN_RICHMEDIA 15 | 41 #define FPDF_UNSP_ANNOT_SCREEN_RICHMEDIA 15 |
| 42 // Unsupported attachment annotation. |
30 #define FPDF_UNSP_ANNOT_ATTACHMENT 16 | 43 #define FPDF_UNSP_ANNOT_ATTACHMENT 16 |
| 44 // Unsupported signature annotation. |
31 #define FPDF_UNSP_ANNOT_SIG 17 | 45 #define FPDF_UNSP_ANNOT_SIG 17 |
32 | 46 |
| 47 // Interface for unsupported feature notifications. |
33 typedef struct _UNSUPPORT_INFO { | 48 typedef struct _UNSUPPORT_INFO { |
34 /** | 49 // Version number of the interface. Must be 1. |
35 * Version number of the interface. Currently must be 1. | |
36 **/ | |
37 int version; | 50 int version; |
38 | 51 |
39 /** | 52 // Unsupported object notification function. |
40 * Method: FSDK_UnSupport_Handler | 53 // Interface Version: 1 |
41 * UnSupport Object process handling function. | 54 // Implementation Required: Yes |
42 * Interface Version: | 55 // |
43 * 1 | 56 // pThis - pointer to the interface structure. |
44 * Implementation Required: | 57 // nType - the type of unsupported object. One of the |FPDF_UNSP_*| entries. |
45 * Yes | |
46 * Parameters: | |
47 * pThis - Pointer to the interface structure itself. | |
48 * nType - The type of unsupportObject | |
49 * Return value: | |
50 * None. | |
51 * */ | |
52 | |
53 void (*FSDK_UnSupport_Handler)(struct _UNSUPPORT_INFO* pThis, int nType); | 58 void (*FSDK_UnSupport_Handler)(struct _UNSUPPORT_INFO* pThis, int nType); |
54 } UNSUPPORT_INFO; | 59 } UNSUPPORT_INFO; |
55 | 60 |
56 /** | 61 // Setup an unsupported object handler. |
57 * Function: FSDK_SetUnSpObjProcessHandler | 62 // |
58 * Setup A UnSupport Object process handler for foxit sdk. | 63 // unsp_info - Pointer to an UNSUPPORT_INFO structure. |
59 * Parameters: | 64 // |
60 * unsp_info - Pointer to a UNSUPPORT_INFO structure. | 65 // Returns TRUE on success. |
61 * Return Value: | |
62 * TRUE means successful. FALSE means fails. | |
63 **/ | |
64 | |
65 DLLEXPORT FPDF_BOOL STDCALL | 66 DLLEXPORT FPDF_BOOL STDCALL |
66 FSDK_SetUnSpObjProcessHandler(UNSUPPORT_INFO* unsp_info); | 67 FSDK_SetUnSpObjProcessHandler(UNSUPPORT_INFO* unsp_info); |
67 | 68 |
68 // flags for page mode. | 69 // Unknown page mode. |
69 | |
70 // Unknown value | |
71 #define PAGEMODE_UNKNOWN -1 | 70 #define PAGEMODE_UNKNOWN -1 |
72 | 71 // Document outline, and thumbnails hidden. |
73 // Neither document outline nor thumbnail images visible | |
74 #define PAGEMODE_USENONE 0 | 72 #define PAGEMODE_USENONE 0 |
75 | 73 // Document outline visible. |
76 // Document outline visible | |
77 #define PAGEMODE_USEOUTLINES 1 | 74 #define PAGEMODE_USEOUTLINES 1 |
78 | 75 // Thumbnail images visible. |
79 // Thumbnial images visible | |
80 #define PAGEMODE_USETHUMBS 2 | 76 #define PAGEMODE_USETHUMBS 2 |
81 | 77 // Full-screen mode, no menu bar, window controls, or other decorations visible. |
82 // Full-screen mode, with no menu bar, window controls, or any other window | |
83 // visible | |
84 #define PAGEMODE_FULLSCREEN 3 | 78 #define PAGEMODE_FULLSCREEN 3 |
85 | 79 // Optional content group panel visible. |
86 // Optional content group panel visible | |
87 #define PAGEMODE_USEOC 4 | 80 #define PAGEMODE_USEOC 4 |
88 | 81 // Attachments panel visible. |
89 // Attachments panel visible | |
90 #define PAGEMODE_USEATTACHMENTS 5 | 82 #define PAGEMODE_USEATTACHMENTS 5 |
91 | 83 |
92 /** | 84 // Get the document's PageMode. |
93 * Function: FPDFDoc_GetPageMode | 85 // |
94 * Get the document's PageMode(How the document should be displayed | 86 // doc - Handle to document. |
95 *when opened) | 87 // |
96 * Parameters: | 88 // Returns one of the |PAGEMODE_*| flags defined above. |
97 * doc - Handle to document. Returned by FPDF_LoadDocument | 89 // |
98 *function. | 90 // The page mode defines how the document should be initially displayed. |
99 * Return Value: | |
100 * The flags for page mode. | |
101 **/ | |
102 DLLEXPORT int FPDFDoc_GetPageMode(FPDF_DOCUMENT document); | 91 DLLEXPORT int FPDFDoc_GetPageMode(FPDF_DOCUMENT document); |
103 | 92 |
104 #ifdef __cplusplus | 93 #ifdef __cplusplus |
105 } | 94 } // extern "C" |
106 #endif | 95 #endif // __cplusplus |
107 | 96 |
108 #endif // PUBLIC_FPDF_EXT_H_ | 97 #endif // PUBLIC_FPDF_EXT_H_ |
OLD | NEW |