123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081 |
- #ifndef WAFER_PROGRAM_PAGE_H
- #define WAFER_PROGRAM_PAGE_H
- #include "Src/Sql/SqlOperation.h"
- #include <QWidget>
- #include <QFileDialog>
- #include <QTextStream>
- #include <QHeaderView>
- #include <QTableWidget>
- #include <QPushButton>
- #include <QVBoxLayout>
- #include <QHBoxLayout>
- #include <QSqlQuery>
- #include <QJsonDocument>
- #include <QJsonObject>
- #include <QMessageBox>
- #include <unordered_map>
- #include <QtWidgets/qcombobox.h>
- #include <QGridLayout>
- #include <QDialogButtonBox>
- #include <QMouseEvent>
- #include <QRubberBand>
- class WaferProgramPage : public QWidget {
- Q_OBJECT
- public:
- explicit WaferProgramPage(QWidget* parent = nullptr);
- static QWidget* CreateWaferProgramPage();
- QComboBox* createDieMatrixIdComboBox(int defaultId, int row);
- private slots:
- void addRow();
- void deleteRow();
- void updateData();
- void onCellChanged(int row, int column);
- private:
- // 初始化合并后的数据(多表)
- void initMergedData();
- private:
- QTableWidget* mergedTable;
- CONFIG_BASE_STRUCT controlConfig;
- CProduct* m_pCProduct = nullptr;//CManageDB::GetInstance()->GetCProduct();
- std::vector<PROGRAM_WAFER_MATRIX_STRUCT> m_VecWaferMatrix;
- std::vector<PROGRAM_DIE_MATRIX_STRUCT> m_VecDieMatrixt;
- static std::unordered_map<int, bool> idIsUsedMap;
- bool m_isInitializing = false;
- };
- class NoBondPtEditDialog : public QDialog {
- Q_OBJECT
- public:
- NoBondPtEditDialog(int rows, int cols, const std::vector<XY_LONG_STRUCT>& selectedPts, QWidget* parent = nullptr);
- QVector<XY_LONG_STRUCT> getSelectedPoints() const;
- protected:
- void mousePressEvent(QMouseEvent* event) override;
- void mouseMoveEvent(QMouseEvent* event) override;
- void mouseReleaseEvent(QMouseEvent* event) override;
- private:
- QSet<QPair<int, int>> selectedSet;
- Qt::MouseButton dragButton = Qt::NoButton;
- QMap<QPushButton*, QPair<int, int>> buttonMap;
- QRubberBand* rubberBand = nullptr;
- QPoint dragStart;
- bool isDragging = false;
- };
- #endif // WAFER_PROGRAM_PAGE_H
|