WaferProgramPage.h 1.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081
  1. #ifndef WAFER_PROGRAM_PAGE_H
  2. #define WAFER_PROGRAM_PAGE_H
  3. #include "Src/Sql/SqlOperation.h"
  4. #include "CViewInterface.h"
  5. #include <QWidget>
  6. #include <QGroupBox>
  7. #include <QLineEdit>
  8. #include "Src/RewriteControl/Controls/SpinBox.h"
  9. #include "Src/RewriteControl/Controls/DoubleSpinBox.h"
  10. #include "ui_WaferProgramPage.h"
  11. #include <QLabel>
  12. #include <QFileDialog>
  13. #include <QTextStream>
  14. #include <QHeaderView>
  15. #include <QTableWidget>
  16. #include <QPushButton>
  17. #include <QVBoxLayout>
  18. #include <QHBoxLayout>
  19. #include <QSqlQuery>
  20. #include <QJsonDocument>
  21. #include <QJsonObject>
  22. #include <QMessageBox>
  23. #include <unordered_map>
  24. #include <QtWidgets/qcombobox.h>
  25. #include <View/die-bonder-ui/Src/MatrixDialogs/NoBondPtEditDialog.h>
  26. #include "CModule.h"
  27. class WaferProgramPage : public QWidget {
  28. Q_OBJECT
  29. public:
  30. explicit WaferProgramPage(QWidget* parent = nullptr);
  31. void AddMatrixPage(int vectorIndex, _PROGRAM_WAFER_MATRIX_STRUCT matrixData);
  32. //QComboBox* createDieMatrixIdComboBox(int defaultId, int row);
  33. private slots:
  34. /*void addRow();
  35. void deleteRow();
  36. void updateData();*/
  37. //void onCellChanged(int row, int column);
  38. private:
  39. // 初始化合并后的数据(多表)
  40. //void initMergedData();
  41. void initPage();
  42. bool eventFilter(QObject* obj, QEvent* event);
  43. XY_DOUBLE_STRUCT WaferGetAxisPosition(std::string ModuleType, XY_DOUBLE_STRUCT& pos);
  44. private slots:
  45. void onNoBondPtsClickedWafer(QLineEdit* lineEdit, int index);
  46. private:
  47. Ui::WaferProgramPageClass ui;
  48. CManageDB* m_manageDB = nullptr;
  49. CProduct* m_pProduct = nullptr;
  50. std::vector<PROGRAM_WAFER_MATRIX_STRUCT> m_vecWaferMatrix;
  51. //std::vector<PROGRAM_DIE_MATRIX_STRUCT> m_vecDieMatrixt;
  52. static std::unordered_map<int, bool> m_IdIsUsedMap;
  53. bool m_isInitializing = false;
  54. QMap<QGroupBox*, int> m_mapWaferGroupBoxIndex;
  55. ns_module::CViewInterface* m_pProgramCViewInterface = nullptr;
  56. };
  57. #endif // WAFER_PROGRAM_PAGE_H