コード例 #1
0
 def keyPressEvent(self, a0: QtGui.QKeyEvent):
     a0.accept()
     if a0.key() == QtCore.Qt.Key_Left:
         if self.current_z > 0:
             self.ui.sldrZ.setValue(self.current_z - 1)
             self.sliderZChanged(self.current_z - 1)
     elif a0.key() == QtCore.Qt.Key_Right:
         if self.current_z < self.NSlices - 1:
             self.ui.sldrZ.setValue(self.current_z + 1)
             self.sliderZChanged(self.current_z + 1)
     elif a0.key() == QtCore.Qt.Key_Up:
         if self.current_z >= 5:
             self.ui.sldrZ.setValue(self.current_z - 5)
             self.sliderZChanged(self.current_z - 5)
         else:
             self.ui.sldrZ.setValue(0)
             self.sliderZChanged(0)
     elif a0.key() == QtCore.Qt.Key_Down:
         if self.current_z < self.NSlices - 6:
             self.ui.sldrZ.setValue(self.current_z + 5)
             self.sliderZChanged(self.current_z + 5)
         else:
             self.ui.sldrZ.setValue(self.NSlices - 1)
             self.sliderZChanged(self.NSlices - 1)
     elif a0.key() == QtCore.Qt.Key_Space:
         self.cycle_roi()
コード例 #2
0
    def keyPressEvent(self, key_event: QKeyEvent):
        if key_event.key() == Qt.Key_Left or key_event.key() == Qt.Key_Right:
            if key_event.key() == Qt.Key_Left: self.decrement_cursor_pos()
            if key_event.key() == Qt.Key_Right: self.increment_cursor_pos()
            super(Terminal, self).keyPressEvent(key_event)
            return

        self.setText(self.user_text)
        self.set_cursor_at_user_pos()

        if key_event.key() == Qt.Key_Up:
            self.history_up()
            key_event.accept()
        elif key_event.key() == Qt.Key_Down:
            self.history_down()
            key_event.accept()
        elif key_event.key() == Qt.Key_Enter or key_event.key(
        ) == Qt.Key_Return:
            self.interpret_request.emit(self.toPlainText())
            self.cursor_pos = 0
            self.clear_terminal()
        elif key_event.key() == Qt.Key_Space:
            # prevent successive spaces to break up the cursor (while translating to html)
            if len(self.toPlainText(
            )) == 0 or self.toPlainText()[len(self.toPlainText()) - 1] != ' ':
                super(Terminal, self).keyPressEvent(key_event)
        elif key_event.key() == Qt.Key_Less:
            self.insertPlainText('&lt;')
            self.increment_cursor_pos(4)
        elif key_event.key() == Qt.Key_Greater:
            self.insertPlainText('&gt;')
            self.increment_cursor_pos(4)
        else:
            super(Terminal, self).keyPressEvent(key_event)

        # a character has been added to the text
        if len(self.user_text) - len(self.toPlainText().replace(
                '<', '&lt;').replace('>', '&gt;')) == -1:
            self.increment_cursor_pos()
        # > 1 char added at the same time: pasted, history..
        elif len(self.user_text) - len(self.toPlainText().replace(
                '<', '&lt;').replace('>', '&gt;')) < -1:
            self.set_cursor_at(QTextCursor.End)
        # a character has been removed
        elif len(self.user_text) - len(self.toPlainText().replace(
                '<', '&lt;').replace('>', '&gt;')) == 1:
            self.decrement_cursor_pos()
        # multiple characters has been removed
        elif len(self.user_text) - len(self.toPlainText().replace(
                '<', '&lt;').replace('>', '&gt;')) > 1:
            self.set_cursor_at(QTextCursor.Start)

        self.user_text = self.toPlainText()\
            .replace('sqrt', '√(').replace('->', '⇒')\
            .replace('<', '&lt;').replace('>', '&gt;')

        self.clear()
        self.insertHtml(Highlighter.highlight(self.user_text))
        self.set_cursor_at_user_pos()
コード例 #3
0
ファイル: mpvwidget.py プロジェクト: c0re100/vidcutter
 def keyPressEvent(self, event: QKeyEvent) -> None:
     if self.isFullScreen():
         if event.key() in {Qt.Key_Escape, Qt.Key_F}:
             self._exitFullScreen()
             event.accept()
         else:
             self.originalParent.keyPressEvent(event)
     super(mpvWidget, self).keyPressEvent(event)
