#include <QTimer> #include <iostream> #include "ProgressBarWidget.h" using namespace std; ProgressBarWidget::ProgressBarWidget(QWidget* parent, QString message, int maxv) : QDialog(parent, Qt::Window ) { QGridLayout* grid = new QGridLayout(this); text = new QLabel(this); pbar = new QProgressBar(this); appname = new QLabel(this); text->setFont(QFont("Sans", 8) ); appname->setFont(QFont("Sans", 8) ); appname->setMinimumSize(190, 40); setFixedWidth(420); setPalette( QPalette( QColor(203, 205, 245 ), QColor(213, 215, 255 ) ) ); grid->addWidget(text, 0, 0, 1, 1); grid->addWidget(pbar, 0, 1, 1, 2); grid->addWidget(appname, 1, 0, 1, 3, Qt::AlignHCenter); SetMessage(message); SetMaximumValue(maxv); resize(140, 30); } void ProgressBarWidget::SetProgress(int value) { pbar->setValue(value); } void ProgressBarWidget::SetMessage(QString message) { text->setText(message); } void ProgressBarWidget::SetMaximumValue(int maxval) { pbar->setMaximum(maxval); } void ProgressBarWidget::SetAppName(QString text) { appname->setText(text); } void ProgressBarWidget::SetDetailMaximumValue(int maxval) { maxval = maxval; /* avoid warning */ } void ProgressBarWidget::SetDetailProgress(int value) { value = value; } void ProgressBarWidget::ResetDetailProgress() { } int ProgressBarWidget::DetailProgressValue() { return -1; } void ProgressBarWidget::UpdateProgressDetail() { int valuenow = DetailProgressValue(); SetDetailProgress(valuenow + 1); qApp->processEvents(); }