locationpickerservice/src/locationpickerdatamanager_p.cpp
changeset 41 b3dd5ec3089d
parent 38 793f76d9ab0c
equal deleted inserted replaced
38:793f76d9ab0c 41:b3dd5ec3089d
   106     {
   106     {
   107         return false;
   107         return false;
   108     }
   108     }
   109     QString lmAddressLine1;
   109     QString lmAddressLine1;
   110     QString lmAddressLine2;
   110     QString lmAddressLine2;
       
   111     QString lmAddressLine3;
   111     QString contextAddress;
   112     QString contextAddress;
   112     QString contextAddressCountry;
   113     QString contextAddressCountry;
   113     
   114     
   114     for( int i = 0; i < aItemArray.count(); i++ )
   115     for( int i = 0; i < aItemArray.count(); i++ )
   115     {
   116     {
   116         contextAddress.clear();
   117         contextAddress.clear();
   117         contextAddressCountry.clear();
   118         contextAddressCountry.clear();
   118         lmAddressLine1.clear();
   119         lmAddressLine1.clear();
   119         lmAddressLine2.clear();
   120         lmAddressLine2.clear();
       
   121         lmAddressLine3.clear();
   120     
   122     
   121         if( !aItemArray[i].mIsDuplicate )
   123         if( !aItemArray[i].mIsDuplicate )
   122         {
   124         {
   123             lmAddressLine1 = aItemArray[i].mName;
   125             lmAddressLine1 = aItemArray[i].mName;
   124             
   126             
   125             bool addressEmtpy = true; // used to check if address line 2 is empty
   127             bool addressEmtpy = true; // used to check if address line 2 is empty
   126             if( !aItemArray[i].mStreet.isEmpty() )
   128             if( !aItemArray[i].mStreet.isEmpty() )
   127             {
   129             {
   128                 if( lmAddressLine1.isEmpty() )
   130                 if( lmAddressLine1.isEmpty() )
   129                 {
   131                 {
   130                     lmAddressLine1 = aItemArray[i].mStreet;
   132                     lmAddressLine2 = aItemArray[i].mStreet;
   131                 }
   133                 }
   132                 else
   134                 else
   133                 {
   135                 {
   134                     lmAddressLine2 = aItemArray[i].mStreet;
   136                     lmAddressLine3 = aItemArray[i].mStreet;
   135                     addressEmtpy = EFalse;
   137                     addressEmtpy = EFalse;
   136             	  }
   138             	}
   137             }
   139             }
   138             if( !aItemArray[i].mCity.isEmpty() )
   140             if( !aItemArray[i].mCity.isEmpty() )
   139             {
   141             {
   140                 if( lmAddressLine1.isEmpty() )
   142                 if( lmAddressLine2.isEmpty() )
   141                 {
   143                 {
   142                     lmAddressLine1 = aItemArray[i].mCity;
   144                     lmAddressLine2 = aItemArray[i].mCity;
   143                 }
   145                 }
   144                 else
   146                 else
   145                 {
   147                 {
   146                     if( !addressEmtpy )
   148                     if( !addressEmtpy )
   147                     {
   149                     {
   148                         lmAddressLine2 = lmAddressLine2 + KSeparator;
   150                         lmAddressLine3 = lmAddressLine3 + KSeparator;
   149                         lmAddressLine2 = lmAddressLine2 + KSpace;
   151                         lmAddressLine3 = lmAddressLine3 + KSpace;
   150                         lmAddressLine2 = lmAddressLine2 + aItemArray[i].mCity;
   152                         lmAddressLine3 = lmAddressLine3 + aItemArray[i].mCity;
   151                     }
   153                     }
   152                     else
   154                     else
   153                     {
   155                     {
   154                         lmAddressLine2 = aItemArray[i].mCity;
   156                         lmAddressLine3 = aItemArray[i].mCity;
   155                         addressEmtpy = EFalse;
   157                         addressEmtpy = EFalse;
   156                     }
   158                     }
   157                 }
   159                 }
   158             }
   160             }
   159             if( !aItemArray[i].mState.isEmpty() )
   161             if( !aItemArray[i].mState.isEmpty() )
   160             {
   162             {
   161                 if( lmAddressLine1.isEmpty() )
   163                 if( lmAddressLine2.isEmpty() )
   162                 {
   164                 {
   163                     lmAddressLine1 = aItemArray[i].mState;
   165                     lmAddressLine2 = aItemArray[i].mState;
   164                 }
   166                 }
   165                 else
   167                 else
   166                 {
   168                 {
   167                     if( !addressEmtpy )
   169                     if( !addressEmtpy )
   168                     {
   170                     {
   169                         lmAddressLine2 = lmAddressLine2 + KSeparator;
   171                         lmAddressLine3 = lmAddressLine3 + KSeparator;
   170                         lmAddressLine2 = lmAddressLine2 + KSpace;
   172                         lmAddressLine3 = lmAddressLine3 + KSpace;
   171                         lmAddressLine2 = lmAddressLine2 + aItemArray[i].mState;
   173                         lmAddressLine3 = lmAddressLine3 + aItemArray[i].mState;
   172                     }
   174                     }
   173                     else
   175                     else
   174                     {
   176                     {
   175                         lmAddressLine2 = aItemArray[i].mState;
   177                         lmAddressLine3 = aItemArray[i].mState;
   176                         addressEmtpy = EFalse;
   178                         addressEmtpy = EFalse;
   177                     }
   179                     }
   178                 }
   180                 }
   179             }
   181             }
   180             contextAddress = lmAddressLine2;
   182             contextAddress = lmAddressLine3;
   181             if( !aItemArray[i].mCountry.isEmpty() )
   183             if( !aItemArray[i].mCountry.isEmpty() )
   182             {
   184             {
   183                 if( !addressEmtpy )
   185                 if( !addressEmtpy )
   184                 {
   186                 {
   185                     lmAddressLine2 = lmAddressLine2 + KSeparator;
   187                     lmAddressLine3 = lmAddressLine3 + KSeparator;
   186                     lmAddressLine2 = lmAddressLine2 + KSpace;
   188                     lmAddressLine3 = lmAddressLine3 + KSpace;
   187                     lmAddressLine2 = lmAddressLine2 + aItemArray[i].mCountry;
   189                     lmAddressLine3 = lmAddressLine3 + aItemArray[i].mCountry;
   188                 }
   190                 }
   189                 else
   191                 else
   190                 {
   192                 {
   191                     lmAddressLine2 = aItemArray[i].mCountry;
   193                     lmAddressLine3 = aItemArray[i].mCountry;
   192                     addressEmtpy = EFalse;
   194                     addressEmtpy = EFalse;
   193                 }
   195                 }
   194                 contextAddressCountry = aItemArray[i].mCountry;
   196                 contextAddressCountry = aItemArray[i].mCountry;
   195             }
   197             }
   196             // set icons based on contact address type
   198             // set icons based on contact address type
   247                 icons<<adressTypeIcon;
   249                 icons<<adressTypeIcon;
   248             }
   250             }
   249             QStringList contextList;
   251             QStringList contextList;
   250             contextList<<lmAddressLine1<<contextAddress<<contextAddressCountry;
   252             contextList<<lmAddressLine1<<contextAddress<<contextAddressCountry;
   251             QStandardItem *modelItem = new QStandardItem();
   253             QStandardItem *modelItem = new QStandardItem();
   252             addressData << lmAddressLine1 << lmAddressLine2;
   254             addressData << lmAddressLine1 << lmAddressLine2<<lmAddressLine3;
   253             modelItem->setData(QVariant(addressData), Qt::DisplayRole);
   255             modelItem->setData(QVariant(addressData), Qt::DisplayRole);
   254             modelItem->setData( icons, Qt::DecorationRole );
   256             modelItem->setData( icons, Qt::DecorationRole );
   255             modelItem->setData( aItemArray[i].mId, Qt::UserRole );
   257             modelItem->setData( aItemArray[i].mId, Qt::UserRole );
   256             modelItem->setData(landscapeIconPath,Qt::UserRole+1);
   258             modelItem->setData(landscapeIconPath,Qt::UserRole+1);
   257             modelItem->setData(adressType,Qt::UserRole+2);
   259             modelItem->setData(adressType,Qt::UserRole+2);
   271 void LocationPickerDataManagerPrivate::populateCollections(QList<int>& aCount)
   273 void LocationPickerDataManagerPrivate::populateCollections(QList<int>& aCount)
   272 {
   274 {
   273     // add contact collection
   275     // add contact collection
   274     QStandardItem *modelItemContact = new QStandardItem();
   276     QStandardItem *modelItemContact = new QStandardItem();
   275     int conNum = aCount.value(0);
   277     int conNum = aCount.value(0);
   276     QString contactCollectionNum(hbTrId("txt_lint_list_ln_items",conNum));
   278     QString contactCollectionNum;
       
   279     contactCollectionNum.setNum(conNum);
       
   280     contactCollectionNum.append(" items");
   277     QString contactCollectionName( hbTrId("txt_lint_list_contact_addresses") );
   281     QString contactCollectionName( hbTrId("txt_lint_list_contact_addresses") );
   278  
   282  
   279 
   283 
   280     QStringList contact = (QStringList()<<contactCollectionName<<contactCollectionNum);
   284     QStringList contact = (QStringList()<<contactCollectionName<<contactCollectionNum);
   281     modelItemContact->setData( QVariant( contact ), Qt::DisplayRole );
   285     modelItemContact->setData( QVariant( contact ), Qt::DisplayRole );
   284     modelItemContact->setData( ESourceLandmarksContactsCat, Qt::UserRole );
   288     modelItemContact->setData( ESourceLandmarksContactsCat, Qt::UserRole );
   285     mModel->appendRow( modelItemContact );
   289     mModel->appendRow( modelItemContact );
   286    
   290    
   287     //txt_lint_list_calender_addresses
   291     //txt_lint_list_calender_addresses
   288     int calNum = aCount.value(1);
   292     int calNum = aCount.value(1);
   289     QString calendarCollectionNum(hbTrId("txt_lint_list_ln_items",calNum));
   293     QString calendarCollectionNum;
       
   294     calendarCollectionNum.setNum(calNum);
       
   295     calendarCollectionNum.append(" items");
   290     QString calendarCollectionName( hbTrId("txt_lint_list_calendar_locations") );
   296     QString calendarCollectionName( hbTrId("txt_lint_list_calendar_locations") );
   291     QStringList calender = (QStringList()<<calendarCollectionName<<calendarCollectionNum);
   297     QStringList calender = (QStringList()<<calendarCollectionName<<calendarCollectionNum);
   292     
   298     
   293     QStandardItem *modelItemCalendar = new QStandardItem();
   299     QStandardItem *modelItemCalendar = new QStandardItem();
   294     modelItemCalendar->setData( QVariant( calender ), Qt::DisplayRole );
   300     modelItemCalendar->setData( QVariant( calender ), Qt::DisplayRole );
   296     modelItemCalendar->setData( ESourceLandmarksCalendarCat, Qt::UserRole );
   302     modelItemCalendar->setData( ESourceLandmarksCalendarCat, Qt::UserRole );
   297     mModel->appendRow( modelItemCalendar );
   303     mModel->appendRow( modelItemCalendar );
   298      
   304      
   299     //txt_lint_list_places_addresses
   305     //txt_lint_list_places_addresses
   300     int placNum = aCount.value(2);
   306     int placNum = aCount.value(2);
   301     QString placesCollectionNum(hbTrId("txt_lint_list_ln_items",placNum));
   307     QString placesCollectionNum;
       
   308     placesCollectionNum.setNum(placNum);
       
   309     placesCollectionNum.append(" items");
   302     QString placesCollectionName( hbTrId("txt_lint_list_places") );
   310     QString placesCollectionName( hbTrId("txt_lint_list_places") );
   303     QStringList places = (QStringList()<<placesCollectionName<<placesCollectionNum);
   311     QStringList places = (QStringList()<<placesCollectionName<<placesCollectionNum);
   304 
   312 
   305     QStandardItem *modelItemPlaces = new QStandardItem();
   313     QStandardItem *modelItemPlaces = new QStandardItem();
   306     modelItemPlaces->setData( QVariant( places ), Qt::DisplayRole );
   314     modelItemPlaces->setData( QVariant( places ), Qt::DisplayRole );