summaryrefslogtreecommitdiffstats
path: root/qt-ui/downloadfromdivecomputer.h
diff options
context:
space:
mode:
Diffstat (limited to 'qt-ui/downloadfromdivecomputer.h')
-rw-r--r--qt-ui/downloadfromdivecomputer.h40
1 files changed, 23 insertions, 17 deletions
diff --git a/qt-ui/downloadfromdivecomputer.h b/qt-ui/downloadfromdivecomputer.h
index 26216c1e0..e10d61b38 100644
--- a/qt-ui/downloadfromdivecomputer.h
+++ b/qt-ui/downloadfromdivecomputer.h
@@ -15,20 +15,10 @@ struct device_data_t;
class DownloadThread : public QThread{
Q_OBJECT
public:
- explicit DownloadThread(device_data_t* data);
- virtual void run();
-private:
- device_data_t *data;
-};
-
-class InterfaceThread : public QThread{
- Q_OBJECT
-public:
- InterfaceThread(QObject *parent, device_data_t *data);
+ DownloadThread(QObject* parent, device_data_t* data);
virtual void run();
-signals:
- void updateInterface(int value);
+ QString error;
private:
device_data_t *data;
};
@@ -41,19 +31,30 @@ public:
static DownloadFromDCWidget *instance();
void reject();
+ enum states {
+ INITIAL,
+ DOWNLOADING,
+ CANCELLING,
+ CANCELLED,
+ ERROR,
+ DONE,
+ };
+
public slots:
void on_ok_clicked();
void on_cancel_clicked();
- void runDialog();
- void stoppedDownloading();
void on_vendor_currentIndexChanged(const QString& vendor);
+ void onDownloadThreadFinished();
+ void updateProgressBar();
+ void runDialog();
+
private:
- void markChildrenAsDisabled();
- void markChildrenAsEnabled();
+ void markChildrenAsDisabled();
+ void markChildrenAsEnabled();
Ui::DownloadFromDiveComputer *ui;
- InterfaceThread *thread;
+ DownloadThread *thread;
bool downloading;
QStringList vendorList;
@@ -65,8 +66,13 @@ private:
QStringListModel *productModel;
void fill_computer_list();
+ QTimer *timer;
+
public:
bool preferDownloaded();
+ void updateState(states state);
+ states currentState;
+
};
#endif