--- a/src/eric7/Project/DebuggerPropertiesDialog.py Wed Jul 13 11:16:20 2022 +0200 +++ b/src/eric7/Project/DebuggerPropertiesDialog.py Wed Jul 13 14:55:47 2022 +0200 @@ -30,10 +30,11 @@ Class implementing a dialog for entering project specific debugger settings. """ + def __init__(self, project, parent=None, name=None): """ Constructor - + @param project reference to the project object @param parent parent widget of this dialog (QWidget) @param name name of this dialog (string) @@ -42,31 +43,30 @@ if name: self.setObjectName(name) self.setupUi(self) - - debugClientsHistory = Preferences.getProject( - "DebugClientsHistory") + + debugClientsHistory = Preferences.getProject("DebugClientsHistory") self.debugClientPicker.setMode(EricPathPickerModes.OPEN_FILE_MODE) - self.debugClientPicker.setInsertPolicy( - QComboBox.InsertPolicy.InsertAtTop) + self.debugClientPicker.setInsertPolicy(QComboBox.InsertPolicy.InsertAtTop) self.debugClientPicker.setSizeAdjustPolicy( - QComboBox.SizeAdjustPolicy.AdjustToMinimumContentsLengthWithIcon) + QComboBox.SizeAdjustPolicy.AdjustToMinimumContentsLengthWithIcon + ) self.debugClientPicker.setPathsList(debugClientsHistory) - self.debugClientClearHistoryButton.setIcon( - UI.PixmapCache.getIcon("editDelete")) - + self.debugClientClearHistoryButton.setIcon(UI.PixmapCache.getIcon("editDelete")) + venvManager = ericApp().getObject("VirtualEnvManager") - + self.venvComboBox.addItem("") self.venvComboBox.addItems(sorted(venvManager.getVirtualenvNames())) - - self.translationLocalCompleter = EricDirCompleter( - self.translationLocalEdit) - + + self.translationLocalCompleter = EricDirCompleter(self.translationLocalEdit) + self.project = project - + if self.project.debugProperties["VIRTUALENV"]: - venvIndex = max(0, self.venvComboBox.findText( - self.project.debugProperties["VIRTUALENV"])) + venvIndex = max( + 0, + self.venvComboBox.findText(self.project.debugProperties["VIRTUALENV"]), + ) else: if self.project.pdata["PROGLANGUAGE"] == "Python3": venvName = Preferences.getDebugger("Python3VirtualEnv") @@ -81,41 +81,39 @@ self.venvComboBox.setCurrentIndex(venvIndex) if self.project.debugProperties["DEBUGCLIENT"]: self.debugClientPicker.setText( - self.project.debugProperties["DEBUGCLIENT"], - toNative=False) + self.project.debugProperties["DEBUGCLIENT"], toNative=False + ) else: if self.project.pdata["PROGLANGUAGE"] == "Python3": debugClient = os.path.join( - getConfig('ericDir'), - "DebugClients", "Python", "DebugClient.py") + getConfig("ericDir"), "DebugClients", "Python", "DebugClient.py" + ) else: debugClient = "" self.debugClientPicker.setText(debugClient, toNative=False) self.debugEnvironmentOverrideCheckBox.setChecked( - self.project.debugProperties["ENVIRONMENTOVERRIDE"]) + self.project.debugProperties["ENVIRONMENTOVERRIDE"] + ) self.debugEnvironmentEdit.setText( - self.project.debugProperties["ENVIRONMENTSTRING"]) + self.project.debugProperties["ENVIRONMENTSTRING"] + ) self.remoteDebuggerGroup.setChecked( - self.project.debugProperties["REMOTEDEBUGGER"]) - self.remoteHostEdit.setText( - self.project.debugProperties["REMOTEHOST"]) - self.remoteCommandEdit.setText( - self.project.debugProperties["REMOTECOMMAND"]) + self.project.debugProperties["REMOTEDEBUGGER"] + ) + self.remoteHostEdit.setText(self.project.debugProperties["REMOTEHOST"]) + self.remoteCommandEdit.setText(self.project.debugProperties["REMOTECOMMAND"]) self.pathTranslationGroup.setChecked( - self.project.debugProperties["PATHTRANSLATION"]) - self.translationRemoteEdit.setText( - self.project.debugProperties["REMOTEPATH"]) - self.translationLocalEdit.setText( - self.project.debugProperties["LOCALPATH"]) + self.project.debugProperties["PATHTRANSLATION"] + ) + self.translationRemoteEdit.setText(self.project.debugProperties["REMOTEPATH"]) + self.translationLocalEdit.setText(self.project.debugProperties["LOCALPATH"]) self.consoleDebuggerGroup.setChecked( - self.project.debugProperties["CONSOLEDEBUGGER"]) - self.consoleCommandEdit.setText( - self.project.debugProperties["CONSOLECOMMAND"]) - self.redirectCheckBox.setChecked( - self.project.debugProperties["REDIRECT"]) - self.noEncodingCheckBox.setChecked( - self.project.debugProperties["NOENCODING"]) - + self.project.debugProperties["CONSOLEDEBUGGER"] + ) + self.consoleCommandEdit.setText(self.project.debugProperties["CONSOLECOMMAND"]) + self.redirectCheckBox.setChecked(self.project.debugProperties["REDIRECT"]) + self.noEncodingCheckBox.setChecked(self.project.debugProperties["NOENCODING"]) + msh = self.minimumSizeHint() self.resize(max(self.width(), msh.width()), msh.height()) @@ -125,8 +123,7 @@ Private slot to perform actions before the debug client selection dialog is shown. """ - filters = self.project.getDebuggerFilters( - self.project.pdata["PROGLANGUAGE"]) + filters = self.project.getDebuggerFilters(self.project.pdata["PROGLANGUAGE"]) filters += self.tr("All Files (*)") self.debugClientPicker.setFilters(filters) @@ -134,63 +131,47 @@ """ Public method to store the entered/modified data. """ - self.project.debugProperties["VIRTUALENV"] = ( - self.venvComboBox.currentText() - ) - - self.project.debugProperties["DEBUGCLIENT"] = ( - self.debugClientPicker.text(toNative=False) + self.project.debugProperties["VIRTUALENV"] = self.venvComboBox.currentText() + + self.project.debugProperties["DEBUGCLIENT"] = self.debugClientPicker.text( + toNative=False ) if not self.project.debugProperties["DEBUGCLIENT"]: if self.project.pdata["PROGLANGUAGE"] == "Python3": debugClient = os.path.join( - getConfig('ericDir'), - "DebugClients", "Python", "DebugClient.py") + getConfig("ericDir"), "DebugClients", "Python", "DebugClient.py" + ) else: debugClient = "" self.project.debugProperties["DEBUGCLIENT"] = debugClient - - self.project.debugProperties["ENVIRONMENTOVERRIDE"] = ( - self.debugEnvironmentOverrideCheckBox.isChecked() - ) - self.project.debugProperties["ENVIRONMENTSTRING"] = ( - self.debugEnvironmentEdit.text() - ) - self.project.debugProperties["REMOTEDEBUGGER"] = ( - self.remoteDebuggerGroup.isChecked() - ) - self.project.debugProperties["REMOTEHOST"] = ( - self.remoteHostEdit.text() - ) - self.project.debugProperties["REMOTECOMMAND"] = ( - self.remoteCommandEdit.text() - ) - self.project.debugProperties["PATHTRANSLATION"] = ( - self.pathTranslationGroup.isChecked() - ) - self.project.debugProperties["REMOTEPATH"] = ( - self.translationRemoteEdit.text() - ) - self.project.debugProperties["LOCALPATH"] = ( - self.translationLocalEdit.text() - ) - self.project.debugProperties["CONSOLEDEBUGGER"] = ( - self.consoleDebuggerGroup.isChecked() - ) - self.project.debugProperties["CONSOLECOMMAND"] = ( - self.consoleCommandEdit.text() - ) - self.project.debugProperties["REDIRECT"] = ( - self.redirectCheckBox.isChecked() - ) - self.project.debugProperties["NOENCODING"] = ( - self.noEncodingCheckBox.isChecked() - ) + + self.project.debugProperties[ + "ENVIRONMENTOVERRIDE" + ] = self.debugEnvironmentOverrideCheckBox.isChecked() + self.project.debugProperties[ + "ENVIRONMENTSTRING" + ] = self.debugEnvironmentEdit.text() + self.project.debugProperties[ + "REMOTEDEBUGGER" + ] = self.remoteDebuggerGroup.isChecked() + self.project.debugProperties["REMOTEHOST"] = self.remoteHostEdit.text() + self.project.debugProperties["REMOTECOMMAND"] = self.remoteCommandEdit.text() + self.project.debugProperties[ + "PATHTRANSLATION" + ] = self.pathTranslationGroup.isChecked() + self.project.debugProperties["REMOTEPATH"] = self.translationRemoteEdit.text() + self.project.debugProperties["LOCALPATH"] = self.translationLocalEdit.text() + self.project.debugProperties[ + "CONSOLEDEBUGGER" + ] = self.consoleDebuggerGroup.isChecked() + self.project.debugProperties["CONSOLECOMMAND"] = self.consoleCommandEdit.text() + self.project.debugProperties["REDIRECT"] = self.redirectCheckBox.isChecked() + self.project.debugProperties["NOENCODING"] = self.noEncodingCheckBox.isChecked() self.project.debugPropertiesLoaded = True self.project.debugPropertiesChanged = True - + self.__saveHistories() - + def __saveHistories(self): """ Private method to save the path picker histories. @@ -199,25 +180,24 @@ debugClientsHistory = self.debugClientPicker.getPathItems() if debugClient not in debugClientsHistory: debugClientsHistory.insert(0, debugClient) - Preferences.setProject("DebugClientsHistory", - debugClientsHistory) - + Preferences.setProject("DebugClientsHistory", debugClientsHistory) + @pyqtSlot() def on_debugClientClearHistoryButton_clicked(self): """ Private slot to clear the debug clients history. """ self.__clearHistory(self.debugClientPicker) - + def __clearHistory(self, picker): """ Private method to clear a path picker history. - + @param picker reference to the path picker @type EricComboPathPicker """ currentText = picker.text() picker.clear() picker.setText(currentText) - + self.__saveHistories()