Helpviewer/Network/NoCacheHostsDialog.py

Thu, 03 Apr 2014 23:05:31 +0200

author
T.Rzepka <Tobias.Rzepka@gmail.com>
date
Thu, 03 Apr 2014 23:05:31 +0200
branch
Py2 comp.
changeset 3484
645c12de6b0c
parent 3178
f25fc1364c88
parent 3345
071afe8be2a1
child 3656
441956d8fce5
permissions
-rw-r--r--

Merge with default branch.

2694
d87cbab5d596 Added a dialog to configure hosts to be exempted from caching.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1 # -*- coding: utf-8 -*-
d87cbab5d596 Added a dialog to configure hosts to be exempted from caching.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
2
3160
209a07d7e401 Updated copyright for 2014.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3002
diff changeset
3 # Copyright (c) 2012 - 2014 Detlev Offenbach <detlev@die-offenbachs.de>
2694
d87cbab5d596 Added a dialog to configure hosts to be exempted from caching.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
4 #
d87cbab5d596 Added a dialog to configure hosts to be exempted from caching.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
5
d87cbab5d596 Added a dialog to configure hosts to be exempted from caching.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
6 """
d87cbab5d596 Added a dialog to configure hosts to be exempted from caching.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
7 Module implementing a dialog to manage the list of hosts not to be cached.
d87cbab5d596 Added a dialog to configure hosts to be exempted from caching.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
8 """
d87cbab5d596 Added a dialog to configure hosts to be exempted from caching.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
9
3145
a9de05d4a22f # __IGNORE_WARNING__ added/ removed.
T.Rzepka <Tobias.Rzepka@gmail.com>
parents: 3057
diff changeset
10 from __future__ import unicode_literals
2791
a9577f248f04 Merge with default branch.
T.Rzepka <Tobias.Rzepka@gmail.com>
parents: 2694
diff changeset
11
2694
d87cbab5d596 Added a dialog to configure hosts to be exempted from caching.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
12 from PyQt4.QtCore import pyqtSlot, Qt
d87cbab5d596 Added a dialog to configure hosts to be exempted from caching.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
13 from PyQt4.QtGui import QDialog, QStringListModel, QSortFilterProxyModel, \
d87cbab5d596 Added a dialog to configure hosts to be exempted from caching.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
14 QInputDialog, QLineEdit
d87cbab5d596 Added a dialog to configure hosts to be exempted from caching.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
15
d87cbab5d596 Added a dialog to configure hosts to be exempted from caching.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
16 from .Ui_NoCacheHostsDialog import Ui_NoCacheHostsDialog
d87cbab5d596 Added a dialog to configure hosts to be exempted from caching.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
17
d87cbab5d596 Added a dialog to configure hosts to be exempted from caching.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
18 import Preferences
d87cbab5d596 Added a dialog to configure hosts to be exempted from caching.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
19
d87cbab5d596 Added a dialog to configure hosts to be exempted from caching.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
20
d87cbab5d596 Added a dialog to configure hosts to be exempted from caching.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
21 class NoCacheHostsDialog(QDialog, Ui_NoCacheHostsDialog):
d87cbab5d596 Added a dialog to configure hosts to be exempted from caching.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
22 """
d87cbab5d596 Added a dialog to configure hosts to be exempted from caching.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
23 Class implementing a dialog to manage the list of hosts not to be cached.
d87cbab5d596 Added a dialog to configure hosts to be exempted from caching.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
24 """
d87cbab5d596 Added a dialog to configure hosts to be exempted from caching.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
25 def __init__(self, parent=None):
d87cbab5d596 Added a dialog to configure hosts to be exempted from caching.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
26 """
d87cbab5d596 Added a dialog to configure hosts to be exempted from caching.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
27 Constructor
d87cbab5d596 Added a dialog to configure hosts to be exempted from caching.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
28
d87cbab5d596 Added a dialog to configure hosts to be exempted from caching.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
29 @param parent reference to the parent widget (QWidget)
d87cbab5d596 Added a dialog to configure hosts to be exempted from caching.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
30 """
2791
a9577f248f04 Merge with default branch.
T.Rzepka <Tobias.Rzepka@gmail.com>
parents: 2694
diff changeset
31 super(NoCacheHostsDialog, self).__init__(parent)
2694
d87cbab5d596 Added a dialog to configure hosts to be exempted from caching.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
32 self.setupUi(self)
d87cbab5d596 Added a dialog to configure hosts to be exempted from caching.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
33
3002
6ffc581f00f1 Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2694
diff changeset
34 self.__model = QStringListModel(
6ffc581f00f1 Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2694
diff changeset
35 Preferences.getHelp("NoCacheHosts"), self)
2694
d87cbab5d596 Added a dialog to configure hosts to be exempted from caching.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
36 self.__model.sort(0)
d87cbab5d596 Added a dialog to configure hosts to be exempted from caching.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
37 self.__proxyModel = QSortFilterProxyModel(self)
d87cbab5d596 Added a dialog to configure hosts to be exempted from caching.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
38 self.__proxyModel.setFilterCaseSensitivity(Qt.CaseInsensitive)
d87cbab5d596 Added a dialog to configure hosts to be exempted from caching.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
39 self.__proxyModel.setSourceModel(self.__model)
d87cbab5d596 Added a dialog to configure hosts to be exempted from caching.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
40 self.noCacheList.setModel(self.__proxyModel)
d87cbab5d596 Added a dialog to configure hosts to be exempted from caching.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
41
3002
6ffc581f00f1 Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2694
diff changeset
42 self.searchEdit.textChanged.connect(
6ffc581f00f1 Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2694
diff changeset
43 self.__proxyModel.setFilterFixedString)
2694
d87cbab5d596 Added a dialog to configure hosts to be exempted from caching.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
44
3345
071afe8be2a1 Changed signal/slot usage to not use constructs like 'triggered[()].connect(...)' anymore.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3190
diff changeset
45 self.removeButton.clicked.connect(self.noCacheList.removeSelected)
071afe8be2a1 Changed signal/slot usage to not use constructs like 'triggered[()].connect(...)' anymore.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3190
diff changeset
46 self.removeAllButton.clicked.connect(self.noCacheList.removeAll)
2694
d87cbab5d596 Added a dialog to configure hosts to be exempted from caching.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
47
d87cbab5d596 Added a dialog to configure hosts to be exempted from caching.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
48 @pyqtSlot()
d87cbab5d596 Added a dialog to configure hosts to be exempted from caching.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
49 def on_addButton_clicked(self):
d87cbab5d596 Added a dialog to configure hosts to be exempted from caching.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
50 """
d87cbab5d596 Added a dialog to configure hosts to be exempted from caching.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
51 Private slot to add an entry to the list.
d87cbab5d596 Added a dialog to configure hosts to be exempted from caching.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
52 """
d87cbab5d596 Added a dialog to configure hosts to be exempted from caching.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
53 host, ok = QInputDialog.getText(
d87cbab5d596 Added a dialog to configure hosts to be exempted from caching.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
54 self,
3190
a9a94491c4fd Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3160
diff changeset
55 self.tr("Not Cached Hosts"),
a9a94491c4fd Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3160
diff changeset
56 self.tr("Enter host name to add to the list:"),
2694
d87cbab5d596 Added a dialog to configure hosts to be exempted from caching.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
57 QLineEdit.Normal)
d87cbab5d596 Added a dialog to configure hosts to be exempted from caching.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
58 if ok and host != "" and host not in self.__model.stringList():
d87cbab5d596 Added a dialog to configure hosts to be exempted from caching.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
59 self.__model.insertRow(self.__model.rowCount())
d87cbab5d596 Added a dialog to configure hosts to be exempted from caching.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
60 self.__model.setData(
d87cbab5d596 Added a dialog to configure hosts to be exempted from caching.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
61 self.__model.index(self.__model.rowCount() - 1), host)
d87cbab5d596 Added a dialog to configure hosts to be exempted from caching.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
62 self.__model.sort(0)
d87cbab5d596 Added a dialog to configure hosts to be exempted from caching.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
63
d87cbab5d596 Added a dialog to configure hosts to be exempted from caching.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
64 def accept(self):
d87cbab5d596 Added a dialog to configure hosts to be exempted from caching.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
65 """
d87cbab5d596 Added a dialog to configure hosts to be exempted from caching.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
66 Public method to accept the dialog data.
d87cbab5d596 Added a dialog to configure hosts to be exempted from caching.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
67 """
d87cbab5d596 Added a dialog to configure hosts to be exempted from caching.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
68 Preferences.setHelp("NoCacheHosts", self.__model.stringList())
d87cbab5d596 Added a dialog to configure hosts to be exempted from caching.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
69
2791
a9577f248f04 Merge with default branch.
T.Rzepka <Tobias.Rzepka@gmail.com>
parents: 2694
diff changeset
70 super(NoCacheHostsDialog, self).accept()

eric ide

mercurial