diff --git a/src/gui/bandwidth_limit.ui b/src/gui/bandwidth_limit.ui index 6fd700bef..b10bee62d 100644 --- a/src/gui/bandwidth_limit.ui +++ b/src/gui/bandwidth_limit.ui @@ -10,9 +10,6 @@ 83 - - Bandwidth allocation - @@ -25,9 +22,6 @@ - - - 65535 @@ -40,9 +34,6 @@ - - Qt::Horizontal - QDialogButtonBox::Cancel|QDialogButtonBox::Ok diff --git a/src/gui/mainwindow.cpp b/src/gui/mainwindow.cpp index a23e44083..1e546a703 100644 --- a/src/gui/mainwindow.cpp +++ b/src/gui/mainwindow.cpp @@ -862,10 +862,12 @@ void MainWindow::handleDownloadFromUrlFailure(QString url, QString reason) const void MainWindow::on_actionSetGlobalUploadLimit_triggered() { qDebug() << Q_FUNC_INFO; + BitTorrent::Session *const session = BitTorrent::Session::instance(); bool ok = false; const long newLimit = SpeedLimitDialog::askSpeedLimit( - &ok, tr("Global Upload Speed Limit"), session->uploadSpeedLimit()); + this, &ok, tr("Global Upload Speed Limit"), session->uploadSpeedLimit()); + if (ok) { qDebug("Setting global upload rate limit to %.1fKb/s", newLimit / 1024.); session->setUploadSpeedLimit(newLimit); @@ -875,10 +877,12 @@ void MainWindow::on_actionSetGlobalUploadLimit_triggered() void MainWindow::on_actionSetGlobalDownloadLimit_triggered() { qDebug() << Q_FUNC_INFO; + BitTorrent::Session *const session = BitTorrent::Session::instance(); bool ok = false; const long newLimit = SpeedLimitDialog::askSpeedLimit( - &ok, tr("Global Download Speed Limit"), session->downloadSpeedLimit()); + this, &ok, tr("Global Download Speed Limit"), session->downloadSpeedLimit()); + if (ok) { qDebug("Setting global download rate limit to %.1fKb/s", newLimit / 1024.); session->setDownloadSpeedLimit(newLimit); diff --git a/src/gui/speedlimitdlg.cpp b/src/gui/speedlimitdlg.cpp index 1f2cd8271..ef14b152c 100644 --- a/src/gui/speedlimitdlg.cpp +++ b/src/gui/speedlimitdlg.cpp @@ -39,10 +39,10 @@ SpeedLimitDialog::SpeedLimitDialog(QWidget *parent) { m_ui->setupUi(this); qDebug("Bandwidth allocation dialog creation"); + // Connect to slots connect(m_ui->bandwidthSlider, SIGNAL(valueChanged(int)), this, SLOT(updateSpinValue(int))); connect(m_ui->spinBandwidth, SIGNAL(valueChanged(int)), this, SLOT(updateSliderValue(int))); - move(Utils::Misc::screenCenter(this)); } SpeedLimitDialog::~SpeedLimitDialog() @@ -52,9 +52,9 @@ SpeedLimitDialog::~SpeedLimitDialog() } // -2: if cancel -long SpeedLimitDialog::askSpeedLimit(bool *ok, QString title, long default_value, long max_value) +long SpeedLimitDialog::askSpeedLimit(QWidget *parent, bool *ok, QString title, long default_value, long max_value) { - SpeedLimitDialog dlg; + SpeedLimitDialog dlg(parent); dlg.setWindowTitle(title); dlg.setupDialog(max_value / 1024., default_value / 1024.); if (dlg.exec() == QDialog::Accepted) { diff --git a/src/gui/speedlimitdlg.h b/src/gui/speedlimitdlg.h index 3283febb4..45f62b144 100644 --- a/src/gui/speedlimitdlg.h +++ b/src/gui/speedlimitdlg.h @@ -44,9 +44,9 @@ namespace Ui class SpeedLimitDialog : public QDialog { Q_OBJECT public: - explicit SpeedLimitDialog(QWidget *parent=0); + explicit SpeedLimitDialog(QWidget *parent); ~SpeedLimitDialog(); - static long askSpeedLimit(bool *ok, QString title, long default_value, long max_value=10240000); + static long askSpeedLimit(QWidget *parent, bool *ok, QString title, long default_value, long max_value=10240000); protected slots: void updateSpinValue(int val) const; diff --git a/src/gui/statusbar.cpp b/src/gui/statusbar.cpp index b92af9a39..6f5144c7d 100644 --- a/src/gui/statusbar.cpp +++ b/src/gui/statusbar.cpp @@ -252,9 +252,10 @@ void StatusBar::toggleAlternativeSpeeds() void StatusBar::capDownloadSpeed() { BitTorrent::Session *const session = BitTorrent::Session::instance(); + bool ok = false; const long newLimit = SpeedLimitDialog::askSpeedLimit( - &ok, tr("Global Download Speed Limit"), session->downloadSpeedLimit()); + m_bar->parentWidget(), &ok, tr("Global Download Speed Limit"), session->downloadSpeedLimit()); if (ok) { qDebug("Setting global download rate limit to %.1fKb/s", newLimit / 1024.); session->setDownloadSpeedLimit(newLimit); @@ -265,9 +266,10 @@ void StatusBar::capDownloadSpeed() void StatusBar::capUploadSpeed() { BitTorrent::Session *const session = BitTorrent::Session::instance(); + bool ok = false; const long newLimit = SpeedLimitDialog::askSpeedLimit( - &ok, tr("Global Upload Speed Limit"), session->uploadSpeedLimit()); + m_bar->parentWidget(), &ok, tr("Global Upload Speed Limit"), session->uploadSpeedLimit()); if (ok) { qDebug("Setting global upload rate limit to %.1fKb/s", newLimit / 1024.); session->setUploadSpeedLimit(newLimit); diff --git a/src/gui/transferlistwidget.cpp b/src/gui/transferlistwidget.cpp index 5efb3d51a..70e3399af 100644 --- a/src/gui/transferlistwidget.cpp +++ b/src/gui/transferlistwidget.cpp @@ -445,7 +445,7 @@ void TransferListWidget::setDlLimitSelectedTorrents() bool ok = false; const long newLimit = SpeedLimitDialog::askSpeedLimit( - &ok, tr("Torrent Download Speed Limiting"), oldLimit + this, &ok, tr("Torrent Download Speed Limiting"), oldLimit , BitTorrent::Session::instance()->globalDownloadSpeedLimit()); if (!ok) return; @@ -470,7 +470,7 @@ void TransferListWidget::setUpLimitSelectedTorrents() bool ok = false; const long newLimit = SpeedLimitDialog::askSpeedLimit( - &ok, tr("Torrent Upload Speed Limiting"), oldLimit + this, &ok, tr("Torrent Upload Speed Limiting"), oldLimit , BitTorrent::Session::instance()->globalUploadSpeedLimit()); if (!ok) return;