def rotate_selected(scene: QGraphicsScene, e: QKeyEvent): for item in scene.selectedItems(): if e.key() == Qt.Key_Right: item.setRotation( (item.rotation() + 1 + (2 * (e.modifiers() == Qt.ShiftModifier))) % 360) elif e.key() == Qt.Key_Left: item.setRotation( (item.rotation() - 1 - (2 * (e.modifiers() == Qt.ShiftModifier))) % 360)
def keyReleaseEvent(self, event: QKeyEvent): if event.key() == Qt.Key.Key_Delete: self.DeleteSelected() if event.key() == Qt.Key.Key_D and event.modifiers() == Qt.Modifier.CTRL: self.DuplicateSelected() super().keyReleaseEvent(event)
def keyPressEvent(self, event: QKeyEvent) -> None: if event.key() == Qt.Key_Escape: self.selectionModel().clear() elif event.matches(QKeySequence.Delete): asyncio.create_task(self.deleteSelectedMods()) elif event.modifiers( ) & Qt.ControlModifier == Qt.ControlModifier and event.key( ) == Qt.Key_Up: asyncio.create_task(self.changeSelectedModsPriority(1)) elif event.modifiers( ) & Qt.ControlModifier == Qt.ControlModifier and event.key( ) == Qt.Key_Down: asyncio.create_task(self.changeSelectedModsPriority(-1)) elif event.modifiers( ) & Qt.ControlModifier == Qt.ControlModifier and event.key( ) == Qt.Key_P: index = self.selectionModel().selectedRows()[0] index = index.sibling(index.row(), 5) if index.flags() & Qt.ItemIsEditable: self.setCurrentIndex(index) self.edit(index) else: super().keyPressEvent(event)
def keyPressEvent(self, event: QKeyEvent) -> None: shift = event.modifiers() & Qt.ShiftModifier == Qt.ShiftModifier key = event.key() if key == Qt.Key_Up: if shift: self.signal_key_selection_pressed.emit(KeyType.UP) else: self.signal_key_cursor_pressed.emit(KeyType.UP) elif key == Qt.Key_Down: if shift: self.signal_key_selection_pressed.emit(KeyType.DOWN) else: self.signal_key_cursor_pressed.emit(KeyType.DOWN) elif key == Qt.Key_Left: if shift: self.signal_key_selection_pressed.emit(KeyType.LEFT) else: self.signal_key_cursor_pressed.emit(KeyType.LEFT) elif key == Qt.Key_Right: if shift: self.signal_key_selection_pressed.emit(KeyType.RIGHT) else: self.signal_key_cursor_pressed.emit(KeyType.RIGHT) elif key == Qt.Key_PageUp: if shift: self.signal_key_selection_pressed.emit(KeyType.PAGE_UP) else: self.signal_key_cursor_pressed.emit(KeyType.PAGE_UP) elif key == Qt.Key_PageDown: if shift: self.signal_key_selection_pressed.emit(KeyType.PAGE_DOWN) else: self.signal_key_cursor_pressed.emit(KeyType.PAGE_DOWN) elif key == Qt.Key_Home: if shift: self.signal_key_selection_pressed.emit(KeyType.HOME) else: self.signal_key_cursor_pressed.emit(KeyType.HOME) elif key == Qt.Key_End: if shift: self.signal_key_selection_pressed.emit(KeyType.END) else: self.signal_key_cursor_pressed.emit(KeyType.END)