def run(self): """ Public method executed by the thread. """ engine = QHelpEngineCore(self.__collection) changes = False qt4Docs = ["designer", "linguist", "qt"] qt5Docs = [ "activeqt", "qdoc", "qmake", "qt3d", "qt3drenderer", "qtandroidextras", "qtassistant", "qtbluetooth", "qtcanvas3d", "qtcharts", "qtconcurrent", "qtcore", "qtdatavisualization", "qtdbus", "qtdesigner", "qtdistancefieldgenerator", "qtdoc", "qtenginio", "qtenginiooverview", "qtenginoqml", "qtgamepad", "qtgraphicaleffects", "qtgui", "qthelp", "qtimageformats", "qtlabscalendar", "qtlabsplatform", "qtlabscontrols", "qtlinguist", "qtlocation", "qtlottieanimation", "qtmaxextras", "qtmultimedia", "qtmultimediawidgets", "qtnetwork", "qtnetworkauth", "qtnfc", "qtopengl", "qtplatformheaders", "qtpositioning", "qtprintsupport", "qtpurchasing", "qtqml", "qtqmltest", "qtquick", "qtquickcontrols", "qtquickcontrols1", "qtquickdialogs", "qtquickextras", "qtquicklayouts", "qtremoteobjects", "qtscript", "qtscripttools", "qtscxml", "qtsensors", "qtserialbus", "qtserialport", "qtspeech", "qtsql", "qtsvg", "qttest", "qttestlib", "qtuitools", "qtvirtualkeyboard", "qtwaylandcompositor", "qtwebchannel", "qtwebengine", "qtwebenginewidgets", "qtwebkit", "qtwebkitexamples", "qtwebsockets", "qtwebview", "qtwidgets", "qtwinextras", "qtx11extras", "qtxml", "qtxmlpatterns" ] for qtDocs, version in [(qt4Docs, 4), (qt5Docs, 5)]: for doc in qtDocs: changes |= self.__installQtDoc(doc, version, engine) self.__mutex.lock() if self.__abort: engine = None self.__mutex.unlock() return self.__mutex.unlock() changes |= self.__installEric6Doc(engine) engine = None del engine self.docsInstalled.emit(changes)
def __init__(self, engine, parent=None): """ Constructor @param engine reference to the help engine (QHelpEngine) @param parent reference to the parent widget (QWidget) """ super(QtHelpFiltersDialog, self).__init__(parent) self.setupUi(self) self.removeButton.setEnabled(False) self.removeAttributeButton.setEnabled(False) self.__engine = engine self.filtersList.clear() self.attributesList.clear() help = QHelpEngineCore(self.__engine.collectionFile()) help.setupData() self.__removedFilters = [] self.__filterMap = {} self.__filterMapBackup = {} self.__removedAttributes = [] for filter in help.customFilters(): atts = help.filterAttributes(filter) self.__filterMapBackup[filter] = atts if filter not in self.__filterMap: self.__filterMap[filter] = atts self.filtersList.addItems(sorted(self.__filterMap.keys())) for attr in help.filterAttributes(): QTreeWidgetItem(self.attributesList, [attr]) self.attributesList.sortItems(0, Qt.AscendingOrder) if self.__filterMap: self.filtersList.setCurrentRow(0)
def run(self): """ Public method executed by the thread. """ engine = QHelpEngineCore(self.__collection) engine.setupData() changes = False qt4Docs = ["designer", "linguist", "qt"] qt5Docs = [ "activeqt", "qtandroidextras", "qtbluetooth", "qtconcurrent", "qtcore", "qtdbus", "qtdesigner", "qtdoc", "qtenginio", "qtenginiooverview", "qtenginoqml", "qtgraphicaleffects", "qtgui", "qthelp", "qtimageformats", "qtlinguist", "qtlocation", "qtmaxextras", "qtmultimedia", "qtmultimediawidgets", "qtnetwork", "qtnfc", "qtopengl", "qtpositioning", "qtprintsupport", "qtqml", "qtquick", "qtquickcontrols", "qtquickdialogs", "qtquicklayouts", "qtscript", "qtscripttools", "qtsensors", "qtserialport", "qtsql", "qtsvg", "qttestlib", "qtuitools", "qtwebchannel", "qtwebengine", "qtwebenginewidgets", "qtwebkit", "qtwebkitexamples", "qtwebsockets", "qtwidgets", "qtwinextras", "qtx11extras", "qtxml", "qtxmlpatterns" ] for qtDocs, version in [(qt4Docs, 4), (qt5Docs, 5)]: for doc in qtDocs: changes |= self.__installQtDoc(doc, version, engine) self.__mutex.lock() if self.__abort: engine = None self.__mutex.unlock() return self.__mutex.unlock() changes |= self.__installEric6Doc(engine) engine = None del engine self.docsInstalled.emit(changes)
def __initFiltersTab(self): """ Private method to initialize the filters tab. """ self.removeFiltersButton.setEnabled(False) self.removeAttributesButton.setEnabled(False) # save the current and selected filters currentFilter = self.filtersList.currentItem() if currentFilter: currentFilterText = currentFilter.text() else: currentFilterText = "" selectedFiltersText = [ itm.text() for itm in self.filtersList.selectedItems() ] # save the selected attributes selectedAttributesText = [ itm.text(0) for itm in self.attributesList.selectedItems() ] self.filtersList.clear() self.attributesList.clear() helpEngineCore = QHelpEngineCore(self.__engine.collectionFile()) self.__removedFilters = [] self.__filterMap = {} self.__filterMapBackup = {} self.__removedAttributes = [] for customFilter in helpEngineCore.customFilters(): atts = helpEngineCore.filterAttributes(customFilter) self.__filterMapBackup[customFilter] = atts if customFilter not in self.__filterMap: self.__filterMap[customFilter] = atts self.filtersList.addItems(sorted(self.__filterMap.keys())) for attr in helpEngineCore.filterAttributes(): QTreeWidgetItem(self.attributesList, [attr]) self.attributesList.sortItems(0, Qt.AscendingOrder) if selectedFiltersText or currentFilterText or selectedAttributesText: # restore the selected filters for txt in selectedFiltersText: items = self.filtersList.findItems(txt, Qt.MatchExactly) for itm in items: itm.setSelected(True) # restore the current filter if currentFilterText: items = self.filtersList.findItems(currentFilterText, Qt.MatchExactly) if items: self.filtersList.setCurrentItem( items[0], QItemSelectionModel.NoUpdate) # restore the selected attributes for txt in selectedAttributesText: items = self.attributesList.findItems(txt, Qt.MatchExactly, 0) for itm in items: itm.setSelected(True) elif self.__filterMap: self.filtersList.setCurrentRow(0)