refactored download code
[irwi] / src / settingsdlg.cpp
index b6187a3..ca5ef1d 100644 (file)
@@ -66,19 +66,16 @@ SettingsDlg::~SettingsDlg()
     delete remoteNetAM;
 }
 
+void SettingsDlg::beginDownload(const QString &url, QNetworkAccessManager *nam)
+{
+    nam->get(QNetworkRequest(QUrl(url)));
+}
+
 void SettingsDlg::alphabetItemChanged(QListWidgetItem *current, QListWidgetItem *previous)
 {
-    mfgNetAM->get(
-        QNetworkRequest(
-            QUrl(
-                settings->value(
-                    "remoteUrl",
-                    "http://mercury.wipsl.com/irwi/remotes/"
-                ).toString() 
-                + current->text() + ".txt"
-            )
-        )
-    );
+    QString url = settings->value("remoteUrl", "http://mercury.wipsl.com/irwi/remotes/").toString()
+                    + current->text() + ".txt";
+    beginDownload(url, mfgNetAM);
 }
 
 void SettingsDlg::mfgListDownloadFinished(QNetworkReply *reply)
@@ -105,18 +102,11 @@ void SettingsDlg::mfgListDownloadFinished(QNetworkReply *reply)
 void SettingsDlg::mfgItemChanged(QListWidgetItem *current, QListWidgetItem *previous)
 {
     if (mfgList->currentItem() != NULL) {
-        modelNetAM->get(
-            QNetworkRequest(
-                QUrl(
-                    settings->value(
-                        "remoteUrl",
-                        "http://mercury.wipsl.com/irwi/remotes/"
-                    ).toString() 
-                    + alphabetList->currentItem()->text()
-                    + "/" + current->text() + ".txt"
-                )
-            )
-        );
+        QString url = settings->value(
+                "remoteUrl", "http://mercury.wipsl.com/irwi/remotes/").toString() 
+            + alphabetList->currentItem()->text()
+            + "/" + current->text() + ".txt";
+        beginDownload(url, modelNetAM);
     }
 }
 
@@ -146,19 +136,12 @@ void SettingsDlg::modelItemChanged(QListWidgetItem *current, QListWidgetItem *pr
     if (current)
     {
         if (!current->text().isEmpty()) {
-             remoteNetAM->get(
-                QNetworkRequest(
-                    QUrl(
-                        settings->value(
-                            "remoteUrl",
-                            "http://mercury.wipsl.com/irwi/remotes/"
-                        ).toString() 
-                        + alphabetList->currentItem()->text()
-                        + "/" + mfgList->currentItem()->text()
-                        + "/" + current->text()
-                    )
-                )
-            );
+            QString url = settings->value(
+                    "remoteUrl", "http://mercury.wipsl.com/irwi/remotes/").toString() 
+                + alphabetList->currentItem()->text()
+                + "/" + mfgList->currentItem()->text()
+                + "/" + current->text();
+            beginDownload(url, remoteNetAM);
             settings->setValue("remoteName", current->text());
         }
     }