Fixed an issue with the VirusTotal configuration page calling a wrong VirusTotal API for the web browser NG case.

Sat, 30 Dec 2017 18:10:04 +0100

author
Detlev Offenbach <detlev@die-offenbachs.de>
date
Sat, 30 Dec 2017 18:10:04 +0100
changeset 6041
415d36b1d3a6
parent 6040
dcf8c50ed06a
child 6043
24e02ddacc78

Fixed an issue with the VirusTotal configuration page calling a wrong VirusTotal API for the web browser NG case.

APIs/Python3/eric6.api file | annotate | diff | comparison | revisions
APIs/Python3/eric6.bas file | annotate | diff | comparison | revisions
Documentation/Help/source.qch file | annotate | diff | comparison | revisions
Documentation/Help/source.qhp file | annotate | diff | comparison | revisions
Documentation/Source/eric6.Preferences.ConfigurationPages.HelpVirusTotalPage.html file | annotate | diff | comparison | revisions
Documentation/Source/eric6.Preferences.ConfigurationPages.WebBrowserVirusTotalPage.html file | annotate | diff | comparison | revisions
Documentation/Source/index-eric6.Preferences.ConfigurationPages.html file | annotate | diff | comparison | revisions
Preferences/ConfigurationDialog.py file | annotate | diff | comparison | revisions
Preferences/ConfigurationPages/HelpVirusTotalPage.py file | annotate | diff | comparison | revisions
Preferences/ConfigurationPages/WebBrowserVirusTotalPage.py file | annotate | diff | comparison | revisions
eric6.e4p file | annotate | diff | comparison | revisions
--- a/APIs/Python3/eric6.api	Sun Dec 24 15:19:00 2017 +0100
+++ b/APIs/Python3/eric6.api	Sat Dec 30 18:10:04 2017 +0100
@@ -7463,6 +7463,11 @@
 eric6.Preferences.ConfigurationPages.WebBrowserSpellCheckingPage.WebBrowserSpellCheckingPage.save?4()
 eric6.Preferences.ConfigurationPages.WebBrowserSpellCheckingPage.WebBrowserSpellCheckingPage?1()
 eric6.Preferences.ConfigurationPages.WebBrowserSpellCheckingPage.create?4(dlg)
+eric6.Preferences.ConfigurationPages.WebBrowserVirusTotalPage.WebBrowserVirusTotalPage.on_testButton_clicked?4()
+eric6.Preferences.ConfigurationPages.WebBrowserVirusTotalPage.WebBrowserVirusTotalPage.on_vtServiceKeyEdit_textChanged?4(txt)
+eric6.Preferences.ConfigurationPages.WebBrowserVirusTotalPage.WebBrowserVirusTotalPage.save?4()
+eric6.Preferences.ConfigurationPages.WebBrowserVirusTotalPage.WebBrowserVirusTotalPage?1(parent=None)
+eric6.Preferences.ConfigurationPages.WebBrowserVirusTotalPage.create?4(dlg)
 eric6.Preferences.MouseClickDialog.MouseClickDialog.eventFilter?4(watched, event)
 eric6.Preferences.MouseClickDialog.MouseClickDialog.getClick?4()
 eric6.Preferences.MouseClickDialog.MouseClickDialog.on_clearButton_clicked?4()
--- a/APIs/Python3/eric6.bas	Sun Dec 24 15:19:00 2017 +0100
+++ b/APIs/Python3/eric6.bas	Sat Dec 30 18:10:04 2017 +0100
@@ -984,6 +984,7 @@
 WebBrowserTabBar E5WheelTabBar
 WebBrowserTabWidget E5TabWidget
 WebBrowserView QWebEngineView
+WebBrowserVirusTotalPage ConfigurationPageBase Ui_HelpVirusTotalPage
 WebBrowserWebSearchWidget E5ClearableLineEdit
 WebBrowserWindow E5MainWindow
 WebDatabasesDialog QDialog Ui_WebDatabasesDialog
Binary file Documentation/Help/source.qch has changed
--- a/Documentation/Help/source.qhp	Sun Dec 24 15:19:00 2017 +0100
+++ b/Documentation/Help/source.qhp	Sat Dec 30 18:10:04 2017 +0100
@@ -951,6 +951,7 @@
               <section title="eric6.Preferences.ConfigurationPages.WebBrowserAppearancePage" ref="eric6.Preferences.ConfigurationPages.WebBrowserAppearancePage.html" />
               <section title="eric6.Preferences.ConfigurationPages.WebBrowserPage" ref="eric6.Preferences.ConfigurationPages.WebBrowserPage.html" />
               <section title="eric6.Preferences.ConfigurationPages.WebBrowserSpellCheckingPage" ref="eric6.Preferences.ConfigurationPages.WebBrowserSpellCheckingPage.html" />
