本文整理汇总了C++中KateView::cursorToCoordinate方法的典型用法代码示例。如果您正苦于以下问题:C++ KateView::cursorToCoordinate方法的具体用法?C++ KateView::cursorToCoordinate怎么用?C++ KateView::cursorToCoordinate使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类KateView
的用法示例。
在下文中一共展示了KateView::cursorToCoordinate方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: testFeedbackMouse
// tests:
// - RangeFeedback::mouseEnteredRange
// - RangeFeedback::mouseExitedRange
void MovingRangeTest::testFeedbackMouse()
{
KateDocument doc (false, false, false);
// the range created below will span the 'x' characters
QString text("..xxxx\n"
"xxxx..");
doc.setText(text);
KateView* view = static_cast<KateView*>(doc.createView(0));
view->setCursorPosition(Cursor(1, 6));
view->show();
view->resize(200, 100);
// create range feedback
RangeFeedback rf;
QVERIFY(!rf.mouseEnteredRangeCalled());
QVERIFY(!rf.mouseExitedRangeCalled());
// allow empty
MovingRange* range = doc.newMovingRange(Range(Cursor(0, 2), Cursor(1, 4)),
KTextEditor::MovingRange::ExpandLeft |
KTextEditor::MovingRange::ExpandRight,
KTextEditor::MovingRange::InvalidateIfEmpty);
range->setFeedback(&rf);
rf.verifyReset();
// left (nothing)
QTest::mouseMove(view, view->cursorToCoordinate(Cursor(0, 0)) + QPoint(0, 5));
QTest::qWait(200); // process mouse events. do not move mouse manually
QVERIFY(!rf.mouseEnteredRangeCalled());
QVERIFY(!rf.mouseExitedRangeCalled());
// middle (enter)
rf.reset();
QTest::mouseMove(view, view->cursorToCoordinate(Cursor(0, 3)) + QPoint(0, 5));
QTest::qWait(200); // process mouse events. do not move mouse manually
QVERIFY(rf.mouseEnteredRangeCalled());
QVERIFY(!rf.mouseExitedRangeCalled());
// right (exit)
rf.reset();
QTest::mouseMove(view, view->cursorToCoordinate(Cursor(1, 6)) + QPoint(10, 5));
QTest::qWait(200); // process mouse events. do not move mouse manually
QVERIFY(!rf.mouseEnteredRangeCalled());
QVERIFY(rf.mouseExitedRangeCalled());
}