Helpviewer/HelpLanguagesDialog.py

changeset 2999
28c75409a78f
parent 2302
f29e9405c851
child 3034
7ce719013078
child 3057
10516539f238
equal deleted inserted replaced
2998:95581102e03e 2999:28c75409a78f
28 super().__init__(parent) 28 super().__init__(parent)
29 self.setupUi(self) 29 self.setupUi(self)
30 30
31 self.__model = QStringListModel() 31 self.__model = QStringListModel()
32 self.languagesList.setModel(self.__model) 32 self.languagesList.setModel(self.__model)
33 self.languagesList.selectionModel().currentChanged.connect(self.__currentChanged) 33 self.languagesList.selectionModel().currentChanged.connect(
34 self.__currentChanged)
34 35
35 languages = Preferences.toList(Preferences.Prefs.settings.value( 36 languages = Preferences.toList(Preferences.Prefs.settings.value(
36 "Help/AcceptLanguages", self.defaultAcceptLanguages())) 37 "Help/AcceptLanguages", self.defaultAcceptLanguages()))
37 self.__model.setStringList(languages) 38 self.__model.setStringList(languages)
38 39
51 @param previous index of the previously selected item (QModelIndex) 52 @param previous index of the previously selected item (QModelIndex)
52 """ 53 """
53 self.removeButton.setEnabled(current.isValid()) 54 self.removeButton.setEnabled(current.isValid())
54 row = current.row() 55 row = current.row()
55 self.upButton.setEnabled(row > 0) 56 self.upButton.setEnabled(row > 0)
56 self.downButton.setEnabled(row != -1 and row < self.__model.rowCount() - 1) 57 self.downButton.setEnabled(
58 row != -1 and row < self.__model.rowCount() - 1)
57 59
58 @pyqtSlot() 60 @pyqtSlot()
59 def on_upButton_clicked(self): 61 def on_upButton_clicked(self):
60 """ 62 """
61 Private slot to move a language up. 63 Private slot to move a language up.
80 self.languagesList.setCurrentIndex(self.__model.index(currentRow + 1)) 82 self.languagesList.setCurrentIndex(self.__model.index(currentRow + 1))
81 83
82 @pyqtSlot() 84 @pyqtSlot()
83 def on_removeButton_clicked(self): 85 def on_removeButton_clicked(self):
84 """ 86 """
85 Private slot to remove a language from the list of acceptable languages. 87 Private slot to remove a language from the list of acceptable
88 languages.
86 """ 89 """
87 currentRow = self.languagesList.currentIndex().row() 90 currentRow = self.languagesList.currentIndex().row()
88 self.__model.removeRow(currentRow) 91 self.__model.removeRow(currentRow)
89 92
90 @pyqtSlot() 93 @pyqtSlot()
114 super().accept() 117 super().accept()
115 118
116 @classmethod 119 @classmethod
117 def httpString(cls, languages): 120 def httpString(cls, languages):
118 """ 121 """
119 Class method to convert a list of acceptable languages into a byte array that 122 Class method to convert a list of acceptable languages into a byte
120 can be sent along with the Accept-Language http header (see RFC 2616). 123 array.
124
125 The byte array can be sent along with the Accept-Language http header
126 (see RFC 2616).
121 127
122 @param languages list of acceptable languages (list of strings) 128 @param languages list of acceptable languages (list of strings)
123 @return converted list (QByteArray) 129 @return converted list (QByteArray)
124 """ 130 """
125 processed = [] 131 processed = []
166 allLanguages.append(languageString) 172 allLanguages.append(languageString)
167 for country in countries: 173 for country in countries:
168 languageString = "{0}/{1} [{2}]"\ 174 languageString = "{0}/{1} [{2}]"\
169 .format(QLocale.languageToString(language), 175 .format(QLocale.languageToString(language),
170 QLocale.countryToString(country), 176 QLocale.countryToString(country),
171 '-'.join(QLocale(language, country).name().split('_')).lower()) 177 '-'.join(QLocale(language, country).name()
178 .split('_')).lower())
172 if languageString not in allLanguages: 179 if languageString not in allLanguages:
173 allLanguages.append(languageString) 180 allLanguages.append(languageString)
174 181
175 return allLanguages 182 return allLanguages

eric ide

mercurial