subsurface/qt-ui/profile
Tomaz Canabrava 633dd64d2f Major speedup when moving the mouse in the profile
After looking with great care at the result of the mouse movement
on the profile, and also playing a bit with callgrind I've found
out that one thing that we were doing wrong was the way we looked at the
items in the scene, by calling scene()->items with
Qt::ItemIntersectsShape, our shapes are very complex curves
with thousends of points and we have lots of them. and it usually
doesn't matter because *most* of the time we are getting the
tooltip information from 'get_plot_details_new', so no accessing
to items was necessary.

By changing the access from Qt::ItemIntersectsShape to
Qt::IntersectsItemBoundingRect we had a speedup of almost 500x in a
section of code that's very important, and the good thing, nothing bad
happened because one of the only things that we are using this code is to
get information from the events, not the curves.

Signed-off-by: Tomaz Canabrava <tomaz.canabrava@intel.com>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2015-01-15 07:20:35 +13:00
..
animationfunctions.cpp Add a new 'show' Animation, and use it on the close button. 2014-07-30 14:15:09 -07:00
animationfunctions.h Add a new 'show' Animation, and use it on the close button. 2014-07-30 14:15:09 -07:00
divecartesianaxis.cpp Remove unused static function 2014-08-06 10:59:26 -07:00
divecartesianaxis.h Make the Axis set the changed flag when a new line is set 2014-07-29 15:33:00 -07:00
diveeventitem.cpp Extend SAMPLE_EVENT_GASCHANGE2 to have cylinder index in 'flags' field 2015-01-03 21:36:51 -08:00
diveeventitem.h Fix memleak on Pixmap cache 2014-11-14 13:45:54 -08:00
divelineitem.cpp Code cleanup: removed bogus animation functions 2014-07-11 17:01:12 -07:00
divelineitem.h Code cleanup: removed bogus animation functions 2014-07-11 17:01:12 -07:00
divepixmapitem.cpp Move the Trash bin to the topRight on the pictures 2014-08-07 13:12:32 -07:00
divepixmapitem.h Delete pictures from the Widget by pressing delete 2014-08-06 18:32:28 -07:00
diveplotdatamodel.cpp Display CCR setpoint values on the po2 graph 2015-01-05 09:18:06 -08:00
diveplotdatamodel.h Display CCR setpoint values on the po2 graph 2015-01-05 09:18:06 -08:00
diveprofileitem.cpp Remove instantMeanDepthLine 2015-01-14 12:24:57 +13:00
diveprofileitem.h Remove instantMeanDepthLine 2015-01-14 12:24:57 +13:00
diverectitem.cpp Massive automated whitespace cleanup 2014-02-27 20:09:57 -08:00
diverectitem.h Massive automated whitespace cleanup 2014-02-27 20:09:57 -08:00
divetextitem.cpp Code cleanup: removed bogus animation functions 2014-07-11 17:01:12 -07:00
divetextitem.h Code cleanup: removed bogus animation functions 2014-07-11 17:01:12 -07:00
divetooltipitem.cpp Major speedup when moving the mouse in the profile 2015-01-15 07:20:35 +13:00
divetooltipitem.h Unify icon metrics 2014-10-18 15:16:15 -07:00
profilewidget2.cpp Remove instantMeanDepthLine 2015-01-14 12:24:57 +13:00
profilewidget2.h Remove instantMeanDepthLine 2015-01-14 12:24:57 +13:00
ruleritem.cpp Ruler: fix weird behaviour near x = 0 2014-11-17 21:04:27 +00:00
ruleritem.h Simplify ruler update code. 2014-06-01 15:42:32 -07:00
tankitem.cpp Give oxygen a proper colour in the tankbar 2015-01-05 13:30:47 -08:00
tankitem.h Give oxygen a proper colour in the tankbar 2015-01-05 13:30:47 -08:00