123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081 |
- #ifndef SCHEMEFLOWWIDGET_H
- #define SCHEMEFLOWWIDGET_H
- #include <QWidget>
- #include "SchemePlanManager.h"
- #include <shemeFlow/DataFlowModel.h>
- #include <shemeFlow/FlowGraphModel.h>
- #include <shemeFlow/DataFlowModel.h>
- #include <shemeFlow/FlowTemplateDataModel.h>
- #include <QtNodes/BasicGraphicsScene>
- #include <QtNodes/ConnectionStyle>
- #include <QtNodes/DataFlowGraphicsScene>
- // #include <QtNodes/GraphicsView>
- #include <QtNodes/GraphicsViewStyle>
- #include <QtNodes/NodeDelegateModelRegistry>
- using QtNodes::BasicGraphicsScene;
- using QtNodes::ConnectionStyle;
- using QtNodes::DataFlowGraphicsScene;
- // using QtNodes::GraphicsView;
- using QtNodes::GraphicsViewStyle;
- using QtNodes::NodeDelegateModelRegistry;
- using QtNodes::NodeRole;
- using QtNodes::NodeStyle;
- // class GraphicsView;
- class ProjectInfo;
- class QHBoxLayout;
- /**
- * @brief The SchemeFlowWidget class
- * 方案流程图
- */
- class SchemeFlowWidget : public QWidget
- {
- Q_OBJECT
- public:
- explicit SchemeFlowWidget(ProjectInfo *proj, QWidget *parent = nullptr);
- ~SchemeFlowWidget();
- ProjectInfo *proj() const;
- void setType(int t);
- int indexType() const;
- /// 当前页面的评估方案
- QList<SchemePlanManager::SchemeProcessInfo> schemes() const;
- /// 方案流程模板
- /// 当项目中没有评估方案时, 可加载此处的模板
- static QList<SchemePlanManager::SchemeProcessInfo> templateSchemes(int projId, int indexType);
- signals:
- void sigSchemeProcessCreated();
- void sigSchemeProcessEdited(const SchemePlanManager::SchemeProcessInfo &process);
- private:
- void initWidget();
- void clearAllNodes();
- void loadSchemes(const QList<SchemePlanManager::SchemeProcessInfo> &schems);
- private slots:
- void slotSchemeProcessEdited(const SchemePlanManager::SchemeProcessInfo &process);
- private:
- ProjectInfo *m_proj = nullptr;
- int m_indexType = 0;
- DataFlowModel *m_graphModel = nullptr;
- QHBoxLayout *m_layout = nullptr;
- };
- #endif // SCHEMEFLOWWIDGET_H
|