73 #if (((NP_VERSION_MAJOR << 8) + NP_VERSION_MINOR) < 20)
76 #include <npfunctions.h>
86 #define PLUGINDEBUGSTR(msg) fprintf(stderr, "%s\n", msg)
88 #define PLUGINDEBUGSTR(msg)
110 NPN_Version(
int* plugin_major,
int* plugin_minor,
111 int* netscape_major,
int* netscape_minor)
113 *plugin_major = NP_VERSION_MAJOR;
114 *plugin_minor = NP_VERSION_MINOR;
117 *netscape_major = gNetscapeFuncs.version >> 8;
119 *netscape_minor = gNetscapeFuncs.version & 0xFF;
123 NPN_PluginThreadAsyncCall(
NPP plugin,
124 void (*func)(
void *),
127 #if (((NP_VERSION_MAJOR << 8) + NP_VERSION_MINOR) >= 20)
128 return (*gNetscapeFuncs.pluginthreadasynccall)(plugin, func, userData);
133 NPN_GetValue(
NPP instance, NPNVariable variable,
void *r_value)
135 #if (((NP_VERSION_MAJOR << 8) + NP_VERSION_MINOR) < 20)
136 return CallNPN_GetValueProc(gNetscapeFuncs.getvalue,
137 instance, variable, r_value);
139 return (*gNetscapeFuncs.getvalue)(instance, variable, r_value);
144 NPN_SetValue(
NPP instance, NPPVariable variable,
void *value)
146 #if (((NP_VERSION_MAJOR << 8) + NP_VERSION_MINOR) < 20)
147 return CallNPN_SetValueProc(gNetscapeFuncs.setvalue,
148 instance, variable, value);
150 return (*gNetscapeFuncs.setvalue)(instance, variable, value);
155 NPN_GetURL(
NPP instance,
const char* url,
const char* window)
157 #if (((NP_VERSION_MAJOR << 8) + NP_VERSION_MINOR) < 20)
158 return CallNPN_GetURLProc(gNetscapeFuncs.geturl, instance, url, window);
160 return (*gNetscapeFuncs.geturl)(instance, url, window);
165 NPN_GetURLNotify(
NPP instance,
const char* url,
const char* window,
void* notifyData)
167 #if (((NP_VERSION_MAJOR << 8) + NP_VERSION_MINOR) < 20)
168 return CallNPN_GetURLNotifyProc(gNetscapeFuncs.geturlnotify, instance, url, window, notifyData);
170 return (*gNetscapeFuncs.geturlnotify)(instance, url, window, notifyData);
175 NPN_PostURL(
NPP instance,
const char* url,
const char* window,
176 uint32_t len,
const char* buf, NPBool file)
178 #if (((NP_VERSION_MAJOR << 8) + NP_VERSION_MINOR) < 20)
179 return CallNPN_PostURLProc(gNetscapeFuncs.posturl, instance,
180 url, window, len, buf, file);
182 return (*gNetscapeFuncs.posturl)(instance, url, window, len, buf, file);
187 NPN_PostURLNotify(
NPP instance,
const char* url,
const char* window, uint32_t len,
188 const char* buf, NPBool file,
void* notifyData)
190 #if (((NP_VERSION_MAJOR << 8) + NP_VERSION_MINOR) < 20)
191 return CallNPN_PostURLNotifyProc(gNetscapeFuncs.posturlnotify,
192 instance, url, window, len, buf, file, notifyData);
194 return (*gNetscapeFuncs.posturlnotify)(instance, url, window, len, buf, file, notifyData);
202 #if (((NP_VERSION_MAJOR << 8) + NP_VERSION_MINOR) < 20)
203 return CallNPN_RequestReadProc(gNetscapeFuncs.requestread,
206 return (*gNetscapeFuncs.requestread)(stream, rangeList);
211 NPN_NewStream(
NPP instance, NPMIMEType type,
const char *window,
214 #if (((NP_VERSION_MAJOR << 8) + NP_VERSION_MINOR) < 20)
215 return CallNPN_NewStreamProc(gNetscapeFuncs.newstream, instance,
216 type, window, stream_ptr);
218 return (*gNetscapeFuncs.newstream)(instance, type, window, stream_ptr);
223 NPN_Write(
NPP instance,
NPStream* stream, int32_t len,
void* buffer)
225 #if (((NP_VERSION_MAJOR << 8) + NP_VERSION_MINOR) < 20)
226 return CallNPN_WriteProc(gNetscapeFuncs.write, instance,
227 stream, len, buffer);
229 return (*gNetscapeFuncs.write)(instance, stream, len, buffer);
234 NPN_DestroyStream(
NPP instance,
NPStream* stream, NPError reason)
236 #if (((NP_VERSION_MAJOR << 8) + NP_VERSION_MINOR) < 20)
237 return CallNPN_DestroyStreamProc(gNetscapeFuncs.destroystream,
238 instance, stream, reason);
240 return (*gNetscapeFuncs.destroystream)(instance, stream, reason);
245 NPN_Status(
NPP instance,
const char* message)
247 #if (((NP_VERSION_MAJOR << 8) + NP_VERSION_MINOR) < 20)
248 CallNPN_StatusProc(gNetscapeFuncs.status, instance, message);
250 (*gNetscapeFuncs.status)(instance, message);
255 NPN_UserAgent(
NPP instance)
257 #if (((NP_VERSION_MAJOR << 8) + NP_VERSION_MINOR) < 20)
258 return CallNPN_UserAgentProc(gNetscapeFuncs.uagent, instance);
260 return (*gNetscapeFuncs.uagent)(instance);
264 void *NPN_MemAlloc(uint32_t size)
266 #if (((NP_VERSION_MAJOR << 8) + NP_VERSION_MINOR) < 20)
267 return CallNPN_MemAllocProc(gNetscapeFuncs.memalloc, size);
269 return (*gNetscapeFuncs.memalloc)(size);
273 void NPN_MemFree(
void* ptr)
275 #if (((NP_VERSION_MAJOR << 8) + NP_VERSION_MINOR) < 20)
276 CallNPN_MemFreeProc(gNetscapeFuncs.memfree, ptr);
278 (*gNetscapeFuncs.memfree)(ptr);
282 uint32_t NPN_MemFlush(uint32_t size)
284 #if (((NP_VERSION_MAJOR << 8) + NP_VERSION_MINOR) < 20)
285 return CallNPN_MemFlushProc(gNetscapeFuncs.memflush, size);
287 return (*gNetscapeFuncs.memflush)(size);
291 void NPN_ReloadPlugins(NPBool reloadPages)
293 #if (((NP_VERSION_MAJOR << 8) + NP_VERSION_MINOR) < 20)
294 CallNPN_ReloadPluginsProc(gNetscapeFuncs.reloadplugins, reloadPages);
296 (*gNetscapeFuncs.reloadplugins)(reloadPages);
301 JRIEnv* NPN_GetJavaEnv()
303 #if (((NP_VERSION_MAJOR << 8) + NP_VERSION_MINOR) < 20)
304 return CallNPN_GetJavaEnvProc(gNetscapeFuncs.getJavaEnv);
306 return (JRIEnv*) (*gNetscapeFuncs.getJavaEnv);
310 jref NPN_GetJavaPeer(
NPP instance)
312 #if (((NP_VERSION_MAJOR << 8) + NP_VERSION_MINOR) < 20)
313 return CallNPN_GetJavaPeerProc(gNetscapeFuncs.getJavaPeer,
316 return (*gNetscapeFuncs.getJavaPeer)(instance);
322 NPN_InvalidateRect(
NPP instance,
NPRect *invalidRect)
324 #if (((NP_VERSION_MAJOR << 8) + NP_VERSION_MINOR) < 20)
325 CallNPN_InvalidateRectProc(gNetscapeFuncs.invalidaterect, instance,
328 (*gNetscapeFuncs.invalidaterect)(instance, invalidRect);
333 NPN_InvalidateRegion(
NPP instance, NPRegion invalidRegion)
335 #if (((NP_VERSION_MAJOR << 8) + NP_VERSION_MINOR) < 20)
336 CallNPN_InvalidateRegionProc(gNetscapeFuncs.invalidateregion, instance,
339 (*gNetscapeFuncs.invalidateregion)(instance, invalidRegion);
344 NPN_ForceRedraw(
NPP instance)
346 #if (((NP_VERSION_MAJOR << 8) + NP_VERSION_MINOR) < 20)
347 CallNPN_ForceRedrawProc(gNetscapeFuncs.forceredraw, instance);
349 (*gNetscapeFuncs.forceredraw)(instance);
353 void NPN_PushPopupsEnabledState(
NPP instance, NPBool enabled)
355 #if (((NP_VERSION_MAJOR << 8) + NP_VERSION_MINOR) < 20)
356 CallNPN_PushPopupsEnabledStateProc(gNetscapeFuncs.pushpopupsenabledstate,
359 (*gNetscapeFuncs.pushpopupsenabledstate)(instance, enabled);
363 void NPN_PopPopupsEnabledState(
NPP instance)
365 #if (((NP_VERSION_MAJOR << 8) + NP_VERSION_MINOR) < 20)
366 CallNPN_PopPopupsEnabledStateProc(gNetscapeFuncs.poppopupsenabledstate,
369 (*gNetscapeFuncs.poppopupsenabledstate)(instance);
373 NPIdentifier NPN_GetStringIdentifier(
const NPUTF8 *name)
375 int minor = gNetscapeFuncs.version & 0xFF;
378 #if (((NP_VERSION_MAJOR << 8) + NP_VERSION_MINOR) < 20)
379 return CallNPN_GetStringIdentifierProc(
380 gNetscapeFuncs.getstringidentifier, name);
382 return (*gNetscapeFuncs.getstringidentifier)(name);
388 void NPN_GetStringIdentifiers(
const NPUTF8 **names, int32_t nameCount,
389 NPIdentifier *identifiers)
391 int minor = gNetscapeFuncs.version & 0xFF;
394 #if (((NP_VERSION_MAJOR << 8) + NP_VERSION_MINOR) < 20)
395 CallNPN_GetStringIdentifiersProc(gNetscapeFuncs.getstringidentifiers,
396 names, nameCount, identifiers);
398 (*gNetscapeFuncs.getstringidentifiers)(names, nameCount, identifiers);
403 NPIdentifier NPN_GetIntIdentifier(int32_t intid)
405 int minor = gNetscapeFuncs.version & 0xFF;
408 #if (((NP_VERSION_MAJOR << 8) + NP_VERSION_MINOR) < 20)
409 return CallNPN_GetIntIdentifierProc(gNetscapeFuncs.getintidentifier, intid);
411 return (*gNetscapeFuncs.getintidentifier)(intid);
417 bool NPN_IdentifierIsString(NPIdentifier identifier)
419 int minor = gNetscapeFuncs.version & 0xFF;
422 #if (((NP_VERSION_MAJOR << 8) + NP_VERSION_MINOR) < 20)
423 return CallNPN_IdentifierIsStringProc(
424 gNetscapeFuncs.identifierisstring,
427 return (*gNetscapeFuncs.identifierisstring)(identifier);
433 NPUTF8 *NPN_UTF8FromIdentifier(NPIdentifier identifier)
435 int minor = gNetscapeFuncs.version & 0xFF;
438 #if (((NP_VERSION_MAJOR << 8) + NP_VERSION_MINOR) < 20)
439 return CallNPN_UTF8FromIdentifierProc(
440 gNetscapeFuncs.utf8fromidentifier,
443 return (*gNetscapeFuncs.utf8fromidentifier)(identifier);
449 int32_t NPN_IntFromIdentifier(NPIdentifier identifier)
451 int minor = gNetscapeFuncs.version & 0xFF;
454 #if (((NP_VERSION_MAJOR << 8) + NP_VERSION_MINOR) < 20)
455 return CallNPN_IntFromIdentifierProc(
456 gNetscapeFuncs.intfromidentifier,
459 return (*gNetscapeFuncs.intfromidentifier)(identifier);
467 int minor = gNetscapeFuncs.version & 0xFF;
469 #if (((NP_VERSION_MAJOR << 8) + NP_VERSION_MINOR) < 20)
470 return CallNPN_CreateObjectProc(gNetscapeFuncs.createobject, npp, aClass);
472 return (*gNetscapeFuncs.createobject)(npp, aClass);
479 int minor = gNetscapeFuncs.version & 0xFF;
481 #if (((NP_VERSION_MAJOR << 8) + NP_VERSION_MINOR) < 20)
482 return CallNPN_RetainObjectProc(gNetscapeFuncs.retainobject, obj);
484 return (*gNetscapeFuncs.retainobject)(obj);
489 void NPN_ReleaseObject(
NPObject *obj)
491 int minor = gNetscapeFuncs.version & 0xFF;
493 #if (((NP_VERSION_MAJOR << 8) + NP_VERSION_MINOR) < 20)
494 CallNPN_ReleaseObjectProc(gNetscapeFuncs.releaseobject, obj);
496 (*gNetscapeFuncs.releaseobject)(obj);
500 bool NPN_Invoke(
NPP npp,
NPObject* obj, NPIdentifier methodName,
503 int minor = gNetscapeFuncs.version & 0xFF;
505 #if (((NP_VERSION_MAJOR << 8) + NP_VERSION_MINOR) < 20)
506 return CallNPN_InvokeProc(gNetscapeFuncs.invoke, npp, obj, methodName,
507 args, argCount, result);
509 return (*gNetscapeFuncs.invoke)(npp, obj, methodName, args, argCount, result);
517 int minor = gNetscapeFuncs.version & 0xFF;
519 #if (((NP_VERSION_MAJOR << 8) + NP_VERSION_MINOR) < 20)
520 return CallNPN_InvokeDefaultProc(gNetscapeFuncs.invokeDefault, npp, obj,
521 args, argCount, result);
523 return (*gNetscapeFuncs.invokeDefault)(npp, obj, args, argCount, result);
531 int minor = gNetscapeFuncs.version & 0xFF;
533 #if (((NP_VERSION_MAJOR << 8) + NP_VERSION_MINOR) < 20)
534 return CallNPN_EvaluateProc(gNetscapeFuncs.evaluate, npp, obj,
537 return (*gNetscapeFuncs.evaluate)(npp, obj, script, result);
542 bool NPN_GetProperty(
NPP npp,
NPObject* obj, NPIdentifier propertyName,
545 int minor = gNetscapeFuncs.version & 0xFF;
547 #if (((NP_VERSION_MAJOR << 8) + NP_VERSION_MINOR) < 20)
548 return CallNPN_GetPropertyProc(gNetscapeFuncs.getproperty, npp, obj,
549 propertyName, result);
551 return (*gNetscapeFuncs.getproperty)(npp, obj, propertyName, result);
556 bool NPN_SetProperty(
NPP npp,
NPObject* obj, NPIdentifier propertyName,
559 int minor = gNetscapeFuncs.version & 0xFF;
561 #if (((NP_VERSION_MAJOR << 8) + NP_VERSION_MINOR) < 20)
562 return CallNPN_SetPropertyProc(gNetscapeFuncs.setproperty, npp, obj,
563 propertyName, value);
565 return (*gNetscapeFuncs.setproperty)(npp, obj, propertyName, value);
570 bool NPN_RemoveProperty(
NPP npp,
NPObject* obj, NPIdentifier propertyName)
572 int minor = gNetscapeFuncs.version & 0xFF;
574 #if (((NP_VERSION_MAJOR << 8) + NP_VERSION_MINOR) < 20)
575 return CallNPN_RemovePropertyProc(gNetscapeFuncs.removeproperty, npp, obj,
578 return (*gNetscapeFuncs.removeproperty)(npp, obj, propertyName);
583 bool NPN_HasProperty(
NPP npp,
NPObject* obj, NPIdentifier propertyName)
585 int minor = gNetscapeFuncs.version & 0xFF;
587 #if (((NP_VERSION_MAJOR << 8) + NP_VERSION_MINOR) < 20)
588 return CallNPN_HasPropertyProc(gNetscapeFuncs.hasproperty, npp, obj,
591 return (*gNetscapeFuncs.hasproperty)(npp, obj, propertyName);
596 bool NPN_HasMethod(
NPP npp,
NPObject* obj, NPIdentifier methodName)
598 int minor = gNetscapeFuncs.version & 0xFF;
600 #if (((NP_VERSION_MAJOR << 8) + NP_VERSION_MINOR) < 20)
601 return CallNPN_HasMethodProc(gNetscapeFuncs.hasmethod, npp,
604 return (*gNetscapeFuncs.hasmethod)(npp, obj, methodName);
609 void NPN_ReleaseVariantValue(
NPVariant *variant)
611 int minor = gNetscapeFuncs.version & 0xFF;
613 #if (((NP_VERSION_MAJOR << 8) + NP_VERSION_MINOR) < 20)
614 CallNPN_ReleaseVariantValueProc(gNetscapeFuncs.releasevariantvalue, variant);
616 (*gNetscapeFuncs.releasevariantvalue)(variant);
620 void NPN_SetException(
NPObject* obj,
const NPUTF8 *message)
622 int minor = gNetscapeFuncs.version & 0xFF;
624 #if (((NP_VERSION_MAJOR << 8) + NP_VERSION_MINOR) < 20)
625 CallNPN_SetExceptionProc(gNetscapeFuncs.setexception, obj, message);
627 (*gNetscapeFuncs.setexception)(obj, message);
643 NPError Private_New(NPMIMEType pluginType,
NPP instance, uint16_t mode,
644 int16_t argc,
char* argn[],
char* argv[],
NPSavedData* saved);
646 NPError Private_SetWindow(
NPP instance,
NPWindow* window);
647 NPError Private_NewStream(
NPP instance, NPMIMEType type,
NPStream* stream,
648 NPBool seekable, uint16_t* stype);
649 int32_t Private_WriteReady(
NPP instance,
NPStream* stream);
650 int32_t Private_Write(
NPP instance,
NPStream* stream, int32_t offset,
651 int32_t len,
void* buffer);
652 void Private_StreamAsFile(
NPP instance,
NPStream* stream,
const char* fname);
653 NPError Private_DestroyStream(
NPP instance,
NPStream* stream, NPError reason);
654 void Private_URLNotify(
NPP instance,
const char* url,
655 NPReason reason,
void* notifyData);
656 void Private_Print(
NPP instance,
NPPrint* platformPrint);
657 NPError Private_GetValue(
NPP instance, NPPVariable variable,
void *r_value);
658 NPError Private_SetValue(
NPP instance, NPPVariable variable,
void *r_value);
660 JRIGlobalRef Private_GetJavaClass(
void);
665 Private_New(NPMIMEType pluginType,
NPP instance, uint16_t mode,
666 int16_t argc,
char* argn[],
char* argv[],
NPSavedData* saved)
669 PLUGINDEBUGSTR(
"New");
670 ret = NPP_New(pluginType, instance, mode, argc, argn, argv, saved);
677 PLUGINDEBUGSTR(
"Destroy");
678 return NPP_Destroy(instance, save);
685 PLUGINDEBUGSTR(
"SetWindow");
686 err = NPP_SetWindow(instance, window);
691 Private_NewStream(
NPP instance, NPMIMEType type,
NPStream* stream,
692 NPBool seekable, uint16_t* stype)
695 PLUGINDEBUGSTR(
"NewStream");
696 err = NPP_NewStream(instance, type, stream, seekable, stype);
704 PLUGINDEBUGSTR(
"WriteReady");
705 result = NPP_WriteReady(instance, stream);
710 Private_Write(
NPP instance,
NPStream* stream, int32_t offset, int32_t len,
714 PLUGINDEBUGSTR(
"Write");
715 result = NPP_Write(instance, stream, offset, len, buffer);
720 Private_StreamAsFile(
NPP instance,
NPStream* stream,
const char* fname)
722 PLUGINDEBUGSTR(
"StreamAsFile");
723 NPP_StreamAsFile(instance, stream, fname);
728 Private_DestroyStream(
NPP instance,
NPStream* stream, NPError reason)
731 PLUGINDEBUGSTR(
"DestroyStream");
732 err = NPP_DestroyStream(instance, stream, reason);
737 Private_URLNotify(
NPP instance,
const char* url,
738 NPReason reason,
void* notifyData)
740 PLUGINDEBUGSTR(
"URLNotify");
741 NPP_URLNotify(instance, url, reason, notifyData);
745 Private_Print(
NPP instance,
NPPrint* platformPrint)
747 PLUGINDEBUGSTR(
"Print");
748 NPP_Print(instance, platformPrint);
752 Private_GetValue(
NPP instance, NPPVariable variable,
void *r_value)
754 PLUGINDEBUGSTR(
"GetValue");
755 return NPP_GetValue(instance, variable, r_value);
759 Private_SetValue(
NPP instance, NPPVariable variable,
void *r_value)
761 PLUGINDEBUGSTR(
"SetValue");
762 return NPP_SetValue(instance, variable, r_value);
767 Private_GetJavaClass(
void)
769 jref clazz = NPP_GetJavaClass();
771 JRIEnv* env = NPN_GetJavaEnv();
772 return JRI_NewGlobalRef(env, clazz);
795 NP_GetMIMEDescription(
void)
797 return NPP_GetMIMEDescription();
807 NP_GetValue(
void* future, NPPVariable variable,
void *value)
809 return NPP_GetValue(future, variable, value);
832 NPError err = NPERR_NO_ERROR;
834 PLUGINDEBUGSTR(
"NP_Initialize");
837 if ((nsTable == NULL) || (pluginFuncs == NULL))
838 err = NPERR_INVALID_FUNCTABLE_ERROR;
848 if (err == NPERR_NO_ERROR) {
849 if ((nsTable->version >> 8) > NP_VERSION_MAJOR)
850 err = NPERR_INCOMPATIBLE_VERSION_ERROR;
851 if (nsTable->size < ((
char *)&nsTable->posturlnotify - (
char *)nsTable))
852 err = NPERR_INVALID_FUNCTABLE_ERROR;
854 err = NPERR_INVALID_FUNCTABLE_ERROR;
857 if (err == NPERR_NO_ERROR)
866 int minor = nsTable->version & 0xFF;
868 gNetscapeFuncs.version = nsTable->version;
869 gNetscapeFuncs.size = nsTable->size;
870 gNetscapeFuncs.posturl = nsTable->posturl;
871 gNetscapeFuncs.geturl = nsTable->geturl;
872 gNetscapeFuncs.requestread = nsTable->requestread;
873 gNetscapeFuncs.newstream = nsTable->newstream;
874 gNetscapeFuncs.write = nsTable->write;
875 gNetscapeFuncs.destroystream = nsTable->destroystream;
876 gNetscapeFuncs.status = nsTable->status;
877 gNetscapeFuncs.uagent = nsTable->uagent;
878 gNetscapeFuncs.memalloc = nsTable->memalloc;
879 gNetscapeFuncs.memfree = nsTable->memfree;
880 gNetscapeFuncs.memflush = nsTable->memflush;
881 gNetscapeFuncs.reloadplugins = nsTable->reloadplugins;
882 #if (((NP_VERSION_MAJOR << 8) + NP_VERSION_MINOR) >= 20)
883 gNetscapeFuncs.pluginthreadasynccall =
884 nsTable->pluginthreadasynccall;
887 if( minor >= NPVERS_HAS_LIVECONNECT )
889 gNetscapeFuncs.getJavaEnv = nsTable->getJavaEnv;
890 gNetscapeFuncs.getJavaPeer = nsTable->getJavaPeer;
893 gNetscapeFuncs.getvalue = nsTable->getvalue;
894 gNetscapeFuncs.setvalue = nsTable->setvalue;
896 if( minor >= NPVERS_HAS_NOTIFICATION )
898 gNetscapeFuncs.geturlnotify = nsTable->geturlnotify;
899 gNetscapeFuncs.posturlnotify = nsTable->posturlnotify;
902 if (nsTable->size >= ((
char *)&nsTable->setexception - (
char *)nsTable))
904 gNetscapeFuncs.invalidaterect = nsTable->invalidaterect;
905 gNetscapeFuncs.invalidateregion = nsTable->invalidateregion;
906 gNetscapeFuncs.forceredraw = nsTable->forceredraw;
910 gNetscapeFuncs.getstringidentifier = nsTable->getstringidentifier;
911 gNetscapeFuncs.getstringidentifiers = nsTable->getstringidentifiers;
912 gNetscapeFuncs.getintidentifier = nsTable->getintidentifier;
913 gNetscapeFuncs.identifierisstring = nsTable->identifierisstring;
914 gNetscapeFuncs.utf8fromidentifier = nsTable->utf8fromidentifier;
915 gNetscapeFuncs.intfromidentifier = nsTable->intfromidentifier;
916 gNetscapeFuncs.createobject = nsTable->createobject;
917 gNetscapeFuncs.retainobject = nsTable->retainobject;
918 gNetscapeFuncs.releaseobject = nsTable->releaseobject;
919 gNetscapeFuncs.invoke = nsTable->invoke;
920 gNetscapeFuncs.invokeDefault = nsTable->invokeDefault;
921 gNetscapeFuncs.evaluate = nsTable->evaluate;
922 gNetscapeFuncs.getproperty = nsTable->getproperty;
923 gNetscapeFuncs.setproperty = nsTable->setproperty;
924 gNetscapeFuncs.removeproperty = nsTable->removeproperty;
925 gNetscapeFuncs.hasproperty = nsTable->hasproperty;
926 gNetscapeFuncs.hasmethod = nsTable->hasmethod;
927 gNetscapeFuncs.releasevariantvalue = nsTable->releasevariantvalue;
928 gNetscapeFuncs.setexception = nsTable->setexception;
933 gNetscapeFuncs.invalidaterect = NULL;
934 gNetscapeFuncs.invalidateregion = NULL;
935 gNetscapeFuncs.forceredraw = NULL;
936 gNetscapeFuncs.getstringidentifier = NULL;
937 gNetscapeFuncs.getstringidentifiers = NULL;
938 gNetscapeFuncs.getintidentifier = NULL;
939 gNetscapeFuncs.identifierisstring = NULL;
940 gNetscapeFuncs.utf8fromidentifier = NULL;
941 gNetscapeFuncs.intfromidentifier = NULL;
942 gNetscapeFuncs.createobject = NULL;
943 gNetscapeFuncs.retainobject = NULL;
944 gNetscapeFuncs.releaseobject = NULL;
945 gNetscapeFuncs.invoke = NULL;
946 gNetscapeFuncs.invokeDefault = NULL;
947 gNetscapeFuncs.evaluate = NULL;
948 gNetscapeFuncs.getproperty = NULL;
949 gNetscapeFuncs.setproperty = NULL;
950 gNetscapeFuncs.removeproperty = NULL;
951 gNetscapeFuncs.hasproperty = NULL;
952 gNetscapeFuncs.releasevariantvalue = NULL;
953 gNetscapeFuncs.setexception = NULL;
956 ((
char *)&nsTable->poppopupsenabledstate - (
char *)nsTable))
958 gNetscapeFuncs.pushpopupsenabledstate = nsTable->pushpopupsenabledstate;
959 gNetscapeFuncs.poppopupsenabledstate = nsTable->poppopupsenabledstate;
963 gNetscapeFuncs.pushpopupsenabledstate = NULL;
964 gNetscapeFuncs.poppopupsenabledstate = NULL;
973 pluginFuncs->version = (NP_VERSION_MAJOR << 8) + NP_VERSION_MINOR;
975 #if (((NP_VERSION_MAJOR << 8) + NP_VERSION_MINOR) < 20)
976 pluginFuncs->newp = NewNPP_NewProc(Private_New);
977 pluginFuncs->destroy = NewNPP_DestroyProc(Private_Destroy);
978 pluginFuncs->setwindow = NewNPP_SetWindowProc(Private_SetWindow);
979 pluginFuncs->newstream = NewNPP_NewStreamProc(Private_NewStream);
980 pluginFuncs->destroystream = NewNPP_DestroyStreamProc(Private_DestroyStream);
981 pluginFuncs->asfile = NewNPP_StreamAsFileProc(Private_StreamAsFile);
982 pluginFuncs->writeready = NewNPP_WriteReadyProc(Private_WriteReady);
983 pluginFuncs->write = NewNPP_WriteProc(Private_Write);
984 pluginFuncs->print = NewNPP_PrintProc(Private_Print);
985 pluginFuncs->getvalue = NewNPP_GetValueProc(Private_GetValue);
986 pluginFuncs->setvalue = NewNPP_SetValueProc(Private_SetValue);
988 pluginFuncs->newp = (NPP_NewProcPtr)(Private_New);
989 pluginFuncs->destroy = (NPP_DestroyProcPtr)(Private_Destroy);
990 pluginFuncs->setwindow = (NPP_SetWindowProcPtr)(Private_SetWindow);
991 pluginFuncs->newstream = (NPP_NewStreamProcPtr)(Private_NewStream);
992 pluginFuncs->destroystream = (NPP_DestroyStreamProcPtr)(Private_DestroyStream);
993 pluginFuncs->asfile = (NPP_StreamAsFileProcPtr)(Private_StreamAsFile);
994 pluginFuncs->writeready = (NPP_WriteReadyProcPtr)(Private_WriteReady);
995 pluginFuncs->write = (NPP_WriteProcPtr)(Private_Write);
996 pluginFuncs->print = (NPP_PrintProcPtr)(Private_Print);
997 pluginFuncs->getvalue = (NPP_GetValueProcPtr)(Private_GetValue);
998 pluginFuncs->setvalue = (NPP_SetValueProcPtr)(Private_SetValue);
1000 pluginFuncs->event = NULL;
1001 if( minor >= NPVERS_HAS_NOTIFICATION )
1003 #if (((NP_VERSION_MAJOR << 8) + NP_VERSION_MINOR) < 20)
1004 pluginFuncs->urlnotify = NewNPP_URLNotifyProc(Private_URLNotify);
1006 pluginFuncs->urlnotify = (NPP_URLNotifyProcPtr)(Private_URLNotify);
1010 if( minor >= NPVERS_HAS_LIVECONNECT )
1011 pluginFuncs->javaClass = Private_GetJavaClass();
1013 pluginFuncs->javaClass = NULL;
1015 pluginFuncs->javaClass = NULL;
1035 PLUGINDEBUGSTR(
"NP_Shutdown");
1038 return NPERR_NO_ERROR;