def keyPressEvent(self, event): #if self.completer.popup().isVisible(): #if event.key() in (Qt.Key_Enter, Qt.Key_Return, Qt.Key_Tab): #event.ignore() #self.completer.popup().hide() #return #elif event.key in (Qt.Key_Space, Qt.Key_Escape, Qt.Key_Backtab): #self.completer.popup().hide() self._check_event_on_selection(event) if self._pre_key_press.get(event.key(), lambda x: False)(event): return if event.text() in (set(BRACES.values()) - set(["'", '"'])): cursor = self.textCursor() cursor.movePosition(QTextCursor.Left, QTextCursor.KeepAnchor) brace = cursor.selection().toPlainText() cursor = self.textCursor() cursor.movePosition(QTextCursor.Right, QTextCursor.KeepAnchor) braceClose = cursor.selection().toPlainText() if BRACES.get(brace, False) == event.text() and \ braceClose == event.text(): self.moveCursor(QTextCursor.Right) return QPlainTextEdit.keyPressEvent(self, event) if event.text() in BRACES: cursor = self.textCursor() cursor.movePosition(QTextCursor.StartOfLine, QTextCursor.KeepAnchor) self.textCursor().insertText( BRACES[event.text()]) self.moveCursor(QTextCursor.Left)
def keyPressEvent(self, event): #if self.completer.popup().isVisible(): #if event.key() in (Qt.Key_Enter, Qt.Key_Return, Qt.Key_Tab): #event.ignore() #self.completer.popup().hide() #return #elif event.key in (Qt.Key_Space, Qt.Key_Escape, Qt.Key_Backtab): #self.completer.popup().hide() self._check_event_on_selection(event) if self._pre_key_press.get(event.key(), lambda x: False)(event): return if event.text() in (set(BRACES.values()) - set(["'", '"'])): cursor = self.textCursor() cursor.movePosition(QTextCursor.Left, QTextCursor.KeepAnchor) brace = cursor.selection().toPlainText() cursor = self.textCursor() cursor.movePosition(QTextCursor.Right, QTextCursor.KeepAnchor) braceClose = cursor.selection().toPlainText() if BRACES.get(brace, False) == event.text() and \ braceClose == event.text(): self.moveCursor(QTextCursor.Right) return QPlainTextEdit.keyPressEvent(self, event) if event.text() in BRACES: cursor = self.textCursor() cursor.movePosition(QTextCursor.StartOfLine, QTextCursor.KeepAnchor) self.textCursor().insertText(BRACES[event.text()]) self.moveCursor(QTextCursor.Left)
def keyPressEvent(self, event): """Intercept the key event to lets plugin do something if they want""" if event.type() == QEvent.KeyPress: for plugin in filter_plugins_by_capability('beforeKeyPressEvent',self.enabled_plugins): plugin.do_beforeKeyPressEvent(self,event) QPlainTextEdit.keyPressEvent(self, event) for plugin in filter_plugins_by_capability('afterKeyPressEvent',self.enabled_plugins): plugin.do_afterKeyPressEvent(self,event)
def keyPressEvent(self, event): """Intercept the key event to lets plugin do something if they want""" if event.type() == QEvent.KeyPress: for plugin in filter_plugins_by_capability('beforeKeyPressEvent', self.enabled_plugins): plugin.do_beforeKeyPressEvent(self, event) QPlainTextEdit.keyPressEvent(self, event) for plugin in filter_plugins_by_capability('afterKeyPressEvent', self.enabled_plugins): plugin.do_afterKeyPressEvent(self, event)
def keyPressEvent(self, qkeyevent): if self.completer.popup().isVisible(): dead_keys = [Qt.Key_Enter, Qt.Key_Return, Qt.Key_Escape, Qt.Key_Tab, Qt.Key_Backtab] if qkeyevent.key() in dead_keys: qkeyevent.ignore() return if qkeyevent.modifiers() == Qt.ShiftModifier: if qkeyevent.key() & Qt.Key_Delete == Qt.Key_Delete: self.deleteLine() QPlainTextEdit.keyPressEvent(self, qkeyevent)
def keyPressEvent(self, event): #On Return == True stop the execution of this method if self.preKeyPress.get(event.key(), lambda x: False)(event): #emit a signal then plugings can do something self.emit(SIGNAL("keyPressEvent(QEvent)"), event) return self.selected_text = self.textCursor().selectedText() QPlainTextEdit.keyPressEvent(self, event) self.postKeyPress.get(event.key(), lambda x: False)(event) #emit a signal then plugings can do something self.emit(SIGNAL("keyPressEvent(QEvent)"), event)
def keyPressEvent(self, event): if event.key() == Qt.Key_Return: self.write("\n") self.loop.next() elif event.key() == Qt.Key_Up: self.historyUp() elif event.key() == Qt.Key_Down: self.historyDown() elif event.key() == Qt.Key_Tab: self.complete() elif event.key() in [Qt.Key_Left, Qt.Key_Backspace]: if self.textCursor().position() > self.newPromptPos: QPlainTextEdit.keyPressEvent(self, event) else: QPlainTextEdit.keyPressEvent(self, event)
def keyPressEvent(self, event): if self.completer.popup().isVisible(): if event.key() in (Qt.Key_Enter, Qt.Key_Return, Qt.Key_Tab): event.ignore() self.completer.popup().hide() return elif event.key in (Qt.Key_Space, Qt.Key_Escape, Qt.Key_Backtab): self.completer.popup().hide() self._check_event_on_selection(event) if self._pre_key_press.get(event.key(), lambda x: False)(event): return if event.text() in (set(BRACES.values()) - set(["'", '"'])): cursor = self.textCursor() cursor.movePosition(QTextCursor.Left, QTextCursor.KeepAnchor) brace = cursor.selection().toPlainText() cursor = self.textCursor() cursor.movePosition(QTextCursor.Right, QTextCursor.KeepAnchor) braceClose = cursor.selection().toPlainText() if BRACES.get(brace, False) == event.text() and \ braceClose == event.text(): self.moveCursor(QTextCursor.Right) return QPlainTextEdit.keyPressEvent(self, event) if event.text() in BRACES: cursor = self.textCursor() cursor.movePosition(QTextCursor.StartOfLine, QTextCursor.KeepAnchor) self.textCursor().insertText(BRACES[event.text()]) self.moveCursor(QTextCursor.Left) completionPrefix = self._text_under_cursor() if event.key() == Qt.Key_Period or (event.key() == Qt.Key_Space and event.modifiers() == Qt.ControlModifier): self.completer.setCompletionPrefix(completionPrefix) self._resolve_completion_argument() if self.completer.popup().isVisible() and \ completionPrefix != self.completer.completionPrefix(): self.completer.setCompletionPrefix(completionPrefix) self.completer.popup().setCurrentIndex( self.completer.completionModel().index(0, 0)) self.completer.setCurrentRow(0) self._resolve_completion_argument()
def keyPressEvent(self, event): if self.completer.popup().isVisible(): if event.key() in (Qt.Key_Enter, Qt.Key_Return, Qt.Key_Tab): event.ignore() self.completer.popup().hide() return elif event.key in (Qt.Key_Space, Qt.Key_Escape, Qt.Key_Backtab): self.completer.popup().hide() self._check_event_on_selection(event) if self._pre_key_press.get(event.key(), lambda x: False)(event): return if event.text() in (set(BRACES.values()) - set(["'", '"'])): cursor = self.textCursor() cursor.movePosition(QTextCursor.Left, QTextCursor.KeepAnchor) brace = cursor.selection().toPlainText() cursor = self.textCursor() cursor.movePosition(QTextCursor.Right, QTextCursor.KeepAnchor) braceClose = cursor.selection().toPlainText() if BRACES.get(brace, False) == event.text() and \ braceClose == event.text(): self.moveCursor(QTextCursor.Right) return QPlainTextEdit.keyPressEvent(self, event) if event.text() in BRACES: cursor = self.textCursor() cursor.movePosition(QTextCursor.StartOfLine, QTextCursor.KeepAnchor) self.textCursor().insertText( BRACES[event.text()]) self.moveCursor(QTextCursor.Left) completionPrefix = self._text_under_cursor() if event.key() == Qt.Key_Period or (event.key() == Qt.Key_Space and event.modifiers() == Qt.ControlModifier): self.completer.setCompletionPrefix(completionPrefix) self._resolve_completion_argument() if self.completer.popup().isVisible() and \ completionPrefix != self.completer.completionPrefix(): self.completer.setCompletionPrefix(completionPrefix) self.completer.popup().setCurrentIndex( self.completer.completionModel().index(0, 0)) self.completer.setCurrentRow(0) self._resolve_completion_argument()
def keyPressEvent(self, e): if e.key() in (Qt.Key_Return,Qt.Key_Enter): #~ print self.textCursor().block().blockNumber(),self.foldableLines line=self.textCursor().block().blockNumber() #~ print self.foldableLines,line if line in self.foldedLines: self.unfold(line,self.foldableLines[line]) QPlainTextEdit.keyPressEvent(self, e) self.indent() return QPlainTextEdit.keyPressEvent(self, e) if e.key() == Qt.Key_BraceLeft: self.findFoldableLines() if e.key() == Qt.Key_BraceRight: self.findFoldableLines() cursor = self.textCursor() start = cursor.position() next = self.check_brackets(True) if next is not None: cursor.setPosition(next) indent=self.getIndent(cursor.block().text()) #~ spaces= QRegExp("^(\\s*).*$") #~ if spaces.indexIn(cursor.block().text()) == -1: #~ indent="" #~ else: #~ indent=spaces.cap(1) self.moveCursor(QTextCursor.Left) self.moveCursor(QTextCursor.StartOfLine,QTextCursor.KeepAnchor) text = self.textCursor().selectedText() for a in range(len(text)): if text[a] != ' ': cursor.setPosition(start) self.setTextCursor(cursor) return self.textCursor().removeSelectedText() self.textCursor().insertText(indent) self.moveCursor(QTextCursor.EndOfLine)
def keyPressEvent(self, e): if self.isReadOnly(): return if self.c.popup().isVisible(): if e.key() in [Qt.Key_Enter, Qt.Key_Return]: e.ignore() return if e.key() in [Qt.Key_Tab]: e.ignore() return if e.key() in [Qt.Key_Down, Qt.Key_Up] and not self.is_multiline(): e.ignore() return QPlainTextEdit.keyPressEvent(self, e) ctrlOrShift = e.modifiers() and (Qt.ControlModifier or Qt.ShiftModifier) if self.c is None or (ctrlOrShift and e.text().isEmpty()): return eow = QString("~!@#$%^&*()_+{}|:\"<>?,./;'[]\\-=") hasModifier = (e.modifiers() != Qt.NoModifier) and not ctrlOrShift completionPrefix = self.textUnderCursor() if hasModifier or e.text().isEmpty() or completionPrefix.length() < 1 or eow.contains(e.text().right(1)): self.c.popup().hide() return if completionPrefix != self.c.completionPrefix(): self.c.setCompletionPrefix(completionPrefix) self.c.popup().setCurrentIndex(self.c.completionModel().index(0, 0)) cr = self.cursorRect() cr.setWidth(self.c.popup().sizeHintForColumn(0) + self.c.popup().verticalScrollBar().sizeHint().width()) self.c.complete(cr)
def keyPressEvent(self, keyEvent): QPlainTextEdit.keyPressEvent(self, keyEvent) if keyEvent.key() == Qt.Key_Control: self.__IsControl = True if keyEvent.key() == Qt.Key_Return and self.__IsControl: f = open(os.path.join(ESettings.EDD_PLUGIN_TEMP, "temp.py"), 'w') f.write(self.toPlainText()) f.close() sys.path.append(ESettings.EDD_PLUGIN_TEMP) nodes = [pluginFileName.replace('.py', '') for pluginFileName in EFileUtils.getFiles(ESettings.EDD_PLUGIN_PATH, '.py', False)] pluginModule = __import__('temp', globals(), locals(), []) print self.parentWidget() print pluginModule
def keyPressEvent(self, event): if self.autocomplete.active: if self.autocomplete.keyPressEvent(event): return elif self.calltip.active: if self.calltip.keyPressEvent(event): return m = event.modifiers() k = event.key() t = event.text() # Disable some shortcuts if self.disable_shortcuts and \ m & Qt.ControlModifier and k in [Qt.Key_A, Qt.Key_R, Qt.Key_C, Qt.Key_K, Qt.Key_X, Qt.Key_V, Qt.Key_Y, Qt.Key_Z]: new_ev = QKeyEvent(event.type(), k, m, t) event.ignore() QCoreApplication.postEvent(self.parent(), new_ev) return elif k == Qt.Key_Tab: if self.tab_pressed(): return elif k == Qt.Key_Backtab: if self.backtab_pressed(): return elif k == Qt.Key_Backspace: if self.backspace_pressed(): return elif k == Qt.Key_Period or \ (k == Qt.Key_Space and event.modifiers() == Qt.ControlModifier): QPlainTextEdit.keyPressEvent(self, event) self.autocomplete_pressed() return elif k in [Qt.Key_ParenLeft, Qt.Key_BraceLeft, Qt.Key_BracketLeft]: QPlainTextEdit.keyPressEvent(self, event) self.paren_opened(k) return QPlainTextEdit.keyPressEvent(self, event) if k == Qt.Key_Return or k == Qt.Key_Enter: self.after_return_pressed()
def keyPressEvent(self, event): if event.key() == Qt.Key_Return: text = self.lastLine() indent = len(text) - len(text.lstrip()) if text.strip() == "pass" or text.strip().startswith("return "): indent = max(0, indent - self.INDENT) elif text.strip().endswith(":"): indent += self.INDENT QPlainTextEdit.keyPressEvent(self, event) self.insertPlainText(" " * indent) elif event.key() == Qt.Key_Tab: self.insertPlainText(" " * self.INDENT) elif event.key() == Qt.Key_Backspace: text = self.lastLine() if text and not text.strip(): cursor = self.textCursor() for i in range(min(self.INDENT, len(text))): cursor.deletePreviousChar() else: QPlainTextEdit.keyPressEvent(self, event) else: QPlainTextEdit.keyPressEvent(self, event)
def keyPressEvent(self, event): if event.key() in (Qt.Key_Enter, Qt.Key_Return): self._write_command() return if self._get_cursor_position() < 0: self.setCursorPosition(0) if event.key() == Qt.Key_Tab: self.textCursor().insertText(' ' * INDENT) return if event.key() == Qt.Key_Home: self.setCursorPosition(0) return if event.key() == Qt.Key_PageUp: return elif event.key() in (Qt.Key_Left, Qt.Key_Backspace): if self._get_cursor_position() == 0: return elif event.key() == Qt.Key_Up: self._set_command(self._get_prev_history_entry()) return elif event.key() == Qt.Key_Down: self._set_command(self._get_next_history_entry()) return if event.key() == Qt.Key_Tab: if self.textCursor().hasSelection(): self.indent_more() return else: self.textCursor().insertText(' ' * INDENT) return elif event.key() == Qt.Key_Backspace: if self.textCursor().hasSelection(): QPlainTextEdit.keyPressEvent(self, event) return for i in xrange(INDENT): self.moveCursor(QTextCursor.Left, QTextCursor.KeepAnchor) text = self.textCursor().selection() if unicode(text.toPlainText()) == ' ' * INDENT: self.textCursor().removeSelectedText() return else: for i in xrange(text.toPlainText().size()): self.moveCursor(QTextCursor.Right) elif event.key() == Qt.Key_Home: if event.modifiers() == Qt.ShiftModifier: move = QTextCursor.KeepAnchor else: move = QTextCursor.MoveAnchor if self.textCursor().atBlockStart(): self.moveCursor(QTextCursor.WordRight, move) return elif event.key() in (Qt.Key_Enter, Qt.Key_Return) and \ event.modifiers() == Qt.ShiftModifier: return elif unicode(event.text()) in \ (set(BRACES.values()) - set(["'", '"'])): self.moveCursor(QTextCursor.Left, QTextCursor.KeepAnchor) brace = unicode(self.textCursor().selection().toPlainText()) self.moveCursor(QTextCursor.Right) self.moveCursor(QTextCursor.Right, QTextCursor.KeepAnchor) braceClose = unicode(self.textCursor().selection().toPlainText()) self.moveCursor(QTextCursor.Left) if BRACES.get(brace, False) == unicode(event.text()) and \ braceClose == unicode(event.text()): self.moveCursor(QTextCursor.Right) return selection = self.textCursor().selectedText() QPlainTextEdit.keyPressEvent(self, event) if unicode(event.text()) in BRACES: cursor = self.textCursor() cursor.movePosition(QTextCursor.StartOfLine, QTextCursor.KeepAnchor) self.textCursor().insertText(BRACES[unicode(event.text())]) self.moveCursor(QTextCursor.Left) self.textCursor().insertText(selection)
def keyPressEvent(self, event): if self.completer.popup().isVisible(): if event.key() in (Qt.Key_Enter, Qt.Key_Return, Qt.Key_Tab): event.ignore() self.completer.insert_completion() self.completer.popup().hide() return elif event.key in (Qt.Key_Space, Qt.Key_Escape, Qt.Key_Backtab): self.completer.popup().hide() if event.key() in (Qt.Key_Enter, Qt.Key_Return): self._write_command() return if self._get_cursor_position() < 0: self.setCursorPosition(0) if event.key() == Qt.Key_Tab: self.textCursor().insertText(' ' * settings.INDENT) return if event.key() == Qt.Key_Home: self.setCursorPosition(0) return if event.key() == Qt.Key_PageUp: return elif event.key() == Qt.Key_Left and self._get_cursor_position() == 0: return elif event.key() == Qt.Key_Up: self._set_command(self._get_prev_history_entry()) return elif event.key() == Qt.Key_Down: self._set_command(self._get_next_history_entry()) return if event.key() == Qt.Key_Tab: if self.textCursor().hasSelection(): self.indent_more() return else: self.textCursor().insertText(' ' * settings.INDENT) return elif event.key() == Qt.Key_Backspace: if self.textCursor().hasSelection(): QPlainTextEdit.keyPressEvent(self, event) return elif self._get_cursor_position() == 0: return for i in xrange(settings.INDENT): self.moveCursor(QTextCursor.Left, QTextCursor.KeepAnchor) text = self.textCursor().selection() if unicode(text.toPlainText()) == ' ' * settings.INDENT: self.textCursor().removeSelectedText() return else: for i in xrange(text.toPlainText().size()): self.moveCursor(QTextCursor.Right) elif event.key() == Qt.Key_Home: if event.modifiers() == Qt.ShiftModifier: move = QTextCursor.KeepAnchor else: move = QTextCursor.MoveAnchor if self.textCursor().atBlockStart(): self.moveCursor(QTextCursor.WordRight, move) return elif event.key() in (Qt.Key_Enter, Qt.Key_Return) and \ event.modifiers() == Qt.ShiftModifier: return elif unicode(event.text()) in \ (set(BRACES.values()) - set(["'", '"'])): self.moveCursor(QTextCursor.Left, QTextCursor.KeepAnchor) brace = unicode(self.textCursor().selection().toPlainText()) self.moveCursor(QTextCursor.Right) self.moveCursor(QTextCursor.Right, QTextCursor.KeepAnchor) braceClose = unicode(self.textCursor().selection().toPlainText()) self.moveCursor(QTextCursor.Left) if BRACES.get(brace, False) == unicode(event.text()) and \ braceClose == unicode(event.text()): self.moveCursor(QTextCursor.Right) return selection = self.textCursor().selectedText() QPlainTextEdit.keyPressEvent(self, event) if unicode(event.text()) in BRACES: cursor = self.textCursor() cursor.movePosition(QTextCursor.StartOfLine, QTextCursor.KeepAnchor) self.textCursor().insertText(BRACES[unicode(event.text())]) self.moveCursor(QTextCursor.Left) self.textCursor().insertText(selection) completionPrefix = self._text_under_cursor() if completionPrefix.contains(self.okPrefix): completionPrefix = completionPrefix.remove(self.okPrefix) if event.key() == Qt.Key_Period or (event.key() == Qt.Key_Space and \ event.modifiers() == Qt.ControlModifier): self.completer.setCompletionPrefix(completionPrefix) self._resolve_completion_argument() elif event.key() == Qt.Key_Space and \ self.completer.popup().isVisible(): self.completer.popup().hide() if self.completer.popup().isVisible() and \ completionPrefix != self.completer.completionPrefix(): self.completer.setCompletionPrefix(completionPrefix) self.completer.popup().setCurrentIndex( self.completer.completionModel().index(0, 0)) self.completer.setCurrentRow(0) self._resolve_completion_argument()
def keyPressEvent(self, event): if self.completer.popup().isVisible(): if event.key() in (Qt.Key_Enter, Qt.Key_Return, Qt.Key_Tab): event.ignore() self.completer.popup().hide() return elif event.key in (Qt.Key_Space, Qt.Key_Escape, Qt.Key_Backtab): self.completer.popup().hide() if event.key() in (Qt.Key_Enter, Qt.Key_Return): self._write_command() return if self._get_cursor_position() < 0: self.setCursorPosition(0) if event.key() == Qt.Key_Tab: self.textCursor().insertText(' ' * settings.INDENT) return if event.key() == Qt.Key_Home: self.setCursorPosition(0) return if event.key() == Qt.Key_PageUp: return elif event.key() == Qt.Key_Left and self._get_cursor_position() == 0: return elif event.key() == Qt.Key_Up: self._set_command(self._get_prev_history_entry()) return elif event.key() == Qt.Key_Down: self._set_command(self._get_next_history_entry()) return if event.key() == Qt.Key_Tab: if self.textCursor().hasSelection(): self.indent_more() return else: self.textCursor().insertText(' ' * settings.INDENT) return elif event.key() == Qt.Key_Backspace: if self.textCursor().hasSelection(): QPlainTextEdit.keyPressEvent(self, event) return elif self._get_cursor_position() == 0: return for i in xrange(settings.INDENT): self.moveCursor(QTextCursor.Left, QTextCursor.KeepAnchor) text = self.textCursor().selection() if unicode(text.toPlainText()) == ' ' * settings.INDENT: self.textCursor().removeSelectedText() return else: for i in xrange(text.toPlainText().size()): self.moveCursor(QTextCursor.Right) elif event.key() == Qt.Key_Home: if event.modifiers() == Qt.ShiftModifier: move = QTextCursor.KeepAnchor else: move = QTextCursor.MoveAnchor if self.textCursor().atBlockStart(): self.moveCursor(QTextCursor.WordRight, move) return elif event.key() in (Qt.Key_Enter, Qt.Key_Return) and \ event.modifiers() == Qt.ShiftModifier: return elif unicode(event.text()) in \ (set(BRACES.values()) - set(["'", '"'])): self.moveCursor(QTextCursor.Left, QTextCursor.KeepAnchor) brace = unicode(self.textCursor().selection().toPlainText()) self.moveCursor(QTextCursor.Right) self.moveCursor(QTextCursor.Right, QTextCursor.KeepAnchor) braceClose = unicode(self.textCursor().selection().toPlainText()) self.moveCursor(QTextCursor.Left) if BRACES.get(brace, False) == unicode(event.text()) and \ braceClose == unicode(event.text()): self.moveCursor(QTextCursor.Right) return selection = self.textCursor().selectedText() QPlainTextEdit.keyPressEvent(self, event) if unicode(event.text()) in BRACES: cursor = self.textCursor() cursor.movePosition(QTextCursor.StartOfLine, QTextCursor.KeepAnchor) self.textCursor().insertText( BRACES[unicode(event.text())]) self.moveCursor(QTextCursor.Left) self.textCursor().insertText(selection) completionPrefix = self._text_under_cursor() if completionPrefix.contains(self.okPrefix): completionPrefix = completionPrefix.remove(self.okPrefix) if event.key() == Qt.Key_Period or (event.key() == Qt.Key_Space and \ event.modifiers() == Qt.ControlModifier): self.completer.setCompletionPrefix(completionPrefix) self._resolve_completion_argument() elif event.key() == Qt.Key_Space and \ self.completer.popup().isVisible(): self.completer.popup().hide() if self.completer.popup().isVisible() and \ completionPrefix != self.completer.completionPrefix(): self.completer.setCompletionPrefix(completionPrefix) self.completer.popup().setCurrentIndex( self.completer.completionModel().index(0, 0)) self.completer.setCurrentRow(0) self._resolve_completion_argument()
def default_key_event(self, event): QPlainTextEdit.keyPressEvent(self, event)