Esempio n. 1
0
def test_mouse_events(editor):
    editor.mousePressEvent(
        QtGui.QMouseEvent(QtCore.QEvent.MouseButtonPress,
                          QtCore.QPoint(10, 10), QtCore.Qt.RightButton,
                          QtCore.Qt.RightButton, QtCore.Qt.NoModifier))
    editor.mouseReleaseEvent(
        QtGui.QMouseEvent(QtCore.QEvent.MouseButtonRelease,
                          QtCore.QPoint(10, 10), QtCore.Qt.RightButton,
                          QtCore.Qt.RightButton, QtCore.Qt.NoModifier))
    if os.environ['QT_API'].lower() == 'pyqt5':
        editor.wheelEvent(
            QtGui.QWheelEvent(QtCore.QPoint(10, 10),
                              editor.mapToGlobal(QtCore.QPoint(10, 10)),
                              QtCore.QPoint(0, 1), QtCore.QPoint(0, 1), 1,
                              QtCore.Qt.Vertical, QtCore.Qt.MidButton,
                              QtCore.Qt.NoModifier))
    else:
        editor.wheelEvent(
            QtGui.QWheelEvent(QtCore.QPoint(10, 10), 1, QtCore.Qt.MidButton,
                              QtCore.Qt.NoModifier))
    editor.mouseMoveEvent(
        QtGui.QMouseEvent(QtCore.QEvent.MouseMove, QtCore.QPoint(10, 10),
                          QtCore.Qt.RightButton, QtCore.Qt.RightButton,
                          QtCore.Qt.NoModifier))
    editor.verticalScrollBar().setValue(editor.verticalScrollBar().maximum() /
                                        2.0)
def test_word_selection(editor):
    QTest.qWait(1000)
    mode = get_mode(editor)
    TextHelper(editor).goto_line(8, 29)
    QTest.qWait(1000)
    try:
        event = QtGui.QMouseEvent(QtCore.QEvent.MouseButtonDblClick,
                                  QtCore.QPointF(0, 0), QtCore.Qt.LeftButton,
                                  QtCore.Qt.LeftButton, QtCore.Qt.NoModifier)
    except TypeError:
        event = QtGui.QMouseEvent(QtCore.QEvent.MouseButtonDblClick,
                                  QtCore.QPoint(0, 0), QtCore.Qt.LeftButton,
                                  QtCore.Qt.LeftButton, QtCore.Qt.NoModifier)
    mode._on_double_click(event)
    assert editor.textCursor().selectedText() == 'modes'
    QTest.qWait(1000)
Esempio n. 3
0
def test_events(editor):
    mode = get_mode(editor)
    mode._add_decoration(editor.textCursor())
    pt = QtCore.QPoint(10, TextHelper(editor).line_pos_from_number(0))
    if os.environ['QT_API'] == 'pyqt5':
        QTest.mouseMove(editor, pt)
        QTest.mousePress(editor, QtCore.Qt.LeftButton,
                         QtCore.Qt.ControlModifier, pt)
        QTest.mouseMove(editor, pt)
    else:
        editor.mouseMoveEvent(
            QtGui.QMouseEvent(QtCore.QEvent.MouseMove, pt,
                              QtCore.Qt.RightButton, QtCore.Qt.RightButton,
                              QtCore.Qt.ControlModifier))
        # here we have a deco, try to click on it.
        editor.mousePressEvent(
            QtGui.QMouseEvent(QtCore.QEvent.MouseButtonPress, pt,
                              QtCore.Qt.LeftButton, QtCore.Qt.RightButton,
                              QtCore.Qt.NoModifier))
        # move window without control -> remove deco
        editor.mouseMoveEvent(
            QtGui.QMouseEvent(QtCore.QEvent.MouseMove, pt,
                              QtCore.Qt.RightButton, QtCore.Qt.RightButton,
                              QtCore.Qt.NoModifier))