diff options
author | Tomaz Canabrava <tomaz.canabrava@intel.com> | 2015-09-03 15:56:37 -0300 |
---|---|---|
committer | Dirk Hohndel <dirk@hohndel.org> | 2015-10-30 10:36:49 -0700 |
commit | 1d6683f3e07d9a73af5fab702bc3a551ec7dabc9 (patch) | |
tree | 80a64ced06489bf0dca866b2097ca7048b1f0ab8 /profile-widget/divetextitem.h | |
parent | 50ec7200e66637abefe685e1875f3d4de2101158 (diff) | |
download | subsurface-1d6683f3e07d9a73af5fab702bc3a551ec7dabc9.tar.gz |
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>
Diffstat (limited to 'profile-widget/divetextitem.h')
-rw-r--r-- | profile-widget/divetextitem.h | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/profile-widget/divetextitem.h b/profile-widget/divetextitem.h new file mode 100644 index 000000000..be0adf292 --- /dev/null +++ b/profile-widget/divetextitem.h @@ -0,0 +1,38 @@ +#ifndef DIVETEXTITEM_H +#define DIVETEXTITEM_H + +#include <QObject> +#include <QGraphicsItemGroup> + +class QBrush; + +/* A Line Item that has animated-properties. */ +class DiveTextItem : public QObject, public QGraphicsItemGroup { + Q_OBJECT + Q_PROPERTY(QPointF pos READ pos WRITE setPos) + Q_PROPERTY(qreal opacity READ opacity WRITE setOpacity) +public: + DiveTextItem(QGraphicsItem *parent = 0); + void setText(const QString &text); + void setAlignment(int alignFlags); + void setScale(double newscale); + void setBrush(const QBrush &brush); + const QString &text(); + void paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget); + +private +slots: + void fontPrintScaleUpdate(double scale); + +private: + void updateText(); + int internalAlignFlags; + QGraphicsPathItem *textBackgroundItem; + QGraphicsPathItem *textItem; + QString internalText; + double printScale; + double scale; + bool connected; +}; + +#endif // DIVETEXTITEM_H |