1
0
mirror of https://github.com/d47081/qBittorrent.git synced 2025-01-27 23:14:31 +00:00

Improve the scheduler ui settings.

This commit is contained in:
sledgehammer999 2013-09-14 12:54:22 +03:00
parent ae8c6ecf1c
commit fcebe1e485
3 changed files with 32 additions and 1 deletions

View File

@ -1781,6 +1781,9 @@
</item> </item>
<item> <item>
<widget class="QTimeEdit" name="schedule_from"> <widget class="QTimeEdit" name="schedule_from">
<property name="wrapping">
<bool>true</bool>
</property>
<property name="time"> <property name="time">
<time> <time>
<hour>8</hour> <hour>8</hour>
@ -1808,6 +1811,9 @@
</item> </item>
<item> <item>
<widget class="QTimeEdit" name="schedule_to"> <widget class="QTimeEdit" name="schedule_to">
<property name="wrapping">
<bool>true</bool>
</property>
<property name="time"> <property name="time">
<time> <time>
<hour>20</hour> <hour>20</hour>

View File

@ -938,6 +938,10 @@ int options_imp::getMaxUploadsPerTorrent() const {
void options_imp::on_buttonBox_accepted() { void options_imp::on_buttonBox_accepted() {
if (applyButton->isEnabled()) { if (applyButton->isEnabled()) {
if (!schedTimesOk()) {
tabSelection->setCurrentRow(TAB_SPEED);
return;
}
saveOptions(); saveOptions();
applyButton->setEnabled(false); applyButton->setEnabled(false);
this->hide(); this->hide();
@ -949,6 +953,10 @@ void options_imp::on_buttonBox_accepted() {
void options_imp::applySettings(QAbstractButton* button) { void options_imp::applySettings(QAbstractButton* button) {
if (button == applyButton) { if (button == applyButton) {
if (!schedTimesOk()) {
tabSelection->setCurrentRow(TAB_SPEED);
return;
}
saveOptions(); saveOptions();
emit status_changed(); emit status_changed();
} }
@ -1240,7 +1248,7 @@ QString options_imp::webUiPassword() const
void options_imp::showConnectionTab() void options_imp::showConnectionTab()
{ {
tabSelection->setCurrentRow(2); tabSelection->setCurrentRow(TAB_CONNECTION);
} }
void options_imp::on_btnWebUiCrt_clicked() { void options_imp::on_btnWebUiCrt_clicked() {
@ -1397,3 +1405,19 @@ void options_imp::toggleAnonymousMode(bool enabled)
checkUPnP->setEnabled(true); checkUPnP->setEnabled(true);
} }
} }
bool options_imp::schedTimesOk() {
QString msg;
if (schedule_from->time() == schedule_to->time())
msg = tr("The start time and the end time can't be the same.");
else if (schedule_from->time() > schedule_to->time())
msg = tr("The start time can't be after the end time.");
if (!msg.isEmpty()) {
QMessageBox::critical(this, tr("Time Error"), msg);
return false;
}
return true;
}

View File

@ -157,6 +157,7 @@ private:
private: private:
void setSslKey(const QByteArray &key, bool interactive = true); void setSslKey(const QByteArray &key, bool interactive = true);
void setSslCertificate(const QByteArray &cert, bool interactive = true); void setSslCertificate(const QByteArray &cert, bool interactive = true);
bool schedTimesOk();
private: private:
QButtonGroup choiceLanguage; QButtonGroup choiceLanguage;