コード例 #4
0
 def keyPressEvent(self, a0: QKeyEvent):
     '''
     键盘监听事件
     '''
     if a0.key() == Qt.Key_Escape:
         a0.ignore()
     else:
         a0.accept()
コード例 #5
0
 def keyPressEvent(self, event: QKeyEvent):
     if event.key() == Qt.Key_Delete:
         # Delete selected rows
         rows = [i.row() for i in self.selectedIndexes()]
         for row in sorted(rows, reverse=True):
             self.model().remove_label_at(row)
     else:
         event.accept()
コード例 #6
0
    def keyPressEvent(self, event: QKeyEvent):
        super().keyPressEvent(event)

        if event.key() in [Qt.Key_Space, Qt.Key_Enter]:
            event.accept()
            self._capture_requested()
        else:
            event.ignore()
コード例 #7
0
 def keyPressEvent(self, a0: QtGui.QKeyEvent):
     if a0.key() == QtCore.Qt.Key_Escape:
         self.change_cancel()
     elif a0.key() == QtCore.Qt.Key_Enter or a0.key(
     ) == QtCore.Qt.Key_Return:
         self.change_ok()
     a0.accept()
     return a0
コード例 #8
0
ファイル: vidcutter.py プロジェクト: PyQtWorks/vidcutter
 def keyPressEvent(self, event: QKeyEvent) -> None:
     if event.key() == Qt.Key_Escape and self.isFullScreen():
         self.setFullScreen(False)
         event.accept()
     elif event.key() == Qt.Key_Enter:
         self.setFullScreen(not self.isFullScreen())
         event.accept()
     else:
         super(VideoWidget, self).keyPressEvent(event)
コード例 #9
0
 def keyPressEvent(self, event: QtGui.QKeyEvent):
     if self.ui.list_widget.hasFocus():
         key = event.key()
         if key == QtCore.Qt.Key_Return or key == QtCore.Qt.Key_Enter:
             rows = self.ui.list_widget.selectedItems()
             if rows:
                 self.ui.list_widget.editItem(rows[0])
     else:
         event.accept()
コード例 #10
0
 def keyReleaseEvent(self, event0: QtGui.QKeyEvent) -> None:
     event0.accept()
     if event0.key() == Qt.Key_A:
         self._select_items_flag = False
         if self._temp_seed:
             compare_to_seed(
                 self._image,
                 self._circle_seed_items[self._current_item_index],
                 self._temp_seed)
             self._temp_seed = None
コード例 #11
0
    def keyPressEvent(self, event: QKeyEvent):
        super().keyPressEvent(event)

        if event.key() == Qt.Key_Space:
            event.accept()
            self.accept.emit()
        elif event.key() == Qt.Key_Escape:
            event.accept()
            self.reject.emit()
        else:
            event.ignore()
コード例 #12
0
 def keyPressEvent(self, event: QtGui.QKeyEvent) -> None:
     if event.key() == Qt.Key_Q and event.modifiers() & Qt.ControlModifier:
         if self._road_detect_thread.isRunning():
             self._road_detect_thread.pause()
             event.accept()
     elif event.key(
     ) == Qt.Key_A and event.modifiers() & Qt.ControlModifier:
         self._road_detect_thread.resume()
         event.accept()
     else:
         self._image_label.keyPressEvent(event)
コード例 #13
0
 def keyPressEvent(self, event: QKeyEvent) -> None:
     if event.key() in {Qt.Key_F, Qt.Key_Escape}:
         event.accept()
         if self.parent is None:
             self.originalParent.toggleFullscreen()
         else:
             self.parent.toggleFullscreen()
     elif self.isFullScreen():
         self.originalParent.keyPressEvent(event)
     else:
         super(mpvWidget, self).keyPressEvent(event)
コード例 #14
0
 def keyReleaseEvent(self, event0: QtGui.QKeyEvent) -> None:
     event0.accept()
     if event0.key() == Qt.Key_A:
         self._select_items_flag = False
         if self._temp_seed:
             compare_tow_seed_of_spectral_info(
                 self._cv_image,
                 self._circle_seeds_list[self._current_item_index],
                 self._temp_seed)
             # self._selected_indexes = self._road_detection.validation_road_pixels_proportion(self._circle_seeds_list[self._current_item_index])
             self._temp_seed = None
