qBittorrent/src/qtlibtorrent
Ivan Sorokin e5c024967d Emit TorrentModel::dataChanged() signal only for specific rows, not for the entire table
In commit b50d733 TorrentModel moved from a periodic refresh, to using
postStatusUpdate(). In this transition I forgot to remove emition of
dataChanged() signal for the entire table.

According to my measurements this commit reduce CPU usage of qbittorrent
by a factor of 3:

Before:
   Total wall clock:                                      97.07s
   CPU time:                                              21.77s
   - Time spent in TransferListDelegate::paint():         14.60s
   - Time spent in TorrentModel::forceModelRefresh():      1.44s
   - Time spent in TorrentModel::stateUpdated():           0.02s

After:
   Total wall clock:                                      96.13s
   CPU time:                                               6.68s
   - Time spent in TransferListDelegate::paint():          2.63s
   - Time spent in TorrentModel::forceModelRefresh():     <0.01s
   - Time spent in TorrentModel::stateUpdated():           1.73s

As it is seen the time spent in painting is reduced by a factor of 6 (14.60->2.63) at
the cost of slightly increased time of notifications that model is
changed (1.44->1.73). The next commits attempt to address this issue.
2014-11-09 03:58:50 +03:00
..
alertdispatcher.cpp Make alertdispatcher.h self contained and replace include libtorrent/session with forward declaration 2014-10-18 12:19:04 +04:00
alertdispatcher.h Make alertdispatcher.h self contained and replace include libtorrent/session with forward declaration 2014-10-18 12:19:04 +04:00
bandwidthscheduler.h Migrate everything to use the new Preferences class and not access directly the qbittorrent.ini file. 2014-08-05 02:34:21 +03:00
filterparserthread.cpp Move libtorrent includes to .cpp 2014-11-05 03:10:39 +03:00
filterparserthread.h Move libtorrent includes to .cpp 2014-11-05 03:10:39 +03:00
qbtsession.cpp Merge pull request #2081 from sorokin/split 2014-11-02 16:40:41 +02:00
qbtsession.h Fix libtorrent types forward declaration errors/warnings. 2014-10-21 16:33:04 +04:00
qtlibtorrent.pri Split filterparserthread into .h and .cpp 2014-11-05 03:10:39 +03:00
qtorrenthandle.cpp Merge pull request #2092 from pmzqla/cleanup 2014-11-02 16:41:40 +02:00
qtorrenthandle.h Speedup compilation speed 2014-10-18 12:19:05 +04:00
shutdownconfirm.cpp Set 'Cancel' as the default button in the shutdown confirmation dialog. 2014-08-23 23:22:47 +03:00
shutdownconfirm.h Added 'Shutdown now' button in shutdown confirmation dialog. Closes #969. 2014-08-23 22:22:03 +03:00
torrentmodel.cpp Emit TorrentModel::dataChanged() signal only for specific rows, not for the entire table 2014-11-09 03:58:50 +03:00
torrentmodel.h Optimize torrentRow a bit 2014-11-09 03:48:58 +03:00
torrentspeedmonitor.cpp Implement O(1) SpeedSample::average() instead of O(N) 2014-11-02 20:03:49 +03:00
torrentspeedmonitor.h Fix building with Qt5 (missing QObject decl). 2014-06-04 17:38:35 +04:00
torrentstatistics.cpp Migrate everything to use the new Preferences class and not access directly the qbittorrent.ini file. 2014-08-05 02:34:21 +03:00
torrentstatistics.h extract torrent statistics from torrent speed monitor to separate file 2014-06-02 00:31:45 +04:00
trackerinfos.h Minor code clean up 2012-08-25 16:34:00 +03:00