File indexing completed on 2024-05-12 15:50:10
0001 #include <QPixmap> 0002 #include <QThread> 0003 0004 #include "MainWidget.h" 0005 0006 MainWidget::MainWidget(QWidget *parent) 0007 : QWidget(parent) 0008 , m_image(new QLabel(this)) 0009 , m_caption(new QLabel(tr("Hello Internet!"), m_image)) 0010 , m_status(new QLabel(tr("Please wait..."), m_image)) 0011 { 0012 setFixedSize(800, 450); 0013 // set style sheet for the text labels: 0014 m_caption->setContentsMargins(18, 9, 9, 9); 0015 m_caption->setAlignment(Qt::AlignLeft | Qt::AlignVCenter); 0016 m_caption->setWordWrap(true); 0017 m_caption->setStyleSheet(QStringLiteral("background-color: rgba(255, 255, 255, 200); font: italic 18pt \"Sans Serif\";")); 0018 m_status->setContentsMargins(18, 9, 9, 9); 0019 m_status->setStyleSheet(QStringLiteral("background-color: rgba(255, 255, 255, 200); font: 10pt \"Sans Serif\";")); 0020 } 0021 0022 MainWidget::~MainWidget() 0023 { 0024 } 0025 0026 void MainWidget::resizeEvent(QResizeEvent *) 0027 { 0028 m_image->setGeometry(0, 0, width(), height()); 0029 m_caption->move(0, 0); 0030 m_caption->setFixedWidth(width()); 0031 m_caption->setFixedHeight(qMax(m_caption->sizeHint().height(), height() / 3)); 0032 m_status->setFixedWidth(width()); 0033 m_status->setFixedHeight(qMax(m_status->sizeHint().height(), height() / 9)); 0034 m_status->move(0, height() - m_status->height()); 0035 } 0036 0037 void MainWidget::setImage(QImage image) 0038 { 0039 Q_ASSERT(thread() == QThread::currentThread()); 0040 m_image->setPixmap(QPixmap::fromImage(image)); 0041 } 0042 0043 void MainWidget::setCaption(QString text) 0044 { 0045 m_caption->setText(text); 0046 } 0047 0048 void MainWidget::setStatus(QString text) 0049 { 0050 m_status->setText(text); 0051 } 0052 0053 #include "moc_MainWidget.cpp"