コード例 #15
0
 def keyPressEvent(self, event: QtGui.QKeyEvent) -> None:
     event.accept()
     if event.key() == Qt.Key_S and event.modifiers() & Qt.ControlModifier:
         if not self._is_road_detecting and self._has_init_circle_seed:
             self._is_road_detecting = True
             init_circle_seed_item = self._circle_seed_items[
                 0]  # type: CircleSeedItem
             init_circle_seed_item.change_able = False
             self.start_road_detection_signal.emit(
                 self._circle_seeds_list[0])
     elif event.key() == Qt.Key_A:
         self._select_items_flag = True
コード例 #16
0
 def keyPressEvent(self, a0: QtGui.QKeyEvent) -> None:
     if a0.type() == QtCore.QEvent.KeyPress:
         if a0.key() == QtCore.Qt.Key_Up and self.nextFrequency != -1:
             a0.accept()
             self.setText(str(self.nextFrequency))
             self.editingFinished.emit()  # self.text())
             return
         if a0.key() == QtCore.Qt.Key_Down and self.previousFrequency != -1:
             a0.accept()
             self.setText(str(self.previousFrequency))
             self.editingFinished.emit()  # self.text())
             return
     super().keyPressEvent(a0)
コード例 #17
0
    def keyPressEvent(self, evt: QtGui.QKeyEvent) -> None:
        if self.__current_tool is not None:
            if (not evt.isAutoRepeat() and evt.modifiers() == Qt.KeypadModifier
                    and evt.key() == Qt.Key_Plus):
                group_idx = self.__groups.index(self.__current_tool.group)
                group_idx = (group_idx + 1) % len(self.__groups)
                group = self.__groups[group_idx]
                tool = self.__current_tool_in_group[group]
                self.setCurrentToolType(tool)
                evt.accept()
                return

            self.__current_tool.keyPressEvent(evt)
コード例 #18
0
    def keyPressEvent(self, event: QKeyEvent):
        """ Zoom in and out (+ and - keys).
            Overrides QGraphicsView::keyPressEvent
        """
        if event.key() == Qt.Key_Plus or event.key() == Qt.Key_Minus:
            if event.key() == Qt.Key_Plus:
                self.scale *= 1.2
            else:
                self.scale /= 1.2
            self.viewer.resetTransform()
            self.viewer.scale(self.scale, self.scale)
            self.scene.adjust_roi_scale(self.scale)

        event.accept()
コード例 #19
0
    def keyReleaseEvent(self, evt: QtGui.QKeyEvent) -> None:
        if (not evt.isAutoRepeat() and evt.modifiers() == Qt.NoModifier
                and evt.key() == Qt.Key_Period):
            self.setPreviousTool()
            evt.accept()
            return

        if (not evt.isAutoRepeat() and evt.modifiers() == Qt.NoModifier
                and evt.key() == Qt.Key_F):
            self.setPreviousTool()
            evt.accept()
            return

        if (not evt.isAutoRepeat() and evt.modifiers() == Qt.NoModifier
                and evt.key() == Qt.Key_S):
            self.setPreviousTool()
            evt.accept()
            return

        if (not evt.isAutoRepeat() and evt.modifiers() == Qt.NoModifier
                and evt.key() == Qt.Key_N):
            self.setPreviousTool()
            evt.accept()
            return

        super().keyReleaseEvent(evt)
コード例 #20
0
    def keyPressEvent(self, e: QKeyEvent) -> None:
        """Override keyPressEvent to ignore Return key presses.

        If this widget is focused, we are in passthrough key mode, and
        Enter/Shift+Enter/etc. will cause QLineEdit to think it's finished
        without command_accept to be called.
        """
        text = self.text()
        if text in modeparsers.STARTCHARS and e.key() == Qt.Key_Backspace:
            e.accept()
            modeman.leave(self._win_id, usertypes.KeyMode.command,
                          'prefix deleted')
            return
        if e.key() == Qt.Key_Return:
            e.ignore()
            return
        else:
            super().keyPressEvent(e)
