#ifndef DIAGRAMEDITORWIZARD_H #define DIAGRAMEDITORWIZARD_H #include #include "global.h" QT_BEGIN_NAMESPACE namespace Ui { class diagramEditorWizard; } QT_END_NAMESPACE class WizardBayContentDlg; class DiagramEditorBaseBlock; class DiagramEditorStructContainer; class DiagramEditorWizard : public QDialog { Q_OBJECT public: DiagramEditorWizard(QWidget *parent = nullptr); ~DiagramEditorWizard(); signals: void wizardFinish(DiagramEditorWizardInfo); protected: void onOkClicked(); void onCancelClicked(); void onLastClicked(); void onNextClicked(); void onAddBusClicked(); //添加母线 void onAddBayClicked(); //添加间隔 void onAddTransClicked(); //添加变压器 void onDelegateFinishEdit(const QModelIndex &index, const QString &value); //代理edit完成事件 void onBusDeleteClicked(); void onBusIndexRbtnClicked(const QPoint &pos); //bus列表右键菜单 private: void initial(); void reOrderBus(); //重置bus次序 void generateBayPage(); //根据bus设置生成bay页 template void reindexQMap(QMap &map); //重新排序函数 private: Ui::diagramEditorWizard *ui; BiDirectionalMap _divideType; //划分段数名对照 WizardBayContentDlg* _bayContentDlg; QMap _mapBus; //母线信息 QMap> _mapSturctContainer; //划分后的区块 bool _busPageChanged; //母线页改变 }; #endif