subsurface/qt-models/models.h
Tomaz Canabrava 37bd82f623 Fewer rebuilds triggered by changes in models.h
Models.h now is quite minimal, I'll keep it like that for now, until it
grows huge again. I've also cleaned a bit the headers that are using it so
only the ones that actually need the stuff that I've left behind will
actually include this file.

Signed-off-by: Tomaz Canabrava <tomaz.canabrava@intel.com>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2015-05-29 14:13:44 -07:00

49 lines
1,023 B
C++

/*
* 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 "metrics.h"
#include "../dive.h"
#include "../divelist.h"
#include "../divecomputer.h"
#include "cleanertablemodel.h"
#include "treemodel.h"
class GasSelectionModel : public QStringListModel {
Q_OBJECT
public:
static GasSelectionModel *instance();
Qt::ItemFlags flags(const QModelIndex &index) const;
virtual QVariant data(const QModelIndex &index, int role) const;
public
slots:
void repopulate();
};
class LanguageModel : public QAbstractListModel {
Q_OBJECT
public:
static LanguageModel *instance();
virtual QVariant data(const QModelIndex &index, int role = Qt::DisplayRole) const;
virtual int rowCount(const QModelIndex &parent = QModelIndex()) const;
private:
LanguageModel(QObject *parent = 0);
QStringList languages;
};
#endif // MODELS_H