Add the gas presssure profile texts.

This just adds the texts for the gas profile. I've also added a method on
the dataModel() to return the diveId of the last used dive in a way that
the other methods can use it.

This code is almost 1-to-1 with the old one, a bit of thinkering can be
used to merge this loop with the upper one.

Signed-off-by: Tomaz Canabrava <tcanabrava@kde.org>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
This commit is contained in:
Tomaz Canabrava 2014-01-21 14:05:29 -02:00 committed by Dirk Hohndel
parent 21d34db3a9
commit 9d33640bea
4 changed files with 66 additions and 9 deletions

View file

@ -18,6 +18,7 @@
This is a generically item and should be used as a base for others, I think...
*/
class DivePlotDataModel;
class DiveTextItem;
class DiveCartesianAxis;
class QAbstractTableModel;
@ -32,7 +33,7 @@ public:
AbstractProfilePolygonItem();
void setVerticalAxis(DiveCartesianAxis *vertical);
void setHorizontalAxis(DiveCartesianAxis *horizontal);
void setModel(QAbstractTableModel *model);
void setModel(DivePlotDataModel *model);
void setHorizontalDataColumn(int column);
void setVerticalDataColumn(int column);
virtual void paint(QPainter* painter, const QStyleOptionGraphicsItem* option, QWidget* widget = 0) = 0;
@ -41,7 +42,7 @@ public slots:
protected:
DiveCartesianAxis *hAxis;
DiveCartesianAxis *vAxis;
QAbstractTableModel *dataModel;
DivePlotDataModel *dataModel;
int hDataColumn;
int vDataColumn;
QList<DiveTextItem*> texts;
@ -69,13 +70,13 @@ private:
class DiveGasPressureItem : public AbstractProfilePolygonItem{
Q_OBJECT
public:
virtual void modelDataChanged();
virtual void paint(QPainter* painter, const QStyleOptionGraphicsItem* option, QWidget* widget = 0);
private:
void plot_pressure_value(int mbar, int sec, QFlags<Qt::AlignmentFlag> align);
QVector<QPolygonF> polygons;
};
QGraphicsItemGroup *plotText(text_render_options_t *tro,const QPointF& pos, const QString& text, QGraphicsItem *parent);
#endif