Пример #1
0
 def keyReleaseEvent(self, event: QtGui.QKeyEvent) -> None:
     if self.tool_index != -1:
         # show the erase tool highlighted when Control is pressed
         if event.key() == QtCore.Qt.Key_Control:
             self.selectTool(self.tool_index_clicked)
         if event.key() == QtCore.Qt.Key_Alt:
             self.selectTool(self.tool_index_clicked)
Пример #2
0
    def keyPressEvent(self, evt: QtGui.QKeyEvent) -> None:
        if evt.key() == QtCore.Qt.Key_Escape:
            self.model.kp.selected_idx = None

        elif self.model.kp.selected_idx is not None:

            if evt.key() in (QtCore.Qt.Key_Delete, QtCore.Qt.Key_Backspace):
                cmd = cmd_del_keypoint(self.model.kp,
                                       self.model.kp.selected_idx)
                self._parent.undoStack.push(cmd)
                self.model.kp.selected_idx = None

            # Basic 1-px nudging
            elif evt.key() in (QtCore.Qt.Key_Left, QtCore.Qt.Key_Right,
                               QtCore.Qt.Key_Up, QtCore.Qt.Key_Down):
                kp_lut: Dict[int, Tuple[int, int]] = {
                    QtCore.Qt.Key_Left: (-1, 0),
                    QtCore.Qt.Key_Right: (1, 0),
                    QtCore.Qt.Key_Up: (0, -1),
                    QtCore.Qt.Key_Down: (0, 1),
                }
                nudge = Vec2.from_mat(kp_lut[evt.key()])

                current = self.get_keypoint_viewport_center(
                    self.model.kp.keypoints[self.model.kp.selected_idx])
                self.do_set_cmd(current + nudge, True)
Пример #3
0
    def keyPressEvent(self, event: QtGui.QKeyEvent) -> None:
        numberkey = event.key() - 49

        if 0 <= numberkey < len(
                self.types) and event.modifiers() != QtCore.Qt.KeypadModifier:
            # @key 0-9: change brush type
            self.selectType(numberkey)
Пример #4
0
    def keyPressEvent(self, evt: QtGui.QKeyEvent) -> bool:
        if self.disabled:
            return False

        if evt.key() == QtCore.Qt.Key_Escape:
            self.__idx_handle_sel = None

        elif self.__idx_handle_sel is not None:

            if evt.key() in (QtCore.Qt.Key_Delete, QtCore.Qt.Key_Backspace) and IDX_IS_LINE(self.__idx_handle_sel):

                cmd = cmd_set_handle_position(self.model, self.__idx_handle_sel, None)
                self._parent.undoStack.push(cmd)
                # self.model.set_handle(self.__idx_handle_sel, None)
                self.__idx_handle_sel = None

            # Basic 1-px nudging
            elif evt.key() in (QtCore.Qt.Key_Left, QtCore.Qt.Key_Right, QtCore.Qt.Key_Up, QtCore.Qt.Key_Down):
                _nudgetab: Dict[int,Tuple[int, int]] = {
                    QtCore.Qt.Key_Left: (-1, 0),
                    QtCore.Qt.Key_Right: (1, 0),
                    QtCore.Qt.Key_Up: (0, -1),
                    QtCore.Qt.Key_Down: (0, 1),
                }

                nudge = _nudgetab[evt.key()]

                current = self.im2V(self.model.align_handles[self.__idx_handle_sel])
                viewspace = self.V2im(current + Vec2.from_mat(nudge))
                cmd = cmd_set_handle_position(self.model, self.__idx_handle_sel, viewspace)
                self._parent.undoStack.push(cmd)
                # self.model.set_handle(self.__idx_handle_sel, viewspace)

                self.__ghost_handle = None
Пример #5
0
    def keyPressEvent(self, event: QtGui.QKeyEvent) -> None:
        numberkey = event.key() - 49
        # @key ---- Painting ----
        # if self.tool_index >= 0 and 0 <= numberkey < self.mask_file.get_mask_type_list().count()+1 and event.modifiers() != Qt.KeypadModifier:
        #    # @key 0-9: change brush type
        #    self.maskTypeChooser.selectType(numberkey)

        if event.key() == QtCore.Qt.Key_Plus:
            # @key +: increase brush radius
            self.changeCursorSize(+1)
        if event.key() == QtCore.Qt.Key_Minus:
            # @key -: decrease brush radius
            self.changeCursorSize(-1)

        if event.key() == QtCore.Qt.Key_O:
            # @key O: increase mask transparency
            self.changeOpacity(+0.1)
        if event.key() == QtCore.Qt.Key_I:
            # @key I: decrease mask transparency
            self.changeOpacity(-0.1)

        self.tool_group.keyPressEvent(event)

        # only link the mask type chooser
        if self.tool_group.tool_index >= 0:
            self.maskTypeChooser.keyPressEvent(event)
