RefactoringRope/ChangesPreviewDialog.py

Wed, 21 Sep 2022 15:30:34 +0200

author
Detlev Offenbach <detlev@die-offenbachs.de>
date
Wed, 21 Sep 2022 15:30:34 +0200
branch
eric7
changeset 389
4f53795beff0
parent 374
958f34e97952
child 411
8cccb49bba7b
permissions
-rw-r--r--

Reformatted source code with 'Black'.

3
3be1b4662b48 Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1 # -*- coding: utf-8 -*-
3be1b4662b48 Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
2
374
958f34e97952 Updated copyright for 2022.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 365
diff changeset
3 # Copyright (c) 2010 - 2022 Detlev Offenbach <detlev@die-offenbachs.de>
3
3be1b4662b48 Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
4 #
3be1b4662b48 Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
5
3be1b4662b48 Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
6 """
3be1b4662b48 Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
7 Module implementing the Changes preview dialog.
3be1b4662b48 Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
8 """
3be1b4662b48 Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
9
365
f740b50380df Ported the plug-in to PyQt6 for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 347
diff changeset
10 from PyQt6.QtCore import Qt, pyqtSlot
f740b50380df Ported the plug-in to PyQt6 for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 347
diff changeset
11 from PyQt6.QtWidgets import QDialogButtonBox, QListWidgetItem
3
3be1b4662b48 Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
12
203
c38750e1bafd Performed some code cleanup actions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 172
diff changeset
13 from .PreviewDialogBase import PreviewDialogBase
3
3be1b4662b48 Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
14
20
83b71483e198 Made the code PEP-8 compliant.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3
diff changeset
15
3
3be1b4662b48 Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
16 class ChangesPreviewDialog(PreviewDialogBase):
3be1b4662b48 Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
17 """
3be1b4662b48 Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
18 Class implementing the Changes preview dialog.
3be1b4662b48 Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
19 """
389
4f53795beff0 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 374
diff changeset
20
365
f740b50380df Ported the plug-in to PyQt6 for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 347
diff changeset
21 ChangeRole = Qt.ItemDataRole.UserRole
389
4f53795beff0 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 374
diff changeset
22
172
c8890f852917 Continued implementing the distributed rename refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 151
diff changeset
23 def __init__(self, description, changes, parent):
3
3be1b4662b48 Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
24 """
3be1b4662b48 Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
25 Constructor
389
4f53795beff0 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 374
diff changeset
26
172
c8890f852917 Continued implementing the distributed rename refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 151
diff changeset
27 @param description description of the changes
c8890f852917 Continued implementing the distributed rename refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 151
diff changeset
28 @type str
c8890f852917 Continued implementing the distributed rename refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 151
diff changeset
29 @param changes list of lists containing the change data
c8890f852917 Continued implementing the distributed rename refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 151
diff changeset
30 @type list of list of (str, str)
c8890f852917 Continued implementing the distributed rename refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 151
diff changeset
31 @param parent reference to the parent widget
c8890f852917 Continued implementing the distributed rename refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 151
diff changeset
32 @type QWidget
3
3be1b4662b48 Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
33 """
3be1b4662b48 Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
34 PreviewDialogBase.__init__(self, parent)
389
4f53795beff0 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 374
diff changeset
35
55
d501156be247 Fixed code style issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 43
diff changeset
36 self.buttonBox.addButton(
389
4f53795beff0 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 374
diff changeset
37 self.tr("&Apply Changes"), QDialogButtonBox.ButtonRole.AcceptRole
4f53795beff0 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 374
diff changeset
38 )
365
f740b50380df Ported the plug-in to PyQt6 for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 347
diff changeset
39 self.buttonBox.addButton(QDialogButtonBox.StandardButton.Cancel)
389
4f53795beff0 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 374
diff changeset
40
172
c8890f852917 Continued implementing the distributed rename refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 151
diff changeset
41 self.description.setText(description)
c8890f852917 Continued implementing the distributed rename refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 151
diff changeset
42 for changeTitle, changeText in changes:
c8890f852917 Continued implementing the distributed rename refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 151
diff changeset
43 itm = QListWidgetItem(changeTitle, self.changesList)
c8890f852917 Continued implementing the distributed rename refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 151
diff changeset
44 if changeText is None:
c8890f852917 Continued implementing the distributed rename refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 151
diff changeset
45 changeText = self.tr("No changes available.")
c8890f852917 Continued implementing the distributed rename refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 151
diff changeset
46 itm.setData(ChangesPreviewDialog.ChangeRole, changeText)
3
3be1b4662b48 Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
47 if self.changesList.count():
3be1b4662b48 Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
48 self.changesList.item(0).setSelected(True)
389
4f53795beff0 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 374
diff changeset
49 self.on_changesList_currentItemChanged(self.changesList.item(0), None)
4f53795beff0 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 374
diff changeset
50
3
3be1b4662b48 Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
51 @pyqtSlot(QListWidgetItem, QListWidgetItem)
3be1b4662b48 Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
52 def on_changesList_currentItemChanged(self, current, previous):
3be1b4662b48 Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
53 """
3be1b4662b48 Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
54 Private slot called when a change is selected.
389
4f53795beff0 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 374
diff changeset
55
172
c8890f852917 Continued implementing the distributed rename refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 151
diff changeset
56 @param current reference to the new current item
c8890f852917 Continued implementing the distributed rename refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 151
diff changeset
57 @type QListWidgetItem
c8890f852917 Continued implementing the distributed rename refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 151
diff changeset
58 @param previous reference to the old current item
c8890f852917 Continued implementing the distributed rename refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 151
diff changeset
59 @type QListWidgetItem
3
3be1b4662b48 Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
60 """
3be1b4662b48 Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
61 if current is None:
3be1b4662b48 Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
62 return
389
4f53795beff0 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 374
diff changeset
63
3
3be1b4662b48 Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
64 self.previewEdit.clear()
389
4f53795beff0 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 374
diff changeset
65 for line in current.data(ChangesPreviewDialog.ChangeRole).splitlines(True):
3
3be1b4662b48 Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
66 try:
151
5260100b6700 Fixed some code style issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 147
diff changeset
67 charFormat = self.formats[line[0]]
3
3be1b4662b48 Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
68 except (IndexError, KeyError):
389
4f53795beff0 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 374
diff changeset
69 charFormat = self.formats[" "]
151
5260100b6700 Fixed some code style issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 147
diff changeset
70 self._appendText(line, charFormat)

eric ide

mercurial