Mercurial > minori
comparison include/core/date.h @ 51:75c804f713b2
window: add about window,
*: use tr() when applicable (useful for i18n)
author | Paper <mrpapersonic@gmail.com> |
---|---|
date | Mon, 25 Sep 2023 20:29:26 -0400 |
parents | d8eb763e6661 |
children | c69230dc2b5d |
comparison
equal
deleted
inserted
replaced
50:10868c3fb2be | 51:75c804f713b2 |
---|---|
4 #include <QDate> | 4 #include <QDate> |
5 #include <cstdint> | 5 #include <cstdint> |
6 class Date { | 6 class Date { |
7 public: | 7 public: |
8 Date(); | 8 Date(); |
9 Date(int32_t y); | 9 Date(unsigned int y); |
10 Date(int32_t y, int8_t m, int8_t d); | 10 Date(unsigned int y, unsigned int m, unsigned int d); |
11 Date(const QDate& date); | |
11 bool IsValid() const; | 12 bool IsValid() const; |
12 void SetYear(int32_t y); | 13 void SetYear(unsigned int y); |
13 void SetMonth(int8_t m); | 14 void SetMonth(unsigned int m); |
14 void SetDay(int8_t d); | 15 void SetDay(unsigned int d); |
15 void VoidYear(); | 16 void VoidYear(); |
16 void VoidMonth(); | 17 void VoidMonth(); |
17 void VoidDay(); | 18 void VoidDay(); |
18 int32_t GetYear() const; | 19 unsigned int GetYear() const; |
19 int8_t GetMonth() const; | 20 unsigned int GetMonth() const; |
20 int8_t GetDay() const; | 21 unsigned int GetDay() const; |
21 QDate GetAsQDate() const; | 22 QDate GetAsQDate() const; |
22 nlohmann::json GetAsAniListJson() const; | 23 nlohmann::json GetAsAniListJson() const; |
23 bool operator<(const Date& other) const; | 24 bool operator<(const Date& other) const; |
24 bool operator>(const Date& other) const; | 25 bool operator>(const Date& other) const; |
25 bool operator<=(const Date& other) const; | 26 bool operator<=(const Date& other) const; |
26 bool operator>=(const Date& other) const; | 27 bool operator>=(const Date& other) const; |
27 | 28 |
28 private: | 29 private: |
29 std::shared_ptr<int32_t> year; | 30 /* note: it might be worth it to change these all to int, as |
30 std::shared_ptr<int8_t> month; | 31 large bit precisions aren't exactly useful here... */ |
31 std::shared_ptr<int8_t> day; | 32 std::shared_ptr<unsigned int> year; |
33 std::shared_ptr<unsigned int> month; | |
34 std::shared_ptr<unsigned int> day; | |
32 }; | 35 }; |
33 #endif // __core__date_h | 36 #endif // __core__date_h |