Пример #6
0
 def keyPressEvent(self, event: QtGui.QKeyEvent) -> None:
     # close the window with esc
     if event.key() == QtCore.Qt.Key_Escape:
         self.mask_handler.marker_edit_window = None
         self.close()
     # save marker with return
     if event.key() == QtCore.Qt.Key_Return:
         self.saveMaskType()
Пример #7
0
 def keyPressEvent(self, event: QtGui.QKeyEvent) -> None:
     keys = [QtCore.Qt.Key_F12, QtCore.Qt.Key_F11, QtCore.Qt.Key_F10, QtCore.Qt.Key_F9, QtCore.Qt.Key_F8,
             QtCore.Qt.Key_F7, QtCore.Qt.Key_F6, QtCore.Qt.Key_F5]
     for index, key in enumerate(keys):
         # @key F12: Launch
         if event.key() == key:
             if event.modifiers() & QtCore.Qt.ControlModifier:
                 self.reload(index)
             else:
                 self.launch(index)
Пример #8
0
 def key_press(self, event: QKeyEvent):
     k = self.modifiers.get(event.modifiers())
     if k is not None:
         key_seq = QKeySequence(k + event.key())
         try:
             text = key_seq.toString()
             self.ctrl.setText(text)
         except:
             import traceback
             traceback.print_exc()
Пример #9
0
 def keyReleaseEvent(self, evt: QtGui.QKeyEvent) -> None:
     if evt.key() == QtCore.Qt.Key_Up:
         self.hist(1)
     elif evt.key() == QtCore.Qt.Key_Down:
         self.hist(-1)
     elif evt.key() == QtCore.Qt.Key_Tab:
         self.do_autocomplete()
     elif evt.key() in (QtCore.Qt.Key_Enter, QtCore.Qt.Key_Return):
         self.do_return()
     else:
         super(ConsoleEditWidget, self).keyReleaseEvent(evt)
Пример #10
0
    def keyPressEvent(self, event: QKeyEvent):
        """Accept current color on enter, cancel on escape.

        Parameters
        ----------
        event : QKeyEvent
            The keypress event that triggered this method.
        """
        if event.key() in (Qt.Key_Return, Qt.Key_Enter):
            return self.color_dialog.accept()
        if event.key() == Qt.Key_Escape:
            return self.color_dialog.reject()
        self.color_dialog.keyPressEvent(event)
Пример #11
0
 def keyPressEvent(self, ev: QG.QKeyEvent):
     if ev.key() != QC.Qt.Key_Up and ev.key() != QC.Qt.Key_Down and ev.key(
     ) != QC.Qt.Key_Enter and ev.key() != QC.Qt.Key_Return:
         QW.QApplication.postEvent(
             self.keyEventTarget,
             QG.QKeyEvent(ev.type(), ev.key(), ev.modifiers(), ev.text(),
                          ev.isAutoRepeat()))
         self.keyEventTarget.setFocus()
     else:
         super().keyPressEvent(self, ev)
Пример #12
0
 def keyPressEvent(self, event: QtGui.QKeyEvent) -> None:
     # @key ---- Modules ----
     # @key Q: open the console
     if event.key() == QtCore.Qt.Key_Q and not event.modifiers() & QtCore.Qt.ControlModifier:
         self.setVisible(not self.isVisible())
         self.update_display()
     # @key Ctrl+Q: detach the console
     if event.key() == QtCore.Qt.Key_Q and event.modifiers() & QtCore.Qt.ControlModifier:
         if self.parent() is None:
             self.splitter.addWidget(self)
         else:
             self.setParent(None)
             self.setGeometry(self.x(), self.y(), 500, 300)
             self.show()
         self.setVisible(True)
    def keyPressEvent(self, e: QKeyEvent):
        if e.modifiers() & Qt.ControlModifier:
            selected = self.info_field.selectedRanges()

            if e.key() == Qt.Key_C:  # copy
                s = ""

                for r in range(selected[0].topRow(), selected[0].bottomRow() + 1):
                    for c in range(selected[0].leftColumn(), selected[0].rightColumn() + 1):
                        try:
                            s += str(self.info_field.item(r, c).text()) + "\t"
                        except AttributeError:
                            s += "\t"
                    s = s[:-1] + "\n"  # eliminate last '\t'
                self.clip.setText(s)
