checkperiodwidget.h 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263
  1. #ifndef CHECKPERIODWIDGET_H
  2. #define CHECKPERIODWIDGET_H
  3. #include <QWidget>
  4. #include "spdlog/spdlog.h"
  5. #include "GlobalVariable.h"
  6. #include "onedetectplan.h"
  7. namespace Ui {
  8. class CheckPeriodWidget;
  9. }
  10. /**
  11. * @brief 检测周期设置界面
  12. *
  13. * 该界面用于设置检测周期,包括添加检测计划和不检测计划
  14. */
  15. class CheckPeriodWidget : public QWidget
  16. {
  17. Q_OBJECT
  18. public:
  19. explicit CheckPeriodWidget(QWidget *parent = nullptr);
  20. ~CheckPeriodWidget();
  21. /* 获取计划列表 */
  22. QList<OnePlan_t> getDetectPlanList();
  23. /* 设置计划列表 */
  24. void setDetectPlanList(const QList<OnePlan_t>& planList);
  25. private slots:
  26. /* 添加一个检测计划 */
  27. void do_pBtn_addDetectPlan_clicked();
  28. /* 添加一个不检测计划 */
  29. void do_pBtn_addNoDetectPlan_clicked();
  30. /* 删除一个检测计划 */
  31. void do_pBtn_deleteDetectPlan_clicked();
  32. /* 删除一个不检测计划 */
  33. void do_pBtn_deleteNoDetectPlan_clicked();
  34. private:
  35. /* 初始化QListWidget */
  36. void initListWidget();
  37. /* 添加一个检测计划 */
  38. void addDetectPlan(const OnePlan_t& plan);
  39. private:
  40. Ui::CheckPeriodWidget *ui;
  41. std::shared_ptr<spdlog::logger> m_logger = nullptr;
  42. QString m_qssPlan; /* 一条计划的样式表 */
  43. QList<OnePlan_t> m_planList; /* 检测计划列表 */
  44. };
  45. #endif // CHECKPERIODWIDGET_H