mirror of
https://github.com/subsurface/subsurface.git
synced 2024-11-28 05:00:20 +00:00
a55efcf7d8
fill_computer_list() creates a Qt friendly structure that contains all of the necessary information about dive computers and it's devices, and it's needed both in Qml and Widgets to allow the user to download their dives. This patch makes it possible to use the code in QML without duplication. Signed-off-by: Tomaz Canabrava <tcanabrava@kde.org> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
52 lines
1,023 B
C++
52 lines
1,023 B
C++
#ifndef DOWNLOADFROMDCTHREAD_H
|
|
#define DOWNLOADFROMDCTHREAD_H
|
|
|
|
#include <QThread>
|
|
#include <QMap>
|
|
#include <QHash>
|
|
|
|
#include "dive.h"
|
|
#include "libdivecomputer.h"
|
|
|
|
class DownloadThread : public QThread {
|
|
Q_OBJECT
|
|
public:
|
|
DownloadThread(QObject *parent, device_data_t *data);
|
|
void setDiveTable(struct dive_table *table);
|
|
void run() override;
|
|
|
|
QString error;
|
|
|
|
private:
|
|
device_data_t *data;
|
|
};
|
|
|
|
struct product {
|
|
const char *product;
|
|
dc_descriptor_t *descriptor;
|
|
struct product *next;
|
|
};
|
|
|
|
struct vendor {
|
|
const char *vendor;
|
|
struct product *productlist;
|
|
struct vendor *next;
|
|
};
|
|
|
|
struct mydescriptor {
|
|
const char *vendor;
|
|
const char *product;
|
|
dc_family_t type;
|
|
unsigned int model;
|
|
};
|
|
|
|
/* This fills the vendor list QStringList and related members.
|
|
* this code needs to be reworked to be less ugly, but it will
|
|
* stay like this for now.
|
|
*/
|
|
void fill_computer_list();
|
|
extern QStringList vendorList;
|
|
extern QHash<QString, QStringList> productList;
|
|
extern QMap<QString, dc_descriptor_t *> descriptorLookup;
|
|
|
|
#endif
|