+              <section title="eric6.Preferences.ConfigurationPages.WebBrowserVirusTotalPage" ref="eric6.Preferences.ConfigurationPages.WebBrowserVirusTotalPage.html" />
             </section>
             <section title="eric6.Preferences.ConfigurationDialog" ref="eric6.Preferences.ConfigurationDialog.html" />
             <section title="eric6.Preferences.MouseClickDialog" ref="eric6.Preferences.MouseClickDialog.html" />
@@ -17712,6 +17713,13 @@
       <keyword name="WebBrowserView.zoomOut" id="WebBrowserView.zoomOut" ref="eric6.WebBrowser.WebBrowserView.html#WebBrowserView.zoomOut" />
       <keyword name="WebBrowserView.zoomReset" id="WebBrowserView.zoomReset" ref="eric6.WebBrowser.WebBrowserView.html#WebBrowserView.zoomReset" />
       <keyword name="WebBrowserView.zoomValue" id="WebBrowserView.zoomValue" ref="eric6.WebBrowser.WebBrowserView.html#WebBrowserView.zoomValue" />
+      <keyword name="WebBrowserVirusTotalPage" id="WebBrowserVirusTotalPage" ref="eric6.Preferences.ConfigurationPages.WebBrowserVirusTotalPage.html#WebBrowserVirusTotalPage" />
+      <keyword name="WebBrowserVirusTotalPage (Constructor)" id="WebBrowserVirusTotalPage (Constructor)" ref="eric6.Preferences.ConfigurationPages.WebBrowserVirusTotalPage.html#WebBrowserVirusTotalPage.__init__" />
+      <keyword name="WebBrowserVirusTotalPage (Module)" id="WebBrowserVirusTotalPage (Module)" ref="eric6.Preferences.ConfigurationPages.WebBrowserVirusTotalPage.html" />
+      <keyword name="WebBrowserVirusTotalPage.__checkServiceKeyFinished" id="WebBrowserVirusTotalPage.__checkServiceKeyFinished" ref="eric6.Preferences.ConfigurationPages.WebBrowserVirusTotalPage.html#WebBrowserVirusTotalPage.__checkServiceKeyFinished" />
+      <keyword name="WebBrowserVirusTotalPage.on_testButton_clicked" id="WebBrowserVirusTotalPage.on_testButton_clicked" ref="eric6.Preferences.ConfigurationPages.WebBrowserVirusTotalPage.html#WebBrowserVirusTotalPage.on_testButton_clicked" />
+      <keyword name="WebBrowserVirusTotalPage.on_vtServiceKeyEdit_textChanged" id="WebBrowserVirusTotalPage.on_vtServiceKeyEdit_textChanged" ref="eric6.Preferences.ConfigurationPages.WebBrowserVirusTotalPage.html#WebBrowserVirusTotalPage.on_vtServiceKeyEdit_textChanged" />
+      <keyword name="WebBrowserVirusTotalPage.save" id="WebBrowserVirusTotalPage.save" ref="eric6.Preferences.ConfigurationPages.WebBrowserVirusTotalPage.html#WebBrowserVirusTotalPage.save" />
       <keyword name="WebBrowserWebSearchWidget" id="WebBrowserWebSearchWidget" ref="eric6.WebBrowser.WebBrowserWebSearchWidget.html#WebBrowserWebSearchWidget" />
       <keyword name="WebBrowserWebSearchWidget (Constructor)" id="WebBrowserWebSearchWidget (Constructor)" ref="eric6.WebBrowser.WebBrowserWebSearchWidget.html#WebBrowserWebSearchWidget.__init__" />
       <keyword name="WebBrowserWebSearchWidget (Module)" id="WebBrowserWebSearchWidget (Module)" ref="eric6.WebBrowser.WebBrowserWebSearchWidget.html" />
@@ -18361,6 +18369,7 @@
       <keyword name="create" id="create" ref="eric6.Preferences.ConfigurationPages.WebBrowserAppearancePage.html#create" />
       <keyword name="create" id="create" ref="eric6.Preferences.ConfigurationPages.WebBrowserPage.html#create" />
       <keyword name="create" id="create" ref="eric6.Preferences.ConfigurationPages.WebBrowserSpellCheckingPage.html#create" />
