WaffleProgramPage.h 1.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768
  1. #pragma once
  2. #include <QWidget>
  3. #include "ui_WaffleProgramPage.h"
  4. #include "CViewInterface.h"
  5. #include <QMap>
  6. class WaffleProgramPage : public QWidget
  7. {
  8. Q_OBJECT
  9. public:
  10. WaffleProgramPage(QWidget* parent = nullptr);
  11. ~WaffleProgramPage();
  12. private:
  13. //新增矩阵界面
  14. void AddMatrixPage(int vectorIndex, PROGRAM_WAFFLE_MATRIX_STRUCT matrixData, std::vector<PROGRAM_DIE_MATRIX_STRUCT> vecSubMatrix);
  15. //void AddOutMatrixPage(int vectorIndex, PROGRAM_BOND_MATRIX_STRUCT matrixData);
  16. void AddSubMatrixPage(int subVectorIndex,PROGRAM_DIE_MATRIX_STRUCT subMatrix, QGridLayout* layout);
  17. //往后端新增矩阵数据
  18. void AddMatrixParam();
  19. //保存所有参数到后端内存中
  20. void SaveAllParam();
  21. //参数被修改后发送给后端
  22. void MatrixChangeEvent();
  23. void initPage();
  24. protected:
  25. bool eventFilter(QObject* watched, QEvent* event) override;
  26. private slots:
  27. void onNoBondPtsClicked(QLineEdit* lineEdit, int waffleIndex);
  28. private:
  29. Ui::WaffleProgramPageClass ui;
  30. CManageDB* m_manageDB = nullptr;
  31. CProduct* m_pProduct = nullptr;
  32. std::vector<PROGRAM_WAFFLE_MATRIX_STRUCT> m_vecWaffleMatrix;
  33. std::vector<PROGRAM_DIE_MATRIX_STRUCT> m_vecSubWaffleMatrix;
  34. //子矩阵控件,ID从1开始
  35. QMap<int, QVector<QObject*>> m_mapSubMatrixControls;
  36. int m_curPtIndex = 0;
  37. QMap<QWidget*, int> m_mapSubWidgetIndex;
  38. QMap<QWidget*, int> m_mapOutWidgetIndex;
  39. };