Wed, 30 Dec 2020 11:02:14 +0100
Updated copyright for 2021.
0
deeb8c24a7ab
Started the 'Print Remover' project.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
1 | # -*- coding: utf-8 -*- |
deeb8c24a7ab
Started the 'Print Remover' project.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
2 | |
53
359f9805af93
Updated copyright for 2021.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
51
diff
changeset
|
3 | # Copyright (c) 2013 - 2021 Detlev Offenbach <detlev@die-offenbachs.de> |
0
deeb8c24a7ab
Started the 'Print Remover' project.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
4 | # |
deeb8c24a7ab
Started the 'Print Remover' project.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
5 | |
deeb8c24a7ab
Started the 'Print Remover' project.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
6 | """ |
deeb8c24a7ab
Started the 'Print Remover' project.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
7 | Module implementing the Print Remover configuration page. |
deeb8c24a7ab
Started the 'Print Remover' project.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
8 | """ |
deeb8c24a7ab
Started the 'Print Remover' project.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
9 | |
21
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
10 | import os |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
11 | |
28
46e76a5913cf
Ported to PyQt5 and eric6.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
21
diff
changeset
|
12 | from PyQt5.QtCore import pyqtSlot |
46e76a5913cf
Ported to PyQt5 and eric6.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
21
diff
changeset
|
13 | from PyQt5.QtWidgets import QListWidgetItem, QInputDialog, QLineEdit |
0
deeb8c24a7ab
Started the 'Print Remover' project.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
14 | |
49
d721d13f5e4e
Replaced pixmap icons by vector icons.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
48
diff
changeset
|
15 | from E5Gui.E5Application import e5App |
d721d13f5e4e
Replaced pixmap icons by vector icons.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
48
diff
changeset
|
16 | |
51
a18bc7af1151
Removed support for Python2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
49
diff
changeset
|
17 | from Preferences.ConfigurationPages.ConfigurationPageBase import ( |
0
deeb8c24a7ab
Started the 'Print Remover' project.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
18 | ConfigurationPageBase |
51
a18bc7af1151
Removed support for Python2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
49
diff
changeset
|
19 | ) |
0
deeb8c24a7ab
Started the 'Print Remover' project.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
20 | from .Ui_PrintRemoverPage import Ui_PrintRemoverPage |
deeb8c24a7ab
Started the 'Print Remover' project.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
21 | |
21
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
22 | import UI.PixmapCache |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
23 | |
0
deeb8c24a7ab
Started the 'Print Remover' project.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
24 | |
deeb8c24a7ab
Started the 'Print Remover' project.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
25 | class PrintRemoverPage(ConfigurationPageBase, Ui_PrintRemoverPage): |
deeb8c24a7ab
Started the 'Print Remover' project.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
26 | """ |
deeb8c24a7ab
Started the 'Print Remover' project.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
27 | Class implementing the Print Remover configuration page. |
deeb8c24a7ab
Started the 'Print Remover' project.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
28 | """ |
deeb8c24a7ab
Started the 'Print Remover' project.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
29 | def __init__(self, plugin): |
deeb8c24a7ab
Started the 'Print Remover' project.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
30 | """ |
deeb8c24a7ab
Started the 'Print Remover' project.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
31 | Constructor |
deeb8c24a7ab
Started the 'Print Remover' project.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
32 | |
deeb8c24a7ab
Started the 'Print Remover' project.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
33 | @param plugin reference to the plugin object |
deeb8c24a7ab
Started the 'Print Remover' project.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
34 | """ |
deeb8c24a7ab
Started the 'Print Remover' project.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
35 | super(PrintRemoverPage, self).__init__() |
deeb8c24a7ab
Started the 'Print Remover' project.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
36 | self.setupUi(self) |
deeb8c24a7ab
Started the 'Print Remover' project.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
37 | self.setObjectName("PrintRemoverPage") |
deeb8c24a7ab
Started the 'Print Remover' project.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
38 | |
49
d721d13f5e4e
Replaced pixmap icons by vector icons.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
48
diff
changeset
|
39 | try: |
d721d13f5e4e
Replaced pixmap icons by vector icons.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
48
diff
changeset
|
40 | usesDarkPalette = e5App().usesDarkPalette() |
d721d13f5e4e
Replaced pixmap icons by vector icons.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
48
diff
changeset
|
41 | except AttributeError: |
d721d13f5e4e
Replaced pixmap icons by vector icons.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
48
diff
changeset
|
42 | from PyQt5.QtGui import QPalette |
d721d13f5e4e
Replaced pixmap icons by vector icons.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
48
diff
changeset
|
43 | palette = e5App().palette() |
d721d13f5e4e
Replaced pixmap icons by vector icons.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
48
diff
changeset
|
44 | lightness = palette.color(QPalette.Window).lightness() |
d721d13f5e4e
Replaced pixmap icons by vector icons.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
48
diff
changeset
|
45 | usesDarkPalette = lightness <= 128 |
d721d13f5e4e
Replaced pixmap icons by vector icons.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
48
diff
changeset
|
46 | if usesDarkPalette: |
51
a18bc7af1151
Removed support for Python2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
49
diff
changeset
|
47 | iconSuffix = "dark" |
49
d721d13f5e4e
Replaced pixmap icons by vector icons.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
48
diff
changeset
|
48 | else: |
d721d13f5e4e
Replaced pixmap icons by vector icons.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
48
diff
changeset
|
49 | iconSuffix = "light" |
d721d13f5e4e
Replaced pixmap icons by vector icons.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
48
diff
changeset
|
50 | |
21
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
51 | self.editButton.setIcon(UI.PixmapCache.getIcon( |
49
d721d13f5e4e
Replaced pixmap icons by vector icons.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
48
diff
changeset
|
52 | os.path.join("PrintRemover", "icons", |
d721d13f5e4e
Replaced pixmap icons by vector icons.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
48
diff
changeset
|
53 | "edit-{0}".format(iconSuffix)))) |
d721d13f5e4e
Replaced pixmap icons by vector icons.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
48
diff
changeset
|
54 | self.addButton.setIcon(UI.PixmapCache.getIcon("plus")) |
21
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
55 | self.addSeparatorButton.setIcon(UI.PixmapCache.getIcon( |
49
d721d13f5e4e
Replaced pixmap icons by vector icons.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
48
diff
changeset
|
56 | os.path.join("PrintRemover", "icons", |
d721d13f5e4e
Replaced pixmap icons by vector icons.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
48
diff
changeset
|
57 | "separatorAdd-{0}".format(iconSuffix)))) |
d721d13f5e4e
Replaced pixmap icons by vector icons.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
48
diff
changeset
|
58 | self.deleteButton.setIcon(UI.PixmapCache.getIcon("minus")) |
d721d13f5e4e
Replaced pixmap icons by vector icons.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
48
diff
changeset
|
59 | self.upButton.setIcon(UI.PixmapCache.getIcon("1uparrow")) |
d721d13f5e4e
Replaced pixmap icons by vector icons.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
48
diff
changeset
|
60 | self.downButton.setIcon(UI.PixmapCache.getIcon("1downarrow")) |
21
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
61 | |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
62 | self.editButton.setEnabled(False) |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
63 | self.deleteButton.setEnabled(False) |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
64 | self.upButton.setEnabled(False) |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
65 | self.downButton.setEnabled(False) |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
66 | |
0
deeb8c24a7ab
Started the 'Print Remover' project.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
67 | self.__plugin = plugin |
deeb8c24a7ab
Started the 'Print Remover' project.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
68 | |
deeb8c24a7ab
Started the 'Print Remover' project.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
69 | # set initial values |
deeb8c24a7ab
Started the 'Print Remover' project.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
70 | for pattern in self.__plugin.getPreferences("StartswithStrings"): |
21
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
71 | if pattern == "--Separator--": |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
72 | pattern = self.tr("--Separator--") |
0
deeb8c24a7ab
Started the 'Print Remover' project.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
73 | QListWidgetItem(pattern, self.patternList) |
deeb8c24a7ab
Started the 'Print Remover' project.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
74 | |
deeb8c24a7ab
Started the 'Print Remover' project.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
75 | def save(self): |
deeb8c24a7ab
Started the 'Print Remover' project.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
76 | """ |
deeb8c24a7ab
Started the 'Print Remover' project.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
77 | Public slot to save the Print Remover configuration. |
deeb8c24a7ab
Started the 'Print Remover' project.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
78 | """ |
deeb8c24a7ab
Started the 'Print Remover' project.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
79 | patterns = [] |
deeb8c24a7ab
Started the 'Print Remover' project.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
80 | for row in range(self.patternList.count()): |
deeb8c24a7ab
Started the 'Print Remover' project.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
81 | itm = self.patternList.item(row) |
21
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
82 | pattern = itm.text() |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
83 | if pattern == self.tr("--Separator--"): |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
84 | pattern = "--Separator--" |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
85 | patterns.append(pattern) |
0
deeb8c24a7ab
Started the 'Print Remover' project.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
86 | self.__plugin.setPreferences("StartswithStrings", patterns) |
deeb8c24a7ab
Started the 'Print Remover' project.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
87 | |
deeb8c24a7ab
Started the 'Print Remover' project.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
88 | @pyqtSlot() |
deeb8c24a7ab
Started the 'Print Remover' project.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
89 | def on_patternList_itemSelectionChanged(self): |
deeb8c24a7ab
Started the 'Print Remover' project.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
90 | """ |
deeb8c24a7ab
Started the 'Print Remover' project.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
91 | Private slot to handle the selection of patterns. |
deeb8c24a7ab
Started the 'Print Remover' project.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
92 | """ |
21
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
93 | if len(self.patternList.selectedItems()) == 0: |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
94 | self.editButton.setEnabled(False) |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
95 | self.deleteButton.setEnabled(False) |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
96 | self.upButton.setEnabled(False) |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
97 | self.downButton.setEnabled(False) |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
98 | else: |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
99 | itm = self.patternList.selectedItems()[0] |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
100 | self.editButton.setEnabled(itm.text() != self.tr("--Separator--")) |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
101 | self.deleteButton.setEnabled(True) |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
102 | self.upButton.setEnabled(self.patternList.row(itm) > 0) |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
103 | self.downButton.setEnabled( |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
104 | self.patternList.row(itm) < self.patternList.count() - 1) |
0
deeb8c24a7ab
Started the 'Print Remover' project.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
105 | |
deeb8c24a7ab
Started the 'Print Remover' project.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
106 | @pyqtSlot() |
21
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
107 | def on_editButton_clicked(self): |
0
deeb8c24a7ab
Started the 'Print Remover' project.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
108 | """ |
21
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
109 | Private slot to edit the selected entry. |
0
deeb8c24a7ab
Started the 'Print Remover' project.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
110 | """ |
21
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
111 | itm = self.patternList.selectedItems()[0] |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
112 | pattern, ok = QInputDialog.getText( |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
113 | self, |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
114 | self.tr("Line Start Pattern"), |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
115 | self.tr("Enter a line start pattern:"), |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
116 | QLineEdit.Normal, |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
117 | itm.text()) |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
118 | if ok and pattern: |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
119 | itm.setText(pattern) |
0
deeb8c24a7ab
Started the 'Print Remover' project.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
120 | |
deeb8c24a7ab
Started the 'Print Remover' project.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
121 | @pyqtSlot() |
21
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
122 | def on_addButton_clicked(self): |
0
deeb8c24a7ab
Started the 'Print Remover' project.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
123 | """ |
deeb8c24a7ab
Started the 'Print Remover' project.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
124 | Private slot add a pattern to the list. |
deeb8c24a7ab
Started the 'Print Remover' project.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
125 | """ |
21
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
126 | pattern, ok = QInputDialog.getText( |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
127 | self, |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
128 | self.tr("Line Start Pattern"), |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
129 | self.tr("Enter a line start pattern:"), |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
130 | QLineEdit.Normal) |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
131 | if ok and pattern: |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
132 | itm = QListWidgetItem(pattern) |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
133 | if len(self.patternList.selectedItems()): |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
134 | row = self.patternList.row( |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
135 | self.patternList.selectedItems()[0]) + 1 |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
136 | self.patternList.insertItem(row, itm) |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
137 | for sitm in self.patternList.selectedItems(): |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
138 | sitm.setSelected(False) |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
139 | else: |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
140 | self.patternList.addItem(itm) |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
141 | itm.setSelected(True) |
0
deeb8c24a7ab
Started the 'Print Remover' project.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
142 | |
21
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
143 | @pyqtSlot() |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
144 | def on_addSeparatorButton_clicked(self): |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
145 | """ |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
146 | Private slot add a separator to the list. |
0
deeb8c24a7ab
Started the 'Print Remover' project.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
147 | """ |
21
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
148 | itm = QListWidgetItem(self.tr("--Separator--")) |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
149 | if len(self.patternList.selectedItems()): |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
150 | row = self.patternList.row( |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
151 | self.patternList.selectedItems()[0]) + 1 |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
152 | self.patternList.insertItem(row, itm) |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
153 | for sitm in self.patternList.selectedItems(): |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
154 | sitm.setSelected(False) |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
155 | else: |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
156 | self.patternList.addItem(itm) |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
157 | itm.setSelected(True) |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
158 | |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
159 | @pyqtSlot() |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
160 | def on_deleteButton_clicked(self): |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
161 | """ |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
162 | Private slot to delete the selected entry. |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
163 | """ |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
164 | itm = self.patternList.selectedItems()[0] |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
165 | self.patternList.takeItem(self.patternList.row(itm)) |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
166 | del itm |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
167 | |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
168 | @pyqtSlot() |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
169 | def on_upButton_clicked(self): |
0
deeb8c24a7ab
Started the 'Print Remover' project.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
170 | """ |
21
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
171 | Private slot to move an entry up. |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
172 | """ |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
173 | self.__moveSelectedEntry(True) |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
174 | |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
175 | @pyqtSlot() |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
176 | def on_downButton_clicked(self): |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
177 | """ |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
178 | Private slot to move an entry down. |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
179 | """ |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
180 | self.__moveSelectedEntry(False) |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
181 | |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
182 | def __moveSelectedEntry(self, moveUp): |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
183 | """ |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
184 | Private method to move the selected entry up or down. |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
185 | |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
186 | @param moveUp flag indicating to move the entry up (boolean) |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
187 | """ |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
188 | itm = self.patternList.selectedItems()[0] |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
189 | row = self.patternList.row(itm) |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
190 | newRow = row - 1 if moveUp else row + 1 |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
191 | self.patternList.takeItem(row) |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
192 | self.patternList.insertItem(newRow, itm) |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
193 | for sitm in self.patternList.selectedItems(): |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
194 | sitm.setSelected(False) |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
195 | itm.setSelected(True) |