Commit 8ae43173 authored by Kostas Karanikolas's avatar Kostas Karanikolas Committed by Leandro Melo

Added "Copy Line" keyboard command and associated action

Merge-request: 223
Reviewed-by: Leandro Melo
parent 42034538
......@@ -5031,6 +5031,15 @@ void BaseTextEditorWidget::cutLine()
cut();
}
// control+shift+insert
void BaseTextEditorWidget::copyLine()
{
QTextCursor prevCursor = textCursor();
maybeSelectLine();
copy();
setTextCursor(prevCursor);
}
void BaseTextEditorWidget::deleteLine()
{
maybeSelectLine();
......
......@@ -247,6 +247,7 @@ public slots:
void zoomReset();
void cutLine();
void copyLine();
void deleteLine();
void unfoldAll();
void fold();
......
......@@ -77,6 +77,7 @@ TextEditorActionHandler::TextEditorActionHandler(const char *context,
m_foldAction(0),
m_unfoldAction(0),
m_cutLineAction(0),
m_copyLineAction(0),
m_deleteLineAction(0),
m_selectEncodingAction(0),
m_increaseFontSizeAction(0),
......@@ -201,6 +202,11 @@ void TextEditorActionHandler::createActions()
command->setDefaultKeySequence(QKeySequence(tr("Shift+Del")));
connect(m_cutLineAction, SIGNAL(triggered()), this, SLOT(cutLine()));
m_copyLineAction = new QAction(tr("Copy &Line"), this);
command = am->registerAction(m_copyLineAction, Constants::COPY_LINE, m_contextId);
command->setDefaultKeySequence(QKeySequence(tr("Ctrl+Shift+Ins")));
connect(m_copyLineAction, SIGNAL(triggered()), this, SLOT(copyLine()));
m_deleteLineAction = new QAction(tr("Delete &Line"), this);
command = am->registerAction(m_deleteLineAction, Constants::DELETE_LINE, m_contextId, true);
connect(m_deleteLineAction, SIGNAL(triggered()), this, SLOT(deleteLine()));
......@@ -527,6 +533,7 @@ FUNCTION2(selectAllAction, selectAll)
FUNCTION(cleanWhitespace)
FUNCTION(unCommentSelection)
FUNCTION(cutLine)
FUNCTION(copyLine)
FUNCTION(deleteLine)
FUNCTION(unfoldAll)
FUNCTION(fold)
......
......@@ -102,6 +102,7 @@ private slots:
void fold();
void unfold();
void cutLine();
void copyLine();
void deleteLine();
void selectEncoding();
void increaseFontSize();
......@@ -165,6 +166,7 @@ private:
QAction *m_foldAction;
QAction *m_unfoldAction;
QAction *m_cutLineAction;
QAction *m_copyLineAction;
QAction *m_deleteLineAction;
QAction *m_selectEncodingAction;
QAction *m_increaseFontSizeAction;
......
......@@ -70,6 +70,7 @@ const char * const INSERT_LINE_BELOW = "TextEditor.InsertLineBelowCurrentLin
const char * const UPPERCASE_SELECTION = "TextEditor.UppercaseSelection";
const char * const LOWERCASE_SELECTION = "TextEditor.LowercaseSelection";
const char * const CUT_LINE = "TextEditor.CutLine";
const char * const COPY_LINE = "TextEditor.CopyLine";
const char * const DELETE_LINE = "TextEditor.DeleteLine";
const char * const DELETE_WORD = "TextEditor.DeleteWord";
const char * const SELECT_ENCODING = "TextEditor.SelectEncoding";
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment