DiagramDesigner/diagramCavas/include/bayMeasureDlg.h

48 lines
1.4 KiB
C++

#ifndef BAYMEASUREDLG_H
#define BAYMEASUREDLG_H
#include <QDialog>
#include "global.h"
/*******************************************************
间隔量测界面
********************************************************/
QT_BEGIN_NAMESPACE
namespace Ui { class bayMeasureDlg; }
QT_END_NAMESPACE
class MeasureSettingDlg;
class BayProperty;
class BayMeasureDlg : public QDialog
{
Q_OBJECT
public:
BayMeasureDlg(QWidget *parent = nullptr);
~BayMeasureDlg();
void getPropertyValue(BayProperty* pBay);
void setPropertyValue(BayProperty* pBay);
auto& getValidType() {return _validType;} //获取可用的量测属性
void setUi();
void addMeasure(MeasurementInfo,int mode = 0); //mode:0新建1修改
void addOtherMeasure(QStringList); //本间隔的其他量测
BayProperty* getBayProperty(){return _bayProperty;}
void showDlg(BayProperty* pBay);
public slots:
void onAddClicked();
void onDeleteClicked();
void onModifyClicked();
void onIndexRbtnClicked(const QPoint &pos); //索引列表右键菜单
void onOkClicked();
void onCancelClicked();
private:
void initial();
private:
Ui::bayMeasureDlg *ui;
BayProperty* _bayProperty; //当前间隔属性
MeasureSettingDlg* _measureDlg;
QList<measureAttributeType> _validType; //可用的属性列表
QMap<QString,MeasurementInfo> _mapMeasure; //量测列表
};
#endif