QScintilla/SpellingDictionaryEditDialog.py

Mon, 25 Mar 2013 03:11:06 +0100

author
T.Rzepka <Tobias.Rzepka@gmail.com>
date
Mon, 25 Mar 2013 03:11:06 +0100
branch
Py2 comp.
changeset 2525
8b507a9a2d40
parent 2302
f29e9405c851
child 3057
10516539f238
permissions
-rw-r--r--

Script changes: Future import added, super calls modified and unicode behavior for str.

2211
86bdcfac4a4a Added a dialog to edit the various spell checking dictionaries.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1 # -*- coding: utf-8 -*-
86bdcfac4a4a Added a dialog to edit the various spell checking dictionaries.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
2
2302
f29e9405c851 Updated copyright for 2013.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2211
diff changeset
3 # Copyright (c) 2012 - 2013 Detlev Offenbach <detlev@die-offenbachs.de>
2211
86bdcfac4a4a Added a dialog to edit the various spell checking dictionaries.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
4 #
86bdcfac4a4a Added a dialog to edit the various spell checking dictionaries.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
5
86bdcfac4a4a Added a dialog to edit the various spell checking dictionaries.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
6 """
86bdcfac4a4a Added a dialog to edit the various spell checking dictionaries.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
7 Module implementing a dialog to edit the various spell checking dictionaries.
86bdcfac4a4a Added a dialog to edit the various spell checking dictionaries.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
8 """
86bdcfac4a4a Added a dialog to edit the various spell checking dictionaries.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
9
2525
8b507a9a2d40 Script changes: Future import added, super calls modified and unicode behavior for str.
T.Rzepka <Tobias.Rzepka@gmail.com>
parents: 2302
diff changeset
10 from __future__ import unicode_literals # __IGNORE_WARNING__
8b507a9a2d40 Script changes: Future import added, super calls modified and unicode behavior for str.
T.Rzepka <Tobias.Rzepka@gmail.com>
parents: 2302
diff changeset
11
2211
86bdcfac4a4a Added a dialog to edit the various spell checking dictionaries.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
12 import os
86bdcfac4a4a Added a dialog to edit the various spell checking dictionaries.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
13
86bdcfac4a4a Added a dialog to edit the various spell checking dictionaries.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
14 from PyQt4.QtCore import pyqtSlot, Qt
86bdcfac4a4a Added a dialog to edit the various spell checking dictionaries.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
15 from PyQt4.QtGui import QDialog, QStringListModel, QSortFilterProxyModel
86bdcfac4a4a Added a dialog to edit the various spell checking dictionaries.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
16
86bdcfac4a4a Added a dialog to edit the various spell checking dictionaries.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
17 from .Ui_SpellingDictionaryEditDialog import Ui_SpellingDictionaryEditDialog
86bdcfac4a4a Added a dialog to edit the various spell checking dictionaries.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
18
86bdcfac4a4a Added a dialog to edit the various spell checking dictionaries.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
19
86bdcfac4a4a Added a dialog to edit the various spell checking dictionaries.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
20 class SpellingDictionaryEditDialog(QDialog, Ui_SpellingDictionaryEditDialog):
86bdcfac4a4a Added a dialog to edit the various spell checking dictionaries.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
21 """
86bdcfac4a4a Added a dialog to edit the various spell checking dictionaries.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
22 Class implementing a dialog to edit the various spell checking dictionaries.
86bdcfac4a4a Added a dialog to edit the various spell checking dictionaries.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
23 """
86bdcfac4a4a Added a dialog to edit the various spell checking dictionaries.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
24 def __init__(self, data, info, parent=None):
86bdcfac4a4a Added a dialog to edit the various spell checking dictionaries.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
25 """
86bdcfac4a4a Added a dialog to edit the various spell checking dictionaries.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
26 Constructor
86bdcfac4a4a Added a dialog to edit the various spell checking dictionaries.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
27
86bdcfac4a4a Added a dialog to edit the various spell checking dictionaries.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
28 @param data contents to be edited (string)
86bdcfac4a4a Added a dialog to edit the various spell checking dictionaries.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
29 @param info info string to show at the header (string)
86bdcfac4a4a Added a dialog to edit the various spell checking dictionaries.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
30 @param parent reference to the parent widget (QWidget)
86bdcfac4a4a Added a dialog to edit the various spell checking dictionaries.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
31 """
2525
8b507a9a2d40 Script changes: Future import added, super calls modified and unicode behavior for str.
T.Rzepka <Tobias.Rzepka@gmail.com>
parents: 2302
diff changeset
32 super(SpellingDictionaryEditDialog, self).__init__(parent)
2211
86bdcfac4a4a Added a dialog to edit the various spell checking dictionaries.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
33 self.setupUi(self)
86bdcfac4a4a Added a dialog to edit the various spell checking dictionaries.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
34
86bdcfac4a4a Added a dialog to edit the various spell checking dictionaries.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
35 self.infoLabel.setText(info)
86bdcfac4a4a Added a dialog to edit the various spell checking dictionaries.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
36
86bdcfac4a4a Added a dialog to edit the various spell checking dictionaries.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
37 self.__model = QStringListModel(data.splitlines(), self)
86bdcfac4a4a Added a dialog to edit the various spell checking dictionaries.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
38 self.__model.sort(0)
86bdcfac4a4a Added a dialog to edit the various spell checking dictionaries.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
39 self.__proxyModel = QSortFilterProxyModel(self)
86bdcfac4a4a Added a dialog to edit the various spell checking dictionaries.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
40 self.__proxyModel.setFilterCaseSensitivity(Qt.CaseInsensitive)
86bdcfac4a4a Added a dialog to edit the various spell checking dictionaries.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
41 self.__proxyModel.setDynamicSortFilter(True)
86bdcfac4a4a Added a dialog to edit the various spell checking dictionaries.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
42 self.__proxyModel.setSourceModel(self.__model)
86bdcfac4a4a Added a dialog to edit the various spell checking dictionaries.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
43 self.wordList.setModel(self.__proxyModel)
86bdcfac4a4a Added a dialog to edit the various spell checking dictionaries.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
44
86bdcfac4a4a Added a dialog to edit the various spell checking dictionaries.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
45 self.searchEdit.textChanged.connect(self.__proxyModel.setFilterFixedString)
86bdcfac4a4a Added a dialog to edit the various spell checking dictionaries.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
46
86bdcfac4a4a Added a dialog to edit the various spell checking dictionaries.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
47 self.removeButton.clicked[()].connect(self.wordList.removeSelected)
86bdcfac4a4a Added a dialog to edit the various spell checking dictionaries.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
48 self.removeAllButton.clicked[()].connect(self.wordList.removeAll)
86bdcfac4a4a Added a dialog to edit the various spell checking dictionaries.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
49
86bdcfac4a4a Added a dialog to edit the various spell checking dictionaries.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
50 @pyqtSlot()
86bdcfac4a4a Added a dialog to edit the various spell checking dictionaries.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
51 def on_addButton_clicked(self):
86bdcfac4a4a Added a dialog to edit the various spell checking dictionaries.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
52 """
86bdcfac4a4a Added a dialog to edit the various spell checking dictionaries.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
53 Private slot to handle adding an entry.
86bdcfac4a4a Added a dialog to edit the various spell checking dictionaries.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
54 """
86bdcfac4a4a Added a dialog to edit the various spell checking dictionaries.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
55 self.__model.insertRow(self.__model.rowCount())
86bdcfac4a4a Added a dialog to edit the various spell checking dictionaries.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
56 self.wordList.edit(self.__proxyModel.index(self.__model.rowCount() - 1, 0))
86bdcfac4a4a Added a dialog to edit the various spell checking dictionaries.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
57
86bdcfac4a4a Added a dialog to edit the various spell checking dictionaries.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
58 def getData(self):
86bdcfac4a4a Added a dialog to edit the various spell checking dictionaries.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
59 """
86bdcfac4a4a Added a dialog to edit the various spell checking dictionaries.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
60 Public method to get the data.
86bdcfac4a4a Added a dialog to edit the various spell checking dictionaries.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
61
86bdcfac4a4a Added a dialog to edit the various spell checking dictionaries.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
62 @return data of the dialog (string)
86bdcfac4a4a Added a dialog to edit the various spell checking dictionaries.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
63 """
86bdcfac4a4a Added a dialog to edit the various spell checking dictionaries.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
64 return os.linesep.join([line for line in self.__model.stringList() if line])

eric ide

mercurial