aboutsummaryrefslogtreecommitdiffstats
path: root/qt-ui/profile
diff options
context:
space:
mode:
authorGravatar Dirk Hohndel <dirk@hohndel.org>2014-02-23 08:35:06 -0800
committerGravatar Dirk Hohndel <dirk@hohndel.org>2014-02-23 08:35:06 -0800
commitf5862201a86051191290887414c5ed05fd450853 (patch)
treeef3790b640fce6948e1ba26714b1cb9a79de552b /qt-ui/profile
parent48db63736b246a4731e8f907cd0990388862b8df (diff)
downloadsubsurface-f5862201a86051191290887414c5ed05fd450853.tar.gz
Don't try to setup event if it is NULL
This also fixes the whitespace in a function that I instrumented to figure out what's going on. I restored it to its original state, but I couldn't leave the whitespace unfixed... Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
Diffstat (limited to 'qt-ui/profile')
-rw-r--r--qt-ui/profile/diveeventitem.cpp16
1 files changed, 9 insertions, 7 deletions
diff --git a/qt-ui/profile/diveeventitem.cpp b/qt-ui/profile/diveeventitem.cpp
index 92aad1fc4..fc852da64 100644
--- a/qt-ui/profile/diveeventitem.cpp
+++ b/qt-ui/profile/diveeventitem.cpp
@@ -33,6 +33,8 @@ void DiveEventItem::setVerticalAxis(DiveCartesianAxis* axis)
void DiveEventItem::setEvent(struct event* ev)
{
+ if (!ev)
+ return;
internalEvent = ev;
setupPixmap();
setupToolTipString();
@@ -109,23 +111,23 @@ void DiveEventItem::eventVisibilityChanged(const QString& eventName, bool visibl
void DiveEventItem::recalculatePos(bool instant)
{
- if (!vAxis || !hAxis || !internalEvent || !dataModel) {
+ if (!vAxis || !hAxis || !internalEvent || !dataModel)
return;
- }
+
QModelIndexList result = dataModel->match(dataModel->index(0,DivePlotDataModel::TIME), Qt::DisplayRole, internalEvent->time.seconds );
if (result.isEmpty()) {
+ Q_ASSERT("can't find a spot in the dataModel");
hide();
return;
}
- if (!isVisible()) {
+ if (!isVisible())
show();
- }
+
int depth = dataModel->data(dataModel->index(result.first().row(), DivePlotDataModel::DEPTH)).toInt();
qreal x = hAxis->posAtValue(internalEvent->time.seconds);
qreal y = vAxis->posAtValue(depth);
- if (!instant){
+ if (!instant)
Animations::moveTo(this, x, y, 500);
- }else{
+ else
setPos(x,y);
- }
}