Mercurial > minori
view include/gui/widgets/optional_date.h @ 187:9613d72b097e
*: multiple performance improvements
like marking `static const` when it makes sense...
date: change old stupid heap-based method to a structure which should
make copying the thing actually make a copy.
also many performance-based changes, like removing the std::tie
dependency and forward-declaring nlohmann json
*: replace every instance of QString::fromUtf8 to Strings::ToQString.
the main difference is that our function will always convert exactly
what is in the string, while some other times it would only convert
up to the nearest NUL byte
| author | Paper <mrpapersonic@gmail.com> |
|---|---|
| date | Wed, 06 Dec 2023 13:43:54 -0500 |
| parents | 8043152ef9d4 |
| children | 862d0d8619f6 |
line wrap: on
line source
#ifndef __gui__widgets__optional_date_h #define __gui__widgets__optional_date_h #include "core/date.h" #include <QWidget> class QCheckBox; class QDateEdit; class QDate; class OptionalDate final : public QWidget { Q_OBJECT public: OptionalDate(QWidget* parent = nullptr); OptionalDate(bool enabled, QWidget* parent = nullptr); QDateEdit* GetDateEdit(); QCheckBox* GetCheckBox(); void SetDate(QDate date); void SetDate(Date date); Date GetDate(); void SetEnabled(bool enabled); bool IsEnabled(); signals: void DataChanged(bool checked, Date date); private: QDateEdit* _dateedit; QCheckBox* _checkbox; }; #endif // __gui__widgets__optional_date_h