コード例 #21
0
    def keyPressEvent(self, event: QKeyEvent):
        if type(event) == QKeyEvent:

            # here accept the event and do something
            if (event.key() == Qt.Key_W):
                print("w")
                runMotors("w")
            elif (event.key() == Qt.Key_A):
                runMotors("a")
                print("a")
            elif (event.key() == Qt.Key_S):
                runMotors("s")
                print("s")
            elif (event.key() == Qt.Key_D):
                runMotors("d")
                print("d")
            event.accept()
        else:
            event.ignore()
コード例 #22
0
    def handledCompletedAndSelected(self, event: QKeyEvent):
        """ The line is prefilled when only one completion matches. The user
        can accept the suggestion by pressing 'Enter'. The user can reject
        the suggestion by pressing 'Esc' or by continuing to type. """

        self._completedAndSelected = False
        cursor = self.textCursor()
        acceptKeys = [Qt.Key_Enter, Qt.Key_Return, Qt.Key_Tab]
        if event.key() in acceptKeys:
            self.replaceLine(self._completer.currentCompletion())
        elif event.key() == Qt.Key_Escape:
            self.document().undo()
        else:
            self.document().undo()
            return False

        self.setTextCursor(cursor)
        event.accept()
        return True
コード例 #23
0
ファイル: vidcutter.py プロジェクト: PyQtWorks/vidcutter
 def keyPressEvent(self, event: QKeyEvent) -> None:
     if self.mediaPlayer.isVideoAvailable(
     ) or self.mediaPlayer.isAudioAvailable():
         addtime = 0
         if event.key() == Qt.Key_Left:
             addtime = -1000
         elif event.key() == Qt.Key_PageUp or event.key() == Qt.Key_Up:
             addtime = -10000
         elif event.key() == Qt.Key_Right:
             addtime = 1000
         elif event.key() == Qt.Key_PageDown or event.key() == Qt.Key_Down:
             addtime = 10000
         elif event.key() == Qt.Key_Enter:
             self.toggleFullscreen()
         elif event.key(
         ) == Qt.Key_Escape and self.videoWidget.isFullScreen():
             self.videoWidget.setFullScreen(False)
         if addtime != 0:
             newval = self.seekSlider.value() + addtime
             self.seekSlider.setValue(newval)
             self.seekSlider.setSliderPosition(newval)
             self.mediaPlayer.setPosition(newval)
     event.accept()
コード例 #24
0
 def keyPressEvent(self, event: QKeyEvent):
     """Handles keys "+" to zoom in, "-" to zoom out, and "1" to
     reset the zoom back to 1x.
     """
     key = event.key()
     if key == QtCore.Qt.Key_Plus:
         self.zoom(1.2)
         event.accept()
     elif key == QtCore.Qt.Key_Minus:
         self.zoom(1 / 1.2)
         event.accept()
     elif key == QtCore.Qt.Key_1:
         self.reset_zoom()
         event.accept()
     else:
         super().keyPressEvent(event)
コード例 #25
0
 def keyPressEvent(self, event: QKeyEvent):
     if event.key() == Qt.Key_V:
         if event.modifiers() == Qt.ControlModifier:
             self.add_clip_content()
             event.accept()
     if event.key() == Qt.Key_R:
         if event.modifiers() == Qt.ControlModifier:
             if self.tree_widget_content_view.topLevelItemCount():
                 self.tree_widget_content_view.collapseAll()
             event.accept()
     if event.key() == Qt.Key_E:
         if event.modifiers() == Qt.ControlModifier:
             if self.tree_widget_content_view.topLevelItemCount():
                 self.tree_widget_content_view.expandAll()
             event.accept()
     if event.key() == Qt.Key_Delete:
         self.delete_contents()
     else:
         event.ignore()
コード例 #26
0
 def keyPressEvent(self, event: QKeyEvent) -> None:
     """Handles "q" key to close (and exit) the SVG viewer.
     """
     key = event.key()
     if key == QtCore.Qt.Key_Q:
         event.accept()
         self.close()
     elif key == QtCore.Qt.Key_S:
         event.accept()
         self.save()
     elif key == QtCore.Qt.Key_H:
         event.accept()
         QMessageBox.information(
             self, 'SVG Viewer Help', 'Mouse:\n'
             '  wheel: zoom in/out\n'
             'Keys:\n'
             '  + or -: zoom in/out respectively\n'
             '  1: reset zoom to 1x\n'
             '  s: save SVG to file\n'
             '  q: quit viewer\n'
             '  h: show this help', QMessageBox.Ok, QMessageBox.Ok)
     else:
         super().keyPressEvent(event)
