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