Browse Source

TorrentContentModel: Simplify progress update code

adaptive-webui-19844
Christophe Dumez 13 years ago
parent
commit
f3e465c142
  1. 4
      src/torrentcontentmodelfile.cpp
  2. 12
      src/torrentcontentmodelfolder.cpp
  3. 4
      src/torrentcontentmodelitem.cpp

4
src/torrentcontentmodelfile.cpp

@ -73,10 +73,6 @@ void TorrentContentModelFile::setPriority(int new_prio, bool update_parent) @@ -73,10 +73,6 @@ void TorrentContentModelFile::setPriority(int new_prio, bool update_parent)
m_priority = new_prio;
// Reset progress if priority is 0
if (m_priority == 0)
setProgress(0);
// Update parent
if (update_parent) {
m_parentItem->updateSize();

12
src/torrentcontentmodelfolder.cpp

@ -124,10 +124,6 @@ void TorrentContentModelFolder::setPriority(int new_prio, bool update_parent) @@ -124,10 +124,6 @@ void TorrentContentModelFolder::setPriority(int new_prio, bool update_parent)
m_priority = new_prio;
// Reset progress if priority is IGNORED
if (m_priority == prio::IGNORED)
setProgress(0);
// Update parent
if (update_parent) {
m_parentItem->updateSize();
@ -154,14 +150,14 @@ void TorrentContentModelFolder::updateProgress() @@ -154,14 +150,14 @@ void TorrentContentModelFolder::updateProgress()
if (isRootItem())
return;
m_totalDone = 0;
qulonglong total_done = 0;
foreach (TorrentContentModelItem* child, m_childItems) {
if (child->priority() > 0)
m_totalDone += child->totalDone();
total_done += child->totalDone();
}
Q_ASSERT(m_totalDone <= m_size);
setProgress(m_totalDone);
Q_ASSERT(total_done <= m_size);
setProgress(total_done);
}
void TorrentContentModelFolder::updateSize()

4
src/torrentcontentmodelitem.cpp

@ -76,8 +76,6 @@ void TorrentContentModelItem::setSize(qulonglong size) @@ -76,8 +76,6 @@ void TorrentContentModelItem::setSize(qulonglong size)
void TorrentContentModelItem::setProgress(qulonglong done)
{
Q_ASSERT(!isRootItem());
if (m_priority == prio::IGNORED)
return;
m_totalDone = done;
Q_ASSERT(m_totalDone <= m_size);
@ -94,7 +92,7 @@ float TorrentContentModelItem::progress() const @@ -94,7 +92,7 @@ float TorrentContentModelItem::progress() const
{
Q_ASSERT(!isRootItem());
if (m_priority == prio::IGNORED)
return -1;
return 0;
if (m_size > 0)
return m_totalDone / (double) m_size;

Loading…
Cancel
Save