Added platform getters setters to the scheduleItem class
authorLuciano Montanaro <mikelima@cirulla.net>
Mon, 19 Dec 2011 21:17:44 +0000 (22:17 +0100)
committerLuciano Montanaro <mikelima@cirulla.net>
Tue, 27 Dec 2011 22:19:14 +0000 (23:19 +0100)
application/stationscheduleitem.cpp
application/stationscheduleitem.h
application/stationschedulemodel.cpp
application/stationschedulemodel.h

index 008c175..244cbb7 100644 (file)
@@ -32,6 +32,8 @@ public:
     QString arrivalTime;
     QString detailsUrl;
     QString delay;
+    QString expectedPlatform;
+    QString actualPlatform;
     int delayClass;
 };
 
@@ -134,6 +136,26 @@ void StationScheduleItem::setDelayClass(const int value)
     d->delayClass = value;
 }
 
+QString &StationScheduleItem::expectedPlatform()
+{
+    return d->expectedPlatform;
+}
+
+void StationScheduleItem::setExpectedPlatform(const QString &value)
+{
+    d->expectedPlatform = value;
+}
+
+QString &StationScheduleItem::actualPlatform()
+{
+    return d->actualPlatform;
+}
+
+void StationScheduleItem::setActualPlatform(const QString &value)
+{
+    d->actualPlatform = value;
+}
+
 bool StationScheduleItem::isValid()
 {
     return !d->train.isEmpty();
index fc73c93..8205318 100644 (file)
@@ -58,6 +58,12 @@ public:
     int delayClass();
     void setDelayClass(const int value);
 
+    QString &expectedPlatform();
+    void setExpectedPlatform(const QString &value);
+
+    QString &actualPlatform();
+    void setActualPlatform(const QString &value);
+
     bool isValid();
 private:
     QSharedDataPointer<StationScheduleItemData> d;
index c7b20e2..72839c7 100644 (file)
@@ -44,6 +44,8 @@ StationScheduleModel::StationScheduleModel(const QString &name, QObject *parent)
     roles[DetailsUrlRole] = "detailsUrl";
     roles[DelayRole] = "delay";
     roles[DelayClassRole] = "delayClass";
+    roles[ExpectedPlatformRole] = "expectedPlatform";
+    roles[ActualPlatformRole] = "actualPlatform";
     setRoleNames(roles);
 
     connect(provider, SIGNAL(stationScheduleReady(QByteArray,QUrl)),
@@ -132,6 +134,8 @@ static void parseTrain(const QString &text, StationScheduleItem &item)
             item.setArrivalTime(filter.cap(3));
         }
         item.setDelay(filter.cap(6));
+        item.setExpectedPlatform(filter.cap(4));
+        item.setActualPlatform(filter.cap(5));
     } else {
         qDebug() << "could not parse" << text;
     }
@@ -158,6 +162,8 @@ StationScheduleItem parseResult(const QWebElement &result)
     qDebug() << "departureTime:" << item.departureTime();
     qDebug() << "arrivalStation:" << item.arrivalStation();
     qDebug() << "arrivalTime:" << item.arrivalTime();
+    qDebug() << "expectedPlatform:" << item.expectedPlatform();
+    qDebug() << "actualPlatform:" << item.actualPlatform();
     qDebug() << "delay:" << item.delay();
     return item;
 }
index bead128..b2c2805 100644 (file)
@@ -43,7 +43,9 @@ class StationScheduleModel : public QAbstractListModel
         ArrivalTimeRole,
         DetailsUrlRole,
         DelayRole,
-        DelayClassRole
+        DelayClassRole,
+        ExpectedPlatformRole,
+        ActualPlatformRole
     };
 
 public: