git-svn-id: svn://db.shs.com.ru/libs@445 a8b55f48-bf90-11e4-a774-851b48703e85
This commit is contained in:
@@ -70,24 +70,30 @@ QCodeEdit::QCodeEdit(QWidget * parent): QWidget(parent) {
|
||||
ui->textLines->viewport()->setCursor(Qt::ArrowCursor);
|
||||
ui->textLines->setFixedWidth(ui->textLines->fontMetrics().width(" "));
|
||||
|
||||
QAction * a = new QAction(this);
|
||||
QAction * a = new QAction(this); ui->textCode->addAction(a);
|
||||
a->setShortcut(QKeySequence("Shift+Tab"));
|
||||
a->setShortcutContext(Qt::WidgetShortcut);
|
||||
connect(a, SIGNAL(triggered()), this, SLOT(deindent()));
|
||||
ui->textCode->addAction(a);
|
||||
a = new QAction(this);
|
||||
a = new QAction(this); ui->textCode->addAction(a);
|
||||
a->setShortcut(QKeySequence("Ctrl+D"));
|
||||
a->setShortcutContext(Qt::WidgetShortcut);
|
||||
connect(a, SIGNAL(triggered()), this, SLOT(deleteLine()));
|
||||
a = new QAction(this);
|
||||
a = new QAction(this); ui->textCode->addAction(a);
|
||||
a->setShortcut(QKeySequence("Ctrl+Return"));
|
||||
a->setShortcutContext(Qt::WidgetShortcut);
|
||||
connect(a, SIGNAL(triggered()), this, SLOT(newLine()));
|
||||
a = new QAction(this);
|
||||
a = new QAction(this); ui->textCode->addAction(a);
|
||||
a->setShortcut(QKeySequence("Ctrl+Up"));
|
||||
a->setShortcutContext(Qt::WidgetShortcut);
|
||||
connect(a, SIGNAL(triggered()), this, SLOT(scrollUp()));
|
||||
a = new QAction(this); ui->textCode->addAction(a);
|
||||
a->setShortcut(QKeySequence("Ctrl+Down"));
|
||||
a->setShortcutContext(Qt::WidgetShortcut);
|
||||
connect(a, SIGNAL(triggered()), this, SLOT(scrollDown()));
|
||||
a = new QAction(this); ui->textCode->addAction(a);
|
||||
a->setShortcut(QKeySequence("Ctrl+Shift+Return"));
|
||||
a->setShortcutContext(Qt::WidgetShortcut);
|
||||
connect(a, SIGNAL(triggered()), this, SLOT(newLineBefore()));
|
||||
ui->textCode->addAction(a);
|
||||
ui->frame->setFocusProxy(ui->textCode);
|
||||
QTextOption to = ui->textLines->document()->defaultTextOption();
|
||||
to.setAlignment(Qt::AlignTop | Qt::AlignRight);
|
||||
@@ -675,6 +681,16 @@ void QCodeEdit::syncScrolls() {
|
||||
}
|
||||
|
||||
|
||||
void QCodeEdit::scrollUp() {
|
||||
ui->textCode->verticalScrollBar()->setValue(ui->textCode->verticalScrollBar()->value() - 1);
|
||||
}
|
||||
|
||||
|
||||
void QCodeEdit::scrollDown() {
|
||||
ui->textCode->verticalScrollBar()->setValue(ui->textCode->verticalScrollBar()->value() + 1);
|
||||
}
|
||||
|
||||
|
||||
void QCodeEdit::deleteLine() {
|
||||
QTextCursor tc = ui->textCode->textCursor();
|
||||
tc.movePosition(QTextCursor::EndOfLine);
|
||||
@@ -925,12 +941,21 @@ void QCodeEdit::scrollToTop() {
|
||||
|
||||
|
||||
void QCodeEdit::newLine() {
|
||||
/// TODO
|
||||
QTextCursor tc = ui->textCode->textCursor();
|
||||
tc.movePosition(QTextCursor::EndOfLine);
|
||||
tc.insertText("\n");
|
||||
ui->textCode->setTextCursor(tc);
|
||||
QMetaObject::invokeMethod(this, "autoIndent", Qt::QueuedConnection);
|
||||
}
|
||||
|
||||
|
||||
void QCodeEdit::newLineBefore() {
|
||||
/// TODO
|
||||
QTextCursor tc = ui->textCode->textCursor();
|
||||
tc.movePosition(QTextCursor::StartOfLine);
|
||||
tc.insertText("\n");
|
||||
tc.movePosition(QTextCursor::Up);
|
||||
ui->textCode->setTextCursor(tc);
|
||||
QMetaObject::invokeMethod(this, "autoIndent", Qt::QueuedConnection);
|
||||
}
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user