src/eric7/WebBrowser/WebBrowserLanguagesDialog.py

branch
eric7
changeset 9221
bf71ee032bb4
parent 9209
b99e7fd55fd3
child 9413
80c06d472826
--- a/src/eric7/WebBrowser/WebBrowserLanguagesDialog.py	Wed Jul 13 11:16:20 2022 +0200
+++ b/src/eric7/WebBrowser/WebBrowserLanguagesDialog.py	Wed Jul 13 14:55:47 2022 +0200
@@ -19,24 +19,29 @@
     """
     Class implementing a dialog to configure the preferred languages.
     """
+
     def __init__(self, parent=None):
         """
         Constructor
-        
+
         @param parent reference to the parent widget (QWidget)
         """
         super().__init__(parent)
         self.setupUi(self)
-        
+
         self.__model = QStringListModel()
         self.languagesList.setModel(self.__model)
         self.languagesList.selectionModel().currentChanged.connect(
-            self.__currentChanged)
-        
-        languages = Preferences.toList(Preferences.getSettings().value(
-            "WebBrowser/AcceptLanguages", self.defaultAcceptLanguages()))
+            self.__currentChanged
+        )
+
+        languages = Preferences.toList(
+            Preferences.getSettings().value(
+                "WebBrowser/AcceptLanguages", self.defaultAcceptLanguages()
+            )
+        )
         self.__model.setStringList(languages)
-        
+
         allLanguages = []
         for language in QLocale.Language:
             if language == QLocale.Language.C:
@@ -45,19 +50,18 @@
         self.__allLanguagesModel = QStringListModel()
         self.__allLanguagesModel.setStringList(allLanguages)
         self.addCombo.setModel(self.__allLanguagesModel)
-    
+
     def __currentChanged(self, current, previous):
         """
         Private slot to handle a change of the current selection.
-        
+
         @param current index of the currently selected item (QModelIndex)
         @param previous index of the previously selected item (QModelIndex)
         """
         self.removeButton.setEnabled(current.isValid())
         row = current.row()
         self.upButton.setEnabled(row > 0)
-        self.downButton.setEnabled(
-            row != -1 and row < self.__model.rowCount() - 1)
+        self.downButton.setEnabled(row != -1 and row < self.__model.rowCount() - 1)
 
     @pyqtSlot()
     def on_upButton_clicked(self):
@@ -70,7 +74,7 @@
         self.__model.insertRow(currentRow - 1)
         self.__model.setData(self.__model.index(currentRow - 1), data)
         self.languagesList.setCurrentIndex(self.__model.index(currentRow - 1))
-    
+
     @pyqtSlot()
     def on_downButton_clicked(self):
         """
@@ -82,7 +86,7 @@
         self.__model.insertRow(currentRow + 1)
         self.__model.setData(self.__model.index(currentRow + 1), data)
         self.languagesList.setCurrentIndex(self.__model.index(currentRow + 1))
-    
+
     @pyqtSlot()
     def on_removeButton_clicked(self):
         """
@@ -91,7 +95,7 @@
         """
         currentRow = self.languagesList.currentIndex().row()
         self.__model.removeRow(currentRow)
-    
+
     @pyqtSlot()
     def on_addButton_clicked(self):
         """
@@ -100,13 +104,13 @@
         language = self.addCombo.currentText()
         if language in self.__model.stringList():
             return
-        
+
         self.__model.insertRow(self.__model.rowCount())
-        self.__model.setData(self.__model.index(self.__model.rowCount() - 1),
-                             language)
+        self.__model.setData(self.__model.index(self.__model.rowCount() - 1), language)
         self.languagesList.setCurrentIndex(
-            self.__model.index(self.__model.rowCount() - 1))
-    
+            self.__model.index(self.__model.rowCount() - 1)
+        )
+
     def accept(self):
         """
         Public method to accept the data entered.
@@ -115,42 +119,41 @@
         if result == self.defaultAcceptLanguages():
             Preferences.getSettings().remove("WebBrowser/AcceptLanguages")
         else:
-            Preferences.getSettings().setValue(
-                "WebBrowser/AcceptLanguages", result)
+            Preferences.getSettings().setValue("WebBrowser/AcceptLanguages", result)
         super().accept()
-    
+
     @classmethod
     def httpString(cls, languages):
         """
         Class method to convert a list of acceptable languages into a
         byte array.
-       
+
         The byte array can be sent along with the Accept-Language http header
         (see RFC 2616).
-        
+
         @param languages list of acceptable languages (list of strings)
         @return converted list (QByteArray)
         """
         processed = []
         qvalue = 1.0
         for language in languages:
-            leftBracket = language.find('[')
-            rightBracket = language.find(']')
-            tag = language[leftBracket + 1:rightBracket]
+            leftBracket = language.find("[")
+            rightBracket = language.find("]")
+            tag = language[leftBracket + 1 : rightBracket]
             if not processed:
                 processed.append(tag)
             else:
                 processed.append("{0};q={1:.1f}".format(tag, qvalue))
             if qvalue > 0.1:
                 qvalue -= 0.1
-        
+
         return ", ".join(processed)
-    
+
     @classmethod
     def defaultAcceptLanguages(cls):
         """
         Class method to get the list of default accept languages.
-        
+
         @return list of acceptable languages (list of strings)
         """
         language = QLocale.system().name()
@@ -158,35 +161,34 @@
             return []
         else:
             return cls.expand(QLocale(language).language())
-    
+
     @classmethod
     def expand(cls, language):
         """
         Class method to expand a language enum to a readable languages
         list.
-        
+
         @param language language number (QLocale.Language)
         @return list of expanded language names (list of strings)
         """
         allLanguages = []
-        countries = [loc.country() for loc in QLocale.matchingLocales(
-            language, QLocale.Script.AnyScript, QLocale.Country.AnyCountry)]
-        languageString = (
-            "{0} [{1}]"
-        ).format(
-            QLocale.languageToString(language),
-            QLocale(language).name().split('_')[0]
+        countries = [
+            loc.country()
+            for loc in QLocale.matchingLocales(
+                language, QLocale.Script.AnyScript, QLocale.Country.AnyCountry
+            )
+        ]
+        languageString = ("{0} [{1}]").format(
+            QLocale.languageToString(language), QLocale(language).name().split("_")[0]
         )
         allLanguages.append(languageString)
         for country in countries:
-            languageString = (
-                "{0}/{1} [{2}]"
-            ).format(
+            languageString = ("{0}/{1} [{2}]").format(
                 QLocale.languageToString(language),
                 QLocale.countryToString(country),
-                '-'.join(QLocale(language, country).name().split('_')).lower()
+                "-".join(QLocale(language, country).name().split("_")).lower(),
             )
             if languageString not in allLanguages:
                 allLanguages.append(languageString)
-        
+
         return allLanguages

eric ide

mercurial