--- a/location_plat/location_data_harvester_api/inc/locationdatalookupdb.h Tue Jul 06 14:10:28 2010 +0300
+++ b/location_plat/location_data_harvester_api/inc/locationdatalookupdb.h Wed Aug 18 09:43:18 2010 +0300
@@ -217,10 +217,18 @@
*/
QString getAddressDetails( quint32 mId , quint32 mSourceType );
+ /**
+ * Gets single line address
+ * @param id , id of the entry
+ * @param sourceType , type of entry
+ * @param name , name of entry
+ */
+ void updateEntryNameByIdAndType(quint32 id, quint32 sourceType , QString name);
+
private:
// fills the lookup entry
- void fillLookupEntry( QSqlQuery &aRecord, QLookupItem &aLookupItem );
+ void fillLookupEntry( QSqlQuery &aRecord, QLookupItem &aLookupItem );
// Handle to the items database
QSqlDatabase *mDb;
--- a/locationdataharvester/bwins/locationdatalookupdbu.def Tue Jul 06 14:10:28 2010 +0300
+++ b/locationdataharvester/bwins/locationdatalookupdbu.def Wed Aug 18 09:43:18 2010 +0300
@@ -16,4 +16,5 @@
?fillLookupEntry@LocationDataLookupDb@@AAEXAAVQSqlQuery@@AAVQLookupItem@@@Z @ 15 NONAME ; void LocationDataLookupDb::fillLookupEntry(class QSqlQuery &, class QLookupItem &)
?open@LocationDataLookupDb@@QAE_NXZ @ 16 NONAME ; bool LocationDataLookupDb::open(void)
??_ELocationDataLookupDb@@UAE@I@Z @ 17 NONAME ; LocationDataLookupDb::~LocationDataLookupDb(unsigned int)
+ ?updateEntryNameByIdAndType@LocationDataLookupDb@@QAEXIIVQString@@@Z @ 18 NONAME ; void LocationDataLookupDb::updateEntryNameByIdAndType(unsigned int, unsigned int, class QString)
--- a/locationdataharvester/bwins/mylocationsdatabasemanageru.def Tue Jul 06 14:10:28 2010 +0300
+++ b/locationdataharvester/bwins/mylocationsdatabasemanageru.def Wed Aug 18 09:43:18 2010 +0300
@@ -1,9 +1,10 @@
EXPORTS
?UpdateMapTilePath@CMyLocationsDatabaseManager@@QAEXKKAAV?$TBuf@$0BAA@@@@Z @ 1 NONAME ; void CMyLocationsDatabaseManager::UpdateMapTilePath(unsigned long, unsigned long, class TBuf<256> &)
- ?GetLandmarkFullAddress@CMyLocationsDatabaseManager@@QAEXAAV?$TBuf@$0PP@@@PBVCPosLandmark@@@Z @ 2 NONAME ; void CMyLocationsDatabaseManager::GetLandmarkFullAddress(class TBuf<255> &, class CPosLandmark const *)
- ?ConstructL@CMyLocationsDatabaseManager@@QAEXXZ @ 3 NONAME ; void CMyLocationsDatabaseManager::ConstructL(void)
- ?CheckIfAddressChanged@CMyLocationsDatabaseManager@@QAEHABVTDesC16@@KW4TUidSourceType@@@Z @ 4 NONAME ; int CMyLocationsDatabaseManager::CheckIfAddressChanged(class TDesC16 const &, unsigned long, enum TUidSourceType)
- ?UpdateDatabaseL@CMyLocationsDatabaseManager@@QAEXPAVCPosLandmark@@KKK@Z @ 5 NONAME ; void CMyLocationsDatabaseManager::UpdateDatabaseL(class CPosLandmark *, unsigned long, unsigned long, unsigned long)
- ??0CMyLocationsDatabaseManager@@QAE@XZ @ 6 NONAME ; CMyLocationsDatabaseManager::CMyLocationsDatabaseManager(void)
- ?CheckIfAddressChanged@CMyLocationsDatabaseManager@@QAEHABVCPosLandmark@@KW4TUidSourceType@@@Z @ 7 NONAME ; int CMyLocationsDatabaseManager::CheckIfAddressChanged(class CPosLandmark const &, unsigned long, enum TUidSourceType)
+ ?UpdateEntryName@CMyLocationsDatabaseManager@@QAEXKW4TUidSourceType@@ABVTDesC16@@@Z @ 2 NONAME ; void CMyLocationsDatabaseManager::UpdateEntryName(unsigned long, enum TUidSourceType, class TDesC16 const &)
+ ?GetLandmarkFullAddress@CMyLocationsDatabaseManager@@QAEXAAV?$TBuf@$0PP@@@PBVCPosLandmark@@@Z @ 3 NONAME ; void CMyLocationsDatabaseManager::GetLandmarkFullAddress(class TBuf<255> &, class CPosLandmark const *)
+ ?ConstructL@CMyLocationsDatabaseManager@@QAEXXZ @ 4 NONAME ; void CMyLocationsDatabaseManager::ConstructL(void)
+ ?CheckIfAddressChanged@CMyLocationsDatabaseManager@@QAEHABVTDesC16@@KW4TUidSourceType@@@Z @ 5 NONAME ; int CMyLocationsDatabaseManager::CheckIfAddressChanged(class TDesC16 const &, unsigned long, enum TUidSourceType)
+ ?UpdateDatabaseL@CMyLocationsDatabaseManager@@QAEXPAVCPosLandmark@@KKK@Z @ 6 NONAME ; void CMyLocationsDatabaseManager::UpdateDatabaseL(class CPosLandmark *, unsigned long, unsigned long, unsigned long)
+ ??0CMyLocationsDatabaseManager@@QAE@XZ @ 7 NONAME ; CMyLocationsDatabaseManager::CMyLocationsDatabaseManager(void)
+ ?CheckIfAddressChanged@CMyLocationsDatabaseManager@@QAEHABVCPosLandmark@@KW4TUidSourceType@@@Z @ 8 NONAME ; int CMyLocationsDatabaseManager::CheckIfAddressChanged(class CPosLandmark const &, unsigned long, enum TUidSourceType)
--- a/locationdataharvester/eabi/locationdatalookupdbu.def Tue Jul 06 14:10:28 2010 +0300
+++ b/locationdataharvester/eabi/locationdatalookupdbu.def Wed Aug 18 09:43:18 2010 +0300
@@ -20,4 +20,5 @@
_ZN20LocationDataLookupDbD2Ev @ 19 NONAME
_ZTI20LocationDataLookupDb @ 20 NONAME
_ZTV20LocationDataLookupDb @ 21 NONAME
+ _ZN20LocationDataLookupDb26updateEntryNameByIdAndTypeEjj7QString @ 22 NONAME
--- a/locationdataharvester/eabi/mylocationsdatabasemanageru.def Tue Jul 06 14:10:28 2010 +0300
+++ b/locationdataharvester/eabi/mylocationsdatabasemanageru.def Wed Aug 18 09:43:18 2010 +0300
@@ -1,10 +1,11 @@
EXPORTS
_ZN27CMyLocationsDatabaseManager10ConstructLEv @ 1 NONAME
_ZN27CMyLocationsDatabaseManager15UpdateDatabaseLEP12CPosLandmarkmmm @ 2 NONAME
- _ZN27CMyLocationsDatabaseManager17UpdateMapTilePathEmmR4TBufILi256EE @ 3 NONAME
- _ZN27CMyLocationsDatabaseManager21CheckIfAddressChangedERK12CPosLandmarkm14TUidSourceType @ 4 NONAME
- _ZN27CMyLocationsDatabaseManager21CheckIfAddressChangedERK7TDesC16m14TUidSourceType @ 5 NONAME
- _ZN27CMyLocationsDatabaseManager22GetLandmarkFullAddressER4TBufILi255EEPK12CPosLandmark @ 6 NONAME
- _ZN27CMyLocationsDatabaseManagerC1Ev @ 7 NONAME
- _ZN27CMyLocationsDatabaseManagerC2Ev @ 8 NONAME
+ _ZN27CMyLocationsDatabaseManager15UpdateEntryNameEm14TUidSourceTypeRK7TDesC16 @ 3 NONAME
+ _ZN27CMyLocationsDatabaseManager17UpdateMapTilePathEmmR4TBufILi256EE @ 4 NONAME
+ _ZN27CMyLocationsDatabaseManager21CheckIfAddressChangedERK12CPosLandmarkm14TUidSourceType @ 5 NONAME
+ _ZN27CMyLocationsDatabaseManager21CheckIfAddressChangedERK7TDesC16m14TUidSourceType @ 6 NONAME
+ _ZN27CMyLocationsDatabaseManager22GetLandmarkFullAddressER4TBufILi255EEPK12CPosLandmark @ 7 NONAME
+ _ZN27CMyLocationsDatabaseManagerC1Ev @ 8 NONAME
+ _ZN27CMyLocationsDatabaseManagerC2Ev @ 9 NONAME
--- a/locationdataharvester/geocodeupdate/src/geocodeupdate.cpp Tue Jul 06 14:10:28 2010 +0300
+++ b/locationdataharvester/geocodeupdate/src/geocodeupdate.cpp Wed Aug 18 09:43:18 2010 +0300
@@ -127,8 +127,11 @@
AgendaGeoValue geoValue;
geoValue.setLatLong(latitude, longitude);
MYLOCLOGSTRING("latitude and longitude set to AgendaGeoValue object.");
- agendaEntry.setGeoValue(geoValue);
- ret = mAgendaUtil->updateEntry(agendaEntry);
+ if( !agendaEntry.isNull() )
+ {
+ agendaEntry.setGeoValue(geoValue);
+ ret = mAgendaUtil->store(agendaEntry);
+ }
}
return ret;
}
--- a/locationdataharvester/inc/mylocationsdefines.h Tue Jul 06 14:10:28 2010 +0300
+++ b/locationdataharvester/inc/mylocationsdefines.h Wed Aug 18 09:43:18 2010 +0300
@@ -126,7 +126,7 @@
const int MapTileHeight = 250;
const int MaptilePortraitWidth = 334;
const int MaptilePortraitHeight = 250;
-const int MaptileContactLandscapeWidth = 382;
+const int MaptileContactLandscapeWidth = 409;
const int MaptileContactLandscapeHeight = 128;
const int MaptileCalendarLandscapeWidth = 614;
const int MaptileCalendarLandscapeHeight = 202;
--- a/locationdataharvester/locationdatalookupdb/locationdatalookupdb.cpp Tue Jul 06 14:10:28 2010 +0300
+++ b/locationdataharvester/locationdatalookupdb/locationdatalookupdb.cpp Wed Aug 18 09:43:18 2010 +0300
@@ -339,6 +339,28 @@
}
}
+
+// ---------------------------------------------------------
+// LocationDataLookupDb::updateEntryNameById()
+// ---------------------------------------------------------
+void LocationDataLookupDb::updateEntryNameByIdAndType(quint32 aSourceId, quint32 aSourceType , QString aName)
+{
+ if( mDbOpen )
+ {
+ QSqlQuery query(*mDb);
+ query.prepare("UPDATE lplookup SET "
+ "name = ? "
+ "WHERE sourceid = ? AND sourcetype = ?");
+
+ query.addBindValue( aName );
+
+ query.addBindValue( aSourceId );
+ query.addBindValue( aSourceType );
+
+ query.exec();
+ }
+}
+
// ---------------------------------------------------------
// LocationDataLookupDb::deleteEntryBySourceIdAndType()
// ---------------------------------------------------------
@@ -518,19 +540,19 @@
// ---------------------------------------------------------
// LocationDataLookupDb::getAddressDetails()
// ---------------------------------------------------------
-QString LocationDataLookupDb::getAddressDetails( quint32 mId , quint32 mSourceType )
+QString LocationDataLookupDb::getAddressDetails( quint32 aId , quint32 aSourceType )
{
QString addressDetails;
if (mDbOpen)
{
QSqlQuery query(*mDb);
- if (mSourceType == ESourceContactsPref || mSourceType
- == ESourceContactsWork || mSourceType == ESourceContactsHome)
+ if ( aSourceType == ESourceContactsPref || aSourceType
+ == ESourceContactsWork || aSourceType == ESourceContactsHome)
{
query.prepare("SELECT * FROM lplookup "
"WHERE sourceid = ? AND sourcetype = ?");
- query.addBindValue(mId);
- query.addBindValue(mSourceType);
+ query.addBindValue( aId );
+ query.addBindValue( aSourceType );
query.exec();
if (query.first()) {
QSqlRecord rec = query.record();
@@ -579,11 +601,11 @@
}
}
- else if (mSourceType == ESourceCalendar)
+ else if (aSourceType == ESourceCalendar)
{
query.prepare("SELECT * FROM lplookupaddress "
"WHERE sourceid = ? ");
- query.addBindValue(mId);
+ query.addBindValue( aId );
query.exec();
if ( query.first() )
{
@@ -626,8 +648,9 @@
{
QSqlQuery query(*mDb);
query.prepare( "SELECT * FROM lplookup "
- "WHERE sourcetype = ?" );
+ "WHERE sourcetype = ? AND duplicate = ?" );
query.addBindValue( ESourceCalendar );
+ query.addBindValue( 0 );
query.exec();
qDebug("size %d",query.size());
@@ -656,7 +679,9 @@
// else // all contents
{
QSqlQuery query(*mDb);
- query.prepare( "SELECT * FROM lplookup" );
+ query.prepare( "SELECT * FROM lplookup"
+ "WHERE duplicate = ?" );
+ query.addBindValue( 0 );
query.exec();
int count=0;
while( query.next() ) count++;
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/locationdataharvester/maptileservice/conf/maptilecontactpublisher.qcrml Wed Aug 18 09:43:18 2010 +0300
@@ -0,0 +1,4 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<repository target="RProperty" version="" uidName="repo" uidValue="0x20022EF9">
+<key ref="/maptilecontactpublisher/name" int="0x1"/>
+</repository>
\ No newline at end of file
--- a/locationdataharvester/maptileservice/conf/maptilepublisher.qcrml Tue Jul 06 14:10:28 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,4 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<repository target="RProperty" version="" uidName="repo" uidValue="0x20022EF9">
-<key ref="/maptilepublisher/name" int="0x1"/>
-</repository>
\ No newline at end of file
--- a/locationdataharvester/maptileservice/maptileservice.pro Tue Jul 06 14:10:28 2010 +0300
+++ b/locationdataharvester/maptileservice/maptileservice.pro Wed Aug 18 09:43:18 2010 +0300
@@ -66,7 +66,7 @@
-lflogger \
-lefsrv
- myCrml.sources = ./conf/maptilepublisher.qcrml
+ myCrml.sources = ./conf/maptilecontactpublisher.qcrml
myCrml.path = c:/resource/qt/crml
DEPLOYMENT += myCrml
--- a/locationdataharvester/maptileservice/src/maptileservice.cpp Tue Jul 06 14:10:28 2010 +0300
+++ b/locationdataharvester/maptileservice/src/maptileservice.cpp Wed Aug 18 09:43:18 2010 +0300
@@ -35,7 +35,7 @@
const TInt KEnableLocationFeature = 0x1;
const char *MAPTILE_STATUS_RECEIVER = "/maptilestatuspublisher/name";
-const char *MAPTILE_STATUS_PUBLISHER = "/maptilepublisher";
+const char *MAPTILE_STATUS_PUBLISHER = "/maptilecontactpublisher";
const char *MAPTILE_STATUS_CALENDAR_PUBLISHER = "/maptilecalpublisher";
@@ -86,7 +86,7 @@
bool MapTileService::isLocationFeatureEnabled(AppType appType)
{
//Create the centrep with uid 0x2002C3A8
- bool iLocationFeatureEnabled = false;
+ bool enableLocationFeature = false;
CRepository* centralRepository = NULL;
@@ -108,13 +108,13 @@
if ( ret == KErrNone && repValue == 1 )
{
- iLocationFeatureEnabled = true;
+ enableLocationFeature = true;
}
delete centralRepository;
}
- return iLocationFeatureEnabled;
+ return enableLocationFeature;
}
--- a/locationdataharvester/mylocationlogger/inc/mylocloggingconfiguration.h Tue Jul 06 14:10:28 2010 +0300
+++ b/locationdataharvester/mylocationlogger/inc/mylocloggingconfiguration.h Wed Aug 18 09:43:18 2010 +0300
@@ -25,7 +25,7 @@
* Have this line active if you want to have logging for this component.
* Comment this line out if you don't want any logging for this component.
*/
-#define _MYLOCLOGGING
+//#define _MYLOCLOGGING
/**
* Have this line active if you want to have logging to file.
--- a/locationdataharvester/mylocationsdatabasemanager/inc/mylocationsdatabasemanager.h Tue Jul 06 14:10:28 2010 +0300
+++ b/locationdataharvester/mylocationsdatabasemanager/inc/mylocationsdatabasemanager.h Wed Aug 18 09:43:18 2010 +0300
@@ -90,7 +90,17 @@
*/
IMPORT_C void UpdateMapTilePath( TUint32 aSourceId, TUint32 aSourceType,
TFileName& aFilePath );
-
+
+ /** Update the maptile path to mylocation lookup table
+ *
+ * @param[in] aSourceId Uid of the changed source entry.
+ * @param[in] aSourceType Source type of the aSourceId.
+ * @param[in] aName entry name.
+ */
+
+ IMPORT_C void UpdateEntryName( TUint32 aSourceId, TUidSourceType aSourceType,
+ const TDesC& aName );
+
/** Compare the address details to lplookupaddres table
*
* @param aLandmarks , address formed as landmark object
@@ -202,11 +212,12 @@
/**
* UnsetDuplicateNextCalEntry.
- * Finds a calendar lookup entry whose detination id is aLandmarkId
+ * Finds next calendar lookup entry whose detination id is aLandmarkId
* and unsets it duplcate flag.
+ * @param[in] aCurrentCalUid current calendar entry id.
* @param[in] aLandmarkId a landmark id.
*/
- void UnsetDuplicateNextCalEntry( quint32 aLandmarkId );
+ void UnsetDuplicateNextCalEntry( quint32 aCurrentCalUid, quint32 aLandmarkId );
/**
* IsDuplicateCalEntry.
--- a/locationdataharvester/mylocationsdatabasemanager/src/mylocationsdatabasemanager.cpp Tue Jul 06 14:10:28 2010 +0300
+++ b/locationdataharvester/mylocationsdatabasemanager/src/mylocationsdatabasemanager.cpp Wed Aug 18 09:43:18 2010 +0300
@@ -480,7 +480,7 @@
// if current lookup item duplicate property is 0, then remove next corresponding
// calendar lookup entry duplicate property.
// this is required because the current entry will be pointing to a new landmark.
- UnsetDuplicateNextCalEntry( existingLandmark->LandmarkId() );
+ UnsetDuplicateNextCalEntry( aUid, existingLandmark->LandmarkId() );
}
// set duplicate only if there are calendar entries already pointing to this landmark.
@@ -507,7 +507,7 @@
// if current lookup item duplicate property is 0, then remove next corresponding
// calendar lookup entry duplicate property.
// this is required because the current entry will be pointing to a new landmark.
- UnsetDuplicateNextCalEntry( existingLandmark->LandmarkId() );
+ UnsetDuplicateNextCalEntry( aUid, existingLandmark->LandmarkId() );
}
}
@@ -859,6 +859,7 @@
TPtrC tempStr;
TInt retStatus;
TBool addressEmtpy = ETrue;
+ aLandmarkAddress.Copy( KNullDesC );
retStatus = aLandmark->GetPositionField(EPositionFieldStreet, tempStr);
if (retStatus == KErrNone && tempStr.Length())
{
@@ -1003,7 +1004,7 @@
// CMyLocationsDatabaseManager::UnsetDuplicateNextCalEntry()
// -----------------------------------------------------------------------------
//
-void CMyLocationsDatabaseManager::UnsetDuplicateNextCalEntry( quint32 aLandmarkId )
+void CMyLocationsDatabaseManager::UnsetDuplicateNextCalEntry( quint32 aUid, quint32 aLandmarkId )
{
__TRACE_CALLSTACK;
// get next duplicate item
@@ -1011,7 +1012,7 @@
iLocationAppLookupDb->findEntriesByLandmarkId( aLandmarkId, itemArray );
for ( int i = 0; i < itemArray.count(); i++)
{
- if( itemArray[i].mSourceType == ESourceCalendar )
+ if( itemArray[i].mSourceType == ESourceCalendar && itemArray[i].mSourceUid != aUid )
{
itemArray[i].mIsDuplicate = 0;
iLocationAppLookupDb->updateEntryById( itemArray[i] );
@@ -1097,6 +1098,20 @@
}
// -----------------------------------------------------------------------------
+// CMyLocationsDatabaseManager::UpdateEntryName()
+// -----------------------------------------------------------------------------
+//
+EXPORT_C void CMyLocationsDatabaseManager::UpdateEntryName( TUint32 aSourceId, TUidSourceType aSourceType,
+ const TDesC& aName )
+{
+ __TRACE_CALLSTACK;
+ QString name = QString( (QChar*)aName.Ptr(), aName.Length() );
+ iLocationAppLookupDb->updateEntryNameByIdAndType( aSourceId, aSourceType, name );
+
+}
+
+
+// -----------------------------------------------------------------------------
// CMyLocationsDatabaseManager::CheckIfAddressChanged()
// -----------------------------------------------------------------------------
//
--- a/locationdataharvester/mylocationsengine/inc/lookupmaptiledb.h Tue Jul 06 14:10:28 2010 +0300
+++ b/locationdataharvester/mylocationsengine/inc/lookupmaptiledb.h Wed Aug 18 09:43:18 2010 +0300
@@ -106,6 +106,12 @@
RArray<TLookupItem>& aLookupItemArray);
/**
+ * Gets the list of calendar ids.
+ * @param[out] aIdArray Calendar id list
+ */
+ void GetAllCalendarIdsL( RArray<TUint32>& aIdArray );
+
+ /**
* ReSet the entry in the lookup table , with null value
* @param aLookupItem The lookup item entry to be reseted in the database,
* get the used maptile path as part of lookupItem filepath , to free the resource
--- a/locationdataharvester/mylocationsengine/inc/mylocationsengine.h Tue Jul 06 14:10:28 2010 +0300
+++ b/locationdataharvester/mylocationsengine/inc/mylocationsengine.h Wed Aug 18 09:43:18 2010 +0300
@@ -251,6 +251,18 @@
* Sets the maptile storing path.
*/
void SetFolderPathL();
+
+ /**
+ * Refreshes calendar entries in mylocation databases. This is typically called when there is an undefined
+ * change in calendar db.
+ */
+ void RefreshCalendarEntryListL();
+
+ /**
+ * Returns True if a calendar entry is available for a given id.
+ */
+ TBool IsCalendarEntryValidL( TUint32 aId );
+
/**
* Calender entry added.
*/
@@ -291,6 +303,10 @@
*/
void CropAndSaveImage( QString filePath, int width,
int height, QString appType, QString orientationType );
+
+ /**Get the contact name for this perticular id.
+ */
+ void GetContactName( TInt32 iUId , TDes& aName );
public: //From MMapTileObserver
--- a/locationdataharvester/mylocationsengine/src/lookupmaptiledb.cpp Tue Jul 06 14:10:28 2010 +0300
+++ b/locationdataharvester/mylocationsengine/src/lookupmaptiledb.cpp Wed Aug 18 09:43:18 2010 +0300
@@ -18,11 +18,13 @@
#include <QFile>
#include <bautils.h>
+#include <locationservicedefines.h>
#include "mylocationlogger.h"
#include "lookupmaptiledb.h"
_LIT( KSelectAllFrom, "SELECT * FROM " );
_LIT(KQueryToDB,"SELECT * FROM cntmaptilelookuptable WHERE cntuid = %d AND source = %d");
+_LIT(KQueryGetCalendaIds,"SELECT cntuid FROM cntmaptilelookuptable WHERE source = %d");
_LIT( KSelectfilepathFrom, "SELECT filepath FROM " );
_LIT(KQueryMaptile, "SELECT filepath FROM cntmaptilelookuptable WHERE filepath = '%S'");
// string 'where'
@@ -456,6 +458,47 @@
}
// -----------------------------------------------------------------------------
+// CLookupMapTileDatabase::GetAllCalendarIdsL()
+// Gets the list of calendar ids .
+// -----------------------------------------------------------------------------
+//
+void CLookupMapTileDatabase::GetAllCalendarIdsL( RArray<TUint32>& aIdArray )
+{
+ __TRACE_CALLSTACK;// Create a query to find the item.
+ TFileName queryBuffer;
+ queryBuffer.Format( KQueryGetCalendaIds, ESourceCalendar );
+
+ TInt ret = Open();
+ if (ret != KErrNone)
+ {
+ Close();
+ ret= Open();
+
+ }
+ iItemsDatabase.Begin();
+
+
+ // Create a view of the table with the above query.
+ RDbView myView;
+ myView.Prepare( iItemsDatabase, TDbQuery( queryBuffer ) );
+ CleanupClosePushL( myView );
+ myView.EvaluateAll();
+ myView.FirstL();
+
+ while( myView.AtRow() )
+ {
+ // Item found. get the details.
+ myView.GetL();
+ TUint32 id;
+ id = myView.ColUint( KColumnUid );
+ aIdArray.Append( id );
+ myView.NextL();
+ }
+
+ CleanupStack::PopAndDestroy( &myView ); // myView
+}
+
+// -----------------------------------------------------------------------------
// CLookupMapTileDatabase::FindEntryL()
// Finds an entry in the lookup table.
// -----------------------------------------------------------------------------
--- a/locationdataharvester/mylocationsengine/src/maptileinterface.cpp Tue Jul 06 14:10:28 2010 +0300
+++ b/locationdataharvester/mylocationsengine/src/maptileinterface.cpp Wed Aug 18 09:43:18 2010 +0300
@@ -196,8 +196,8 @@
int convertedy = (1 - convertedtemp / pi) * totalMapHeight / 2.0;
//Get the image row,col
- TInt iMapTileImageRow = convertedy / 256.0;
- TInt iMapTileImageCol = convertedx / 256.0;
+ TInt iMapTileImageRow = ( convertedy / 256.0 ) * 1000;
+ TInt iMapTileImageCol = ( convertedx / 256.0 ) * 1000;
TBuf<KImagePathSize> mImagePath;
@@ -205,8 +205,11 @@
mImagePath.AppendNum(iMapTileImageCol);
mImagePath.Append(KFileExtn);
- iFilePath = iFilePath->ReAllocL(iFilePath->Length() + mImagePath.Length() );
- iFilePath->Des().Append(mImagePath);
+ if( iFilePath )
+ {
+ iFilePath = iFilePath->ReAllocL(iFilePath->Length() + mImagePath.Length() );
+ iFilePath->Des().Append(mImagePath);
+ }
}
// -----------------------------------------------------------------------------
--- a/locationdataharvester/mylocationsengine/src/mylocationsengine.cpp Tue Jul 06 14:10:28 2010 +0300
+++ b/locationdataharvester/mylocationsengine/src/mylocationsengine.cpp Wed Aug 18 09:43:18 2010 +0300
@@ -47,6 +47,8 @@
_LIT8( KMaptileStatusFormat, "%d-%d-%d" );
const TInt KProtocolBufferSize = 16;
+const QString KSpace(" ");
+
// ============================ MEMBER FUNCTIONS ===============================
CMyLocationsEngine* CMyLocationsEngine::NewL()
@@ -332,6 +334,16 @@
iLastContactId = aId;
+ //If the requested id is already in queue, just return
+ for( TInt index = 0 ; index < iMapTileRequestQueue.Count(); index++ )
+ {
+ if( iLastContactId == iMapTileRequestQueue[index]->iUId )
+ {
+ MYLOCLOGSTRING("contact id is in queue");
+ return;
+ }
+ }
+
TAppAddressInfo* addressInfo = new (ELeave) TAppAddressInfo;
addressInfo->iUid = aId;
addressInfo->iAddressType = addressType;
@@ -343,16 +355,8 @@
//Get all 3 adress
if( addressCount > 1 && iAddressInfo.Count() < addressCount )
- return;
-
- //If the requested id is already in queue, just return
- for( TInt index = 0 ; index < iMapTileRequestQueue.Count(); index++ )
- {
- if( iLastContactId == iMapTileRequestQueue[index]->iUId )
- {
- return;
- }
- }
+ return;
+
for( TInt index = 0; index < iAddressInfo.Count(); index++ )
{
@@ -402,8 +406,11 @@
iMaptileDatabase->UpdateEntryL( lookupItem );
//Request for maptile fetching
- RequestMapTileImageL( *contactAddressLm, type,
+ if( contactAddressLm )
+ {
+ RequestMapTileImageL( *contactAddressLm, type,
iAddressInfo[index]->iUid, EContactDbObserverEventContactChanged );
+ }
CleanupStack::PopAndDestroy( itemCount );
}
@@ -541,6 +548,13 @@
for (int i = 0; i < aChangeItems.Count(); i++)
{
+ // Check if this is some undefined change in calendar db.
+ if( aChangeItems[0].iChangeType == EChangeUndefined && aChangeItems[0].iEntryType == EChangeEntryAll )
+ {
+ // Refresh the calendar related entries in the location and maptiledb.
+ RefreshCalendarEntryListL();
+ break;
+ }
TCalChangeEntry calChangeEntry = aChangeItems[i];
iEventType = calChangeEntry.iChangeType;
switch (calChangeEntry.iChangeType)
@@ -580,6 +594,39 @@
}
// -----------------------------------------------------------------------------
+// CMyLocationsEngine::RefreshCalendarEntryListL()
+// -----------------------------------------------------------------------------
+//
+void CMyLocationsEngine::RefreshCalendarEntryListL()
+{
+ //Get all the calendar ids and check its validity.
+ //Delete if they are no more valid.
+ RArray<TUint32> ids;
+ iMaptileDatabase->GetAllCalendarIdsL( ids );
+ for( TInt i = 0; i < ids.Count(); i++ )
+ {
+ if( !IsCalendarEntryValidL( ids[i] ) )
+ {
+ TLookupItem lookupItem;
+ lookupItem.iSource = ESourceCalendar;
+ lookupItem.iUid = ids[i];
+ TRAP_IGNORE( ManipulateMapTileDataBaseL( lookupItem ) );
+ TRAP_IGNORE( UpdateDatabaseL( NULL,
+ ids[i], ESourceCalendar, EEntryDeleted ) );
+
+ }
+ }
+}
+
+// -----------------------------------------------------------------------------
+// CMyLocationsEngine::IsCalendarEntryValidL()
+// -----------------------------------------------------------------------------
+//
+TBool CMyLocationsEngine::IsCalendarEntryValidL( TUint32 aId )
+{
+ return ( ( iCalView->FetchL( aId ) == NULL ) ? EFalse:ETrue );
+}
+// -----------------------------------------------------------------------------
// CMyLocationsEngine::CalenderEntryAddedL()
// -----------------------------------------------------------------------------
//
@@ -677,7 +724,7 @@
TLookupItem lookupItem;
lookupItem.iUid = aEvent.iContactId;
// If contact is deleted delete from mylocations db
- if (aEvent.iType == EContactDbObserverEventContactDeleted)
+ if ( aEvent.iType == EContactDbObserverEventContactDeleted || aEvent.iType == EContactDbObserverEventOwnCardDeleted )
{
//Delete the entries from maptile database
lookupItem.iSource = ESourceContactsPref;
@@ -705,19 +752,7 @@
//Get the contact item
iEventType = aEvent.iType;
- QContact contactInfo = iContactManager->contact( aEvent.iContactId );
-
- //Get the contact name details
- QContactName name = contactInfo.detail( QContactName::DefinitionName );
- QString firstName = name.firstName();
- QString lastName = name.lastName();
- TPtrC16 tempPtr1(reinterpret_cast<const TUint16*>(firstName.utf16()));
- TPtrC16 tempPtr2( reinterpret_cast <const TUint16*>(lastName.utf16()));
-
- TBuf<KBufSize> landmarkName;
- landmarkName.Append( tempPtr1 );
- landmarkName.Append( tempPtr2 );
-
+ QContact contactInfo = iContactManager->contact( aEvent.iContactId );
CPosLandmark *preferedAddressLm = NULL;
CPosLandmark *workAddressLm = NULL;
CPosLandmark *homeAddressLm = NULL;
@@ -747,6 +782,7 @@
switch (aEvent.iType)
{
case EContactDbObserverEventContactChanged:
+ case EContactDbObserverEventOwnCardChanged:
{
MYLOCLOGSTRING("EContactDbObserverEventContactChanged" );
MYLOCLOGSTRING1("iMapTileRequestQueue.Count()-%d",iMapTileRequestQueue.Count() );
@@ -760,12 +796,16 @@
return;
}
}
-
+
+ TBuf<KBufSize> landmarkName;
+ GetContactName(aEvent.iContactId,landmarkName);
+
// if default address available, update Mylocations.
lookupItem.iSource = ESourceContactsPref;
if (preferedAddressLm)
{
- preferedAddressLm->SetLandmarkNameL( landmarkName );
+ iMyLocationsDatabaseManager->UpdateEntryName( aEvent.iContactId, ESourceContactsPref,
+ landmarkName );
MYLOCLOGSTRING("preferedAddressLm address changed" );
if ( iMyLocationsDatabaseManager->CheckIfAddressChanged(*preferedAddressLm,
@@ -783,12 +823,13 @@
{
iMaptileDatabase->DeleteMapTileL(lookupItem);
}
- //remove entry from database
- //TRAP_IGNORE( ManipulateMapTileDataBaseL(lookupItem));
+
}
}
else
{
+ TRAP_IGNORE( UpdateDatabaseL( NULL, aEvent.iContactId,
+ ESourceContactsPref, EEntryDeleted ));
TRAP_IGNORE( ManipulateMapTileDataBaseL(lookupItem));
}
@@ -797,7 +838,8 @@
lookupItem.iSource = ESourceContactsHome;
if (homeAddressLm)
{
- homeAddressLm->SetLandmarkNameL( landmarkName );
+ iMyLocationsDatabaseManager->UpdateEntryName( aEvent.iContactId, ESourceContactsHome,
+ landmarkName );
MYLOCLOGSTRING("homeAddressLm address changed" );
if ( iMyLocationsDatabaseManager->CheckIfAddressChanged(*homeAddressLm,
aEvent.iContactId, ESourceContactsHome) )
@@ -806,7 +848,6 @@
lookupItem.iFetchingStatus = EMapTileFetchingInProgress;
TRAP_IGNORE( iMaptileDatabase->ReSetEntryL(lookupItem) )
//remove entry from databse
- //TRAP_IGNORE( ManipulateMapTileDataBaseL(lookupItem));
RequestMapTileImageL(*homeAddressLm, ESourceContactsHome, aEvent.iContactId,
iEventType);
if (lookupItem.iFilePath.Length() > 0)
@@ -817,6 +858,8 @@
}
else
{
+ TRAP_IGNORE( UpdateDatabaseL( NULL, aEvent.iContactId,
+ ESourceContactsHome, EEntryDeleted ));
TRAP_IGNORE( ManipulateMapTileDataBaseL(lookupItem));
}
@@ -826,7 +869,9 @@
lookupItem.iSource = ESourceContactsWork;
if (workAddressLm)
{
- workAddressLm->SetLandmarkNameL( landmarkName );
+ iMyLocationsDatabaseManager->UpdateEntryName( aEvent.iContactId, ESourceContactsWork,
+ landmarkName );
+
MYLOCLOGSTRING("workAddressLm address changed" );
if ( iMyLocationsDatabaseManager->CheckIfAddressChanged(*workAddressLm,
aEvent.iContactId, ESourceContactsWork) )
@@ -835,19 +880,18 @@
lookupItem.iFetchingStatus = EMapTileFetchingInProgress;
TRAP_IGNORE( iMaptileDatabase->ReSetEntryL(lookupItem) )
- //remove entry from databse
- //TRAP_IGNORE( ManipulateMapTileDataBaseL(lookupItem));
RequestMapTileImageL(*workAddressLm, ESourceContactsWork,
aEvent.iContactId, iEventType);
if (lookupItem.iFilePath.Length() > 0)
{
iMaptileDatabase->DeleteMapTileL(lookupItem);
}
- }
-
+ }
}
else
{
+ TRAP_IGNORE( UpdateDatabaseL( NULL, aEvent.iContactId,
+ ESourceContactsWork, EEntryDeleted ));
TRAP_IGNORE( ManipulateMapTileDataBaseL(lookupItem));
}
@@ -863,7 +907,6 @@
MYLOCLOGSTRING("EContactDbObserverEventContactAdded" );
if (preferedAddressLm)
{
- preferedAddressLm->SetLandmarkNameL( landmarkName );
//create entry in the data base and maintain a fetching state.
lookupItem.iSource = ESourceContactsPref;
iMaptileDatabase->CreateEntryL(lookupItem);
@@ -872,7 +915,6 @@
}
if (homeAddressLm)
{
- homeAddressLm->SetLandmarkNameL( landmarkName );
lookupItem.iSource = ESourceContactsHome;
iMaptileDatabase->CreateEntryL(lookupItem);
RequestMapTileImageL(*homeAddressLm, ESourceContactsHome,
@@ -880,7 +922,6 @@
}
if (workAddressLm)
{
- workAddressLm->SetLandmarkNameL( landmarkName );
lookupItem.iSource = ESourceContactsWork;
iMaptileDatabase->CreateEntryL(lookupItem);
RequestMapTileImageL(*workAddressLm, ESourceContactsWork,
@@ -1027,7 +1068,7 @@
}
// -----------------------------------------------------------------------------
-// CMyLocationsEngine::GetLocationDetailsLC()
+// CMyLocationsEngine::GetContactAddressDetailsLC()
// get locatin details
// -----------------------------------------------------------------------------
//
@@ -1374,17 +1415,6 @@
{
QContact contactInfo = iContactManager->contact( iItem.iUid );
- //Get the contact name details
- QContactName name = contactInfo.detail( QContactName::DefinitionName );
- QString firstName = name.firstName();
- QString lastName = name.lastName();
- TPtrC16 tempPtr1(reinterpret_cast<const TUint16*>(firstName.utf16()));
- TPtrC16 tempPtr2( reinterpret_cast <const TUint16*>(lastName.utf16()));
-
- TBuf<KBufSize> landmarkName;
- landmarkName.Append( tempPtr1 );
- landmarkName.Append( tempPtr2 );
-
CPosLandmark *addressLm = NULL;
foreach ( QContactAddress address, contactInfo.details<QContactAddress>() )
@@ -1400,7 +1430,6 @@
addressLm = GetContactAddressDetailsLC( address );
if( addressLm )
{
- addressLm->SetLandmarkNameL( landmarkName );
RequestMapTileImageL( *addressLm,
( TUidSourceType )iItem.iSource, iItem.iUid, EContactDbObserverEventContactChanged );
CleanupStack::PopAndDestroy( addressLm );
@@ -1479,7 +1508,25 @@
lookupItem.iFetchingStatus = EMapTileFetchingUnknownError;
}
- TRAP_IGNORE( UpdateMaptileDatabaseL(iMapTileRequestQueue[0]->iEventType,lookupItem ) );
+ TRAP_IGNORE( UpdateMaptileDatabaseL( iMapTileRequestQueue[0]->iEventType,lookupItem ) );
+
+ // if the source type is contacts, update the contact name into the locationdatalookupdb.
+ // This has to be done, because there is a possibility that the user might change the
+ // contact name between geocodefetchingcomplete and maptilefetchingcomplete.
+ if( iMapTileRequestQueue[0]->iAddressType == ESourceContactsPref ||
+ iMapTileRequestQueue[0]->iAddressType == ESourceContactsHome ||
+ iMapTileRequestQueue[0]->iAddressType == ESourceContactsWork )
+ {
+ TBuf<KBufSize> landmarkName;
+ GetContactName( iMapTileRequestQueue[0]->iUId, landmarkName );
+
+ iMyLocationsDatabaseManager->UpdateEntryName(
+ iMapTileRequestQueue[0]->iUId, ESourceContactsPref, landmarkName );
+ iMyLocationsDatabaseManager->UpdateEntryName(
+ iMapTileRequestQueue[0]->iUId, ESourceContactsHome, landmarkName );
+ iMyLocationsDatabaseManager->UpdateEntryName(
+ iMapTileRequestQueue[0]->iUId, ESourceContactsWork, landmarkName );
+ }
//Publish the maptile status , if it was from contact
if( iLastContactId == iMapTileRequestQueue[0]->iUId )
@@ -1626,7 +1673,10 @@
iMapTileRequestQueue[0]->iUId,
iMapTileRequestQueue[0]->iAddressType, aLatitude,
aLongitude);
+ TBuf<KBufSize> landmarkName;
+ GetContactName(iMapTileRequestQueue[0]->iUId,landmarkName);
//Update mylocation database
+ iMapTileRequestQueue[0]->iLandmarkInfo->SetLandmarkNameL( landmarkName );
TRAP_IGNORE( UpdateDatabaseL(
iMapTileRequestQueue[0]->iLandmarkInfo,
iMapTileRequestQueue[0]->iUId,
@@ -1643,6 +1693,35 @@
}
+
+// -----------------------------------------------------------------------------
+// CMyLocationsEngine::GetContactName()
+// -----------------------------------------------------------------------------
+//
+void CMyLocationsEngine::GetContactName( TInt32 aUId,TDes& aName)
+{
+ QContact contactInfo = iContactManager->contact( aUId );
+ QContactName name = contactInfo.detail( QContactName::DefinitionName );
+ QString firstName = name.firstName();
+ QString lastName = name.lastName();
+ QString fullName("");
+
+ if( lastName.isEmpty() )
+ {
+ fullName = firstName;
+ }
+ else
+ {
+ if( !firstName.isEmpty() )
+ {
+ fullName = firstName + KSpace;
+ }
+ fullName = fullName + lastName;
+ }
+
+ aName.Copy( reinterpret_cast<const TUint16*>(fullName.utf16()) );
+}
+
// -----------------------------------------------------------------------------
// CMyLocationsEngine::UpdateDatabaseL()
// -----------------------------------------------------------------------------
@@ -1651,7 +1730,10 @@
const TUint32 aSourceType, const TEntryChangeType aChangeType )
{
__TRACE_CALLSTACK;
- Cancel();
+ if(IsActive())
+ {
+ Cancel();
+ }
iMyLocationsDatabaseManager->UpdateDatabaseL( aLandmark, aUid,
aSourceType, aChangeType );
if( aSourceType != ESourceLandmarks )
--- a/locationdataharvester/rom/mylocations.iby Tue Jul 06 14:10:28 2010 +0300
+++ b/locationdataharvester/rom/mylocations.iby Wed Aug 18 09:43:18 2010 +0300
@@ -30,6 +30,6 @@
data=DATAZ_\APP_RESOURCE_DIR\mylocationsengine.rsc APP_RESOURCE_DIR\mylocationsengine.rsc
data=\epoc32\data\z\resource\qt\crml\maptilestatuspublisher.qcrml resource\qt\crml\maptilestatuspublisher.qcrml
-data=\epoc32\data\z\resource\qt\crml\maptilepublisher.qcrml resource\qt\crml\maptilepublisher.qcrml
+data=\epoc32\data\z\resource\qt\crml\maptilecontactpublisher.qcrml resource\qt\crml\maptilecontactpublisher.qcrml
data=\epoc32\data\z\resource\qt\crml\maptilecalpublisher.qcrml resource\qt\crml\maptilecalpublisher.qcrml
#endif
--- a/locationpickerservice/inc/locationpickertypes.h Tue Jul 06 14:10:28 2010 +0300
+++ b/locationpickerservice/inc/locationpickertypes.h Wed Aug 18 09:43:18 2010 +0300
@@ -29,11 +29,15 @@
//Icon Paths
-// dummy image for a location
+// dummy image for a LandMarks
const QString KDummyImage("qtg_large_maps");
+//Image for calendar entries
+const QString KCalendarImage("qtg_large_calendar");
+//Image for contacts entries
+const QString KContactsImage("qtg_large_phonebook");
//Contacts collection icon
-const QString KCollectionsContacts("qtg_small_contacts");
+const QString KCollectionsContacts("qtg_small_phonebook");
//Calendar collection icon
const QString KCollectionsCalendar("qtg_small_calendar");
--- a/locationpickerservice/resources/locationpickerview.docml Tue Jul 06 14:10:28 2010 +0300
+++ b/locationpickerservice/resources/locationpickerview.docml Wed Aug 18 09:43:18 2010 +0300
@@ -15,10 +15,10 @@
<string name="text" value=""/>
</object>
<object name="ascendingAction" type="HbAction">
- <string locid="txt_lint_list_ascending" name="text" value="Ascending"/>
+ <string locid="txt_lint_opt_sort_by_sub_ascending" name="text" value="Ascending"/>
</object>
<object name="descendingAction" type="HbAction">
- <string locid="txt_lint_list_descending" name="text" value="Descending"/>
+ <string locid="txt_lint_opt_sort_by_sub_descending" name="text" value="Descending"/>
</object>
<widget name="LocationPickerView" type="HbView">
<widget name="content" role="HbView:widget" type="HbWidget">
@@ -33,7 +33,7 @@
<widget name="sortByMenu" role="HbMenu:menu" type="HbMenu">
<ref object="ascendingAction" role="HbMenu:addAction"/>
<ref object="descendingAction" role="HbMenu:addAction"/>
- <string locid="txt_lint_list_sort_by" name="title" value="Sort By"/>
+ <string locid="txt_lint_opt_sort_by" name="title" value="Sort By"/>
</widget>
</widget>
<string locid="txt_lint_title_select_location" name="title"/>
--- a/locationpickerservice/resources/popupdialog.docml Tue Jul 06 14:10:28 2010 +0300
+++ b/locationpickerservice/resources/popupdialog.docml Wed Aug 18 09:43:18 2010 +0300
@@ -25,14 +25,14 @@
</widget>
<real name="z" value="0"/>
<layout spacing="var(hb-param-margin-gene-popup)" type="grid">
- <contentsmargins bottom="var(hb-param-margin-gene-popup)" left="var(hb-param-margin-gene-popup)" right="var(hb-param-margin-gene-popup)" top="var(hb-param-margin-gene-popup)"/>
+ <contentsmargins bottom="0un" left="0un" right="0un" top="0un"/>
<griditem column="0" itemname="mapLabel" row="0"/>
+ <griditem column="0" itemname="addressBottom" row="3"/>
<griditem column="0" itemname="titleLabel" row="1"/>
<griditem column="0" itemname="addressMiddle" row="2"/>
- <griditem column="0" itemname="addressBottom" row="3"/>
</layout>
</widget>
- <rect height="67.31343un" name="geometry" width="46.71642un" x="3.28358un" y="14.02985un"/>
+ <rect height="67.31343un" name="geometry" width="46.71642un" x="2un" y="14.02985un"/>
<sizepolicy horizontalPolicy="Preferred" horizontalStretch="0" verticalPolicy="Preferred" verticalStretch="0"/>
<ref object="action" role="HbDialog:primaryAction"/>
</widget>
--- a/locationpickerservice/src/hgwidgetdatamodel.cpp Tue Jul 06 14:10:28 2010 +0300
+++ b/locationpickerservice/src/hgwidgetdatamodel.cpp Wed Aug 18 09:43:18 2010 +0300
@@ -102,7 +102,15 @@
{
QStringList displayText;
QStringList adressDetail = mProxyModel->data(proxyModelIndex,Qt::DisplayRole).toStringList();
- QString displayString = adressDetail[0]+KSeparator+KSpace+adressDetail[1];
+ QString displayString;
+ if(!adressDetail[0].isEmpty())
+ {
+ displayString = adressDetail[0]+KSeparator+KSpace+adressDetail[1];
+ }
+ else
+ {
+ displayString = adressDetail[1];
+ }
QString text("");
displayText <<displayString<<text;
returnValue = displayText;
@@ -127,8 +135,7 @@
painter.begin(&mapPixmap);
HbIcon adressTypeIcon(adressType);
//draw the adressType Icon over mapTile Icon
- QPixmap adressTypePixmap = adressTypeIcon.pixmap();
- painter.drawPixmap( (mapPixmap.width()-adressTypePixmap.width()),0,adressTypePixmap );
+ adressTypeIcon.paint(&painter,QRectF((mapPixmap.width()-adressTypeIcon.width()),0,adressTypeIcon.width(),adressTypeIcon.height()));
painter.fillRect(QRect(0,0,mapWidth,MAPSTROKE),brush);
painter.fillRect(QRect(0,mapHeight-MAPSTROKE,mapWidth,(mapHeight-MAPSTROKE)),brush);
painter.fillRect(QRect(0,0,MAPSTROKE,mapPixmap.height()),brush);
--- a/locationpickerservice/src/locationpickerdatamanager_p.cpp Tue Jul 06 14:10:28 2010 +0300
+++ b/locationpickerservice/src/locationpickerdatamanager_p.cpp Wed Aug 18 09:43:18 2010 +0300
@@ -196,6 +196,7 @@
// set icons based on contact address type
QVariantList icons;
HbIcon adressTypeIcon;
+ HbIcon potraitIcon;
QString adressType;
bool adressIconPresent = false;
if( aItemArray[i].mSourceType == ESourceContactsHome )
@@ -210,6 +211,20 @@
adressType = KContactWorkIcon;
adressIconPresent = true;
}
+
+ if( aItemArray[i].mSourceType == ESourceCalendar )
+ {
+ potraitIcon = HbIcon( KCalendarImage );
+ }
+ else if( aItemArray[i].mSourceType == ESourceContactsWork || aItemArray[i].mSourceType
+ == ESourceContactsHome || aItemArray[i].mSourceType == ESourceContactsPref )
+ {
+ potraitIcon = HbIcon( KContactsImage );
+ }
+ else
+ {
+ potraitIcon = HbIcon( KDummyImage );
+ }
// create a list item and set to model
QStringList addressData;
@@ -226,7 +241,6 @@
landscapeIconPath = QString("");
}
addressData.clear();
- HbIcon potraitIcon( KDummyImage );
icons<<potraitIcon;
if(adressIconPresent)
{
@@ -277,7 +291,7 @@
QString calendarCollectionNum;
calendarCollectionNum.setNum(calNum);
calendarCollectionNum.append(" items");
- QString calendarCollectionName( hbTrId("txt_lint_list_calendar_event_locations") );
+ QString calendarCollectionName( hbTrId("txt_lint_list_calendar_locations") );
QStringList calender = (QStringList()<<calendarCollectionName<<calendarCollectionNum);
QStandardItem *modelItemCalendar = new QStandardItem();
--- a/locationpickerservice/src/locationpickersearchview.cpp Tue Jul 06 14:10:28 2010 +0300
+++ b/locationpickerservice/src/locationpickersearchview.cpp Wed Aug 18 09:43:18 2010 +0300
@@ -179,7 +179,7 @@
{
mLongPressMenu = new HbMenu();
mLongPressMenu->setTimeout(HbMenu::NoTimeout);
- mSelectAction = mLongPressMenu->addAction(hbTrId("Select"));
+ mSelectAction = mLongPressMenu->addAction(hbTrId("txt_lint_list_select"));
mIndex = aItem->modelIndex();
connect(mSelectAction, SIGNAL(triggered()),this, SLOT(handleLongPress()));
mLongPressMenu->setPreferredPos(aPoint);
--- a/locationpickerservice/src/locationpickerview.cpp Tue Jul 06 14:10:28 2010 +0300
+++ b/locationpickerservice/src/locationpickerview.cpp Wed Aug 18 09:43:18 2010 +0300
@@ -121,8 +121,14 @@
//if current model is collection content, go back to collectionlist content
if(mViewType == ELocationPickerCollectionContent)
{
- removeDetailsLabel();
- colectionTabTriggered();
+ mListItem->setGraphicsSize(HbListViewItem::MediumIcon);
+ removeDetailsLabel();
+ mAscendingAction->setDisabled(true);
+ mDescendingAction->setDisabled(true);
+ mAllAction->setChecked(false);
+ mViewType = ELocationPickerCollectionListContent;
+ manageListView();
+
clearContentModel();
}
else
@@ -193,8 +199,12 @@
//create MediaWall Object
mWidget = new HgMediawall();
HbIcon defaultIcon(KDummyImage);
- QImage defaultImage = defaultIcon.pixmap().toImage().convertToFormat(QImage::Format_ARGB32_Premultiplied);
- mWidget->setDefaultImage(defaultImage);
+ QPainter painter;
+ QPixmap defaultImage(defaultIcon.width(),defaultIcon.height());
+ painter.begin(&defaultImage);
+ defaultIcon.paint(&painter,QRectF(0,0,defaultIcon.width(),defaultIcon.height()));
+ painter.end();
+ mWidget->setDefaultImage( defaultImage.toImage() );
HgMediawall* mediawall = qobject_cast<HgMediawall*>( mWidget );
mediawall->setObjectName("location");
HbStyleLoader::registerFilePath(":/location.hgmediawall.widgetml");
@@ -463,6 +473,12 @@
// -----------------------------------------------------------------------------
void LocationPickerView::colectionTabTriggered()
{
+ if( mViewType == ELocationPickerCollectionListContent ||
+ mViewType == ELocationPickerCollectionContent )
+ {
+ mCollectionAction->setChecked(true);
+ return;
+ }
mListItem->setGraphicsSize(HbListViewItem::MediumIcon);
removeDetailsLabel();
//execute only if tab is not pressed
@@ -486,6 +502,7 @@
// -----------------------------------------------------------------------------
void LocationPickerView::searchTabTriggered()
{
+ mWidget->hide();
emit switchToSearchView();
}
@@ -507,11 +524,11 @@
switch(acategoryId)
{
- case 1: categoryname = "Landmarks";
+ case 1: categoryname = QString(hbTrId("txt_lint_subhead_places"));
break;
- case 8: categoryname = "Contacts";
+ case 8: categoryname = QString(hbTrId("txt_lint_subhead_contact_addresses"));
break;
- case 9: categoryname = "Calender";
+ case 9: categoryname = QString(hbTrId("txt_lint_subhead_calendar_event_locations"));
break;
}
if(mCollectionContent->locationFound())
@@ -594,10 +611,10 @@
mLongPressMenu = new HbMenu();
mLongPressMenu->setTimeout(HbMenu::NoTimeout);
connect(mLongPressMenu,SIGNAL(aboutToClose ()),this,SLOT(deleteMenu()));
- mSelectAction = mLongPressMenu->addAction(hbTrId("Select"));
+ mSelectAction = mLongPressMenu->addAction(hbTrId("txt_lint_list_select"));
if( mViewType == ELocationPickerCollectionContent || mViewType == ELocationPickerContent )
{
- mDetailsAction = mLongPressMenu->addAction(hbTrId("txt_lint_list_details"));
+ mDetailsAction = mLongPressMenu->addAction(hbTrId("txt_lint_menu_details"));
connect(mDetailsAction, SIGNAL(triggered()), this, SLOT(handleDetails()));
}
mIndex = aItem->modelIndex();
@@ -614,7 +631,7 @@
mLongPressMenu = new HbMenu();
mLongPressMenu->setTimeout(HbMenu::NoTimeout);
connect(mLongPressMenu,SIGNAL(aboutToClose ()),this,SLOT(deleteMenu()));
- mSelectAction = mLongPressMenu->addAction(hbTrId("Select"));
+ mSelectAction = mLongPressMenu->addAction(hbTrId("txt_lint_list_select"));
mIndex = aIndex;
connect(mSelectAction, SIGNAL(triggered()), this, SLOT(handleSelect()));
mLongPressMenu->setPreferredPos(aPoint);