| 1 | #include <QColor>
|
|---|
| 2 |
|
|---|
| 3 | #include <QVBoxLayout>
|
|---|
| 4 | #include <QPainter>
|
|---|
| 5 | #include "tempsens.h"
|
|---|
| 6 |
|
|---|
| 7 |
|
|---|
| 8 | Tempsens::Tempsens( QWidget *parent ) : QWidget( parent)
|
|---|
| 9 | {
|
|---|
| 10 | //setPalette( QPalette( QColor( 250, 250, 200) ) );
|
|---|
| 11 | //this->setPalette( QPalette( QColor( 250, 250, 200) ) );
|
|---|
| 12 | bgColor= new QColor(200,200,200);
|
|---|
| 13 | this->setAutoFillBackground (1);
|
|---|
| 14 | }
|
|---|
| 15 | float Tempsens::value()
|
|---|
| 16 | {
|
|---|
| 17 | return val;
|
|---|
| 18 |
|
|---|
| 19 | }
|
|---|
| 20 | void Tempsens::paintEvent( QPaintEvent * )
|
|---|
| 21 | {
|
|---|
| 22 |
|
|---|
| 23 | QString s = QString( "%1c" ).arg((double)(val),0,'g',3);
|
|---|
| 24 | QFont sansFont( "Helvetica [Cronyx]", 12 );
|
|---|
| 25 |
|
|---|
| 26 | QPainter p( this );
|
|---|
| 27 | p.setFont(sansFont);
|
|---|
| 28 | p.setPen(Qt::white);
|
|---|
| 29 | int width=this->width();
|
|---|
| 30 | int height=this->height();
|
|---|
| 31 | p.drawText(width/4 , height/2, s );
|
|---|
| 32 | }
|
|---|
| 33 |
|
|---|
| 34 | void Tempsens::setValue( float vall )
|
|---|
| 35 | {
|
|---|
| 36 | val=vall;
|
|---|
| 37 | int rred= (int)(((float)(val-MinVal)/(float)(MaxVal-MinVal))*255.);
|
|---|
| 38 |
|
|---|
| 39 | int bblue=255-(int)(((float)(val-MinVal)/(float)(MaxVal-MinVal))*255.);
|
|---|
| 40 | //printf("%d \n",val);
|
|---|
| 41 | bgColor->setRgb(rred,0,bblue);
|
|---|
| 42 | //QPalette::ColorRole
|
|---|
| 43 | QPalette *mypalette=new QPalette();
|
|---|
| 44 | // mypalette->setColor ( mypalette->Base, *bgColor );
|
|---|
| 45 | mypalette->setColor ( mypalette->Base, Qt::red);
|
|---|
| 46 | //this->setBackgroundRole (mypalette->Shadow);
|
|---|
| 47 | //this->setBackgroundColor(*bgColor);
|
|---|
| 48 | repaint();
|
|---|
| 49 | this->setPalette( QPalette( *bgColor ) );
|
|---|
| 50 | emit valueChanged(val);
|
|---|
| 51 |
|
|---|
| 52 | }
|
|---|