Plugins/WizardPlugins/QRegularExpressionWizard/QRegularExpressionWizardCharactersDialog.py

branch
Py2 comp.
changeset 3057
10516539f238
parent 2847
1843ef6e2656
parent 3005
3953ddfb991d
child 3058
0a02c433f52d
equal deleted inserted replaced
3056:9986ec0e559a 3057:10516539f238
8 """ 8 """
9 9
10 from __future__ import unicode_literals # __IGNORE_WARNING__ 10 from __future__ import unicode_literals # __IGNORE_WARNING__
11 11
12 from PyQt4.QtCore import QRegExp 12 from PyQt4.QtCore import QRegExp
13 from PyQt4.QtGui import QWidget, QDialog, QVBoxLayout, QHBoxLayout, QScrollArea, \ 13 from PyQt4.QtGui import QWidget, QDialog, QVBoxLayout, QHBoxLayout, \
14 QPushButton, QSpacerItem, QSizePolicy, QComboBox, QRegExpValidator, QLineEdit, QLabel 14 QScrollArea, QPushButton, QSpacerItem, QSizePolicy, QComboBox, \
15 QRegExpValidator, QLineEdit, QLabel
15 16
16 from .Ui_QRegularExpressionWizardCharactersDialog import \ 17 from .Ui_QRegularExpressionWizardCharactersDialog import \
17 Ui_QRegularExpressionWizardCharactersDialog 18 Ui_QRegularExpressionWizardCharactersDialog
18 19
19 20
90 hlayout0.setObjectName("hlayout0") 91 hlayout0.setObjectName("hlayout0")
91 self.moreSinglesButton = QPushButton(self.trUtf8("Additional Entries"), 92 self.moreSinglesButton = QPushButton(self.trUtf8("Additional Entries"),
92 self.singlesBox) 93 self.singlesBox)
93 self.moreSinglesButton.setObjectName("moreSinglesButton") 94 self.moreSinglesButton.setObjectName("moreSinglesButton")
94 hlayout0.addWidget(self.moreSinglesButton) 95 hlayout0.addWidget(self.moreSinglesButton)
95 hspacer0 = QSpacerItem(30, 20, QSizePolicy.Expanding, QSizePolicy.Minimum) 96 hspacer0 = QSpacerItem(
97 30, 20, QSizePolicy.Expanding, QSizePolicy.Minimum)
96 hlayout0.addItem(hspacer0) 98 hlayout0.addItem(hspacer0)
97 self.singlesBoxLayout.addLayout(hlayout0) 99 self.singlesBoxLayout.addLayout(hlayout0)
98 self.moreSinglesButton.clicked[()].connect(self.__addSinglesLine) 100 self.moreSinglesButton.clicked[()].connect(self.__addSinglesLine)
99 101
100 # generate dialog part for character ranges 102 # generate dialog part for character ranges
124 hlayout1.setObjectName("hlayout1") 126 hlayout1.setObjectName("hlayout1")
125 self.moreRangesButton = QPushButton(self.trUtf8("Additional Entries"), 127 self.moreRangesButton = QPushButton(self.trUtf8("Additional Entries"),
126 self.rangesBox) 128 self.rangesBox)
127 self.moreSinglesButton.setObjectName("moreRangesButton") 129 self.moreSinglesButton.setObjectName("moreRangesButton")
128 hlayout1.addWidget(self.moreRangesButton) 130 hlayout1.addWidget(self.moreRangesButton)
129 hspacer1 = QSpacerItem(30, 20, QSizePolicy.Expanding, QSizePolicy.Minimum) 131 hspacer1 = QSpacerItem(
132 30, 20, QSizePolicy.Expanding, QSizePolicy.Minimum)
130 hlayout1.addItem(hspacer1) 133 hlayout1.addItem(hspacer1)
131 self.rangesBoxLayout.addLayout(hlayout1) 134 self.rangesBoxLayout.addLayout(hlayout1)
132 self.moreRangesButton.clicked[()].connect(self.__addRangesLine) 135 self.moreRangesButton.clicked[()].connect(self.__addRangesLine)
133 136
134 def __initCharacterSelectors(self): 137 def __initCharacterSelectors(self):
176 (self.trUtf8("Other, Private Use"), "Co"), 179 (self.trUtf8("Other, Private Use"), "Co"),
177 (self.trUtf8("Other, Surrogat"), "Cn"), 180 (self.trUtf8("Other, Surrogat"), "Cn"),
178 ) 181 )
179 182
180 self.__specialCharacterCategories = ( 183 self.__specialCharacterCategories = (
181 # display name code 184 # display name code
182 (self.trUtf8("Alphanumeric"), "Xan"), 185 (self.trUtf8("Alphanumeric"), "Xan"),
183 (self.trUtf8("POSIX Space"), "Xps"), 186 (self.trUtf8("POSIX Space"), "Xps"),
184 (self.trUtf8("Perl Space"), "Xsp"), 187 (self.trUtf8("Perl Space"), "Xsp"),
185 (self.trUtf8("Universal Character"), "Xuc"), 188 (self.trUtf8("Universal Character"), "Xuc"),
186 (self.trUtf8("Perl Word"), "Xan"), 189 (self.trUtf8("Perl Word"), "Xan"),
187 ) 190 )
188 191
189 self.__characterBlocks = ( 192 self.__characterBlocks = (
190 # display name code 193 # display name code
191 (self.trUtf8("Arabic"), "Arabic"), 194 (self.trUtf8("Arabic"), "Arabic"),
192 (self.trUtf8("Armenian"), "Armenian"), 195 (self.trUtf8("Armenian"), "Armenian"),
193 (self.trUtf8("Avestan"), "Avestan"), 196 (self.trUtf8("Avestan"), "Avestan"),
194 (self.trUtf8("Balinese"), "Balinese"), 197 (self.trUtf8("Balinese"), "Balinese"),
195 (self.trUtf8("Bamum"), "Bamum"), 198 (self.trUtf8("Bamum"), "Bamum"),
196 (self.trUtf8("Batak"), "Batak"), 199 (self.trUtf8("Batak"), "Batak"),
197 (self.trUtf8("Bengali"), "Bengali"), 200 (self.trUtf8("Bengali"), "Bengali"),
198 (self.trUtf8("Bopomofo"), "Bopomofo"), 201 (self.trUtf8("Bopomofo"), "Bopomofo"),
199 (self.trUtf8("Brahmi"), "Brahmi"), 202 (self.trUtf8("Brahmi"), "Brahmi"),
200 (self.trUtf8("Braille"), "Braille"), 203 (self.trUtf8("Braille"), "Braille"),
201 (self.trUtf8("Buginese"), "Buginese"), 204 (self.trUtf8("Buginese"), "Buginese"),
202 (self.trUtf8("Buhid"), "Buhid"), 205 (self.trUtf8("Buhid"), "Buhid"),
203 (self.trUtf8("Canadian Aboriginal"), "Canadian_Aboriginal"), 206 (self.trUtf8("Canadian Aboriginal"), "Canadian_Aboriginal"),
204 (self.trUtf8("Carian"), "Carian"), 207 (self.trUtf8("Carian"), "Carian"),
205 (self.trUtf8("Chakma"), "Chakma"), 208 (self.trUtf8("Chakma"), "Chakma"),
206 (self.trUtf8("Cham"), "Cham"), 209 (self.trUtf8("Cham"), "Cham"),
207 (self.trUtf8("Cherokee"), "Cherokee"), 210 (self.trUtf8("Cherokee"), "Cherokee"),
208 (self.trUtf8("Common"), "Common"), 211 (self.trUtf8("Common"), "Common"),
209 (self.trUtf8("Coptic"), "Coptic"), 212 (self.trUtf8("Coptic"), "Coptic"),
210 (self.trUtf8("Cuneiform"), "Cuneiform"), 213 (self.trUtf8("Cuneiform"), "Cuneiform"),
211 (self.trUtf8("Cypriot"), "Cypriot"), 214 (self.trUtf8("Cypriot"), "Cypriot"),
212 (self.trUtf8("Cyrillic"), "Cyrillic"), 215 (self.trUtf8("Cyrillic"), "Cyrillic"),
213 (self.trUtf8("Deseret"), "Deseret,"), 216 (self.trUtf8("Deseret"), "Deseret,"),
214 (self.trUtf8("Devanagari"), "Devanagari"), 217 (self.trUtf8("Devanagari"), "Devanagari"),
215 (self.trUtf8("Egyptian Hieroglyphs"), "Egyptian_Hieroglyphs"), 218 (self.trUtf8("Egyptian Hieroglyphs"), "Egyptian_Hieroglyphs"),
216 (self.trUtf8("Ethiopic"), "Ethiopic"), 219 (self.trUtf8("Ethiopic"), "Ethiopic"),
217 (self.trUtf8("Georgian"), "Georgian"), 220 (self.trUtf8("Georgian"), "Georgian"),
218 (self.trUtf8("Glagolitic"), "Glagolitic"), 221 (self.trUtf8("Glagolitic"), "Glagolitic"),
219 (self.trUtf8("Gothic"), "Gothic"), 222 (self.trUtf8("Gothic"), "Gothic"),
220 (self.trUtf8("Greek"), "Greek"), 223 (self.trUtf8("Greek"), "Greek"),
221 (self.trUtf8("Gujarati"), "Gujarati"), 224 (self.trUtf8("Gujarati"), "Gujarati"),
222 (self.trUtf8("Gurmukhi"), "Gurmukhi"), 225 (self.trUtf8("Gurmukhi"), "Gurmukhi"),
223 (self.trUtf8("Han"), "Han"), 226 (self.trUtf8("Han"), "Han"),
224 (self.trUtf8("Hangul"), "Hangul"), 227 (self.trUtf8("Hangul"), "Hangul"),
225 (self.trUtf8("Hanunoo"), "Hanunoo"), 228 (self.trUtf8("Hanunoo"), "Hanunoo"),
226 (self.trUtf8("Hebrew"), "Hebrew"), 229 (self.trUtf8("Hebrew"), "Hebrew"),
227 (self.trUtf8("Hiragana"), "Hiragana"), 230 (self.trUtf8("Hiragana"), "Hiragana"),
228 (self.trUtf8("Imperial Aramaic"), "Imperial_Aramaic"), 231 (self.trUtf8("Imperial Aramaic"), "Imperial_Aramaic"),
229 (self.trUtf8("Inherited"), "Inherited"), 232 (self.trUtf8("Inherited"), "Inherited"),
230 (self.trUtf8("Inscriptional Pahlavi"), "Inscriptional_Pahlavi"), 233 (self.trUtf8("Inscriptional Pahlavi"), "Inscriptional_Pahlavi"),
231 (self.trUtf8("Inscriptional Parthian"), "Inscriptional_Parthian"), 234 (self.trUtf8("Inscriptional Parthian"), "Inscriptional_Parthian"),
232 (self.trUtf8("Javanese"), "Javanese"), 235 (self.trUtf8("Javanese"), "Javanese"),
233 (self.trUtf8("Kaithi"), "Kaithi"), 236 (self.trUtf8("Kaithi"), "Kaithi"),
234 (self.trUtf8("Kannada"), "Kannada"), 237 (self.trUtf8("Kannada"), "Kannada"),
235 (self.trUtf8("Katakana"), "Katakana"), 238 (self.trUtf8("Katakana"), "Katakana"),
236 (self.trUtf8("Kayah Li"), "Kayah_Li"), 239 (self.trUtf8("Kayah Li"), "Kayah_Li"),
237 (self.trUtf8("Kharoshthi"), "Kharoshthi"), 240 (self.trUtf8("Kharoshthi"), "Kharoshthi"),
238 (self.trUtf8("Khmer"), "Khmer"), 241 (self.trUtf8("Khmer"), "Khmer"),
239 (self.trUtf8("Lao"), "Lao"), 242 (self.trUtf8("Lao"), "Lao"),
240 (self.trUtf8("Latin"), "Latin"), 243 (self.trUtf8("Latin"), "Latin"),
241 (self.trUtf8("Lepcha"), "Lepcha"), 244 (self.trUtf8("Lepcha"), "Lepcha"),
242 (self.trUtf8("Limbu"), "Limbu"), 245 (self.trUtf8("Limbu"), "Limbu"),
243 (self.trUtf8("Linear B"), "Linear_B"), 246 (self.trUtf8("Linear B"), "Linear_B"),
244 (self.trUtf8("Lisu"), "Lisu"), 247 (self.trUtf8("Lisu"), "Lisu"),
245 (self.trUtf8("Lycian"), "Lycian"), 248 (self.trUtf8("Lycian"), "Lycian"),
246 (self.trUtf8("Lydian"), "Lydian"), 249 (self.trUtf8("Lydian"), "Lydian"),
247 (self.trUtf8("Malayalam"), "Malayalam"), 250 (self.trUtf8("Malayalam"), "Malayalam"),
248 (self.trUtf8("Mandaic"), "Mandaic"), 251 (self.trUtf8("Mandaic"), "Mandaic"),
249 (self.trUtf8("Meetei Mayek"), "Meetei_Mayek"), 252 (self.trUtf8("Meetei Mayek"), "Meetei_Mayek"),
250 (self.trUtf8("Meroitic Cursive"), "Meroitic_Cursive"), 253 (self.trUtf8("Meroitic Cursive"), "Meroitic_Cursive"),
251 (self.trUtf8("Meroitic Hieroglyphs"), "Meroitic_Hieroglyphs"), 254 (self.trUtf8("Meroitic Hieroglyphs"), "Meroitic_Hieroglyphs"),
252 (self.trUtf8("Miao"), "Miao"), 255 (self.trUtf8("Miao"), "Miao"),
253 (self.trUtf8("Mongolian"), "Mongolian"), 256 (self.trUtf8("Mongolian"), "Mongolian"),
254 (self.trUtf8("Myanmar"), "Myanmar"), 257 (self.trUtf8("Myanmar"), "Myanmar"),
255 (self.trUtf8("New Tai Lue"), "New_Tai_Lue"), 258 (self.trUtf8("New Tai Lue"), "New_Tai_Lue"),
256 (self.trUtf8("N'Ko"), "Nko"), 259 (self.trUtf8("N'Ko"), "Nko"),
257 (self.trUtf8("Ogham"), "Ogham"), 260 (self.trUtf8("Ogham"), "Ogham"),
258 (self.trUtf8("Old Italic"), "Old_Italic"), 261 (self.trUtf8("Old Italic"), "Old_Italic"),
259 (self.trUtf8("Old Persian"), "Old_Persian"), 262 (self.trUtf8("Old Persian"), "Old_Persian"),
260 (self.trUtf8("Old South Arabian"), "Old_South_Arabian"), 263 (self.trUtf8("Old South Arabian"), "Old_South_Arabian"),
261 (self.trUtf8("Old Turkic"), "Old_Turkic,"), 264 (self.trUtf8("Old Turkic"), "Old_Turkic,"),
262 (self.trUtf8("Ol Chiki"), "Ol_Chiki"), 265 (self.trUtf8("Ol Chiki"), "Ol_Chiki"),
263 (self.trUtf8("Oriya"), "Oriya"), 266 (self.trUtf8("Oriya"), "Oriya"),
264 (self.trUtf8("Osmanya"), "Osmanya"), 267 (self.trUtf8("Osmanya"), "Osmanya"),
265 (self.trUtf8("Phags-pa"), "Phags_Pa"), 268 (self.trUtf8("Phags-pa"), "Phags_Pa"),
266 (self.trUtf8("Phoenician"), "Phoenician"), 269 (self.trUtf8("Phoenician"), "Phoenician"),
267 (self.trUtf8("Rejang"), "Rejang"), 270 (self.trUtf8("Rejang"), "Rejang"),
268 (self.trUtf8("Runic"), "Runic"), 271 (self.trUtf8("Runic"), "Runic"),
269 (self.trUtf8("Samaritan"), "Samaritan"), 272 (self.trUtf8("Samaritan"), "Samaritan"),
270 (self.trUtf8("Saurashtra"), "Saurashtra"), 273 (self.trUtf8("Saurashtra"), "Saurashtra"),
271 (self.trUtf8("Sharada"), "Sharada"), 274 (self.trUtf8("Sharada"), "Sharada"),
272 (self.trUtf8("Shavian"), "Shavian"), 275 (self.trUtf8("Shavian"), "Shavian"),
273 (self.trUtf8("Sinhala"), "Sinhala"), 276 (self.trUtf8("Sinhala"), "Sinhala"),
274 (self.trUtf8("Sora Sompeng"), "Sora_Sompeng"), 277 (self.trUtf8("Sora Sompeng"), "Sora_Sompeng"),
275 (self.trUtf8("Sundanese"), "Sundanese"), 278 (self.trUtf8("Sundanese"), "Sundanese"),
276 (self.trUtf8("Syloti Nagri"), "Syloti_Nagri"), 279 (self.trUtf8("Syloti Nagri"), "Syloti_Nagri"),
277 (self.trUtf8("Syriac"), "Syriac"), 280 (self.trUtf8("Syriac"), "Syriac"),
278 (self.trUtf8("Tagalog"), "Tagalog"), 281 (self.trUtf8("Tagalog"), "Tagalog"),
279 (self.trUtf8("Tagbanwa"), "Tagbanwa"), 282 (self.trUtf8("Tagbanwa"), "Tagbanwa"),
280 (self.trUtf8("Tai Le"), "Tai_Le"), 283 (self.trUtf8("Tai Le"), "Tai_Le"),
281 (self.trUtf8("Tai Tham"), "Tai_Tham"), 284 (self.trUtf8("Tai Tham"), "Tai_Tham"),
282 (self.trUtf8("Tai Viet"), "Tai_Viet"), 285 (self.trUtf8("Tai Viet"), "Tai_Viet"),
283 (self.trUtf8("Takri"), "Takri"), 286 (self.trUtf8("Takri"), "Takri"),
284 (self.trUtf8("Tamil"), "Tamil"), 287 (self.trUtf8("Tamil"), "Tamil"),
285 (self.trUtf8("Telugu"), "Telugu"), 288 (self.trUtf8("Telugu"), "Telugu"),
286 (self.trUtf8("Thaana"), "Thaana"), 289 (self.trUtf8("Thaana"), "Thaana"),
287 (self.trUtf8("Thai"), "Thai"), 290 (self.trUtf8("Thai"), "Thai"),
288 (self.trUtf8("Tibetan"), "Tibetan"), 291 (self.trUtf8("Tibetan"), "Tibetan"),
289 (self.trUtf8("Tifinagh"), "Tifinagh"), 292 (self.trUtf8("Tifinagh"), "Tifinagh"),
290 (self.trUtf8("Ugaritic"), "Ugaritic"), 293 (self.trUtf8("Ugaritic"), "Ugaritic"),
291 (self.trUtf8("Vai"), "Vai"), 294 (self.trUtf8("Vai"), "Vai"),
292 (self.trUtf8("Yi"), "Yi"), 295 (self.trUtf8("Yi"), "Yi"),
293 ) 296 )
294 297
295 self.__posixNamedSets = ( 298 self.__posixNamedSets = (
296 # display name code 299 # display name code
297 (self.trUtf8("Alphanumeric"), "alnum"), 300 (self.trUtf8("Alphanumeric"), "alnum"),
444 lineedit.setValidator(self.charValidator) 447 lineedit.setValidator(self.charValidator)
445 elif format == "-h": 448 elif format == "-h":
446 lineedit.setValidator(self.hexValidator) 449 lineedit.setValidator(self.hexValidator)
447 elif format == "-o": 450 elif format == "-o":
448 lineedit.setValidator(self.octValidator) 451 lineedit.setValidator(self.octValidator)
449 elif format in ["-ccp", "-ccn", "-cbp", "-cbn", "-csp", "-csn", "-psp", "-psn"]: 452 elif format in ["-ccp", "-ccn", "-cbp", "-cbn", "-csp", "-csn",
453 "-psp", "-psn"]:
450 lineedit.setEnabled(False) 454 lineedit.setEnabled(False)
451 lineedit.hide() 455 lineedit.hide()
452 if combo is not None: 456 if combo is not None:
453 combo.show() 457 combo.show()
454 self.__populateCharacterCombo(combo, format) 458 self.__populateCharacterCombo(combo, format)
459 combo.hide() 463 combo.hide()
460 lineedit.clear() 464 lineedit.clear()
461 465
462 def __singlesCharTypeSelected(self, index): 466 def __singlesCharTypeSelected(self, index):
463 """ 467 """
464 Private slot to handle the activated(int) signal of the single chars combo boxes. 468 Private slot to handle the activated(int) signal of the single chars
469 combo boxes.
465 470
466 @param index selected list index (integer) 471 @param index selected list index (integer)
467 """ 472 """
468 combo = self.sender() 473 combo = self.sender()
469 for entriesList in self.singlesEntries: 474 for entriesList in self.singlesEntries:
470 if combo == entriesList[0]: 475 if combo == entriesList[0]:
471 format = combo.itemData(index) 476 format = combo.itemData(index)
472 self.__performSelectedAction(format, entriesList[1], entriesList[2]) 477 self.__performSelectedAction(
478 format, entriesList[1], entriesList[2])
473 break 479 break
474 480
475 def __rangesCharTypeSelected(self, index): 481 def __rangesCharTypeSelected(self, index):
476 """ 482 """
477 Private slot to handle the activated(int) signal of the char ranges combo boxes. 483 Private slot to handle the activated(int) signal of the char ranges
484 combo boxes.
478 485
479 @param index selected list index (integer) 486 @param index selected list index (integer)
480 """ 487 """
481 combo = self.sender() 488 combo = self.sender()
482 for entriesList in self.rangesEntries: 489 for entriesList in self.rangesEntries:
563 regexp += "\\V" 570 regexp += "\\V"
564 571
565 # single characters 572 # single characters
566 for entrieslist in self.singlesEntries: 573 for entrieslist in self.singlesEntries:
567 format = entrieslist[0].itemData(entrieslist[0].currentIndex()) 574 format = entrieslist[0].itemData(entrieslist[0].currentIndex())
568 if format in ["-ccp", "-ccn", "-cbp", "-cbn", "-csp", "-csn", "-psp", "-psn"]: 575 if format in ["-ccp", "-ccn", "-cbp", "-cbn", "-csp", "-csn",
576 "-psp", "-psn"]:
569 char = entrieslist[2].itemData(entrieslist[2].currentIndex()) 577 char = entrieslist[2].itemData(entrieslist[2].currentIndex())
570 else: 578 else:
571 char = entrieslist[1].text() 579 char = entrieslist[1].text()
572 regexp += self.__formatCharacter(char, format) 580 regexp += self.__formatCharacter(char, format)
573 581

eric ide

mercurial