コード例 #27
0
 def keyPressEvent(self, event: QKeyEvent):
     if event.key() == Qt.Key_Enter:
         event.ignore()
     else:
         event.accept()
コード例 #28
0
    def keyPressEvent(self, evt: QtGui.QKeyEvent) -> None:
        if (not evt.isAutoRepeat() and evt.modifiers() == Qt.NoModifier
                and evt.key() == Qt.Key_Period):
            self.setCurrentToolType(tools.ToolType.DURATION_DOT)
            evt.accept()
            return

        if (not evt.isAutoRepeat() and evt.modifiers() == Qt.NoModifier
                and evt.key() == Qt.Key_F):
            self.setCurrentToolType(tools.ToolType.ACCIDENTAL_FLAT)
            evt.accept()
            return

        if (not evt.isAutoRepeat() and evt.modifiers() == Qt.NoModifier
                and evt.key() == Qt.Key_S):
            self.setCurrentToolType(tools.ToolType.ACCIDENTAL_SHARP)
            evt.accept()
            return

        if (not evt.isAutoRepeat() and evt.modifiers() == Qt.NoModifier
                and evt.key() == Qt.Key_N):
            self.setCurrentToolType(tools.ToolType.ACCIDENTAL_NATURAL)
            evt.accept()
            return

        if (not evt.isAutoRepeat() and evt.modifiers() == Qt.NoModifier
                and evt.key() == Qt.Key_R):
            self.setCurrentToolType({
                tools.ToolType.NOTE_WHOLE:
                tools.ToolType.REST_WHOLE,
                tools.ToolType.NOTE_HALF:
                tools.ToolType.REST_HALF,
                tools.ToolType.NOTE_QUARTER:
                tools.ToolType.REST_QUARTER,
                tools.ToolType.NOTE_8TH:
                tools.ToolType.REST_8TH,
                tools.ToolType.NOTE_16TH:
                tools.ToolType.REST_16TH,
                tools.ToolType.NOTE_32TH:
                tools.ToolType.REST_32TH,
                tools.ToolType.REST_WHOLE:
                tools.ToolType.NOTE_WHOLE,
                tools.ToolType.REST_HALF:
                tools.ToolType.NOTE_HALF,
                tools.ToolType.REST_QUARTER:
                tools.ToolType.NOTE_QUARTER,
                tools.ToolType.REST_8TH:
                tools.ToolType.NOTE_8TH,
                tools.ToolType.REST_16TH:
                tools.ToolType.NOTE_16TH,
                tools.ToolType.REST_32TH:
                tools.ToolType.NOTE_32TH,
            }.get(self.currentToolType(), tools.ToolType.REST_QUARTER))
            evt.accept()
            return

        if (not evt.isAutoRepeat() and evt.modifiers() == Qt.NoModifier
                and evt.key() == Qt.Key_1):
            self.setCurrentToolType(
                tools.ToolType.NOTE_WHOLE if not self.currentToolType().is_rest
                else tools.ToolType.REST_WHOLE)
            evt.accept()
            return

        if (not evt.isAutoRepeat() and evt.modifiers() == Qt.NoModifier
                and evt.key() == Qt.Key_2):
            self.setCurrentToolType(
                tools.ToolType.NOTE_HALF if not self.currentToolType().is_rest
                else tools.ToolType.REST_HALF)
            evt.accept()
            return

        if (not evt.isAutoRepeat() and evt.modifiers() == Qt.NoModifier
                and evt.key() == Qt.Key_3):
            self.setCurrentToolType(
                tools.ToolType.NOTE_QUARTER if not self.currentToolType(
                ).is_rest else tools.ToolType.REST_QUARTER)
            evt.accept()
            return

        if (not evt.isAutoRepeat() and evt.modifiers() == Qt.NoModifier
                and evt.key() == Qt.Key_4):
            self.setCurrentToolType(
                tools.ToolType.NOTE_8TH if not self.currentToolType().is_rest
                else tools.ToolType.REST_8TH)
            evt.accept()
            return

        if (not evt.isAutoRepeat() and evt.modifiers() == Qt.NoModifier
                and evt.key() == Qt.Key_5):
            self.setCurrentToolType(
                tools.ToolType.NOTE_16TH if not self.currentToolType().is_rest
                else tools.ToolType.REST_16TH)
            evt.accept()
            return

        if (not evt.isAutoRepeat() and evt.modifiers() == Qt.NoModifier
                and evt.key() == Qt.Key_6):
            self.setCurrentToolType(
                tools.ToolType.NOTE_32TH if not self.currentToolType().is_rest
                else tools.ToolType.REST_32TH)

            evt.accept()
            return

        super().keyPressEvent(evt)
