subsurface/profile-widget/tankitem.h
Tomaz Canabrava 1d6683f3e0 Move Profile widget out of desktop-widgets
The reason for that is, even if profile widget is made with qpainter
and for that reason it should be a desktop widget, it's being used
on the mobile version because of a lack of QML plotting library that
is fast and reliable.

We discovered that it was faster just to encapsulate our Profile in
a QML class and call it directly.

Signed-off-by: Tomaz Canabrava <tomaz.canabrava@intel.com>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2015-10-30 10:36:49 -07:00

39 lines
935 B
C++

#ifndef TANKITEM_H
#define TANKITEM_H
#include <QGraphicsItem>
#include <QModelIndex>
#include <QBrush>
#include "divelineitem.h"
#include "divecartesianaxis.h"
#include "dive.h"
class TankItem : public QObject, public QGraphicsRectItem
{
Q_OBJECT
public:
explicit TankItem(QObject *parent = 0);
~TankItem();
void setHorizontalAxis(DiveCartesianAxis *horizontal);
void setData(DivePlotDataModel *model, struct plot_info *plotInfo, struct dive *d);
signals:
public slots:
virtual void modelDataChanged(const QModelIndex &topLeft = QModelIndex(), const QModelIndex &bottomRight = QModelIndex());
private:
void createBar(qreal x, qreal w, struct gasmix *gas);
DivePlotDataModel *dataModel;
DiveCartesianAxis *hAxis;
int hDataColumn;
struct dive diveCylinderStore;
struct plot_data *pInfoEntry;
int pInfoNr;
qreal height;
QBrush air, nitrox, oxygen, trimix;
QList<QGraphicsRectItem *> rects;
};
#endif // TANKITEM_H