DialogGoto.h 991 B

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. #pragma once
  2. #include <QDialog>
  3. #include "ui_DialogGoto.h"
  4. #include "Common.h"
  5. /// <summary>
  6. /// Goto工具的双击对话框,用于配置Goto工具绑定的接口,以及状态显示等等
  7. /// </summary>
  8. class DialogGoto : public QDialog
  9. {
  10. Q_OBJECT
  11. public:
  12. DialogGoto(
  13. const POU* pou,
  14. const TOOL* pGoto,
  15. const QString& selToolName = "",
  16. bool bNegation = false,
  17. QWidget* parent = nullptr
  18. );
  19. ~DialogGoto();
  20. // 用户选择的Goto绑定工具的实例名
  21. QString m_selToolInstName;
  22. // 是否bool输入接口取反
  23. bool m_bNegation;
  24. private:
  25. Ui::DialogGoto ui;
  26. private slots:
  27. // OK按钮
  28. void onButtonOKClicked();
  29. // ... 按钮
  30. void onButtonToolClicked();
  31. private:
  32. // 对话框初始化
  33. void initUI();
  34. // 进行死循环检测
  35. bool checkInfiniteLoop();
  36. private:
  37. // 本对话框关联的POU分组信息
  38. const POU* m_pou;
  39. // 本对话框关联的Goto工具的信息(用于进行死循环判断)
  40. const TOOL* m_gotoTool;
  41. };