--- a/eric7/Plugins/WizardPlugins/SetupWizard/SetupWizardDialog.py Tue Nov 02 17:59:27 2021 +0100 +++ b/eric7/Plugins/WizardPlugins/SetupWizard/SetupWizardDialog.py Tue Nov 02 18:02:00 2021 +0100 @@ -18,11 +18,10 @@ from EricWidgets.EricApplication import ericApp from EricWidgets import EricMessageBox, EricFileDialog -from EricWidgets.EricCompleters import EricDirCompleter +from EricWidgets.EricPathPicker import EricPathPickerModes from .Ui_SetupWizardDialog import Ui_SetupWizardDialog -import UI.PixmapCache import Utilities import Preferences @@ -31,8 +30,8 @@ """ Class implementing the setup.py wizard dialog. - It displays a dialog for entering the parameters - for the EricMessageBox code generator. + It displays a dialog for entering the parameters for the setup.py code + generator. """ ClassifiersUrl = "https://pypi.org/pypi?%3Aaction=list_classifiers" @@ -49,13 +48,8 @@ self.dataTabWidget.setCurrentIndex(0) - self.__packageDirCompleter = EricDirCompleter(self.packageEdit) - self.__packageRootDirCompleter = EricDirCompleter(self.packageRootEdit) - self.__sourceDirCompleter = EricDirCompleter(self.sourceDirectoryEdit) - - self.packageRootDirButton.setIcon(UI.PixmapCache.getIcon("open")) - self.packageDirButton.setIcon(UI.PixmapCache.getIcon("open")) - self.sourceDirectoryButton.setIcon(UI.PixmapCache.getIcon("open")) + self.packageRootPicker.setMode(EricPathPickerModes.DIRECTORY_MODE) + self.sourceDirectoryPicker.setMode(EricPathPickerModes.DIRECTORY_MODE) self.__mandatoryStyleSheet = "QLineEdit {border: 2px solid;}" for lineEdit in [self.nameEdit, self.versionEdit, @@ -72,7 +66,6 @@ projectOpen = ericApp().getObject("Project").isOpen() self.projectButton.setEnabled(projectOpen) - self.autodiscoverPackagesButton.setEnabled(projectOpen) self.homePageUrlEdit.textChanged.connect(self.__enableOkButton) self.nameEdit.textChanged.connect(self.__enableOkButton) @@ -386,7 +379,7 @@ code += '{0}packages=find_packages('.format(istring) src = Utilities.fromNativeSeparators( - self.sourceDirectoryEdit.text()) + self.sourceDirectoryPicker.text()) excludePatterns = [] for row in range(self.excludePatternList.count()): excludePatterns.append( @@ -465,41 +458,11 @@ self.summaryEdit.setText(summary) self.descriptionEdit.setPlainText(description) - self.packageRootEdit.setText(project.getProjectPath()) + self.packageRootPicker.setText(project.getProjectPath()) # prevent overwriting of entries by disabling the button self.projectButton.setEnabled(False) - @pyqtSlot() - def on_packageRootDirButton_clicked(self): - """ - Private slot to select the packages root directory via a - directory selection dialog. - """ - startDir = self.packageRootEdit.text() - if not startDir: - startDir = self.__getStartDir() - packagesRootDir = EricFileDialog.getExistingDirectory( - self, - self.tr("Packages Root Directory"), - Utilities.fromNativeSeparators(startDir), - EricFileDialog.ShowDirsOnly) - if packagesRootDir: - self.packageRootEdit.setText( - Utilities.toNativeSeparators(packagesRootDir)) - - @pyqtSlot(str) - def on_packageRootEdit_textChanged(self, txt): - """ - Private slot handling the entering of a packages root. - - @param txt text of the line edit (string) - """ - projectOpen = ericApp().getObject("Project").isOpen() - validPackagesRoot = bool(txt) and os.path.exists(txt) - self.autodiscoverPackagesButton.setEnabled( - projectOpen or validPackagesRoot) - def __getStartDir(self): """ Private method to get the start directory for selection dialogs. @@ -533,7 +496,7 @@ """ Private slot to add scripts to the list. """ - startDir = self.packageRootEdit.text() or self.__getStartDir() + startDir = self.packageRootPicker.text() or self.__getStartDir() scriptsList = EricFileDialog.getOpenFileNames( self, self.tr("Add Scripts"), @@ -572,7 +535,7 @@ """ Private slot to add Python modules to the list. """ - startDir = self.packageRootEdit.text() or self.__getStartDir() + startDir = self.packageRootPicker.text() or self.__getStartDir() modulesList = EricFileDialog.getOpenFileNames( self, self.tr("Add Python Modules"), @@ -637,19 +600,3 @@ exclude pattern edit. """ self.on_addExludePatternButton_clicked() - - @pyqtSlot() - def on_sourceDirectoryButton_clicked(self): - """ - Private slot to select the packages root directory via a - directory selection dialog. - """ - startDir = self.sourceDirectoryEdit.text() or self.__getStartDir() - sourceDirectory = EricFileDialog.getExistingDirectory( - self, - self.tr("Source Directory"), - Utilities.fromNativeSeparators(startDir), - EricFileDialog.ShowDirsOnly) - if sourceDirectory: - self.sourceDirectoryEdit.setText( - Utilities.toNativeSeparators(sourceDirectory))