From ac40c458facfa4f641c1cf2a2384d955431cdb7c Mon Sep 17 00:00:00 2001 From: Tomaz Canabrava Date: Fri, 16 Jan 2015 16:45:13 -0200 Subject: Reduce the refresh rate of the toolTipItem to 25fps. This reduces a lot of CPU time and makes the overall use of the tooltip a breeze. Signed-off-by: Tomaz Canabrava Signed-off-by: Dirk Hohndel --- qt-ui/profile/divetooltipitem.cpp | 5 +++++ qt-ui/profile/divetooltipitem.h | 3 ++- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/qt-ui/profile/divetooltipitem.cpp b/qt-ui/profile/divetooltipitem.cpp index 821c4a695..e89feff9c 100644 --- a/qt-ui/profile/divetooltipitem.cpp +++ b/qt-ui/profile/divetooltipitem.cpp @@ -159,6 +159,7 @@ ToolTipItem::ToolTipItem(QGraphicsItem *parent) : QGraphicsRectItem(parent), title->setBrush(Qt::white); setPen(QPen(Qt::white, 2)); + refreshTime.start(); } ToolTipItem::~ToolTipItem() @@ -240,6 +241,10 @@ void ToolTipItem::refresh(const QPointF &pos) static QPainter painter(&tissues); static struct membuffer mb = { 0 }; + if(refreshTime.elapsed() < 40) + return; + refreshTime.start(); + int time = timeAxis->valueAt(pos); if (time == lastTime) return; diff --git a/qt-ui/profile/divetooltipitem.h b/qt-ui/profile/divetooltipitem.h index 6235ec8d9..4fa7ec2d7 100644 --- a/qt-ui/profile/divetooltipitem.h +++ b/qt-ui/profile/divetooltipitem.h @@ -6,6 +6,7 @@ #include #include #include +#include #include "display.h" class DiveCartesianAxis; @@ -59,7 +60,7 @@ private: DiveCartesianAxis *timeAxis; plot_info pInfo; int lastTime; - + QTime refreshTime; QList oldSelection; }; -- cgit v1.2.3-70-g09d2