mirror of
https://github.com/qbittorrent/qBittorrent.git
synced 2026-01-07 08:02:30 -06:00
TorrentContentModel: Simplify progress update code
This commit is contained in:
@@ -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();
|
||||
|
||||
@@ -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()
|
||||
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()
|
||||
|
||||
@@ -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
|
||||
{
|
||||
Q_ASSERT(!isRootItem());
|
||||
if (m_priority == prio::IGNORED)
|
||||
return -1;
|
||||
return 0;
|
||||
|
||||
if (m_size > 0)
|
||||
return m_totalDone / (double) m_size;
|
||||
|
||||
Reference in New Issue
Block a user