Save Console Wrap in QSettings (#1550)

This commit is contained in:
Florian Märkl 2019-05-17 19:48:59 +02:00 committed by GitHub
parent 2352477805
commit 051eb3aaf3
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 12 additions and 3 deletions

View File

@ -5,6 +5,7 @@
#include <QShortcut>
#include <QStringListModel>
#include <QTimer>
#include <QSettings>
#include <iostream>
#include "core/Cutter.h"
#include "ConsoleWidget.h"
@ -15,6 +16,7 @@
static const int invalidHistoryPos = -1;
static const char *consoleWrapSettingsKey = "console.wrap";
ConsoleWidget::ConsoleWidget(MainWindow *main, QAction *action) :
CutterDockWidget(main, action),
@ -40,8 +42,9 @@ ConsoleWidget::ConsoleWidget(MainWindow *main, QAction *action) :
actionWrapLines = new QAction(tr("Wrap Lines"), ui->outputTextEdit);
actionWrapLines->setCheckable(true);
setWrap(QSettings().value(consoleWrapSettingsKey, true).toBool());
connect(actionWrapLines, &QAction::triggered, this, [this] (bool checked) {
ui->outputTextEdit->setLineWrapMode(checked ? QPlainTextEdit::WidgetWidth: QPlainTextEdit::NoWrap);
setWrap(checked);
});
actions.append(actionWrapLines);
@ -55,8 +58,6 @@ ConsoleWidget::ConsoleWidget(MainWindow *main, QAction *action) :
connect(ui->inputLineEdit, &QLineEdit::textChanged, this, &ConsoleWidget::updateCompletion);
updateCompletion();
ui->outputTextEdit->setLineWrapMode(QPlainTextEdit::WidgetWidth);
// Set console output context menu
ui->outputTextEdit->setContextMenuPolicy(Qt::CustomContextMenu);
connect(ui->outputTextEdit, SIGNAL(customContextMenuRequested(const QPoint &)),
@ -160,6 +161,13 @@ void ConsoleWidget::executeCommand(const QString &command)
Core()->getAsyncTaskManager()->start(commandTask);
}
void ConsoleWidget::setWrap(bool wrap)
{
QSettings().setValue(consoleWrapSettingsKey, wrap);
actionWrapLines->setChecked(wrap);
ui->outputTextEdit->setLineWrapMode(wrap ? QPlainTextEdit::WidgetWidth: QPlainTextEdit::NoWrap);
}
void ConsoleWidget::on_inputLineEdit_returnPressed()
{
QString input = ui->inputLineEdit->text();

View File

@ -62,6 +62,7 @@ private:
void invalidateHistoryPosition();
void removeLastLine();
void executeCommand(const QString &command);
void setWrap(bool wrap);
QSharedPointer<CommandTask> commandTask;