#include "ytv.h"
Route::Route() :
- q( new RoutePrivate( this ) ),
- manager( new QNetworkAccessManager(this) )
+ q(new RoutePrivate(this)),
+ manager(new QNetworkAccessManager(this))
{
- connect( manager, SIGNAL( finished(QNetworkReply*) ), this, SLOT( replyFinished(QNetworkReply*) ) );
+ connect(manager, SIGNAL(finished(QNetworkReply*)), this, SLOT(replyFinished(QNetworkReply*)));
}
Route::~Route()
{
- delete manager;
- manager = 0;
+ delete manager;
+ manager = 0;
}
void Route::getRoute()
{
- qDebug() << "getting route from Ytv";
-
- QUrl fullUrl( Ytv::Url );
-
- QStringList a;
- a << q->fromLocation()->x() << q->fromLocation()->y();
- QStringList b;
- b << q->toLocation()->x() << q->toLocation()->y();
-
- fullUrl.addQueryItem( "a", a.join(",") );
- fullUrl.addQueryItem( "b", b.join(",") );
- fullUrl.addQueryItem( "show", QString::number(Ytv::ShowFiveResults) );
- fullUrl.addQueryItem( "walkspeed", QString::number(Ytv::WalkSpeedFast) );
- fullUrl.addQueryItem( "optimize", QString::number(Ytv::OptimizeLeastWalking) );
- fullUrl.addQueryItem( "user", Ytv::Username );
- fullUrl.addQueryItem( "pass", Ytv::Password );
-
- manager->get( QNetworkRequest( fullUrl ) );
- qDebug() << "getting url" << fullUrl.toEncoded();
- qDebug() << "waiting for reply from Ytv";
- emit( busy( true ) );
+ qDebug() << "getting route from Ytv";
+
+ QUrl fullUrl(Ytv::Url);
+
+ QStringList a;
+ a << q->fromLocation()->longitude() << q->fromLocation()->latitude();
+ QStringList b;
+ b << q->toLocation()->longitude() << q->toLocation()->latitude();
+
+ fullUrl.addQueryItem("user", Ytv::Username);
+ fullUrl.addQueryItem("pass", Ytv::Password);
+ fullUrl.addQueryItem("request", Ytv::Route);
+ fullUrl.addQueryItem("format", Ytv::Xml);
+ fullUrl.addQueryItem("language", Ytv::English);
+ fullUrl.addQueryItem("epsg_in", Ytv::WGS84);
+ fullUrl.addQueryItem("epsg_out", Ytv::WGS84);
+ fullUrl.addQueryItem("from", a.join(","));
+ fullUrl.addQueryItem("to", b.join(","));
+ fullUrl.addQueryItem("show", QString::number(Ytv::ShowFiveResults));
+ fullUrl.addQueryItem("walkspeed", QString::number(Ytv::WalkSpeedFast));
+ fullUrl.addQueryItem("optimize", QString::number(Ytv::OptimizeLeastWalking));
+
+ manager->get(QNetworkRequest(fullUrl));
+ qDebug() << "getting url" << fullUrl.toEncoded();
+ qDebug() << "waiting for reply from Ytv";
+ emit(busy(true));
}
-void Route::replyFinished( QNetworkReply * reply )
+void Route::replyFinished(QNetworkReply * reply)
{
- qDebug() << "have reply from Ytv";
- QList<RouteData> routeData = q->parseReply( reply->readAll() );
+ qDebug() << "have reply from Ytv";
+ QList<RouteData> routeData = q->parseReply(reply->readAll());
- emit( routeReady( routeData ) );
- emit( busy( false ) );
+ emit(routeReady(routeData));
+ emit(busy(false));
}
-void Route::setFromLocation( Location *location )
+void Route::setFromLocation(Location *location)
{
- qDebug() << "setting new From location (" << location->label() << ")";
-
- if ( location && location->isValid() ) {
- qDebug() << "From is valid";
- q->setFromLocation( location );
- if ( q->toValid() ) {
- qDebug() << "To is also valid";
- getRoute();
+ qDebug() << "setting new From location (" << location->label() << ")";
+
+ if (location && location->isValid()) {
+ qDebug() << "From is valid";
+ q->setFromLocation(location);
+ if (q->toValid()) {
+ qDebug() << "To is also valid";
+ getRoute();
+ } else {
+ qDebug() << "To not valid - waiting";
+ }
} else {
- qDebug() << "To not valid - waiting";
+ qDebug() << "ERROR:From is not valid";
+ qDebug() << "location=" << location;
+ if (location) {
+ qDebug() << "location->isValid()=" << location->isValid();
+ }
}
- } else {
- qDebug() << "ERROR:From is not valid";
- qDebug() << "location=" << location;
- if ( location ) {
- qDebug() << "location->isValid()=" << location->isValid();
- }
- }
}
Location *Route::fromLocation() const
{
- return q->fromLocation();
+ return q->fromLocation();
}
-void Route::setToLocation( Location *location )
+void Route::setToLocation(Location *location)
{
- qDebug() << "setting new To location (" << location->label() << ")";
-
- if ( location && location->isValid() ) {
- qDebug() << "To is valid";
- q->setToLocation( location );
- if ( q->fromValid() ) {
- qDebug() << "From is also valid";
- getRoute();
+ qDebug() << "setting new To location (" << location->label() << ")";
+
+ if (location && location->isValid()) {
+ qDebug() << "To is valid";
+ q->setToLocation(location);
+ if (q->fromValid()) {
+ qDebug() << "From is also valid";
+ getRoute();
+ } else {
+ qDebug() << "From not valid - waiting";
+ }
} else {
- qDebug() << "From not valid - waiting";
- }
- } else {
- qDebug() << "ERROR:From is not valid";
- qDebug() << "location=" << location;
- if ( location ) {
- qDebug() << "location->isValid()=" << location->isValid();
+ qDebug() << "ERROR:From is not valid";
+ qDebug() << "location=" << location;
+ if (location) {
+ qDebug() << "location->isValid()=" << location->isValid();
+ }
}
- }
}
Location *Route::toLocation() const
{
- return q->toLocation();
+ return q->toLocation();
}