diff options
-rw-r--r-- | dives/test28.xml | 1 | ||||
-rw-r--r-- | qt-ui/profilegraphics.cpp | 36 | ||||
-rw-r--r-- | qt-ui/profilegraphics.h | 3 | ||||
-rw-r--r-- | subsurface.qrc | 1 |
4 files changed, 9 insertions, 32 deletions
diff --git a/dives/test28.xml b/dives/test28.xml index 2a7303650..44d6b90d8 100644 --- a/dives/test28.xml +++ b/dives/test28.xml @@ -9,6 +9,7 @@ <temperature air='25.2 C' water='24.8 C' /> <surface pressure='1.024 bar' /> <event time='0:10 min' name='Tank Pressure Info' /> + <event time='0:40 min' name='bookmark' /> <sample time='0:05 min' depth='1.77 m' temp='25.2 C' pressure='79.65 bar' ndl='99:00 min' /> <sample time='0:10 min' depth='1.67 m' pressure='79.53 bar' /> <sample time='0:16 min' depth='1.84 m' pressure='79.27 bar' /> diff --git a/qt-ui/profilegraphics.cpp b/qt-ui/profilegraphics.cpp index bdbc00346..a1085ab76 100644 --- a/qt-ui/profilegraphics.cpp +++ b/qt-ui/profilegraphics.cpp @@ -1626,37 +1626,13 @@ QColor EventItem::getColor(const color_indice_t i) return profile_color[i].at((isGrayscale) ? 1 : 0); } -EventItem::EventItem(struct event *ev, QGraphicsItem* parent, bool grayscale): QGraphicsPolygonItem(parent), ev(ev), isGrayscale(grayscale) +EventItem::EventItem(struct event *ev, QGraphicsItem* parent, bool grayscale): QGraphicsPixmapItem(parent), ev(ev), isGrayscale(grayscale) { - setFlag(ItemIgnoresTransformations); - setFlag(ItemIsFocusable); - setAcceptHoverEvents(true); - - QPolygonF poly; - poly.push_back(QPointF(-8, 16)); - poly.push_back(QPointF(8, 16)); - poly.push_back(QPointF(0, 0)); - poly.push_back(QPointF(-8, 16)); - - QPen defaultPen ; - defaultPen.setJoinStyle(Qt::RoundJoin); - defaultPen.setCapStyle(Qt::RoundCap); - defaultPen.setWidth(2); - defaultPen.setCosmetic(true); - - QPen pen = defaultPen; - pen.setBrush(QBrush(getColor(ALERT_BG))); - - setPolygon(poly); - setBrush(QBrush(getColor(ALERT_BG))); - setPen(pen); - - QGraphicsLineItem *line = new QGraphicsLineItem(0, 5, 0, 10, this); - line->setPen(QPen(getColor(ALERT_FG), 2)); - - QGraphicsEllipseItem *ball = new QGraphicsEllipseItem(-1, 12, 2, 2, this); - ball->setBrush(QBrush(getColor(ALERT_FG))); - ball->setPen(QPen(getColor(ALERT_FG))); + if(ev->name && strcmp(ev->name, "bookmark") == 0) { + setPixmap( QPixmap(QString(":flag")).scaled(20, 20, Qt::KeepAspectRatio, Qt::SmoothTransformation)); + } else { + setPixmap( QPixmap(QString(":warning")).scaled(20, 20, Qt::KeepAspectRatio, Qt::SmoothTransformation)); + } } RulerNodeItem::RulerNodeItem(QGraphicsItem *parent, graphics_context context) : QGraphicsEllipseItem(parent), gc(context), entry(NULL) , ruler(NULL) diff --git a/qt-ui/profilegraphics.h b/qt-ui/profilegraphics.h index 2cd5b44d2..be9c707ba 100644 --- a/qt-ui/profilegraphics.h +++ b/qt-ui/profilegraphics.h @@ -97,7 +97,7 @@ private: int paint_direction; }; -class EventItem : public QGraphicsPolygonItem +class EventItem : public QGraphicsPixmapItem { public: explicit EventItem(struct event *ev, QGraphicsItem* parent = 0, bool grayscale = FALSE); @@ -106,7 +106,6 @@ public: private: ToolTipItem *controller; QString text; - QIcon icon; bool isGrayscale; QColor getColor(const color_indice_t i); diff --git a/subsurface.qrc b/subsurface.qrc index 04f56a459..eb87675c5 100644 --- a/subsurface.qrc +++ b/subsurface.qrc @@ -20,6 +20,7 @@ <file alias="scale">icons/scale.png</file> <!-- <file alias="ruler">icons/ruler.svg</file> --> <file alias="ruler">icons/ruler.png</file> + <file alias="flag">icons/flag.png</file> <file alias="arrow_up">icons/planner/arrow_up.png</file> <file alias="arrow_down">icons/planner/arrow_down.png</file> <file alias="icon_time">icons/planner/icon_time.png</file> |