Qt: Use localized date/time formatting in a few more places

This commit is contained in:
Davide Pesavento 2025-07-26 20:24:24 -04:00 committed by Connor McLaughlin
parent 0de3ffab0c
commit 71591e8219
5 changed files with 13 additions and 8 deletions

View File

@ -107,7 +107,7 @@ struct Entry
std::string_view publisher; std::string_view publisher;
std::string_view compatibility_version_tested; std::string_view compatibility_version_tested;
std::string_view compatibility_comments; std::string_view compatibility_comments;
u64 release_date; u64 release_date; ///< Number of seconds since Epoch.
u8 min_players; u8 min_players;
u8 max_players; u8 max_players;
u8 min_blocks; u8 min_blocks;

View File

@ -199,10 +199,11 @@ void AchievementSettingsWidget::updateLoginState()
{ {
const u64 login_unix_timestamp = const u64 login_unix_timestamp =
StringUtil::FromChars<u64>(Host::GetBaseStringSettingValue("Cheevos", "LoginTimestamp", "0")).value_or(0); StringUtil::FromChars<u64>(Host::GetBaseStringSettingValue("Cheevos", "LoginTimestamp", "0")).value_or(0);
const QDateTime login_timestamp(QDateTime::fromSecsSinceEpoch(static_cast<qint64>(login_unix_timestamp))); const QString login_timestamp = QtHost::FormatNumber(Host::NumberFormatType::ShortDateTime,
static_cast<s64>(login_unix_timestamp));
m_ui.loginStatus->setText(tr("Username: %1\nLogin token generated on %2.") m_ui.loginStatus->setText(tr("Username: %1\nLogin token generated on %2.")
.arg(QString::fromStdString(username)) .arg(QString::fromStdString(username))
.arg(login_timestamp.toString(Qt::TextDate))); .arg(login_timestamp));
m_ui.loginButton->setText(tr("Logout")); m_ui.loginButton->setText(tr("Logout"));
} }
else else

View File

@ -161,8 +161,11 @@ void GameSummaryWidget::populateUi(const std::string& path, const std::string& s
QString release_info; QString release_info;
if (entry->release_date != 0) if (entry->release_date != 0)
release_info = {
tr("Released %1").arg(QDateTime::fromSecsSinceEpoch(entry->release_date, QTimeZone::utc()).date().toString()); const QString date = QDateTime::fromSecsSinceEpoch(static_cast<qint64>(entry->release_date), QTimeZone::utc())
.toString(QtHost::GetApplicationLocale().dateFormat());
release_info = tr("Released %1").arg(date);
}
if (entry->min_players != 0) if (entry->min_players != 0)
{ {
if (!release_info.isEmpty()) if (!release_info.isEmpty())

View File

@ -2217,7 +2217,7 @@ QString QtHost::FormatNumber(Host::NumberFormatType type, s64 value)
} }
break; break;
DefaultCaseIsUnreachable(); DefaultCaseIsUnreachable();
} }
ret = QDateTime::fromSecsSinceEpoch(value, QTimeZone::utc()).toLocalTime().toString(format); ret = QDateTime::fromSecsSinceEpoch(value, QTimeZone::utc()).toLocalTime().toString(format);

View File

@ -672,10 +672,11 @@ void SetupWizardDialog::updateAchievementsLoginState()
{ {
const u64 login_unix_timestamp = const u64 login_unix_timestamp =
StringUtil::FromChars<u64>(Host::GetBaseStringSettingValue("Cheevos", "LoginTimestamp", "0")).value_or(0); StringUtil::FromChars<u64>(Host::GetBaseStringSettingValue("Cheevos", "LoginTimestamp", "0")).value_or(0);
const QDateTime login_timestamp(QDateTime::fromSecsSinceEpoch(static_cast<qint64>(login_unix_timestamp))); const QString login_timestamp = QtHost::FormatNumber(Host::NumberFormatType::ShortDateTime,
static_cast<s64>(login_unix_timestamp));
m_ui.loginStatus->setText(tr("Username: %1\nLogin token generated on %2.") m_ui.loginStatus->setText(tr("Username: %1\nLogin token generated on %2.")
.arg(QString::fromStdString(username)) .arg(QString::fromStdString(username))
.arg(login_timestamp.toString(Qt::TextDate))); .arg(login_timestamp));
m_ui.loginButton->setText(tr("Logout")); m_ui.loginButton->setText(tr("Logout"));
} }
else else