Je rencontre un problème d'association d'une méthode invoquée dans un plugin que j'écris avec l'instance de plugin appropriée. La documentation au http://developer.mozilla.org/en/Gecko_Plugin_API_Reference/Scripting_plugins ne donne pas assez d'informations pour être vraiment utile à ce sujet. En un mot, j'essaie de comprendre quel objet scriptable le plugin devrait retourner en réponse à un appel à NPP_GetValue avec l'argument variable égal à NPPpluginScriptableNPObject. Je devine qu'il devrait y avoir une instance de NPObject pour chaque instance du plugin, mais comment la méthode invoke() dans le NPClass est-elle supposée trouver l'instance de plugin (NPP) du NPObject scriptable donné comme argument? Je suppose que je pourrais implémenter une table de consultation pour faire cela, mais j'ai le sentiment qu'il y a quelque chose qui me manque.Comment associer une instance de plugin Mozilla scriptable à son NObject?
Je stocke un pointeur vers une instance d'une classe C++ (l'instance implémente la fonctionnalité du plugin) dans le membre pdata de la NPP, dans NPP_New().
Vous avez essentiellement frappé sur elle. Vous pouvez utiliser votre propre objet qui étend NPObject si vous voulez, pour le rendre un peu plus agréable et OO. Vous pouvez trouver un bon exemple dans le projet FireBreath, que je vous recommande également de consulter. voir http://code.google.com/p/firebreath/source/browse/src/NpapiPlugin/NPJavascriptObject.h – taxilian