PlanData.h 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. #ifndef PLANDATA_H
  2. #define PLANDATA_H
  3. #include "plancard.h"
  4. #define PData PlanData::getInstance()
  5. class PlanData : public QObject
  6. {
  7. Q_OBJECT
  8. PlanData();
  9. PlanData(const PlanData& data) = delete;
  10. PlanData& operator=(const PlanData& data) = delete;
  11. public:
  12. ~PlanData() {}
  13. static PlanData& getInstance()
  14. {
  15. static PlanData instance;
  16. return instance;
  17. }
  18. /* 新增一个卡片 */
  19. PlanCard* createOneCard(const ChannelInfo& chnInfo);
  20. /* 删除一个卡片 */
  21. void deleteOneCard(int channelID);
  22. /* 清空一个卡片的计划 */
  23. void clearOnePlanItem(int channelID);
  24. /* 查找卡片 */
  25. PlanCard* findPlanCard(int channelID);
  26. /* 获取当前选中的卡片 */
  27. PlanCard* getCurrentPlanCard() { return findPlanCard(m_currentFrequencyID); }
  28. /* 新增一个计划 */
  29. void addPlanItem(int channelID, const PlanInfo& info);
  30. /* 设置每个卡片的大小 */
  31. void setCardSize(int width, int height);
  32. private slots:
  33. /* 点击了一个卡片 */
  34. void do_clickedCard(int channelID);
  35. private:
  36. QMap<int, PlanCard*> m_mapPlanCard; /* 计划卡片 */
  37. int m_currentFrequencyID = 0; /* 当前频率ID */
  38. };
  39. #endif /* PLANDATA_H */