Files
gcs-nf/App/StatusUI/StateWidget.h
T
2021-04-25 09:28:46 +08:00

106 lines
1.5 KiB
C++

#ifndef STATEWIDGET_H
#define STATEWIDGET_H
#include <QObject>
#include <QWidget>
#include "QMouseEvent"
#include "QDebug"
#include "QAction"
#include "QMenu"
#include "QColor"
#include "QLabel"
#include "mavlink.h"
#include "QStyle"
#include "QDebug"
#include "QScreen"
#include <QtGlobal>
#include "QLabel"
#include "QProgressBar"
#include "QGridLayout"
class StateWidget :public QWidget
{
Q_OBJECT
public:
enum state{
green = 0,
rad = 1,
orange = 2,
gray = 3,
};
explicit StateWidget(int flag, int index = 0,QWidget *parent = nullptr);
explicit StateWidget(int flag, QString t, QVariant v = 0, state s = state::gray, int index = 0, QWidget *parent = nullptr);
~StateWidget();
int id;
void setMax(double v)
{
max = v;
}
void setMin(double v)
{
min = v;
}
signals:
public slots:
int ID(void)
{
return id;
}
QString Name(void)
{
return title->text();
}
int offset(void)
{
return m_offset;
}
void setColor(state s);
void setValue(QString s);
void setRange(double m_min,double m_max);
protected:
private slots:
private:
int w = 300;
int h = 20;
int m_offset = 2;
double max = 99999999999999999;
double min = -99999999999999999;
QGridLayout *gridlayout;
QLabel *title = nullptr;
QLabel *label = nullptr;
QProgressBar *bar = nullptr;
};
#endif // STATEWIDGET_H