mirror of
https://github.com/qbittorrent/qBittorrent.git
synced 2024-11-26 03:06:37 +03:00
- Use global maximum transfer rates as maximum values in per-torrent speed limiting dialogs
This commit is contained in:
parent
77b4d97069
commit
132b1f7ffe
2 changed files with 13 additions and 3 deletions
|
@ -57,9 +57,10 @@ class SpeedLimitDialog : public QDialog, private Ui_bandwidth_dlg {
|
||||||
}
|
}
|
||||||
|
|
||||||
// -2: if cancel
|
// -2: if cancel
|
||||||
static long askSpeedLimit(bool *ok, QString title, long default_value) {
|
static long askSpeedLimit(bool *ok, QString title, long default_value, long max_value=1024000) {
|
||||||
SpeedLimitDialog dlg;
|
SpeedLimitDialog dlg;
|
||||||
dlg.setWindowTitle(title);
|
dlg.setWindowTitle(title);
|
||||||
|
dlg.setMaxValue(max_value/1024.);
|
||||||
dlg.setDefaultValue(default_value/1024.);
|
dlg.setDefaultValue(default_value/1024.);
|
||||||
if(dlg.exec() == QDialog::Accepted) {
|
if(dlg.exec() == QDialog::Accepted) {
|
||||||
*ok = true;
|
*ok = true;
|
||||||
|
@ -102,8 +103,16 @@ class SpeedLimitDialog : public QDialog, private Ui_bandwidth_dlg {
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void setMaxValue(long val) const {
|
||||||
|
if(val > 0) {
|
||||||
|
bandwidthSlider->setMaximum(val);
|
||||||
|
spinBandwidth->setMaximum(val);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
void setDefaultValue(long val) const {
|
void setDefaultValue(long val) const {
|
||||||
if(val < 0) val = 0;
|
if(val < 0) val = 0;
|
||||||
|
if(val > bandwidthSlider->maximum()) val = bandwidthSlider->maximum();
|
||||||
bandwidthSlider->setValue(val);
|
bandwidthSlider->setValue(val);
|
||||||
updateSpinValue(val);
|
updateSpinValue(val);
|
||||||
}
|
}
|
||||||
|
|
|
@ -36,6 +36,7 @@
|
||||||
#include "speedlimitdlg.h"
|
#include "speedlimitdlg.h"
|
||||||
#include "options_imp.h"
|
#include "options_imp.h"
|
||||||
#include "GUI.h"
|
#include "GUI.h"
|
||||||
|
#include "preferences.h"
|
||||||
#include "deletionconfirmationdlg.h"
|
#include "deletionconfirmationdlg.h"
|
||||||
#include <QStandardItemModel>
|
#include <QStandardItemModel>
|
||||||
#include <QSortFilterProxyModel>
|
#include <QSortFilterProxyModel>
|
||||||
|
@ -700,7 +701,7 @@ void TransferListWidget::setDlLimitSelectedTorrents() {
|
||||||
int default_limit = -1;
|
int default_limit = -1;
|
||||||
if(all_same_limit)
|
if(all_same_limit)
|
||||||
default_limit = selected_torrents.first().download_limit();
|
default_limit = selected_torrents.first().download_limit();
|
||||||
long new_limit = SpeedLimitDialog::askSpeedLimit(&ok, tr("Torrent Download Speed Limiting"), default_limit);
|
long new_limit = SpeedLimitDialog::askSpeedLimit(&ok, tr("Torrent Download Speed Limiting"), default_limit, Preferences::getGlobalDownloadLimit()*1024.);
|
||||||
if(ok) {
|
if(ok) {
|
||||||
foreach(QTorrentHandle h, selected_torrents) {
|
foreach(QTorrentHandle h, selected_torrents) {
|
||||||
qDebug("Applying download speed limit of %ld Kb/s to torrent %s", (long)(new_limit/1024.), h.hash().toLocal8Bit().data());
|
qDebug("Applying download speed limit of %ld Kb/s to torrent %s", (long)(new_limit/1024.), h.hash().toLocal8Bit().data());
|
||||||
|
@ -736,7 +737,7 @@ void TransferListWidget::setUpLimitSelectedTorrents() {
|
||||||
int default_limit = -1;
|
int default_limit = -1;
|
||||||
if(all_same_limit)
|
if(all_same_limit)
|
||||||
default_limit = selected_torrents.first().upload_limit();
|
default_limit = selected_torrents.first().upload_limit();
|
||||||
long new_limit = SpeedLimitDialog::askSpeedLimit(&ok, tr("Torrent Upload Speed Limiting"), default_limit);
|
long new_limit = SpeedLimitDialog::askSpeedLimit(&ok, tr("Torrent Upload Speed Limiting"), default_limit, Preferences::getGlobalUploadLimit()*1024.);
|
||||||
if(ok) {
|
if(ok) {
|
||||||
foreach(QTorrentHandle h, selected_torrents) {
|
foreach(QTorrentHandle h, selected_torrents) {
|
||||||
qDebug("Applying upload speed limit of %ld Kb/s to torrent %s", (long)(new_limit/1024.), h.hash().toLocal8Bit().data());
|
qDebug("Applying upload speed limit of %ld Kb/s to torrent %s", (long)(new_limit/1024.), h.hash().toLocal8Bit().data());
|
||||||
|
|
Loading…
Reference in a new issue