From 7167f76170ac8546b2b038477b129d45c968fe2b Mon Sep 17 00:00:00 2001 From: Alexander Babikov Date: Wed, 13 Aug 2025 23:35:31 +0500 Subject: [PATCH] Manager: Refactor the machine process stats system and the statusbar text generation --- src/qt/languages/86box.pot | 15 ++++++++++++--- src/qt/languages/ca-ES.po | 15 ++++++++++++--- src/qt/languages/cs-CZ.po | 15 ++++++++++++--- src/qt/languages/de-DE.po | 15 ++++++++++++--- src/qt/languages/es-ES.po | 15 ++++++++++++--- src/qt/languages/fi-FI.po | 15 ++++++++++++--- src/qt/languages/fr-FR.po | 15 ++++++++++++--- src/qt/languages/hr-HR.po | 15 ++++++++++++--- src/qt/languages/hu-HU.po | 15 ++++++++++++--- src/qt/languages/it-IT.po | 21 ++++++++++++++------ src/qt/languages/ja-JP.po | 15 ++++++++++++--- src/qt/languages/ko-KR.po | 15 ++++++++++++--- src/qt/languages/nl-NL.po | 21 ++++++++++++++------ src/qt/languages/pl-PL.po | 15 ++++++++++++--- src/qt/languages/pt-BR.po | 19 +++++++++++++----- src/qt/languages/pt-PT.po | 15 ++++++++++++--- src/qt/languages/ru-RU.po | 29 ++++++++++++++++++---------- src/qt/languages/sk-SK.po | 15 ++++++++++++--- src/qt/languages/sl-SI.po | 15 ++++++++++++--- src/qt/languages/sv-SE.po | 15 ++++++++++++--- src/qt/languages/tr-TR.po | 15 ++++++++++++--- src/qt/languages/uk-UA.po | 15 ++++++++++++--- src/qt/languages/vi-VN.po | 15 ++++++++++++--- src/qt/languages/zh-CN.po | 21 ++++++++++++++------ src/qt/languages/zh-TW.po | 15 ++++++++++++--- src/qt/qt_vmmanager_details.cpp | 2 +- src/qt/qt_vmmanager_main.cpp | 34 ++++++++++++++++++++++++--------- src/qt/qt_vmmanager_main.hpp | 2 +- src/qt/qt_vmmanager_model.cpp | 9 +++------ src/qt/qt_vmmanager_model.hpp | 2 +- src/qt/qt_vmmanager_system.cpp | 2 +- 31 files changed, 350 insertions(+), 112 deletions(-) diff --git a/src/qt/languages/86box.pot b/src/qt/languages/86box.pot index 96bbf479c..c383fb4e0 100644 --- a/src/qt/languages/86box.pot +++ b/src/qt/languages/86box.pot @@ -1086,16 +1086,25 @@ msgstr "" msgid "Paused" msgstr "" -msgid "Paused (Waiting)" +msgid "Waiting" msgstr "" msgid "Powered Off" msgstr "" -msgid "waiting" +msgid "%n running" msgstr "" -msgid "total" +msgid "%n paused" +msgstr "" + +msgid "%n waiting" +msgstr "" + +msgid "%1 total" +msgstr "" + +msgid "VMs: %1" msgstr "" msgid "System Directory:" diff --git a/src/qt/languages/ca-ES.po b/src/qt/languages/ca-ES.po index 566746d31..5e1e2c61a 100644 --- a/src/qt/languages/ca-ES.po +++ b/src/qt/languages/ca-ES.po @@ -1086,16 +1086,25 @@ msgstr "" msgid "Paused" msgstr "" -msgid "Paused (Waiting)" +msgid "Waiting" msgstr "" msgid "Powered Off" msgstr "" -msgid "waiting" +msgid "%n running" msgstr "" -msgid "total" +msgid "%n paused" +msgstr "" + +msgid "%n waiting" +msgstr "" + +msgid "%1 total" +msgstr "" + +msgid "VMs: %1" msgstr "" msgid "System Directory:" diff --git a/src/qt/languages/cs-CZ.po b/src/qt/languages/cs-CZ.po index fe2eb0ea3..9aca2bd7a 100644 --- a/src/qt/languages/cs-CZ.po +++ b/src/qt/languages/cs-CZ.po @@ -1086,16 +1086,25 @@ msgstr "" msgid "Paused" msgstr "" -msgid "Paused (Waiting)" +msgid "Waiting" msgstr "" msgid "Powered Off" msgstr "" -msgid "waiting" +msgid "%n running" msgstr "" -msgid "total" +msgid "%n paused" +msgstr "" + +msgid "%n waiting" +msgstr "" + +msgid "%1 total" +msgstr "" + +msgid "VMs: %1" msgstr "" msgid "System Directory:" diff --git a/src/qt/languages/de-DE.po b/src/qt/languages/de-DE.po index 09d4ad391..458a0d5e4 100644 --- a/src/qt/languages/de-DE.po +++ b/src/qt/languages/de-DE.po @@ -1086,16 +1086,25 @@ msgstr "" msgid "Paused" msgstr "" -msgid "Paused (Waiting)" +msgid "Waiting" msgstr "" msgid "Powered Off" msgstr "" -msgid "waiting" +msgid "%n running" msgstr "" -msgid "total" +msgid "%n paused" +msgstr "" + +msgid "%n waiting" +msgstr "" + +msgid "%1 total" +msgstr "" + +msgid "VMs: %1" msgstr "" msgid "System Directory:" diff --git a/src/qt/languages/es-ES.po b/src/qt/languages/es-ES.po index c39070a9e..a232ee7ae 100644 --- a/src/qt/languages/es-ES.po +++ b/src/qt/languages/es-ES.po @@ -1086,16 +1086,25 @@ msgstr "" msgid "Paused" msgstr "" -msgid "Paused (Waiting)" +msgid "Waiting" msgstr "" msgid "Powered Off" msgstr "" -msgid "waiting" +msgid "%n running" msgstr "" -msgid "total" +msgid "%n paused" +msgstr "" + +msgid "%n waiting" +msgstr "" + +msgid "%1 total" +msgstr "" + +msgid "VMs: %1" msgstr "" msgid "System Directory:" diff --git a/src/qt/languages/fi-FI.po b/src/qt/languages/fi-FI.po index fddd60ef1..17880b129 100644 --- a/src/qt/languages/fi-FI.po +++ b/src/qt/languages/fi-FI.po @@ -1086,16 +1086,25 @@ msgstr "" msgid "Paused" msgstr "" -msgid "Paused (Waiting)" +msgid "Waiting" msgstr "" msgid "Powered Off" msgstr "" -msgid "waiting" +msgid "%n running" msgstr "" -msgid "total" +msgid "%n paused" +msgstr "" + +msgid "%n waiting" +msgstr "" + +msgid "%1 total" +msgstr "" + +msgid "VMs: %1" msgstr "" msgid "System Directory:" diff --git a/src/qt/languages/fr-FR.po b/src/qt/languages/fr-FR.po index 9cdb6fbc9..79b983282 100644 --- a/src/qt/languages/fr-FR.po +++ b/src/qt/languages/fr-FR.po @@ -1086,16 +1086,25 @@ msgstr "" msgid "Paused" msgstr "" -msgid "Paused (Waiting)" +msgid "Waiting" msgstr "" msgid "Powered Off" msgstr "" -msgid "waiting" +msgid "%n running" msgstr "" -msgid "total" +msgid "%n paused" +msgstr "" + +msgid "%n waiting" +msgstr "" + +msgid "%1 total" +msgstr "" + +msgid "VMs: %1" msgstr "" msgid "System Directory:" diff --git a/src/qt/languages/hr-HR.po b/src/qt/languages/hr-HR.po index 72572bf64..2b0a52b2a 100644 --- a/src/qt/languages/hr-HR.po +++ b/src/qt/languages/hr-HR.po @@ -1086,16 +1086,25 @@ msgstr "" msgid "Paused" msgstr "" -msgid "Paused (Waiting)" +msgid "Waiting" msgstr "" msgid "Powered Off" msgstr "" -msgid "waiting" +msgid "%n running" msgstr "" -msgid "total" +msgid "%n paused" +msgstr "" + +msgid "%n waiting" +msgstr "" + +msgid "%1 total" +msgstr "" + +msgid "VMs: %1" msgstr "" msgid "System Directory:" diff --git a/src/qt/languages/hu-HU.po b/src/qt/languages/hu-HU.po index 04f3d0087..405cbf5f4 100644 --- a/src/qt/languages/hu-HU.po +++ b/src/qt/languages/hu-HU.po @@ -1086,16 +1086,25 @@ msgstr "" msgid "Paused" msgstr "" -msgid "Paused (Waiting)" +msgid "Waiting" msgstr "" msgid "Powered Off" msgstr "" -msgid "waiting" +msgid "%n running" msgstr "" -msgid "total" +msgid "%n paused" +msgstr "" + +msgid "%n waiting" +msgstr "" + +msgid "%1 total" +msgstr "" + +msgid "VMs: %1" msgstr "" msgid "System Directory:" diff --git a/src/qt/languages/it-IT.po b/src/qt/languages/it-IT.po index a2bef4558..b1fcc5903 100644 --- a/src/qt/languages/it-IT.po +++ b/src/qt/languages/it-IT.po @@ -1086,17 +1086,26 @@ msgstr "In esecuzione" msgid "Paused" msgstr "In pausa" -msgid "Paused (Waiting)" -msgstr "In pausa (In attesa)" +msgid "Waiting" +msgstr "In attesa" msgid "Powered Off" msgstr "Spento" -msgid "waiting" -msgstr "in attesa" +msgid "%n running" +msgstr "%n in esecuzione" -msgid "total" -msgstr "totale" +msgid "%n paused" +msgstr "%n in pausa" + +msgid "%n waiting" +msgstr "%n In attesa" + +msgid "%1 total" +msgstr "%1 totale" + +msgid "VMs: %1" +msgstr "" msgid "System Directory:" msgstr "Directory Sistema:" diff --git a/src/qt/languages/ja-JP.po b/src/qt/languages/ja-JP.po index cf94fc8ef..02787911f 100644 --- a/src/qt/languages/ja-JP.po +++ b/src/qt/languages/ja-JP.po @@ -1086,16 +1086,25 @@ msgstr "" msgid "Paused" msgstr "" -msgid "Paused (Waiting)" +msgid "Waiting" msgstr "" msgid "Powered Off" msgstr "" -msgid "waiting" +msgid "%n running" msgstr "" -msgid "total" +msgid "%n paused" +msgstr "" + +msgid "%n waiting" +msgstr "" + +msgid "%1 total" +msgstr "" + +msgid "VMs: %1" msgstr "" msgid "System Directory:" diff --git a/src/qt/languages/ko-KR.po b/src/qt/languages/ko-KR.po index 8839f6172..1061708d3 100644 --- a/src/qt/languages/ko-KR.po +++ b/src/qt/languages/ko-KR.po @@ -1086,16 +1086,25 @@ msgstr "" msgid "Paused" msgstr "" -msgid "Paused (Waiting)" +msgid "Waiting" msgstr "" msgid "Powered Off" msgstr "" -msgid "waiting" +msgid "%n running" msgstr "" -msgid "total" +msgid "%n paused" +msgstr "" + +msgid "%n waiting" +msgstr "" + +msgid "%1 total" +msgstr "" + +msgid "VMs: %1" msgstr "" msgid "System Directory:" diff --git a/src/qt/languages/nl-NL.po b/src/qt/languages/nl-NL.po index d9b2e8aca..29a421366 100644 --- a/src/qt/languages/nl-NL.po +++ b/src/qt/languages/nl-NL.po @@ -1086,17 +1086,26 @@ msgstr "Actief" msgid "Paused" msgstr "Gepauzeerd" -msgid "Paused (Waiting)" -msgstr "Gepauzeerd (aan het wachtend)" +msgid "Waiting" +msgstr "aan het wachtend" msgid "Powered Off" msgstr "Sluit af" -msgid "waiting" -msgstr "aan het wachten" +msgid "%n running" +msgstr "%n actief" -msgid "total" -msgstr "totaal" +msgid "%n paused" +msgstr "%n gepauzeerd" + +msgid "%n waiting" +msgstr "%n aan het wachten" + +msgid "%1 total" +msgstr "%1 totaal" + +msgid "VMs: %1" +msgstr "VMs: %1" msgid "System Directory:" msgstr "Systeemmap:" diff --git a/src/qt/languages/pl-PL.po b/src/qt/languages/pl-PL.po index 8e0381be3..44b707f61 100644 --- a/src/qt/languages/pl-PL.po +++ b/src/qt/languages/pl-PL.po @@ -1086,16 +1086,25 @@ msgstr "" msgid "Paused" msgstr "" -msgid "Paused (Waiting)" +msgid "Waiting" msgstr "" msgid "Powered Off" msgstr "" -msgid "waiting" +msgid "%n running" msgstr "" -msgid "total" +msgid "%n paused" +msgstr "" + +msgid "%n waiting" +msgstr "" + +msgid "%1 total" +msgstr "" + +msgid "VMs: %1" msgstr "" msgid "System Directory:" diff --git a/src/qt/languages/pt-BR.po b/src/qt/languages/pt-BR.po index 54d951282..b4f0ef833 100644 --- a/src/qt/languages/pt-BR.po +++ b/src/qt/languages/pt-BR.po @@ -1087,16 +1087,25 @@ msgid "Paused" msgstr "Pausado" msgid "Paused (Waiting)" -msgstr "Pausado (Esperando)" +msgstr "Esperando" msgid "Powered Off" msgstr "Desligado" -msgid "waiting" -msgstr "esperando" +msgid "%n running" +msgstr "%n rodando" -msgid "total" -msgstr "total" +msgid "%n paused" +msgstr "%n pausado" + +msgid "%n waiting" +msgstr "%n esperando" + +msgid "%1 total" +msgstr "%1 total" + +msgid "VMs: %1" +msgstr "" msgid "System Directory:" msgstr "Diretório do Sistema:" diff --git a/src/qt/languages/pt-PT.po b/src/qt/languages/pt-PT.po index 416136a5b..8ad190b1e 100644 --- a/src/qt/languages/pt-PT.po +++ b/src/qt/languages/pt-PT.po @@ -1086,16 +1086,25 @@ msgstr "" msgid "Paused" msgstr "" -msgid "Paused (Waiting)" +msgid "Waiting" msgstr "" msgid "Powered Off" msgstr "" -msgid "waiting" +msgid "%n running" msgstr "" -msgid "total" +msgid "%n paused" +msgstr "" + +msgid "%n waiting" +msgstr "" + +msgid "%1 total" +msgstr "" + +msgid "VMs: %1" msgstr "" msgid "System Directory:" diff --git a/src/qt/languages/ru-RU.po b/src/qt/languages/ru-RU.po index a2e3b1fbc..d5bf0b4b8 100644 --- a/src/qt/languages/ru-RU.po +++ b/src/qt/languages/ru-RU.po @@ -1084,19 +1084,28 @@ msgid "Running" msgstr "Работает" msgid "Paused" -msgstr "Приостановлено" +msgstr "Приостановлена" -msgid "Paused (Waiting)" -msgstr "Приостановлено (Ожидание)" - -msgid "Powered Off" -msgstr "Выключено" - -msgid "waiting" +msgid "Waiting" msgstr "Ожидание" -msgid "total" -msgstr "Всего" +msgid "Powered Off" +msgstr "Выключена" + +msgid "%n running" +msgstr "%n работает" + +msgid "%n paused" +msgstr "%n приостановлено" + +msgid "%n waiting" +msgstr "%n ожидает" + +msgid "%1 total" +msgstr "всего %1" + +msgid "VMs: %1" +msgstr "Машин: %1" msgid "System Directory:" msgstr "Системная папка:" diff --git a/src/qt/languages/sk-SK.po b/src/qt/languages/sk-SK.po index 7649fa860..4196b4b95 100644 --- a/src/qt/languages/sk-SK.po +++ b/src/qt/languages/sk-SK.po @@ -1086,16 +1086,25 @@ msgstr "" msgid "Paused" msgstr "" -msgid "Paused (Waiting)" +msgid "Waiting" msgstr "" msgid "Powered Off" msgstr "" -msgid "waiting" +msgid "%n running" msgstr "" -msgid "total" +msgid "%n paused" +msgstr "" + +msgid "%n waiting" +msgstr "" + +msgid "%1 total" +msgstr "" + +msgid "VMs: %1" msgstr "" msgid "System Directory:" diff --git a/src/qt/languages/sl-SI.po b/src/qt/languages/sl-SI.po index ebd5bb353..ef8b68983 100644 --- a/src/qt/languages/sl-SI.po +++ b/src/qt/languages/sl-SI.po @@ -1086,16 +1086,25 @@ msgstr "" msgid "Paused" msgstr "" -msgid "Paused (Waiting)" +msgid "Waiting" msgstr "" msgid "Powered Off" msgstr "" -msgid "waiting" +msgid "%n running" msgstr "" -msgid "total" +msgid "%n paused" +msgstr "" + +msgid "%n waiting" +msgstr "" + +msgid "%1 total" +msgstr "" + +msgid "VMs: %1" msgstr "" msgid "System Directory:" diff --git a/src/qt/languages/sv-SE.po b/src/qt/languages/sv-SE.po index e5355e87b..3be5c8d7f 100644 --- a/src/qt/languages/sv-SE.po +++ b/src/qt/languages/sv-SE.po @@ -1086,16 +1086,25 @@ msgstr "" msgid "Paused" msgstr "" -msgid "Paused (Waiting)" +msgid "Waiting" msgstr "" msgid "Powered Off" msgstr "" -msgid "waiting" +msgid "%n running" msgstr "" -msgid "total" +msgid "%n paused" +msgstr "" + +msgid "%n waiting" +msgstr "" + +msgid "%1 total" +msgstr "" + +msgid "VMs: %1" msgstr "" msgid "System Directory:" diff --git a/src/qt/languages/tr-TR.po b/src/qt/languages/tr-TR.po index 7029efbc8..92fafc1c2 100644 --- a/src/qt/languages/tr-TR.po +++ b/src/qt/languages/tr-TR.po @@ -1086,16 +1086,25 @@ msgstr "" msgid "Paused" msgstr "" -msgid "Paused (Waiting)" +msgid "Waiting" msgstr "" msgid "Powered Off" msgstr "" -msgid "waiting" +msgid "%n running" msgstr "" -msgid "total" +msgid "%n paused" +msgstr "" + +msgid "%n waiting" +msgstr "" + +msgid "%1 total" +msgstr "" + +msgid "VMs: %1" msgstr "" msgid "System Directory:" diff --git a/src/qt/languages/uk-UA.po b/src/qt/languages/uk-UA.po index d0cd13f0e..65422a434 100644 --- a/src/qt/languages/uk-UA.po +++ b/src/qt/languages/uk-UA.po @@ -1086,16 +1086,25 @@ msgstr "" msgid "Paused" msgstr "" -msgid "Paused (Waiting)" +msgid "Waiting" msgstr "" msgid "Powered Off" msgstr "" -msgid "waiting" +msgid "%n running" msgstr "" -msgid "total" +msgid "%n paused" +msgstr "" + +msgid "%n waiting" +msgstr "" + +msgid "%1 total" +msgstr "" + +msgid "VMs: %1" msgstr "" msgid "System Directory:" diff --git a/src/qt/languages/vi-VN.po b/src/qt/languages/vi-VN.po index 834a44c97..b14d74433 100644 --- a/src/qt/languages/vi-VN.po +++ b/src/qt/languages/vi-VN.po @@ -1086,16 +1086,25 @@ msgstr "" msgid "Paused" msgstr "" -msgid "Paused (Waiting)" +msgid "Waiting" msgstr "" msgid "Powered Off" msgstr "" -msgid "waiting" +msgid "%n running" msgstr "" -msgid "total" +msgid "%n paused" +msgstr "" + +msgid "%n waiting" +msgstr "" + +msgid "%1 total" +msgstr "" + +msgid "VMs: %1" msgstr "" msgid "System Directory:" diff --git a/src/qt/languages/zh-CN.po b/src/qt/languages/zh-CN.po index 3b3e01dc1..a1a27dd31 100644 --- a/src/qt/languages/zh-CN.po +++ b/src/qt/languages/zh-CN.po @@ -1086,17 +1086,26 @@ msgstr "正在运行" msgid "Paused" msgstr "已暂停" -msgid "Paused (Waiting)" -msgstr "暂停 (等待中)" +msgid "Waiting" +msgstr "等待中" msgid "Powered Off" msgstr "已关机" -msgid "waiting" -msgstr "等待中" +msgid "%n running" +msgstr "%n 正在运行" -msgid "total" -msgstr "总计" +msgid "%n paused" +msgstr "%n 已暂停" + +msgid "%n waiting" +msgstr "%n 等待中" + +msgid "%1 total" +msgstr "%1 总计" + +msgid "VMs: %1" +msgstr "" msgid "System Directory:" msgstr "系统目录" diff --git a/src/qt/languages/zh-TW.po b/src/qt/languages/zh-TW.po index d97358ec5..c10a2bc48 100644 --- a/src/qt/languages/zh-TW.po +++ b/src/qt/languages/zh-TW.po @@ -1086,16 +1086,25 @@ msgstr "" msgid "Paused" msgstr "" -msgid "Paused (Waiting)" +msgid "Waiting" msgstr "" msgid "Powered Off" msgstr "" -msgid "waiting" +msgid "%n running" msgstr "" -msgid "total" +msgid "%n paused" +msgstr "" + +msgid "%n waiting" +msgstr "" + +msgid "%1 total" +msgstr "" + +msgid "VMs: %1" msgstr "" msgid "System Directory:" diff --git a/src/qt/qt_vmmanager_details.cpp b/src/qt/qt_vmmanager_details.cpp index 9292c7039..d6dd814ee 100644 --- a/src/qt/qt_vmmanager_details.cpp +++ b/src/qt/qt_vmmanager_details.cpp @@ -334,7 +334,7 @@ VMManagerDetails::updateProcessStatus() { QString status_text = running ? QString("%1: PID %2").arg(tr("Running"), QString::number(sysconfig->process->processId())) : tr("Not running"); - status_text.append(sysconfig->window_obscured ? QString(" (%1)").arg(tr("waiting")) : ""); + status_text.append(sysconfig->window_obscured ? QString(" (%1)").arg(tr("Waiting")) : ""); ui->statusLabel->setText(status_text); resetButton->setEnabled(running); stopButton->setEnabled(running); diff --git a/src/qt/qt_vmmanager_main.cpp b/src/qt/qt_vmmanager_main.cpp index f11fdc5a6..e3f8a7402 100644 --- a/src/qt/qt_vmmanager_main.cpp +++ b/src/qt/qt_vmmanager_main.cpp @@ -369,7 +369,7 @@ illegal_chars: // Set initial status bar after the event loop starts QTimer::singleShot(0, this, [this] { - emit updateStatusRight(totalCountString()); + emit updateStatusRight(machineCountString()); }); #if EMU_BUILD_NUM != 0 @@ -698,10 +698,14 @@ VMManagerMain::getSearchCompletionList() const } QString -VMManagerMain::totalCountString() const +VMManagerMain::machineCountString(QString states) const { const auto count = vm_model->rowCount(QModelIndex()); - return QString("%1 %2").arg(QString::number(count), tr("total")); + if (!states.isEmpty()) + states.append(", "); + states.append(tr("%1 total").arg(count)); + + return tr("VMs: %1").arg(states); } void @@ -713,14 +717,26 @@ VMManagerMain::modelDataChange() QStringList stats; for (auto it = modelStats.constBegin(); it != modelStats.constEnd(); ++it) { const auto &key = it.key(); - stats.append(QString("%1 %2").arg(QString::number(modelStats[key]), key)); + QString text = ""; + switch (key) { + case VMManagerSystem::ProcessStatus::Running: + text = tr("%n running", "", modelStats[key]); + break; + case VMManagerSystem::ProcessStatus::Paused: + text = tr("%n paused", "", modelStats[key]); + break; + case VMManagerSystem::ProcessStatus::PausedWaiting: + case VMManagerSystem::ProcessStatus::RunningWaiting: + text = tr("%n waiting", "", modelStats[key]); + break; + default: + break; + } + if(!text.isEmpty()) + stats.append(text); } auto states = stats.join(", "); - if (!modelStats.isEmpty()) { - states.append(", "); - } - - emit updateStatusRight(states + totalCountString()); + emit updateStatusRight(machineCountString(states)); } void diff --git a/src/qt/qt_vmmanager_main.hpp b/src/qt/qt_vmmanager_main.hpp index 9b9401d0f..bb2bb180b 100644 --- a/src/qt/qt_vmmanager_main.hpp +++ b/src/qt/qt_vmmanager_main.hpp @@ -103,7 +103,7 @@ private: void updateDisplayName(const QModelIndex &index); void loadSettings(); [[nodiscard]] bool currentSelectionIsValid() const; - [[nodiscard]] QString totalCountString() const; + [[nodiscard]] QString machineCountString(QString states = "") const; #if EMU_BUILD_NUM != 0 void backgroundUpdateCheckStart() const; #endif diff --git a/src/qt/qt_vmmanager_model.cpp b/src/qt/qt_vmmanager_model.cpp index 3f6bdc4f9..40baac90a 100644 --- a/src/qt/qt_vmmanager_model.cpp +++ b/src/qt/qt_vmmanager_model.cpp @@ -167,15 +167,12 @@ VMManagerModel::updateDisplayName(const QModelIndex &index, const QString &newDi machines.at(index.row())->setDisplayName(newDisplayName); modelDataChanged(); } -QHash +QMap VMManagerModel::getProcessStats() { - QHash stats; + QMap stats; for (const auto& system: machines) { - if (system->getProcessStatus() != VMManagerSystem::ProcessStatus::Stopped) { - auto statusString = system->getProcessStatusString(); - stats[statusString] += 1; - } + stats[system->getProcessStatus()] += 1; } return stats; } diff --git a/src/qt/qt_vmmanager_model.hpp b/src/qt/qt_vmmanager_model.hpp index 4205e8098..159dad9f2 100644 --- a/src/qt/qt_vmmanager_model.hpp +++ b/src/qt/qt_vmmanager_model.hpp @@ -57,7 +57,7 @@ public: QModelIndex getIndexForConfigFile(const QFileInfo& config_file); void reload(QWidget* parent = nullptr); void updateDisplayName(const QModelIndex &index, const QString &newDisplayName); - QHash getProcessStats(); + QMap getProcessStats(); int getActiveMachineCount(); void refreshConfigs(); signals: diff --git a/src/qt/qt_vmmanager_system.cpp b/src/qt/qt_vmmanager_system.cpp index 5130ac50c..e056b2331 100644 --- a/src/qt/qt_vmmanager_system.cpp +++ b/src/qt/qt_vmmanager_system.cpp @@ -1175,7 +1175,7 @@ VMManagerSystem::processStatusToString(VMManagerSystem::ProcessStatus status) return tr("Paused"); case VMManagerSystem::ProcessStatus::PausedWaiting: case VMManagerSystem::ProcessStatus::RunningWaiting: - return tr("Paused (Waiting)"); + return QString("%1 (%2)").arg(tr("Paused"), tr("Waiting")); default: return tr("Unknown Status"); }