Cleanup: make DCDeviceData a "normal" singleton

DCDeviceData was using that weird pattern where the instance
variable was set in the constructor. There is no apparent
reason to do so, therefore convert to a "normal" singleton.

Access that directly in QMLManager instead of saving it in
a member variable first.

Signed-off-by: Berthold Stoeger <bstoeger@mail.tuwien.ac.at>
This commit is contained in:
Berthold Stoeger 2018-12-10 15:21:50 +01:00 committed by Dirk Hohndel
parent 6184f5d276
commit abf942f303
3 changed files with 25 additions and 35 deletions

View file

@ -24,7 +24,6 @@ static QString str_error(const char *fmt, ...)
return str;
}
static void updateRememberedDCs()
{
QString current = qPrefDiveComputer::vendor() + " - " + qPrefDiveComputer::product() + " - " + qPrefDiveComputer::device();
@ -254,7 +253,6 @@ void show_computer_list()
qDebug() << msg;
}
}
DCDeviceData *DCDeviceData::m_instance = NULL;
DCDeviceData::DCDeviceData()
{
@ -276,18 +274,12 @@ DCDeviceData::DCDeviceData()
#else
data.libdc_log = false;
#endif
if (m_instance) {
qDebug() << "already have an instance of DCDevieData";
return;
}
m_instance = this;
}
DCDeviceData *DCDeviceData::instance()
{
if (!m_instance)
m_instance = new DCDeviceData;
return m_instance;
static DCDeviceData self;
return &self;
}
QStringList DCDeviceData::getProductListFromVendor(const QString &vendor)