SchemeFlowWidget.h 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374
  1. #ifndef SCHEMEFLOWWIDGET_H
  2. #define SCHEMEFLOWWIDGET_H
  3. #include <QWidget>
  4. #include "SchemePlanManager.h"
  5. #include <shemeFlow/DataFlowModel.h>
  6. #include <shemeFlow/FlowGraphModel.h>
  7. #include <shemeFlow/DataFlowModel.h>
  8. #include <shemeFlow/FlowTemplateDataModel.h>
  9. #include <QtNodes/BasicGraphicsScene>
  10. #include <QtNodes/ConnectionStyle>
  11. #include <QtNodes/DataFlowGraphicsScene>
  12. // #include <QtNodes/GraphicsView>
  13. #include <QtNodes/GraphicsViewStyle>
  14. #include <QtNodes/NodeDelegateModelRegistry>
  15. using QtNodes::BasicGraphicsScene;
  16. using QtNodes::ConnectionStyle;
  17. using QtNodes::DataFlowGraphicsScene;
  18. // using QtNodes::GraphicsView;
  19. using QtNodes::GraphicsViewStyle;
  20. using QtNodes::NodeDelegateModelRegistry;
  21. using QtNodes::NodeRole;
  22. using QtNodes::NodeStyle;
  23. // class GraphicsView;
  24. class ProjectInfo;
  25. class QHBoxLayout;
  26. /**
  27. * @brief The SchemeFlowWidget class
  28. * 方案流程图
  29. */
  30. class SchemeFlowWidget : public QWidget
  31. {
  32. Q_OBJECT
  33. public:
  34. explicit SchemeFlowWidget(ProjectInfo *proj, int indexType, QWidget *parent = nullptr);
  35. ~SchemeFlowWidget();
  36. void setType(int t);
  37. static QList<SchemePlanManager::SchemeProcessType> schemeTemplate(int indexType);
  38. signals:
  39. private:
  40. void initWidget();
  41. void clearAllNodes();
  42. void refresh();
  43. private slots:
  44. void slotSchemeProcessEdited(const SchemePlanManager::SchemeProcessInfo &process);
  45. private:
  46. ProjectInfo *m_proj = nullptr;
  47. int m_indexType = 0;
  48. // GraphicsView *m_view = nullptr;
  49. DataFlowModel *m_graphModel = nullptr;
  50. QHBoxLayout *m_layout = nullptr;
  51. };
  52. #endif // SCHEMEFLOWWIDGET_H