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 13extern "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 33typedef 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 65DLLEXPORT FPDF_BOOL STDCALL 66FSDK_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 **/ 102DLLEXPORT int FPDFDoc_GetPageMode(FPDF_DOCUMENT document); 103 104#ifdef __cplusplus 105} 106#endif 107 108#endif // PUBLIC_FPDF_EXT_H_ 109