def event(self, event): """ Qt Override. Usefull when in line edit mode. """ if event.type() == QEvent.KeyPress and event.key() == Qt.Key_Tab: return False return QWidget.event(self, event)
def event(self, e: QEvent) -> bool: ''' Event Parameters ---------- e : QEvent Returns ------- value : bool ''' state = self.d.dragging_state if state == DragState.inactive: # Normally we would check here, if the left mouse button is pressed. # But from QT version 5.12.2 on the mouse events from # QEvent.NonClientAreaMouseButtonPress return the wrong mouse # button The event always returns Qt.RightButton even if the left # button is clicked. if e.type() == QEvent.NonClientAreaMouseButtonPress: if QT_VERSION_TUPLE >= (5, 12, 2): # and QGuiApplication.mouseButtons().testFlag(Qt.LeftButton ... logger.debug('FloatingWidget.event Event.NonClientAreaMouseButtonPress %s', e.type()) self.d.set_state(DragState.mouse_pressed) elif QGuiApplication.mouseButtons() == Qt.LeftButton: logger.debug('FloatingWidget.event Event.NonClientAreaMouseButtonPress %s', e.type()) self.d.set_state(DragState.mouse_pressed) elif state == DragState.mouse_pressed: if e.type() == QEvent.NonClientAreaMouseButtonDblClick: logger.debug('FloatingWidget.event QEvent.NonClientAreaMouseButtonDblClick') self.d.set_state(DragState.inactive) elif e.type() == QEvent.Resize: # If the first event after the mouse press is a resize event, then # the user resizes the window instead of dragging it around. # But there is one exception. If the window is maximized, # then dragging the window via title bar will cause the widget to # leave the maximized state. This in turn will trigger a resize event. # To know, if the resize event was triggered by user via moving a # corner of the window frame or if it was caused by a windows state # change, we check, if we are not in maximized state. if not self.isMaximized(): self.d.set_state(DragState.inactive) elif state == DragState.floating_widget: if e.type() == QEvent.NonClientAreaMouseButtonRelease: logger.debug('FloatingWidget.event QEvent.NonClientAreaMouseButtonRelease') self.d.title_mouse_release_event() return QWidget.event(self, e)
def event(self, event): if event.type() == QEvent.KeyRelease: if event.modifiers() == Qt.ControlModifier: if event.key() == Qt.Key_B: self.tabs.setCurrentIndex(0) elif event.key() == Qt.Key_L: self.tabs.setCurrentIndex(1) elif event.key() == Qt.Key_F: self.tabs.setCurrentIndex(2) elif event.key() == Qt.Key_Y: self.tabs.setCurrentIndex(3) elif event.key() == Qt.Key_M: self.tabs.setCurrentIndex(4) elif event.key() == Qt.Key_Escape: self.hide() return QWidget.event(self, event)
def event(self, event): """ Qt override. This is needed to be able to intercept the Tab key press event. """ if event.type() == QEvent.KeyPress: if (event.key() == Qt.Key_Tab or event.key() == Qt.Key_Space): text = self.text() cursor = self.cursorPosition() # fix to include in "undo/redo" history if cursor != 0 and text[cursor-1] == ' ': text = text[:cursor-1] + ROW_SEPARATOR + ' ' +\ text[cursor:] else: text = text[:cursor] + ' ' + text[cursor:] self.setCursorPosition(cursor) self.setText(text) self.setCursorPosition(cursor + 1) return False return QWidget.event(self, event)
def event(self, event): """ Qt override. This is needed to be able to intercept the Tab key press event. """ if event.type() == QEvent.KeyPress: if (event.key() == Qt.Key_Tab or event.key() == Qt.Key_Space): text = self.text() cursor = self.cursorPosition() # fix to include in "undo/redo" history if cursor != 0 and text[cursor - 1] == ' ': text = text[:cursor-1] + ROW_SEPARATOR + ' ' +\ text[cursor:] else: text = text[:cursor] + ' ' + text[cursor:] self.setCursorPosition(cursor) self.setText(text) self.setCursorPosition(cursor + 1) return False return QWidget.event(self, event)
def event(self, event): if event.type() == QEvent.KeyRelease: if event.key() == Qt.Key_Escape: self.hide() if isinstance(event, QEvent): return QWidget.event(self, event)
def event(self, event): if event.type() == QEvent.KeyRelease: if event.key() == Qt.Key_Escape: self.close() return QWidget.event(self, event)