#ifndef DIAGRAMEDITORBAYDETAILSETTINGDLG_H #define DIAGRAMEDITORBAYDETAILSETTINGDLG_H #include #include "global.h" QT_BEGIN_NAMESPACE namespace Ui { class diagramEditorBayDetailSettingDlg; } QT_END_NAMESPACE class DiagramEditorWizard; class DiagramEditorBayDetailAddDlg; class DiagramEditorBayBlock; class DiagramEditorBayPreviewDlg; class DiagramEditorModel; class DiagramEditorBayDetailSettingDlg : public QDialog { Q_OBJECT public: DiagramEditorBayDetailSettingDlg(QWidget *parent = nullptr); ~DiagramEditorBayDetailSettingDlg(); void initial(); void refreshModel(); //刷新view显示的model void showDlg(DiagramEditorBayBlock*); void setParent(DiagramEditorWizard* p) {_pWizard = p;} QStandardItemModel* getComponentModel() {return _compoModel;} QStandardItemModel* getRouteModel() {return _routeModel;} void setRouteMap(QMap map) {_mapRouteInfo = map;} QMap& getRouteMap(){return _mapRouteInfo;} void setModelDelegate(DiagramEditorModel* p){_pModel = p;} DiagramEditorModel* getModel() {return _pModel;} public slots: void onAddClicked(); void onOkClicked(); void onCancelClicked(); void onRouteDeleteClicked(); void onRouteRbtnClicked(const QPoint &pos); //线路右键菜单 void onRouteEditClicked(); void onPreviewClicked(); //预览间隔 private: Ui::diagramEditorBayDetailSettingDlg *ui; DiagramEditorBayDetailAddDlg* _pAddDlg; DiagramEditorBayPreviewDlg* _pPreviewDlg; DiagramEditorWizard* _pWizard; DiagramEditorBayBlock* _curOperateObj; //当前加载的block对象 QStandardItemModel* _compoModel; //设备库model name中的data:1为占用方向,2为相对坐标,3为uuid,4为item标志位(1新建2修改),5旋转角度 QStandardItemModel* _routeModel; //所有线路model QMap _mapRouteInfo; //所有线路信息 DiagramEditorModel* _pModel; }; #endif