def loadExternalLaunchers(self): self.launcherMenu.clear() self.listWidget.clear() if len(self.externalLaunchList) > 0: self.actionGroup = QtGui.QActionGroup(self) self.actionGroup.triggered.connect( self.launcherActivated) for path, param in self.externalLaunchList.items(): action = QtGui.QAction(Global.iconFromPath(path), path, self) self.actionGroup.addAction(action) self.launcherMenu.addAction(action) item = QtGui.QListWidgetItem(Global.iconFromPath(path), path) item.setToolTip(path) self.listWidget.addItem(item) self.launcherMenu.addSeparator() self.launcherMenu.addAction(self.manageLauncherAct) else: self.launcherMenu.addAction(self.manageLauncherAct) if len(self.externalLaunchList) == 0: self.removeButton.setDisabled(True) else: self.removeButton.setDisabled(False)
def updateSearchTree(self, resultsDict): self.progressBar.hide() self.searchResultsTree.clear() self.viewStack.setCurrentIndex(1) if len(resultsDict) > 0: for folder, fileList in resultsDict.items(): folderItem = QtGui.QTreeWidgetItem(self.searchResultsTree) pathRelativeToProject = folder.partition( self.root + os.path.sep)[-1] folderItem.setText(0, pathRelativeToProject) folderItem.setForeground(0, QtGui.QBrush( QtGui.QColor("#003366"))) for i in fileList: fileItem = QtGui.QTreeWidgetItem(folderItem) icon = Global.iconFromPath(os.path.join(folder, i)) fileItem.setText(0, i) fileItem.setIcon(0, QtGui.QIcon(icon)) folderItem.setExpanded(True) item = self.searchResultsTree.topLevelItem(0) self.searchResultsTree.setCurrentItem(item.child(0)) else: folderItem = QtGui.QTreeWidgetItem() item = QtGui.QTreeWidgetItem() item.setText(0, "<No results found>") item.setFlags(QtCore.Qt.NoItemFlags) folderItem.addChild(item) self.searchResultsTree.addTopLevelItem(folderItem) folderItem.setExpanded(True)
def writeLock(self): if self.focusedEditor().isReadOnly() is False: self.focusedEditor().setReadOnly(True) self.setTabIcon( self.currentIndex(), QtGui.QIcon( os.path.join("Resources", "images", "locked_script"))) else: self.focusedEditor().setReadOnly(False) if self.getEditorData("fileType") == "python": if self.focusedEditor().isModified(): self.setTabIcon( self.currentIndex(), QtGui.QIcon( os.path.join("Resources", "images", "script_grey"))) else: self.setTabIcon( self.currentIndex(), QtGui.QIcon( os.path.join("Resources", "images", "script"))) else: self.setTabIcon( self.currentIndex(), Global.iconFromPath(self.getEditorData("filePath")))
def updateSearchTree(self, resultsDict): self.progressBar.hide() self.searchResultsTree.clear() self.viewStack.setCurrentIndex(1) if len(resultsDict) > 0: for folder, fileList in resultsDict.items(): folderItem = QtGui.QTreeWidgetItem(self.searchResultsTree) pathRelativeToProject = folder.partition(self.root + os.path.sep)[-1] folderItem.setText(0, pathRelativeToProject) folderItem.setForeground(0, QtGui.QBrush(QtGui.QColor("#003366"))) for i in fileList: fileItem = QtGui.QTreeWidgetItem(folderItem) icon = Global.iconFromPath(os.path.join(folder, i)) fileItem.setText(0, i) fileItem.setIcon(0, QtGui.QIcon(icon)) folderItem.setExpanded(True) item = self.searchResultsTree.topLevelItem(0) self.searchResultsTree.setCurrentItem(item.child(0)) else: folderItem = QtGui.QTreeWidgetItem() item = QtGui.QTreeWidgetItem() item.setText(0, "<No results found>") item.setFlags(QtCore.Qt.NoItemFlags) folderItem.addChild(item) self.searchResultsTree.addTopLevelItem(folderItem) folderItem.setExpanded(True)
def updateFilesTable(self): self.stopButton.setHidden(True) while len(self.findThread.found) != 0: item = self.findThread.found.pop(0) icon = Global.iconFromPath(item.text(0)) item.setIcon(0, icon) self.filesView.addTopLevelItem(item) item.setFirstColumnSpanned(True) item.setExpanded(True) self.stopButton.setHidden(False)
def loadExternalLaunchers(self): self.launcherMenu.clear() self.listWidget.clear() if len(self.externalLaunchList) > 0: self.actionGroup = QtGui.QActionGroup(self) self.actionGroup.triggered.connect(self.launcherActivated) for path, param in self.externalLaunchList.items(): action = QtGui.QAction(Global.iconFromPath(path), path, self) self.actionGroup.addAction(action) self.launcherMenu.addAction(action) item = QtGui.QListWidgetItem(Global.iconFromPath(path), path) item.setToolTip(path) self.listWidget.addItem(item) self.launcherMenu.addSeparator() self.launcherMenu.addAction(self.manageLauncherAct) else: self.launcherMenu.addAction(self.manageLauncherAct) if len(self.externalLaunchList) == 0: self.removeButton.setDisabled(True) else: self.removeButton.setDisabled(False)
def writeLock(self): if self.focusedEditor().isReadOnly() is False: self.focusedEditor().setReadOnly(True) self.setTabIcon(self.currentIndex(), QtGui.QIcon(os.path.join("Resources", "images", "locked_script"))) else: self.focusedEditor().setReadOnly(False) if self.getEditorData("fileType") == "python": if self.focusedEditor().isModified(): self.setTabIcon(self.currentIndex(), QtGui.QIcon(os.path.join("Resources", "images", "script_grey"))) else: self.setTabIcon(self.currentIndex(), QtGui.QIcon(os.path.join("Resources", "images", "script"))) else: self.setTabIcon(self.currentIndex(), Global.iconFromPath(self.getEditorData("filePath")))
def newEditor(self, index=None, fileName="Untitled.py", filePath=None, encoding=None): extension = os.path.splitext(fileName)[1].lower() pyFile = extension in [".py", ".pyw"] if pyFile: extension = "python" DATA = {} DATA["filePath"] = filePath DATA["backupKey"] = str(time.time()) + '.' + str( self.backupKeyDiferentiator) self.backupKeyDiferentiator += 1 DATA["bookmarkList"] = [] if encoding is None: DATA["codingFormat"] = "utf-8" else: DATA["codingFormat"] = encoding if pyFile: DATA["errorLine"] = None DATA["fileType"] = "python" editor = CodeEditor(self.useData, self.refactor, self.colorScheme, DATA, self) editor2 = CodeEditor(self.useData, self.refactor, self.colorScheme, DATA, self) snapShot = CodeSnapshot(self.colorScheme) else: if extension in [".htm", ".html"]: extension = ".html" DATA["fileType"] = extension editor = TextEditor(self.useData, DATA, self.colorScheme, self, encoding) editor2 = TextEditor(self.useData, DATA, self.colorScheme, self, encoding) snapShot = TextSnapshot(self.colorScheme, extension) mode = QsciScintilla.EolUnix editor.setEolMode(mode) editor2.setEolMode(mode) snapShot.setEolMode(mode) snapShot.setReadOnly(True) subStack = QtGui.QStackedWidget() editorSplitter = EditorSplitter(editor, editor2, DATA, self, subStack) editor2.setDocument(editor.document()) subStack.addWidget(editorSplitter) subStack.addWidget(snapShot) diffWindow = DiffWindow(editor, snapShot) diffWindow.setStyleSheet(StyleSheet.editorStyle) subStack.addWidget(diffWindow) diffWindow = DiffWindow(editor, snapShot) diffWindow.setStyleSheet(StyleSheet.editorStyle) subStack.addWidget(diffWindow) if extension in self.useData.supportedFileTypes: icon = QtGui.QIcon(os.path.join("Resources", "images", "script")) else: icon = Global.iconFromPath(filePath) if index is None: self.addTab(subStack, icon, fileName) else: self.insertTab(index, subStack, icon, fileName) if filePath is None: pass else: self.filesWatch.addPath(filePath) editor.textChanged.connect(self.currentEditorTextChanged.emit) editor.cursorPositionChanged.connect(self.cursorPositionChanged.emit) editor2.cursorPositionChanged.connect(self.cursorPositionChanged.emit) self.setCurrentWidget(subStack) return subStack