// -----------------------------------------------------------------------------
// CThumbnailMDSQueryTask::HandleQueryCompleted()
// -----------------------------------------------------------------------------
//
void CThumbnailMDSQueryTask::HandleQueryCompleted( CMdEQuery& /*aQuery*/, const TInt aError )
    {
    TN_DEBUG3( "CThumbnailMDSQueryTask::HandleQueryCompleted(0x%08x), aError == %d", this, aError );
    OstTrace1( TRACE_NORMAL, CTHUMBNAILMDSQUERYTASK_HANDLEQUERYCOMPLETED, "CThumbnailMDSQueryTask::HandleQueryCompleted;this=%o", this );
    OstTrace1( TRACE_NORMAL, DUP1_CTHUMBNAILMDSQUERYTASK_HANDLEQUERYCOMPLETED, "CThumbnailMDSQueryTask::HandleQueryCompleted;aError=%d", aError );
    
    
    // if no errors in query
    if (aError == KErrNone && iQuery && iQuery->Count() > 0)
        {
        if( iQueryType == EURI )
            {
            const CMdEObject* object = &iQuery->Result(0);
            
            TN_DEBUG2( "CThumbnailMDSQueryTask::HandleQueryCompleted() - URI = %S", &object->Uri() );
            OstTraceExt1( TRACE_NORMAL, DUP2_CTHUMBNAILMDSQUERYTASK_HANDLEQUERYCOMPLETED, "CThumbnailMDSQueryTask::HandleQueryCompleted;object->Uri()=%S", object->Uri() );
                            
            // return path to client side       
            if( iDelete )
                {
                TN_DEBUG2( "CThumbnailMDSQueryTask::HandleQueryCompleted() delete %S", &iUri );
                OstTraceExt1( TRACE_NORMAL, DUP3_CTHUMBNAILMDSQUERYTASK_HANDLEQUERYCOMPLETED, "CThumbnailMDSQueryTask::HandleQueryCompleted - delete;iUri()=%S", iUri );
                TRAP_IGNORE( iServer.DeleteThumbnailsL( iUri ) );
                }
            else
                {
                ReturnPath(object->Uri());
                }
            }
        else
            {
            TN_DEBUG1( "CThumbnailMDSQueryTask::HandleQueryCompleted() - Don't ever come here!" );
            OstTrace0( TRACE_NORMAL, DUP4_CTHUMBNAILMDSQUERYTASK_HANDLEQUERYCOMPLETED, "CThumbnailMDSQueryTask::HandleQueryCompleted - Don't ever come here!" );
            if (ClientThreadAlive())
                {  
                Complete( KErrNotFound );
                ResetMessageData();
                }
            __ASSERT_DEBUG((EFalse), User::Panic(_L("CThumbnailMDSQueryTask::HandleQueryCompleted()"), KErrNotSupported));
            }
        }
    else
        {
        TN_DEBUG1( "CThumbnailMDSQueryTask::HandleQueryCompleted() - No results." );
        OstTrace0( TRACE_NORMAL, DUP5_CTHUMBNAILMDSQUERYTASK_HANDLEQUERYCOMPLETED, "CThumbnailMDSQueryTask::HandleQueryCompleted - No results." );
        if(!iDelete)
            {
            if (ClientThreadAlive())
                {  
                Complete( KErrNotFound );
                ResetMessageData();
                }
            }
        }
   }
void TradeRouteData::GenerateSelectedPath(const MapPoint &pos)
{
	if ((m_selectedIndex == 0) || (m_selectedIndex == m_selectedWayPoints.Num()))
        return;

	DynamicArray<MapPoint> tempWp = m_selectedWayPoints;
	tempWp[m_selectedIndex] = pos;

	DynamicArray<MapPoint> tempPath;
	double cost;

	ReturnPath(m_owner, tempWp, tempPath, cost);

	m_selectedWayPoints = tempWp;
	m_selectedPath      = tempPath;
}