From ac19d2d8f64ab87577f167e0a8df075a7fe3ffdc Mon Sep 17 00:00:00 2001 From: Tom Sepez Date: Mon, 11 May 2015 14:27:24 -0700 Subject: Create top-level public/ header directory. These are the only files that embedders of PDFium should be including. They are entirely self-contained, and compile cleanly against -Wall so as to not offend the code that may include them. Having done this, we can see that chromium is pulling in two additional files from the fpdfsdk/include/pdfwindow directory, which is not guaranteed to work. A few files are renamed, adding an "_" to make the names consistent. The exception is fpdfview, which is doc'd as such in the doc. Naturally, paths will need updating in a handful of files in chrome when this rolls in. BUG=pdfium:154 R=thestig@chromium.org Review URL: https://codereview.chromium.org/1135913002 --- public/fpdf_ext.h | 108 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 108 insertions(+) create mode 100644 public/fpdf_ext.h (limited to 'public/fpdf_ext.h') diff --git a/public/fpdf_ext.h b/public/fpdf_ext.h new file mode 100644 index 0000000000..96e3c857fd --- /dev/null +++ b/public/fpdf_ext.h @@ -0,0 +1,108 @@ +// Copyright 2014 PDFium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com + +#ifndef _FPDF_EXT_H_ +#define _FPDF_EXT_H_ + +#ifndef _FPDFVIEW_H_ +#include "fpdfview.h" +#endif + +#ifdef __cplusplus +extern "C" { +#endif + +//flags for type of unsupport object. +#define FPDF_UNSP_DOC_XFAFORM 1 +#define FPDF_UNSP_DOC_PORTABLECOLLECTION 2 +#define FPDF_UNSP_DOC_ATTACHMENT 3 +#define FPDF_UNSP_DOC_SECURITY 4 +#define FPDF_UNSP_DOC_SHAREDREVIEW 5 +#define FPDF_UNSP_DOC_SHAREDFORM_ACROBAT 6 +#define FPDF_UNSP_DOC_SHAREDFORM_FILESYSTEM 7 +#define FPDF_UNSP_DOC_SHAREDFORM_EMAIL 8 +#define FPDF_UNSP_ANNOT_3DANNOT 11 +#define FPDF_UNSP_ANNOT_MOVIE 12 +#define FPDF_UNSP_ANNOT_SOUND 13 +#define FPDF_UNSP_ANNOT_SCREEN_MEDIA 14 +#define FPDF_UNSP_ANNOT_SCREEN_RICHMEDIA 15 +#define FPDF_UNSP_ANNOT_ATTACHMENT 16 +#define FPDF_UNSP_ANNOT_SIG 17 + +typedef struct _UNSUPPORT_INFO +{ + /** + * Version number of the interface. Currently must be 1. + **/ + int version; + + /** + * Method: FSDK_UnSupport_Handler + * UnSupport Object process handling function. + * Interface Version: + * 1 + * Implementation Required: + * Yes + * Parameters: + * pThis - Pointer to the interface structure itself. + * nType - The type of unsupportObject + * Return value: + * None. + * */ + + void(*FSDK_UnSupport_Handler)(_UNSUPPORT_INFO* pThis,int nType); +}UNSUPPORT_INFO; + + +/** + * Function: FSDK_SetUnSpObjProcessHandler + * Setup A UnSupport Object process handler for foxit sdk. + * Parameters: + * unsp_info - Pointer to a UNSUPPORT_INFO structure. + * Return Value: + * TRUE means successful. FALSE means fails. + **/ + +DLLEXPORT FPDF_BOOL STDCALL FSDK_SetUnSpObjProcessHandler(UNSUPPORT_INFO* unsp_info); + +//flags for page mode. + +//Unknown value +#define PAGEMODE_UNKNOWN -1 + +//Neither document outline nor thumbnail images visible +#define PAGEMODE_USENONE 0 + +//Document outline visible +#define PAGEMODE_USEOUTLINES 1 + +//Thumbnial images visible +#define PAGEMODE_USETHUMBS 2 + +//Full-screen mode, with no menu bar, window controls, or any other window visible +#define PAGEMODE_FULLSCREEN 3 + +//Optional content group panel visible +#define PAGEMODE_USEOC 4 + +//Attachments panel visible +#define PAGEMODE_USEATTACHMENTS 5 + + +/** + * Function: FPDFDoc_GetPageMode + * Get the document's PageMode(How the document should be displayed when opened) + * Parameters: + * doc - Handle to document. Returned by FPDF_LoadDocument function. + * Return Value: + * The flags for page mode. + **/ +DLLEXPORT int FPDFDoc_GetPageMode(FPDF_DOCUMENT document); + +#ifdef __cplusplus +}; +#endif +#endif -- cgit v1.2.3