Cleanup: turn DiveListModel into standard singleton

DiveListModel was one of those "special" singletons that could
be created explicitly with new. This would make sense if a
parameter were passed to the constructor. We only passed null,
so one might as well turn that into a classical singleton with
default constructor.

Signed-off-by: Berthold Stoeger <bstoeger@mail.tuwien.ac.at>
This commit is contained in:
Berthold Stoeger 2019-09-28 23:05:49 +02:00 committed by Dirk Hohndel
parent 2560734624
commit 36d42a6a57
3 changed files with 5 additions and 10 deletions

View file

@ -140,11 +140,9 @@ QString DiveListSortModel::tripShortDate(const QString &section)
return QStringLiteral("%1\n'%2").arg(firstMonth,firstTime.toString("yy"));
}
DiveListModel *DiveListModel::m_instance = NULL;
DiveListModel::DiveListModel(QObject *parent) : QAbstractListModel(parent)
DiveListModel::DiveListModel()
{
m_instance = this;
LOG_STP("run_ui diveListModel started");
}
void DiveListModel::insertDive(int i)
@ -297,7 +295,8 @@ QString DiveListModel::startAddDive()
DiveListModel *DiveListModel::instance()
{
return m_instance;
static DiveListModel self;
return &self;
}
struct dive *DiveListModel::getDive(int i)

View file

@ -46,7 +46,7 @@ public:
};
static DiveListModel *instance();
DiveListModel(QObject *parent = 0);
DiveListModel();
void addDive(const QList<dive *> &listOfDives);
void addAllDives();
void insertDive(int i);
@ -64,8 +64,6 @@ public:
void resetInternalData();
void clear(); // Clear all dives in core
Q_INVOKABLE DiveObjectHelper at(int i);
private:
static DiveListModel *m_instance;
};
#endif // DIVELISTMODEL_H

View file

@ -96,8 +96,6 @@ void run_ui()
qDebug() << "QML import path" << engine.importPathList();
#endif // __APPLE__ not Q_OS_IOS
engine.addImportPath("qrc://imports");
DiveListModel diveListModel;
LOG_STP("run_ui diveListModel started");
DiveListSortModel *sortModel = new DiveListSortModel(0);
GpsListModel gpsListModel;
QSortFilterProxyModel *gpsSortModel = new QSortFilterProxyModel(nullptr);