npupp.h

来自「SumatraPDF是一款小型开源的pdf阅读工具。虽然玲珑小巧(只有800多K」· C头文件 代码 · 共 1,162 行 · 第 1/3 页

H
1,162
字号
#define CallNPN_UserAgentProc(FUNC, ARG1)               \		(*(FUNC))((ARG1))#endif/* NPN_MemAlloc */#if GENERATINGCFMtypedef UniversalProcPtr NPN_MemAllocUPP;enum {  uppNPN_MemAllocProcInfo = kThinkCStackBased    | STACK_ROUTINE_PARAMETER(1, SIZE_CODE(sizeof(uint32)))    | RESULT_SIZE(SIZE_CODE(sizeof(void *)))};#define NewNPN_MemAllocProc(FUNC)   \    (NPN_MemAllocUPP) NewRoutineDescriptor((ProcPtr)(FUNC), uppNPN_MemAllocProcInfo, GetCurrentArchitecture())#define CallNPN_MemAllocProc(FUNC, ARG1)    \    (void*)CallUniversalProc((UniversalProcPtr)(FUNC), uppNPN_MemAllocProcInfo, (ARG1))#elsetypedef void* (*NPN_MemAllocUPP)(uint32 size);#define NewNPN_MemAllocProc(FUNC)   \    ((NPN_MemAllocUPP) (FUNC))#define CallNPN_MemAllocProc(FUNC, ARG1)    \    (*(FUNC))((ARG1))#endif/* NPN__MemFree */#if GENERATINGCFMtypedef UniversalProcPtr NPN_MemFreeUPP;enum {  uppNPN_MemFreeProcInfo = kThinkCStackBased    | STACK_ROUTINE_PARAMETER(1, SIZE_CODE(sizeof(void *)))};#define NewNPN_MemFreeProc(FUNC)    \    (NPN_MemFreeUPP) NewRoutineDescriptor((ProcPtr)(FUNC), uppNPN_MemFreeProcInfo, GetCurrentArchitecture())#define CallNPN_MemFreeProc(FUNC, ARG1)   \    (void)CallUniversalProc((UniversalProcPtr)(FUNC), uppNPN_MemFreeProcInfo, (ARG1))#elsetypedef void (*NPN_MemFreeUPP)(void* ptr);#define NewNPN_MemFreeProc(FUNC)    \    ((NPN_MemFreeUPP) (FUNC))#define CallNPN_MemFreeProc(FUNC, ARG1)   \    (*(FUNC))((ARG1))#endif/* NPN_MemFlush */#if GENERATINGCFMtypedef UniversalProcPtr NPN_MemFlushUPP;enum {  uppNPN_MemFlushProcInfo = kThinkCStackBased    | STACK_ROUTINE_PARAMETER(1, SIZE_CODE(sizeof(uint32)))    | RESULT_SIZE(SIZE_CODE(sizeof(uint32)))};#define NewNPN_MemFlushProc(FUNC)   \    (NPN_MemFlushUPP) NewRoutineDescriptor((ProcPtr)(FUNC), uppNPN_MemFlushProcInfo, GetCurrentArchitecture())#define CallNPN_MemFlushProc(FUNC, ARG1)    \    (uint32)CallUniversalProc((UniversalProcPtr)(FUNC), uppNPN_MemFlushProcInfo, (ARG1))#elsetypedef uint32 (*NPN_MemFlushUPP)(uint32 size);#define NewNPN_MemFlushProc(FUNC)   \    ((NPN_MemFlushUPP) (FUNC))#define CallNPN_MemFlushProc(FUNC, ARG1)    \    (*(FUNC))((ARG1))#endif/* NPN_ReloadPlugins */#if GENERATINGCFMtypedef UniversalProcPtr NPN_ReloadPluginsUPP;enum {  uppNPN_ReloadPluginsProcInfo = kThinkCStackBased    | STACK_ROUTINE_PARAMETER(1, SIZE_CODE(sizeof(NPBool)))    | RESULT_SIZE(SIZE_CODE(0))};#define NewNPN_ReloadPluginsProc(FUNC)    \    (NPN_ReloadPluginsUPP) NewRoutineDescriptor((ProcPtr)(FUNC), uppNPN_ReloadPluginsProcInfo, GetCurrentArchitecture())#define CallNPN_ReloadPluginsProc(FUNC, ARG1)   \    (void)CallUniversalProc((UniversalProcPtr)(FUNC), uppNPN_ReloadPluginsProcInfo, (ARG1))#elsetypedef void (*NPN_ReloadPluginsUPP)(NPBool reloadPages);#define NewNPN_ReloadPluginsProc(FUNC)    \    ((NPN_ReloadPluginsUPP) (FUNC))#define CallNPN_ReloadPluginsProc(FUNC, ARG1)   \    (*(FUNC))((ARG1))#endif/* NPN_GetJavaEnv */#if GENERATINGCFMtypedef UniversalProcPtr NPN_GetJavaEnvUPP;enum {  uppNPN_GetJavaEnvProcInfo = kThinkCStackBased    | RESULT_SIZE(SIZE_CODE(sizeof(JRIEnv*)))};#define NewNPN_GetJavaEnvProc(FUNC)   \    (NPN_GetJavaEnvUPP) NewRoutineDescriptor((ProcPtr)(FUNC), uppNPN_GetJavaEnvProcInfo, GetCurrentArchitecture())#define CallNPN_GetJavaEnvProc(FUNC)    \    (JRIEnv*)CallUniversalProc((UniversalProcPtr)(FUNC), uppNPN_GetJavaEnvProcInfo)#elsetypedef JRIEnv* (*NPN_GetJavaEnvUPP)(void);#define NewNPN_GetJavaEnvProc(FUNC)   \    ((NPN_GetJavaEnvUPP) (FUNC))#define CallNPN_GetJavaEnvProc(FUNC)    \    (*(FUNC))()#endif/* NPN_GetJavaPeer */#if GENERATINGCFMtypedef UniversalProcPtr NPN_GetJavaPeerUPP;enum {  uppNPN_GetJavaPeerProcInfo = kThinkCStackBased    | STACK_ROUTINE_PARAMETER(1, SIZE_CODE(sizeof(NPP)))    | RESULT_SIZE(SIZE_CODE(sizeof(jref)))};#define NewNPN_GetJavaPeerProc(FUNC)    \    (NPN_GetJavaPeerUPP) NewRoutineDescriptor((ProcPtr)(FUNC), uppNPN_GetJavaPeerProcInfo, GetCurrentArchitecture())#define CallNPN_GetJavaPeerProc(FUNC, ARG1)   \    (jref)CallUniversalProc((UniversalProcPtr)(FUNC), uppNPN_GetJavaPeerProcInfo, (ARG1))#elsetypedef jref (*NPN_GetJavaPeerUPP)(NPP instance);#define NewNPN_GetJavaPeerProc(FUNC)    \    ((NPN_GetJavaPeerUPP) (FUNC))#define CallNPN_GetJavaPeerProc(FUNC, ARG1)   \    (*(FUNC))((ARG1))#endif/* NPN_InvalidateRect */#if GENERATINGCFMtypedef UniversalProcPtr NPN_InvalidateRectUPP;enum {  uppNPN_InvalidateRectProcInfo = kThinkCStackBased    | STACK_ROUTINE_PARAMETER(1, SIZE_CODE(sizeof(NPP)))    | STACK_ROUTINE_PARAMETER(2, SIZE_CODE(sizeof(NPRect *)))    | RESULT_SIZE(SIZE_CODE(0))};#define NewNPN_InvalidateRectProc(FUNC)   \    (NPN_InvalidateRectUPP) NewRoutineDescriptor((ProcPtr)(FUNC), uppNPN_InvalidateRectProcInfo, GetCurrentArchitecture())#define CallNPN_InvalidateRectProc(FUNC, ARG1, ARG2)    \    (void)CallUniversalProc((UniversalProcPtr)(FUNC), uppNPN_InvalidateRectProcInfo, (ARG1), (ARG2))#elsetypedef void (*NPN_InvalidateRectUPP)(NPP instance, NPRect *rect);#define NewNPN_InvalidateRectProc(FUNC)   \    ((NPN_InvalidateRectUPP) (FUNC))#define CallNPN_InvalidateRectProc(FUNC, ARG1, ARG2)    \    (*(FUNC))((ARG1), (ARG2))#endif/* NPN_InvalidateRegion */#if GENERATINGCFMtypedef UniversalProcPtr NPN_InvalidateRegionUPP;enum {  uppNPN_InvalidateRegionProcInfo = kThinkCStackBased    | STACK_ROUTINE_PARAMETER(1, SIZE_CODE(sizeof(NPP)))    | STACK_ROUTINE_PARAMETER(2, SIZE_CODE(sizeof(NPRegion)))    | RESULT_SIZE(SIZE_CODE(0))};#define NewNPN_InvalidateRegionProc(FUNC)   \    (NPN_InvalidateRegionUPP) NewRoutineDescriptor((ProcPtr)(FUNC), uppNPN_InvalidateRegionProcInfo, GetCurrentArchitecture())#define CallNPN_InvalidateRegionProc(FUNC, ARG1, ARG2)    \    (void)CallUniversalProc((UniversalProcPtr)(FUNC), uppNPN_InvalidateRegionProcInfo, (ARG1), (ARG2))#elsetypedef void (*NPN_InvalidateRegionUPP)(NPP instance, NPRegion region);#define NewNPN_InvalidateRegionProc(FUNC)   \    ((NPN_InvalidateRegionUPP) (FUNC))#define CallNPN_InvalidateRegionProc(FUNC, ARG1, ARG2)    \    (*(FUNC))((ARG1), (ARG2))#endif/* NPN_ForceRedraw */#if GENERATINGCFMtypedef UniversalProcPtr NPN_ForceRedrawUPP;enum {  uppNPN_ForceRedrawProcInfo = kThinkCStackBased    | STACK_ROUTINE_PARAMETER(1, SIZE_CODE(sizeof(NPP)))    | RESULT_SIZE(SIZE_CODE(sizeof(0)))};#define NewNPN_ForceRedrawProc(FUNC)    \    (NPN_ForceRedrawUPP) NewRoutineDescriptor((ProcPtr)(FUNC), uppNPN_ForceRedrawProcInfo, GetCurrentArchitecture())#define CallNPN_ForceRedrawProc(FUNC, ARG1)   \    (jref)CallUniversalProc((UniversalProcPtr)(FUNC), uppNPN_ForceRedrawProcInfo, (ARG1))#elsetypedef void (*NPN_ForceRedrawUPP)(NPP instance);#define NewNPN_ForceRedrawProc(FUNC)    \    ((NPN_ForceRedrawUPP) (FUNC))#define CallNPN_ForceRedrawProc(FUNC, ARG1)   \    (*(FUNC))((ARG1))#endif/****************************************************************************************** * The actual plugin function table definitions *******************************************************************************************/#ifdef XP_MAC#pragma align=mac68k#endiftypedef 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;#ifdef XP_MAC#pragma align=reset#endif#ifdef XP_MAC/****************************************************************************************** * Mac platform-specific plugin glue stuff *******************************************************************************************//* * Main entry point of the plugin. * This routine will be called when the plugin is loaded. The function * tables are passed in and the plugin fills in the NPPluginFuncs table * and NPPShutdownUPP for Netscape's use. */#if GENERATINGCFMtypedef UniversalProcPtr NPP_MainEntryUPP;enum {  uppNPP_MainEntryProcInfo = kThinkCStackBased    | STACK_ROUTINE_PARAMETER(1, SIZE_CODE(sizeof(NPNetscapeFuncs*)))    | STACK_ROUTINE_PARAMETER(2, SIZE_CODE(sizeof(NPPluginFuncs*)))    | STACK_ROUTINE_PARAMETER(3, SIZE_CODE(sizeof(NPP_ShutdownUPP*)))    | RESULT_SIZE(SIZE_CODE(sizeof(NPError)))};#define NewNPP_MainEntryProc(FUNC)    \    (NPP_MainEntryUPP) NewRoutineDescriptor((ProcPtr)(FUNC), uppNPP_MainEntryProcInfo, GetCurrentArchitecture())#define CallNPP_MainEntryProc(FUNC,  netscapeFunc, pluginFunc, shutdownUPP)   \    CallUniversalProc((UniversalProcPtr)(FUNC), (ProcInfoType)uppNPP_MainEntryProcInfo, (netscapeFunc), (pluginFunc), (shutdownUPP))#elsetypedef NPError (*NPP_MainEntryUPP)(NPNetscapeFuncs*, NPPluginFuncs*, NPP_ShutdownUPP*);#define NewNPP_MainEntryProc(FUNC)    \    ((NPP_MainEntryUPP) (FUNC))#define CallNPP_MainEntryProc(FUNC,  netscapeFunc, pluginFunc, shutdownUPP)   \    (*(FUNC))((netscapeFunc), (pluginFunc), (shutdownUPP))#endif#endif /* MAC */#ifdef _WINDOWS#ifdef __cplusplusextern "C" {#endif/* plugin meta member functions */NPError WINAPI NP_GetEntryPoints(NPPluginFuncs* pFuncs);NPError WINAPI NP_Initialize(NPNetscapeFuncs* pFuncs);NPError WINAPI NP_Shutdown();#ifdef __cplusplus}#endif#endif /* _WINDOWS */#ifdef XP_UNIX#ifdef __cplusplusextern "C" {#endif/* plugin meta member functions */char* NP_GetMIMEDescription(void);NPError NP_Initialize(NPNetscapeFuncs*, NPPluginFuncs*);NPError NP_Shutdown(void);#ifdef __cplusplus}#endif#endif /* XP_UNIX */#endif /* _NPUPP_H_ */

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?