+      <keyword name="create" id="create" ref="eric6.Preferences.ConfigurationPages.WebBrowserVirusTotalPage.html#create" />
       <keyword name="createActionGroup" id="createActionGroup" ref="eric6.E5Gui.E5Action.html#createActionGroup" />
       <keyword name="createConfig" id="createConfig" ref="eric6.install.html#createConfig" />
       <keyword name="createConfigurationPage" id="createConfigurationPage" ref="eric6.Plugins.PluginVcsGit.html#createConfigurationPage" />
@@ -19792,6 +19801,7 @@
       <file>eric6.Preferences.ConfigurationPages.WebBrowserAppearancePage.html</file>
       <file>eric6.Preferences.ConfigurationPages.WebBrowserPage.html</file>
       <file>eric6.Preferences.ConfigurationPages.WebBrowserSpellCheckingPage.html</file>
+      <file>eric6.Preferences.ConfigurationPages.WebBrowserVirusTotalPage.html</file>
       <file>eric6.Preferences.MouseClickDialog.html</file>
       <file>eric6.Preferences.PreferencesLexer.html</file>
       <file>eric6.Preferences.ProgramsDialog.html</file>
--- a/Documentation/Source/eric6.Preferences.ConfigurationPages.HelpVirusTotalPage.html	Sun Dec 24 15:19:00 2017 +0100
+++ b/Documentation/Source/eric6.Preferences.ConfigurationPages.HelpVirusTotalPage.html	Sat Dec 30 18:10:04 2017 +0100
@@ -21,7 +21,7 @@
 <body><a NAME="top" ID="top"></a>
 <h1>eric6.Preferences.ConfigurationPages.HelpVirusTotalPage</h1>
 <p>
-Module implementing HelpVirusTotalPage.
+Module implementing VirusTotal configuration page (help viewer variant).
 </p>
 <h3>Global Attributes</h3>
 <table>
@@ -31,7 +31,7 @@
 <table>
 <tr>
 <td><a href="#HelpVirusTotalPage">HelpVirusTotalPage</a></td>
-<td>Class documentation goes here.</td>
+<td>Class implementing VirusTotal configuration page (help viewer variant).</td>
 </tr>
 </table>
 <h3>Functions</h3>
@@ -45,7 +45,7 @@
 <a NAME="HelpVirusTotalPage" ID="HelpVirusTotalPage"></a>
 <h2>HelpVirusTotalPage</h2>
 <p>
