RefactoringRope/RopeProgressDialog.py

Tue, 10 Dec 2024 15:49:01 +0100

author
Detlev Offenbach <detlev@die-offenbachs.de>
date
Tue, 10 Dec 2024 15:49:01 +0100
branch
eric7
changeset 426
7592a1c052e8
parent 412
6fa5892b9097
permissions
-rw-r--r--

Updated copyright for 2025.

164
121d426d4ed7 Coded a distributed progress dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1 # -*- coding: utf-8 -*-
121d426d4ed7 Coded a distributed progress dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
2
426
7592a1c052e8 Updated copyright for 2025.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 412
diff changeset
3 # Copyright (c) 2017 - 2025 Detlev Offenbach <detlev@die-offenbachs.de>
164
121d426d4ed7 Coded a distributed progress dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
4 #
121d426d4ed7 Coded a distributed progress dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
5
121d426d4ed7 Coded a distributed progress dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
6 """
121d426d4ed7 Coded a distributed progress dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
7 Module implementing a TaskHandle class with a progress dialog.
121d426d4ed7 Coded a distributed progress dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
8 """
121d426d4ed7 Coded a distributed progress dialog.
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: 360
diff changeset
10 from PyQt6.QtCore import QCoreApplication
f740b50380df Ported the plug-in to PyQt6 for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 360
diff changeset
11 from PyQt6.QtWidgets import QLabel
164
121d426d4ed7 Coded a distributed progress dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
12
396
933b8fcd854f Adapted the import statements to the new structure.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 389
diff changeset
13 from eric7.EricWidgets.EricProgressDialog import EricProgressDialog
164
121d426d4ed7 Coded a distributed progress dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
14
121d426d4ed7 Coded a distributed progress dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
15
365
f740b50380df Ported the plug-in to PyQt6 for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 360
diff changeset
16 class RopeProgressDialog(EricProgressDialog):
164
121d426d4ed7 Coded a distributed progress dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
17 """
121d426d4ed7 Coded a distributed progress dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
18 Class implementing TaskHandle with a progress dialog.
121d426d4ed7 Coded a distributed progress dialog.
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
164
121d426d4ed7 Coded a distributed progress dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
21 def __init__(self, server, title, interruptable=True, parent=None):
121d426d4ed7 Coded a distributed progress dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
22 """
121d426d4ed7 Coded a distributed progress dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
23 Constructor
389
4f53795beff0 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 374
diff changeset
24
164
121d426d4ed7 Coded a distributed progress dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
25 @param server reference to the JSON server
365
f740b50380df Ported the plug-in to PyQt6 for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 360
diff changeset
26 @type EricJsonServer
164
121d426d4ed7 Coded a distributed progress dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
27 @param title title for the dialog
121d426d4ed7 Coded a distributed progress dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
28 @type str
121d426d4ed7 Coded a distributed progress dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
29 @param interruptable flag indicating, that the task may be
121d426d4ed7 Coded a distributed progress dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
30 interrupted
121d426d4ed7 Coded a distributed progress dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
31 @type bool
121d426d4ed7 Coded a distributed progress dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
32 @param parent reference to the parent widget
121d426d4ed7 Coded a distributed progress dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
33 @type QWidget
121d426d4ed7 Coded a distributed progress dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
34 """
354
a967ff16629a - implemented some code simplifications
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 347
diff changeset
35 super().__init__("", "", 0, 1, "", parent)
164
121d426d4ed7 Coded a distributed progress dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
36 if interruptable:
165
ea41742015af Implemented the "Query References" function.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 164
diff changeset
37 self.setCancelButtonText(self.tr("Interrupt"))
ea41742015af Implemented the "Query References" function.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 164
diff changeset
38 self.setFormat(self.tr("%v/%m files"))
164
121d426d4ed7 Coded a distributed progress dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
39 label = QLabel("")
121d426d4ed7 Coded a distributed progress dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
40 label.setWordWrap(True)
121d426d4ed7 Coded a distributed progress dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
41 self.setLabel(label)
365
f740b50380df Ported the plug-in to PyQt6 for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 360
diff changeset
42 self.setWindowTitle(self.tr("eric7 - {0}").format(title))
389
4f53795beff0 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 374
diff changeset
43
164
121d426d4ed7 Coded a distributed progress dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
44 self.__server = server
389
4f53795beff0 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 374
diff changeset
45
164
121d426d4ed7 Coded a distributed progress dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
46 def updateProgress(self, params):
121d426d4ed7 Coded a distributed progress dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
47 """
121d426d4ed7 Coded a distributed progress dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
48 Public slot to handle the task progress.
389
4f53795beff0 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 374
diff changeset
49
164
121d426d4ed7 Coded a distributed progress dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
50 @param params dictionary containing the data to be set
121d426d4ed7 Coded a distributed progress dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
51 @type dict
121d426d4ed7 Coded a distributed progress dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
52 """
121d426d4ed7 Coded a distributed progress dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
53 if params:
121d426d4ed7 Coded a distributed progress dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
54 self.setLabelText(params["Text"])
121d426d4ed7 Coded a distributed progress dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
55 if "Maximum" in params:
121d426d4ed7 Coded a distributed progress dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
56 # these are always sent together
121d426d4ed7 Coded a distributed progress dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
57 self.setMaximum(params["Maximum"])
121d426d4ed7 Coded a distributed progress dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
58 self.setValue(params["Value"])
389
4f53795beff0 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 374
diff changeset
59
164
121d426d4ed7 Coded a distributed progress dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
60 QCoreApplication.processEvents()
389
4f53795beff0 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 374
diff changeset
61
164
121d426d4ed7 Coded a distributed progress dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
62 if self.wasCanceled():
121d426d4ed7 Coded a distributed progress dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
63 self.__server.sendJson("AbortAction", {})

eric ide

mercurial