blob: 5efe0e662d3840d1c26fe7d3e1a9fc15effbc91b [file] [log] [blame]
John Abd-El-Malek3f3b45c2014-05-23 17:28:10 -07001// 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 _FPDF_EXT_H_
8#define _FPDF_EXT_H_
9
10#ifndef _FPDFVIEW_H_
11#include "fpdfview.h"
12#endif
13
14#ifdef __cplusplus
15extern "C" {
16#endif
17
18//flags for type of unsupport object.
19#define FPDF_UNSP_DOC_XFAFORM 1
20#define FPDF_UNSP_DOC_PORTABLECOLLECTION 2
21#define FPDF_UNSP_DOC_ATTACHMENT 3
22#define FPDF_UNSP_DOC_SECURITY 4
23#define FPDF_UNSP_DOC_SHAREDREVIEW 5
24#define FPDF_UNSP_DOC_SHAREDFORM_ACROBAT 6
25#define FPDF_UNSP_DOC_SHAREDFORM_FILESYSTEM 7
26#define FPDF_UNSP_DOC_SHAREDFORM_EMAIL 8
27#define FPDF_UNSP_ANNOT_3DANNOT 11
28#define FPDF_UNSP_ANNOT_MOVIE 12
29#define FPDF_UNSP_ANNOT_SOUND 13
30#define FPDF_UNSP_ANNOT_SCREEN_MEDIA 14
31#define FPDF_UNSP_ANNOT_SCREEN_RICHMEDIA 15
32#define FPDF_UNSP_ANNOT_ATTACHMENT 16
33#define FPDF_UNSP_ANNOT_SIG 17
34
35typedef struct _UNSUPPORT_INFO
36{
37 /**
38 * Version number of the interface. Currently must be 1.
39 **/
40 int version;
41
42 /**
43 * Method: FSDK_UnSupport_Handler
44 * UnSupport Object process handling function.
45 * Interface Version:
46 * 1
47 * Implementation Required:
48 * Yes
49 * Parameters:
50 * pThis - Pointer to the interface structure itself.
51 * nType - The type of unsupportObject
52 * Return value:
53 * None.
54 * */
55
56 void(*FSDK_UnSupport_Handler)(_UNSUPPORT_INFO* pThis,int nType);
57}UNSUPPORT_INFO;
58
59
60/**
61 * Function: FSDK_SetUnSpObjProcessHandler
62 * Setup A UnSupport Object process handler for foxit sdk.
63 * Parameters:
64 * unsp_info - Pointer to a UNSUPPORT_INFO structure.
65 * Return Value:
66 * TRUE means successful. FALSE means fails.
67 **/
68
69DLLEXPORT FPDF_BOOL STDCALL FSDK_SetUnSpObjProcessHandler(UNSUPPORT_INFO* unsp_info);
70
71//flags for page mode.
72
73//Unknown value
74#define PAGEMODE_UNKONOWN -1
75
76//Neither document outline nor thumbnail images visible
77#define PAGEMODE_USENONE 0
78
79//Document outline visible
80#define PAGEMODE_USEOUTLINES 1
81
82//Thumbnial images visible
83#define PAGEMODE_USETHUMBS 2
84
85//Full-screen mode, with no menu bar, window controls, or any other window visible
86#define PAGEMODE_FULLSCREEN 3
87
88//Optional content group panel visible
89#define PAGEMODE_USEOC 4
90
91//Attachments panel visible
92#define PAGEMODE_USEATTACHMENTS 5
93
94
95/**
96 * Function: FPDFDoc_GetPageMode
97 * Get the document's PageMode(How the document should be displayed when opened)
98 * Parameters:
99 * doc - Handle to document. Returned by FPDF_LoadDocument function.
100 * Return Value:
101 * The flags for page mode.
102 **/
103DLLEXPORT int FPDFDoc_GetPageMode(FPDF_DOCUMENT document);
104
105#ifdef __cplusplus
106};
107#endif
108#endif