Add join-line up/down feature to text editor

Merge-request: 1823
Reviewed-by: Thorbjørn Lindeijer <thorbjorn.lindeijer@nokia.com>
Task-number: QTCREATORBUG-510
This commit is contained in:
Falco Hirschenberger
2010-01-20 16:54:06 +01:00
committed by Thorbjørn Lindeijer
parent e2400f5788
commit ec2b738d61
5 changed files with 58 additions and 0 deletions

View File

@@ -877,6 +877,40 @@ void BaseTextEditor::copyLineUpDown(bool up)
setTextCursor(move);
}
void BaseTextEditor::joinLineUp()
{
joinLineUpDown(true);
}
void BaseTextEditor::joinLineDown()
{
joinLineUpDown(false);
}
void BaseTextEditor::joinLineUpDown(bool up)
{
QTextCursor move = textCursor();
move.beginEditBlock();
if(up)
move.movePosition(QTextCursor::Up);
else
move.movePosition(QTextCursor::Down);
move.movePosition(QTextCursor::StartOfBlock);
move.movePosition(QTextCursor::EndOfBlock, QTextCursor::KeepAnchor);
QString cutLine = move.selectedText();
move.movePosition(QTextCursor::Right, QTextCursor::KeepAnchor);
move.removeSelectedText();
move.clearSelection();
if(!up)
move.movePosition(QTextCursor::Up);
move.movePosition(QTextCursor::EndOfBlock);
move.insertText(cutLine);
move.endEditBlock();
setTextCursor(move);
}
void BaseTextEditor::moveLineUp()
{
moveLineUpDown(true);