diff -r c33c1dbd0ee5 -r f04328aef87a eric6/Project/ProjectFormsBrowser.py --- a/eric6/Project/ProjectFormsBrowser.py Mon Mar 09 20:21:38 2020 +0100 +++ b/eric6/Project/ProjectFormsBrowser.py Tue Mar 10 19:32:25 2020 +0100 @@ -137,7 +137,7 @@ self.tr('Generate Dialog Code...'), self.__generateDialogCode) self.menu.addSeparator() - self.menu.addAction( + self.__pyuicConfigAct = self.menu.addAction( self.tr('Configure uic Compiler'), self.__configureUicCompiler) self.menu.addSeparator() @@ -220,7 +220,7 @@ self.backMenu.addAction( self.tr('Compile all forms'), self.__compileAllForms) self.backMenu.addSeparator() - self.backMenu.addAction( + self.__pyuicBackConfigAct = self.backMenu.addAction( self.tr('Configure uic Compiler'), self.__configureUicCompiler) self.backMenu.addSeparator() @@ -251,7 +251,7 @@ self.multiMenu.addAction( self.tr('Compile forms'), self.__compileSelectedForms) self.multiMenu.addSeparator() - self.multiMenu.addAction( + self.__pyuicMultiConfigAct = self.multiMenu.addAction( self.tr('Configure uic Compiler'), self.__configureUicCompiler) self.multiMenu.addSeparator() @@ -298,7 +298,7 @@ self.dirMenu.addAction( self.tr('Compile all forms'), self.__compileAllForms) self.dirMenu.addSeparator() - self.dirMenu.addAction( + self.__pyuicDirConfigAct = self.dirMenu.addAction( self.tr('Configure uic Compiler'), self.__configureUicCompiler) self.dirMenu.addSeparator() @@ -349,7 +349,7 @@ self.dirMultiMenu.addAction( self.tr('Compile all forms'), self.__compileAllForms) self.dirMultiMenu.addSeparator() - self.dirMultiMenu.addAction( + self.__pyuicDirMultiConfigAct = self.dirMultiMenu.addAction( self.tr('Configure uic Compiler'), self.__configureUicCompiler) self.dirMultiMenu.addSeparator() @@ -390,6 +390,13 @@ if not self.project.isOpen(): return + enable = self.project.getProjectType() in ("Qt4", "PyQt5", "E6Plugin") + self.__pyuicConfigAct.setEnabled(enable) + self.__pyuicMultiConfigAct.setEnabled(enable) + self.__pyuicDirConfigAct.setEnabled(enable) + self.__pyuicDirMultiConfigAct.setEnabled(enable) + self.__pyuicBackConfigAct.setEnabled(enable) + try: categories = self.getSelectedItemsCountCategorized( [ProjectBrowserFileItem, ProjectBrowserSimpleDirectoryItem]) @@ -843,11 +850,12 @@ if self.project.getProjectType() in ["PySide", "PySide2"]: # PySide and PySide2 - if Preferences.getQt("PyuicFromImports"): + if Preferences.getQt("PySide2FromImports"): args.append("--from-imports") else: # PyQt4 and PyQt5 - args.append("-x") + if Preferences.getQt("PyuicExecute"): + args.append("-x") indentWidth = Preferences.getQt("PyuicIndent") if indentWidth != self.PyuicIndentDefault: args.append("--indent={0}".format(indentWidth)) @@ -1098,12 +1106,6 @@ if root != params["PackagesRoot"]: params["PackagesRoot"] = root self.project.setDirty(True) - elif self.project.getProjectType() in ["PySide", "PySide2"]: - E5MessageBox.information( - self, - self.tr("Configure uic Compiler"), - self.tr("""No project specific uic compiler flags are""" - """ supported for PySide or PySide2.""")) ########################################################################### ## Support for hooks below