--- a/src/eric7/Project/AddDirectoryDialog.py Wed Jul 13 11:16:20 2022 +0200 +++ b/src/eric7/Project/AddDirectoryDialog.py Wed Jul 13 14:55:47 2022 +0200 @@ -19,11 +19,13 @@ """ Class implementing a dialog to add files of a directory to the project. """ - def __init__(self, pro, fileTypeFilter='source', parent=None, name=None, - startdir=None): + + def __init__( + self, pro, fileTypeFilter="source", parent=None, name=None, startdir=None + ): """ Constructor - + @param pro reference to the project object @param fileTypeFilter file type filter (string) @param parent parent widget of this dialog (QWidget) @@ -34,64 +36,51 @@ if name: self.setObjectName(name) self.setupUi(self) - + self.sourceDirPicker.setMode(EricPathPickerModes.DIRECTORY_MODE) self.sourceDirPicker.setDefaultDirectory(startdir) self.targetDirPicker.setMode(EricPathPickerModes.DIRECTORY_MODE) self.targetDirPicker.setDefaultDirectory(startdir) - + self.ppath = pro.ppath self.targetDirPicker.setText(self.ppath) self.on_filterComboBox_highlighted(0) # enable all dialog elements - if fileTypeFilter == 'source': # it is a source file - self.filterComboBox.addItem( - self.tr("Source Files"), "SOURCES") - elif fileTypeFilter == 'form': - self.filterComboBox.addItem( - self.tr("Forms Files"), "FORMS") - elif fileTypeFilter == 'resource': - self.filterComboBox.addItem( - self.tr("Resource Files"), "RESOURCES") - elif fileTypeFilter == 'interface': - self.filterComboBox.addItem( - self.tr("Interface Files"), "INTERFACES") - elif fileTypeFilter == 'protocol': - self.filterComboBox.addItem( - self.tr("Protocol Files"), "PROTOCOLS") - elif fileTypeFilter == 'others': - self.filterComboBox.addItem( - self.tr("Other Files (*)"), "OTHERS") - self.on_filterComboBox_highlighted( - self.filterComboBox.count() - 1) + if fileTypeFilter == "source": # it is a source file + self.filterComboBox.addItem(self.tr("Source Files"), "SOURCES") + elif fileTypeFilter == "form": + self.filterComboBox.addItem(self.tr("Forms Files"), "FORMS") + elif fileTypeFilter == "resource": + self.filterComboBox.addItem(self.tr("Resource Files"), "RESOURCES") + elif fileTypeFilter == "interface": + self.filterComboBox.addItem(self.tr("Interface Files"), "INTERFACES") + elif fileTypeFilter == "protocol": + self.filterComboBox.addItem(self.tr("Protocol Files"), "PROTOCOLS") + elif fileTypeFilter == "others": + self.filterComboBox.addItem(self.tr("Other Files (*)"), "OTHERS") + self.on_filterComboBox_highlighted(self.filterComboBox.count() - 1) else: - self.filterComboBox.addItem( - self.tr("Source Files"), "SOURCES") - self.filterComboBox.addItem( - self.tr("Forms Files"), "FORMS") - self.filterComboBox.addItem( - self.tr("Resource Files"), "RESOURCES") - self.filterComboBox.addItem( - self.tr("Interface Files"), "INTERFACES") - self.filterComboBox.addItem( - self.tr("Protocol Files"), "PROTOCOLS") - self.filterComboBox.addItem( - self.tr("Other Files (*)"), "OTHERS") + self.filterComboBox.addItem(self.tr("Source Files"), "SOURCES") + self.filterComboBox.addItem(self.tr("Forms Files"), "FORMS") + self.filterComboBox.addItem(self.tr("Resource Files"), "RESOURCES") + self.filterComboBox.addItem(self.tr("Interface Files"), "INTERFACES") + self.filterComboBox.addItem(self.tr("Protocol Files"), "PROTOCOLS") + self.filterComboBox.addItem(self.tr("Other Files (*)"), "OTHERS") self.filterComboBox.setCurrentIndex(0) - + msh = self.minimumSizeHint() self.resize(max(self.width(), msh.width()), msh.height()) - + @pyqtSlot(int) def on_filterComboBox_highlighted(self, index): """ Private slot to handle the selection of a file type. - + @param index index of the selected entry @type int """ fileType = self.filterComboBox.itemData(index) - + if fileType == "OTHERS": self.targetDirLabel.setEnabled(False) self.targetDirPicker.setEnabled(False) @@ -100,34 +89,34 @@ self.targetDirLabel.setEnabled(True) self.targetDirPicker.setEnabled(True) self.recursiveCheckBox.setEnabled(True) - + @pyqtSlot(str) def on_sourceDirPicker_textChanged(self, directory): """ Private slot to handle the source directory text changed. - + If the entered source directory is a subdirectory of the current projects main directory, the target directory path is synchronized. It is assumed, that the user wants to add a bunch of files to the project in place. - + @param directory the text of the source directory line edit (string) """ if directory.startswith(self.ppath): self.targetDirPicker.setText(directory) - + def getData(self): """ Public slot to retrieve the dialogs data. - + @return tuple of four values (string, string, string, boolean) giving the selected file type, the source and target directory and a flag indicating a recursive add """ - filetype = self.filterComboBox.itemData( - self.filterComboBox.currentIndex()) + filetype = self.filterComboBox.itemData(self.filterComboBox.currentIndex()) return ( filetype, self.sourceDirPicker.text(), self.targetDirPicker.text(), - self.recursiveCheckBox.isChecked()) + self.recursiveCheckBox.isChecked(), + )