diff options
Diffstat (limited to 'framework/src/domain')
-rw-r--r-- | framework/src/domain/perioddayeventmodel.cpp | 36 | ||||
-rw-r--r-- | framework/src/domain/perioddayeventmodel.h | 34 |
2 files changed, 35 insertions, 35 deletions
diff --git a/framework/src/domain/perioddayeventmodel.cpp b/framework/src/domain/perioddayeventmodel.cpp index 0b374d5c..c88bdbc8 100644 --- a/framework/src/domain/perioddayeventmodel.cpp +++ b/framework/src/domain/perioddayeventmodel.cpp | |||
@@ -56,7 +56,7 @@ void PeriodDayEventModel::partitionData() | |||
56 | 56 | ||
57 | beginResetModel(); | 57 | beginResetModel(); |
58 | 58 | ||
59 | partitionedEvents = QVector<QList<QSharedPointer<Event>>>(mViewLength); | 59 | partitionedEvents = QVector<QList<QSharedPointer<Event>>>(mPeriodLength); |
60 | 60 | ||
61 | for (int i = 0; i < eventModel->rowCount(); ++i) { | 61 | for (int i = 0; i < eventModel->rowCount(); ++i) { |
62 | auto event = eventModel->index(i, 0).data(Sink::Store::DomainObjectRole).value<Event::Ptr>(); | 62 | auto event = eventModel->index(i, 0).data(Sink::Store::DomainObjectRole).value<Event::Ptr>(); |
@@ -80,8 +80,8 @@ void PeriodDayEventModel::partitionData() | |||
80 | 80 | ||
81 | int PeriodDayEventModel::bucketOf(QDate const &candidate) const | 81 | int PeriodDayEventModel::bucketOf(QDate const &candidate) const |
82 | { | 82 | { |
83 | int bucket = mViewStart.daysTo(candidate); | 83 | int bucket = mPeriodStart.daysTo(candidate); |
84 | if(bucket >= mViewLength || bucket < 0) { | 84 | if(bucket >= mPeriodLength || bucket < 0) { |
85 | return -1; | 85 | return -1; |
86 | } | 86 | } |
87 | 87 | ||
@@ -97,7 +97,7 @@ QModelIndex PeriodDayEventModel::index(int row, int column, const QModelIndex &p | |||
97 | if (!parent.isValid()) { | 97 | if (!parent.isValid()) { |
98 | // Asking for a day | 98 | // Asking for a day |
99 | 99 | ||
100 | if (!(0 <= row && row < mViewLength)) { | 100 | if (!(0 <= row && row < mPeriodLength)) { |
101 | return {}; | 101 | return {}; |
102 | } | 102 | } |
103 | 103 | ||
@@ -107,7 +107,7 @@ QModelIndex PeriodDayEventModel::index(int row, int column, const QModelIndex &p | |||
107 | // Asking for an Event | 107 | // Asking for an Event |
108 | auto day = static_cast<int>(parent.row()); | 108 | auto day = static_cast<int>(parent.row()); |
109 | 109 | ||
110 | Q_ASSERT(0 <= day && day <= mViewLength); | 110 | Q_ASSERT(0 <= day && day <= mPeriodLength); |
111 | if (row >= partitionedEvents[day].size()) { | 111 | if (row >= partitionedEvents[day].size()) { |
112 | return {}; | 112 | return {}; |
113 | } | 113 | } |
@@ -133,7 +133,7 @@ QModelIndex PeriodDayEventModel::parent(const QModelIndex &index) const | |||
133 | int PeriodDayEventModel::rowCount(const QModelIndex &parent) const | 133 | int PeriodDayEventModel::rowCount(const QModelIndex &parent) const |
134 | { | 134 | { |
135 | if (!parent.isValid()) { | 135 | if (!parent.isValid()) { |
136 | return mViewLength; | 136 | return mPeriodLength; |
137 | } | 137 | } |
138 | 138 | ||
139 | auto day = parent.row(); | 139 | auto day = parent.row(); |
@@ -160,7 +160,7 @@ QVariant PeriodDayEventModel::data(const QModelIndex &id, int role) const | |||
160 | 160 | ||
161 | switch (role) { | 161 | switch (role) { |
162 | case Qt::DisplayRole: | 162 | case Qt::DisplayRole: |
163 | return mViewStart.addDays(day).toString(); | 163 | return mPeriodStart.addDays(day).toString(); |
164 | case Events: { | 164 | case Events: { |
165 | auto result = QVariantList{}; | 165 | auto result = QVariantList{}; |
166 | 166 | ||
@@ -224,34 +224,34 @@ QHash<int, QByteArray> PeriodDayEventModel::roleNames() const | |||
224 | return roles; | 224 | return roles; |
225 | } | 225 | } |
226 | 226 | ||
227 | QDate PeriodDayEventModel::viewStart() const | 227 | QDate PeriodDayEventModel::periodStart() const |
228 | { | 228 | { |
229 | return mViewStart; | 229 | return mPeriodStart; |
230 | } | 230 | } |
231 | 231 | ||
232 | void PeriodDayEventModel::setViewStart(QDate start) | 232 | void PeriodDayEventModel::setPeriodStart(QDate start) |
233 | { | 233 | { |
234 | if (!start.isValid()) { | 234 | if (!start.isValid()) { |
235 | SinkWarning() << "Passed an invalid starting date in setViewStart, ignoring..."; | 235 | SinkWarning() << "Passed an invalid starting date in setPeriodStart, ignoring..."; |
236 | return; | 236 | return; |
237 | } | 237 | } |
238 | 238 | ||
239 | mViewStart = std::move(start); | 239 | mPeriodStart = std::move(start); |
240 | partitionData(); | 240 | partitionData(); |
241 | } | 241 | } |
242 | 242 | ||
243 | void PeriodDayEventModel::setViewStart(QVariant start) | 243 | void PeriodDayEventModel::setPeriodStart(QVariant start) |
244 | { | 244 | { |
245 | setViewStart(start.toDate()); | 245 | setPeriodStart(start.toDate()); |
246 | } | 246 | } |
247 | 247 | ||
248 | int PeriodDayEventModel::viewLength() const | 248 | int PeriodDayEventModel::periodLength() const |
249 | { | 249 | { |
250 | return mViewLength; | 250 | return mPeriodLength; |
251 | } | 251 | } |
252 | 252 | ||
253 | void PeriodDayEventModel::setViewLength(int length) | 253 | void PeriodDayEventModel::setPeriodLength(int length) |
254 | { | 254 | { |
255 | mViewLength = std::move(length); | 255 | mPeriodLength = std::move(length); |
256 | partitionData(); | 256 | partitionData(); |
257 | } | 257 | } |
diff --git a/framework/src/domain/perioddayeventmodel.h b/framework/src/domain/perioddayeventmodel.h index cd26fe46..5f493bbe 100644 --- a/framework/src/domain/perioddayeventmodel.h +++ b/framework/src/domain/perioddayeventmodel.h | |||
@@ -30,22 +30,22 @@ | |||
30 | 30 | ||
31 | #include <limits> | 31 | #include <limits> |
32 | 32 | ||
33 | // Facility used to get a restricted view into a Sink model comprised of | 33 | // Facility used to get a restricted period into a Sink model comprised of |
34 | // events, partitioned according to the day the events take place. | 34 | // events, partitioned according to the day the events take place. |
35 | // | 35 | // |
36 | // Model Format | 36 | // Model Format |
37 | // ============ | 37 | // ============ |
38 | // | 38 | // |
39 | // Day 0 | 39 | // Day 0 |
40 | // |--- Event 0 starting at `viewStart + 0d` | 40 | // |--- Event 0 starting at `periodStart + 0d` |
41 | // |--- Event 1 starting at `viewStart + 0d` | 41 | // |--- Event 1 starting at `periodStart + 0d` |
42 | // '--- Event 2 starting at `viewStart + 0d` | 42 | // '--- Event 2 starting at `periodStart + 0d` |
43 | // Day 1 | 43 | // Day 1 |
44 | // '--- Event 0 starting at `viewStart + 1d` | 44 | // '--- Event 0 starting at `periodStart + 1d` |
45 | // Day 2 | 45 | // Day 2 |
46 | // Day 3 | 46 | // Day 3 |
47 | // |--- Event 0 starting at `viewStart + 3d` | 47 | // |--- Event 0 starting at `periodStart + 3d` |
48 | // '--- Event 1 starting at `viewStart + 3d` | 48 | // '--- Event 1 starting at `periodStart + 3d` |
49 | // Day 4 | 49 | // Day 4 |
50 | // ⋮ | 50 | // ⋮ |
51 | // | 51 | // |
@@ -58,7 +58,7 @@ | |||
58 | // Columns are never used. | 58 | // Columns are never used. |
59 | // | 59 | // |
60 | // Top-level items just contains the ".events" attribute, and their rows | 60 | // Top-level items just contains the ".events" attribute, and their rows |
61 | // correspond to their offset compared to the start of the view (in number of | 61 | // correspond to their offset compared to the start of the period (in number of |
62 | // days). In that case the internalId contains DAY_ID. | 62 | // days). In that case the internalId contains DAY_ID. |
63 | // | 63 | // |
64 | // Direct children are events, and their rows corresponds to their index in | 64 | // Direct children are events, and their rows corresponds to their index in |
@@ -80,8 +80,8 @@ class PeriodDayEventModel : public QAbstractItemModel | |||
80 | { | 80 | { |
81 | Q_OBJECT | 81 | Q_OBJECT |
82 | 82 | ||
83 | Q_PROPERTY(QVariant viewStart READ viewStart WRITE setViewStart) | 83 | Q_PROPERTY(QVariant start READ periodStart WRITE setPeriodStart) |
84 | Q_PROPERTY(int viewLength READ viewLength WRITE setViewLength) | 84 | Q_PROPERTY(int length READ periodLength WRITE setPeriodLength) |
85 | 85 | ||
86 | public: | 86 | public: |
87 | using Event = Sink::ApplicationDomain::Event; | 87 | using Event = Sink::ApplicationDomain::Event; |
@@ -108,19 +108,19 @@ public: | |||
108 | 108 | ||
109 | QHash<int, QByteArray> roleNames() const override; | 109 | QHash<int, QByteArray> roleNames() const override; |
110 | 110 | ||
111 | QDate viewStart() const; | 111 | QDate periodStart() const; |
112 | void setViewStart(QDate); | 112 | void setPeriodStart(QDate); |
113 | void setViewStart(QVariant); | 113 | void setPeriodStart(QVariant); |
114 | int viewLength() const; | 114 | int periodLength() const; |
115 | void setViewLength(int); | 115 | void setPeriodLength(int); |
116 | 116 | ||
117 | private: | 117 | private: |
118 | void partitionData(); | 118 | void partitionData(); |
119 | 119 | ||
120 | int bucketOf(QDate const &candidate) const; | 120 | int bucketOf(QDate const &candidate) const; |
121 | 121 | ||
122 | QDate mViewStart; | 122 | QDate mPeriodStart; |
123 | int mViewLength = 7; | 123 | int mPeriodLength = 7; |
124 | 124 | ||
125 | QSharedPointer<QAbstractItemModel> eventModel; | 125 | QSharedPointer<QAbstractItemModel> eventModel; |
126 | QVector<QList<QSharedPointer<Event>>> partitionedEvents; | 126 | QVector<QList<QSharedPointer<Event>>> partitionedEvents; |