-    Class documentation goes here.
+    Class implementing VirusTotal configuration page (help viewer variant).
 </p>
 <h3>Derived from</h3>
 ConfigurationPageBase, Ui_HelpVirusTotalPage
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/Documentation/Source/eric6.Preferences.ConfigurationPages.WebBrowserVirusTotalPage.html	Sat Dec 30 18:10:04 2017 +0100
@@ -0,0 +1,147 @@
+<!DOCTYPE html>
+<html><head>
+<title>eric6.Preferences.ConfigurationPages.WebBrowserVirusTotalPage</title>
+<meta charset="UTF-8">
+<style>
+body {
+    background: #EDECE6;
+    margin: 0em 1em 10em 1em;
+    color: black;
+}
+
+h1 { color: white; background: #85774A; }
+h2 { color: white; background: #85774A; }
+h3 { color: white; background: #9D936E; }
+h4 { color: white; background: #9D936E; }
+    
+a { color: #BA6D36; }
+
+</style>
+</head>
+<body><a NAME="top" ID="top"></a>
+<h1>eric6.Preferences.ConfigurationPages.WebBrowserVirusTotalPage</h1>
+<p>
+Module implementing VirusTotal configuration page (web browser variant).
+</p>
+<h3>Global Attributes</h3>
+<table>
+<tr><td>None</td></tr>
+</table>
+<h3>Classes</h3>
+<table>
+<tr>
+<td><a href="#WebBrowserVirusTotalPage">WebBrowserVirusTotalPage</a></td>
+<td>Class implementing VirusTotal configuration page (web browser variant).</td>
+</tr>
+</table>
+<h3>Functions</h3>
+<table>
+<tr>
+<td><a href="#create">create</a></td>
+<td>Module function to create the configuration page.</td>
+</tr>
+</table>
+<hr /><hr />
+<a NAME="WebBrowserVirusTotalPage" ID="WebBrowserVirusTotalPage"></a>
+<h2>WebBrowserVirusTotalPage</h2>
+<p>
+    Class implementing VirusTotal configuration page (web browser variant).
+</p>
+<h3>Derived from</h3>
+ConfigurationPageBase, Ui_HelpVirusTotalPage
+<h3>Class Attributes</h3>
+<table>
+<tr><td>None</td></tr>
+</table>
+<h3>Class Methods</h3>
+<table>
+<tr><td>None</td></tr>
+</table>
+<h3>Methods</h3>
+<table>
+<tr>
+<td><a href="#WebBrowserVirusTotalPage.__init__">WebBrowserVirusTotalPage</a></td>
+<td>Constructor</td>
+</tr><tr>
+<td><a href="#WebBrowserVirusTotalPage.__checkServiceKeyFinished">__checkServiceKeyFinished</a></td>
+<td>Private slot to receive the result of the service key check.</td>
+</tr><tr>
+<td><a href="#WebBrowserVirusTotalPage.on_testButton_clicked">on_testButton_clicked</a></td>
+<td>Private slot to test the entered service key.</td>
+</tr><tr>
+<td><a href="#WebBrowserVirusTotalPage.on_vtServiceKeyEdit_textChanged">on_vtServiceKeyEdit_textChanged</a></td>
+<td>Private slot to handle changes of the service key.</td>
+</tr><tr>
+<td><a href="#WebBrowserVirusTotalPage.save">save</a></td>
+<td>Public slot to save the VirusTotal configuration.</td>
+</tr>
+</table>
+<h3>Static Methods</h3>
+<table>
+<tr><td>None</td></tr>
+</table>
+<a NAME="WebBrowserVirusTotalPage.__init__" ID="WebBrowserVirusTotalPage.__init__"></a>
+<h4>WebBrowserVirusTotalPage (Constructor)</h4>
+<b>WebBrowserVirusTotalPage</b>(<i>parent=None</i>)
+<p>
+        Constructor
+</p><dl>
+<dt><i>parent</i></dt>
+<dd>
+reference to the parent widget (QWidget)
+</dd>
+</dl><a NAME="WebBrowserVirusTotalPage.__checkServiceKeyFinished" ID="WebBrowserVirusTotalPage.__checkServiceKeyFinished"></a>
+<h4>WebBrowserVirusTotalPage.__checkServiceKeyFinished</h4>
+<b>__checkServiceKeyFinished</b>(<i>result, msg</i>)
+<p>
+        Private slot to receive the result of the service key check.
+</p><dl>
+<dt><i>result</i></dt>
+<dd>
+flag indicating a successful check (boolean)
+</dd><dt><i>msg</i></dt>
+<dd>
+network error message (str)
+</dd>
+</dl><a NAME="WebBrowserVirusTotalPage.on_testButton_clicked" ID="WebBrowserVirusTotalPage.on_testButton_clicked"></a>
+<h4>WebBrowserVirusTotalPage.on_testButton_clicked</h4>
+<b>on_testButton_clicked</b>(<i></i>)
+<p>
+        Private slot to test the entered service key.
+</p><a NAME="WebBrowserVirusTotalPage.on_vtServiceKeyEdit_textChanged" ID="WebBrowserVirusTotalPage.on_vtServiceKeyEdit_textChanged"></a>
+<h4>WebBrowserVirusTotalPage.on_vtServiceKeyEdit_textChanged</h4>
+<b>on_vtServiceKeyEdit_textChanged</b>(<i>txt</i>)
+<p>
+        Private slot to handle changes of the service key.
+</p><dl>
+<dt><i>txt</i></dt>
+<dd>
+entered service key (string)
+</dd>
+</dl><a NAME="WebBrowserVirusTotalPage.save" ID="WebBrowserVirusTotalPage.save"></a>
+<h4>WebBrowserVirusTotalPage.save</h4>
+<b>save</b>(<i></i>)
+<p>
+        Public slot to save the VirusTotal configuration.
+</p>
+<div align="right"><a href="#top">Up</a></div>
+<hr /><hr />
+<a NAME="create" ID="create"></a>
+<h2>create</h2>
+<b>create</b>(<i>dlg</i>)
+<p>
+    Module function to create the configuration page.
+</p><dl>
+<dt><i>dlg</i></dt>
+<dd>
+reference to the configuration dialog
+</dd>
+</dl><dl>
+<dt>Returns:</dt>
+<dd>
+reference to the instantiated page (ConfigurationPageBase)
+</dd>
+</dl>
+<div align="right"><a href="#top">Up</a></div>
+<hr />
+</body></html>
\ No newline at end of file
--- a/Documentation/Source/index-eric6.Preferences.ConfigurationPages.html	Sun Dec 24 15:19:00 2017 +0100
+++ b/Documentation/Source/index-eric6.Preferences.ConfigurationPages.html	Sat Dec 30 18:10:04 2017 +0100
@@ -131,7 +131,7 @@
 <td>Module implementing the Help Viewers configuration page.</td>
 </tr><tr>
 <td><a href="eric6.Preferences.ConfigurationPages.HelpVirusTotalPage.html">HelpVirusTotalPage</a></td>
-<td>Module implementing HelpVirusTotalPage.</td>
+<td>Module implementing VirusTotal configuration page (help viewer variant).</td>
 </tr><tr>
 <td><a href="eric6.Preferences.ConfigurationPages.HelpWebBrowserPage.html">HelpWebBrowserPage</a></td>
 <td>Module implementing the Help web browser configuration page.</td>
@@ -219,6 +219,9 @@
 </tr><tr>
 <td><a href="eric6.Preferences.ConfigurationPages.WebBrowserSpellCheckingPage.html">WebBrowserSpellCheckingPage</a></td>
 <td>Module implementing the Web Browser Spell Checking configuration page.</td>
+</tr><tr>
+<td><a href="eric6.Preferences.ConfigurationPages.WebBrowserVirusTotalPage.html">WebBrowserVirusTotalPage</a></td>
+<td>Module implementing VirusTotal configuration page (web browser variant).</td>
 </tr>
 </table>
 </body></html>
\ No newline at end of file
--- a/Preferences/ConfigurationDialog.py	Sun Dec 24 15:19:00 2017 +0100
+++ b/Preferences/ConfigurationDialog.py	Sat Dec 30 18:10:04 2017 +0100
@@ -346,9 +346,9 @@
                     [self.tr("Flash Cookie Manager"),
                      "flashCookie16.png",
                      "HelpFlashCookieManagerPage", "0webBrowserPage", None],
-                    "helpVirusTotalPage":
+                    "webBrowserVirusTotalPage":
                     [self.tr("VirusTotal Interface"), "virustotal.png",
-                     "HelpVirusTotalPage", "0webBrowserPage", None],
+                     "WebBrowserVirusTotalPage", "0webBrowserPage", None],
                 })
                 if qVersionTuple() >= (5, 8, 0) and PYQT_VERSION >= 0x50800:
                     self.configItems.update({
@@ -469,9 +469,9 @@
                 [self.tr("Flash Cookie Manager"),
                  "flashCookie16.png",
                  "HelpFlashCookieManagerPage", None, None],
-                "helpVirusTotalPage":
+                "webBrowserVirusTotalPage":
                 [self.tr("VirusTotal Interface"), "virustotal.png",
-                 "HelpVirusTotalPage", None, None],
+                 "WebBrowserVirusTotalPage", None, None],
             }
             
             if qVersionTuple() >= (5, 8, 0) and PYQT_VERSION >= 0x50800:
--- a/Preferences/ConfigurationPages/HelpVirusTotalPage.py	Sun Dec 24 15:19:00 2017 +0100
+++ b/Preferences/ConfigurationPages/HelpVirusTotalPage.py	Sat Dec 30 18:10:04 2017 +0100
@@ -4,7 +4,7 @@
 #
 
 """
-Module implementing HelpVirusTotalPage.
+Module implementing VirusTotal configuration page (help viewer variant).
 """
 
 from __future__ import unicode_literals
@@ -19,7 +19,7 @@
 
 class HelpVirusTotalPage(ConfigurationPageBase, Ui_HelpVirusTotalPage):
     """
-    Class documentation goes here.
+    Class implementing VirusTotal configuration page (help viewer variant).
     """
     def __init__(self, parent=None):
         """
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/Preferences/ConfigurationPages/WebBrowserVirusTotalPage.py	Sat Dec 30 18:10:04 2017 +0100
@@ -0,0 +1,117 @@
+# -*- coding: utf-8 -*-
+
+# Copyright (c) 2011 - 2017 Detlev Offenbach <detlev@die-offenbachs.de>
+#
+
+"""
+Module implementing VirusTotal configuration page (web browser variant).
+"""
+
+from __future__ import unicode_literals
+
+from PyQt5.QtCore import pyqtSlot
+
+from .ConfigurationPageBase import ConfigurationPageBase
+from .Ui_HelpVirusTotalPage import Ui_HelpVirusTotalPage
+
+import Preferences
+
+
+class WebBrowserVirusTotalPage(ConfigurationPageBase, Ui_HelpVirusTotalPage):
+    """
+    Class implementing VirusTotal configuration page (web browser variant).
+    """
+    def __init__(self, parent=None):
+        """
+        Constructor
+        
+        @param parent reference to the parent widget (QWidget)
+        """
+        super(WebBrowserVirusTotalPage, self).__init__()
+        self.setupUi(self)
+        self.setObjectName("HelpVirusTotalPage")
+        
+        self.testResultLabel.setHidden(True)
+        
+        from WebBrowser.VirusTotal.VirusTotalApi import VirusTotalAPI
+        self.__vt = VirusTotalAPI(self)
+        self.__vt.checkServiceKeyFinished.connect(
+            self.__checkServiceKeyFinished)
+        
+        # set initial values
+        self.vtEnabledCheckBox.setChecked(
+            Preferences.getHelp("VirusTotalEnabled"))
+        self.vtSecureCheckBox.setChecked(
+            Preferences.getHelp("VirusTotalSecure"))
+        self.vtServiceKeyEdit.setText(
+            Preferences.getHelp("VirusTotalServiceKey"))
+    
+    def save(self):
+        """
+        Public slot to save the VirusTotal configuration.
+        """
+        Preferences.setHelp(
+            "VirusTotalEnabled",
+            self.vtEnabledCheckBox.isChecked())
+        Preferences.setHelp(
+            "VirusTotalSecure",
+            self.vtSecureCheckBox.isChecked())
+        Preferences.setHelp(
+            "VirusTotalServiceKey",
+            self.vtServiceKeyEdit.text())
+    
+    @pyqtSlot(str)
+    def on_vtServiceKeyEdit_textChanged(self, txt):
+        """
+        Private slot to handle changes of the service key.
+        
+        @param txt entered service key (string)
+        """
+        self.testButton.setEnabled(txt != "")
+    
+    @pyqtSlot()
+    def on_testButton_clicked(self):
+        """
+        Private slot to test the entered service key.
+        """
+        self.testResultLabel.setHidden(False)
+        self.testResultLabel.setText(
+            self.tr("Checking validity of the service key..."))
+        if self.vtSecureCheckBox.isChecked():
+            protocol = "https"
+        else:
+            protocol = "http"
+        self.__vt.checkServiceKeyValidity(
+            self.vtServiceKeyEdit.text(), protocol)
+    
+    @pyqtSlot(bool, str)
+    def __checkServiceKeyFinished(self, result, msg):
+        """
+        Private slot to receive the result of the service key check.
+        
+        @param result flag indicating a successful check (boolean)
+        @param msg network error message (str)
+        """
+        if result:
+            self.testResultLabel.setText(
+                self.tr("The service key is valid."))
+        else:
+            if msg == "":
+                self.testResultLabel.setText(self.tr(
+                    '<font color="#FF0000">The service key is'
+                    ' not valid.</font>'))
+            else:
+                self.testResultLabel.setText(self.tr(
+                    '<font color="#FF0000"><b>Error:</b> {0}</font>')
+                    .format(msg))
+    
+
+def create(dlg):
+    """
+    Module function to create the configuration page.
+    
+    @param dlg reference to the configuration dialog
+    @return reference to the instantiated page (ConfigurationPageBase)
+    """
+    page = WebBrowserVirusTotalPage(dlg)
+    return page
--- a/eric6.e4p	Sun Dec 24 15:19:00 2017 +0100
+++ b/eric6.e4p	Sat Dec 30 18:10:04 2017 +0100
@@ -898,6 +898,7 @@
     <Source>Preferences/ConfigurationPages/WebBrowserAppearancePage.py</Source>
     <Source>Preferences/ConfigurationPages/WebBrowserPage.py</Source>
     <Source>Preferences/ConfigurationPages/WebBrowserSpellCheckingPage.py</Source>
+    <Source>Preferences/ConfigurationPages/WebBrowserVirusTotalPage.py</Source>
     <Source>Preferences/ConfigurationPages/__init__.py</Source>
     <Source>Preferences/MouseClickDialog.py</Source>
     <Source>Preferences/PreferencesLexer.py</Source>

eric ide

mercurial