DiagramDesigner/diagramCavas/include/diagramEditor/diagramEditorWizard.h

53 lines
1.6 KiB
C
Raw Normal View History

2025-05-30 16:28:51 +08:00
#ifndef DIAGRAMEDITORWIZARD_H
#define DIAGRAMEDITORWIZARD_H
#include <QDialog>
#include "global.h"
QT_BEGIN_NAMESPACE
namespace Ui { class diagramEditorWizard; }
QT_END_NAMESPACE
2025-07-25 19:07:14 +08:00
class WizardBayContentDlg;
class DiagramEditorBaseBlock;
class DiagramEditorStructContainer;
2025-05-30 16:28:51 +08:00
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 <typename T> void reindexQMap(QMap<int, T> &map); //重新排序函数
2025-05-30 16:28:51 +08:00
private:
Ui::diagramEditorWizard *ui;
2025-07-25 19:07:14 +08:00
BiDirectionalMap<int,QString> _divideType; //划分段数名对照
WizardBayContentDlg* _bayContentDlg;
QMap<int,DiagramEditorWizardBusInfo> _mapBus; //母线信息
QMap<int,QMap<int,DiagramEditorStructContainer*>> _mapSturctContainer; //划分后的区块
bool _busPageChanged; //母线页改变
2025-05-30 16:28:51 +08:00
};
#endif