1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47
#include "tvshowlistwidget.h" #include "ui_tvshowlistwidget.h" TvShowListWidget::TvShowListWidget(QWidget *parent) : QWidget(parent), ui(new Ui::GuiTvShowList) { ui->setupUi(this); } TvShowListWidget::~TvShowListWidget() { delete ui; } void TvShowListWidget::set(QList<TvShow*> showList, QString title) { this->ui->treeWidget->clear(); for (int i=0; i < showList.length(); ++i) { const TvShow* show = showList.at(i); this->add(show, false); } this->sortList(); if (!title.isNull()) { this->ui->titleLabel->setText(title); } } void TvShowListWidget::add(const TvShow* show, bool sort) { QStringList strings; strings.append(show->name()); strings.append(QString("%1/%2/%3").arg( QString::number(show->episodeList().numberOfWatchedEpisodes()), QString::number(show->episodeList().numberOfEpisodes()), QString::number(show->getTotalEpisodes()) )); QTreeWidgetItem* item = new QTreeWidgetItem(strings); this->ui->treeWidget->addTopLevelItem(item); if (sort) { this->sortList(); } } void TvShowListWidget::sortList() { this->ui->treeWidget->resizeColumnToContents(0); this->ui->treeWidget->sortByColumn(0, Qt::AscendingOrder); }