calendarheader.cpp 1.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263
  1. #include "calendarheader.h"
  2. #include "ui_calendarheader.h"
  3. #include "PaintHelper/painthelper.h"
  4. #include "StyleManager/lhstylemanager.h"
  5. #include "LHQLogAPI.h"
  6. #include <QFile>
  7. CalendarHeader::CalendarHeader(QWidget *parent) :
  8. QWidget(parent),
  9. ui(new Ui::CalendarHeader)
  10. {
  11. ui->setupUi(this);
  12. // LHStyleManager::Instance()->AddWidget(this);
  13. setQSS();
  14. }
  15. CalendarHeader::~CalendarHeader()
  16. {
  17. delete ui;
  18. }
  19. void CalendarHeader::SetFirstDayOfWeek(Qt::DayOfWeek dayOfWeek)
  20. {
  21. ui->label1->setText(km_listWeeks.at((dayOfWeek-1+0)%km_listWeeks.count()));
  22. ui->label2->setText(km_listWeeks.at((dayOfWeek-1+1)%km_listWeeks.count()));
  23. ui->label3->setText(km_listWeeks.at((dayOfWeek-1+2)%km_listWeeks.count()));
  24. ui->label4->setText(km_listWeeks.at((dayOfWeek-1+3)%km_listWeeks.count()));
  25. ui->label5->setText(km_listWeeks.at((dayOfWeek-1+4)%km_listWeeks.count()));
  26. ui->label6->setText(km_listWeeks.at((dayOfWeek-1+5)%km_listWeeks.count()));
  27. ui->label7->setText(km_listWeeks.at((dayOfWeek-1+6)%km_listWeeks.count()));
  28. }
  29. /* 设置QSS */
  30. void CalendarHeader::setQSS()
  31. {
  32. QString qssPath;
  33. if(LHStyleManager::Instance()->GetCurSkinStyle() == SkinStyle::eWhiteStyle)
  34. {
  35. qssPath = ":/Calendar/qss/calendarheader_light.qss";
  36. }
  37. else if(LHStyleManager::Instance()->GetCurSkinStyle() == SkinStyle::eBlackStyle)
  38. {
  39. qssPath = ":/Calendar/qss/calendarheader_dark.qss";
  40. }
  41. QFile qssFile(qssPath);
  42. if(qssFile.open(QFile::ReadOnly))
  43. {
  44. QString qss = qssFile.readAll();
  45. setStyleSheet(qss);
  46. qssFile.close();
  47. }else {
  48. LH_WRITE_ERROR("open qss file failed, path: " + qssPath);
  49. }
  50. }
  51. void CalendarHeader::paintEvent(QPaintEvent *)
  52. {
  53. PainterEx painter(this);
  54. }