예제 #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
 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
 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()
 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
 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)
 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
    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
 def closeEvent(self, e: QtGui.QKeyEvent):
     self.settings.setValue("size", self.size())
     self.settings.setValue("pos", self.pos())
     e.accept()
예제 #31
0
 def keyPressEvent(self, event: QKeyEvent):
     if event.key() == Qt.Key_Enter:
         event.ignore()
     else:
         event.accept()