This repository has been archived on 2026-05-31. You can view files and clone it, but cannot push or open issues or pull requests.

46 lines
1.1 KiB
C++

#ifndef CALENDARITEM_H
#define CALENDARITEM_H
#include <QObject>
#include <QDateTime>
class RepeatingOption;
class CalendarItem : public QObject
{
Q_OBJECT
Q_PROPERTY(int duration READ duration WRITE setDuration NOTIFY durationChanged)
Q_PROPERTY(QDateTime dateTime READ dateTime WRITE setDateTime NOTIFY dateTimeChanged)
Q_PROPERTY(QTime startTime READ startTime WRITE setStartTime NOTIFY startTimeChanged)
Q_PROPERTY(RepeatingOption* repeatingOption READ repeatingOption CONSTANT)
public:
explicit CalendarItem(QObject *parent = nullptr);
int duration() const;
void setDuration(int duration);
QDateTime dateTime() const;
void setDateTime(const QDateTime &dateTime);
QTime startTime() const;
void setStartTime(const QTime &startTime);
RepeatingOption* repeatingOption() const;
CalendarItem* clone() const;
signals:
void durationChanged();
void dateTimeChanged();
void startTimeChanged();
private:
int m_duration = 0;
QDateTime m_dateTime;
QTime m_startTime;
RepeatingOption* m_repeatingOption = nullptr;
};
#endif // CALENDARITEM_H