refactored download code
[irwi] / src / settingsdlg.h
1 #ifndef SETTINGSDLG_H
2 #define SETTINGSDLG_H
3
4 #include <QDialog>
5 #include <QString>
6
7 class QHBoxLayout;
8 class QListWidget;
9 class QListWidgetItem;
10 class QSettings;
11 class QNetworkAccessManager;
12 class QNetworkReply;
13
14 class SettingsDlg : public QDialog
15 {
16     Q_OBJECT
17 public:
18     SettingsDlg(QWidget *parent = 0);
19     ~SettingsDlg();
20
21 private slots:
22     void alphabetItemChanged(QListWidgetItem *current, QListWidgetItem *previous);
23     
24     void mfgItemChanged(QListWidgetItem *current, QListWidgetItem *previous);
25     void mfgListDownloadFinished(QNetworkReply *reply);
26
27     void modelItemChanged(QListWidgetItem *current, QListWidgetItem *previous);
28     void modelListDownloadFinished(QNetworkReply *reply);
29
30     void remoteDownloadFinished(QNetworkReply *reply);
31
32 private:
33     QHBoxLayout *layout;
34     QListWidget *alphabetList;
35     QListWidget *mfgList;
36     QListWidget *modelList;
37     QSettings *settings;
38     QNetworkAccessManager *mfgNetAM;
39     QNetworkAccessManager *modelNetAM;
40     QNetworkAccessManager *remoteNetAM;
41
42     void beginDownload(const QString &url, QNetworkAccessManager *nam);
43 };
44
45 #endif
46