From b1c526ddb4508a0694e46a6e48a1b0f900072f37 Mon Sep 17 00:00:00 2001 From: Tomaz Canabrava Date: Thu, 20 Jun 2013 13:39:41 -0300 Subject: Fix creation of the poligon-based lines for the dive planner This fixes the creation of the poligon-based lines next thing to do is to forbit creation of the next point before the last one. Signed-off-by: Tomaz Canabrava --- qt-ui/diveplanner.cpp | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) (limited to 'qt-ui/diveplanner.cpp') diff --git a/qt-ui/diveplanner.cpp b/qt-ui/diveplanner.cpp index a22efb200..0176e2c85 100644 --- a/qt-ui/diveplanner.cpp +++ b/qt-ui/diveplanner.cpp @@ -1,6 +1,6 @@ #include "diveplanner.h" #include -#include +#include DivePlanner* DivePlanner::instance() { @@ -26,18 +26,22 @@ void DivePlanner::mouseDoubleClickEvent(QMouseEvent* event) if (lines.empty()){ QGraphicsLineItem *first = new QGraphicsLineItem(0,0, mappedPos.x(), mappedPos.y()); - lines << first; + lines.push_back(first); create_deco_stop(); scene()->addItem(first); }else{ clear_generated_deco(); + QGraphicsEllipseItem *prevHandle = handles.at( handles.count()-2); + QGraphicsLineItem *line = new QGraphicsLineItem(prevHandle->x(), prevHandle->y(), item->x(), item->y()); + lines.push_back(line); + scene()->addItem(line); create_deco_stop(); } } void DivePlanner::clear_generated_deco() { - for(int i = handles.count(); i < lines.count(); i++){ + for(int i = handles.count(); i <= lines.count(); i++){ scene()->removeItem(lines.last()); delete lines.last(); lines.removeLast(); -- cgit v1.2.3-70-g09d2