mirror of
https://github.com/dashpay/dash.git
synced 2024-12-26 04:22:55 +01:00
Merge bitcoin-core/gui#549: refactor: use std::chrono for formatDurationStr() helper
6f2593dc23565abaa3d176595cba6e07883f512e gui, refactor: use std::chrono for formatDurationStr() helper (Jon Atack) Pull request description: Updates `formatDurationStr()` to use the `chrono` standard lib. No change in behavior. ACKs for top commit: RandyMcMillan: tACK 6f2593dc23565abaa3d176595cba6e07883f512e shaavan: ACK 6f2593dc23565abaa3d176595cba6e07883f512e w0xlt: tACK 6f2593d on Ubuntu 21.10 Qt 5.15.2 promag: Code review ACK 6f2593dc23565abaa3d176595cba6e07883f512e. Tree-SHA512: 61e9afdb1db779150df338e6af08727c34f69639add465c2f7003ff775d97dce3e78e78d325bc6dea5bc13f0fce9ef1c3506d13f1661a5e083e52bba8a32ba44
This commit is contained in:
parent
3fa8158510
commit
f5116a7d31
@ -1676,23 +1676,18 @@ QString ConnectionTypeToQString(ConnectionType conn_type)
|
|||||||
|
|
||||||
QString formatDurationStr(std::chrono::seconds dur)
|
QString formatDurationStr(std::chrono::seconds dur)
|
||||||
{
|
{
|
||||||
const auto secs = count_seconds(dur);
|
using days = std::chrono::duration<int, std::ratio<86400>>; // can remove this line after C++20
|
||||||
QStringList strList;
|
const auto d{std::chrono::duration_cast<days>(dur)};
|
||||||
int days = secs / 86400;
|
const auto h{std::chrono::duration_cast<std::chrono::hours>(dur - d)};
|
||||||
int hours = (secs % 86400) / 3600;
|
const auto m{std::chrono::duration_cast<std::chrono::minutes>(dur - d - h)};
|
||||||
int mins = (secs % 3600) / 60;
|
const auto s{std::chrono::duration_cast<std::chrono::seconds>(dur - d - h - m)};
|
||||||
int seconds = secs % 60;
|
QStringList str_list;
|
||||||
|
if (auto d2{d.count()}) str_list.append(QObject::tr("%1 d").arg(d2));
|
||||||
if (days)
|
if (auto h2{h.count()}) str_list.append(QObject::tr("%1 h").arg(h2));
|
||||||
strList.append(QObject::tr("%1 d").arg(days));
|
if (auto m2{m.count()}) str_list.append(QObject::tr("%1 m").arg(m2));
|
||||||
if (hours)
|
const auto s2{s.count()};
|
||||||
strList.append(QObject::tr("%1 h").arg(hours));
|
if (s2 || str_list.empty()) str_list.append(QObject::tr("%1 s").arg(s2));
|
||||||
if (mins)
|
return str_list.join(" ");
|
||||||
strList.append(QObject::tr("%1 m").arg(mins));
|
|
||||||
if (seconds || (!days && !hours && !mins))
|
|
||||||
strList.append(QObject::tr("%1 s").arg(seconds));
|
|
||||||
|
|
||||||
return strList.join(" ");
|
|
||||||
}
|
}
|
||||||
|
|
||||||
QString formatServicesStr(quint64 mask)
|
QString formatServicesStr(quint64 mask)
|
||||||
|
Loading…
Reference in New Issue
Block a user