103 lines
2.1 KiB
C++
103 lines
2.1 KiB
C++
#include "StateWidget.h"
|
|
|
|
StateWidget::StateWidget(int flag,int index,QWidget *parent) : QWidget(parent)
|
|
{
|
|
int w = 150;
|
|
int h = 20;
|
|
|
|
gridlayout = new QGridLayout(this);
|
|
gridlayout->setMargin(0);
|
|
gridlayout->setVerticalSpacing(6);
|
|
|
|
|
|
title = new QLabel("new status");
|
|
title->setAlignment(Qt::AlignLeft | Qt::AlignVCenter);
|
|
title->setFixedSize(w/2,h);
|
|
|
|
gridlayout->addWidget(title,0,0);
|
|
|
|
if(flag == 0)
|
|
{
|
|
label = new QLabel("0");
|
|
label->setAlignment(Qt::AlignHCenter | Qt::AlignVCenter);
|
|
label->setFixedSize(w,h);
|
|
setColor(label,state::gray);
|
|
gridlayout->addWidget(label,0,1);
|
|
}
|
|
else
|
|
{
|
|
bar = new QProgressBar();
|
|
bar->setAlignment(Qt::AlignHCenter | Qt::AlignVCenter);
|
|
bar->setRange(0,100);
|
|
bar->setValue(0);
|
|
bar->setFixedSize(w,h);
|
|
gridlayout->addWidget(bar,0,1);
|
|
}
|
|
}
|
|
|
|
StateWidget::StateWidget(int flag, QString t,QVariant v,state s,int index, QWidget *parent) : QWidget(parent)
|
|
{
|
|
|
|
id = index;
|
|
|
|
int w = 150;
|
|
int h = 20;
|
|
|
|
gridlayout = new QGridLayout(this);
|
|
gridlayout->setMargin(0);
|
|
gridlayout->setVerticalSpacing(6);
|
|
|
|
|
|
title = new QLabel(t);
|
|
title->setAlignment(Qt::AlignLeft | Qt::AlignVCenter);
|
|
title->setFixedSize(w/2,h);
|
|
|
|
gridlayout->addWidget(title,0,0);
|
|
|
|
if(flag == 0)
|
|
{
|
|
label = new QLabel(v.toString());
|
|
label->setAlignment(Qt::AlignHCenter | Qt::AlignVCenter);
|
|
label->setFixedSize(w,h);
|
|
setColor(label,s);
|
|
gridlayout->addWidget(label,0,1);
|
|
}
|
|
else
|
|
{
|
|
bar = new QProgressBar();
|
|
bar->setAlignment(Qt::AlignHCenter | Qt::AlignVCenter);
|
|
bar->setRange(0,100);
|
|
bar->setValue(v.toDouble());
|
|
bar->setFixedSize(w,h);
|
|
gridlayout->addWidget(bar,0,1);
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
StateWidget::~StateWidget()
|
|
{
|
|
|
|
}
|
|
|
|
|
|
void StateWidget::setColor(QWidget *w,state s)
|
|
{
|
|
w->setProperty("state",s);
|
|
w->style()->unpolish(w);
|
|
w->style()->polish(w);
|
|
}
|
|
|
|
void StateWidget::setValue(QLabel *w,QString s)
|
|
{
|
|
w->setText(s);
|
|
}
|
|
|
|
|
|
|
|
|