Пример #14
0
    def press_key_and_verify(key_pressed, key_mod, expected_value,
                             write_on_press):
        # reset value to initial value
        pydm_spinbox.value_changed(initial_spinbox_value)
        pydm_spinbox.send_value()

        #  use modifier if left/right keys
        if key_mod != Qt.NoModifier:
            # Monkeypatch the Control flag because in this test, we don't properly have the app QApplication instance
            monkeypatch.setattr(QApplication, "queryKeyboardModifiers",
                                lambda *args: key_mod)
        else:
            monkeypatch.setattr(QApplication, "queryKeyboardModifiers",
                                lambda *args: Qt.NoModifier)

        pydm_spinbox.writeOnPress = write_on_press
        pydm_spinbox.keyPressEvent(
            QKeyEvent(QEvent.KeyPress, key_pressed, key_mod))

        # Check for change if write on press enabled
        if pydm_spinbox.writeOnPress:
            assert signals.value == expected_value

        # Check for no change if disabled
        else:
            assert signals.value == initial_spinbox_value
Пример #15
0
 def keyPressEvent(self, event: QtGui.QKeyEvent) -> None:
     if event.key() == QtCore.Qt.Key_L:
         self.start, self.end, self.skip = self.cp.getFrameRange()
         points = self.db.getMarkers(image=self.start)
         for p in points:
             p.processed = 0
             p.save()
Пример #16
0
 def keyPressEvent(self, e: QKeyEvent) -> None:
     """Delete items with delete key."""
     if e.key() in (Qt.Key_Backspace, Qt.Key_Delete):
         for i in self.selectionModel().selectedIndexes():
             self._root.remove(i.internalPointer())
         return
     return super().keyPressEvent(e)
Пример #17
0
    def press_key_and_verify(key_pressed, key_mod, key_press_count, expected_exp, expected_value):
        if key_mod != Qt.NoModifier:
            # Monkeypatch the Control flag because in this test, we don't properly have the app QApplication instance
            monkeypatch.setattr(QApplication, "queryKeyboardModifiers", lambda *args: key_mod)
        else:
            monkeypatch.setattr(QApplication, "queryKeyboardModifiers", lambda *args: Qt.NoModifier)

        for i in range(0, key_press_count):
            pydm_spinbox.keyPressEvent(QKeyEvent(QEvent.KeyPress, key_pressed, key_mod))
        assert pydm_spinbox.step_exponent == expected_exp

        signals.send_value_signal[float].connect(signals.receiveValue)
        signals.send_value_signal[float].connect(pydm_spinbox.channelValueChanged)

        # Send out the key event to update the value based on the step exponent change
        pydm_spinbox.keyPressEvent(QKeyEvent(QEvent.KeyPress, Qt.Key_Return, Qt.NoModifier))
        assert pydm_spinbox.value == expected_value
Пример #18
0
    def keyPressEvent(self, e: QKeyEvent):
        if not e.modifiers() & Qt.ControlModifier:
            return
        selected = self.result_view.selectedRanges()

        if e.key() == Qt.Key_C:  # copy
            s = ""

            for r in range(selected[0].topRow(), selected[0].bottomRow() + 1):
                for c in range(selected[0].leftColumn(),
                               selected[0].rightColumn() + 1):
                    try:
                        s += str(self.result_view.item(r, c).text()) + "\t"
                    except AttributeError:
                        s += "\t"
                s = s[:-1] + "\n"  # eliminate last '\t'
            QApplication.clipboard().setText(s)
Пример #19
0
def test_open_path_finder(vim_bot, monkeypatch, tmpdir):
    """Test open path finder."""
    _, _, _, vim, qtbot = vim_bot

    fn = tmpdir.join('tmp.txt')
    fn.write('content')
    monkeypatch.setattr(PathFinder, "exec_", lambda x: x)
    monkeypatch.setattr(PathFinder, "get_path_selected", lambda x: str(fn))
    event = QKeyEvent(QEvent.KeyPress, Qt.Key_P, Qt.ControlModifier)
    vim.vim_cmd.commandline.keyPressEvent(event)
