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);
}