#include "evtol.h" #include "ui_evtol.h" evtol::evtol(QWidget *parent) : QWidget(parent), ui(new Ui::evtol) { ui->setupUi(this); m_parent = parent; QFile file(":/qss/evtol.qss"); file.open(QFile::ReadOnly); QTextStream filetext(&file); QString stylesheet = filetext.readAll(); this->setStyleSheet(stylesheet); file.close(); setWindowTitle(tr("evtol")); } evtol::~evtol() { delete ui; } void evtol::setColor(QWidget *w,state s) { w->setProperty("state",s); w->style()->unpolish(w); w->style()->polish(w); } void evtol::setValue(QLabel *w,QString s) { w->setText(s); } void evtol::resizeEvent(QResizeEvent *event) { } void evtol::closeEvent(QCloseEvent *event) { setFloat(); event->ignore(); } void evtol::setFloat(void) { if(this->parent()) { this->setParent(nullptr); QScreen *screen=QGuiApplication::primaryScreen ();; this->move((screen->availableGeometry().width()-this->width())/2,(screen->availableGeometry().height()-this->height())/2); this->show(); } else { this->setParent(m_parent); this->setGeometry(m_parent->geometry()); this->move(0,0); this->hide(); update(); } } void evtol::setRotor(uint32_t pos,QVariant value1) { switch (pos) { case 1: if(value1.toInt() >= 5000) { ui->progressBar_1->setRange(0,value1.toInt()); } ui->progressBar_1->setValue(value1.toInt()); setColor( ui->progressBar_1,(value1 < 0)?(state::failure):(state::success)); break; case 2: ui->progressBar_2->setValue(value1.toInt()); setColor( ui->progressBar_2,(value1 < 0)?(state::failure):(state::success)); break; case 3: ui->progressBar_3->setValue(value1.toInt()); setColor( ui->progressBar_3,(value1 < 0)?(state::failure):(state::success)); break; case 4: ui->progressBar_4->setValue(value1.toInt()); setColor( ui->progressBar_4,(value1 < 0)?(state::failure):(state::success)); break; case 5: ui->progressBar_5->setValue(value1.toInt()); setColor( ui->progressBar_5,(value1 < 0)?(state::failure):(state::success)); break; case 6: if(value1.toInt() >= 5000) { ui->progressBar_6->setRange(0,value1.toInt()); } ui->progressBar_6->setValue(value1.toInt()); setColor( ui->progressBar_6,(value1 < 0)?(state::failure):(state::success)); break; case 7: ui->progressBar_7->setValue(value1.toInt()); setColor( ui->progressBar_7,(value1 < 0)?(state::failure):(state::success)); break; case 8: ui->progressBar_8->setValue(value1.toInt()); setColor( ui->progressBar_8,(value1 < 0)?(state::failure):(state::success)); break; case 9: ui->progressBar_9->setValue(value1.toInt()); setColor( ui->progressBar_9,(value1 < 0)?(state::failure):(state::success)); break; case 10: ui->progressBar_10->setValue(value1.toInt()); setColor( ui->progressBar_10,(value1 < 0)?(state::failure):(state::success)); break; } }