Files

246 lines
6.4 KiB
C

// npapidefs.h
// minimal version of the defs from the NS plugin SDK
#ifndef NPAPIDEFS_H
#define NPAPIDEFS_H
#define NP_VERSION_MAJOR 0
#define NP_VERSION_MINOR 11
#define NPVERS_HAS_STREAMOUTPUT 8
#define NPVERS_HAS_NOTIFICATION 9
#define NPVERS_HAS_LIVECONNECT 9
#define NPVERS_HAS_WINDOWLESS 11
#define NPERR_NO_ERROR 0
#define NPERR_GENERIC_ERROR 1
#define NPERR_INVALID_INSTANCE_ERROR 2
#define NPERR_INVALID_FUNCTABLE_ERROR 3
#define NPERR_MODULE_LOAD_FAILED_ERROR 4
#define NPERR_OUT_OF_MEMORY_ERROR 5
#define NPERR_INVALID_PLUGIN_ERROR 6
#define NPERR_INVALID_PLUGIN_DIR_ERROR 7
#define NPERR_INCOMPATIBLE_VERSION_ERROR 8
#define NPERR_INVALID_PARAM 9
#define NPERR_INVALID_URL 10
#define NPERR_FILE_NOT_FOUND 11
#define NPERR_NO_DATA 12
#define NPERR_STREAM_NOT_SEEKABLE 13
#define NP_EMBED 1
#define NP_FULL 2
#define NP_NORMAL 1
#define NP_SEEK 2
#define NP_ASFILE 3
#define NP_ASFILEONLY 4
#define NPRES_DONE 0
#define NPRES_NETWORK_ERR 1
#define NPRES_USER_BREAK 2
typedef unsigned short uint16;
typedef unsigned long uint32;
typedef short int16;
typedef long int32;
typedef unsigned char NPBool;
typedef int16 NPError;
typedef int16 NPReason;
typedef char* NPMIMEType;
typedef HRGN NPRegion;
typedef void* JRIGlobalRef;
struct JRIEnvInterface;
typedef struct JRIEnvInterface JRIEnvInterface;
typedef const JRIEnvInterface* JRIEnv;
struct _jobject;
typedef struct _jobject *jobject;
typedef jobject jref;
typedef struct _NPRect
{
uint16 top;
uint16 left;
uint16 bottom;
uint16 right;
} NPRect;
typedef struct _NPP
{
void* pdata;
void* ndata;
} NPP_t;
typedef NPP_t* NPP;
typedef struct _NPStream
{
void* pdata;
void* ndata;
const char* url;
uint32 end;
uint32 lastmodified;
void* notifyData;
} NPStream;
typedef enum {
NPPVpluginNameString = 1,
NPPVpluginDescriptionString,
NPPVpluginWindowBool,
NPPVpluginTransparentBool
} NPPVariable;
typedef enum {
NPNVxDisplay = 1,
NPNVxtAppContext,
NPNVnetscapeWindow,
NPNVjavascriptEnabledBool,
NPNVasdEnabledBool,
NPNVisOfflineBool
} NPNVariable;
typedef enum {
NPWindowTypeWindow = 1,
NPWindowTypeDrawable
} NPWindowType;
typedef struct _NPSavedData
{
int32 len;
void* buf;
} NPSavedData;
typedef struct _NPByteRange
{
int32 offset;
uint32 length;
struct _NPByteRange* next;
} NPByteRange;
typedef struct _NPFullPrint
{
NPBool pluginPrinted;
NPBool printOne;
void* platformPrint;
} NPFullPrint;
typedef struct _NPWindow
{
void* window;
int32 x;
int32 y;
uint32 width;
uint32 height;
NPRect clipRect;
NPWindowType type;
} NPWindow;
typedef struct _NPEmbedPrint
{
NPWindow window;
void* platformPrint;
} NPEmbedPrint;
typedef struct _NPPrint
{
uint16 mode;
union
{
NPFullPrint fullPrint;
NPEmbedPrint embedPrint;
} print;
} NPPrint;
typedef struct _NPEvent
{
uint16 event;
uint32 wParam;
uint32 lParam;
} NPEvent;
typedef NPError (*NPP_NewUPP)(NPMIMEType,NPP,uint16,int16,char* argn[],char* argv[],NPSavedData*);
typedef NPError (*NPP_DestroyUPP)(NPP instance, NPSavedData** save);
typedef NPError (*NPP_SetWindowUPP)(NPP,NPWindow*);
typedef NPError (*NPP_NewStreamUPP)(NPP,NPMIMEType,NPStream*,NPBool,uint16*);
typedef NPError (*NPP_DestroyStreamUPP)(NPP,NPStream*,NPReason);
typedef int32 (*NPP_WriteReadyUPP)(NPP instance,NPStream*);
typedef int32 (*NPP_WriteUPP)(NPP,NPStream*,int32,int32,void*);
typedef void (*NPP_StreamAsFileUPP)(NPP,NPStream*,const char*);
typedef void (*NPP_PrintUPP)(NPP,NPPrint*);
typedef int16 (*NPP_HandleEventUPP)(NPP,void*);
typedef void (*NPP_URLNotifyUPP)(NPP,const char*,NPReason,void*);
typedef NPError (*NPP_GetValueUPP)(NPP,NPPVariable,void*);
typedef NPError (*NPP_SetValueUPP)(NPP,NPNVariable,void*);
typedef NPError (*NPN_GetValueUPP)(NPP,NPNVariable,void*);
typedef NPError (*NPN_SetValueUPP)(NPP,NPPVariable,void*);
typedef NPError (*NPN_GetURLNotifyUPP)(NPP,const char*,const char*,void*);
typedef NPError (*NPN_PostURLNotifyUPP)(NPP,const char*,const char*,uint32,const char*,NPBool,void*);
typedef NPError (*NPN_GetURLUPP)(NPP,const char*,const char*);
typedef NPError (*NPN_PostURLUPP)(NPP,const char*,const char*,uint32,const char*,NPBool);
typedef NPError (*NPN_RequestReadUPP)(NPStream*,NPByteRange*);
typedef NPError (*NPN_NewStreamUPP)(NPP,NPMIMEType,const char*,NPStream**);
typedef int32 (*NPN_WriteUPP)(NPP,NPStream*,int32,void*);
typedef NPError (*NPN_DestroyStreamUPP)(NPP,NPStream*,NPReason);
typedef void (*NPN_StatusUPP)(NPP instance, const char*);
typedef const char* (*NPN_UserAgentUPP)(NPP);
typedef void* (*NPN_MemAllocUPP)(uint32);
typedef void (*NPN_MemFreeUPP)(void*);
typedef uint32 (*NPN_MemFlushUPP)(uint32);
typedef void (*NPN_ReloadPluginsUPP)(NPBool);
typedef JRIEnv* (*NPN_GetJavaEnvUPP)(void);
typedef jref (*NPN_GetJavaPeerUPP)(NPP);
typedef void (*NPN_InvalidateRectUPP)(NPP,NPRect*);
typedef void (*NPN_InvalidateRegionUPP)(NPP,NPRegion);
typedef void (*NPN_ForceRedrawUPP)(NPP);
typedef struct _NPPluginFuncs {
uint16 size;
uint16 version;
NPP_NewUPP newp;
NPP_DestroyUPP destroy;
NPP_SetWindowUPP setwindow;
NPP_NewStreamUPP newstream;
NPP_DestroyStreamUPP destroystream;
NPP_StreamAsFileUPP asfile;
NPP_WriteReadyUPP writeready;
NPP_WriteUPP write;
NPP_PrintUPP print;
NPP_HandleEventUPP event;
NPP_URLNotifyUPP urlnotify;
JRIGlobalRef javaClass;
NPP_GetValueUPP getvalue;
NPP_SetValueUPP setvalue;
} NPPluginFuncs;
typedef struct _NPNetscapeFuncs {
uint16 size;
uint16 version;
NPN_GetURLUPP geturl;
NPN_PostURLUPP posturl;
NPN_RequestReadUPP requestread;
NPN_NewStreamUPP newstream;
NPN_WriteUPP write;
NPN_DestroyStreamUPP destroystream;
NPN_StatusUPP status;
NPN_UserAgentUPP uagent;
NPN_MemAllocUPP memalloc;
NPN_MemFreeUPP memfree;
NPN_MemFlushUPP memflush;
NPN_ReloadPluginsUPP reloadplugins;
NPN_GetJavaEnvUPP getJavaEnv;
NPN_GetJavaPeerUPP getJavaPeer;
NPN_GetURLNotifyUPP geturlnotify;
NPN_PostURLNotifyUPP posturlnotify;
NPN_GetValueUPP getvalue;
NPN_SetValueUPP setvalue;
NPN_InvalidateRectUPP invalidaterect;
NPN_InvalidateRegionUPP invalidateregion;
NPN_ForceRedrawUPP forceredraw;
} NPNetscapeFuncs;
#endif // NPAPIDEFS_H