WebBrowser/JavaScript/ExternalJsObject.py

branch
QtWebEngine
changeset 4745
285bfd224a1b
parent 4744
ad3f6c1caf8d
child 4749
750577d35452
diff -r ad3f6c1caf8d -r 285bfd224a1b WebBrowser/JavaScript/ExternalJsObject.py
--- a/WebBrowser/JavaScript/ExternalJsObject.py	Wed Feb 17 19:49:51 2016 +0100
+++ b/WebBrowser/JavaScript/ExternalJsObject.py	Thu Feb 18 20:19:33 2016 +0100
@@ -15,10 +15,12 @@
 
 from __future__ import unicode_literals
 
-from PyQt5.QtCore import QObject
+from PyQt5.QtCore import pyqtSlot, QObject, QUrl
 
 from .AutoFillJsObject import AutoFillJsObject
 
+import WebBrowser.WebBrowserWindow
+
 
 class ExternalJsObject(QObject):
     """
@@ -45,6 +47,7 @@
         """
         return self.__page
     
+    @pyqtSlot(result=QObject)
     def speedDial(self):
         """
         Public method returning a reference to a speed dial object.
@@ -59,6 +62,7 @@
 ##        return WebBrowser.WebBrowserWindow.WebBrowserWindow.speedDial()
         return None
     
+    @pyqtSlot(result=QObject)
     def autoFill(self):
         """
         Public method returning a reference to the auto fill object.
@@ -68,11 +72,16 @@
         """
         return self.__autoFill
     
-    # TODO: OpenSearch
-##void ExternalJsObject::AddSearchProvider(const QString &engineUrl)
-##{ Slot
-##    mApp->searchEnginesManager()->addEngine(QUrl(engineUrl));
-##}
+    @pyqtSlot(str)
+    def AddSearchProvider(self, engineUrl):
+        """
+        Public slot to add a search provider.
+        
+        @param engineUrl engineUrl of the XML file defining the search provider
+        @type str
+        """
+        WebBrowser.WebBrowserWindow.WebBrowserWindow.openSearchManager()\
+        .addEngine(QUrl(engineUrl))
 ##
 ##int ExternalJsObject::IsSearchProviderInstalled(const QString &engineURL)
 ##{ Slot

eric ide

mercurial