Group.h 2.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687
  1. #ifndef GROUP_H
  2. #define GROUP_H
  3. #include <QWidget>
  4. #include <QtWidgets/QComboBox>
  5. #include "CameraMaterialGroupWnd/MaterialWindow/Wafer.h"
  6. #include "CameraMaterialGroupWnd/MaterialWindow/Waffle.h"
  7. #include "CameraMaterialGroupWnd/MaterialWindow/MaterialBox.h"
  8. #include "CameraMaterialGroupWnd/MaterialWindow/Bond.h"
  9. namespace Ui {
  10. class Group;
  11. }
  12. class Group : public QWidget
  13. {
  14. Q_OBJECT
  15. public:
  16. // 需要修改
  17. //explicit Group(const CameraInfo& cameraInfo, QWidget* parent);
  18. explicit Group(int Id, const QString& imagePath1, int MaterialWindowType, const QStringList& textList, QWidget* parent);
  19. ~Group();
  20. void initForm();
  21. bool eventFilter(QObject *obj, QEvent *event);
  22. void saveGroupSettings(int Id, const QString& imagePath1, int materialWndType, const QStringList& textList);
  23. void saveBorderSettings(); // 新增:保存边框颜色信息
  24. void loadBorderSettings(); // 新增:加载边框颜色信息
  25. void recordBorderInfo(int groupId, const QString& side);
  26. QString getBlueBorderStyle();
  27. QString getRedBorderStyle();
  28. void setDatacomboBox(int index);
  29. void setEnableControls(bool enable);
  30. signals:
  31. void send_button_Signal();
  32. void send_ComboBox_singal(int groupId,int index);
  33. void SendGroupSelectedSignals(Group* group, int index);
  34. void sendUpdateGroupState(int groupId,int index);
  35. /**当前选中了哪一个
  36. */
  37. void SetCurrentSelectSig(int groupId,int nIndex);
  38. /**相机图像转发
  39. */
  40. void SetUpDataImageShowSig(const QPixmap& imageData);
  41. public slots:
  42. void Changedstyle();
  43. void onclickbutton();
  44. void on_DatacomboBox_currentIndexChanged(int index);
  45. void GetGroupSelectedSlots(Group* group, int index);
  46. void UpDataImageShowSlots(const QPixmap& imageData);
  47. protected:
  48. void showEvent(QShowEvent *event) override;
  49. void hideEvent(QHideEvent *event) override;
  50. void check_selected(int index);
  51. void WaferWidget(); // 圆晶
  52. void WaffleWidget(); // 华夫盒
  53. void MaterialBoxWidget(); // 料盒
  54. void BondWidget();
  55. QStringList getFileNames(const QString& dirPath);
  56. private:
  57. Ui::Group *ui;
  58. int m_nCurrentGroupId;
  59. Wafer * m_pWafer =nullptr; // 声明Wafer指针
  60. Waffle * m_pWaffle = nullptr; // 声明Waffle指针
  61. MaterialBox * m_pMaterialbox = nullptr; // 声明materialbox指针
  62. Bond* m_pBond = nullptr;
  63. static Group* m_pCurrentlySelectedGroup; // 当前选中(红色边框)的实例
  64. static Group* m_pPreviouslySelectedBlueGroup; // 上一次选中且边框为蓝色的实例
  65. static Group* m_pLastClickedGroup; // 上一次点击的实例
  66. static int m_stnLastClickedIndex; // 上一次点击的索引
  67. static int m_stnLastSavedIndex; // 上次保存的索引
  68. public:
  69. int m_nGroupId; // 新增:记录当前 Group 的 ID
  70. };
  71. #endif // GROUP_H