From 3e80c04da757b2167b8661d4d327bc96ede85c87 Mon Sep 17 00:00:00 2001 From: 23rd <23rd@vivaldi.net> Date: Thu, 26 Aug 2021 19:01:31 +0300 Subject: [PATCH] Replaced const char ptr with QString in country structs. --- Telegram/SourceFiles/countries/countries_instance.cpp | 8 ++------ Telegram/SourceFiles/countries/countries_instance.h | 8 ++++---- Telegram/SourceFiles/ui/boxes/country_select_box.cpp | 8 ++++---- Telegram/SourceFiles/ui/countryinput.cpp | 4 ++-- 4 files changed, 12 insertions(+), 16 deletions(-) diff --git a/Telegram/SourceFiles/countries/countries_instance.cpp b/Telegram/SourceFiles/countries/countries_instance.cpp index c0f51d5d5..ba21e2f41 100644 --- a/Telegram/SourceFiles/countries/countries_instance.cpp +++ b/Telegram/SourceFiles/countries/countries_instance.cpp @@ -297,18 +297,14 @@ QString CountriesInstance::validPhoneCode(QString fullCode) { QString CountriesInstance::countryNameByISO2(const QString &iso) { const auto &listByISO2 = byISO2(); const auto i = listByISO2.constFind(iso); - return (i != listByISO2.cend()) - ? QString::fromUtf8((*i)->name) - : QString(); + return (i != listByISO2.cend()) ? (*i)->name : QString(); } QString CountriesInstance::countryISO2ByPhone(const QString &phone) { const auto &listByCode = byCode(); const auto code = validPhoneCode(phone); const auto i = listByCode.find(code); - return (i != listByCode.cend()) - ? QString::fromUtf8((*i)->iso2) - : QString(); + return (i != listByCode.cend()) ? (*i)->iso2 : QString(); } CountriesInstance &Instance() { diff --git a/Telegram/SourceFiles/countries/countries_instance.h b/Telegram/SourceFiles/countries/countries_instance.h index 61b39b2e2..6c571165a 100644 --- a/Telegram/SourceFiles/countries/countries_instance.h +++ b/Telegram/SourceFiles/countries/countries_instance.h @@ -11,10 +11,10 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL namespace Countries { struct Info { - const char *name = nullptr; - const char *iso2 = nullptr; - const char *code = nullptr; - const char *alternativeName = nullptr; + QString name; + QString iso2; + QString code; + QString alternativeName; }; class CountriesInstance final { diff --git a/Telegram/SourceFiles/ui/boxes/country_select_box.cpp b/Telegram/SourceFiles/ui/boxes/country_select_box.cpp index eb1b9d4a8..3498fd5e2 100644 --- a/Telegram/SourceFiles/ui/boxes/country_select_box.cpp +++ b/Telegram/SourceFiles/ui/boxes/country_select_box.cpp @@ -195,10 +195,10 @@ CountrySelectBox::Inner::Inner( } auto index = 0; for (const auto info : _list) { - auto full = QString::fromUtf8(info->name) + auto full = info->name + ' ' - + (info->alternativeName - ? QString::fromUtf8(info->alternativeName) + + (!info->alternativeName.isEmpty() + ? info->alternativeName : QString()); const auto namesList = std::move(full).toLower().split( QRegularExpression("[\\s\\-]"), @@ -259,7 +259,7 @@ void CountrySelectBox::Inner::paintEvent(QPaintEvent *e) { auto code = QString("+") + list[i]->code; auto codeWidth = st::countryRowCodeFont->width(code); - auto name = QString::fromUtf8(list[i]->name); + auto name = list[i]->name; auto nameWidth = st::countryRowNameFont->width(name); auto availWidth = width() - st::countryRowPadding.left() - st::countryRowPadding.right() - codeWidth - st::boxScroll.width; if (nameWidth > availWidth) { diff --git a/Telegram/SourceFiles/ui/countryinput.cpp b/Telegram/SourceFiles/ui/countryinput.cpp index 7e3f0d8bc..47e1aaa6c 100644 --- a/Telegram/SourceFiles/ui/countryinput.cpp +++ b/Telegram/SourceFiles/ui/countryinput.cpp @@ -119,7 +119,7 @@ void CountryInput::onChooseCode(const QString &code) { if (i != byCode.cend()) { const auto info = *i; _chosenIso = LastValidISO = info->iso2; - setText(QString::fromUtf8(info->name)); + setText(info->name); } else { setText(tr::lng_bad_country_code(tr::now)); } @@ -139,7 +139,7 @@ bool CountryInput::chooseCountry(const QString &iso) { _chosenIso = QString(); if (info) { _chosenIso = LastValidISO = info->iso2; - setText(QString::fromUtf8(info->name)); + setText(info->name); codeChanged(info->code); update(); return true;