From 484c2fa1a735b400630fdb27710a84eb12d7d057 Mon Sep 17 00:00:00 2001 From: Andreas Suter Date: Sun, 31 Jan 2010 21:13:47 +0000 Subject: [PATCH] single line adding of comment (without any selections) --- src/musredit/PTextEdit.cpp | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/src/musredit/PTextEdit.cpp b/src/musredit/PTextEdit.cpp index 7a3700be..eccf09a3 100644 --- a/src/musredit/PTextEdit.cpp +++ b/src/musredit/PTextEdit.cpp @@ -53,6 +53,8 @@ using namespace std; #include #include #include +#include +#include #include @@ -1259,6 +1261,32 @@ void PTextEdit::editComment() if ( !currentEditor() ) return; + + QTextCursor curs = currentEditor()->textCursor(); + + if (curs.hasComplexSelection()) { + // multiple selections (STILL MISSING) + } else if (curs.hasSelection()) { + // simple selection (STILL MISSING) + } else { // no selection + curs.clearSelection(); + curs.movePosition(QTextCursor::StartOfLine, QTextCursor::MoveAnchor, 1); + QString line = curs.block().text(); + if (line.startsWith("# ")) { + line.remove(0, 2); + curs.select(QTextCursor::BlockUnderCursor); + curs.removeSelectedText(); + if (currentEditor()->textCursor().columnNumber() == 0) + curs.insertText(line); + else + curs.insertText("\n"+line); + curs.movePosition(QTextCursor::StartOfLine, QTextCursor::MoveAnchor, 1); + } else { + curs.insertText("# "); + } + currentEditor()->moveCursor(QTextCursor::StartOfLine, QTextCursor::MoveAnchor); + } + // NEEDS TO BE REWORKED. Qt4.6 far too different compared to Qt3.x /* QString str;