1
0
mirror of https://github.com/d47081/qBittorrent.git synced 2025-02-02 09:55:55 +00:00

- Display piece_availability bar when we have something to display (torrent has metadata, torrent is not paused/queued/checking/seeding)

This commit is contained in:
Christophe Dumez 2009-12-02 20:41:59 +00:00
parent df5f5a943b
commit eca262f5f4
2 changed files with 21 additions and 12 deletions

View File

@ -132,14 +132,21 @@ PropertiesWidget::~PropertiesWidget() {
delete actionHigh; delete actionHigh;
} }
void PropertiesWidget::showPieceBars(bool show) {
void PropertiesWidget::showPiecesAvailability(bool show) {
avail_pieces_lbl->setVisible(show); avail_pieces_lbl->setVisible(show);
pieces_availability->setVisible(show); pieces_availability->setVisible(show);
avail_average_lbl->setVisible(show);
if(show || (!show && !downloaded_pieces->isVisible()))
line_2->setVisible(show);
}
void PropertiesWidget::showPiecesDownloaded(bool show) {
downloaded_pieces_lbl->setVisible(show); downloaded_pieces_lbl->setVisible(show);
downloaded_pieces->setVisible(show); downloaded_pieces->setVisible(show);
progress_lbl->setVisible(show); progress_lbl->setVisible(show);
line_2->setVisible(show); if(show || (!show && !pieces_availability->isVisible()))
avail_average_lbl->setVisible(show); line_2->setVisible(show);
} }
void PropertiesWidget::reduce() { void PropertiesWidget::reduce() {
@ -191,7 +198,8 @@ void PropertiesWidget::clear() {
shareRatio->clear(); shareRatio->clear();
listWebSeeds->clear(); listWebSeeds->clear();
PropListModel->clear(); PropListModel->clear();
showPieceBars(false); showPiecesAvailability(false);
showPiecesDownloaded(false);
setEnabled(false); setEnabled(false);
} }
@ -213,10 +221,6 @@ void PropertiesWidget::loadTorrentInfos(QTorrentHandle &_h) {
setEnabled(true); setEnabled(true);
try { try {
if(!h.is_seed())
showPieceBars(true);
else
showPieceBars(false);
// Save path // Save path
save_path->setText(TorrentPersistentData::getSavePath(h.hash())); save_path->setText(TorrentPersistentData::getSavePath(h.hash()));
// Creation date // Creation date
@ -327,20 +331,24 @@ void PropertiesWidget::loadDynamicData() {
else else
shareRatio->setText(QString(QByteArray::number(ratio, 'f', 1))); shareRatio->setText(QString(QByteArray::number(ratio, 'f', 1)));
if(!h.is_seed()) { if(!h.is_seed()) {
showPieceBars(true); showPiecesDownloaded(true);
// Downloaded pieces // Downloaded pieces
downloaded_pieces->setProgress(h.pieces()); downloaded_pieces->setProgress(h.pieces());
// Pieces availability // Pieces availability
if(h.has_metadata()) { if(h.has_metadata() && !h.is_paused() && !h.is_queued() && !h.is_checking()) {
showPiecesAvailability(true);
std::vector<int> avail; std::vector<int> avail;
h.piece_availability(avail); h.piece_availability(avail);
double avail_average = pieces_availability->setAvailability(avail); double avail_average = pieces_availability->setAvailability(avail);
avail_average_lbl->setText(QString::number(avail_average, 'f', 1)); avail_average_lbl->setText(QString::number(avail_average, 'f', 1));
} else {
showPiecesAvailability(false);
} }
// Progress // Progress
progress_lbl->setText(QString::number(h.progress()*100., 'f', 1)+"%"); progress_lbl->setText(QString::number(h.progress()*100., 'f', 1)+"%");
} else { } else {
showPieceBars(false); showPiecesAvailability(false);
showPiecesDownloaded(false);
} }
return; return;
} }

View File

@ -95,7 +95,8 @@ protected slots:
void displayFilesListMenu(const QPoint& pos); void displayFilesListMenu(const QPoint& pos);
void on_changeSavePathButton_clicked(); void on_changeSavePathButton_clicked();
void filteredFilesChanged(); void filteredFilesChanged();
void showPieceBars(bool show); void showPiecesDownloaded(bool show);
void showPiecesAvailability(bool show);
public slots: public slots:
void loadDynamicData(); void loadDynamicData();