emacs bindings: added M-u/l/c (upper/lower/capitalize word)
authorRĂ¼diger Sonderfeld <ruediger@c-plusplus.de>
Tue, 9 Mar 2010 19:57:26 +0000 (20:57 +0100)
committerManuel Nickschas <sputnick@quassel-irc.org>
Sat, 1 May 2010 16:36:46 +0000 (18:36 +0200)
src/uisupport/multilineedit.cpp

index ab1834f..114c613 100644 (file)
@@ -377,6 +377,23 @@ void MultiLineEdit::keyPressEvent(QKeyEvent *event) {
         moveCursor(QTextCursor::WordRight, QTextCursor::KeepAnchor);
         cut();
         return;
+
+      case Qt::Key_U: // uppercase word
+        moveCursor(QTextCursor::WordRight, QTextCursor::KeepAnchor);
+        textCursor().insertText(textCursor().selectedText().toUpper());
+        return;
+
+      case Qt::Key_L: // lowercase word
+        moveCursor(QTextCursor::WordRight, QTextCursor::KeepAnchor);
+        textCursor().insertText(textCursor().selectedText().toLower());
+        return;
+
+      case Qt::Key_C: { // capitalize word
+        moveCursor(QTextCursor::WordRight, QTextCursor::KeepAnchor);
+        QString const text = textCursor().selectedText();
+        textCursor().insertText(text.left(1).toUpper() + text.mid(1).toLower());
+        return;
+      }
       }
     }
   }