本文整理汇总了C++中KateView::cursorLeft方法的典型用法代码示例。如果您正苦于以下问题:C++ KateView::cursorLeft方法的具体用法?C++ KateView::cursorLeft怎么用?C++ KateView::cursorLeft使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类KateView
的用法示例。
在下文中一共展示了KateView::cursorLeft方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: tryCrash
void BugTest::tryCrash()
{
KateDocument doc(false, false, false);
QString url = KDESRCDIR + QString("data/folding-crash.py");
doc.openUrl(url);
doc.discardDataRecovery();
doc.setHighlightingMode("Python");
doc.buffer().ensureHighlighted (doc.lines());
// view must be visible...
KateView* view = static_cast<KateView*>(doc.createView(0));
view->show();
view->resize(400, 300);
// fold all
doc.foldingTree()->collapseToplevelNodes();
QTest::qWait(1000);
view->down();
view->down();
view->down();
view->cursorLeft();
QTest::qWait(1000);
qDebug() << "!!! The next line usually crashes in the code folding code";
view->backspace();
doc.buffer().ensureHighlighted (doc.lines());
QTest::qWait(1000);
}
示例2: testFeedbackCaret
// tests:
// - RangeFeedback::caretEnteredRange
// - RangeFeedback::caretExitedRange
void MovingRangeTest::testFeedbackCaret()
{
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));
// create range feedback
RangeFeedback rf;
// first test: with ExpandLeft | ExpandRight
{
view->setCursorPosition(Cursor(1, 6));
MovingRange* range = doc.newMovingRange(Range(Cursor(0, 2), Cursor(1, 4)),
KTextEditor::MovingRange::ExpandLeft |
KTextEditor::MovingRange::ExpandRight,
KTextEditor::MovingRange::InvalidateIfEmpty);
rf.reset();
range->setFeedback(&rf);
rf.verifyReset();
// left
view->cursorLeft();
QCOMPARE(view->cursorPosition(), Cursor(1, 5));
QVERIFY(!rf.caretEnteredRangeCalled());
QVERIFY(!rf.caretExitedRangeCalled());
view->cursorLeft();
QCOMPARE(view->cursorPosition(), Cursor(1, 4));
QVERIFY(rf.caretEnteredRangeCalled()); // ExpandRight: include cursor already now
QVERIFY(!rf.caretExitedRangeCalled());
rf.reset();
view->cursorLeft();
QCOMPARE(view->cursorPosition(), Cursor(1, 3));
QVERIFY(!rf.caretEnteredRangeCalled());
QVERIFY(!rf.caretExitedRangeCalled());
rf.reset();
view->up();
QCOMPARE(view->cursorPosition(), Cursor(0, 3));
QVERIFY(!rf.caretEnteredRangeCalled());
QVERIFY(!rf.caretExitedRangeCalled());
rf.reset();
view->cursorLeft();
QCOMPARE(view->cursorPosition(), Cursor(0, 2));
QVERIFY(!rf.caretEnteredRangeCalled());
QVERIFY(!rf.caretExitedRangeCalled());
rf.reset();
view->cursorLeft();
QCOMPARE(view->cursorPosition(), Cursor(0, 1)); // ExpandLeft: now we left it, not before
QVERIFY(!rf.caretEnteredRangeCalled());
QVERIFY(rf.caretExitedRangeCalled());
delete range;
}
// second test: with DoNotExpand
{
view->setCursorPosition(Cursor(1, 6));
MovingRange* range = doc.newMovingRange(Range(Cursor(0, 2), Cursor(1, 4)),
KTextEditor::MovingRange::DoNotExpand,
KTextEditor::MovingRange::InvalidateIfEmpty);
rf.reset();
range->setFeedback(&rf);
rf.verifyReset();
// left
view->cursorLeft();
QCOMPARE(view->cursorPosition(), Cursor(1, 5));
QVERIFY(!rf.caretEnteredRangeCalled());
QVERIFY(!rf.caretExitedRangeCalled());
view->cursorLeft();
QCOMPARE(view->cursorPosition(), Cursor(1, 4));
QVERIFY(!rf.caretEnteredRangeCalled()); // DoNotExpand: does not include cursor
QVERIFY(!rf.caretExitedRangeCalled());
rf.reset();
view->cursorLeft();
QCOMPARE(view->cursorPosition(), Cursor(1, 3));
QVERIFY(rf.caretEnteredRangeCalled());
QVERIFY(!rf.caretExitedRangeCalled());
rf.reset();
view->up();
QCOMPARE(view->cursorPosition(), Cursor(0, 3));
QVERIFY(!rf.caretEnteredRangeCalled());
QVERIFY(!rf.caretExitedRangeCalled());
//.........这里部分代码省略.........