PrintRemover/ConfigurationPage/PrintRemoverPage.py

Wed, 08 Apr 2020 19:33:16 +0200

author
Detlev Offenbach <detlev@die-offenbachs.de>
date
Wed, 08 Apr 2020 19:33:16 +0200
changeset 49
d721d13f5e4e
parent 48
10d34908ad1a
child 51
a18bc7af1151
permissions
-rw-r--r--

Replaced pixmap icons by vector icons.

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

eric ide

mercurial