1 #include "routeresultwidget.h"
2 #include "ui_routeresultwidget.h"
4 #include "routelegwidget.h"
5 #include "routeoneitemwidget.h"
7 #include "src/logic/routeleg.h"
11 #include <QScrollArea>
14 #include <QApplication>
15 #include <QDesktopWidget>
18 RouteResultWidget::RouteResultWidget(QWidget *parent) :
20 ui(new Ui::RouteResultWidget),
26 this->setAttribute(Qt::WA_Maemo5StackedWindow);
27 //connect(QApplication::desktop(), SIGNAL(resized(int)), SLOT(rotationEvent()));
28 //this->setObjectName(this->parent()->objectName());
29 //this->resize(800, 480);
31 this->setWindowTitle(QCoreApplication::applicationName());
34 RouteResultWidget::~RouteResultWidget()
37 while (this->routes.size() > 0)
38 delete this->routes.takeLast();
41 void RouteResultWidget::addRoute(RouteNew *route)
43 RouteOneItemWidget *item = new RouteOneItemWidget();
45 QHBoxLayout *layout = new QHBoxLayout();
47 item->setStartTime(route->startTime);
48 item->setEndTime(route->endTime);
50 RouteLeg *leg = route->route.at(0);
51 if (leg->type == WALK)
53 if (route->route.size() > 1)
54 leg = route->route.at(1);
61 item->setStopTime(none);
64 item->setStopTime(leg->startPoint->departure_time);
66 QTime duration = QTime().addSecs(route->startTime.secsTo(route->endTime));
67 qDebug() << "Duration:" << duration;
68 qDebug() << "Seconds:" << route->startTime.secsTo(route->endTime);
69 item->setDuration(duration);
71 QList<RouteLeg*>::const_iterator iter;
72 for (iter = route->route.constBegin(); iter != route->route.constEnd(); iter++)
74 RouteLegWidget *leg_widget = new RouteLegWidget();
75 leg_widget->setDisplay(*iter);
76 layout->addWidget(leg_widget);
77 layout->setSpacing(0);
80 item->setItemsWidget(layout);
82 QListWidgetItem *listItem = new QListWidgetItem("");
85 qDebug() << "Item size:" << item->size().width();
86 qDebug() << "SizeHint:" << item->sizeHint().width();
87 qDebug() << "Min:" << item->minimumWidth();
88 qDebug() << "Max:" << item->maximumWidth();
90 listItem->setSizeHint(item->sizeHint());
91 this->ui->routesArea->addItem(listItem);
92 this->ui->routesArea->setItemWidget(listItem, item);
94 this->routes.append(new RouteNew(*route));
96 //this->ui->routesArea->setMinimumWidth(this->ui->routesArea->sizeHint().width());