mirror of
https://github.com/subsurface/subsurface.git
synced 2025-02-19 22:16:15 +00:00
QML UI: add the DownloadThread
For this I had to also make the DCDeviceData accessible, and for that it needed to be a pointer. Signed-off-by: Tomaz Canabrava <tcanabrava@kde.org> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
This commit is contained in:
parent
85e92597b5
commit
7858376727
5 changed files with 56 additions and 42 deletions
|
|
@ -16,19 +16,20 @@ static QString str_error(const char *fmt, ...)
|
|||
return str;
|
||||
}
|
||||
|
||||
DownloadThread::DownloadThread()
|
||||
DownloadThread::DownloadThread() : m_data(new DCDeviceData())
|
||||
{
|
||||
}
|
||||
|
||||
void DownloadThread::setDiveTable(struct dive_table* table)
|
||||
{
|
||||
m_data.setDiveTable(table);
|
||||
}
|
||||
|
||||
void DownloadThread::run()
|
||||
{
|
||||
auto internalData = m_data.internalData();
|
||||
internalData->descriptor = descriptorLookup[m_data.vendor() + m_data.product()];
|
||||
auto internalData = m_data->internalData();
|
||||
internalData->descriptor = descriptorLookup[m_data->vendor() + m_data->product()];
|
||||
internalData->download_table = &downloadTable;
|
||||
|
||||
downloadTable.nr = 0;
|
||||
qDebug() << "Starting the thread" << downloadTable.nr;
|
||||
|
||||
Q_ASSERT(internalData->download_table != nullptr);
|
||||
const char *errorText;
|
||||
import_thread_cancelled = false;
|
||||
|
|
@ -38,6 +39,8 @@ void DownloadThread::run()
|
|||
errorText = do_libdivecomputer_import(internalData);
|
||||
if (errorText)
|
||||
error = str_error(errorText, internalData->devname, internalData->vendor, internalData->product);
|
||||
|
||||
qDebug() << "Finishing the thread" << errorText << "dives downloaded" << downloadTable.nr;
|
||||
}
|
||||
|
||||
void fill_computer_list()
|
||||
|
|
@ -96,7 +99,7 @@ DCDeviceData::DCDeviceData(QObject *parent) : QObject(parent)
|
|||
data.deviceid = 0;
|
||||
}
|
||||
|
||||
DCDeviceData & DownloadThread::data()
|
||||
DCDeviceData * DownloadThread::data()
|
||||
{
|
||||
return m_data;
|
||||
}
|
||||
|
|
@ -210,8 +213,3 @@ device_data_t* DCDeviceData::internalData()
|
|||
{
|
||||
return &data;
|
||||
}
|
||||
|
||||
void DCDeviceData::setDiveTable(struct dive_table* downloadTable)
|
||||
{
|
||||
data.download_table = downloadTable;
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue