--- a/src/eric7/Project/AddDirectoryDialog.py Fri Feb 23 16:50:50 2024 +0100 +++ b/src/eric7/Project/AddDirectoryDialog.py Fri Feb 23 16:52:01 2024 +0100 @@ -8,9 +8,10 @@ """ from PyQt6.QtCore import pyqtSlot -from PyQt6.QtWidgets import QDialog +from PyQt6.QtWidgets import QDialog, QDialogButtonBox from eric7.EricWidgets.EricPathPicker import EricPathPickerModes +from eric7.SystemUtilities import FileSystemUtilities from .Ui_AddDirectoryDialog import Ui_AddDirectoryDialog @@ -42,13 +43,23 @@ self.setObjectName(name) self.setupUi(self) + self.__remoteMode = ( + bool(startdir) and FileSystemUtilities.isRemoteFileName(startdir) + ) or FileSystemUtilities.isRemoteFileName(pro.getProjectPath()) + self.sourceDirPicker.setMode(EricPathPickerModes.DIRECTORY_MODE) self.sourceDirPicker.setDefaultDirectory(startdir) + self.sourceDirPicker.setRemote(self.__remoteMode) + self.targetDirPicker.setMode(EricPathPickerModes.DIRECTORY_MODE) self.targetDirPicker.setDefaultDirectory(startdir) + self.targetDirPicker.setRemote(self.__remoteMode) self.__project = pro - self.targetDirPicker.setText(self.__project.getProjectPath()) + if startdir: + self.targetDirPicker.setText(startdir) + else: + self.targetDirPicker.setText(pro.getProjectPath()) if fileTypeFilter and fileTypeFilter != "TRANSLATIONS": self.filterComboBox.addItem( @@ -65,6 +76,8 @@ ) self.filterComboBox.setCurrentIndex(0) + self.buttonBox.button(QDialogButtonBox.StandardButton.Ok).setEnabled(False) + msh = self.minimumSizeHint() self.resize(max(self.width(), msh.width()), msh.height()) @@ -103,6 +116,10 @@ if directory.startswith(self.__project.getProjectPath()): self.targetDirPicker.setText(directory) + self.buttonBox.button(QDialogButtonBox.StandardButton.Ok).setEnabled( + bool(directory) + ) + def getData(self): """ Public slot to retrieve the dialogs data.