subsurface/qt-models/divetripmodel.h
Berthold Stoeger 1c4a859c8d Cleanup: remove all override modifiers
Commit df156a56c0 replaced "virtual"
by "override" where appropriate. Unfortunately, this had the
unintended consequence of producing numerous clang warnings. If
clang finds a override-modified function in a class definition,
it warns for *all* overriden virtual functions without the override
modifier.

To solve this, go the easy route and remove all overrides. At least
it is consistent.

Signed-off-by: Berthold Stoeger <bstoeger@mail.tuwien.ac.at>
2018-08-01 06:30:00 -07:00

109 lines
2 KiB
C++

// SPDX-License-Identifier: GPL-2.0
#ifndef DIVETRIPMODEL_H
#define DIVETRIPMODEL_H
#include "treemodel.h"
#include "core/dive.h"
#include <string>
struct DiveItem : public TreeItem {
Q_DECLARE_TR_FUNCTIONS(TripItem)
public:
enum Column {
NR,
DATE,
RATING,
DEPTH,
DURATION,
TEMPERATURE,
TOTALWEIGHT,
SUIT,
CYLINDER,
GAS,
SAC,
OTU,
MAXCNS,
TAGS,
PHOTOS,
COUNTRY,
LOCATION,
COLUMNS
};
QVariant data(int column, int role) const;
int diveId;
bool setData(const QModelIndex &index, const QVariant &value, int role = Qt::EditRole);
Qt::ItemFlags flags(const QModelIndex &index) const;
QString displayDate() const;
QString displayDuration() const;
QString displayDepth() const;
QString displayDepthWithUnit() const;
QString displayTemperature() const;
QString displayTemperatureWithUnit() const;
QString displayWeight() const;
QString displayWeightWithUnit() const;
QString displaySac() const;
QString displaySacWithUnit() const;
QString displayTags() const;
int countPhotos(dive *dive) const;
int weight() const;
};
struct TripItem : public TreeItem {
Q_DECLARE_TR_FUNCTIONS(TripItem)
public:
QVariant data(int column, int role) const;
dive_trip_t *trip;
};
class DiveTripModel : public TreeModel {
Q_OBJECT
public:
enum Column {
NR,
DATE,
RATING,
DEPTH,
DURATION,
TEMPERATURE,
TOTALWEIGHT,
SUIT,
CYLINDER,
GAS,
SAC,
OTU,
MAXCNS,
TAGS,
PHOTOS,
COUNTRY,
LOCATION,
COLUMNS
};
enum ExtraRoles {
STAR_ROLE = Qt::UserRole + 1,
DIVE_ROLE,
TRIP_ROLE,
SORT_ROLE,
DIVE_IDX
};
enum Layout {
TREE,
LIST,
CURRENT
};
Qt::ItemFlags flags(const QModelIndex &index) const;
QVariant headerData(int section, Qt::Orientation orientation, int role = Qt::DisplayRole) const;
bool setData(const QModelIndex &index, const QVariant &value, int role = Qt::EditRole);
DiveTripModel(QObject *parent = 0);
Layout layout() const;
void setLayout(Layout layout);
private:
void setupModelData();
QMap<dive_trip_t *, TripItem *> trips;
Layout currentLayout;
};
#endif