diff --git a/src/pieceavailabilitybar.h b/src/pieceavailabilitybar.h index 9426eb7d8..180600e24 100644 --- a/src/pieceavailabilitybar.h +++ b/src/pieceavailabilitybar.h @@ -50,7 +50,8 @@ public: setFixedHeight(BAR_HEIGHT); } - void setAvailability(std::vector& avail) { + double setAvailability(std::vector& avail) { + double average = 0; if(avail.empty()) { // Empty bar pixmap = QPixmap(1, 1); @@ -59,7 +60,7 @@ public: painter.drawPoint(0,0); } else { // Look for maximum value - double average = std::accumulate(avail.begin(), avail.end(), 0)/(double)avail.size(); + average = std::accumulate(avail.begin(), avail.end(), 0)/(double)avail.size(); uint nb_pieces = avail.size(); pixmap = QPixmap(nb_pieces, 1); QPainter painter(&pixmap); @@ -70,6 +71,7 @@ public: } } update(); + return average; } void clear() { diff --git a/src/propertieswidget.cpp b/src/propertieswidget.cpp index 0365864e2..16cbcaef0 100644 --- a/src/propertieswidget.cpp +++ b/src/propertieswidget.cpp @@ -139,6 +139,7 @@ void PropertiesWidget::showPieceBars(bool show) { downloaded_pieces->setVisible(show); progress_lbl->setVisible(show); line_2->setVisible(show); + avail_average_lbl->setVisible(show); } void PropertiesWidget::reduce() { @@ -178,6 +179,7 @@ void PropertiesWidget::clear() { trackerList->clear(); downloaded_pieces->clear(); pieces_availability->clear(); + avail_average_lbl->clear(); wasted->clear(); upTotal->clear(); dlTotal->clear(); @@ -329,7 +331,8 @@ void PropertiesWidget::loadDynamicData() { // Pieces availability std::vector avail; h.piece_availability(avail); - pieces_availability->setAvailability(avail); + double avail_average = pieces_availability->setAvailability(avail); + avail_average_lbl->setText(QString::number(avail_average, 'f', 1)); // Progress progress_lbl->setText(QString::number(h.progress()*100., 'f', 1)+"%"); } diff --git a/src/ui/propertieswidget.ui b/src/ui/propertieswidget.ui index 8fc5b4d4c..98d77e169 100644 --- a/src/ui/propertieswidget.ui +++ b/src/ui/propertieswidget.ui @@ -135,7 +135,7 @@ - + 50 @@ -143,7 +143,10 @@ - + 0.0 + + + Qt::AlignCenter