Mon, 26 Apr 2021 19:46:00 +0200
Implemented some code simplifications.
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 | """ |
54
d061dda35cef
Implemented some code simplifications.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
53
diff
changeset
|
35 | super().__init__() |
0
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: |
54
d061dda35cef
Implemented some code simplifications.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
53
diff
changeset
|
42 | # for eric6 < 20.4 |
49
d721d13f5e4e
Replaced pixmap icons by vector icons.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
48
diff
changeset
|
43 | from PyQt5.QtGui import QPalette |
d721d13f5e4e
Replaced pixmap icons by vector icons.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
48
diff
changeset
|
44 | palette = e5App().palette() |
d721d13f5e4e
Replaced pixmap icons by vector icons.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
48
diff
changeset
|
45 | lightness = palette.color(QPalette.Window).lightness() |
d721d13f5e4e
Replaced pixmap icons by vector icons.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
48
diff
changeset
|
46 | usesDarkPalette = lightness <= 128 |
54
d061dda35cef
Implemented some code simplifications.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
53
diff
changeset
|
47 | iconSuffix = "dark" if usesDarkPalette else "light" |
49
d721d13f5e4e
Replaced pixmap icons by vector icons.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
48
diff
changeset
|
48 | |
21
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
49 | self.editButton.setIcon(UI.PixmapCache.getIcon( |
49
d721d13f5e4e
Replaced pixmap icons by vector icons.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
48
diff
changeset
|
50 | os.path.join("PrintRemover", "icons", |
d721d13f5e4e
Replaced pixmap icons by vector icons.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
48
diff
changeset
|
51 | "edit-{0}".format(iconSuffix)))) |
d721d13f5e4e
Replaced pixmap icons by vector icons.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
48
diff
changeset
|
52 | self.addButton.setIcon(UI.PixmapCache.getIcon("plus")) |
21
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
53 | self.addSeparatorButton.setIcon(UI.PixmapCache.getIcon( |
49
d721d13f5e4e
Replaced pixmap icons by vector icons.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
48
diff
changeset
|
54 | os.path.join("PrintRemover", "icons", |
d721d13f5e4e
Replaced pixmap icons by vector icons.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
48
diff
changeset
|
55 | "separatorAdd-{0}".format(iconSuffix)))) |
d721d13f5e4e
Replaced pixmap icons by vector icons.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
48
diff
changeset
|
56 | self.deleteButton.setIcon(UI.PixmapCache.getIcon("minus")) |
d721d13f5e4e
Replaced pixmap icons by vector icons.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
48
diff
changeset
|
57 | self.upButton.setIcon(UI.PixmapCache.getIcon("1uparrow")) |
d721d13f5e4e
Replaced pixmap icons by vector icons.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
48
diff
changeset
|
58 | self.downButton.setIcon(UI.PixmapCache.getIcon("1downarrow")) |
21
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
59 | |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
60 | self.editButton.setEnabled(False) |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
61 | self.deleteButton.setEnabled(False) |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
62 | self.upButton.setEnabled(False) |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
63 | self.downButton.setEnabled(False) |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
64 | |
0
deeb8c24a7ab
Started the 'Print Remover' project.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
65 | self.__plugin = plugin |
deeb8c24a7ab
Started the 'Print Remover' project.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
66 | |
deeb8c24a7ab
Started the 'Print Remover' project.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
67 | # set initial values |
deeb8c24a7ab
Started the 'Print Remover' project.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
68 | for pattern in self.__plugin.getPreferences("StartswithStrings"): |
21
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
69 | if pattern == "--Separator--": |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
70 | pattern = self.tr("--Separator--") |
0
deeb8c24a7ab
Started the 'Print Remover' project.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
71 | QListWidgetItem(pattern, self.patternList) |
deeb8c24a7ab
Started the 'Print Remover' project.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
72 | |
deeb8c24a7ab
Started the 'Print Remover' project.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
73 | def save(self): |
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 | Public slot to save the Print Remover configuration. |
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 | patterns = [] |
deeb8c24a7ab
Started the 'Print Remover' project.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
78 | for row in range(self.patternList.count()): |
deeb8c24a7ab
Started the 'Print Remover' project.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
79 | itm = self.patternList.item(row) |
21
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
80 | pattern = itm.text() |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
81 | if pattern == self.tr("--Separator--"): |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
82 | pattern = "--Separator--" |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
83 | patterns.append(pattern) |
0
deeb8c24a7ab
Started the 'Print Remover' project.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
84 | self.__plugin.setPreferences("StartswithStrings", patterns) |
deeb8c24a7ab
Started the 'Print Remover' project.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
85 | |
deeb8c24a7ab
Started the 'Print Remover' project.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
86 | @pyqtSlot() |
deeb8c24a7ab
Started the 'Print Remover' project.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
87 | def on_patternList_itemSelectionChanged(self): |
deeb8c24a7ab
Started the 'Print Remover' project.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
88 | """ |
deeb8c24a7ab
Started the 'Print Remover' project.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
89 | Private slot to handle the selection of patterns. |
deeb8c24a7ab
Started the 'Print Remover' project.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
90 | """ |
21
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
91 | if len(self.patternList.selectedItems()) == 0: |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
92 | self.editButton.setEnabled(False) |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
93 | self.deleteButton.setEnabled(False) |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
94 | self.upButton.setEnabled(False) |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
95 | self.downButton.setEnabled(False) |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
96 | else: |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
97 | itm = self.patternList.selectedItems()[0] |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
98 | self.editButton.setEnabled(itm.text() != self.tr("--Separator--")) |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
99 | self.deleteButton.setEnabled(True) |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
100 | self.upButton.setEnabled(self.patternList.row(itm) > 0) |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
101 | self.downButton.setEnabled( |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
102 | self.patternList.row(itm) < self.patternList.count() - 1) |
0
deeb8c24a7ab
Started the 'Print Remover' project.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
103 | |
deeb8c24a7ab
Started the 'Print Remover' project.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
104 | @pyqtSlot() |
21
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
105 | def on_editButton_clicked(self): |
0
deeb8c24a7ab
Started the 'Print Remover' project.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
106 | """ |
21
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
107 | Private slot to edit the selected entry. |
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 | itm = self.patternList.selectedItems()[0] |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
110 | pattern, ok = QInputDialog.getText( |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
111 | self, |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
112 | self.tr("Line Start Pattern"), |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
113 | self.tr("Enter a line start pattern:"), |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
114 | QLineEdit.Normal, |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
115 | itm.text()) |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
116 | if ok and pattern: |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
117 | itm.setText(pattern) |
0
deeb8c24a7ab
Started the 'Print Remover' project.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
118 | |
deeb8c24a7ab
Started the 'Print Remover' project.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
119 | @pyqtSlot() |
21
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
120 | def on_addButton_clicked(self): |
0
deeb8c24a7ab
Started the 'Print Remover' project.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
121 | """ |
deeb8c24a7ab
Started the 'Print Remover' project.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
122 | Private slot add a pattern to the list. |
deeb8c24a7ab
Started the 'Print Remover' project.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
123 | """ |
21
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
124 | pattern, ok = QInputDialog.getText( |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
125 | self, |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
126 | self.tr("Line Start Pattern"), |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
127 | self.tr("Enter a line start pattern:"), |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
128 | QLineEdit.Normal) |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
129 | if ok and pattern: |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
130 | itm = QListWidgetItem(pattern) |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
131 | if len(self.patternList.selectedItems()): |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
132 | row = self.patternList.row( |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
133 | self.patternList.selectedItems()[0]) + 1 |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
134 | self.patternList.insertItem(row, itm) |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
135 | for sitm in self.patternList.selectedItems(): |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
136 | sitm.setSelected(False) |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
137 | else: |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
138 | self.patternList.addItem(itm) |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
139 | itm.setSelected(True) |
0
deeb8c24a7ab
Started the 'Print Remover' project.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
140 | |
21
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
141 | @pyqtSlot() |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
142 | def on_addSeparatorButton_clicked(self): |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
143 | """ |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
144 | Private slot add a separator to the list. |
0
deeb8c24a7ab
Started the 'Print Remover' project.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
145 | """ |
21
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
146 | itm = QListWidgetItem(self.tr("--Separator--")) |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
147 | if len(self.patternList.selectedItems()): |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
148 | row = self.patternList.row( |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
149 | self.patternList.selectedItems()[0]) + 1 |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
150 | self.patternList.insertItem(row, itm) |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
151 | for sitm in self.patternList.selectedItems(): |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
152 | sitm.setSelected(False) |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
153 | else: |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
154 | self.patternList.addItem(itm) |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
155 | itm.setSelected(True) |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
156 | |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
157 | @pyqtSlot() |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
158 | def on_deleteButton_clicked(self): |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
159 | """ |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
160 | Private slot to delete the selected entry. |
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 | itm = self.patternList.selectedItems()[0] |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
163 | self.patternList.takeItem(self.patternList.row(itm)) |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
164 | del itm |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
165 | |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
166 | @pyqtSlot() |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
167 | def on_upButton_clicked(self): |
0
deeb8c24a7ab
Started the 'Print Remover' project.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
168 | """ |
21
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
169 | Private slot to move an entry up. |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
170 | """ |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
171 | self.__moveSelectedEntry(True) |
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 | @pyqtSlot() |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
174 | def on_downButton_clicked(self): |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
175 | """ |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
176 | Private slot to move an entry down. |
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 | self.__moveSelectedEntry(False) |
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 | def __moveSelectedEntry(self, moveUp): |
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 | 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
|
183 | |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
184 | @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
|
185 | """ |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
186 | itm = self.patternList.selectedItems()[0] |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
187 | row = self.patternList.row(itm) |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
188 | newRow = row - 1 if moveUp else row + 1 |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
189 | self.patternList.takeItem(row) |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
190 | self.patternList.insertItem(newRow, itm) |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
191 | for sitm in self.patternList.selectedItems(): |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
192 | sitm.setSelected(False) |
9288af505740
Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
193 | itm.setSelected(True) |