DiagramDesigner/diagramCavas/include/monitorAttributeGroupDlg.h

42 lines
1.3 KiB
C++

#ifndef MONITORATTRIBUTEGROUPDLG_H
#define MONITORATTRIBUTEGROUPDLG_H
/**********************监控属性页中单组的具体内容*************************/
#include <QScrollArea>
#include <QVBoxLayout>
class MonitorAttributeDlg;
struct monitorItemAttributeInfo;
class QChartView;
class QLabel;
class FixedPortsModel;
class MonitorDetailAttributeDlg;
class MonitorAttributeGroupDlg : public QScrollArea
{
Q_OBJECT
public:
MonitorAttributeGroupDlg(QWidget *parent = nullptr);
~MonitorAttributeGroupDlg();
void initial();
void createGroupView(QList<monitorItemAttributeInfo>);
void setParent(MonitorAttributeDlg* p) {_pParent = p;}
void setDetailParent(MonitorDetailAttributeDlg* p){_pDetailParent = p;}
void setCurMode(int n) {_curMode = n;}
private:
QWidget* createEditor(monitorItemAttributeInfo);
void updateLineChartData(QChartView* chartView, const QVector<QPointF>& data);
void updateData(); //使用数据更新当前界面
FixedPortsModel* getModelController();
QUuid getCurUid();
private:
QVBoxLayout* _layout;
MonitorAttributeDlg* _pParent;
MonitorDetailAttributeDlg* _pDetailParent;
QMap<QString,QWidget*> _curWidget; //当前控件
int _curMode; //0简略模式 1详细模式
};
#endif