summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMinijackson <minijackson@riseup.net>2018-04-16 11:02:32 +0200
committerMinijackson <minijackson@riseup.net>2018-04-16 11:02:32 +0200
commit624f7b55560e675871d39f7c1da9e7e73be6ed84 (patch)
tree1495445b4f5455950157206e4d04b13eb8717e71
parent6a9ff4ac53f7c60902b851f4635ee4bf6ff2d024 (diff)
downloadkube-624f7b55560e675871d39f7c1da9e7e73be6ed84.tar.gz
kube-624f7b55560e675871d39f7c1da9e7e73be6ed84.zip
Rename viewLength and viewStart properties to start & length
-rw-r--r--framework/src/domain/perioddayeventmodel.cpp36
-rw-r--r--framework/src/domain/perioddayeventmodel.h34
-rw-r--r--views/calendar/qml/WeekEvents.qml3
3 files changed, 37 insertions, 36 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
81int PeriodDayEventModel::bucketOf(QDate const &candidate) const 81int 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
133int PeriodDayEventModel::rowCount(const QModelIndex &parent) const 133int 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
227QDate PeriodDayEventModel::viewStart() const 227QDate PeriodDayEventModel::periodStart() const
228{ 228{
229 return mViewStart; 229 return mPeriodStart;
230} 230}
231 231
232void PeriodDayEventModel::setViewStart(QDate start) 232void 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
243void PeriodDayEventModel::setViewStart(QVariant start) 243void PeriodDayEventModel::setPeriodStart(QVariant start)
244{ 244{
245 setViewStart(start.toDate()); 245 setPeriodStart(start.toDate());
246} 246}
247 247
248int PeriodDayEventModel::viewLength() const 248int PeriodDayEventModel::periodLength() const
249{ 249{
250 return mViewLength; 250 return mPeriodLength;
251} 251}
252 252
253void PeriodDayEventModel::setViewLength(int length) 253void 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
86public: 86public:
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
117private: 117private:
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;
diff --git a/views/calendar/qml/WeekEvents.qml b/views/calendar/qml/WeekEvents.qml
index 2956f3ac..774f254e 100644
--- a/views/calendar/qml/WeekEvents.qml
+++ b/views/calendar/qml/WeekEvents.qml
@@ -3,5 +3,6 @@ import QtQuick 2.7
3import org.kube.framework 1.0 as Kube 3import org.kube.framework 1.0 as Kube
4 4
5Kube.PeriodDayEventModel { 5Kube.PeriodDayEventModel {
6 viewStart: "2018-04-09" 6 start: "2018-04-09"
7 length: 7
7} 8}