subsurface/qt-models/models.h
Berthold Stoeger 1fb9d6236b planner: initialize dive selection mode in constructor
There is no point in repopulating this regularly, as the
content does not change.

Signed-off-by: Berthold Stoeger <bstoeger@mail.tuwien.ac.at>
2023-04-16 20:23:59 +02:00

53 lines
1.2 KiB
C++

// SPDX-License-Identifier: GPL-2.0
/*
* models.h
*
* header file for the equipment models of Subsurface
*
*/
#ifndef MODELS_H
#define MODELS_H
#include <QAbstractTableModel>
#include <QStringList>
#include <QStringListModel>
#include <QSortFilterProxyModel>
#include <QPixmap>
#include "core/metrics.h"
#include "cleanertablemodel.h"
#include "treemodel.h"
struct dive;
class GasSelectionModel : public QStringListModel {
Q_OBJECT
public:
Qt::ItemFlags flags(const QModelIndex &index) const;
QVariant data(const QModelIndex &index, int role) const override;
void repopulate(const dive *d);
};
class DiveTypeSelectionModel : public QStringListModel {
Q_OBJECT
public:
DiveTypeSelectionModel();
Qt::ItemFlags flags(const QModelIndex &index) const;
QVariant data(const QModelIndex &index, int role) const override;
};
class LanguageModel : public QAbstractListModel {
Q_OBJECT
public:
static LanguageModel *instance();
QVariant data(const QModelIndex &index, int role = Qt::DisplayRole) const override;
int rowCount(const QModelIndex &parent = QModelIndex()) const override;
private:
LanguageModel(QObject *parent = 0);
QStringList languages;
};
#endif // MODELS_H