You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
120 lines
3.8 KiB
120 lines
3.8 KiB
// 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 PUBLIC_FPDF_EXT_H_
|
|
#define PUBLIC_FPDF_EXT_H_
|
|
|
|
#include <time.h>
|
|
|
|
// NOLINTNEXTLINE(build/include)
|
|
#include "fpdfview.h"
|
|
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif // __cplusplus
|
|
|
|
// Unsupported XFA form.
|
|
#define FPDF_UNSP_DOC_XFAFORM 1
|
|
// Unsupported portable collection.
|
|
#define FPDF_UNSP_DOC_PORTABLECOLLECTION 2
|
|
// Unsupported attachment.
|
|
#define FPDF_UNSP_DOC_ATTACHMENT 3
|
|
// Unsupported security.
|
|
#define FPDF_UNSP_DOC_SECURITY 4
|
|
// Unsupported shared review.
|
|
#define FPDF_UNSP_DOC_SHAREDREVIEW 5
|
|
// Unsupported shared form, acrobat.
|
|
#define FPDF_UNSP_DOC_SHAREDFORM_ACROBAT 6
|
|
// Unsupported shared form, filesystem.
|
|
#define FPDF_UNSP_DOC_SHAREDFORM_FILESYSTEM 7
|
|
// Unsupported shared form, email.
|
|
#define FPDF_UNSP_DOC_SHAREDFORM_EMAIL 8
|
|
// Unsupported 3D annotation.
|
|
#define FPDF_UNSP_ANNOT_3DANNOT 11
|
|
// Unsupported movie annotation.
|
|
#define FPDF_UNSP_ANNOT_MOVIE 12
|
|
// Unsupported sound annotation.
|
|
#define FPDF_UNSP_ANNOT_SOUND 13
|
|
// Unsupported screen media annotation.
|
|
#define FPDF_UNSP_ANNOT_SCREEN_MEDIA 14
|
|
// Unsupported screen rich media annotation.
|
|
#define FPDF_UNSP_ANNOT_SCREEN_RICHMEDIA 15
|
|
// Unsupported attachment annotation.
|
|
#define FPDF_UNSP_ANNOT_ATTACHMENT 16
|
|
// Unsupported signature annotation.
|
|
#define FPDF_UNSP_ANNOT_SIG 17
|
|
|
|
// Interface for unsupported feature notifications.
|
|
typedef struct _UNSUPPORT_INFO {
|
|
// Version number of the interface. Must be 1.
|
|
int version;
|
|
|
|
// Unsupported object notification function.
|
|
// Interface Version: 1
|
|
// Implementation Required: Yes
|
|
//
|
|
// pThis - pointer to the interface structure.
|
|
// nType - the type of unsupported object. One of the |FPDF_UNSP_*| entries.
|
|
void (*FSDK_UnSupport_Handler)(struct _UNSUPPORT_INFO* pThis, int nType);
|
|
} UNSUPPORT_INFO;
|
|
|
|
// Setup an unsupported object handler.
|
|
//
|
|
// unsp_info - Pointer to an UNSUPPORT_INFO structure.
|
|
//
|
|
// Returns TRUE on success.
|
|
FPDF_EXPORT FPDF_BOOL FPDF_CALLCONV
|
|
FSDK_SetUnSpObjProcessHandler(UNSUPPORT_INFO* unsp_info);
|
|
|
|
// Set replacement function for calls to time().
|
|
//
|
|
// This API is intended to be used only for testing, thus may cause PDFium to
|
|
// behave poorly in production environments.
|
|
//
|
|
// func - Function pointer to alternate implementation of time(), or
|
|
// NULL to restore to actual time() call itself.
|
|
FPDF_EXPORT void FPDF_CALLCONV FSDK_SetTimeFunction(time_t (*func)());
|
|
|
|
// Set replacement function for calls to localtime().
|
|
//
|
|
// This API is intended to be used only for testing, thus may cause PDFium to
|
|
// behave poorly in production environments.
|
|
//
|
|
// func - Function pointer to alternate implementation of localtime(), or
|
|
// NULL to restore to actual localtime() call itself.
|
|
FPDF_EXPORT void FPDF_CALLCONV
|
|
FSDK_SetLocaltimeFunction(struct tm* (*func)(const time_t*));
|
|
|
|
// Unknown page mode.
|
|
#define PAGEMODE_UNKNOWN -1
|
|
// Document outline, and thumbnails hidden.
|
|
#define PAGEMODE_USENONE 0
|
|
// Document outline visible.
|
|
#define PAGEMODE_USEOUTLINES 1
|
|
// Thumbnail images visible.
|
|
#define PAGEMODE_USETHUMBS 2
|
|
// Full-screen mode, no menu bar, window controls, or other decorations visible.
|
|
#define PAGEMODE_FULLSCREEN 3
|
|
// Optional content group panel visible.
|
|
#define PAGEMODE_USEOC 4
|
|
// Attachments panel visible.
|
|
#define PAGEMODE_USEATTACHMENTS 5
|
|
|
|
// Get the document's PageMode.
|
|
//
|
|
// doc - Handle to document.
|
|
//
|
|
// Returns one of the |PAGEMODE_*| flags defined above.
|
|
//
|
|
// The page mode defines how the document should be initially displayed.
|
|
FPDF_EXPORT int FPDF_CALLCONV FPDFDoc_GetPageMode(FPDF_DOCUMENT document);
|
|
|
|
#ifdef __cplusplus
|
|
} // extern "C"
|
|
#endif // __cplusplus
|
|
|
|
#endif // PUBLIC_FPDF_EXT_H_
|