From 27236f6ef005674dd5799e277dd7843be3b39aac Mon Sep 17 00:00:00 2001 From: Mike Skec Date: Sun, 7 Mar 2021 18:32:35 +1100 Subject: Add preference for ANSI escape codes --- src/dialogs/settingsdialog.cpp | 20 ++++++++++++++++++++ src/dialogs/settingsdialog.hpp | 2 ++ src/dialogs/settingsdialog.ui | 41 ++++++++++++++++++++++++++++------------- 3 files changed, 50 insertions(+), 13 deletions(-) (limited to 'src/dialogs') diff --git a/src/dialogs/settingsdialog.cpp b/src/dialogs/settingsdialog.cpp index 862963b..941b1d0 100644 --- a/src/dialogs/settingsdialog.cpp +++ b/src/dialogs/settingsdialog.cpp @@ -44,6 +44,11 @@ SettingsDialog::SettingsDialog(QWidget *parent) : this->ui->ui_density->addItem(tr("Compact"), QVariant::fromValue(int(UIDensity::compact))); this->ui->ui_density->addItem(tr("Classic"), QVariant::fromValue(int(UIDensity::classic))); + this->ui->ansi_escapes->clear(); + this->ui->ansi_escapes->addItem(tr("Ignore"), QVariant::fromValue(int(AnsiEscRenderMode::ignore))); + this->ui->ansi_escapes->addItem(tr("Render"), QVariant::fromValue(int(AnsiEscRenderMode::render))); + this->ui->ansi_escapes->addItem(tr("Strip"), QVariant::fromValue(int(AnsiEscRenderMode::strip))); + this->ui->list_symbol->clear(); this->ui->list_symbol->addItem(tr("Filled circle"), QVariant::fromValue(int(QTextListFormat::Style::ListDisc))); this->ui->list_symbol->addItem(tr("Circle"), QVariant::fromValue(int(QTextListFormat::Style::ListCircle))); @@ -256,6 +261,16 @@ void SettingsDialog::setOptions(const GenericSettings &options) } } + this->ui->ansi_escapes->setCurrentIndex(0); + for(int i = 0; i < this->ui->ansi_escapes->count(); ++i) + { + if(this->ui->ansi_escapes->itemData(i).toInt() == int(options.ansi_escapes)) { + this->ui->ansi_escapes->setCurrentIndex(i); + break; + } + } + + this->ui->start_page->setText(this->current_options.start_page); this->ui->search_engine->clear(); @@ -867,6 +882,11 @@ void SettingsDialog::on_emojis_off_clicked() this->current_options.emojis_enabled = false; } +void SettingsDialog::on_ansi_escapes_currentIndexChanged(int index) +{ + this->current_options.ansi_escapes = AnsiEscRenderMode(this->ui->ansi_escapes->itemData(index).toInt()); +} + void SettingsDialog::on_fancyquotes_on_clicked() { this->current_options.fancy_quotes = true; diff --git a/src/dialogs/settingsdialog.hpp b/src/dialogs/settingsdialog.hpp index c1ba1c3..e564157 100644 --- a/src/dialogs/settingsdialog.hpp +++ b/src/dialogs/settingsdialog.hpp @@ -154,6 +154,8 @@ private slots: void on_emojis_on_clicked(); void on_emojis_off_clicked(); + void on_ansi_escapes_currentIndexChanged(int index); + void on_redirection_mode_currentIndexChanged(int index); void on_max_redirects_valueChanged(int arg1); diff --git a/src/dialogs/settingsdialog.ui b/src/dialogs/settingsdialog.ui index 3f30c11..f442603 100644 --- a/src/dialogs/settingsdialog.ui +++ b/src/dialogs/settingsdialog.ui @@ -406,38 +406,53 @@ + + + + ANSI Escape Sequences + + + Determine how to render ANSI escape sequences + + + + + + + + Max. Number of Redirections - + 5 - + Redirection Handling - + - + Network Timeout - + ms @@ -450,14 +465,14 @@ - + Additional toolbar buttons - + @@ -489,7 +504,7 @@ - + Total cache size limit @@ -499,7 +514,7 @@ - + KiB @@ -513,7 +528,7 @@ - + Cached item size threshold @@ -523,7 +538,7 @@ - + KiB @@ -537,7 +552,7 @@ - + Cached item life @@ -547,7 +562,7 @@ - + -- cgit v1.2.3