PrintRemover/ConfigurationPage/PrintRemoverPage.py

Tue, 20 Dec 2022 17:31:58 +0100

author
Detlev Offenbach <detlev@die-offenbachs.de>
date
Tue, 20 Dec 2022 17:31:58 +0100
branch
eric7
changeset 65
4f299e33476a
parent 63
273252fd0d99
child 67
7beca4added1
permissions
-rw-r--r--

Resorted imports with isort.

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
59
79247c15c319 Updated copyright for 2022.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 57
diff changeset
3 # Copyright (c) 2013 - 2022 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
57
8e12947695cb Ported the plug-in to PyQt6 for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 54
diff changeset
12 from PyQt6.QtCore import pyqtSlot
65
4f299e33476a Resorted imports with isort.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 63
diff changeset
13 from PyQt6.QtWidgets import QInputDialog, QLineEdit, QListWidgetItem
0
deeb8c24a7ab Started the 'Print Remover' project.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
14
63
273252fd0d99 Adapted the import statements to the new structure.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 62
diff changeset
15 from eric7.EricWidgets.EricApplication import ericApp
273252fd0d99 Adapted the import statements to the new structure.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 62
diff changeset
16 from eric7.Preferences.ConfigurationPages.ConfigurationPageBase import (
273252fd0d99 Adapted the import statements to the new structure.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 62
diff changeset
17 ConfigurationPageBase,
273252fd0d99 Adapted the import statements to the new structure.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 62
diff changeset
18 )
65
4f299e33476a Resorted imports with isort.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 63
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
63
273252fd0d99 Adapted the import statements to the new structure.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 62
diff changeset
22 try:
273252fd0d99 Adapted the import statements to the new structure.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 62
diff changeset
23 from eric7.EricGui import EricPixmapCache
273252fd0d99 Adapted the import statements to the new structure.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 62
diff changeset
24 except ImportError:
273252fd0d99 Adapted the import statements to the new structure.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 62
diff changeset
25 from UI import PixmapCache as EricPixmapCache
21
9288af505740 Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 13
diff changeset
26
0
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 PrintRemoverPage(ConfigurationPageBase, Ui_PrintRemoverPage):
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 Class implementing the Print Remover configuration page.
deeb8c24a7ab Started the 'Print Remover' project.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
31 """
62
81f446717433 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 59
diff changeset
32
0
deeb8c24a7ab Started the 'Print Remover' project.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
33 def __init__(self, plugin):
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 Constructor
62
81f446717433 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 59
diff changeset
36
0
deeb8c24a7ab Started the 'Print Remover' project.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
37 @param plugin reference to the plugin object
57
8e12947695cb Ported the plug-in to PyQt6 for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 54
diff changeset
38 @type PrintRemoverPlugin
0
deeb8c24a7ab Started the 'Print Remover' project.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
39 """
54
d061dda35cef Implemented some code simplifications.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 53
diff changeset
40 super().__init__()
0
deeb8c24a7ab Started the 'Print Remover' project.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
41 self.setupUi(self)
deeb8c24a7ab Started the 'Print Remover' project.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
42 self.setObjectName("PrintRemoverPage")
62
81f446717433 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 59
diff changeset
43
57
8e12947695cb Ported the plug-in to PyQt6 for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 54
diff changeset
44 usesDarkPalette = ericApp().usesDarkPalette()
54
d061dda35cef Implemented some code simplifications.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 53
diff changeset
45 iconSuffix = "dark" if usesDarkPalette else "light"
62
81f446717433 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 59
diff changeset
46
81f446717433 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 59
diff changeset
47 self.editButton.setIcon(
63
273252fd0d99 Adapted the import statements to the new structure.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 62
diff changeset
48 EricPixmapCache.getIcon(
62
81f446717433 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 59
diff changeset
49 os.path.join("PrintRemover", "icons", "edit-{0}".format(iconSuffix))
81f446717433 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 59
diff changeset
50 )
81f446717433 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 59
diff changeset
51 )
63
273252fd0d99 Adapted the import statements to the new structure.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 62
diff changeset
52 self.addButton.setIcon(EricPixmapCache.getIcon("plus"))
62
81f446717433 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 59
diff changeset
53 self.addSeparatorButton.setIcon(
63
273252fd0d99 Adapted the import statements to the new structure.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 62
diff changeset
54 EricPixmapCache.getIcon(
62
81f446717433 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 59
diff changeset
55 os.path.join(
81f446717433 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 59
diff changeset
56 "PrintRemover", "icons", "separatorAdd-{0}".format(iconSuffix)
81f446717433 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 59
diff changeset
57 )
81f446717433 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 59
diff changeset
58 )
81f446717433 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 59
diff changeset
59 )
63
273252fd0d99 Adapted the import statements to the new structure.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 62
diff changeset
60 self.deleteButton.setIcon(EricPixmapCache.getIcon("minus"))
273252fd0d99 Adapted the import statements to the new structure.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 62
diff changeset
61 self.upButton.setIcon(EricPixmapCache.getIcon("1uparrow"))
273252fd0d99 Adapted the import statements to the new structure.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 62
diff changeset
62 self.downButton.setIcon(EricPixmapCache.getIcon("1downarrow"))
62
81f446717433 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 59
diff changeset
63
21
9288af505740 Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 13
diff changeset
64 self.editButton.setEnabled(False)
9288af505740 Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 13
diff changeset
65 self.deleteButton.setEnabled(False)
9288af505740 Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 13
diff changeset
66 self.upButton.setEnabled(False)
9288af505740 Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 13
diff changeset
67 self.downButton.setEnabled(False)
62
81f446717433 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 59
diff changeset
68
0
deeb8c24a7ab Started the 'Print Remover' project.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
69 self.__plugin = plugin
62
81f446717433 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 59
diff changeset
70
0
deeb8c24a7ab Started the 'Print Remover' project.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
71 # set initial values
deeb8c24a7ab Started the 'Print Remover' project.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
72 for pattern in self.__plugin.getPreferences("StartswithStrings"):
21
9288af505740 Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 13
diff changeset
73 if pattern == "--Separator--":
9288af505740 Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 13
diff changeset
74 pattern = self.tr("--Separator--")
0
deeb8c24a7ab Started the 'Print Remover' project.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
75 QListWidgetItem(pattern, self.patternList)
62
81f446717433 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 59
diff changeset
76
0
deeb8c24a7ab Started the 'Print Remover' project.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
77 def save(self):
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 Public slot to save the Print Remover configuration.
deeb8c24a7ab Started the 'Print Remover' project.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
80 """
deeb8c24a7ab Started the 'Print Remover' project.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
81 patterns = []
deeb8c24a7ab Started the 'Print Remover' project.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
82 for row in range(self.patternList.count()):
deeb8c24a7ab Started the 'Print Remover' project.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
83 itm = self.patternList.item(row)
21
9288af505740 Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 13
diff changeset
84 pattern = itm.text()
9288af505740 Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 13
diff changeset
85 if pattern == self.tr("--Separator--"):
9288af505740 Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 13
diff changeset
86 pattern = "--Separator--"
9288af505740 Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 13
diff changeset
87 patterns.append(pattern)
0
deeb8c24a7ab Started the 'Print Remover' project.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
88 self.__plugin.setPreferences("StartswithStrings", patterns)
62
81f446717433 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 59
diff changeset
89
0
deeb8c24a7ab Started the 'Print Remover' project.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
90 @pyqtSlot()
deeb8c24a7ab Started the 'Print Remover' project.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
91 def on_patternList_itemSelectionChanged(self):
deeb8c24a7ab Started the 'Print Remover' project.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
92 """
deeb8c24a7ab Started the 'Print Remover' project.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
93 Private slot to handle the selection of patterns.
deeb8c24a7ab Started the 'Print Remover' project.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
94 """
21
9288af505740 Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 13
diff changeset
95 if len(self.patternList.selectedItems()) == 0:
9288af505740 Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 13
diff changeset
96 self.editButton.setEnabled(False)
9288af505740 Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 13
diff changeset
97 self.deleteButton.setEnabled(False)
9288af505740 Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 13
diff changeset
98 self.upButton.setEnabled(False)
9288af505740 Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 13
diff changeset
99 self.downButton.setEnabled(False)
9288af505740 Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 13
diff changeset
100 else:
9288af505740 Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 13
diff changeset
101 itm = self.patternList.selectedItems()[0]
9288af505740 Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 13
diff changeset
102 self.editButton.setEnabled(itm.text() != self.tr("--Separator--"))
9288af505740 Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 13
diff changeset
103 self.deleteButton.setEnabled(True)
9288af505740 Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 13
diff changeset
104 self.upButton.setEnabled(self.patternList.row(itm) > 0)
9288af505740 Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 13
diff changeset
105 self.downButton.setEnabled(
62
81f446717433 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 59
diff changeset
106 self.patternList.row(itm) < self.patternList.count() - 1
81f446717433 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 59
diff changeset
107 )
81f446717433 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 59
diff changeset
108
0
deeb8c24a7ab Started the 'Print Remover' project.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
109 @pyqtSlot()
21
9288af505740 Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 13
diff changeset
110 def on_editButton_clicked(self):
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 Private slot to edit the selected entry.
0
deeb8c24a7ab Started the 'Print Remover' project.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
113 """
21
9288af505740 Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 13
diff changeset
114 itm = self.patternList.selectedItems()[0]
9288af505740 Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 13
diff changeset
115 pattern, ok = QInputDialog.getText(
9288af505740 Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 13
diff changeset
116 self,
9288af505740 Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 13
diff changeset
117 self.tr("Line Start Pattern"),
9288af505740 Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 13
diff changeset
118 self.tr("Enter a line start pattern:"),
57
8e12947695cb Ported the plug-in to PyQt6 for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 54
diff changeset
119 QLineEdit.EchoMode.Normal,
62
81f446717433 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 59
diff changeset
120 itm.text(),
81f446717433 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 59
diff changeset
121 )
21
9288af505740 Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 13
diff changeset
122 if ok and pattern:
9288af505740 Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 13
diff changeset
123 itm.setText(pattern)
62
81f446717433 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 59
diff changeset
124
0
deeb8c24a7ab Started the 'Print Remover' project.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
125 @pyqtSlot()
21
9288af505740 Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 13
diff changeset
126 def on_addButton_clicked(self):
0
deeb8c24a7ab Started the 'Print Remover' project.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
127 """
deeb8c24a7ab Started the 'Print Remover' project.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
128 Private slot add a pattern to the list.
deeb8c24a7ab Started the 'Print Remover' project.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
129 """
21
9288af505740 Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 13
diff changeset
130 pattern, ok = QInputDialog.getText(
9288af505740 Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 13
diff changeset
131 self,
9288af505740 Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 13
diff changeset
132 self.tr("Line Start Pattern"),
9288af505740 Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 13
diff changeset
133 self.tr("Enter a line start pattern:"),
62
81f446717433 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 59
diff changeset
134 QLineEdit.EchoMode.Normal,
81f446717433 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 59
diff changeset
135 )
21
9288af505740 Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 13
diff changeset
136 if ok and pattern:
9288af505740 Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 13
diff changeset
137 itm = QListWidgetItem(pattern)
9288af505740 Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 13
diff changeset
138 if len(self.patternList.selectedItems()):
62
81f446717433 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 59
diff changeset
139 row = self.patternList.row(self.patternList.selectedItems()[0]) + 1
21
9288af505740 Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 13
diff changeset
140 self.patternList.insertItem(row, itm)
9288af505740 Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 13
diff changeset
141 for sitm in self.patternList.selectedItems():
9288af505740 Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 13
diff changeset
142 sitm.setSelected(False)
9288af505740 Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 13
diff changeset
143 else:
9288af505740 Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 13
diff changeset
144 self.patternList.addItem(itm)
9288af505740 Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 13
diff changeset
145 itm.setSelected(True)
62
81f446717433 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 59
diff changeset
146
21
9288af505740 Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 13
diff changeset
147 @pyqtSlot()
9288af505740 Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 13
diff changeset
148 def on_addSeparatorButton_clicked(self):
9288af505740 Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 13
diff changeset
149 """
9288af505740 Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 13
diff changeset
150 Private slot add a separator to the list.
0
deeb8c24a7ab Started the 'Print Remover' project.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
151 """
21
9288af505740 Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 13
diff changeset
152 itm = QListWidgetItem(self.tr("--Separator--"))
9288af505740 Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 13
diff changeset
153 if len(self.patternList.selectedItems()):
62
81f446717433 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 59
diff changeset
154 row = self.patternList.row(self.patternList.selectedItems()[0]) + 1
21
9288af505740 Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 13
diff changeset
155 self.patternList.insertItem(row, itm)
9288af505740 Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 13
diff changeset
156 for sitm in self.patternList.selectedItems():
9288af505740 Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 13
diff changeset
157 sitm.setSelected(False)
9288af505740 Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 13
diff changeset
158 else:
9288af505740 Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 13
diff changeset
159 self.patternList.addItem(itm)
9288af505740 Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 13
diff changeset
160 itm.setSelected(True)
62
81f446717433 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 59
diff changeset
161
21
9288af505740 Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 13
diff changeset
162 @pyqtSlot()
9288af505740 Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 13
diff changeset
163 def on_deleteButton_clicked(self):
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 Private slot to delete the selected entry.
9288af505740 Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 13
diff changeset
166 """
9288af505740 Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 13
diff changeset
167 itm = self.patternList.selectedItems()[0]
9288af505740 Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 13
diff changeset
168 self.patternList.takeItem(self.patternList.row(itm))
9288af505740 Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 13
diff changeset
169 del itm
62
81f446717433 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 59
diff changeset
170
21
9288af505740 Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 13
diff changeset
171 @pyqtSlot()
9288af505740 Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 13
diff changeset
172 def on_upButton_clicked(self):
0
deeb8c24a7ab Started the 'Print Remover' project.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
173 """
21
9288af505740 Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 13
diff changeset
174 Private slot to move an entry up.
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 self.__moveSelectedEntry(True)
62
81f446717433 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 59
diff changeset
177
21
9288af505740 Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 13
diff changeset
178 @pyqtSlot()
9288af505740 Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 13
diff changeset
179 def on_downButton_clicked(self):
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 Private slot to move an entry down.
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 self.__moveSelectedEntry(False)
62
81f446717433 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 59
diff changeset
184
21
9288af505740 Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 13
diff changeset
185 def __moveSelectedEntry(self, moveUp):
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 Private method to move the selected entry up or down.
62
81f446717433 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 59
diff changeset
188
57
8e12947695cb Ported the plug-in to PyQt6 for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 54
diff changeset
189 @param moveUp flag indicating to move the entry up
8e12947695cb Ported the plug-in to PyQt6 for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 54
diff changeset
190 @type bool
21
9288af505740 Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 13
diff changeset
191 """
9288af505740 Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 13
diff changeset
192 itm = self.patternList.selectedItems()[0]
9288af505740 Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 13
diff changeset
193 row = self.patternList.row(itm)
9288af505740 Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 13
diff changeset
194 newRow = row - 1 if moveUp else row + 1
9288af505740 Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 13
diff changeset
195 self.patternList.takeItem(row)
9288af505740 Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 13
diff changeset
196 self.patternList.insertItem(newRow, itm)
9288af505740 Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 13
diff changeset
197 for sitm in self.patternList.selectedItems():
9288af505740 Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 13
diff changeset
198 sitm.setSelected(False)
9288af505740 Enhanced the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 13
diff changeset
199 itm.setSelected(True)

eric ide

mercurial