コード例 #29
0
ファイル: rujaion_main.py プロジェクト: ra2003/rujaion
    def keyPressEvent(self, event: QtGui.QKeyEvent):
        if (
            event.modifiers() == QtCore.Qt.ShiftModifier
            and event.key() == QtCore.Qt.Key_F8
        ):
            self.stepOut()
        elif (
            event.modifiers() == QtCore.Qt.ControlModifier
            and event.key() == QtCore.Qt.Key_F9
        ):
            self.run()
        elif event.key() == QtCore.Qt.Key_F9:
            self.debug()
        elif event.key() == QtCore.Qt.Key_F8:
            self.next()
        elif event.key() == QtCore.Qt.Key_F7:
            self.stepIn()
        elif (
            event.modifiers() == QtCore.Qt.ControlModifier
            and event.key() == QtCore.Qt.Key_F4
        ):
            self.testMyCode()
        elif event.key() == QtCore.Qt.Key_F4:
            self.debugWithLastCase()
        elif (
            event.modifiers() == QtCore.Qt.ControlModifier
            and event.key() == QtCore.Qt.Key_F6
        ):
            self.submit()
        elif event.key() == QtCore.Qt.Key_F6:
            self.browser_widget.focusOnUrlEdit()
        elif (
            event.modifiers() == QtCore.Qt.ControlModifier
            and event.key() == QtCore.Qt.Key_F12
        ):
            if self.debug_process is not None:
                return

            if self.editor.isHidden():
                self.editor.show()
                self.console.show()
                self.browser_dock.hide()
            else:
                self.editor.hide()
                self.console.hide()
                self.browser_dock.show()
                self.editor.setFocus()
        elif event.key() == QtCore.Qt.Key_F12:
            if self.editor.isHidden():
                self.editor.show()
                self.console.show()
                self.browser_widget.browser.setFocus()
            if self.browser_dock.isHidden():
                self.browser_dock.show()
            else:
                self.browser_dock.hide()
        elif event.key() == QtCore.Qt.Key_F11:
            if self.console_dock.isHidden():
                self.console_dock.show()
            else:
                self.console_dock.hide()
        elif event.key() == QtCore.Qt.Key_Escape:
            self.terminate()
        elif (
            event.modifiers() == QtCore.Qt.ControlModifier
            and event.key() == QtCore.Qt.Key_O
        ):
            self.showFileDialog()
        elif (
            event.modifiers() == QtCore.Qt.ControlModifier
            and event.key() == QtCore.Qt.Key_S
        ):
            self.saveFile()
        elif (
            event.modifiers() == QtCore.Qt.ControlModifier
            and event.key() == QtCore.Qt.Key_W
        ):
            self.saveFileAs()
        elif (
            event.modifiers() == QtCore.Qt.ControlModifier
            and event.key() == QtCore.Qt.Key_F
        ):
            self.editor.find()
        elif (
            event.modifiers() == QtCore.Qt.ControlModifier
            and event.key() == QtCore.Qt.Key_N
        ):
            self.newFile()
        else:
            event.accept()
コード例 #30
0
ファイル: rujaion_main.py プロジェクト: ra2003/rujaion
 def closeEvent(self, e: QtGui.QKeyEvent):
     self.settings.setValue("size", self.size())
     self.settings.setValue("pos", self.pos())
     e.accept()
コード例 #31
0
ファイル: ProtocolLabelDialog.py プロジェクト: jopohl/urh
 def keyPressEvent(self, event: QKeyEvent):
     if event.key() == Qt.Key_Enter:
         event.ignore()
     else:
         event.accept()