Add helper function to initialize shutdown message.
Group similar functions together.
Merge shutdown() function into its only caller.
Add override keyword
This commit is contained in:
Chocobo1 2016-04-13 02:16:23 +08:00
parent 1099a5006f
commit d3fb46663c
2 changed files with 21 additions and 21 deletions

View file

@ -49,11 +49,10 @@ ShutdownConfirmDlg::ShutdownConfirmDlg(const ShutdownAction &action)
{
ui->setupUi(this);
initText();
QIcon warningIcon(style()->standardIcon(QStyle::SP_MessageBoxWarning));
ui->warningLabel->setPixmap(warningIcon.pixmap(32));
updateText();
if (m_action == ShutdownAction::None)
ui->neverShowAgainCheckbox->setVisible(true);
else
@ -63,12 +62,13 @@ ShutdownConfirmDlg::ShutdownConfirmDlg(const ShutdownAction &action)
QPushButton *cancelButton = ui->buttonBox->button(QDialogButtonBox::Cancel);
cancelButton->setFocus();
cancelButton->setDefault(true);
// Always on top
setWindowFlags(windowFlags() | Qt::WindowStaysOnTopHint);
move(Utils::Misc::screenCenter(this));
m_timer.setInterval(1000); // 1sec
connect(&m_timer, SIGNAL(timeout()), this, SLOT(updateSeconds()));
// Move to center
move(Utils::Misc::screenCenter(this));
}
ShutdownConfirmDlg::~ShutdownConfirmDlg()
@ -85,8 +85,7 @@ void ShutdownConfirmDlg::showEvent(QShowEvent *event)
bool ShutdownConfirmDlg::askForConfirmation(const ShutdownAction &action)
{
ShutdownConfirmDlg dlg(action);
dlg.exec();
return dlg.shutdown();
return (dlg.exec() == QDialog::Accepted);
}
void ShutdownConfirmDlg::updateSeconds()
@ -105,43 +104,43 @@ void ShutdownConfirmDlg::accept()
QDialog::accept();
}
bool ShutdownConfirmDlg::shutdown() const
void ShutdownConfirmDlg::initText()
{
return (result() == QDialog::Accepted);
}
void ShutdownConfirmDlg::updateText()
{
QString text;
QPushButton *okButton = ui->buttonBox->button(QDialogButtonBox::Ok);
switch (m_action) {
case ShutdownAction::None:
text = tr("qBittorrent will now exit.");
m_msg = tr("qBittorrent will now exit.");
okButton->setText(tr("E&xit Now"));
setWindowTitle(tr("Exit confirmation"));
break;
case ShutdownAction::Shutdown:
text = tr("The computer is going to shutdown.");
m_msg = tr("The computer is going to shutdown.");
okButton->setText(tr("&Shutdown Now"));
setWindowTitle(tr("Shutdown confirmation"));
break;
case ShutdownAction::Suspend:
text = tr("The computer is going to enter suspend mode.");
m_msg = tr("The computer is going to enter suspend mode.");
okButton->setText(tr("&Suspend Now"));
setWindowTitle(tr("Suspend confirmation"));
break;
case ShutdownAction::Hibernate:
text = tr("The computer is going to enter hibernation mode.");
m_msg = tr("The computer is going to enter hibernation mode.");
okButton->setText(tr("&Hibernate Now"));
setWindowTitle(tr("Hibernate confirmation"));
break;
}
text += "\n" + tr("You can cancel the action within %1 seconds.").arg(QString::number(m_timeout)) + "\n";
ui->shutdownText->setText(text);
m_msg += "\n";
updateText();
}
void ShutdownConfirmDlg::updateText()
{
QString t = tr("You can cancel the action within %1 seconds.").arg(QString::number(m_timeout)) + "\n";
ui->shutdownText->setText(m_msg + t);
}

View file

@ -47,12 +47,11 @@ class ShutdownConfirmDlg: public QDialog
public:
ShutdownConfirmDlg(const ShutdownAction &action);
~ShutdownConfirmDlg();
bool shutdown() const;
static bool askForConfirmation(const ShutdownAction &action);
protected:
void showEvent(QShowEvent *event);
void showEvent(QShowEvent *event) override;
private slots:
void updateSeconds();
@ -60,6 +59,7 @@ private slots:
private:
// Methods
void initText();
void updateText();
// Vars
@ -67,6 +67,7 @@ private:
QTimer m_timer;
int m_timeout;
ShutdownAction m_action;
QString m_msg;
};
#endif // SHUTDOWNCONFIRM_H