Пример #20
0
    def keyReleaseEvent(self, event: QKeyEvent):
        """
        keyReleaseEvent

        Parameters
        ----------
        event : QKeyEvent
        """
        if event.key() == Qt.Key_Shift:
            self.setDragMode(QGraphicsView.ScrollHandDrag)
        super().keyReleaseEvent(event)
Пример #21
0
    def keyPressEvent(self, event: QKeyEvent):
        """
        keyPressEvent

        Parameters
        ----------
        event : QKeyEvent
        """
        if event.key() == Qt.Key_Shift:
            self.setDragMode(QGraphicsView.RubberBandDrag)

        super().keyPressEvent(event)
Пример #22
0
def test_list_view_keypress(qtbot):
    root: SelectableEventedList[T] = SelectableEventedList(map(T, range(5)))
    view = QtListView(root)
    qtbot.addWidget(view)

    first = root[0]
    root.selection = {first}
    assert first in root.selection
    # delete removes the item from the python model too
    view.keyPressEvent(QKeyEvent(QEvent.KeyPress, Qt.Key_Delete,
                                 Qt.NoModifier))
    assert first not in root
Пример #23
0
    def keyPressEvent(self, event: QtGui.QKeyEvent) -> None:

        if self.isVisible():
            if event.key() == QtCore.Qt.Key_K:
                # @key K: pick color of brush
                self.selectTool(2)

            if event.key() == QtCore.Qt.Key_P:
                # @key P: paint brush
                self.selectTool(0)

            if event.key() == QtCore.Qt.Key_E:
                # @key E: eraser
                self.selectTool(1)

            if event.key() == QtCore.Qt.Key_B:
                # @key E: fill bucket
                self.selectTool(3)

        # show the erase tool highlighted when Control is pressed
        if self.tool_index != -1:
            if event.key() == QtCore.Qt.Key_Control and self.tool_index != 1:
                self.selectTool(1, temporary=True)
            if event.key() == QtCore.Qt.Key_Alt and self.tool_index != 2:
                self.selectTool(2, temporary=True)
Пример #24
0
    def o(self, num=1, num_str=''):
        """Begin a new line below the cursor and insert text."""
        editor = self.get_editor()
        cursor = editor.textCursor()
        cursor.movePosition(QTextCursor.EndOfLine)
        editor.setTextCursor(cursor)
        editor.setFocus()

        # Send the keyevent to editor for using autoindent of editor.
        new_event = QKeyEvent(QEvent.KeyPress, Qt.Key_Return, Qt.NoModifier)
        editor.keyPressEvent(new_event)

        self.vim_status.update_dot_cmd(connect_editor=True)
Пример #25
0
    def keyPressEvent(self, e: QKeyEvent):
        if e.key() == Qt.Key_Up:
            self.close()
            self.signal_move_cursor.emit(self.UP)
            e.accept()
        elif e.key() == Qt.Key_Down:
            self.close()
            self.signal_move_cursor.emit(self.DOWN)
            e.accept()

        super(InputValueDialog, self).keyPressEvent(e)
Пример #26
0
 def keyPressEvent(self, event: QtGui.QKeyEvent):
     if event.type() == QtCore.QEvent.KeyPress:
         event.ignore()
Пример #27
0
 def keyPressEvent(self, e: QKeyEvent) -> None:
     """Delete items with delete key."""
     if e.key() in (Qt.Key_Backspace, Qt.Key_Delete):
         self._root.remove_selected()
         return
     return super().keyPressEvent(e)
Пример #28
0
 def keyPressEvent(self, e: QKeyEvent):
     if e.key() != Qt.Key_Escape:
         super(ConfigDialog, self).keyPressEvent(e)
     else:
         self.close()
Пример #29
0
def tuple2keyevent(past_event):
    """Convert tuple into a QKeyEvent instance"""
    return QKeyEvent(*past_event)
Пример #30
0
 def keyPressEvent(self, event: QKeyEvent):
     super(LocalFileSystemTree, self).keyPressEvent(event)
     if event.key() in [Qt.Key_Enter, Qt.Key_Return]:
         event.accept()
         self.open()