From a03df018bba37804e795af450ffa16f39428da4d Mon Sep 17 00:00:00 2001 From: Martin Rotter Date: Fri, 26 Nov 2021 07:56:47 +0100 Subject: [PATCH] display more readable strings in custom skin colors --- src/librssguard/gui/settings/settingsgui.cpp | 10 +++++++-- src/librssguard/miscellaneous/skinfactory.cpp | 22 +++++++++++++++++++ src/librssguard/miscellaneous/skinfactory.h | 2 ++ src/librssguard/miscellaneous/textfactory.cpp | 9 ++++++++ src/librssguard/miscellaneous/textfactory.h | 1 + 5 files changed, 42 insertions(+), 2 deletions(-) diff --git a/src/librssguard/gui/settings/settingsgui.cpp b/src/librssguard/gui/settings/settingsgui.cpp index 42a482714..8703f8c74 100644 --- a/src/librssguard/gui/settings/settingsgui.cpp +++ b/src/librssguard/gui/settings/settingsgui.cpp @@ -243,8 +243,14 @@ void SettingsGui::loadSettings() { lay->addWidget(clr_btn); lay->addWidget(rst_btn); - m_ui->m_layoutCustomColors->setWidget(row, QFormLayout::ItemRole::LabelRole, new QLabel(enumer.key(i), this)); - m_ui->m_layoutCustomColors->setLayout(row, QFormLayout::ItemRole::FieldRole, lay); + m_ui->m_layoutCustomColors->setWidget(row, + QFormLayout::ItemRole::LabelRole, + new QLabel( + TextFactory::capitalizeFirstLetter(SkinEnums::palleteColorText(SkinEnums::PaletteColors(enumer.value(i)))), + this)); + m_ui->m_layoutCustomColors->setLayout(row, + QFormLayout::ItemRole::FieldRole, + lay); } diff --git a/src/librssguard/miscellaneous/skinfactory.cpp b/src/librssguard/miscellaneous/skinfactory.cpp index b90f6185d..e63973c3e 100644 --- a/src/librssguard/miscellaneous/skinfactory.cpp +++ b/src/librssguard/miscellaneous/skinfactory.cpp @@ -348,3 +348,25 @@ QVariant Skin::colorForModel(SkinEnums::PaletteColors type, bool ignore_custom_c ? m_colorPalette[type] : QVariant(); } + +QString SkinEnums::palleteColorText(PaletteColors col) { + switch (col) { + case SkinEnums::PaletteColors::FgInteresting: + return QObject::tr("interesting stuff"); + + case SkinEnums::PaletteColors::FgSelectedInteresting: + return QObject::tr("interesting stuff (highlighted)");; + + case SkinEnums::PaletteColors::FgError: + return QObject::tr("errored items"); + + case SkinEnums::PaletteColors::FgSelectedError: + return QObject::tr("errored items (highlighted)"); + + case SkinEnums::PaletteColors::Allright: + return QObject::tr("OK-ish color"); + + default: + return {}; + } +} diff --git a/src/librssguard/miscellaneous/skinfactory.h b/src/librssguard/miscellaneous/skinfactory.h index 0cd5a3e46..4bbdc7419 100644 --- a/src/librssguard/miscellaneous/skinfactory.h +++ b/src/librssguard/miscellaneous/skinfactory.h @@ -32,6 +32,8 @@ class SkinEnums : public QObject { Allright = 16 }; + static QString palleteColorText(PaletteColors col); + Q_ENUM(PaletteColors) }; diff --git a/src/librssguard/miscellaneous/textfactory.cpp b/src/librssguard/miscellaneous/textfactory.cpp index 86ad79785..46c3c614c 100644 --- a/src/librssguard/miscellaneous/textfactory.cpp +++ b/src/librssguard/miscellaneous/textfactory.cpp @@ -151,6 +151,15 @@ QString TextFactory::newline() { #endif } +QString TextFactory::capitalizeFirstLetter(const QString& sts) { + if (sts.isEmpty()) { + return sts; + } + else { + return sts[0].toUpper() + sts.mid(1); + } +} + QString TextFactory::shorten(const QString& input, int text_length_limit) { if (input.size() > text_length_limit) { return input.left(text_length_limit - ELLIPSIS_LENGTH) + QString(ELLIPSIS_LENGTH, QL1C('.')); diff --git a/src/librssguard/miscellaneous/textfactory.h b/src/librssguard/miscellaneous/textfactory.h index 54fc5ae4d..f3571e1f8 100644 --- a/src/librssguard/miscellaneous/textfactory.h +++ b/src/librssguard/miscellaneous/textfactory.h @@ -31,6 +31,7 @@ class TextFactory { static QString encrypt(const QString& text, quint64 key = 0); static QString decrypt(const QString& text, quint64 key = 0); static QString newline(); + static QString capitalizeFirstLetter(const QString& sts); // Shortens input string according to given length limit. static QString shorten(const QString& input, int text_length_limit = TEXT_TITLE_LIMIT);