Suite

Plugin QGIS 2.4 Problème d'interface javascript PyQT qWebview

Plugin QGIS 2.4 Problème d'interface javascript PyQT qWebview


J'ai un plugin QGIS qui contient unqtwebviewet la communication Javascript entre la page et le plugin.

Il fonctionne parfaitement avec QGIS 2.2 mais pas avec 2.4 (les deux versions de QGIS partagent le même répertoire de plugin),

Le côté javascript n'est jamais appelé avecévaluerJavaScript()et le côté python n'est jamais invoqué à partir de Javascript non plus.

Qu'est-ce qui pourrait expliquer qu'il fonctionne en 2.2 mais pas en 2.4 ?

def on_loadFinished(self):… def init_Clicked(self,iface): self.ui.webViewResult.page().mainFrame().addToJavaScriptWindowObject("QGISInterface", self.moTAZJsInterface) self.ui.webViewResult.loadFinished.connect(self .on_loadFinished) self.ui.webViewResult.load( QUrl(config["TAZ_URL_INTERFACE"])) self.ui.webViewResult.show();

Voici donc la réponse. Je suppose que cela peut être dû à l'introduction du multithreading dans 2.4.

def on_loadFinished(self): self.ui.webViewResult.page().mainFrame().addToJavaScriptWindowObject("QGISInterface", self.moTAZJsInterface) def init_Clicked(self,iface): self.ui.webViewResult.loadFinished.connect(self. on_loadFinished) self.ui.webViewResult.load( QUrl(config["TAZ_URL_INTERFACE"])) self.ui.webViewResult.show();