From 97e46a541f23ab50dc1fcb242f9b5eff658926c5 Mon Sep 17 00:00:00 2001 From: Jari Jarvi Date: Wed, 7 Jul 2010 15:38:56 +0300 Subject: [PATCH] Fixed some logic bugs in settingsdlg --- src/settingsdlg.cpp | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/src/settingsdlg.cpp b/src/settingsdlg.cpp index f7b4cfa..e596a66 100644 --- a/src/settingsdlg.cpp +++ b/src/settingsdlg.cpp @@ -15,7 +15,7 @@ SettingsDlg::SettingsDlg(QWidget *parent) : QDialog(parent) - , m_busy(false) + , m_busy(true) , m_netConfMan(NULL) { QSettings settings(this); @@ -68,21 +68,19 @@ SettingsDlg::SettingsDlg(QWidget *parent) QString selectedRemote = settings.value("remoteName", "").toString(); if (selectedRemote == "") { m_remoteNameLabel->setText(tr("No remote selected")); - enableRateBtns(false); } else { // Create remote by name and update it's info if online - m_busy = true; m_remote = Remote(selectedRemote); connect(&m_remote, SIGNAL(infoUpdated()), this, SLOT(updateRemoteInfo())); m_remoteNameLabel->setText(selectedRemote); - m_netConfMan = new QTM_PREPEND_NAMESPACE( - QNetworkConfigurationManager)(this); - connect(m_netConfMan, SIGNAL(updateCompleted()), - this, SLOT(onNetworkStatusUpdate())); - m_netConfMan->updateConfigurations(); - enableRateBtns(false); } + m_netConfMan = new QTM_PREPEND_NAMESPACE( + QNetworkConfigurationManager)(this); + connect(m_netConfMan, SIGNAL(updateCompleted()), + this, SLOT(onNetworkStatusUpdate())); + m_netConfMan->updateConfigurations(); + enableRateBtns(false); } SettingsDlg::~SettingsDlg() @@ -118,7 +116,6 @@ void SettingsDlg::showSelectRemoteDlg() connect(&dlg, SIGNAL(remoteChanged(Remote)), this, SLOT(setRemote(Remote))); dlg.exec(); - onNetworkStatusUpdate(); } void SettingsDlg::showAboutDlg() @@ -138,13 +135,16 @@ void SettingsDlg::setRemote(Remote r) void SettingsDlg::onNetworkStatusUpdate() { - if (m_netConfMan->isOnline()) { + if (m_netConfMan->isOnline() && + QSettings(this).value("remoteName", "").toString() != "") { setBusy(); m_remote.updateInfo(); enableRateBtns(); - } else { + } else if (!m_netConfMan->isOnline()) { m_ratingLabel->setText(tr("Offline")); setBusy(false); + } else { + setBusy(false); } } -- 1.7.9.5