1 #include "loadingwidget.h"
3 LoadingWidget::LoadingWidget(QWidget *parent) : QWidget(parent) {
5 QPalette p = palette();
6 p.setBrush(QPalette::Window, Qt::black);
7 p.setBrush(QPalette::Text, Qt::white);
10 setAutoFillBackground(true);
12 QBoxLayout *layout = new QVBoxLayout();
13 layout->setAlignment(Qt::AlignCenter);
16 bigFont.setPointSize(bigFont.pointSize()*4);
18 titleLabel = new QLabel(this);
19 titleLabel->setAlignment(Qt::AlignCenter);
20 titleLabel->setForegroundRole(QPalette::Text);
21 titleLabel->setWordWrap(true);
22 titleLabel->setFont(bigFont);
23 titleLabel->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding);
24 layout->addWidget(titleLabel);
27 biggerFont.setPointSize(biggerFont.pointSize()*2);
29 descriptionLabel = new QLabel(this);
30 descriptionLabel->setAlignment(Qt::AlignCenter);
31 descriptionLabel->setForegroundRole(QPalette::Text);
32 descriptionLabel->setWordWrap(true);
33 descriptionLabel->setFont(biggerFont);
34 descriptionLabel->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding);
35 layout->addWidget(descriptionLabel);
37 progressBar = new QProgressBar(this);
39 layout->addWidget(progressBar);
44 void LoadingWidget::setVideo(Video *video) {
45 QString title = video->title();
46 // enhance legibility by splitting the title
47 title = title.replace(" - ", "<p>");
48 title = title.replace("] ", "]<p>");
49 titleLabel->setText(title);
50 descriptionLabel->setText(video->description());
54 void LoadingWidget::bufferStatus(int percent) {
56 progressBar->setShown(percent > 0);
57 progressBar->setValue(percent);
60 void LoadingWidget::paintEvent(QPaintEvent *) {
63 QPainter painter(this);
64 painter.fillRect(0, 0, width(), height(), Qt::black);