first commit
This commit is contained in:
@@ -0,0 +1,50 @@
|
||||
#ifndef PICSCHEDULESHIFTITEM_H
|
||||
#define PICSCHEDULESHIFTITEM_H
|
||||
|
||||
#include "pictextitem.h"
|
||||
#include <QTime>
|
||||
#include <QString>
|
||||
#include <QTimer>
|
||||
|
||||
struct ScheduleModel
|
||||
{
|
||||
QTime startTime;
|
||||
QString name;
|
||||
};
|
||||
|
||||
static bool operator < (const ScheduleModel& l, const ScheduleModel& r) {
|
||||
return l.startTime < r.startTime;
|
||||
}
|
||||
|
||||
Q_DECLARE_METATYPE(ScheduleModel);
|
||||
|
||||
class PicScheduleShiftItem : public PicTextItem
|
||||
{
|
||||
public:
|
||||
PicScheduleShiftItem(QGraphicsItem *parent = 0, QGraphicsScene *scene = 0, const SourceType type = SourceType::SCHEDULE_SHIFT);
|
||||
|
||||
virtual QVariant source();
|
||||
virtual void setSource(QVariant var);
|
||||
|
||||
const QVector<ScheduleModel>& schedules() const;
|
||||
void setSchedules(QVector<ScheduleModel> schedules);
|
||||
|
||||
bool updateScheduleName();
|
||||
|
||||
protected:
|
||||
virtual void setCustomAttrs(const QXmlStreamAttributes& attrs) override;
|
||||
|
||||
virtual void saveCustomAttrs(QXmlStreamAttributes& attrs) override;
|
||||
|
||||
virtual QImage itemImage();
|
||||
|
||||
private:
|
||||
|
||||
QString findScheduleName(const QTime& time);
|
||||
|
||||
QVector<ScheduleModel> m_schedules;
|
||||
QTimer m_updateTimer;
|
||||
QString m_currScheduleName;
|
||||
};
|
||||
|
||||
#endif // PICSCHEDULESHIFTITEM_H
|
||||
Reference in New Issue
Block a user