def keyPressEvent(self, event):
     '''
     Enable the mouse tracking by X{setMouseTracking()} if the control key is pressed.
     '''
     if event.key() == Qt.Key_Control or event.key() == Qt.Key_Shift:
         self.setMouseTracking(True)
     if event.modifiers() == Qt.ControlModifier and event.key() == Qt.Key_7:
         self.commentText()
     elif event.modifiers() == Qt.ControlModifier | Qt.ShiftModifier and event.key() == Qt.Key_Slash:
         self.commentText()
     elif event.modifiers() == Qt.AltModifier and event.key() == Qt.Key_Space:
         ext = os.path.splitext(self.filename)
         if ext[1] in self.CONTEXT_FILE_EXT:
             menu = self._create_context_substitution_menu(False)
             if menu is None:
                 menu = self._create_context_menu_for_tag()
             if menu:
                 menu.exec_(self.mapToGlobal(self.cursorRect().bottomRight()))
     elif event.key() != Qt.Key_Escape:
         # handle the shifting of the block
         if event.modifiers() == Qt.NoModifier and event.key() == Qt.Key_Tab:
             self.shiftText()
         elif event.modifiers() == Qt.ShiftModifier and event.key() == Qt.Key_Backtab:
             self.shiftText(back=True)
         else:
             event.accept()
             if event.key() in [Qt.Key_Enter, Qt.Key_Return]:
                 ident = self.getIdentOfCurretLine()
             QTextEdit.keyPressEvent(self, event)
             if event.key() in [Qt.Key_Enter, Qt.Key_Return]:
                 self.indentCurrentLine(ident)
     else:
         event.accept()
         QTextEdit.keyPressEvent(self, event)
示例#2
0
 def keyPressEvent(self, event):
     if self._reader is not None:
         if event.key() == Qt.Key_PageUp and self.verticalScrollBar().value() == 0:
             self._reader.reverse_read(self.verticalScrollBar().pageStep() / 10)
         elif event.key() == Qt.Key_Home and event.modifiers() == Qt.ShiftModifier:
             self._reader.reverse_read(-1)
     QTextEdit.keyPressEvent(self, event)
示例#3
0
 def keyPressEvent(self, event):
     '''
     Enable the mouse tracking by X{setMouseTracking()} if the control key is pressed.
     '''
     if event.key() == Qt.Key_Control or event.key() == Qt.Key_Shift:
         self.setMouseTracking(True)
     if event.modifiers() == Qt.ControlModifier and event.key() == Qt.Key_7:
         self.commentText()
     elif event.modifiers(
     ) == Qt.ControlModifier | Qt.ShiftModifier and event.key(
     ) == Qt.Key_Slash:
         self.commentText()
     elif event.modifiers() == Qt.AltModifier and event.key(
     ) == Qt.Key_Space:
         ext = os.path.splitext(self.filename)
         if ext[1] in self.CONTEXT_FILE_EXT:
             menu = self._create_context_substitution_menu(False)
             if menu is None:
                 menu = self._create_context_menu_for_tag()
             if menu:
                 menu.exec_(
                     self.mapToGlobal(self.cursorRect().bottomRight()))
     elif event.key() != Qt.Key_Escape:
         # handle the shifting of the block
         if event.modifiers() == Qt.NoModifier and event.key(
         ) == Qt.Key_Tab:
             self.shiftText()
         elif event.modifiers() == Qt.ControlModifier and event.key(
         ) == Qt.Key_Tab:
             self.shiftText(back=True)
         else:
             QTextEdit.keyPressEvent(self, event)
     else:
         event.accept()
         QTextEdit.keyPressEvent(self, event)
示例#4
0
 def keyPressEvent(self, event):
     '''
     Enable the mouse tracking by X{setMouseTracking()} if the control key is pressed.
     '''
     if self.isReadOnly():
         if event.key() == Qt.Key_F5:
             nm.nmd().file.get_file_content_threaded(self.filename)
         else:
             event.accept()
             return
     if event.key() == Qt.Key_Control or event.key() == Qt.Key_Shift:
         self.setMouseTracking(True)
     if event.modifiers() == Qt.ControlModifier and event.key() == Qt.Key_7:
         self.commentText()
     elif event.modifiers(
     ) == Qt.ControlModifier | Qt.ShiftModifier and event.key(
     ) == Qt.Key_Slash:
         self.commentText()
     elif event.modifiers(
     ) == Qt.ControlModifier | Qt.ShiftModifier and event.key() == Qt.Key_F:
         if isinstance(self.hl, XmlHighlighter):
             self.toprettyxml()
         else:
             self.toprettyyaml()
     elif event.modifiers() == Qt.AltModifier and event.key(
     ) == Qt.Key_Space:
         ext = os.path.splitext(self.filename)
         if ext[1] in self.CONTEXT_FILE_EXT:
             menu = self._create_context_substitution_menu(False)
             if menu is None:
                 menu = self._create_context_menu_for_tag()
             if menu:
                 menu.exec_(
                     self.mapToGlobal(self.cursorRect().bottomRight()))
     elif event.key() != Qt.Key_Escape:
         # handle the shifting of the block
         if event.modifiers() == Qt.NoModifier and event.key(
         ) == Qt.Key_Tab:
             self.shiftText()
         elif event.modifiers() == Qt.ShiftModifier and event.key(
         ) == Qt.Key_Backtab:
             self.shiftText(back=True)
         else:
             event.accept()
             if event.key() in [Qt.Key_Enter, Qt.Key_Return]:
                 ident = self.getIdentOfCurretLine()
             QTextEdit.keyPressEvent(self, event)
             if event.key() in [Qt.Key_Enter, Qt.Key_Return]:
                 self.indentCurrentLine(ident - self.getIdentOfCurretLine())
     else:
         QTextEdit.keyPressEvent(self, event)