X-Git-Url: http://vcs.maemo.org/git/?a=blobdiff_plain;f=zouba%2Froute.cpp;h=37c93778c31a84fc209eefeb2c39626915af4704;hb=e377f99e1701bb2f5d583954485d1a1e6d031d05;hp=1c3bedaf2d79c4ce272dc9e5135ffe7f9f75953d;hpb=4f429bb5b56d861c5e35eeedf01b64287d66bd71;p=ptas diff --git a/zouba/route.cpp b/zouba/route.cpp index 1c3beda..37c9377 100644 --- a/zouba/route.cpp +++ b/zouba/route.cpp @@ -35,9 +35,9 @@ void Route::getRoute() QUrl fullUrl( Ytv::Url ); QStringList a; - a << q->fromLocation().x() << q->fromLocation().y(); + a << q->fromLocation()->x() << q->fromLocation()->y(); QStringList b; - b << q->toLocation().x() << q->toLocation().y(); + b << q->toLocation()->x() << q->toLocation()->y(); fullUrl.addQueryItem( "a", a.join(",") ); fullUrl.addQueryItem( "b", b.join(",") ); @@ -47,6 +47,7 @@ void Route::getRoute() fullUrl.addQueryItem( "pass", Ytv::Password ); manager->get( QNetworkRequest( fullUrl ) ); + qDebug() << "getting url" << fullUrl.toEncoded(); qDebug() << "waiting for reply from Ytv"; } @@ -58,38 +59,47 @@ void Route::replyFinished( QNetworkReply * reply ) emit( routeReady( routeData ) ); } -void Route::setFromLocation( const Location &location ) +void Route::setFromLocation( Location *location ) { qDebug() << "setting new From location"; - if ( location.isValid() ) { + if ( location && location->isValid() ) { + qDebug() << "From is valid"; q->setFromLocation( location ); if ( q->toValid() ) { - getRoute(); + qDebug() << "To is also valid"; + getRoute(); + } else { + qDebug() << "To not valid - waiting"; } } else { - Location *locationPtr = qobject_cast(sender()); - if ( locationPtr ) { - q->setFromLocation( *locationPtr ); + qDebug() << "From is not valid"; + qDebug() << "getting From from signal sender"; + location = qobject_cast(sender()); + if ( location ) { + q->setFromLocation( location ); if ( q->toValid() ) { + qDebug() << "To is also valid"; getRoute(); + } else { + qDebug() << "To not valid - waiting"; } } else { - qDebug() << "locationPtr is zero - cast didn't work"; + qDebug() << "location is zero - cast didn't work"; } } } -const Location &Route::fromLocation() +Location *Route::fromLocation() const { return q->fromLocation(); } -void Route::setToLocation( const Location &location ) +void Route::setToLocation( Location *location ) { qDebug() << "setting new To location"; - if ( location.isValid() ) { + if ( location && location->isValid() ) { qDebug() << "To is valid"; q->setToLocation( location ); if ( q->fromValid() ) { @@ -101,9 +111,9 @@ void Route::setToLocation( const Location &location ) } else { qDebug() << "To is not valid"; qDebug() << "getting To from signal sender"; - Location *locationPtr = qobject_cast(sender()); - if ( locationPtr ) { - q->setToLocation( *locationPtr ); + Location *location = qobject_cast(sender()); + if ( location ) { + q->setToLocation( location ); if ( q->fromValid() ) { qDebug() << "From is also valid"; getRoute(); @@ -111,21 +121,12 @@ void Route::setToLocation( const Location &location ) qDebug() << "From not valid - waiting"; } } else { - qDebug() << "locationPtr is zero; cast failed"; + qDebug() << "location is zero; cast failed"; } } } -const Location &Route::toLocation() +Location *Route::toLocation() const { return q->toLocation(); } - -void Route::toggleDirection() -{ - Location oldFromLocation = fromLocation(); - setFromLocation( toLocation() ); - setToLocation( oldFromLocation ); - - getRoute(); -}