Exemplo n.º 1
0
    def eventFilter(self, obj, event):
        """
        Handles every event on filtered object and its children
        :param event: custom event
        :param obj: receiver
        :type event: PySide.QtCore.QEvent
        :type obj: PySide.QtCore.QObject
        :return: if the event needs to be filtered (eaten)
        :rtype : bool
        """
        # --- KEY PRESS events ----
        if event.type() is QEvent.KeyPress:
            modifier = QApplication.queryKeyboardModifiers(
            )  # get pressed modifier keys (ctrl, shift, alt, etc)

            # ESCAPE key
            if event.key() == Qt.Key_Escape:
                self.escapePressed.emit()

            # PLAY or SPACE key
            elif event.key() == Qt.Key_MediaPlay or event.key(
            ) == Qt.Key_Space:
                self.playKeyPressed.emit()

            # STOP key
            elif event.key() == Qt.Key_MediaStop:
                self.stopKeyPressed.emit()

            # CTRL + PLUS key pressed
            if event.key() == Qt.Key_Plus and modifier == Qt.ControlModifier:
                self.volumeUpKeyPressed.emit()
                return True
                # CTRL + MINUS key pressed
            if event.key() == Qt.Key_Minus and modifier == Qt.ControlModifier:
                self.volumeDownKeyPressed.emit()
                return True
                # CTRL + * key pressed
            if event.key(
            ) == Qt.Key_Asterisk and modifier == Qt.ControlModifier:
                self.muteKeyPressed.emit()
                return True

        return super(GlobalFilter, self).eventFilter(obj, event)
Exemplo n.º 2
0
    def eventFilter(self, obj, event):
        """
        Handles every event on filtered object and its children
        :param event: custom event
        :param obj: receiver
        :type event: PySide.QtCore.QEvent
        :type obj: PySide.QtCore.QObject
        :return: if the event needs to be filtered (eaten)
        :rtype : bool
        """
        # --- KEY PRESS events ----
        if event.type() is QEvent.KeyPress:
            modifier = QApplication.queryKeyboardModifiers()        # get pressed modifier keys (ctrl, shift, alt, etc)

            # ESCAPE key
            if event.key() == Qt.Key_Escape:
                self.escapePressed.emit()

            # PLAY or SPACE key
            elif event.key() == Qt.Key_MediaPlay or event.key() == Qt.Key_Space:
                self.playKeyPressed.emit()

            # STOP key
            elif event.key() == Qt.Key_MediaStop:
                self.stopKeyPressed.emit()

            # CTRL + PLUS key pressed
            if event.key() == Qt.Key_Plus and modifier == Qt.ControlModifier:
                self.volumeUpKeyPressed.emit()
                return True
                # CTRL + MINUS key pressed
            if event.key() == Qt.Key_Minus and modifier == Qt.ControlModifier:
                self.volumeDownKeyPressed.emit()
                return True
                # CTRL + * key pressed
            if event.key() == Qt.Key_Asterisk and modifier == Qt.ControlModifier:
                self.muteKeyPressed.emit()
                return True

        return super(GlobalFilter, self).eventFilter(obj, event)