--- a/src/eric7/Preferences/ConfigurationPages/NetworkPage.py Wed Jul 13 11:16:20 2022 +0200 +++ b/src/eric7/Preferences/ConfigurationPages/NetworkPage.py Wed Jul 13 14:55:47 2022 +0200 @@ -23,119 +23,110 @@ """ Class implementing the Network configuration page. """ + def __init__(self, configDialog): """ Constructor - + @param configDialog reference to the configuration dialog (ConfigurationDialog) """ super().__init__() self.setupUi(self) self.setObjectName("NetworkPage") - + self.__configDlg = configDialog self.__displayMode = None self.__webEngine = False - + self.downloadDirPicker.setMode(EricPathPickerModes.DIRECTORY_MODE) - + self.ftpProxyTypeCombo.addItem( - self.tr("No FTP Proxy"), - EricFtpProxyType.NO_PROXY.value) + self.tr("No FTP Proxy"), EricFtpProxyType.NO_PROXY.value + ) self.ftpProxyTypeCombo.addItem( self.tr("No Proxy Authentication required"), - EricFtpProxyType.NON_AUTHORIZING.value) - self.ftpProxyTypeCombo.addItem( - self.tr("User@Server"), - EricFtpProxyType.USER_SERVER.value) + EricFtpProxyType.NON_AUTHORIZING.value, + ) self.ftpProxyTypeCombo.addItem( - self.tr("SITE"), - EricFtpProxyType.SITE.value) - self.ftpProxyTypeCombo.addItem( - self.tr("OPEN"), - EricFtpProxyType.OPEN.value) + self.tr("User@Server"), EricFtpProxyType.USER_SERVER.value + ) + self.ftpProxyTypeCombo.addItem(self.tr("SITE"), EricFtpProxyType.SITE.value) + self.ftpProxyTypeCombo.addItem(self.tr("OPEN"), EricFtpProxyType.OPEN.value) self.ftpProxyTypeCombo.addItem( self.tr("User@Proxyuser@Server"), - EricFtpProxyType.USER_PROXYUSER_SERVER.value) + EricFtpProxyType.USER_PROXYUSER_SERVER.value, + ) self.ftpProxyTypeCombo.addItem( - self.tr("Proxyuser@Server"), - EricFtpProxyType.PROXYUSER_SERVER.value) - self.ftpProxyTypeCombo.addItem( - self.tr("AUTH and RESP"), - EricFtpProxyType.AUTH_RESP.value) + self.tr("Proxyuser@Server"), EricFtpProxyType.PROXYUSER_SERVER.value + ) self.ftpProxyTypeCombo.addItem( - self.tr("Bluecoat Proxy"), - EricFtpProxyType.BLUECOAT.value) - + self.tr("AUTH and RESP"), EricFtpProxyType.AUTH_RESP.value + ) + self.ftpProxyTypeCombo.addItem( + self.tr("Bluecoat Proxy"), EricFtpProxyType.BLUECOAT.value + ) + # set initial values - self.dynamicOnlineCheckBox.setChecked( - Preferences.getUI("DynamicOnlineCheck")) - + self.dynamicOnlineCheckBox.setChecked(Preferences.getUI("DynamicOnlineCheck")) + self.downloadDirPicker.setText(Preferences.getUI("DownloadPath")) self.requestFilenameCheckBox.setChecked( - Preferences.getUI("RequestDownloadFilename")) - + Preferences.getUI("RequestDownloadFilename") + ) + # HTTP proxy - self.httpProxyHostEdit.setText( - Preferences.getUI("ProxyHost/Http")) - self.httpProxyPortSpin.setValue( - Preferences.getUI("ProxyPort/Http")) - + self.httpProxyHostEdit.setText(Preferences.getUI("ProxyHost/Http")) + self.httpProxyPortSpin.setValue(Preferences.getUI("ProxyPort/Http")) + # HTTPS proxy - self.httpsProxyHostEdit.setText( - Preferences.getUI("ProxyHost/Https")) - self.httpsProxyPortSpin.setValue( - Preferences.getUI("ProxyPort/Https")) - + self.httpsProxyHostEdit.setText(Preferences.getUI("ProxyHost/Https")) + self.httpsProxyPortSpin.setValue(Preferences.getUI("ProxyPort/Https")) + # FTP proxy - self.ftpProxyHostEdit.setText( - Preferences.getUI("ProxyHost/Ftp")) - self.ftpProxyPortSpin.setValue( - Preferences.getUI("ProxyPort/Ftp")) + self.ftpProxyHostEdit.setText(Preferences.getUI("ProxyHost/Ftp")) + self.ftpProxyPortSpin.setValue(Preferences.getUI("ProxyPort/Ftp")) self.ftpProxyTypeCombo.setCurrentIndex( - self.ftpProxyTypeCombo.findData( - Preferences.getUI("ProxyType/Ftp").value)) - self.ftpProxyUserEdit.setText( - Preferences.getUI("ProxyUser/Ftp")) - self.ftpProxyPasswordEdit.setText( - Preferences.getUI("ProxyPassword/Ftp")) - self.ftpProxyAccountEdit.setText( - Preferences.getUI("ProxyAccount/Ftp")) - - self.httpProxyForAllCheckBox.setChecked( - Preferences.getUI("UseHttpProxyForAll")) + self.ftpProxyTypeCombo.findData(Preferences.getUI("ProxyType/Ftp").value) + ) + self.ftpProxyUserEdit.setText(Preferences.getUI("ProxyUser/Ftp")) + self.ftpProxyPasswordEdit.setText(Preferences.getUI("ProxyPassword/Ftp")) + self.ftpProxyAccountEdit.setText(Preferences.getUI("ProxyAccount/Ftp")) + + self.httpProxyForAllCheckBox.setChecked(Preferences.getUI("UseHttpProxyForAll")) if not Preferences.getUI("UseProxy"): self.noProxyButton.setChecked(True) elif Preferences.getUI("UseSystemProxy"): self.systemProxyButton.setChecked(True) else: self.manualProxyButton.setChecked(True) - + self.exceptionsEdit.setText( - ", ".join(Preferences.getUI("ProxyExceptions").split(","))) - + ", ".join(Preferences.getUI("ProxyExceptions").split(",")) + ) + def setMode(self, displayMode): """ Public method to perform mode dependent setups. - + @param displayMode mode of the configuration dialog (ConfigurationMode.DEFAULTMODE, ConfigurationMode.WEBBROWSERMODE) """ from ..ConfigurationDialog import ConfigurationMode + if displayMode in ( ConfigurationMode.DEFAULTMODE, - ConfigurationMode.WEBBROWSERMODE + ConfigurationMode.WEBBROWSERMODE, ): self.__displayMode = displayMode if not self.__configDlg.isUsingWebEngine(): self.cleanupGroup.hide() self.displayGroup.hide() else: - policy = Preferences.getWebBrowser( - "DownloadManagerRemovePolicy") + policy = Preferences.getWebBrowser("DownloadManagerRemovePolicy") from WebBrowser.Download.DownloadManager import DownloadManager + if policy == DownloadManager.RemoveNever: self.cleanupNeverButton.setChecked(True) elif policy == DownloadManager.RemoveExit: @@ -143,26 +134,25 @@ else: self.cleanupSuccessfulButton.setChecked(True) self.openOnStartCheckBox.setChecked( - Preferences.getWebBrowser("DownloadManagerAutoOpen")) + Preferences.getWebBrowser("DownloadManagerAutoOpen") + ) self.closeOnFinishedCheckBox.setChecked( - Preferences.getWebBrowser("DownloadManagerAutoClose")) + Preferences.getWebBrowser("DownloadManagerAutoClose") + ) self.__webEngine = True - + def save(self): """ Public slot to save the Networj configuration. """ - Preferences.setUI( - "DynamicOnlineCheck", - self.dynamicOnlineCheckBox.isChecked()) + Preferences.setUI("DynamicOnlineCheck", self.dynamicOnlineCheckBox.isChecked()) + Preferences.setUI("DownloadPath", self.downloadDirPicker.text()) Preferences.setUI( - "DownloadPath", - self.downloadDirPicker.text()) - Preferences.setUI( - "RequestDownloadFilename", - self.requestFilenameCheckBox.isChecked()) + "RequestDownloadFilename", self.requestFilenameCheckBox.isChecked() + ) if self.__webEngine: from WebBrowser.Download.DownloadManager import DownloadManager + if self.cleanupNeverButton.isChecked(): policy = DownloadManager.RemoveNever elif self.cleanupExitButton.isChecked(): @@ -171,63 +161,41 @@ policy = DownloadManager.RemoveSuccessFullDownload Preferences.setWebBrowser("DownloadManagerRemovePolicy", policy) Preferences.setWebBrowser( - "DownloadManagerAutoOpen", - self.openOnStartCheckBox.isChecked()) + "DownloadManagerAutoOpen", self.openOnStartCheckBox.isChecked() + ) Preferences.setWebBrowser( - "DownloadManagerAutoClose", - self.closeOnFinishedCheckBox.isChecked()) - + "DownloadManagerAutoClose", self.closeOnFinishedCheckBox.isChecked() + ) + + Preferences.setUI("UseProxy", not self.noProxyButton.isChecked()) + Preferences.setUI("UseSystemProxy", self.systemProxyButton.isChecked()) Preferences.setUI( - "UseProxy", - not self.noProxyButton.isChecked()) - Preferences.setUI( - "UseSystemProxy", - self.systemProxyButton.isChecked()) - Preferences.setUI( - "UseHttpProxyForAll", - self.httpProxyForAllCheckBox.isChecked()) - + "UseHttpProxyForAll", self.httpProxyForAllCheckBox.isChecked() + ) + Preferences.setUI( "ProxyExceptions", - ",".join( - [h.strip() for h in self.exceptionsEdit.text().split(",")])) - + ",".join([h.strip() for h in self.exceptionsEdit.text().split(",")]), + ) + # HTTP proxy - Preferences.setUI( - "ProxyHost/Http", - self.httpProxyHostEdit.text()) - Preferences.setUI( - "ProxyPort/Http", - self.httpProxyPortSpin.value()) - + Preferences.setUI("ProxyHost/Http", self.httpProxyHostEdit.text()) + Preferences.setUI("ProxyPort/Http", self.httpProxyPortSpin.value()) + # HTTPS proxy - Preferences.setUI( - "ProxyHost/Https", - self.httpsProxyHostEdit.text()) - Preferences.setUI( - "ProxyPort/Https", - self.httpsProxyPortSpin.value()) - + Preferences.setUI("ProxyHost/Https", self.httpsProxyHostEdit.text()) + Preferences.setUI("ProxyPort/Https", self.httpsProxyPortSpin.value()) + # FTP proxy - Preferences.setUI( - "ProxyHost/Ftp", - self.ftpProxyHostEdit.text()) - Preferences.setUI( - "ProxyPort/Ftp", - self.ftpProxyPortSpin.value()) - Preferences.setUI( - "ProxyType/Ftp", - EricFtpProxyType(self.ftpProxyTypeCombo.currentData())) + Preferences.setUI("ProxyHost/Ftp", self.ftpProxyHostEdit.text()) + Preferences.setUI("ProxyPort/Ftp", self.ftpProxyPortSpin.value()) Preferences.setUI( - "ProxyUser/Ftp", - self.ftpProxyUserEdit.text()) - Preferences.setUI( - "ProxyPassword/Ftp", - self.ftpProxyPasswordEdit.text()) - Preferences.setUI( - "ProxyAccount/Ftp", - self.ftpProxyAccountEdit.text()) - + "ProxyType/Ftp", EricFtpProxyType(self.ftpProxyTypeCombo.currentData()) + ) + Preferences.setUI("ProxyUser/Ftp", self.ftpProxyUserEdit.text()) + Preferences.setUI("ProxyPassword/Ftp", self.ftpProxyPasswordEdit.text()) + Preferences.setUI("ProxyAccount/Ftp", self.ftpProxyAccountEdit.text()) + @pyqtSlot() def on_clearProxyPasswordsButton_clicked(self): """ @@ -235,34 +203,35 @@ """ Preferences.setUI("ProxyPassword/Http", "") Preferences.setUI("ProxyPassword/Https", "") - + @pyqtSlot(int) def on_ftpProxyTypeCombo_currentIndexChanged(self, index): """ Private slot handling the selection of a proxy type. - + @param index index of the selected item (integer) """ proxyType = EricFtpProxyType(self.ftpProxyTypeCombo.itemData(index)) - self.ftpProxyHostEdit.setEnabled( - proxyType != EricFtpProxyType.NO_PROXY) - self.ftpProxyPortSpin.setEnabled( - proxyType != EricFtpProxyType.NO_PROXY) + self.ftpProxyHostEdit.setEnabled(proxyType != EricFtpProxyType.NO_PROXY) + self.ftpProxyPortSpin.setEnabled(proxyType != EricFtpProxyType.NO_PROXY) self.ftpProxyUserEdit.setEnabled( - proxyType not in [EricFtpProxyType.NO_PROXY, - EricFtpProxyType.NON_AUTHORIZING]) + proxyType + not in [EricFtpProxyType.NO_PROXY, EricFtpProxyType.NON_AUTHORIZING] + ) self.ftpProxyPasswordEdit.setEnabled( - proxyType not in [EricFtpProxyType.NO_PROXY, - EricFtpProxyType.NON_AUTHORIZING]) + proxyType + not in [EricFtpProxyType.NO_PROXY, EricFtpProxyType.NON_AUTHORIZING] + ) self.ftpProxyAccountEdit.setEnabled( - proxyType not in [EricFtpProxyType.NO_PROXY, - EricFtpProxyType.NON_AUTHORIZING]) - + proxyType + not in [EricFtpProxyType.NO_PROXY, EricFtpProxyType.NON_AUTHORIZING] + ) + def create(dlg): """ Module function to create the configuration page. - + @param dlg reference to the configuration dialog @return reference to the instantiated page (ConfigurationPageBase) """