示例#1
0
 def eventFilter(self, obj, event):
     if event.type() == QtCore.QEvent.KeyPress and obj == self.lineEditShortcut:
         if self.lineEditShortcut.hasSelectedText():
             self.lineEditShortcut.clear()
         sequence = keyevent_to_keysequence(event, prefix=self.lineEditShortcut.text())
         if sequence:
             self.currentShortcut().setKeySequence(sequence)
             self.lineEditShortcut.setText(sequence.toString())
         return True
     return super(ShortcutsSettingsWidget, self).eventFilter(obj, event)
示例#2
0
文件: edit.py 项目: prymatex/prymatex
    def keyPress_handlers(self, event):
        for handler in super().keyPress_handlers(event):
            yield handler

        # Bundle items 
        sequence = keyevent_to_keysequence(event)
        if sequence in self.application().supportManager.getAllKeySequences():
            yield lambda event, sequence=sequence: \
                self.__insert_key_bundle_item(event, sequence)

        # Pairs
        settings = self.editor.currentPreferenceSettings()
        character = event.text()
        if any((pair for pair in settings.smartTypingPairs if character in pair)):
            yield lambda event, settings=settings, character=character: \
                self.__insert_typing_pairs(event, settings, character)
示例#3
0
文件: base.py 项目: prymatex/prymatex
 def keyPress_handlers(self, event):
     trigger = keyevent_to_keysequence(event)
     for sequence, handler in self.eventHandlers[QtCore.QEvent.KeyPress]:
         if self.isActive() and sequence.matches(trigger):
             yield handler
示例#4
0
 def keyPressEvent(self, event):
     if self.hasSelectedText():
         self.clear()
     sequence = keyevent_to_keysequence(event, prefixes=self.text())
     if not sequence.isEmpty():
         self.setText(sequence.toString())