Esempio n. 1
0
 def pickPath(self):
     initialPath = self.uiFilenameTXT.text() or self.defaultLocation
     initialPath = str(initialPath)
     while not os.path.exists(initialPath):
         if os.path.dirname(initialPath) == initialPath:
             break
         else:
             initialPath = os.path.dirname(initialPath)
     if QApplication.keyboardModifiers() == Qt.ControlModifier:
         import blurdev
         blurdev.osystem.explore(initialPath)
     else:
         if self._pickFolder:
             filepath = QFileDialog.getExistingDirectory(
                 self, self._caption, initialPath)
         elif self._openFile:
             filepath, _ = QtCompat.QFileDialog.getOpenFileName(
                 self, self._caption, initialPath, self._filters)
         else:
             filepath, _ = QtCompat.QFileDialog.getSaveFileName(
                 self, self._caption, initialPath, self._filters)
         if filepath:
             self.uiFilenameTXT.setText(filepath)
             if (not self.signalsBlocked()):
                 self.filenamePicked.emit(filepath)
Esempio n. 2
0
 def mousePressEvent(self, event):
     modifiers = QApplication.keyboardModifiers()
     if modifiers == Qt.AltModifier:
         pos = self.mapToGlobal((self.rect().topLeft()))
         QWhatsThis.showText(pos, self.whatsThis())
     else:
         super(BaseWidget, self).mousePressEvent(event)
Esempio n. 3
0
def is_shift_modifier():
    """
    Returns True if the Shift key is down
    :return: bool
    """

    modifiers = QApplication.keyboardModifiers()
    return modifiers == Qt.ShiftModifier
Esempio n. 4
0
def is_control_modifier():
    """
    Returns True if the Control key is down
    :return: bool
    """

    modifiers = QApplication.keyboardModifiers()
    return modifiers == Qt.ControlModifier
Esempio n. 5
0
def is_alt_modifier():
    """
    Return True if the Alt key is down
    :return: bool
    """

    modifiers = QApplication.keyboardModifiers()
    return modifiers == Qt.AltModifier
 def keyPressEvent(self, event):
     modifiers = QApplication.keyboardModifiers()
     if type(event) == QKeyEvent:
         if modifiers != Qt.ControlModifier:
             return
         if event.key() == Qt.Key_Z:
             self._undo_action.trigger()
         elif event.key() == Qt.Key_Y:
             self._redo_action.trigger()
Esempio n. 7
0
    def is_control_modifier(self):
        """
        Returns whether control modifier is active or not
        :return: bool
        """

        modifiers = QApplication.keyboardModifiers()
        is_alt_modifier = modifiers == Qt.AltModifier
        is_ctrl_modifier = modifiers == Qt.ControlModifier
        return is_alt_modifier or is_ctrl_modifier
Esempio n. 8
0
    def mousePressEvent(self, event):
        """
        Overrides base QDialog mousePressEvent
        :param event:
        :return:
        """

        if not QApplication.keyboardModifiers() == self.OVERLAY_ACTIVE_KEY:
            event.ignore()
            return

        self.widgetMousePress.emit(event)
        self._PRESSED = True
        self.update()
Esempio n. 9
0
    def eventFilter(self, obj, event):
        eventType = event.type()
        keyMod = QApplication.keyboardModifiers()

        # KEY PRESSED
        if eventType == QEvent.KeyPress:
            key = event.key()

            if key == Qt.Key_Escape:
                self.parent.finish(completed=False)

            elif key == Qt.Key_Return or key == Qt.Key_Enter:
                self.parent.finish(completed=True)

        return super(KeyFilter, self).eventFilter(obj, event)
Esempio n. 10
0
    def _selection_modifiers(self):
        """
        Internal function that returns a dictionary with the current key modifiers
        :return: dict
        """

        result = {'add': False, 'deselect': False}
        modifiers = QApplication.keyboardModifiers()

        if modifiers == Qt.ShiftModifier:
            result['deselect'] = True
        elif modifiers == Qt.ControlModifier:
            result['add'] = True

        return result
Esempio n. 11
0
    def mousePressEvent(self, event):

        modifiers = QApplication.keyboardModifiers()
        if modifiers == Qt.AltModifier:
            pos = self.mapToGlobal((self.rect().topLeft()))
            QWhatsThis.showText(pos, self.whatsThis())
            return

        super(TreeWidget, self).mousePressEvent(event)

        item = self.itemAt(event.pos())
        if not item:
            self._clear_selection()
        else:
            self._current_item = item
Esempio n. 12
0
    def wheelEvent(self, event):
        """
        Overrides base wheelEvent function
        Triggered on any wheel events for the current widget
        :param event: QWheelEvent
        """

        modifier = QApplication.keyboardModifiers()
        valid_modifiers = (Qt.AltModifier, Qt.ControlModifier)
        if modifier in valid_modifiers:
            num_degrees = event.delta() / 8
            num_steps = num_degrees / 15
            delta = (num_steps * self.wheel_scroll_step())
            value = self.zoom_amount() + delta
            self.set_zoom_amount(value)
Esempio n. 13
0
    def eventFilter(self, obj, event):
        eventType = event.type()
        keyMod = QApplication.keyboardModifiers()

        # CANCEL FOR NAVIGATION
        if keyMod == Qt.AltModifier:
            pass

        # MOUSE CLICK
        elif eventType == QEvent.MouseButtonRelease:
            if event.button() == Qt.LeftButton:
                position = gui.viewToWorld(event.pos().x(), event.pos().y())
                self.parent.appendPosition(position)
            elif event.button() == Qt.RightButton:
                self.parent.finish(completed=True)

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