Manager toolbar: Cache run/pause icons

This commit is contained in:
Alexander Babikov
2025-12-06 03:51:07 +05:00
parent b5c6ebd589
commit c325ea0aec
2 changed files with 9 additions and 4 deletions

View File

@@ -46,6 +46,9 @@ VMManagerMainWindow::
vmm_main_window = this;
runIcon = QIcon(":/menuicons/qt/icons/run.ico");
pauseIcon = QIcon(":/menuicons/qt/icons/pause.ico");
// Connect signals from the VMManagerMain widget
connect(vmm, &VMManagerMain::selectionChanged, this, &VMManagerMainWindow::vmmSelectionChanged);
@@ -70,7 +73,7 @@ VMManagerMainWindow::
// TODO: Unhide the toolbar once the actions are fixed to properly update on VM status change
ui->actionStartPause->setEnabled(false);
ui->actionStartPause->setIcon(QIcon(":/menuicons/qt/icons/run.ico"));
ui->actionStartPause->setIcon(runIcon);
ui->actionStartPause->setText(tr("Start"));
ui->actionStartPause->setToolTip(tr("Start"));
ui->actionHard_Reset->setEnabled(false);
@@ -165,18 +168,18 @@ VMManagerMainWindow::vmmSelectionChanged(const VMManagerSystem *sysconfig) const
if (running) {
if (sysconfig->getProcessStatus() == VMManagerSystem::ProcessStatus::Running) {
ui->actionStartPause->setIcon(QIcon(":/menuicons/qt/icons/pause.ico"));
ui->actionStartPause->setIcon(pauseIcon);
ui->actionStartPause->setText(tr("Pause"));
ui->actionStartPause->setToolTip(tr("Pause"));
} else {
ui->actionStartPause->setIcon(QIcon(":/menuicons/qt/icons/run.ico"));
ui->actionStartPause->setIcon(runIcon);
ui->actionStartPause->setText(tr("Continue"));
ui->actionStartPause->setToolTip(tr("Continue"));
}
disconnect(ui->actionStartPause, &QAction::triggered, vmm, &VMManagerMain::startButtonPressed);
connect(ui->actionStartPause, &QAction::triggered, vmm, &VMManagerMain::pauseButtonPressed);
} else {
ui->actionStartPause->setIcon(QIcon(":/menuicons/qt/icons/run.ico"));
ui->actionStartPause->setIcon(runIcon);
ui->actionStartPause->setText(tr("Start"));
ui->actionStartPause->setToolTip(tr("Start"));
disconnect(ui->actionStartPause, &QAction::triggered, vmm, &VMManagerMain::pauseButtonPressed);

View File

@@ -45,6 +45,8 @@ private:
void saveSettings() const;
QLabel *statusLeft;
QLabel *statusRight;
QIcon runIcon;
QIcon pauseIcon;
public slots:
void setStatusLeft(const QString &text) const;