src/eric7/Project/DebuggerPropertiesDialog.py

Wed, 20 Dec 2023 19:28:22 +0100

author
Detlev Offenbach <detlev@die-offenbachs.de>
date
Wed, 20 Dec 2023 19:28:22 +0100
branch
eric7
changeset 10430
e440aaf179ce
parent 10312
bf39dd80404d
child 10439
21c28b0f9e41
permissions
-rw-r--r--

Converted some source code documentation to the new style.

0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1 # -*- coding: utf-8 -*-
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
2
9653
e67609152c5e Updated copyright for 2023.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9514
diff changeset
3 # Copyright (c) 2005 - 2023 Detlev Offenbach <detlev@die-offenbachs.de>
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
4 #
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
5
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
6 """
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
7 Module implementing a dialog for entering project specific debugger settings.
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
8 """
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
9
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
10 import os
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
11
8318
962bce857696 Replaced all imports of PyQt5 to PyQt6 and started to replace code using obsoleted methods and adapt to the PyQt6 enum usage.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8314
diff changeset
12 from PyQt6.QtCore import pyqtSlot
9473
3f23dbf37dbe Resorted the import statements using isort.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9448
diff changeset
13 from PyQt6.QtWidgets import QComboBox, QDialog
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
14
9413
80c06d472826 Changed the eric7 import statements to include the package name (i.e. eric7) in order to not fiddle with sys.path.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9401
diff changeset
15 from eric7 import Preferences
80c06d472826 Changed the eric7 import statements to include the package name (i.e. eric7) in order to not fiddle with sys.path.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9401
diff changeset
16 from eric7.EricGui import EricPixmapCache
9473
3f23dbf37dbe Resorted the import statements using isort.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9448
diff changeset
17 from eric7.EricWidgets.EricApplication import ericApp
3f23dbf37dbe Resorted the import statements using isort.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9448
diff changeset
18 from eric7.EricWidgets.EricCompleters import EricDirCompleter
3f23dbf37dbe Resorted the import statements using isort.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9448
diff changeset
19 from eric7.EricWidgets.EricPathPicker import EricPathPickerModes
3f23dbf37dbe Resorted the import statements using isort.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9448
diff changeset
20 from eric7.Globals import getConfig
3f23dbf37dbe Resorted the import statements using isort.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9448
diff changeset
21
3f23dbf37dbe Resorted the import statements using isort.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9448
diff changeset
22 from .Ui_DebuggerPropertiesDialog import Ui_DebuggerPropertiesDialog
5525
1771a7f9065c Added capability to remember previously used entries in the project debugger properties dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5389
diff changeset
23
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
24
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
25 class DebuggerPropertiesDialog(QDialog, Ui_DebuggerPropertiesDialog):
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
26 """
2995
63d874899b8b Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2302
diff changeset
27 Class implementing a dialog for entering project specific debugger
63d874899b8b Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2302
diff changeset
28 settings.
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
29 """
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
30
945
8cd4d08fa9f6 Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 882
diff changeset
31 def __init__(self, project, parent=None, name=None):
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
32 """
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
33 Constructor
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
34
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
35 @param project reference to the project object
10430
e440aaf179ce Converted some source code documentation to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10312
diff changeset
36 @type Project
e440aaf179ce Converted some source code documentation to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10312
diff changeset
37 @param parent parent widget of this dialog
e440aaf179ce Converted some source code documentation to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10312
diff changeset
38 @type QWidget
e440aaf179ce Converted some source code documentation to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10312
diff changeset
39 @param name name of this dialog
e440aaf179ce Converted some source code documentation to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10312
diff changeset
40 @type str
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
41 """
8218
7c09585bd960 Applied some more code simplifications suggested by the new Simplify checker (super(Foo, self) => super()).
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8149
diff changeset
42 super().__init__(parent)
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
43 if name:
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
44 self.setObjectName(name)
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
45 self.setupUi(self)
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
46
9398
b5426d4f2187 Did some adjustments to the 'embedded environment' code.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
47 self.project = project
b5426d4f2187 Did some adjustments to the 'embedded environment' code.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
48
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
49 debugClientsHistory = Preferences.getProject("DebugClientsHistory")
8356
68ec9c3d4de5 Renamed the modules and classes of the E5Gui package to have the prefix 'Eric' instead of 'E5'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8327
diff changeset
50 self.debugClientPicker.setMode(EricPathPickerModes.OPEN_FILE_MODE)
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
51 self.debugClientPicker.setInsertPolicy(QComboBox.InsertPolicy.InsertAtTop)
5525
1771a7f9065c Added capability to remember previously used entries in the project debugger properties dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5389
diff changeset
52 self.debugClientPicker.setSizeAdjustPolicy(
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
53 QComboBox.SizeAdjustPolicy.AdjustToMinimumContentsLengthWithIcon
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
54 )
5525
1771a7f9065c Added capability to remember previously used entries in the project debugger properties dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5389
diff changeset
55 self.debugClientPicker.setPathsList(debugClientsHistory)
9413
80c06d472826 Changed the eric7 import statements to include the package name (i.e. eric7) in order to not fiddle with sys.path.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9401
diff changeset
56 self.debugClientClearHistoryButton.setIcon(
80c06d472826 Changed the eric7 import statements to include the package name (i.e. eric7) in order to not fiddle with sys.path.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9401
diff changeset
57 EricPixmapCache.getIcon("editDelete")
80c06d472826 Changed the eric7 import statements to include the package name (i.e. eric7) in order to not fiddle with sys.path.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9401
diff changeset
58 )
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
59
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
60 self.translationLocalCompleter = EricDirCompleter(self.translationLocalEdit)
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
61
9398
b5426d4f2187 Did some adjustments to the 'embedded environment' code.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
62 venvManager = ericApp().getObject("VirtualEnvManager")
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
63
9514
2b104ad132a4 Made the project pdata structure private and added getter and setter methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9473
diff changeset
64 self.venvGroupBox.setVisible(
2b104ad132a4 Made the project pdata structure private and added getter and setter methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9473
diff changeset
65 not self.project.getProjectData(dataKey="EMBEDDED_VENV")
2b104ad132a4 Made the project pdata structure private and added getter and setter methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9473
diff changeset
66 )
9398
b5426d4f2187 Did some adjustments to the 'embedded environment' code.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
67 self.venvComboBox.addItem("")
9514
2b104ad132a4 Made the project pdata structure private and added getter and setter methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9473
diff changeset
68 if self.project.getProjectData(dataKey="EMBEDDED_VENV"):
9398
b5426d4f2187 Did some adjustments to the 'embedded environment' code.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
69 venvIndex = 0
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
70 else:
9398
b5426d4f2187 Did some adjustments to the 'embedded environment' code.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
71 self.venvComboBox.addItems(sorted(venvManager.getVirtualenvNames()))
b5426d4f2187 Did some adjustments to the 'embedded environment' code.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
72
b5426d4f2187 Did some adjustments to the 'embedded environment' code.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
73 if self.project.debugProperties["VIRTUALENV"]:
b5426d4f2187 Did some adjustments to the 'embedded environment' code.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
74 venvIndex = max(
b5426d4f2187 Did some adjustments to the 'embedded environment' code.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
75 0,
9401
38514063ecee Corrected a few code style issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9398
diff changeset
76 self.venvComboBox.findText(
38514063ecee Corrected a few code style issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9398
diff changeset
77 self.project.debugProperties["VIRTUALENV"]
38514063ecee Corrected a few code style issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9398
diff changeset
78 ),
9398
b5426d4f2187 Did some adjustments to the 'embedded environment' code.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
79 )
6352
4bdc6503df81 Continued to remove all explicit references to Python interpreters and replace them by references to virtual environments.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6048
diff changeset
80 else:
9514
2b104ad132a4 Made the project pdata structure private and added getter and setter methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9473
diff changeset
81 if self.project.getProjectData(dataKey="PROGLANGUAGE") == "Python3":
9398
b5426d4f2187 Did some adjustments to the 'embedded environment' code.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
82 venvName = Preferences.getDebugger("Python3VirtualEnv")
b5426d4f2187 Did some adjustments to the 'embedded environment' code.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
83 else:
b5426d4f2187 Did some adjustments to the 'embedded environment' code.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
84 venvName = ""
b5426d4f2187 Did some adjustments to the 'embedded environment' code.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
85 if not venvName:
b5426d4f2187 Did some adjustments to the 'embedded environment' code.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
86 venvName, _ = venvManager.getDefaultEnvironment()
b5426d4f2187 Did some adjustments to the 'embedded environment' code.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
87 if venvName:
b5426d4f2187 Did some adjustments to the 'embedded environment' code.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
88 venvIndex = max(0, self.venvComboBox.findText(venvName))
b5426d4f2187 Did some adjustments to the 'embedded environment' code.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
89 else:
b5426d4f2187 Did some adjustments to the 'embedded environment' code.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
90 venvIndex = 0
6352
4bdc6503df81 Continued to remove all explicit references to Python interpreters and replace them by references to virtual environments.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6048
diff changeset
91 self.venvComboBox.setCurrentIndex(venvIndex)
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
92 if self.project.debugProperties["DEBUGCLIENT"]:
4582
3a1d1d4c6f4f Modified more dialogs to use the path picker widgets.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4021
diff changeset
93 self.debugClientPicker.setText(
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
94 self.project.debugProperties["DEBUGCLIENT"], toNative=False
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
95 )
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
96 else:
9514
2b104ad132a4 Made the project pdata structure private and added getter and setter methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9473
diff changeset
97 if self.project.getProjectData(dataKey="PROGLANGUAGE") == "Python3":
2995
63d874899b8b Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2302
diff changeset
98 debugClient = os.path.join(
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
99 getConfig("ericDir"), "DebugClients", "Python", "DebugClient.py"
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
100 )
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
101 else:
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
102 debugClient = ""
6675
71c12729cf08 DebuggerPropertiesDialog: fixed a bug causing the debug client path to be changed to wrong path separators if local and remote architectures are different.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6645
diff changeset
103 self.debugClientPicker.setText(debugClient, toNative=False)
564
b3d966393ba9 Did some code cleanup.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 55
diff changeset
104 self.debugEnvironmentOverrideCheckBox.setChecked(
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
105 self.project.debugProperties["ENVIRONMENTOVERRIDE"]
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
106 )
564
b3d966393ba9 Did some code cleanup.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 55
diff changeset
107 self.debugEnvironmentEdit.setText(
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
108 self.project.debugProperties["ENVIRONMENTSTRING"]
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
109 )
564
b3d966393ba9 Did some code cleanup.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 55
diff changeset
110 self.remoteDebuggerGroup.setChecked(
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
111 self.project.debugProperties["REMOTEDEBUGGER"]
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
112 )
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
113 self.remoteHostEdit.setText(self.project.debugProperties["REMOTEHOST"])
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
114 self.remoteCommandEdit.setText(self.project.debugProperties["REMOTECOMMAND"])
10311
0a141f9ae677 Debugger
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9653
diff changeset
115 self.remoteDebugClientEdit.setText(
0a141f9ae677 Debugger
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9653
diff changeset
116 self.project.debugProperties["REMOTEDEBUGCLIENT"]
0a141f9ae677 Debugger
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9653
diff changeset
117 )
564
b3d966393ba9 Did some code cleanup.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 55
diff changeset
118 self.pathTranslationGroup.setChecked(
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
119 self.project.debugProperties["PATHTRANSLATION"]
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
120 )
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
121 self.translationRemoteEdit.setText(self.project.debugProperties["REMOTEPATH"])
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
122 self.translationLocalEdit.setText(self.project.debugProperties["LOCALPATH"])
564
b3d966393ba9 Did some code cleanup.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 55
diff changeset
123 self.consoleDebuggerGroup.setChecked(
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
124 self.project.debugProperties["CONSOLEDEBUGGER"]
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
125 )
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
126 self.consoleCommandEdit.setText(self.project.debugProperties["CONSOLECOMMAND"])
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
127 self.redirectCheckBox.setChecked(self.project.debugProperties["REDIRECT"])
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
128 self.noEncodingCheckBox.setChecked(self.project.debugProperties["NOENCODING"])
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
129
3366
6084bb3c3911 Made some changes to have a bunch of dialogs with correct sizes.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3190
diff changeset
130 msh = self.minimumSizeHint()
6084bb3c3911 Made some changes to have a bunch of dialogs with correct sizes.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3190
diff changeset
131 self.resize(max(self.width(), msh.width()), msh.height())
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
132
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
133 @pyqtSlot()
4582
3a1d1d4c6f4f Modified more dialogs to use the path picker widgets.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4021
diff changeset
134 def on_debugClientPicker_aboutToShowPathPickerDialog(self):
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
135 """
4582
3a1d1d4c6f4f Modified more dialogs to use the path picker widgets.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4021
diff changeset
136 Private slot to perform actions before the debug client selection
4601
0017e7cb67ae Fixed a few code style issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4582
diff changeset
137 dialog is shown.
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
138 """
9514
2b104ad132a4 Made the project pdata structure private and added getter and setter methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9473
diff changeset
139 filters = self.project.getDebuggerFilters(
2b104ad132a4 Made the project pdata structure private and added getter and setter methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9473
diff changeset
140 self.project.getProjectData(dataKey="PROGLANGUAGE")
2b104ad132a4 Made the project pdata structure private and added getter and setter methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9473
diff changeset
141 )
3190
a9a94491c4fd Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3186
diff changeset
142 filters += self.tr("All Files (*)")
4582
3a1d1d4c6f4f Modified more dialogs to use the path picker widgets.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4021
diff changeset
143 self.debugClientPicker.setFilters(filters)
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
144
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
145 def storeData(self):
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
146 """
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
147 Public method to store the entered/modified data.
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
148 """
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
149 self.project.debugProperties["VIRTUALENV"] = self.venvComboBox.currentText()
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
150
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
151 self.project.debugProperties["DEBUGCLIENT"] = self.debugClientPicker.text(
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
152 toNative=False
7265
0665c4d509c9 Continued to resolve code style issue M841.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7229
diff changeset
153 )
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
154 if not self.project.debugProperties["DEBUGCLIENT"]:
9514
2b104ad132a4 Made the project pdata structure private and added getter and setter methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9473
diff changeset
155 if self.project.getProjectData(dataKey="PROGLANGUAGE") == "Python3":
2995
63d874899b8b Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2302
diff changeset
156 debugClient = os.path.join(
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
157 getConfig("ericDir"), "DebugClients", "Python", "DebugClient.py"
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
158 )
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
159 else:
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
160 debugClient = ""
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
161 self.project.debugProperties["DEBUGCLIENT"] = debugClient
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
162
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
163 self.project.debugProperties[
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
164 "ENVIRONMENTOVERRIDE"
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
165 ] = self.debugEnvironmentOverrideCheckBox.isChecked()
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
166 self.project.debugProperties[
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
167 "ENVIRONMENTSTRING"
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
168 ] = self.debugEnvironmentEdit.text()
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
169 self.project.debugProperties[
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
170 "REMOTEDEBUGGER"
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
171 ] = self.remoteDebuggerGroup.isChecked()
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
172 self.project.debugProperties["REMOTEHOST"] = self.remoteHostEdit.text()
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
173 self.project.debugProperties["REMOTECOMMAND"] = self.remoteCommandEdit.text()
10312
bf39dd80404d Corrected a typo causing an exception.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10311
diff changeset
174 self.project.debugProperties[
10311
0a141f9ae677 Debugger
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9653
diff changeset
175 "REMOTEDEBUGCLIENT"
0a141f9ae677 Debugger
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9653
diff changeset
176 ] = self.remoteDebugClientEdit.text()
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
177 self.project.debugProperties[
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
178 "PATHTRANSLATION"
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
179 ] = self.pathTranslationGroup.isChecked()
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
180 self.project.debugProperties["REMOTEPATH"] = self.translationRemoteEdit.text()
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
181 self.project.debugProperties["LOCALPATH"] = self.translationLocalEdit.text()
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
182 self.project.debugProperties[
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
183 "CONSOLEDEBUGGER"
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
184 ] = self.consoleDebuggerGroup.isChecked()
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
185 self.project.debugProperties["CONSOLECOMMAND"] = self.consoleCommandEdit.text()
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
186 self.project.debugProperties["REDIRECT"] = self.redirectCheckBox.isChecked()
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
187 self.project.debugProperties["NOENCODING"] = self.noEncodingCheckBox.isChecked()
788
5b1b59777460 Added a feature where flags can be given at the end of a source file. The only flag supported is 'FileType' to overwrite the filetype detection mechanism.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
188 self.project.debugPropertiesLoaded = True
6895
681a06d12ef6 Project: only auto-save debug properties if they have been changed.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6675
diff changeset
189 self.project.debugPropertiesChanged = True
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
190
5525
1771a7f9065c Added capability to remember previously used entries in the project debugger properties dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5389
diff changeset
191 self.__saveHistories()
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
192
5525
1771a7f9065c Added capability to remember previously used entries in the project debugger properties dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5389
diff changeset
193 def __saveHistories(self):
1771a7f9065c Added capability to remember previously used entries in the project debugger properties dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5389
diff changeset
194 """
1771a7f9065c Added capability to remember previously used entries in the project debugger properties dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5389
diff changeset
195 Private method to save the path picker histories.
1771a7f9065c Added capability to remember previously used entries in the project debugger properties dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5389
diff changeset
196 """
6675
71c12729cf08 DebuggerPropertiesDialog: fixed a bug causing the debug client path to be changed to wrong path separators if local and remote architectures are different.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6645
diff changeset
197 debugClient = self.debugClientPicker.text(toNative=False)
5525
1771a7f9065c Added capability to remember previously used entries in the project debugger properties dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5389
diff changeset
198 debugClientsHistory = self.debugClientPicker.getPathItems()
1771a7f9065c Added capability to remember previously used entries in the project debugger properties dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5389
diff changeset
199 if debugClient not in debugClientsHistory:
1771a7f9065c Added capability to remember previously used entries in the project debugger properties dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5389
diff changeset
200 debugClientsHistory.insert(0, debugClient)
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
201 Preferences.setProject("DebugClientsHistory", debugClientsHistory)
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
202
5525
1771a7f9065c Added capability to remember previously used entries in the project debugger properties dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5389
diff changeset
203 @pyqtSlot()
1771a7f9065c Added capability to remember previously used entries in the project debugger properties dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5389
diff changeset
204 def on_debugClientClearHistoryButton_clicked(self):
1771a7f9065c Added capability to remember previously used entries in the project debugger properties dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5389
diff changeset
205 """
1771a7f9065c Added capability to remember previously used entries in the project debugger properties dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5389
diff changeset
206 Private slot to clear the debug clients history.
1771a7f9065c Added capability to remember previously used entries in the project debugger properties dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5389
diff changeset
207 """
1771a7f9065c Added capability to remember previously used entries in the project debugger properties dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5389
diff changeset
208 self.__clearHistory(self.debugClientPicker)
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
209
5525
1771a7f9065c Added capability to remember previously used entries in the project debugger properties dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5389
diff changeset
210 def __clearHistory(self, picker):
1771a7f9065c Added capability to remember previously used entries in the project debugger properties dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5389
diff changeset
211 """
5558
858abfcbaf28 Fixed a few code style issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5525
diff changeset
212 Private method to clear a path picker history.
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
213
5558
858abfcbaf28 Fixed a few code style issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5525
diff changeset
214 @param picker reference to the path picker
8356
68ec9c3d4de5 Renamed the modules and classes of the E5Gui package to have the prefix 'Eric' instead of 'E5'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8327
diff changeset
215 @type EricComboPathPicker
5525
1771a7f9065c Added capability to remember previously used entries in the project debugger properties dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5389
diff changeset
216 """
1771a7f9065c Added capability to remember previously used entries in the project debugger properties dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5389
diff changeset
217 currentText = picker.text()
1771a7f9065c Added capability to remember previously used entries in the project debugger properties dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5389
diff changeset
218 picker.clear()
1771a7f9065c Added capability to remember previously used entries in the project debugger properties dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5389
diff changeset
219 picker.setText(currentText)
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
220
5525
1771a7f9065c Added capability to remember previously used entries in the project debugger properties dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5389
diff changeset
221 self.__saveHistories()

eric ide

mercurial