# HG changeset patch # User Dremov Kirill (Nokia-D-MSW/Tampere) # Date 1286968533 -10800 # Node ID 38bb213f60bafa1e020a80f14cb8966d68f423e8 # Parent 6b5524b4f673f94ce096db1485835126fe7a0963 Revision: 201039 Kit: 201041 diff -r 6b5524b4f673 -r 38bb213f60ba ccservices/cmsservices/cmscontactor/group/cmscontactor.mmp --- a/ccservices/cmsservices/cmscontactor/group/cmscontactor.mmp Wed Sep 15 11:56:55 2010 +0300 +++ b/ccservices/cmsservices/cmscontactor/group/cmscontactor.mmp Wed Oct 13 14:15:33 2010 +0300 @@ -61,7 +61,7 @@ LIBRARY euser.lib LIBRARY efsrv.lib LIBRARY aiwdialdata.lib //AIW -LIBRARY CommonEngine.lib +LIBRARY commonengine.lib LIBRARY servicehandler.lib //AIW LIBRARY sendui.lib LIBRARY cmsclient.lib //CMS diff -r 6b5524b4f673 -r 38bb213f60ba ccservices/cmsservices/cmsengine/Server/group/cmsserver.mmp --- a/ccservices/cmsservices/cmsengine/Server/group/cmsserver.mmp Wed Sep 15 11:56:55 2010 +0300 +++ b/ccservices/cmsservices/cmsengine/Server/group/cmsserver.mmp Wed Oct 13 14:15:33 2010 +0300 @@ -39,7 +39,7 @@ SOURCE cmsphonebookproxy.cpp SOURCE cmsserverasynccontact.cpp SOURCE cmsserverxspcontacthandler.cpp -SOURCE cmsfindlinkedcontact.cpp +SOURCE cmsfindlinkedcontact.cpp SOURCE cmssetvoicecalldefault.cpp USERINCLUDE ../inc @@ -57,13 +57,13 @@ LIBRARY efsrv.lib LIBRARY euser.lib LIBRARY fbscli.lib -LIBRARY featmgr.lib -LIBRARY VPbkEng.lib -LIBRARY CommonEngine.lib +LIBRARY FeatMgr.lib +LIBRARY vpbkeng.lib +LIBRARY CommonEngine.lib LIBRARY presencecacheutils.lib LIBRARY presencecacheclient2.lib LIBRARY Pbk2Presentation.lib // nameformatter -LIBRARY serviceprovidersettings.lib +LIBRARY serviceprovidersettings.lib LIBRARY presencetrafficlights.lib LIBRARY rcse.lib diff -r 6b5524b4f673 -r 38bb213f60ba ccservices/cmsservices/cmsengine/Server/inc/cmsdefines.h --- a/ccservices/cmsservices/cmsengine/Server/inc/cmsdefines.h Wed Sep 15 11:56:55 2010 +0300 +++ b/ccservices/cmsservices/cmsengine/Server/inc/cmsdefines.h Wed Oct 13 14:15:33 2010 +0300 @@ -22,7 +22,7 @@ // INCLUDES #include -#include +#include //The types for voice calls diff -r 6b5524b4f673 -r 38bb213f60ba ccservices/cmsservices/cmsengine/Server/inc/cmsservercontact.h --- a/ccservices/cmsservices/cmsengine/Server/inc/cmsservercontact.h Wed Sep 15 11:56:55 2010 +0300 +++ b/ccservices/cmsservices/cmsengine/Server/inc/cmsservercontact.h Wed Oct 13 14:15:33 2010 +0300 @@ -22,7 +22,7 @@ // INCLUDES #include "cmscontact.h" -#include +#include #include #include "bpasobserver.h" #include "cmscontactinterface.h" diff -r 6b5524b4f673 -r 38bb213f60ba ccservices/cmsservices/cmsengine/Server/inc/cmsserverxspcontacthandler.h --- a/ccservices/cmsservices/cmsengine/Server/inc/cmsserverxspcontacthandler.h Wed Sep 15 11:56:55 2010 +0300 +++ b/ccservices/cmsservices/cmsengine/Server/inc/cmsserverxspcontacthandler.h Wed Oct 13 14:15:33 2010 +0300 @@ -23,7 +23,7 @@ // INCLUDES #include #include "cmscontact.h" -#include +#include #include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba ccservices/cmsservices/cmsengine/Server/src/cmsfindlinkedcontact.cpp --- a/ccservices/cmsservices/cmsengine/Server/src/cmsfindlinkedcontact.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/ccservices/cmsservices/cmsengine/Server/src/cmsfindlinkedcontact.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -24,7 +24,7 @@ #include #include #include -#include +#include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba ccservices/cmsservices/cmsengine/Server/src/cmsserverutils.cpp --- a/ccservices/cmsservices/cmsengine/Server/src/cmsserverutils.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/ccservices/cmsservices/cmsengine/Server/src/cmsserverutils.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -18,7 +18,7 @@ // INCLUDE FILES -#include +#include #include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba ccservices/cmsservices/cmsengine/Server/src/cmssetvoicecalldefault.cpp --- a/ccservices/cmsservices/cmsengine/Server/src/cmssetvoicecalldefault.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/ccservices/cmsservices/cmsengine/Server/src/cmssetvoicecalldefault.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -26,7 +26,7 @@ #include #include #include -#include +#include #include "cmssetvoicecalldefault.h" diff -r 6b5524b4f673 -r 38bb213f60ba ccservices/cmsservices/cmsengine/tsrc/contactcreator/Server/group/creatorserver.mmp --- a/ccservices/cmsservices/cmsengine/tsrc/contactcreator/Server/group/creatorserver.mmp Wed Sep 15 11:56:55 2010 +0300 +++ b/ccservices/cmsservices/cmsengine/tsrc/contactcreator/Server/group/creatorserver.mmp Wed Oct 13 14:15:33 2010 +0300 @@ -43,7 +43,7 @@ LIBRARY estor.lib LIBRARY efsrv.lib LIBRARY euser.lib -LIBRARY VPbkEng.lib +LIBRARY vpbkeng.lib LIBRARY flogger.lib LIBRARY cntmodel.lib LIBRARY CommonEngine.lib diff -r 6b5524b4f673 -r 38bb213f60ba ccservices/cmsservices/cmsengine/tsrc/contactcreator/Server/src/creatorserver.cpp --- a/ccservices/cmsservices/cmsengine/tsrc/contactcreator/Server/src/creatorserver.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/ccservices/cmsservices/cmsengine/tsrc/contactcreator/Server/src/creatorserver.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -23,7 +23,7 @@ #include #include #include -#include +#include #include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba ccservices/cmsservices/cmsengine/tsrc/contactcreator2/Server/group/creatorserver2.mmp --- a/ccservices/cmsservices/cmsengine/tsrc/contactcreator2/Server/group/creatorserver2.mmp Wed Sep 15 11:56:55 2010 +0300 +++ b/ccservices/cmsservices/cmsengine/tsrc/contactcreator2/Server/group/creatorserver2.mmp Wed Oct 13 14:15:33 2010 +0300 @@ -43,7 +43,7 @@ LIBRARY estor.lib LIBRARY efsrv.lib LIBRARY euser.lib -LIBRARY VPbkEng.lib +LIBRARY vpbkeng.lib LIBRARY flogger.lib LIBRARY CommonEngine.lib diff -r 6b5524b4f673 -r 38bb213f60ba ccservices/cmsservices/cmsengine/tsrc/contactcreator2/Server/src/creatorserver2.cpp --- a/ccservices/cmsservices/cmsengine/tsrc/contactcreator2/Server/src/creatorserver2.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/ccservices/cmsservices/cmsengine/tsrc/contactcreator2/Server/src/creatorserver2.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -21,7 +21,7 @@ #include #include #include -#include +#include #include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba ccservices/cmsservices/contactpresence/group/contactpresence.mmp --- a/ccservices/cmsservices/contactpresence/group/contactpresence.mmp Wed Sep 15 11:56:55 2010 +0300 +++ b/ccservices/cmsservices/contactpresence/group/contactpresence.mmp Wed Oct 13 14:15:33 2010 +0300 @@ -53,7 +53,7 @@ LIBRARY presencetrafficlights.lib LIBRARY aknskins.lib -LIBRARY VPbkEng.lib +LIBRARY vpbkeng.lib LIBRARY Pbk2Presentation.lib //nameformatter -LIBRARY serviceprovidersettings.lib +LIBRARY serviceprovidersettings.lib diff -r 6b5524b4f673 -r 38bb213f60ba ccservices/cmsservices/contactpresence/inc/presenceiconinfo.h --- a/ccservices/cmsservices/contactpresence/inc/presenceiconinfo.h Wed Sep 15 11:56:55 2010 +0300 +++ b/ccservices/cmsservices/contactpresence/inc/presenceiconinfo.h Wed Oct 13 14:15:33 2010 +0300 @@ -23,7 +23,7 @@ #include #include #include -#include +#include #include "mpresencetrafficlightsobs.h" #include "presenceiconinfolistener.h" diff -r 6b5524b4f673 -r 38bb213f60ba contactextensions/predefinedcontacts/group/predefinedcontacts.mmp --- a/contactextensions/predefinedcontacts/group/predefinedcontacts.mmp Wed Sep 15 11:56:55 2010 +0300 +++ b/contactextensions/predefinedcontacts/group/predefinedcontacts.mmp Wed Oct 13 14:15:33 2010 +0300 @@ -53,9 +53,9 @@ USERINCLUDE ../inc LIBRARY euser.lib -LIBRARY centralrepository.lib -LIBRARY VPbkEng.lib -LIBRARY VPbkVCardEng.lib +LIBRARY CentralRepository.lib +LIBRARY vpbkeng.lib +LIBRARY vpbkvcardeng.lib LIBRARY efsrv.lib LIBRARY estor.lib LIBRARY xmlframework.lib @@ -63,8 +63,8 @@ LIBRARY sysutil.lib LIBRARY aknnotify.lib LIBRARY eiksrv.lib -LIBRARY CommonEngine.lib -LIBRARY pbkeng.lib +LIBRARY commonengine.lib +LIBRARY PbkEng.lib LIBRARY ecom.lib LIBRARY flogger.lib LIBRARY cntmodel.lib diff -r 6b5524b4f673 -r 38bb213f60ba contactextensions/predefinedcontacts/inc/pdcxmlmapping.h --- a/contactextensions/predefinedcontacts/inc/pdcxmlmapping.h Wed Sep 15 11:56:55 2010 +0300 +++ b/contactextensions/predefinedcontacts/inc/pdcxmlmapping.h Wed Oct 13 14:15:33 2010 +0300 @@ -20,7 +20,7 @@ #define PDCXMLMAPPING_H // System includes -#include +#include // User includes #include "pdcstringconstants.h" // PdcStringTable diff -r 6b5524b4f673 -r 38bb213f60ba contacts_plat/cca_launch_api/tsrc/cca_launch_api/group/cca_launch_api.mmp --- a/contacts_plat/cca_launch_api/tsrc/cca_launch_api/group/cca_launch_api.mmp Wed Sep 15 11:56:55 2010 +0300 +++ b/contacts_plat/cca_launch_api/tsrc/cca_launch_api/group/cca_launch_api.mmp Wed Oct 13 14:15:33 2010 +0300 @@ -45,7 +45,7 @@ USERINCLUDE ../inc LIBRARY euser.lib -LIBRARY StifTestInterface.lib +LIBRARY stiftestinterface.lib LIBRARY estlib.lib LIBRARY bafl.lib LIBRARY efsrv.lib diff -r 6b5524b4f673 -r 38bb213f60ba contacts_plat/cca_view_plugin_api/tsrc/ut_cccappviewpluginakncontainer/group/ut_cccappviewpluginakncontainer.mmp --- a/contacts_plat/cca_view_plugin_api/tsrc/ut_cccappviewpluginakncontainer/group/ut_cccappviewpluginakncontainer.mmp Wed Sep 15 11:56:55 2010 +0300 +++ b/contacts_plat/cca_view_plugin_api/tsrc/ut_cccappviewpluginakncontainer/group/ut_cccappviewpluginakncontainer.mmp Wed Oct 13 14:15:33 2010 +0300 @@ -36,7 +36,7 @@ SYSTEMINCLUDE /epoc32/include/ecom LIBRARY euser.lib -LIBRARY StifTestInterface.lib +LIBRARY stiftestinterface.lib LIBRARY ecom.lib LIBRARY flogger.lib LIBRARY cone.lib//avkon view/container diff -r 6b5524b4f673 -r 38bb213f60ba contacts_plat/cca_view_plugin_api/tsrc/ut_cccappviewpluginaknview/group/ut_cccappviewpluginaknview.mmp --- a/contacts_plat/cca_view_plugin_api/tsrc/ut_cccappviewpluginaknview/group/ut_cccappviewpluginaknview.mmp Wed Sep 15 11:56:55 2010 +0300 +++ b/contacts_plat/cca_view_plugin_api/tsrc/ut_cccappviewpluginaknview/group/ut_cccappviewpluginaknview.mmp Wed Oct 13 14:15:33 2010 +0300 @@ -36,7 +36,7 @@ SYSTEMINCLUDE /epoc32/include/ecom LIBRARY euser.lib -LIBRARY StifTestInterface.lib +LIBRARY stiftestinterface.lib LIBRARY ecom.lib LIBRARY flogger.lib LIBRARY cone.lib//avkon view/container diff -r 6b5524b4f673 -r 38bb213f60ba contacts_plat/contactpresence_api/tsrc/contactpresenceapitester/group/contactpresenceapitester.mmp --- a/contacts_plat/contactpresence_api/tsrc/contactpresenceapitester/group/contactpresenceapitester.mmp Wed Sep 15 11:56:55 2010 +0300 +++ b/contacts_plat/contactpresence_api/tsrc/contactpresenceapitester/group/contactpresenceapitester.mmp Wed Oct 13 14:15:33 2010 +0300 @@ -45,9 +45,9 @@ LIBRARY fbscli.lib LIBRARY euser.lib LIBRARY efsrv.lib -LIBRARY VPbkEng.lib +LIBRARY vpbkeng.lib LIBRARY flogger.lib -LIBRARY StifTestInterface.lib +LIBRARY stiftestinterface.lib LIBRARY aknicon.lib LIBRARY serviceprovidersettings.lib // for writing cache diff -r 6b5524b4f673 -r 38bb213f60ba contacts_plat/contactpresence_api/tsrc/contactpresenceapitester/src/contactpresencephonebook.cpp --- a/contacts_plat/contactpresence_api/tsrc/contactpresenceapitester/src/contactpresencephonebook.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/contacts_plat/contactpresence_api/tsrc/contactpresenceapitester/src/contactpresencephonebook.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -20,7 +20,7 @@ #include #include -#include +#include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba contacts_plat/phonebook_2_contact_related_icon_customization_api/tsrc/group/Pbk2IconCustomApiTestModule.mmp --- a/contacts_plat/phonebook_2_contact_related_icon_customization_api/tsrc/group/Pbk2IconCustomApiTestModule.mmp Wed Sep 15 11:56:55 2010 +0300 +++ b/contacts_plat/phonebook_2_contact_related_icon_customization_api/tsrc/group/Pbk2IconCustomApiTestModule.mmp Wed Oct 13 14:15:33 2010 +0300 @@ -33,6 +33,6 @@ LIBRARY euser.lib LIBRARY ecom.lib LIBRARY fbscli.lib -LIBRARY StifTestInterface.lib +LIBRARY stiftestinterface.lib // End of File diff -r 6b5524b4f673 -r 38bb213f60ba contacts_plat/phonebook_2_presentation_api/inc/Pbk2IconId.hrh --- a/contacts_plat/phonebook_2_presentation_api/inc/Pbk2IconId.hrh Wed Sep 15 11:56:55 2010 +0300 +++ b/contacts_plat/phonebook_2_presentation_api/inc/Pbk2IconId.hrh Wed Oct 13 14:15:33 2010 +0300 @@ -67,9 +67,7 @@ EPbk2qgn_prop_pb_no_valid_lm, EPbk2qgn_prop_blid_waypoint, EPbk2qgn_prop_radiobutt_off, - EPbk2qgn_prop_radiobutt_on, - EPbk2qgn_prop_phonebook2_unsync - + EPbk2qgn_prop_radiobutt_on }; #endif // PBK2ICONID_HRH diff -r 6b5524b4f673 -r 38bb213f60ba contacts_plat/phonebook_2_rcl_api/tsrc/rcltestsuite/group/rcltestsuite.mmp --- a/contacts_plat/phonebook_2_rcl_api/tsrc/rcltestsuite/group/rcltestsuite.mmp Wed Sep 15 11:56:55 2010 +0300 +++ b/contacts_plat/phonebook_2_rcl_api/tsrc/rcltestsuite/group/rcltestsuite.mmp Wed Oct 13 14:15:33 2010 +0300 @@ -41,10 +41,10 @@ APP_LAYER_SYSTEMINCLUDE LIBRARY euser.lib -LIBRARY StifTestInterface.lib +LIBRARY stiftestinterface.lib LIBRARY stiftestengine.lib -LIBRARY ecom.lib +LIBRARY eCom.lib LIBRARY flogger.lib LIBRARY estor.lib LIBRARY pbk2rclengine.lib diff -r 6b5524b4f673 -r 38bb213f60ba contacts_plat/predictivesearch_client_api/tsrc/PsClientTestSuite/conf/PsClientTestSuitePRC.cfg --- a/contacts_plat/predictivesearch_client_api/tsrc/PsClientTestSuite/conf/PsClientTestSuitePRC.cfg Wed Sep 15 11:56:55 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,1661 +0,0 @@ -//############################################################################## -//# # -//# STIF Test suite for Predictive Search Engine # -//# -------------------------------------------- # -//# # -//# Initially designed for ITUT keyboard. # -//# Some tests are adapted for N97 which has a 3x11 keyboard. # -//# # -//# TC_ITU: Test Case for ITUT keyboard. # -//# TC_N97: Test Case for N97 3x11 keyboard. # -//# TC_N00: Test Case for XXX 4x10 keyboard. (Phone model name not known yet) # -//# TC_DEA: Test Case Deactivated. Use in comments only. # -//# # -//# NOTES: # -//# # -//# - In ITUT keyboard "0" and " " are on the same key. # -//# Therefore if some clients deliver a "0" in Itut predictive mode, # -//# then the "0" has the double nature of a "0" and of a " " (separator). # -//# # -//# - In N97-3x11 and N00-4x10 keyboards "0" and " " are on different keys. # -//# Therefore if some clients deliver a "0" in Qwerty predictive mode, # -//# then the "0" has the single nature of a "0" (not a separator). # -//# # -//# - The SearchOnInputString and TC__SearchOnInputString test # -//# drivers are identical. The naming is different in order to # -//# comment/uncomment the test cases more easily. # -//# XXX = [ITU, N97, N00]. # -//# # -//# - The SearchLookupMatchString and TC__SearchLookupMatchString test # -//# drivers are identical. The naming is different in order to # -//# comment/uncomment the test cases more easily. # -//# XXX = [ITU, N97, N00]. # -//# # -//# - The TestSearchingInCache and TC__TestSearchingInCache test # -//# drivers are identical. The naming is different in order to # -//# comment/uncomment the test cases more easily. # -//# XXX = [ITU, N97, N00]. # -//# # -//# - The test: # -//# api TC_N_SearchOnInputString "IPSTR[Fake_Test]" # -//# "SQ[F,ENonPredictive,EAlphaSort,5]" "RES[1,(-1:F)]" # -//# "MATCHLOC[0:1]" # -//# is a fake test that succeeds always. It can be used temporarily when for # -//# a certain keyboard there is not KeyMap available yet. # -//# # -//############################################################################## - - -//------------------------------------------------------------------------------ -// Initial Set Up ("SU") -// - Server startup -// - Contacts/groups creation -// - Initial sort order -//------------------------------------------------------------------------------ - - -//****************************************************************************** -[Test] -title SU: Start Up the Server -create PsClientTestSuite api -api WriteTitleToLog -api TestSearchingInCache "URI[cntdb:\/\/c:contacts.cdb]" "SQ[6,EPredictiveItuT,EAlphaSort,5]" "RES[0,]" -delete api -[Endtest] - - -//****************************************************************************** -[Test] -title SU: Create contacts in phone memory -create PsClientTestSuite api -api WriteTitleToLog -api CreateContactsInPhone "CreateContacts[13,(FN:伟$,LN:开,CN:Finland)(FN:峰峰,LN:K,CN:Nokia)(FN:共鹏,LN:周,CN:TaiWan)(FN:利 华,LN:联 合,CN:美国)(FN:我 是 谁 娃 炅,LN:新年,CN:Nokia)(FN:Lpcsillet,LN:Lpcsucy,CN:Lpcsush)(FN:男,LN:虎,CN:Nokia)(FN:楚平,LN:人,CN:Nokia)(FN:任,LN:出凭,CN:Nokia)(FN:金,LN:+勇,CN:Nokia)(FN:@博 four,LN:!five)(FN:mahesh,LN:doraiswamy,CN:Nokia)(FN:0抓,LN:0图,CN:0Sam)]" "URI[cntdb:\/\/c:contacts.cdb]" -delete api -[Endtest] - - -//****************************************************************************** -[Test] -title SU: Add a group and contacts in the group -create PsClientTestSuite api -api WriteTitleToLog -api ADDGroups "AddGroups[同学,3,(FN:什么,LN:打,CN:Nokia)(FN:福气,LN:钱,CN:Nokia)(FN:mno,LN:同学家,CN:Nokia)]" -delete api -[Endtest] - - -//****************************************************************************** -// The following test case sets Name-Surname order - Keep in this position -[Test] -title SU: Change Sort Order to Name-Surname -create PsClientTestSuite api -api WriteTitleToLog -api TestSortOrder "URI[cntdb:\/\/c:contacts.cdb]" "SORTORDER[6,4,27]" -delete api -[Endtest] - - -//------------------------------------------------------------------------------ -// TestDataOrder ("DO") -//------------------------------------------------------------------------------ - - -//****************************************************************************** -[Test] -title DO: Test for contacts -create PsClientTestSuite api -api WriteTitleToLog -api TestDataOrder "URI[cntdb:\/\/c:contacts.cdb]" -delete api -[Endtest] - - -//****************************************************************************** -[Test] -title DO: Test for groups -create PsClientTestSuite api -api WriteTitleToLog -api TestDataOrder "URI[cntdb:\/\/c:contacts.gdb]" -delete api -[Endtest] - - -//****************************************************************************** -[Test] -title DO: Test for wrong URI -create PsClientTestSuite api -api WriteTitleToLog -api TestDataOrderForErrL "URI[cntdb:\/\/c:wrongcontactsuri.cdb]" -delete api -[Endtest] - - -//****************************************************************************** -[Test] -title DO: Test for group with group ID -create PsClientTestSuite api -api WriteTitleToLog -api TestDataOrder "URI[cntdb:\/\/c:contacts.gdb?id=3221]" -delete api -[Endtest] - - -//------------------------------------------------------------------------------ -// ConvertToVpbkLink ("VL") -//------------------------------------------------------------------------------ - - -//****************************************************************************** -[Test] -title VL: ConvertToVpbkLink - Test for contacts -create PsClientTestSuite api -api WriteTitleToLog -api ConvertToVpbkLink "URI[cntdb:\/\/c:contacts.cdb]" -delete api -[Endtest] - -//****************************************************************************** -[Test] -title VL: ConvertToVpbkLink - Test for groups -create PsClientTestSuite api -api WriteTitleToLog -api ConvertToVpbkLink "URI[cntdb:\/\/c:contacts.gdb]" -delete api -[Endtest] - - -//------------------------------------------------------------------------------ -// CheckLanguageSupport ("LS") -//------------------------------------------------------------------------------ - - -//****************************************************************************** -[Test] -title LS: Check Language Support (1) -create PsClientTestSuite api -api WriteTitleToLog -api CheckLanguageSupport "LANG[1,ETrue]" -delete api -[Endtest] - - -//****************************************************************************** -[Test] -title LS: Check Language Support (2) -create PsClientTestSuite api -api WriteTitleToLog -api CheckLanguageSupport "LANG[32,EFalse]" -delete api -[Endtest] - - -//------------------------------------------------------------------------------ -// SearchOnInputString ("IS") -//------------------------------------------------------------------------------ - - -//****************************************************************************** -[Test] -title IS: Single word (Predictive ITU-T) -create PsClientTestSuite api -api WriteTitleToLog -api TC_ITU_SearchOnInputString "IPSTR[阿才W]" "SQ[229,EPredictiveItuT,EPatternSort,5]" "RES[1,(-1:W)]" "MATCHLOC[2:1]" -delete api -[Endtest] - - -//****************************************************************************** -[Test] -title IS: Single word (Predictive QWERTY) -create PsClientTestSuite api -api WriteTitleToLog -//api TC_N97_SearchOnInputString "IPSTR[Adam]" "SQ[@-,EPredictiveQwerty,EPatternSort,5]" "RES[1,(-1:AD)]" "MATCHLOC[0:2]" -//api TC_DEA_SearchOnInputString "IPSTR[Just]" "SQ[+7,EPredictiveQwerty,EPatternSort,5]" "RES[1,(-1:JU)]" "MATCHLOC[0:2]" -api TC_N00_SearchOnInputString "IPSTR[F测试]" "SQ[F,ENonPredictive,EAlphaSort,5]" "RES[1,(-1:F)]" "MATCHLOC[0:1]" -delete api -[Endtest] - - -//****************************************************************************** -[Test] -title IS: Multi Search (Predictive ITU-T) -create PsClientTestSuite api -api WriteTitleToLog -api TC_ITU_SearchOnInputString "IPSTR[Adam 中文 Dusk]" "SQ[20903,EPredictiveItuT,EPatternSort,5]" "RES[1,(-1:A,-1:D)]" "MATCHLOC[0:1,8:1]" -delete api -[Endtest] - - -//****************************************************************************** -[Test] -title IS: Multi Search (Predictive QWERTY) -create PsClientTestSuite api -api WriteTitleToLog -//api TC_N97_SearchOnInputString "IPSTR[Adam Dory Dusk]" "SQ[@ D -,EPredictiveQwerty,EPatternSort,5]" "RES[1,(-1:A,-1:D)]" "MATCHLOC[0:1,5:1,10:1]" -//api TC_DEA_SearchOnInputString "IPSTR[Just Luke Last]" "SQ[+ L *,EPredictiveQwerty,EPatternSort,5]" "RES[1,(-1:J,-1:L)]" "MATCHLOC[0:1,5:1,10:1]" -api TC_N00_SearchOnInputString "IPSTR[Fake_Test 中文]" "SQ[F Z,ENonPredictive,EAlphaSort,5]" "RES[1,(-1:F)]" "MATCHLOC[0:1]" -delete api -[Endtest] - - -//****************************************************************************** -[Test] -title IS: Single word (Non-predictive) -create PsClientTestSuite api -api WriteTitleToLog -api SearchOnInputString "IPSTR[Hu中文ll]" "SQ[huz,ENonPredictive,EPatternSort,5]" "RES[1,(-1:HU)]" "MATCHLOC[0:2]" -delete api -[Endtest] - - -//****************************************************************************** -[Test] -title IS: Multi Search (Non-predictive) -create PsClientTestSuite api -api WriteTitleToLog -api SearchOnInputString "IPSTR[Gill Monk 中文]" "SQ[z m g,ENonPredictive,EAlphaSort,5]" "RES[1,(-1:G,-1:M)]" "MATCHLOC[0:1,5:1]" -delete api -[Endtest] - - -//****************************************************************************** -[Test] -title IS: Single word (Mixed ITU-T) -create PsClientTestSuite api -api WriteTitleToLog -api TC_ITU_SearchOnInputString "IPSTR[Xe中文n]" "SQ[9w,in,EPatternSort,5]" "RES[1,(-1:X)]" "MATCHLOC[0:1]" -delete api -[Endtest] - - -//****************************************************************************** -[Test] -title IS: Single word (Mixed QWERTY) -create PsClientTestSuite api -api WriteTitleToLog -//api TC_N97_SearchOnInputString "IPSTR[Xen]" "SQ[)e,qn,EPatternSort,5]" "RES[1,(-1:XE)]" "MATCHLOC[0:2]" -//api TC_DEA_SearchOnInputString "IPSTR[Hen]" "SQ[-e,qn,EPatternSort,5]" "RES[1,(-1:HE)]" "MATCHLOC[0:2]" -api TC_N00_SearchOnInputString "IPSTR[Fake_Test 中文]" "SQ[F,ENonPredictive,EAlphaSort,5]" "RES[1,(-1:F)]" "MATCHLOC[0:1]" -delete api -[Endtest] - - -//****************************************************************************** -[Test] -title IS: Multi Search (Mixed ITU-T) -create PsClientTestSuite api -api WriteTitleToLog -api TC_ITU_SearchOnInputString "IPSTR[中文 Monk]" "SQ[90m6,iini,EAlphaSort,5]" "RES[1,(-1:MO)]" "MATCHLOC[3:2]" -delete api -[Endtest] - - -//****************************************************************************** -[Test] -title IS: Multi Search (Mixed QWERTY) -create PsClientTestSuite api -api WriteTitleToLog -//api TC_N97_SearchOnInputString "IPSTR[Tim Monk]" "SQ[5 m9,qqnq,EAlphaSort,5]" "RES[1,(-1:MO,-1:T)]" "MATCHLOC[0:1,4:2]" -//api TC_DEA_SearchOnInputString "IPSTR[Tim Monk]" "SQ[5 m9,qqnq,EAlphaSort,5]" "RES[1,(-1:MO,-1:T)]" "MATCHLOC[0:1,4:2]" -api TC_N00_SearchOnInputString "IPSTR[Fake_Test 中文]" "SQ[F,ENonPredictive,EAlphaSort,5]" "RES[1,(-1:F)]" "MATCHLOC[0:1]" -delete api -[Endtest] - - -//****************************************************************************** -[Test] -title IS: Single word (Predictive ITU-T) -> No result -create PsClientTestSuite api -api WriteTitleToLog -api SearchOnInputString "IPSTR[中文]" "SQ[902,EPredictiveItuT,EPatternSort,5]" "RES[0,]" "MATCHLOC[]" -delete api -[Endtest] - - -//****************************************************************************** -[Test] -title IS: Multi Search (Predictive ITU-T) -> Partial match (1) -create PsClientTestSuite api -api WriteTitleToLog -api TC_ITU_SearchOnInputString "IPSTR[Adam Dory 中文]" "SQ[202,EPredictiveItuT,EAlphaSort,5]" "RES[1,(-1:A)]" "MATCHLOC[0:1]" -delete api -[Endtest] - - -//****************************************************************************** -[Test] -title IS: Multi Search (Predictive QWERTY) -> Partial match (1) -create PsClientTestSuite api -api WriteTitleToLog -//api TC_N97_SearchOnInputString "IPSTR[Adam Dory Dusk]" "SQ[@ @,EPredictiveQwerty,EAlphaSort,5]" "RES[1,(-1:A)]" "MATCHLOC[0:1]" -//api TC_DEA_SearchOnInputString "IPSTR[Just Luke Last]" "SQ[+ +,EPredictiveQwerty,EAlphaSort,5]" "RES[1,(-1:J)]" "MATCHLOC[0:1]" -api TC_N00_SearchOnInputString "IPSTR[Fake_Test 中文]" "SQ[F,ENonPredictive,EAlphaSort,5]" "RES[1,(-1:F)]" "MATCHLOC[0:1]" -delete api -[Endtest] - - -//****************************************************************************** -[Test] -title IS: Multi Search (Predictive ITU-T) -> Partial match (2) -create PsClientTestSuite api -api WriteTitleToLog -api TC_ITU_SearchOnInputString "IPSTR[Tim 中文]" "SQ[808,EPredictiveItuT,EAlphaSort,5]" "RES[1,(-1:T)]" "MATCHLOC[0:1]" -delete api -[Endtest] - - -//****************************************************************************** -[Test] -title IS: Multi Search (Predictive QWERTY) -> Partial match (2) -create PsClientTestSuite api -api WriteTitleToLog -//api TC_N97_SearchOnInputString "IPSTR[Tim Monk]" "SQ[5 5,EPredictiveQwerty,EAlphaSort,5]" "RES[1,(-1:T)]" "MATCHLOC[0:1]" -//api TC_DEA_SearchOnInputString "IPSTR[Tim Monk]" "SQ[5 5,EPredictiveQwerty,EAlphaSort,5]" "RES[1,(-1:T)]" "MATCHLOC[0:1]" -api TC_N00_SearchOnInputString "IPSTR[Fake_Test 中文]" "SQ[F,ENonPredictive,EAlphaSort,5]" "RES[1,(-1:F)]" "MATCHLOC[0:1]" -delete api -[Endtest] - - -//****************************************************************************** -[Test] -title IS: Empty String (Predictive ITU-T) -> No result -create PsClientTestSuite api -api WriteTitleToLog -api SearchOnInputString "IPSTR[]" "SQ[23,EPredictiveItuT,EPatternSort,5]" "RES[0,]" "MATCHLOC[]" -delete api -[Endtest] - - -//****************************************************************************** -[Test] -title IS: Only spaces string (Predictive ITU-T)- No result -create PsClientTestSuite api -api WriteTitleToLog -api SearchOnInputString "IPSTR[ ]" "SQ[23,EPredictiveItuT,EPatternSort,5]" "RES[0,]" "MATCHLOC[]" -delete api -[Endtest] - - -//------------------------------------------------------------------------------ -// SearchLookupMatchString ("LM") -//------------------------------------------------------------------------------ - -//****************************************************************************** -[Test] -title LM: Trivial (Predictive ITU-T) -create PsClientTestSuite api -api WriteTitleToLog -api TC_ITU_SearchLookupMatchString "IPSTR[Abc Bc 123 c]" "SQ[222022,EPredictiveItuT,EPatternSort,5]" "RESSTR[ABC BC]" -delete api -[Endtest] - -//****************************************************************************** -[Test] -title LM: Trivial (Predictive QWERTY) -create PsClientTestSuite api -api WriteTitleToLog -//api TC_N97_SearchLookupMatchString "IPSTR[Aa@ @A 123 a]" "SQ[aaa aa,EPredictiveQwerty,EPatternSort,5]" "RESSTR[Aa@ @A]" -//api TC_DEA_SearchLookupMatchString "IPSTR[Ll* *L 123 l]" "SQ[lll ll,EPredictiveQwerty,EPatternSort,5]" "RESSTR[Ll* *L]" -api TC_N00_SearchOnInputString "IPSTR[Fake_Test]" "SQ[F,ENonPredictive,EAlphaSort,5]" "RES[1,(-1:F)]" "MATCHLOC[0:1]" -delete api -[Endtest] - -//****************************************************************************** -[Test] -title LM: Single backtrack (Predictive ITU-T) -create PsClientTestSuite api -api WriteTitleToLog -api TC_ITU_SearchLookupMatchString "IPSTR[Abc Bc 123 c]" "SQ[220222,EPredictiveItuT,EPatternSort,5]" "RESSTR[ABC BC]" -delete api -[Endtest] - -//****************************************************************************** -[Test] -title LM: Single backtrack (Predictive QWERTY) -create PsClientTestSuite api -api WriteTitleToLog -//api TC_N97_SearchLookupMatchString "IPSTR[Aa@ @A 123 a]" "SQ[aa aaa,EPredictiveQwerty,EPatternSort,5]" "RESSTR[@A Aa@]" -//api TC_DEA_SearchLookupMatchString "IPSTR[Ll* *L 123 l]" "SQ[ll lll,EPredictiveQwerty,EPatternSort,5]" "RESSTR[*L Ll*]" -api TC_N00_SearchOnInputString "IPSTR[Fake_Test]" "SQ[F,ENonPredictive,EAlphaSort,5]" "RES[1,(-1:F)]" "MATCHLOC[0:1]" -delete api -[Endtest] - -//****************************************************************************** -[Test] -title LM: Double backtrack (Predictive ITU-T) -create PsClientTestSuite api -api WriteTitleToLog -api TC_ITU_SearchLookupMatchString "IPSTR[Abc Bc 123 c]" "SQ[20220222,EPredictiveItuT,EPatternSort,5]" "RESSTR[ABC BC C]" -delete api -[Endtest] - -//****************************************************************************** -[Test] -title LM: Double backtrack (Predictive QWERTY) -create PsClientTestSuite api -api WriteTitleToLog -//api TC_N97_SearchLookupMatchString "IPSTR[Aa@ @A 123 a]" "SQ[a aa aaa,EPredictiveQwerty,EPatternSort,5]" "RESSTR[a @A Aa@]" -//api TC_DEA_SearchLookupMatchString "IPSTR[Ll* *L 123 l]" "SQ[l ll lll,EPredictiveQwerty,EPatternSort,5]" "RESSTR[l *L Ll*]" -api TC_N00_SearchOnInputString "IPSTR[Fake_Test]" "SQ[F,ENonPredictive,EAlphaSort,5]" "RES[1,(-1:F)]" "MATCHLOC[0:1]" -delete api -[Endtest] - -//****************************************************************************** -[Test] -title LM: Spaces in query and in result (Predictive ITU-T) -create PsClientTestSuite api -api WriteTitleToLog -api TC_ITU_SearchLookupMatchString "IPSTR[Abc Bc 123 中文]" "SQ[ 22 1 2 ,EPredictiveItuT,EPatternSort,5]" "RESSTR[AB B 1]" -delete api -[Endtest] - -//****************************************************************************** -[Test] -title LM: Spaces in query and in result (Predictive QWERTY) -create PsClientTestSuite api -api WriteTitleToLog -//api TC_N97_SearchLookupMatchString "IPSTR[Aa@ @A 123 a]" "SQ[ aa q a ,EPredictiveQwerty,EPatternSort,5]" "RESSTR[ Aa 1 @ ]" -//api TC_DEA_SearchLookupMatchString "IPSTR[Ll* *L 123 l]" "SQ[ ll q l ,EPredictiveQwerty,EPatternSort,5]" "RESSTR[ Ll 1 * ]" -api TC_N00_SearchOnInputString "IPSTR[Fake_Test]" "SQ[F,ENonPredictive,EAlphaSort,5]" "RES[1,(-1:F)]" "MATCHLOC[0:1]" -delete api -[Endtest] - -//****************************************************************************** -[Test] -title LM: Not matched (Predictive ITU-T) -create PsClientTestSuite api -api WriteTitleToLog -api TC_ITU_SearchLookupMatchString "IPSTR[中文 陈二 123 c]" "SQ[2222,EPredictiveItuT,EPatternSort,5]" "RESSTR[]" -delete api -[Endtest] - -//****************************************************************************** -[Test] -title LM: Not matched (Predictive QWERTY) -create PsClientTestSuite api -api WriteTitleToLog -//api TC_N97_SearchLookupMatchString "IPSTR[Aa@ @A 123 a]" "SQ[aaaa,EPredictiveQwerty,EPatternSort,5]" "RESSTR[]" -//api TC_DEA_SearchLookupMatchString "IPSTR[Ll* *L 123 l]" "SQ[llll,EPredictiveQwerty,EPatternSort,5]" "RESSTR[]" -api TC_N00_SearchOnInputString "IPSTR[Fake_Test 中文]" "SQ[F,ENonPredictive,EAlphaSort,5]" "RES[1,(-1:F)]" "MATCHLOC[0:1]" -delete api -[Endtest] - -//------------------------------------------------------------------------------ -// GetAllContents ("AC") -//------------------------------------------------------------------------------ - - -//****************************************************************************** -[Test] -title AC: Get All contacts in the phonebook -create PsClientTestSuite api -api WriteTitleToLog -api GetAllContents "URI[cntdb:\/\/c:contacts.cdb]" "RES[16,(FN:伟$,LN:开,CN:Finland)(FN:峰峰,LN:K,CN:Nokia)(FN:共鹏,LN:周,CN:TaiWan)(FN:利 华,LN:联 合,CN:美国)(FN:我 是 谁 娃 炅,LN:新年,CN:Nokia)(FN:Lpcsillet,LN:Lpcsucy,CN:Lpcsush)(FN:男,LN:虎,CN:Nokia)(FN:楚平,LN:人,CN:Nokia)(FN:任,LN:出凭,CN:Nokia)(FN:金,LN:+勇,CN:Nokia)(FN:@博 four,LN:!five)(FN:mahesh,LN:doraiswamy,CN:Nokia)(FN:0抓,LN:0图,CN:0Sam)(FN:什么,LN:打,CN:Nokia)(FN:福气,LN:钱,CN:Nokia)(FN:mno,LN:同学家,CN:Nokia)]" -delete api -[Endtest] - - -//****************************************************************************** -[Test] -title AC: Get All contacts - Wrong URI -> No result -create PsClientTestSuite api -api WriteTitleToLog -api GetAllContents "URI[cntdb:\/\/c:wrongcontacts.cdb]" "RES[0,]" -delete api -[Endtest] - - -//------------------------------------------------------------------------------ -// TestSearchingInCache ("CS") -//------------------------------------------------------------------------------ - - -//****************************************************************************** -[Test] -title CS: Search by FirstName (Predictive Default) -create PsClientTestSuite api -api WriteTitleToLog -// 5.0: 3x11 Qwerty is default keyboard for N97 -// 9.2: ITU-T is default keyboard if physical keyboard is not present -//api TC_N97_TestSearchingInCache "URI[cntdb:\/\/c:contacts.cdb]" "SQ[!@H3/#,EPredictiveDefaultKeyboard,EAlphaSort,5]" "RES[1,(FN:mahesh,LN:doraiswamy,CN:Nokia)]" -//api TC_DEA_TestSearchingInCache "URI[cntdb:\/\/c:contacts.cdb]" "SQ[)aH3s-,EPredictiveDefaultKeyboard,EAlphaSort,5]" "RES[1,(FN:mahesh,LN:doraiswamy,CN:Nokia)]" -api TC_N00_TestSearchingInCache "URI[cntdb:\/\/c:contacts.cdb]" "SQ[934,EPredictiveDefaultKeyboard,EAlphaSort,5]" "RES[1,(FN:伟$,LN:开,CN:Finland)]" -delete api -[Endtest] - - -//****************************************************************************** -[Test] -title CS: Search by FirstName (Predictive ITU-T) -create PsClientTestSuite api -api WriteTitleToLog -api TC_ITU_TestSearchingInCache "URI[cntdb:\/\/c:contacts.cdb]" "SQ[33643364,EPredictiveItuT,EAlphaSort,5]" "RES[1,(FN:峰峰,LN:K,CN:Nokia)]" -delete api -[Endtest] - - -//****************************************************************************** -[Test] -title CS: Search by FirstName (Predictive QWERTY) -create PsClientTestSuite api -api WriteTitleToLog -//api TC_N97_TestSearchingInCache "URI[cntdb:\/\/c:contacts.cdb]" "SQ[!@H3/#,EPredictiveQwerty,EAlphaSort,5]" "RES[1,(FN:mahesh,LN:doraiswamy,CN:Nokia)]" -//api TC_DEA_TestSearchingInCache "URI[cntdb:\/\/c:contacts.cdb]" "SQ[)aH3s-,EPredictiveQwerty,EAlphaSort,5]" "RES[1,(FN:mahesh,LN:doraiswamy,CN:Nokia)]" -api TC_N00_SearchOnInputString "IPSTR[Fake_Test]" "SQ[F,ENonPredictive,EAlphaSort,5]" "RES[1,(-1:F)]" "MATCHLOC[0:1]" -delete api -[Endtest] - - -//****************************************************************************** -[Test] -title CS: Search by FirstName (Non-predictive) -create PsClientTestSuite api -api WriteTitleToLog -api TestSearchingInCache "URI[cntdb:\/\/c:contacts.cdb]" "SQ[fengfeng,ENonPredictive,EPatternSort,5]" "RES[1,(FN:峰峰,LN:K,CN:Nokia)]" -delete api -[Endtest] - - -//****************************************************************************** -[Test] -title CS: Search by FirstName (Mixed Default) -create PsClientTestSuite api -api WriteTitleToLog -// 5.0: 3x11 Qwerty is default keyboard for N97 -// 9.2: ITU-T is default keyboard if physical keyboard is not present -//api TC_N97_TestSearchingInCache "URI[cntdb:\/\/c:contacts.cdb]" "SQ[!@h3,ddnd,EPatternSort,5]" "RES[1,(FN:mahesh,LN:doraiswamy,CN:Nokia)]" -//api TC_DEA_TestSearchingInCache "URI[cntdb:\/\/c:contacts.cdb]" "SQ[)ah3,ddnd,EPatternSort,5]" "RES[1,(FN:mahesh,LN:doraiswamy,CN:Nokia)]" -api TC_N00_TestSearchingInCache "URI[cntdb:\/\/c:contacts.cdb]" "SQ[33ng,ddnn,EPatternSort,5]" "RES[1,(FN:峰峰,LN:K,CN:Nokia)]" -delete api -[Endtest] - - -//****************************************************************************** -[Test] -title CS: Search by FirstName (Mixed ITU-T) -create PsClientTestSuite api -api WriteTitleToLog -api TC_ITU_TestSearchingInCache "URI[cntdb:\/\/c:contacts.cdb]" "SQ[f3n4,nini,EPatternSort,5]" "RES[1,(FN:峰峰,LN:K,CN:Nokia)]" -delete api -[Endtest] - - -//****************************************************************************** -[Test] -title CS: Search by FirstName (Mixed QWERTY) -create PsClientTestSuite api -api WriteTitleToLog -//api TC_N97_TestSearchingInCache "URI[cntdb:\/\/c:contacts.cdb]" "SQ[!@h3,qqnq,EPatternSort,5]" "RES[1,(FN:mahesh,LN:doraiswamy,CN:Nokia)]" -//api TC_DEA_TestSearchingInCache "URI[cntdb:\/\/c:contacts.cdb]" "SQ[)ah3,qqnq,EPatternSort,5]" "RES[1,(FN:mahesh,LN:doraiswamy,CN:Nokia)]" -api TC_N00_SearchOnInputString "IPSTR[Fake_Test]" "SQ[F,ENonPredictive,EAlphaSort,5]" "RES[1,(-1:F)]" "MATCHLOC[0:1]" -delete api -[Endtest] - - -//****************************************************************************** -[Test] -title CS: Search by FirstName (Predictive ITU-T and QWERTY) - Double Keyboard -create PsClientTestSuite api -api WriteTitleToLog -//api TC_N97_TestSearchingInCache "URI[cntdb:\/\/c:contacts.cdb]" "SQ[!2H37#,qiqiiq,EAlphaSort,5]" "RES[1,(FN:mahesh,LN:doraiswamy,CN:Nokia)]" -//api TC_DEA_TestSearchingInCache "URI[cntdb:\/\/c:contacts.cdb]" "SQ[)2H37-,qiqiiq,EAlphaSort,5]" "RES[1,(FN:mahesh,LN:doraiswamy,CN:Nokia)]" -api TC_N00_SearchOnInputString "IPSTR[Fake_Test]" "SQ[F,ENonPredictive,EAlphaSort,5]" "RES[1,(-1:F)]" "MATCHLOC[0:1]" -delete api -[Endtest] - - -//****************************************************************************** -[Test] -title CS: Search by LastName (Predictive ITU-T) -create PsClientTestSuite api -api WriteTitleToLog -api TC_ITU_TestSearchingInCache "URI[cntdb:\/\/c:contacts.cdb]" "SQ[9468,EPredictiveItuT,EAlphaSort,5]" "RES[1,(FN:共鹏,LN:周,CN:TaiWan)]" -delete api -[Endtest] - - -//****************************************************************************** -[Test] -title CS: Search by LastName (Predictive QWERTY) -create PsClientTestSuite api -api WriteTitleToLog -//api TC_N97_TestSearchingInCache "URI[cntdb:\/\/c:contacts.cdb]" "SQ[-94@8/2,EPredictiveQwerty,EAlphaSort,5]" "RES[1,(FN:mahesh,LN:doraiswamy,CN:Nokia)]" -//api TC_DEA_TestSearchingInCache "URI[cntdb:\/\/c:contacts.cdb]" "SQ[d94a8s2,EPredictiveQwerty,EAlphaSort,5]" "RES[1,(FN:mahesh,LN:doraiswamy,CN:Nokia)]" -api TC_N00_SearchOnInputString "IPSTR[Fake_Test]" "SQ[F,ENonPredictive,EAlphaSort,5]" "RES[1,(-1:F)]" "MATCHLOC[0:1]" -delete api -[Endtest] - - -//****************************************************************************** -[Test] -title CS: Search by LastName (Non-predictive) -create PsClientTestSuite api -api WriteTitleToLog -api TestSearchingInCache "URI[cntdb:\/\/c:contacts.cdb]" "SQ[zhou,ENonPredictive,EPatternSort,8]" "RES[1,(FN:共鹏,LN:周,CN:TaiWan)]" -delete api -[Endtest] - - -//**************************************************************************** -[Test] -title CS: Search by LastName (Mixed ITU-T) -create PsClientTestSuite api -api WriteTitleToLog -api TC_ITU_TestSearchingInCache "URI[cntdb:\/\/c:contacts.cdb]" "SQ[z4o8,nini,EAlphaSort,5]" "RES[1,(FN:共鹏,LN:周,CN:TaiWan)]" -delete api -[Endtest] - - -[Test] -title CS: Search by LastName (Mixed QWERTY) -create PsClientTestSuite api -api WriteTitleToLog -//api TC_N97_TestSearchingInCache "URI[cntdb:\/\/c:contacts.cdb]" "SQ[ve:;7,nnqqq,EAlphaSort,5]" "RES[1,(FN:ravi kiran,LN:velkud,CN:Nokia)]" -//api TC_DEA_TestSearchingInCache "URI[cntdb:\/\/c:contacts.cdb]" "SQ[ve*#7,nnqqq,EAlphaSort,5]" "RES[1,(FN:ravi kiran,LN:velkud,CN:Nokia)]" -api TC_N00_SearchOnInputString "IPSTR[Fake_Test]" "SQ[F,ENonPredictive,EAlphaSort,5]" "RES[1,(-1:F)]" "MATCHLOC[0:1]" -delete api -[Endtest] - - -//****************************************************************************** -[Test] -title CS: Search by CompanyName (Predictive ITU-T) -create PsClientTestSuite api -api WriteTitleToLog -api TC_ITU_TestSearchingInCache "URI[cntdb:\/\/c:contacts.cdb]" "SQ[824926,EPredictiveItuT,EAlphaSort,5]" "RES[1,(FN:共鹏,LN:周,CN:TaiWan)]" -delete api -[Endtest] - - -//****************************************************************************** -[Test] -title CS: Search by CompanyName (Predictive QWERTY) -create PsClientTestSuite api -api WriteTitleToLog -//api TC_N97_TestSearchingInCache "URI[cntdb:\/\/c:contacts.cdb]" "SQ[!9594,EPredictiveQwerty,EAlphaSort,5]" "RES[1,(FN:chiru,LN:devi,CN:motorola)]" -//api TC_DEA_TestSearchingInCache "URI[cntdb:\/\/c:contacts.cdb]" "SQ[)9594,EPredictiveQwerty,EAlphaSort,5]" "RES[1,(FN:chiru,LN:devi,CN:motorola)]" -api TC_N00_SearchOnInputString "IPSTR[Fake_Test]" "SQ[F,ENonPredictive,EAlphaSort,5]" "RES[1,(-1:F)]" "MATCHLOC[0:1]" -delete api -[Endtest] - - -//****************************************************************************** -[Test] -title CS: Search by CompanyName (Non-predictive) -create PsClientTestSuite api -api WriteTitleToLog -api TestSearchingInCache "URI[cntdb:\/\/c:contacts.cdb]" "SQ[taiw,ENonPredictive,EPatternSort,8]" "RES[1,(FN:共鹏,LN:周,CN:TaiWan)]" -delete api -[Endtest] - - -//**************************************************************************** -[Test] -title CS: Search by CompanyName (Mixed ITU-T) -create PsClientTestSuite api -api WriteTitleToLog -api TC_ITU_TestSearchingInCache "URI[cntdb:\/\/c:contacts.cdb]" "SQ[82iwa6,iinnni,EAlphaSort,5]" "RES[1,(FN:共鹏,LN:周,CN:TaiWan)]" -delete api -[Endtest] - - -//**************************************************************************** -[Test] -title CS: Search by CompanyName (Mixed QWERTY) -create PsClientTestSuite api -api WriteTitleToLog -//api TC_N97_TestSearchingInCache "URI[cntdb:\/\/c:contacts.cdb]" "SQ[mo594,nnqqq,EAlphaSort,5]" "RES[1,(FN:chiru,LN:devi,CN:motorola)]" -//api TC_DEA_TestSearchingInCache "URI[cntdb:\/\/c:contacts.cdb]" "SQ[mo594,nnqqq,EAlphaSort,5]" "RES[1,(FN:chiru,LN:devi,CN:motorola)]" -api TC_N00_SearchOnInputString "IPSTR[Fake_Test]" "SQ[F,ENonPredictive,EAlphaSort,5]" "RES[1,(-1:F)]" "MATCHLOC[0:1]" -delete api -[Endtest] - - -//****************************************************************************** -[Test] -title CS: Multiple words contact (Predictive ITU-T) -create PsClientTestSuite api -api WriteTitleToLog -api TC_ITU_TestSearchingInCache "URI[cntdb:\/\/c:contacts.cdb]" "SQ[482,EPredictiveItuT,EPatternSort,5]" "RES[1,(FN:利 华,LN:联 合,CN:美国)]" -delete api -[Endtest] - - -//****************************************************************************** -[Test] -title CS: Multiple words contact (Predictive QWERTY) -create PsClientTestSuite api -api WriteTitleToLog -//api TC_N97_TestSearchingInCache "URI[cntdb:\/\/c:contacts.cdb]" "SQ[;84@,EPredictiveQwerty,EPatternSort,5]" "RES[1,(FN:ravi kiran,LN:velkud,CN:Nokia)]" -//api TC_DEA_TestSearchingInCache "URI[cntdb:\/\/c:contacts.cdb]" "SQ[#84a,EPredictiveQwerty,EPatternSort,5]" "RES[1,(FN:ravi kiran,LN:velkud,CN:Nokia)]" -api TC_N00_SearchOnInputString "IPSTR[Fake_Test]" "SQ[F,ENonPredictive,EAlphaSort,5]" "RES[1,(-1:F)]" "MATCHLOC[0:1]" -delete api -[Endtest] - - -//****************************************************************************** -[Test] -title CS: Multiple (very many) words contact (Predictive ITU-T) -create PsClientTestSuite api -api WriteTitleToLog -api TC_ITU_TestSearchingInCache "URI[cntdb:\/\/c:contacts.cdb]" "SQ[54664,EPredictiveItuT,EAlphaSort,5]" "RES[1,(FN:我 是 谁 娃 炅,LN:新年,CN:Nokia)]" -delete api -[Endtest] - - -//****************************************************************************** -[Test] -title CS: Multiple (very many) words contact (Predictive QWERTY) -create PsClientTestSuite api -api WriteTitleToLog -//api TC_N97_TestSearchingInCache "URI[cntdb:\/\/c:contacts.cdb]" "SQ[*@6,EPredictiveQwerty,EAlphaSort,5]" "RES[1,(FN:a b c d e f g Jay,LN:L Gee,CN:Nokia India)]" -//api TC_DEA_TestSearchingInCache "URI[cntdb:\/\/c:contacts.cdb]" "SQ[+a6,EPredictiveQwerty,EAlphaSort,5]" "RES[1,(FN:a b c d e f g Jay,LN:L Gee,CN:Nokia India)]" -api TC_N00_SearchOnInputString "IPSTR[Fake_Test]" "SQ[F,ENonPredictive,EAlphaSort,5]" "RES[1,(-1:F)]" "MATCHLOC[0:1]" -delete api -[Endtest] - - -//****************************************************************************** -[Test] -title CS: Multiple words contact with same initials (Predictive ITU-T) -create PsClientTestSuite api -api WriteTitleToLog -api TC_ITU_TestSearchingInCache "URI[cntdb:\/\/c:contacts.cdb]" "SQ[5727,EPredictiveItuT,EPatternSort,5]" "RES[1,(FN:Lpcsillet,LN:Lpcsucy,CN:Lpcsush)]" -delete api -[Endtest] - - -//****************************************************************************** -[Test] -title CS: Multiple words contact with same initials (Predictive QWERTY) -create PsClientTestSuite api -api WriteTitleToLog -//api TC_N97_TestSearchingInCache "URI[cntdb:\/\/c:contacts.cdb]" "SQ[:0%/,EPredictiveQwerty,EPatternSort,5]" "RES[1,(FN:Lpcsillet,LN:Lpcsucy,CN:Lpcsush)]" -//api TC_DEA_TestSearchingInCache "URI[cntdb:\/\/c:contacts.cdb]" "SQ[*0cs,EPredictiveQwerty,EPatternSort,5]" "RES[1,(FN:Lpcsillet,LN:Lpcsucy,CN:Lpcsush)]" -api TC_N00_SearchOnInputString "IPSTR[Fake_Test]" "SQ[F,ENonPredictive,EAlphaSort,5]" "RES[1,(-1:F)]" "MATCHLOC[0:1]" -delete api -[Endtest] - - -//****************************************************************************** -[Test] -title CS: Multiple words contact with same initials (Non-predictive) -create PsClientTestSuite api -api WriteTitleToLog -api TestSearchingInCache "URI[cntdb:\/\/c:contacts.cdb]" "SQ[lpcs,ENonPredictive,EAlphaSort,5]" "RES[1,(FN:Lpcsillet,LN:Lpcsucy,CN:Lpcsush)]" -delete api -[Endtest] - - -//****************************************************************************** -[Test] -title CS: Multiple words contact with same initials (Mixed ITU-T) -create PsClientTestSuite api -api WriteTitleToLog -api TC_ITU_TestSearchingInCache "URI[cntdb:\/\/c:contacts.cdb]" "SQ[l7c7,nini,EPatternSort,5]" "RES[1,(FN:Lpcsillet,LN:Lpcsucy,CN:Lpcsush)]" -delete api -[Endtest] - - -//****************************************************************************** -[Test] -title CS: Multiple words contact with same initials (Mixed QWERTY) -create PsClientTestSuite api -api WriteTitleToLog -//api TC_N97_TestSearchingInCache "URI[cntdb:\/\/c:contacts.cdb]" "SQ[l0c/,nqnq,EPatternSort,5]" "RES[1,(FN:Lpcsillet,LN:Lpcsucy,CN:Lpcsush)]" -//api TC_DEA_TestSearchingInCache "URI[cntdb:\/\/c:contacts.cdb]" "SQ[l0cs,nqnq,EPatternSort,5]" "RES[1,(FN:Lpcsillet,LN:Lpcsucy,CN:Lpcsush)]" -api TC_N00_SearchOnInputString "IPSTR[Fake_Test]" "SQ[F,ENonPredictive,EAlphaSort,5]" "RES[1,(-1:F)]" "MATCHLOC[0:1]" -delete api -[Endtest] - - -//****************************************************************************** -[Test] -title CS: Multi Search (Predictive ITU-T) -create PsClientTestSuite api -api WriteTitleToLog -api TC_ITU_TestSearchingInCache "URI[cntdb:\/\/c:contacts.cdb]" "SQ[626048,EPredictiveItuT,EAlphaSort,5]" "RES[1,(FN:男,LN:虎,CN:Nokia)]" -delete api -[Endtest] - - -//****************************************************************************** -[Test] -title CS: Multi Search (Predictive QWERTY) -create PsClientTestSuite api -api WriteTitleToLog -//api TC_N97_TestSearchingInCache "URI[cntdb:\/\/c:contacts.cdb]" "SQ[=# *;,EPredictiveQwerty,EAlphaSort,5]" "RES[1,(FN:ghi,LN:jkl,CN:Nokia)]" -//api TC_DEA_TestSearchingInCache "URI[cntdb:\/\/c:contacts.cdb]" "SQ[G- +#,EPredictiveQwerty,EAlphaSort,5]" "RES[1,(FN:ghi,LN:jkl,CN:Nokia)]" -api TC_N00_SearchOnInputString "IPSTR[Fake_Test]" "SQ[F,ENonPredictive,EAlphaSort,5]" "RES[1,(-1:F)]" "MATCHLOC[0:1]" -delete api -[Endtest] - - -//****************************************************************************** -[Test] -title CS: Multi Search (Predictive ITU-T) - Space as sep -create PsClientTestSuite api -api WriteTitleToLog -api TC_ITU_TestSearchingInCache "URI[cntdb:\/\/c:contacts.cdb]" "SQ[736 2487,EPredictiveItuT,EAlphaSort,5]" "RES[2,(FN:楚平,LN:人,CN:Nokia)(FN:任,LN:出凭,CN:Nokia)]" -delete api -[Endtest] - - -//****************************************************************************** -[Test] -title CS: Multi Search (Predictive QWERTY) - Space as sep -create PsClientTestSuite api -api WriteTitleToLog -//api TC_N97_TestSearchingInCache "URI[cntdb:\/\/c:contacts.cdb]" "SQ[5 *9,EPredictiveQwerty,EAlphaSort,5]" "RES[2,(FN:Tim,LN:Jones,CN:Nokia)(FN:John,LN:Tom,CN:Nokia)]" -//api TC_DEA_TestSearchingInCache "URI[cntdb:\/\/c:contacts.cdb]" "SQ[5 +9,EPredictiveQwerty,EAlphaSort,5]" "RES[2,(FN:Tim,LN:Jones,CN:Nokia)(FN:John,LN:Tom,CN:Nokia)]" -api TC_N00_SearchOnInputString "IPSTR[Fake_Test]" "SQ[F,ENonPredictive,EAlphaSort,5]" "RES[1,(-1:F)]" "MATCHLOC[0:1]" -delete api -[Endtest] - - -//****************************************************************************** -[Test] -title CS: Multi Search (Predictive ITU-T) - 0 as sep -create PsClientTestSuite api -api WriteTitleToLog -api TC_ITU_TestSearchingInCache "URI[cntdb:\/\/c:contacts.cdb]" "SQ[73602487,EPredictiveItuT,EAlphaSort,5]" "RES[2,(FN:楚平,LN:人,CN:Nokia)(FN:任,LN:出凭,CN:Nokia)]" -delete api -[Endtest] - - -//****************************************************************************** -[Test] -title CS: Multi Search (Predictive QWERTY) - 0 as sep -create PsClientTestSuite api -api WriteTitleToLog -//api TC_N97_TestSearchingInCache "URI[cntdb:\/\/c:contacts.cdb]" "SQ[50*9,EPredictiveQwerty,EAlphaSort,5]" "RES[0,]" -//api TC_DEA_TestSearchingInCache "URI[cntdb:\/\/c:contacts.cdb]" "SQ[50+9,EPredictiveQwerty,EAlphaSort,5]" "RES[0,]" -api TC_N00_SearchOnInputString "IPSTR[Fake_Test]" "SQ[F,ENonPredictive,EAlphaSort,5]" "RES[1,(-1:F)]" "MATCHLOC[0:1]" -delete api -[Endtest] - - -//****************************************************************************** -[Test] -title CS: Multi Search (Predictive ITU-T) - 0 and space as sep -create PsClientTestSuite api -api WriteTitleToLog -api TC_ITU_TestSearchingInCache "URI[cntdb:\/\/c:contacts.cdb]" "SQ[7360 2487,EPredictiveItuT,EAlphaSort,5]" "RES[2,(FN:楚平,LN:人,CN:Nokia)(FN:任,LN:出凭,CN:Nokia)]" -delete api -[Endtest] - - -//****************************************************************************** -[Test] -title CS: Multi Search (Predictive QWERTY) - 0 and space as sep -create PsClientTestSuite api -api WriteTitleToLog -//api TC_N97_TestSearchingInCache "URI[cntdb:\/\/c:contacts.cdb]" "SQ[50 *9,EPredictiveQwerty,EAlphaSort,5]" "RES[0,]" -//api TC_DEA_TestSearchingInCache "URI[cntdb:\/\/c:contacts.cdb]" "SQ[50 +9,EPredictiveQwerty,EAlphaSort,5]" "RES[0,]" -api TC_N00_SearchOnInputString "IPSTR[Fake_Test]" "SQ[F,ENonPredictive,EAlphaSort,5]" "RES[1,(-1:F)]" "MATCHLOC[0:1]" -delete api -[Endtest] - - -//****************************************************************************** -[Test] -title CS: Multi Search (Non-predictive) - Space as sep -create PsClientTestSuite api -api WriteTitleToLog -api TestSearchingInCache "URI[cntdb:\/\/c:contacts.cdb]" "SQ[ren chup,ENonPredictive,EAlphaSort,5]" "RES[2,(FN:楚平,LN:人,CN:Nokia)(FN:任,LN:出凭,CN:Nokia)]" -delete api -[Endtest] - - -//****************************************************************************** -[Test] -title CS: Multi Search (Non-predictive) - 0 as NON sep (Qwerty 0) -create PsClientTestSuite api -api WriteTitleToLog -api TestSearchingInCache "URI[cntdb:\/\/c:contacts.cdb]" "SQ[j0t,ENonPredictive,EAlphaSort,5]" "RES[0,]" -delete api -[Endtest] - - -//****************************************************************************** -[Test] -title CS: Multi Search (Mixed ITU-T) - Space as sep -create PsClientTestSuite api -api WriteTitleToLog -api TC_ITU_TestSearchingInCache "URI[cntdb:\/\/c:contacts.cdb]" "SQ[n2 4u,ninin,EPatternSort,5]" "RES[1,(FN:男,LN:虎,CN:Nokia)]" -delete api -[Endtest] - - -//****************************************************************************** -[Test] -title CS: Multi Search (Mixed QWERTY) - Space as sep -create PsClientTestSuite api -api WriteTitleToLog -//api TC_N97_TestSearchingInCache "URI[cntdb:\/\/c:contacts.cdb]" "SQ[j9 5i,nqnqn,EPatternSort,5]" "RES[1,(FN:Tim,LN:Jones,CN:Nokia)]" -//api TC_DEA_TestSearchingInCache "URI[cntdb:\/\/c:contacts.cdb]" "SQ[j9 5i,nqnqn,EPatternSort,5]" "RES[1,(FN:Tim,LN:Jones,CN:Nokia)]" -api TC_N00_SearchOnInputString "IPSTR[Fake_Test]" "SQ[F,ENonPredictive,EAlphaSort,5]" "RES[1,(-1:F)]" "MATCHLOC[0:1]" -delete api -[Endtest] - - -//****************************************************************************** -[Test] -title CS: Multi Search (Mixed ITU-T) - 0 as sep -create PsClientTestSuite api -api WriteTitleToLog -api TC_ITU_TestSearchingInCache "URI[cntdb:\/\/c:contacts.cdb]" "SQ[n204u,niiin,EAlphaSort,5]" "RES[1,(FN:男,LN:虎,CN:Nokia)]" -delete api -[Endtest] - - -//****************************************************************************** -[Test] -title CS: Multi Search (Mixed QWERTY) - 0 as sep -create PsClientTestSuite api -api WriteTitleToLog -//api TC_N97_TestSearchingInCache "URI[cntdb:\/\/c:contacts.cdb]" "SQ[j905i,nqqqn,EAlphaSort,5]" "RES[0,]" -//api TC_DEA_TestSearchingInCache "URI[cntdb:\/\/c:contacts.cdb]" "SQ[j905i,nqqqn,EAlphaSort,5]" "RES[0,]" -api TC_N00_SearchOnInputString "IPSTR[Fake_Test]" "SQ[F,ENonPredictive,EAlphaSort,5]" "RES[1,(-1:F)]" "MATCHLOC[0:1]" -delete api -[Endtest] - - -//****************************************************************************** -[Test] -title CS: Multi Search (Mixed ITU-T) - 0 as NON sep (Qwerty 0) -create PsClientTestSuite api -api WriteTitleToLog -api TC_ITU_TestSearchingInCache "URI[cntdb:\/\/c:contacts.cdb]" "SQ[n2049,ninin,EAlphaSort,5]" "RES[0,]" -delete api -[Endtest] - - -//****************************************************************************** -[Test] -title CS: Multi Search (Mixed QWERTY) - 0 as NON sep (Qwerty 0) -create PsClientTestSuite api -api WriteTitleToLog -//api TC_N97_TestSearchingInCache "URI[cntdb:\/\/c:contacts.cdb]" "SQ[j905i,nqnqn,EAlphaSort,5]" "RES[0,]" -//api TC_DEA_TestSearchingInCache "URI[cntdb:\/\/c:contacts.cdb]" "SQ[j905i,nqnqn,EAlphaSort,5]" "RES[0,]" -api TC_N00_SearchOnInputString "IPSTR[Fake_Test]" "SQ[F,ENonPredictive,EAlphaSort,5]" "RES[1,(-1:F)]" "MATCHLOC[0:1]" -delete api -[Endtest] - - -//****************************************************************************** -[Test] -title CS: Multi Search (Mixed ITU-T) - 0 and space as sep -create PsClientTestSuite api -api WriteTitleToLog -api TC_ITU_TestSearchingInCache "URI[cntdb:\/\/c:contacts.cdb]" "SQ[n20 4u,niiiin,EAlphaSort,5]" "RES[1,(FN:男,LN:虎,CN:Nokia)]" -delete api -[Endtest] - - -//****************************************************************************** -[Test] -title CS: Multi Search (Mixed QWERTY) - 0 and space as sep -create PsClientTestSuite api -api WriteTitleToLog -//api TC_N97_TestSearchingInCache "URI[cntdb:\/\/c:contacts.cdb]" "SQ[j90 5i,nqqqqn,EAlphaSort,5]" "RES[0,]" -//api TC_DEA_TestSearchingInCache "URI[cntdb:\/\/c:contacts.cdb]" "SQ[j90 5i,nqqqqn,EAlphaSort,5]" "RES[0,]" -api TC_N00_SearchOnInputString "IPSTR[Fake_Test]" "SQ[F,ENonPredictive,EAlphaSort,5]" "RES[1,(-1:F)]" "MATCHLOC[0:1]" -delete api -[Endtest] - - -//****************************************************************************** -[Test] -title CS: Multi Search (Predictive ITU-T) -> more than one result -create PsClientTestSuite api -api WriteTitleToLog -api TC_ITU_TestSearchingInCache "URI[cntdb:\/\/c:contacts.cdb]" "SQ[73602487,EPredictiveItuT,EPatternSort,5]" "RES[2,(FN:楚平,LN:人,CN:Nokia)(FN:任,LN:出凭,CN:Nokia)]" -delete api -[Endtest] - - -//****************************************************************************** -[Test] -title CS: Multi Search (Predictive QWERTY) -> more than one result -create PsClientTestSuite api -api WriteTitleToLog -//api TC_N97_TestSearchingInCache "URI[cntdb:\/\/c:contacts.cdb]" "SQ[& 4,EPredictiveQwerty,EPatternSort,5]" "RES[2,(FN:ravi kiran,LN:velkud,CN:Nokia)(FN:4four,LN:&li,CN:Nokia)]" -//api TC_DEA_TestSearchingInCache "URI[cntdb:\/\/c:contacts.cdb]" "SQ[( 4,EPredictiveQwerty,EPatternSort,5]" "RES[2,(FN:ravi kiran,LN:velkud,CN:Nokia)(FN:4four,LN:&li,CN:Nokia)]" -api TC_N00_SearchOnInputString "IPSTR[Fake_Test]" "SQ[F,ENonPredictive,EAlphaSort,5]" "RES[1,(-1:F)]" "MATCHLOC[0:1]" -delete api -[Endtest] - - -//****************************************************************************** -[Test] -title CS: Search Contact starting with + (Predictive ITU-T) -create PsClientTestSuite api -api WriteTitleToLog -api TC_ITU_TestSearchingInCache "URI[cntdb:\/\/c:contacts.cdb]" "SQ[+9664,EPredictiveItuT,EAlphaSort,5]" "RES[1,(FN:金,LN:+勇,CN:Nokia)]" -delete api -[Endtest] - - -//****************************************************************************** -[Test] -title CS: Search Contact starting with + (Predictive QWERTY) -create PsClientTestSuite api -api WriteTitleToLog -//api TC_N97_TestSearchingInCache "URI[cntdb:\/\/c:contacts.cdb]" "SQ[+@::3?,EPredictiveQwerty,EAlphaSort,5]" "RES[1,(FN:+allen,LN:good,CN:Nokia)]" -//api TC_DEA_TestSearchingInCache "URI[cntdb:\/\/c:contacts.cdb]" "SQ[+a**3(,EPredictiveQwerty,EAlphaSort,5]" "RES[1,(FN:+allen,LN:good,CN:Nokia)]" -api TC_N00_SearchOnInputString "IPSTR[Fake_Test]" "SQ[F,ENonPredictive,EAlphaSort,5]" "RES[1,(-1:F)]" "MATCHLOC[0:1]" -delete api -[Endtest] - - -//****************************************************************************** -[Test] -title CS: Search contact starting with + (Non-predictive) -create PsClientTestSuite api -api WriteTitleToLog -api TestSearchingInCache "URI[cntdb:\/\/c:contacts.cdb]" "SQ[+yong,ENonPredictive,EPatternSort,5]" "RES[1,(FN:金,LN:+勇,CN:Nokia)]" -delete api -[Endtest] - - -//****************************************************************************** -[Test] -title CS: Multi Search with + (Predictive ITU-T) -create PsClientTestSuite api -api WriteTitleToLog -api TC_ITU_TestSearchingInCache "URI[cntdb:\/\/c:contacts.cdb]" "SQ[+0+,EPredictiveItuT,EAlphaSort,5]" "RES[1,(FN:@博 four,LN:!five)]" -delete api -[Endtest] - - -//****************************************************************************** -[Test] -title CS: Multi Search with + (Predictive QWERTY) -create PsClientTestSuite api -api WriteTitleToLog -//api TC_N97_TestSearchingInCache "URI[cntdb:\/\/c:contacts.cdb]" "SQ[+ +,EPredictiveQwerty,EAlphaSort,5]" "RES[1,(FN:@ravi four,LN:!belkud five)]" -//api TC_DEA_TestSearchingInCache "URI[cntdb:\/\/c:contacts.cdb]" "SQ[+ 5,EPredictiveQwerty,EAlphaSort,5]" "RES[2,(FN:Tim,LN:Jones,CN:Nokia)(FN:John,LN:Tom,CN:Nokia)]" -api TC_N00_SearchOnInputString "IPSTR[Fake_Test]" "SQ[F,ENonPredictive,EAlphaSort,5]" "RES[1,(-1:F)]" "MATCHLOC[0:1]" -delete api -[Endtest] - - -//****************************************************************************** -[Test] -title CS: Multi Search (Predictive ITU-T) -> No result -create PsClientTestSuite api -api WriteTitleToLog -api TestSearchingInCache "URI[cntdb:\/\/c:contacts.cdb]" "SQ[239098,EPredictiveItuT,EAlphaSort,5]" "RES[0,]" -delete api -[Endtest] - - -//****************************************************************************** -[Test] -title CS: Multi Search (Predictive ITU-T) - Query with more than 2 words -create PsClientTestSuite api -api WriteTitleToLog -api TC_ITU_TestSearchingInCache "URI[cntdb:\/\/c:contacts.cdb]" "SQ[73602487066,EPredictiveItuT,EAlphaSort,5]" "RES[2,(FN:楚平,LN:人,CN:Nokia)(FN:任,LN:出凭,CN:Nokia)]" -delete api -[Endtest] - - -//****************************************************************************** -[Test] -title CS: Multi Search (Predictive QWERTY) - Query with more than 2 words -create PsClientTestSuite api -api WriteTitleToLog -//api TC_N97_TestSearchingInCache "URI[cntdb:\/\/c:contacts.cdb]" "SQ[5 *9 ?,EPredictiveQwerty,EAlphaSort,5]" "RES[2,(FN:Tim,LN:Jones,CN:Nokia)(FN:John,LN:Tom,CN:Nokia)]" -//api TC_DEA_TestSearchingInCache "URI[cntdb:\/\/c:contacts.cdb]" "SQ[5 +9 (,EPredictiveQwerty,EAlphaSort,5]" "RES[2,(FN:Tim,LN:Jones,CN:Nokia)(FN:John,LN:Tom,CN:Nokia)]" -api TC_N00_SearchOnInputString "IPSTR[Fake_Test]" "SQ[F,ENonPredictive,EAlphaSort,5]" "RES[1,(-1:F)]" "MATCHLOC[0:1]" -delete api -[Endtest] - - -//****************************************************************************** -[Test] -title CS: Search (Predictive ITU-T) -> No result -create PsClientTestSuite api -api WriteTitleToLog -api TestSearchingInCache "URI[cntdb:\/\/c:contacts.cdb]" "SQ[736024870699,EPredictiveItuT,EAlphaSort,5]" "RES[0,]" -delete api -[Endtest] - - -//****************************************************************************** -[Test] -title CS: Search (Non-predictive) -> No result -create PsClientTestSuite api -api WriteTitleToLog -api TestSearchingInCache "URI[cntdb:\/\/c:contacts.cdb]" "SQ[deepakrsrs,ENonPredictive,EPatternSort,5]" "RES[0,]" -delete api -[Endtest] - - -//****************************************************************************** -[Test] -title CS: Search (Mixed ITU-T) -> No result -create PsClientTestSuite api -api WriteTitleToLog -api TestSearchingInCache "URI[cntdb:\/\/c:contacts.cdb]" "SQ[dee789srs,nnniiinnn,EAlphaSort,5]" "RES[0,]" -delete api -[Endtest] - - -//****************************************************************************** -[Test] -title CS: Multi Search (Predictive ITU-T) -> No result -create PsClientTestSuite api -api WriteTitleToLog -api TestSearchingInCache "URI[cntdb:\/\/c:contacts.cdb]" "SQ[4242 3262374,EPredictiveItuT,EPatternSort,5]" "RES[0,]" -delete api -[Endtest] - - -//****************************************************************************** -[Test] -title CS: Multi Search (Non-predictive) -> No result -create PsClientTestSuite api -api WriteTitleToLog -api TestSearchingInCache "URI[cntdb:\/\/c:contacts.cdb]" "SQ[deepa krsrs,ENonPredictive,EAlphaSort,5]" "RES[0,]" -delete api -[Endtest] - - -//****************************************************************************** -[Test] -title CS: Multi Search (Mixed ITU-T) -> No result -create PsClientTestSuite api -api WriteTitleToLog -api TestSearchingInCache "URI[cntdb:\/\/c:contacts.cdb]" "SQ[dee78 9srs,nnniiiinnn,EPatternSort,5]" "RES[0,]" -delete api -[Endtest] - - -//****************************************************************************** -[Test] -title CS: Wrong URI (Predictive ITU-T) -> No result -create PsClientTestSuite api -api WriteTitleToLog -api TestSearchingInCache "URI[cntdb:\/\/c:Wronguricontacts.cdb]" "SQ[2,EPredictiveItuT,EAlphaSort,5]" "RES[0,]" -delete api -[Endtest] - - -//****************************************************************************** -[Test] -title CS: Wrong URI (Non-predictive) -> No result -create PsClientTestSuite api -api WriteTitleToLog -api TestSearchingInCache "URI[cntdb:\/\/c:Wronguricontacts.cdb]" "SQ[z,ENonPredictive,EAlphaSort,5]" "RES[0,]" -delete api -[Endtest] - - -//****************************************************************************** -[Test] -title CS: Wrong URI (Mixed ITU-T) -> No result -create PsClientTestSuite api -api WriteTitleToLog -api TestSearchingInCache "URI[cntdb:\/\/c:Wronguricontacts.cdb]" "SQ[dee7809srs,nnniiiinnn,EPatternSort,5]" "RES[0,]" -delete api -[Endtest] - - -//****************************************************************************** -[Test] -title CS: Filter Display Fields (Predictive ITU-T) -create PsClientTestSuite api -api WriteTitleToLog -api TestSearchingInCache "URI[cntdb:\/\/c:contacts.cdb]" "DISP[28]" "SQ[624374,EPredictiveItuT,EPatternSort,5]" "RES[0,]" -delete api -[Endtest] - - -//****************************************************************************** -[Test] -title CS: Filter Display Fields (Non-predictive) -create PsClientTestSuite api -api WriteTitleToLog -api TestSearchingInCache "URI[cntdb:\/\/c:contacts.cdb]" "DISP[28]" "SQ[mahesh,ENonPredictive,EPatternSort,5]" "RES[0,]" -delete api -[Endtest] - - -//****************************************************************************** -[Test] -title CS: Filter Display Fields (Mixed ITU-T) -create PsClientTestSuite api -api WriteTitleToLog -api TestSearchingInCache "URI[cntdb:\/\/c:contacts.cdb]" "DISP[28]" "SQ[ma43sh,nniinn,EPatternSort,5]" "RES[0,]" -delete api -[Endtest] - - -//****************************************************************************** -[Test] -title CS: Multi Search (Non-predictive) - Filter Display Fields -create PsClientTestSuite api -api WriteTitleToLog -api TestSearchingInCache "URI[cntdb:\/\/c:contacts.cdb]" "DISP[28]" "SQ[ravi velkud,ENonPredictive,EAlphaSort,5]" "RES[0,]" -delete api -[Endtest] - - -//****************************************************************************** -[Test] -title CS: Groups Search (Predictive ITU-T) -create PsClientTestSuite api -api WriteTitleToLog -api TC_ITU_TestSearchingInCache "URI[cntdb:\/\/c:contacts.gdb]" "SQ[8664983,EPredictiveItuT,EPatternSort,5]" "RES[1,(FN:同学)]" -delete api -[Endtest] - - -//****************************************************************************** -[Test] -title CS: Groups Search (Predictive QWERTY) -create PsClientTestSuite api -api WriteTitleToLog -//api TC_N97_TestSearchingInCache "URI[cntdb:\/\/c:contacts.gdb]" "SQ[5#3=497,EPredictiveQwerty,EPatternSort,5]" "RES[1,(FN:TheGroup)]" -//api TC_DEA_TestSearchingInCache "URI[cntdb:\/\/c:contacts.gdb]" "SQ[5-3G497,EPredictiveQwerty,EPatternSort,5]" "RES[1,(FN:TheGroup)]" -api TC_N00_SearchOnInputString "IPSTR[Fake_Test]" "SQ[F,ENonPredictive,EAlphaSort,5]" "RES[1,(-1:F)]" "MATCHLOC[0:1]" -delete api -[Endtest] - - -//****************************************************************************** -[Test] -title CS: Groups Search (Non-predictive) -create PsClientTestSuite api -api WriteTitleToLog -api TestSearchingInCache "URI[cntdb:\/\/c:contacts.gdb]" "SQ[Tongx,ENonPredictive,EPatternSort,5]" "RES[1,(FN:同学)]" -delete api -[Endtest] - - -//****************************************************************************** -[Test] -title CS: Groups Search (Mixed ITU-T) -create PsClientTestSuite api -api WriteTitleToLog -api TC_ITU_TestSearchingInCache "URI[cntdb:\/\/c:contacts.gdb]" "SQ[866g9u3,iiinini,EAlphaSort,5]" "RES[1,(FN:同学)]" -delete api -[Endtest] - - -//****************************************************************************** -[Test] -title CS: Groups Search (Mixed QWERTY) -create PsClientTestSuite api -api WriteTitleToLog -//api TC_N97_TestSearchingInCache "URI[cntdb:\/\/c:contacts.gdb]" "SQ[5#3g4o7,qqqnqnq,EAlphaSort,5]" "RES[1,(FN:TheGroup)]" -//api TC_DEA_TestSearchingInCache "URI[cntdb:\/\/c:contacts.gdb]" "SQ[5-3g4o7,qqqnqnq,EAlphaSort,5]" "RES[1,(FN:TheGroup)]" -api TC_N00_SearchOnInputString "IPSTR[Fake_Test]" "SQ[F,ENonPredictive,EAlphaSort,5]" "RES[1,(-1:F)]" "MATCHLOC[0:1]" -delete api -[Endtest] - - -//****************************************************************************** -[Test] -title CS: Search in more than one group -> No result -create PsClientTestSuite api -api WriteTitleToLog -api TestSearchingInCache "URI[cntdb:\/\/c:contacts.gdb?id=3221,cntdb:\/\/c:contacts.gdb?id=1132]" "SQ[624374,EPredictiveItuT,EPatternSort,5]" "RES[0,]" -delete api -[Endtest] - - -//****************************************************************************** -[Test] -title CS: Search in non-existing group ID -> No result -create PsClientTestSuite api -api WriteTitleToLog -api TestSearchingInCache "URI[cntdb:\/\/c:contacts.gdb?id=3221]" "SQ[624374,EPredictiveItuT,EPatternSort,5]" "RES[0,]" -delete api -[Endtest] - - -//****************************************************************************** -[Test] -title CS: Search special chars - Pattern Sort -create PsClientTestSuite api -api WriteTitleToLog -api TC_ITU_TestSearchingInCache "URI[cntdb:\/\/c:contacts.cdb]" "SQ[1,EPredictiveItuT,EPatternSort,5]" "RES[3,(FN:@博 four,LN:!five)(FN:伟$,LN:开,CN:Finland)(FN:金,LN:+勇,CN:Nokia)]" -delete api -[Endtest] - - -//****************************************************************************** -[Test] -title CS: Search special chars - Pattern Sort -create PsClientTestSuite api -api WriteTitleToLog -// The following test is not really applicable test for non-ITUT keyboard -//api TC_N97_TestSearchingInCache "URI[cntdb:\/\/c:contacts.cdb]" "SQ[! @,EPredictiveQwerty,EPatternSort,5]" "RES[1,(FN:@ravi four,LN:!belkud five)]" -//api TC_DEA_TestSearchingInCache "URI[cntdb:\/\/c:contacts.cdb]" "SQ[! @,EPredictiveQwerty,EPatternSort,5]" "RES[1,(FN:@ravi four,LN:!belkud five)]" -api TC_N00_SearchOnInputString "IPSTR[Fake_Test]" "SQ[F,ENonPredictive,EAlphaSort,5]" "RES[1,(-1:F)]" "MATCHLOC[0:1]" -delete api -[Endtest] - - -//****************************************************************************** -[Test] -title CS: Search special chars (Predictive ITU-T) - Alpha Sort -create PsClientTestSuite api -api WriteTitleToLog -api TC_ITU_TestSearchingInCache "URI[cntdb:\/\/c:contacts.cdb]" "SQ[1,EPredictiveItuT,EAlphaSort,5]" "RES[3,(FN:@博 four,LN:!five)(FN:伟$,LN:开,CN:Finland)(FN:金,LN:+勇,CN:Nokia)]" -delete api -[Endtest] - - -//****************************************************************************** -[Test] -title CS: Search special chars (Predictive QWERTY) - Alpha Sort -create PsClientTestSuite api -api WriteTitleToLog -// The following test is not really applicable test for non-ITUT keyboard -//api TC_N97_TestSearchingInCache "URI[cntdb:\/\/c:contacts.cdb]" "SQ[! @,EPredictiveQwerty,EAlphaSort,5]" "RES[1,(FN:@ravi four,LN:!belkud five)]" -//api TC_DEA_TestSearchingInCache "URI[cntdb:\/\/c:contacts.cdb]" "SQ[! @,EPredictiveQwerty,EAlphaSort,5]" "RES[1,(FN:@ravi four,LN:!belkud five)]" -api TC_N00_SearchOnInputString "IPSTR[Fake_Test]" "SQ[F,ENonPredictive,EAlphaSort,5]" "RES[1,(-1:F)]" "MATCHLOC[0:1]" -delete api -[Endtest] - - -//****************************************************************************** -[Test] -title CS: Search contact starting with 0 (Predictive ITU-T) -create PsClientTestSuite api -api WriteTitleToLog -api TC_ITU_TestSearchingInCache "URI[cntdb:\/\/c:contacts.cdb]" "SQ[09482,EPredictiveItuT,EAlphaSort,5]" "RES[1,(FN:0抓,LN:0图,CN:0Sam)]" -delete api -[Endtest] - - -//****************************************************************************** -[Test] -title CS: Search contact starting with 0 (Predictive QWERTY) -create PsClientTestSuite api -api WriteTitleToLog -//api TC_N97_TestSearchingInCache "URI[cntdb:\/\/c:contacts.cdb]" "SQ[0?8%,EPredictiveQwerty,EAlphaSort,5]" "RES[1,(FN:0Nick,LN:0Jack,CN:0Sam)]" -//api TC_DEA_TestSearchingInCache "URI[cntdb:\/\/c:contacts.cdb]" "SQ[0(8c,EPredictiveQwerty,EAlphaSort,5]" "RES[1,(FN:0Nick,LN:0Jack,CN:0Sam)]" -api TC_N00_SearchOnInputString "IPSTR[Fake_Test]" "SQ[F,ENonPredictive,EAlphaSort,5]" "RES[1,(-1:F)]" "MATCHLOC[0:1]" -delete api -[Endtest] - - -//****************************************************************************** -[Test] -title CS: Search in multiple data stores (Predictive ITU-T) -create PsClientTestSuite api -api WriteTitleToLog -api TC_ITU_TestSearchingInCache "URI[cntdb:\/\/c:contacts.cdb,cntdb:\/\/c:contacts.gdb]" "SQ[8664983,EPredictiveItuT,EAlphaSort,5]" "RES[2,(FN:同学)(FN:mno,LN:同学家,CN:Nokia)]" -delete api -[Endtest] - - -//****************************************************************************** -[Test] -title CS: Search in multiple data stores (Predictive QWERTY) -create PsClientTestSuite api -api WriteTitleToLog -//api TC_N97_TestSearchingInCache "URI[cntdb:\/\/c:contacts.cdb,cntdb:\/\/c:contacts.gdb]" "SQ[5#3=,EPredictiveQwerty,EAlphaSort,5]" "RES[2,(FN:TheGroup)(FN:mno,LN:pqr TheGr,CN:Nokia)]" -//api TC_DEA_TestSearchingInCache "URI[cntdb:\/\/c:contacts.cdb,cntdb:\/\/c:contacts.gdb]" "SQ[5-3G,EPredictiveQwerty,EAlphaSort,5]" "RES[2,(FN:TheGroup)(FN:mno,LN:pqr TheGr,CN:Nokia)]" -api TC_N00_SearchOnInputString "IPSTR[Fake_Test]" "SQ[F,ENonPredictive,EAlphaSort,5]" "RES[1,(-1:F)]" "MATCHLOC[0:1]" -delete api -[Endtest] - - -//****************************************************************************** -[Test] -title CS: Search (Predictive ITU-T) - Alpha Sort -> Truncate result -create PsClientTestSuite api -api WriteTitleToLog -api TC_ITU_TestSearchingInCache "URI[cntdb:\/\/c:contacts.cdb]" "SQ[5,EPredictiveItuT,EAlphaSort,3]" "RES[3,(FN:伟$,LN:开,CN:Finland)(FN:利 华,LN:联 合,CN:美国)(FN:mno,LN:同学家,CN:Nokia)]" -delete api -[Endtest] - - -//****************************************************************************** -[Test] -title CS: Search (Predictive QWERTY) - Alpha Sort -> Truncate result -create PsClientTestSuite api -api WriteTitleToLog -//api TC_N97_TestSearchingInCache "URI[cntdb:\/\/c:contacts.cdb]" "SQ[*,EPredictiveQwerty,EAlphaSort,3]" "RES[3,(FN:a b c d e f g Jay,LN:L Gee,CN:Nokia India)(FN:ghi,LN:jkl,CN:Nokia)(FN:John,LN:Tom,CN:Nokia)]" -//api TC_DEA_TestSearchingInCache "URI[cntdb:\/\/c:contacts.cdb]" "SQ[+,EPredictiveQwerty,EAlphaSort,3]" "RES[3,(FN:+allen,LN:good,CN:Nokia)(FN:a b c d e f g Jay,LN:L Gee,CN:Nokia India)(FN:ghi,LN:jkl,CN:Nokia)]" -api TC_N00_SearchOnInputString "IPSTR[Fake_Test]" "SQ[F,ENonPredictive,EAlphaSort,5]" "RES[1,(-1:F)]" "MATCHLOC[0:1]" -delete api -[Endtest] - - -//****************************************************************************** -[Test] -title CS: Search (Predictive ITU-T) - Pattern Sort -> Truncate result -create PsClientTestSuite api -api WriteTitleToLog -api TC_ITU_TestSearchingInCache "URI[cntdb:\/\/c:contacts.cdb]" "SQ[5,EPredictiveItuT,EPatternSort,3]" "RES[3,(FN:伟$,LN:开,CN:Finland)(FN:利 华,LN:联 合,CN:美国)(FN:mno,LN:同学家,CN:Nokia)]" -delete api -[Endtest] - - -//****************************************************************************** -[Test] -title CS: Search (Predictive QWERTY) - Pattern Sort -> Truncate result -create PsClientTestSuite api -api WriteTitleToLog -//api TC_N97_TestSearchingInCache "URI[cntdb:\/\/c:contacts.cdb]" "SQ[*,EPredictiveQwerty,EPatternSort,3]" "RES[3,(FN:a b c d e f g Jay,LN:L Gee,CN:Nokia India)(FN:ghi,LN:jkl,CN:Nokia)(FN:John,LN:Tom,CN:Nokia)]" -//api TC_DEA_TestSearchingInCache "URI[cntdb:\/\/c:contacts.cdb]" "SQ[+,EPredictiveQwerty,EPatternSort,3]" "RES[3,(FN:+allen,LN:good,CN:Nokia)(FN:a b c d e f g Jay,LN:L Gee,CN:Nokia India)(FN:ghi,LN:jkl,CN:Nokia)]" -api TC_N00_SearchOnInputString "IPSTR[Fake_Test]" "SQ[F,ENonPredictive,EAlphaSort,5]" "RES[1,(-1:F)]" "MATCHLOC[0:1]" -delete api -[Endtest] - - -//****************************************************************************** -[Test] -title CS: Cancel search -create PsClientTestSuite api -api WriteTitleToLog -api CancelSearch "URI[cntdb:\/\/c:contacts.cdb]" "SQ[624374,EPredictiveItuT,EAlphaSort,5]" "RES[1,(FN:mahesh,LN:doraiswamy,CN:Nokia)]" -delete api -[Endtest] - - -//------------------------------------------------------------------------------ -// TestSearchingWithInGroup ("GS") -//------------------------------------------------------------------------------ - - -//****************************************************************************** -[Test] -title GS: Search FirstName in group (Non-predictive) -create PsClientTestSuite api -api WriteTitleToLog -api TestSearchingWithInGroup "SrchInGroup[同学]" "SQ[dashenme,ENonPredictive,EAlphaSort,5]" "RES[1,(FN:什么,LN:打,CN:Nokia)]" -delete api -[Endtest] - - -//****************************************************************************** -[Test] -title GS: Search in group - Empty Query -create PsClientTestSuite api -api WriteTitleToLog -api TestSearchingWithInGroup "SrchInGroup[同学]" "SQ[,ENonPredictive,EAlphaSort,5]" "RES[3,(FN:什么,LN:打,CN:Nokia)(FN:福气,LN:钱,CN:Nokia)(FN:mno,LN:同学家,CN:Nokia)]" -delete api -[Endtest] - - -//****************************************************************************** -[Test] -title GS: Search in group (Non-predictive) - Empty Query -> No result -create PsClientTestSuite api -api WriteTitleToLog -api TestSearchingWithInGroup "SrchInGroup[同学]" "SQ[afdsbc,ENonPredictive,EPatternSort,5]" "RES[0,]" -delete api -[Endtest] - - -//****************************************************************************** -[Test] -title GS: Search in non-existing group -create PsClientTestSuite api -api WriteTitleToLog -api TestSearchingWithInGroup "SrchInGroup[TheNonExistantGroup]" "SQ[abc,ENonPredictive,EAlphaSort,5]" "RES[0,]" -delete api -[Endtest] - - -//------------------------------------------------------------------------------ -// Adaptive Grid ("AG") -//------------------------------------------------------------------------------ - - -//****************************************************************************** -//[Test] -//title AG: Get Adaptive Grid - With Company Name -//create PsClientTestSuite api -//api WriteTitleToLog -//api CheckAdaptiveString "URI[cntdb:\/\/c:contacts.cdb]" "IPSTR[]" "BOOL[ETrue]" "RESSTR[!&+014@ABCDEFGIJKLMNPRTVY���]" -//delete api -//[Endtest] - - -//****************************************************************************** -//[Test] -//title AG: Get Adaptive Grid - Without Company Name -//create PsClientTestSuite api -//api WriteTitleToLog -//api CheckAdaptiveString "URI[cntdb:\/\/c:contacts.cdb]" "IPSTR[]" "BOOL[EFalse]" "RESSTR[!&+014@ABCDEFGJKLMPRTVY��]" -//delete api -//[Endtest] - - -//------------------------------------------------------------------------------ -// Miscellaneous ("Mi") -//------------------------------------------------------------------------------ - - -//****************************************************************************** -[Test] -title Mi: Check Caching status -create PsClientTestSuite api -api WriteTitleToLog -api CheckCachingStatus -delete api -[Endtest] - - -//****************************************************************************** -[Test] -title Mi: Check Version -create PsClientTestSuite api -api WriteTitleToLog -api CheckVersion -delete api -[Endtest] - - -//****************************************************************************** -[Test] -title Mi: Remove Observer -create PsClientTestSuite api -api WriteTitleToLog -api RemoveObserver "URI[cntdb:\/\/c:contacts.cdb]" -delete api -[Endtest] - - -//****************************************************************************** -[Test] -title Mi: Marked contacts -create PsClientTestSuite api -api WriteTitleToLog -api AddMarkedContactsTest "URI[cntdb:\/\/c:contacts.cdb]" "SQ[624374,EPredictiveItuT,EAlphaSort,25]" "RES[16,(FN:伟$,LN:开,CN:Finland)(FN:峰峰,LN:K,CN:Nokia)(FN:共鹏,LN:周,CN:TaiWan)(FN:利 华,LN:联 合,CN:美国)(FN:我 是 谁 娃 炅,LN:新年,CN:Nokia)(FN:Lpcsillet,LN:Lpcsucy,CN:Lpcsush)(FN:男,LN:虎,CN:Nokia)(FN:楚平,LN:人,CN:Nokia)(FN:任,LN:出凭,CN:Nokia)(FN:金,LN:+勇,CN:Nokia)(FN:@博 four,LN:!five)(FN:mahesh,LN:doraiswamy,CN:Nokia)(FN:0抓,LN:0图,CN:0Sam)(FN:什么,LN:打,CN:Nokia)(FN:福气,LN:钱,CN:Nokia)(FN:mno,LN:同学家,CN:Nokia)]" -delete api -[Endtest] - - -//------------------------------------------------------------------------------ -// TestSortOrder ("SO") -//------------------------------------------------------------------------------ - - -//****************************************************************************** -[Test] -title SO: Change Sort Order test 1 -create PsClientTestSuite api -api WriteTitleToLog -api TestSortOrder "URI[cntdb:\/\/c:contacts.cdb]" "SORTORDER[6,2,37]" -delete api -[Endtest] - - -//****************************************************************************** -[Test] -title SO: Change Sort Order test 2 -create PsClientTestSuite api -api WriteTitleToLog -api TestSortOrder "URI[cntdb:\/\/c:contacts.cdb]" "SORTORDER[6,2,37,22]" -delete api -[Endtest] - - -//****************************************************************************** -[Test] -title SO: Change Sort Order - More than 10 keys -create PsClientTestSuite api -api WriteTitleToLog -api TestSortOrder "URI[cntdb:\/\/c:contacts.cdb]" "SORTORDER[1,2,3,4,5,6,7,8,9,10,11]" -delete api -[Endtest] - - -//****************************************************************************** -[Test] -title SO: Change Sort Order - Same sort order -create PsClientTestSuite api -api WriteTitleToLog -api TestSortOrder "URI[cntdb:\/\/c:contacts.cdb]" "SORTORDER[]" -delete api -[Endtest] - - -//****************************************************************************** -[Test] -title SO: Change Sort Order on a group URI -create PsClientTestSuite api -api WriteTitleToLog -api TestSortOrderErrCaseL "URI[cntdb:\/\/c:contacts.gdb?id=3221]" "SORTORDER[6,2,37]" -delete api -[Endtest] - - -//****************************************************************************** -[Test] -title SO: Change Sort Order on a wrong group URI -create PsClientTestSuite api -api WriteTitleToLog -api TestSortOrderErrCaseL "URI[cntdb:\/\/c:wrongcontactsuri.cdb]" "SORTORDER[6,2,37]" -delete api -[Endtest] - - -//------------------------------------------------------------------------------ -// ShutDown Server ("SD") -//------------------------------------------------------------------------------ - - -//****************************************************************************** -[Test] -title SD: Shut Down the Server -create PsClientTestSuite api -api WriteTitleToLog -api ShutDown -delete api -[Endtest] - - -//------------------------------------------------------------------------------ -// END OF FILE -//------------------------------------------------------------------------------ diff -r 6b5524b4f673 -r 38bb213f60ba contacts_plat/predictivesearch_client_api/tsrc/PsClientTestSuite/group/PsClientTestSuite.mmp --- a/contacts_plat/predictivesearch_client_api/tsrc/PsClientTestSuite/group/PsClientTestSuite.mmp Wed Sep 15 11:56:55 2010 +0300 +++ b/contacts_plat/predictivesearch_client_api/tsrc/PsClientTestSuite/group/PsClientTestSuite.mmp Wed Oct 13 14:15:33 2010 +0300 @@ -42,15 +42,14 @@ APP_LAYER_SYSTEMINCLUDE LIBRARY euser.lib -LIBRARY StifTestInterface.lib +LIBRARY stiftestinterface.lib LIBRARY stiftestengine.lib LIBRARY PsServerClientAPI.lib LIBRARY PcsUtils.lib LIBRARY VPbkEng.lib -LIBRARY ecom.lib +LIBRARY eCom.lib LIBRARY flogger.lib -LIBRARY bafl.lib -LIBRARY charconv.lib +LIBRARY bafl.lib diff -r 6b5524b4f673 -r 38bb213f60ba contacts_plat/predictivesearch_client_api/tsrc/PsClientTestSuite/group/PsClientTestSuitePRC.pkg --- a/contacts_plat/predictivesearch_client_api/tsrc/PsClientTestSuite/group/PsClientTestSuitePRC.pkg Wed Sep 15 11:56:55 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,38 +0,0 @@ -; -; Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). -; All rights reserved. -; This component and the accompanying materials are made available -; under the terms of "Eclipse Public License v1.0" -; which accompanies this distribution, and is available -; at the URL "http://www.eclipse.org/legal/epl-v10.html". -; -; Initial Contributors: -; Nokia Corporation - initial contribution. -; -; Contributors: -; -; Description: -; -;Language - standard language definitions -&EN - -; standard SIS file header -#{"Ps Client API TestSuite"},(0x2000B5BB),1,0,0 - -;Supports Series 60 v 3.0 -[0x101F7961], 0, 0, 0, {"Series60ProductID"} - -;Localised Vendor name -%{"Nokia"} - -;Unique Vendor name -:"Nokia" - -; PS Client API Test Suite files to be installed -"\epoc32\release\armv5\urel\PsClientTestSuite.dll"-"!:\sys\bin\PsClientTestSuite.dll" - -; The configuration file for the test cases -"..\conf\PsClientTestSuitePRC.cfg"-"!:\testframework\PsClientTestSuite.cfg" - -; The test framework initilization file -"..\init\PsClientTestSuite.ini"-"!:\testframework\PsClientTestSuite.ini" \ No newline at end of file diff -r 6b5524b4f673 -r 38bb213f60ba contacts_plat/predictivesearch_client_api/tsrc/PsClientTestSuite/inc/TestSuiteInputData.h --- a/contacts_plat/predictivesearch_client_api/tsrc/PsClientTestSuite/inc/TestSuiteInputData.h Wed Sep 15 11:56:55 2010 +0300 +++ b/contacts_plat/predictivesearch_client_api/tsrc/PsClientTestSuite/inc/TestSuiteInputData.h Wed Oct 13 14:15:33 2010 +0300 @@ -279,7 +279,6 @@ void ParseInputForSearchWithinGroupL(TDesC& aInput); void ParseInputForSortOrderL(TDesC& aInput); TInt GetFieldIdFromVpbkIdentifierL(TDesC& aIdentifierAsString); - void ConvUtf2UniL( const TDesC& aOriginal, TDes& aRes ); private: // data diff -r 6b5524b4f673 -r 38bb213f60ba contacts_plat/predictivesearch_client_api/tsrc/PsClientTestSuite/src/TestSuiteInputData.cpp --- a/contacts_plat/predictivesearch_client_api/tsrc/PsClientTestSuite/src/TestSuiteInputData.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/contacts_plat/predictivesearch_client_api/tsrc/PsClientTestSuite/src/TestSuiteInputData.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -22,24 +22,6 @@ #include "pstestcontactshandler.h" #include "psclienttestsuitedefs.h" #include -#include -#include - -void CTestSuiteInputData::ConvUtf2UniL( const TDesC& aOriginal, TDes& aRes ) - { - HBufC8* buf8 = HBufC8::NewLC( aOriginal.Length() * 2 ); - buf8->Des().Copy( aOriginal ); - TPtrC8 str = buf8->Des(); - - HBufC* InfoText = CnvUtfConverter::ConvertToUnicodeFromUtf8L( str ); - CleanupStack::PushL( InfoText ); - TPtr16 ptr = InfoText->Des(); - - aRes.Zero(); - aRes.Copy( ptr ); - - CleanupStack::PopAndDestroy( 2 ); - } // ============================== MEMBER FUNCTIONS ============================ @@ -440,14 +422,9 @@ j++; TPtrC16 dataPtr = aInput.Mid(Startpos ,j - Startpos); - - HBufC* buf = dataPtr.AllocLC(); - TPtr uniPtr = buf->Des(); - ConvUtf2UniL( dataPtr, uniPtr); - + // Add data to the class - tempcacheData->data.Append(uniPtr.AllocL()); - CleanupStack::PopAndDestroy(); + tempcacheData->data.Append(dataPtr.AllocL()); commaPos = j ; j++; @@ -571,16 +548,12 @@ j++; TPtrC16 dataPtr = aInput.Mid(Startpos ,j - Startpos); - HBufC* buf = dataPtr.AllocLC(); - TPtr uniPtr = buf->Des(); - ConvUtf2UniL( dataPtr, uniPtr); // Add data to the output - HBufC* tempData = uniPtr.AllocL(); + HBufC* tempData = dataPtr.AllocL(); aSeparatedData.Append(tempData); SeparatorPos = j; j++; - CleanupStack::PopAndDestroy(); } } @@ -873,11 +846,7 @@ // ----------------------------------------------------------------------------- void CTestSuiteInputData::ParseInputInputSearchStringL(TDesC& aInput) { - HBufC* buf = aInput.AllocLC(); - TPtr uniPtr = buf->Des(); - ConvUtf2UniL( aInput, uniPtr); - iInputSearchString = uniPtr.AllocL(); - CleanupStack::PopAndDestroy(); + iInputSearchString = aInput.AllocL(); } // ----------------------------------------------------------------------------- @@ -981,13 +950,8 @@ HBufC* temp2 = aInput.Right(len - 1).AllocL(); ParseInputForContactsDataL(*temp2,0); - HBufC* buf = gropName->AllocLC(); - TPtr uniPtr = buf->Des(); - ConvUtf2UniL( gropName->Des(), uniPtr); - //Add the group - iContactHandler->AddGroupL(*buf); - CleanupStack::PopAndDestroy(); + iContactHandler->AddGroupL(*gropName); CActiveScheduler :: Start(); //Create Contacts @@ -1000,11 +964,7 @@ // ----------------------------------------------------------------------------- void CTestSuiteInputData::ParseInputForSearchWithinGroupL(TDesC& aInput) { - HBufC* buf = aInput.AllocLC(); - TPtr uniPtr = buf->Des(); - ConvUtf2UniL( aInput, uniPtr); - iGroupToBeSearched = uniPtr.AllocL(); - CleanupStack::PopAndDestroy(); + iGroupToBeSearched = aInput.AllocL(); } // ----------------------------------------------------------------------------- diff -r 6b5524b4f673 -r 38bb213f60ba contacts_plat/predictivesearch_utils_api/tsrc/PsUtilsTestSuite/group/PsUtilsTestSuite.mmp --- a/contacts_plat/predictivesearch_utils_api/tsrc/PsUtilsTestSuite/group/PsUtilsTestSuite.mmp Wed Sep 15 11:56:55 2010 +0300 +++ b/contacts_plat/predictivesearch_utils_api/tsrc/PsUtilsTestSuite/group/PsUtilsTestSuite.mmp Wed Oct 13 14:15:33 2010 +0300 @@ -39,12 +39,12 @@ APP_LAYER_SYSTEMINCLUDE LIBRARY euser.lib -LIBRARY StifTestInterface.lib +LIBRARY stiftestinterface.lib LIBRARY stiftestengine.lib //LIBRARY PsServerClientAPI.lib LIBRARY PcsUtils.lib LIBRARY VPbkEng.lib -LIBRARY ecom.lib +LIBRARY eCom.lib LIBRARY flogger.lib LIBRARY estor.lib diff -r 6b5524b4f673 -r 38bb213f60ba contacts_plat/presence_cache_api/tsrc/clientsrvtester/group/clientsrvtester.mmp --- a/contacts_plat/presence_cache_api/tsrc/clientsrvtester/group/clientsrvtester.mmp Wed Sep 15 11:56:55 2010 +0300 +++ b/contacts_plat/presence_cache_api/tsrc/clientsrvtester/group/clientsrvtester.mmp Wed Oct 13 14:15:33 2010 +0300 @@ -44,7 +44,7 @@ LIBRARY euser.lib LIBRARY efsrv.lib LIBRARY flogger.lib -LIBRARY StifTestInterface.lib +LIBRARY stiftestinterface.lib LIBRARY presencecacheclient2.lib LIBRARY presencecacheutils.lib diff -r 6b5524b4f673 -r 38bb213f60ba contacts_plat/speed_dial_dialogs_api/tsrc/bc/group/BCTestSpeedDial.mmp --- a/contacts_plat/speed_dial_dialogs_api/tsrc/bc/group/BCTestSpeedDial.mmp Wed Sep 15 11:56:55 2010 +0300 +++ b/contacts_plat/speed_dial_dialogs_api/tsrc/bc/group/BCTestSpeedDial.mmp Wed Oct 13 14:15:33 2010 +0300 @@ -51,21 +51,21 @@ LIBRARY euser.lib -LIBRARY StifTestInterface.lib +LIBRARY stiftestinterface.lib LIBRARY stiftestengine.lib -LIBRARY spdctrl.lib -LIBRARY pbkeng.lib +LIBRARY SpdCtrl.lib +LIBRARY PbkEng.lib LIBRARY efsrv.lib LIBRARY cone.lib ws32.lib avkon.lib eikcoctl.lib eikctl.lib apgrfx.lib aknskins.lib LIBRARY bafl.lib aknskinsrv.lib aknswallpaperutils.lib eikcore.lib LIBRARY Pbk2CommonUI.lib -LIBRARY servicehandler.lib +LIBRARY ServiceHandler.lib LIBRARY Pbk2Presentation.lib -LIBRARY pbkview.lib -LIBRARY phoneclient.lib +LIBRARY PbkView.lib +LIBRARY PhoneClient.LIB LIBRARY VPbkEng.lib diff -r 6b5524b4f673 -r 38bb213f60ba contacts_plat/virtual_phonebook_engine_api/inc/MVPbkFieldType.h --- a/contacts_plat/virtual_phonebook_engine_api/inc/MVPbkFieldType.h Wed Sep 15 11:56:55 2010 +0300 +++ b/contacts_plat/virtual_phonebook_engine_api/inc/MVPbkFieldType.h Wed Oct 13 14:15:33 2010 +0300 @@ -641,7 +641,7 @@ TInt aMatchPriority ) const = 0; /** - * Returns the field type resource id from vpbkeng.rsg + * Returns the field type resource id from VPbkEng.rsg * that be used to identify a type. * * @return A field type resource id. @@ -732,7 +732,7 @@ * Returns the field type corresponding to field type resource id. * * If no match is found returns NULL. The resource id aFieldTypeResId - * corresponds to the VPBK_FIELD_TYPE types in vpbkeng.rsg. + * corresponds to the VPBK_FIELD_TYPE types in VPbkEng.rsg. * * @param aFieldTypeResId The field type resource id. * @return The corresponding field type. diff -r 6b5524b4f673 -r 38bb213f60ba contacts_plat/virtual_phonebook_policy_api/tsrc/T_VPbkPolicyApi/group/T_VPbkPolicyApi.mmp --- a/contacts_plat/virtual_phonebook_policy_api/tsrc/T_VPbkPolicyApi/group/T_VPbkPolicyApi.mmp Wed Sep 15 11:56:55 2010 +0300 +++ b/contacts_plat/virtual_phonebook_policy_api/tsrc/T_VPbkPolicyApi/group/T_VPbkPolicyApi.mmp Wed Oct 13 14:15:33 2010 +0300 @@ -36,7 +36,7 @@ APP_LAYER_SYSTEMINCLUDE LIBRARY euser.lib -LIBRARY StifTestInterface.lib +LIBRARY stiftestinterface.lib LIBRARY stiftestengine.lib LIBRARY VPbkEng.lib diff -r 6b5524b4f673 -r 38bb213f60ba contacts_plat/virtual_phonebook_sim_services_api/tsrc/T_VPbkSimServicesApi/group/T_VPbkSimServicesApi.mmp --- a/contacts_plat/virtual_phonebook_sim_services_api/tsrc/T_VPbkSimServicesApi/group/T_VPbkSimServicesApi.mmp Wed Sep 15 11:56:55 2010 +0300 +++ b/contacts_plat/virtual_phonebook_sim_services_api/tsrc/T_VPbkSimServicesApi/group/T_VPbkSimServicesApi.mmp Wed Oct 13 14:15:33 2010 +0300 @@ -36,11 +36,11 @@ APP_LAYER_SYSTEMINCLUDE LIBRARY euser.lib -LIBRARY StifTestInterface.lib +LIBRARY stiftestinterface.lib LIBRARY stiftestengine.lib LIBRARY VPbkEng.lib LIBRARY VPbkSimStoreImpl.lib -LIBRARY vpbksimstoreservice.lib +LIBRARY VPbkSimStoreService.lib LANG SC diff -r 6b5524b4f673 -r 38bb213f60ba contacts_plat/virtual_phonebook_store_api/inc/CVPbkContactOperationFactory.h --- a/contacts_plat/virtual_phonebook_store_api/inc/CVPbkContactOperationFactory.h Wed Sep 15 11:56:55 2010 +0300 +++ b/contacts_plat/virtual_phonebook_store_api/inc/CVPbkContactOperationFactory.h Wed Oct 13 14:15:33 2010 +0300 @@ -22,8 +22,8 @@ #define CVPBKCONTACTOPERATIONFACTORY_H #include -#include -#include +#include +#include class MVPbkContactStoreList; diff -r 6b5524b4f673 -r 38bb213f60ba contacts_plat/virtual_phonebook_store_api/tsrc/T_MVPbkContactStore/group/T_MVPbkContactStore.mmp --- a/contacts_plat/virtual_phonebook_store_api/tsrc/T_MVPbkContactStore/group/T_MVPbkContactStore.mmp Wed Sep 15 11:56:55 2010 +0300 +++ b/contacts_plat/virtual_phonebook_store_api/tsrc/T_MVPbkContactStore/group/T_MVPbkContactStore.mmp Wed Oct 13 14:15:33 2010 +0300 @@ -43,7 +43,7 @@ SYSTEMINCLUDE ../../../../../phonebookengines/VirtualPhonebook/inc SYSTEMINCLUDE /epoc32/include/Digia/EUnit -LIBRARY eunit.lib +LIBRARY EUnit.lib LIBRARY euser.lib efsrv.lib bafl.lib estor.lib cone.lib ecom.lib LIBRARY serviceprovidersettings.lib LIBRARY cntmodel.lib diff -r 6b5524b4f673 -r 38bb213f60ba contacts_plat/virtual_phonebook_store_api/tsrc/T_MVPbkContactStore/inc/T_MVPbkContactStoreSingle.h --- a/contacts_plat/virtual_phonebook_store_api/tsrc/T_MVPbkContactStore/inc/T_MVPbkContactStoreSingle.h Wed Sep 15 11:56:55 2010 +0300 +++ b/contacts_plat/virtual_phonebook_store_api/tsrc/T_MVPbkContactStore/inc/T_MVPbkContactStoreSingle.h Wed Oct 13 14:15:33 2010 +0300 @@ -32,7 +32,7 @@ #include #include #include -#include +#include #include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba contacts_plat/virtual_phonebook_store_api/tsrc/T_MVPbkContactStore/src/T_MVPbkContactStoreComposite.cpp --- a/contacts_plat/virtual_phonebook_store_api/tsrc/T_MVPbkContactStore/src/T_MVPbkContactStoreComposite.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/contacts_plat/virtual_phonebook_store_api/tsrc/T_MVPbkContactStore/src/T_MVPbkContactStoreComposite.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -36,7 +36,7 @@ #include #include -#include +#include // EXTERNAL INCLUDES #include diff -r 6b5524b4f673 -r 38bb213f60ba contacts_plat/virtual_phonebook_store_api/tsrc/T_MVPbkContactStore/src/T_MVPbkContactStoreDllMain.cpp --- a/contacts_plat/virtual_phonebook_store_api/tsrc/T_MVPbkContactStore/src/T_MVPbkContactStoreDllMain.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/contacts_plat/virtual_phonebook_store_api/tsrc/T_MVPbkContactStore/src/T_MVPbkContactStoreDllMain.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -30,7 +30,7 @@ #include "T_MVPbkContactStoreSingle.h" #include "T_MVPbkContactStoreComposite.h" #include "TVPbkContactStoreUriPtr.h" -#include +#include #include // LOCAL diff -r 6b5524b4f673 -r 38bb213f60ba contacts_plat/virtual_phonebook_store_api/tsrc/T_MVPbkContactStore/src/T_MVPbkContactStoreSingle.cpp --- a/contacts_plat/virtual_phonebook_store_api/tsrc/T_MVPbkContactStore/src/T_MVPbkContactStoreSingle.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/contacts_plat/virtual_phonebook_store_api/tsrc/T_MVPbkContactStore/src/T_MVPbkContactStoreSingle.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -58,7 +58,7 @@ #include #include #include -#include +#include #include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba contacts_plat/virtual_phonebook_vcard_api/tsrc/T_VPbkVCardApi/group/T_VPbkVCardApi.mmp --- a/contacts_plat/virtual_phonebook_vcard_api/tsrc/T_VPbkVCardApi/group/T_VPbkVCardApi.mmp Wed Sep 15 11:56:55 2010 +0300 +++ b/contacts_plat/virtual_phonebook_vcard_api/tsrc/T_VPbkVCardApi/group/T_VPbkVCardApi.mmp Wed Oct 13 14:15:33 2010 +0300 @@ -44,10 +44,10 @@ LIBRARY eikcore.lib LIBRARY euser.lib LIBRARY estor.lib -LIBRARY StifTestInterface.lib +LIBRARY stiftestinterface.lib LIBRARY stiftestengine.lib LIBRARY VPbkEng.lib -LIBRARY VPbkVCardEng.lib efsrv.lib +LIBRARY vpbkvcardeng.lib efsrv.lib LANG SC diff -r 6b5524b4f673 -r 38bb213f60ba contacts_plat/virtual_phonebook_vcard_api/tsrc/T_VPbkVCardApi/src/VPbkVCardStifBlocks.cpp --- a/contacts_plat/virtual_phonebook_vcard_api/tsrc/T_VPbkVCardApi/src/VPbkVCardStifBlocks.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/contacts_plat/virtual_phonebook_vcard_api/tsrc/T_VPbkVCardApi/src/VPbkVCardStifBlocks.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -27,7 +27,7 @@ #include #include #include -#include +#include #include _LIT( KCntDbUri, "cntdb://c:testcontacts.cdb" ); diff -r 6b5524b4f673 -r 38bb213f60ba contacts_plat/virtual_phonebook_view_definition_api/tsrc/T_VPbkViewDefinitionApi/group/T_VPbkViewDefinitionApi.mmp --- a/contacts_plat/virtual_phonebook_view_definition_api/tsrc/T_VPbkViewDefinitionApi/group/T_VPbkViewDefinitionApi.mmp Wed Sep 15 11:56:55 2010 +0300 +++ b/contacts_plat/virtual_phonebook_view_definition_api/tsrc/T_VPbkViewDefinitionApi/group/T_VPbkViewDefinitionApi.mmp Wed Oct 13 14:15:33 2010 +0300 @@ -36,7 +36,7 @@ APP_LAYER_SYSTEMINCLUDE LIBRARY euser.lib -LIBRARY StifTestInterface.lib +LIBRARY stiftestinterface.lib LIBRARY stiftestengine.lib LIBRARY VPbkEng.lib diff -r 6b5524b4f673 -r 38bb213f60ba contacts_pub/phonebook_data_addedit_ui_api/tsrc/bc/group/BCTestPbkDataAddEdit.mmp --- a/contacts_pub/phonebook_data_addedit_ui_api/tsrc/bc/group/BCTestPbkDataAddEdit.mmp Wed Sep 15 11:56:55 2010 +0300 +++ b/contacts_pub/phonebook_data_addedit_ui_api/tsrc/bc/group/BCTestPbkDataAddEdit.mmp Wed Oct 13 14:15:33 2010 +0300 @@ -64,10 +64,10 @@ LIBRARY euser.lib eikcore.lib eikcoctl.lib LIBRARY efsrv.lib cone.lib -LIBRARY pbkeng.lib pbkview.lib cntmodel.lib -LIBRARY StifTestInterface.lib +LIBRARY PbkEng.lib PbkView.lib cntmodel.lib +LIBRARY stiftestinterface.lib LIBRARY stiftestengine.lib -LIBRARY CommonEngine.lib +LIBRARY commonengine.lib LANG SC diff -r 6b5524b4f673 -r 38bb213f60ba contacts_pub/phonebook_data_addedit_ui_api/tsrc/bc/src/BCTestPbkDataAddEditBlocks.cpp --- a/contacts_pub/phonebook_data_addedit_ui_api/tsrc/bc/src/BCTestPbkDataAddEditBlocks.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/contacts_pub/phonebook_data_addedit_ui_api/tsrc/bc/src/BCTestPbkDataAddEditBlocks.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -30,7 +30,7 @@ #include #include -//#include +//#include #include #include #include @@ -384,8 +384,8 @@ _LIT( KPhoneNumber, "+358401234567" ); TInt commandId = TPbkDataSaveCommandId( EPbkCmdDataSaveAddToExisting ); - TRAPD( err, dataSaveAppUi->HandleCommandL( commandId, *fields, KPhoneNumber ) ); - ASSERT(err == KErrNone); + TBool added = dataSaveAppUi->HandleCommandL( commandId, *fields, KPhoneNumber ); + ASSERT(added ); CleanupStack::PopAndDestroy( fields ); CleanupStack::PopAndDestroy( dataSaveAppUi ); diff -r 6b5524b4f673 -r 38bb213f60ba contacts_pub/phonebook_data_management_api/tsrc/bc/MTPbkContactChangeNotifier/group/MTPbkContactChangeNotifier.mmp --- a/contacts_pub/phonebook_data_management_api/tsrc/bc/MTPbkContactChangeNotifier/group/MTPbkContactChangeNotifier.mmp Wed Sep 15 11:56:55 2010 +0300 +++ b/contacts_pub/phonebook_data_management_api/tsrc/bc/MTPbkContactChangeNotifier/group/MTPbkContactChangeNotifier.mmp Wed Oct 13 14:15:33 2010 +0300 @@ -63,14 +63,14 @@ SOURCE CContactEngineEventQueue.cpp LIBRARY euser.lib -LIBRARY StifTestInterface.lib +LIBRARY stiftestinterface.lib LIBRARY stiftestengine.lib LIBRARY bafl.lib LIBRARY cntmodel.lib LIBRARY efsrv.lib LIBRARY estor.lib -LIBRARY pbkeng.lib -LIBRARY sysutil.lib +LIBRARY PbkEng.lib +LIBRARY SysUtil.lib LANG SC diff -r 6b5524b4f673 -r 38bb213f60ba contacts_pub/phonebook_data_management_api/tsrc/bc/MTPbkContactEngine/group/MTPbkContactEngine.mmp --- a/contacts_pub/phonebook_data_management_api/tsrc/bc/MTPbkContactEngine/group/MTPbkContactEngine.mmp Wed Sep 15 11:56:55 2010 +0300 +++ b/contacts_pub/phonebook_data_management_api/tsrc/bc/MTPbkContactEngine/group/MTPbkContactEngine.mmp Wed Oct 13 14:15:33 2010 +0300 @@ -63,15 +63,15 @@ SOURCE CContactEngineEventQueue.cpp -LIBRARY StifTestInterface.lib +LIBRARY stiftestinterface.lib LIBRARY stiftestengine.lib LIBRARY bafl.lib LIBRARY cntmodel.lib LIBRARY efsrv.lib LIBRARY estor.lib LIBRARY euser.lib -LIBRARY pbkeng.lib -LIBRARY sysutil.lib +LIBRARY PbkEng.lib +LIBRARY SysUtil.lib LANG SC diff -r 6b5524b4f673 -r 38bb213f60ba contacts_pub/phonebook_data_management_api/tsrc/bc/MTPbkContactItem/group/MTPbkContactItem.mmp --- a/contacts_pub/phonebook_data_management_api/tsrc/bc/MTPbkContactItem/group/MTPbkContactItem.mmp Wed Sep 15 11:56:55 2010 +0300 +++ b/contacts_pub/phonebook_data_management_api/tsrc/bc/MTPbkContactItem/group/MTPbkContactItem.mmp Wed Oct 13 14:15:33 2010 +0300 @@ -62,18 +62,18 @@ SOURCE MTPbkContactItemBlocks.cpp LIBRARY euser.lib -LIBRARY StifTestInterface.lib +LIBRARY stiftestinterface.lib LIBRARY stiftestengine.lib LIBRARY bafl.lib -LIBRARY centralrepository.lib +LIBRARY CentralRepository.lib LIBRARY cntmodel.lib LIBRARY cntview.lib -LIBRARY CommonEngine.lib -LIBRARY ecom.lib +LIBRARY commonengine.lib +LIBRARY ECom.lib LIBRARY efsrv.lib LIBRARY estor.lib -LIBRARY pbkeng.lib -LIBRARY sysutil.lib +LIBRARY PbkEng.lib +LIBRARY SysUtil.lib LANG SC diff -r 6b5524b4f673 -r 38bb213f60ba contacts_pub/phonebook_data_management_api/tsrc/bc/MTPbkContactItemField/group/MTPbkContactItemField.mmp --- a/contacts_pub/phonebook_data_management_api/tsrc/bc/MTPbkContactItemField/group/MTPbkContactItemField.mmp Wed Sep 15 11:56:55 2010 +0300 +++ b/contacts_pub/phonebook_data_management_api/tsrc/bc/MTPbkContactItemField/group/MTPbkContactItemField.mmp Wed Oct 13 14:15:33 2010 +0300 @@ -63,17 +63,17 @@ LIBRARY euser.lib -LIBRARY StifTestInterface.lib +LIBRARY stiftestinterface.lib LIBRARY stiftestengine.lib LIBRARY bafl.lib LIBRARY cntmodel.lib LIBRARY cntview.lib -LIBRARY CommonEngine.lib -LIBRARY ecom.lib +LIBRARY commonengine.lib +LIBRARY ECom.lib LIBRARY efsrv.lib LIBRARY estor.lib -LIBRARY pbkeng.lib -LIBRARY sysutil.lib +LIBRARY PbkEng.lib +LIBRARY SysUtil.lib LANG SC diff -r 6b5524b4f673 -r 38bb213f60ba contacts_pub/phonebook_data_management_api/tsrc/bc/MTPbkContactIter/group/MTPbkContactIter.mmp --- a/contacts_pub/phonebook_data_management_api/tsrc/bc/MTPbkContactIter/group/MTPbkContactIter.mmp Wed Sep 15 11:56:55 2010 +0300 +++ b/contacts_pub/phonebook_data_management_api/tsrc/bc/MTPbkContactIter/group/MTPbkContactIter.mmp Wed Oct 13 14:15:33 2010 +0300 @@ -62,14 +62,14 @@ SOURCE MTPbkContactIterBlocks.cpp LIBRARY euser.lib -LIBRARY StifTestInterface.lib +LIBRARY stiftestinterface.lib LIBRARY stiftestengine.lib LIBRARY bafl.lib LIBRARY cntmodel.lib LIBRARY efsrv.lib LIBRARY estor.lib -LIBRARY pbkeng.lib -LIBRARY sysutil.lib +LIBRARY PbkEng.lib +LIBRARY SysUtil.lib diff -r 6b5524b4f673 -r 38bb213f60ba contacts_pub/phonebook_data_management_api/tsrc/bc/MTPbkFieldData/group/MTPbkFieldData.mmp --- a/contacts_pub/phonebook_data_management_api/tsrc/bc/MTPbkFieldData/group/MTPbkFieldData.mmp Wed Sep 15 11:56:55 2010 +0300 +++ b/contacts_pub/phonebook_data_management_api/tsrc/bc/MTPbkFieldData/group/MTPbkFieldData.mmp Wed Oct 13 14:15:33 2010 +0300 @@ -63,14 +63,14 @@ LIBRARY euser.lib -LIBRARY StifTestInterface.lib +LIBRARY stiftestinterface.lib LIBRARY stiftestengine.lib LIBRARY bafl.lib LIBRARY cntmodel.lib LIBRARY efsrv.lib LIBRARY estor.lib -LIBRARY pbkeng.lib -LIBRARY sysutil.lib +LIBRARY PbkEng.lib +LIBRARY SysUtil.lib LANG SC diff -r 6b5524b4f673 -r 38bb213f60ba contacts_pub/phonebook_data_management_api/tsrc/bc/MTPbkFields/group/MTPbkFields.mmp --- a/contacts_pub/phonebook_data_management_api/tsrc/bc/MTPbkFields/group/MTPbkFields.mmp Wed Sep 15 11:56:55 2010 +0300 +++ b/contacts_pub/phonebook_data_management_api/tsrc/bc/MTPbkFields/group/MTPbkFields.mmp Wed Oct 13 14:15:33 2010 +0300 @@ -63,14 +63,14 @@ LIBRARY euser.lib -LIBRARY StifTestInterface.lib +LIBRARY stiftestinterface.lib LIBRARY stiftestengine.lib LIBRARY bafl.lib LIBRARY cntmodel.lib LIBRARY efsrv.lib LIBRARY estor.lib -LIBRARY pbkeng.lib -LIBRARY sysutil.lib +LIBRARY PbkEng.lib +LIBRARY SysUtil.lib LANG SC diff -r 6b5524b4f673 -r 38bb213f60ba contacts_pub/phonebook_data_management_api/tsrc/bc/MTPbkFieldsInfo/group/MTPbkFieldsInfo.mmp --- a/contacts_pub/phonebook_data_management_api/tsrc/bc/MTPbkFieldsInfo/group/MTPbkFieldsInfo.mmp Wed Sep 15 11:56:55 2010 +0300 +++ b/contacts_pub/phonebook_data_management_api/tsrc/bc/MTPbkFieldsInfo/group/MTPbkFieldsInfo.mmp Wed Oct 13 14:15:33 2010 +0300 @@ -64,14 +64,14 @@ SOURCE MTPbkFieldsInfoBlocks.cpp LIBRARY euser.lib -LIBRARY StifTestInterface.lib +LIBRARY stiftestinterface.lib LIBRARY stiftestengine.lib LIBRARY bafl.lib LIBRARY cntmodel.lib LIBRARY efsrv.lib LIBRARY estor.lib -LIBRARY pbkeng.lib -LIBRARY sysutil.lib +LIBRARY PbkEng.lib +LIBRARY SysUtil.lib LANG SC diff -r 6b5524b4f673 -r 38bb213f60ba contacts_pub/phonebook_data_management_api/tsrc/bc/MTPbkIconId/group/MTPbkIconId.mmp --- a/contacts_pub/phonebook_data_management_api/tsrc/bc/MTPbkIconId/group/MTPbkIconId.mmp Wed Sep 15 11:56:55 2010 +0300 +++ b/contacts_pub/phonebook_data_management_api/tsrc/bc/MTPbkIconId/group/MTPbkIconId.mmp Wed Oct 13 14:15:33 2010 +0300 @@ -62,15 +62,15 @@ SOURCE MTPbkIconIdBlocks.cpp -LIBRARY StifTestInterface.lib +LIBRARY stiftestinterface.lib LIBRARY stiftestengine.lib LIBRARY bafl.lib LIBRARY cntmodel.lib LIBRARY efsrv.lib LIBRARY estor.lib LIBRARY euser.lib -LIBRARY pbkeng.lib -LIBRARY sysutil.lib +LIBRARY PbkEng.lib +LIBRARY SysUtil.lib LANG SC diff -r 6b5524b4f673 -r 38bb213f60ba contacts_pub/phonebook_data_management_api/tsrc/bc/MTPbkIconInfo/group/MTPbkIconInfo.mmp --- a/contacts_pub/phonebook_data_management_api/tsrc/bc/MTPbkIconInfo/group/MTPbkIconInfo.mmp Wed Sep 15 11:56:55 2010 +0300 +++ b/contacts_pub/phonebook_data_management_api/tsrc/bc/MTPbkIconInfo/group/MTPbkIconInfo.mmp Wed Oct 13 14:15:33 2010 +0300 @@ -63,11 +63,11 @@ LIBRARY euser.lib -LIBRARY StifTestInterface.lib +LIBRARY stiftestinterface.lib LIBRARY stiftestengine.lib LIBRARY bafl.lib LIBRARY cone.lib -LIBRARY pbkview.lib +LIBRARY PbkView.lib LIBRARY aknskins.lib LIBRARY egul.lib diff -r 6b5524b4f673 -r 38bb213f60ba contacts_pub/phonebook_data_management_api/tsrc/bc/MTPbkIdleFinder/group/MTPbkIdleFinder.mmp --- a/contacts_pub/phonebook_data_management_api/tsrc/bc/MTPbkIdleFinder/group/MTPbkIdleFinder.mmp Wed Sep 15 11:56:55 2010 +0300 +++ b/contacts_pub/phonebook_data_management_api/tsrc/bc/MTPbkIdleFinder/group/MTPbkIdleFinder.mmp Wed Oct 13 14:15:33 2010 +0300 @@ -62,15 +62,15 @@ SOURCE MTPbkIdleFinderBlocks.cpp -LIBRARY StifTestInterface.lib +LIBRARY stiftestinterface.lib LIBRARY stiftestengine.lib LIBRARY bafl.lib LIBRARY cntmodel.lib LIBRARY efsrv.lib LIBRARY estor.lib LIBRARY euser.lib -LIBRARY pbkeng.lib -LIBRARY sysutil.lib +LIBRARY PbkEng.lib +LIBRARY SysUtil.lib LANG SC diff -r 6b5524b4f673 -r 38bb213f60ba contacts_pub/phonebook_data_management_api/tsrc/bc/MTRPbkViewResourceFile/group/MTRPbkViewResourceFile.mmp --- a/contacts_pub/phonebook_data_management_api/tsrc/bc/MTRPbkViewResourceFile/group/MTRPbkViewResourceFile.mmp Wed Sep 15 11:56:55 2010 +0300 +++ b/contacts_pub/phonebook_data_management_api/tsrc/bc/MTRPbkViewResourceFile/group/MTRPbkViewResourceFile.mmp Wed Oct 13 14:15:33 2010 +0300 @@ -62,15 +62,15 @@ SOURCE MTRPbkViewResourceFileBlocks.cpp -LIBRARY StifTestInterface.lib +LIBRARY stiftestinterface.lib LIBRARY stiftestengine.lib LIBRARY bafl.lib LIBRARY cntmodel.lib LIBRARY efsrv.lib LIBRARY estor.lib LIBRARY euser.lib -LIBRARY pbkview.lib -LIBRARY sysutil.lib +LIBRARY PbkView.lib +LIBRARY SysUtil.lib LIBRARY cone.lib LANG SC diff -r 6b5524b4f673 -r 38bb213f60ba contacts_pub/phonebook_fetch_ui_api/tsrc/bc/MTPbkAddressSelect/group/MTPbkAddressSelect.mmp --- a/contacts_pub/phonebook_fetch_ui_api/tsrc/bc/MTPbkAddressSelect/group/MTPbkAddressSelect.mmp Wed Sep 15 11:56:55 2010 +0300 +++ b/contacts_pub/phonebook_fetch_ui_api/tsrc/bc/MTPbkAddressSelect/group/MTPbkAddressSelect.mmp Wed Oct 13 14:15:33 2010 +0300 @@ -74,20 +74,20 @@ END // RESOURCE -LIBRARY StifTestInterface.lib +LIBRARY stiftestinterface.lib LIBRARY stiftestengine.lib LIBRARY aknicon.lib -LIBRARY aknskins.lib +LIBRARY AknSkins.lib LIBRARY apgrfx.lib LIBRARY apmime.lib LIBRARY avkon.lib LIBRARY bafl.lib LIBRARY bitgdi.lib -LIBRARY bitmaptransforms.lib +LIBRARY BitmapTransforms.lib LIBRARY centralrepository.lib LIBRARY cntmodel.lib LIBRARY cntview.lib -LIBRARY CommonEngine.lib +LIBRARY commonengine.lib LIBRARY cone.lib LIBRARY DrmHelper.lib LIBRARY efsrv.lib @@ -99,10 +99,10 @@ LIBRARY estor.lib LIBRARY euser.lib LIBRARY fbscli.lib -LIBRARY imageconversion.lib -LIBRARY mgfetch.lib -LIBRARY pbkeng.lib -LIBRARY pbkview.lib +LIBRARY ImageConversion.lib +LIBRARY MGFetch.lib +LIBRARY PbkEng.lib +LIBRARY PbkView.lib LIBRARY sysutil.lib LANG SC diff -r 6b5524b4f673 -r 38bb213f60ba contacts_pub/phonebook_fetch_ui_api/tsrc/bc/MTPbkAddressSelect/src/CAddressSelect.cpp --- a/contacts_pub/phonebook_fetch_ui_api/tsrc/bc/MTPbkAddressSelect/src/CAddressSelect.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/contacts_pub/phonebook_fetch_ui_api/tsrc/bc/MTPbkAddressSelect/src/CAddressSelect.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -34,7 +34,7 @@ #include #include #include "MTPbkAddressSelect.h" -#include +#include // ================= MEMBER FUNCTIONS ======================= diff -r 6b5524b4f673 -r 38bb213f60ba contacts_pub/phonebook_fetch_ui_api/tsrc/bc/MTPbkEmailAddressSelect/group/MTPbkEmailAddressSelect.mmp --- a/contacts_pub/phonebook_fetch_ui_api/tsrc/bc/MTPbkEmailAddressSelect/group/MTPbkEmailAddressSelect.mmp Wed Sep 15 11:56:55 2010 +0300 +++ b/contacts_pub/phonebook_fetch_ui_api/tsrc/bc/MTPbkEmailAddressSelect/group/MTPbkEmailAddressSelect.mmp Wed Oct 13 14:15:33 2010 +0300 @@ -66,20 +66,20 @@ SOURCE ../../ExtraCodes/CSimulateKeyEvents.cpp -LIBRARY StifTestInterface.lib +LIBRARY stiftestinterface.lib LIBRARY stiftestengine.lib LIBRARY aknicon.lib -LIBRARY aknskins.lib +LIBRARY AknSkins.lib LIBRARY apgrfx.lib LIBRARY apmime.lib LIBRARY avkon.lib LIBRARY bafl.lib LIBRARY bitgdi.lib -LIBRARY bitmaptransforms.lib +LIBRARY BitmapTransforms.lib LIBRARY centralrepository.lib LIBRARY cntmodel.lib LIBRARY cntview.lib -LIBRARY CommonEngine.lib +LIBRARY commonengine.lib LIBRARY cone.lib LIBRARY DrmHelper.lib LIBRARY efsrv.lib @@ -91,10 +91,10 @@ LIBRARY estor.lib LIBRARY euser.lib LIBRARY fbscli.lib -LIBRARY imageconversion.lib -LIBRARY mgfetch.lib -LIBRARY pbkeng.lib -LIBRARY pbkview.lib +LIBRARY ImageConversion.lib +LIBRARY MGFetch.lib +LIBRARY PbkEng.lib +LIBRARY PbkView.lib LIBRARY sysutil.lib LANG SC diff -r 6b5524b4f673 -r 38bb213f60ba contacts_pub/phonebook_fetch_ui_api/tsrc/bc/MTPbkEmailOverSms/group/MTPbkEmailOverSms.mmp --- a/contacts_pub/phonebook_fetch_ui_api/tsrc/bc/MTPbkEmailOverSms/group/MTPbkEmailOverSms.mmp Wed Sep 15 11:56:55 2010 +0300 +++ b/contacts_pub/phonebook_fetch_ui_api/tsrc/bc/MTPbkEmailOverSms/group/MTPbkEmailOverSms.mmp Wed Oct 13 14:15:33 2010 +0300 @@ -64,20 +64,20 @@ SOURCE ../../ExtraCodes/CSimulateKeyBase.cpp SOURCE ../../ExtraCodes/CSimulateKeyEvents.cpp -LIBRARY StifTestInterface.lib +LIBRARY stiftestinterface.lib LIBRARY stiftestengine.lib LIBRARY aknicon.lib -LIBRARY aknskins.lib +LIBRARY AknSkins.lib LIBRARY apgrfx.lib LIBRARY apmime.lib LIBRARY avkon.lib LIBRARY bafl.lib LIBRARY bitgdi.lib -LIBRARY bitmaptransforms.lib +LIBRARY BitmapTransforms.lib LIBRARY centralrepository.lib LIBRARY cntmodel.lib LIBRARY cntview.lib -LIBRARY CommonEngine.lib +LIBRARY commonengine.lib LIBRARY cone.lib LIBRARY DrmHelper.lib LIBRARY efsrv.lib @@ -89,10 +89,10 @@ LIBRARY estor.lib LIBRARY euser.lib LIBRARY fbscli.lib -LIBRARY imageconversion.lib -LIBRARY mgfetch.lib -LIBRARY pbkeng.lib -LIBRARY pbkview.lib +LIBRARY ImageConversion.lib +LIBRARY MGFetch.lib +LIBRARY PbkEng.lib +LIBRARY PbkView.lib LIBRARY sysutil.lib LANG SC diff -r 6b5524b4f673 -r 38bb213f60ba contacts_pub/phonebook_fetch_ui_api/tsrc/bc/MTPbkFetchCallbacks/group/MTPbkFetchCallbacks.mmp --- a/contacts_pub/phonebook_fetch_ui_api/tsrc/bc/MTPbkFetchCallbacks/group/MTPbkFetchCallbacks.mmp Wed Sep 15 11:56:55 2010 +0300 +++ b/contacts_pub/phonebook_fetch_ui_api/tsrc/bc/MTPbkFetchCallbacks/group/MTPbkFetchCallbacks.mmp Wed Oct 13 14:15:33 2010 +0300 @@ -65,20 +65,20 @@ SOURCE ../../ExtraCodes/CSimulateKeyBase.cpp SOURCE ../../ExtraCodes/CSimulateKeyEvents.cpp -LIBRARY StifTestInterface.lib +LIBRARY stiftestinterface.lib LIBRARY stiftestengine.lib LIBRARY aknicon.lib -LIBRARY aknskins.lib +LIBRARY AknSkins.lib LIBRARY apgrfx.lib LIBRARY apmime.lib LIBRARY avkon.lib LIBRARY bafl.lib LIBRARY bitgdi.lib -LIBRARY bitmaptransforms.lib +LIBRARY BitmapTransforms.lib LIBRARY centralrepository.lib LIBRARY cntmodel.lib LIBRARY cntview.lib -LIBRARY CommonEngine.lib +LIBRARY commonengine.lib LIBRARY cone.lib LIBRARY DrmHelper.lib LIBRARY efsrv.lib @@ -90,10 +90,10 @@ LIBRARY estor.lib LIBRARY euser.lib LIBRARY fbscli.lib -LIBRARY imageconversion.lib -LIBRARY mgfetch.lib -LIBRARY pbkeng.lib -LIBRARY pbkview.lib +LIBRARY ImageConversion.lib +LIBRARY MGFetch.lib +LIBRARY PbkEng.lib +LIBRARY PbkView.lib LIBRARY sysutil.lib LANG SC diff -r 6b5524b4f673 -r 38bb213f60ba contacts_pub/phonebook_fetch_ui_api/tsrc/bc/MTPbkFetchDlgSelection/group/MTPbkFetchDlgSelection.mmp --- a/contacts_pub/phonebook_fetch_ui_api/tsrc/bc/MTPbkFetchDlgSelection/group/MTPbkFetchDlgSelection.mmp Wed Sep 15 11:56:55 2010 +0300 +++ b/contacts_pub/phonebook_fetch_ui_api/tsrc/bc/MTPbkFetchDlgSelection/group/MTPbkFetchDlgSelection.mmp Wed Oct 13 14:15:33 2010 +0300 @@ -65,20 +65,20 @@ SOURCE ../../ExtraCodes/CSimulateKeyBase.cpp SOURCE ../../ExtraCodes/CSimulateKeyEvents.cpp -LIBRARY StifTestInterface.lib +LIBRARY stiftestinterface.lib LIBRARY stiftestengine.lib LIBRARY aknicon.lib -LIBRARY aknskins.lib +LIBRARY AknSkins.lib LIBRARY apgrfx.lib LIBRARY apmime.lib LIBRARY avkon.lib LIBRARY bafl.lib LIBRARY bitgdi.lib -LIBRARY bitmaptransforms.lib +LIBRARY BitmapTransforms.lib LIBRARY centralrepository.lib LIBRARY cntmodel.lib LIBRARY cntview.lib -LIBRARY CommonEngine.lib +LIBRARY commonengine.lib LIBRARY cone.lib LIBRARY DrmHelper.lib LIBRARY efsrv.lib @@ -90,10 +90,10 @@ LIBRARY estor.lib LIBRARY euser.lib LIBRARY fbscli.lib -LIBRARY imageconversion.lib -LIBRARY mgfetch.lib -LIBRARY pbkeng.lib -LIBRARY pbkview.lib +LIBRARY ImageConversion.lib +LIBRARY MGFetch.lib +LIBRARY PbkEng.lib +LIBRARY PbkView.lib LIBRARY sysutil.lib LANG SC diff -r 6b5524b4f673 -r 38bb213f60ba contacts_pub/phonebook_fetch_ui_api/tsrc/bc/MTPbkMemoryEntryAddItemDlg/group/MTPbkMemoryEntryAddItemDlg.mmp --- a/contacts_pub/phonebook_fetch_ui_api/tsrc/bc/MTPbkMemoryEntryAddItemDlg/group/MTPbkMemoryEntryAddItemDlg.mmp Wed Sep 15 11:56:55 2010 +0300 +++ b/contacts_pub/phonebook_fetch_ui_api/tsrc/bc/MTPbkMemoryEntryAddItemDlg/group/MTPbkMemoryEntryAddItemDlg.mmp Wed Oct 13 14:15:33 2010 +0300 @@ -64,20 +64,20 @@ SOURCE ../../ExtraCodes/CSimulateKeyEvents.cpp -LIBRARY StifTestInterface.lib +LIBRARY stiftestinterface.lib LIBRARY stiftestengine.lib LIBRARY aknicon.lib -LIBRARY aknskins.lib +LIBRARY AknSkins.lib LIBRARY apgrfx.lib LIBRARY apmime.lib LIBRARY avkon.lib LIBRARY bafl.lib LIBRARY bitgdi.lib -LIBRARY bitmaptransforms.lib +LIBRARY BitmapTransforms.lib LIBRARY centralrepository.lib LIBRARY cntmodel.lib LIBRARY cntview.lib -LIBRARY CommonEngine.lib +LIBRARY commonengine.lib LIBRARY cone.lib LIBRARY DrmHelper.lib LIBRARY efsrv.lib @@ -89,10 +89,10 @@ LIBRARY estor.lib LIBRARY euser.lib LIBRARY fbscli.lib -LIBRARY imageconversion.lib -LIBRARY mgfetch.lib -LIBRARY pbkeng.lib -LIBRARY pbkview.lib +LIBRARY ImageConversion.lib +LIBRARY MGFetch.lib +LIBRARY PbkEng.lib +LIBRARY PbkView.lib LIBRARY sysutil.lib LANG SC diff -r 6b5524b4f673 -r 38bb213f60ba contacts_pub/phonebook_fetch_ui_api/tsrc/bc/MTPbkMmsAddressSelect/group/MTPbkMmsAddressSelect.mmp --- a/contacts_pub/phonebook_fetch_ui_api/tsrc/bc/MTPbkMmsAddressSelect/group/MTPbkMmsAddressSelect.mmp Wed Sep 15 11:56:55 2010 +0300 +++ b/contacts_pub/phonebook_fetch_ui_api/tsrc/bc/MTPbkMmsAddressSelect/group/MTPbkMmsAddressSelect.mmp Wed Oct 13 14:15:33 2010 +0300 @@ -65,20 +65,20 @@ SOURCE ../../ExtraCodes/CSimulateKeyBase.cpp SOURCE ../../ExtraCodes/CSimulateKeyEvents.cpp -LIBRARY StifTestInterface.lib +LIBRARY stiftestinterface.lib LIBRARY stiftestengine.lib LIBRARY aknicon.lib -LIBRARY aknskins.lib +LIBRARY AknSkins.lib LIBRARY apgrfx.lib LIBRARY apmime.lib LIBRARY avkon.lib LIBRARY bafl.lib LIBRARY bitgdi.lib -LIBRARY bitmaptransforms.lib +LIBRARY BitmapTransforms.lib LIBRARY centralrepository.lib LIBRARY cntmodel.lib LIBRARY cntview.lib -LIBRARY CommonEngine.lib +LIBRARY commonengine.lib LIBRARY cone.lib LIBRARY DrmHelper.lib LIBRARY efsrv.lib @@ -90,10 +90,10 @@ LIBRARY estor.lib LIBRARY euser.lib LIBRARY fbscli.lib -LIBRARY imageconversion.lib -LIBRARY mgfetch.lib -LIBRARY pbkeng.lib -LIBRARY pbkview.lib +LIBRARY ImageConversion.lib +LIBRARY MGFetch.lib +LIBRARY PbkEng.lib +LIBRARY PbkView.lib LIBRARY sysutil.lib LANG SC diff -r 6b5524b4f673 -r 38bb213f60ba contacts_pub/phonebook_fetch_ui_api/tsrc/bc/MTPbkMultipleEntryFetchDlg/group/MTPbkMultipleEntryFetchDlg.mmp --- a/contacts_pub/phonebook_fetch_ui_api/tsrc/bc/MTPbkMultipleEntryFetchDlg/group/MTPbkMultipleEntryFetchDlg.mmp Wed Sep 15 11:56:55 2010 +0300 +++ b/contacts_pub/phonebook_fetch_ui_api/tsrc/bc/MTPbkMultipleEntryFetchDlg/group/MTPbkMultipleEntryFetchDlg.mmp Wed Oct 13 14:15:33 2010 +0300 @@ -66,20 +66,20 @@ SOURCE ../../ExtraCodes/CSimulateKeyBase.cpp SOURCE ../../ExtraCodes/CSimulateKeyEvents.cpp -LIBRARY StifTestInterface.lib +LIBRARY stiftestinterface.lib LIBRARY stiftestengine.lib LIBRARY aknicon.lib -LIBRARY aknskins.lib +LIBRARY AknSkins.lib LIBRARY apgrfx.lib LIBRARY apmime.lib LIBRARY avkon.lib LIBRARY bafl.lib LIBRARY bitgdi.lib -LIBRARY bitmaptransforms.lib +LIBRARY BitmapTransforms.lib LIBRARY centralrepository.lib LIBRARY cntmodel.lib LIBRARY cntview.lib -LIBRARY CommonEngine.lib +LIBRARY commonengine.lib LIBRARY cone.lib LIBRARY DrmHelper.lib LIBRARY efsrv.lib @@ -91,10 +91,10 @@ LIBRARY estor.lib LIBRARY euser.lib LIBRARY fbscli.lib -LIBRARY imageconversion.lib -LIBRARY mgfetch.lib -LIBRARY pbkeng.lib -LIBRARY pbkview.lib +LIBRARY ImageConversion.lib +LIBRARY MGFetch.lib +LIBRARY PbkEng.lib +LIBRARY PbkView.lib LIBRARY sysutil.lib LANG SC diff -r 6b5524b4f673 -r 38bb213f60ba contacts_pub/phonebook_fetch_ui_api/tsrc/bc/MTPbkPhoneNumberSelect/group/MTPbkPhoneNumberSelect.mmp --- a/contacts_pub/phonebook_fetch_ui_api/tsrc/bc/MTPbkPhoneNumberSelect/group/MTPbkPhoneNumberSelect.mmp Wed Sep 15 11:56:55 2010 +0300 +++ b/contacts_pub/phonebook_fetch_ui_api/tsrc/bc/MTPbkPhoneNumberSelect/group/MTPbkPhoneNumberSelect.mmp Wed Oct 13 14:15:33 2010 +0300 @@ -64,20 +64,20 @@ SOURCE ../../ExtraCodes/CSimulateKeyBase.cpp SOURCE ../../ExtraCodes/CSimulateKeyEvents.cpp -LIBRARY StifTestInterface.lib +LIBRARY stiftestinterface.lib LIBRARY stiftestengine.lib LIBRARY aknicon.lib -LIBRARY aknskins.lib +LIBRARY AknSkins.lib LIBRARY apgrfx.lib LIBRARY apmime.lib LIBRARY avkon.lib LIBRARY bafl.lib LIBRARY bitgdi.lib -LIBRARY bitmaptransforms.lib +LIBRARY BitmapTransforms.lib LIBRARY centralrepository.lib LIBRARY cntmodel.lib LIBRARY cntview.lib -LIBRARY CommonEngine.lib +LIBRARY commonengine.lib LIBRARY cone.lib LIBRARY DrmHelper.lib LIBRARY efsrv.lib @@ -89,10 +89,10 @@ LIBRARY estor.lib LIBRARY euser.lib LIBRARY fbscli.lib -LIBRARY imageconversion.lib -LIBRARY mgfetch.lib -LIBRARY pbkeng.lib -LIBRARY pbkview.lib +LIBRARY ImageConversion.lib +LIBRARY MGFetch.lib +LIBRARY PbkEng.lib +LIBRARY PbkView.lib LIBRARY sysutil.lib LANG SC diff -r 6b5524b4f673 -r 38bb213f60ba contacts_pub/phonebook_fetch_ui_api/tsrc/bc/MTPbkPhoneNumberSelectBase/group/MTPbkPhoneNumberSelectBase.mmp --- a/contacts_pub/phonebook_fetch_ui_api/tsrc/bc/MTPbkPhoneNumberSelectBase/group/MTPbkPhoneNumberSelectBase.mmp Wed Sep 15 11:56:55 2010 +0300 +++ b/contacts_pub/phonebook_fetch_ui_api/tsrc/bc/MTPbkPhoneNumberSelectBase/group/MTPbkPhoneNumberSelectBase.mmp Wed Oct 13 14:15:33 2010 +0300 @@ -73,20 +73,20 @@ TARGETPATH resource END // RESOURCE -LIBRARY StifTestInterface.lib +LIBRARY stiftestinterface.lib LIBRARY stiftestengine.lib LIBRARY aknicon.lib -LIBRARY aknskins.lib +LIBRARY AknSkins.lib LIBRARY apgrfx.lib LIBRARY apmime.lib LIBRARY avkon.lib LIBRARY bafl.lib LIBRARY bitgdi.lib -LIBRARY bitmaptransforms.lib +LIBRARY BitmapTransforms.lib LIBRARY centralrepository.lib LIBRARY cntmodel.lib LIBRARY cntview.lib -LIBRARY CommonEngine.lib +LIBRARY commonengine.lib LIBRARY cone.lib LIBRARY DrmHelper.lib LIBRARY efsrv.lib @@ -98,10 +98,10 @@ LIBRARY estor.lib LIBRARY euser.lib LIBRARY fbscli.lib -LIBRARY imageconversion.lib -LIBRARY mgfetch.lib -LIBRARY pbkeng.lib -LIBRARY pbkview.lib +LIBRARY ImageConversion.lib +LIBRARY MGFetch.lib +LIBRARY PbkEng.lib +LIBRARY PbkView.lib LIBRARY sysutil.lib LANG SC diff -r 6b5524b4f673 -r 38bb213f60ba contacts_pub/phonebook_fetch_ui_api/tsrc/bc/MTPbkPhoneNumberSelectBase/src/CPhoneNumberSelectBase.cpp --- a/contacts_pub/phonebook_fetch_ui_api/tsrc/bc/MTPbkPhoneNumberSelectBase/src/CPhoneNumberSelectBase.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/contacts_pub/phonebook_fetch_ui_api/tsrc/bc/MTPbkPhoneNumberSelectBase/src/CPhoneNumberSelectBase.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -27,7 +27,7 @@ #include #include // StringLoader -#include +#include #include #include "CPhoneNumberSelectBase.h" diff -r 6b5524b4f673 -r 38bb213f60ba contacts_pub/phonebook_fetch_ui_api/tsrc/bc/MTPbkPocAddressSelect/group/MTPbkPocAddressSelect.mmp --- a/contacts_pub/phonebook_fetch_ui_api/tsrc/bc/MTPbkPocAddressSelect/group/MTPbkPocAddressSelect.mmp Wed Sep 15 11:56:55 2010 +0300 +++ b/contacts_pub/phonebook_fetch_ui_api/tsrc/bc/MTPbkPocAddressSelect/group/MTPbkPocAddressSelect.mmp Wed Oct 13 14:15:33 2010 +0300 @@ -64,20 +64,20 @@ SOURCE ../../ExtraCodes/CSimulateKeyBase.cpp SOURCE ../../ExtraCodes/CSimulateKeyEvents.cpp -LIBRARY StifTestInterface.lib +LIBRARY stiftestinterface.lib LIBRARY stiftestengine.lib LIBRARY aknicon.lib -LIBRARY aknskins.lib +LIBRARY AknSkins.lib LIBRARY apgrfx.lib LIBRARY apmime.lib LIBRARY avkon.lib LIBRARY bafl.lib LIBRARY bitgdi.lib -LIBRARY bitmaptransforms.lib +LIBRARY BitmapTransforms.lib LIBRARY centralrepository.lib LIBRARY cntmodel.lib LIBRARY cntview.lib -LIBRARY CommonEngine.lib +LIBRARY commonengine.lib LIBRARY cone.lib LIBRARY DrmHelper.lib LIBRARY efsrv.lib @@ -89,10 +89,10 @@ LIBRARY estor.lib LIBRARY euser.lib LIBRARY fbscli.lib -LIBRARY imageconversion.lib -LIBRARY mgfetch.lib -LIBRARY pbkeng.lib -LIBRARY pbkview.lib +LIBRARY ImageConversion.lib +LIBRARY MGFetch.lib +LIBRARY PbkEng.lib +LIBRARY PbkView.lib LIBRARY sysutil.lib LANG SC diff -r 6b5524b4f673 -r 38bb213f60ba contacts_pub/phonebook_fetch_ui_api/tsrc/bc/MTPbkSelectFieldDlg/group/MTPbkSelectFieldDlg.mmp --- a/contacts_pub/phonebook_fetch_ui_api/tsrc/bc/MTPbkSelectFieldDlg/group/MTPbkSelectFieldDlg.mmp Wed Sep 15 11:56:55 2010 +0300 +++ b/contacts_pub/phonebook_fetch_ui_api/tsrc/bc/MTPbkSelectFieldDlg/group/MTPbkSelectFieldDlg.mmp Wed Oct 13 14:15:33 2010 +0300 @@ -65,20 +65,20 @@ SOURCE ../../ExtraCodes/CSimulateKeyEvents.cpp -LIBRARY StifTestInterface.lib +LIBRARY stiftestinterface.lib LIBRARY stiftestengine.lib LIBRARY aknicon.lib -LIBRARY aknskins.lib +LIBRARY AknSkins.lib LIBRARY apgrfx.lib LIBRARY apmime.lib LIBRARY avkon.lib LIBRARY bafl.lib LIBRARY bitgdi.lib -LIBRARY bitmaptransforms.lib +LIBRARY BitmapTransforms.lib LIBRARY centralrepository.lib LIBRARY cntmodel.lib LIBRARY cntview.lib -LIBRARY CommonEngine.lib +LIBRARY commonengine.lib LIBRARY cone.lib LIBRARY DrmHelper.lib LIBRARY efsrv.lib @@ -90,10 +90,10 @@ LIBRARY estor.lib LIBRARY euser.lib LIBRARY fbscli.lib -LIBRARY imageconversion.lib -LIBRARY mgfetch.lib -LIBRARY pbkeng.lib -LIBRARY pbkview.lib +LIBRARY ImageConversion.lib +LIBRARY MGFetch.lib +LIBRARY PbkEng.lib +LIBRARY PbkView.lib LIBRARY sysutil.lib LANG SC diff -r 6b5524b4f673 -r 38bb213f60ba contacts_pub/phonebook_fetch_ui_api/tsrc/bc/MTPbkSelectFieldDlg/group/TestFramework.ini --- a/contacts_pub/phonebook_fetch_ui_api/tsrc/bc/MTPbkSelectFieldDlg/group/TestFramework.ini Wed Sep 15 11:56:55 2010 +0300 +++ b/contacts_pub/phonebook_fetch_ui_api/tsrc/bc/MTPbkSelectFieldDlg/group/TestFramework.ini Wed Oct 13 14:15:33 2010 +0300 @@ -93,7 +93,7 @@ [New_Module] ModuleName= testcombiner -TestCaseFile= c:\testframework\tcBCTestFieldDlg.cfg +TestCaseFile= c:\testframework\tcBCTestSEFieldDlg.cfg [End_Module] diff -r 6b5524b4f673 -r 38bb213f60ba contacts_pub/phonebook_fetch_ui_api/tsrc/bc/MTPbkSingleEntryFetchDlg/group/MTPbkSingleEntryFetchDlg.mmp --- a/contacts_pub/phonebook_fetch_ui_api/tsrc/bc/MTPbkSingleEntryFetchDlg/group/MTPbkSingleEntryFetchDlg.mmp Wed Sep 15 11:56:55 2010 +0300 +++ b/contacts_pub/phonebook_fetch_ui_api/tsrc/bc/MTPbkSingleEntryFetchDlg/group/MTPbkSingleEntryFetchDlg.mmp Wed Oct 13 14:15:33 2010 +0300 @@ -64,20 +64,20 @@ SOURCE ../../ExtraCodes/CSimulateKeyBase.cpp SOURCE ../../ExtraCodes/CSimulateKeyEvents.cpp -LIBRARY StifTestInterface.lib +LIBRARY stiftestinterface.lib LIBRARY stiftestengine.lib LIBRARY aknicon.lib -LIBRARY aknskins.lib +LIBRARY AknSkins.lib LIBRARY apgrfx.lib LIBRARY apmime.lib LIBRARY avkon.lib LIBRARY bafl.lib LIBRARY bitgdi.lib -LIBRARY bitmaptransforms.lib +LIBRARY BitmapTransforms.lib LIBRARY centralrepository.lib LIBRARY cntmodel.lib LIBRARY cntview.lib -LIBRARY CommonEngine.lib +LIBRARY commonengine.lib LIBRARY cone.lib LIBRARY DrmHelper.lib LIBRARY efsrv.lib @@ -89,10 +89,10 @@ LIBRARY estor.lib LIBRARY euser.lib LIBRARY fbscli.lib -LIBRARY imageconversion.lib -LIBRARY mgfetch.lib -LIBRARY pbkeng.lib -LIBRARY pbkview.lib +LIBRARY ImageConversion.lib +LIBRARY MGFetch.lib +LIBRARY PbkEng.lib +LIBRARY PbkView.lib LIBRARY sysutil.lib LANG SC diff -r 6b5524b4f673 -r 38bb213f60ba contacts_pub/phonebook_fetch_ui_api/tsrc/bc/MTPbkSingleItemFetchDlg/group/MTPbkSingleItemFetchDlg.mmp --- a/contacts_pub/phonebook_fetch_ui_api/tsrc/bc/MTPbkSingleItemFetchDlg/group/MTPbkSingleItemFetchDlg.mmp Wed Sep 15 11:56:55 2010 +0300 +++ b/contacts_pub/phonebook_fetch_ui_api/tsrc/bc/MTPbkSingleItemFetchDlg/group/MTPbkSingleItemFetchDlg.mmp Wed Oct 13 14:15:33 2010 +0300 @@ -64,20 +64,20 @@ SOURCE ../../ExtraCodes/CSimulateKeyBase.cpp SOURCE ../../ExtraCodes/CSimulateKeyEvents.cpp -LIBRARY StifTestInterface.lib +LIBRARY stiftestinterface.lib LIBRARY stiftestengine.lib LIBRARY aknicon.lib -LIBRARY aknskins.lib +LIBRARY AknSkins.lib LIBRARY apgrfx.lib LIBRARY apmime.lib LIBRARY avkon.lib LIBRARY bafl.lib LIBRARY bitgdi.lib -LIBRARY bitmaptransforms.lib +LIBRARY BitmapTransforms.lib LIBRARY centralrepository.lib LIBRARY cntmodel.lib LIBRARY cntview.lib -LIBRARY CommonEngine.lib +LIBRARY commonengine.lib LIBRARY cone.lib LIBRARY DrmHelper.lib LIBRARY efsrv.lib @@ -89,10 +89,10 @@ LIBRARY estor.lib LIBRARY euser.lib LIBRARY fbscli.lib -LIBRARY imageconversion.lib -LIBRARY mgfetch.lib -LIBRARY pbkeng.lib -LIBRARY pbkview.lib +LIBRARY ImageConversion.lib +LIBRARY MGFetch.lib +LIBRARY PbkEng.lib +LIBRARY PbkView.lib LIBRARY sysutil.lib LANG SC diff -r 6b5524b4f673 -r 38bb213f60ba contacts_pub/phonebook_fetch_ui_api/tsrc/bc/MTPbkSmsAddressSelect/group/MTPbkSmsAddressSelect.mmp --- a/contacts_pub/phonebook_fetch_ui_api/tsrc/bc/MTPbkSmsAddressSelect/group/MTPbkSmsAddressSelect.mmp Wed Sep 15 11:56:55 2010 +0300 +++ b/contacts_pub/phonebook_fetch_ui_api/tsrc/bc/MTPbkSmsAddressSelect/group/MTPbkSmsAddressSelect.mmp Wed Oct 13 14:15:33 2010 +0300 @@ -65,20 +65,20 @@ SOURCE ../../ExtraCodes/CSimulateKeyEvents.cpp -LIBRARY StifTestInterface.lib +LIBRARY stiftestinterface.lib LIBRARY stiftestengine.lib LIBRARY aknicon.lib -LIBRARY aknskins.lib +LIBRARY AknSkins.lib LIBRARY apgrfx.lib LIBRARY apmime.lib LIBRARY avkon.lib LIBRARY bafl.lib LIBRARY bitgdi.lib -LIBRARY bitmaptransforms.lib +LIBRARY BitmapTransforms.lib LIBRARY centralrepository.lib LIBRARY cntmodel.lib LIBRARY cntview.lib -LIBRARY CommonEngine.lib +LIBRARY commonengine.lib LIBRARY cone.lib LIBRARY DrmHelper.lib LIBRARY efsrv.lib @@ -90,10 +90,10 @@ LIBRARY estor.lib LIBRARY euser.lib LIBRARY fbscli.lib -LIBRARY imageconversion.lib -LIBRARY mgfetch.lib -LIBRARY pbkeng.lib -LIBRARY pbkview.lib +LIBRARY ImageConversion.lib +LIBRARY MGFetch.lib +LIBRARY PbkEng.lib +LIBRARY PbkView.lib LIBRARY sysutil.lib LANG SC diff -r 6b5524b4f673 -r 38bb213f60ba contacts_pub/phonebook_fetch_ui_api/tsrc/bc/group/MTPbkPocAddressSelect.mmp --- a/contacts_pub/phonebook_fetch_ui_api/tsrc/bc/group/MTPbkPocAddressSelect.mmp Wed Sep 15 11:56:55 2010 +0300 +++ b/contacts_pub/phonebook_fetch_ui_api/tsrc/bc/group/MTPbkPocAddressSelect.mmp Wed Oct 13 14:15:33 2010 +0300 @@ -65,20 +65,20 @@ SOURCE ../../ExtraCodes/CSimulateKeyEvents.cpp -LIBRARY StifTestInterface.lib +LIBRARY stiftestinterface.lib LIBRARY stiftestengine.lib LIBRARY aknicon.lib -LIBRARY aknskins.lib +LIBRARY AknSkins.lib LIBRARY apgrfx.lib LIBRARY apmime.lib LIBRARY avkon.lib LIBRARY bafl.lib LIBRARY bitgdi.lib -LIBRARY bitmaptransforms.lib +LIBRARY BitmapTransforms.lib LIBRARY centralrepository.lib LIBRARY cntmodel.lib LIBRARY cntview.lib -LIBRARY CommonEngine.lib +LIBRARY commonengine.lib LIBRARY cone.lib LIBRARY DrmHelper.lib LIBRARY efsrv.lib @@ -90,10 +90,10 @@ LIBRARY estor.lib LIBRARY euser.lib LIBRARY fbscli.lib -LIBRARY imageconversion.lib -LIBRARY mgfetch.lib -LIBRARY pbkeng.lib -LIBRARY pbkview.lib +LIBRARY ImageConversion.lib +LIBRARY MGFetch.lib +LIBRARY PbkEng.lib +LIBRARY PbkView.lib LIBRARY sysutil.lib LANG SC diff -r 6b5524b4f673 -r 38bb213f60ba contacts_pub/phonebook_ui_utilities_api/tsrc/bc/group/BCTestPbkUIUtil.mmp --- a/contacts_pub/phonebook_ui_utilities_api/tsrc/bc/group/BCTestPbkUIUtil.mmp Wed Sep 15 11:56:55 2010 +0300 +++ b/contacts_pub/phonebook_ui_utilities_api/tsrc/bc/group/BCTestPbkUIUtil.mmp Wed Oct 13 14:15:33 2010 +0300 @@ -62,13 +62,13 @@ SOURCE BCTestPbkUIUtilBlocks.cpp -LIBRARY euser.lib sysutil.lib -LIBRARY StifTestInterface.lib +LIBRARY euser.lib SysUtil.lib +LIBRARY stiftestinterface.lib LIBRARY stiftestengine.lib -LIBRARY pbkeng.lib pbkview.lib +LIBRARY PbkEng.lib PbkView.lib LIBRARY efsrv.lib estor.lib cntmodel.lib -LIBRARY cone.lib CommonEngine.lib -LIBRARY eikcoctl.lib eikcore.lib avkon.lib +LIBRARY cone.lib commonengine.lib +LIBRARY eikcoctl.lib eikcore.lib Avkon.lib LIBRARY bafl.lib aknskins.lib egul.lib diff -r 6b5524b4f673 -r 38bb213f60ba contacts_pub/phonebook_vcard_importexport_api/tsrc/bc/group/BCTestPbkVcardImportExport.mmp --- a/contacts_pub/phonebook_vcard_importexport_api/tsrc/bc/group/BCTestPbkVcardImportExport.mmp Wed Sep 15 11:56:55 2010 +0300 +++ b/contacts_pub/phonebook_vcard_importexport_api/tsrc/bc/group/BCTestPbkVcardImportExport.mmp Wed Oct 13 14:15:33 2010 +0300 @@ -65,17 +65,17 @@ LIBRARY euser.lib -LIBRARY StifTestInterface.lib +LIBRARY stiftestinterface.lib LIBRARY stiftestengine.lib LIBRARY bafl.lib -LIBRARY bcardeng.lib +LIBRARY BCardEng.lib LIBRARY cntmodel.lib LIBRARY efsrv.lib LIBRARY estor.lib -LIBRARY imageconversion.lib -LIBRARY pbkeng.lib -LIBRARY pbkview.lib +LIBRARY ImageConversion.lib +LIBRARY PbkEng.lib +LIBRARY PbkView.lib LIBRARY vcard.lib LIBRARY versit.lib LIBRARY charconv.lib // unicode coversion diff -r 6b5524b4f673 -r 38bb213f60ba contacts_pub/phonebook_vcard_importexport_api/tsrc/bc/src/BCTestPbkVcardImportExportBlocks.cpp --- a/contacts_pub/phonebook_vcard_importexport_api/tsrc/bc/src/BCTestPbkVcardImportExportBlocks.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/contacts_pub/phonebook_vcard_importexport_api/tsrc/bc/src/BCTestPbkVcardImportExportBlocks.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -398,6 +398,7 @@ ASSERT(testBCEngine->SupportsFieldType(EPbkFieldIdSecondName)); ASSERT(testBCEngine->SupportsFieldType(EPbkFieldIdPhoneNumberVideo)); ASSERT(testBCEngine->SupportsFieldType(EPbkFieldIdVOIP)); + ASSERT(testBCEngine->SupportsFieldType(EPbkFieldIdPushToTalk)); ASSERT(testBCEngine->SupportsFieldType(EPbkFieldIdShareView)); ASSERT(testBCEngine->SupportsFieldType(EPbkFieldIdSIPID)); ASSERT(testBCEngine->SupportsFieldType(EPbkFieldIdPrefix)); diff -r 6b5524b4f673 -r 38bb213f60ba contacts_pub/speed_dial_utility_control_api/tsrc/bc/group/BCTestSpeedDial.mmp --- a/contacts_pub/speed_dial_utility_control_api/tsrc/bc/group/BCTestSpeedDial.mmp Wed Sep 15 11:56:55 2010 +0300 +++ b/contacts_pub/speed_dial_utility_control_api/tsrc/bc/group/BCTestSpeedDial.mmp Wed Oct 13 14:15:33 2010 +0300 @@ -51,11 +51,11 @@ LIBRARY euser.lib -LIBRARY StifTestInterface.lib +LIBRARY stiftestinterface.lib LIBRARY stiftestengine.lib -LIBRARY spdctrl.lib -LIBRARY pbkeng.lib +LIBRARY SpdCtrl.lib +LIBRARY PbkEng.lib LIBRARY efsrv.lib LIBRARY cone.lib ws32.lib avkon.lib eikcoctl.lib eikctl.lib apgrfx.lib aknskins.lib diff -r 6b5524b4f673 -r 38bb213f60ba contacts_pub/speed_dial_utility_control_api/tsrc/bc/src/BCTestSpeedDialBlocks.cpp --- a/contacts_pub/speed_dial_utility_control_api/tsrc/bc/src/BCTestSpeedDialBlocks.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/contacts_pub/speed_dial_utility_control_api/tsrc/bc/src/BCTestSpeedDialBlocks.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -231,7 +231,6 @@ CSpdiaControl* spd = CSpdiaControl::NewL( *pbk ); TRAPD( err, spd->ExecuteLD( 1, 1 ) ); - delete spd; spd = 0; delete pbk; pbk = 0; diff -r 6b5524b4f673 -r 38bb213f60ba logsui/AocCtViewSrc/CLogsMMEAocUtil.cpp --- a/logsui/AocCtViewSrc/CLogsMMEAocUtil.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/logsui/AocCtViewSrc/CLogsMMEAocUtil.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -22,7 +22,7 @@ #include #include -#include +#include #include diff -r 6b5524b4f673 -r 38bb213f60ba logsui/AppSrc/CCtControlContainer.cpp --- a/logsui/AppSrc/CCtControlContainer.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/logsui/AppSrc/CCtControlContainer.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -24,7 +24,7 @@ #include // als query popup #include //for skinned icons -#include // note structure +#include // note structure #include // Logs own icons #include diff -r 6b5524b4f673 -r 38bb213f60ba logsui/AppSrc/CCtView.cpp --- a/logsui/AppSrc/CCtView.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/logsui/AppSrc/CCtView.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -20,7 +20,7 @@ // INCLUDE FILES #include -#include +#include #include "CCtView.h" #include "CCtControlContainer.h" diff -r 6b5524b4f673 -r 38bb213f60ba logsui/AppSrc/CGprsCtControlContainer.cpp --- a/logsui/AppSrc/CGprsCtControlContainer.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/logsui/AppSrc/CGprsCtControlContainer.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -23,7 +23,7 @@ #include // tab group #include // for skinned icons -#include // note structure +#include // note structure #include // Index file for Logs icons. #include "CGprsCtControlContainer.h" #include "CGprsCtView.h" diff -r 6b5524b4f673 -r 38bb213f60ba logsui/AppSrc/CGprsCtView.cpp --- a/logsui/AppSrc/CGprsCtView.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/logsui/AppSrc/CGprsCtView.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -20,7 +20,7 @@ // INCLUDE FILES #include -#include +#include #include "CGprsCtView.h" #include "CGprsCtControlContainer.h" diff -r 6b5524b4f673 -r 38bb213f60ba logsui/AppSrc/CLogsAppListControlContainer.cpp --- a/logsui/AppSrc/CLogsAppListControlContainer.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/logsui/AppSrc/CLogsAppListControlContainer.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -23,7 +23,7 @@ #include #include // for skinned icons -#include +#include #include // Index file for Logs icons. #include "CLogsAppListControlContainer.h" diff -r 6b5524b4f673 -r 38bb213f60ba logsui/AppSrc/CLogsAppListView.cpp --- a/logsui/AppSrc/CLogsAppListView.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/logsui/AppSrc/CLogsAppListView.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -18,7 +18,7 @@ // INCLUDE FILES -#include +#include #include #include @@ -160,17 +160,6 @@ // Just to make sure the inputblocker is not on RemoveInputBlocker(); - - // Avoid the flicking when transfer to foreground from background. - if(LogsAppUi()->IsBackground()) - { - iContainer->DrawNow(); - iEikonEnv->AppUiFactory()->StatusPane()->DrawNow(); - LogsAppUi()->SetCustomControl(0); - - CCoeEnv * env = CCoeEnv::Static(); - env->WsSession().SetWindowGroupOrdinalPosition(env->RootWin().Identifier(),0); - } } // ---------------------------------------------------------------------------- @@ -209,17 +198,5 @@ } -void CLogsAppListView::ViewActivatedL(const TVwsViewId& aPrevViewId,TUid aCustomMessageId,const TDesC8& aCustomMessage) - { - // To avoid the flicking when transfer to foreground from background,we control the view show manually. - if(LogsAppUi()->IsBackground() && - LogsAppUi()->ActiveViewId() != ELogAppListViewId) - { - LogsAppUi()->SetCustomControl(1); - } - CLogsBaseView::ViewActivatedL(aPrevViewId,aCustomMessageId,aCustomMessage); - } - - // End of File diff -r 6b5524b4f673 -r 38bb213f60ba logsui/AppSrc/CLogsAppListView.h --- a/logsui/AppSrc/CLogsAppListView.h Wed Sep 15 11:56:55 2010 +0300 +++ b/logsui/AppSrc/CLogsAppListView.h Wed Oct 13 14:15:33 2010 +0300 @@ -97,13 +97,6 @@ */ void DoDeactivate(); - /** - * Early detection of view activation. - * Overrides the baseclass implementation calls CAknView::ViewActivatedL(). - */ - void ViewActivatedL(const TVwsViewId& aPrevViewId,TUid aCustomMessageId,const TDesC8& aCustomMessage); - - public: // from MEikCommandObserver /** * HandleCommandL. Generic view commands. diff -r 6b5524b4f673 -r 38bb213f60ba logsui/AppSrc/CLogsAppUi.cpp --- a/logsui/AppSrc/CLogsAppUi.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/logsui/AppSrc/CLogsAppUi.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -30,7 +30,7 @@ #include #include #include -#include +#include //+ __GFXTRANS__ // Transition effects @@ -1211,13 +1211,5 @@ return 0; } - // If Logs is background,returns is True,otherwise False. - TBool CLogsAppUi::IsBackground() const - { - CCoeEnv * env = CCoeEnv::Static(); - TInt ordinal = env->RootWin().OrdinalPosition(); - return ordinal != 0; - } - // End of File diff -r 6b5524b4f673 -r 38bb213f60ba logsui/AppSrc/CLogsAppUi.h --- a/logsui/AppSrc/CLogsAppUi.h Wed Sep 15 11:56:55 2010 +0300 +++ b/logsui/AppSrc/CLogsAppUi.h Wed Oct 13 14:15:33 2010 +0300 @@ -315,11 +315,6 @@ */ void SetLogsOpenedWithSendKey(TBool aLogsOpenedWithSendKey); - /** - * Returns whether Logs is background. - */ - TBool IsBackground() const; - public: // from MAknTabObserver void TabChangedL(TInt aIndex); diff -r 6b5524b4f673 -r 38bb213f60ba logsui/AppSrc/CLogsBaseControlContainer.cpp --- a/logsui/AppSrc/CLogsBaseControlContainer.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/logsui/AppSrc/CLogsBaseControlContainer.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -29,7 +29,7 @@ #include #include //KEikDynamicLayoutVariantSwitch #include -#include +#include #include "CLogsBaseControlContainer.h" #include "MLogsKeyProcessor.h" diff -r 6b5524b4f673 -r 38bb213f60ba logsui/AppSrc/CLogsBaseView.cpp --- a/logsui/AppSrc/CLogsBaseView.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/logsui/AppSrc/CLogsBaseView.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -48,7 +48,7 @@ #include //additional event uids #include -#include +#include #include "LogsIcons.hrh" #include "LogsConsts.h" @@ -587,18 +587,8 @@ aViewIdToBeDeactivated.iAppUid != TUid::Uid(KLogsAppUID3) ) { // Reset array, will call StateChangedL with state EStateArrayReseted and update the listbox. - if ( (aNewlyActivatedViewId.iViewUid.iUid == EStmDialledListViewId )|| - (aNewlyActivatedViewId.iViewUid.iUid == EStmMissedListViewId )|| - (aNewlyActivatedViewId.iViewUid.iUid == EStmReceivedListViewId )) - { - CurrentModel()->DoDeactivate( MLogsModel::ESkipClearing, - MLogsModel::EKeepDBConnection ); - } - else - { - CurrentModel()->DoDeactivate( MLogsModel::ESkipClearing, - MLogsModel::EResetOnlyArray ); - } + CurrentModel()->DoDeactivate( MLogsModel::ESkipClearing, + MLogsModel::EResetOnlyArray ); DrawComponents(); TRAP(err, CancelSaveToPbkL()); } @@ -1715,32 +1705,6 @@ TRACE_ENTRY_POINT; CAiwGenericParamList& paramList = iServHandlerRef->InParamListL(); - // identify the call type to hide the matching call type from the menu - // The call items (voice, video and VoIP are located in the main level - // of the menu when the parameter EGenericParamHideCallSubmenu is passed - // to the aiw provider - if( !this-> OriginalCallMenuIsVisible() && ( NULL!= aEvent )&&( NULL!= aEvent->LogsEventData())) - { - TAiwVariant variant; - - // Video call - if ( aEvent->LogsEventData()->VT() ) - { - variant.Set( EGenericParamVideoCall ); - } - // VoIP call - else if ( aEvent->LogsEventData()->VoIP() ) - { - variant.Set( EGenericParamVoIPCall ); - } - // voice call - else - { - variant.Set( EGenericParamVoiceCall ); - } - TAiwGenericParam param( EGenericParamHideCallSubmenu, variant ); - paramList.AppendL( param ); - } //Check do we provide only voice call (i.e. skip video call option) if ( !aVideo ) { @@ -1758,12 +1722,9 @@ // Sawfish VoIP changes >>>> TPtrC8 tempPtr( KNullDesC8 ); - TInt result = KErrNotFound; + TInt result; CLogsCntLinkChecker* contactCheckerPtr; - if (( NULL!= aEvent )&&( NULL!= aEvent->LogsEventData())) - { - result = aEvent->LogsEventData()->GetContactLink( tempPtr ); - } + result = aEvent->LogsEventData()->GetContactLink( tempPtr ); if ( KErrNone == result ) { @@ -1811,9 +1772,7 @@ *aMenuPane, //Handle of menu pane to initialise aResourceId, //MenuResourceId KAiwCmdCall, //Base ID for the handler to generate menu IDs for placeholders - paramList, //input parameter list for provider's parameters checking - EFalse, //Not use submenu - ETrue ); + paramList ); //input parameter list for provider's parameters checking TRACE_EXIT_POINT; } @@ -3106,16 +3065,6 @@ TRACE_EXIT_POINT; } -// ---------------------------------------------------------------------------- -// CLogsBaseView::OriginalCallMenuIsVisible -// ---------------------------------------------------------------------------- -// -TBool CLogsBaseView::OriginalCallMenuIsVisible() - { - // Original CallMenu is not visible - return EFalse; - } - // End of File diff -r 6b5524b4f673 -r 38bb213f60ba logsui/AppSrc/CLogsBaseView.h --- a/logsui/AppSrc/CLogsBaseView.h Wed Sep 15 11:56:55 2010 +0300 +++ b/logsui/AppSrc/CLogsBaseView.h Wed Oct 13 14:15:33 2010 +0300 @@ -656,14 +656,6 @@ */ void SetCurrentMenuType(CEikMenuBar::TMenuType aMenuType); - public: - /** - * Get whether the original CallMenu is visible - * - * @return EFalse\ETrue whether the original CallMenu is visible - */ - virtual TBool OriginalCallMenuIsVisible(); - private: // data CEikMenuBar* iPopup; diff -r 6b5524b4f673 -r 38bb213f60ba logsui/AppSrc/CLogsCtAdapter.cpp --- a/logsui/AppSrc/CLogsCtAdapter.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/logsui/AppSrc/CLogsCtAdapter.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -20,7 +20,7 @@ // INCLUDE FILES #include -#include +#include #include // AknTextUtils #include "CLogsCtAdapter.h" diff -r 6b5524b4f673 -r 38bb213f60ba logsui/AppSrc/CLogsDetailAdapter.cpp --- a/logsui/AppSrc/CLogsDetailAdapter.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/logsui/AppSrc/CLogsDetailAdapter.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -26,7 +26,7 @@ #include #include //caknsingleheadingstylelistbox -#include // detail view's event type texts. +#include // detail view's event type texts. #include "CLogsDetailAdapter.h" #include "CLogsDetailView.h" diff -r 6b5524b4f673 -r 38bb213f60ba logsui/AppSrc/CLogsDetailControlContainer.cpp --- a/logsui/AppSrc/CLogsDetailControlContainer.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/logsui/AppSrc/CLogsDetailControlContainer.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -21,7 +21,7 @@ #include #include #include //Dynamic layout functions -#include +#include #include #include "CLogsDetailControlContainer.h" diff -r 6b5524b4f673 -r 38bb213f60ba logsui/AppSrc/CLogsDetailView.cpp --- a/logsui/AppSrc/CLogsDetailView.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/logsui/AppSrc/CLogsDetailView.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -22,7 +22,7 @@ #include #include #include -#include +#include #include "CLogsDetailView.h" #include "CLogsDetailControlContainer.h" @@ -284,7 +284,6 @@ case ( R_COMMON_SEND_MESSAGE_SUBMENU ): case ( R_COMMON_POC_SUBMENU ): case ( R_COMMON_CALLUI_SUBMENU ): - case ( R_COMMON_SHOW_MY_ADDRESS_MENU ): { SetMenuItemsItemSpecificProperty( aMenuPane, EFalse ); } @@ -499,15 +498,4 @@ } } } - -// ---------------------------------------------------------------------------- -// CLogsDetailView::OriginalCallMenuIsVisible -// ---------------------------------------------------------------------------- -// -TBool CLogsDetailView::OriginalCallMenuIsVisible() - { - // Original CallMenu is visible - return ETrue; - } - // End of File diff -r 6b5524b4f673 -r 38bb213f60ba logsui/AppSrc/CLogsDetailView.h --- a/logsui/AppSrc/CLogsDetailView.h Wed Sep 15 11:56:55 2010 +0300 +++ b/logsui/AppSrc/CLogsDetailView.h Wed Oct 13 14:15:33 2010 +0300 @@ -208,14 +208,6 @@ void SetMenuItemsItemSpecificProperty( CEikMenuPane* aMenuPane, TBool aItemSpecific ); - public: - /** - * Get whether the original CallMenu is visible - * - * @return EFalse\ETrue whether the original CallMenu is visible - */ - TBool OriginalCallMenuIsVisible(); - private: // data /// Own: This view's control container. diff -r 6b5524b4f673 -r 38bb213f60ba logsui/AppSrc/CLogsEventListAdapter.cpp --- a/logsui/AppSrc/CLogsEventListAdapter.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/logsui/AppSrc/CLogsEventListAdapter.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -25,7 +25,7 @@ #include // akntextutils #include // ceikcolumnlistbox -#include +#include #include "CLogsEventListAdapter.h" #include "CLogsEventListControlContainer.h" diff -r 6b5524b4f673 -r 38bb213f60ba logsui/AppSrc/CLogsEventListControlContainer.cpp --- a/logsui/AppSrc/CLogsEventListControlContainer.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/logsui/AppSrc/CLogsEventListControlContainer.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -24,7 +24,7 @@ #include #include //for skinned icons -#include +#include #include #include "CLogsEventListControlContainer.h" diff -r 6b5524b4f673 -r 38bb213f60ba logsui/AppSrc/CLogsEventListView.cpp --- a/logsui/AppSrc/CLogsEventListView.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/logsui/AppSrc/CLogsEventListView.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -21,7 +21,7 @@ #include #include #include //FeatureManger -#include +#include #include "CLogsEventListView.h" #include "CLogsAppUi.h" @@ -710,14 +710,4 @@ return iState; } -// ---------------------------------------------------------------------------- -// CLogsEventListView::OriginalCallMenuIsVisible -// ---------------------------------------------------------------------------- -// -TBool CLogsEventListView::OriginalCallMenuIsVisible() - { - // Original CallMenu is visible - return ETrue; - } - // End of File diff -r 6b5524b4f673 -r 38bb213f60ba logsui/AppSrc/CLogsEventListView.h --- a/logsui/AppSrc/CLogsEventListView.h Wed Sep 15 11:56:55 2010 +0300 +++ b/logsui/AppSrc/CLogsEventListView.h Wed Oct 13 14:15:33 2010 +0300 @@ -187,14 +187,6 @@ * Function filters the events from log db. */ void CmdFilterL(); - - public: - /** - * Get whether the original CallMenu is visible - * - * @return EFalse\ETrue whether the original CallMenu is visible - */ - TBool OriginalCallMenuIsVisible(); private: // data diff -r 6b5524b4f673 -r 38bb213f60ba logsui/AppSrc/CLogsGprsCtAdapter.cpp --- a/logsui/AppSrc/CLogsGprsCtAdapter.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/logsui/AppSrc/CLogsGprsCtAdapter.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -20,7 +20,7 @@ // INCLUDE FILES #include #include -#include +#include #include "CLogsGprsCtAdapter.h" #include "MLogsSharedData.h" diff -r 6b5524b4f673 -r 38bb213f60ba logsui/AppSrc/CLogsRecentListAdapter.cpp --- a/logsui/AppSrc/CLogsRecentListAdapter.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/logsui/AppSrc/CLogsRecentListAdapter.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -21,9 +21,9 @@ #include #include #include -#include +#include #include -#include +#include #include #include "CLogsRecentListAdapter.h" diff -r 6b5524b4f673 -r 38bb213f60ba logsui/AppSrc/CLogsRecentListControlContainer.cpp --- a/logsui/AppSrc/CLogsRecentListControlContainer.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/logsui/AppSrc/CLogsRecentListControlContainer.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -23,7 +23,7 @@ #include #include //For skinned icons #include -#include +#include #include //Index file for Logs icons. #include "CLogsRecentListControlContainer.h" @@ -119,18 +119,11 @@ iAdapter = CLogsRecentListAdapter::NewL( this, iLastOwnIconOffset ); - // Shows "No missed calls" in this case - MakeEmptyTextListBoxL( iListBox, EmptyListboxResourceL() ); iListBox->Model()->SetItemTextArray( iAdapter ); - // Fetch data for extension - if( iView->CurrentModel()->Count() > 0 ) - { - iControlExtension->HandleAdditionalData( - *( iView->CurrentModel() ), - *iListBox ); - } - + //The below was a bad place for this as container is not deleted when we lose foreground + //but we still reread events. Instead we handle this in CLogsRecentListView::StateChangedL + //MakeEmptyTextListBoxL( iListBox, EmptyListboxResource() ); //Shows "no data" in this case MakeScrollArrowsL( iListBox ); //Create recent list view tab group (Logs.rss) diff -r 6b5524b4f673 -r 38bb213f60ba logsui/AppSrc/CLogsRecentListView.cpp --- a/logsui/AppSrc/CLogsRecentListView.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/logsui/AppSrc/CLogsRecentListView.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -29,8 +29,8 @@ #include #include #include -#include -#include +#include +#include #include //KAiwCmdCall #include //TAiwPocParameterData #include @@ -428,10 +428,11 @@ // Reset array and set dirty which means refresh requested, // will call StateChangedL with state EStateArrayReseted and update the listbox. - // Keep db connection. CurrentModel()->DoDeactivate( MLogsModel::ESkipClearing, - MLogsModel::EKeepDBConnection ); + MLogsModel::EResetOnlyArrayWithDirty ); + // On gaining foreground, do a clean read of events + iResetAndRefreshOnGainingForeground = MLogsModel::EResetAndRefresh; } CAknView::ViewDeactivated(); @@ -512,22 +513,14 @@ // With MLogsModel::ECloseDBConnectionAndResetArray the connection to the database is // closed and event array will be deleted. Calls StateChangedL with state EStateArrayReseted // which will update the listbox to empty state. - // Keep db connection CurrentModel()->DoDeactivate( MLogsModel::ENormalOperation, - MLogsModel::EKeepDBConnection ); + MLogsModel::ECloseDBConnectionAndResetArray ); - CurrentModel()->DoActivateL( MLogsModel::EResetAndRefresh ); // Now we can enable bring-to-foreground on view activation: AppUi()->SetCustomControl(0); AppUi()->HideInBackground(); - // If listbox needs to redraw,do it. - if( CurrentModel()->Count()>0 && - ( iContainer->ListBox()->TopItemIndex() != EventListTop() || - iContainer->ListBox()->CurrentItemIndex() != EventListCurrent())) - { - iContainer->ListBox()->DrawDeferred(); - } - + // When coming back to foreground, do a clean read of events + iResetAndRefreshOnGainingForeground = MLogsModel::EResetAndRefresh; } else { @@ -547,19 +540,11 @@ logsui.KillTask(); return; } - - // Avoid the flicking when transfer to foreground from background. - if(LogsAppUi()->IsBackground()) - { - iContainer->DrawNow(); - iEikonEnv->AppUiFactory()->StatusPane()->DrawNow(); - LogsAppUi()->SetCustomControl(0); - - CCoeEnv * env = CCoeEnv::Static(); - env->WsSession().SetWindowGroupOrdinalPosition(env->RootWin().Identifier(),0); - - } - + + // By default on gaining foreground, just refresh the list. So when active applications list, + // keylock or some note (like when plugin in the charger) is shown the list doesn't flicker. + // When view is deactivated this is set to MLogsModel::EResetAndRefresh. + iResetAndRefreshOnGainingForeground = MLogsModel::ERefresh; } @@ -659,9 +644,8 @@ LOGS_DEBUG_PRINT(LOGS_DEBUG_STRING ( "CLogsRecentListView::DoDeactivate - ReadingFinished" )); ClearMissedCallNotifications(); //Clear cenrep new missed calls counter + notifications - // Keep db connection CurrentModel()->DoDeactivate( MLogsModel::ENormalOperation, - MLogsModel::EKeepDBConnection );//ETrue: disconnect from db. This helps for EMSH-6JDFBV but + MLogsModel::ECloseDBConnection );//ETrue: disconnect from db. This helps for EMSH-6JDFBV but //reduces user's perceived performance for other views //(seems to keep clearing of missed duplicates process alive // so no need for EFalse here as it would increase probability of @@ -673,15 +657,14 @@ { LOGS_DEBUG_PRINT(LOGS_DEBUG_STRING ( "CLogsRecentListView::DoDeactivate - Reading interrupted" )); - // Keep db connection CurrentModel()->DoDeactivate( MLogsModel::ESkipClearing, - MLogsModel::EKeepDBConnection ); + MLogsModel::ECloseDBConnection ); } } else { CurrentModel()->DoDeactivate( MLogsModel::ENormalOperation, - MLogsModel::EKeepDBConnection );//ETrue: disconnect from db. This helps for EMSH-6JDFBV but + MLogsModel::ECloseDBConnection );//ETrue: disconnect from db. This helps for EMSH-6JDFBV but //reduces user's perceived performance for other views //EFalse: don't disconnect from db. This keeps read data cached in Logs. } @@ -871,7 +854,28 @@ { MenuBar()->StopDisplayingMenuBar(); } - } + + SetEventListCurrent( KErrNotFound );//just to make sure that UI does not try to read anything from eventarray + TRAPD( err, model->DoActivateL( iResetAndRefreshOnGainingForeground ) ); + if( err ) + { + iCoeEnv->HandleError( err ); + } + if( err == KErrDiskFull ) + { + RWsSession& wsSession = CCoeEnv::Static()->WsSession(); + TApaTask logsui( wsSession ); + TInt wgId = CCoeEnv::Static()->RootWin().WindowGroupId(); + logsui.SetWgId( wgId ); + logsui.KillTask(); + return; + } + + // By default on gaining foreground, just refresh the list. So when active applications list, + // keylock or some note (like when plugin in the charger) is shown the list doesn't flicker. + // When view is deactivated this is set to MLogsModel::EResetAndRefresh. + iResetAndRefreshOnGainingForeground = MLogsModel::ERefresh; + } else { // Change ELogsNoChange_PbkUpdPending to ELogsNoChange now so there is no need to @@ -879,8 +883,6 @@ iFocusChangeControl = ELogsNoChange; } } - // Sure "ClearMissedCallNotifications" is called. - ClearMissedCallNotifications(); RemoveInputBlocker(); //just in case } @@ -991,18 +993,16 @@ { LOGS_DEBUG_PRINT(LOGS_DEBUG_STRING ( "CLogsRecentListView::HandleLosingForeground - clear duplicates" )); - // Keep db connection model->DoDeactivate( MLogsModel::ENormalOperation, - MLogsModel::EKeepDBConnection ); //EFalse: don't disconnect from db + MLogsModel::ECloseDBConnection ); //EFalse: don't disconnect from db } else { LOGS_DEBUG_PRINT(LOGS_DEBUG_STRING ( "CLogsRecentListView::HandleLosingForeground - skip clearing" )); //Other loss of foreground (call or AppKey). We'll not touch duplicate counters - // Keep db connection model->DoDeactivate( MLogsModel::ESkipClearing, //Don't update db (for missed view) - MLogsModel::EKeepDBConnection ); //ETrue: disconnect from db in order to immediately to stop + MLogsModel::ECloseDBConnection ); //ETrue: disconnect from db in order to immediately to stop //EFalse: don't disconnect from db } } @@ -1094,9 +1094,7 @@ iContainer->ControlExtension()->HandleAdditionalData( *CurrentModel(), *iContainer->ListBox() ); - // Add condition check: To avoid Missing Call Note don't display ,do not call "ClearMissedCallNotificationsL" when logs is in background. - if(!LogsAppUi()->IsBackground()) - ClearMissedCallNotificationsL(); + ClearMissedCallNotificationsL(); // When event reading is finished, remove inputblocker RemoveInputBlocker(); } @@ -1273,17 +1271,5 @@ return result; } -void CLogsRecentListView::ViewActivatedL(const TVwsViewId& aPrevViewId,TUid aCustomMessageId,const TDesC8& aCustomMessage) - { - //To avoid the flicking when transfer to foreground from background,we control the view show manually. - if(LogsAppUi()->IsBackground() && - LogsAppUi()->ActiveViewId() != LogsCurrentRecentViewId() ) - { - LogsAppUi()->SetCustomControl(1); - } - - CLogsBaseView::ViewActivatedL(aPrevViewId,aCustomMessageId,aCustomMessage); - - } // End of File diff -r 6b5524b4f673 -r 38bb213f60ba logsui/AppSrc/CLogsRecentListView.h --- a/logsui/AppSrc/CLogsRecentListView.h Wed Sep 15 11:56:55 2010 +0300 +++ b/logsui/AppSrc/CLogsRecentListView.h Wed Oct 13 14:15:33 2010 +0300 @@ -227,11 +227,6 @@ */ TBool IgnoreViewDeactivatedOperation(); - /** - * Early detection of view activation. - * Overrides the baseclass implementation calls CAknView::ViewActivatedL(). - */ - void ViewActivatedL(const TVwsViewId& aPrevViewId,TUid aCustomMessageId,const TDesC8& aCustomMessage); private: // Data /// Own: view's control container diff -r 6b5524b4f673 -r 38bb213f60ba logsui/AppSrc/CLogsSubAppListControlContainer.cpp --- a/logsui/AppSrc/CLogsSubAppListControlContainer.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/logsui/AppSrc/CLogsSubAppListControlContainer.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -25,7 +25,7 @@ #include //for skinned icons #include -#include +#include #include #include "CLogsSubAppListControlContainer.h" diff -r 6b5524b4f673 -r 38bb213f60ba logsui/AppSrc/CLogsSubAppListView.cpp --- a/logsui/AppSrc/CLogsSubAppListView.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/logsui/AppSrc/CLogsSubAppListView.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -21,7 +21,7 @@ #include #include -#include +#include #include "CLogsSubAppListView.h" #include "CLogsSubAppListControlContainer.h" diff -r 6b5524b4f673 -r 38bb213f60ba logsui/EngineSrc/CLogsEventUpdater.cpp --- a/logsui/EngineSrc/CLogsEventUpdater.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/logsui/EngineSrc/CLogsEventUpdater.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -23,7 +23,7 @@ #endif #include #include -#include +#include #include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba logsui/LogsIndicatorPlugin/CLogsIndicatorPlugin.cpp --- a/logsui/LogsIndicatorPlugin/CLogsIndicatorPlugin.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/logsui/LogsIndicatorPlugin/CLogsIndicatorPlugin.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -28,7 +28,7 @@ #include #include -#include +#include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba logsui/LogsPlugin/CLogsSettingsControlContainer.cpp --- a/logsui/LogsPlugin/CLogsSettingsControlContainer.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/logsui/LogsPlugin/CLogsSettingsControlContainer.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -20,7 +20,7 @@ // INCLUDE FILES #include #include -#include +#include #include "CLogsSettingsControlContainer.h" #include "CLogsSettingsView.h" diff -r 6b5524b4f673 -r 38bb213f60ba logsui/LogsPlugin/CLogsSettingsView.cpp --- a/logsui/LogsPlugin/CLogsSettingsView.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/logsui/LogsPlugin/CLogsSettingsView.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -27,7 +27,7 @@ #include //parser #include -#include +#include #include // Series 60 localisation stringloader #include diff -r 6b5524b4f673 -r 38bb213f60ba logsui/group/Common.rss --- a/logsui/group/Common.rss Wed Sep 15 11:56:55 2010 +0300 +++ b/logsui/group/Common.rss Wed Oct 13 14:15:33 2010 +0300 @@ -32,8 +32,8 @@ { command = KAiwCmdCall; //Same ID as in interest. txt = ""; //AIW plugin will override the text set here - cascade = AIW_INTELLIGENT_CASCADE_ID; //No submenu if only one item in it - flags = EEikMenuItemSpecific; // Click-To-Call EEikMenuItemSpecificListQuery; + cascade = AIW_CASCADE_ID; //as a fix to ASAA-6VYJ2H always show a submenu + flags = EEikMenuItemSpecificListQuery; } }; } diff -r 6b5524b4f673 -r 38bb213f60ba logsui/group/Logs.mmp --- a/logsui/group/Logs.mmp Wed Sep 15 11:56:55 2010 +0300 +++ b/logsui/group/Logs.mmp Wed Oct 13 14:15:33 2010 +0300 @@ -31,7 +31,9 @@ TARGETTYPE exe EPOCSTACKSIZE 0x2710 //10000dec (default is 8000dec). In new architecture we need some more stack to //facilitate succesfull launching of editors (e.g. prepend number and send sms editors) -EPOCHEAPSIZE 0x1000 0x200000 +EPOCHEAPSIZE 0x1000 0x200000 // Broaden the heap size, min 4KB, max 2MB. + // Default 1MB size is not enough for new features + // (e.g. check contact link about VOIP changes). UID 0x100039CE KLogsAppUID3 VENDORID VID_DEFAULT @@ -97,13 +99,13 @@ APP_LAYER_SYSTEMINCLUDE // Dependencies to other Logs components -LIBRARY logseng.lib +LIBRARY LogsEng.lib LIBRARY AocCtView.lib // Dependencies to system components LIBRARY apparc.lib LIBRARY avkon.lib -LIBRARY CommonEngine.lib // StringLoader +LIBRARY commonengine.lib // StringLoader LIBRARY cone.lib LIBRARY eikcoctl.lib LIBRARY eikctl.lib @@ -115,20 +117,20 @@ LIBRARY logcli.lib // CLogClient LIBRARY etext.lib // CPlainText LIBRARY sendui.lib // sendui -LIBRARY aknskins.lib +LIBRARY AknSkins.lib LIBRARY hlplch.lib // Help application -LIBRARY featmgr.lib // Feature Manager API +LIBRARY FeatMgr.lib // Feature Manager API LIBRARY ws32.lib LIBRARY apgrfx.lib LIBRARY numbergrouping.lib //Formatting North American phone numbers -LIBRARY servicehandler.lib //Application InterWorking +LIBRARY ServiceHandler.lib //Application InterWorking LIBRARY CdlEngine.lib //Dynamic ui stuff LIBRARY eikdlg.lib LIBRARY gdi.lib LIBRARY efsrv.lib -LIBRARY gsecomplugin.lib +LIBRARY GSEcomPlugin.lib LIBRARY ecom.lib -LIBRARY phoneclient.lib //For Emergency call API +LIBRARY PhoneClient.lib //For Emergency call API LIBRARY aiwdialdata.lib LIBRARY centralrepository.lib diff -r 6b5524b4f673 -r 38bb213f60ba logsui/group/LogsEng.mmp --- a/logsui/group/LogsEng.mmp Wed Sep 15 11:56:55 2010 +0300 +++ b/logsui/group/LogsEng.mmp Wed Oct 13 14:15:33 2010 +0300 @@ -73,17 +73,17 @@ LIBRARY logcli.lib LIBRARY bafl.lib LIBRARY logwrap.lib -LIBRARY CommonEngine.lib +LIBRARY commonengine.lib LIBRARY efsrv.lib LIBRARY VPbkEng.lib LIBRARY Pbk2Presentation.lib -LIBRARY sysutil.lib +LIBRARY SysUtil.lib -LIBRARY sssettings.lib -LIBRARY featmgr.lib // Feature Manager +LIBRARY SSSettings.lib +LIBRARY FeatMgr.lib // Feature Manager LIBRARY centralrepository.lib -LIBRARY cenrepnotifhandler.lib +LIBRARY CenRepNotifHandler.lib LIBRARY charconv.lib //For conversion to Unicode LIBRARY etel.lib // ETel functionalities LIBRARY etelmm.lib // ETel functionalities diff -r 6b5524b4f673 -r 38bb213f60ba logsui/group/LogsIndicatorPlugin.mmp --- a/logsui/group/LogsIndicatorPlugin.mmp Wed Sep 15 11:56:55 2010 +0300 +++ b/logsui/group/LogsIndicatorPlugin.mmp Wed Oct 13 14:15:33 2010 +0300 @@ -59,11 +59,11 @@ LIBRARY apgrfx.lib LIBRARY ecom.lib LIBRARY avkon.lib -LIBRARY CommonEngine.lib // StringLoader +LIBRARY commonengine.lib // StringLoader LIBRARY bafl.lib LIBRARY efsrv.lib LIBRARY centralrepository.lib -LIBRARY platformenv.lib +LIBRARY PlatformEnv.lib LIBRARY cenrepnotifhandler.lib DEBUGLIBRARY flogger.lib // End of File diff -r 6b5524b4f673 -r 38bb213f60ba logsui/group/LogsPlugin.mmp --- a/logsui/group/LogsPlugin.mmp Wed Sep 15 11:56:55 2010 +0300 +++ b/logsui/group/LogsPlugin.mmp Wed Oct 13 14:15:33 2010 +0300 @@ -57,14 +57,14 @@ APP_LAYER_SYSTEMINCLUDE // Dependencies to Logs components -LIBRARY logseng.lib +LIBRARY LogsEng.lib LIBRARY AocCtView.lib // Dependencies to system components LIBRARY logcli.lib // CLogClient LIBRARY apparc.lib LIBRARY avkon.lib -LIBRARY CommonEngine.lib // StringLoader +LIBRARY commonengine.lib // StringLoader LIBRARY cone.lib LIBRARY eikcoctl.lib LIBRARY eikctl.lib @@ -76,9 +76,9 @@ LIBRARY etext.lib // CPlainText -LIBRARY aknskins.lib +LIBRARY AknSkins.lib LIBRARY hlplch.lib // Help application -LIBRARY featmgr.lib // Feature Manager API +LIBRARY FeatMgr.lib // Feature Manager API LIBRARY ws32.lib LIBRARY apgrfx.lib LIBRARY CdlEngine.lib //Dynamic ui stuff @@ -87,8 +87,8 @@ LIBRARY gdi.lib //This is needed for 3.1 builds (because of API change in CFont Class (gdi.h) LIBRARY ecom.lib -LIBRARY gsecomplugin.lib -LIBRARY gsframework.lib +LIBRARY GSEcomPlugin.lib +LIBRARY GSFramework.lib LIBRARY efsrv.lib // End of File diff -r 6b5524b4f673 -r 38bb213f60ba logsui/group/Logs_reg.rss --- a/logsui/group/Logs_reg.rss Wed Sep 15 11:56:55 2010 +0300 +++ b/logsui/group/Logs_reg.rss Wed Oct 13 14:15:33 2010 +0300 @@ -18,7 +18,7 @@ #include #include -#include +#include #include "../group/LogsUID.h" // common Logs UID definitions diff -r 6b5524b4f673 -r 38bb213f60ba logsui/help/data/xhtml.zip Binary file logsui/help/data/xhtml.zip has changed diff -r 6b5524b4f673 -r 38bb213f60ba logsui/logsserviceextension/group/logsserviceextension.mmp --- a/logsui/logsserviceextension/group/logsserviceextension.mmp Wed Sep 15 11:56:55 2010 +0300 +++ b/logsui/logsserviceextension/group/logsserviceextension.mmp Wed Oct 13 14:15:33 2010 +0300 @@ -91,7 +91,7 @@ LIBRARY cchclient.lib //Virtual Phonebook Engine -LIBRARY VPbkEng.lib +LIBRARY vpbkeng.lib //Base64 encoding LIBRARY imut.lib diff -r 6b5524b4f673 -r 38bb213f60ba logsui/logsserviceextension/src/clogsextpresentityidfetcher.cpp --- a/logsui/logsserviceextension/src/clogsextpresentityidfetcher.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/logsui/logsserviceextension/src/clogsextpresentityidfetcher.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -35,7 +35,7 @@ #include #include #include -#include // url field resource id +#include // url field resource id #include #include diff -r 6b5524b4f673 -r 38bb213f60ba logsui/logsserviceextension/src/clogsviewextension.cpp --- a/logsui/logsserviceextension/src/clogsviewextension.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/logsui/logsserviceextension/src/clogsviewextension.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -30,7 +30,7 @@ #include #include -#include +#include #include "MLogsEventGetter.h" #include "MLogsEvent.h" diff -r 6b5524b4f673 -r 38bb213f60ba phonebookengines/CntFindPlugin/group/CntFindPlugin.mmp --- a/phonebookengines/CntFindPlugin/group/CntFindPlugin.mmp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookengines/CntFindPlugin/group/CntFindPlugin.mmp Wed Oct 13 14:15:33 2010 +0300 @@ -42,5 +42,5 @@ END LIBRARY euser.lib -LIBRARY ecom.lib -LIBRARY FindUtil.lib +LIBRARY ECom.lib +LIBRARY findutil.lib diff -r 6b5524b4f673 -r 38bb213f60ba phonebookengines/CntSortPlugin/group/CntSortPlugin.mmp --- a/phonebookengines/CntSortPlugin/group/CntSortPlugin.mmp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookengines/CntSortPlugin/group/CntSortPlugin.mmp Wed Oct 13 14:15:33 2010 +0300 @@ -43,6 +43,6 @@ END LIBRARY euser.lib -LIBRARY ecom.lib +LIBRARY ECom.lib LIBRARY cntmodel.lib -LIBRARY SortUtil.lib +LIBRARY sortutil.lib diff -r 6b5524b4f673 -r 38bb213f60ba phonebookengines/VirtualPhonebook/VPbkCntModel/src/CContactStore.cpp --- a/phonebookengines/VirtualPhonebook/VPbkCntModel/src/CContactStore.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookengines/VirtualPhonebook/VPbkCntModel/src/CContactStore.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -45,7 +45,7 @@ #include "VoiceTagSupport.h" #include "CContactLink.h" #include "COwnContactLinkOperation.h" -#include +#include // Virtual Phonebook #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookengines/VirtualPhonebook/VPbkCntModel/src/CContactStoreDomain.cpp --- a/phonebookengines/VirtualPhonebook/VPbkCntModel/src/CContactStoreDomain.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookengines/VirtualPhonebook/VPbkCntModel/src/CContactStoreDomain.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -35,7 +35,7 @@ #include #include #include -#include +#include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookengines/VirtualPhonebook/VPbkCntModel/src/CFieldFactory.cpp --- a/phonebookengines/VirtualPhonebook/VPbkCntModel/src/CFieldFactory.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookengines/VirtualPhonebook/VPbkCntModel/src/CFieldFactory.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -26,7 +26,7 @@ #include #include #include -#include +#include // System includes #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookengines/VirtualPhonebook/VPbkCntModel/src/CFilteredContactView.cpp --- a/phonebookengines/VirtualPhonebook/VPbkCntModel/src/CFilteredContactView.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookengines/VirtualPhonebook/VPbkCntModel/src/CFilteredContactView.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -23,7 +23,7 @@ #include "CContactStore.h" #include "CFieldFactory.h" #include "CCustomFilteredContactView.h" -#include +#include #include "VPbkCntModelRemoteViewPreferences.h" #include "NamedRemoteViewViewDefinitionStoreUtility.h" diff -r 6b5524b4f673 -r 38bb213f60ba phonebookengines/VirtualPhonebook/VPbkCntModel/src/CFilteredGroupView.cpp --- a/phonebookengines/VirtualPhonebook/VPbkCntModel/src/CFilteredGroupView.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookengines/VirtualPhonebook/VPbkCntModel/src/CFilteredGroupView.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -23,7 +23,7 @@ #include "CContactStore.h" #include "CFieldFactory.h" #include "CCustomFilteredGroupView.h" -#include +#include #include "VPbkCntModelRemoteViewPreferences.h" #include "NamedRemoteViewViewDefinitionStoreUtility.h" diff -r 6b5524b4f673 -r 38bb213f60ba phonebookengines/VirtualPhonebook/VPbkEng/src/CVPbkContactManager.cpp --- a/phonebookengines/VirtualPhonebook/VPbkEng/src/CVPbkContactManager.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookengines/VirtualPhonebook/VPbkEng/src/CVPbkContactManager.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -40,7 +40,7 @@ #include #include #include -#include +#include #include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookengines/VirtualPhonebook/VPbkEng/src/CVPbkFieldTypeSelector.cpp --- a/phonebookengines/VirtualPhonebook/VPbkEng/src/CVPbkFieldTypeSelector.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookengines/VirtualPhonebook/VPbkEng/src/CVPbkFieldTypeSelector.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -27,7 +27,7 @@ #include #include #include -#include +#include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookengines/VirtualPhonebook/VPbkEng/src/CVPbkPhoneNumberMatchStrategy.cpp --- a/phonebookengines/VirtualPhonebook/VPbkEng/src/CVPbkPhoneNumberMatchStrategy.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookengines/VirtualPhonebook/VPbkEng/src/CVPbkPhoneNumberMatchStrategy.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -30,8 +30,8 @@ #include #include #include -#include -#include +#include +#include #include #include #include @@ -80,6 +80,7 @@ ~CVPbkPhoneNumberMatchStrategyImpl(); public: // Interface + CContactPhoneNumberParser* GetParser(); void MatchL(const TDesC& aPhoneNumber); TInt MaxMatchDigits() const; TArray StoresToMatch() const; @@ -772,6 +773,11 @@ } } +CContactPhoneNumberParser* CVPbkPhoneNumberMatchStrategyImpl::GetParser() + { + return iParser; + } + // Removes non-digit chars except plus form the beginning // Checks if number matches to one of defined types // @@ -786,11 +792,19 @@ const TChar KAsterisk = TChar('*'); const TChar KHash = TChar('#'); - HBufC* numberBuf = HBufC::NewL( aNumber.Length() ); + TInt format; + + HBufC* numberBuf = NULL; + TRAPD(err, numberBuf = HBufC::NewL( aNumber.Length() ) ); + // Error was found when Phone allocated memory for numberBuf + if( err != KErrNone ) + { + return ( format = EUnknown ); + } TPtr number = numberBuf->Des(); - if ( iParser ) + if ( GetParser() ) { - iParser->ExtractRawNumber( aNumber, number ); + GetParser()->ExtractRawNumber( aNumber, number ); } TInt pos = aNumber.Find( number ); @@ -804,8 +818,6 @@ aNumber.Copy( number ); } delete numberBuf; - - TInt format; if ( !aNumber.Match( KTwoZerosPattern ) && aNumber.Length() > 2 && aNumber[2] != KZero ) { @@ -1159,13 +1171,18 @@ CVPbkContactManager& aContactManager, MVPbkContactFindObserver& aObserver) { - if (aConfig.iMatchMode == EVPbkSequentialMatch) + // We do not support yet CVPbkPhoneNumberMatchStrategy::EVPbkBestMatchingFlag flag + // Skip it from the configuration + TConfig config = aConfig; + config.iMatchFlags &= ~CVPbkPhoneNumberMatchStrategy::EVPbkBestMatchingFlag; + + if (config.iMatchMode == EVPbkSequentialMatch) { - return CVPbkPhoneNumberSequentialMatchStrategy::NewL(aConfig, aContactManager, aObserver); + return CVPbkPhoneNumberSequentialMatchStrategy::NewL(config, aContactManager, aObserver); } else { - return CVPbkPhoneNumberParallelMatchStrategy::NewL(aConfig, aContactManager, aObserver); + return CVPbkPhoneNumberParallelMatchStrategy::NewL(config, aContactManager, aObserver); } } @@ -1178,7 +1195,24 @@ { InitMatchingL(); - iImpl->MatchL(aPhoneNumber); + // The client might be using CVPbkPhoneNumberMatchStrategy::EVPbkBestMatchingFlag + // flag, therefore the special chars could not be stripped off from the number + // The flag is not supported yet, therefore we need to strip off the special chars + HBufC* numberBuf = HBufC::NewL( aPhoneNumber.Length() ); + CleanupStack::PushL( numberBuf ); + TPtr number = numberBuf->Des(); + if ( iImpl->GetParser() ) + { + iImpl->GetParser()->ExtractRawNumber( aPhoneNumber, number ); + } + else + { + number.Copy( aPhoneNumber ); + } + + iImpl->MatchL(number); + + CleanupStack::PopAndDestroy(); // numberBuf } void CVPbkPhoneNumberMatchStrategy::BaseConstructL( diff -r 6b5524b4f673 -r 38bb213f60ba phonebookengines/VirtualPhonebook/VPbkEng/src/CVPbkTopContactOperation.cpp --- a/phonebookengines/VirtualPhonebook/VPbkEng/src/CVPbkTopContactOperation.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookengines/VirtualPhonebook/VPbkEng/src/CVPbkTopContactOperation.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -39,7 +39,7 @@ #include #include #include -#include +#include #include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookengines/VirtualPhonebook/VPbkEng/src/CVPbkxSPContactsOperation.cpp --- a/phonebookengines/VirtualPhonebook/VPbkEng/src/CVPbkxSPContactsOperation.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookengines/VirtualPhonebook/VPbkEng/src/CVPbkxSPContactsOperation.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -25,7 +25,7 @@ #include -#include +#include #include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookengines/VirtualPhonebook/VPbkEng/src/VPbkContactViewFilterBuilder.cpp --- a/phonebookengines/VirtualPhonebook/VPbkEng/src/VPbkContactViewFilterBuilder.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookengines/VirtualPhonebook/VPbkEng/src/VPbkContactViewFilterBuilder.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -24,7 +24,7 @@ #include #include #include -#include +#include // Virtual Phonebook Engine Utils #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookengines/VirtualPhonebook/VPbkEng/src/VPbkFieldTypeSelectorFactory.cpp --- a/phonebookengines/VirtualPhonebook/VPbkEng/src/VPbkFieldTypeSelectorFactory.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookengines/VirtualPhonebook/VPbkEng/src/VPbkFieldTypeSelectorFactory.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -24,10 +24,10 @@ #include #include #include -#include +#include #include #include -#include +#include #include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookengines/VirtualPhonebook/VPbkEng/src/VPbkUtils.cpp --- a/phonebookengines/VirtualPhonebook/VPbkEng/src/VPbkUtils.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookengines/VirtualPhonebook/VPbkEng/src/VPbkUtils.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -29,7 +29,7 @@ #include #include #include -#include +#include #include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookengines/VirtualPhonebook/VPbkSimStore/inc/CContact.h --- a/phonebookengines/VirtualPhonebook/VPbkSimStore/inc/CContact.h Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookengines/VirtualPhonebook/VPbkSimStore/inc/CContact.h Wed Oct 13 14:15:33 2010 +0300 @@ -233,20 +233,6 @@ /// Resets the contact state after contact operation void ResetContactOperationState(); - /** - * Remove empty field from aSimContact, these empty field was added - * in the sim contact before save it to keep the order of additional - * numbers in the USIM card. - */ - void RemoveAllEmptyFields( CVPbkSimContact& aSimContact ); - - /** - * Fill some empty field in the sim contact. hese empty field was added - * in the sim contact before save it to keep the order of additional - * numbers in the USIM card. - */ - void FillWithEmptyFieldsL() const; - private: // Data TStoreContactFieldCollection iFields; diff -r 6b5524b4f673 -r 38bb213f60ba phonebookengines/VirtualPhonebook/VPbkSimStore/inc/CSupportedFieldTypes.h --- a/phonebookengines/VirtualPhonebook/VPbkSimStore/inc/CSupportedFieldTypes.h Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookengines/VirtualPhonebook/VPbkSimStore/inc/CSupportedFieldTypes.h Wed Oct 13 14:15:33 2010 +0300 @@ -26,7 +26,6 @@ // FORWARD DECLARATIONS struct TVPbkGsmStoreProperty; -struct TVPbkUSimStoreProperty; namespace VPbkSimStore { @@ -53,15 +52,6 @@ static CSupportedFieldTypes* NewL( const CFieldTypeMappings& aFieldTypeMappings, TVPbkGsmStoreProperty& aSimStoreProperty ); - /** - * Two-phased constructor. - * @param aSimStoreProperty sim store properties - * @return a new instance of this class - */ - static CSupportedFieldTypes* NewL( - const CFieldTypeMappings& aFieldTypeMappings, - TVPbkGsmStoreProperty& aSimStoreProperty, - TVPbkUSimStoreProperty& aUSimStoreProperty ); /** * Destructor. @@ -119,8 +109,7 @@ * By default Symbian 2nd phase constructor is private. */ void ConstructL( const CFieldTypeMappings& aFieldTypeMappings, - TVPbkGsmStoreProperty& aSimStoreProperty, - TVPbkUSimStoreProperty* aUSimStoreProperty = NULL ); + TVPbkGsmStoreProperty& aSimStoreProperty ); private: // Data ///Ref: An array for the supported types. Doesn't own types diff -r 6b5524b4f673 -r 38bb213f60ba phonebookengines/VirtualPhonebook/VPbkSimStore/rss/VPbkSimStoreRes.rss --- a/phonebookengines/VirtualPhonebook/VPbkSimStore/rss/VPbkSimStoreRes.rss Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookengines/VirtualPhonebook/VPbkSimStore/rss/VPbkSimStoreRes.rss Wed Oct 13 14:15:33 2010 +0300 @@ -105,107 +105,4 @@ }; } -// For USIM with additional numbers -RESOURCE FIELDTYPE_MAPPINGS r_vpbk_usim_versit_field_type_mappings - { - items = - { - // SIM name = Last name - VERSIT_FIELDTYPE_MAPPING - { - simFieldId = EVPbkSimName; - versitProperty = VBK_FIELD_VERSIT_PROPERTY - { - name = EVPbkVersitNameN; - subField = EVPbkVersitSubFieldFamilyName; - }; - }, - // USIM second name = reading in japanese variant - VERSIT_FIELDTYPE_MAPPING - { - simFieldId = EVPbkSimReading; - versitProperty = VBK_FIELD_VERSIT_PROPERTY - { - name = EVPbkVersitNameSOUND; - subField = EVPbkVersitSubFieldFamilyNamePronunciation; - }; - }, - // SIM GSM number = general mobile - VERSIT_FIELDTYPE_MAPPING - { - simFieldId = EVPbkSimGsmNumber; - versitProperty = VBK_FIELD_VERSIT_PROPERTY - { - name = EVPbkVersitNameTEL; - parameters = { EVPbkVersitParamCELL }; - }; - }, - // USIM additional numbers = general mobile - VERSIT_FIELDTYPE_MAPPING - { - simFieldId = EVPbkSimAdditionalNumber; - versitProperty = VBK_FIELD_VERSIT_PROPERTY - { - name = EVPbkVersitNameTEL; - parameters = { EVPbkVersitParamCELL }; - }; - }, - // USIM additional numbers = home landphone - VERSIT_FIELDTYPE_MAPPING - { - simFieldId = EVPbkSimAdditionalNumber1; - versitProperty = VBK_FIELD_VERSIT_PROPERTY - { - name = EVPbkVersitNameTEL; - parameters = { EVPbkVersitParamHOME }; - }; - }, - // USIM additional numbers = work landphone - VERSIT_FIELDTYPE_MAPPING - { - simFieldId = EVPbkSimAdditionalNumber2; - versitProperty = VBK_FIELD_VERSIT_PROPERTY - { - name = EVPbkVersitNameTEL; - parameters = { EVPbkVersitParamWORK }; - }; - }, - // USIM additional numbers = general fax - VERSIT_FIELDTYPE_MAPPING - { - simFieldId = EVPbkSimAdditionalNumber3; - versitProperty = VBK_FIELD_VERSIT_PROPERTY - { - name = EVPbkVersitNameTEL; - parameters = { EVPbkVersitParamFAX }; - }; - }, - /*you can define more field type mappings here to adapt the - * increase of the additional number field of USIM card.*/ - // USIM email = general email - VERSIT_FIELDTYPE_MAPPING - { - simFieldId = EVPbkSimEMailAddress; - versitProperty = VBK_FIELD_VERSIT_PROPERTY - { - name = EVPbkVersitNameEMAIL; - parameters = - { - EVPbkVersitParamINTERNET - }; - }; - }, - // USIM second name = nick name in variants other than japan - VERSIT_FIELDTYPE_MAPPING - { - simFieldId = EVPbkSimNickName; - versitProperty = VBK_FIELD_VERSIT_PROPERTY - { - name = EVPbkVersitNameX; - extensionName = "X-NICKNAME"; - }; - } - }; - } - // End of File diff -r 6b5524b4f673 -r 38bb213f60ba phonebookengines/VirtualPhonebook/VPbkSimStore/src/CContact.cpp --- a/phonebookengines/VirtualPhonebook/VPbkSimStore/src/CContact.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookengines/VirtualPhonebook/VPbkSimStore/src/CContact.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -30,8 +30,6 @@ #include #include #include -#include -#include #include #include #include @@ -50,8 +48,6 @@ KNewContact = 1 }; -const TInt KDefinedAnrFieldTypeCount = 3; // count of defined additional number types - // ============================= LOCAL FUNCTIONS =============================== MVPbkContactObserver::TContactOp ConvertContactOperation( @@ -102,35 +98,15 @@ break; } case EVPbkSimGsmNumber: // FALLTHROUGH - case EVPbkSimAdditionalNumberLast: // the EVPbkSimAdditionalNumber + case EVPbkSimAdditionalNumber: { ++result; // always at least one number if ( aUsimProp.iMaxNumOfAnrs != KVPbkSimStorePropertyUndefined ) { - if ( !FeatureManager::FeatureSupported( - KFeatureIdFfTdClmcontactreplicationfromphonebooktousimcard ) ) - { - result += aUsimProp.iMaxNumOfAnrs; - } - else - { - if ( aUsimProp.iMaxNumOfAnrs - KDefinedAnrFieldTypeCount > 0 ) - { - result += (aUsimProp.iMaxNumOfAnrs - KDefinedAnrFieldTypeCount); - } - } + result += aUsimProp.iMaxNumOfAnrs; } break; } - case EVPbkSimAdditionalNumber1: - result = aUsimProp.iMaxNumOfAnrs >= 1 ? 1 : 0; // according the max number of anrs. - break; - case EVPbkSimAdditionalNumber2: - result = aUsimProp.iMaxNumOfAnrs >= 2 ? 1 : 0; - break; - case EVPbkSimAdditionalNumber3: - result = aUsimProp.iMaxNumOfAnrs >= 3 ? 1 : 0; - break; default: { // Do nothing @@ -143,7 +119,6 @@ namespace VPbkSimStore { -_LIT( KEmptyData, "+" ); //the empty data, modifiy this string to keep its a special string. // ============================ MEMBER FUNCTIONS =============================== // ----------------------------------------------------------------------------- @@ -169,11 +144,6 @@ { iFlags.Set( KNewContact ); } - if( FeatureManager::FeatureSupported( - KFeatureIdFfTdClmcontactreplicationfromphonebooktousimcard ) ) - { - RemoveAllEmptyFields( aSimContact ); // remove the empty contacts where added before save. - } iFields.SetContact( *this, aSimContact ); iAsyncOp = new( ELeave ) VPbkEngUtils::CVPbkAsyncOperation; } @@ -204,126 +174,6 @@ } // ----------------------------------------------------------------------------- -// CContact::RemoveAllEmptyFields -// ----------------------------------------------------------------------------- -// -void CContact::RemoveAllEmptyFields( CVPbkSimContact& aSimContact ) - { - TInt i = aSimContact.FieldCount() - 1 ; - while( i >= 0 ) - { - CVPbkSimCntField& cntField = aSimContact.FieldAt( i ); - TVPbkSimCntFieldType simCntType = cntField.Type(); - if( simCntType == EVPbkSimGsmNumber - || simCntType == EVPbkSimAdditionalNumber1 - || simCntType == EVPbkSimAdditionalNumber2 - || simCntType == EVPbkSimAdditionalNumber3 - || simCntType == EVPbkSimAdditionalNumberLast ) - { - if( cntField. Data().Compare( KEmptyData ) == 0 ) - { - aSimContact.DeleteField( i ); - } - } - i --; - } - } - -// ----------------------------------------------------------------------------- -// CContact::FillWithEmptyFieldsL -// ----------------------------------------------------------------------------- -// -void CContact::FillWithEmptyFieldsL() const - { - RPointerArray & contactFieldArray = iSimContact->FieldArray(); - TInt i = contactFieldArray.Count() - 1 ; - while( i >= 0 ) // remove all empty content. - { - CVPbkSimCntField& cntField = iSimContact->FieldAt( i ); - TVPbkSimCntFieldType type = cntField.Type(); - if( cntField. Data().Length() == 0 ) - { - iSimContact->DeleteField( i ); - } - i --; - } - - if( contactFieldArray.Count() == 0 ) // no un-empty fields. - { - return; - } - CVPbkSimContact::TFieldLookup lookupAdnNumber = - iSimContact->FindField( EVPbkSimAdditionalNumber ); - if( lookupAdnNumber.EndOfLookup()) // if there is no additional number in the contact then no need to add placeholder - { - return; - } - RPointerArray tempFieldArray; - CleanupClosePushL( tempFieldArray ); - // mappings - CFieldTypeMappings & mappings = iParentStore.FieldTypeMappings(); - // supported types. - const CSupportedFieldTypes& supportedTypes = iParentStore.SupportedFieldTypes(); - - // check all supported field types in the fields list. If not exist created new. - // if data length is 0, set data to empty data. - for( int i = 0; i < supportedTypes.FieldTypeCount(); i ++ ) - { - const MVPbkFieldType& fieldType = supportedTypes.FieldTypeAt( i ); - TVPbkSimCntFieldType simCntType = mappings.Match( fieldType ); - if( simCntType == EVPbkSimGsmNumber - || simCntType == EVPbkSimAdditionalNumber1 - || simCntType == EVPbkSimAdditionalNumber2 - || simCntType == EVPbkSimAdditionalNumber3 - || simCntType == EVPbkSimAdditionalNumberLast ) - { - CVPbkSimCntField * field = NULL; - CVPbkSimContact::TFieldLookup lookup = - iSimContact->FindField( simCntType ); - - if( lookup.EndOfLookup() ) - { - field= iSimContact->CreateFieldLC( simCntType ); - field->SetDataL( KEmptyData ); - tempFieldArray.Append( field ); - CleanupStack::Pop(); - } - else - { - field = contactFieldArray[lookup.Index()]; - if( field->Data().Length() == 0 ) - { - field->SetDataL( KEmptyData ); - } - if( simCntType == EVPbkSimAdditionalNumber1 - || simCntType == EVPbkSimAdditionalNumber2 - || simCntType == EVPbkSimAdditionalNumber3 ) - { - contactFieldArray.Remove( lookup.Index() ); - tempFieldArray.AppendL( field ); - } - } - } - } - TInt j = contactFieldArray.Count() - 1; - while( j >= 0 ) // EVPbkSimAdditionalNumberLast type field will append at last. - { - if( contactFieldArray[j]->Type() == EVPbkSimAdditionalNumberLast ) - { - tempFieldArray.AppendL( contactFieldArray[ j ] ); - contactFieldArray.Remove( j ); - } - j --; - } - for( int i = 0; i < tempFieldArray.Count(); i ++ ) - { - contactFieldArray.AppendL( tempFieldArray[i]); - } - tempFieldArray.Reset(); - CleanupStack::Pop(); - } - -// ----------------------------------------------------------------------------- // CContact::ParentObject // ----------------------------------------------------------------------------- // @@ -451,7 +301,7 @@ VPbkSimStore::Panic( ESimFieldTypeNotFound ) ); if ( simType == EVPbkSimGsmNumber || - simType == EVPbkSimAdditionalNumberLast ) //the same field type as EVPbkSimGsmNumber + simType == EVPbkSimAdditionalNumber ) { // EVPbkSimGsmNumber and EVPbkSimAdditionalNumber maps to same // VPbk field type. A sim contact can have only one EVPbkSimGsmNumber @@ -470,7 +320,7 @@ } else { - simType = EVPbkSimAdditionalNumberLast; + simType = EVPbkSimAdditionalNumber; } } @@ -571,10 +421,6 @@ } // From the client point of view the MVPbkStoreContact is constant but // implementation needs a non const contact. - if( FeatureManager::FeatureSupported( KFeatureIdFfTdClmcontactreplicationfromphonebooktousimcard ) ) - { - FillWithEmptyFieldsL(); - } iStoreOperation = iSimContact->SaveL( const_cast( *this )); iObserver = &aObserver; } @@ -652,12 +498,6 @@ MVPbkContactObserver* observer = iObserver; ResetContactOperationState(); - - // remove filled placeholder fields. - if( vpbkOpResult.iOpCode == MVPbkContactObserver::EContactCommit ) - { - RemoveAllEmptyFields( *iSimContact ); - } observer->ContactOperationCompleted( vpbkOpResult ); } @@ -676,12 +516,6 @@ MVPbkContactObserver* observer = iObserver; ResetContactOperationState(); MVPbkContactObserver::TContactOp op = ConvertContactOperation( aEvent ); - - // remove filled placeholder fields. - if( op == MVPbkContactObserver::EContactCommit ) - { - RemoveAllEmptyFields( *iSimContact ); - } observer->ContactOperationFailed( op, aError, EFalse ); } diff -r 6b5524b4f673 -r 38bb213f60ba phonebookengines/VirtualPhonebook/VPbkSimStore/src/CContactStore.cpp --- a/phonebookengines/VirtualPhonebook/VPbkSimStore/src/CContactStore.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookengines/VirtualPhonebook/VPbkSimStore/src/CContactStore.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -48,7 +48,6 @@ #include #include -#include namespace VPbkSimStore { // LOCAL @@ -581,38 +580,17 @@ void CContactStore::StoreReady( MVPbkSimCntStore& /*aStore*/ ) { TVPbkGsmStoreProperty gsmProperties; - TInt res = KErrNone; - if( !FeatureManager::FeatureSupported( KFeatureIdFfTdClmcontactreplicationfromphonebooktousimcard ) ) - { - res= iNativeStore->GetGsmStoreProperties( gsmProperties ); - if ( res == KErrNone ) - { - delete iSupportedFieldTypes; - iSupportedFieldTypes = NULL; - TRAP( res, iSupportedFieldTypes = CSupportedFieldTypes::NewL( - iStoreDomain.FieldTypeMappings(), gsmProperties ) ); - iSimStoreCapabilities = gsmProperties.iCaps; - } - } - else // if contact replication from phonebook to usim card. + TInt res = iNativeStore->GetGsmStoreProperties( gsmProperties ); + + if ( res == KErrNone ) { - TInt resGsm = iNativeStore->GetGsmStoreProperties( gsmProperties ); - TVPbkUSimStoreProperty usimProperties; - TInt resUsim = iNativeStore->GetUSimStoreProperties( usimProperties ); - if( resGsm == KErrNone && resUsim == KErrNone ) - { - delete iSupportedFieldTypes; - iSupportedFieldTypes = NULL; - TRAP( res, iSupportedFieldTypes = CSupportedFieldTypes::NewL( - iStoreDomain.FieldTypeMappings(), gsmProperties, usimProperties ) ); - iSimStoreCapabilities = gsmProperties.iCaps; - } - else - { - res = ( resGsm != KErrNone ? resGsm : resUsim ); - } + delete iSupportedFieldTypes; + iSupportedFieldTypes = NULL; + TRAP( res, iSupportedFieldTypes = CSupportedFieldTypes::NewL( + iStoreDomain.FieldTypeMappings(), gsmProperties ) ); + iSimStoreCapabilities = gsmProperties.iCaps; } - + if ( res != KErrNone ) { iStoreState = EStoreNotAvailable; diff -r 6b5524b4f673 -r 38bb213f60ba phonebookengines/VirtualPhonebook/VPbkSimStore/src/CContactStoreDomain.cpp --- a/phonebookengines/VirtualPhonebook/VPbkSimStore/src/CContactStoreDomain.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookengines/VirtualPhonebook/VPbkSimStore/src/CContactStoreDomain.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -30,13 +30,12 @@ #include #include #include -#include +#include #include #include #include #include -#include namespace VPbkSimStore { @@ -81,20 +80,10 @@ VPbkEngUtils::RLocalizedResourceFile resFile; resFile.OpenLC( iFs, KVPbkRomFileDrive, KDC_RESOURCE_FILES_DIR, KResFile ); - FeatureManager::InitializeLibL(); + TResourceReader resReader; - - if ( !FeatureManager::FeatureSupported( - KFeatureIdFfTdClmcontactreplicationfromphonebooktousimcard ) ) - { - resReader.SetBuffer( resFile.AllocReadLC( - R_VPBK_VERSIT_FIELD_TYPE_MAPPINGS ) ); - } - else - { - resReader.SetBuffer( resFile.AllocReadLC( - R_VPBK_USIM_VERSIT_FIELD_TYPE_MAPPINGS ) ); - } + resReader.SetBuffer( resFile.AllocReadLC( + R_VPBK_VERSIT_FIELD_TYPE_MAPPINGS ) ); // Read versit types iFieldTypeMappings->InitVersitMappingsL( resReader ); resReader.SetBuffer( resFile.AllocReadLC( @@ -164,7 +153,6 @@ delete iContactStoreList; delete iTextStore; iFs.Close(); - FeatureManager::UnInitializeLib(); } // ----------------------------------------------------------------------------- diff -r 6b5524b4f673 -r 38bb213f60ba phonebookengines/VirtualPhonebook/VPbkSimStore/src/CSupportedFieldTypes.cpp --- a/phonebookengines/VirtualPhonebook/VPbkSimStore/src/CSupportedFieldTypes.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookengines/VirtualPhonebook/VPbkSimStore/src/CSupportedFieldTypes.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -44,55 +44,23 @@ // void CSupportedFieldTypes::ConstructL( const CFieldTypeMappings& aFieldTypeMappings, - TVPbkGsmStoreProperty& aSimStoreProperty, - TVPbkUSimStoreProperty* aUSimStoreProperty ) + TVPbkGsmStoreProperty& aSimStoreProperty ) { // SIM supports always the name field const MVPbkFieldType* vpbkType = aFieldTypeMappings.Match( EVPbkSimName ); iSupportedTypes.AppendL( vpbkType ); // SIM supports always one number field vpbkType = aFieldTypeMappings.Match( EVPbkSimGsmNumber ); - const MVPbkFieldType* vpbkGsmType = vpbkType; iSupportedTypes.AppendL( vpbkType ); // USIM can support additional numbers if ( aSimStoreProperty.iCaps & VPbkSimStoreImpl::KAdditionalNumUsed ) { - if( aUSimStoreProperty ) + vpbkType = aFieldTypeMappings.Match( EVPbkSimAdditionalNumber ); + // Check if the VPbk type is different than the type for + // already added EVPbkSimGsmNumber + if ( iSupportedTypes.Find( vpbkType ) == KErrNotFound ) { - for( TInt i = 1; i <= aUSimStoreProperty->iMaxNumOfAnrs; i ++ ) - { - TVPbkSimCntFieldType type; - switch( i ) - { - case 1: // first additional number field type - type = EVPbkSimAdditionalNumber1; - break; - case 2: // second additional number field type - type = EVPbkSimAdditionalNumber2; - break; - case 3: // third additional number field type - type = EVPbkSimAdditionalNumber3; - break; - default: // four and so on - type = EVPbkSimAdditionalNumberLast; - break; - } - vpbkType = aFieldTypeMappings.Match( type ); - if( !( vpbkGsmType->IsSame( *vpbkType ) ) ) // if not the same as GSM type. - { - iSupportedTypes.AppendL( vpbkType ); - } - } - } - else - { - vpbkType = aFieldTypeMappings.Match( EVPbkSimAdditionalNumber ); - // Check if the VPbk type is different than the type for - // already added EVPbkSimGsmNumber - if ( iSupportedTypes.Find( vpbkType ) == KErrNotFound ) - { - iSupportedTypes.AppendL( vpbkType ); - } + iSupportedTypes.AppendL( vpbkType ); } } if ( aSimStoreProperty.iCaps & VPbkSimStoreImpl::KSecondNameUsed ) @@ -125,23 +93,6 @@ return self; } -// ----------------------------------------------------------------------------- -// CSupportedFieldTypes::NewL -// Two-phased constructor. -// ----------------------------------------------------------------------------- -// -CSupportedFieldTypes* CSupportedFieldTypes::NewL( - const CFieldTypeMappings& aFieldTypeMappings, - TVPbkGsmStoreProperty& aSimStoreProperty, - TVPbkUSimStoreProperty& aUSimStoreProperty ) - { - CSupportedFieldTypes* self = new( ELeave ) CSupportedFieldTypes; - CleanupStack::PushL( self ); - self->ConstructL( aFieldTypeMappings, aSimStoreProperty, &aUSimStoreProperty ); - CleanupStack::Pop( self ); - return self; - } - // Destructor CSupportedFieldTypes::~CSupportedFieldTypes() { diff -r 6b5524b4f673 -r 38bb213f60ba phonebookengines/VirtualPhonebook/VPbkSimStoreCommon/src/CVPbkSimFieldTypeFilter.cpp --- a/phonebookengines/VirtualPhonebook/VPbkSimStoreCommon/src/CVPbkSimFieldTypeFilter.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookengines/VirtualPhonebook/VPbkSimStoreCommon/src/CVPbkSimFieldTypeFilter.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -112,11 +112,8 @@ ret = ESimFilterCriteriaGsmNumber; break; } - - case EVPbkSimAdditionalNumber1: // FALLTHROUGH - case EVPbkSimAdditionalNumber2: // FALLTHROUGH - case EVPbkSimAdditionalNumber3: // FALLTHROUGH - case EVPbkSimAdditionalNumberLast: // the same as EVPbkSimAdditionalNumber. + + case EVPbkSimAdditionalNumber: { ret = ESimFilterCriteriaAdditionalNumber; break; diff -r 6b5524b4f673 -r 38bb213f60ba phonebookengines/VirtualPhonebook/VPbkSimStoreImpl/src/CVPbkETelCntConverter.cpp --- a/phonebookengines/VirtualPhonebook/VPbkSimStoreImpl/src/CVPbkETelCntConverter.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookengines/VirtualPhonebook/VPbkSimStoreImpl/src/CVPbkETelCntConverter.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -61,10 +61,7 @@ break; } case EVPbkSimGsmNumber: // FALLTHROUGH - case EVPbkSimAdditionalNumber1: // FALLTHROUGH - case EVPbkSimAdditionalNumber2: // FALLTHROUGH - case EVPbkSimAdditionalNumber3: // FALLTHROUGH - case EVPbkSimAdditionalNumberLast: // same as EVPbkSimAdditionalNumber + case EVPbkSimAdditionalNumber: { result = RMobilePhoneBookStore::ETagPBNumber; break; @@ -190,10 +187,7 @@ const TDesC& data = aField.Data(); if ( data.Length() > 0 ) { - if( aField.Type() == EVPbkSimAdditionalNumber1 - || aField.Type() == EVPbkSimAdditionalNumber2 - || aField.Type() == EVPbkSimAdditionalNumber3 - || aField.Type()== EVPbkSimAdditionalNumberLast ) // all these four types are all additional field types. + if ( aField.Type() == EVPbkSimAdditionalNumber ) { // Additional number needs own tag that must be added before data aETelBuffer.AddNewNumberTag(); diff -r 6b5524b4f673 -r 38bb213f60ba phonebookengines/VirtualPhonebook/VPbkSimStoreImpl/src/CVPbkSimCntField.cpp --- a/phonebookengines/VirtualPhonebook/VPbkSimStoreImpl/src/CVPbkSimCntField.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookengines/VirtualPhonebook/VPbkSimStoreImpl/src/CVPbkSimCntField.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -77,39 +77,36 @@ TVPbkUSimStoreProperty uprop; TInt err = aStore.GetUSimStoreProperties( uprop ); if( err == KErrNone ) - { - switch ( aType ) - { - case EVPbkSimAdditionalNumber1: // FALLTHROUGH - case EVPbkSimAdditionalNumber2: // FALLTHROUGH - case EVPbkSimAdditionalNumber3: // FALLTHROUGH - case EVPbkSimAdditionalNumberLast: // same as EVPbkSimAdditionalNumber - { - result = uprop.iMaxAnrLength; - break; - } - case EVPbkSimReading: // FALLTHROUGH - case EVPbkSimNickName: - { - result = uprop.iMaxScndNameLength; - break; - } - case EVPbkSimEMailAddress: - { - result = uprop.iMaxEmailLength; - break; - } - case EVPbkSimGroupName: - { - result = uprop.iMaxGroupNameLength; - break; - } - default: - { - break; - } - } - } + { + switch ( aType ) + { + case EVPbkSimAdditionalNumber: + { + result = uprop.iMaxAnrLength; + break; + } + case EVPbkSimReading: + case EVPbkSimNickName: + { + result = uprop.iMaxScndNameLength; + break; + } + case EVPbkSimEMailAddress: + { + result = uprop.iMaxEmailLength; + break; + } + case EVPbkSimGroupName: + { + result = uprop.iMaxGroupNameLength; + break; + } + default: + { + break; + } + } + } } return (TInt16)result; } @@ -292,11 +289,7 @@ // Max length must be calculated for number types only because other // types are not splitted in several records in SIM card. - if ( iType == EVPbkSimGsmNumber - || iType == EVPbkSimAdditionalNumber1 - || iType == EVPbkSimAdditionalNumber2 - || iType == EVPbkSimAdditionalNumber3 - || iType == EVPbkSimAdditionalNumberLast ) // same as EVPbkSimAdditionalNumber + if ( iType == EVPbkSimGsmNumber || iType == EVPbkSimAdditionalNumber ) { TInt currentMaxLength = MaxLength( iType, iParentContact.ParentStore() ); diff -r 6b5524b4f673 -r 38bb213f60ba phonebookengines/VirtualPhonebook/VPbkSimStoreImpl/src/CVPbkSimContact.cpp --- a/phonebookengines/VirtualPhonebook/VPbkSimStoreImpl/src/CVPbkSimContact.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookengines/VirtualPhonebook/VPbkSimStoreImpl/src/CVPbkSimContact.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -18,7 +18,6 @@ // INCLUDE FILES -#include #include "CVPbkSimContact.h" #include "CVPbkSimCntField.h" @@ -51,10 +50,6 @@ if ( aETelContact ) { SetL( *aETelContact ); - if( FeatureManager::FeatureSupported( KFeatureIdFfTdClmcontactreplicationfromphonebooktousimcard ) ) - { - IndentifyAdditionalFields(); - } } } @@ -239,37 +234,6 @@ } // ----------------------------------------------------------------------------- -// CVPbkSimContact::IndentifyAdditionalFields() -// ----------------------------------------------------------------------------- -// -void CVPbkSimContact::IndentifyAdditionalFields() - { - TInt anrNumberFieldCount = 0; - for( int i = 0; i < iFieldArray.Count(); i ++ ) - { - if( iFieldArray[i]->Type() == EVPbkSimAdditionalNumber ) - { - anrNumberFieldCount ++; - switch( anrNumberFieldCount ) - { - case 1: - iFieldArray[i]->SetType( EVPbkSimAdditionalNumber1 ); - break; - case 2: - iFieldArray[i]->SetType( EVPbkSimAdditionalNumber2 ); - break; - case 3: - iFieldArray[i]->SetType( EVPbkSimAdditionalNumber3 ); - break; - default: - iFieldArray[i]->SetType( EVPbkSimAdditionalNumberLast ); - break; - } - } - } - } - -// ----------------------------------------------------------------------------- // CVPbkSimContact::CreateETelContactL // ----------------------------------------------------------------------------- // diff -r 6b5524b4f673 -r 38bb213f60ba phonebookengines/VirtualPhonebook/VPbkSimStoreImpl/src/CVPbkSimContactBase.cpp --- a/phonebookengines/VirtualPhonebook/VPbkSimStoreImpl/src/CVPbkSimContactBase.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookengines/VirtualPhonebook/VPbkSimStoreImpl/src/CVPbkSimContactBase.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -88,27 +88,11 @@ aLookup.SetPos( KErrNotFound ); for ( ; i < count; ++i ) { - if( aLookup.Type() == EVPbkSimAdditionalNumber ) + if ( ConstFieldAt( i ).Type() == aLookup.Type() ) { - const CVPbkSimCntField& field = ConstFieldAt( i ); - if ( field.Type() == EVPbkSimAdditionalNumber1 - || field.Type() == EVPbkSimAdditionalNumber2 - || field.Type() == EVPbkSimAdditionalNumber3 - || field.Type() == EVPbkSimAdditionalNumberLast ) // the same as EVPbkSimAdditionalNumber - { - aLookup.SetIndex( i ); - aLookup.SetPos( i + 1 ); - break; - } - } - else - { - if ( ConstFieldAt( i ).Type() == aLookup.Type() ) - { - aLookup.SetIndex( i ); - aLookup.SetPos( i + 1 ); - break; - } + aLookup.SetIndex( i ); + aLookup.SetPos( i + 1 ); + break; } } } diff -r 6b5524b4f673 -r 38bb213f60ba phonebookengines/VirtualPhonebook/VPbkVCardEng/inc/CVPbkVCardAttributeHandler.h --- a/phonebookengines/VirtualPhonebook/VPbkVCardEng/inc/CVPbkVCardAttributeHandler.h Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookengines/VirtualPhonebook/VPbkVCardEng/inc/CVPbkVCardAttributeHandler.h Wed Oct 13 14:15:33 2010 +0300 @@ -36,11 +36,9 @@ /** * Decides whether to create an attribute from aParameter or not. * @param aParameter Field type parameter - * @param aFieldTypeName Field type name * @return ETrue if creates the attribute, otherwise EFalse. */ - TBool CreateAttributeL( TVPbkFieldTypeParameter aParameter, - TVPbkFieldTypeName aFieldTypeName ); + TBool CreateAttributeL( TVPbkFieldTypeParameter aParameter ); /** * Returns the created attribute or NULL. diff -r 6b5524b4f673 -r 38bb213f60ba phonebookengines/VirtualPhonebook/VPbkVCardEng/src/CVPbkVCardAttributeHandler.cpp --- a/phonebookengines/VirtualPhonebook/VPbkVCardEng/src/CVPbkVCardAttributeHandler.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookengines/VirtualPhonebook/VPbkVCardEng/src/CVPbkVCardAttributeHandler.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -36,29 +36,14 @@ delete iAttribute; } -TBool CVPbkVCardAttributeHandler::CreateAttributeL(TVPbkFieldTypeParameter aParameter, - TVPbkFieldTypeName aFieldTypeName ) +TBool CVPbkVCardAttributeHandler::CreateAttributeL(TVPbkFieldTypeParameter aParameter) { TBool retval(EFalse); delete iAttribute; iAttribute = NULL; - if ( EVPbkVersitParamPREF == aParameter ) + if (aParameter == EVPbkVersitParamPREF) { - if ( EVPbkVersitNameURL == aFieldTypeName ) - { - // Create default attribute for URL field. - iAttribute = CVPbkDefaultAttribute::NewL( EVPbkDefaultTypeOpenLink ); - } - else if ( EVPbkVersitNameIMPP == aFieldTypeName ) - { - // Create default attribute for IMPP field. - iAttribute = CVPbkDefaultAttribute::NewL( EVPbkDefaultTypeChat ); - } - else - { - // Create default attribute for other fields. - iAttribute = CVPbkDefaultAttribute::NewL( EVPbkDefaultTypePhoneNumber ); - } + iAttribute = CVPbkDefaultAttribute::NewL(EVPbkDefaultTypePhoneNumber); retval = ETrue; } return retval; diff -r 6b5524b4f673 -r 38bb213f60ba phonebookengines/VirtualPhonebook/VPbkVCardEng/src/CVPbkVCardCompactBCardImporter.cpp --- a/phonebookengines/VirtualPhonebook/VPbkVCardEng/src/CVPbkVCardCompactBCardImporter.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookengines/VirtualPhonebook/VPbkVCardEng/src/CVPbkVCardCompactBCardImporter.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -24,7 +24,7 @@ #include "CVPbkVCardCompactBCardImporter.h" #include "VPbkVCardEngError.h" #include "CVPbkVCardFieldTypeProperty.h" -#include +#include // From Virtual Phonebook engine #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookengines/VirtualPhonebook/VPbkVCardEng/src/CVPbkVCardData.cpp --- a/phonebookengines/VirtualPhonebook/VPbkVCardEng/src/CVPbkVCardData.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookengines/VirtualPhonebook/VPbkVCardEng/src/CVPbkVCardData.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -24,7 +24,7 @@ #include #include -#include +#include #include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookengines/VirtualPhonebook/VPbkVCardEng/src/CVPbkVCardPropertyParser.cpp --- a/phonebookengines/VirtualPhonebook/VPbkVCardEng/src/CVPbkVCardPropertyParser.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookengines/VirtualPhonebook/VPbkVCardEng/src/CVPbkVCardPropertyParser.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -143,8 +143,7 @@ TVPbkFieldTypeParameter fieldTypeParam = static_cast( TVPbkMappingsFindTool::FindIdByName( *name, paramArray ) ); - if (!iAttributeHandler.CreateAttributeL(fieldTypeParam, - iVersitProperty.Name())) + if (!iAttributeHandler.CreateAttributeL(fieldTypeParam)) { // No attribute created from fieldTypeParam, // so add to parameters list @@ -164,8 +163,7 @@ TVPbkFieldTypeParameter fieldTypeParam = static_cast( TVPbkMappingsFindTool::FindIdByName( *name, paramArray ) ); - if (!iAttributeHandler.CreateAttributeL(fieldTypeParam, - iVersitProperty.Name())) + if (!iAttributeHandler.CreateAttributeL(fieldTypeParam)) { // No attribute created from fieldTypeParam, // so add to parameters list diff -r 6b5524b4f673 -r 38bb213f60ba phonebookengines/VirtualPhonebook/group/VPbkCntModel.mmp --- a/phonebookengines/VirtualPhonebook/group/VPbkCntModel.mmp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookengines/VirtualPhonebook/group/VPbkCntModel.mmp Wed Oct 13 14:15:33 2010 +0300 @@ -140,14 +140,14 @@ LIBRARY euser.lib efsrv.lib bafl.lib estor.lib LIBRARY cntmodel.lib cntview.lib sysutil.lib -LIBRARY CommonEngine.lib diskspacereserver.lib ecom.lib -LIBRARY VPbkEng.lib VPbkEngUtils.lib pbkeng.lib +LIBRARY commonengine.lib diskspacereserver.lib ecom.lib +LIBRARY VPbkEng.lib VPbkEngUtils.lib PbkEng.lib LIBRARY featmgr.lib cone.lib // Only SIND voice tags are supported and only if SIND AIW service // is not on. Dependency to NssVASApi.lib can be removed when RD_SIND_VIA_AIW // is removed from platform and SIND AIW service is always on. #if defined (__SIND) && !defined (RD_SIND_VIA_AIW) -LIBRARY nssvasapi.lib +LIBRARY NssVASApi.lib #endif #ifdef VPBK_ENABLE_PROFILE diff -r 6b5524b4f673 -r 38bb213f60ba phonebookengines/VirtualPhonebook/group/VPbkSimStore.mmp --- a/phonebookengines/VirtualPhonebook/group/VPbkSimStore.mmp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookengines/VirtualPhonebook/group/VPbkSimStore.mmp Wed Oct 13 14:15:33 2010 +0300 @@ -88,7 +88,7 @@ // Dependencies to other Phonebook components LIBRARY VPbkEng.lib VPbkEngUtils.lib -LIBRARY vpbksimstoreservice.lib VPbkSimStoreCommon.lib +LIBRARY VPbkSimStoreService.lib VPbkSimStoreCommon.lib LIBRARY VPbkSimStoreImpl.lib #ifdef VPBK_ENABLE_PROFILE diff -r 6b5524b4f673 -r 38bb213f60ba phonebookengines/VirtualPhonebook/group/VPbkSimStoreService.mmp --- a/phonebookengines/VirtualPhonebook/group/VPbkSimStoreService.mmp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookengines/VirtualPhonebook/group/VPbkSimStoreService.mmp Wed Oct 13 14:15:33 2010 +0300 @@ -48,7 +48,7 @@ LIBRARY VPbkSimStoreCommon.lib LIBRARY euser.lib LIBRARY estor.lib -LIBRARY featmgr.lib +LIBRARY FeatMgr.lib ///////////////////////////////////// // DEBUG DEPENDENCIES diff -r 6b5524b4f673 -r 38bb213f60ba phonebookengines/VirtualPhonebook/inc/CVPbkSimContact.h --- a/phonebookengines/VirtualPhonebook/inc/CVPbkSimContact.h Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookengines/VirtualPhonebook/inc/CVPbkSimContact.h Wed Oct 13 14:15:33 2010 +0300 @@ -178,12 +178,6 @@ private: // New functions /// Creates ETel contact from native fields void CreateETelContactL() const; - - /* - * Used to indentify the different additional number field types - * according the order in the field array. - */ - void IndentifyAdditionalFields(); private: // Data /// The array for the fields diff -r 6b5524b4f673 -r 38bb213f60ba phonebookengines/VirtualPhonebook/inc/VPbkSimCntFieldTypes.hrh --- a/phonebookengines/VirtualPhonebook/inc/VPbkSimCntFieldTypes.hrh Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookengines/VirtualPhonebook/inc/VPbkSimCntFieldTypes.hrh Wed Oct 13 14:15:33 2010 +0300 @@ -30,11 +30,7 @@ EVPbkSimReading = 5, // ETel ETagPBSecondName EVPbkSimEMailAddress = 6, // ETagPBEmailAddress EVPbkSimGroupName = 7, // ETel ETagPBGroupName - EVPbkSimUnknownType = 8, - EVPbkSimAdditionalNumber1 = 9, // ETagPBAnrStart the first additional number - EVPbkSimAdditionalNumber2 = 10, // ETagPBAnrStart the second additional number - EVPbkSimAdditionalNumber3 = 11, // ETagPBAnrStart the third additional number - EVPbkSimAdditionalNumberLast = EVPbkSimAdditionalNumber // ETagPBAnrStart the fourth additional number and so on. + EVPbkSimUnknownType = 8 }; diff -r 6b5524b4f673 -r 38bb213f60ba phonebookengines/VirtualPhonebook/tsrc/MT_VPbkEng_SelectorFactory/group/MT_VPbkEng_SelectorFactory.mmp --- a/phonebookengines/VirtualPhonebook/tsrc/MT_VPbkEng_SelectorFactory/group/MT_VPbkEng_SelectorFactory.mmp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookengines/VirtualPhonebook/tsrc/MT_VPbkEng_SelectorFactory/group/MT_VPbkEng_SelectorFactory.mmp Wed Oct 13 14:15:33 2010 +0300 @@ -56,7 +56,7 @@ #endif LIBRARY euser.lib VPbkContactTestUtils.lib -LIBRARY StifTestInterface.lib serviceprovidersettings.lib +LIBRARY stiftestinterface.lib serviceprovidersettings.lib LIBRARY stiftestengine.lib VPbkEng.lib VPbkEngUtils.lib efsrv.lib bafl.lib LANG SC diff -r 6b5524b4f673 -r 38bb213f60ba phonebookengines/VirtualPhonebook/tsrc/MT_VPbkEng_SelectorFactory/inc/constants.h --- a/phonebookengines/VirtualPhonebook/tsrc/MT_VPbkEng_SelectorFactory/inc/constants.h Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookengines/VirtualPhonebook/tsrc/MT_VPbkEng_SelectorFactory/inc/constants.h Wed Oct 13 14:15:33 2010 +0300 @@ -17,7 +17,7 @@ #ifndef __SELECTOR_CONSTANTS_H #define __SELECTOR_CONSTANTS_H -#include +#include #include "stifunitmacros.h" #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookengines/VirtualPhonebook/tsrc/MT_VPbkEng_SelectorFactory/src/MT_VPbkEng_SelectorFactoryCases.cpp --- a/phonebookengines/VirtualPhonebook/tsrc/MT_VPbkEng_SelectorFactory/src/MT_VPbkEng_SelectorFactoryCases.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookengines/VirtualPhonebook/tsrc/MT_VPbkEng_SelectorFactory/src/MT_VPbkEng_SelectorFactoryCases.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -25,7 +25,7 @@ #include #include #include -#include +#include #include #include #include @@ -47,6 +47,8 @@ #include #include +#include + namespace { const TUint KSPSupportCallOutKey = 0x2000B160; diff -r 6b5524b4f673 -r 38bb213f60ba phonebookengines/VirtualPhonebook/tsrc/MT_VPbkEng_StrCntAnalyzer/group/MT_VPbkEng_StrCntAnalyzer.mmp --- a/phonebookengines/VirtualPhonebook/tsrc/MT_VPbkEng_StrCntAnalyzer/group/MT_VPbkEng_StrCntAnalyzer.mmp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookengines/VirtualPhonebook/tsrc/MT_VPbkEng_StrCntAnalyzer/group/MT_VPbkEng_StrCntAnalyzer.mmp Wed Oct 13 14:15:33 2010 +0300 @@ -57,7 +57,7 @@ #endif LIBRARY euser.lib -LIBRARY StifTestInterface.lib +LIBRARY stiftestinterface.lib LIBRARY stiftestengine.lib VPbkEngUtils.lib VPbkEng.lib LANG SC diff -r 6b5524b4f673 -r 38bb213f60ba phonebookengines/VirtualPhonebook/tsrc/MT_VPbkEng_StrCntAnalyzer/src/MT_VPbkEng_StrCntAnalyzerCases.cpp --- a/phonebookengines/VirtualPhonebook/tsrc/MT_VPbkEng_StrCntAnalyzer/src/MT_VPbkEng_StrCntAnalyzerCases.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookengines/VirtualPhonebook/tsrc/MT_VPbkEng_StrCntAnalyzer/src/MT_VPbkEng_StrCntAnalyzerCases.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -27,7 +27,7 @@ #include #include #include -//#include +//#include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookengines/contactsmodel/groupsql/app-engines_cntmodel.mrp --- a/phonebookengines/contactsmodel/groupsql/app-engines_cntmodel.mrp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookengines/contactsmodel/groupsql/app-engines_cntmodel.mrp Wed Oct 13 14:15:33 2010 +0300 @@ -4,6 +4,12 @@ exports \sf\app\contacts\phonebookengines\contactsmodel\groupsql +-export_file \sf\app\contacts\phonebookengines\contactsmodel\documentation\contacts_connectivityapi.doc \epoc32\engdoc\cntmodel\Contacts_ConnectivityAPI.doc +-export_file \sf\app\contacts\phonebookengines\contactsmodel\documentation\contacts_current_itemapi.doc \epoc32\engdoc\cntmodel\Contacts_Current_ItemAPI.doc +-export_file \sf\app\contacts\phonebookengines\contactsmodel\documentation\contacts_group_supportapi.doc \epoc32\engdoc\cntmodel\Contacts_Group_SupportAPI.DOC +-export_file \sf\app\contacts\phonebookengines\contactsmodel\documentation\contacts_multiple_templatesapi.doc \epoc32\engdoc\cntmodel\Contacts_Multiple_TemplatesAPI.doc +-export_file \sf\app\contacts\phonebookengines\contactsmodel\documentation\contacts_own_card_supportapi.doc \epoc32\engdoc\cntmodel\Contacts_Own_Card_SupportAPI.doc +-export_file \sf\app\contacts\phonebookengines\contactsmodel\documentation\contacts_sorting_view_supportapi.doc \epoc32\engdoc\cntmodel\Contacts_sorting_view_supportAPI.doc notes_source \component_defs\release.src diff -r 6b5524b4f673 -r 38bb213f60ba phonebookengines/contactsmodel/groupsql/cntmodel.iby --- a/phonebookengines/contactsmodel/groupsql/cntmodel.iby Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookengines/contactsmodel/groupsql/cntmodel.iby Wed Oct 13 14:15:33 2010 +0300 @@ -33,9 +33,9 @@ #define CONTACT_SERVER_MAX_HEAPSIZE 0x200000 #endif -file=ABI_DIR/BUILD_DIR/cntsrv.exe System/Programs/cntsrv.exe heapmax=CONTACT_SERVER_MAX_HEAPSIZE -file=ABI_DIR/BUILD_DIR/cntmodel.dll System/Libs/cntmodel.dll -file=ABI_DIR/BUILD_DIR/cntview.dll System/Libs/cntview.dll +file=ABI_DIR\BUILD_DIR\cntsrv.exe System\Programs\cntsrv.exe heapmax=CONTACT_SERVER_MAX_HEAPSIZE +file=ABI_DIR\BUILD_DIR\cntmodel.dll System\Libs\cntmodel.dll +file=ABI_DIR\BUILD_DIR\cntview.dll System\Libs\cntview.dll ECOM_PLUGIN(cntvcard.dll,102035f8.rsc) ECOM_PLUGIN(cntphone.dll,102035fb.rsc) diff -r 6b5524b4f673 -r 38bb213f60ba phonebookengines/contactsmodel/inc/cntdef_internal.hrh --- a/phonebookengines/contactsmodel/inc/cntdef_internal.hrh Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookengines/contactsmodel/inc/cntdef_internal.hrh Wed Oct 13 14:15:33 2010 +0300 @@ -47,5 +47,4 @@ /** @internalComponent */ #define KIntFieldFlagFilterable4 0x100 -#endif //__CNTDEF_INTERNAL_HRH__ - +#endif //__CNTDEF_INTERNAL_HRH__ \ No newline at end of file diff -r 6b5524b4f673 -r 38bb213f60ba phonebookengines/contactsmodel/tsrc/t_cnt_backup.h --- a/phonebookengines/contactsmodel/tsrc/t_cnt_backup.h Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookengines/contactsmodel/tsrc/t_cnt_backup.h Wed Oct 13 14:15:33 2010 +0300 @@ -14,6 +14,7 @@ // #include +#include // // Forward declarations. diff -r 6b5524b4f673 -r 38bb213f60ba phonebookengines/contactsmodel/tsrc/t_cnt_backup.mmp --- a/phonebookengines/contactsmodel/tsrc/t_cnt_backup.mmp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookengines/contactsmodel/tsrc/t_cnt_backup.mmp Wed Oct 13 14:15:33 2010 +0300 @@ -13,20 +13,18 @@ // Description: // -TARGET t_cnt_backup.exe -TARGETTYPE EXE - +target t_cnt_backup.exe +targettype EXE UID 0x10281846 CAPABILITY ReadUserData WriteUserData ReadDeviceData WriteDeviceData AllFiles VENDORID 0x70000001 SOURCEPATH ../tsrc -APP_LAYER_SYSTEMINCLUDE_SYMBIAN -SYSTEMINCLUDE /epoc32/include/app-services/private -USERINCLUDE ../inc +APP_LAYER_SYSTEMINCLUDE_SYMBIAN +userinclude ../inc -SOURCE t_cnt_backup.cpp +source t_cnt_backup.cpp LIBRARY cntmodel.lib euser.lib edbms.lib efsrv.lib bafl.lib sbeclient.lib LIBRARY pimtestclient.lib diff -r 6b5524b4f673 -r 38bb213f60ba phonebookengines/contactsmodel/tsrc/t_contenttype.mmp --- a/phonebookengines/contactsmodel/tsrc/t_contenttype.mmp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookengines/contactsmodel/tsrc/t_contenttype.mmp Wed Oct 13 14:15:33 2010 +0300 @@ -13,21 +13,19 @@ // Description: // -TARGET t_contenttype.exe -TARGETTYPE EXE - +target t_contenttype.exe +targettype EXE CAPABILITY ReadUserData WriteUserData UID 0x1000007a VENDORID 0x70000001 SOURCEPATH ../tsrc -SYSTEMINCLUDE /epoc32/include -SYSTEMINCLUDE /epoc32/include/platform -USERINCLUDE ../inc . +systeminclude /epoc32/include +userinclude ../inc . -SOURCE t_contenttype.cpp +source t_contenttype.cpp -LIBRARY euser.lib efsrv.lib cntmodel.lib estor.lib +library euser.lib efsrv.lib cntmodel.lib estor.lib SMPSAFE diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook/AIF/Phonebook_reg.rss --- a/phonebookui/Phonebook/AIF/Phonebook_reg.rss Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook/AIF/Phonebook_reg.rss Wed Oct 13 14:15:33 2010 +0300 @@ -17,7 +17,7 @@ #include -#include +#include #include UID2 KUidAppRegistrationResourceFile diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook/App/rss/PbkAiwInterest.rss --- a/phonebookui/Phonebook/App/rss/PbkAiwInterest.rss Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook/App/rss/PbkAiwInterest.rss Wed Oct 13 14:15:33 2010 +0300 @@ -20,7 +20,7 @@ #include #include -#include +#include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook/App/rss/Phonebook.rss --- a/phonebookui/Phonebook/App/rss/Phonebook.rss Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook/App/rss/Phonebook.rss Wed Oct 13 14:15:33 2010 +0300 @@ -25,7 +25,7 @@ #include #include -#include +#include #include #include //Icon in save query #include @@ -37,7 +37,7 @@ #include // Phonebook icon mapping #include #include -#include +#include #if defined(__SCALABLE_ICONS) #define num_aif_icons 1 diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook/App/src/CPbkAiwInterestItemCall.cpp --- a/phonebookui/Phonebook/App/src/CPbkAiwInterestItemCall.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook/App/src/CPbkAiwInterestItemCall.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -29,7 +29,7 @@ #include #include #include "CPbkCallTypeSelector.h" -#include +#include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook/App/src/CPbkAiwInterestItemPoc.cpp --- a/phonebookui/Phonebook/App/src/CPbkAiwInterestItemPoc.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook/App/src/CPbkAiwInterestItemPoc.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -32,7 +32,7 @@ #include #include -#include +#include #include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook/App/src/CPbkAiwInterestItemSyncMl.cpp --- a/phonebookui/Phonebook/App/src/CPbkAiwInterestItemSyncMl.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook/App/src/CPbkAiwInterestItemSyncMl.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -29,7 +29,7 @@ #include #include -#include +#include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook/App/src/CPbkAppUi.cpp --- a/phonebookui/Phonebook/App/src/CPbkAppUi.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook/App/src/CPbkAppUi.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -27,7 +27,7 @@ #include #include // HlpLauncher -#include // Phonebook resources +#include // Phonebook resources #include "CPbkApplication.h" // Phonebook application class #include "CPbkDocument.h" // Phonebook document class #include "PbkAppViewFactory.h" // Application view factory diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook/App/src/CPbkAssignToGroupCmd.cpp --- a/phonebookui/Phonebook/App/src/CPbkAssignToGroupCmd.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook/App/src/CPbkAssignToGroupCmd.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -21,7 +21,7 @@ #include "CPbkAssignToGroupCmd.h" #include #include -#include +#include #include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook/App/src/CPbkCodImageCmd.cpp --- a/phonebookui/Phonebook/App/src/CPbkCodImageCmd.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook/App/src/CPbkCodImageCmd.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -29,7 +29,7 @@ #include #include #include -#include // PbkView resource symbols +#include // PbkView resource symbols #include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook/App/src/CPbkContactInfoAppView.cpp --- a/phonebookui/Phonebook/App/src/CPbkContactInfoAppView.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook/App/src/CPbkContactInfoAppView.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -27,8 +27,8 @@ #include // Phonebook.app include files -#include -#include +#include +#include // Phone include files #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook/App/src/CPbkContactInfoBaseNavigationStrategy.cpp --- a/phonebookui/Phonebook/App/src/CPbkContactInfoBaseNavigationStrategy.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook/App/src/CPbkContactInfoBaseNavigationStrategy.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -28,8 +28,8 @@ #include // Phonebook.app include files -#include -#include +#include +#include #include // PbkEng.dll include files diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook/App/src/CPbkContactListAppView.cpp --- a/phonebookui/Phonebook/App/src/CPbkContactListAppView.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook/App/src/CPbkContactListAppView.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -34,7 +34,7 @@ #include #include #include -#include // Phonebook resources +#include // Phonebook resources #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook/App/src/CPbkDeleteContactsCmd.cpp --- a/phonebookui/Phonebook/App/src/CPbkDeleteContactsCmd.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook/App/src/CPbkDeleteContactsCmd.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -19,7 +19,7 @@ // INCLUDE FILES #include "CPbkDeleteContactsCmd.h" -#include +#include #include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook/App/src/CPbkGoToURLCmd.cpp --- a/phonebookui/Phonebook/App/src/CPbkGoToURLCmd.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook/App/src/CPbkGoToURLCmd.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -22,7 +22,7 @@ #include "CPbkGoToURLCmd.h" #include #include -#include +#include #include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook/App/src/CPbkGroupMembersListAppView.cpp --- a/phonebookui/Phonebook/App/src/CPbkGroupMembersListAppView.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook/App/src/CPbkGroupMembersListAppView.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -36,7 +36,7 @@ #include // for Send UI functionality #include // Send UI MTM uid's -#include // Phonebook resources +#include // Phonebook resources #include #include "CPbkAppUi.h" // Phonebook application UI class #include "CPbkAssignToGroupCmd.h" @@ -48,7 +48,7 @@ #include #include -#include // PbkView dll resources +#include // PbkView dll resources #include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook/App/src/CPbkGroupsListAppView.cpp --- a/phonebookui/Phonebook/App/src/CPbkGroupsListAppView.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook/App/src/CPbkGroupsListAppView.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -27,7 +27,7 @@ #include // Phonebook.app APIs -#include // Phonebook resources +#include // Phonebook resources #include #include "CPbkAppUi.h" #include @@ -43,7 +43,7 @@ #include // PbkView.dll APIs -#include // PbkView dll resources +#include // PbkView dll resources #include // Phonebook view state object #include #include // CPbkGroupNameQueryDlg diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook/App/src/CPbkMenuFiltering.cpp --- a/phonebookui/Phonebook/App/src/CPbkMenuFiltering.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook/App/src/CPbkMenuFiltering.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -27,7 +27,7 @@ #include #include #include -#include +#include namespace { diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook/App/src/CPbkNamesListAppView.cpp --- a/phonebookui/Phonebook/App/src/CPbkNamesListAppView.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook/App/src/CPbkNamesListAppView.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -33,7 +33,7 @@ #include // Send UI MTM uid's // Phonebook.app include files -#include // Phonebook resources +#include // Phonebook resources #include "CPbkAppUi.h" // Phonebook application UI class #include "CPbkDeleteContactsCmd.h" #include "CPbkAssignToGroupCmd.h" @@ -54,7 +54,7 @@ #include // Phonebook view include files -#include // PbkView dll resources +#include // PbkView dll resources #include // Phonebook view state object #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook/App/src/CPbkRemoveFromGroupCmd.cpp --- a/phonebookui/Phonebook/App/src/CPbkRemoveFromGroupCmd.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook/App/src/CPbkRemoveFromGroupCmd.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -22,7 +22,7 @@ #include #include #include -#include +#include #include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook/App/src/CPbkSendContactCmd.cpp --- a/phonebookui/Phonebook/App/src/CPbkSendContactCmd.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook/App/src/CPbkSendContactCmd.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -24,7 +24,7 @@ #include #include -#include +#include #include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook/App/src/CPbkSendMultipleMessageCmd.cpp --- a/phonebookui/Phonebook/App/src/CPbkSendMultipleMessageCmd.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook/App/src/CPbkSendMultipleMessageCmd.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -31,7 +31,7 @@ #include "TSingleDesCArray.h" #include "CPbkAppGlobals.h" #include -#include +#include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook/App/src/CPbkSetToneToGroupCmd.cpp --- a/phonebookui/Phonebook/App/src/CPbkSetToneToGroupCmd.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook/App/src/CPbkSetToneToGroupCmd.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -24,8 +24,8 @@ #include #include #include -#include -#include +#include +#include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook/App/src/CPbkViewNavigator.cpp --- a/phonebookui/Phonebook/App/src/CPbkViewNavigator.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook/App/src/CPbkViewNavigator.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -33,7 +33,7 @@ #include #include #include -#include +#include // ================= MEMBER FUNCTIONS ======================= diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook/BCardEng/src/BCardEng.cpp --- a/phonebookui/Phonebook/BCardEng/src/BCardEng.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook/BCardEng/src/BCardEng.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -41,7 +41,7 @@ #include #include -#include +#include #include "CBCardParserParamArray.h" #include "CBCardFieldAction.h" #include "CBCardFieldUidMapping.h" diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook/Engine/rss/PbkEng.rss --- a/phonebookui/Phonebook/Engine/rss/PbkEng.rss Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook/Engine/rss/PbkEng.rss Wed Oct 13 14:15:33 2010 +0300 @@ -23,7 +23,7 @@ /*============================================================================ * NB. PbkEng resources MUST be defined in PbkEngCommon.rss -* because only one pbkeng.rsg file used with different language +* because only one PbkEng.rsg file used with different language * specific ".rsc" files. Otherwise BC is broken. ============================================================================*/ diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook/Engine/rss/PbkEngChinese.rss --- a/phonebookui/Phonebook/Engine/rss/PbkEngChinese.rss Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook/Engine/rss/PbkEngChinese.rss Wed Oct 13 14:15:33 2010 +0300 @@ -24,7 +24,7 @@ /*============================================================================ * NB. PbkEng resources MUST be defined in PbkEngCommon.rss -* because only one pbkeng.rsg file used with different language +* because only one PbkEng.rsg file used with different language * specific ".rsc" files. Otherwise BC is broken. ============================================================================*/ diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook/Engine/rss/PbkEngJapanese.rss --- a/phonebookui/Phonebook/Engine/rss/PbkEngJapanese.rss Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook/Engine/rss/PbkEngJapanese.rss Wed Oct 13 14:15:33 2010 +0300 @@ -23,7 +23,7 @@ /*============================================================================ * NB. PbkEng resources MUST be defined in PbkEngCommon.rss -* because only one pbkeng.rsg file used with different language +* because only one PbkEng.rsg file used with different language * specific ".rsc" files. Otherwise BC is broken. ============================================================================*/ diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook/Engine/src/CPbkConstants.cpp --- a/phonebookui/Phonebook/Engine/src/CPbkConstants.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook/Engine/src/CPbkConstants.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -22,7 +22,7 @@ #include #include #include -#include +#include #include "CPbkLocalVariationManager.h" diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook/Engine/src/CPbkContactEngine.cpp --- a/phonebookui/Phonebook/Engine/src/CPbkContactEngine.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook/Engine/src/CPbkContactEngine.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -29,7 +29,7 @@ #include #include // BaflUtils -#include // Engine resources +#include // Engine resources #include "CPbkFieldsInfo.h" #include "CPbkFieldInfo.h" #include "CPbkContactItem.h" diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook/Engine/src/CPbkFieldsInfo.cpp --- a/phonebookui/Phonebook/Engine/src/CPbkFieldsInfo.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook/Engine/src/CPbkFieldsInfo.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -24,7 +24,7 @@ #include #include -#include +#include #include "CPbkFieldInfo.h" #include "CPbkFieldInfoGroup.h" #include "CPbkUidMap.h" diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook/Engine/src/CPbkSortOrderManager.cpp --- a/phonebookui/Phonebook/Engine/src/CPbkSortOrderManager.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook/Engine/src/CPbkSortOrderManager.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -23,7 +23,7 @@ #include #include #include -#include +#include #include // TResourceReader #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook/PbkAiwProviders/src/CPbkAiwCmdAssignProvider.cpp --- a/phonebookui/Phonebook/PbkAiwProviders/src/CPbkAiwCmdAssignProvider.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook/PbkAiwProviders/src/CPbkAiwCmdAssignProvider.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -24,8 +24,8 @@ #include #include #include -#include -#include +#include +#include #include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook/PbkAiwProviders/src/CPbkAiwProviderBase.cpp --- a/phonebookui/Phonebook/PbkAiwProviders/src/CPbkAiwProviderBase.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook/PbkAiwProviders/src/CPbkAiwProviderBase.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -21,13 +21,13 @@ #include "CPbkAiwProviderBase.h" #include -#include +#include #include #include #include #include #include "PbkDataCaging.hrh" -#include +#include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook/PbkAiwProviders/src/CPbkAssignImageCmd.cpp --- a/phonebookui/Phonebook/PbkAiwProviders/src/CPbkAssignImageCmd.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook/PbkAiwProviders/src/CPbkAssignImageCmd.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -22,8 +22,8 @@ #include #include -#include -#include +#include +#include #include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook/PbkAiwProviders/src/CPbkAssignRingingToneCmd.cpp --- a/phonebookui/Phonebook/PbkAiwProviders/src/CPbkAssignRingingToneCmd.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook/PbkAiwProviders/src/CPbkAssignRingingToneCmd.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -22,8 +22,8 @@ #include #include -#include -#include +#include +#include #include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook/PbkEngine_FM/rss/PbkEngine_FMChineseRes.rss --- a/phonebookui/Phonebook/PbkEngine_FM/rss/PbkEngine_FMChineseRes.rss Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook/PbkEngine_FM/rss/PbkEngine_FMChineseRes.rss Wed Oct 13 14:15:33 2010 +0300 @@ -24,7 +24,7 @@ /*============================================================================ * NB. PbkEngine_FM resources MUST be defined in PbkEngine_FMCommonRes.rss -* because only one pbkengine_fmres.rsg file used with different language +* because only one PbkEngine_FMRes.rsg file used with different language * specific ".rsc" files. Otherwise BC is broken. ============================================================================*/ diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook/PbkEngine_FM/rss/PbkEngine_FMJapaneseRes.rss --- a/phonebookui/Phonebook/PbkEngine_FM/rss/PbkEngine_FMJapaneseRes.rss Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook/PbkEngine_FM/rss/PbkEngine_FMJapaneseRes.rss Wed Oct 13 14:15:33 2010 +0300 @@ -24,7 +24,7 @@ /*============================================================================ * NB. PbkEngine_FM resources MUST be defined in PbkEngine_FMCommonRes.rss -* because only one pbkengine_fmres.rsg file used with different language +* because only one PbkEngine_FMRes.rsg file used with different language * specific ".rsc" files. Otherwise BC is broken. ============================================================================*/ diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook/PbkEngine_FM/rss/PbkEngine_FMRes.rss --- a/phonebookui/Phonebook/PbkEngine_FM/rss/PbkEngine_FMRes.rss Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook/PbkEngine_FM/rss/PbkEngine_FMRes.rss Wed Oct 13 14:15:33 2010 +0300 @@ -24,7 +24,7 @@ /*============================================================================ * NB. PbkEngine_FM resources MUST be defined in PbkEngine_FMCommonRes.rss -* because only one pbkengine_fmres.rsg file used with different language +* because only one PbkEngine_FMRes.rsg file used with different language * specific ".rsc" files. Otherwise BC is broken. ============================================================================*/ diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook/PbkEngine_FM/src/Cfmpbkengineextension.cpp --- a/phonebookui/Phonebook/PbkEngine_FM/src/Cfmpbkengineextension.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook/PbkEngine_FM/src/Cfmpbkengineextension.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -19,7 +19,7 @@ // INCLUDES #include "Cfmpbkengineextension.h" -#include // Common for all langugages +#include // Common for all langugages #include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook/View/rss/PbkNonTouchableView.rss --- a/phonebookui/Phonebook/View/rss/PbkNonTouchableView.rss Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook/View/rss/PbkNonTouchableView.rss Wed Oct 13 14:15:33 2010 +0300 @@ -25,7 +25,7 @@ #include #include #include -#include +#include #include #include #include // Icon in save query diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook/View/src/CPbkAddToGroup.cpp --- a/phonebookui/Phonebook/View/src/CPbkAddToGroup.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook/View/src/CPbkAddToGroup.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -23,7 +23,7 @@ #include // AVKON Notes #include // StringLoader -#include // Phonebook view dll resource IDs +#include // Phonebook view dll resource IDs #include "CPbkGroupPopup.h" #include // Phonebook engine diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook/View/src/CPbkContactEditorDateField.cpp --- a/phonebookui/Phonebook/View/src/CPbkContactEditorDateField.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook/View/src/CPbkContactEditorDateField.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -31,7 +31,7 @@ #include #include -#include +#include /// Unnamed namespace for local definitons diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook/View/src/CPbkContactEditorDlg.cpp --- a/phonebookui/Phonebook/View/src/CPbkContactEditorDlg.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook/View/src/CPbkContactEditorDlg.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -54,7 +54,7 @@ #include #include #include -#include +#include #include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook/View/src/CPbkContactEditorEditContact.cpp --- a/phonebookui/Phonebook/View/src/CPbkContactEditorEditContact.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook/View/src/CPbkContactEditorEditContact.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -29,7 +29,7 @@ #include "CPbkContactItem.h" #include "CPbkDeleteContactQuery.h" #include -#include +#include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook/View/src/CPbkContactEditorFieldArray.cpp --- a/phonebookui/Phonebook/View/src/CPbkContactEditorFieldArray.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook/View/src/CPbkContactEditorFieldArray.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -29,7 +29,7 @@ #include "PbkIconInfo.h" #include "CPbkFieldInfo.h" #include "CPbkReadingEditorBinderVisitor.h" -#include +#include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook/View/src/CPbkContactEditorNewContact.cpp --- a/phonebookui/Phonebook/View/src/CPbkContactEditorNewContact.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook/View/src/CPbkContactEditorNewContact.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -25,7 +25,7 @@ #include #include #include -#include +#include #include "CPbkContactEngine.h" #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook/View/src/CPbkContactEditorSyncField.cpp --- a/phonebookui/Phonebook/View/src/CPbkContactEditorSyncField.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook/View/src/CPbkContactEditorSyncField.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -23,7 +23,7 @@ #include "MPbkContactEditorUiBuilder.h" #include "MPbkFieldEditorVisitor.h" -#include +#include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook/View/src/CPbkContactInfoControl.cpp --- a/phonebookui/Phonebook/View/src/CPbkContactInfoControl.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook/View/src/CPbkContactInfoControl.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -29,7 +29,7 @@ #include #include -#include // View resources +#include // View resources #include #include "CPbkViewState.h" #include "CPbkThumbnailPopup.h" diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook/View/src/CPbkContactViewListControl.cpp --- a/phonebookui/Phonebook/View/src/CPbkContactViewListControl.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook/View/src/CPbkContactViewListControl.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -26,7 +26,7 @@ #include #include #include -#include +#include #include // KEikDynamicLayoutVariantSwitch #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook/View/src/CPbkContextPaneIcon.cpp --- a/phonebookui/Phonebook/View/src/CPbkContextPaneIcon.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook/View/src/CPbkContextPaneIcon.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -25,7 +25,7 @@ #include // Status pane control UIDs #include // CEikImage #include // CAknContextPane -#include // Phonebook view dll resource IDs +#include // Phonebook view dll resource IDs #include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook/View/src/CPbkDataSaveAppUi.cpp --- a/phonebookui/Phonebook/View/src/CPbkDataSaveAppUi.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook/View/src/CPbkDataSaveAppUi.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -25,7 +25,7 @@ // PbkView include files #include "PbkDataSaveAppUi.hrh" -#include +#include #include "CPbkContactEditorDlg.h" #include "CPbkSingleEntryFetchDlg.h" #include "CPbkMemoryEntryAddItemDlg.h" diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook/View/src/CPbkDeleteContactQuery.cpp --- a/phonebookui/Phonebook/View/src/CPbkDeleteContactQuery.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook/View/src/CPbkDeleteContactQuery.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -19,7 +19,7 @@ // INCLUDE FILES #include "CPbkDeleteContactQuery.h" -#include +#include #include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook/View/src/CPbkDrmManager.cpp --- a/phonebookui/Phonebook/View/src/CPbkDrmManager.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook/View/src/CPbkDrmManager.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -24,7 +24,7 @@ #include #include #include -#include +#include #include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook/View/src/CPbkEmailAddressSelect.cpp --- a/phonebookui/Phonebook/View/src/CPbkEmailAddressSelect.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook/View/src/CPbkEmailAddressSelect.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -24,7 +24,7 @@ #include // AVKON softkey codes #include #include // StringLoader -#include +#include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook/View/src/CPbkEmailOverSmsAddressSelect.cpp --- a/phonebookui/Phonebook/View/src/CPbkEmailOverSmsAddressSelect.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook/View/src/CPbkEmailOverSmsAddressSelect.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -24,7 +24,7 @@ #include // R_AVKON_SOFTKEYS_SELECT_CANCEL; #include #include // StringLoader -#include +#include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook/View/src/CPbkFFSCheck.cpp --- a/phonebookui/Phonebook/View/src/CPbkFFSCheck.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook/View/src/CPbkFFSCheck.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -59,12 +59,7 @@ EXPORT_C TBool CPbkFFSCheck::FFSClCheckL(TInt aBytesToWrite/*=0*/) { - RFs* rfSession = NULL; - if ( iConeEnv ) - { - rfSession = &iConeEnv->FsSession(); - } - if (SysUtil::FFSSpaceBelowCriticalLevelL( rfSession, aBytesToWrite ) || + if (SysUtil::FFSSpaceBelowCriticalLevelL(&iConeEnv->FsSession(),aBytesToWrite) || DebugFailNext()) { // Show not enough memory note diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook/View/src/CPbkFetchDlg.cpp --- a/phonebookui/Phonebook/View/src/CPbkFetchDlg.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook/View/src/CPbkFetchDlg.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -23,7 +23,7 @@ #include // AVKON resource IDs #include // CAknNavigationDecorator #include // CEikAppUi -#include // Phonebook view dll resource IDs +#include // Phonebook view dll resource IDs #include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook/View/src/CPbkFieldFormatter.cpp --- a/phonebookui/Phonebook/View/src/CPbkFieldFormatter.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook/View/src/CPbkFieldFormatter.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -25,7 +25,7 @@ #include "CPbkFieldInfo.h" #include "CPbkSyncronizationConstants.h" #include -#include +#include // ==================== LOCAL FUNCTIONS ==================== diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook/View/src/CPbkGroupBelongings.cpp --- a/phonebookui/Phonebook/View/src/CPbkGroupBelongings.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook/View/src/CPbkGroupBelongings.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -25,7 +25,7 @@ #include #include -#include +#include #include "CPbkGroupPopup.h" #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook/View/src/CPbkGroupMembersFetchDlg.cpp --- a/phonebookui/Phonebook/View/src/CPbkGroupMembersFetchDlg.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook/View/src/CPbkGroupMembersFetchDlg.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -22,7 +22,7 @@ #include // PbkView APIs -#include +#include #include "CPbkFetchDlg.h" #include "MPbkFetchCallbacks.h" diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook/View/src/CPbkGroupNameQueryDlg.cpp --- a/phonebookui/Phonebook/View/src/CPbkGroupNameQueryDlg.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook/View/src/CPbkGroupNameQueryDlg.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -23,7 +23,7 @@ #include #include #include -#include +#include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook/View/src/CPbkIconArray.cpp --- a/phonebookui/Phonebook/View/src/CPbkIconArray.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook/View/src/CPbkIconArray.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -22,7 +22,7 @@ #include // TResourceReader #include // CGulIcon #include // CCoeEnv -#include +#include #include "PbkIconInfo.h" #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook/View/src/CPbkMemoryEntryAddItemDlg.cpp --- a/phonebookui/Phonebook/View/src/CPbkMemoryEntryAddItemDlg.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook/View/src/CPbkMemoryEntryAddItemDlg.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -26,7 +26,7 @@ #include // EikControlFactory // PbkView classes -#include +#include #include // PbkEng classes diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook/View/src/CPbkMemoryEntryDefaultsDlg.cpp --- a/phonebookui/Phonebook/View/src/CPbkMemoryEntryDefaultsDlg.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook/View/src/CPbkMemoryEntryDefaultsDlg.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -23,7 +23,7 @@ #include #include -#include +#include #include "MPbkClipListBoxText.h" #include "CPbkFieldListBoxModel.h" #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook/View/src/CPbkMemoryEntrySelectAddItemDlg.cpp --- a/phonebookui/Phonebook/View/src/CPbkMemoryEntrySelectAddItemDlg.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook/View/src/CPbkMemoryEntrySelectAddItemDlg.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -30,7 +30,7 @@ // PbkView classes -#include +#include #include #include "TPbkAddItemWrapper.h" diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook/View/src/CPbkMmsAddressSelect.cpp --- a/phonebookui/Phonebook/View/src/CPbkMmsAddressSelect.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook/View/src/CPbkMmsAddressSelect.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -24,7 +24,7 @@ #include // R_AVKON_SOFTKEYS_SELECT_CANCEL; #include #include // StringLoader -#include +#include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook/View/src/CPbkMultipleEntryFetchDlg.cpp --- a/phonebookui/Phonebook/View/src/CPbkMultipleEntryFetchDlg.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook/View/src/CPbkMultipleEntryFetchDlg.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -19,7 +19,7 @@ // INCLUDE FILES #include "CPbkMultipleEntryFetchDlg.h" // This class -#include +#include #include "CPbkFetchDlg.h" #include "MPbkFetchDlgSelection.h" #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook/View/src/CPbkPhoneNumberSelect.cpp --- a/phonebookui/Phonebook/View/src/CPbkPhoneNumberSelect.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook/View/src/CPbkPhoneNumberSelect.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -23,7 +23,7 @@ #include // AVKON softkey codes #include // AVKON Notes #include // StringLoader -#include // PbkView resources +#include // PbkView resources #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook/View/src/CPbkPhoneNumberSelectBase.cpp --- a/phonebookui/Phonebook/View/src/CPbkPhoneNumberSelectBase.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook/View/src/CPbkPhoneNumberSelectBase.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -22,7 +22,7 @@ #include "CPbkPhoneNumberSelectBase.h" #include #include // StringLoader -#include +#include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook/View/src/CPbkPhonebookInfoDlg.cpp --- a/phonebookui/Phonebook/View/src/CPbkPhonebookInfoDlg.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook/View/src/CPbkPhonebookInfoDlg.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -20,7 +20,7 @@ // INCLUDE FILES #include "CPbkPhonebookInfoDlg.h" -#include +#include #include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook/View/src/CPbkPocAddressSelect.cpp --- a/phonebookui/Phonebook/View/src/CPbkPocAddressSelect.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook/View/src/CPbkPocAddressSelect.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -24,7 +24,7 @@ #include // R_AVKON_SOFTKEYS_SELECT_CANCEL; #include #include // StringLoader -#include +#include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook/View/src/CPbkRingingToneFetch.cpp --- a/phonebookui/Phonebook/View/src/CPbkRingingToneFetch.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook/View/src/CPbkRingingToneFetch.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -22,7 +22,7 @@ #include #include #include -#include +#include #include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook/View/src/CPbkSelectFieldDlg.cpp --- a/phonebookui/Phonebook/View/src/CPbkSelectFieldDlg.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook/View/src/CPbkSelectFieldDlg.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -24,7 +24,7 @@ #include // CColumnListBoxData #include // AknTextUtils -#include // View DLL resource Ids +#include // View DLL resource Ids #include "CPbkFieldListBoxModel.h" #include "MPbkControlKeyObserver.h" #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook/View/src/CPbkSendKeyAddressSelect.cpp --- a/phonebookui/Phonebook/View/src/CPbkSendKeyAddressSelect.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook/View/src/CPbkSendKeyAddressSelect.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -23,7 +23,7 @@ #include // AVKON softkey codes #include // AVKON Notes #include // StringLoader -#include +#include #include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook/View/src/CPbkSettingsDlg.cpp --- a/phonebookui/Phonebook/View/src/CPbkSettingsDlg.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook/View/src/CPbkSettingsDlg.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -24,7 +24,7 @@ #include "PbkUID.h" #include "PbkViewUtils.h" -#include +#include #include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook/View/src/CPbkSettingsList.cpp --- a/phonebookui/Phonebook/View/src/CPbkSettingsList.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook/View/src/CPbkSettingsList.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -21,7 +21,7 @@ #include "CPbkSettingsList.h" // This class #include "Cpbknameordersettingitem.h" #include -#include +#include #include /// Unnamed namespace for local definitons diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook/View/src/CPbkSingleEntryFetchDlg.cpp --- a/phonebookui/Phonebook/View/src/CPbkSingleEntryFetchDlg.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook/View/src/CPbkSingleEntryFetchDlg.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -19,7 +19,7 @@ // INCLUDE FILES #include "CPbkSingleEntryFetchDlg.h" // This class -#include +#include #include "CPbkFetchDlg.h" #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook/View/src/CPbkSingleItemFetchDlg.cpp --- a/phonebookui/Phonebook/View/src/CPbkSingleItemFetchDlg.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook/View/src/CPbkSingleItemFetchDlg.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -23,7 +23,7 @@ #include #include -#include +#include #include "CPbkFetchDlg.h" #include "MPbkFetchCallbacks.h" #include "CPbkSelectFieldDlg.h" diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook/View/src/CPbkSwapContextPaneIcon.cpp --- a/phonebookui/Phonebook/View/src/CPbkSwapContextPaneIcon.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook/View/src/CPbkSwapContextPaneIcon.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -23,7 +23,7 @@ #include // CEikStatusPane #include // CEikImage #include // CAknContextPane -#include // Phonebook view dll resource IDs +#include // Phonebook view dll resource IDs #include #include #include // Context pane bitmap size diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook/View/src/CPbkThumbnailCmd.cpp --- a/phonebookui/Phonebook/View/src/CPbkThumbnailCmd.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook/View/src/CPbkThumbnailCmd.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -26,7 +26,7 @@ #include #include -#include // PbkView resource symbols +#include // PbkView resource symbols #include #include "CPbkThumbnailManager.h" diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook/View/src/CPbkThumbnailPopup.cpp --- a/phonebookui/Phonebook/View/src/CPbkThumbnailPopup.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook/View/src/CPbkThumbnailPopup.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -29,7 +29,7 @@ #include #include #include -#include +#include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook/View/src/CPbkThumbnailPopupControl.cpp --- a/phonebookui/Phonebook/View/src/CPbkThumbnailPopupControl.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook/View/src/CPbkThumbnailPopupControl.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -19,7 +19,7 @@ // INCLUDE FILES #include "CPbkThumbnailPopupControl.h" -#include +#include #include // TResourceReader #include // CCoeEnv #include // CCoeMain diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook/View/src/CPbkThumbnailPopupControlSlim.cpp --- a/phonebookui/Phonebook/View/src/CPbkThumbnailPopupControlSlim.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook/View/src/CPbkThumbnailPopupControlSlim.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -19,7 +19,7 @@ // INCLUDE FILES #include "CPbkThumbnailPopupControlSlim.h" -#include +#include #include // TResourceReader #include // CCoeEnv #include // CCoeMain diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook/View/src/CPbkURLAddressSelect.cpp --- a/phonebookui/Phonebook/View/src/CPbkURLAddressSelect.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook/View/src/CPbkURLAddressSelect.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -24,7 +24,7 @@ #include // R_AVKON_SOFTKEYS_SELECT_CANCEL; #include #include // StringLoader -#include +#include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook/View/src/CPbkVideoNumberSelect.cpp --- a/phonebookui/Phonebook/View/src/CPbkVideoNumberSelect.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook/View/src/CPbkVideoNumberSelect.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -23,7 +23,7 @@ #include // AVKON softkey codes #include // AVKON Notes #include // StringLoader -#include // PbkView resources +#include // PbkView resources #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook/View/src/CPbkVoipAddressSelect.cpp --- a/phonebookui/Phonebook/View/src/CPbkVoipAddressSelect.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook/View/src/CPbkVoipAddressSelect.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -24,7 +24,7 @@ #include // R_AVKON_SOFTKEYS_SELECT_CANCEL; #include #include // StringLoader -#include +#include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook/View/src/Cpbknameordersettingitem.cpp --- a/phonebookui/Phonebook/View/src/Cpbknameordersettingitem.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook/View/src/Cpbknameordersettingitem.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -21,7 +21,7 @@ #include "Cpbknameordersettingitem.h" // This class #include #include -#include +#include #include #include "PbkViewUtils.h" diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook/View/src/PbkIconInfo.cpp --- a/phonebookui/Phonebook/View/src/PbkIconInfo.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook/View/src/PbkIconInfo.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -22,7 +22,7 @@ #include #include #include -#include +#include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook/View/src/PbkViewUtils.cpp --- a/phonebookui/Phonebook/View/src/PbkViewUtils.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook/View/src/PbkViewUtils.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -19,7 +19,7 @@ // INCLUDE FILES #include "PbkViewUtils.h" -#include +#include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook/group/BCardEng.mmp --- a/phonebookui/Phonebook/group/BCardEng.mmp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook/group/BCardEng.mmp Wed Oct 13 14:15:33 2010 +0300 @@ -64,12 +64,12 @@ // Dependencies to system components LIBRARY euser.lib bafl.lib estor.lib // User libraries LIBRARY efsrv.lib // file server -LIBRARY versit.lib vcard.lib // Versit parser -LIBRARY cntmodel.lib // Contact model -LIBRARY imageconversion.lib // Image handling -LIBRARY featmgr.lib // FeatureManager +LIBRARY versit.lib vcard.lib // Versit parser +LIBRARY cntmodel.lib // Contact model +LIBRARY ImageConversion.lib // Image handling +LIBRARY featmgr.lib // FeatureManager // Dependencies to other components -LIBRARY pbkeng.lib pbkview.lib +LIBRARY PbkEng.lib PbkView.lib // End of File diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook/group/PbkAiwProviders.mmp --- a/phonebookui/Phonebook/group/PbkAiwProviders.mmp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook/group/PbkAiwProviders.mmp Wed Oct 13 14:15:33 2010 +0300 @@ -59,9 +59,9 @@ APP_LAYER_SYSTEMINCLUDE // macro that defines the platform system includes // Dependencies to other components -LIBRARY euser.lib cone.lib CommonEngine.lib diskspacereserver.lib eikcoctl.lib +LIBRARY euser.lib cone.lib commonengine.lib diskspacereserver.lib eikcoctl.lib LIBRARY avkon.lib servicehandler.lib -LIBRARY pbkeng.lib pbkview.lib PbkUi.lib +LIBRARY PbkEng.lib PbkView.lib PbkUi.lib LIBRARY centralrepository.lib LIBRARY efsrv.lib // RFs diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook/group/PbkEng.mmp --- a/phonebookui/Phonebook/group/PbkEng.mmp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook/group/PbkEng.mmp Wed Oct 13 14:15:33 2010 +0300 @@ -135,12 +135,12 @@ APP_LAYER_SYSTEMINCLUDE // macro that defines the platform system includes // Dependencies to system components -LIBRARY euser.lib bafl.lib estor.lib efsrv.lib ecom.lib +LIBRARY euser.lib bafl.lib estor.lib efsrv.lib ECom.lib LIBRARY cntmodel.lib cntview.lib -LIBRARY centralrepository.lib +LIBRARY CentralRepository.lib // Dependencies to other components -LIBRARY sysutil.lib diskspacereserver.lib featmgr.lib cenrepnotifhandler.lib +LIBRARY SysUtil.lib diskspacereserver.lib featmgr.lib CenRepNotifHandler.lib // Debugging dependencies #ifdef PBK_ENABLE_DEBUG_LOGGER diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook/group/PbkEngine_FM.mmp --- a/phonebookui/Phonebook/group/PbkEngine_FM.mmp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook/group/PbkEngine_FM.mmp Wed Oct 13 14:15:33 2010 +0300 @@ -73,9 +73,9 @@ LIBRARY ecom.lib LIBRARY bafl.lib -LIBRARY featmgr.lib +LIBRARY FeatMgr.lib -LIBRARY pbkeng.lib +LIBRARY PbkEng.lib // End of File diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook/group/PbkSINDHandler.mmp --- a/phonebookui/Phonebook/group/PbkSINDHandler.mmp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook/group/PbkSINDHandler.mmp Wed Oct 13 14:15:33 2010 +0300 @@ -55,7 +55,7 @@ LIBRARY euser.lib LIBRARY efsrv.lib LIBRARY ecom.lib -LIBRARY nssvasapi.lib +LIBRARY NssVASApi.lib LIBRARY flogger.lib diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook/group/PbkView.mmp --- a/phonebookui/Phonebook/group/PbkView.mmp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook/group/PbkView.mmp Wed Oct 13 14:15:33 2010 +0300 @@ -167,7 +167,7 @@ LIBRARY euser.lib estor.lib efsrv.lib bafl.lib bitgdi.lib LIBRARY fbscli.lib cone.lib egul.lib eikcore.lib LIBRARY cntmodel.lib cntview.lib apgrfx.lib -LIBRARY imageconversion.lib bitmaptransforms.lib +LIBRARY ImageConversion.lib BitmapTransforms.lib // Dependencies to AVKON LIBRARY avkon.lib aknlayout.lib eikctl.lib eikcoctl.lib eikdlg.lib aknicon.lib @@ -176,20 +176,20 @@ LIBRARY AknLayout2Scalable.lib // Dependencies to Series60 platform components -LIBRARY CommonEngine.lib sysutil.lib -LIBRARY aknskins.lib aknjapanesereading.lib -LIBRARY featmgr.lib FindUtil.lib numbergrouping.lib +LIBRARY commonengine.lib sysutil.lib +LIBRARY AknSkins.lib AknJapaneseReading.lib +LIBRARY FeatMgr.lib FindUtil.lib numbergrouping.lib LIBRARY DrmHelper.lib apmime.lib centralrepository.lib LIBRARY diskspacereserver.lib LIBRARY hlplch.lib // Dependencies to other Phonebook components -LIBRARY pbkeng.lib // Phonebook Engine +LIBRARY PbkEng.lib // Phonebook Engine LIBRARY PbkExt.lib // Phonebook Extension manager // Dependencies to other Series60 applications -LIBRARY mgfetch.lib -LIBRARY filelist.lib +LIBRARY MGFetch.lib +LIBRARY FileList.lib // DRM dependencies LIBRARY DrmParsers.lib DrmDcf.lib DrmRights.lib diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook/group/Phonebook.mmp --- a/phonebookui/Phonebook/group/Phonebook.mmp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook/group/Phonebook.mmp Wed Oct 13 14:15:33 2010 +0300 @@ -153,25 +153,25 @@ LIBRARY apgrfx.lib eikctl.lib // Dependencies to AVKON -LIBRARY avkon.lib eikcoctl.lib -LIBRARY aknskins.lib +LIBRARY Avkon.lib eikcoctl.lib +LIBRARY AknSkins.lib // Dependencies to Series60 platform components -LIBRARY CommonEngine.lib diskspacereserver.lib -LIBRARY ecom.lib featmgr.lib +LIBRARY commonengine.lib diskspacereserver.lib +LIBRARY ecom.lib FeatMgr.lib LIBRARY sendui.lib servicehandler.lib LIBRARY spdctrl.lib LIBRARY hlplch.lib // Dependencies to other Phonebook components -LIBRARY pbkeng.lib // Engine component +LIBRARY PbkEng.lib // Engine component LIBRARY PbkExt.lib // Phonebook Extension manager -LIBRARY bcardeng.lib // Business card import/export component -LIBRARY pbkview.lib // View component +LIBRARY BCardEng.lib // Business card import/export component +LIBRARY PbkView.lib // View component LIBRARY PbkUI.lib // Common Phonebook UI framework // Dependencies to other Series60 applications -LIBRARY mgfetch.lib +LIBRARY MGFetch.lib LIBRARY commonui.lib LIBRARY apmime.lib diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/AIF/Pbk2ServerApp_reg.rss --- a/phonebookui/Phonebook2/AIF/Pbk2ServerApp_reg.rss Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/AIF/Pbk2ServerApp_reg.rss Wed Oct 13 14:15:33 2010 +0300 @@ -17,7 +17,7 @@ #include -#include +#include #include UID2 KUidAppRegistrationResourceFile diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/AIF/Phonebook2_reg.rss --- a/phonebookui/Phonebook2/AIF/Phonebook2_reg.rss Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/AIF/Phonebook2_reg.rss Wed Oct 13 14:15:33 2010 +0300 @@ -17,7 +17,7 @@ #include -#include +#include #include UID2 KUidAppRegistrationResourceFile diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/Application/rss/Pbk2MenuResources.rss --- a/phonebookui/Phonebook2/Application/rss/Pbk2MenuResources.rss Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/Application/rss/Pbk2MenuResources.rss Wed Oct 13 14:15:33 2010 +0300 @@ -18,8 +18,8 @@ // INCLUDES -#include // menu pane definitions are here -#include // CBA resources +#include // menu pane definitions are here +#include // CBA resources // -------------------------------------------------------------------------- // Names List View's main resource @@ -106,7 +106,7 @@ }, MENU_TITLE { - menu_pane = R_AVKON_MENUPANE_MARK_MULTIPLE; + menu_pane = R_AVKON_MENUPANE_MARKABLE_LIST; }, MENU_TITLE { @@ -194,6 +194,37 @@ }; } +// -------------------------------------------------------------------------- +// Names List View's Context sensitive menu bar +// when items are marked +// -------------------------------------------------------------------------- +// +RESOURCE MENU_BAR r_phonebook2_nameslist_context_menubar_items_marked + { + titles = + { + MENU_TITLE + { + menu_pane = R_PHONEBOOK2_MARKABLE_LIST_CONTEXT_MENU; + }, + MENU_TITLE + { + menu_pane = R_PHONEBOOK2_NAMESLIST_COPY_CONTEXT_MENU; + }, + MENU_TITLE + { + menu_pane = R_PHONEBOOK2_NAMESLIST_CONTEXT_MENU_MARKED_ITEMS; + }, + MENU_TITLE + { + menu_pane = R_PHONEBOOK2_BCARD_SEND_MENU; + }, + MENU_TITLE + { + menu_pane = R_PHONEBOOK2_NAMELIST_CREATE_MESSAGE_MENU; + } + }; + } // -------------------------------------------------------------------------- // Contact Info View's menu bar diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/Application/src/CPbk2AppUi.cpp --- a/phonebookui/Phonebook2/Application/src/CPbk2AppUi.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/Application/src/CPbk2AppUi.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -43,7 +43,7 @@ #include #include #include -#include +#include #include #include @@ -572,23 +572,9 @@ // -------------------------------------------------------------------------- // void CPbk2AppUi::LeavePbkInMemExitL() - { - PBK2_DEBUG_PRINT(PBK2_DEBUG_STRING("CPbk2AppUi::LeavePbkInMemExitL")); - - TBool dlgOnTop = IsDisplayingMenuOrDialog(); - // When Phonebook app is to leave in memory with a dialog displaying - // on the top of it, an escape key event will be simuliated to notify - // the dialog more earlier. - if ( dlgOnTop ) - { - TKeyEvent key; - key.iRepeats = 0; - key.iCode = EKeyEscape; - key.iModifiers = 0; - key.iScanCode = EStdKeyNull; - iCoeEnv->SimulateKeyEventL(key, EEventKey); - } - + { + PBK2_DEBUG_PRINT(PBK2_DEBUG_STRING("CPbk2AppUi::LeavePbkInMemExitL")); + // Diasable bring to foreground on view activation event SetCustomControl(1); diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/Application/src/CPbk2ContactInfoAppView.cpp --- a/phonebookui/Phonebook2/Application/src/CPbk2ContactInfoAppView.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/Application/src/CPbk2ContactInfoAppView.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -26,9 +26,9 @@ #include "CPbk2ViewActivationTransaction.h" #include "Pbk2InternalCommands.hrh" #include "CPbk2ViewLoader.h" -#include -#include -#include +#include +#include +#include #include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/Application/src/CPbk2SettingsView.cpp --- a/phonebookui/Phonebook2/Application/src/CPbk2SettingsView.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/Application/src/CPbk2SettingsView.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -36,8 +36,8 @@ #include #include #include -#include -#include +#include +#include // System includes #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/Application/src/CPbk2StartupMonitor.cpp --- a/phonebookui/Phonebook2/Application/src/CPbk2StartupMonitor.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/Application/src/CPbk2StartupMonitor.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -30,8 +30,8 @@ #include #include #include -#include -#include +#include +#include #include // Virtual Phonebook diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/Application/src/CPbk2UIApplicationServices.cpp --- a/phonebookui/Phonebook2/Application/src/CPbk2UIApplicationServices.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/Application/src/CPbk2UIApplicationServices.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -27,7 +27,7 @@ #include #include #include -#include +#include #include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/Application/src/CPbk2ViewExplorer.cpp --- a/phonebookui/Phonebook2/Application/src/CPbk2ViewExplorer.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/Application/src/CPbk2ViewExplorer.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -25,7 +25,7 @@ #include "CPbk2AppViewFactory.h" #include "CPbk2AppUi.h" #include "CPbk2Document.h" -#include +#include #include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/BWINS/Pbk2CommandsU.DEF --- a/phonebookui/Phonebook2/BWINS/Pbk2CommandsU.DEF Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/BWINS/Pbk2CommandsU.DEF Wed Oct 13 14:15:33 2010 +0300 @@ -37,6 +37,4 @@ ?AttachL@CPbk2AiwInterestItemBase@@UAEXHHH@Z @ 36 NONAME ; void CPbk2AiwInterestItemBase::AttachL(int, int, int) ?InterestId@CPbk2AiwInterestItemBase@@UBEHXZ @ 37 NONAME ; int CPbk2AiwInterestItemBase::InterestId(void) const ?SetStore@CPbk2DriveSpaceCheck@@QAEXABVTDesC16@@@Z @ 38 NONAME ; void CPbk2DriveSpaceCheck::SetStore(class TDesC16 const &) - ?CommandStore@CPbk2CommandHandler@@QAEPAVCPbk2CommandStore@@XZ @ 39 NONAME ; class CPbk2CommandStore * CPbk2CommandHandler::CommandStore(void) - ?DestroyAllCommands@CPbk2CommandStore@@QAEXXZ @ 40 NONAME ; void CPbk2CommandStore::DestroyAllCommands(void) diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/BWINS/Pbk2UiControlsU.DEF --- a/phonebookui/Phonebook2/BWINS/Pbk2UiControlsU.DEF Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/BWINS/Pbk2UiControlsU.DEF Wed Oct 13 14:15:33 2010 +0300 @@ -1,124 +1,124 @@ EXPORTS - ?ExecuteLD@CPbk2GeneralConfirmationQuery@@QAEHABVMVPbkBaseContact@@H@Z @ 1 NONAME ; int CPbk2GeneralConfirmationQuery::ExecuteLD(class MVPbkBaseContact const &, int) - ?NewL@CPbk2ContactInfoControl@@SAPAV1@PBVCCoeControl@@AAVCVPbkContactManager@@AAVMPbk2ContactNameFormatter@@AAVMPbk2FieldPropertyArray@@AAVCPbk2StorePropertyArray@@PAVMPbk2ContactNavigation@@@Z @ 2 NONAME ; class CPbk2ContactInfoControl * CPbk2ContactInfoControl::NewL(class CCoeControl const *, class CVPbkContactManager &, class MPbk2ContactNameFormatter &, class MPbk2FieldPropertyArray &, class CPbk2StorePropertyArray &, class MPbk2ContactNavigation *) - ?MapViewTypeToAddress@Pbk2AddressTools@@SA?AW4TPbk2FieldGroupId@@W4TActiveView@TPbk2ContactEditorParams@@@Z @ 3 NONAME ; enum TPbk2FieldGroupId Pbk2AddressTools::MapViewTypeToAddress(enum TPbk2ContactEditorParams::TActiveView) - ??0TParams@CPbk2FetchDlg@@QAE@XZ @ 4 NONAME ; CPbk2FetchDlg::TParams::TParams(void) - ?SetAllItemTextL@CPbk2StoreListQuery@@QAEXABVTDesC16@@H@Z @ 5 NONAME ; void CPbk2StoreListQuery::SetAllItemTextL(class TDesC16 const &, int) - ??0TPbk2AddItemWrapper@@QAE@ABVMPbk2FieldProperty@@@Z @ 6 NONAME ; TPbk2AddItemWrapper::TPbk2AddItemWrapper(class MPbk2FieldProperty const &) - ?ExecuteLD@CPbk2PhonebookInfoDlg@@QAEXAAVCVPbkContactStoreUriArray@@@Z @ 7 NONAME ; void CPbk2PhonebookInfoDlg::ExecuteLD(class CVPbkContactStoreUriArray &) - ?SetTimeFormatL@CPbk2FieldFormatter@@QAEXABVTDesC16@@@Z @ 8 NONAME ; void CPbk2FieldFormatter::SetTimeFormatL(class TDesC16 const &) - ?StopWait@CPbk2InputAbsorber@@QAEXXZ @ 9 NONAME ; void CPbk2InputAbsorber::StopWait(void) - ??0TPbk2AddItemWrapper@@QAE@ABVCPbk2FieldPropertyGroup@@@Z @ 10 NONAME ; TPbk2AddItemWrapper::TPbk2AddItemWrapper(class CPbk2FieldPropertyGroup const &) - ?RemoveDefaultsL@CPbk2DefaultAttributeProcess@@QAEXPAV?$CArrayFixFlat@W4TVPbkDefaultType@@@@@Z @ 11 NONAME ; void CPbk2DefaultAttributeProcess::RemoveDefaultsL(class CArrayFixFlat *) - ?NewL@CPbk2DefaultAttributeProcess@@SAPAV1@AAVCVPbkContactManager@@AAVMVPbkStoreContact@@AAVMPbk2DefaultAttributeProcessObserver@@@Z @ 12 NONAME ; class CPbk2DefaultAttributeProcess * CPbk2DefaultAttributeProcess::NewL(class CVPbkContactManager &, class MVPbkStoreContact &, class MPbk2DefaultAttributeProcessObserver &) - ?SetDefaultL@CPbk2DefaultAttributeProcess@@QAEXW4TVPbkDefaultType@@AAVMVPbkStoreContactField@@@Z @ 13 NONAME ; void CPbk2DefaultAttributeProcess::SetDefaultL(enum TVPbkDefaultType, class MVPbkStoreContactField &) - ?ExecuteLD@CPbk2AddItemToContactDlg@@QAEHAAV?$RArray@VTPbk2AddItemWrapper@@@@PBVTPbk2AddItemDialogParams@@@Z @ 14 NONAME ; int CPbk2AddItemToContactDlg::ExecuteLD(class RArray &, class TPbk2AddItemDialogParams const *) - ?SetFocusedStoreContact@CPbk2ContactUiControlSubstitute@@QAEXABVMVPbkStoreContact@@@Z @ 15 NONAME ; void CPbk2ContactUiControlSubstitute::SetFocusedStoreContact(class MVPbkStoreContact const &) - ?NewL@CPbk2ThumbnailManager@@SAPAV1@AAVCVPbkContactManager@@@Z @ 16 NONAME ; class CPbk2ThumbnailManager * CPbk2ThumbnailManager::NewL(class CVPbkContactManager &) - ?NewL@CPbk2SettingsListControl@@SAPAV1@PBVCCoeControl@@AAVCPbk2SortOrderManager@@AAVMPbk2SettingsControlExtension@@@Z @ 17 NONAME ; class CPbk2SettingsListControl * CPbk2SettingsListControl::NewL(class CCoeControl const *, class CPbk2SortOrderManager &, class MPbk2SettingsControlExtension &) - ?NewL@CPbk2ContactUiControlSubstitute@@SAPAV1@XZ @ 18 NONAME ; class CPbk2ContactUiControlSubstitute * CPbk2ContactUiControlSubstitute::NewL(void) - ?ExecuteLD@CPbk2GeneralConfirmationQuery@@QAEHHH@Z @ 19 NONAME ; int CPbk2GeneralConfirmationQuery::ExecuteLD(int, int) - ?Wait@CPbk2InputAbsorber@@QAEXXZ @ 20 NONAME ; void CPbk2InputAbsorber::Wait(void) - ?StopQuery@CPbk2GeneralConfirmationQuery@@QAEXXZ @ 21 NONAME ; void CPbk2GeneralConfirmationQuery::StopQuery(void) - ?SetCba@CPbk2AddressSelect@@QAEXH@Z @ 22 NONAME ; void CPbk2AddressSelect::SetCba(int) - ?LoadThumbnailL@CPbk2ThumbnailLoader@@QAEXPAVMVPbkContactLink@@PBVCEikListBox@@W4TPbk2ThumbnailLocation@@@Z @ 23 NONAME ; void CPbk2ThumbnailLoader::LoadThumbnailL(class MVPbkContactLink *, class CEikListBox const *, enum TPbk2ThumbnailLocation) - ?NewL@CPbk2MemoryEntryDefaultsAssignDlg@@SAPAV1@XZ @ 24 NONAME ; class CPbk2MemoryEntryDefaultsAssignDlg * CPbk2MemoryEntryDefaultsAssignDlg::NewL(void) - ?ExecuteLD@CPbk2GeneralConfirmationQuery@@QAEHABVMVPbkBaseContact@@HH@Z @ 25 NONAME ; int CPbk2GeneralConfirmationQuery::ExecuteLD(class MVPbkBaseContact const &, int, int) - ??1CPbk2AddressSelect@@UAE@XZ @ 26 NONAME ; CPbk2AddressSelect::~CPbk2AddressSelect(void) - ?MapVPbkFieldTypeToAddressGroupId@Pbk2AddressTools@@SA?AW4TPbk2FieldGroupId@@PBVMVPbkFieldType@@@Z @ 27 NONAME ; enum TPbk2FieldGroupId Pbk2AddressTools::MapVPbkFieldTypeToAddressGroupId(class MVPbkFieldType const *) - ?GetAddressShortPreviewLC@Pbk2AddressTools@@SAXAAVMVPbkStoreContact@@W4TPbk2FieldGroupId@@AAVRBuf16@@@Z @ 28 NONAME ; void Pbk2AddressTools::GetAddressShortPreviewLC(class MVPbkStoreContact &, enum TPbk2FieldGroupId, class RBuf16 &) - ?NewL@CPbk2NamesListControl@@SAPAV1@HPBVCCoeControl@@AAVCVPbkContactManager@@AAVMVPbkContactViewBase@@AAVMPbk2ContactNameFormatter@@AAVCPbk2StorePropertyArray@@PAVCPbk2ThumbnailManager@@@Z @ 29 NONAME ; class CPbk2NamesListControl * CPbk2NamesListControl::NewL(int, class CCoeControl const *, class CVPbkContactManager &, class MVPbkContactViewBase &, class MPbk2ContactNameFormatter &, class CPbk2StorePropertyArray &, class CPbk2ThumbnailManager *) - ?AcceptDelayedFetchL@CPbk2FetchDlg@@QAEXABVTDesC8@@@Z @ 30 NONAME ; void CPbk2FetchDlg::AcceptDelayedFetchL(class TDesC8 const &) - ?SetViewL@CPbk2NamesListControl@@QAEXAAVMVPbkContactViewBase@@@Z @ 31 NONAME ; void CPbk2NamesListControl::SetViewL(class MVPbkContactViewBase &) - ?CreateTitlePanePictureLC@Pbk2TitlePanePictureFactory@@SAPAVCEikImage@@PBVMVPbkStoreContact@@AAVCPbk2StorePropertyArray@@@Z @ 32 NONAME ; class CEikImage * Pbk2TitlePanePictureFactory::CreateTitlePanePictureLC(class MVPbkStoreContact const *, class CPbk2StorePropertyArray &) - ?SetCommandObserver@CPbk2InputAbsorber@@QAEXPAVMEikCommandObserver@@@Z @ 33 NONAME ; void CPbk2InputAbsorber::SetCommandObserver(class MEikCommandObserver *) - ?InitializeL@CPbk2ContactEditorReadonlyField@@QAEXPAVMPbk2ContactEditorUIField@@@Z @ 34 NONAME ; void CPbk2ContactEditorReadonlyField::InitializeL(class MPbk2ContactEditorUIField *) - ?SetCurrentGroupLinkL@CPbk2NamesListControl@@QAEXPAVMVPbkContactLink@@@Z @ 35 NONAME ; void CPbk2NamesListControl::SetCurrentGroupLinkL(class MVPbkContactLink *) - ?Reset@CPbk2NamesListControl@@QAEXXZ @ 36 NONAME ; void CPbk2NamesListControl::Reset(void) - ?RemoveObserver@CPbk2ContactInfoControl@@QAEXAAVMPbk2ControlObserver@@@Z @ 37 NONAME ; void CPbk2ContactInfoControl::RemoveObserver(class MPbk2ControlObserver &) - ?NewL@CPbk2StoreListQuery@@SAPAV1@XZ @ 38 NONAME ; class CPbk2StoreListQuery * CPbk2StoreListQuery::NewL(void) - ?NewLC@CPbk2InputAbsorber@@SAPAV1@H@Z @ 39 NONAME ; class CPbk2InputAbsorber * CPbk2InputAbsorber::NewLC(int) - ?NewL@CPbk2MergePhotoConflictDlg@@SAPAV1@PAVMVPbkBaseContact@@0PAH@Z @ 40 NONAME ; class CPbk2MergePhotoConflictDlg * CPbk2MergePhotoConflictDlg::NewL(class MVPbkBaseContact *, class MVPbkBaseContact *, int *) - ??0CPbk2NamesListControl@@QAE@PBVCCoeControl@@AAVCVPbkContactManager@@AAVMVPbkContactViewBase@@AAVMPbk2ContactNameFormatter@@AAVCPbk2StorePropertyArray@@@Z @ 41 NONAME ; CPbk2NamesListControl::CPbk2NamesListControl(class CCoeControl const *, class CVPbkContactManager &, class MVPbkContactViewBase &, class MPbk2ContactNameFormatter &, class CPbk2StorePropertyArray &) - ?SetTextL@CPbk2ContactEditorReadonlyField@@QAEXPBVTDesC16@@@Z @ 42 NONAME ; void CPbk2ContactEditorReadonlyField::SetTextL(class TDesC16 const *) - ?GiveViewL@CPbk2NamesListControl@@QAEXPAVMVPbkContactViewBase@@@Z @ 43 NONAME ; void CPbk2NamesListControl::GiveViewL(class MVPbkContactViewBase *) - ?FieldLabel@CPbk2ContactEditorUIFieldBase@@UBEABVTDesC16@@XZ @ 44 NONAME ; class TDesC16 const & CPbk2ContactEditorUIFieldBase::FieldLabel(void) const - ?RemoveDefaultL@CPbk2DefaultAttributeProcess@@QAEXW4TVPbkDefaultType@@@Z @ 45 NONAME ; void CPbk2DefaultAttributeProcess::RemoveDefaultL(enum TVPbkDefaultType) - ?MassUpdateSkipProgressNote@CPbk2NamesListControl@@QAEXH@Z @ 46 NONAME ; void CPbk2NamesListControl::MassUpdateSkipProgressNote(int) - ?MapAddressToVersitParam@Pbk2AddressTools@@SA?AW4TVPbkFieldTypeParameter@@W4TPbk2FieldGroupId@@@Z @ 47 NONAME ; enum TVPbkFieldTypeParameter Pbk2AddressTools::MapAddressToVersitParam(enum TPbk2FieldGroupId) - ??0TPbk2AddressSelectParams@@QAE@AAVMVPbkStoreContact@@ABVCVPbkContactManager@@AAVMPbk2ContactNameFormatter@@ABVCPbk2FieldPropertyArray@@AAVTResourceReader@@H@Z @ 48 NONAME ; TPbk2AddressSelectParams::TPbk2AddressSelectParams(class MVPbkStoreContact &, class CVPbkContactManager const &, class MPbk2ContactNameFormatter &, class CPbk2FieldPropertyArray const &, class TResourceReader &, int) - ?NewL@CPbk2MergeConflictsDlg@@SAPAV1@PAVMPbk2MergeResolver@@H@Z @ 49 NONAME ; class CPbk2MergeConflictsDlg * CPbk2MergeConflictsDlg::NewL(class MPbk2MergeResolver *, int) - ?NewL@CPbk2ContactIconsUtils@@SAPAV1@AAVCPbk2StorePropertyArray@@PAVMPbk2ContactUiControlExtension@@@Z @ 50 NONAME ; class CPbk2ContactIconsUtils * CPbk2ContactIconsUtils::NewL(class CPbk2StorePropertyArray &, class MPbk2ContactUiControlExtension *) - ?HandleCustomFieldCommandL@CPbk2ContactEditorUIFieldBase@@UAEHH@Z @ 51 NONAME ; int CPbk2ContactEditorUIFieldBase::HandleCustomFieldCommandL(int) - ?NewL@CPbk2InputAbsorber@@SAPAV1@H@Z @ 52 NONAME ; class CPbk2InputAbsorber * CPbk2InputAbsorber::NewL(int) - ??BTParams@CPbk2FetchDlg@@QAE?AVTCleanupItem@@XZ @ 53 NONAME ; CPbk2FetchDlg::TParams::operator class TCleanupItem(void) - ?SetDefaultPriorities@TPbk2AddressSelectParams@@QAEXABVRVPbkContactFieldDefaultPriorities@@@Z @ 54 NONAME ; void TPbk2AddressSelectParams::SetDefaultPriorities(class RVPbkContactFieldDefaultPriorities const &) - ?CreatePhoneNumberFormatterL@Pbk2PhoneNumberFormatterFactory@@SAPAVMPbk2PhoneNumberFormatter@@H@Z @ 55 NONAME ; class MPbk2PhoneNumberFormatter * Pbk2PhoneNumberFormatterFactory::CreatePhoneNumberFormatterL(int) - ?RemoveObserver@CPbk2NamesListControl@@QAEXAAVMPbk2ControlObserver@@@Z @ 56 NONAME ; void CPbk2NamesListControl::RemoveObserver(class MPbk2ControlObserver &) - ?HideThumbnail@CPbk2ThumbnailLoader@@QAEXXZ @ 57 NONAME ; void CPbk2ThumbnailLoader::HideThumbnail(void) - ?CreateListboxIconArrayL@CPbk2ContactIconsUtils@@SAPAVCPbk2IconArray@@H@Z @ 58 NONAME ; class CPbk2IconArray * CPbk2ContactIconsUtils::CreateListboxIconArrayL(int) - ?SetFieldLabelL@CPbk2ContactEditorUIFieldBase@@UAEXABVTDesC16@@@Z @ 59 NONAME ; void CPbk2ContactEditorUIFieldBase::SetFieldLabelL(class TDesC16 const &) - ?NewL@CPbk2ThumbnailLoader@@SAPAV1@AAVCVPbkContactManager@@@Z @ 60 NONAME ; class CPbk2ThumbnailLoader * CPbk2ThumbnailLoader::NewL(class CVPbkContactManager &) - ?NewL@CPbk2PhonebookInfoDlg@@SAPAV1@XZ @ 61 NONAME ; class CPbk2PhonebookInfoDlg * CPbk2PhonebookInfoDlg::NewL(void) - ?NewL@CPbk2NamesListControl@@SAPAV1@HPBVCCoeControl@@AAVCVPbkContactManager@@AAVMVPbkContactViewBase@@AAVMPbk2ContactNameFormatter@@AAVCPbk2StorePropertyArray@@@Z @ 62 NONAME ; class CPbk2NamesListControl * CPbk2NamesListControl::NewL(int, class CCoeControl const *, class CVPbkContactManager &, class MVPbkContactViewBase &, class MPbk2ContactNameFormatter &, class CPbk2StorePropertyArray &) - ?AllowPointerEvents@CPbk2NamesListControl@@QAEXH@Z @ 63 NONAME ; void CPbk2NamesListControl::AllowPointerEvents(int) - ?GetIconIdsForContactL@CPbk2ContactIconsUtils@@QBEXABVMVPbkViewContact@@AAV?$RArray@VTPbk2IconId@@@@@Z @ 64 NONAME ; void CPbk2ContactIconsUtils::GetIconIdsForContactL(class MVPbkViewContact const &, class RArray &) const - ?ExecuteLD@CPbk2MemoryEntryDefaultsDlg@@QAEXXZ @ 65 NONAME ; void CPbk2MemoryEntryDefaultsDlg::ExecuteLD(void) - ?NewL@CPbk2GeneralConfirmationQuery@@SAPAV1@XZ @ 66 NONAME ; class CPbk2GeneralConfirmationQuery * CPbk2GeneralConfirmationQuery::NewL(void) - ?SetDefaultsL@CPbk2DefaultAttributeProcess@@QAEXPAV?$CArrayFixFlat@W4TVPbkDefaultType@@@@AAVMVPbkStoreContactField@@@Z @ 67 NONAME ; void CPbk2DefaultAttributeProcess::SetDefaultsL(class CArrayFixFlat *, class MVPbkStoreContactField &) - ?NewL@CPbk2MemoryEntryDefaultsDlg@@SAPAV1@AAVCPbk2PresentationContact@@AAVCVPbkContactManager@@@Z @ 68 NONAME ; class CPbk2MemoryEntryDefaultsDlg * CPbk2MemoryEntryDefaultsDlg::NewL(class CPbk2PresentationContact &, class CVPbkContactManager &) - ?AttemptExitL@CPbk2AddressSelect@@QAEXH@Z @ 69 NONAME ; void CPbk2AddressSelect::AttemptExitL(int) - ?SetFocusedFieldIndex@CPbk2ContactUiControlSubstitute@@UAEXH@Z @ 70 NONAME ; void CPbk2ContactUiControlSubstitute::SetFocusedFieldIndex(int) - ?SetUseDefaultDirectly@TPbk2AddressSelectParams@@QAEXH@Z @ 71 NONAME ; void TPbk2AddressSelectParams::SetUseDefaultDirectly(int) - ?ExecuteLD@CPbk2ContactEditorDlg@@QAEXXZ @ 72 NONAME ; void CPbk2ContactEditorDlg::ExecuteLD(void) - ?SetFocus@CPbk2ContactEditorUIFieldBase@@UAEXXZ @ 73 NONAME ; void CPbk2ContactEditorUIFieldBase::SetFocus(void) - ?Refresh@CPbk2ThumbnailLoader@@QAEXXZ @ 74 NONAME ; void CPbk2ThumbnailLoader::Refresh(void) - ?ExecuteLD@CPbk2FetchDlg@@QAEHXZ @ 75 NONAME ; int CPbk2FetchDlg::ExecuteLD(void) - ?NewL@CPbk2UIFieldArray@@SAPAV1@ABVTDesC16@@AAVRFs@@AAVMPbk2UIFieldFactory@@@Z @ 76 NONAME ; class CPbk2UIFieldArray * CPbk2UIFieldArray::NewL(class TDesC16 const &, class RFs &, class MPbk2UIFieldFactory &) - ?CommitSettingsL@CPbk2SettingsListControl@@QAEXXZ @ 77 NONAME ; void CPbk2SettingsListControl::CommitSettingsL(void) - ?NewL@CPbk2AddressSelect@@SAPAV1@AAVTPbk2AddressSelectParams@@@Z @ 78 NONAME ; class CPbk2AddressSelect * CPbk2AddressSelect::NewL(class TPbk2AddressSelectParams &) - ?Reset@CPbk2ThumbnailLoader@@QAEXXZ @ 79 NONAME ; void CPbk2ThumbnailLoader::Reset(void) - ?ExecuteLD@CPbk2MemoryEntryDefaultsAssignDlg@@QAEHABVCPbk2PresentationContactFieldCollection@@ABVCVPbkContactManager@@ABVMPbk2FieldPropertyArray@@W4TVPbkContactActionTypeSelector@VPbkFieldTypeSelectorFactory@@@Z @ 80 NONAME ; int CPbk2MemoryEntryDefaultsAssignDlg::ExecuteLD(class CPbk2PresentationContactFieldCollection const &, class CVPbkContactManager const &, class MPbk2FieldPropertyArray const &, enum VPbkFieldTypeSelectorFactory::TVPbkContactActionTypeSelector) - ?NewL@CPbk2AddressSelect@@SAPAV1@AAVTPbk2AddressSelectParams@@AAVCVPbkFieldTypeSelector@@PBV?$TArray@PAVMVPbkStoreContact@@@@PBV?$TArray@PAVCPbk2PresenceIconInfo@@@@@Z @ 81 NONAME ; class CPbk2AddressSelect * CPbk2AddressSelect::NewL(class TPbk2AddressSelectParams &, class CVPbkFieldTypeSelector &, class TArray const *, class TArray const *) - ?PropertyCount@TPbk2AddItemWrapper@@QBEHXZ @ 82 NONAME ; int TPbk2AddItemWrapper::PropertyCount(void) const - ?ExecuteLD@CPbk2AddressSelect@@QAEPAVMVPbkStoreContactField@@XZ @ 83 NONAME ; class MVPbkStoreContactField * CPbk2AddressSelect::ExecuteLD(void) - ?ControlId@CPbk2ContactEditorUIFieldBase@@UAEHXZ @ 84 NONAME ; int CPbk2ContactEditorUIFieldBase::ControlId(void) - ?IsWaiting@CPbk2InputAbsorber@@QBEHXZ @ 85 NONAME ; int CPbk2InputAbsorber::IsWaiting(void) const - ??1CPbk2ContactEditorUIFieldBase@@UAE@XZ @ 86 NONAME ; CPbk2ContactEditorUIFieldBase::~CPbk2ContactEditorUIFieldBase(void) - ?SetFocusedField@CPbk2ContactUiControlSubstitute@@QAEXABVMVPbkBaseContactField@@@Z @ 87 NONAME ; void CPbk2ContactUiControlSubstitute::SetFocusedField(class MVPbkBaseContactField const &) - ?GetAddressPreviewLC@Pbk2AddressTools@@SAXAAVMVPbkStoreContact@@W4TPbk2FieldGroupId@@AAVRBuf16@@@Z @ 88 NONAME ; void Pbk2AddressTools::GetAddressPreviewLC(class MVPbkStoreContact &, enum TPbk2FieldGroupId, class RBuf16 &) - ?NewL@CPbk2AddItemToContactDlg@@SAPAV1@XZ @ 89 NONAME ; class CPbk2AddItemToContactDlg * CPbk2AddItemToContactDlg::NewL(void) - ?NewL@CPbk2FieldFormatter@@SAPAV1@ABVMPbk2FieldPropertyArray@@ABVMVPbkFieldTypeList@@@Z @ 90 NONAME ; class CPbk2FieldFormatter * CPbk2FieldFormatter::NewL(class MPbk2FieldPropertyArray const &, class MVPbkFieldTypeList const &) - ?NewL@CPbk2PrependDlg@@SAPAV1@AAVTDes16@@@Z @ 91 NONAME ; class CPbk2PrependDlg * CPbk2PrependDlg::NewL(class TDes16 &) - ?AddObserverL@CPbk2NamesListControl@@QAEXAAVMPbk2ControlObserver@@@Z @ 92 NONAME ; void CPbk2NamesListControl::AddObserverL(class MPbk2ControlObserver &) - ?FormatFieldContentL@CPbk2FieldFormatter@@QAE?AVTPtrC16@@ABVMVPbkBaseContactField@@ABVMVPbkFieldType@@@Z @ 93 NONAME ; class TPtrC16 CPbk2FieldFormatter::FormatFieldContentL(class MVPbkBaseContactField const &, class MVPbkFieldType const &) - ?SetTitleToIncludeContactName@TPbk2AddressSelectParams@@QAEXH@Z @ 94 NONAME ; void TPbk2AddressSelectParams::SetTitleToIncludeContactName(int) - ?SetSelectedStore@CPbk2ContactUiControlSubstitute@@QAEXAAVMVPbkContactStore@@@Z @ 95 NONAME ; void CPbk2ContactUiControlSubstitute::SetSelectedStore(class MVPbkContactStore &) - ?SetFocusedField@TPbk2AddressSelectParams@@QAEXPBVMVPbkStoreContactField@@@Z @ 96 NONAME ; void TPbk2AddressSelectParams::SetFocusedField(class MVPbkStoreContactField const *) - ?GetAddressFieldsLC@Pbk2AddressTools@@SAXAAVMVPbkStoreContact@@W4TPbk2FieldGroupId@@AAV?$RHashMap@HVTPtrC16@@@@@Z @ 97 NONAME ; void Pbk2AddressTools::GetAddressFieldsLC(class MVPbkStoreContact &, enum TPbk2FieldGroupId, class RHashMap &) - ?SetParentUiControl@CPbk2ContactUiControlSubstitute@@QAEXAAVMPbk2ContactUiControl@@@Z @ 98 NONAME ; void CPbk2ContactUiControlSubstitute::SetParentUiControl(class MPbk2ContactUiControl &) - ?ExecuteLD@CPbk2StoreListQuery@@QAEHABVTDesC16@@AAVCVPbkContactStoreUriArray@@@Z @ 99 NONAME ; int CPbk2StoreListQuery::ExecuteLD(class TDesC16 const &, class CVPbkContactStoreUriArray &) - ?DenyDelayedFetchL@CPbk2FetchDlg@@QAEXABVTDesC8@@@Z @ 100 NONAME ; void CPbk2FetchDlg::DenyDelayedFetchL(class TDesC8 const &) - ??0CPbk2ContactEditorUIFieldBase@@IAE@PAVMPbk2UIField@@AAVMPbk2ContactEditorUiBuilder@@AAVCPbk2IconInfoContainer@@H@Z @ 101 NONAME ; CPbk2ContactEditorUIFieldBase::CPbk2ContactEditorUIFieldBase(class MPbk2UIField *, class MPbk2ContactEditorUiBuilder &, class CPbk2IconInfoContainer &, int) - ?LoadThumbnail@CPbk2ThumbnailLoader@@QAEXPAVMVPbkStoreContact@@PBVCEikListBox@@W4TPbk2ThumbnailLocation@@@Z @ 102 NONAME ; void CPbk2ThumbnailLoader::LoadThumbnail(class MVPbkStoreContact *, class CEikListBox const *, enum TPbk2ThumbnailLocation) - ?LoadBitmapToFieldL@CPbk2ContactEditorUIFieldBase@@UAEXABVTPbk2IconId@@@Z @ 103 NONAME ; void CPbk2ContactEditorUIFieldBase::LoadBitmapToFieldL(class TPbk2IconId const &) - ?MapCtrlTypeToAddress@Pbk2AddressTools@@SA?AW4TPbk2FieldGroupId@@H@Z @ 104 NONAME ; enum TPbk2FieldGroupId Pbk2AddressTools::MapCtrlTypeToAddress(int) - ?MapAddressToOrdering@Pbk2AddressTools@@SAHW4TPbk2FieldGroupId@@@Z @ 105 NONAME ; int Pbk2AddressTools::MapAddressToOrdering(enum TPbk2FieldGroupId) - ?SetOpeningCca@CPbk2NamesListControl@@QAEXH@Z @ 106 NONAME ; void CPbk2NamesListControl::SetOpeningCca(int) - ?ConsumesKeyEvent@CPbk2ContactEditorUIFieldBase@@UAEHABUTKeyEvent@@W4TEventCode@@@Z @ 107 NONAME ; int CPbk2ContactEditorUIFieldBase::ConsumesKeyEvent(struct TKeyEvent const &, enum TEventCode) - ?IsAddressPreviewEmptyL@Pbk2AddressTools@@SAHAAVMVPbkStoreContact@@W4TPbk2FieldGroupId@@@Z @ 108 NONAME ; int Pbk2AddressTools::IsAddressPreviewEmptyL(class MVPbkStoreContact &, enum TPbk2FieldGroupId) - ?MapCtrlTypeToViewType@Pbk2AddressTools@@SA?AW4TActiveView@TPbk2ContactEditorParams@@H@Z @ 109 NONAME ; enum TPbk2ContactEditorParams::TActiveView Pbk2AddressTools::MapCtrlTypeToViewType(int) - ?NewL@CPbk2AddItemToContactDlg@@SAPAV1@PAVMPbk2ApplicationServices@@@Z @ 110 NONAME ; class CPbk2AddItemToContactDlg * CPbk2AddItemToContactDlg::NewL(class MPbk2ApplicationServices *) - ?SetQueryAlways@TPbk2AddressSelectParams@@QAEXH@Z @ 111 NONAME ; void TPbk2AddressSelectParams::SetQueryAlways(int) - ?PropertyAt@TPbk2AddItemWrapper@@QBEABVMPbk2FieldProperty@@H@Z @ 112 NONAME ; class MPbk2FieldProperty const & TPbk2AddItemWrapper::PropertyAt(int) const - ?Pbk2ControlKeyEventL@CPbk2AddressSelect@@UAE?AW4TKeyResponse@@ABUTKeyEvent@@W4TEventCode@@@Z @ 113 NONAME ; enum TKeyResponse CPbk2AddressSelect::Pbk2ControlKeyEventL(struct TKeyEvent const &, enum TEventCode) - ?AddObserverL@CPbk2ContactInfoControl@@QAEXAAVMPbk2ControlObserver@@@Z @ 114 NONAME ; void CPbk2ContactInfoControl::AddObserverL(class MPbk2ControlObserver &) - ?HandleViewForegroundEventL@CPbk2NamesListControl@@QAEXH@Z @ 115 NONAME ; void CPbk2NamesListControl::HandleViewForegroundEventL(int) - ?NewL@CPbk2ContactEditorDlg@@SAPAV1@AAVTPbk2ContactEditorParams@@PAVMVPbkStoreContact@@AAVMPbk2EditedContactObserver@@PAVMPbk2ApplicationServices@@PAVHBufC16@@H@Z @ 116 NONAME ; class CPbk2ContactEditorDlg * CPbk2ContactEditorDlg::NewL(class TPbk2ContactEditorParams &, class MVPbkStoreContact *, class MPbk2EditedContactObserver &, class MPbk2ApplicationServices *, class HBufC16 *, int) - ?UIField@CPbk2ContactEditorUIFieldBase@@UBEPAVMPbk2UIField@@XZ @ 117 NONAME ; class MPbk2UIField * CPbk2ContactEditorUIFieldBase::UIField(void) const - ?SetSuppressWarnings@TPbk2AddressSelectParams@@QAEXH@Z @ 118 NONAME ; void TPbk2AddressSelectParams::SetSuppressWarnings(int) - ?NewL@CPbk2FetchDlg@@SAPAV1@VTParams@1@AAVMPbk2FetchDlgObserver@@@Z @ 119 NONAME ; class CPbk2FetchDlg * CPbk2FetchDlg::NewL(class CPbk2FetchDlg::TParams, class MPbk2FetchDlgObserver &) - ??1CPbk2ContactUiControlSubstitute@@UAE@XZ @ 120 NONAME ; CPbk2ContactUiControlSubstitute::~CPbk2ContactUiControlSubstitute(void) - ?ControlText@CPbk2ContactEditorUIFieldBase@@UBEABVTDesC16@@XZ @ 121 NONAME ; class TDesC16 const & CPbk2ContactEditorUIFieldBase::ControlText(void) const - ?NewL@CPbk2ContactEditorDlg@@SAPAV1@AAVTPbk2ContactEditorParams@@PAVMVPbkStoreContact@@AAVMPbk2EditedContactObserver@@@Z @ 122 NONAME ; class CPbk2ContactEditorDlg * CPbk2ContactEditorDlg::NewL(class TPbk2ContactEditorParams &, class MVPbkStoreContact *, class MPbk2EditedContactObserver &) + ??0CPbk2NamesListControl@@QAE@PBVCCoeControl@@AAVCVPbkContactManager@@AAVMVPbkContactViewBase@@AAVMPbk2ContactNameFormatter@@AAVCPbk2StorePropertyArray@@@Z @ 1 NONAME ; CPbk2NamesListControl::CPbk2NamesListControl(class CCoeControl const *, class CVPbkContactManager &, class MVPbkContactViewBase &, class MPbk2ContactNameFormatter &, class CPbk2StorePropertyArray &) + ??0TParams@CPbk2FetchDlg@@QAE@XZ @ 2 NONAME ; CPbk2FetchDlg::TParams::TParams(void) + ??0TPbk2AddItemWrapper@@QAE@ABVCPbk2FieldPropertyGroup@@@Z @ 3 NONAME ; TPbk2AddItemWrapper::TPbk2AddItemWrapper(class CPbk2FieldPropertyGroup const &) + ??0TPbk2AddItemWrapper@@QAE@ABVMPbk2FieldProperty@@@Z @ 4 NONAME ; TPbk2AddItemWrapper::TPbk2AddItemWrapper(class MPbk2FieldProperty const &) + ??0TPbk2AddressSelectParams@@QAE@AAVMVPbkStoreContact@@ABVCVPbkContactManager@@AAVMPbk2ContactNameFormatter@@ABVCPbk2FieldPropertyArray@@AAVTResourceReader@@H@Z @ 5 NONAME ; TPbk2AddressSelectParams::TPbk2AddressSelectParams(class MVPbkStoreContact &, class CVPbkContactManager const &, class MPbk2ContactNameFormatter &, class CPbk2FieldPropertyArray const &, class TResourceReader &, int) + ??1CPbk2AddressSelect@@UAE@XZ @ 6 NONAME ; CPbk2AddressSelect::~CPbk2AddressSelect(void) + ??1CPbk2ContactUiControlSubstitute@@UAE@XZ @ 7 NONAME ; CPbk2ContactUiControlSubstitute::~CPbk2ContactUiControlSubstitute(void) + ??BTParams@CPbk2FetchDlg@@QAE?AVTCleanupItem@@XZ @ 8 NONAME ; CPbk2FetchDlg::TParams::operator class TCleanupItem(void) + ?AcceptDelayedFetchL@CPbk2FetchDlg@@QAEXABVTDesC8@@@Z @ 9 NONAME ; void CPbk2FetchDlg::AcceptDelayedFetchL(class TDesC8 const &) + ?AddObserverL@CPbk2ContactInfoControl@@QAEXAAVMPbk2ControlObserver@@@Z @ 10 NONAME ; void CPbk2ContactInfoControl::AddObserverL(class MPbk2ControlObserver &) + ?AddObserverL@CPbk2NamesListControl@@QAEXAAVMPbk2ControlObserver@@@Z @ 11 NONAME ; void CPbk2NamesListControl::AddObserverL(class MPbk2ControlObserver &) + ?AttemptExitL@CPbk2AddressSelect@@QAEXH@Z @ 12 NONAME ; void CPbk2AddressSelect::AttemptExitL(int) + ?CommitSettingsL@CPbk2SettingsListControl@@QAEXXZ @ 13 NONAME ; void CPbk2SettingsListControl::CommitSettingsL(void) + ?CreatePhoneNumberFormatterL@Pbk2PhoneNumberFormatterFactory@@SAPAVMPbk2PhoneNumberFormatter@@H@Z @ 14 NONAME ; class MPbk2PhoneNumberFormatter * Pbk2PhoneNumberFormatterFactory::CreatePhoneNumberFormatterL(int) + ?ExecuteLD@CPbk2AddItemToContactDlg@@QAEHAAV?$RArray@VTPbk2AddItemWrapper@@@@PBVTPbk2AddItemDialogParams@@@Z @ 15 NONAME ; int CPbk2AddItemToContactDlg::ExecuteLD(class RArray &, class TPbk2AddItemDialogParams const *) + ?ExecuteLD@CPbk2AddressSelect@@QAEPAVMVPbkStoreContactField@@XZ @ 16 NONAME ; class MVPbkStoreContactField * CPbk2AddressSelect::ExecuteLD(void) + ?ExecuteLD@CPbk2ContactEditorDlg@@QAEXXZ @ 17 NONAME ; void CPbk2ContactEditorDlg::ExecuteLD(void) + ?ExecuteLD@CPbk2FetchDlg@@QAEHXZ @ 18 NONAME ; int CPbk2FetchDlg::ExecuteLD(void) + ?ExecuteLD@CPbk2GeneralConfirmationQuery@@QAEHABVMVPbkBaseContact@@H@Z @ 19 NONAME ; int CPbk2GeneralConfirmationQuery::ExecuteLD(class MVPbkBaseContact const &, int) + ?ExecuteLD@CPbk2GeneralConfirmationQuery@@QAEHHH@Z @ 20 NONAME ; int CPbk2GeneralConfirmationQuery::ExecuteLD(int, int) + ?ExecuteLD@CPbk2MemoryEntryDefaultsAssignDlg@@QAEHABVCPbk2PresentationContactFieldCollection@@ABVCVPbkContactManager@@ABVMPbk2FieldPropertyArray@@@Z @ 21 NONAME ABSENT ; int CPbk2MemoryEntryDefaultsAssignDlg::ExecuteLD(class CPbk2PresentationContactFieldCollection const &, class CVPbkContactManager const &, class MPbk2FieldPropertyArray const &) + ?ExecuteLD@CPbk2MemoryEntryDefaultsDlg@@QAEXXZ @ 22 NONAME ; void CPbk2MemoryEntryDefaultsDlg::ExecuteLD(void) + ?ExecuteLD@CPbk2PhonebookInfoDlg@@QAEXAAVCVPbkContactStoreUriArray@@@Z @ 23 NONAME ; void CPbk2PhonebookInfoDlg::ExecuteLD(class CVPbkContactStoreUriArray &) + ?ExecuteLD@CPbk2StoreListQuery@@QAEHABVTDesC16@@AAVCVPbkContactStoreUriArray@@@Z @ 24 NONAME ; int CPbk2StoreListQuery::ExecuteLD(class TDesC16 const &, class CVPbkContactStoreUriArray &) + ?FormatFieldContentL@CPbk2FieldFormatter@@QAE?AVTPtrC16@@ABVMVPbkBaseContactField@@ABVMVPbkFieldType@@@Z @ 25 NONAME ; class TPtrC16 CPbk2FieldFormatter::FormatFieldContentL(class MVPbkBaseContactField const &, class MVPbkFieldType const &) + ?HideThumbnail@CPbk2ThumbnailLoader@@QAEXXZ @ 26 NONAME ; void CPbk2ThumbnailLoader::HideThumbnail(void) + ?IsWaiting@CPbk2InputAbsorber@@QBEHXZ @ 27 NONAME ; int CPbk2InputAbsorber::IsWaiting(void) const + ?LoadThumbnail@CPbk2ThumbnailLoader@@QAEXPAVMVPbkStoreContact@@PBVCEikListBox@@W4TPbk2ThumbnailLocation@@@Z @ 28 NONAME ; void CPbk2ThumbnailLoader::LoadThumbnail(class MVPbkStoreContact *, class CEikListBox const *, enum TPbk2ThumbnailLocation) + ?LoadThumbnailL@CPbk2ThumbnailLoader@@QAEXPAVMVPbkContactLink@@PBVCEikListBox@@W4TPbk2ThumbnailLocation@@@Z @ 29 NONAME ; void CPbk2ThumbnailLoader::LoadThumbnailL(class MVPbkContactLink *, class CEikListBox const *, enum TPbk2ThumbnailLocation) + ?NewL@CPbk2AddItemToContactDlg@@SAPAV1@XZ @ 30 NONAME ; class CPbk2AddItemToContactDlg * CPbk2AddItemToContactDlg::NewL(void) + ?NewL@CPbk2AddressSelect@@SAPAV1@AAVTPbk2AddressSelectParams@@@Z @ 31 NONAME ; class CPbk2AddressSelect * CPbk2AddressSelect::NewL(class TPbk2AddressSelectParams &) + ?NewL@CPbk2ContactEditorDlg@@SAPAV1@AAVTPbk2ContactEditorParams@@PAVMVPbkStoreContact@@AAVMPbk2EditedContactObserver@@@Z @ 32 NONAME ; class CPbk2ContactEditorDlg * CPbk2ContactEditorDlg::NewL(class TPbk2ContactEditorParams &, class MVPbkStoreContact *, class MPbk2EditedContactObserver &) + ?NewL@CPbk2ContactInfoControl@@SAPAV1@PBVCCoeControl@@AAVCVPbkContactManager@@AAVMPbk2ContactNameFormatter@@AAVMPbk2FieldPropertyArray@@AAVCPbk2StorePropertyArray@@PAVMPbk2ContactNavigation@@@Z @ 33 NONAME ; class CPbk2ContactInfoControl * CPbk2ContactInfoControl::NewL(class CCoeControl const *, class CVPbkContactManager &, class MPbk2ContactNameFormatter &, class MPbk2FieldPropertyArray &, class CPbk2StorePropertyArray &, class MPbk2ContactNavigation *) + ?NewL@CPbk2ContactUiControlSubstitute@@SAPAV1@XZ @ 34 NONAME ; class CPbk2ContactUiControlSubstitute * CPbk2ContactUiControlSubstitute::NewL(void) + ?NewL@CPbk2FetchDlg@@SAPAV1@VTParams@1@AAVMPbk2FetchDlgObserver@@@Z @ 35 NONAME ; class CPbk2FetchDlg * CPbk2FetchDlg::NewL(class CPbk2FetchDlg::TParams, class MPbk2FetchDlgObserver &) + ?NewL@CPbk2FieldFormatter@@SAPAV1@ABVMPbk2FieldPropertyArray@@ABVMVPbkFieldTypeList@@@Z @ 36 NONAME ; class CPbk2FieldFormatter * CPbk2FieldFormatter::NewL(class MPbk2FieldPropertyArray const &, class MVPbkFieldTypeList const &) + ?NewL@CPbk2GeneralConfirmationQuery@@SAPAV1@XZ @ 37 NONAME ; class CPbk2GeneralConfirmationQuery * CPbk2GeneralConfirmationQuery::NewL(void) + ?NewL@CPbk2InputAbsorber@@SAPAV1@H@Z @ 38 NONAME ; class CPbk2InputAbsorber * CPbk2InputAbsorber::NewL(int) + ?NewL@CPbk2MemoryEntryDefaultsAssignDlg@@SAPAV1@XZ @ 39 NONAME ; class CPbk2MemoryEntryDefaultsAssignDlg * CPbk2MemoryEntryDefaultsAssignDlg::NewL(void) + ?NewL@CPbk2MemoryEntryDefaultsDlg@@SAPAV1@AAVCPbk2PresentationContact@@AAVCVPbkContactManager@@@Z @ 40 NONAME ; class CPbk2MemoryEntryDefaultsDlg * CPbk2MemoryEntryDefaultsDlg::NewL(class CPbk2PresentationContact &, class CVPbkContactManager &) + ?NewL@CPbk2NamesListControl@@SAPAV1@HPBVCCoeControl@@AAVCVPbkContactManager@@AAVMVPbkContactViewBase@@AAVMPbk2ContactNameFormatter@@AAVCPbk2StorePropertyArray@@@Z @ 41 NONAME ; class CPbk2NamesListControl * CPbk2NamesListControl::NewL(int, class CCoeControl const *, class CVPbkContactManager &, class MVPbkContactViewBase &, class MPbk2ContactNameFormatter &, class CPbk2StorePropertyArray &) + ?NewL@CPbk2PhonebookInfoDlg@@SAPAV1@XZ @ 42 NONAME ; class CPbk2PhonebookInfoDlg * CPbk2PhonebookInfoDlg::NewL(void) + ?NewL@CPbk2PrependDlg@@SAPAV1@AAVTDes16@@@Z @ 43 NONAME ; class CPbk2PrependDlg * CPbk2PrependDlg::NewL(class TDes16 &) + ?NewL@CPbk2SettingsListControl@@SAPAV1@PBVCCoeControl@@AAVCPbk2SortOrderManager@@AAVMPbk2SettingsControlExtension@@@Z @ 44 NONAME ; class CPbk2SettingsListControl * CPbk2SettingsListControl::NewL(class CCoeControl const *, class CPbk2SortOrderManager &, class MPbk2SettingsControlExtension &) + ?NewL@CPbk2StoreListQuery@@SAPAV1@XZ @ 45 NONAME ; class CPbk2StoreListQuery * CPbk2StoreListQuery::NewL(void) + ?NewL@CPbk2ThumbnailLoader@@SAPAV1@AAVCVPbkContactManager@@@Z @ 46 NONAME ; class CPbk2ThumbnailLoader * CPbk2ThumbnailLoader::NewL(class CVPbkContactManager &) + ?NewLC@CPbk2InputAbsorber@@SAPAV1@H@Z @ 47 NONAME ; class CPbk2InputAbsorber * CPbk2InputAbsorber::NewLC(int) + ?Pbk2ControlKeyEventL@CPbk2AddressSelect@@UAE?AW4TKeyResponse@@ABUTKeyEvent@@W4TEventCode@@@Z @ 48 NONAME ; enum TKeyResponse CPbk2AddressSelect::Pbk2ControlKeyEventL(struct TKeyEvent const &, enum TEventCode) + ?PropertyAt@TPbk2AddItemWrapper@@QBEABVMPbk2FieldProperty@@H@Z @ 49 NONAME ; class MPbk2FieldProperty const & TPbk2AddItemWrapper::PropertyAt(int) const + ?PropertyCount@TPbk2AddItemWrapper@@QBEHXZ @ 50 NONAME ; int TPbk2AddItemWrapper::PropertyCount(void) const + ?Refresh@CPbk2ThumbnailLoader@@QAEXXZ @ 51 NONAME ; void CPbk2ThumbnailLoader::Refresh(void) + ?RemoveObserver@CPbk2ContactInfoControl@@QAEXAAVMPbk2ControlObserver@@@Z @ 52 NONAME ; void CPbk2ContactInfoControl::RemoveObserver(class MPbk2ControlObserver &) + ?RemoveObserver@CPbk2NamesListControl@@QAEXAAVMPbk2ControlObserver@@@Z @ 53 NONAME ; void CPbk2NamesListControl::RemoveObserver(class MPbk2ControlObserver &) + ?Reset@CPbk2NamesListControl@@QAEXXZ @ 54 NONAME ; void CPbk2NamesListControl::Reset(void) + ?Reset@CPbk2ThumbnailLoader@@QAEXXZ @ 55 NONAME ; void CPbk2ThumbnailLoader::Reset(void) + ?SetAllItemTextL@CPbk2StoreListQuery@@QAEXABVTDesC16@@H@Z @ 56 NONAME ; void CPbk2StoreListQuery::SetAllItemTextL(class TDesC16 const &, int) + ?SetCba@CPbk2AddressSelect@@QAEXH@Z @ 57 NONAME ; void CPbk2AddressSelect::SetCba(int) + ?SetCommandObserver@CPbk2InputAbsorber@@QAEXPAVMEikCommandObserver@@@Z @ 58 NONAME ; void CPbk2InputAbsorber::SetCommandObserver(class MEikCommandObserver *) + ?SetDefaultPriorities@TPbk2AddressSelectParams@@QAEXABVRVPbkContactFieldDefaultPriorities@@@Z @ 59 NONAME ; void TPbk2AddressSelectParams::SetDefaultPriorities(class RVPbkContactFieldDefaultPriorities const &) + ?SetFocusedField@CPbk2ContactUiControlSubstitute@@QAEXABVMVPbkBaseContactField@@@Z @ 60 NONAME ; void CPbk2ContactUiControlSubstitute::SetFocusedField(class MVPbkBaseContactField const &) + ?SetFocusedField@TPbk2AddressSelectParams@@QAEXPBVMVPbkStoreContactField@@@Z @ 61 NONAME ; void TPbk2AddressSelectParams::SetFocusedField(class MVPbkStoreContactField const *) + ?SetFocusedFieldIndex@CPbk2ContactUiControlSubstitute@@UAEXH@Z @ 62 NONAME ; void CPbk2ContactUiControlSubstitute::SetFocusedFieldIndex(int) + ?SetFocusedStoreContact@CPbk2ContactUiControlSubstitute@@QAEXABVMVPbkStoreContact@@@Z @ 63 NONAME ; void CPbk2ContactUiControlSubstitute::SetFocusedStoreContact(class MVPbkStoreContact const &) + ?SetParentUiControl@CPbk2ContactUiControlSubstitute@@QAEXAAVMPbk2ContactUiControl@@@Z @ 64 NONAME ; void CPbk2ContactUiControlSubstitute::SetParentUiControl(class MPbk2ContactUiControl &) + ?SetQueryAlways@TPbk2AddressSelectParams@@QAEXH@Z @ 65 NONAME ; void TPbk2AddressSelectParams::SetQueryAlways(int) + ?SetSelectedStore@CPbk2ContactUiControlSubstitute@@QAEXAAVMVPbkContactStore@@@Z @ 66 NONAME ; void CPbk2ContactUiControlSubstitute::SetSelectedStore(class MVPbkContactStore &) + ?SetTimeFormatL@CPbk2FieldFormatter@@QAEXABVTDesC16@@@Z @ 67 NONAME ; void CPbk2FieldFormatter::SetTimeFormatL(class TDesC16 const &) + ?SetUseDefaultDirectly@TPbk2AddressSelectParams@@QAEXH@Z @ 68 NONAME ; void TPbk2AddressSelectParams::SetUseDefaultDirectly(int) + ?SetViewL@CPbk2NamesListControl@@QAEXAAVMVPbkContactViewBase@@@Z @ 69 NONAME ; void CPbk2NamesListControl::SetViewL(class MVPbkContactViewBase &) + ?StopWait@CPbk2InputAbsorber@@QAEXXZ @ 70 NONAME ; void CPbk2InputAbsorber::StopWait(void) + ?Wait@CPbk2InputAbsorber@@QAEXXZ @ 71 NONAME ; void CPbk2InputAbsorber::Wait(void) + ?CreateTitlePanePictureLC@Pbk2TitlePanePictureFactory@@SAPAVCEikImage@@PBVMVPbkStoreContact@@AAVCPbk2StorePropertyArray@@@Z @ 72 NONAME ; class CEikImage * Pbk2TitlePanePictureFactory::CreateTitlePanePictureLC(class MVPbkStoreContact const *, class CPbk2StorePropertyArray &) + ?NewL@CPbk2DefaultAttributeProcess@@SAPAV1@AAVCVPbkContactManager@@AAVMVPbkStoreContact@@AAVMPbk2DefaultAttributeProcessObserver@@@Z @ 73 NONAME ; class CPbk2DefaultAttributeProcess * CPbk2DefaultAttributeProcess::NewL(class CVPbkContactManager &, class MVPbkStoreContact &, class MPbk2DefaultAttributeProcessObserver &) + ?RemoveDefaultL@CPbk2DefaultAttributeProcess@@QAEXW4TVPbkDefaultType@@@Z @ 74 NONAME ; void CPbk2DefaultAttributeProcess::RemoveDefaultL(enum TVPbkDefaultType) + ?RemoveDefaultsL@CPbk2DefaultAttributeProcess@@QAEXPAV?$CArrayFixFlat@W4TVPbkDefaultType@@@@@Z @ 75 NONAME ; void CPbk2DefaultAttributeProcess::RemoveDefaultsL(class CArrayFixFlat *) + ?SetDefaultL@CPbk2DefaultAttributeProcess@@QAEXW4TVPbkDefaultType@@AAVMVPbkStoreContactField@@@Z @ 76 NONAME ; void CPbk2DefaultAttributeProcess::SetDefaultL(enum TVPbkDefaultType, class MVPbkStoreContactField &) + ?SetDefaultsL@CPbk2DefaultAttributeProcess@@QAEXPAV?$CArrayFixFlat@W4TVPbkDefaultType@@@@AAVMVPbkStoreContactField@@@Z @ 77 NONAME ; void CPbk2DefaultAttributeProcess::SetDefaultsL(class CArrayFixFlat *, class MVPbkStoreContactField &) + ?SetTitleToIncludeContactName@TPbk2AddressSelectParams@@QAEXH@Z @ 78 NONAME ; void TPbk2AddressSelectParams::SetTitleToIncludeContactName(int) + ?GiveViewL@CPbk2NamesListControl@@QAEXPAVMVPbkContactViewBase@@@Z @ 79 NONAME ; void CPbk2NamesListControl::GiveViewL(class MVPbkContactViewBase *) + ?SetSuppressWarnings@TPbk2AddressSelectParams@@QAEXH@Z @ 80 NONAME ; void TPbk2AddressSelectParams::SetSuppressWarnings(int) + ?AllowPointerEvents@CPbk2NamesListControl@@QAEXH@Z @ 81 NONAME ; void CPbk2NamesListControl::AllowPointerEvents(int) + ?CreateListboxIconArrayL@CPbk2ContactIconsUtils@@SAPAVCPbk2IconArray@@H@Z @ 82 NONAME ; class CPbk2IconArray * CPbk2ContactIconsUtils::CreateListboxIconArrayL(int) + ?GetIconIdsForContactL@CPbk2ContactIconsUtils@@QBEXABVMVPbkViewContact@@AAV?$RArray@VTPbk2IconId@@@@@Z @ 83 NONAME ; void CPbk2ContactIconsUtils::GetIconIdsForContactL(class MVPbkViewContact const &, class RArray &) const + ?NewL@CPbk2ContactIconsUtils@@SAPAV1@AAVCPbk2StorePropertyArray@@PAVMPbk2ContactUiControlExtension@@@Z @ 84 NONAME ; class CPbk2ContactIconsUtils * CPbk2ContactIconsUtils::NewL(class CPbk2StorePropertyArray &, class MPbk2ContactUiControlExtension *) + ?NewL@CPbk2AddressSelect@@SAPAV1@AAVTPbk2AddressSelectParams@@AAVCVPbkFieldTypeSelector@@PBV?$TArray@PAVMVPbkStoreContact@@@@PBV?$TArray@PAVCPbk2PresenceIconInfo@@@@@Z @ 85 NONAME ; class CPbk2AddressSelect * CPbk2AddressSelect::NewL(class TPbk2AddressSelectParams &, class CVPbkFieldTypeSelector &, class TArray const *, class TArray const *) + ?MapViewTypeToAddress@Pbk2AddressTools@@SA?AW4TPbk2FieldGroupId@@W4TActiveView@TPbk2ContactEditorParams@@@Z @ 86 NONAME ; enum TPbk2FieldGroupId Pbk2AddressTools::MapViewTypeToAddress(enum TPbk2ContactEditorParams::TActiveView) + ?GetAddressShortPreviewLC@Pbk2AddressTools@@SAXAAVMVPbkStoreContact@@W4TPbk2FieldGroupId@@AAVRBuf16@@@Z @ 87 NONAME ; void Pbk2AddressTools::GetAddressShortPreviewLC(class MVPbkStoreContact &, enum TPbk2FieldGroupId, class RBuf16 &) + ?InitializeL@CPbk2ContactEditorReadonlyField@@QAEXPAVMPbk2ContactEditorUIField@@@Z @ 88 NONAME ; void CPbk2ContactEditorReadonlyField::InitializeL(class MPbk2ContactEditorUIField *) + ?SetTextL@CPbk2ContactEditorReadonlyField@@QAEXPBVTDesC16@@@Z @ 89 NONAME ; void CPbk2ContactEditorReadonlyField::SetTextL(class TDesC16 const *) + ?FieldLabel@CPbk2ContactEditorUIFieldBase@@UBEABVTDesC16@@XZ @ 90 NONAME ; class TDesC16 const & CPbk2ContactEditorUIFieldBase::FieldLabel(void) const + ?MapAddressToVersitParam@Pbk2AddressTools@@SA?AW4TVPbkFieldTypeParameter@@W4TPbk2FieldGroupId@@@Z @ 91 NONAME ; enum TVPbkFieldTypeParameter Pbk2AddressTools::MapAddressToVersitParam(enum TPbk2FieldGroupId) + ?HandleCustomFieldCommandL@CPbk2ContactEditorUIFieldBase@@UAEHH@Z @ 92 NONAME ; int CPbk2ContactEditorUIFieldBase::HandleCustomFieldCommandL(int) + ?SetFieldLabelL@CPbk2ContactEditorUIFieldBase@@UAEXABVTDesC16@@@Z @ 93 NONAME ; void CPbk2ContactEditorUIFieldBase::SetFieldLabelL(class TDesC16 const &) + ?SetFocus@CPbk2ContactEditorUIFieldBase@@UAEXXZ @ 94 NONAME ; void CPbk2ContactEditorUIFieldBase::SetFocus(void) + ?NewL@CPbk2UIFieldArray@@SAPAV1@ABVTDesC16@@AAVRFs@@AAVMPbk2UIFieldFactory@@@Z @ 95 NONAME ; class CPbk2UIFieldArray * CPbk2UIFieldArray::NewL(class TDesC16 const &, class RFs &, class MPbk2UIFieldFactory &) + ?ControlId@CPbk2ContactEditorUIFieldBase@@UAEHXZ @ 96 NONAME ; int CPbk2ContactEditorUIFieldBase::ControlId(void) + ??1CPbk2ContactEditorUIFieldBase@@UAE@XZ @ 97 NONAME ; CPbk2ContactEditorUIFieldBase::~CPbk2ContactEditorUIFieldBase(void) + ?GetAddressPreviewLC@Pbk2AddressTools@@SAXAAVMVPbkStoreContact@@W4TPbk2FieldGroupId@@AAVRBuf16@@@Z @ 98 NONAME ; void Pbk2AddressTools::GetAddressPreviewLC(class MVPbkStoreContact &, enum TPbk2FieldGroupId, class RBuf16 &) + ?GetAddressFieldsLC@Pbk2AddressTools@@SAXAAVMVPbkStoreContact@@W4TPbk2FieldGroupId@@AAV?$RHashMap@HVTPtrC16@@@@@Z @ 99 NONAME ; void Pbk2AddressTools::GetAddressFieldsLC(class MVPbkStoreContact &, enum TPbk2FieldGroupId, class RHashMap &) + ??0CPbk2ContactEditorUIFieldBase@@IAE@PAVMPbk2UIField@@AAVMPbk2ContactEditorUiBuilder@@AAVCPbk2IconInfoContainer@@H@Z @ 100 NONAME ; CPbk2ContactEditorUIFieldBase::CPbk2ContactEditorUIFieldBase(class MPbk2UIField *, class MPbk2ContactEditorUiBuilder &, class CPbk2IconInfoContainer &, int) + ?LoadBitmapToFieldL@CPbk2ContactEditorUIFieldBase@@UAEXABVTPbk2IconId@@@Z @ 101 NONAME ; void CPbk2ContactEditorUIFieldBase::LoadBitmapToFieldL(class TPbk2IconId const &) + ?MapCtrlTypeToAddress@Pbk2AddressTools@@SA?AW4TPbk2FieldGroupId@@H@Z @ 102 NONAME ; enum TPbk2FieldGroupId Pbk2AddressTools::MapCtrlTypeToAddress(int) + ?ConsumesKeyEvent@CPbk2ContactEditorUIFieldBase@@UAEHABUTKeyEvent@@W4TEventCode@@@Z @ 103 NONAME ; int CPbk2ContactEditorUIFieldBase::ConsumesKeyEvent(struct TKeyEvent const &, enum TEventCode) + ?MapCtrlTypeToViewType@Pbk2AddressTools@@SA?AW4TActiveView@TPbk2ContactEditorParams@@H@Z @ 104 NONAME ; enum TPbk2ContactEditorParams::TActiveView Pbk2AddressTools::MapCtrlTypeToViewType(int) + ?UIField@CPbk2ContactEditorUIFieldBase@@UBEPAVMPbk2UIField@@XZ @ 105 NONAME ; class MPbk2UIField * CPbk2ContactEditorUIFieldBase::UIField(void) const + ?MapAddressToOrdering@Pbk2AddressTools@@SAHW4TPbk2FieldGroupId@@@Z @ 106 NONAME ; int Pbk2AddressTools::MapAddressToOrdering(enum TPbk2FieldGroupId) + ?ControlText@CPbk2ContactEditorUIFieldBase@@UBEABVTDesC16@@XZ @ 107 NONAME ; class TDesC16 const & CPbk2ContactEditorUIFieldBase::ControlText(void) const + ?ExecuteLD@CPbk2GeneralConfirmationQuery@@QAEHABVMVPbkBaseContact@@HH@Z @ 108 NONAME ; int CPbk2GeneralConfirmationQuery::ExecuteLD(class MVPbkBaseContact const &, int, int) + ?SetCurrentGroupLinkL@CPbk2NamesListControl@@QAEXPAVMVPbkContactLink@@@Z @ 109 NONAME ; void CPbk2NamesListControl::SetCurrentGroupLinkL(class MVPbkContactLink *) + ?NewL@CPbk2ThumbnailManager@@SAPAV1@AAVCVPbkContactManager@@@Z @ 110 NONAME ; class CPbk2ThumbnailManager * CPbk2ThumbnailManager::NewL(class CVPbkContactManager &) + ?NewL@CPbk2NamesListControl@@SAPAV1@HPBVCCoeControl@@AAVCVPbkContactManager@@AAVMVPbkContactViewBase@@AAVMPbk2ContactNameFormatter@@AAVCPbk2StorePropertyArray@@PAVCPbk2ThumbnailManager@@@Z @ 111 NONAME ; class CPbk2NamesListControl * CPbk2NamesListControl::NewL(int, class CCoeControl const *, class CVPbkContactManager &, class MVPbkContactViewBase &, class MPbk2ContactNameFormatter &, class CPbk2StorePropertyArray &, class CPbk2ThumbnailManager *) + ?ExecuteLD@CPbk2MemoryEntryDefaultsAssignDlg@@QAEHABVCPbk2PresentationContactFieldCollection@@ABVCVPbkContactManager@@ABVMPbk2FieldPropertyArray@@W4TVPbkContactActionTypeSelector@VPbkFieldTypeSelectorFactory@@@Z @ 112 NONAME ; int CPbk2MemoryEntryDefaultsAssignDlg::ExecuteLD(class CPbk2PresentationContactFieldCollection const &, class CVPbkContactManager const &, class MPbk2FieldPropertyArray const &, enum VPbkFieldTypeSelectorFactory::TVPbkContactActionTypeSelector) + ?NewL@CPbk2ContactEditorDlg@@SAPAV1@AAVTPbk2ContactEditorParams@@PAVMVPbkStoreContact@@AAVMPbk2EditedContactObserver@@PAVMPbk2ApplicationServices@@PAVHBufC16@@H@Z @ 113 NONAME ; class CPbk2ContactEditorDlg * CPbk2ContactEditorDlg::NewL(class TPbk2ContactEditorParams &, class MVPbkStoreContact *, class MPbk2EditedContactObserver &, class MPbk2ApplicationServices *, class HBufC16 *, int) + ?NewL@CPbk2AddItemToContactDlg@@SAPAV1@PAVMPbk2ApplicationServices@@@Z @ 114 NONAME ; class CPbk2AddItemToContactDlg * CPbk2AddItemToContactDlg::NewL(class MPbk2ApplicationServices *) + ?NewL@CPbk2MergeConflictsDlg@@SAPAV1@PAVMPbk2MergeResolver@@H@Z @ 115 NONAME ; class CPbk2MergeConflictsDlg * CPbk2MergeConflictsDlg::NewL(class MPbk2MergeResolver *, int) + ?NewL@CPbk2MergePhotoConflictDlg@@SAPAV1@PAVMVPbkBaseContact@@0PAH@Z @ 116 NONAME ; class CPbk2MergePhotoConflictDlg * CPbk2MergePhotoConflictDlg::NewL(class MVPbkBaseContact *, class MVPbkBaseContact *, int *) + ?StopQuery@CPbk2GeneralConfirmationQuery@@QAEXXZ @ 117 NONAME ; void CPbk2GeneralConfirmationQuery::StopQuery(void) + ?HandleViewForegroundEventL@CPbk2NamesListControl@@QAEXH@Z @ 118 NONAME ; void CPbk2NamesListControl::HandleViewForegroundEventL(int) + ?MapVPbkFieldTypeToAddressGroupId@Pbk2AddressTools@@SA?AW4TPbk2FieldGroupId@@PBVMVPbkFieldType@@@Z @ 119 NONAME ; enum TPbk2FieldGroupId Pbk2AddressTools::MapVPbkFieldTypeToAddressGroupId(class MVPbkFieldType const *) + ?IsAddressPreviewEmptyL@Pbk2AddressTools@@SAHAAVMVPbkStoreContact@@W4TPbk2FieldGroupId@@@Z @ 120 NONAME ; int Pbk2AddressTools::IsAddressPreviewEmptyL(class MVPbkStoreContact &, enum TPbk2FieldGroupId) + ?MassUpdateSkipProgressNote@CPbk2NamesListControl@@QAEXH@Z @ 121 NONAME ; void CPbk2NamesListControl::MassUpdateSkipProgressNote(int) + ?SetOpeningCca@CPbk2NamesListControl@@QAEXH@Z @ 122 NONAME ; void CPbk2NamesListControl::SetOpeningCca(int) diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/Commands/inc/CPbk2CommandStore.h --- a/phonebookui/Phonebook2/Commands/inc/CPbk2CommandStore.h Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/Commands/inc/CPbk2CommandStore.h Wed Oct 13 14:15:33 2010 +0300 @@ -73,7 +73,7 @@ * Destroys all the commands in the iCommandArray. * by calling CommandFinished() on each one. */ - IMPORT_C void DestroyAllCommands(); + void DestroyAllCommands(); public: // From MPbk2CommandList IMPORT_C void AddAndExecuteCommandL( diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/Commands/inc/MPbk2CommandResourceRelease.h --- a/phonebookui/Phonebook2/Commands/inc/MPbk2CommandResourceRelease.h Wed Sep 15 11:56:55 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,39 +0,0 @@ -/* -* Copyright (c) 2005-2007 Nokia Corporation and/or its subsidiary(-ies). -* All rights reserved. -* This component and the accompanying materials are made available -* under the terms of "Eclipse Public License v1.0" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: A command extension interface for release resource. -* -*/ - -#ifndef MPBK2COMMANDRESOURCERELEASE_H_ -#define MPBK2COMMANDRESOURCERELEASE_H_ - -/// Phonebook 2 Command MPbk2ResourceRelease interface UID -#define MPbk2ResourceReleaseUID 0xE9D61489 - -// CLASS DECLARATIONS - -/** - * Phonebook 2 command release resource interface. - */ -class MPbk2ResourceRelease - { - public: - /** - * Release resource. - */ - virtual void ReleaseResource() = 0; - - }; - -#endif /* MPBK2COMMANDRESOURCERELEASE_H_ */ diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/Commands/src/CPbk2AiwInterestItemCall.cpp --- a/phonebookui/Phonebook2/Commands/src/CPbk2AiwInterestItemCall.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/Commands/src/CPbk2AiwInterestItemCall.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -27,8 +27,8 @@ #include "MPbk2CommandFactory.h" #include "CPbk2CallTypeSelector.h" #include -#include -#include +#include +#include #include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/Commands/src/CPbk2AiwInterestItemOviSync.cpp --- a/phonebookui/Phonebook2/Commands/src/CPbk2AiwInterestItemOviSync.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/Commands/src/CPbk2AiwInterestItemOviSync.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -22,7 +22,7 @@ #include #include #include -#include +#include #include "Pbk2InternalCommands.hrh" // System includes diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/Commands/src/CPbk2AiwInterestItemPoc.cpp --- a/phonebookui/Phonebook2/Commands/src/CPbk2AiwInterestItemPoc.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/Commands/src/CPbk2AiwInterestItemPoc.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -23,8 +23,8 @@ #include "CPbk2PocCmd.h" #include #include -#include -#include +#include +#include #include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/Commands/src/CPbk2AiwInterestItemSyncMl.cpp --- a/phonebookui/Phonebook2/Commands/src/CPbk2AiwInterestItemSyncMl.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/Commands/src/CPbk2AiwInterestItemSyncMl.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -23,7 +23,7 @@ #include #include #include -#include +#include // System includes #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/Commands/src/CPbk2CallCmd.cpp --- a/phonebookui/Phonebook2/Commands/src/CPbk2CallCmd.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/Commands/src/CPbk2CallCmd.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -38,7 +38,7 @@ #include #include #include -#include +#include #include // System includes diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/Commands/src/CPbk2CallTypeSelector.cpp --- a/phonebookui/Phonebook2/Commands/src/CPbk2CallTypeSelector.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/Commands/src/CPbk2CallTypeSelector.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -22,7 +22,7 @@ // Phonebook 2 #include #include -#include +#include #include // Virtual Phonebook diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/Commands/src/CPbk2CommandHandler.cpp --- a/phonebookui/Phonebook2/Commands/src/CPbk2CommandHandler.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/Commands/src/CPbk2CommandHandler.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -28,8 +28,8 @@ #include #include #include -#include -#include +#include +#include #include #include #include @@ -511,9 +511,13 @@ { aMenuPane->SetItemDimmed( EPbk2CmdDeleteMe, ETrue ); } + if ( aControl.ContactsMarked() ) + { + aMenuPane->SetItemSpecific( EPbk2CmdDeleteMe, EFalse ); + } break; } - + case R_PHONEBOOK2_NAMELIST_CALL_CONTACT_MENU: { // Weed out commands not meant to be used with marked items @@ -544,6 +548,7 @@ if ( aControl.ContactsMarked() ) { + aMenuPane->SetItemDimmed( EPbk2CmdSend, ETrue ); aMenuPane->SetItemDimmed( EPbk2CmdGoToURL, ETrue ); } break; @@ -1127,13 +1132,4 @@ return index; } -// -------------------------------------------------------------------------- -// CPbk2CommandHandler::CommandStore -// -------------------------------------------------------------------------- -// -EXPORT_C CPbk2CommandStore* CPbk2CommandHandler::CommandStore() - { - return iCommandStore; - } - // End of File diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/Commands/src/CPbk2CommandStore.cpp --- a/phonebookui/Phonebook2/Commands/src/CPbk2CommandStore.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/Commands/src/CPbk2CommandStore.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -18,7 +18,6 @@ // INCLUDE FILES #include "CPbk2CommandStore.h" -#include "MPbk2CommandResourceRelease.h" // Phonebook 2 #include @@ -223,25 +222,11 @@ MPbk2Command* arrayCmd = iCommandArray[j]; if (idleDestCmd == arrayCmd) { + // Remove from command array + iCommandArray.Remove(j); iIdleDestructableCommands.Remove(i); - - // Try to get MPbk2ResourceRelease interface. - TUid uid; - uid.iUid = MPbk2ResourceReleaseUID; - MPbk2ResourceRelease* release = static_cast(idleDestCmd->CommandExtension(uid)); - if (release) - { - // Call ReleaseResource before delete. - release->ReleaseResource(); - } - - // Remove from command array - iCommandArray.Remove(j); - delete idleDestCmd; idleDestCmd = NULL; - - break; } } } @@ -252,7 +237,7 @@ // CPbk2CommandStore::DestroyAllCommands // -------------------------------------------------------------------------- // -EXPORT_C void CPbk2CommandStore::DestroyAllCommands() +void CPbk2CommandStore::DestroyAllCommands() { // Delete objects in idle commands array using CommandFinished for (TInt i = 0; i < iCommandArray.Count(); ++i) diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/Commands/src/CPbk2PrependCmd.cpp --- a/phonebookui/Phonebook2/Commands/src/CPbk2PrependCmd.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/Commands/src/CPbk2PrependCmd.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -22,7 +22,7 @@ // From Phonebook2 #include "CPbk2CallCmd.h" #include "CPbk2AiwInterestArray.h" -#include +#include #include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/Commands/src/CPbk2SetToneBase.cpp --- a/phonebookui/Phonebook2/Commands/src/CPbk2SetToneBase.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/Commands/src/CPbk2SetToneBase.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -27,8 +27,8 @@ #include #include #include -#include -#include +#include +#include #include #include #include @@ -40,7 +40,7 @@ #include #include #include -#include +#include // System includes #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/Commands/src/CPbk2SetToneCmd.cpp --- a/phonebookui/Phonebook2/Commands/src/CPbk2SetToneCmd.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/Commands/src/CPbk2SetToneCmd.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -38,7 +38,7 @@ #include #include "CPbk2RingingToneFetch.h" -#include +#include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/Commands/src/TPbk2CopyContactsResults.cpp --- a/phonebookui/Phonebook2/Commands/src/TPbk2CopyContactsResults.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/Commands/src/TPbk2CopyContactsResults.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -22,7 +22,7 @@ #include #include -#include +#include namespace{ diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/Commands/src/cpbk2commandactivator.cpp --- a/phonebookui/Phonebook2/Commands/src/cpbk2commandactivator.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/Commands/src/cpbk2commandactivator.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -188,20 +188,5 @@ iObserver->CommandFinished( *this ); } -// -------------------------------------------------------------------------- -// CPbk2CommandActivator::CommandExtension -// -------------------------------------------------------------------------- -// -TAny* CPbk2CommandActivator::CommandExtension(TUid aExtensionUid ) - { - if( iCommand ) - { - return iCommand->CommandExtension(aExtensionUid); - } - else - { - return NULL; - } - } // End of File diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/Commands/src/cpbk2storestatechecker.cpp --- a/phonebookui/Phonebook2/Commands/src/cpbk2storestatechecker.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/Commands/src/cpbk2storestatechecker.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -20,7 +20,7 @@ #include "cpbk2storestatechecker.h" // Phonebook 2 -#include +#include #include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/CommandsExtension/inc/CPbk2SendContactCmd.h --- a/phonebookui/Phonebook2/CommandsExtension/inc/CPbk2SendContactCmd.h Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/CommandsExtension/inc/CPbk2SendContactCmd.h Wed Oct 13 14:15:33 2010 +0300 @@ -20,9 +20,6 @@ #define CPBK2SENDCONTACTCMD_H // INCLUDES - -#include "MPbk2CommandResourceRelease.h" - #include #include #include @@ -63,8 +60,7 @@ public MPbk2Command, public MPbk2vCardConverterObserver, public MVPbkSingleContactOperationObserver, - private MPbk2ProcessDecoratorObserver, - public MPbk2ResourceRelease + private MPbk2ProcessDecoratorObserver { public: // Construction and destruction /** @@ -85,14 +81,7 @@ void AddObserver( MPbk2CommandObserver& aObserver ); void ResetUiControl(MPbk2ContactUiControl& aUiControl); - TAny* CommandExtension(TUid /*aExtensionUid*/); - public: // From MPbk2ResourceRelease - /*- - * Delete all temp files. - * @Remark It not return until finish deleting all files. - * It is non-reentrant. - */ - void ReleaseResource(); + private: // From CActive void RunL(); TInt RunError( @@ -145,7 +134,7 @@ void SendMsgUsingSendUI( CMessageData* aMsgData ); TBool IsMoreThanOneContact(); - + private: // Data structures /// Process states enum TState @@ -154,8 +143,7 @@ ERetrievingContact, ESelectingSentData, EStopping, - ECancelling, - EReleaseResource + ECancelling }; private: // Data @@ -197,9 +185,6 @@ CPbk2ApplicationServices* iAppServices; /// Own: Send UI CSendUi* iSendUi; - /// Own: - CActiveSchedulerWait* iWaiter; - }; #endif // CPBK2SENDCONTACTCMD_H diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/CommandsExtension/src/CPbk2CopyAddressToClipboardCmd.cpp --- a/phonebookui/Phonebook2/CommandsExtension/src/CPbk2CopyAddressToClipboardCmd.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/CommandsExtension/src/CPbk2CopyAddressToClipboardCmd.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -30,8 +30,8 @@ #include #include #include -#include -#include +#include +#include #include #include // CPlainText diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/CommandsExtension/src/CPbk2CopyContactsCmd.cpp --- a/phonebookui/Phonebook2/CommandsExtension/src/CPbk2CopyContactsCmd.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/CommandsExtension/src/CPbk2CopyContactsCmd.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -24,7 +24,7 @@ #include #include #include -#include +#include #include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/CommandsExtension/src/CPbk2CopyContactsStarterCmd.cpp --- a/phonebookui/Phonebook2/CommandsExtension/src/CPbk2CopyContactsStarterCmd.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/CommandsExtension/src/CPbk2CopyContactsStarterCmd.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -32,7 +32,7 @@ #include #include #include -#include +#include // Virtual Phonebook #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/CommandsExtension/src/CPbk2CopyDetailToClipboardCmd.cpp --- a/phonebookui/Phonebook2/CommandsExtension/src/CPbk2CopyDetailToClipboardCmd.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/CommandsExtension/src/CPbk2CopyDetailToClipboardCmd.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -30,8 +30,8 @@ #include #include #include -#include -#include +#include +#include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/CommandsExtension/src/CPbk2CopyNumberToClipboardCmd.cpp --- a/phonebookui/Phonebook2/CommandsExtension/src/CPbk2CopyNumberToClipboardCmd.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/CommandsExtension/src/CPbk2CopyNumberToClipboardCmd.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -30,8 +30,8 @@ #include #include #include -#include -#include +#include +#include #include // CPlainText #include // CClipboard diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/CommandsExtension/src/CPbk2CreateNewContactCmd.cpp --- a/phonebookui/Phonebook2/CommandsExtension/src/CPbk2CreateNewContactCmd.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/CommandsExtension/src/CPbk2CreateNewContactCmd.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -26,9 +26,9 @@ #include #include #include -#include -#include -#include +#include +#include +#include #include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/CommandsExtension/src/CPbk2DeleteContactsCmd.cpp --- a/phonebookui/Phonebook2/CommandsExtension/src/CPbk2DeleteContactsCmd.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/CommandsExtension/src/CPbk2DeleteContactsCmd.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -23,8 +23,8 @@ #include #include "MPbk2ProcessDecorator.h" #include "Pbk2ProcessDecoratorFactory.h" -#include -#include +#include +#include #include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/CommandsExtension/src/CPbk2GoToURLCmd.cpp --- a/phonebookui/Phonebook2/CommandsExtension/src/CPbk2GoToURLCmd.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/CommandsExtension/src/CPbk2GoToURLCmd.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -27,7 +27,7 @@ #include #include #include -#include +#include #include // Virtual Phonebook diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/CommandsExtension/src/CPbk2ImageCmdBase.cpp --- a/phonebookui/Phonebook2/CommandsExtension/src/CPbk2ImageCmdBase.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/CommandsExtension/src/CPbk2ImageCmdBase.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -38,7 +38,7 @@ #include #include #include -#include +#include // System headers #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/CommandsExtension/src/CPbk2InfoDialogCmd.cpp --- a/phonebookui/Phonebook2/CommandsExtension/src/CPbk2InfoDialogCmd.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/CommandsExtension/src/CPbk2InfoDialogCmd.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -21,7 +21,7 @@ #include "CPbk2InfoDialogCmd.h" // Phonebook 2 -#include +#include #include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/CommandsExtension/src/CPbk2MergeConflict.cpp --- a/phonebookui/Phonebook2/CommandsExtension/src/CPbk2MergeConflict.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/CommandsExtension/src/CPbk2MergeConflict.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -17,7 +17,7 @@ // Phonebook2 includes #include -#include +#include #include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/CommandsExtension/src/CPbk2MergeContactsCmd.cpp --- a/phonebookui/Phonebook2/CommandsExtension/src/CPbk2MergeContactsCmd.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/CommandsExtension/src/CPbk2MergeContactsCmd.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -44,9 +44,9 @@ #include #include -#include -#include -#include +#include +#include +#include //Virtual Phonebook #include #include @@ -58,7 +58,7 @@ #include #include #include -#include +#include #include //System diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/CommandsExtension/src/CPbk2MergeResolver.cpp --- a/phonebookui/Phonebook2/CommandsExtension/src/CPbk2MergeResolver.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/CommandsExtension/src/CPbk2MergeResolver.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -33,7 +33,7 @@ #include #include #include -#include +#include // System includes #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/CommandsExtension/src/CPbk2RemoveImageCmd.cpp --- a/phonebookui/Phonebook2/CommandsExtension/src/CPbk2RemoveImageCmd.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/CommandsExtension/src/CPbk2RemoveImageCmd.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -20,7 +20,7 @@ // INCLUDE FILES #include "CPbk2RemoveImageCmd.h" #include "CPbk2ImageManager.h" -#include +#include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/CommandsExtension/src/CPbk2RemoveSpeedDialCmd.cpp --- a/phonebookui/Phonebook2/CommandsExtension/src/CPbk2RemoveSpeedDialCmd.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/CommandsExtension/src/CPbk2RemoveSpeedDialCmd.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -26,7 +26,7 @@ #include #include #include -#include +#include #include // From Virtual Phonebook diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/CommandsExtension/src/CPbk2SendContactCmd.cpp --- a/phonebookui/Phonebook2/CommandsExtension/src/CPbk2SendContactCmd.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/CommandsExtension/src/CPbk2SendContactCmd.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -22,8 +22,8 @@ #include "Pbk2SendCmdUtils.h" #include "CPbk2vCardConverter.h" #include -#include -#include +#include +#include #include #include #include @@ -42,7 +42,7 @@ #include #include #include -#include +#include // System includes #include @@ -369,7 +369,6 @@ iUiControl->RegisterCommand( NULL ); } - delete iWaiter; delete iSelectedContacts; delete iConverter; delete iVCardSender; @@ -547,25 +546,6 @@ ProcessDone( KErrCancel ); break; } - case EReleaseResource: - { - CPbk2AttachmentFileArray& fileArray = iConverter->AttachmentFileArray(); - TInt count = fileArray.Count(); - TInt deleteIndex = count -1; - CPbk2AttachmentFile * file = fileArray.At(deleteIndex); - fileArray.Delete(deleteIndex); - delete file; - - if ( count > 1) - { - IssueRequest(); - } - else - { - iWaiter->AsyncStop(); - } - break; - } } } @@ -575,9 +555,6 @@ // TInt CPbk2SendContactCmd::RunError(TInt aError) { - if( iWaiter && iWaiter->IsStarted() ) - iWaiter->AsyncStop(); - return FilterErrors(aError); } @@ -587,9 +564,6 @@ // void CPbk2SendContactCmd::DoCancel() { - if( iWaiter && iWaiter->IsStarted() ) - iWaiter->AsyncStop(); - delete iRetrieveOperation; iRetrieveOperation = NULL; } @@ -1285,51 +1259,4 @@ return result; } -// -------------------------------------------------------------------------- -// CPbk2SendContactCmd::CommandExtension -// -------------------------------------------------------------------------- -// -TAny* CPbk2SendContactCmd::CommandExtension(TUid aExtensionUid ) - { - if( aExtensionUid == TUid::Uid(MPbk2ResourceReleaseUID) ) - { - return static_cast(this); - } - else - { - return NULL; - } - } - -// -------------------------------------------------------------------------- -// CPbk2SendContactCmd::ReleaseResource -// -------------------------------------------------------------------------- -// -void CPbk2SendContactCmd::ReleaseResource() - { - Cancel(); - if (iConverter) - { - iConverter->Cancel(); - CPbk2AttachmentFileArray& fileArray = iConverter->AttachmentFileArray(); - if (fileArray.Count() > 0) - { - if ( !iWaiter ) - { - TInt err( KErrNone ); - TRAP( err,iWaiter = new (ELeave) CActiveSchedulerWait()); - if ( err != KErrNone ) - { - fileArray.ResetAndDestroy(); - return; - } - } - - iState = EReleaseResource; - IssueRequest(); - iWaiter->Start(); - } - } - } - // End of File diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/CommandsExtension/src/CPbk2SendMessageCmd.cpp --- a/phonebookui/Phonebook2/CommandsExtension/src/CPbk2SendMessageCmd.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/CommandsExtension/src/CPbk2SendMessageCmd.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -26,20 +26,20 @@ #include #include #include -#include +#include #include #include -#include +#include #include #include #include -#include +#include #include #include #include #include #include -#include +#include // Virtual Phonebook #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/CommandsExtension/src/CPbk2SetImageCmd.cpp --- a/phonebookui/Phonebook2/CommandsExtension/src/CPbk2SetImageCmd.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/CommandsExtension/src/CPbk2SetImageCmd.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -25,13 +25,13 @@ #include "CPbk2DrmManager.h" #include "Pbk2DataCaging.hrh" #include "Pbk2PresentationUtils.h" -#include -#include +#include +#include #include #include #include #include -#include +#include // Virtual Phonebook #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/CommandsExtension/src/CPbk2SetThumbnailCmd.cpp --- a/phonebookui/Phonebook2/CommandsExtension/src/CPbk2SetThumbnailCmd.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/CommandsExtension/src/CPbk2SetThumbnailCmd.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -25,8 +25,8 @@ #include "CPbk2DrmManager.h" #include "Pbk2DataCaging.hrh" #include "Pbk2PresentationUtils.h" -#include -#include +#include +#include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/CommandsExtension/src/CPbk2ThumbnailCmdBase.cpp --- a/phonebookui/Phonebook2/CommandsExtension/src/CPbk2ThumbnailCmdBase.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/CommandsExtension/src/CPbk2ThumbnailCmdBase.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -21,7 +21,7 @@ #include "CPbk2ThumbnailCmdBase.h" // Phonebook 2 -#include +#include #include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/CommandsExtension/src/CPbk2ViewImageCmd.cpp --- a/phonebookui/Phonebook2/CommandsExtension/src/CPbk2ViewImageCmd.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/CommandsExtension/src/CPbk2ViewImageCmd.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -22,11 +22,11 @@ // Phonebook 2 #include "Pbk2DataCaging.hrh" -#include +#include #include #include -#include -#include +#include +#include // Virtual Phonebook #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/CommandsExtension/src/CPbk2vCardConverter.cpp --- a/phonebookui/Phonebook2/CommandsExtension/src/CPbk2vCardConverter.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/CommandsExtension/src/CPbk2vCardConverter.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -21,8 +21,8 @@ // Phonebook 2 #include "Pbk2SendCmdUtils.h" #include -#include -#include +#include +#include #include // Virtual Phonebook @@ -138,7 +138,6 @@ delete iVcardFiles; } delete iVCardFile; - delete iRetrieveOperation; delete iVCardContact; iFileWriteStream.Close(); delete iContactOperation; diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/CommandsExtension/src/CPbkRclCmd.cpp --- a/phonebookui/Phonebook2/CommandsExtension/src/CPbkRclCmd.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/CommandsExtension/src/CPbkRclCmd.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -20,7 +20,7 @@ #include "CPbkRclCmd.h" // Phonebook 2 -#include +#include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/CommonUI/rss/Pbk2IconInfo.rss --- a/phonebookui/Phonebook2/CommonUI/rss/Pbk2IconInfo.rss Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/CommonUI/rss/Pbk2IconInfo.rss Wed Oct 13 14:15:33 2010 +0300 @@ -508,18 +508,6 @@ maskId = qgn_prop_radiobutt_on_mask; skinIdMajor = EAknsMajorAvkon; skinIdMinor = EAknsMinorQgnPropRadiobuttOn; - }, - PBK2_ICON_INFO - { - version = 0; - pbk2IconInfoId = PHONEBOOK2_ICON_ID - { - ownerUid = KPbk2UID3; - id = EPbk2qgn_prop_phonebook2_unsync; - }; - mbmFileName = phonebook2_mbm_file_location; - iconId = qgn_prop_phonebook2_unsync; - maskId = qgn_prop_phonebook2_unsync_mask; } }; } diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/CommonUI/src/CPbk2ApplicationServices.cpp --- a/phonebookui/Phonebook2/CommonUI/src/CPbk2ApplicationServices.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/CommonUI/src/CPbk2ApplicationServices.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -26,7 +26,7 @@ #include #include #include -#include +#include #include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/CommonUI/src/CPbk2ContactNavigation.cpp --- a/phonebookui/Phonebook2/CommonUI/src/CPbk2ContactNavigation.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/CommonUI/src/CPbk2ContactNavigation.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -141,14 +141,7 @@ { decorator->SetNaviDecoratorObserver ( const_cast( this ) ); - CAknNavigationDecorator::TControlType controlType = - decorator->ControlType(); - // Set ScrollButtonVisible to ETrue except - // the controlType is CAknNavigationDecorator::ENaviLabel - if( CAknNavigationDecorator::ENaviLabel != controlType ) - { - decorator->MakeScrollButtonVisible( ETrue ); - } + decorator->MakeScrollButtonVisible( ETrue ); } TInt index = 0; diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/CommonUI/src/CPbk2ContactRelocator.cpp --- a/phonebookui/Phonebook2/CommonUI/src/CPbk2ContactRelocator.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/CommonUI/src/CPbk2ContactRelocator.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -25,7 +25,7 @@ #include #include #include -#include +#include #include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/CommonUI/src/CPbk2ContactViewSupplier.cpp --- a/phonebookui/Phonebook2/CommonUI/src/CPbk2ContactViewSupplier.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/CommonUI/src/CPbk2ContactViewSupplier.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -25,7 +25,7 @@ #include #include #include -#include +#include #include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/CommonUI/src/CPbk2DrmManager.cpp --- a/phonebookui/Phonebook2/CommonUI/src/CPbk2DrmManager.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/CommonUI/src/CPbk2DrmManager.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -21,7 +21,7 @@ #include "CPbk2DrmManager.h" // Phonebook 2 -#include +#include // System includes #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/CommonUI/src/CPbk2IconFactory.cpp --- a/phonebookui/Phonebook2/CommonUI/src/CPbk2IconFactory.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/CommonUI/src/CPbk2IconFactory.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -22,7 +22,7 @@ #include "CPbk2IconInfo.h" #include #include -#include +#include #include // System includes diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/CommonUI/src/CPbk2RingingToneFetch.cpp --- a/phonebookui/Phonebook2/CommonUI/src/CPbk2RingingToneFetch.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/CommonUI/src/CPbk2RingingToneFetch.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -20,7 +20,7 @@ #include // Phonebook 2 -#include +#include // System includes #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/CommonUI/src/CPbk2StoreManager.cpp --- a/phonebookui/Phonebook2/CommonUI/src/CPbk2StoreManager.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/CommonUI/src/CPbk2StoreManager.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -24,7 +24,7 @@ #include #include #include -#include +#include // Virtual Phonebook #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/EABI/Pbk2CommandsU.DEF --- a/phonebookui/Phonebook2/EABI/Pbk2CommandsU.DEF Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/EABI/Pbk2CommandsU.DEF Wed Oct 13 14:15:33 2010 +0300 @@ -73,6 +73,4 @@ _ZThn28_N24CPbk2AiwInterestItemBase7AttachLEiii @ 72 NONAME ; ## _ZThn28_NK24CPbk2AiwInterestItemBase10InterestIdEv @ 73 NONAME ; ## _ZN20CPbk2DriveSpaceCheck8SetStoreERK7TDesC16 @ 74 NONAME - _ZN17CPbk2CommandStore18DestroyAllCommandsEv @ 75 NONAME - _ZN19CPbk2CommandHandler12CommandStoreEv @ 76 NONAME diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/EABI/Pbk2UiControlsU.DEF --- a/phonebookui/Phonebook2/EABI/Pbk2UiControlsU.DEF Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/EABI/Pbk2UiControlsU.DEF Wed Oct 13 14:15:33 2010 +0300 @@ -1,207 +1,206 @@ EXPORTS - _ZN13CPbk2FetchDlg17DenyDelayedFetchLERK6TDesC8 @ 1 NONAME - _ZN13CPbk2FetchDlg19AcceptDelayedFetchLERK6TDesC8 @ 2 NONAME - _ZN13CPbk2FetchDlg4NewLENS_7TParamsER21MPbk2FetchDlgObserver @ 3 NONAME - _ZN13CPbk2FetchDlg7TParamsC1Ev @ 4 NONAME - _ZN13CPbk2FetchDlg7TParamsC2Ev @ 5 NONAME - _ZN13CPbk2FetchDlg7TParamscv12TCleanupItemEv @ 6 NONAME - _ZN13CPbk2FetchDlg9ExecuteLDEv @ 7 NONAME - _ZN15CPbk2PrependDlg4NewLER6TDes16 @ 8 NONAME - _ZN16Pbk2AddressTools18GetAddressFieldsLCER17MVPbkStoreContact17TPbk2FieldGroupIdR8RHashMapIi7TPtrC16E @ 9 NONAME - _ZN16Pbk2AddressTools19GetAddressPreviewLCER17MVPbkStoreContact17TPbk2FieldGroupIdR6RBuf16 @ 10 NONAME - _ZN16Pbk2AddressTools20MapAddressToOrderingE17TPbk2FieldGroupId @ 11 NONAME - _ZN16Pbk2AddressTools20MapCtrlTypeToAddressEi @ 12 NONAME - _ZN16Pbk2AddressTools20MapViewTypeToAddressEN24TPbk2ContactEditorParams11TActiveViewE @ 13 NONAME - _ZN16Pbk2AddressTools21MapCtrlTypeToViewTypeEi @ 14 NONAME - _ZN16Pbk2AddressTools22IsAddressPreviewEmptyLER17MVPbkStoreContact17TPbk2FieldGroupId @ 15 NONAME - _ZN16Pbk2AddressTools23MapAddressToVersitParamE17TPbk2FieldGroupId @ 16 NONAME - _ZN16Pbk2AddressTools24GetAddressShortPreviewLCER17MVPbkStoreContact17TPbk2FieldGroupIdR6RBuf16 @ 17 NONAME - _ZN16Pbk2AddressTools32MapVPbkFieldTypeToAddressGroupIdEPK14MVPbkFieldType @ 18 NONAME - _ZN17CPbk2UIFieldArray4NewLERK7TDesC16R3RFsR19MPbk2UIFieldFactory @ 19 NONAME - _ZN18CPbk2AddressSelect12AttemptExitLEi @ 20 NONAME - _ZN18CPbk2AddressSelect20Pbk2ControlKeyEventLERK9TKeyEvent10TEventCode @ 21 NONAME - _ZN18CPbk2AddressSelect4NewLER24TPbk2AddressSelectParams @ 22 NONAME - _ZN18CPbk2AddressSelect4NewLER24TPbk2AddressSelectParamsR22CVPbkFieldTypeSelectorPK6TArrayIP17MVPbkStoreContactEPKS4_IP21CPbk2PresenceIconInfoE @ 23 NONAME - _ZN18CPbk2AddressSelect6SetCbaEi @ 24 NONAME - _ZN18CPbk2AddressSelect9ExecuteLDEv @ 25 NONAME - _ZN18CPbk2AddressSelectD0Ev @ 26 NONAME - _ZN18CPbk2AddressSelectD1Ev @ 27 NONAME - _ZN18CPbk2AddressSelectD2Ev @ 28 NONAME - _ZN18CPbk2InputAbsorber18SetCommandObserverEP19MEikCommandObserver @ 29 NONAME - _ZN18CPbk2InputAbsorber4NewLEi @ 30 NONAME - _ZN18CPbk2InputAbsorber4WaitEv @ 31 NONAME - _ZN18CPbk2InputAbsorber5NewLCEi @ 32 NONAME - _ZN18CPbk2InputAbsorber8StopWaitEv @ 33 NONAME - _ZN19CPbk2FieldFormatter14SetTimeFormatLERK7TDesC16 @ 34 NONAME - _ZN19CPbk2FieldFormatter19FormatFieldContentLERK21MVPbkBaseContactFieldRK14MVPbkFieldType @ 35 NONAME - _ZN19CPbk2FieldFormatter4NewLERK23MPbk2FieldPropertyArrayRK18MVPbkFieldTypeList @ 36 NONAME - _ZN19CPbk2StoreListQuery15SetAllItemTextLERK7TDesC16i @ 37 NONAME - _ZN19CPbk2StoreListQuery4NewLEv @ 38 NONAME - _ZN19CPbk2StoreListQuery9ExecuteLDERK7TDesC16R25CVPbkContactStoreUriArray @ 39 NONAME - _ZN19TPbk2AddItemWrapperC1ERK18MPbk2FieldProperty @ 40 NONAME - _ZN19TPbk2AddItemWrapperC1ERK23CPbk2FieldPropertyGroup @ 41 NONAME - _ZN19TPbk2AddItemWrapperC2ERK18MPbk2FieldProperty @ 42 NONAME - _ZN19TPbk2AddItemWrapperC2ERK23CPbk2FieldPropertyGroup @ 43 NONAME - _ZN20CPbk2ThumbnailLoader13HideThumbnailEv @ 44 NONAME - _ZN20CPbk2ThumbnailLoader13LoadThumbnailEP17MVPbkStoreContactPK11CEikListBox22TPbk2ThumbnailLocation @ 45 NONAME - _ZN20CPbk2ThumbnailLoader14LoadThumbnailLEP16MVPbkContactLinkPK11CEikListBox22TPbk2ThumbnailLocation @ 46 NONAME - _ZN20CPbk2ThumbnailLoader4NewLER19CVPbkContactManager @ 47 NONAME - _ZN20CPbk2ThumbnailLoader5ResetEv @ 48 NONAME - _ZN20CPbk2ThumbnailLoader7RefreshEv @ 49 NONAME - _ZN21CPbk2ContactEditorDlg4NewLER24TPbk2ContactEditorParamsP17MVPbkStoreContactR26MPbk2EditedContactObserver @ 50 NONAME - _ZN21CPbk2ContactEditorDlg4NewLER24TPbk2ContactEditorParamsP17MVPbkStoreContactR26MPbk2EditedContactObserverP24MPbk2ApplicationServicesP7HBufC16i @ 51 NONAME - _ZN21CPbk2ContactEditorDlg9ExecuteLDEv @ 52 NONAME - _ZN21CPbk2NamesListControl12AddObserverLER20MPbk2ControlObserver @ 53 NONAME - _ZN21CPbk2NamesListControl13SetOpeningCcaEi @ 54 NONAME - _ZN21CPbk2NamesListControl14RemoveObserverER20MPbk2ControlObserver @ 55 NONAME - _ZN21CPbk2NamesListControl18AllowPointerEventsEi @ 56 NONAME - _ZN21CPbk2NamesListControl20SetCurrentGroupLinkLEP16MVPbkContactLink @ 57 NONAME - _ZN21CPbk2NamesListControl26HandleViewForegroundEventLEi @ 58 NONAME - _ZN21CPbk2NamesListControl26MassUpdateSkipProgressNoteEi @ 59 NONAME - _ZN21CPbk2NamesListControl4NewLEiPK11CCoeControlR19CVPbkContactManagerR20MVPbkContactViewBaseR25MPbk2ContactNameFormatterR23CPbk2StorePropertyArray @ 60 NONAME - _ZN21CPbk2NamesListControl4NewLEiPK11CCoeControlR19CVPbkContactManagerR20MVPbkContactViewBaseR25MPbk2ContactNameFormatterR23CPbk2StorePropertyArrayP21CPbk2ThumbnailManager @ 61 NONAME - _ZN21CPbk2NamesListControl5ResetEv @ 62 NONAME - _ZN21CPbk2NamesListControl8SetViewLER20MVPbkContactViewBase @ 63 NONAME - _ZN21CPbk2NamesListControl9GiveViewLEP20MVPbkContactViewBase @ 64 NONAME - _ZN21CPbk2NamesListControlC1EPK11CCoeControlR19CVPbkContactManagerR20MVPbkContactViewBaseR25MPbk2ContactNameFormatterR23CPbk2StorePropertyArray @ 65 NONAME - _ZN21CPbk2NamesListControlC2EPK11CCoeControlR19CVPbkContactManagerR20MVPbkContactViewBaseR25MPbk2ContactNameFormatterR23CPbk2StorePropertyArray @ 66 NONAME - _ZN21CPbk2PhonebookInfoDlg4NewLEv @ 67 NONAME - _ZN21CPbk2PhonebookInfoDlg9ExecuteLDER25CVPbkContactStoreUriArray @ 68 NONAME - _ZN21CPbk2ThumbnailManager4NewLER19CVPbkContactManager @ 69 NONAME - _ZN22CPbk2ContactIconsUtils23CreateListboxIconArrayLEi @ 70 NONAME - _ZN22CPbk2ContactIconsUtils4NewLER23CPbk2StorePropertyArrayP30MPbk2ContactUiControlExtension @ 71 NONAME - _ZN22CPbk2MergeConflictsDlg4NewLEP18MPbk2MergeResolveri @ 72 NONAME - _ZN23CPbk2ContactInfoControl12AddObserverLER20MPbk2ControlObserver @ 73 NONAME - _ZN23CPbk2ContactInfoControl14RemoveObserverER20MPbk2ControlObserver @ 74 NONAME - _ZN23CPbk2ContactInfoControl4NewLEPK11CCoeControlR19CVPbkContactManagerR25MPbk2ContactNameFormatterR23MPbk2FieldPropertyArrayR23CPbk2StorePropertyArrayP22MPbk2ContactNavigation @ 75 NONAME - _ZN24CPbk2AddItemToContactDlg4NewLEP24MPbk2ApplicationServices @ 76 NONAME - _ZN24CPbk2AddItemToContactDlg4NewLEv @ 77 NONAME - _ZN24CPbk2AddItemToContactDlg9ExecuteLDER6RArrayI19TPbk2AddItemWrapperEPK24TPbk2AddItemDialogParams @ 78 NONAME - _ZN24CPbk2SettingsListControl15CommitSettingsLEv @ 79 NONAME - _ZN24CPbk2SettingsListControl4NewLEPK11CCoeControlR21CPbk2SortOrderManagerR29MPbk2SettingsControlExtension @ 80 NONAME - _ZN24TPbk2AddressSelectParams14SetQueryAlwaysEi @ 81 NONAME - _ZN24TPbk2AddressSelectParams15SetFocusedFieldEPK22MVPbkStoreContactField @ 82 NONAME - _ZN24TPbk2AddressSelectParams19SetSuppressWarningsEi @ 83 NONAME - _ZN24TPbk2AddressSelectParams20SetDefaultPrioritiesERK34RVPbkContactFieldDefaultPriorities @ 84 NONAME - _ZN24TPbk2AddressSelectParams21SetUseDefaultDirectlyEi @ 85 NONAME - _ZN24TPbk2AddressSelectParams28SetTitleToIncludeContactNameEi @ 86 NONAME - _ZN24TPbk2AddressSelectParamsC1ER17MVPbkStoreContactRK19CVPbkContactManagerR25MPbk2ContactNameFormatterRK23CPbk2FieldPropertyArrayR15TResourceReaderi @ 87 NONAME - _ZN24TPbk2AddressSelectParamsC2ER17MVPbkStoreContactRK19CVPbkContactManagerR25MPbk2ContactNameFormatterRK23CPbk2FieldPropertyArrayR15TResourceReaderi @ 88 NONAME - _ZN26CPbk2MergePhotoConflictDlg4NewLEP16MVPbkBaseContactS1_Pi @ 89 NONAME - _ZN27CPbk2MemoryEntryDefaultsDlg4NewLER24CPbk2PresentationContactR19CVPbkContactManager @ 90 NONAME - _ZN27CPbk2MemoryEntryDefaultsDlg9ExecuteLDEv @ 91 NONAME - _ZN27Pbk2TitlePanePictureFactory24CreateTitlePanePictureLCEPK17MVPbkStoreContactR23CPbk2StorePropertyArray @ 92 NONAME - _ZN28CPbk2DefaultAttributeProcess11SetDefaultLE16TVPbkDefaultTypeR22MVPbkStoreContactField @ 93 NONAME - _ZN28CPbk2DefaultAttributeProcess12SetDefaultsLEP13CArrayFixFlatI16TVPbkDefaultTypeER22MVPbkStoreContactField @ 94 NONAME - _ZN28CPbk2DefaultAttributeProcess14RemoveDefaultLE16TVPbkDefaultType @ 95 NONAME - _ZN28CPbk2DefaultAttributeProcess15RemoveDefaultsLEP13CArrayFixFlatI16TVPbkDefaultTypeE @ 96 NONAME - _ZN28CPbk2DefaultAttributeProcess4NewLER19CVPbkContactManagerR17MVPbkStoreContactR36MPbk2DefaultAttributeProcessObserver @ 97 NONAME - _ZN29CPbk2ContactEditorUIFieldBase14SetFieldLabelLERK7TDesC16 @ 98 NONAME - _ZN29CPbk2ContactEditorUIFieldBase16ConsumesKeyEventERK9TKeyEvent10TEventCode @ 99 NONAME - _ZN29CPbk2ContactEditorUIFieldBase18LoadBitmapToFieldLERK11TPbk2IconId @ 100 NONAME - _ZN29CPbk2ContactEditorUIFieldBase25HandleCustomFieldCommandLEi @ 101 NONAME - _ZN29CPbk2ContactEditorUIFieldBase8SetFocusEv @ 102 NONAME - _ZN29CPbk2ContactEditorUIFieldBase9ControlIdEv @ 103 NONAME - _ZN29CPbk2ContactEditorUIFieldBaseC2EP12MPbk2UIFieldR27MPbk2ContactEditorUiBuilderR22CPbk2IconInfoContaineri @ 104 NONAME - _ZN29CPbk2ContactEditorUIFieldBaseD0Ev @ 105 NONAME - _ZN29CPbk2ContactEditorUIFieldBaseD1Ev @ 106 NONAME - _ZN29CPbk2ContactEditorUIFieldBaseD2Ev @ 107 NONAME - _ZN29CPbk2GeneralConfirmationQuery4NewLEv @ 108 NONAME - _ZN29CPbk2GeneralConfirmationQuery9ExecuteLDERK16MVPbkBaseContacti @ 109 NONAME - _ZN29CPbk2GeneralConfirmationQuery9ExecuteLDERK16MVPbkBaseContactii @ 110 NONAME - _ZN29CPbk2GeneralConfirmationQuery9ExecuteLDEii @ 111 NONAME - _ZN29CPbk2GeneralConfirmationQuery9StopQueryEv @ 112 NONAME - _ZN31CPbk2ContactEditorReadonlyField11InitializeLEP25MPbk2ContactEditorUIField @ 113 NONAME - _ZN31CPbk2ContactEditorReadonlyField8SetTextLEPK7TDesC16 @ 114 NONAME - _ZN31CPbk2ContactUiControlSubstitute15SetFocusedFieldERK21MVPbkBaseContactField @ 115 NONAME - _ZN31CPbk2ContactUiControlSubstitute16SetSelectedStoreER17MVPbkContactStore @ 116 NONAME - _ZN31CPbk2ContactUiControlSubstitute18SetParentUiControlER21MPbk2ContactUiControl @ 117 NONAME - _ZN31CPbk2ContactUiControlSubstitute20SetFocusedFieldIndexEi @ 118 NONAME - _ZN31CPbk2ContactUiControlSubstitute22SetFocusedStoreContactERK17MVPbkStoreContact @ 119 NONAME - _ZN31CPbk2ContactUiControlSubstitute4NewLEv @ 120 NONAME - _ZN31CPbk2ContactUiControlSubstituteD0Ev @ 121 NONAME - _ZN31CPbk2ContactUiControlSubstituteD1Ev @ 122 NONAME - _ZN31CPbk2ContactUiControlSubstituteD2Ev @ 123 NONAME - _ZN31Pbk2PhoneNumberFormatterFactory27CreatePhoneNumberFormatterLEi @ 124 NONAME - _ZN33CPbk2MemoryEntryDefaultsAssignDlg4NewLEv @ 125 NONAME - _ZN33CPbk2MemoryEntryDefaultsAssignDlg9ExecuteLDERK39CPbk2PresentationContactFieldCollectionRK19CVPbkContactManagerRK23MPbk2FieldPropertyArrayN28VPbkFieldTypeSelectorFactory30TVPbkContactActionTypeSelectorE @ 126 NONAME - _ZNK18CPbk2InputAbsorber9IsWaitingEv @ 127 NONAME - _ZNK19TPbk2AddItemWrapper10PropertyAtEi @ 128 NONAME - _ZNK19TPbk2AddItemWrapper13PropertyCountEv @ 129 NONAME + _ZN13CPbk2FetchDlg19AcceptDelayedFetchLERK6TDesC8 @ 1 NONAME + _ZN13CPbk2FetchDlg4NewLENS_7TParamsER21MPbk2FetchDlgObserver @ 2 NONAME + _ZN13CPbk2FetchDlg7TParamsC1Ev @ 3 NONAME + _ZN13CPbk2FetchDlg7TParamsC2Ev @ 4 NONAME + _ZN13CPbk2FetchDlg7TParamscv12TCleanupItemEv @ 5 NONAME + _ZN13CPbk2FetchDlg9ExecuteLDEv @ 6 NONAME + _ZN15CPbk2PrependDlg4NewLER6TDes16 @ 7 NONAME + _ZN18CPbk2AddressSelect12AttemptExitLEi @ 8 NONAME + _ZN18CPbk2AddressSelect20Pbk2ControlKeyEventLERK9TKeyEvent10TEventCode @ 9 NONAME + _ZN18CPbk2AddressSelect4NewLER24TPbk2AddressSelectParams @ 10 NONAME + _ZN18CPbk2AddressSelect6SetCbaEi @ 11 NONAME + _ZN18CPbk2AddressSelect9ExecuteLDEv @ 12 NONAME + _ZN18CPbk2AddressSelectD0Ev @ 13 NONAME + _ZN18CPbk2AddressSelectD1Ev @ 14 NONAME + _ZN18CPbk2AddressSelectD2Ev @ 15 NONAME + _ZN18CPbk2InputAbsorber18SetCommandObserverEP19MEikCommandObserver @ 16 NONAME + _ZN18CPbk2InputAbsorber4NewLEi @ 17 NONAME + _ZN18CPbk2InputAbsorber4WaitEv @ 18 NONAME + _ZN18CPbk2InputAbsorber5NewLCEi @ 19 NONAME + _ZN18CPbk2InputAbsorber8StopWaitEv @ 20 NONAME + _ZN19CPbk2FieldFormatter14SetTimeFormatLERK7TDesC16 @ 21 NONAME + _ZN19CPbk2FieldFormatter19FormatFieldContentLERK21MVPbkBaseContactFieldRK14MVPbkFieldType @ 22 NONAME + _ZN19CPbk2FieldFormatter4NewLERK23MPbk2FieldPropertyArrayRK18MVPbkFieldTypeList @ 23 NONAME + _ZN19CPbk2StoreListQuery15SetAllItemTextLERK7TDesC16i @ 24 NONAME + _ZN19CPbk2StoreListQuery4NewLEv @ 25 NONAME + _ZN19CPbk2StoreListQuery9ExecuteLDERK7TDesC16R25CVPbkContactStoreUriArray @ 26 NONAME + _ZN19TPbk2AddItemWrapperC1ERK18MPbk2FieldProperty @ 27 NONAME + _ZN19TPbk2AddItemWrapperC1ERK23CPbk2FieldPropertyGroup @ 28 NONAME + _ZN19TPbk2AddItemWrapperC2ERK18MPbk2FieldProperty @ 29 NONAME + _ZN19TPbk2AddItemWrapperC2ERK23CPbk2FieldPropertyGroup @ 30 NONAME + _ZN20CPbk2ThumbnailLoader13HideThumbnailEv @ 31 NONAME + _ZN20CPbk2ThumbnailLoader13LoadThumbnailEP17MVPbkStoreContactPK11CEikListBox22TPbk2ThumbnailLocation @ 32 NONAME + _ZN20CPbk2ThumbnailLoader14LoadThumbnailLEP16MVPbkContactLinkPK11CEikListBox22TPbk2ThumbnailLocation @ 33 NONAME + _ZN20CPbk2ThumbnailLoader4NewLER19CVPbkContactManager @ 34 NONAME + _ZN20CPbk2ThumbnailLoader5ResetEv @ 35 NONAME + _ZN20CPbk2ThumbnailLoader7RefreshEv @ 36 NONAME + _ZN21CPbk2ContactEditorDlg4NewLER24TPbk2ContactEditorParamsP17MVPbkStoreContactR26MPbk2EditedContactObserver @ 37 NONAME + _ZN21CPbk2ContactEditorDlg9ExecuteLDEv @ 38 NONAME + _ZN21CPbk2NamesListControl12AddObserverLER20MPbk2ControlObserver @ 39 NONAME + _ZN21CPbk2NamesListControl14RemoveObserverER20MPbk2ControlObserver @ 40 NONAME + _ZN21CPbk2NamesListControl4NewLEiPK11CCoeControlR19CVPbkContactManagerR20MVPbkContactViewBaseR25MPbk2ContactNameFormatterR23CPbk2StorePropertyArray @ 41 NONAME + _ZN21CPbk2NamesListControl5ResetEv @ 42 NONAME + _ZN21CPbk2NamesListControl8SetViewLER20MVPbkContactViewBase @ 43 NONAME + _ZN21CPbk2NamesListControlC1EPK11CCoeControlR19CVPbkContactManagerR20MVPbkContactViewBaseR25MPbk2ContactNameFormatterR23CPbk2StorePropertyArray @ 44 NONAME + _ZN21CPbk2NamesListControlC2EPK11CCoeControlR19CVPbkContactManagerR20MVPbkContactViewBaseR25MPbk2ContactNameFormatterR23CPbk2StorePropertyArray @ 45 NONAME + _ZN21CPbk2PhonebookInfoDlg4NewLEv @ 46 NONAME + _ZN21CPbk2PhonebookInfoDlg9ExecuteLDER25CVPbkContactStoreUriArray @ 47 NONAME + _ZN23CPbk2ContactInfoControl12AddObserverLER20MPbk2ControlObserver @ 48 NONAME + _ZN23CPbk2ContactInfoControl14RemoveObserverER20MPbk2ControlObserver @ 49 NONAME + _ZN23CPbk2ContactInfoControl4NewLEPK11CCoeControlR19CVPbkContactManagerR25MPbk2ContactNameFormatterR23MPbk2FieldPropertyArrayR23CPbk2StorePropertyArrayP22MPbk2ContactNavigation @ 50 NONAME + _ZN24CPbk2AddItemToContactDlg4NewLEv @ 51 NONAME + _ZN24CPbk2AddItemToContactDlg9ExecuteLDER6RArrayI19TPbk2AddItemWrapperEPK24TPbk2AddItemDialogParams @ 52 NONAME + _ZN24CPbk2SettingsListControl15CommitSettingsLEv @ 53 NONAME + _ZN24CPbk2SettingsListControl4NewLEPK11CCoeControlR21CPbk2SortOrderManagerR29MPbk2SettingsControlExtension @ 54 NONAME + _ZN24TPbk2AddressSelectParams14SetQueryAlwaysEi @ 55 NONAME + _ZN24TPbk2AddressSelectParams15SetFocusedFieldEPK22MVPbkStoreContactField @ 56 NONAME + _ZN24TPbk2AddressSelectParams20SetDefaultPrioritiesERK34RVPbkContactFieldDefaultPriorities @ 57 NONAME + _ZN24TPbk2AddressSelectParams21SetUseDefaultDirectlyEi @ 58 NONAME + _ZN24TPbk2AddressSelectParamsC1ER17MVPbkStoreContactRK19CVPbkContactManagerR25MPbk2ContactNameFormatterRK23CPbk2FieldPropertyArrayR15TResourceReaderi @ 59 NONAME + _ZN24TPbk2AddressSelectParamsC2ER17MVPbkStoreContactRK19CVPbkContactManagerR25MPbk2ContactNameFormatterRK23CPbk2FieldPropertyArrayR15TResourceReaderi @ 60 NONAME + _ZN27CPbk2MemoryEntryDefaultsDlg4NewLER24CPbk2PresentationContactR19CVPbkContactManager @ 61 NONAME + _ZN27CPbk2MemoryEntryDefaultsDlg9ExecuteLDEv @ 62 NONAME + _ZN29CPbk2GeneralConfirmationQuery4NewLEv @ 63 NONAME + _ZN29CPbk2GeneralConfirmationQuery9ExecuteLDERK16MVPbkBaseContacti @ 64 NONAME + _ZN29CPbk2GeneralConfirmationQuery9ExecuteLDEii @ 65 NONAME + _ZN31CPbk2ContactUiControlSubstitute15SetFocusedFieldERK21MVPbkBaseContactField @ 66 NONAME + _ZN31CPbk2ContactUiControlSubstitute16SetSelectedStoreER17MVPbkContactStore @ 67 NONAME + _ZN31CPbk2ContactUiControlSubstitute18SetParentUiControlER21MPbk2ContactUiControl @ 68 NONAME + _ZN31CPbk2ContactUiControlSubstitute20SetFocusedFieldIndexEi @ 69 NONAME + _ZN31CPbk2ContactUiControlSubstitute22SetFocusedStoreContactERK17MVPbkStoreContact @ 70 NONAME + _ZN31CPbk2ContactUiControlSubstitute4NewLEv @ 71 NONAME + _ZN31CPbk2ContactUiControlSubstituteD0Ev @ 72 NONAME + _ZN31CPbk2ContactUiControlSubstituteD1Ev @ 73 NONAME + _ZN31CPbk2ContactUiControlSubstituteD2Ev @ 74 NONAME + _ZN31Pbk2PhoneNumberFormatterFactory27CreatePhoneNumberFormatterLEi @ 75 NONAME + _ZN33CPbk2MemoryEntryDefaultsAssignDlg4NewLEv @ 76 NONAME + _ZN33CPbk2MemoryEntryDefaultsAssignDlg9ExecuteLDERK39CPbk2PresentationContactFieldCollectionRK19CVPbkContactManagerRK23MPbk2FieldPropertyArrayN28VPbkFieldTypeSelectorFactory30TVPbkContactActionTypeSelectorE @ 77 NONAME + _ZNK18CPbk2InputAbsorber9IsWaitingEv @ 78 NONAME + _ZNK19TPbk2AddItemWrapper10PropertyAtEi @ 79 NONAME + _ZNK19TPbk2AddItemWrapper13PropertyCountEv @ 80 NONAME + _ZTI13CPbk2FetchDlg @ 81 NONAME ; ## + _ZTI15CPbk2PrependDlg @ 82 NONAME ; ## + _ZTI18CPbk2AddressSelect @ 83 NONAME ; ## + _ZTI18CPbk2InputAbsorber @ 84 NONAME ; ## + _ZTI19CPbk2StoreListQuery @ 85 NONAME ; ## + _ZTI19CPbk2ThumbnailPopup @ 86 NONAME ; ## + _ZTI21CPbk2ContactEditorDlg @ 87 NONAME ; ## + _ZTI21CPbk2NamesListControl @ 88 NONAME ; ## + _ZTI21CPbk2PhonebookInfoDlg @ 89 NONAME ; ## + _ZTI23CPbk2ContactInfoControl @ 90 NONAME ; ## + _ZTI24CPbk2AddItemToContactDlg @ 91 NONAME ; ## + _ZTI24CPbk2SettingsListControl @ 92 NONAME ; ## + _ZTI25CPbk2ContactEditorDlgImpl @ 93 NONAME ; ## + _ZTI25CPbk2StoreInfoItemBuilder @ 94 NONAME ; ## + _ZTI27CPbk2MemoryEntryDefaultsDlg @ 95 NONAME ; ## + _ZTI29CPbk2GeneralConfirmationQuery @ 96 NONAME ; ## + _ZTI31CPbk2ContactUiControlSubstitute @ 97 NONAME ; ## + _ZTV13CPbk2FetchDlg @ 98 NONAME ; ## + _ZTV15CPbk2PrependDlg @ 99 NONAME ; ## + _ZTV18CPbk2AddressSelect @ 100 NONAME ; ## + _ZTV18CPbk2InputAbsorber @ 101 NONAME ; ## + _ZTV19CPbk2StoreListQuery @ 102 NONAME ; ## + _ZTV19CPbk2ThumbnailPopup @ 103 NONAME ; ## + _ZTV21CPbk2ContactEditorDlg @ 104 NONAME ; ## + _ZTV21CPbk2NamesListControl @ 105 NONAME ; ## + _ZTV21CPbk2PhonebookInfoDlg @ 106 NONAME ; ## + _ZTV23CPbk2ContactInfoControl @ 107 NONAME ; ## + _ZTV24CPbk2AddItemToContactDlg @ 108 NONAME ; ## + _ZTV24CPbk2SettingsListControl @ 109 NONAME ; ## + _ZTV25CPbk2ContactEditorDlgImpl @ 110 NONAME ; ## + _ZTV25CPbk2StoreInfoItemBuilder @ 111 NONAME ; ## + _ZTV27CPbk2MemoryEntryDefaultsDlg @ 112 NONAME ; ## + _ZTV29CPbk2GeneralConfirmationQuery @ 113 NONAME ; ## + _ZTV31CPbk2ContactUiControlSubstitute @ 114 NONAME ; ## + _ZThn52_N31CPbk2ContactUiControlSubstitute20SetFocusedFieldIndexEi @ 115 NONAME ; ## + _ZThn52_N31CPbk2ContactUiControlSubstituteD0Ev @ 116 NONAME ; ## + _ZThn52_N31CPbk2ContactUiControlSubstituteD1Ev @ 117 NONAME ; ## + _ZN27Pbk2TitlePanePictureFactory24CreateTitlePanePictureLCEPK17MVPbkStoreContactR23CPbk2StorePropertyArray @ 118 NONAME + _ZN28CPbk2DefaultAttributeProcess11SetDefaultLE16TVPbkDefaultTypeR22MVPbkStoreContactField @ 119 NONAME + _ZN28CPbk2DefaultAttributeProcess12SetDefaultsLEP13CArrayFixFlatI16TVPbkDefaultTypeER22MVPbkStoreContactField @ 120 NONAME + _ZN28CPbk2DefaultAttributeProcess14RemoveDefaultLE16TVPbkDefaultType @ 121 NONAME + _ZN28CPbk2DefaultAttributeProcess15RemoveDefaultsLEP13CArrayFixFlatI16TVPbkDefaultTypeE @ 122 NONAME + _ZN28CPbk2DefaultAttributeProcess4NewLER19CVPbkContactManagerR17MVPbkStoreContactR36MPbk2DefaultAttributeProcessObserver @ 123 NONAME + _ZN24TPbk2AddressSelectParams28SetTitleToIncludeContactNameEi @ 124 NONAME + _ZN21CPbk2NamesListControl9GiveViewLEP20MVPbkContactViewBase @ 125 NONAME + _ZN24TPbk2AddressSelectParams19SetSuppressWarningsEi @ 126 NONAME + _ZN21CPbk2NamesListControl18AllowPointerEventsEi @ 127 NONAME + _ZN22CPbk2ContactIconsUtils23CreateListboxIconArrayLEi @ 128 NONAME + _ZN22CPbk2ContactIconsUtils4NewLER23CPbk2StorePropertyArrayP30MPbk2ContactUiControlExtension @ 129 NONAME _ZNK22CPbk2ContactIconsUtils21GetIconIdsForContactLERK16MVPbkViewContactR6RArrayI11TPbk2IconIdE @ 130 NONAME - _ZNK29CPbk2ContactEditorUIFieldBase10FieldLabelEv @ 131 NONAME - _ZNK29CPbk2ContactEditorUIFieldBase11ControlTextEv @ 132 NONAME - _ZNK29CPbk2ContactEditorUIFieldBase7UIFieldEv @ 133 NONAME - _ZTI12CPbk2UIField @ 134 NONAME - _ZTI13CPbk2FetchDlg @ 135 NONAME - _ZTI15CPbk2PrependDlg @ 136 NONAME - _ZTI17CPbk2UIFieldArray @ 137 NONAME - _ZTI18CPbk2AddressSelect @ 138 NONAME - _ZTI18CPbk2InputAbsorber @ 139 NONAME - _ZTI19CPbk2StoreListQuery @ 140 NONAME - _ZTI19CPbk2ThumbnailPopup @ 141 NONAME - _ZTI21CPbk2ContactEditorDlg @ 142 NONAME - _ZTI21CPbk2NamesListControl @ 143 NONAME - _ZTI21CPbk2PhonebookInfoDlg @ 144 NONAME - _ZTI22CPbk2ContactIconsUtils @ 145 NONAME - _ZTI23CPbk2ContactInfoControl @ 146 NONAME - _ZTI24CPbk2AddItemToContactDlg @ 147 NONAME - _ZTI24CPbk2SettingsListControl @ 148 NONAME - _ZTI25CPbk2ContactEditorDlgImpl @ 149 NONAME - _ZTI25CPbk2StoreInfoItemBuilder @ 150 NONAME - _ZTI27CPbk2ContactEditorArrayItem @ 151 NONAME - _ZTI27CPbk2MemoryEntryDefaultsDlg @ 152 NONAME - _ZTI29CPbk2ContactEditorUIFieldBase @ 153 NONAME - _ZTI29CPbk2GeneralConfirmationQuery @ 154 NONAME - _ZTI30CPbk2ContactEditorFieldFactory @ 155 NONAME - _ZTI30CPbk2FilteredViewStackObserver @ 156 NONAME - _ZTI31CPbk2ContactEditorReadonlyField @ 157 NONAME - _ZTI31CPbk2ContactUiControlSubstitute @ 158 NONAME - _ZTI33CPbk2ContactViewCustomListBoxData @ 159 NONAME - _ZTI39CPbk2ContactViewCustomListBoxItemDrawer @ 160 NONAME - _ZTIN17CPbk2FetchResults20CFRConatactOperationE @ 161 NONAME - _ZTV12CPbk2UIField @ 162 NONAME - _ZTV13CPbk2FetchDlg @ 163 NONAME - _ZTV15CPbk2PrependDlg @ 164 NONAME - _ZTV17CPbk2UIFieldArray @ 165 NONAME - _ZTV18CPbk2AddressSelect @ 166 NONAME - _ZTV18CPbk2InputAbsorber @ 167 NONAME - _ZTV19CPbk2StoreListQuery @ 168 NONAME - _ZTV19CPbk2ThumbnailPopup @ 169 NONAME - _ZTV21CPbk2ContactEditorDlg @ 170 NONAME - _ZTV21CPbk2NamesListControl @ 171 NONAME - _ZTV21CPbk2PhonebookInfoDlg @ 172 NONAME - _ZTV22CPbk2ContactIconsUtils @ 173 NONAME - _ZTV23CPbk2ContactInfoControl @ 174 NONAME - _ZTV24CPbk2AddItemToContactDlg @ 175 NONAME - _ZTV24CPbk2SettingsListControl @ 176 NONAME - _ZTV25CPbk2ContactEditorDlgImpl @ 177 NONAME - _ZTV25CPbk2StoreInfoItemBuilder @ 178 NONAME - _ZTV27CPbk2ContactEditorArrayItem @ 179 NONAME - _ZTV27CPbk2MemoryEntryDefaultsDlg @ 180 NONAME - _ZTV29CPbk2ContactEditorUIFieldBase @ 181 NONAME - _ZTV29CPbk2GeneralConfirmationQuery @ 182 NONAME - _ZTV30CPbk2ContactEditorFieldFactory @ 183 NONAME - _ZTV30CPbk2FilteredViewStackObserver @ 184 NONAME - _ZTV31CPbk2ContactEditorReadonlyField @ 185 NONAME - _ZTV31CPbk2ContactUiControlSubstitute @ 186 NONAME - _ZTV33CPbk2ContactViewCustomListBoxData @ 187 NONAME - _ZTV39CPbk2ContactViewCustomListBoxItemDrawer @ 188 NONAME - _ZTVN17CPbk2FetchResults20CFRConatactOperationE @ 189 NONAME - _ZThn4_N29CPbk2ContactEditorUIFieldBase14SetFieldLabelLERK7TDesC16 @ 190 NONAME - _ZThn4_N29CPbk2ContactEditorUIFieldBase16ConsumesKeyEventERK9TKeyEvent10TEventCode @ 191 NONAME - _ZThn4_N29CPbk2ContactEditorUIFieldBase18LoadBitmapToFieldLERK11TPbk2IconId @ 192 NONAME - _ZThn4_N29CPbk2ContactEditorUIFieldBase25HandleCustomFieldCommandLEi @ 193 NONAME - _ZThn4_N29CPbk2ContactEditorUIFieldBase8SetFocusEv @ 194 NONAME - _ZThn4_N29CPbk2ContactEditorUIFieldBase9ControlIdEv @ 195 NONAME - _ZThn4_N29CPbk2ContactEditorUIFieldBaseD0Ev @ 196 NONAME - _ZThn4_N29CPbk2ContactEditorUIFieldBaseD1Ev @ 197 NONAME - _ZThn4_NK29CPbk2ContactEditorUIFieldBase10FieldLabelEv @ 198 NONAME - _ZThn4_NK29CPbk2ContactEditorUIFieldBase11ControlTextEv @ 199 NONAME - _ZThn4_NK29CPbk2ContactEditorUIFieldBase7UIFieldEv @ 200 NONAME - _ZThn52_N31CPbk2ContactUiControlSubstitute20SetFocusedFieldIndexEi @ 201 NONAME - _ZThn52_N31CPbk2ContactUiControlSubstituteD0Ev @ 202 NONAME - _ZThn52_N31CPbk2ContactUiControlSubstituteD1Ev @ 203 NONAME - _ZThn56_N31CPbk2ContactUiControlSubstituteD0Ev @ 204 NONAME - _ZThn56_N31CPbk2ContactUiControlSubstituteD1Ev @ 205 NONAME + _ZTI22CPbk2ContactIconsUtils @ 131 NONAME ; ## + _ZTV22CPbk2ContactIconsUtils @ 132 NONAME ; ## + _ZN18CPbk2AddressSelect4NewLER24TPbk2AddressSelectParamsR22CVPbkFieldTypeSelectorPK6TArrayIP17MVPbkStoreContactEPKS4_IP21CPbk2PresenceIconInfoE @ 133 NONAME + _ZTIN17CPbk2FetchResults20CFRConatactOperationE @ 134 NONAME ; ## + _ZTVN17CPbk2FetchResults20CFRConatactOperationE @ 135 NONAME ; ## + _ZThn56_N31CPbk2ContactUiControlSubstituteD0Ev @ 136 NONAME ; ## + _ZThn56_N31CPbk2ContactUiControlSubstituteD1Ev @ 137 NONAME ; ## + _ZN16Pbk2AddressTools18GetAddressFieldsLCER17MVPbkStoreContact17TPbk2FieldGroupIdR8RHashMapIi7TPtrC16E @ 138 NONAME + _ZN16Pbk2AddressTools19GetAddressPreviewLCER17MVPbkStoreContact17TPbk2FieldGroupIdR6RBuf16 @ 139 NONAME + _ZN16Pbk2AddressTools20MapAddressToOrderingE17TPbk2FieldGroupId @ 140 NONAME + _ZN16Pbk2AddressTools20MapCtrlTypeToAddressEi @ 141 NONAME + _ZN16Pbk2AddressTools20MapViewTypeToAddressEN24TPbk2ContactEditorParams11TActiveViewE @ 142 NONAME + _ZN16Pbk2AddressTools21MapCtrlTypeToViewTypeEi @ 143 NONAME + _ZN16Pbk2AddressTools23MapAddressToVersitParamE17TPbk2FieldGroupId @ 144 NONAME + _ZN16Pbk2AddressTools24GetAddressShortPreviewLCER17MVPbkStoreContact17TPbk2FieldGroupIdR6RBuf16 @ 145 NONAME + _ZN17CPbk2UIFieldArray4NewLERK7TDesC16R3RFsR19MPbk2UIFieldFactory @ 146 NONAME + _ZN29CPbk2ContactEditorUIFieldBase14SetFieldLabelLERK7TDesC16 @ 147 NONAME + _ZN29CPbk2ContactEditorUIFieldBase16ConsumesKeyEventERK9TKeyEvent10TEventCode @ 148 NONAME + _ZN29CPbk2ContactEditorUIFieldBase18LoadBitmapToFieldLERK11TPbk2IconId @ 149 NONAME + _ZN29CPbk2ContactEditorUIFieldBase25HandleCustomFieldCommandLEi @ 150 NONAME + _ZN29CPbk2ContactEditorUIFieldBase8SetFocusEv @ 151 NONAME + _ZN29CPbk2ContactEditorUIFieldBase9ControlIdEv @ 152 NONAME + _ZN29CPbk2ContactEditorUIFieldBaseC2EP12MPbk2UIFieldR27MPbk2ContactEditorUiBuilderR22CPbk2IconInfoContaineri @ 153 NONAME + _ZN29CPbk2ContactEditorUIFieldBaseD0Ev @ 154 NONAME + _ZN29CPbk2ContactEditorUIFieldBaseD1Ev @ 155 NONAME + _ZN29CPbk2ContactEditorUIFieldBaseD2Ev @ 156 NONAME + _ZN31CPbk2ContactEditorReadonlyField11InitializeLEP25MPbk2ContactEditorUIField @ 157 NONAME + _ZN31CPbk2ContactEditorReadonlyField8SetTextLEPK7TDesC16 @ 158 NONAME + _ZNK29CPbk2ContactEditorUIFieldBase10FieldLabelEv @ 159 NONAME + _ZNK29CPbk2ContactEditorUIFieldBase11ControlTextEv @ 160 NONAME + _ZNK29CPbk2ContactEditorUIFieldBase7UIFieldEv @ 161 NONAME + _ZTI12CPbk2UIField @ 162 NONAME ; ## + _ZTI17CPbk2UIFieldArray @ 163 NONAME ; ## + _ZTI27CPbk2ContactEditorArrayItem @ 164 NONAME ; ## + _ZTI29CPbk2ContactEditorUIFieldBase @ 165 NONAME ; ## + _ZTI30CPbk2ContactEditorFieldFactory @ 166 NONAME ; ## + _ZTI31CPbk2ContactEditorReadonlyField @ 167 NONAME ; ## + _ZTV12CPbk2UIField @ 168 NONAME ; ## + _ZTV17CPbk2UIFieldArray @ 169 NONAME ; ## + _ZTV27CPbk2ContactEditorArrayItem @ 170 NONAME ; ## + _ZTV29CPbk2ContactEditorUIFieldBase @ 171 NONAME ; ## + _ZTV30CPbk2ContactEditorFieldFactory @ 172 NONAME ; ## + _ZTV31CPbk2ContactEditorReadonlyField @ 173 NONAME ; ## + _ZThn4_N29CPbk2ContactEditorUIFieldBase14SetFieldLabelLERK7TDesC16 @ 174 NONAME ; ## + _ZThn4_N29CPbk2ContactEditorUIFieldBase16ConsumesKeyEventERK9TKeyEvent10TEventCode @ 175 NONAME ; ## + _ZThn4_N29CPbk2ContactEditorUIFieldBase18LoadBitmapToFieldLERK11TPbk2IconId @ 176 NONAME ; ## + _ZThn4_N29CPbk2ContactEditorUIFieldBase25HandleCustomFieldCommandLEi @ 177 NONAME ; ## + _ZThn4_N29CPbk2ContactEditorUIFieldBase8SetFocusEv @ 178 NONAME ; ## + _ZThn4_N29CPbk2ContactEditorUIFieldBase9ControlIdEv @ 179 NONAME ; ## + _ZThn4_N29CPbk2ContactEditorUIFieldBaseD0Ev @ 180 NONAME ; ## + _ZThn4_N29CPbk2ContactEditorUIFieldBaseD1Ev @ 181 NONAME ; ## + _ZThn4_NK29CPbk2ContactEditorUIFieldBase10FieldLabelEv @ 182 NONAME ; ## + _ZThn4_NK29CPbk2ContactEditorUIFieldBase11ControlTextEv @ 183 NONAME ; ## + _ZThn4_NK29CPbk2ContactEditorUIFieldBase7UIFieldEv @ 184 NONAME ; ## + _ZTI30CPbk2FilteredViewStackObserver @ 185 NONAME ; ## + _ZTV30CPbk2FilteredViewStackObserver @ 186 NONAME ; ## + _ZN29CPbk2GeneralConfirmationQuery9ExecuteLDERK16MVPbkBaseContactii @ 187 NONAME + _ZTI33CPbk2ContactViewCustomListBoxData @ 188 NONAME + _ZTI39CPbk2ContactViewCustomListBoxItemDrawer @ 189 NONAME + _ZTV33CPbk2ContactViewCustomListBoxData @ 190 NONAME + _ZTV39CPbk2ContactViewCustomListBoxItemDrawer @ 191 NONAME + _ZN21CPbk2NamesListControl20SetCurrentGroupLinkLEP16MVPbkContactLink @ 192 NONAME + _ZN21CPbk2NamesListControl4NewLEiPK11CCoeControlR19CVPbkContactManagerR20MVPbkContactViewBaseR25MPbk2ContactNameFormatterR23CPbk2StorePropertyArrayP21CPbk2ThumbnailManager @ 193 NONAME + _ZN21CPbk2ThumbnailManager4NewLER19CVPbkContactManager @ 194 NONAME + _ZN21CPbk2ContactEditorDlg4NewLER24TPbk2ContactEditorParamsP17MVPbkStoreContactR26MPbk2EditedContactObserverP24MPbk2ApplicationServicesP7HBufC16i @ 195 NONAME + _ZN24CPbk2AddItemToContactDlg4NewLEP24MPbk2ApplicationServices @ 196 NONAME + _ZN22CPbk2MergeConflictsDlg4NewLEP18MPbk2MergeResolveri @ 197 NONAME + _ZN26CPbk2MergePhotoConflictDlg4NewLEP16MVPbkBaseContactS1_Pi @ 198 NONAME + _ZN29CPbk2GeneralConfirmationQuery9StopQueryEv @ 199 NONAME + _ZN21CPbk2NamesListControl26HandleViewForegroundEventLEi @ 200 NONAME + _ZN16Pbk2AddressTools22IsAddressPreviewEmptyLER17MVPbkStoreContact17TPbk2FieldGroupId @ 201 NONAME + _ZN16Pbk2AddressTools32MapVPbkFieldTypeToAddressGroupIdEPK14MVPbkFieldType @ 202 NONAME + _ZN21CPbk2NamesListControl26MassUpdateSkipProgressNoteEi @ 203 NONAME + _ZN21CPbk2NamesListControl13SetOpeningCcaEi @ 204 NONAME diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/GroupExtension/inc/CPguAddMembersCmd.h --- a/phonebookui/Phonebook2/GroupExtension/inc/CPguAddMembersCmd.h Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/GroupExtension/inc/CPguAddMembersCmd.h Wed Oct 13 14:15:33 2010 +0300 @@ -29,7 +29,6 @@ #include #include #include -#include // FORWARD DECLARATIONS class MPbk2ContactUiControl; @@ -54,8 +53,7 @@ private MVPbkContactViewObserver, private MVPbkContactSelector, private MPbk2ContactRelocatorObserver, - private MPbk2ProcessDecoratorObserver, - public MPguGroupCmd + private MPbk2ProcessDecoratorObserver { public: // Construction and destruction @@ -74,9 +72,6 @@ * Destructor. */ ~CPguAddMembersCmd(); - - public: //MPguGroupCmd - void Abort(); public: // From MPbk2Command void ExecuteLD(); @@ -226,7 +221,6 @@ TInt iContactsCounter; /// Own: Contact MVPbkStoreContact* iContact; - TBool iAbort; }; #endif // CPGUADDMEMBERSCMD_H diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/GroupExtension/inc/CPguGroupMembersView.h --- a/phonebookui/Phonebook2/GroupExtension/inc/CPguGroupMembersView.h Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/GroupExtension/inc/CPguGroupMembersView.h Wed Oct 13 14:15:33 2010 +0300 @@ -24,7 +24,6 @@ #include #include #include -#include // FORWARD DECLARATIONS class CPbk2UIExtensionView; @@ -83,8 +82,7 @@ class CPguGroupMembersView : public CBase, public MPbk2UIExtensionView, public MEikListBoxObserver, - private MPbk2GroupMembersViewActivationCallback, - public MAknMarkingModeObserver + private MPbk2GroupMembersViewActivationCallback { @@ -127,23 +125,6 @@ const TPoint& aPenEventLocation, const TPoint& aPenEventScreenLocation ); - public: // From MAknMarkingModeObserver - - /** - * This method is called when marking mode is activated or deactivated. - * - * @param aActivated @c ETrue if marking mode was activate, @c EFalse - * if marking mode was deactivated. - */ - void MarkingModeStatusChanged( TBool aActivated ); - - /** - * This method is called just before marking mode is closed. Client can - * either accept or decline closing. - * - * @return @c ETrue if marking mode should be closed, otherwise @c EFalse. - */ - TBool ExitMarkingMode() const; protected: // from MEikListBoxObserver @@ -171,6 +152,7 @@ void ReturnToPreviousViewL() const; void ShowContextMenuL(); + private: // Data /// Ref: View that contains this extension view CPbk2UIExtensionView& iView; diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/GroupExtension/inc/CPguRemoveFromGroupCmd.h --- a/phonebookui/Phonebook2/GroupExtension/inc/CPguRemoveFromGroupCmd.h Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/GroupExtension/inc/CPguRemoveFromGroupCmd.h Wed Oct 13 14:15:33 2010 +0300 @@ -28,7 +28,6 @@ #include #include #include -#include // FORWARD DECLARATIONS class MPbk2ContactUiControl; @@ -98,8 +97,7 @@ private MVPbkSingleContactOperationObserver, private MVPbkContactObserver, private MVPbkContactViewObserver, - private MProgressDialogCallback, - public MPguGroupCmd + private MProgressDialogCallback { public: // Construction and destruction @@ -120,9 +118,6 @@ */ ~CPguRemoveFromGroupCmd(); - public: //MPguGroupCmd - void Abort(); - public: // From MPbk2Command void ExecuteLD(); void AddObserver( diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/GroupExtension/inc/mpgugroupcmd.h --- a/phonebookui/Phonebook2/GroupExtension/inc/mpgugroupcmd.h Wed Sep 15 11:56:55 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,55 +0,0 @@ -/* -* Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies). -* All rights reserved. -* This component and the accompanying materials are made available -* under the terms of "Eclipse Public License v1.0" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: Phonebook 2 Group Extn command object interface. -* -*/ - - -#ifndef MPGUGROUPCMD_H -#define MPGUGROUPCMD_H - -// INCLUDES -#include - -// FORWARD DECLARATIONS - - -// CLASS DECLARATION - -/** - * Group extention command object interface. - * - * Pbk2 Group Extention cmd's are inherited from this interface - * along with MPbk2Command - */ -class MPguGroupCmd - { - public: // Interface - - /** - * Destructor. - */ - virtual ~MPguGroupCmd() - {}; - - /** - * Aborts the Command - */ - virtual void Abort() = 0; - - }; - -#endif // MPGUGROUPCMD_H - -// End of File diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/GroupExtension/rss/Pbk2GroupUiRes.rss --- a/phonebookui/Phonebook2/GroupExtension/rss/Pbk2GroupUiRes.rss Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/GroupExtension/rss/Pbk2GroupUiRes.rss Wed Oct 13 14:15:33 2010 +0300 @@ -24,11 +24,11 @@ #include #include #include -#include +#include #include #include #include -#include +#include #include #include "Pbk2GroupUi.hrh" #include "Pbk2UIExtension.rh" diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/GroupExtension/rss/PguMembersListViewBase.rss --- a/phonebookui/Phonebook2/GroupExtension/rss/PguMembersListViewBase.rss Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/GroupExtension/rss/PguMembersListViewBase.rss Wed Oct 13 14:15:33 2010 +0300 @@ -54,6 +54,38 @@ }; } +// --------------------------------------------------------- +// Groups Members View's context menu bar +// --------------------------------------------------------- +// +RESOURCE MENU_PANE r_phonebook2_groupmembers_markable_list_menu + { + items = + { + MENU_ITEM + { + command = EAknCmdMark; + txt = qtn_options_list_mark_one; + flags = EEikMenuItemSpecific; + }, + MENU_ITEM + { + command = EAknCmdUnmark; + txt = qtn_options_list_unmark_one; + flags = EEikMenuItemSpecific; + }, + MENU_ITEM + { + command = EAknMarkAll; + txt = qtn_options_list_mark_all; + }, + MENU_ITEM + { + command = EAknUnmarkAll; + txt = qtn_options_list_unmark_all; + } + }; + } // --------------------------------------------------------- // Groups Members View's menu bar @@ -69,7 +101,7 @@ }, MENU_TITLE { - menu_pane = R_AVKON_MENUPANE_MARK_MULTIPLE; + menu_pane = R_AVKON_MENUPANE_MARKABLE_LIST; }, MENU_TITLE { @@ -108,5 +140,27 @@ }; } +// --------------------------------------------------------- +// Groups Members View's context menu bar +// --------------------------------------------------------- +// +RESOURCE MENU_BAR r_phonebook2_groupmembers_context_menubar + { + titles = + { + MENU_TITLE + { + menu_pane = R_PHONEBOOK2_MARKABLE_LIST_CONTEXT_MENU; + }, + MENU_TITLE + { + menu_pane = R_PHONEBOOK2_BCARD_SEND_MENU; + }, + MENU_TITLE + { + menu_pane = r_phonebook2_groupmembers_context_menu; + } + }; + } // End of File diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/GroupExtension/src/CPguAddMembersCmd.cpp --- a/phonebookui/Phonebook2/GroupExtension/src/CPguAddMembersCmd.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/GroupExtension/src/CPguAddMembersCmd.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -19,9 +19,9 @@ #include "CPguAddMembersCmd.h" // Phonebook 2 -#include -#include -#include +#include +#include +#include #include #include #include @@ -804,11 +804,6 @@ iState = ECommitingTransaction; } - if ( iAbort ) - { - iState = ECommitingTransaction; - } - IssueRequest(); } @@ -1022,15 +1017,4 @@ IssueRequest(); } } - -void CPguAddMembersCmd::Abort() - { - if ( iDecorator ) - { - // iDecorator calls ProcessStopped to end this cmd - iDecorator->ProcessStopped(); - iAbort = ETrue; - } - } - // End of File diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/GroupExtension/src/CPguBelongsToGroupsCmd.cpp --- a/phonebookui/Phonebook2/GroupExtension/src/CPguBelongsToGroupsCmd.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/GroupExtension/src/CPguBelongsToGroupsCmd.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -20,8 +20,8 @@ // Phonebook 2 #include "CPguGroupPopup.h" -#include -#include +#include +#include #include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/GroupExtension/src/CPguCreateNewGroupCmd.cpp --- a/phonebookui/Phonebook2/GroupExtension/src/CPguCreateNewGroupCmd.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/GroupExtension/src/CPguCreateNewGroupCmd.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -22,8 +22,8 @@ #include "CPguGroupNameQueryDlg.h" #include "Pbk2GroupConsts.h" #include -#include -#include +#include +#include #include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/GroupExtension/src/CPguDeleteGroupCmd.cpp --- a/phonebookui/Phonebook2/GroupExtension/src/CPguDeleteGroupCmd.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/GroupExtension/src/CPguDeleteGroupCmd.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -23,9 +23,9 @@ #include #include #include -#include -#include -#include +#include +#include +#include #include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/GroupExtension/src/CPguGroupMembersView.cpp --- a/phonebookui/Phonebook2/GroupExtension/src/CPguGroupMembersView.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/GroupExtension/src/CPguGroupMembersView.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -22,9 +22,9 @@ #include "CPguAddMembersCmd.h" #include "CPguRemoveFromGroupCmd.h" #include "Pbk2GroupUi.hrh" -#include +#include #include -#include +#include #include #include #include @@ -49,16 +49,14 @@ #include #include #include -#include -#include +#include +#include #include #include #include #include #include #include -#include -#include // Virtual Phonebook #include @@ -470,26 +468,10 @@ */ virtual ~CGroupMembersViewImpl() {} - - public: - - void SetMarkingModeOn( TBool aMarkingModeOn ) - { - iMarkingModeOn = aMarkingModeOn; - } - - TBool IsMarkingModeOn() - { - return iMarkingModeOn; - } protected: // Implementation - CGroupMembersViewImpl() : iMarkingModeOn( EFalse ) + CGroupMembersViewImpl() {} - - protected: - // Flag to indicate whether Marking mode is active - TBool iMarkingModeOn; }; @@ -744,10 +726,6 @@ TBool iStylusPopupMenuLaunched; // Ref: Store management ptr CPbk2StoreConfiguration* iStoreConf; - //OWN: Active scheduler wait for waiting the completion - CActiveSchedulerWait iWait; - // Ref: To the command. Doesn't Own. - MPguGroupCmd* iCommand; }; // -------------------------------------------------------------------------- @@ -1101,12 +1079,6 @@ CPguGroupMembersView::CGroupMembersAllGroupsReady:: ~CGroupMembersAllGroupsReady() { - - if( iWait.IsStarted() ) - { - iWait.AsyncStop(); - } - iCommandHandler.RemoveMenuCommandObserver( *this ); if ( iStoreConf ) @@ -1147,7 +1119,7 @@ iCommandHandler.AddMenuCommandObserver(*this); iStoreConf = &( Phonebook2::Pbk2AppUi()->ApplicationServices(). - StoreConfiguration() ); + StoreConfiguration() ); iStoreConf->AddObserverL( *this ); // Expand the group members view from the all groups view @@ -1453,13 +1425,18 @@ case EKeyEnter: // FALLTHROUGH case EKeyOK: { - // The key will be handled by ListBox if there are contacts in this view if ( !ShiftDown(aKeyEvent) ) // pure OK or ENTER key - { - if ( iControl->NumberOfContacts() == 0 ) - { - result = ETrue; - } + { + if ( iControl->ContactsMarked() && itemSpecEnabled ) + { + iView.LaunchPopupMenuL( + R_PHONEBOOK2_GROUPMEMBERS_CONTEXT_MENUBAR); + result = ETrue; + } + else if ( iControl->NumberOfContacts() == 0 ) + { + result = ETrue; + } } break; } @@ -1541,27 +1518,6 @@ break; } - case R_AVKON_MENUPANE_MARK_MULTIPLE: - { - TInt markedContactCount = 0; - - CPbk2NamesListControl* nlctrl = static_cast (iControl); - - CCoeControl* ctrl = nlctrl->ComponentControl(0); - CEikListBox* listbox=static_cast (ctrl); - - if ( listbox ) - { - markedContactCount = listbox->SelectionIndexes()->Count(); - } - // dim the makr all item if all contacts are marked. - if ( markedContactCount > 0 && markedContactCount == iControl->NumberOfContacts() ) - { - aMenuPane->SetItemDimmed( EAknCmdMarkingModeMarkAll, ETrue ); - } - break; - } - case R_PHONEBOOK2_GROUPMEMBERS_MENU: { // Weed out commands not meant to be used with empty list @@ -1575,6 +1531,7 @@ { aMenuPane->SetItemDimmed( EPbk2CmdBelongsToGroups, ETrue ); aMenuPane->SetItemDimmed( EPbk2CmdAddMembers, ETrue ); + aMenuPane->SetItemSpecific( EPbk2CmdRemoveFromGroup, EFalse ); } // Weed out commands not meant to be if names list is empty if ( Phonebook2::Pbk2AppUi()->ApplicationServices(). @@ -1592,12 +1549,9 @@ { aMenuPane->SetItemDimmed( EPbk2CmdSend, ETrue ); } - - // When Marking mode is active, - // Send as business card item should be shown in pop up menu. - if( iMarkingModeOn ) + if ( iControl->ContactsMarked() ) { - aMenuPane->SetItemSpecific( EPbk2CmdSend, ETrue ); + aMenuPane->SetItemSpecific( EPbk2CmdSend, EFalse ); } break; } @@ -1832,6 +1786,9 @@ R_PBK2_SOFTKEYS_OPTIONS_BACK_CONTEXT); } iView.Cba()->DrawDeferred(); + // Change context menu when marked items + iView.MenuBar()->SetContextMenuTitleResourceId + ( R_PHONEBOOK2_GROUPMEMBERS_CONTEXT_MENUBAR ); } } } @@ -1866,10 +1823,9 @@ CPguRemoveFromGroupCmd::NewLC( *iViewParent.FocusedContact(), *iControl); - iCommandHandler.AddAndExecuteCommandL(cmd); + iCommandHandler.AddAndExecuteCommandL(cmd); + CleanupStack::Pop(cmd); // command handler takes the ownership - //Store the reference here. Reset to NULL when Command is Completed. - iCommand = cmd; } break; } @@ -1879,32 +1835,11 @@ CPguAddMembersCmd* cmd = CPguAddMembersCmd::NewLC(*iViewParent.FocusedContact(), *iControl); - iCommandHandler.AddAndExecuteCommandL(cmd); + iCommandHandler.AddAndExecuteCommandL(cmd); CleanupStack::Pop(cmd); // command handler takes the ownership - //Store the reference here. Reset to NULL when Command is Completed. - iCommand = cmd; break; } - - case EAknCmdExit: - case EAknSoftkeyExit: - case EPbk2CmdExit: - case EAknCmdHideInBackground: - { - CPbk2CommandStore* cmdStore = static_cast(&iCommandHandler)->CommandStore(); - if ( iCommand && cmdStore ) - { - iCommand->Abort(); - cmdStore->DestroyAllCommands(); - - if( !iWait.IsStarted() ) - { - iWait.Start(); - } - } - break; - } - + default: { // Do nothing @@ -1965,6 +1900,11 @@ // Select key is mapped to "Open Contact" command HandleCommandL( EPbk2CmdOpenCca ); } + else + { + iView.LaunchPopupMenuL( + R_PHONEBOOK2_GROUPMEMBERS_CONTEXT_MENUBAR); + } break; } default: @@ -2013,7 +1953,12 @@ if ( iControl->NumberOfContacts() > 0 && iPointerEventInspector->FocusedItemPointed() ) { - if ( !iControl->ContactsMarked() ) + if ( iControl->ContactsMarked() ) + { + iView.LaunchPopupMenuL( + R_PHONEBOOK2_GROUPMEMBERS_CONTEXT_MENUBAR ); + } + else { // Open contact HandleCommandL(EPbk2CmdOpenCca); @@ -2049,7 +1994,7 @@ { if (iContainer && iContainer->Control()) { - iContainer->Control()->HideThumbnail(); + iContainer->Control()->HideThumbnail(); } } @@ -2059,23 +2004,13 @@ // void CPguGroupMembersView::CGroupMembersAllGroupsReady::PostCommandExecutionL ( const MPbk2Command& /*aCommand*/ ) - { - if ( iCommand ) - { - iCommand = NULL; - } - + { if ( iContainer && iContainer->Control() ) { iContainer->Control()->ShowThumbnail(); } UpdateCbasL(); - if( iWait.IsStarted() ) - { - iWait.AsyncStop(); - } - } // -------------------------------------------------------------------------- @@ -2252,15 +2187,11 @@ } iViewImpl->CreateControlL(iView.ClientRect()); - + CPbk2NamesListControl* nlctrl=static_cast (iViewImpl->Control()); - - // It will return the listbox by calling nlctrl->ComponentControl(0), - // which is defined in CPbk2NamesListControl::ComponentControl(TInt aIndex). CCoeControl* ctrl=nlctrl->ComponentControl(0); CEikListBox* listbox=static_cast (ctrl); - listbox->SetListBoxObserver( this ); - listbox->SetMarkingModeObserver( this ); + listbox->SetListBoxObserver( this ); iPreviousViewId = aPrevViewId; @@ -2346,7 +2277,7 @@ { case EEventItemDoubleClicked: case EEventItemSingleClicked: - case EEventEnterKeyPressed: + case EEventEnterKeyPressed: { if ( iViewImpl ) @@ -2375,11 +2306,10 @@ void CPguGroupMembersView::HandlePointerEventL( const TPointerEvent& aPointerEvent) { - if ( iViewImpl && !iViewImpl->IsMarkingModeOn() ) + if ( iViewImpl ) { - // Route the pointer events to the view implementing the application - // view currently except the Marking mode is active, - // because the event is handled by avkon when marking mode is active. + // route the pointer events to the view implementing the application + // view currently iViewImpl->HandlePointerEventL(aPointerEvent); } } @@ -2401,46 +2331,6 @@ } } -// ----------------------------------------------------------------------------- -// CPguGroupMembersView::MarkingModeStatusChanged -// ----------------------------------------------------------------------------- -// -void CPguGroupMembersView::MarkingModeStatusChanged( TBool aActivated ) - { - if( iViewImpl ) - { - iViewImpl->SetMarkingModeOn( aActivated ); - CPbk2NamesListControl* nlctrl = - static_cast (iViewImpl->Control()); - if( !aActivated ) - { - // It will return the findbox by calling - // nlctrl->ComponentControl(1), which is defined in - // CPbk2NamesListControl::ComponentControl(TInt aIndex). - CCoeControl* ctrl=nlctrl->ComponentControl(1); - if( ctrl->IsVisible() ) - { - // Clear the text of the FindBox - // when canceling from Marking mode. - TRAP_IGNORE( nlctrl->ResetFindL() ); - } - } - nlctrl->SetMarkingMode( aActivated ); - } - } - -// ----------------------------------------------------------------------------- -// CPguGroupMembersView::ExitMarkingMode -// Called by avkon, if the return value is ETrue, -// the Marking mode will be canceled after any operation, -// otherwise the Marking mode keep active. -// ----------------------------------------------------------------------------- -// -TBool CPguGroupMembersView::ExitMarkingMode() const - { - return ETrue; - } - // -------------------------------------------------------------------------- // CPguGroupMembersView::TransformViewActivationStateToReady // -------------------------------------------------------------------------- diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/GroupExtension/src/CPguGroupNameQueryDlg.cpp --- a/phonebookui/Phonebook2/GroupExtension/src/CPguGroupNameQueryDlg.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/GroupExtension/src/CPguGroupNameQueryDlg.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -21,7 +21,7 @@ // Phonebook 2 #include "Pbk2GroupConsts.h" #include -#include +#include #include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/GroupExtension/src/CPguGroupView.cpp --- a/phonebookui/Phonebook2/GroupExtension/src/CPguGroupView.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/GroupExtension/src/CPguGroupView.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -28,10 +28,10 @@ #include #include #include -#include -#include -#include -#include +#include +#include +#include +#include #include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/GroupExtension/src/CPguRemoveFromGroupCmd.cpp --- a/phonebookui/Phonebook2/GroupExtension/src/CPguRemoveFromGroupCmd.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/GroupExtension/src/CPguRemoveFromGroupCmd.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -20,7 +20,7 @@ #include "CPguRemoveFromGroupCmd.h" // Phonebook2 -#include +#include #include #include #include @@ -748,19 +748,4 @@ CleanupStack::Pop( iInputBlock ); } - -// -------------------------------------------------------------------------- -// CPguRemoveFromGroupCmd::Abort -// -------------------------------------------------------------------------- -// -void CPguRemoveFromGroupCmd::Abort() - { - if ( iProgressDialog && !iDialogDismissed ) - { - // Delete the dialog - TRAP_IGNORE( iProgressDialog->ProcessFinishedL() ); - iProgressDialog = NULL; - } - } - // End of File diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/GroupExtension/src/CPguRenameGroupCmd.cpp --- a/phonebookui/Phonebook2/GroupExtension/src/CPguRenameGroupCmd.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/GroupExtension/src/CPguRenameGroupCmd.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -22,7 +22,7 @@ // Phonebook 2 #include "CPguGroupNameQueryDlg.h" #include "Pbk2GroupConsts.h" -#include +#include #include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/GroupExtension/src/CPguSendMessageGroupCmd.cpp --- a/phonebookui/Phonebook2/GroupExtension/src/CPguSendMessageGroupCmd.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/GroupExtension/src/CPguSendMessageGroupCmd.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -25,7 +25,7 @@ #include #include #include -#include +#include #include #include #include @@ -380,14 +380,9 @@ sp->ControlL( TUid::Uid( EEikStatusPaneUidTitle ) ) ); title = titlePane->Text()->AllocLC(); - TRAPD( error, Phonebook2::Pbk2AppUi()->ApplicationServices().SendUiL()-> - CreateAndSendMessageL( iMtmUid, iMessageData ) ); + Phonebook2::Pbk2AppUi()->ApplicationServices().SendUiL()-> + CreateAndSendMessageL( iMtmUid, iMessageData ); - if ( error ) - { - //Show Appropriate Error Note - - } if( !Layout_Meta_Data::IsLandscapeOrientation() ) { sp->SwitchLayoutL( R_AVKON_STATUS_PANE_LAYOUT_USUAL ); diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/GroupExtension/src/CPguSetToneCmd.cpp --- a/phonebookui/Phonebook2/GroupExtension/src/CPguSetToneCmd.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/GroupExtension/src/CPguSetToneCmd.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -22,8 +22,8 @@ // Phonebook 2 #include #include -#include -#include +#include +#include // Virtual Phonebook #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/GroupExtension/src/CPguSortOrder.cpp --- a/phonebookui/Phonebook2/GroupExtension/src/CPguSortOrder.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/GroupExtension/src/CPguSortOrder.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -20,7 +20,7 @@ // Phonebook 2 #include -#include +#include #include // Virtual Phonebook diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/MMCExtension/inc/CPmuCopyToMmcCmd.h --- a/phonebookui/Phonebook2/MMCExtension/inc/CPmuCopyToMmcCmd.h Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/MMCExtension/inc/CPmuCopyToMmcCmd.h Wed Oct 13 14:15:33 2010 +0300 @@ -104,11 +104,7 @@ TBool ShowMemorySelectionDialogL(); void ShowResultsL(); TInt HandleError( TInt aError ); - /** - * Show result and do cleanup when copy complete. - */ - void CommandCompleted(); - + private: // Data /// Ref: UI control MPbk2ContactUiControl* iUiControl; diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/MMCExtension/rss/Pbk2DriveUiRes.rss --- a/phonebookui/Phonebook2/MMCExtension/rss/Pbk2DriveUiRes.rss Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/MMCExtension/rss/Pbk2DriveUiRes.rss Wed Oct 13 14:15:33 2010 +0300 @@ -20,7 +20,7 @@ #include "Pbk2MmcUiUid.h" #include "PmuCommands.hrh" #include -#include +#include #include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/MMCExtension/src/CPmuCopyFromDriveCmd.cpp --- a/phonebookui/Phonebook2/MMCExtension/src/CPmuCopyFromDriveCmd.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/MMCExtension/src/CPmuCopyFromDriveCmd.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -32,7 +32,7 @@ #include #include #include -#include +#include // Virtual Phonebook #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/MMCExtension/src/CPmuCopyToDriveCmd.cpp --- a/phonebookui/Phonebook2/MMCExtension/src/CPmuCopyToDriveCmd.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/MMCExtension/src/CPmuCopyToDriveCmd.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -27,7 +27,7 @@ #include #include #include -#include +#include #include // Virtual Phonebook @@ -239,14 +239,15 @@ } else { - // Stop the process dialog when complete the process of copying - iDecorator->ProcessStopped(); + iState = EPmuCopyToMmcCmdComplete; + IssueRequest(); } break; } case EPmuCopyToMmcCmdComplete: { - CommandCompleted(); + // Copy complete, decorator calls processdismissed + iDecorator->ProcessStopped(); break; } default: @@ -326,8 +327,19 @@ // void CPmuCopyToMmcCmd::ProcessDismissed( TInt /*aCancelCode*/ ) { - iState = EPmuCopyToMmcCmdComplete; - IssueRequest(); + Cancel(); + delete iRetrieveOperation; + iRetrieveOperation = NULL; + delete iExportOperation; + iExportOperation = NULL; + + // It is a not big deal if result note is not shown to user + TRAP_IGNORE( ShowResultsL() ); + if ( iUiControl ) + { + iUiControl->UpdateAfterCommandExecution(); + } + iCommandObserver->CommandFinished( *this ); } // -------------------------------------------------------------------------- @@ -641,25 +653,4 @@ return err; } -// -------------------------------------------------------------------------- -// CPmuCopyToMmcCmd::CommandCompleted -// -------------------------------------------------------------------------- -// -void CPmuCopyToMmcCmd::CommandCompleted() - { - Cancel(); - delete iRetrieveOperation; - iRetrieveOperation = NULL; - delete iExportOperation; - iExportOperation = NULL; - - // It is a not big deal if result note is not shown to user - TRAP_IGNORE( ShowResultsL() ); - if ( iUiControl ) - { - iUiControl->UpdateAfterCommandExecution(); - } - iCommandObserver->CommandFinished( *this ); - } - // End of File diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/MMCExtension/src/CPmuUIExtensionPlugin.cpp --- a/phonebookui/Phonebook2/MMCExtension/src/CPmuUIExtensionPlugin.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/MMCExtension/src/CPmuUIExtensionPlugin.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -27,8 +27,8 @@ #include #include #include -#include -#include +#include +#include // System includes #include @@ -82,22 +82,14 @@ case R_PMU_CASCADING_COPY_CONTACT_CARD_MENU : { TBool marked = aControl.ContactsMarked(); - // Menu item "To other memory" is not displayed if there is no marked item in the Names List - // Menu item "From other memory" is not displayed if there is marked item in the Names List - TInt pos = 0; - if ( marked ) + if ( !marked) { - if ( aMenuPane->MenuItemExists( EPmuCmdImportFromMemoryCard, pos ) ) - { - aMenuPane->SetItemDimmed( EPmuCmdImportFromMemoryCard, ETrue ); - } - } - else - { + //Not displayed if no marked items in the Names List. + TInt pos; if ( aMenuPane->MenuItemExists( EPmuCmdExportToMemoryCard, pos ) ) - { - aMenuPane->SetItemDimmed( EPmuCmdExportToMemoryCard, ETrue ); - } + { + aMenuPane->SetItemDimmed( EPmuCmdExportToMemoryCard, ETrue ); + } } break; } diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/MapExtension/inc/cpmapcmd.h --- a/phonebookui/Phonebook2/MapExtension/inc/cpmapcmd.h Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/MapExtension/inc/cpmapcmd.h Wed Oct 13 14:15:33 2010 +0300 @@ -37,7 +37,6 @@ class MVPbkStoreContactField; class TLocality; class CMnMapView; -class MPbk2DialogEliminator; enum TCurrentMapLaunchedByState { @@ -300,14 +299,6 @@ TVPbkFieldTypeParameter iAddressType; /// Own: Is already address is there? TBool iNoAddress; - - /// Ref: For address select dialog's exit handling - ///Doesnt Own - MPbk2DialogEliminator* iAddressSelectEliminator; - - ///Bool to denote whether the Current Obj has been deleted or not - ///Doesnt Own - TBool *iThisPtrDestroyed; }; #endif // CPMAPCMD_H diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/MapExtension/inc/cpmapcontacteditorextension.h --- a/phonebookui/Phonebook2/MapExtension/inc/cpmapcontacteditorextension.h Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/MapExtension/inc/cpmapcontacteditorextension.h Wed Oct 13 14:15:33 2010 +0300 @@ -22,7 +22,6 @@ #include #include #include -#include #include // FORWARD DECLARATIONS @@ -35,8 +34,7 @@ // CLASS DECLARATION class CPmapContactEditorExtension : public CBase, public MPbk2ContactEditorExtension, - public MPbk2ContactEditorExtensionExtension, - public MPbk2CommandObserver + public MPbk2ContactEditorExtensionExtension { public: /** @@ -92,10 +90,6 @@ TFailParams& aFailParams ); TAny* ContactEditorExtensionExtension( TUid /*aExtensionUid*/ ); - - public: // From MPbk2CommandObserver - void CommandFinished( - const MPbk2Command& aCommand ); private: // Implementation CPmapContactEditorExtension( @@ -115,8 +109,6 @@ MPbk2ContactEditorControl& iEditorControl; /// Own: Map command controller MPbk2Command* iCmd; - /// Own: Mark if Map command is finished - TBool iMapCommandFinish; }; #endif // CPMAPCONTACTEDITOREXTENSION_H diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/MapExtension/rss/pbk2mapuires.rss --- a/phonebookui/Phonebook2/MapExtension/rss/pbk2mapuires.rss Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/MapExtension/rss/pbk2mapuires.rss Wed Oct 13 14:15:33 2010 +0300 @@ -19,12 +19,12 @@ #include "pbk2mapuiuid.h" #include "pbk2mapcommands.hrh" #include -#include +#include #include #include #include #include "Pbk2UIControls.hrh" -#include +#include #include "Pbk2EditorLineIds.hrh" #include "Pbk2FieldProperty.hrh" #include "Pbk2UIFieldProperty.hrh" diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/MapExtension/src/CPbk2ContactEditorUIAFMField.cpp --- a/phonebookui/Phonebook2/MapExtension/src/CPbk2ContactEditorUIAFMField.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/MapExtension/src/CPbk2ContactEditorUIAFMField.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -22,12 +22,12 @@ #include "MPbk2ContactEditorFieldVisitor.h" #include "MPbk2ContactEditorUiBuilderExtension.h" #include "CPbk2IconInfoContainer.h" -#include +#include #include "MPbk2UIField.h" #include "Pbk2EditorLineIds.hrh" #include #include "CPbk2ContactEditorReadonlyField.h" -#include +#include // System includes #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/MapExtension/src/cpmapcmd.cpp --- a/phonebookui/Phonebook2/MapExtension/src/cpmapcmd.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/MapExtension/src/cpmapcmd.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -25,18 +25,18 @@ #include #include #include -#include +#include #include #include #include #include -#include +#include #include #include #include +#include #include #include -#include // Virtual Phonebook #include @@ -49,7 +49,7 @@ #include #include #include -#include +#include #include #include #include @@ -84,7 +84,8 @@ // Debugging headers #include -_LIT( KGeoSeparator, ","); +_LIT(KGeoSeparator, ","); +_LIT( KDecimalSepratorEnglish, "." ); const TInt KGeoSeparatorLength = 1; const TReal32 KGeoHorizontalAccuracy = 0; const TInt KGeoMaxSize = 60; @@ -126,11 +127,6 @@ // CPmapCmd::~CPmapCmd() { - if ( iAddressSelectEliminator ) - { - iAddressSelectEliminator->ForceExit(); - } - Cancel(); if(iMapView) { @@ -144,13 +140,6 @@ iUiControl->RegisterCommand( NULL ); } delete iMapViewProvider; - - //Indication that the object has been deleted. - if ( iThisPtrDestroyed ) - { - *iThisPtrDestroyed = ETrue; - } - } // -------------------------------------------------------------------------- @@ -270,9 +259,6 @@ PBK2_DEBUG_PRINT(PBK2_DEBUG_STRING ("CPmapCmd::ExecuteLD")); - TBool amIDestroyed( EFalse ); - iThisPtrDestroyed = &amIDestroyed; - iAddressUpdatePrompt = ETrue; TPbk2FieldGroupId groupId = EPbk2FieldGroupIdNone; if( !IsAddressInContact() ) @@ -324,15 +310,6 @@ { groupId = SelectAddressL(); } - - //This object could have been deleted because of some external activity - //Dont proceed if this object is destroyed - if ( amIDestroyed ) - { - return; - } - - iThisPtrDestroyed = NULL; if( groupId != EPbk2FieldGroupIdNone ) { @@ -530,12 +507,6 @@ CleanupStack::PopAndDestroy( appServices ); CPbk2AddressSelect* addressSelect = CPbk2AddressSelect::NewL( params ); - - // Execute - iAddressSelectEliminator = addressSelect; - iAddressSelectEliminator->ResetWhenDestroyed - ( &iAddressSelectEliminator ); - MVPbkStoreContactField* selectedField = addressSelect->ExecuteLD(); CleanupStack::PopAndDestroy(); // resReader @@ -879,17 +850,43 @@ TBool CPmapCmd::DoFillGeoLandmarkL( CPosLandmark& aLandmark, const TDesC& aDataText ) { + HBufC* locationText = aDataText.AllocLC(); + TBool result = EFalse; - TInt separator = aDataText.Find( KGeoSeparator ); + TInt separator = locationText->Find( KGeoSeparator ); if ( separator != KErrNotFound ) { + TLocale localeFethcer; + TChar currentDecimalSeparator = localeFethcer.DecimalSeparator(); + TBuf<1> currentLangDecSeprator; + currentLangDecSeprator.Append( currentDecimalSeparator ); + TBuf< KGeoMaxSize > strLatitude; + strLatitude.Copy( locationText->Left( separator ) ); + + TInt descimalSepratorPos = strLatitude.Find( KDecimalSepratorEnglish ); + if( descimalSepratorPos != KErrNotFound ) + { + strLatitude.Delete( descimalSepratorPos, 1 ); + strLatitude.Insert( descimalSepratorPos,currentLangDecSeprator ); + } + TReal64 latitude = 0; TReal64 logitude = 0; - TLex lexLatitude( aDataText.Left( separator ) ); - TLex lexLogitude( aDataText.Right( aDataText.Length() - - separator - KGeoSeparatorLength ) ); - if ( lexLatitude.Val( latitude ) == KErrNone - && lexLogitude.Val( logitude ) == KErrNone ) + TLex lexLatitude( strLatitude ); + + TBuf< KGeoMaxSize > strLongitude; + strLongitude.Copy( locationText->Right( locationText->Length() + - separator - KGeoSeparatorLength ) ); + descimalSepratorPos = strLongitude.Find( KDecimalSepratorEnglish ); + if( descimalSepratorPos != KErrNotFound ) + { + strLongitude.Delete( descimalSepratorPos, 1 ); + strLongitude.Insert( descimalSepratorPos,currentLangDecSeprator ); + } + + TLex lexLogitude( strLongitude ); + if ( lexLatitude.Val( latitude, currentDecimalSeparator ) == KErrNone + && lexLogitude.Val( logitude, currentDecimalSeparator ) == KErrNone ) { TLocality loc( TCoordinate( latitude, logitude ), KGeoHorizontalAccuracy ); @@ -898,11 +895,14 @@ if(separator2 != KErrNotFound) { separator += separator2; - aLandmark.SetPositionFieldL(EPositionFieldCountryCode,aDataText.Right( aDataText.Length() - separator - (KGeoSeparatorLength * 2) )); + aLandmark.SetPositionFieldL( EPositionFieldCountryCode, + locationText->Right( locationText->Length() + - separator - ( KGeoSeparatorLength * 2 ) ) ); } result = ETrue; } } + CleanupStack::PopAndDestroy( locationText ); return result; } @@ -968,10 +968,31 @@ textNumber.CreateL( KGeoMaxSize ); TRealFormat format( KGeoFormatWidth ); textNumber.Num( latitude, format ); + + TLocale localeFetcer; + TChar currentDecimalSeparator; + + currentDecimalSeparator = localeFetcer.DecimalSeparator(); + TInt descimalSepratorPos = textNumber.Locate( currentDecimalSeparator ); + + if( descimalSepratorPos != KErrNotFound ) + { + textNumber.Replace( descimalSepratorPos , 1 , KDecimalSepratorEnglish ); + } + + geoData = textNumber; geoData += KGeoSeparator(); textNumber.Num( longitude, format ); - geoData += textNumber; + + descimalSepratorPos = textNumber.Locate( currentDecimalSeparator ); + + if( descimalSepratorPos != KErrNotFound ) + { + textNumber.Replace( descimalSepratorPos , 1 , KDecimalSepratorEnglish ); + } + + geoData += textNumber; if(aLandmark.IsPositionFieldAvailable( EPositionFieldCountryCode )) { @@ -1432,6 +1453,8 @@ EVPbkVersitSubFieldPostalCode, iAddressType ); UpdateFieldL( *result, EPositionFieldLocality, EVPbkVersitSubFieldRegion, iAddressType ); + UpdateFieldL( *result, EPositionFieldState, + EVPbkVersitSubFieldRegion, iAddressType ); UpdateFieldL( *result, EPositionFieldNone, EVPbkVersitSubFieldPostOfficeAddress, iAddressType ); UpdateFieldL( *result, EPositionFieldNone, diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/MapExtension/src/cpmapcontacteditorextension.cpp --- a/phonebookui/Phonebook2/MapExtension/src/cpmapcontacteditorextension.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/MapExtension/src/cpmapcontacteditorextension.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -19,9 +19,9 @@ // Phonebook 2 #include -#include -#include -#include +#include +#include +#include #include #include #include @@ -52,9 +52,10 @@ #include #include #include -#include -#include +#include +#include #include +#include #include #include @@ -113,7 +114,6 @@ // inline void CPmapContactEditorExtension::ConstructL() { - iMapCommandFinish = ETrue; } // -------------------------------------------------------------------------- @@ -171,53 +171,31 @@ TBool CPmapContactEditorExtension::ProcessCommandL ( TInt aCommandId ) { - TBool result = EFalse; - switch( aCommandId ) { case EPbk2ExtensionShowOnMap: - { - // Ignore new command if the previous command is not finished - if ( iMapCommandFinish ) - { - if(iCmd) - { - delete iCmd; - iCmd = NULL; - } - iCmd = CPmapCmd::NewL( iEditorControl, iContact, aCommandId ); - - // Observer if the Map command is finished - iCmd->AddObserver( *this ); - iMapCommandFinish = EFalse; - - // Execute the command - iCmd->ExecuteLD(); - } - result = ETrue; - break; + { + if(iCmd) + { + delete iCmd; + iCmd = NULL; + } + iCmd = CPmapCmd::NewL( iEditorControl, iContact, aCommandId ); + // Execute the command + iCmd->ExecuteLD(); + return ETrue; } case EPbk2ExtensionAssignFromMap: - { - // Ignore new command if the previous command is not finished - if ( iMapCommandFinish ) + { + if(iCmd) { - if(iCmd) - { - delete iCmd; - iCmd = NULL; - } - iCmd = CPmapCmd::NewL( iEditorControl, iContact, aCommandId ); - - // Observer if the Map command is finished - iCmd->AddObserver( *this ); - iMapCommandFinish = EFalse; - - // Execute the command - iCmd->ExecuteLD(); + delete iCmd; + iCmd = NULL; } - result = ETrue; - break; + iCmd = CPmapCmd::NewL( iEditorControl, iContact, aCommandId ); + // Execute the command + iCmd->ExecuteLD(); + return ETrue; } default: { @@ -225,16 +203,7 @@ break; } } - return result; - } - -// -------------------------------------------------------------------------- -// CPmapContactEditorExtension::CommandFinished -// -------------------------------------------------------------------------- -// -void CPmapContactEditorExtension::CommandFinished(const MPbk2Command& /*aCommand*/) - { - iMapCommandFinish = ETrue; + return EFalse; } // -------------------------------------------------------------------------- diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/MapExtension/src/cpmapuiextensionplugin.cpp --- a/phonebookui/Phonebook2/MapExtension/src/cpmapuiextensionplugin.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/MapExtension/src/cpmapuiextensionplugin.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -24,10 +24,10 @@ #include #include #include -#include -#include +#include +#include #include -#include +#include #include #include "cpmapcmd.h" diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/NamesListExtension/inc/Pbk2NamesListExView.h --- a/phonebookui/Phonebook2/NamesListExtension/inc/Pbk2NamesListExView.h Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/NamesListExtension/inc/Pbk2NamesListExView.h Wed Oct 13 14:15:33 2010 +0300 @@ -32,7 +32,6 @@ #include #include -#include // FORWARD DECLARATIONS template class CPbk2ControlContainer; @@ -71,8 +70,7 @@ public MCoeControlObserver, public MEikListBoxObserver, private MCoeForegroundObserver, - public MPbk2UIExtensionView2, - public MAknMarkingModeObserver + public MPbk2UIExtensionView2 { public: // Construction and destruction @@ -164,24 +162,6 @@ CCoeControl* aControl, TCoeEvent aEventType ); - public: // From MAknMarkingModeObserver - - /** - * This method is called when marking mode is activated or deactivated. - * - * @param aActivated @c ETrue if marking mode was activate, @c EFalse - * if marking mode was deactivated. - */ - void MarkingModeStatusChanged( TBool aActivated ); - - /** - * This method is called just before marking mode is closed. Client can - * either accept or decline closing. - * - * @return @c ETrue if marking mode should be closed, otherwise @c EFalse. - */ - TBool ExitMarkingMode() const; - private: // Implementation CPbk2NamesListExView( CPbk2UIExtensionView& aView, @@ -282,10 +262,8 @@ CSpbContentProvider& iContentProvider; // Not own. CCA launcher connection MCCAConnection*& iCCAConnection; - // Own: Context launcher + /// Own: Context launcher CPbk2ContextLaunch* iContextLauncher; - // Flag to indicate whether Marking mode is active - TBool iMarkingModeOn; }; #endif // CPBK2NAMESLISTEXVIEW_H diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/NamesListExtension/rss/Pbk2ExNamesListRes.rss --- a/phonebookui/Phonebook2/NamesListExtension/rss/Pbk2ExNamesListRes.rss Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/NamesListExtension/rss/Pbk2ExNamesListRes.rss Wed Oct 13 14:15:33 2010 +0300 @@ -35,12 +35,12 @@ #include #include #include -#include -#include +#include +#include #include #include #include -#include +#include #include #include #include @@ -367,8 +367,7 @@ KPbk2ContactViewListControlDoubleRow; listbox = LISTBOX { - flags = EAknListBoxStylusMarkableList | EAknListBoxLoopScrolling | - EAknListBoxPointerMarkableList; + flags = EAknListBoxStylusMarkableList | EAknListBoxLoopScrolling; }; iconArray = R_PBK2_CONTACT_LIST_ICONS; emptyIconId = PHONEBOOK2_ICON_ID diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/NamesListExtension/src/CPbk2CmdItemAddTop.cpp --- a/phonebookui/Phonebook2/NamesListExtension/src/CPbk2CmdItemAddTop.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/NamesListExtension/src/CPbk2CmdItemAddTop.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -24,7 +24,7 @@ #include #include #include "Pbk2NamesListExUID.h" -#include +#include #include #include "pbk2nameslistexiconid.hrh" #include "pbk2contactuicontroldoublelistboxextension.h" diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/NamesListExtension/src/CPbk2CmdItemRemoteContactLookup.cpp --- a/phonebookui/Phonebook2/NamesListExtension/src/CPbk2CmdItemRemoteContactLookup.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/NamesListExtension/src/CPbk2CmdItemRemoteContactLookup.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -22,7 +22,7 @@ #include "CPbk2RemoteContactLookupVisibility.h" #include #include -#include +#include // General #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/NamesListExtension/src/CPbk2DelayedWaitNote.cpp --- a/phonebookui/Phonebook2/NamesListExtension/src/CPbk2DelayedWaitNote.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/NamesListExtension/src/CPbk2DelayedWaitNote.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -17,7 +17,7 @@ // INCLUDES #include -#include +#include #include #include "CPbk2DelayedWaitNote.h" diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/NamesListExtension/src/CPbk2NameslistUiControlExtension.cpp --- a/phonebookui/Phonebook2/NamesListExtension/src/CPbk2NameslistUiControlExtension.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/NamesListExtension/src/CPbk2NameslistUiControlExtension.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -31,12 +31,12 @@ #include #include #include -#include +#include #include #include #include #include -#include +#include //ECE #include @@ -371,13 +371,6 @@ TRAP_IGNORE( AddMyCardThumbnailToIconArrayL() ); } } - // Refresh mycard list item if thumbnail has changed - if( iCommandUpdater && - ( aEvent == EStateThumbnailLoaded || - aEvent == EStateThumbnailNotFound ) ) - { - iCommandUpdater->UpdateCommandItem( EPbk2CmdOpenMyCard ); - } } // ----------------------------------------------------------------------------- diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/NamesListExtension/src/CPbk2NlxAddToTopContactsCmd.cpp --- a/phonebookui/Phonebook2/NamesListExtension/src/CPbk2NlxAddToTopContactsCmd.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/NamesListExtension/src/CPbk2NlxAddToTopContactsCmd.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -21,10 +21,10 @@ #include #include -#include -#include -#include -#include +#include +#include +#include +#include #include #include @@ -39,7 +39,7 @@ #include #include #include -#include +#include #include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/NamesListExtension/src/CPbk2NlxMoveTopContactsCmd.cpp --- a/phonebookui/Phonebook2/NamesListExtension/src/CPbk2NlxMoveTopContactsCmd.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/NamesListExtension/src/CPbk2NlxMoveTopContactsCmd.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -21,7 +21,7 @@ #include "CPbk2NlxMoveTopContactsDlg.h" #include "CPbk2NlxReorderingModel.h" -#include +#include #include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/NamesListExtension/src/CPbk2NlxMoveTopContactsDlg.cpp --- a/phonebookui/Phonebook2/NamesListExtension/src/CPbk2NlxMoveTopContactsDlg.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/NamesListExtension/src/CPbk2NlxMoveTopContactsDlg.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -23,7 +23,7 @@ #include #include #include -#include +#include // Virtual Phonebook #include @@ -43,7 +43,7 @@ #include "CPbk2NlxReorderingModel.h" #include "Pbk2NlxUIControls.hrh" -#include +#include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/NamesListExtension/src/CPbk2NlxRemoveFromTopContactsCmd.cpp --- a/phonebookui/Phonebook2/NamesListExtension/src/CPbk2NlxRemoveFromTopContactsCmd.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/NamesListExtension/src/CPbk2NlxRemoveFromTopContactsCmd.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -27,7 +27,7 @@ #include #include #include -#include +#include // Debugging headers #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/NamesListExtension/src/CPbk2NlxReorderingModel.cpp --- a/phonebookui/Phonebook2/NamesListExtension/src/CPbk2NlxReorderingModel.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/NamesListExtension/src/CPbk2NlxReorderingModel.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -28,7 +28,7 @@ #include #include #include -#include +#include #include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/NamesListExtension/src/NamesListExView.cpp --- a/phonebookui/Phonebook2/NamesListExtension/src/NamesListExView.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/NamesListExtension/src/NamesListExView.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -21,7 +21,7 @@ #include "CPbk2CmdItemAddTop.h" #include "CPbk2CmdItemRemoteContactLookup.h" #include -#include +#include #include "Pbk2NlxMenuFiltering.h" #include "cpbk2cmditemmycard.h" #include "cpbk2mycard.h" @@ -36,15 +36,14 @@ #include #include "CPbk2ViewState.h" #include -#include -#include -#include -#include +#include +#include +#include +#include #include #include #include #include -#include #include #include #include @@ -204,8 +203,7 @@ iCtrlVisibleStateBeforeLosingForground( ETrue ), iFirstTimeActivated( ETrue ), iContentProvider( aStatusProvider ), - iCCAConnection( aCCAConnection ), - iMarkingModeOn( EFalse ) + iCCAConnection( aCCAConnection ) { } @@ -420,9 +418,9 @@ } if ( EPbk2CmdOpenCca == aCommandId ) - { + { iControl->SetOpeningCca( ETrue ); - } + } // Set focus, keep current focus on the area of the client screen // when scoll to the bottom of Names list view. @@ -567,7 +565,7 @@ // The application is set here to background if application exit occurs PBK2_PROFILE_START ( Pbk2Profile::ENamesListViewDoActivateNotifyViewActivatation ); - + // The application is set here to background if application exit occurs // When the device is powered on, Phonebook will start up automatically and // hide itself in the background. At the first time of names list view activation, @@ -599,12 +597,9 @@ PBK2_PROFILE_END(Pbk2Profile::ENamesListViewDoActivateL); - // It will return the listbox by calling iControl->ComponentControl(0), - // which is defined in CPbk2NamesListControl::ComponentControl(TInt aIndex). CCoeControl* ctrl=iControl->ComponentControl(0); CEikListBox* listbox=static_cast (ctrl); listbox->SetListBoxObserver( this ); - listbox->SetMarkingModeObserver( this ); // iCtrlVisibleStateBeforeLosingForground records the names list control states before // losing foreground during a command execution. Set the iCtrlVisibleStateBeforeLosingForground @@ -627,17 +622,17 @@ // Check if there is need to create MyCard if( FeatureManager::FeatureSupported( KFeatureIdffContactsMycard ) && ( !iMyCard && IsPhoneMemoryUsedL() ) ) - { - // Get the phoneStore for MyCard - MVPbkContactStore* phoneStore = iContactManager->ContactStoresL() - .Find(VPbkContactStoreUris::DefaultCntDbUri() ); - - if( phoneStore ) - { - // Create MyCard if not already exist and the phone memory selected - iMyCard = CPbk2MyCard::NewL( *phoneStore ); - } - } + { + // Get the phoneStore for MyCard + MVPbkContactStore* phoneStore = iContactManager->ContactStoresL() + .Find(VPbkContactStoreUris::DefaultCntDbUri() ); + + if( phoneStore ) + { + // Create MyCard if not already exist and the phone memory selected + iMyCard = CPbk2MyCard::NewL( *phoneStore ); + } + } // Add the MyCard item to the top of the list if( iMyCard && IsPhoneMemoryUsedL() ) @@ -659,13 +654,13 @@ // promotion item disabled until we can support command items at the bottom of the list // if ( IsRclOnL() ) if( 0 ) - { + { CPbk2CmdItemRemoteContactLookup* rclCmd = CPbk2CmdItemRemoteContactLookup::NewLC(); // Add the command item to the bottom of the command list iControl->AddCommandItemL( rclCmd, commandCount ); // ownership transferred CleanupStack::Pop( rclCmd ); commandCount++; - } + } } // -------------------------------------------------------------------------- @@ -705,17 +700,17 @@ // -------------------------------------------------------------------------- // CPbk2MyCard* CPbk2NamesListExView::MyCard() const - { - TBool phoneMemory = EFalse; - - TRAP_IGNORE( phoneMemory = IsPhoneMemoryUsedL() ); - - if( phoneMemory ) - { - return iMyCard; - } - - return NULL; + { + TBool phoneMemory = EFalse; + + TRAP_IGNORE( phoneMemory = IsPhoneMemoryUsedL() ); + + if( phoneMemory ) + { + return iMyCard; + } + + return NULL; } // -------------------------------------------------------------------------- @@ -765,15 +760,6 @@ if (iContainer) { CCoeEnv::Static()->AppUi()->RemoveFromStack(iContainer); - if( iMarkingModeOn ) - { - // It will return the listbox by calling - // iControl->ComponentControl(0), which is defined - // in CPbk2NamesListControl::ComponentControl(TInt aIndex). - CCoeControl* ctrl=iControl->ComponentControl(0); - CEikListBox* listbox=static_cast (ctrl); - listbox->SetMarkingMode(EFalse); - } // Store current state, safe to ignore. There's no real harm, // if theres no stored state when activating this view again TRAP_IGNORE(StoreStateL()); @@ -806,74 +792,17 @@ //there. switch (aResourceId) { - case R_AVKON_MENUPANE_MARK_MULTIPLE: + case R_PHONEBOOK2_NAMESLIST_SEND_URL_MENU: { - TInt pos; - TInt markedContactCount = 0; - - CPbk2ContactViewListBox* listbox = - static_cast(iControl->ComponentControl(0)); - - if ( listbox ) - { - markedContactCount = listbox->SelectionIndexes()->Count(); - } - // dim the makr all item if all contacts are marked. - if ( markedContactCount > 0 && markedContactCount == iControl->NumberOfContacts() ) - { - aMenuPane->SetItemDimmed( EAknCmdMarkingModeMarkAll, ETrue ); - } - if ( aMenuPane->MenuItemExists( EAknCmdMarkingModeEnter, pos ) && - iControl->NumberOfContacts() <= 0 ) - { - aMenuPane->SetItemDimmed( EAknCmdMarkingModeEnter, ETrue ); - } + DimItem( aMenuPane, EPbk2CmdGoToURL ); break; } - case R_PHONEBOOK2_NAMESLIST_BACKUP_MENU_PLACEHOLDER: - { - TInt pos = 0; - // Checks whether there are marked contacts and - // whether menu pane contains the menu item - if ( iMarkingModeOn && iControl->ContactsMarked() && - aMenuPane->MenuItemExists( EPmuCmdCascadingBackup, pos ) ) - { - // This item is shown in option menu but not in popup menu - CEikMenuBar* menuBar = static_cast( aMenuPane->Parent() ); - if ( menuBar && menuBar->GetMenuType() == CEikMenuBar::EMenuOptions ) - { - aMenuPane->SetItemSpecific( EPmuCmdCascadingBackup, ETrue ); - } - else - { - aMenuPane->SetItemDimmed( EPmuCmdCascadingBackup, ETrue ); - } - } - break; - } - case R_PHONEBOOK2_NAMESLIST_SEND_URL_MENU: - { - TInt pos = 0; - DimItem( aMenuPane, EPbk2CmdGoToURL ); - // Checks whether there are marked contacts and - // whether menu pane contains the menu item - if ( iMarkingModeOn && iControl->ContactsMarked() && - aMenuPane->MenuItemExists( EPbk2CmdSend, pos ) ) - { - aMenuPane->SetItemDimmed( EPbk2CmdSend, EFalse ); - } - break; - } - case R_PHONEBOOK2_NAMESLIST_COPY_MENU: + case R_PHONEBOOK2_NAMELIST_CREATE_MESSAGE_MENU: { TInt pos; - if ( aMenuPane->MenuItemExists( EPbk2CmdCopy, pos ) && iMarkingModeOn - && iControl->NumberOfContacts() > 0 ) + if ( aMenuPane->MenuItemExists( EPbk2CmdWriteNoQuery, pos ) ) { - // Show Copy item both in pop up menu and Options - // when Marking mode is active. - aMenuPane->SetItemSpecific( EPbk2CmdCopy, ETrue ); - aMenuPane->SetItemDimmed( EPbk2CmdCopy, EFalse ); + aMenuPane->SetItemSpecific( EPbk2CmdWriteNoQuery, !iControl->ContactsMarked() ); } break; } @@ -1020,10 +949,16 @@ { if ( !ShiftDown(aKeyEvent) ) // pure OK key { - if ( iControl->ContactsMarked() && itemSpecEnabled ) + if ( iControl->ContactsMarked() && itemSpecEnabled ) { - result = EFalse; + iView.LaunchPopupMenuL( + R_PHONEBOOK2_NAMESLIST_CONTEXT_MENUBAR_ITEMS_MARKED); + result = ETrue; } + //else if ( iControl->NumberOfContacts() == 0 ) + // { + // result = ETrue; + // } } break; } @@ -1055,11 +990,11 @@ switch ( aEventType ) { case EEventItemSingleClicked: - { + { ShowContextMenuL(); break; } -#if 0 +#if 0 case EEventEmptyAreaClicked: //An empty area of non-empty listbox was clicked case EEventEmptyListClicked: //An empty listbox was clicked { @@ -1092,6 +1027,11 @@ // Select key is mapped to "Open Contact" command HandleCommandL(EPbk2CmdOpenCca); } + else if (iControl->ContactsMarked()) + { + iView.LaunchPopupMenuL( + R_PHONEBOOK2_NAMESLIST_CONTEXT_MENUBAR_ITEMS_MARKED); + } break; } default: @@ -1174,7 +1114,13 @@ { if ( iPointerEventInspector->FocusedItemPointed() ) { - if ( !iControl->ContactsMarked() ) + if ( iControl->ContactsMarked() ) + { + // Display marked items context menu + iView.LaunchPopupMenuL + ( R_PHONEBOOK2_NAMESLIST_CONTEXT_MENUBAR_ITEMS_MARKED ); + } + else { // cancel the long tap animation with pointer up event TPointerEvent event; @@ -1217,9 +1163,9 @@ { MTouchFeedback* feedback = MTouchFeedback::Instance(); if ( feedback ) - { - feedback->InstantFeedback( ETouchFeedbackBasic ); - } + { + feedback->InstantFeedback( ETouchFeedbackBasic ); + } HandleCommandL( EPbk2CmdCreateNew ); } } @@ -1329,22 +1275,22 @@ Reset(); if( iMyCard ) - { - return; - } + { + return; + } if( FeatureManager::FeatureSupported( KFeatureIdffContactsMycard ) ) - { - // Get the phoneStore for MyCard - TRAP_IGNORE( phoneStore = iContactManager->ContactStoresL(). - Find( VPbkContactStoreUris::DefaultCntDbUri() ) ); - } + { + // Get the phoneStore for MyCard + TRAP_IGNORE( phoneStore = iContactManager->ContactStoresL(). + Find( VPbkContactStoreUris::DefaultCntDbUri() ) ); + } if( !phoneStore ) - { + { TRAP_IGNORE( iContactManager->LoadContactStoreL( VPbkContactStoreUris::DefaultCntDbUri() ) ); - } + } } // -------------------------------------------------------------------------- @@ -1601,51 +1547,13 @@ } } -// ----------------------------------------------------------------------------- -// CPbk2NamesListExView::MarkingModeStatusChanged -// ----------------------------------------------------------------------------- -// -void CPbk2NamesListExView::MarkingModeStatusChanged( TBool aActivated ) - { - iMarkingModeOn = aActivated; - - // It will return the control findbox by calling - // iControl->ComponentControl(1), which is defined - // in CPbk2NamesListControl::ComponentControl(TInt aIndex). - if ( !iMarkingModeOn && iControl->ComponentControl(1)->IsVisible() ) - { - // Clear the text of the FindBox, when canceling from Marking mode. - TRAP_IGNORE( iControl->ResetFindL() ); - } - iControl->SetMarkingMode( aActivated ); - - // It will return the control listbox by calling - // iControl->ComponentControl(0), which is defined - // in CPbk2NamesListControl::ComponentControl(TInt aIndex). - CPbk2ContactViewListBox* listbox = - static_cast(iControl->ComponentControl(0)); - listbox->SetMarkingModeState( aActivated ); - } - -// ----------------------------------------------------------------------------- -// CPbk2NamesListExView::ExitMarkingMode -// Called by avkon, if the return value is ETrue, -// the Marking mode will be canceled after any operation, -// otherwise the Marking mode keep active. -// ----------------------------------------------------------------------------- -// -TBool CPbk2NamesListExView::ExitMarkingMode() const - { - return ETrue; - } - //--------------------------------------------------------------------------- // CPbk2NamesListExView::CreateControlsL // -------------------------------------------------------------------------- // inline void CPbk2NamesListExView::CreateControlsL() { - + if (!iContainer) { PBK2_PROFILE_START(Pbk2Profile::ENamesListViewCreateControls); @@ -1752,6 +1660,9 @@ { // Set middle softkey as Context Icon iView.Cba()->SetCommandSetL( R_PBK2_SOFTKEYS_OPTIONS_EXIT_CONTEXT ); + // Change context menu when marked items + iView.MenuBar()->SetContextMenuTitleResourceId + ( R_PHONEBOOK2_NAMESLIST_CONTEXT_MENUBAR_ITEMS_MARKED ); } else // not listContainsContacts && not contactsMarked { @@ -1977,25 +1888,25 @@ // -------------------------------------------------------------------------- // TBool CPbk2NamesListExView::IsPhoneMemoryUsedL() const - { - CPbk2ApplicationServices* appServices = CPbk2ApplicationServices::InstanceL(); - - // Get current configuration - CPbk2StoreConfiguration& storeConfig = appServices->StoreConfiguration(); - - CVPbkContactStoreUriArray* uriArray = storeConfig.CurrentConfigurationL(); - - TVPbkContactStoreUriPtr contactUri( VPbkContactStoreUris::DefaultCntDbUri() ); - - // Check is phone memory included - TBool phoneMemory = uriArray->IsIncluded( contactUri ); - - delete uriArray; - Release( appServices ); - - return phoneMemory; - } - + { + CPbk2ApplicationServices* appServices = CPbk2ApplicationServices::InstanceL(); + + // Get current configuration + CPbk2StoreConfiguration& storeConfig = appServices->StoreConfiguration(); + + CVPbkContactStoreUriArray* uriArray = storeConfig.CurrentConfigurationL(); + + TVPbkContactStoreUriPtr contactUri( VPbkContactStoreUris::DefaultCntDbUri() ); + + // Check is phone memory included + TBool phoneMemory = uriArray->IsIncluded( contactUri ); + + delete uriArray; + Release( appServices ); + + return phoneMemory; + } + // -------------------------------------------------------------------------- // CPbk2NamesListExView::HandleGainingForeground // -------------------------------------------------------------------------- diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/NamesListExtension/src/NamesListUiExtensionPlugin.cpp --- a/phonebookui/Phonebook2/NamesListExtension/src/NamesListUiExtensionPlugin.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/NamesListExtension/src/NamesListUiExtensionPlugin.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -48,13 +48,13 @@ #include #include -#include +#include #include #include #include #include #include -#include +#include #include #include #include @@ -371,7 +371,41 @@ break; } #endif - + case R_AVKON_MENUPANE_MARKABLE_LIST_IMPLEMENTATION: + { + + if ( Pbk2NlxMenuFiltering::AddToFavoritesCmdSelected( aControl ) ) + { + DimItem( aMenuPane, EAknCmdMark ); + } + if ( Pbk2NlxMenuFiltering::MyCardCmdSelected( aControl ) ) + { + DimItem( aMenuPane, EAknCmdMark ); + } + break; + } + case R_PHONEBOOK2_MARKABLE_LIST_CONTEXT_MENU: + { + if ( Pbk2NlxMenuFiltering::AddToFavoritesCmdSelected( aControl ) ) + { + DimItem( aMenuPane, EAknCmdMark ); + DimItem( aMenuPane, EAknCmdUnmark ); + } + if ( Pbk2NlxMenuFiltering::MyCardCmdSelected( aControl ) ) + { + DimItem( aMenuPane, EAknCmdMark ); + DimItem( aMenuPane, EAknCmdUnmark ); + } + break; + } + case R_AVKON_MENUPANE_MARKABLE_LIST: + { + if ( !aControl.NumberOfContacts() ) + { + DimItem( aMenuPane, EAknCmdEditListMenu ); + } + break; + } case R_PHONEBOOK2_NAMESLIST_COPY_MENU: { MPbk2ContactUiControl2* tempControl = diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/NamesListExtension/src/cpbk2cmditemmycard.cpp --- a/phonebookui/Phonebook2/NamesListExtension/src/cpbk2cmditemmycard.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/NamesListExtension/src/cpbk2cmditemmycard.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -21,7 +21,7 @@ // Pbk2 #include "CPbk2AddFavoritesVisibility.h" #include -#include +#include #include #include #include "cpbk2mycard.h" @@ -118,10 +118,23 @@ return NULL; } -void CPbk2CmdItemMyCard::MyCardEvent( MPbk2MyCardObserver::TMyCardStatusEvent /*aEvent*/ ) +void CPbk2CmdItemMyCard::MyCardEvent( MPbk2MyCardObserver::TMyCardStatusEvent aEvent ) { - NotifyVisibiltyChange( IsEnabled() ); - } + // always inform these + if( aEvent == EStateThumbnailLoaded || + aEvent == EStateThumbnailNotFound ) + { + if( iObserver ) + { + iObserver->CmdItemVisibilityChanged( CommandId(), ETrue ); + } + } + // status change + else + { + NotifyVisibiltyChange( IsEnabled() ) ; + } + } void CPbk2CmdItemMyCard::FormatDataL( MPbk2DoubleListboxDataElement& aDataElement ) diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/NamesListExtension/src/cpbk2deletemycardcmd.cpp --- a/phonebookui/Phonebook2/NamesListExtension/src/cpbk2deletemycardcmd.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/NamesListExtension/src/cpbk2deletemycardcmd.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -20,12 +20,12 @@ #include "cpbk2deletemycardcmd.h" #include #include -#include +#include // Phonebook2 #include #include -#include +#include #include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/NamesListExtension/src/cpbk2mycard.cpp --- a/phonebookui/Phonebook2/NamesListExtension/src/cpbk2mycard.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/NamesListExtension/src/cpbk2mycard.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -41,7 +41,7 @@ // thumbnail loading #include #include -#include +#include #include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/NewContactLauncher/data/NewContactLauncher_reg.rss --- a/phonebookui/Phonebook2/NewContactLauncher/data/NewContactLauncher_reg.rss Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/NewContactLauncher/data/NewContactLauncher_reg.rss Wed Oct 13 14:15:33 2010 +0300 @@ -18,7 +18,7 @@ #include "NewContactLauncher.hrh" #include "NewContactLauncher.rls" #include -#include +#include UID2 KUidAppRegistrationResourceFile UID3 _UID3 diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/NewContactLauncher/group/NewContactLauncher.mmp --- a/phonebookui/Phonebook2/NewContactLauncher/group/NewContactLauncher.mmp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/NewContactLauncher/group/NewContactLauncher.mmp Wed Oct 13 14:15:33 2010 +0300 @@ -56,7 +56,7 @@ LIBRARY cone.lib LIBRARY eikcore.lib LIBRARY avkon.lib -LIBRARY CommonEngine.lib +LIBRARY commonengine.lib LIBRARY efsrv.lib LIBRARY estor.lib LIBRARY aknnotify.lib diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/NewContactLauncher/src/NewContactLauncherAppUi.cpp --- a/phonebookui/Phonebook2/NewContactLauncher/src/NewContactLauncherAppUi.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/NewContactLauncher/src/NewContactLauncherAppUi.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -37,7 +37,7 @@ #include #include #include -#include +#include #include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/Presentation/inc/CPbk2FieldOrderingManager.h --- a/phonebookui/Phonebook2/Presentation/inc/CPbk2FieldOrderingManager.h Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/Presentation/inc/CPbk2FieldOrderingManager.h Wed Oct 13 14:15:33 2010 +0300 @@ -76,7 +76,7 @@ TFieldTypeOrder( TResourceReader& aReader ); /** - * Field type resource id from vpbkeng.rsg + * Field type resource id from VPbkEng.rsg */ TInt iFieldTypeResId; diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/Presentation/inc/Pbk2FieldOrdering.rh --- a/phonebookui/Phonebook2/Presentation/inc/Pbk2FieldOrdering.rh Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/Presentation/inc/Pbk2FieldOrdering.rh Wed Oct 13 14:15:33 2010 +0300 @@ -26,7 +26,7 @@ // STRUCT PBK2_FIELDTYPE_PRESENTATION_ORDER { - /// Field type resource id from vpbkeng.rsg + /// Field type resource id from VPbkEng.rsg LONG fieldTypeResId; /// The number that specifies the location of this field type /// in contact presentation (defines the order of fields). diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/Presentation/rss/Pbk2FieldOrdering.rss --- a/phonebookui/Phonebook2/Presentation/rss/Pbk2FieldOrdering.rss Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/Presentation/rss/Pbk2FieldOrdering.rss Wed Oct 13 14:15:33 2010 +0300 @@ -17,7 +17,7 @@ */ #include "Pbk2FieldOrdering.rh" -#include +#include // --------------------------------------------------------------------------- // R_PBK2_FIELDTYPE_PRESENTATION_ORDERS diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/Presentation/rss/Pbk2Presentation.rss --- a/phonebookui/Phonebook2/Presentation/rss/Pbk2Presentation.rss Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/Presentation/rss/Pbk2Presentation.rss Wed Oct 13 14:15:33 2010 +0300 @@ -22,7 +22,7 @@ /*============================================================================ * NB. Pbk2Presentation resources MUST be defined in Pbk2PresentationCommon.rss -* because only one pbk2presentation.rsg file used with different language +* because only one Pbk2Presentation.rsg file used with different language * specific ".rsc" files. Otherwise BC is broken. ============================================================================*/ diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/Presentation/rss/Pbk2PresentationChinese.rss --- a/phonebookui/Phonebook2/Presentation/rss/Pbk2PresentationChinese.rss Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/Presentation/rss/Pbk2PresentationChinese.rss Wed Oct 13 14:15:33 2010 +0300 @@ -22,7 +22,7 @@ /*============================================================================ * NB. Pbk2Presentation resources MUST be defined in Pbk2PresentationCommon.rss -* because only one pbk2presentation.rsg file used with different language +* because only one Pbk2Presentation.rsg file used with different language * specific ".rsc" files. Otherwise BC is broken. ============================================================================*/ diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/Presentation/rss/Pbk2PresentationChineseUnSync.rss --- a/phonebookui/Phonebook2/Presentation/rss/Pbk2PresentationChineseUnSync.rss Wed Sep 15 11:56:55 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,29 +0,0 @@ -/* -* Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies). -* All rights reserved. -* This component and the accompanying materials are made available -* under the terms of "Eclipse Public License v1.0" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: Phonebook 2 presentation Chinese resources. -* -*/ - - -// INCLUDES -#include "Pbk2ChineseFieldOrdering.hrh" // Resources for default languages -#include "Pbk2PresentationCommonUnSync.rss" // Common resources for all languages - -/*============================================================================ -* NB. Pbk2Presentation resources MUST be defined in Pbk2PresentationCommon.rss -* because only one Pbk2Presentation.rsg file used with different language -* specific ".rsc" files. Otherwise BC is broken. -============================================================================*/ - -// End of File diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/Presentation/rss/Pbk2PresentationCommon.rss --- a/phonebookui/Phonebook2/Presentation/rss/Pbk2PresentationCommon.rss Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/Presentation/rss/Pbk2PresentationCommon.rss Wed Oct 13 14:15:33 2010 +0300 @@ -40,7 +40,7 @@ #include #include #include -#include +#include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/Presentation/rss/Pbk2PresentationCommonUnSync.rss --- a/phonebookui/Phonebook2/Presentation/rss/Pbk2PresentationCommonUnSync.rss Wed Sep 15 11:56:55 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,2159 +0,0 @@ -/* -* Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies). -* All rights reserved. -* This component and the accompanying materials are made available -* under the terms of "Eclipse Public License v1.0" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: Phonebook 2 presentation common resources for all languages. -* -* Note that in order to retain BINARY COMPATIBILITY no new -* resources must be declared in-between the existing resources. -* To make it sure after changes, compare the generated files -* before and after (Pbk2Presentation*.rsg) -* -*/ - - -#include "Pbk2PresentationString.rh" - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include "pbk2wellknownservices.rh" - -#include -#include -#include -#include - -#include - -// RESOURCE IDENTIFIER -NAME PBPR // Phonebook 2 Presentation - -// -------------------------------------------------------------------------- -// Standard resource signature -// -------------------------------------------------------------------------- -// -RESOURCE RSS_SIGNATURE { } - -// -------------------------------------------------------------------------- -// Name display order definition for last name first name ordering -// -------------------------------------------------------------------------- -// -RESOURCE VPBK_FIELD_TYPE_MAPPING_LIST - r_default_name_display_order_lastname_firstname - { - items = - { - /// Top contact indicator / Top contact internal order - VPBK_FIELD_TYPE_MAPPING - { - versitProperty = VBK_FIELD_VERSIT_PROPERTY - { - name = EVPbkVersitNameTopContact; - }; - }, - /// Last name - VPBK_FIELD_TYPE_MAPPING - { - versitProperty = VBK_FIELD_VERSIT_PROPERTY - { - name = EVPbkVersitNameN; - subField = EVPbkVersitSubFieldFamilyName; - }; - }, - /// First name - VPBK_FIELD_TYPE_MAPPING - { - versitProperty = VBK_FIELD_VERSIT_PROPERTY - { - name = EVPbkVersitNameN; - subField = EVPbkVersitSubFieldGivenName; - }; - }, - /// Company name - VPBK_FIELD_TYPE_MAPPING - { - versitProperty = VBK_FIELD_VERSIT_PROPERTY - { - name = EVPbkVersitNameORG; - subField = EVPbkVersitSubFieldOrgName; - }; - }, - /// Generic label - VPBK_FIELD_TYPE_MAPPING - { - versitProperty = VBK_FIELD_VERSIT_PROPERTY {}; - nonVersitType = EVPbkNonVersitTypeGenericLabel; - } - }; - } - -// -------------------------------------------------------------------------- -// Name display order definition for first name last name ordering -// -------------------------------------------------------------------------- -// -RESOURCE VPBK_FIELD_TYPE_MAPPING_LIST - r_default_name_display_order_firstname_lastname - { - items = - { - /// Top contact indicator / Top contact internal order - VPBK_FIELD_TYPE_MAPPING - { - versitProperty = VBK_FIELD_VERSIT_PROPERTY - { - name = EVPbkVersitNameTopContact; - }; - }, - /// First name - VPBK_FIELD_TYPE_MAPPING - { - versitProperty = VBK_FIELD_VERSIT_PROPERTY - { - name = EVPbkVersitNameN; - subField = EVPbkVersitSubFieldGivenName; - }; - }, - /// Last name - VPBK_FIELD_TYPE_MAPPING - { - versitProperty = VBK_FIELD_VERSIT_PROPERTY - { - name = EVPbkVersitNameN; - subField = EVPbkVersitSubFieldFamilyName; - }; - }, - /// Company name - VPBK_FIELD_TYPE_MAPPING - { - versitProperty = VBK_FIELD_VERSIT_PROPERTY - { - name = EVPbkVersitNameORG; - subField = EVPbkVersitSubFieldOrgName; - }; - }, - /// Generic label - VPBK_FIELD_TYPE_MAPPING - { - versitProperty = VBK_FIELD_VERSIT_PROPERTY {}; - nonVersitType = EVPbkNonVersitTypeGenericLabel; - } - }; - } - -// -------------------------------------------------------------------------- -// Japanese name display order definition for last name first name ordering -// -------------------------------------------------------------------------- -// -RESOURCE VPBK_FIELD_TYPE_MAPPING_LIST - r_japanese_name_display_order_lastname_firstname - { - items = - { - /// Top contact indicator / Top contact internal order - VPBK_FIELD_TYPE_MAPPING - { - versitProperty = VBK_FIELD_VERSIT_PROPERTY - { - name = EVPbkVersitNameTopContact; - }; - }, - /// Last name reading - VPBK_FIELD_TYPE_MAPPING - { - versitProperty = VBK_FIELD_VERSIT_PROPERTY - { - name = EVPbkVersitNameSOUND; - subField = EVPbkVersitSubFieldFamilyNamePronunciation; - }; - }, - /// First name reading - VPBK_FIELD_TYPE_MAPPING - { - versitProperty = VBK_FIELD_VERSIT_PROPERTY - { - name = EVPbkVersitNameSOUND; - subField = EVPbkVersitSubFieldGivenNamePronunciation; - }; - }, - /// Last name - VPBK_FIELD_TYPE_MAPPING - { - versitProperty = VBK_FIELD_VERSIT_PROPERTY - { - name = EVPbkVersitNameN; - subField = EVPbkVersitSubFieldFamilyName; - }; - }, - /// First name - VPBK_FIELD_TYPE_MAPPING - { - versitProperty = VBK_FIELD_VERSIT_PROPERTY - { - name = EVPbkVersitNameN; - subField = EVPbkVersitSubFieldGivenName; - }; - }, - /// company name - VPBK_FIELD_TYPE_MAPPING - { - versitProperty = VBK_FIELD_VERSIT_PROPERTY - { - name = EVPbkVersitNameORG; - subField = EVPbkVersitSubFieldOrgName; - }; - }, - /// Generic label - VPBK_FIELD_TYPE_MAPPING - { - versitProperty = VBK_FIELD_VERSIT_PROPERTY {}; - nonVersitType = EVPbkNonVersitTypeGenericLabel; - } - }; - } - -// -------------------------------------------------------------------------- -// Japanese name display order definition for first name last name ordering -// -------------------------------------------------------------------------- -// -RESOURCE VPBK_FIELD_TYPE_MAPPING_LIST - r_japanese_name_display_order_firstname_lastname - { - items = - { - /// Top contact indicator / Top contact internal order - VPBK_FIELD_TYPE_MAPPING - { - versitProperty = VBK_FIELD_VERSIT_PROPERTY - { - name = EVPbkVersitNameTopContact; - }; - }, - /// First name reading - VPBK_FIELD_TYPE_MAPPING - { - versitProperty = VBK_FIELD_VERSIT_PROPERTY - { - name = EVPbkVersitNameSOUND; - subField = EVPbkVersitSubFieldGivenNamePronunciation; - }; - }, - /// Last name reading - VPBK_FIELD_TYPE_MAPPING - { - versitProperty = VBK_FIELD_VERSIT_PROPERTY - { - name = EVPbkVersitNameSOUND; - subField = EVPbkVersitSubFieldFamilyNamePronunciation; - }; - }, - /// First name - VPBK_FIELD_TYPE_MAPPING - { - versitProperty = VBK_FIELD_VERSIT_PROPERTY - { - name = EVPbkVersitNameN; - subField = EVPbkVersitSubFieldGivenName; - }; - }, - /// Last name - VPBK_FIELD_TYPE_MAPPING - { - versitProperty = VBK_FIELD_VERSIT_PROPERTY - { - name = EVPbkVersitNameN; - subField = EVPbkVersitSubFieldFamilyName; - }; - }, - /// Company name - VPBK_FIELD_TYPE_MAPPING - { - versitProperty = VBK_FIELD_VERSIT_PROPERTY - { - name = EVPbkVersitNameORG; - subField = EVPbkVersitSubFieldOrgName; - }; - }, - /// Generic label - VPBK_FIELD_TYPE_MAPPING - { - versitProperty = VBK_FIELD_VERSIT_PROPERTY {}; - nonVersitType = EVPbkNonVersitTypeGenericLabel; - } - }; - } - -// -------------------------------------------------------------------------- -// Default name ordering configuration -// -------------------------------------------------------------------------- -// -RESOURCE PBK2_PRESENTATION_STRING r_qtn_phob_name_order - { - text = qtn_phob_name_order; - } - -// -------------------------------------------------------------------------- -// Default name ordering separator usage configuration -// -------------------------------------------------------------------------- -// -RESOURCE PBK2_PRESENTATION_STRING r_qtn_phob_name_separator_used - { - text = qtn_phob_name_separator_used; - } - -// -------------------------------------------------------------------------- -// Default name ordering separator character configuration -// -------------------------------------------------------------------------- -// -RESOURCE PBK2_PRESENTATION_STRING r_qtn_phob_name_separator_char - { - text = qtn_phob_name_separator_char; - } - -// -------------------------------------------------------------------------- -// Title field selector -// -------------------------------------------------------------------------- -// -RESOURCE VPBK_FIELD_TYPE_SELECTOR r_title_field_selector - { - versitProperties = - { - /// Last name - VBK_FIELD_VERSIT_PROPERTY - { - name = EVPbkVersitNameN; - subField = EVPbkVersitSubFieldFamilyName; - }, - /// First name - VBK_FIELD_VERSIT_PROPERTY - { - name = EVPbkVersitNameN; - subField = EVPbkVersitSubFieldGivenName; - }, - /// Company name - VBK_FIELD_VERSIT_PROPERTY - { - name = EVPbkVersitNameORG; - subField = EVPbkVersitSubFieldOrgName; - }, - /// Last name reading - VBK_FIELD_VERSIT_PROPERTY - { - name = EVPbkVersitNameSOUND; - subField = EVPbkVersitSubFieldFamilyNamePronunciation; - }, - /// First name reading - VBK_FIELD_VERSIT_PROPERTY - { - name = EVPbkVersitNameSOUND; - subField = EVPbkVersitSubFieldGivenNamePronunciation; - } - }; - nonVersitType = - { - EVPbkNonVersitTypeGenericLabel - }; - } - -// -------------------------------------------------------------------------- -// Phonebook 2 field properties -// -------------------------------------------------------------------------- -// -RESOURCE PHONEBOOK2_FIELD_PROPERTY_ARRAY r_phonebook_field_properties - { - items = - { - /// Last name - PHONEBOOK2_FIELD_PROPERTY - { - fieldTypeLink = R_VPBK_FIELD_TYPE_LASTNAME; - multiplicity = EPbk2FieldMultiplicityOne; - maxLength = 50; - editMode = EPbk2FieldEditModeAlpha; - defaultCase = EPbk2FieldDefaultCaseText; - iconId = PHONEBOOK2_ICON_ID - { - ownerUid = KPbk2UID3; - id = EPbk2qgn_prop_nrtyp_empty; - }; - ctrlType = EPbk2FieldCtrlTypeTextEditor; - flags = KPbk2FieldFlagTemplateField | KPbk2FieldFlagUserCanAddField | - KPbk2FieldFlagCanNotBeRemoved; - location = EPbk2FieldLocationNone; - groupId = EPbk2FieldGroupIdLastName; - defaultLabel = qtn_phob_lbl_last_name; - }, - /// Last name reading - PHONEBOOK2_FIELD_PROPERTY - { - fieldTypeLink = R_VPBK_FIELD_TYPE_LASTNAMEREADING; - multiplicity = EPbk2FieldMultiplicityOne; - maxLength = 50; - editMode = EPbk2FieldEditModeAlpha; - defaultCase = EPbk2FieldDefaultCaseText; - iconId = PHONEBOOK2_ICON_ID - { - ownerUid = KPbk2UID3; - id = EPbk2qgn_prop_nrtyp_empty; - }; - ctrlType = EPbk2FieldCtrlTypeReadingEditor; - flags = KPbk2FieldFlagTemplateField | KPbk2FieldFlagUserCanAddField | - KPbk2FieldFlagCanNotBeRemoved; - location = EPbk2FieldLocationNone; - groupId = EPbk2FieldGroupIdLastName; - defaultLabel = qtn_phob_lbl_last_reading; - }, - /// First name - PHONEBOOK2_FIELD_PROPERTY - { - fieldTypeLink = R_VPBK_FIELD_TYPE_FIRSTNAME; - multiplicity = EPbk2FieldMultiplicityOne; - maxLength = 50; - editMode = EPbk2FieldEditModeAlpha; - defaultCase = EPbk2FieldDefaultCaseText; - iconId = PHONEBOOK2_ICON_ID - { - ownerUid = KPbk2UID3; - id = EPbk2qgn_prop_nrtyp_empty; - }; - ctrlType = EPbk2FieldCtrlTypeTextEditor; - flags = KPbk2FieldFlagTemplateField | KPbk2FieldFlagUserCanAddField | - KPbk2FieldFlagCanNotBeRemoved; - location = EPbk2FieldLocationNone; - groupId = EPbk2FieldGroupIdFirstName; - defaultLabel = qtn_phob_lbl_first_name; - }, - /// First name reading - PHONEBOOK2_FIELD_PROPERTY - { - fieldTypeLink = R_VPBK_FIELD_TYPE_FIRSTNAMEREADING; - multiplicity = EPbk2FieldMultiplicityOne; - maxLength = 50; - editMode = EPbk2FieldEditModeAlpha; - defaultCase = EPbk2FieldDefaultCaseText; - iconId = PHONEBOOK2_ICON_ID - { - ownerUid = KPbk2UID3; - id = EPbk2qgn_prop_nrtyp_empty; - }; - ctrlType = EPbk2FieldCtrlTypeReadingEditor; - flags = KPbk2FieldFlagTemplateField | KPbk2FieldFlagUserCanAddField | - KPbk2FieldFlagCanNotBeRemoved; - location = EPbk2FieldLocationNone; - groupId = EPbk2FieldGroupIdFirstName; - defaultLabel = qtn_phob_lbl_first_reading; - }, - /// Prefix - PHONEBOOK2_FIELD_PROPERTY - { - fieldTypeLink = R_VPBK_FIELD_TYPE_PREFIX; - multiplicity = EPbk2FieldMultiplicityOne; - maxLength = 10; - editMode = EPbk2FieldEditModeAlpha; - defaultCase = EPbk2FieldDefaultCaseText; - iconId = PHONEBOOK2_ICON_ID - { - ownerUid = KPbk2UID3; - id = EPbk2qgn_prop_nrtyp_empty; - }; - ctrlType = EPbk2FieldCtrlTypeTextEditor; - flags = KPbk2FieldFlagUserCanAddField; - location = EPbk2FieldLocationNone; - groupId = EPbk2FieldGroupIdNone; - defaultLabel = qtn_phob_lbl_prefix; - }, - /// Suffix - PHONEBOOK2_FIELD_PROPERTY - { - fieldTypeLink = R_VPBK_FIELD_TYPE_SUFFIX; - multiplicity = EPbk2FieldMultiplicityOne; - maxLength = 10; - editMode = EPbk2FieldEditModeAlpha; - defaultCase = EPbk2FieldDefaultCaseText; - iconId = PHONEBOOK2_ICON_ID - { - ownerUid = KPbk2UID3; - id = EPbk2qgn_prop_nrtyp_empty; - }; - ctrlType = EPbk2FieldCtrlTypeTextEditor; - flags = KPbk2FieldFlagUserCanAddField; - location = EPbk2FieldLocationNone; - groupId = EPbk2FieldGroupIdNone; - defaultLabel = qtn_phob_lbl_suffix; - }, - /// Nick name - PHONEBOOK2_FIELD_PROPERTY - { - fieldTypeLink = R_VPBK_FIELD_TYPE_SECONDNAME; - multiplicity = EPbk2FieldMultiplicityOne; - maxLength = 50; - editMode = EPbk2FieldEditModeAlpha; - defaultCase = EPbk2FieldDefaultCaseText; - iconId = PHONEBOOK2_ICON_ID - { - ownerUid = KPbk2UID3; - id = EPbk2qgn_prop_nrtyp_empty; - }; - ctrlType = EPbk2FieldCtrlTypeTextEditor; - flags = KPbk2FieldFlagUserCanAddField; - location = EPbk2FieldLocationNone; - defaultLabel = qtn_simp_lbl_nick; - }, - /// Landline phone (home) - PHONEBOOK2_FIELD_PROPERTY - { - fieldTypeLink = R_VPBK_FIELD_TYPE_LANDPHONEHOME; - multiplicity = EPbk2FieldMultiplicityMany; - maxLength = 48; - editMode = EPbk2FieldEditModeNumeric; - defaultCase = EPbk2FieldDefaultCaseNone; - iconId = PHONEBOOK2_ICON_ID - { - ownerUid = KPbk2UID3; - id = EPbk2qgn_prop_nrtyp_phone; - }; - ctrlType = EPbk2FieldCtrlTypePhoneNumberEditor; - flags = KPbk2FieldFlagUserCanAddField; - location = EPbk2FieldLocationHome; - defaultLabel = qtn_phob_lbl_number_home; - }, - /// Mobile phone (home) - PHONEBOOK2_FIELD_PROPERTY - { - fieldTypeLink = R_VPBK_FIELD_TYPE_MOBILEPHONEHOME; - multiplicity = EPbk2FieldMultiplicityMany; - maxLength = 48; - editMode = EPbk2FieldEditModeNumeric; - defaultCase = EPbk2FieldDefaultCaseNone; - iconId = PHONEBOOK2_ICON_ID - { - ownerUid = KPbk2UID3; - id = EPbk2qgn_prop_nrtyp_mobile; - }; - ctrlType = EPbk2FieldCtrlTypePhoneNumberEditor; - flags = KPbk2FieldFlagUserCanAddField; - location = EPbk2FieldLocationHome; - defaultLabel = qtn_phob_lbl_number_mobile_home; - }, - /// Video number (home) - PHONEBOOK2_FIELD_PROPERTY - { - fieldTypeLink = R_VPBK_FIELD_TYPE_VIDEONUMBERHOME; - multiplicity = EPbk2FieldMultiplicityMany; - maxLength = 48; - editMode = EPbk2FieldEditModeNumeric; - defaultCase = EPbk2FieldDefaultCaseNone; - iconId = PHONEBOOK2_ICON_ID - { - ownerUid = KPbk2UID3; - id = EPbk2qgn_prop_nrtyp_video; - }; - ctrlType = EPbk2FieldCtrlTypePhoneNumberEditor; - flags = KPbk2FieldFlagUserCanAddField; - location = EPbk2FieldLocationHome; - defaultLabel = qtn_phob_lbl_video_home; - }, - /// Fax number (home) - PHONEBOOK2_FIELD_PROPERTY - { - fieldTypeLink = R_VPBK_FIELD_TYPE_FAXNUMBERHOME; - multiplicity = EPbk2FieldMultiplicityMany; - maxLength = 48; - editMode = EPbk2FieldEditModeNumeric; - defaultCase = EPbk2FieldDefaultCaseNone; - iconId = PHONEBOOK2_ICON_ID - { - ownerUid = KPbk2UID3; - id = EPbk2qgn_prop_nrtyp_fax; - }; - ctrlType = EPbk2FieldCtrlTypePhoneNumberEditor; - flags = KPbk2FieldFlagUserCanAddField; - location = EPbk2FieldLocationHome; - defaultLabel = qtn_phob_lbl_fax_home; - }, - /// VOIP (Tel. Internet) (home) - PHONEBOOK2_FIELD_PROPERTY - { - fieldTypeLink = R_VPBK_FIELD_TYPE_VOIPHOME; - multiplicity = EPbk2FieldMultiplicityMany; - maxLength = 100; - editMode = EPbk2FieldEditModeLatinOnly; - defaultCase = EPbk2FieldDefaultCaseLower; - iconId = PHONEBOOK2_ICON_ID - { - ownerUid = KPbk2UID3; - id = EPbk2qgn_prop_nrtyp_voip; - }; - ctrlType = EPbk2FieldCtrlTypeTextEditor; - flags = KPbk2FieldFlagUserCanAddField; - location = EPbk2FieldLocationHome; - defaultLabel = qtn_phob_lbl_voip_home; - }, - /// Email address (home) - PHONEBOOK2_FIELD_PROPERTY - { - fieldTypeLink = R_VPBK_FIELD_TYPE_EMAILHOME; - multiplicity = EPbk2FieldMultiplicityMany; - maxLength = 150; - editMode = EPbk2FieldEditModeLatinOnly; - defaultCase = EPbk2FieldDefaultCaseLower; - iconId = PHONEBOOK2_ICON_ID - { - ownerUid = KPbk2UID3; - id = EPbk2qgn_prop_nrtyp_email; - }; - ctrlType = EPbk2FieldCtrlEmailEditor; - flags = KPbk2FieldFlagUserCanAddField; - location = EPbk2FieldLocationHome; - defaultLabel = qtn_phob_lbl_email_home; - }, - /// URL (home) - PHONEBOOK2_FIELD_PROPERTY - { - fieldTypeLink = R_VPBK_FIELD_TYPE_URLHOME; - multiplicity = EPbk2FieldMultiplicityMany; - maxLength = 1000; - editMode = EPbk2FieldEditModeLatinOnly; - defaultCase = EPbk2FieldDefaultCaseLower; - iconId = PHONEBOOK2_ICON_ID - { - ownerUid = KPbk2UID3; - id = EPbk2qgn_prop_nrtyp_url; - }; - ctrlType = EPbk2FieldCtrlURLEditor; - flags = KPbk2FieldFlagUserCanAddField; - location = EPbk2FieldLocationHome; - defaultLabel = qtn_phob_lbl_url_home; - }, - /// Address label (home) - PHONEBOOK2_FIELD_PROPERTY - { - fieldTypeLink = R_VPBK_FIELD_TYPE_ADDRLABELHOME; - multiplicity = EPbk2FieldMultiplicityOne; - maxLength = 250; - editMode = EPbk2FieldEditModeAlpha; - defaultCase = EPbk2FieldDefaultCaseText; - iconId = PHONEBOOK2_ICON_ID - { - ownerUid = KPbk2UID3; - id = EPbk2qgn_prop_nrtyp_address; - }; - ctrlType = EPbk2FieldCtrlTypeTextEditor; - flags = KPbk2FieldFlagNull; - location = EPbk2FieldLocationHome; - defaultLabel = qtn_phob_lbl_address_home; - }, - /// Address postoffice (home) - PHONEBOOK2_FIELD_PROPERTY - { - fieldTypeLink = R_VPBK_FIELD_TYPE_ADDRPOHOME; - multiplicity = EPbk2FieldMultiplicityOne; - maxLength = 20; - editMode = EPbk2FieldEditModeNumeric; - defaultCase = EPbk2FieldDefaultCaseNone; - iconId = PHONEBOOK2_ICON_ID - { - ownerUid = KPbk2UID3; - id = EPbk2qgn_prop_nrtyp_empty; - }; - ctrlType = EPbk2FieldCtrlTypeNumberEditor; - flags = KPbk2FieldFlagUserCanAddField; - addItemText = qtn_phob_lbl2_pobox_home; - location = EPbk2FieldLocationHome; - groupId = EPbk2FieldGroupIdHomeAddress; - defaultLabel = qtn_phob_lbl_pobox_home; - }, - /// Address extension (home) - PHONEBOOK2_FIELD_PROPERTY - { - fieldTypeLink = R_VPBK_FIELD_TYPE_ADDREXTHOME; - multiplicity = EPbk2FieldMultiplicityOne; - maxLength = 50; - editMode = EPbk2FieldEditModeAlpha; - defaultCase = EPbk2FieldDefaultCaseText; - iconId = PHONEBOOK2_ICON_ID - { - ownerUid = KPbk2UID3; - id = EPbk2qgn_prop_nrtyp_empty; - }; - ctrlType = EPbk2FieldCtrlTypeTextEditor; - flags = KPbk2FieldFlagUserCanAddField; - addItemText = qtn_phob_lbl2_extension_home; - location = EPbk2FieldLocationHome; - groupId = EPbk2FieldGroupIdHomeAddress; - defaultLabel = qtn_phob_lbl_extencion_home; - }, - /// Address street (home) - PHONEBOOK2_FIELD_PROPERTY - { - fieldTypeLink = R_VPBK_FIELD_TYPE_ADDRSTREETHOME; - multiplicity = EPbk2FieldMultiplicityOne; - maxLength = 50; - editMode = EPbk2FieldEditModeAlpha; - defaultCase = EPbk2FieldDefaultCaseText; - iconId = PHONEBOOK2_ICON_ID - { - ownerUid = KPbk2UID3; - id = EPbk2qgn_prop_nrtyp_empty; - }; - ctrlType = EPbk2FieldCtrlTypeTextEditor; - flags = KPbk2FieldFlagUserCanAddField; - addItemText = qtn_phob_lbl2_street_home; - location = EPbk2FieldLocationHome; - groupId = EPbk2FieldGroupIdHomeAddress; - defaultLabel = qtn_phob_lbl_street_home; - }, - /// Address city (home) - PHONEBOOK2_FIELD_PROPERTY - { - fieldTypeLink = R_VPBK_FIELD_TYPE_ADDRLOCALHOME; - multiplicity = EPbk2FieldMultiplicityOne; - maxLength = 50; - editMode = EPbk2FieldEditModeAlpha; - defaultCase = EPbk2FieldDefaultCaseText; - iconId = PHONEBOOK2_ICON_ID - { - ownerUid = KPbk2UID3; - id = EPbk2qgn_prop_nrtyp_empty; - }; - ctrlType = EPbk2FieldCtrlTypeTextEditor; - flags = KPbk2FieldFlagUserCanAddField; - addItemText = qtn_phob_lbl2_city_home; - location = EPbk2FieldLocationHome; - groupId = EPbk2FieldGroupIdHomeAddress; - defaultLabel = qtn_phob_lbl_city_home; - }, - /// Address region (home) - PHONEBOOK2_FIELD_PROPERTY - { - fieldTypeLink = R_VPBK_FIELD_TYPE_ADDRREGIONHOME; - multiplicity = EPbk2FieldMultiplicityOne; - maxLength = 50; - editMode = EPbk2FieldEditModeAlpha; - defaultCase = EPbk2FieldDefaultCaseText; - iconId = PHONEBOOK2_ICON_ID - { - ownerUid = KPbk2UID3; - id = EPbk2qgn_prop_nrtyp_empty; - }; - ctrlType = EPbk2FieldCtrlTypeTextEditor; - flags = KPbk2FieldFlagUserCanAddField; - addItemText = qtn_phob_lbl2_state_home; - location = EPbk2FieldLocationHome; - groupId = EPbk2FieldGroupIdHomeAddress; - defaultLabel = qtn_phob_lbl_state_home; - }, - /// Address postal code (home) - PHONEBOOK2_FIELD_PROPERTY - { - fieldTypeLink = R_VPBK_FIELD_TYPE_ADDRPOSTCODEHOME; - multiplicity = EPbk2FieldMultiplicityOne; - maxLength = 20; - editMode = EPbk2FieldEditModeAlpha; - defaultCase = EPbk2FieldDefaultCaseText; - iconId = PHONEBOOK2_ICON_ID - { - ownerUid = KPbk2UID3; - id = EPbk2qgn_prop_nrtyp_empty; - }; - ctrlType = EPbk2FieldCtrlPostalCodeEditor; - flags = KPbk2FieldFlagUserCanAddField; - addItemText = qtn_phob_lbl2_postal_code_home; - location = EPbk2FieldLocationHome; - groupId = EPbk2FieldGroupIdHomeAddress; - defaultLabel = qtn_phob_lbl_postal_code_home; - }, - /// Address country (home) - PHONEBOOK2_FIELD_PROPERTY - { - fieldTypeLink = R_VPBK_FIELD_TYPE_ADDRCOUNTRYHOME; - multiplicity = EPbk2FieldMultiplicityOne; - maxLength = 50; - editMode = EPbk2FieldEditModeAlpha; - defaultCase = EPbk2FieldDefaultCaseText; - iconId = PHONEBOOK2_ICON_ID - { - ownerUid = KPbk2UID3; - id = EPbk2qgn_prop_nrtyp_empty; - }; - ctrlType = EPbk2FieldCtrlTypeTextEditor; - flags = KPbk2FieldFlagUserCanAddField; - addItemText = qtn_phob_lbl2_country_home; - location = EPbk2FieldLocationHome; - groupId = EPbk2FieldGroupIdHomeAddress; - defaultLabel = qtn_phob_lbl_country_home; - }, - /// Job title - PHONEBOOK2_FIELD_PROPERTY - { - fieldTypeLink = R_VPBK_FIELD_TYPE_JOBTITLE; - multiplicity = EPbk2FieldMultiplicityMany; - maxLength = 50; - editMode = EPbk2FieldEditModeAlpha; - defaultCase = EPbk2FieldDefaultCaseText; - iconId = PHONEBOOK2_ICON_ID - { - ownerUid = KPbk2UID3; - id = EPbk2qgn_prop_nrtyp_empty; - }; - ctrlType = EPbk2FieldCtrlTypeTextEditor; - flags = KPbk2FieldFlagTemplateField | - KPbk2FieldFlagUserCanAddField; - location = EPbk2FieldLocationNone; - defaultLabel = qtn_phob_lbl_job_title; - }, - /// Company name - PHONEBOOK2_FIELD_PROPERTY - { - fieldTypeLink = R_VPBK_FIELD_TYPE_COMPANYNAME; - multiplicity = EPbk2FieldMultiplicityOne; - maxLength = 50; - editMode = EPbk2FieldEditModeAlpha; - defaultCase = EPbk2FieldDefaultCaseText; - iconId = PHONEBOOK2_ICON_ID - { - ownerUid = KPbk2UID3; - id = EPbk2qgn_prop_nrtyp_empty; - }; - ctrlType = EPbk2FieldCtrlTypeTextEditor; - flags = KPbk2FieldFlagTemplateField | - KPbk2FieldFlagUserCanAddField; - location = EPbk2FieldLocationNone; - defaultLabel = qtn_phob_lbl_company_name; - }, - /// Landline phone (work) - PHONEBOOK2_FIELD_PROPERTY - { - fieldTypeLink = R_VPBK_FIELD_TYPE_LANDPHONEWORK; - multiplicity = EPbk2FieldMultiplicityMany; - maxLength = 48; - editMode = EPbk2FieldEditModeNumeric; - defaultCase = EPbk2FieldDefaultCaseNone; - iconId = PHONEBOOK2_ICON_ID - { - ownerUid = KPbk2UID3; - id = EPbk2qgn_prop_nrtyp_phone; - }; - ctrlType = EPbk2FieldCtrlTypePhoneNumberEditor; - flags = KPbk2FieldFlagUserCanAddField; - location = EPbk2FieldLocationWork; - defaultLabel = qtn_phob_lbl_number_work; - }, - /// Mobile phone (work) - PHONEBOOK2_FIELD_PROPERTY - { - fieldTypeLink = R_VPBK_FIELD_TYPE_MOBILEPHONEWORK; - multiplicity = EPbk2FieldMultiplicityMany; - maxLength = 48; - editMode = EPbk2FieldEditModeNumeric; - defaultCase = EPbk2FieldDefaultCaseNone; - iconId = PHONEBOOK2_ICON_ID - { - ownerUid = KPbk2UID3; - id = EPbk2qgn_prop_nrtyp_mobile; - }; - ctrlType = EPbk2FieldCtrlTypePhoneNumberEditor; - flags = KPbk2FieldFlagUserCanAddField; - location = EPbk2FieldLocationWork; - defaultLabel = qtn_phob_lbl_number_mobile_work; - }, - /// Video number (work) - PHONEBOOK2_FIELD_PROPERTY - { - fieldTypeLink = R_VPBK_FIELD_TYPE_VIDEONUMBERWORK; - multiplicity = EPbk2FieldMultiplicityMany; - maxLength = 48; - editMode = EPbk2FieldEditModeNumeric; - defaultCase = EPbk2FieldDefaultCaseNone; - iconId = PHONEBOOK2_ICON_ID - { - ownerUid = KPbk2UID3; - id = EPbk2qgn_prop_nrtyp_video; - }; - ctrlType = EPbk2FieldCtrlTypePhoneNumberEditor; - flags = KPbk2FieldFlagUserCanAddField; - location = EPbk2FieldLocationWork; - defaultLabel = qtn_phob_lbl_video_work; - }, - /// Fax number (work) - PHONEBOOK2_FIELD_PROPERTY - { - fieldTypeLink = R_VPBK_FIELD_TYPE_FAXNUMBERWORK; - multiplicity = EPbk2FieldMultiplicityMany; - maxLength = 48; - editMode = EPbk2FieldEditModeNumeric; - defaultCase = EPbk2FieldDefaultCaseNone; - iconId = PHONEBOOK2_ICON_ID - { - ownerUid = KPbk2UID3; - id = EPbk2qgn_prop_nrtyp_fax; - }; - ctrlType = EPbk2FieldCtrlTypePhoneNumberEditor; - flags = KPbk2FieldFlagUserCanAddField; - location = EPbk2FieldLocationWork; - defaultLabel = qtn_phob_lbl_fax_work; - }, - /// VOIP (Tel. Internet) (work) - PHONEBOOK2_FIELD_PROPERTY - { - fieldTypeLink = R_VPBK_FIELD_TYPE_VOIPWORK; - multiplicity = EPbk2FieldMultiplicityMany; - maxLength = 100; - editMode = EPbk2FieldEditModeLatinOnly; - defaultCase = EPbk2FieldDefaultCaseLower; - iconId = PHONEBOOK2_ICON_ID - { - ownerUid = KPbk2UID3; - id = EPbk2qgn_prop_nrtyp_voip; - }; - ctrlType = EPbk2FieldCtrlEmailEditor; - flags = KPbk2FieldFlagUserCanAddField; - location = EPbk2FieldLocationWork; - defaultLabel = qtn_phob_lbl_voip_work; - }, - /// Email address (work) - PHONEBOOK2_FIELD_PROPERTY - { - fieldTypeLink = R_VPBK_FIELD_TYPE_EMAILWORK; - multiplicity = EPbk2FieldMultiplicityMany; - maxLength = 150; - editMode = EPbk2FieldEditModeLatinOnly; - defaultCase = EPbk2FieldDefaultCaseLower; - iconId = PHONEBOOK2_ICON_ID - { - ownerUid = KPbk2UID3; - id = EPbk2qgn_prop_nrtyp_email; - }; - ctrlType = EPbk2FieldCtrlEmailEditor; - flags = KPbk2FieldFlagUserCanAddField; - location = EPbk2FieldLocationWork; - defaultLabel = qtn_phob_lbl_email_work; - }, - /// URL (work) - PHONEBOOK2_FIELD_PROPERTY - { - fieldTypeLink = R_VPBK_FIELD_TYPE_URLWORK; - multiplicity = EPbk2FieldMultiplicityMany; - maxLength = 1000; - editMode = EPbk2FieldEditModeLatinOnly; - defaultCase = EPbk2FieldDefaultCaseLower; - iconId = PHONEBOOK2_ICON_ID - { - ownerUid = KPbk2UID3; - id = EPbk2qgn_prop_nrtyp_url; - }; - ctrlType = EPbk2FieldCtrlURLEditor; - flags = KPbk2FieldFlagUserCanAddField; - location = EPbk2FieldLocationWork; - defaultLabel = qtn_phob_lbl_url_work; - }, - /// Address label (work) - PHONEBOOK2_FIELD_PROPERTY - { - fieldTypeLink = R_VPBK_FIELD_TYPE_ADDRLABELWORK; - multiplicity = EPbk2FieldMultiplicityOne; - maxLength = 250; - editMode = EPbk2FieldEditModeAlpha; - defaultCase = EPbk2FieldDefaultCaseText; - iconId = PHONEBOOK2_ICON_ID - { - ownerUid = KPbk2UID3; - id = EPbk2qgn_prop_nrtyp_address; - }; - ctrlType = EPbk2FieldCtrlTypeTextEditor; - flags = KPbk2FieldFlagNull; - location = EPbk2FieldLocationWork; - defaultLabel = qtn_phob_lbl_address_work; - }, - /// Address postoffice (work) - PHONEBOOK2_FIELD_PROPERTY - { - fieldTypeLink = R_VPBK_FIELD_TYPE_ADDRPOWORK; - multiplicity = EPbk2FieldMultiplicityOne; - maxLength = 20; - editMode = EPbk2FieldEditModeNumeric; - defaultCase = EPbk2FieldDefaultCaseNone; - iconId = PHONEBOOK2_ICON_ID - { - ownerUid = KPbk2UID3; - id = EPbk2qgn_prop_nrtyp_empty; - }; - ctrlType = EPbk2FieldCtrlTypeNumberEditor; - flags = KPbk2FieldFlagUserCanAddField; - addItemText = qtn_phob_lbl2_pobox_work; - location = EPbk2FieldLocationWork; - groupId = EPbk2FieldGroupIdCompanyAddress; - defaultLabel = qtn_phob_lbl_pobox_work; - }, - /// Address extension (work) - PHONEBOOK2_FIELD_PROPERTY - { - fieldTypeLink = R_VPBK_FIELD_TYPE_ADDREXTWORK; - multiplicity = EPbk2FieldMultiplicityOne; - maxLength = 50; - editMode = EPbk2FieldEditModeAlpha; - defaultCase = EPbk2FieldDefaultCaseText; - iconId = PHONEBOOK2_ICON_ID - { - ownerUid = KPbk2UID3; - id = EPbk2qgn_prop_nrtyp_empty; - }; - ctrlType = EPbk2FieldCtrlTypeTextEditor; - flags = KPbk2FieldFlagUserCanAddField; - addItemText = qtn_phob_lbl2_extension_work; - location = EPbk2FieldLocationWork; - groupId = EPbk2FieldGroupIdCompanyAddress; - defaultLabel = qtn_phob_lbl_extencion_work; - }, - /// Address street (work) - PHONEBOOK2_FIELD_PROPERTY - { - fieldTypeLink = R_VPBK_FIELD_TYPE_ADDRSTREETWORK; - multiplicity = EPbk2FieldMultiplicityOne; - maxLength = 50; - editMode = EPbk2FieldEditModeAlpha; - defaultCase = EPbk2FieldDefaultCaseText; - iconId = PHONEBOOK2_ICON_ID - { - ownerUid = KPbk2UID3; - id = EPbk2qgn_prop_nrtyp_empty; - }; - ctrlType = EPbk2FieldCtrlTypeTextEditor; - flags = KPbk2FieldFlagUserCanAddField; - addItemText = qtn_phob_lbl2_street_work; - location = EPbk2FieldLocationWork; - groupId = EPbk2FieldGroupIdCompanyAddress; - defaultLabel = qtn_phob_lbl_street_work; - }, - /// Address city (work) - PHONEBOOK2_FIELD_PROPERTY - { - fieldTypeLink = R_VPBK_FIELD_TYPE_ADDRLOCALWORK; - multiplicity = EPbk2FieldMultiplicityOne; - maxLength = 50; - editMode = EPbk2FieldEditModeAlpha; - defaultCase = EPbk2FieldDefaultCaseText; - iconId = PHONEBOOK2_ICON_ID - { - ownerUid = KPbk2UID3; - id = EPbk2qgn_prop_nrtyp_empty; - }; - ctrlType = EPbk2FieldCtrlTypeTextEditor; - flags = KPbk2FieldFlagUserCanAddField; - addItemText = qtn_phob_lbl2_city_work; - location = EPbk2FieldLocationWork; - groupId = EPbk2FieldGroupIdCompanyAddress; - defaultLabel = qtn_phob_lbl_city_work; - }, - /// Address region (work) - PHONEBOOK2_FIELD_PROPERTY - { - fieldTypeLink = R_VPBK_FIELD_TYPE_ADDRREGIONWORK; - multiplicity = EPbk2FieldMultiplicityOne; - maxLength = 50; - editMode = EPbk2FieldEditModeAlpha; - defaultCase = EPbk2FieldDefaultCaseText; - iconId = PHONEBOOK2_ICON_ID - { - ownerUid = KPbk2UID3; - id = EPbk2qgn_prop_nrtyp_empty; - }; - ctrlType = EPbk2FieldCtrlTypeTextEditor; - flags = KPbk2FieldFlagUserCanAddField; - addItemText = qtn_phob_lbl2_state_work; - location = EPbk2FieldLocationWork; - groupId = EPbk2FieldGroupIdCompanyAddress; - defaultLabel = qtn_phob_lbl_state_work; - }, - /// Address postal code (work) - PHONEBOOK2_FIELD_PROPERTY - { - fieldTypeLink = R_VPBK_FIELD_TYPE_ADDRPOSTCODEWORK; - multiplicity = EPbk2FieldMultiplicityOne; - maxLength = 20; - editMode = EPbk2FieldEditModeAlpha; - defaultCase = EPbk2FieldDefaultCaseText; - iconId = PHONEBOOK2_ICON_ID - { - ownerUid = KPbk2UID3; - id = EPbk2qgn_prop_nrtyp_empty; - }; - ctrlType = EPbk2FieldCtrlPostalCodeEditor; - flags = KPbk2FieldFlagUserCanAddField; - addItemText = qtn_phob_lbl2_postal_code_work; - location = EPbk2FieldLocationWork; - groupId = EPbk2FieldGroupIdCompanyAddress; - defaultLabel = qtn_phob_lbl_postal_code_work; - }, - /// Address country (work) - PHONEBOOK2_FIELD_PROPERTY - { - fieldTypeLink = R_VPBK_FIELD_TYPE_ADDRCOUNTRYWORK; - multiplicity = EPbk2FieldMultiplicityOne; - maxLength = 50; - editMode = EPbk2FieldEditModeAlpha; - defaultCase = EPbk2FieldDefaultCaseText; - iconId = PHONEBOOK2_ICON_ID - { - ownerUid = KPbk2UID3; - id = EPbk2qgn_prop_nrtyp_empty; - }; - ctrlType = EPbk2FieldCtrlTypeTextEditor; - flags = KPbk2FieldFlagUserCanAddField; - addItemText = qtn_phob_lbl2_country_work; - location = EPbk2FieldLocationWork; - groupId = EPbk2FieldGroupIdCompanyAddress; - defaultLabel = qtn_phob_lbl_country_work; - }, - /// Landline phone (general) - PHONEBOOK2_FIELD_PROPERTY - { - fieldTypeLink = R_VPBK_FIELD_TYPE_LANDPHONEGEN; - multiplicity = EPbk2FieldMultiplicityMany; - maxLength = 48; - editMode = EPbk2FieldEditModeNumeric; - defaultCase = EPbk2FieldDefaultCaseNone; - iconId = PHONEBOOK2_ICON_ID - { - ownerUid = KPbk2UID3; - id = EPbk2qgn_prop_nrtyp_phone; - }; - ctrlType = EPbk2FieldCtrlTypePhoneNumberEditor; - flags = KPbk2FieldFlagTemplateField | - KPbk2FieldFlagUserCanAddField; - location = EPbk2FieldLocationNone; - defaultLabel = qtn_phob_lbl_number_standard; - }, - /// Mobile phone (general) - PHONEBOOK2_FIELD_PROPERTY - { - fieldTypeLink = R_VPBK_FIELD_TYPE_MOBILEPHONEGEN; - multiplicity = EPbk2FieldMultiplicityMany; - maxLength = 48; - editMode = EPbk2FieldEditModeNumeric; - defaultCase = EPbk2FieldDefaultCaseNone; - iconId = PHONEBOOK2_ICON_ID - { - ownerUid = KPbk2UID3; - id = EPbk2qgn_prop_nrtyp_mobile; - }; - ctrlType = EPbk2FieldCtrlTypePhoneNumberEditor; - flags = KPbk2FieldFlagTemplateField | - KPbk2FieldFlagUserCanAddField; - location = EPbk2FieldLocationNone; - defaultLabel = qtn_phob_lbl_number_mobile; - }, - /// Video number (general) - PHONEBOOK2_FIELD_PROPERTY - { - fieldTypeLink = R_VPBK_FIELD_TYPE_VIDEONUMBERGEN; - multiplicity = EPbk2FieldMultiplicityMany; - maxLength = 48; - editMode = EPbk2FieldEditModeNumeric; - defaultCase = EPbk2FieldDefaultCaseNone; - iconId = PHONEBOOK2_ICON_ID - { - ownerUid = KPbk2UID3; - id = EPbk2qgn_prop_nrtyp_video; - }; - ctrlType = EPbk2FieldCtrlTypePhoneNumberEditor; - flags = KPbk2FieldFlagTemplateField | - KPbk2FieldFlagUserCanAddField; - location = EPbk2FieldLocationNone; - defaultLabel = qtn_phob_lbl_video; - }, - /// Fax number (general) - PHONEBOOK2_FIELD_PROPERTY - { - fieldTypeLink = R_VPBK_FIELD_TYPE_FAXNUMBERGEN; - multiplicity = EPbk2FieldMultiplicityMany; - maxLength = 48; - editMode = EPbk2FieldEditModeNumeric; - defaultCase = EPbk2FieldDefaultCaseNone; - iconId = PHONEBOOK2_ICON_ID - { - ownerUid = KPbk2UID3; - id = EPbk2qgn_prop_nrtyp_fax; - }; - ctrlType = EPbk2FieldCtrlTypePhoneNumberEditor; - flags = KPbk2FieldFlagUserCanAddField; - location = EPbk2FieldLocationNone; - defaultLabel = qtn_phob_lbl_fax; - }, - /// VOIP (Tel. Internet) (general) - PHONEBOOK2_FIELD_PROPERTY - { - fieldTypeLink = R_VPBK_FIELD_TYPE_VOIPGEN; - multiplicity = EPbk2FieldMultiplicityMany; - maxLength = 100; - editMode = EPbk2FieldEditModeLatinOnly; - defaultCase = EPbk2FieldDefaultCaseLower; - iconId = PHONEBOOK2_ICON_ID - { - ownerUid = KPbk2UID3; - id = EPbk2qgn_prop_nrtyp_voip; - }; - ctrlType = EPbk2FieldCtrlTypeTextEditor; - flags = KPbk2FieldFlagTemplateField | - KPbk2FieldFlagUserCanAddField; - location = EPbk2FieldLocationNone; - defaultLabel = qtn_phob_lbl_voip; - }, - /// PTT (POC) - PHONEBOOK2_FIELD_PROPERTY - { - fieldTypeLink = R_VPBK_FIELD_TYPE_POC; - multiplicity = EPbk2FieldMultiplicityMany; - maxLength = 100; - editMode = EPbk2FieldEditModeLatinOnly; - defaultCase = EPbk2FieldDefaultCaseLower; - iconId = PHONEBOOK2_ICON_ID - { - ownerUid = KPbk2UID3; - id = EPbk2qgn_prop_nrtyp_poc; - }; - ctrlType = EPbk2FieldCtrlTypeTextEditor; - flags = KPbk2FieldFlagTemplateField | - KPbk2FieldFlagUserCanAddField; - location = EPbk2FieldLocationNone; - defaultLabel = qtn_phob_lbl_poc; - }, - /// SWIS (Share view) - PHONEBOOK2_FIELD_PROPERTY - { - fieldTypeLink = R_VPBK_FIELD_TYPE_SWIS; - multiplicity = EPbk2FieldMultiplicityMany; - maxLength = 100; - editMode = EPbk2FieldEditModeLatinOnly; - defaultCase = EPbk2FieldDefaultCaseLower; - iconId = PHONEBOOK2_ICON_ID - { - ownerUid = KPbk2UID3; - id = EPbk2qgn_prop_nrtyp_swis; - }; - ctrlType = EPbk2FieldCtrlTypeTextEditor; - flags = KPbk2FieldFlagUserCanAddField; - location = EPbk2FieldLocationNone; - defaultLabel = qtn_phob_lbl_swis; - }, - /// SIP - PHONEBOOK2_FIELD_PROPERTY - { - fieldTypeLink = R_VPBK_FIELD_TYPE_SIP; - multiplicity = EPbk2FieldMultiplicityMany; - maxLength = 100; - editMode = EPbk2FieldEditModeLatinOnly; - defaultCase = EPbk2FieldDefaultCaseLower; - iconId = PHONEBOOK2_ICON_ID - { - ownerUid = KPbk2UID3; - id = EPbk2qgn_prop_nrtyp_sip; - }; - ctrlType = EPbk2FieldCtrlTypeTextEditor; - flags = KPbk2FieldFlagUserCanAddField; - location = EPbk2FieldLocationNone; - defaultLabel = qtn_phob_lbl_sip; - }, - /// Email address (general) - PHONEBOOK2_FIELD_PROPERTY - { - fieldTypeLink = R_VPBK_FIELD_TYPE_EMAILGEN; - multiplicity = EPbk2FieldMultiplicityMany; - maxLength = 150; - editMode = EPbk2FieldEditModeLatinOnly; - defaultCase = EPbk2FieldDefaultCaseLower; - iconId = PHONEBOOK2_ICON_ID - { - ownerUid = KPbk2UID3; - id = EPbk2qgn_prop_nrtyp_email; - }; - ctrlType = EPbk2FieldCtrlEmailEditor; - flags = KPbk2FieldFlagTemplateField | - KPbk2FieldFlagUserCanAddField; - location = EPbk2FieldLocationNone; - defaultLabel = qtn_phob_lbl_email; - }, - /// URL (general) - PHONEBOOK2_FIELD_PROPERTY - { - fieldTypeLink = R_VPBK_FIELD_TYPE_URLGEN; - multiplicity = EPbk2FieldMultiplicityMany; - maxLength = 1000; - editMode = EPbk2FieldEditModeLatinOnly; - defaultCase = EPbk2FieldDefaultCaseLower; - iconId = PHONEBOOK2_ICON_ID - { - ownerUid = KPbk2UID3; - id = EPbk2qgn_prop_nrtyp_url; - }; - ctrlType = EPbk2FieldCtrlURLEditor; - flags = KPbk2FieldFlagUserCanAddField; - location = EPbk2FieldLocationNone; - defaultLabel = qtn_phob_lbl_url; - }, - /// Address label (general) - PHONEBOOK2_FIELD_PROPERTY - { - fieldTypeLink = R_VPBK_FIELD_TYPE_ADDRLABELGEN; - multiplicity = EPbk2FieldMultiplicityOne; - maxLength = 250; - editMode = EPbk2FieldEditModeAlpha; - defaultCase = EPbk2FieldDefaultCaseText; - iconId = PHONEBOOK2_ICON_ID - { - ownerUid = KPbk2UID3; - id = EPbk2qgn_prop_nrtyp_address; - }; - ctrlType = EPbk2FieldCtrlTypeTextEditor; - flags = KPbk2FieldFlagNull; - location = EPbk2FieldLocationNone; - defaultLabel = qtn_phob_lbl_address; - }, - /// Address postoffice (general) - PHONEBOOK2_FIELD_PROPERTY - { - fieldTypeLink = R_VPBK_FIELD_TYPE_ADDRPOGEN; - multiplicity = EPbk2FieldMultiplicityOne; - maxLength = 20; - editMode = EPbk2FieldEditModeNumeric; - defaultCase = EPbk2FieldDefaultCaseNone; - iconId = PHONEBOOK2_ICON_ID - { - ownerUid = KPbk2UID3; - id = EPbk2qgn_prop_nrtyp_empty; - }; - ctrlType = EPbk2FieldCtrlTypeNumberEditor; - flags = KPbk2FieldFlagUserCanAddField; - addItemText = qtn_phob_lbl2_pobox; - location = EPbk2FieldLocationNone; - groupId = EPbk2FieldGroupIdPostalAddress; - defaultLabel = qtn_phob_lbl_address; - }, - /// Address extension (general) - PHONEBOOK2_FIELD_PROPERTY - { - fieldTypeLink = R_VPBK_FIELD_TYPE_ADDREXTGEN; - multiplicity = EPbk2FieldMultiplicityOne; - maxLength = 50; - editMode = EPbk2FieldEditModeAlpha; - defaultCase = EPbk2FieldDefaultCaseText; - iconId = PHONEBOOK2_ICON_ID - { - ownerUid = KPbk2UID3; - id = EPbk2qgn_prop_nrtyp_empty; - }; - ctrlType = EPbk2FieldCtrlTypeTextEditor; - flags = KPbk2FieldFlagUserCanAddField; - addItemText = qtn_phob_lbl2_extension; - location = EPbk2FieldLocationNone; - groupId = EPbk2FieldGroupIdPostalAddress; - defaultLabel = qtn_phob_lbl_extencion; - }, - /// Address street (general) - PHONEBOOK2_FIELD_PROPERTY - { - fieldTypeLink = R_VPBK_FIELD_TYPE_ADDRSTREETGEN; - multiplicity = EPbk2FieldMultiplicityOne; - maxLength = 50; - editMode = EPbk2FieldEditModeAlpha; - defaultCase = EPbk2FieldDefaultCaseText; - iconId = PHONEBOOK2_ICON_ID - { - ownerUid = KPbk2UID3; - id = EPbk2qgn_prop_nrtyp_empty; - }; - ctrlType = EPbk2FieldCtrlTypeTextEditor; - flags = KPbk2FieldFlagUserCanAddField; - addItemText = qtn_phob_lbl2_street; - location = EPbk2FieldLocationNone; - groupId = EPbk2FieldGroupIdPostalAddress; - defaultLabel = qtn_phob_lbl_street; - }, - /// Address city (general) - PHONEBOOK2_FIELD_PROPERTY - { - fieldTypeLink = R_VPBK_FIELD_TYPE_ADDRLOCALGEN; - multiplicity = EPbk2FieldMultiplicityOne; - maxLength = 50; - editMode = EPbk2FieldEditModeAlpha; - defaultCase = EPbk2FieldDefaultCaseText; - iconId = PHONEBOOK2_ICON_ID - { - ownerUid = KPbk2UID3; - id = EPbk2qgn_prop_nrtyp_empty; - }; - ctrlType = EPbk2FieldCtrlTypeTextEditor; - flags = KPbk2FieldFlagUserCanAddField; - addItemText = qtn_phob_lbl2_city; - location = EPbk2FieldLocationNone; - groupId = EPbk2FieldGroupIdPostalAddress; - defaultLabel = qtn_phob_lbl_city; - }, - /// Address region (general) - PHONEBOOK2_FIELD_PROPERTY - { - fieldTypeLink = R_VPBK_FIELD_TYPE_ADDRREGIONGEN; - multiplicity = EPbk2FieldMultiplicityOne; - maxLength = 50; - editMode = EPbk2FieldEditModeAlpha; - defaultCase = EPbk2FieldDefaultCaseText; - iconId = PHONEBOOK2_ICON_ID - { - ownerUid = KPbk2UID3; - id = EPbk2qgn_prop_nrtyp_empty; - }; - ctrlType = EPbk2FieldCtrlTypeTextEditor; - flags = KPbk2FieldFlagUserCanAddField; - addItemText = qtn_phob_lbl2_state; - location = EPbk2FieldLocationNone; - groupId = EPbk2FieldGroupIdPostalAddress; - defaultLabel = qtn_phob_lbl_state; - }, - /// Address postal code (general) - PHONEBOOK2_FIELD_PROPERTY - { - fieldTypeLink = R_VPBK_FIELD_TYPE_ADDRPOSTCODEGEN; - multiplicity = EPbk2FieldMultiplicityOne; - maxLength = 20; - editMode = EPbk2FieldEditModeAlpha; - defaultCase = EPbk2FieldDefaultCaseText; - iconId = PHONEBOOK2_ICON_ID - { - ownerUid = KPbk2UID3; - id = EPbk2qgn_prop_nrtyp_empty; - }; - ctrlType = EPbk2FieldCtrlPostalCodeEditor; - flags = KPbk2FieldFlagUserCanAddField; - addItemText = qtn_phob_lbl2_postal_code; - location = EPbk2FieldLocationNone; - groupId = EPbk2FieldGroupIdPostalAddress; - defaultLabel = qtn_phob_lbl_postal_code; - }, - /// Address country (general) - PHONEBOOK2_FIELD_PROPERTY - { - fieldTypeLink = R_VPBK_FIELD_TYPE_ADDRCOUNTRYGEN; - multiplicity = EPbk2FieldMultiplicityOne; - maxLength = 50; - editMode = EPbk2FieldEditModeAlpha; - defaultCase = EPbk2FieldDefaultCaseText; - iconId = PHONEBOOK2_ICON_ID - { - ownerUid = KPbk2UID3; - id = EPbk2qgn_prop_nrtyp_empty; - }; - ctrlType = EPbk2FieldCtrlTypeTextEditor; - flags = KPbk2FieldFlagUserCanAddField; - addItemText = qtn_phob_lbl2_country; - location = EPbk2FieldLocationNone; - groupId = EPbk2FieldGroupIdPostalAddress; - defaultLabel = qtn_phob_lbl_country; - }, - /// Pager number - PHONEBOOK2_FIELD_PROPERTY - { - fieldTypeLink = R_VPBK_FIELD_TYPE_PAGERNUMBER; - multiplicity = EPbk2FieldMultiplicityMany; - maxLength = 48; - editMode = EPbk2FieldEditModeNumeric; - defaultCase = EPbk2FieldDefaultCaseNone; - iconId = PHONEBOOK2_ICON_ID - { - ownerUid = KPbk2UID3; - id = EPbk2qgn_prop_nrtyp_pager; - }; - ctrlType = EPbk2FieldCtrlTypePhoneNumberEditor; - flags = KPbk2FieldFlagTemplateField | - KPbk2FieldFlagUserCanAddField; - location = EPbk2FieldLocationNone; - defaultLabel = qtn_phob_lbl_pager; - }, - /// DTMF string - PHONEBOOK2_FIELD_PROPERTY - { - fieldTypeLink = R_VPBK_FIELD_TYPE_DTMFSTRING; - multiplicity = EPbk2FieldMultiplicityMany; - maxLength = 60; - editMode = EPbk2FieldEditModeNumeric; - defaultCase = EPbk2FieldDefaultCaseNone; - iconId = PHONEBOOK2_ICON_ID - { - ownerUid = KPbk2UID3; - id = EPbk2qgn_prop_phonebook2_unsync; - }; - ctrlType = EPbk2FieldCtrlTypeDTMFEditor; - flags = KPbk2FieldFlagUserCanAddField; - location = EPbk2FieldLocationNone; - defaultLabel = qtn_phob_lbl_dtmf; - }, - - /// Wv(IM) address field - will be inserted by PEC & IM - - /// Date - PHONEBOOK2_FIELD_PROPERTY - { - fieldTypeLink = R_VPBK_FIELD_TYPE_DATE; - multiplicity = EPbk2FieldMultiplicityOne; - maxLength = 48; - editMode = EPbk2FieldEditModeDate; - defaultCase = EPbk2FieldDefaultCaseNone; - iconId = PHONEBOOK2_ICON_ID - { - ownerUid = KPbk2UID3; - id = EPbk2qgn_prop_nrtyp_date; - }; - ctrlType = EPbk2FieldCtrlTypeDateEditor; - flags = KPbk2FieldFlagUserCanAddField; - location = EPbk2FieldLocationNone; - defaultLabel = qtn_phob_lbl_date; - }, - /// Note - PHONEBOOK2_FIELD_PROPERTY - { - fieldTypeLink = R_VPBK_FIELD_TYPE_NOTE; - multiplicity = EPbk2FieldMultiplicityMany; - maxLength = 1000; - editMode = EPbk2FieldEditModeAlpha; - defaultCase = EPbk2FieldDefaultCaseText; - iconId = PHONEBOOK2_ICON_ID - { - ownerUid = KPbk2UID3; - id = EPbk2qgn_prop_nrtyp_note; - }; - ctrlType = EPbk2FieldCtrlTypeTextEditor; - flags = KPbk2FieldFlagUserCanAddField; - location = EPbk2FieldLocationNone; - defaultLabel = qtn_phob_lbl_note; - }, - /// Thumbnail photo - PHONEBOOK2_FIELD_PROPERTY - { - fieldTypeLink = R_VPBK_FIELD_TYPE_THUMBNAILPIC; - multiplicity = EPbk2FieldMultiplicityOne; - maxLength = 0; - editMode = EPbk2FieldEditModeSelector; - defaultCase = EPbk2FieldDefaultCaseNone; - iconId = PHONEBOOK2_ICON_ID - { - ownerUid = KPbk2UID3; - id = EPbk2qgn_prop_nrtyp_empty; - }; - ctrlType = EPbk2FieldCtrlTypeNone; - flags = KPbk2FieldFlagDisableEdit | - KPbk2FieldFlagHideFromDetailsView; - location = EPbk2FieldLocationNone; - }, - /// Ringing tone - PHONEBOOK2_FIELD_PROPERTY - { - fieldTypeLink = R_VPBK_FIELD_TYPE_RINGTONE; - multiplicity = EPbk2FieldMultiplicityOne; - maxLength = 256; - editMode = EPbk2FieldEditModeSelector; // If editing happends with commands - defaultCase = EPbk2FieldDefaultCaseNone; - iconId = PHONEBOOK2_ICON_ID - { - ownerUid = KPbk2UID3; - id = EPbk2qgn_prop_phonebook2_unsync; - }; - ctrlType = EPbk2FieldCtrlTypeRingtoneEditor; - flags = KPbk2FieldFlagTemplateField | KPbk2FieldFlagCanNotBeRemoved | KPbk2FieldFlagUserCanAddField; - location = EPbk2FieldLocationNone; - defaultLabel = qtn_phob_lbl_tone; - }, - /// Caller object image - PHONEBOOK2_FIELD_PROPERTY - { - fieldTypeLink = R_VPBK_FIELD_TYPE_CALLEROBJIMG; - multiplicity = EPbk2FieldMultiplicityOne; - maxLength = 256; - editMode = EPbk2FieldEditModeSelector; - defaultCase = EPbk2FieldDefaultCaseNone; - iconId = PHONEBOOK2_ICON_ID - { - ownerUid = KPbk2UID3; - id = EPbk2qgn_prop_nrtyp_empty; - }; - ctrlType = EPbk2FieldCtrlTypeImageEditor; - flags = KPbk2FieldFlagTemplateField | KPbk2FieldFlagCanNotBeRemoved | KPbk2FieldFlagUserCanAddField; - location = EPbk2FieldLocationNone; - defaultLabel = qtn_phob_lbl_image; - }, - /// Middle name - PHONEBOOK2_FIELD_PROPERTY - { - fieldTypeLink = R_VPBK_FIELD_TYPE_MIDDLENAME; - multiplicity = EPbk2FieldMultiplicityOne; - maxLength = 50; - editMode = EPbk2FieldEditModeAlpha; - defaultCase = EPbk2FieldDefaultCaseText; - iconId = PHONEBOOK2_ICON_ID - { - ownerUid = KPbk2UID3; - id = EPbk2qgn_prop_nrtyp_empty; - }; - ctrlType = EPbk2FieldCtrlTypeTextEditor; - flags = KPbk2FieldFlagUserCanAddField; - location = EPbk2FieldLocationNone; - groupId = EPbk2FieldGroupIdLastName; - defaultLabel = qtn_phob_lbl_middle_name; - }, - /// Department - PHONEBOOK2_FIELD_PROPERTY - { - fieldTypeLink = R_VPBK_FIELD_TYPE_DEPARTMENT; - multiplicity = EPbk2FieldMultiplicityOne; - maxLength = 50; - editMode = EPbk2FieldEditModeAlpha; - defaultCase = EPbk2FieldDefaultCaseText; - iconId = PHONEBOOK2_ICON_ID - { - ownerUid = KPbk2UID3; - id = EPbk2qgn_prop_nrtyp_empty; - }; - ctrlType = EPbk2FieldCtrlTypeTextEditor; - flags = KPbk2FieldFlagUserCanAddField; - location = EPbk2FieldLocationNone; - groupId = EPbk2FieldGroupIdNone; - defaultLabel = qtn_phob_lbl_dept_name; - }, - /// Assistant name - PHONEBOOK2_FIELD_PROPERTY - { - fieldTypeLink = R_VPBK_FIELD_TYPE_ASSTNAME; - multiplicity = EPbk2FieldMultiplicityOne; - maxLength = 50; - editMode = EPbk2FieldEditModeAlpha; - defaultCase = EPbk2FieldDefaultCaseText; - iconId = PHONEBOOK2_ICON_ID - { - ownerUid = KPbk2UID3; - id = EPbk2qgn_prop_nrtyp_empty; - }; - ctrlType = EPbk2FieldCtrlTypeTextEditor; - flags = KPbk2FieldFlagUserCanAddField; - location = EPbk2FieldLocationNone; - groupId = EPbk2FieldGroupIdNone; - defaultLabel = qtn_phob_lbl_assistant_name; - }, - /// Spouse - PHONEBOOK2_FIELD_PROPERTY - { - fieldTypeLink = R_VPBK_FIELD_TYPE_SPOUSE; - multiplicity = EPbk2FieldMultiplicityOne; - maxLength = 50; - editMode = EPbk2FieldEditModeAlpha; - defaultCase = EPbk2FieldDefaultCaseText; - iconId = PHONEBOOK2_ICON_ID - { - ownerUid = KPbk2UID3; - id = EPbk2qgn_prop_nrtyp_empty; - }; - ctrlType = EPbk2FieldCtrlTypeTextEditor; - flags = KPbk2FieldFlagUserCanAddField; - location = EPbk2FieldLocationNone; - groupId = EPbk2FieldGroupIdNone; - defaultLabel = qtn_phob_lbl_spouse; - }, - /// Children - PHONEBOOK2_FIELD_PROPERTY - { - fieldTypeLink = R_VPBK_FIELD_TYPE_CHILDREN; - multiplicity = EPbk2FieldMultiplicityOne; - maxLength = 50; - editMode = EPbk2FieldEditModeAlpha; - defaultCase = EPbk2FieldDefaultCaseText; - iconId = PHONEBOOK2_ICON_ID - { - ownerUid = KPbk2UID3; - id = EPbk2qgn_prop_nrtyp_empty; - }; - ctrlType = EPbk2FieldCtrlTypeTextEditor; - flags = KPbk2FieldFlagUserCanAddField; - location = EPbk2FieldLocationNone; - groupId = EPbk2FieldGroupIdNone; - defaultLabel = qtn_phob_lbl_children; - }, - /// Assistant phone - PHONEBOOK2_FIELD_PROPERTY - { - fieldTypeLink = R_VPBK_FIELD_TYPE_ASSTPHONE; - multiplicity = EPbk2FieldMultiplicityMany; - maxLength = 48; - editMode = EPbk2FieldEditModeNumeric; - defaultCase = EPbk2FieldDefaultCaseNone; - iconId = PHONEBOOK2_ICON_ID - { - ownerUid = KPbk2UID3; - id = EPbk2qgn_prop_nrtyp_assistant; - }; - ctrlType = EPbk2FieldCtrlTypePhoneNumberEditor; - flags = KPbk2FieldFlagUserCanAddField; - location = EPbk2FieldLocationNone; - groupId = EPbk2FieldGroupIdNone; - defaultLabel = qtn_phob_lbl_number_assistant; - }, - /// Car phone - PHONEBOOK2_FIELD_PROPERTY - { - fieldTypeLink = R_VPBK_FIELD_TYPE_CARPHONE; - multiplicity = EPbk2FieldMultiplicityMany; - maxLength = 48; - editMode = EPbk2FieldEditModeNumeric; - defaultCase = EPbk2FieldDefaultCaseNone; - iconId = PHONEBOOK2_ICON_ID - { - ownerUid = KPbk2UID3; - id = EPbk2qgn_prop_nrtyp_car; - }; - ctrlType = EPbk2FieldCtrlTypePhoneNumberEditor; - flags = KPbk2FieldFlagUserCanAddField; - location = EPbk2FieldLocationNone; - groupId = EPbk2FieldGroupIdNone; - defaultLabel = qtn_phob_lbl_car_tel; - }, - /// Anniversary - PHONEBOOK2_FIELD_PROPERTY - { - fieldTypeLink = R_VPBK_FIELD_TYPE_ANNIVERSARY; - multiplicity = EPbk2FieldMultiplicityOne; - maxLength = 0; - editMode = EPbk2FieldEditModeDate; - defaultCase = EPbk2FieldDefaultCaseNone; - iconId = PHONEBOOK2_ICON_ID - { - ownerUid = KPbk2UID3; - id = EPbk2qgn_prop_nrtyp_date; - }; - ctrlType = EPbk2FieldCtrlTypeDateEditor; - flags = KPbk2FieldFlagUserCanAddField; - location = EPbk2FieldLocationNone; - groupId = EPbk2FieldGroupIdNone; - defaultLabel = qtn_phob_lbl_anniversary; - }, - /// Synchronization - PHONEBOOK2_FIELD_PROPERTY - { - fieldTypeLink = R_VPBK_FIELD_TYPE_SYNCCLASS; - multiplicity = EPbk2FieldMultiplicityOne; - maxLength = 10; - editMode = EPbk2FieldEditModeAlpha; - defaultCase = EPbk2FieldDefaultCaseNone; - iconId = PHONEBOOK2_ICON_ID - { - ownerUid = KPbk2UID3; - id = EPbk2qgn_prop_nrtyp_empty; - }; - ctrlType = EPbk2FieldCtrlTypeChoiceItems; - flags = KPbk2FieldFlagTemplateField | - KPbk2FieldFlagCanNotBeRemoved | - KPbk2FieldFlagHideFromDetailsView; - location = EPbk2FieldLocationNone; - groupId = EPbk2FieldGroupIdNone; - defaultLabel = qtn_phob_lbl_synchronization; - }, - /// Top contact field - PHONEBOOK2_FIELD_PROPERTY - { - fieldTypeLink = R_VPBK_FIELD_TYPE_TOPCONTACT; - multiplicity = EPbk2FieldMultiplicityOne; - maxLength = 0; - editMode = EPbk2FieldEditModeSelector; - defaultCase = EPbk2FieldDefaultCaseNone; - iconId = PHONEBOOK2_ICON_ID - { - ownerUid = KPbk2UID3; - id = EPbk2qgn_prop_nrtyp_empty; - }; - ctrlType = EPbk2FieldCtrlTypeNone; - flags = KPbk2FieldFlagDisableEdit | - KPbk2FieldFlagCanNotBeRemoved | - KPbk2FieldFlagHideFromDetailsView; - location = EPbk2FieldLocationNone; - }, - PHONEBOOK2_FIELD_PROPERTY - { - fieldTypeLink = R_VPBK_FIELD_TYPE_IMPP; - multiplicity = EPbk2FieldMultiplicityMany; - maxLength = 100; - editMode = EPbk2FieldEditModeAlpha; - defaultCase = EPbk2FieldDefaultCaseLower; - iconId = PHONEBOOK2_ICON_ID - { - ownerUid = KPbk2UID3; - id = EPbk2qgn_prop_nrtyp_empty; - }; - ctrlType = EPbk2FieldCtrlTypeIMPPEditor; - flags = KPbk2FieldFlagTemplateField | KPbk2FieldFlagUserCanAddField; - location = EPbk2FieldLocationNone; - }, - /// Geographic coordinates (home) - PHONEBOOK2_FIELD_PROPERTY - { - fieldTypeLink = R_VPBK_FIELD_TYPE_GEOHOME; - multiplicity = EPbk2FieldMultiplicityOne; - maxLength = 50; - editMode = EPbk2FieldEditModeAlpha; - defaultCase = EPbk2FieldDefaultCaseNone; - iconId = PHONEBOOK2_ICON_ID - { - ownerUid = KPbk2UID3; - id = EPbk2qgn_prop_nrtyp_empty; - }; - ctrlType = EPbk2FieldCtrlTypeTextEditor; - flags = KPbk2FieldFlagDisableEdit - | KPbk2FieldFlagHideFromDetailsView; - location = EPbk2FieldLocationHome; - groupId = EPbk2FieldGroupIdNone; - }, - /// Geographic coordinates (work) - PHONEBOOK2_FIELD_PROPERTY - { - fieldTypeLink = R_VPBK_FIELD_TYPE_GEOWORK; - multiplicity = EPbk2FieldMultiplicityOne; - maxLength = 50; - editMode = EPbk2FieldEditModeAlpha; - defaultCase = EPbk2FieldDefaultCaseNone; - iconId = PHONEBOOK2_ICON_ID - { - ownerUid = KPbk2UID3; - id = EPbk2qgn_prop_nrtyp_empty; - }; - ctrlType = EPbk2FieldCtrlTypeTextEditor; - flags = KPbk2FieldFlagDisableEdit - | KPbk2FieldFlagHideFromDetailsView; - location = EPbk2FieldLocationWork; - groupId = EPbk2FieldGroupIdNone; - }, - /// Geographic coordinates (general) - PHONEBOOK2_FIELD_PROPERTY - { - fieldTypeLink = R_VPBK_FIELD_TYPE_GEOGEN; - multiplicity = EPbk2FieldMultiplicityOne; - maxLength = 50; - editMode = EPbk2FieldEditModeAlpha; - defaultCase = EPbk2FieldDefaultCaseNone; - iconId = PHONEBOOK2_ICON_ID - { - ownerUid = KPbk2UID3; - id = EPbk2qgn_prop_nrtyp_empty; - }; - ctrlType = EPbk2FieldCtrlTypeTextEditor; - flags = KPbk2FieldFlagDisableEdit - | KPbk2FieldFlagHideFromDetailsView; - location = EPbk2FieldLocationNone; - groupId = EPbk2FieldGroupIdNone; - } - }; - } - -// -------------------------------------------------------------------------- -// Phonebook 2 field group array -// -------------------------------------------------------------------------- -// -RESOURCE PHONEBOOK2_FIELD_GROUP_ARRAY r_phonebook2_field_group_array - { - items = - { - PHONEBOOK2_FIELD_GROUP - { - id = EPbk2FieldGroupIdPostalAddress; - label = qtn_phob_header_address; - iconId = PHONEBOOK2_ICON_ID - { - ownerUid = KPbk2UID3; - id = EPbk2qgn_prop_nrtyp_address; - }; - addItemOrdering = EPbk2AddItemOrderPostalAddress; - }, - PHONEBOOK2_FIELD_GROUP - { - id = EPbk2FieldGroupIdHomeAddress; - label = qtn_phob_header_address_home; - iconId = PHONEBOOK2_ICON_ID - { - ownerUid = KPbk2UID3; - id = EPbk2qgn_prop_nrtyp_address; - }; - addItemOrdering = EPbk2AddItemOrderHomeAddress; - }, - PHONEBOOK2_FIELD_GROUP - { - id = EPbk2FieldGroupIdCompanyAddress; - label = qtn_phob_header_address_work; - iconId = PHONEBOOK2_ICON_ID - { - ownerUid = KPbk2UID3; - id = EPbk2qgn_prop_nrtyp_address; - }; - addItemOrdering = EPbk2AddItemOrderCompanyAddress; - }, - PHONEBOOK2_FIELD_GROUP - { - id = EPbk2FieldGroupIdFirstName; - label = qtn_phob_lbl_first_name; - iconId = PHONEBOOK2_ICON_ID - { - ownerUid = KPbk2UID3; - id = EPbk2qgn_prop_nrtyp_empty; - }; - addItemOrdering = EPbk2AddItemOrderFirstName; - }, - PHONEBOOK2_FIELD_GROUP - { - id = EPbk2FieldGroupIdLastName; - label = qtn_phob_lbl_last_name; - iconId = PHONEBOOK2_ICON_ID - { - ownerUid = KPbk2UID3; - id = EPbk2qgn_prop_nrtyp_empty; - }; - addItemOrdering = EPbk2AddItemOrderLastName; - } - }; - } - -// -------------------------------------------------------------------------- -// Contacts model store properties -// -------------------------------------------------------------------------- -// -RESOURCE PHONEBOOK2_STORE_PROPERTY_ARRAY r_phonebook2_store_properties - { - items = - { - PHONEBOOK2_STORE_PROPERTY - { - version = 0; - storeUri = KVPBK_DEFAULT_CNTDB_URI; - storeName = qtn_phob_set_memory_phone; - flags = KPbk2ShownInMemorySelectionList | - KPbk2DefaultSavingStorageItem; - views = - { - PHONEBOOK2_STORE_VIEW - { - version = 0; - viewType = EPbk2MainNamesList; - viewLocation = EPbk2MergedMainList; - viewDefinition = VPBK_CONTACT_VIEW - { - uri = KVPBK_DEFAULT_CNTDB_URI; - flags = EVPbkContactViewFlagsNone; - subViews = {}; - }; - iconId = PHONEBOOK2_ICON_ID { }; - }, - PHONEBOOK2_STORE_VIEW - { - version = 0; - viewType = EPbk2MainTopContactsList; - viewLocation = EPbk2MergedTopContactsList; - viewDefinition = VPBK_CONTACT_VIEW - { - uri = KVPBK_DEFAULT_CNTDB_URI; - flags = EVPbkContactViewFlagsNone; - subViews = {}; - }; - iconId = PHONEBOOK2_ICON_ID - { - //Icon provided by extension - }; - }, - PHONEBOOK2_STORE_VIEW - { - version = 0; - viewType = EPbk2MainGroupsList; - viewLocation = EPbk2MergedMainList; - viewDefinition = VPBK_CONTACT_VIEW - { - uri = KVPBK_DEFAULT_CNTDB_URI; - type = EVPbkGroupsView; - subViews = {}; - }; - iconId = PHONEBOOK2_ICON_ID - { - ownerUid = KPbk2UID3; - id = EPbk2qgn_prop_group_small; - }; - } - }; - memoryInfoItemTypes = KPbk2StoreInfoNumberOfContacts | - KPbk2StoreInfoNumberOfGroups | KPbk2StoreInfoReservedMemory | - KPbk2StoreInfoFreeMemory; - localizedResourceStrings = - { - PHONEBOOK2_LOCALIZED_TEXT - { - context = EPbk2MemInfoPhone; - text = qtn_phob_pb_info_memory_phone; - }, - PHONEBOOK2_LOCALIZED_TEXT - { - context = EPbk2CopyQueryItem; - text = qtn_pbcop_copy_query_list_item_phone; - }, - PHONEBOOK2_LOCALIZED_TEXT - { - context = EPbk2MemInfoContacts; - text = qtn_phob_pb_info_memory_phone_colon; - } - }; - } - }; - } - -// -------------------------------------------------------------------------- -// Main contact view structure -// -------------------------------------------------------------------------- -// -RESOURCE VPBK_CONTACT_VIEW r_phonebook2_main_contact_view_structure - { - id = EPbk2RootViewId; - type = EVPbkCompositeView; - sortPolicy = EVPbkOrderedContactView; - subViews = - { - /// Placeholder for EPbk2OrderedPreList - VPBK_CONTACT_VIEW - { - id = EPbk2OrderedPreListPlaceHolder; - type = EVPbkCompositeView; - sortPolicy = EVPbkOrderedContactView; - subViews = {}; - }, - - /// Placeholder for EPbk2MergedTopContactsList - VPBK_CONTACT_VIEW - { - id = EPbk2MergedTopContactsListPlaceHolder; - type = EVPbkCompositeView; - sortPolicy = EVPbkOrderedContactView; //To retain user defined view - subViews = {}; - }, - - /// Placeholder for EPbk2MergedMainList - VPBK_CONTACT_VIEW - { - id = EPbk2MergedMainListPlaceHolder; - type = EVPbkCompositeView; - sortPolicy = EVPbkSortedContactView; - subViews = {}; - }, - - /// Placeholder for EPbk2OrderedPostList - VPBK_CONTACT_VIEW - { - id = EPbk2OrderedPostListPlaceHolder; - type = EVPbkCompositeView; - sortPolicy = EVPbkOrderedContactView; - subViews = {}; - } - }; - } - -// -------------------------------------------------------------------------- -// Unnamed string -// -------------------------------------------------------------------------- -// -RESOURCE PBK2_PRESENTATION_STRING r_qtn_phob_unnamed - { - text = qtn_phob_unnamed; - } - -// -------------------------------------------------------------------------- -// A boolean to copy SIM name to pbk first or last name -// -------------------------------------------------------------------------- -// -RESOURCE TBUF r_qtn_phob_sim_name_copy_to_first_name - { - buf = qtn_phob_sim_name_copy_to_first_name; - } - -// Additional resource files -#include "Pbk2ImageManager.rss" -#include "Pbk2ContactMerge.rss" -#include "Pbk2FieldOrdering.rss" - -//In order to retain BINARY COMPATIBILITY the below needs to be declared -//AFTER the above. - -// -------------------------------------------------------------------------- -// Well known services definition. Service names must not be localized. -// -------------------------------------------------------------------------- -// -RESOURCE PHONEBOOK2_WELL_KNOWN_SERVICES r_phonebook2_well_known_services - { - services = - { - PHONEBOOK2_WELL_KNOWN_SERVICE - { - serviceName = "Gizmo"; - localizedName = qtn_xsp_gizmo; - }, - PHONEBOOK2_WELL_KNOWN_SERVICE - { - serviceName = "Facebook"; - localizedName = qtn_xsp_facebook; - }, - PHONEBOOK2_WELL_KNOWN_SERVICE - { - serviceName = "MSN"; - localizedName = qtn_xsp_msn; - }, - PHONEBOOK2_WELL_KNOWN_SERVICE - { - serviceName = "Yahoo"; - localizedName = qtn_xsp_yahoo; - }, - PHONEBOOK2_WELL_KNOWN_SERVICE - { - serviceName = "Ovi"; - localizedName = qtn_xsp_ovi; - }, - PHONEBOOK2_WELL_KNOWN_SERVICE - { - serviceName = "Google"; - localizedName = qtn_xsp_google; - }, - PHONEBOOK2_WELL_KNOWN_SERVICE - { - serviceName = "Skype"; - localizedName = qtn_xsp_skype; - }, - PHONEBOOK2_WELL_KNOWN_SERVICE - { - serviceName = "AIM"; - localizedName = qtn_xsp_aim; - }, - PHONEBOOK2_WELL_KNOWN_SERVICE - { - serviceName = "MySpace"; - localizedName = qtn_xsp_myspace; - }, - PHONEBOOK2_WELL_KNOWN_SERVICE - { - serviceName = "ICQ"; - localizedName = qtn_xsp_icq; - } - }; - } - -// End of File diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/Presentation/rss/Pbk2PresentationJapanese.rss --- a/phonebookui/Phonebook2/Presentation/rss/Pbk2PresentationJapanese.rss Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/Presentation/rss/Pbk2PresentationJapanese.rss Wed Oct 13 14:15:33 2010 +0300 @@ -22,7 +22,7 @@ /*============================================================================ * NB. Pbk2Presentation resources MUST be defined in Pbk2PresentationCommon.rss -* because only one pbk2presentation.rsg file used with different language +* because only one Pbk2Presentation.rsg file used with different language * specific ".rsc" files. Otherwise BC is broken. ============================================================================*/ diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/Presentation/src/CPbk2ContactMerge.cpp --- a/phonebookui/Phonebook2/Presentation/src/CPbk2ContactMerge.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/Presentation/src/CPbk2ContactMerge.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -25,7 +25,7 @@ #include #include #include -#include +#include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/Presentation/src/CPbk2ContactNameFormatter.cpp --- a/phonebookui/Phonebook2/Presentation/src/CPbk2ContactNameFormatter.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/Presentation/src/CPbk2ContactNameFormatter.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -24,7 +24,7 @@ #include #include -#include +#include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/Presentation/src/CPbk2ContactViewBuilder.cpp --- a/phonebookui/Phonebook2/Presentation/src/CPbk2ContactViewBuilder.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/Presentation/src/CPbk2ContactViewBuilder.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -26,7 +26,7 @@ #include "CPbk2StorePropertyArray.h" #include "CPbk2StoreViewDefinition.h" #include -#include +#include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/Presentation/src/CPbk2DuplicateContactFinder.cpp --- a/phonebookui/Phonebook2/Presentation/src/CPbk2DuplicateContactFinder.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/Presentation/src/CPbk2DuplicateContactFinder.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -32,7 +32,7 @@ #include #include -#include +#include namespace { #ifdef _DEBUG diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/Presentation/src/CPbk2EmbeddedImage.cpp --- a/phonebookui/Phonebook2/Presentation/src/CPbk2EmbeddedImage.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/Presentation/src/CPbk2EmbeddedImage.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -40,7 +40,7 @@ #include #include "Pbk2DataCaging.hrh" -#include +#include /// Unnamed namespace for local definitions namespace { diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/Presentation/src/CPbk2FieldGroupPropertyArray.cpp --- a/phonebookui/Phonebook2/Presentation/src/CPbk2FieldGroupPropertyArray.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/Presentation/src/CPbk2FieldGroupPropertyArray.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -22,7 +22,7 @@ #include "Pbk2PresentationUtils.h" #include #include -#include +#include #include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/Presentation/src/CPbk2FieldPropertyArray.cpp --- a/phonebookui/Phonebook2/Presentation/src/CPbk2FieldPropertyArray.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/Presentation/src/CPbk2FieldPropertyArray.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -25,7 +25,7 @@ #include "CPbk2FieldOrderingManager.h" #include #include -#include +#include #include #include @@ -33,7 +33,7 @@ #include #include #include -#include +#include // System includes #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/Presentation/src/CPbk2PresentationContact.cpp --- a/phonebookui/Phonebook2/Presentation/src/CPbk2PresentationContact.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/Presentation/src/CPbk2PresentationContact.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -34,7 +34,7 @@ #include #include #include -#include +#include // System includes #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/Presentation/src/CPbk2ServiceManager.cpp --- a/phonebookui/Phonebook2/Presentation/src/CPbk2ServiceManager.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/Presentation/src/CPbk2ServiceManager.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -20,7 +20,7 @@ #include #include #include -#include +#include #include #include "CPbk2ServiceManager.h" #include "Pbk2PresentationUtils.h" diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/Presentation/src/CPbk2SortOrderManagerImpl.cpp --- a/phonebookui/Phonebook2/Presentation/src/CPbk2SortOrderManagerImpl.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/Presentation/src/CPbk2SortOrderManagerImpl.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -23,7 +23,7 @@ #include "Pbk2DataCaging.hrh" #include #include -#include +#include #include // Virtual Phonebook diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/Presentation/src/CPbk2StorePropertyArray.cpp --- a/phonebookui/Phonebook2/Presentation/src/CPbk2StorePropertyArray.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/Presentation/src/CPbk2StorePropertyArray.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -24,7 +24,7 @@ #include "Pbk2PresentationUtils.h" #include "CPbk2StoreProperty.h" #include -#include +#include #include // From Virtual Phonebook diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/Presentation/src/Pbk2ContactNameFormatterFactory.cpp --- a/phonebookui/Phonebook2/Presentation/src/Pbk2ContactNameFormatterFactory.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/Presentation/src/Pbk2ContactNameFormatterFactory.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -26,7 +26,7 @@ #include "CPbk2ChineseContactNameFormatter.h" #include "Pbk2PresentationUtils.h" #include -#include +#include // From Virtual Phonebook #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/Presentation/src/Pbk2PresentationUtils.cpp --- a/phonebookui/Phonebook2/Presentation/src/Pbk2PresentationUtils.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/Presentation/src/Pbk2PresentationUtils.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -36,8 +36,6 @@ _LIT( KPbk2PresentationResFile, "Pbk2Presentation.rsc" ); // Chinese presentation resource file _LIT( KPbk2PresentationResFileChinese, "Pbk2PresentationChinese.rsc" ); -// UnSync Chinese presentation resource file -_LIT( KPbk2PresentationResFileChineseUnSync, "Pbk2PresentationChineseUnSync.rsc" ); // ================= LOCAL FUNCTIONS ======================= #ifdef _DEBUG @@ -224,15 +222,7 @@ { if (FeatureManager::FeatureSupported(KFeatureIdChinese)) { - if ( FeatureManager::FeatureSupported(KFeatureIdFfTdUnSyncabPbfieldsInd) ) - { - // The resource which can't be synchronized with a server. - return KPbk2PresentationResFileChineseUnSync; - } - else - { - return KPbk2PresentationResFileChinese; - } + return KPbk2PresentationResFileChinese; } return KPbk2PresentationResFile; } diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/ServerApplication/inc/CPbk2AddressSelectPhase.h --- a/phonebookui/Phonebook2/ServerApplication/inc/CPbk2AddressSelectPhase.h Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/ServerApplication/inc/CPbk2AddressSelectPhase.h Wed Oct 13 14:15:33 2010 +0300 @@ -81,8 +81,6 @@ TInt aExitCommandId ); void AcceptDelayedL( const TDesC8& aContactLinkBuffer ); - void DenyDelayedL( - const TDesC8& aContactLinkBuffer ); MVPbkContactLinkArray* Results() const; TInt ExtraResultData() const; MVPbkStoreContact* TakeStoreContact(); diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/ServerApplication/inc/CPbk2AssignAttributePhase.h --- a/phonebookui/Phonebook2/ServerApplication/inc/CPbk2AssignAttributePhase.h Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/ServerApplication/inc/CPbk2AssignAttributePhase.h Wed Oct 13 14:15:33 2010 +0300 @@ -79,8 +79,6 @@ TInt aExitCommandId ); void AcceptDelayedL( const TDesC8& aContactLinkBuffer ); - void DenyDelayedL( - const TDesC8& aContactLinkBuffer ); MVPbkContactLinkArray* Results() const; TInt ExtraResultData() const; MVPbkStoreContact* TakeStoreContact(); diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/ServerApplication/inc/CPbk2AttributeAddressSelectPhase.h --- a/phonebookui/Phonebook2/ServerApplication/inc/CPbk2AttributeAddressSelectPhase.h Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/ServerApplication/inc/CPbk2AttributeAddressSelectPhase.h Wed Oct 13 14:15:33 2010 +0300 @@ -82,8 +82,6 @@ TInt aExitCommandId ); void AcceptDelayedL( const TDesC8& aContactLinkBuffer ); - void DenyDelayedL( - const TDesC8& aContactLinkBuffer ); MVPbkContactLinkArray* Results() const; TInt ExtraResultData() const; MVPbkStoreContact* TakeStoreContact(); diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/ServerApplication/inc/CPbk2CommAddressSelectPhase.h --- a/phonebookui/Phonebook2/ServerApplication/inc/CPbk2CommAddressSelectPhase.h Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/ServerApplication/inc/CPbk2CommAddressSelectPhase.h Wed Oct 13 14:15:33 2010 +0300 @@ -127,8 +127,6 @@ TInt aExitCommandId ); void AcceptDelayedL( const TDesC8& aContactLinkBuffer ); - void DenyDelayedL( - const TDesC8& aContactLinkBuffer ); MVPbkContactLinkArray* Results() const; TInt ExtraResultData() const; MVPbkStoreContact* TakeStoreContact(); diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/ServerApplication/inc/CPbk2ContactAttributeAssigner.h --- a/phonebookui/Phonebook2/ServerApplication/inc/CPbk2ContactAttributeAssigner.h Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/ServerApplication/inc/CPbk2ContactAttributeAssigner.h Wed Oct 13 14:15:33 2010 +0300 @@ -67,8 +67,6 @@ void CancelService(); void AcceptDelayedContactsL( const TDesC8& aContactLinkBuffer ); - void DenyDelayedContactsL( - const TDesC8& aContactLinkBuffer ); void ExitServiceL( TInt aExitCommandId ); void ServiceResults(TServiceResults* aResults) const; diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/ServerApplication/inc/CPbk2ContactFetchPhase.h --- a/phonebookui/Phonebook2/ServerApplication/inc/CPbk2ContactFetchPhase.h Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/ServerApplication/inc/CPbk2ContactFetchPhase.h Wed Oct 13 14:15:33 2010 +0300 @@ -89,8 +89,6 @@ TInt aExitCommandId ); void AcceptDelayedL( const TDesC8& aContactLinkBuffer ); - void DenyDelayedL( - const TDesC8& aContactLinkBuffer ); MVPbkContactLinkArray* Results() const; TInt ExtraResultData() const; MVPbkStoreContact* TakeStoreContact(); diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/ServerApplication/inc/CPbk2EntryFetcher.h --- a/phonebookui/Phonebook2/ServerApplication/inc/CPbk2EntryFetcher.h Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/ServerApplication/inc/CPbk2EntryFetcher.h Wed Oct 13 14:15:33 2010 +0300 @@ -68,8 +68,6 @@ void CancelService(); void AcceptDelayedContactsL( const TDesC8& aContactLinkBuffer ); - void DenyDelayedContactsL( - const TDesC8& aContactLinkBuffer ); void ExitServiceL( TInt aExitCommandId ); void ServiceResults(TServiceResults* aResults) const; diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/ServerApplication/inc/CPbk2ItemFetcher.h --- a/phonebookui/Phonebook2/ServerApplication/inc/CPbk2ItemFetcher.h Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/ServerApplication/inc/CPbk2ItemFetcher.h Wed Oct 13 14:15:33 2010 +0300 @@ -71,8 +71,6 @@ void CancelService(); void AcceptDelayedContactsL( const TDesC8& aContactLinkBuffer ); - void DenyDelayedContactsL( - const TDesC8& aContactLinkBuffer ); void ExitServiceL( TInt aExitCommandId ); void ServiceResults(TServiceResults* aResults) const; diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/ServerApplication/inc/CPbk2MultiAssignDataPhase.h --- a/phonebookui/Phonebook2/ServerApplication/inc/CPbk2MultiAssignDataPhase.h Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/ServerApplication/inc/CPbk2MultiAssignDataPhase.h Wed Oct 13 14:15:33 2010 +0300 @@ -86,8 +86,6 @@ TInt aExitCommandId ); void AcceptDelayedL( const TDesC8& aContactLinkBuffer ); - void DenyDelayedL( - const TDesC8& aContactLinkBuffer ); MVPbkContactLinkArray* Results() const; TInt ExtraResultData() const; MVPbkStoreContact* TakeStoreContact(); diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/ServerApplication/inc/CPbk2MultiContactDataAssigner.h --- a/phonebookui/Phonebook2/ServerApplication/inc/CPbk2MultiContactDataAssigner.h Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/ServerApplication/inc/CPbk2MultiContactDataAssigner.h Wed Oct 13 14:15:33 2010 +0300 @@ -68,8 +68,6 @@ void CancelService(); void AcceptDelayedContactsL( const TDesC8& aContactLinkBuffer ); - void DenyDelayedContactsL( - const TDesC8& aContactLinkBuffer ); void ExitServiceL( TInt aExitCommandId ); void ServiceResults(TServiceResults* aResults) const; diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/ServerApplication/inc/CPbk2PrepareAttributeAssignPhase.h --- a/phonebookui/Phonebook2/ServerApplication/inc/CPbk2PrepareAttributeAssignPhase.h Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/ServerApplication/inc/CPbk2PrepareAttributeAssignPhase.h Wed Oct 13 14:15:33 2010 +0300 @@ -78,8 +78,6 @@ TInt aExitCommandId ); void AcceptDelayedL( const TDesC8& aContactLinkBuffer ); - void DenyDelayedL( - const TDesC8& aContactLinkBuffer ); MVPbkContactLinkArray* Results() const; TInt ExtraResultData() const; MVPbkStoreContact* TakeStoreContact(); diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/ServerApplication/inc/CPbk2PrepareMultipleAssignPhase.h --- a/phonebookui/Phonebook2/ServerApplication/inc/CPbk2PrepareMultipleAssignPhase.h Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/ServerApplication/inc/CPbk2PrepareMultipleAssignPhase.h Wed Oct 13 14:15:33 2010 +0300 @@ -81,8 +81,6 @@ TInt aExitCommandId ); void AcceptDelayedL( const TDesC8& aContactLinkBuffer ); - void DenyDelayedL( - const TDesC8& aContactLinkBuffer ); MVPbkContactLinkArray* Results() const; TInt ExtraResultData() const; MVPbkStoreContact* TakeStoreContact(); diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/ServerApplication/inc/CPbk2PrepareSingleAssignPhase.h --- a/phonebookui/Phonebook2/ServerApplication/inc/CPbk2PrepareSingleAssignPhase.h Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/ServerApplication/inc/CPbk2PrepareSingleAssignPhase.h Wed Oct 13 14:15:33 2010 +0300 @@ -83,8 +83,6 @@ TInt aExitCommandId ); void AcceptDelayedL( const TDesC8& aContactLinkBuffer ); - void DenyDelayedL( - const TDesC8& aContactLinkBuffer ); MVPbkContactLinkArray* Results() const; TInt ExtraResultData() const; MVPbkStoreContact* TakeStoreContact(); diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/ServerApplication/inc/CPbk2SelectCreateEmptyPropertyPhase.h --- a/phonebookui/Phonebook2/ServerApplication/inc/CPbk2SelectCreateEmptyPropertyPhase.h Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/ServerApplication/inc/CPbk2SelectCreateEmptyPropertyPhase.h Wed Oct 13 14:15:33 2010 +0300 @@ -72,8 +72,6 @@ TInt aExitCommandId ); void AcceptDelayedL( const TDesC8& aContactLinkBuffer ); - void DenyDelayedL( - const TDesC8& aContactLinkBuffer ); MVPbkContactLinkArray* Results() const; MVPbkStoreContact* TakeStoreContact(); TInt ExtraResultData() const; diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/ServerApplication/inc/CPbk2SelectCreateNewPropertyPhase.h --- a/phonebookui/Phonebook2/ServerApplication/inc/CPbk2SelectCreateNewPropertyPhase.h Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/ServerApplication/inc/CPbk2SelectCreateNewPropertyPhase.h Wed Oct 13 14:15:33 2010 +0300 @@ -78,8 +78,6 @@ TInt aExitCommandId ); void AcceptDelayedL( const TDesC8& aContactLinkBuffer ); - void DenyDelayedL( - const TDesC8& aContactLinkBuffer ); MVPbkContactLinkArray* Results() const; TInt ExtraResultData() const; MVPbkStoreContact* TakeStoreContact(); diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/ServerApplication/inc/CPbk2SelectMultiplePropertyPhase.h --- a/phonebookui/Phonebook2/ServerApplication/inc/CPbk2SelectMultiplePropertyPhase.h Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/ServerApplication/inc/CPbk2SelectMultiplePropertyPhase.h Wed Oct 13 14:15:33 2010 +0300 @@ -73,8 +73,6 @@ TInt aExitCommandId ); void AcceptDelayedL( const TDesC8& aContactLinkBuffer ); - void DenyDelayedL( - const TDesC8& aContactLinkBuffer ); MVPbkContactLinkArray* Results() const; TInt ExtraResultData() const; MVPbkStoreContact* TakeStoreContact(); diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/ServerApplication/inc/CPbk2SelectSinglePropertyPhase.h --- a/phonebookui/Phonebook2/ServerApplication/inc/CPbk2SelectSinglePropertyPhase.h Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/ServerApplication/inc/CPbk2SelectSinglePropertyPhase.h Wed Oct 13 14:15:33 2010 +0300 @@ -79,8 +79,6 @@ TInt aExitCommandId ); void AcceptDelayedL( const TDesC8& aContactLinkBuffer ); - void DenyDelayedL( - const TDesC8& aContactLinkBuffer ); MVPbkContactLinkArray* Results() const; TInt ExtraResultData() const; MVPbkStoreContact* TakeStoreContact(); diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/ServerApplication/inc/CPbk2SelectUpdateEmptyPropertyPhase.h --- a/phonebookui/Phonebook2/ServerApplication/inc/CPbk2SelectUpdateEmptyPropertyPhase.h Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/ServerApplication/inc/CPbk2SelectUpdateEmptyPropertyPhase.h Wed Oct 13 14:15:33 2010 +0300 @@ -76,8 +76,6 @@ TInt aExitCommandId ); void AcceptDelayedL( const TDesC8& aContactLinkBuffer ); - void DenyDelayedL( - const TDesC8& aContactLinkBuffer ); MVPbkContactLinkArray* Results() const; MVPbkStoreContact* TakeStoreContact(); TInt ExtraResultData() const; diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/ServerApplication/inc/CPbk2ServerAppStoreManager.h --- a/phonebookui/Phonebook2/ServerApplication/inc/CPbk2ServerAppStoreManager.h Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/ServerApplication/inc/CPbk2ServerAppStoreManager.h Wed Oct 13 14:15:33 2010 +0300 @@ -191,8 +191,6 @@ CVPbkSortOrderAcquirer* iSortOrderAcquirer; /// Ref: list of opened contact stores RPointerArray iOpenedStores; - /// Not Own - Group View - MVPbkContactViewBase* iGroupView; }; #endif // CPBK2SERVERAPPSTOREMANAGER_H diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/ServerApplication/inc/CPbk2SingleAssignDataPhase.h --- a/phonebookui/Phonebook2/ServerApplication/inc/CPbk2SingleAssignDataPhase.h Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/ServerApplication/inc/CPbk2SingleAssignDataPhase.h Wed Oct 13 14:15:33 2010 +0300 @@ -91,8 +91,6 @@ TInt aExitCommandId ); void AcceptDelayedL( const TDesC8& aContactLinkBuffer ); - void DenyDelayedL( - const TDesC8& aContactLinkBuffer ); MVPbkContactLinkArray* Results() const; TInt ExtraResultData() const; MVPbkStoreContact* TakeStoreContact(); diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/ServerApplication/inc/CPbk2SingleContactDataAssigner.h --- a/phonebookui/Phonebook2/ServerApplication/inc/CPbk2SingleContactDataAssigner.h Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/ServerApplication/inc/CPbk2SingleContactDataAssigner.h Wed Oct 13 14:15:33 2010 +0300 @@ -70,8 +70,6 @@ void CancelService(); void AcceptDelayedContactsL( const TDesC8& aContactLinkBuffer ); - void DenyDelayedContactsL( - const TDesC8& aContactLinkBuffer ); void ExitServiceL( TInt aExitCommandId ); void ServiceResults(TServiceResults* aResults) const; diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/ServerApplication/inc/MPbk2ServicePhase.h --- a/phonebookui/Phonebook2/ServerApplication/inc/MPbk2ServicePhase.h Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/ServerApplication/inc/MPbk2ServicePhase.h Wed Oct 13 14:15:33 2010 +0300 @@ -68,18 +68,6 @@ const TDesC8& aContactLinkBuffer ) = 0; /** - * Notifies of delayed acception. - * - * Purpose: Sometimes client maybe deny the selected contact, - * the function is used to deliver the client's feedback to phonebook. - * - * @param aContactLinkBuffer Buffer containing denied - * contact links. - */ - virtual void DenyDelayedL( - const TDesC8& aContactLinkBuffer ) = 0; - - /** * Returns the results. * * @return Results. diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/ServerApplication/inc/MPbk2UiService.h --- a/phonebookui/Phonebook2/ServerApplication/inc/MPbk2UiService.h Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/ServerApplication/inc/MPbk2UiService.h Wed Oct 13 14:15:33 2010 +0300 @@ -68,18 +68,6 @@ const TDesC8& aContactLinkBuffer ) = 0; /** - * Deny the delayed contacts as part of - * the contact set used in the service. - * - * Purpose: Sometimes client maybe deny the selected contact, - * the function is used to deliver the client's feedback to phonebook. - * - * @param aContactLinkBuffer Denied contacts. - */ - virtual void DenyDelayedContactsL( - const TDesC8& aContactLinkBuffer) = 0; - - /** * Exits the service. * * @param aExitCommandId The id of the exit command. diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/ServerApplication/src/CPbk2AddressSelectPhase.cpp --- a/phonebookui/Phonebook2/ServerApplication/src/CPbk2AddressSelectPhase.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/ServerApplication/src/CPbk2AddressSelectPhase.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -25,8 +25,8 @@ #include #include #include -#include -#include +#include +#include #include // Virtual Phonebook @@ -206,16 +206,6 @@ } // -------------------------------------------------------------------------- -// CPbk2AddressSelectPhase::DenyDelayed -// -------------------------------------------------------------------------- -// -void CPbk2AddressSelectPhase::DenyDelayedL - ( const TDesC8& /*aContactLinkBuffer*/ ) - { - // Nothing to deny - } - -// -------------------------------------------------------------------------- // CPbk2AddressSelectPhase::Results // -------------------------------------------------------------------------- // diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/ServerApplication/src/CPbk2AssignAttributePhase.cpp --- a/phonebookui/Phonebook2/ServerApplication/src/CPbk2AssignAttributePhase.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/ServerApplication/src/CPbk2AssignAttributePhase.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -164,16 +164,6 @@ } // -------------------------------------------------------------------------- -// CPbk2AssignAttributePhase::DenyDelayed -// -------------------------------------------------------------------------- -// -void CPbk2AssignAttributePhase::DenyDelayedL - ( const TDesC8& /*aContactLinkBuffer*/ ) - { - // Nothing to do - } - -// -------------------------------------------------------------------------- // CPbk2AssignAttributePhase::Results // -------------------------------------------------------------------------- // diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/ServerApplication/src/CPbk2AssignCreateNewProperty.cpp --- a/phonebookui/Phonebook2/ServerApplication/src/CPbk2AssignCreateNewProperty.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/ServerApplication/src/CPbk2AssignCreateNewProperty.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -20,8 +20,8 @@ // Phonebook 2 #include "TPbk2AssignNoteService.h" -#include -#include +#include +#include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/ServerApplication/src/CPbk2AssignMultiProperty.cpp --- a/phonebookui/Phonebook2/ServerApplication/src/CPbk2AssignMultiProperty.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/ServerApplication/src/CPbk2AssignMultiProperty.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -21,7 +21,7 @@ // Phonebook 2 #include "CPbk2ServerAppAppUi.h" -#include +#include #include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/ServerApplication/src/CPbk2AssignSingleProperty.cpp --- a/phonebookui/Phonebook2/ServerApplication/src/CPbk2AssignSingleProperty.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/ServerApplication/src/CPbk2AssignSingleProperty.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -22,7 +22,7 @@ // Phonebook 2 #include "Pbk2AssignValidateField.h" #include "CPbk2ServerAppAppUi.h" -#include +#include #include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/ServerApplication/src/CPbk2AttributeAddressSelectPhase.cpp --- a/phonebookui/Phonebook2/ServerApplication/src/CPbk2AttributeAddressSelectPhase.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/ServerApplication/src/CPbk2AttributeAddressSelectPhase.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -25,7 +25,7 @@ #include #include #include -#include +#include #include // Virtual Phonebook @@ -37,7 +37,7 @@ #include #include #include -#include +#include #include // System includes @@ -199,16 +199,6 @@ } // -------------------------------------------------------------------------- -// CPbk2AttributeAddressSelectPhase::DenyDelayed -// -------------------------------------------------------------------------- -// -void CPbk2AttributeAddressSelectPhase::DenyDelayedL - ( const TDesC8& /*aContactLinkBuffer*/ ) - { - // Nothing to deny - } - -// -------------------------------------------------------------------------- // CPbk2AttributeAddressSelectPhase::Results // -------------------------------------------------------------------------- // diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/ServerApplication/src/CPbk2CommAddressSelectPhase.cpp --- a/phonebookui/Phonebook2/ServerApplication/src/CPbk2CommAddressSelectPhase.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/ServerApplication/src/CPbk2CommAddressSelectPhase.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -26,8 +26,8 @@ #include #include #include -#include -#include +#include +#include #include // Virtual Phonebook @@ -45,7 +45,7 @@ #include #include #include -#include +#include // System includes #include @@ -307,16 +307,6 @@ } // -------------------------------------------------------------------------- -// CPbk2CommAddressSelectPhase::DenyDelayed -// -------------------------------------------------------------------------- -// -void CPbk2CommAddressSelectPhase::DenyDelayedL - ( const TDesC8& /*aContactLinkBuffer*/ ) - { - // Nothing to deny - } - -// -------------------------------------------------------------------------- // CPbk2CommAddressSelectPhase::Results // -------------------------------------------------------------------------- // diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/ServerApplication/src/CPbk2ContactAttributeAssigner.cpp --- a/phonebookui/Phonebook2/ServerApplication/src/CPbk2ContactAttributeAssigner.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/ServerApplication/src/CPbk2ContactAttributeAssigner.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -31,7 +31,7 @@ #include "CPbk2AttributeAddressSelectPhase.h" #include "CPbk2PrepareAttributeAssignPhase.h" #include -#include +#include #include #include #include @@ -42,7 +42,7 @@ #include #include #include -#include +#include #include #include @@ -268,16 +268,6 @@ } // -------------------------------------------------------------------------- -// CPbk2ContactAttributeAssigner::DenyDelayedContactsL -// -------------------------------------------------------------------------- -// -void CPbk2ContactAttributeAssigner::DenyDelayedContactsL - ( const TDesC8& /*aContactLinkBuffer*/ ) - { - // Do nothing - } - -// -------------------------------------------------------------------------- // CPbk2ContactAttributeAssigner::ExitServiceL // -------------------------------------------------------------------------- // diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/ServerApplication/src/CPbk2ContactFetchPhase.cpp --- a/phonebookui/Phonebook2/ServerApplication/src/CPbk2ContactFetchPhase.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/ServerApplication/src/CPbk2ContactFetchPhase.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -186,19 +186,6 @@ } // -------------------------------------------------------------------------- -// CPbk2ContactFetchPhase::DenyDelayed -// -------------------------------------------------------------------------- -// -void CPbk2ContactFetchPhase::DenyDelayedL - ( const TDesC8& aContactLinkBuffer ) - { - if ( iFetchDlg ) - { - iFetchDlg->DenyDelayedFetchL( aContactLinkBuffer ); - } - } - -// -------------------------------------------------------------------------- // CPbk2ContactFetchPhase::Results // -------------------------------------------------------------------------- // diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/ServerApplication/src/CPbk2ContactImageAssigner.cpp --- a/phonebookui/Phonebook2/ServerApplication/src/CPbk2ContactImageAssigner.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/ServerApplication/src/CPbk2ContactImageAssigner.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -30,7 +30,7 @@ #include #include #include -#include +#include // System includes #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/ServerApplication/src/CPbk2ContactRingingToneAssigner.cpp --- a/phonebookui/Phonebook2/ServerApplication/src/CPbk2ContactRingingToneAssigner.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/ServerApplication/src/CPbk2ContactRingingToneAssigner.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -21,7 +21,7 @@ // Phonebook 2 #include "MPbk2ContactAssignerObserver.h" #include -#include +#include // Virtual Phonebook #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/ServerApplication/src/CPbk2EntryFetcher.cpp --- a/phonebookui/Phonebook2/ServerApplication/src/CPbk2EntryFetcher.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/ServerApplication/src/CPbk2EntryFetcher.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -190,22 +190,6 @@ } // -------------------------------------------------------------------------- -// CPbk2EntryFetcher::DenyDelayedContactsL -// -------------------------------------------------------------------------- -// -void CPbk2EntryFetcher::DenyDelayedContactsL - ( const TDesC8& aContactLinkBuffer ) - { - PBK2_DEBUG_PRINT( PBK2_DEBUG_STRING - ("CPbk2EntryFetcher::DenyDelayedContactsL()") ); - - if ( iFetchPhase ) - { - iFetchPhase->DenyDelayedL( aContactLinkBuffer ); - } - } - -// -------------------------------------------------------------------------- // CPbk2EntryFetcher::ExitServiceL // -------------------------------------------------------------------------- // diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/ServerApplication/src/CPbk2FetchService.cpp --- a/phonebookui/Phonebook2/ServerApplication/src/CPbk2FetchService.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/ServerApplication/src/CPbk2FetchService.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -276,23 +276,13 @@ TPckg acceptedPkg( accepted ); aMessage.ReadL( KAcceptServiceSlot, acceptedPkg ); - if ( iUiService ) + if ( iUiService && accepted ) { HBufC8* buffer = HBufC8::NewLC( aMessage.GetDesMaxLengthL( KSelectedContactSlot ) ); TPtr8 ptr = buffer->Des(); aMessage.ReadL( KSelectedContactSlot, ptr ); - - // If client accepts selected contact, call AcceptDelayedContacts - // Otherwise call DenyDelayedContactsL - if( accepted ) - { - iUiService->AcceptDelayedContactsL( *buffer ); - } - else - { - iUiService->DenyDelayedContactsL( *buffer ); - } + iUiService->AcceptDelayedContactsL( *buffer ); CleanupStack::PopAndDestroy(); // buffer } diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/ServerApplication/src/CPbk2ItemFetcher.cpp --- a/phonebookui/Phonebook2/ServerApplication/src/CPbk2ItemFetcher.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/ServerApplication/src/CPbk2ItemFetcher.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -27,7 +27,7 @@ #include "CPbk2ContactFetchPhase.h" #include "CPbk2AddressSelectPhase.h" #include -#include +#include #include #include #include @@ -409,31 +409,6 @@ iFetchPhase->AcceptDelayedL( aContactLinkBuffer ); } } -// -------------------------------------------------------------------------- -// CPbk2ItemFetcher::DenyDelayedContactsL -// -------------------------------------------------------------------------- -// -void CPbk2ItemFetcher::DenyDelayedContactsL - ( const TDesC8& aContactLinkBuffer ) - { - PBK2_DEBUG_PRINT( PBK2_DEBUG_STRING - ("CPbk2ItemFetcher::DenyDelayedContactsL()") ); - - if ( iAddressSelectPhase ) - { - iAddressSelectPhase->DenyDelayedL( aContactLinkBuffer ); - } - - if ( iCommAddressSelectPhase ) - { - iCommAddressSelectPhase->DenyDelayedL( aContactLinkBuffer ); - } - - if ( iFetchPhase ) - { - iFetchPhase->DenyDelayedL( aContactLinkBuffer ); - } - } // -------------------------------------------------------------------------- // CPbk2ItemFetcher::ExitServiceL diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/ServerApplication/src/CPbk2MultiAssignDataPhase.cpp --- a/phonebookui/Phonebook2/ServerApplication/src/CPbk2MultiAssignDataPhase.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/ServerApplication/src/CPbk2MultiAssignDataPhase.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -33,7 +33,7 @@ #include #include #include -#include +#include // Virtual Phonebook #include @@ -206,16 +206,6 @@ } // -------------------------------------------------------------------------- -// CPbk2MultiAssignDataPhase::DenyDelayed -// -------------------------------------------------------------------------- -// -void CPbk2MultiAssignDataPhase::DenyDelayedL - ( const TDesC8& /*aContactLinkBuffer*/ ) - { - // Nothing to do - } - -// -------------------------------------------------------------------------- // CPbk2MultiAssignDataPhase::Results // -------------------------------------------------------------------------- // diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/ServerApplication/src/CPbk2MultiContactDataAssigner.cpp --- a/phonebookui/Phonebook2/ServerApplication/src/CPbk2MultiContactDataAssigner.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/ServerApplication/src/CPbk2MultiContactDataAssigner.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -31,8 +31,8 @@ #include "MPbk2SelectFieldProperty.h" #include #include -#include -#include +#include +#include // Virtual Phonebook #include @@ -231,16 +231,6 @@ } // -------------------------------------------------------------------------- -// CPbk2MultiContactDataAssigner::AcceptDelayedContactsL -// -------------------------------------------------------------------------- -// -void CPbk2MultiContactDataAssigner::DenyDelayedContactsL - ( const TDesC8& /*aContactLinkBuffer*/ ) - { - // Do nothing - } - -// -------------------------------------------------------------------------- // CPbk2MultiContactDataAssigner::ExitServiceL // -------------------------------------------------------------------------- // diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/ServerApplication/src/CPbk2PrepareAttributeAssignPhase.cpp --- a/phonebookui/Phonebook2/ServerApplication/src/CPbk2PrepareAttributeAssignPhase.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/ServerApplication/src/CPbk2PrepareAttributeAssignPhase.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -24,7 +24,7 @@ #include "CPbk2KeyEventDealer.h" #include #include -#include +#include // Virtual Phonebook #include @@ -204,16 +204,6 @@ } // -------------------------------------------------------------------------- -// CPbk2PrepareAttributeAssignPhase::DenyDelayed -// -------------------------------------------------------------------------- -// -void CPbk2PrepareAttributeAssignPhase::DenyDelayedL - ( const TDesC8& /*aContactLinkBuffer*/ ) - { - // Nothing to do - } - -// -------------------------------------------------------------------------- // CPbk2PrepareAttributeAssignPhase::Results // -------------------------------------------------------------------------- // diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/ServerApplication/src/CPbk2PrepareSingleAssignPhase.cpp --- a/phonebookui/Phonebook2/ServerApplication/src/CPbk2PrepareSingleAssignPhase.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/ServerApplication/src/CPbk2PrepareSingleAssignPhase.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -28,7 +28,7 @@ #include "CPbk2KeyEventDealer.h" #include #include -#include +#include // Virtual Phonebook #include @@ -191,16 +191,6 @@ } // -------------------------------------------------------------------------- -// CPbk2PrepareSingleAssignPhase::DenyDelayed -// -------------------------------------------------------------------------- -// -void CPbk2PrepareSingleAssignPhase::DenyDelayedL - ( const TDesC8& /*aContactLinkBuffer*/ ) - { - // Nothing to do - } - -// -------------------------------------------------------------------------- // CPbk2PrepareSingleAssignPhase::Results // -------------------------------------------------------------------------- // diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/ServerApplication/src/CPbk2SelectCreateEmptyPropertyPhase.cpp --- a/phonebookui/Phonebook2/ServerApplication/src/CPbk2SelectCreateEmptyPropertyPhase.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/ServerApplication/src/CPbk2SelectCreateEmptyPropertyPhase.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -127,16 +127,6 @@ } // -------------------------------------------------------------------------- -// CPbk2SelectCreateEmptyPropertyPhase::DenyDelayed -// -------------------------------------------------------------------------- -// -void CPbk2SelectCreateEmptyPropertyPhase::DenyDelayedL - ( const TDesC8& /*aContactLinkBuffer*/ ) - { - // Nothing to do - } - -// -------------------------------------------------------------------------- // CPbk2SelectCreateEmptyPropertyPhase::Results // -------------------------------------------------------------------------- // diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/ServerApplication/src/CPbk2SelectCreateNewPropertyPhase.cpp --- a/phonebookui/Phonebook2/ServerApplication/src/CPbk2SelectCreateNewPropertyPhase.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/ServerApplication/src/CPbk2SelectCreateNewPropertyPhase.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -153,16 +153,6 @@ } // -------------------------------------------------------------------------- -// CPbk2SelectCreateNewPropertyPhase::DenyDelayed -// -------------------------------------------------------------------------- -// -void CPbk2SelectCreateNewPropertyPhase::DenyDelayedL - ( const TDesC8& /*aContactLinkBuffer*/ ) - { - // Nothing to do - } - -// -------------------------------------------------------------------------- // CPbk2SelectCreateNewPropertyPhase::Results // -------------------------------------------------------------------------- // diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/ServerApplication/src/CPbk2SelectMultiplePropertyPhase.cpp --- a/phonebookui/Phonebook2/ServerApplication/src/CPbk2SelectMultiplePropertyPhase.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/ServerApplication/src/CPbk2SelectMultiplePropertyPhase.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -180,16 +180,6 @@ } // -------------------------------------------------------------------------- -// CPbk2SelectMultiplePropertyPhase::DenyDelayed -// -------------------------------------------------------------------------- -// -void CPbk2SelectMultiplePropertyPhase::DenyDelayedL - ( const TDesC8& /*aContactLinkBuffer*/ ) - { - // Nothing to do - } - -// -------------------------------------------------------------------------- // CPbk2SelectMultiplePropertyPhase::Results // -------------------------------------------------------------------------- // diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/ServerApplication/src/CPbk2SelectSinglePropertyPhase.cpp --- a/phonebookui/Phonebook2/ServerApplication/src/CPbk2SelectSinglePropertyPhase.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/ServerApplication/src/CPbk2SelectSinglePropertyPhase.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -182,16 +182,6 @@ } // -------------------------------------------------------------------------- -// CPbk2SelectSinglePropertyPhase::DenyDelayed -// -------------------------------------------------------------------------- -// -void CPbk2SelectSinglePropertyPhase::DenyDelayedL - ( const TDesC8& /*aContactLinkBuffer*/ ) - { - // Nothing to do - } - -// -------------------------------------------------------------------------- // CPbk2SelectSinglePropertyPhase::Results // -------------------------------------------------------------------------- // diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/ServerApplication/src/CPbk2SelectUpdateEmptyPropertyPhase.cpp --- a/phonebookui/Phonebook2/ServerApplication/src/CPbk2SelectUpdateEmptyPropertyPhase.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/ServerApplication/src/CPbk2SelectUpdateEmptyPropertyPhase.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -162,16 +162,6 @@ } // -------------------------------------------------------------------------- -// CPbk2SelectUpdateEmptyPropertyPhase::DenyDelayed -// -------------------------------------------------------------------------- -// -void CPbk2SelectUpdateEmptyPropertyPhase::DenyDelayedL - ( const TDesC8& /*aContactLinkBuffer*/ ) - { - // Nothing to do - } - -// -------------------------------------------------------------------------- // CPbk2SelectUpdateEmptyPropertyPhase::Results // -------------------------------------------------------------------------- // diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/ServerApplication/src/CPbk2ServerAppMonitor.cpp --- a/phonebookui/Phonebook2/ServerApplication/src/CPbk2ServerAppMonitor.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/ServerApplication/src/CPbk2ServerAppMonitor.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -28,8 +28,8 @@ #include #include #include -#include -#include +#include +#include // Virtual Phonebook #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/ServerApplication/src/CPbk2ServerAppStoreManager.cpp --- a/phonebookui/Phonebook2/ServerApplication/src/CPbk2ServerAppStoreManager.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/ServerApplication/src/CPbk2ServerAppStoreManager.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -219,8 +219,6 @@ ( aStoreUris, *this, *sortOrder, aViewFilter, aFlags ); - iGroupView = result; - CleanupStack::Pop(); // result } @@ -348,13 +346,10 @@ // -------------------------------------------------------------------------- // void CPbk2ServerAppStoreManager::ContactAddedToView - ( MVPbkContactViewBase& aView, TInt /*aIndex*/, + ( MVPbkContactViewBase& /*aView*/, TInt /*aIndex*/, const MVPbkContactLink& /*aContactLink*/ ) { - if ( iGroupView && aView.Type() == EVPbkContactsView ) - { - iGroupView->RefreshL(); - } + // Do nothing } // -------------------------------------------------------------------------- @@ -362,13 +357,10 @@ // -------------------------------------------------------------------------- // void CPbk2ServerAppStoreManager::ContactRemovedFromView - ( MVPbkContactViewBase& aView, TInt /*aIndex*/, + ( MVPbkContactViewBase& /*aView*/, TInt /*aIndex*/, const MVPbkContactLink& /*aContactLink*/ ) { - if ( iGroupView && aView.Type() == EVPbkContactsView ) - { - iGroupView->RefreshL(); - } + // Do nothing } // -------------------------------------------------------------------------- diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/ServerApplication/src/CPbk2SingleAssignDataPhase.cpp --- a/phonebookui/Phonebook2/ServerApplication/src/CPbk2SingleAssignDataPhase.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/ServerApplication/src/CPbk2SingleAssignDataPhase.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -31,8 +31,8 @@ #include #include #include -#include -#include +#include +#include // Virtual Phonebook #include @@ -174,16 +174,6 @@ } // -------------------------------------------------------------------------- -// CPbk2SingleAssignDataPhase::DenyDelayed -// -------------------------------------------------------------------------- -// -void CPbk2SingleAssignDataPhase::DenyDelayedL - ( const TDesC8& /*aContactLinkBuffer*/ ) - { - // Nothing to do - } - -// -------------------------------------------------------------------------- // CPbk2SingleAssignDataPhase::Results // -------------------------------------------------------------------------- // diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/ServerApplication/src/CPbk2SingleContactDataAssigner.cpp --- a/phonebookui/Phonebook2/ServerApplication/src/CPbk2SingleContactDataAssigner.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/ServerApplication/src/CPbk2SingleContactDataAssigner.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -30,8 +30,8 @@ #include "CPbk2SelectCreateNewPropertyPhase.h" #include "CPbk2PrepareSingleAssignPhase.h" #include "MPbk2SelectFieldProperty.h" -#include -#include +#include +#include #include #include #include @@ -236,16 +236,6 @@ } // -------------------------------------------------------------------------- -// CPbk2SingleContactDataAssigner::DenyDelayedContactsL -// -------------------------------------------------------------------------- -// -void CPbk2SingleContactDataAssigner::DenyDelayedContactsL - ( const TDesC8& /*aContactLinkBuffer*/ ) - { - // Do nothing - } - -// -------------------------------------------------------------------------- // CPbk2SingleContactDataAssigner::ExitServiceL // -------------------------------------------------------------------------- // diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/ServerApplication/src/Pbk2AssignValidateField.cpp --- a/phonebookui/Phonebook2/ServerApplication/src/Pbk2AssignValidateField.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/ServerApplication/src/Pbk2AssignValidateField.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -27,7 +27,7 @@ #include #include #include -#include +#include /// Unnamed namespace for local definitions diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/ServerApplication/src/TPbk2AssignNoteService.cpp --- a/phonebookui/Phonebook2/ServerApplication/src/TPbk2AssignNoteService.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/ServerApplication/src/TPbk2AssignNoteService.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -22,9 +22,9 @@ #include #include #include -#include -#include -#include +#include +#include +#include // Virtual Phonebook #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/ServerApplication/src/TPbk2ServerMessageDataRetriever.cpp --- a/phonebookui/Phonebook2/ServerApplication/src/TPbk2ServerMessageDataRetriever.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/ServerApplication/src/TPbk2ServerMessageDataRetriever.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -24,7 +24,7 @@ #include #include #include -#include +#include // Virtual Phonebook #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/ServerApplication/src/TPbk2TitlePaneOperator.cpp --- a/phonebookui/Phonebook2/ServerApplication/src/TPbk2TitlePaneOperator.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/ServerApplication/src/TPbk2TitlePaneOperator.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -20,7 +20,7 @@ // Phonebook 2 #include -#include +#include // Virtual Phonebook diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/ServerApplication/src/cpbk2preparemultipleassignphase.cpp --- a/phonebookui/Phonebook2/ServerApplication/src/cpbk2preparemultipleassignphase.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/ServerApplication/src/cpbk2preparemultipleassignphase.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -29,7 +29,7 @@ #include #include #include -#include +#include // Virtual Phonebook #include @@ -212,16 +212,6 @@ } // -------------------------------------------------------------------------- -// CPbk2PrepareMultipleAssignPhase::DenyDelayed -// -------------------------------------------------------------------------- -// -void CPbk2PrepareMultipleAssignPhase::DenyDelayedL - ( const TDesC8& /*aContactLinkBuffer*/ ) - { - // Nothing to do - } - -// -------------------------------------------------------------------------- // CPbk2PrepareMultipleAssignPhase::Results // -------------------------------------------------------------------------- // diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/UIControls/inc/CPbk2AdaptiveSearchGridFiller.h --- a/phonebookui/Phonebook2/UIControls/inc/CPbk2AdaptiveSearchGridFiller.h Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/UIControls/inc/CPbk2AdaptiveSearchGridFiller.h Wed Oct 13 14:15:33 2010 +0300 @@ -140,9 +140,6 @@ TBool GridFromPsEngineL( const MVPbkContactViewBase& aView ); // Check whether the title is empty or not. TBool IsActualTitleEmpty( const MVPbkViewContact& aContact ); - // Sort the Adaptive Search Grid. - void SortGridL( TBool aAddSpace ); - private: // Data /// Own: Containts adaptive search grid. @@ -183,10 +180,7 @@ /// Used to save the contacts' title which include drgraphs RPointerArray iDigraphContactsTitleArray; - - /// Used to get the status of feature manager - TBool iFeatureManagerInitialized; - + /// Own: Number of contacts in view TInt iViewItemCount; diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/UIControls/inc/CPbk2ContactEditorDlgImpl.h --- a/phonebookui/Phonebook2/UIControls/inc/CPbk2ContactEditorDlgImpl.h Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/UIControls/inc/CPbk2ContactEditorDlgImpl.h Wed Oct 13 14:15:33 2010 +0300 @@ -354,7 +354,7 @@ void ClearControls(); TBool ContactHasAddress(TPbk2FieldGroupId aAddressGroup); void AddGroupFieldsL(TPbk2FieldGroupId aGroupId); - TBool AreAllFieldsEmptyL(); + TBool AreAllFieldsEmpty(); TBool IsUIDataChanged(); TBool IsAddressValidated(TPbk2FieldGroupId aGroupId); void DeleteActiveAddressGeoCoords(); @@ -373,8 +373,6 @@ TEventCode aType ); void RestorePrevNaviDecoratorL(); void RestoreStatusPaneL(); - static TInt DelayDlgDeleteCallBack( TAny* aCallBack ); - void DelayDlgDelete(); private: // Data structures @@ -465,24 +463,15 @@ HBufC* iTitleText; /// Own: Converts text between Unicode and SMS 7-bit CCnvCharacterSetConverter* iConverter; + /// Ref: A pointer to stack variable in CloseDialog() for knowing + /// if the destructor has already been called + TBool* iDestroyedPtr; /// Ref: Holds the TopMost NaviDecorator before pushing /// the empty one on to the top. /// Doesnt Own. CAknNavigationDecorator* iPrevNaviDecorator; TInt iCurrentstatuspane; - /// Own: For asynchronously delete editordlg. - CIdle* iDelayDelete; - // Own: Exit app ui after deleting the dialog - TBool iExitApp; - // Own: Whether the partial input screen is Opened - TBool iIsInputPaneOpen; - /// Ref: A pointer to stack variable in CloseDialog() for knowing - /// if the destructor has already been called - TBool* iDestroyedPtrForCloseDlg; - /// Ref: A pointer to stack variable in AddItemToContactL() for knowing - /// if the destructor has already been called - TBool* iDestroyedPtrForAddItem; }; #endif // CPBK2CONTACTEDITORDLGIMPL_H diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/UIControls/inc/CPbk2ContactViewListBox.h --- a/phonebookui/Phonebook2/UIControls/inc/CPbk2ContactViewListBox.h Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/UIControls/inc/CPbk2ContactViewListBox.h Wed Oct 13 14:15:33 2010 +0300 @@ -178,24 +178,6 @@ void HandlePopupCharacter( CWindowGc* aGc, const TRect& aRectOfListBoxItem ) const; - /** - * Set the state of the Marking mode - */ - inline void SetMarkingModeState( TBool aActived ) - { - iMarkingModeOn = aActived; - } - - /** - * Reset the value of iShowPopupChar, i.e. set its value to EFalse. - * As for iShowPopupChar, ETrue indicates showing the scrollbar popup char; - * EFalse indicates the opposite. - */ - inline void ResetShowPopupChar() - { - iShowPopupChar = EFalse; - } - public: // From MPbk2ClipListBoxText TBool ClipFromBeginning( TDes& aBuffer, @@ -244,9 +226,6 @@ TBool IsContact( TInt aIndex ) const; - private: - void RecalcWidthInMarkingMode( TInt& aWidth, const CFont& aFont, TChar aChar ); - private: // Data structures /// Data loaded from resources struct TResourceData @@ -287,8 +266,6 @@ CPbk2PredictiveSearchFilter &iSearchFilter; // ref: used fro checking command item count CCoeControl& iContainer; - // Flag to indicate whether Marking mode is active - TBool iMarkingModeOn; }; diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/UIControls/inc/CPbk2FetchResults.h --- a/phonebookui/Phonebook2/UIControls/inc/CPbk2FetchResults.h Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/UIControls/inc/CPbk2FetchResults.h Wed Oct 13 14:15:33 2010 +0300 @@ -35,7 +35,6 @@ class MPbk2FetchDlgPages; class MPbk2FetchDlgObserver; class MPbk2FetchResultsObserver; -class CAknInputBlock; // CLASS DECLARATION @@ -89,15 +88,7 @@ */ void AppendDelayedL( const MVPbkContactLink& aLink ); - - /** - * Deny to Append a delayed contact link to selection. - * - * @param aLink The link to deny append. - */ - void DenyAppendDelayedL( - const MVPbkContactLink& aLink ); - + /** * Appends a contact link to fetch results. * @@ -119,10 +110,6 @@ */ void ResetAndDestroy(); - /** - * Wait operations to complete - */ - void WaitOperationsCompleteL(); public: // From MVPbkContactLinkArray TInt Count() const; const MVPbkContactLink& At( @@ -246,12 +233,6 @@ CArrayFixFlat* iOperationQueue; /// Own: Contact retrieve operation MVPbkContactOperationBase* iRetrieveOperation; - /// Own: Is it waiting the acceptance, initialized to EFalse - TBool iWaitingForDelayedAppend; - /// Own: Wait until finish contact store operation - CActiveSchedulerWait* iWaitForAllOperationComplete; - /// Own: User input blocker - CAknInputBlock* iInputBlock; }; #endif // CPBK2FETCHRESULTS_H diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/UIControls/inc/CPbk2NamesListEmptyState.h --- a/phonebookui/Phonebook2/UIControls/inc/CPbk2NamesListEmptyState.h Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/UIControls/inc/CPbk2NamesListEmptyState.h Wed Oct 13 14:15:33 2010 +0300 @@ -187,8 +187,7 @@ TInt CalculateListboxIndex(TInt aCommandIndex) const; void UnsubscribeCmdItemsVisibility() const; void SubscribeCmdItemsVisibility(); - void HandleListboxEventL(TInt aEvent, TInt aListboxIndex, TBool aMantainFocus); - TInt EnabledCommandCount() const; + void HandleListboxEventL(TInt aEvent, TInt aListboxIndex, TBool aMantainFocus); private: // Data /// Ref: Parent coecontrol diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/UIControls/inc/CPbk2NamesListFilteredState.h --- a/phonebookui/Phonebook2/UIControls/inc/CPbk2NamesListFilteredState.h Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/UIControls/inc/CPbk2NamesListFilteredState.h Wed Oct 13 14:15:33 2010 +0300 @@ -208,8 +208,7 @@ TInt CalculateListboxIndex(TInt aCommandIndex) const; void UnsubscribeCmdItemsVisibility() const; void SubscribeCmdItemsVisibility(); - void HandleListboxEventL(TInt aEvent, TInt aListboxIndex, TBool aMantainFocus); - TInt EnabledCommandCount() const; + void HandleListboxEventL(TInt aEvent, TInt aListboxIndex, TBool aMantainFocus); private: // Data /// Ref: Parent coecontrol diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/UIControls/inc/CPbk2SettingsListState.h --- a/phonebookui/Phonebook2/UIControls/inc/CPbk2SettingsListState.h Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/UIControls/inc/CPbk2SettingsListState.h Wed Oct 13 14:15:33 2010 +0300 @@ -55,13 +55,6 @@ * @return Selection item list. */ CSelectionItemList& SelectionItemList(); - - /** - * Returns a copy of selection item list. - * - * @return old item list state. - */ - CSelectionItemList& ItemListState(); /** * Returns supported store configuration. diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/UIControls/inc/cpbk2contactviewcustomlistboxdata.h --- a/phonebookui/Phonebook2/UIControls/inc/cpbk2contactviewcustomlistboxdata.h Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/UIControls/inc/cpbk2contactviewcustomlistboxdata.h Wed Oct 13 14:15:33 2010 +0300 @@ -102,8 +102,8 @@ */ TRgb iHighlightedBack; }; - -public: +//Start of Code Added for PhoneBook2 +public: //Function below are added to suit PhoneBook2 Requirements /** * Set internal data model to work with special PCS data @@ -148,11 +148,12 @@ */ void SetListCommands( const RPointerArray* aCommands ); +private: TBool IsContactAtListboxIndex( TInt aListboxIndex ) const; - -private: TInt CommandItemCount() const; +//End of Code Added for PhoneBook2 + public: /** diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/UIControls/inc/cpbk2contactviewcustomlistboxitemdrawer.h --- a/phonebookui/Phonebook2/UIControls/inc/cpbk2contactviewcustomlistboxitemdrawer.h Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/UIControls/inc/cpbk2contactviewcustomlistboxitemdrawer.h Wed Oct 13 14:15:33 2010 +0300 @@ -200,7 +200,17 @@ protected: +#ifndef RD_TOUCH2 + /** + * Draw the item background. + * + * Internal member, not intended for use. + * + * @param aRect Drawing area. + */ + void DrawCurrentItemRect(const TRect& aRect) const; +#endif /** * Array of properties. diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/UIControls/rss/Pbk2AddressSelect.rss --- a/phonebookui/Phonebook2/UIControls/rss/Pbk2AddressSelect.rss Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/UIControls/rss/Pbk2AddressSelect.rss Wed Oct 13 14:15:33 2010 +0300 @@ -17,7 +17,7 @@ #include "Pbk2AddressSelect.rh" -#include +#include // -------------------------------------------------------------------------- // Phone number select diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/UIControls/rss/Pbk2IconResources.rss --- a/phonebookui/Phonebook2/UIControls/rss/Pbk2IconResources.rss Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/UIControls/rss/Pbk2IconResources.rss Wed Oct 13 14:15:33 2010 +0300 @@ -208,11 +208,6 @@ { ownerUid = KPbk2UID3; id = EPbk2qgn_prop_blid_waypoint; - }, - PHONEBOOK2_ICON_ID - { - ownerUid = KPbk2UID3; - id = EPbk2qgn_prop_phonebook2_unsync; } }; } diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/UIControls/rss/Pbk2Settings.rss --- a/phonebookui/Phonebook2/UIControls/rss/Pbk2Settings.rss Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/UIControls/rss/Pbk2Settings.rss Wed Oct 13 14:15:33 2010 +0300 @@ -16,7 +16,7 @@ */ -#include +#include // -------------------------------------------------------------------------- diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/UIControls/src/CPbk2AdaptiveSearchGridFiller.cpp --- a/phonebookui/Phonebook2/UIControls/src/CPbk2AdaptiveSearchGridFiller.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/UIControls/src/CPbk2AdaptiveSearchGridFiller.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -124,12 +124,6 @@ delete iSearchString; delete iFindUtil; iDigraphContactsTitleArray.ResetAndDestroy(); - - if (iFeatureManagerInitialized) - { - // It can be safely called UnInitializeLib as it has been really intialized. - FeatureManager::UnInitializeLib(); // Decreases ref.count - } } @@ -156,10 +150,6 @@ { iKeyMap = HBufC::NewL( KAdaptiveSearchKeyMapGranularity ); iFindUtil = CFindUtil::NewL(); - - // Initialize feature manager - FeatureManager::InitializeLibL(); - iFeatureManagerInitialized = ETrue; // UI Language TLanguage uiLanguage = User::Language(); if ( uiLanguage != ELangJapanese && uiLanguage != ELangPrcChinese && @@ -424,16 +414,40 @@ void CPbk2AdaptiveSearchGridFiller::SetAdaptiveGridCharsL( const TInt aMaxSpacesNumber, const TInt aSearchStringSpacesNumber ) - { + { + TPtr ptr = iKeyMap->Des(); + + // Do upper case for all characters + ptr.UpperCase(); + CDesCArray* array = new (ELeave) CDesCArrayFlat( KAdaptiveSearchKeyMapGranularity ); + CleanupStack::PushL( array ); + TInt length = ptr.Length(); + + for( TInt ii = 0; ii < length; ii++ ) + { + array->AppendL( ptr.Mid( ii, 1 ) ); + } + + // Alphabetical sort + array->Sort( ECmpCollated ); + ptr.Zero(); + // Add space character only if: // - user typed already some characters in the find pane, // - and more spaces can be found in contacts than in the current search string, // - and space is not the last character in the search string. - TBool addSpace = ( iSearchString->Length() > 0 - && aMaxSpacesNumber > aSearchStringSpacesNumber - && (*iSearchString)[iSearchString->Length() - 1] != TChar( ' ' ) ); - - SortGridL( addSpace ); + if ( iSearchString->Length() > 0 + && aMaxSpacesNumber > aSearchStringSpacesNumber + && (*iSearchString)[iSearchString->Length() - 1] != TChar( ' ' ) ) + { + ptr.Append( TChar( ' ' ) ); + } + + for( TInt ii = 0; ii < length; ii++ ) + { + ptr.Append(array->MdcaPoint( ii )); + } + CleanupStack::PopAndDestroy();//array if( iCurrentGrid ) { @@ -465,36 +479,6 @@ } -void CPbk2AdaptiveSearchGridFiller::SortGridL( TBool aAddSpace ) - { - TPtr ptr = iKeyMap->Des(); - - // Do upper case for all characters - ptr.UpperCase(); - CDesCArray* array = new (ELeave) CDesCArrayFlat( KAdaptiveSearchKeyMapGranularity ); - CleanupStack::PushL( array ); - TInt length = ptr.Length(); - - for( TInt ii = 0; ii < length; ii++ ) - { - array->AppendL( ptr.Mid( ii, 1 ) ); - } - - // Alphabetical sort - array->Sort( ECmpCollated ); - ptr.Zero(); - - if ( aAddSpace ) - { - ptr.Append( TChar( ' ' ) ); - } - - for( TInt ii = 0; ii < length; ii++ ) - { - ptr.Append( array->MdcaPoint( ii ) ); - } - CleanupStack::PopAndDestroy();//array - } CDesC16Array* CPbk2AdaptiveSearchGridFiller::SplitContactFieldTextIntoArrayLC( const TDesC& aText ) @@ -528,23 +512,7 @@ // Scan for next word beg = end; } - - // consonent based adaptive search: - if ( FeatureManager::FeatureSupported( KFeatureIdKorean ) ) - { - /* - When user has a contact with first name "??" and last name "?", - It should be displayed with "? ??" in Korea variant. - That means it should be found with search keyword, "?" or "??". - Thus, need to put the "? ??" in the item list which is delivered to FindUtil. - no need to care about just one word like "???" - */ - if ( array->MdcaCount() != 1 ) - { - array->AppendL( aText ); - } - } - + return array; } @@ -781,8 +749,6 @@ iKeyMap = iKeyMap->ReAllocL( gridChars.Length() ); } iKeyMap->Des().Copy( gridChars ); - // Sort the grid, space is not needed - SortGridL( EFalse ); delete iCurrentGrid; iCurrentGrid = NULL; diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/UIControls/src/CPbk2AddItemToContactDlg.cpp --- a/phonebookui/Phonebook2/UIControls/src/CPbk2AddItemToContactDlg.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/UIControls/src/CPbk2AddItemToContactDlg.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -21,7 +21,7 @@ // Phonebook 2 #include #include -#include +#include #include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/UIControls/src/CPbk2AddressSelect.cpp --- a/phonebookui/Phonebook2/UIControls/src/CPbk2AddressSelect.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/UIControls/src/CPbk2AddressSelect.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -28,8 +28,8 @@ #include #include #include -#include -#include +#include +#include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/UIControls/src/CPbk2ContactEditorDTMFField.cpp --- a/phonebookui/Phonebook2/UIControls/src/CPbk2ContactEditorDTMFField.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/UIControls/src/CPbk2ContactEditorDTMFField.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -124,10 +124,6 @@ iControl->CreateTextViewL(); iCaptionedCtrl = iUiBuilder.LineControl(ControlId()); iCaptionedCtrl->SetTakesEnterKey(ETrue); - - // Enable partial screen input - TInt flags = iControl->AknEditorFlags(); - iControl->SetAknEditorFlags(flags | EAknEditorFlagEnablePartialScreen); } // -------------------------------------------------------------------------- diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/UIControls/src/CPbk2ContactEditorDateField.cpp --- a/phonebookui/Phonebook2/UIControls/src/CPbk2ContactEditorDateField.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/UIControls/src/CPbk2ContactEditorDateField.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -23,7 +23,7 @@ #include "MPbk2ContactEditorFieldVisitor.h" #include #include -#include +#include // Virtual Phonebook #include @@ -98,8 +98,6 @@ } iControl->ConstructL( minimumDate, maximumDate, time, EFalse ); - // Enable partial screen input - iControl->SetFeature(CEikMfne::EPartialScreenInput, ETrue); iUiBuilder.LoadBitmapToFieldL ( iContactField.FieldProperty(), iIconInfoContainer, ControlId() ); diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/UIControls/src/CPbk2ContactEditorDlgImpl.cpp --- a/phonebookui/Phonebook2/UIControls/src/CPbk2ContactEditorDlgImpl.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/UIControls/src/CPbk2ContactEditorDlgImpl.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -36,7 +36,7 @@ #include #include #include -#include +#include #include #include #include @@ -70,7 +70,6 @@ #include #include #include -#include // Virtual Phonebook #include @@ -82,7 +81,7 @@ #include #include -#include +#include #include #include @@ -97,7 +96,6 @@ #include #include #include -#include /// Unnamed namespace for local definitions namespace { @@ -177,9 +175,7 @@ iEndKeyWasPressed( EFalse ), iAddressViewStandalone( EFalse ), iAppServices( aAppServices ), - iTitleText( aTitleText ), - iExitApp( EFalse ), - iIsInputPaneOpen( EFalse ) + iTitleText( aTitleText ) { // Exit is approved by default iExitRecord.Set( EExitApproved ); @@ -205,26 +201,20 @@ *iSelfPtr = NULL; } // Make the variable in CloseDialog() to ETrue. - if ( iDestroyedPtrForCloseDlg ) + if ( iDestroyedPtr ) { - *iDestroyedPtrForCloseDlg = ETrue; - } - - // Make the variable in AddItemToContactL() to ETrue. - if ( iDestroyedPtrForAddItem ) - { - *iDestroyedPtrForAddItem = ETrue; + *iDestroyedPtr = ETrue; } if( iAppServices ) - { - iAppServices->StoreObservationRegister().DeregisterStoreEvents( *this ); - } + { + iAppServices->StoreObservationRegister().DeregisterStoreEvents( *this ); + } else - { - Phonebook2::Pbk2AppUi()->ApplicationServices(). - StoreObservationRegister().DeregisterStoreEvents( *this ); - } + { + Phonebook2::Pbk2AppUi()->ApplicationServices(). + StoreObservationRegister().DeregisterStoreEvents( *this ); + } if ( iEikonEnv && iContextMenuBar ) { @@ -238,7 +228,7 @@ if (iNaviContainer) { iNaviContainer->Pop(); - TRAP_IGNORE(RestorePrevNaviDecoratorL()); + TRAP_IGNORE(RestorePrevNaviDecoratorL()); } delete iStoreContact; @@ -247,20 +237,12 @@ delete iEditorExtension; delete iUiFieldArray; Release(iExtensionManager); - delete iTitleText; + delete iTitleText; iTitleText = NULL; delete iStoredTitlePaneText; iStoredTitlePaneText = NULL; delete iConverter; - delete iDelayDelete; - - // The if-expression is used here to Exit Phonebook2 for the case - // that Exit phonebook2 with the EditorDlg opened. - if ( iExitApp ) - { - TRAP_IGNORE( ((CAknViewAppUi*)CEikonEnv::Static()->EikAppUi())->ProcessCommandL( EAknCmdExit ) ); - } } // -------------------------------------------------------------------------- @@ -274,7 +256,7 @@ MPbk2EditedContactObserver& aContactObserver, MPbk2ContactEditorStrategy& aEditorStrategy, MPbk2ContactEditorContactRelocator& aRelocator) - { + { CPbk2ContactEditorDlgImpl* self = new ( ELeave ) CPbk2ContactEditorDlgImpl(aParams, aContact, aFieldProperties, aContactObserver, @@ -290,24 +272,24 @@ // -------------------------------------------------------------------------- // CPbk2ContactEditorDlgImpl* CPbk2ContactEditorDlgImpl::NewL( - TPbk2ContactEditorParams& aParams, - CPbk2PresentationContact& aContact, - CPbk2FieldPropertyArray& aFieldProperties, - MPbk2EditedContactObserver& aContactObserver, - MPbk2ContactEditorStrategy& aEditorStrategy, - MPbk2ContactEditorContactRelocator& aRelocator, - MPbk2ApplicationServices* aAppServices, - HBufC* aTitleText ) - { - CPbk2ContactEditorDlgImpl* self = - new ( ELeave ) CPbk2ContactEditorDlgImpl(aParams, aContact, - aFieldProperties, aContactObserver, - aEditorStrategy, aRelocator, aAppServices, aTitleText ); - CleanupStack::PushL(self); - self->ConstructL(); - CleanupStack::Pop(self); - return self; - } + TPbk2ContactEditorParams& aParams, + CPbk2PresentationContact& aContact, + CPbk2FieldPropertyArray& aFieldProperties, + MPbk2EditedContactObserver& aContactObserver, + MPbk2ContactEditorStrategy& aEditorStrategy, + MPbk2ContactEditorContactRelocator& aRelocator, + MPbk2ApplicationServices* aAppServices, + HBufC* aTitleText ) + { + CPbk2ContactEditorDlgImpl* self = + new ( ELeave ) CPbk2ContactEditorDlgImpl(aParams, aContact, + aFieldProperties, aContactObserver, + aEditorStrategy, aRelocator, aAppServices, aTitleText ); + CleanupStack::PushL(self); + self->ConstructL(); + CleanupStack::Pop(self); + return self; + } // -------------------------------------------------------------------------- // CPbk2ContactEditorDlgImpl::ConstructL @@ -353,20 +335,20 @@ // iContact's store becomes unavailable. /* - * Use iAppServices if provided. This is to enable editor use outside from pbk2 context - */ + * Use iAppServices if provided. This is to enable editor use outside from pbk2 context + */ if( iAppServices ) - { - iAppServices->StoreObservationRegister().RegisterStoreEventsL( *this ); - iNameFormatter = &iAppServices->NameFormatter(); - } + { + iAppServices->StoreObservationRegister().RegisterStoreEventsL( *this ); + iNameFormatter = &iAppServices->NameFormatter(); + } else - { - Phonebook2::Pbk2AppUi()->ApplicationServices(). - StoreObservationRegister().RegisterStoreEventsL( *this ); - iNameFormatter = - &Phonebook2::Pbk2AppUi()->ApplicationServices().NameFormatter(); - } + { + Phonebook2::Pbk2AppUi()->ApplicationServices(). + StoreObservationRegister().RegisterStoreEventsL( *this ); + iNameFormatter = + &Phonebook2::Pbk2AppUi()->ApplicationServices().NameFormatter(); + } StoreTitlePaneTextL(); @@ -375,24 +357,24 @@ iExtensionManager = CPbk2UIExtensionManager::InstanceL(); /* - * Use iAppServices if provided. This is to enable editor use outside from pbk2 context - */ + * Use iAppServices if provided. This is to enable editor use outside from pbk2 context + */ CVPbkContactManager* manager = NULL; if( iAppServices ) - { - manager = &iAppServices->ContactManager(); - } + { + manager = &iAppServices->ContactManager(); + } else - { - manager = &Phonebook2::Pbk2AppUi()->ApplicationServices().ContactManager(); - } + { + manager = &Phonebook2::Pbk2AppUi()->ApplicationServices().ContactManager(); + } iEditorExtension = iExtensionManager->FactoryL()-> CreatePbk2ContactEditorExtensionL( *manager, iContact, *this ); iFieldFactory = CPbk2ContactEditorFieldFactory::NewL(*this, *iEditorExtension); iUiFieldArray = CPbk2ContactEditorFieldArray::NewL( - *manager, iContact, *this, *iFieldFactory, iAppServices ); + *manager, iContact, *this, *iFieldFactory, iAppServices ); iUseState = EUseReady; } @@ -512,64 +494,19 @@ // void CPbk2ContactEditorDlgImpl::HandleResourceChange( TInt aType ) { - switch ( aType ) + // Handle change in layout orientation + if ( aType == KEikDynamicLayoutVariantSwitch ) { - case KEikDynamicLayoutVariantSwitch: // Handle change in layout orientation + // Set status pane layout to the Phonebook 2 one + CEikStatusPane* statusPane = iAvkonAppUi->StatusPane(); + if ( statusPane ) { - // Set status pane layout to the Phonebook 2 one - CEikStatusPane* statusPane = iAvkonAppUi->StatusPane(); - if ( statusPane ) + iCurrentstatuspane = statusPane->CurrentLayoutResId(); + if( iCurrentstatuspane != R_AVKON_STATUS_PANE_LAYOUT_USUAL ) { - iCurrentstatuspane = statusPane->CurrentLayoutResId(); - if( iCurrentstatuspane != R_AVKON_STATUS_PANE_LAYOUT_USUAL ) - { - TRAP_IGNORE( - statusPane->SwitchLayoutL( - R_AVKON_STATUS_PANE_LAYOUT_USUAL ) - ); - } + TRAP_IGNORE( statusPane->SwitchLayoutL(R_AVKON_STATUS_PANE_LAYOUT_USUAL) ); } } - break; - case KAknSplitInputEnabled: // Handle split input keyboard - { - // Sometimes this function will be called continuously - // with the same parameter. - // Add a flag iIsInputPaneOpen to ensure the dialog - // only draw one time. - if( !iIsInputPaneOpen ) - { - Layout(); - DrawNow(); - iIsInputPaneOpen = ETrue; - } - } - break; - case KAknSplitInputDisabled: - { - // Sometimes this function will be called continuously - // with the same parameter. - // Add a flag iIsInputPaneOpen to ensure the dialog - // only draw one time. - if( iIsInputPaneOpen ) - { - // Set status pane layout to the Phonebook 2 one - Layout(); - DrawNow(); - CEikStatusPane* statusPane = iAvkonAppUi->StatusPane(); - if ( statusPane ) - { - TRAP_IGNORE( - statusPane->SwitchLayoutL( - R_AVKON_STATUS_PANE_LAYOUT_USUAL ) - ); - } - iIsInputPaneOpen = EFalse; - } - } - break; - default: - break; } CAknForm::HandleResourceChange( aType ); @@ -584,9 +521,6 @@ const TDesC& aFieldTypeXspName, TBool aSetFocus ) { - // For knowing whether the destructor has been called - TBool destroyed = EFalse; - iDestroyedPtrForAddItem = &destroyed; // Store the original parameter value, since it is // changed by AddFieldsL TInt origParam = aFieldTypeResourceId; @@ -597,77 +531,70 @@ CleanupStack::PushL(addItemManager); CPbk2AddItemManager::TReturnValue ret = addItemManager->AddFieldsL( aFieldTypeResourceId, xSpName); - - // In case that pop list for adding item is closed by FSW, this object - // will be destructed by CPbk2ContactEditorOperator::ForceExit(). - // If this object is destructed, don't execute the following anymore. - if ( !destroyed ) + + if (ret.iControlId == KErrAlreadyExists) { - if (ret.iControlId == KErrAlreadyExists) + // cannot add more than one of this field type + // find and focus that + TInt fieldArrayCount( iUiFieldArray->Count() ); + for (TInt i(0); i < fieldArrayCount && ret.iControlId + == KErrAlreadyExists; ++i) { - // cannot add more than one of this field type - // find and focus that - TInt fieldArrayCount( iUiFieldArray->Count() ); - for (TInt i(0); i < fieldArrayCount && ret.iControlId - == KErrAlreadyExists; ++i) + if (!iUiFieldArray->At(i).ContactEditorField()) { - if (!iUiFieldArray->At(i).ContactEditorField()) - { - continue; - } - const MVPbkFieldType* fieldType = - iUiFieldArray->At(i).ContactEditorField()->ContactField(). - BestMatchingFieldType(); - if(fieldType && fieldType->FieldTypeResId() == aFieldTypeResourceId) - { - ret.iControlId = iUiFieldArray->At(i).ControlId(); - } + continue; + } + const MVPbkFieldType* fieldType = + iUiFieldArray->At(i).ContactEditorField()->ContactField(). + BestMatchingFieldType(); + if(fieldType && fieldType->FieldTypeResId() == aFieldTypeResourceId) + { + ret.iControlId = iUiFieldArray->At(i).ControlId(); } } - - if (ret.iControlId > 0) + } + + if (ret.iControlId > 0) + { + if (aSetFocus) { - if (aSetFocus) - { - TryChangeFocusL(ret.iControlId); - MPbk2ContactEditorField* editorField = iUiFieldArray->Find( ret.iControlId )->ContactEditorField(); - MVPbkStoreContactField& storeContactField = editorField->ContactField(); - iParams.iFocusedContactField = &storeContactField; - // Call this after adding or deleting lines - UpdatePageL( ETrue ); - // Must be DrawNow and not DrawDeferred otherwise field label - // and content of the following field will be incorrect - DrawNow(); - } - } - else if (ret.iControlId == KErrNotSupported && origParam == KErrNotFound) - { - iUiFieldArray->SaveFieldsL(); - iRelocator.RelocateContactL(aFieldTypeResourceId, xSpName, - Pbk2ContactRelocator::EPbk2DisplayStoreDoesNotSupportQuery); + TryChangeFocusL(ret.iControlId); + MPbk2ContactEditorField* editorField = iUiFieldArray->Find( ret.iControlId )->ContactEditorField(); + MVPbkStoreContactField& storeContactField = editorField->ContactField(); + iParams.iFocusedContactField = &storeContactField; + // Call this after adding or deleting lines + UpdatePageL( ETrue ); + // Must be DrawNow and not DrawDeferred otherwise field label + // and content of the following field will be incorrect + DrawNow(); } - else if ( iParams.iActiveView == TPbk2ContactEditorParams::EEditorView ) + } + else if (ret.iControlId == KErrNotSupported && origParam == KErrNotFound) + { + iUiFieldArray->SaveFieldsL(); + iRelocator.RelocateContactL(aFieldTypeResourceId, xSpName, + Pbk2ContactRelocator::EPbk2DisplayStoreDoesNotSupportQuery); + } + else if ( iParams.iActiveView == TPbk2ContactEditorParams::EEditorView ) + { + switch( ret.iGruopId ) { - switch( ret.iGruopId ) - { - case EPbk2FieldGroupIdPostalAddress: - if(iUiFieldArray->Count()) - { - iUiFieldArray->AddNewFieldL( ret.iGruopId ); - ExecuteAddressDlgL( TPbk2ContactEditorParams::EEditorAddressView ); - } - break; - case EPbk2FieldGroupIdHomeAddress: + case EPbk2FieldGroupIdPostalAddress: + if(iUiFieldArray->Count()) + { iUiFieldArray->AddNewFieldL( ret.iGruopId ); - ExecuteAddressDlgL( TPbk2ContactEditorParams::EEditorAddressHomeView ); - break; - case EPbk2FieldGroupIdCompanyAddress: - iUiFieldArray->AddNewFieldL( ret.iGruopId ); - ExecuteAddressDlgL( TPbk2ContactEditorParams::EEditorAddressOfficeView ); - break; - } + ExecuteAddressDlgL( TPbk2ContactEditorParams::EEditorAddressView ); + } + break; + case EPbk2FieldGroupIdHomeAddress: + iUiFieldArray->AddNewFieldL( ret.iGruopId ); + ExecuteAddressDlgL( TPbk2ContactEditorParams::EEditorAddressHomeView ); + break; + case EPbk2FieldGroupIdCompanyAddress: + iUiFieldArray->AddNewFieldL( ret.iGruopId ); + ExecuteAddressDlgL( TPbk2ContactEditorParams::EEditorAddressOfficeView ); + break; } - iDestroyedPtrForAddItem = NULL; } CleanupStack::PopAndDestroy(addItemManager); } @@ -759,14 +686,6 @@ return EKeyWasConsumed; }*/ - // When the end key is pressed and OfferKeyEventL() is called for the first time, - // set the edit dialog to be not editable to close the partial input - // screen if it is open. - if( aKeyEvent.iCode == EKeyEscape && !iEndKeyWasPressed ) - { - SetEditableL( EFalse ); - } - // Display menu bar if the focused control doesnt consume selection keys CPbk2ContactEditorArrayItem* currentField = iUiFieldArray->Find( IdOfFocusControl()); @@ -796,37 +715,19 @@ ret = EKeyWasConsumed; } - if ( ret != EKeyWasConsumed ) + if ( ret != EKeyWasConsumed && !iEndKeyWasPressed ) { - // If the iEndKeyWasPressed equels to true, which illustrates - // the EditorDlgImpl get the Escape key event one more time - // for the case that Exit phonebook2 with the EditorDlg opened, - // sush as save VOIP settings,there will be two event, - // one is to close dialog and the other is to exit phonebook2. - if ( iEndKeyWasPressed ) + if ( aKeyEvent.iCode == EKeyEscape ) { - if ( aKeyEvent.iCode == EKeyEscape && iAvkonAppUi->IsAppShutterRunning() ) - { - // Use the iExitApp to record whether the AppShutter is running. - // According to the value of iExitApp to Exit Phonebook2 app ui - // after the EditorDlg close completely. - iExitApp = ETrue; - } + iEditorStrategy.StopQuery(); + iEndKeyWasPressed = ETrue; } - else + ret = CAknForm::OfferKeyEventL( aKeyEvent, aType ); + if ( ret == EKeyWasConsumed && + aKeyEvent.iCode != EKeyPhoneEnd && aKeyEvent.iCode != EKeyEscape ) { - if ( aKeyEvent.iCode == EKeyEscape ) - { - iEditorStrategy.StopQuery(); - iEndKeyWasPressed = ETrue; - } - ret = CAknForm::OfferKeyEventL( aKeyEvent, aType ); - if ( ret == EKeyWasConsumed && aKeyEvent.iCode != EKeyPhoneEnd - && aKeyEvent.iCode != EKeyEscape ) - { - UpdateCbasL(); - } - } + UpdateCbasL(); + } } return ret; @@ -880,7 +781,7 @@ iEditorExtension->ModifyButtonGroupContainerL(ButtonGroupContainer()); ConstructNaviPaneL(); - UpdateTitleL(); + UpdateTitleL(); UpdateTitlePictureL(); } @@ -1257,37 +1158,6 @@ iAddressView = NULL; iParams.iActiveView = TPbk2ContactEditorParams::EEditorView; UpdateControlsL(); - - // The if-expression refers to the situation that need to - // delete editor dialog after address dialog exit completely, - // such as the store-unavailable situation - if ( iDelayDelete ) - { - iDelayDelete->Start( TCallBack( &DelayDlgDeleteCallBack, this ) ); - } - } - -// -------------------------------------------------------------------------- -// CPbk2ContactEditorDlgImpl::DelayDlgDeleteCallBack -// -------------------------------------------------------------------------- -// -TInt CPbk2ContactEditorDlgImpl::DelayDlgDeleteCallBack( TAny* aCallBack ) - { - static_cast( aCallBack )->DelayDlgDelete(); - return EFalse; - } - -// -------------------------------------------------------------------------- -// CPbk2ContactEditorDlgImpl::DelayDlgDelete -// -------------------------------------------------------------------------- -// -void CPbk2ContactEditorDlgImpl::DelayDlgDelete() - { - // Need to inform editor-observer that contact editing is - // aborted, at the same time, exit editor dialog directly - // without saving the changes. - iContactObserver.ContactEditingAborted(); - delete this; } // -------------------------------------------------------------------------- @@ -1315,7 +1185,7 @@ // CPbk2ContactEditorDlgImpl::AreAllFieldsEmpty // -------------------------------------------------------------------------- // -TBool CPbk2ContactEditorDlgImpl::AreAllFieldsEmptyL() +TBool CPbk2ContactEditorDlgImpl::AreAllFieldsEmpty() { TBool result(ETrue); TInt countAll = iContact.PresentationFields().FieldCount(); @@ -1745,12 +1615,7 @@ RestorePrevNaviDecoratorL(); iNaviContainer = NULL; } - - if ( !iAvkonAppUi->IsAppShutterRunning() ) - { - MakeVisible( EFalse ); - } - + MakeVisible( EFalse ); MPbk2ContactEditorEventObserver::TParams params; params.iFlags = EPbk2EditorKeyCode; params.iKeyCode = aKeycode; @@ -2068,8 +1933,8 @@ // -------------------------------------------------------------------------- // void CPbk2ContactEditorDlgImpl::CloseDialog() - { - // Ignore error and close editor without further user interaction + { + // Ignor error and close editor without further user interaction MVPbkContactObserver::TContactOpResult exitResult; exitResult.iExtension = NULL; exitResult.iStoreContact = NULL; @@ -2092,7 +1957,7 @@ } ContactEditorOperationCompleted(exitResult, exitParams); - } + } // -------------------------------------------------------------------------- // CPbk2ContactEditorDlgImpl::ContactEditorOperationFailed @@ -2464,22 +2329,24 @@ { if ( &aContactStore == &iContact.ParentStore() ) { - // Use iAppServices if provided. This is to enable editor use outside from pbk2 context + /* + * Use iAppServices if provided. This is to enable editor use outside from pbk2 context + */ const CPbk2StoreProperty* property = NULL; if( iAppServices ) - { - property = - iAppServices->StoreProperties().FindProperty - ( aContactStore.StoreProperties().Uri() ); - } + { + property = + iAppServices->StoreProperties().FindProperty + ( aContactStore.StoreProperties().Uri() ); + } else - { - property = - Phonebook2::Pbk2AppUi()->ApplicationServices(). - StoreProperties().FindProperty - ( aContactStore.StoreProperties().Uri() ); - } - + { + property = + Phonebook2::Pbk2AppUi()->ApplicationServices(). + StoreProperties().FindProperty + ( aContactStore.StoreProperties().Uri() ); + } + TPtrC storeName; if ( property ) @@ -2491,27 +2358,11 @@ // Cannot do anything about that TRAP_IGNORE( ShowStoreNotAvailableNoteL( storeName ) ); - // If the address dialog is opened, delete address dialog first, - // then after address dialog exit completely, delete the editor dialog - // via DelayDlgDeleteCallBack; if there isn't the address dialog, - // delete editor dialog directly. - if (iAddressView ) - { - // Create the CIdle object to delete editor dialog later. - if ( !iDelayDelete ) - { - iDelayDelete = CIdle::NewL( CActive::EPriorityStandard ); - } - delete iAddressView; - iAddressView = NULL; - } - else - { - // At the store unavailable situation, informs editor observer - // that contact editing is aborted without saving the changes. - iContactObserver.ContactEditingAborted(); - delete this; - } + // Close editor if store which came unavailable is iContact's store + iContactObserver.ContactEditingAborted(); + // TryExitL is not called because it would call OkToExitL + // which is not wanted + delete this; } } @@ -2624,24 +2475,24 @@ switch (iParams.iActiveView) { case TPbk2ContactEditorParams::EEditorAddressView: - if( !iTitleText ) - { - title = StringLoader::LoadL(R_QTN_PHOB_HEADER_ADDRESS); - } + if( !iTitleText ) + { + title = StringLoader::LoadL(R_QTN_PHOB_HEADER_ADDRESS); + } break; case TPbk2ContactEditorParams::EEditorAddressHomeView: - if( !iTitleText ) - { - title = StringLoader::LoadL( - R_QTN_PHOB_HEADER_ADDRESS_HOME); - } + if( !iTitleText ) + { + title = StringLoader::LoadL( + R_QTN_PHOB_HEADER_ADDRESS_HOME); + } break; case TPbk2ContactEditorParams::EEditorAddressOfficeView: - if( !iTitleText ) - { - title = StringLoader::LoadL( - R_QTN_PHOB_HEADER_ADDRESS_WORK); - } + if( !iTitleText ) + { + title = StringLoader::LoadL( + R_QTN_PHOB_HEADER_ADDRESS_WORK); + } break; case TPbk2ContactEditorParams::EEditorView: { @@ -2678,10 +2529,10 @@ } } if( !iTitleText ) - { - title = iNameFormatter->GetContactTitleOrNullL(iStoreContact->Fields(), - KEditorNameFormatFlags); - } + { + title = iNameFormatter->GetContactTitleOrNullL(iStoreContact->Fields(), + KEditorNameFormatFlags); + } break; } default: @@ -2690,20 +2541,20 @@ // if custom title text is provided if( iTitleText ) - { - iTitlePane->SetTextL( iTitleText->Des() ); - } + { + iTitlePane->SetTextL( iTitleText->Des() ); + } else - { - if (title) - { - iTitlePane->SetText(title); - } - else - { - iTitlePane->SetTextL(iEditorStrategy.DefaultTitle()); - } - } + { + if (title) + { + iTitlePane->SetText(title); + } + else + { + iTitlePane->SetTextL(iEditorStrategy.DefaultTitle()); + } + } } CEikStatusPane* statusPane = iAvkonAppUi->StatusPane(); @@ -2729,24 +2580,24 @@ // Update picture in title pane /* - * Use iAppServices if provided. This is to enable editor use outside from pbk2 context - */ + * Use iAppServices if provided. This is to enable editor use outside from pbk2 context + */ CEikImage* image = NULL; if( iAppServices ) - { - image = - Pbk2TitlePanePictureFactory::CreateTitlePanePictureLC - ( &iContact.StoreContact(), - iAppServices->StoreProperties() ); - } + { + image = + Pbk2TitlePanePictureFactory::CreateTitlePanePictureLC + ( &iContact.StoreContact(), + iAppServices->StoreProperties() ); + } else - { - image = - Pbk2TitlePanePictureFactory::CreateTitlePanePictureLC - ( &iContact.StoreContact(), - Phonebook2::Pbk2AppUi()->ApplicationServices(). - StoreProperties() ); - } + { + image = + Pbk2TitlePanePictureFactory::CreateTitlePanePictureLC + ( &iContact.StoreContact(), + Phonebook2::Pbk2AppUi()->ApplicationServices(). + StoreProperties() ); + } // ownership of the picture is transfered to title pane @@ -2768,7 +2619,7 @@ { // For knowing if the destructor has been called TBool destroyed = EFalse; - iDestroyedPtrForCloseDlg = &destroyed; + iDestroyedPtr = &destroyed; if (aInformObserver && iParams.iActiveView == TPbk2ContactEditorParams::EEditorView || iAddressViewStandalone) @@ -2801,21 +2652,22 @@ // In VOIP/new contacts/exit case, this object will be destructed by // iContactObserver.ContactEditingComplete() above. // If this object is destructed, don't excute the following anymore - if ( !destroyed ) + if ( destroyed ) { - // Don't save any contact data (already saved) - iExitRecord.Set(EOkToExitWithoutHandlingIt); - iExitRecord.Clear(EExitOrdered); - - // Close dialog using TryExitL and returning ETrue from OkToExit - TInt err = KErrNone; - TRAP( err, TryExitL( EAknSoftkeyBack ) ); - if (err != KErrNone) - { - // If not nicely then use the force. - delete this; - } - iDestroyedPtrForCloseDlg = NULL; + return; + } + + // Don't save any contact data (already saved) + iExitRecord.Set(EOkToExitWithoutHandlingIt); + iExitRecord.Clear(EExitOrdered); + + // Close dialog using TryExitL and returning ETrue from OkToExit + TInt err = KErrNone; + TRAP( err, TryExitL( EAknSoftkeyBack ) ); + if (err != KErrNone) + { + // If not nicely then use the force. + delete this; } } @@ -2835,7 +2687,7 @@ // Dialog is closed so there is nothing to do if // HandleCommandL leaves. - TRAP_IGNORE(CEikonEnv::Static()->EikAppUi()->HandleCommandL(aCommandId)); + TRAP_IGNORE(CEikonEnv::Static()->EikAppUi()->HandleCommandL(aCommandId)); } } @@ -2965,59 +2817,30 @@ case EPbk2FieldCtrlTypeExtAddressEditor: case EPbk2FieldCtrlTypeExtAddressHomeEditor: case EPbk2FieldCtrlTypeExtAddressOfficeEditor: - { - TInt iconId = 0; - // UnSync feature indicator flag and chinese flag - TBool supportUnSyncFeature = - FeatureManager::FeatureSupported( - KFeatureIdFfTdUnSyncabPbfieldsInd ); - TBool supportChinese = - FeatureManager::FeatureSupported( KFeatureIdChinese ); - // Valid address - TBool addressValidated = - IsAddressValidated( - Pbk2AddressTools::MapCtrlTypeToAddress( - uiField->UIField()->CtrlType())); - if(supportChinese && supportUnSyncFeature) + if(IsAddressValidated(Pbk2AddressTools::MapCtrlTypeToAddress( + uiField->UIField()->CtrlType()))) { - // Unsync icon - iconId = EPbk2qgn_prop_phonebook2_unsync; + TPbk2IconId iconID(TUid::Uid(KPbk2UID3), EPbk2qgn_prop_locev_map); + uiField->LoadBitmapToFieldL(iconID); } else { - iconId = addressValidated ? - EPbk2qgn_prop_locev_map : EPbk2qgn_prop_pb_no_valid_lm; + TPbk2IconId iconID(TUid::Uid(KPbk2UID3), EPbk2qgn_prop_pb_no_valid_lm); + uiField->LoadBitmapToFieldL(iconID); } - TPbk2IconId pbkIconId(TUid::Uid(KPbk2UID3),iconId); - uiField->LoadBitmapToFieldL(pbkIconId); - } break; case EPbk2FieldCtrlTypeExtAssignFromMapsEditor: - { - // UnSync feature indicator flag and chinese flag - TBool supportUnSyncFeature = - FeatureManager::FeatureSupported( - KFeatureIdFfTdUnSyncabPbfieldsInd ); - TBool supportChinese = - FeatureManager::FeatureSupported( KFeatureIdChinese ); - - TBool addressValidated = - IsAddressValidated( - Pbk2AddressTools::MapViewTypeToAddress( iParams.iActiveView )); - TInt iconId = 0; - if( supportChinese && supportUnSyncFeature ) + if(IsAddressValidated( Pbk2AddressTools::MapViewTypeToAddress(iParams.iActiveView))) { - iconId = EPbk2qgn_prop_phonebook2_unsync; - } - else - { - iconId = addressValidated ? - EPbk2qgn_prop_locev_map : EPbk2qgn_prop_pb_no_valid_lm; - } - TPbk2IconId pbkIconId(TUid::Uid(KPbk2UID3),iconId); - uiField->LoadBitmapToFieldL(pbkIconId); - } - break; + TPbk2IconId iconID(TUid::Uid(KPbk2UID3), EPbk2qgn_prop_locev_map); + uiField->LoadBitmapToFieldL(iconID); + } + else + { + TPbk2IconId iconID(TUid::Uid(KPbk2UID3), EPbk2qgn_prop_pb_no_valid_lm); + uiField->LoadBitmapToFieldL(iconID); + } + break; default: return; } @@ -3113,7 +2936,7 @@ { // Estimate all field are empty by UI field. if (( AreAllControlsEmpty() && !iAddressViewStandalone )|| - (iAddressViewStandalone && AreAllFieldsEmptyL())) + (iAddressViewStandalone && AreAllFieldsEmpty())) { if (iEditorExtension->OkToDeleteContactL(aParams)) { @@ -3158,9 +2981,9 @@ CloseDialog(); } else - { - iExitRecord.Clear( EExitOrdered ); - } + { + iExitRecord.Clear( EExitOrdered ); + } } } } @@ -3285,14 +3108,13 @@ { TBool okToExit = ETrue; - // The exit callback must be invoked only once when editor dlg is exiting. - if ( (iParams.iActiveView == TPbk2ContactEditorParams::EEditorView || - iAddressViewStandalone) && iParams.iExitCallback ) + // If exit callback returned EFalse, the exit is cancelled + if ( iParams.iExitCallback && + !iParams.iExitCallback->OkToExitL( aCommandId ) ) { - okToExit = iParams.iExitCallback->OkToExitL( aCommandId ); + okToExit = EFalse; } - - // If exit callback returned EFalse, the exit is cancelled + if ( !okToExit ) { iExitRecord.Clear( EExitApproved ); @@ -3538,8 +3360,8 @@ // void CPbk2ContactEditorDlgImpl::CheckCurrentFieldTextL( CPbk2ContactEditorArrayItem* aCurrentField, - const TKeyEvent& aKeyEvent, - TEventCode aType ) + const TKeyEvent& aKeyEvent, + TEventCode aType ) { MPbk2ContactEditorField* editorField = aCurrentField->ContactEditorField(); if ( editorField ) diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/UIControls/src/CPbk2ContactEditorEditContact.cpp --- a/phonebookui/Phonebook2/UIControls/src/CPbk2ContactEditorEditContact.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/UIControls/src/CPbk2ContactEditorEditContact.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -20,7 +20,7 @@ // Phonebook 2 #include "CPbk2InputAbsorber.h" -#include +#include #include #include #include @@ -37,7 +37,7 @@ #include #include #include -#include +#include // System includes #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/UIControls/src/CPbk2ContactEditorEmailField.cpp --- a/phonebookui/Phonebook2/UIControls/src/CPbk2ContactEditorEmailField.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/UIControls/src/CPbk2ContactEditorEmailField.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -147,10 +147,6 @@ iControl->CreateTextViewL(); iCaptionedCtrl = iUiBuilder.LineControl(ControlId()); iCaptionedCtrl->SetTakesEnterKey(EFalse); - - // Enable partial screen input - TInt flags = iControl->AknEditorFlags(); - iControl->SetAknEditorFlags(flags | EAknEditorFlagEnablePartialScreen); } // End of File diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/UIControls/src/CPbk2ContactEditorFieldArray.cpp --- a/phonebookui/Phonebook2/UIControls/src/CPbk2ContactEditorFieldArray.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/UIControls/src/CPbk2ContactEditorFieldArray.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -23,12 +23,12 @@ #include "Pbk2ContactEditorFieldFactory.h" #include "MPbk2ContactEditorField.h" #include "MPbk2ContactEditorUiBuilder.h" -#include +#include #include #include #include #include -#include +#include #include #include #include "TPbk2ContactEditorParams.h" @@ -47,7 +47,7 @@ #include #include #include -#include +#include #include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/UIControls/src/CPbk2ContactEditorImageField.cpp --- a/phonebookui/Phonebook2/UIControls/src/CPbk2ContactEditorImageField.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/UIControls/src/CPbk2ContactEditorImageField.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -35,7 +35,7 @@ #include #include #include -#include +#include // System includes #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/UIControls/src/CPbk2ContactEditorImpplField.cpp --- a/phonebookui/Phonebook2/UIControls/src/CPbk2ContactEditorImpplField.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/UIControls/src/CPbk2ContactEditorImpplField.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -157,10 +157,6 @@ iControl->CreateTextViewL(); iCaptionedCtrl = iUiBuilder.LineControl(ControlId()); iCaptionedCtrl->SetTakesEnterKey(EFalse); - - // Enable partial screen input - TInt flags = iControl->AknEditorFlags(); - iControl->SetAknEditorFlags(flags | EAknEditorFlagEnablePartialScreen); } // -------------------------------------------------------------------------- diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/UIControls/src/CPbk2ContactEditorNewContact.cpp --- a/phonebookui/Phonebook2/UIControls/src/CPbk2ContactEditorNewContact.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/UIControls/src/CPbk2ContactEditorNewContact.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -21,7 +21,7 @@ #include "CPbk2ContactEditorNewContact.h" // Phonebook 2 -#include +#include #include #include #include "CPbk2InputAbsorber.h" @@ -224,14 +224,14 @@ ( "CPbk2ContactEditorNewContact::HandleIdleDelete(0x%x)" ), this ); iInputAbsorber->StopWait(); - // Notify client asynchronously to let Delete Operation complete firstly and - // then the client will be notified to do the other things in the RunL() function. - iLatestResult.iExtension = NULL; - iLatestResult.iStoreContact = NULL; - iLatestResult.iOpCode = MVPbkContactObserver::EContactDelete; - TRequestStatus* status = &iStatus; - User::RequestComplete(status, KErrNone); - SetActive(); + MPbk2ContactEditorEventObserver* observer = iObserver; + iObserver = NULL; + MVPbkContactObserver::TContactOpResult result; + // Disable warnings by nulling the data members + result.iStoreContact = NULL; + result.iExtension = NULL; + result.iOpCode = MVPbkContactObserver::EContactDelete; + observer->ContactEditorOperationCompleted( result, iEditorParams ); } // -------------------------------------------------------------------------- diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/UIControls/src/CPbk2ContactEditorNumberField.cpp --- a/phonebookui/Phonebook2/UIControls/src/CPbk2ContactEditorNumberField.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/UIControls/src/CPbk2ContactEditorNumberField.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -105,11 +105,7 @@ // foreign characters if necessary AknTextUtils::DisplayTextLanguageSpecificNumberConversion(text); } - - // Enable partial screen input - TInt flags = iControl->AknEditorFlags(); - iControl->SetAknEditorFlags(flags | EAknEditorFlagEnablePartialScreen); - + if (iContactField.FieldProperty().EditMode() == EPbk2FieldEditModeNumeric) { iControl->SetAknEditorNumericKeymap(EAknEditorPlainNumberModeKeymap); diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/UIControls/src/CPbk2ContactEditorPhoneNumberField.cpp --- a/phonebookui/Phonebook2/UIControls/src/CPbk2ContactEditorPhoneNumberField.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/UIControls/src/CPbk2ContactEditorPhoneNumberField.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -187,10 +187,6 @@ iControl->CreateTextViewL(); iCaptionedCtrl = iUiBuilder.LineControl(ControlId()); iCaptionedCtrl->SetTakesEnterKey(ETrue); - - // Enable partial screen input - TInt flags = iControl->AknEditorFlags(); - iControl->SetAknEditorFlags(flags | EAknEditorFlagEnablePartialScreen); } // -------------------------------------------------------------------------- diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/UIControls/src/CPbk2ContactEditorPostalCodeField.cpp --- a/phonebookui/Phonebook2/UIControls/src/CPbk2ContactEditorPostalCodeField.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/UIControls/src/CPbk2ContactEditorPostalCodeField.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -152,10 +152,6 @@ iControl->CreateTextViewL(); iCaptionedCtrl = iUiBuilder.LineControl(ControlId()); iCaptionedCtrl->SetTakesEnterKey(ETrue); - - // Enable partial screen input - TInt flags = iControl->AknEditorFlags(); - iControl->SetAknEditorFlags(flags | EAknEditorFlagEnablePartialScreen); } // -------------------------------------------------------------------------- diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/UIControls/src/CPbk2ContactEditorReadingField.cpp --- a/phonebookui/Phonebook2/UIControls/src/CPbk2ContactEditorReadingField.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/UIControls/src/CPbk2ContactEditorReadingField.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -137,10 +137,6 @@ iControl->CreateTextViewL(); iCaptionedCtrl = iUiBuilder.LineControl(ControlId()); iCaptionedCtrl->SetTakesEnterKey(ETrue); - - // Enable partial screen input - TInt flags = iControl->AknEditorFlags(); - iControl->SetAknEditorFlags(flags | EAknEditorFlagEnablePartialScreen); } // -------------------------------------------------------------------------- diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/UIControls/src/CPbk2ContactEditorRingtoneField.cpp --- a/phonebookui/Phonebook2/UIControls/src/CPbk2ContactEditorRingtoneField.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/UIControls/src/CPbk2ContactEditorRingtoneField.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -35,7 +35,7 @@ #include #include #include -#include +#include // System includes #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/UIControls/src/CPbk2ContactEditorSyncField.cpp --- a/phonebookui/Phonebook2/UIControls/src/CPbk2ContactEditorSyncField.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/UIControls/src/CPbk2ContactEditorSyncField.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -23,7 +23,7 @@ #include "MPbk2ContactEditorFieldVisitor.h" #include #include -#include +#include #include "Pbk2UIControls.hrh" // Virtual Phonebook diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/UIControls/src/CPbk2ContactEditorTextField.cpp --- a/phonebookui/Phonebook2/UIControls/src/CPbk2ContactEditorTextField.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/UIControls/src/CPbk2ContactEditorTextField.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -99,10 +99,6 @@ // T9 should be deactivated in all contact editors always DeactivateT9(iContactField.FieldProperty().EditMode()); - // Enable partial screen input - TInt flags = iControl->AknEditorFlags(); - iControl->SetAknEditorFlags(flags | EAknEditorFlagEnablePartialScreen); - if (iContactField.FieldProperty().EditMode() == EPbk2FieldEditModeLatinOnly) { diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/UIControls/src/CPbk2ContactEditorUIAddressField.cpp --- a/phonebookui/Phonebook2/UIControls/src/CPbk2ContactEditorUIAddressField.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/UIControls/src/CPbk2ContactEditorUIAddressField.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -22,12 +22,12 @@ #include "MPbk2ContactEditorFieldVisitor.h" #include "MPbk2ContactEditorUiBuilderExtension.h" #include "CPbk2IconInfoContainer.h" -#include +#include #include "MPbk2UIField.h" #include "Pbk2EditorLineIds.hrh" #include #include "CPbk2ContactEditorReadonlyField.h" -#include +#include // System includes #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/UIControls/src/CPbk2ContactEditorUIAddressHomeField.cpp --- a/phonebookui/Phonebook2/UIControls/src/CPbk2ContactEditorUIAddressHomeField.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/UIControls/src/CPbk2ContactEditorUIAddressHomeField.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -22,12 +22,12 @@ #include "MPbk2ContactEditorFieldVisitor.h" #include "MPbk2ContactEditorUiBuilderExtension.h" #include "CPbk2IconInfoContainer.h" -#include +#include #include "MPbk2UIField.h" #include "Pbk2EditorLineIds.hrh" #include #include "CPbk2ContactEditorReadonlyField.h" -#include +#include // System includes #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/UIControls/src/CPbk2ContactEditorUIAddressOfficeField.cpp --- a/phonebookui/Phonebook2/UIControls/src/CPbk2ContactEditorUIAddressOfficeField.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/UIControls/src/CPbk2ContactEditorUIAddressOfficeField.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -22,12 +22,12 @@ #include "MPbk2ContactEditorFieldVisitor.h" #include "MPbk2ContactEditorUiBuilderExtension.h" #include "CPbk2IconInfoContainer.h" -#include +#include #include "MPbk2UIField.h" #include "Pbk2EditorLineIds.hrh" #include #include "CPbk2ContactEditorReadonlyField.h" -#include +#include // System includes #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/UIControls/src/CPbk2ContactEditorUrlField.cpp --- a/phonebookui/Phonebook2/UIControls/src/CPbk2ContactEditorUrlField.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/UIControls/src/CPbk2ContactEditorUrlField.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -99,10 +99,6 @@ // T9 should be deactivated in all contact editors always DeactivateT9(iContactField.FieldProperty().EditMode()); - // Enable partial screen input - TInt flags = iControl->AknEditorFlags(); - iControl->SetAknEditorFlags(flags | EAknEditorFlagEnablePartialScreen); - if (iContactField.FieldProperty().EditMode() == EPbk2FieldEditModeLatinOnly) { diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/UIControls/src/CPbk2ContactIconsUtils.cpp --- a/phonebookui/Phonebook2/UIControls/src/CPbk2ContactIconsUtils.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/UIControls/src/CPbk2ContactIconsUtils.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -29,7 +29,7 @@ #include #include -#include +#include #include #include "Pbk2NamesListExUID.h" diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/UIControls/src/CPbk2ContactInfoControl.cpp --- a/phonebookui/Phonebook2/UIControls/src/CPbk2ContactInfoControl.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/UIControls/src/CPbk2ContactInfoControl.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -26,7 +26,7 @@ #include "CPbk2ContactFieldDynamicProperties.h" #include "CPbk2ThumbnailLoader.h" #include "Pbk2TitlePanePictureFactory.h" -#include +#include #include #include #include @@ -57,7 +57,7 @@ #include #include #include -#include +#include // System includes #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/UIControls/src/CPbk2ContactInfoListBox.cpp --- a/phonebookui/Phonebook2/UIControls/src/CPbk2ContactInfoListBox.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/UIControls/src/CPbk2ContactInfoListBox.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -25,7 +25,7 @@ #include "CPbk2FieldListBoxModel.h" #include #include -#include +#include #include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/UIControls/src/CPbk2ContactViewListBox.cpp --- a/phonebookui/Phonebook2/UIControls/src/CPbk2ContactViewListBox.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/UIControls/src/CPbk2ContactViewListBox.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -41,7 +41,6 @@ #include #include -#include // Debugging headers #include @@ -60,7 +59,6 @@ // LOCAL FUNCTIONS _LIT( KTabChar, "\t" ); -const TInt KCheckboxMargin = 1; // Checkbox margin pixels /** * Returns icon array from given list box. @@ -111,8 +109,7 @@ iContainer(aContainer), iChangedIndexes( 1 ), // allocation granularity iUiExtension( aUiExtension ), - iSearchFilter( aSearchFilter ), - iMarkingModeOn( EFalse ) + iSearchFilter( aSearchFilter ) { } @@ -445,28 +442,9 @@ TBool CPbk2ContactViewListBox::ClipFromBeginning ( TDes& aBuffer, TInt aItemIndex, TInt aSubCellNumber ) { - CColumnListBoxData *data = ItemDrawer()->ColumnData(); - const CFont *font = - data->Font(ItemDrawer()->Properties(aItemIndex), aSubCellNumber); - // The width of the subcell displaying the characters. - TInt cellWidth = data->ColumnWidthPixel(aSubCellNumber); - // The margin of the subcell. - TMargins margin = data->ColumnMargins(aSubCellNumber); - // The valid width width displaying the characters. - TInt width = cellWidth - margin.iLeft - margin.iRight; - // If Marking mode is active, recalculate the valid width displaying characters. - // contact entry of name list view in marking mode - // - // |checkbox|Icon|name | - // | | |number| - if( iMarkingModeOn ) - { - RecalcWidthInMarkingMode(width, *font, aBuffer[0]); - } - TInt clipGap = data->ColumnTextClipGap(aSubCellNumber); - - return AknTextUtils::ClipToFit( - aBuffer, *font, width, AknTextUtils::EClipFromBeginning, width + clipGap); + return AknTextUtils::ClipToFit( aBuffer, + AknTextUtils::EClipFromBeginning, this, aItemIndex, + aSubCellNumber ); } // -------------------------------------------------------------------------- @@ -553,9 +531,9 @@ } // Wrap the original model. iListboxModelDecorator = DoCreateDecoratorL( - *IconArray( *this ), - iResourceData.iEmptyIconId, - iResourceData.iDefaultIconId ); + *IconArray( *this ), + iResourceData.iEmptyIconId, + iResourceData.iDefaultIconId ); iListboxModelDecorator->SetDecoratedModel( *iModel ); @@ -579,15 +557,15 @@ // -------------------------------------------------------------------------- // CPbk2ListboxModelCmdDecorator* CPbk2ContactViewListBox::DoCreateDecoratorL( - const CPbk2IconArray& aIconArray, - TPbk2IconId aEmptyIconId, - TPbk2IconId aDefaultIconId ) - { - return CPbk2ListboxModelCmdDecorator::NewL( - aIconArray, - aEmptyIconId, - aDefaultIconId ); - } + const CPbk2IconArray& aIconArray, + TPbk2IconId aEmptyIconId, + TPbk2IconId aDefaultIconId ) + { + return CPbk2ListboxModelCmdDecorator::NewL( + aIconArray, + aEmptyIconId, + aDefaultIconId ); + } // -------------------------------------------------------------------------- @@ -644,7 +622,7 @@ // void CPbk2ContactViewListBox::HandleGainingForeground() { - DrawDeferred(); + DrawDeferred(); } // -------------------------------------------------------------------------- @@ -726,7 +704,7 @@ textLayout.LayoutText(layout.Rect(), AknLayoutScalable_Apps::popup_navstr_preview_pane_t1(0).LayoutLine()); TPtrC desc(Model()->ItemTextArray()->MdcaPoint(View()->TopItemIndex())); - + //Add "if-clause" to avaid the error that argument of Mid() out of range. TInt index = desc.Find( KTabChar ); if ( index != KErrNotFound && index < desc.Length()-1 ) @@ -742,56 +720,4 @@ } } } - -// -------------------------------------------------------------------------- -// CPbk2ContactViewListBox::RecalcWidthInMarkingMode -// Recalculate the width of space displaying the third column of the schema -// below when Marking Mode is active. -// contact entry of name list view in marking mode -// The schema: -// |checkbox|Icon|name | -// | | |number| -// -------------------------------------------------------------------------- -// -void CPbk2ContactViewListBox::RecalcWidthInMarkingMode( - TInt& aWidth, - const CFont& aFont, - TChar aChar ) - { - if( aWidth > 0 ) - { - aWidth -= KCheckboxMargin; - // Get the coordinate for the right margin of the checkbox. - TInt checkBoxRight = AknLayoutScalable_Avkon::list_single_graphic_pane_t1( 0 ).r(); - // Get the coordinate for the left margin of the checkbox. - TInt checkBoxLeft = AknLayoutScalable_Avkon::list_single_graphic_pane_t1( 0 ).l(); - // The width to display one char. - TInt charWidth = aFont.CharWidthInPixels(aChar); - TInt checkBoxWidth = checkBoxRight - checkBoxLeft; - if( 0 > checkBoxWidth ) - { - checkBoxWidth *= -1; // To make sure the value is positive. - } - if( charWidth > 0 && checkBoxWidth > 0 ) - { - // The width of the characters which should be dropped, when marking - // mode is active. - TInt width; - if( 0 == checkBoxWidth%charWidth ) - { - width = checkBoxWidth; - } - else - { - // The width should be divisible by charWidth. - width = ( checkBoxWidth/charWidth + 1 ) * charWidth; - } - // When marking mode is on, - // the width should minus the part of checkbox in the front of - // a listbox item. - aWidth -= width; - } - } - } - // End of File diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/UIControls/src/CPbk2ContactViewListBoxModel.cpp --- a/phonebookui/Phonebook2/UIControls/src/CPbk2ContactViewListBoxModel.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/UIControls/src/CPbk2ContactViewListBoxModel.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -30,7 +30,7 @@ #include #include #include -#include +#include #include #include #include "Pbk2NamesListExUID.h" diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/UIControls/src/CPbk2DefaultSavingStorageSettingItem.cpp --- a/phonebookui/Phonebook2/UIControls/src/CPbk2DefaultSavingStorageSettingItem.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/UIControls/src/CPbk2DefaultSavingStorageSettingItem.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -26,7 +26,7 @@ #include #include #include -#include +#include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/UIControls/src/CPbk2FetchDlg.cpp --- a/phonebookui/Phonebook2/UIControls/src/CPbk2FetchDlg.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/UIControls/src/CPbk2FetchDlg.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -30,7 +30,7 @@ #include #include #include -#include +#include #include #include #include @@ -149,8 +149,7 @@ inline CPbk2FetchDlg::CPbk2FetchDlg ( TParams aParams, MPbk2FetchDlgObserver& aObserver ) : iParams( aParams ), - iObserver( aObserver ), - iSelectPermitted( ETrue ) + iObserver( aObserver ) { } @@ -259,7 +258,6 @@ ( aContactLink, Phonebook2::Pbk2AppUi()->ApplicationServices(). ContactManager().ContactStoresL() ); - // Append the selected contact to results. if ( linkArray->Count() > 0 ) { const MVPbkContactLink& link = linkArray->At( KFirstElement ); @@ -270,28 +268,6 @@ } // -------------------------------------------------------------------------- -// CPbk2FetchDlg::AcceptDelayedFetchL -// -------------------------------------------------------------------------- -// -EXPORT_C void CPbk2FetchDlg::DenyDelayedFetchL - ( const TDesC8& aContactLink ) - { - CVPbkContactLinkArray* linkArray = CVPbkContactLinkArray::NewLC - ( aContactLink, Phonebook2::Pbk2AppUi()->ApplicationServices(). - ContactManager().ContactStoresL() ); - - // Unmark the selected contact - if ( linkArray->Count() > 0 ) - { - const MVPbkContactLink& link = linkArray->At( KFirstElement ); - iResults->DenyAppendDelayedL( link ); - iPages->SelectContactL( link, EFalse ); - } - - CleanupStack::PopAndDestroy(); // linkArray - } - -// -------------------------------------------------------------------------- // CPbk2FetchDlg::ExecuteLD // -------------------------------------------------------------------------- // @@ -412,12 +388,6 @@ } } - // Only multiple fetch needs to wait buffered operations finished - if ( !canceled && ( iParams.iFlags & EFetchMultiple ) ) - { - iResults->WaitOperationsCompleteL(); - } - // Notify observer if ( canceled ) { @@ -465,11 +435,6 @@ // Reset results iResults->ResetAndDestroy(); } - else - { - // Permit selection again - iSelectPermitted = ETrue; - } iExitRecord.Set( EExitOrdered ); // exit is now ordered and // when client later requests @@ -560,12 +525,6 @@ } else { - // EKeyApplicationF means left softkey is pressed - if ( EKeyApplicationF == aKeyEvent.iCode && - ( iParams.iFlags & EFetchMultiple ) ) - { - iSelectPermitted = EFalse; - } if( !Phonebook2::Pbk2AppUi()->KeyEventHandler().Pbk2ProcessKeyEventL( aKeyEvent, aType ) ) { @@ -829,14 +788,6 @@ } } } -// -------------------------------------------------------------------------- -// CPbk2FetchDlg::IsSelectPermitted -// -------------------------------------------------------------------------- -// -TBool CPbk2FetchDlg::IsSelectPermitted() - { - return iSelectPermitted; - } // -------------------------------------------------------------------------- // CPbk2FetchDlg::HandleControlEventL @@ -1327,21 +1278,6 @@ // void CPbk2FetchDlg::RestoreSelectionsL() { - // Remove selections in all pages. Selections will be restored later. - // In case of sort order change the selections will be in a new position, - // that's why they need to be removed. - if ( iPages ) - { - const TInt pageCount = iPages->DlgPageCount(); - for ( TInt i = 0; i < pageCount; i++ ) - { - if ( iPages->DlgPageAt(i).Control().ContactsMarked() ) - { - iPages->DlgPageAt(i).Control().ClearMarks(); - } - } - } - if ( iResults ) { for ( TInt i = 0; i < iResults->Count(); ++i ) diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/UIControls/src/CPbk2FetchDlgGroupPage.cpp --- a/phonebookui/Phonebook2/UIControls/src/CPbk2FetchDlgGroupPage.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/UIControls/src/CPbk2FetchDlgGroupPage.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -26,7 +26,7 @@ #include #include #include -#include +#include #include // Virtual Phonebook diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/UIControls/src/CPbk2FetchDlgPage.cpp --- a/phonebookui/Phonebook2/UIControls/src/CPbk2FetchDlgPage.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/UIControls/src/CPbk2FetchDlgPage.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -25,7 +25,7 @@ #include #include #include -#include +#include #include // Virtual Phonebook diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/UIControls/src/CPbk2FetchResults.cpp --- a/phonebookui/Phonebook2/UIControls/src/CPbk2FetchResults.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/UIControls/src/CPbk2FetchResults.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -38,7 +38,6 @@ // System includes #include -#include // Debugging headers #include @@ -57,9 +56,7 @@ iFetchDlg( aFetchDlg ), iPages( aPages ), iObserver( aObserver ), - iResultsObserver( aResultsObserver ), - iWaitingForDelayedAppend( EFalse ), - iInputBlock( NULL ) + iResultsObserver( aResultsObserver ) { } @@ -89,8 +86,6 @@ delete iOperationQueue; } - - delete iWaitForAllOperationComplete; } // -------------------------------------------------------------------------- @@ -112,8 +107,6 @@ } iOperationQueue = new (ELeave) CArrayFixFlat(4); - - iWaitForAllOperationComplete = new (ELeave) CActiveSchedulerWait(); } // -------------------------------------------------------------------------- @@ -140,17 +133,10 @@ // -------------------------------------------------------------------------- // void CPbk2FetchResults::AppendL( const MVPbkContactLink& aLink ) - { - if ( iFetchDlg.IsSelectPermitted() ) - { - CFRConatactOperation* newAppendOperation = CFRConatactOperation::NewL( aLink, CFRConatactOperation::EAppendContact ); - AppendContactOperationL(newAppendOperation); - ProcessNextContactOperationL(); - } - else - { - iPages.SelectContactL( aLink, EFalse ); - } + { + CFRConatactOperation* newAppendOperation = CFRConatactOperation::NewL( aLink, CFRConatactOperation::EAppendContact ); + AppendContactOperationL(newAppendOperation); + ProcessNextContactOperationL(); } // -------------------------------------------------------------------------- @@ -159,24 +145,8 @@ // void CPbk2FetchResults::AppendDelayedL( const MVPbkContactLink& aLink ) { - // Add the feedback contact's operation to the head of the queue - // in order to ensure that the checked contact's operation to be - // handled firstly when phonebook receives the client feedback. CFRConatactOperation* newAppendOperation = CFRConatactOperation::NewL( aLink, CFRConatactOperation::EAppendContactDelayed ); - iOperationQueue->InsertL( 0, newAppendOperation ); - // Waiting is over. - iWaitingForDelayedAppend = EFalse; - ProcessNextContactOperationL(); - } - -// -------------------------------------------------------------------------- -// CPbk2FetchResults::DenyAppendDelayedL -// -------------------------------------------------------------------------- -// -void CPbk2FetchResults::DenyAppendDelayedL( const MVPbkContactLink& aLink ) - { - // Waiting is over, process next contact operation - iWaitingForDelayedAppend = EFalse; + AppendContactOperationL(newAppendOperation); ProcessNextContactOperationL(); } @@ -206,21 +176,6 @@ } // -------------------------------------------------------------------------- -// CPbk2FetchResults::WaitOperationsCompleteL -// -------------------------------------------------------------------------- -// -void CPbk2FetchResults::WaitOperationsCompleteL() - { - if ( iWaitingForDelayedAppend || iOperationQueue->Count()>0 ) - { - iInputBlock = CAknInputBlock::NewLC(); - CleanupStack::Pop( iInputBlock ); - - iWaitForAllOperationComplete->Start(); - } - } - -// -------------------------------------------------------------------------- // CPbk2FetchResults::Count // -------------------------------------------------------------------------- // @@ -373,13 +328,6 @@ { // Observer needs to asked accept = iObserver.AcceptFetchSelectionL( count, *link ); - // Determine whether accept query is needed - if ( MPbk2FetchDlgObserver::EFetchDelayed == accept ) - { - // Start to wait client feedback, block the operation queue, - // process next operation until receive client feedback. - iWaitingForDelayedAppend = ETrue; - } } if ( accept == MPbk2FetchDlgObserver::EFetchNo ) @@ -541,6 +489,8 @@ // Remove executed operation from queue RemoveCurrentContactOperation(); + // Initialize next operation from queue + ProcessNextContactOperationL(); /**********************************************************************/ /**************! Dont use class members after SWITCH !*****************/ @@ -555,26 +505,17 @@ case CFRConatactOperation::EAppendContact: { DoAppendContactL( *aContact, EFalse ); - // Check whether next operation can be processed - // after sending check request to client. - ProcessNextContactOperationL(); break; } case CFRConatactOperation::EAppendContactDelayed: { - // Process new contact opretation before appending - // the delayed contact to results. It can save time. - ProcessNextContactOperationL(); DoAppendContactL( *aContact, ETrue ); break; } case CFRConatactOperation::ERemoveContact: { - // Process new contact opretation before removing contact - // from results. It can save time. - ProcessNextContactOperationL(); DoRemoveContactL( *aContact ); break; } @@ -589,7 +530,7 @@ // void CPbk2FetchResults::ProcessNextContactOperationL() { - if( !iRetrieveOperation && !iWaitingForDelayedAppend ) + if( !iRetrieveOperation ) { // No operation is executing -> process next one @@ -597,23 +538,13 @@ { // Start asynchronous contact retrieve operation, which completes // in CPbk2FetchResults::HandleContactOperationCompleteL. - iRetrieveOperation = iContactManager.RetrieveContactL( - *( GetCurrentContactOperation()->GetContactLink() ), - *this ); + iRetrieveOperation = iContactManager.RetrieveContactL( *( GetCurrentContactOperation()->GetContactLink() ), + *this ); } else { - if ( !iWaitingForDelayedAppend ) - { - // Every seleced contacts' operation finishes, - // stop the scheduler waiting for every operation. - if (iWaitForAllOperationComplete->IsStarted()) - iWaitForAllOperationComplete->AsyncStop(); - - // Stop blocking input - delete iInputBlock; - iInputBlock = NULL; - } + // Empty operation queue -> do nothing + PBK2_DEBUG_PRINT(PBK2_DEBUG_STRING( "CPbk2FetchResults::ProcessNextContactOperationL emtpy queue" )); } } else diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/UIControls/src/CPbk2FieldAnalyzer.cpp --- a/phonebookui/Phonebook2/UIControls/src/CPbk2FieldAnalyzer.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/UIControls/src/CPbk2FieldAnalyzer.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -30,7 +30,7 @@ #include #include #include -#include +#include #include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/UIControls/src/CPbk2FieldFormatter.cpp --- a/phonebookui/Phonebook2/UIControls/src/CPbk2FieldFormatter.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/UIControls/src/CPbk2FieldFormatter.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -21,7 +21,7 @@ #include #include #include -#include +#include // Virtual Phonebook #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/UIControls/src/CPbk2FieldListBoxModel.cpp --- a/phonebookui/Phonebook2/UIControls/src/CPbk2FieldListBoxModel.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/UIControls/src/CPbk2FieldListBoxModel.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -34,9 +34,9 @@ #include #include #include -#include +#include #include "Pbk2AddressTools.h" -#include + // Virtual Phonebook #include #include @@ -45,10 +45,9 @@ #include #include #include -#include +#include #include -#include // For unSync /// Unnamed namespace for local definitions namespace { @@ -698,25 +697,18 @@ // Format icon index TBuf iconText; TInt iconIndex = KErrNotFound; - TInt iconId = 0; - // UnSync feature indicator flag and chinese flag - TBool supportUnSyncFeature = FeatureManager::FeatureSupported( - KFeatureIdFfTdUnSyncabPbfieldsInd); - TBool supportChinese = FeatureManager::FeatureSupported(KFeatureIdChinese); - // Valid address - TBool addressValidated = IsGeoFieldForAddressL( aField ); - if( supportChinese && supportUnSyncFeature) + + if ( IsGeoFieldForAddressL( aField ) ) { - // UnSync Icon - iconId = EPbk2qgn_prop_phonebook2_unsync; + iconIndex = aParams.iIconArray.FindIcon( + TPbk2AppIconId( EPbk2qgn_prop_locev_map ) ); } else - { - iconId = addressValidated ? - EPbk2qgn_prop_locev_map : EPbk2qgn_prop_pb_no_valid_lm; - } - TPbk2IconId pbkIconId(TUid::Uid(KPbk2UID3), iconId); - iconIndex = aParams.iIconArray.FindIcon(pbkIconId); + { + iconIndex = aParams.iIconArray.FindIcon( + TPbk2AppIconId( EPbk2qgn_prop_pb_no_valid_lm ) ); + } + iconText.Num( iconIndex ); aRow.AppendColumnL( iconText ); } diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/UIControls/src/CPbk2GeneralConfirmationQuery.cpp --- a/phonebookui/Phonebook2/UIControls/src/CPbk2GeneralConfirmationQuery.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/UIControls/src/CPbk2GeneralConfirmationQuery.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -22,7 +22,7 @@ #include #include #include -#include +#include // Virtual Phonebook #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/UIControls/src/CPbk2MemoryEntryDefaultsAssignDlg.cpp --- a/phonebookui/Phonebook2/UIControls/src/CPbk2MemoryEntryDefaultsAssignDlg.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/UIControls/src/CPbk2MemoryEntryDefaultsAssignDlg.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -23,7 +23,7 @@ #include "CPbk2FieldListBoxModel.h" #include #include -#include +#include #include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/UIControls/src/CPbk2MemoryEntryDefaultsDlg.cpp --- a/phonebookui/Phonebook2/UIControls/src/CPbk2MemoryEntryDefaultsDlg.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/UIControls/src/CPbk2MemoryEntryDefaultsDlg.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -25,7 +25,7 @@ #include "CPbk2FieldSelector.h" #include #include -#include +#include #include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/UIControls/src/CPbk2MemorySelectionSettingItem.cpp --- a/phonebookui/Phonebook2/UIControls/src/CPbk2MemorySelectionSettingItem.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/UIControls/src/CPbk2MemorySelectionSettingItem.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -25,7 +25,7 @@ #include #include #include -#include +#include // Virtual Phonebook #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/UIControls/src/CPbk2MergeConflictsDlg.cpp --- a/phonebookui/Phonebook2/UIControls/src/CPbk2MergeConflictsDlg.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/UIControls/src/CPbk2MergeConflictsDlg.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -29,7 +29,7 @@ #include #include #include -#include +#include #include #include #include "CPbk2MergeConflictsDlg.h" diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/UIControls/src/CPbk2MergePhotoConflictDlg.cpp --- a/phonebookui/Phonebook2/UIControls/src/CPbk2MergePhotoConflictDlg.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/UIControls/src/CPbk2MergePhotoConflictDlg.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -29,13 +29,13 @@ #include #include #include -#include +#include #include #include #include #include #include -#include +#include #include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/UIControls/src/CPbk2NameOrderSettingItem.cpp --- a/phonebookui/Phonebook2/UIControls/src/CPbk2NameOrderSettingItem.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/UIControls/src/CPbk2NameOrderSettingItem.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -20,7 +20,7 @@ // INCLUDE FILES #include "CPbk2NameOrderSettingItem.h" // This class -#include +#include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/UIControls/src/CPbk2NamesListControl.cpp --- a/phonebookui/Phonebook2/UIControls/src/CPbk2NamesListControl.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/UIControls/src/CPbk2NamesListControl.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -42,8 +42,8 @@ #include "CPbk2PredictiveSearchFilter.h" #include "cpbk2contactviewdoublelistbox.h" #include -#include -#include +#include +#include #include "CPbk2AppUi.h" // Virtual Phonebook @@ -331,7 +331,7 @@ /** * Call this function to skip the showing of blocking progress note. - * When done MassUpdateSkipProgressNote( EFalse ) must be called to reset. + * When done MassUpdateSkipProgressNote( EFalse ) must be called to reset. */ void MassUpdateSkipProgressNote( TBool aSkip ); @@ -347,14 +347,14 @@ static TInt HandleMassUpdateTimerCallBack(TAny* aAny); private: - CEikListBox& iListBox; + CEikListBox& iListBox; TBool iHandleMassUpdateDetected; TTime iHandleMassUpdateFirst; TTime iHandleMassUpdatePrev; TInt iHandleMassUpdateCount; TBool iHandleMassUpdateSkipDialog; CPeriodic* iHandleMassUpdateTimer; - CAknWaitDialog* iHandleMassUpdateDialog; + CAknWaitDialog* iHandleMassUpdateDialog; }; // -------------------------------------------------------------------------- @@ -714,8 +714,8 @@ // TBool CPbk2HandleMassUpdate::MassUpdateDetected() { - return iHandleMassUpdateDetected; - } + return iHandleMassUpdateDetected; + } // -------------------------------------------------------------------------- // CPbk2HandleMassUpdate::MassUpdateSkipProgressNote @@ -877,8 +877,7 @@ iNameFormatter( aNameFormatter ), iStoreProperties( aStoreProperties ), iAllowPointerEvents( ETrue ), - iOpeningCca( EFalse ), - iMarkingModeOn( EFalse ) + iOpeningCca( EFalse ) { } @@ -936,7 +935,7 @@ } iObservers.Reset(); iCommandItems.ResetAndDestroy(); - delete iCheckMassUpdate; + delete iCheckMassUpdate; delete iListBoxSelectionObserver; delete iStateFactory; delete iListBox; @@ -1112,9 +1111,6 @@ iListBox->SetObserver( this ); iListBox->SetScrollEventObserver( this ); iListBox->SetListBoxObserver(this); - - iListBox->SetMarkingModeObserver( this ); - iUiExtension->SetContactUiControlUpdate( this ); // set command item updater TAny* ext = iUiExtension->ContactUiControlExtensionExtension( @@ -1205,6 +1201,9 @@ PBK2_DEBUG_PRINT(PBK2_DEBUG_STRING("CPbk2NamesListControl::Reset(0x%x) - IN"), this ); + // Unmark all contacts and reset the toolbar so that the Call button + // won't be dimmed + TRAP_IGNORE( ProcessCommandL( EAknUnmarkAll ) ); // Reset find box TRAP_IGNORE( ResetFindL() ); // Destroy all the filtered views from the stack @@ -1221,9 +1220,6 @@ TRAP_IGNORE( iCurrentState->SetFocusedContactIndexL( firstContactIndex ) ); //scroll listbox into beginning (ignore focus that may be below promotion items) iListBox->SetTopItemIndex(firstContactIndex); - - //cancel the marking mode - iListBox->SetMarkingMode( EFalse ); // Switch to the background state. This enables the next state to avtivate fully (ActivateStateL()) once phonebook // comes from the background. @@ -1441,8 +1437,6 @@ void CPbk2NamesListControl::SizeChanged() { iCurrentState->SizeChanged(); - // Reset the popup char flag so that the char will not be shown. - iListBox->ResetShowPopupChar(); } // -------------------------------------------------------------------------- @@ -1493,7 +1487,7 @@ { if( !iAllowPointerEvents ) { - //Passing event to listbox needed even if iCurrentState would be skipped (fix for ou1cimx1#316139) + //Passing event to listbox needed even if iCurrentState would be skipped (fix for ou1cimx1#316139) iListBox->HandlePointerEventL( aPointerEvent ); return; } @@ -1691,7 +1685,7 @@ void CPbk2NamesListControl::ClearMarks() { iCurrentState->ClearMarks(); - ClearMarkedContactsInfo(); + ClearMarkedContactsInfo(); } // -------------------------------------------------------------------------- @@ -2095,7 +2089,7 @@ // -------------------------------------------------------------------------- // void CPbk2NamesListControl::FilteredContactRemovedFromView( - MVPbkContactViewBase& /*aView*/ ) + MVPbkContactViewBase& /*aView*/ ) { DrawDeferred(); } @@ -2253,11 +2247,11 @@ // void CPbk2NamesListControl::DoHandleContactAdditionL( TInt aIndex ) { - //Prevent messing with focus with always-on when Phonebook hidden in - //reseted state. Otherwise background-added contacts will change focus. - //This would cause Phonebook not to look like freshly started when opened again. - //And also make sure foreground-added contact will show the new contact - //even though the focus is not seen. + //Prevent messing with focus with always-on when Phonebook hidden in + //reseted state. Otherwise background-added contacts will change focus. + //This would cause Phonebook not to look like freshly started when opened again. + //And also make sure foreground-added contact will show the new contact + //even though the focus is not seen. if( (static_cast( CEikonEnv::Static()->AppUi()))->IsForeground() ) { @@ -2410,7 +2404,7 @@ TRAPD( res, { // This will reset back to base view, however retain original view - //when opening CCA + //when opening CCA if( !iOpeningCca ) { iCurrentState->ResetFindL(); @@ -2429,18 +2423,13 @@ { if( iCurrentState->NamesListState() == EStateEmpty ) { - // Trap the function because it may leave. - TRAPD( res, SelectAndChangeReadyStateL() ); - HandleError( res ); + SelectAndChangeReadyStateL(); } } else { - if( !iMarkingModeOn ) - { - Reset(); - } - } + Reset(); + } } // Do not handle contact addition here (DoHandleContactAdditionL), @@ -2553,29 +2542,9 @@ TRAP_IGNORE(iCurrentState->HandleControlEventL( aSearchField, MCoeControlObserver::EEventStateChanged, ETrue)); } - -// ----------------------------------------------------------------------------- -// CPbk2NamesListControl::MarkingModeStatusChanged -// ----------------------------------------------------------------------------- -// -void CPbk2NamesListControl::MarkingModeStatusChanged( TBool /*aActivated*/ ) - { - } - -// ----------------------------------------------------------------------------- -// CPbk2NamesListControl::ExitMarkingMode -// Called by avkon, if the return value is ETrue, -// the Marking mode will be canceled after any operation, -// otherwise the Marking mode keep active. -// ----------------------------------------------------------------------------- -// -TBool CPbk2NamesListControl::ExitMarkingMode() const - { - return ETrue; - } - // -------------------------------------------------------------------------- // CPbk2NamesListControl::HandleForegroundEventL +// // -------------------------------------------------------------------------- // void CPbk2NamesListControl::HandleForegroundEventL(TBool aForeground) @@ -2659,9 +2628,9 @@ // --------------------------------------------------------------------------- // EXPORT_C void CPbk2NamesListControl::SetOpeningCca( TBool aIsOpening ) - { - iOpeningCca = aIsOpening; - } + { + iOpeningCca = aIsOpening; + } // --------------------------------------------------------------------------- // CPbk2NamesListControlBgTask::CPbk2NamesListControlBgTask diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/UIControls/src/CPbk2NamesListEmptyState.cpp --- a/phonebookui/Phonebook2/UIControls/src/CPbk2NamesListEmptyState.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/UIControls/src/CPbk2NamesListEmptyState.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -41,10 +41,6 @@ // Debugging headers #include -#include -#include -#include - /// Unnamed namespace for local definitions namespace { @@ -128,35 +124,12 @@ // void CPbk2NamesListEmptyState::ActivateStateL() { - AllowCommandsToShowThemselves( ETrue ); - CPbk2NamesListControl& namesListControl = - reinterpret_cast(CoeControl()); - if( namesListControl.GetMarkingMode() ) - { - // If NamesListEmptyState and Marking mode are both active, - // the Marking mode should be canceled. - iListBox.SetMarkingMode(EFalse); - CEikonEnv* eikonEnv = CEikonEnv::Static(); - if ( eikonEnv && eikonEnv->AppUiFactory() ) - { - CEikStatusPane* statusPane = eikonEnv->AppUiFactory()->StatusPane(); - if ( statusPane ) - { - - CAknNavigationControlContainer* naviPane = - (CAknNavigationControlContainer *)statusPane->ControlL( - TUid::Uid(EEikStatusPaneUidNavi)); - CAknNavigationDecorator* decorator = naviPane->Top(); - naviPane->Pop( decorator ); - naviPane->DrawDeferred(); - } - } - } - - // hide findbox since there is no contact + AllowCommandsToShowThemselves( ETrue ); + + // hide findbox since there is no contact if ( iFindBox && iFindBox->IsVisible() ) { - iFindBox->MakeVisible( EFalse ); + iFindBox->MakeVisible( EFalse ); } } @@ -167,8 +140,8 @@ // void CPbk2NamesListEmptyState::DeactivateState() { - AllowCommandsToShowThemselves( EFalse ); - + AllowCommandsToShowThemselves( EFalse ); + if ( iFindBox && !iFindBox->IsFocused() ) { iFindBox->SetFocus( ETrue ); @@ -324,7 +297,7 @@ // void CPbk2NamesListEmptyState::HandleListboxEventL (TInt aEvent, TInt aListboxIndex, - TBool /*aMantainFocus*/) + TBool /*aMantainFocus*/) { iListBox.HandleEventL( aEvent, aListboxIndex ); iParent.DrawDeferred(); @@ -376,9 +349,9 @@ // The listbox can also have command items. TInt result = iListBox.NumberOfItems() - CommandItemCount(); if ( result < 0 ) - { - result = KNumberOfContacts; // No contacts - } + { + result = KNumberOfContacts; // No contacts + } return result; } @@ -518,53 +491,53 @@ MVPbkContactLinkArray* CPbk2NamesListEmptyState::SelectedContactsOrFocusedContactL() const { - CVPbkContactLinkArray* array = NULL; - // my card is showing on empty list, check if the wanted contact is it - TInt currentItem = iListBox.CurrentItemIndex(); - // if focused index is command item - if( currentItem < CommandItemCount() ) - { - // check if the command is my card ( this search is copied from CommandItemAt - function to avoid const cast) - // Some of the commands might be disabled. Skip those. - TInt enabledCount = 0; - TInt indexOfResult = KErrNotFound; - for ( TInt n = 0; n < iCommandItems.Count() && indexOfResult == KErrNotFound; ++n ) - { - if ( iCommandItems[ n ]->IsEnabled() ) - { - enabledCount++; - if ( enabledCount-1 == currentItem ) - { - indexOfResult = n; - } - } - } - MPbk2UiControlCmdItem* item = iCommandItems[ indexOfResult ]; - // check if the command item was a my card - if( item->CommandId() == EPbk2CmdOpenMyCard ) - { - // get extension point and my card link - TAny* object = item->ControlCmdItemExtension( TUid::Uid( KPbk2ControlCmdItemExtensionUID ) ); - if( object ) - { - MPbk2DoubleListboxCmdItemExtension* extension = - static_cast( object ); - // if extension exists - if( extension ) - { - const MVPbkContactLink* link = extension->Link(); - // if link exists, add it to the array - if( link ) - { - array = CVPbkContactLinkArray::NewLC(); - array->AppendL( link->CloneLC() ); - CleanupStack::Pop( 2 ); // array, link - } - } - } - } - } - return array; + CVPbkContactLinkArray* array = NULL; + // my card is showing on empty list, check if the wanted contact is it + TInt currentItem = iListBox.CurrentItemIndex(); + // if focused index is command item + if( currentItem < CommandItemCount() ) + { + // check if the command is my card ( this search is copied from CommandItemAt - function to avoid const cast) + // Some of the commands might be disabled. Skip those. + TInt enabledCount = 0; + TInt indexOfResult = KErrNotFound; + for ( TInt n = 0; n < iCommandItems.Count() && indexOfResult == KErrNotFound; ++n ) + { + if ( iCommandItems[ n ]->IsEnabled() ) + { + enabledCount++; + if ( enabledCount-1 == currentItem ) + { + indexOfResult = n; + } + } + } + MPbk2UiControlCmdItem* item = iCommandItems[ indexOfResult ]; + // check if the command item was a my card + if( item->CommandId() == EPbk2CmdOpenMyCard ) + { + // get extension point and my card link + TAny* object = item->ControlCmdItemExtension( TUid::Uid( KPbk2ControlCmdItemExtensionUID ) ); + if( object ) + { + MPbk2DoubleListboxCmdItemExtension* extension = + static_cast( object ); + // if extension exists + if( extension ) + { + const MVPbkContactLink* link = extension->Link(); + // if link exists, add it to the array + if( link ) + { + array = CVPbkContactLinkArray::NewLC(); + array->AppendL( link->CloneLC() ); + CleanupStack::Pop( 2 ); // array, link + } + } + } + } + } + return array; } // -------------------------------------------------------------------------- @@ -634,17 +607,17 @@ // -------------------------------------------------------------------------- // TInt CPbk2NamesListEmptyState::CommandItemCount() const - { + { // Some of the commands might be disabled. Don't count those. - TInt enabledCommandCount = 0; - for ( TInt n = 0; n < iCommandItems.Count(); ++n ) - { - if ( iCommandItems[ n ]->IsEnabled() ) - { - enabledCommandCount++; - } - } - return enabledCommandCount; + TInt enabledCommandCount = 0; + for ( TInt n = 0; n < iCommandItems.Count(); ++n ) + { + if ( iCommandItems[ n ]->IsEnabled() ) + { + enabledCommandCount++; + } + } + return enabledCommandCount; } // -------------------------------------------------------------------------- @@ -653,24 +626,24 @@ // const MPbk2UiControlCmdItem& CPbk2NamesListEmptyState::CommandItemAt( TInt aIndex ) const - { + { // Some of the commands might be disabled. Skip those. - TInt enabledCount = 0; - TInt indexOfResult = KErrNotFound; - for ( TInt n = 0; n < iCommandItems.Count()&& indexOfResult == KErrNotFound; ++n ) - - { - if ( iCommandItems[ n ]->IsEnabled() ) - { - enabledCount++; - if ( enabledCount-1 == aIndex ) - { - indexOfResult = n; - } - } - } - return *iCommandItems[ indexOfResult ]; - } + TInt enabledCount = 0; + TInt indexOfResult = KErrNotFound; + for ( TInt n = 0; n < iCommandItems.Count()&& indexOfResult == KErrNotFound; ++n ) + + { + if ( iCommandItems[ n ]->IsEnabled() ) + { + enabledCount++; + if ( enabledCount-1 == aIndex ) + { + indexOfResult = n; + } + } + } + return *iCommandItems[ indexOfResult ]; + } // -------------------------------------------------------------------------- // CPbk2NamesListEmptyState::FocusedCommandItem @@ -678,9 +651,9 @@ // const MPbk2UiControlCmdItem* CPbk2NamesListEmptyState::FocusedCommandItem() const - { - const MPbk2UiControlCmdItem* cmdItem = NULL; - // Is the focus on a command item: + { + const MPbk2UiControlCmdItem* cmdItem = NULL; + // Is the focus on a command item: TInt focusListIndex = iListBox.CurrentItemIndex(); const TInt commandItemCount = CommandItemCount(); if ( focusListIndex != KErrNotFound && focusListIndex < commandItemCount ) @@ -688,7 +661,7 @@ // Yes it's a command item. cmdItem = &CommandItemAt(focusListIndex); } - return cmdItem; + return cmdItem; } // -------------------------------------------------------------------------- @@ -696,7 +669,7 @@ // -------------------------------------------------------------------------- // void CPbk2NamesListEmptyState::DeleteCommandItemL( TInt /*aIndex*/ ) - { + { // ownership & management of iCommandItems is wasted in names list // control. Do nothing here } @@ -709,7 +682,7 @@ { // ownership & management of iCommandItems is wasted in names list // control. Do nothing here - } + } // -------------------------------------------------------------------------- // CPbk2NamesListEmptyState::DynInitMenuPaneL @@ -725,9 +698,13 @@ TInt pos; // Stores the position of the searched menu item. // This position is not needed or used anywhere - if ( aMenuPane->MenuItemExists ( EAknCmdMarkingModeEnter, pos ) ) + if (aMenuPane->MenuItemExists(EAknUnmarkAll, pos)) { - aMenuPane->SetItemDimmed( EAknCmdMarkingModeEnter, ETrue ); + aMenuPane->SetItemDimmed(EAknUnmarkAll, ETrue); + } + if (aMenuPane->MenuItemExists(EAknMarkAll, pos)) + { + aMenuPane->SetItemDimmed(EAknMarkAll, ETrue); } } @@ -967,9 +944,9 @@ // ownership not transferred iListBox.SetListCommands( &iCommandItems ); SubscribeCmdItemsVisibility(); - UpdateCommandEnabled( EPbk2CmdRcl, ETrue ); + UpdateCommandEnabled( EPbk2CmdRcl, ETrue ); UpdateCommandEnabled( EPbk2CmdAddFavourites, EFalse ); - //MyCard is stored separately and may also contain data + //MyCard is stored separately and may also contain data UpdateCommandEnabled( EPbk2CmdOpenMyCard, ETrue ); } else @@ -985,20 +962,9 @@ void CPbk2NamesListEmptyState::CmdItemVisibilityChanged( TInt aCmdItemId, TBool aVisible ) { TInt cmdItemIndex = FindCommand(aCmdItemId); - TRAP_IGNORE( - // If command item is changed to be visible, set its hidden selection to ETrue. - if( aVisible ) - { - TInt enableCmdCount = EnabledCommandCount(); - TListItemProperties prop( iListBox.ItemDrawer()->Properties(enableCmdCount) ); - prop.SetHiddenSelection(aVisible); - iListBox.ItemDrawer()->SetPropertiesL(enableCmdCount-1, prop); - } - - HandleCommandEventL( + TRAP_IGNORE( HandleCommandEventL( (aVisible ? EItemAdded : EItemRemoved), - cmdItemIndex); - ); + cmdItemIndex) ); } // -------------------------------------------------------------------------- @@ -1083,21 +1049,4 @@ } } -// -------------------------------------------------------------------------- -// CPbk2NamesListEmptyState::EnabledCommandCount -// -------------------------------------------------------------------------- -// -TInt CPbk2NamesListEmptyState::EnabledCommandCount() const - { - TInt result = 0; - for ( TInt i = 0; i < iCommandItems.Count(); ++i ) - { - if(iCommandItems[i]->IsEnabled()) - { - result++; - } - } - return result; - } - // End of File diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/UIControls/src/CPbk2NamesListFilteredState.cpp --- a/phonebookui/Phonebook2/UIControls/src/CPbk2NamesListFilteredState.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/UIControls/src/CPbk2NamesListFilteredState.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -1130,21 +1130,9 @@ void CPbk2NamesListFilteredState::CmdItemVisibilityChanged( TInt aCmdItemId, TBool aVisible ) { TInt cmdItemIndex = FindCommand(aCmdItemId); - TInt cmdListBoxIndex = EnabledCommandCount(); - if( aVisible ) - { - cmdListBoxIndex--; - } - // Update the HiddenSelection property of the command items. - TListItemProperties prop( iListBox.ItemDrawer()->Properties(cmdListBoxIndex) ); - prop.SetHiddenSelection(aVisible); - TRAP_IGNORE( - iListBox.ItemDrawer()->SetPropertiesL(cmdListBoxIndex, prop); - - HandleCommandEventL( + TRAP_IGNORE( HandleCommandEventL( (aVisible ? EItemAdded : EItemRemoved), - cmdItemIndex); - ); + cmdItemIndex) ); } // -------------------------------------------------------------------------- @@ -1229,21 +1217,4 @@ } } -// -------------------------------------------------------------------------- -// CPbk2NamesListFilteredState::EnabledCommandCount -// -------------------------------------------------------------------------- -// -TInt CPbk2NamesListFilteredState::EnabledCommandCount() const - { - TInt result = 0; - for ( TInt i = 0; i < iCommandItems.Count(); ++i ) - { - if(iCommandItems[i]->IsEnabled()) - { - result++; - } - } - return result; - } - // End of File diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/UIControls/src/CPbk2NamesListNotReadyState.cpp --- a/phonebookui/Phonebook2/UIControls/src/CPbk2NamesListNotReadyState.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/UIControls/src/CPbk2NamesListNotReadyState.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -23,7 +23,7 @@ #include "CPbk2ContactViewListBox.h" #include "CPbk2NamesListControl.h" #include -#include +#include // System includes #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/UIControls/src/CPbk2NamesListReadyState.cpp --- a/phonebookui/Phonebook2/UIControls/src/CPbk2NamesListReadyState.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/UIControls/src/CPbk2NamesListReadyState.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -1496,21 +1496,56 @@ void CPbk2NamesListReadyState::DynInitMenuPaneL( TInt aResourceId, CEikMenuPane* aMenuPane) const { - TInt commandItemCount = CommandItemCount(); - - // Stores the position of the searched menu item. - // This position is not needed or used anywhere - TInt pos; + AknSelectionService::HandleMarkableListDynInitMenuPane + (aResourceId, aMenuPane, &iListBox); + + TInt focusedItem = iListBox.View()->CurrentItemIndex(); + TBool markHidden = iListBox.View()->ItemIsSelected( focusedItem ); + TBool unmarkHidden = !iListBox.View()->ItemIsSelected( focusedItem ); + TBool markAllHidden = ( iListBox.Model()->NumberOfItems() == 0 ) || + ( iListBox.SelectionIndexes()->Count() == iListBox.Model()->NumberOfItems() ); + TBool unmarkAllHidden = ( iListBox.Model()->NumberOfItems() == 0 ) || + ( iListBox.SelectionIndexes()->Count() == 0 ); + + TInt position; + if (aMenuPane->MenuItemExists(EAknCmdMark, position)) + { + aMenuPane->SetItemDimmed(EAknCmdMark, markHidden); + } + if (aMenuPane->MenuItemExists(EAknCmdUnmark, position)) + { + aMenuPane->SetItemDimmed(EAknCmdUnmark, unmarkHidden); + } + if (aMenuPane->MenuItemExists(EAknMarkAll, position)) + { + aMenuPane->SetItemDimmed(EAknMarkAll, markAllHidden); + } + if (aMenuPane->MenuItemExists(EAknUnmarkAll, position)) + { + aMenuPane->SetItemDimmed(EAknUnmarkAll, unmarkAllHidden); + } + + // When all contacts are marked in the listbox, the command items are not marked. + // This code snippet dims out the Mark All menu item which is shown since the + // list box cannot differentiate a command and a contact item - if ((iListBox.SelectionIndexes()->Count() + commandItemCount ) - == iListBox.Model()->NumberOfItems()) + TInt commandItemCount = CommandItemCount(); + + + if ((iListBox.SelectionIndexes()->Count() + commandItemCount ) == iListBox.Model()->NumberOfItems()) { - if (aMenuPane->MenuItemExists( EAknCmdMarkingModeEnter, pos ) ) + TInt i; // Stores the position of the searched menu item. + // This position is not needed or used anywhere + if (aMenuPane->MenuItemExists(EAknMarkAll, i)) { - aMenuPane->SetItemDimmed( EAknCmdMarkingModeEnter, ETrue ); + aMenuPane->SetItemDimmed(EAknMarkAll, ETrue); } } + // If there's any, command items are always placed at the top of the list box. + // By comparing the list box current item index with the command item count, we are trying to find out + // if the current focused item is command item or not. + } // -------------------------------------------------------------------------- @@ -1896,14 +1931,36 @@ // HandleItemRemovalL because they reset markings TBool marked = ContactsMarked(); - // Handle list box changes - // Promotion item "Add to favourites" should not be visible if top view is - // not base view (iViewStack.Level() !== 0). Remote search may be shown when there - // is text entered in find box. MyCard enabled similarly as add favorites. - TBool addFavoOk = iViewStack.Level() == 0 && !(iFindBox && iFindBox->TextLength()); - UpdateCommandEnabled( EPbk2CmdAddFavourites, addFavoOk ); - UpdateCommandEnabled( EPbk2CmdRcl, !addFavoOk ); - UpdateCommandEnabled( EPbk2CmdOpenMyCard, addFavoOk ); + // Promotion item "Add to favourites" and "My card" should be visible, + // the conditions are as following: + // 1. Top view is base view (iViewStack.Level() == 0). + // 2. There is no text entered in find box. + // 3. There is text entered in find box, but the text is space. + // When promotion item "Add to favourites" and "My card" are visible, + // remote search should not be shown. + TBool showFavAndMyCard = ETrue; + if ( iFindBox ) + { + RBuf searchText; + searchText.CreateL ( iFindBox->TextLength() ); + iFindBox->GetSearchText( searchText ); + CleanupClosePushL( searchText ); + searchText.TrimLeft(); + if ( searchText.Length() != 0 ) + { + showFavAndMyCard = EFalse; + } + CleanupStack::PopAndDestroy( &searchText ); + } + if ( iViewStack.Level() != 0 ) + { + showFavAndMyCard = EFalse; + } + + // Update the list box. + UpdateCommandEnabled( EPbk2CmdAddFavourites, showFavAndMyCard ); + UpdateCommandEnabled( EPbk2CmdRcl, !showFavAndMyCard ); + UpdateCommandEnabled( EPbk2CmdOpenMyCard, showFavAndMyCard ); if ( countAfter > countBefore ) //count does not contain command items { @@ -2042,22 +2099,9 @@ void CPbk2NamesListReadyState::CmdItemVisibilityChanged( TInt aCmdItemId, TBool aVisible ) { TInt cmdItemIndex = FindCommand(aCmdItemId); - TInt cmdListBoxIndex = EnabledCommandCount(); - if( aVisible ) - { - cmdListBoxIndex--; - } - // Update the HiddenSelection property of the command items. - TListItemProperties prop( iListBox.ItemDrawer()->Properties(cmdListBoxIndex) ); - prop.SetHiddenSelection(aVisible); - - TRAP_IGNORE( - iListBox.ItemDrawer()->SetPropertiesL(cmdListBoxIndex, prop); - - HandleCommandEventL( - (aVisible ? EItemAdded : EItemRemoved), - cmdItemIndex); - ); + TRAP_IGNORE( HandleCommandEventL( + (aVisible ? EItemAdded : EItemRemoved), + cmdItemIndex) ); } // -------------------------------------------------------------------------- @@ -2103,40 +2147,19 @@ PBK2_DEBUG_PRINT(PBK2_DEBUG_STRING ("CPbk2NamesListReadyState::RestoreMarkedItemsL: %d items"), aSelectedItems.Count() ); - + + DisableRedrawEnablePushL(); + iListBox.ClearSelection(); const TInt count = aSelectedItems.Count(); - if ( count > 0 ) + for ( TInt i = 0; i < count; ++i ) { - CListBoxView::CSelectionIndexArray* updateSelections = - new(ELeave) CArrayFixFlat( count ); - CleanupStack::PushL( updateSelections ); - - // Get the index of each selected item. If one of items could not be found, break. - for ( TInt i = 0; i < count; ++i ) + TInt index = iViewStack.IndexOfBookmarkL( aSelectedItems.At( i ) ) + CommandItemCount(); + if ( index >= 0 ) { - TInt index = iViewStack.IndexOfBookmarkL( aSelectedItems.At( i ) ) + CommandItemCount(); - if ( index >= 0 ) - { - updateSelections->AppendL( index ); - } - else - { - break; - } + iListBox.View()->SelectItemL( index ); } - - // If all the selected items can be found in iViewStack, update the list box. - // The list box will change nothing if some of selected items are not found in iViewStack. - if ( updateSelections->Count() == count ) - { - DisableRedrawEnablePushL(); - iListBox.ClearSelection(); - iListBox.SetSelectionIndexesL( updateSelections ); - CleanupStack::PopAndDestroy(); // DisableRedrawEnablePushL - } - - CleanupStack::PopAndDestroy( updateSelections ); // Destroy updateSelections } + CleanupStack::PopAndDestroy(); // DisableRedrawEnablePushL } // -------------------------------------------------------------------------- diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/UIControls/src/CPbk2PhonebookInfoDlg.cpp --- a/phonebookui/Phonebook2/UIControls/src/CPbk2PhonebookInfoDlg.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/UIControls/src/CPbk2PhonebookInfoDlg.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -21,7 +21,7 @@ #include "CPbk2StoreInfoItemBuilder.h" #include "MPbk2StoreInfoUiItem.h" -#include +#include #include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/UIControls/src/CPbk2PredictiveSearchFilter.cpp --- a/phonebookui/Phonebook2/UIControls/src/CPbk2PredictiveSearchFilter.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/UIControls/src/CPbk2PredictiveSearchFilter.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -36,7 +36,7 @@ #include #include #include -#include +#include #include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/UIControls/src/CPbk2ReadingFieldEditorVisitor.cpp --- a/phonebookui/Phonebook2/UIControls/src/CPbk2ReadingFieldEditorVisitor.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/UIControls/src/CPbk2ReadingFieldEditorVisitor.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -21,7 +21,7 @@ // Phonebook 2 #include #include -#include +#include // Virtual Phonebook #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/UIControls/src/CPbk2SelectFieldDlg.cpp --- a/phonebookui/Phonebook2/UIControls/src/CPbk2SelectFieldDlg.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/UIControls/src/CPbk2SelectFieldDlg.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -26,7 +26,7 @@ #include #include #include -#include +#include #include #include "CPbk2FieldAnalyzer.h" #include @@ -338,9 +338,9 @@ { if ( aKeyEvent.iCode == EKeyEscape ) { - // When the popup list is prompting for selection, if the user closes Phonebook application from FSW, - // the dialog is to be closed otherwise re-enter Phonebook would result in wrong UI behavior. - AttemptExitL( EFalse); + // when popup is pending for selection, contact is closed from FSW + // after application key is long pressed, dialog has to be closed + AttemptExitL( EFalse ); } else { diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/UIControls/src/CPbk2SettingsListControl.cpp --- a/phonebookui/Phonebook2/UIControls/src/CPbk2SettingsListControl.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/UIControls/src/CPbk2SettingsListControl.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -28,7 +28,7 @@ #include "Phonebook2PrivateCRKeys.h" // From Phonebook 2 -#include +#include #include #include #include @@ -38,8 +38,6 @@ #include #include #include -#include -#include //Pbk2Debug #include "Pbk2Debug.h" @@ -311,26 +309,6 @@ //Edit selection setting item //result is ETrue if OK pressed result = iSelectionSettingItem->EditItemL(); - - TBool driveSpaceFull( EFalse ); - driveSpaceFull = SysUtil::FFSSpaceBelowCriticalLevelL( &CCoeEnv::Static()->FsSession() ); - if ( driveSpaceFull ) - { - //If the disk is full, a write operation cannot complete. So restore - //the previous state. - iEikonEnv->HandleError(KErrDiskFull); - CSelectionItemList& oldItem( iSettingListState->ItemListState() ); - CSelectionItemList& item( iSettingListState->SelectionItemList() ); - TInt count = item.Count(); - for ( TInt i(0); i < count; ++i ) - { - TBool select = oldItem.At(i)->SelectionStatus(); - item.At(i)->SetSelectionStatus( select ); - } - iSelectionSettingItem->RestoreStateL(); - result = EFalse; - } - if ( result ) { //Is selection setting list changed by user diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/UIControls/src/CPbk2SettingsListState.cpp --- a/phonebookui/Phonebook2/UIControls/src/CPbk2SettingsListState.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/UIControls/src/CPbk2SettingsListState.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -135,16 +135,6 @@ } // -------------------------------------------------------------------------- -// CPbk2SettingsListState::ItemListState -// -------------------------------------------------------------------------- -// -CSelectionItemList& CPbk2SettingsListState::ItemListState() - { - __ASSERT_DEBUG( iItemListState, Panic(EPanicItemListStateNULL)); - return *iItemListState; - } - -// -------------------------------------------------------------------------- // CPbk2SettingsListState::SupportedStores // -------------------------------------------------------------------------- // diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/UIControls/src/CPbk2StoreInfoItemBuilder.cpp --- a/phonebookui/Phonebook2/UIControls/src/CPbk2StoreInfoItemBuilder.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/UIControls/src/CPbk2StoreInfoItemBuilder.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -26,7 +26,7 @@ #include #include #include -#include +#include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/UIControls/src/CPbk2StoreListQuery.cpp --- a/phonebookui/Phonebook2/UIControls/src/CPbk2StoreListQuery.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/UIControls/src/CPbk2StoreListQuery.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -22,7 +22,7 @@ #include -#include +#include #include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/UIControls/src/CPbk2ThumbnailManager.cpp --- a/phonebookui/Phonebook2/UIControls/src/CPbk2ThumbnailManager.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/UIControls/src/CPbk2ThumbnailManager.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -44,7 +44,7 @@ #include //Pbk2 -#include +#include #include namespace { diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/UIControls/src/CPbk2ThumbnailPopup.cpp --- a/phonebookui/Phonebook2/UIControls/src/CPbk2ThumbnailPopup.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/UIControls/src/CPbk2ThumbnailPopup.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -28,7 +28,7 @@ #include #include #include -#include +#include // Virtual Phonebook #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/UIControls/src/CPbk2UIFieldArray.cpp --- a/phonebookui/Phonebook2/UIControls/src/CPbk2UIFieldArray.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/UIControls/src/CPbk2UIFieldArray.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -17,7 +17,7 @@ #include "CPbk2UIFieldArray.h" #include "CPbk2UIField.h" -#include +#include // Phonebook 2 #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/UIControls/src/Pbk2AddressTools.cpp --- a/phonebookui/Phonebook2/UIControls/src/Pbk2AddressTools.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/UIControls/src/Pbk2AddressTools.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -18,7 +18,7 @@ #include "Pbk2AddressTools.h" // Phonebook 2 -#include +#include #include "Pbk2UIFieldProperty.hrh" // Virtual Phonebook diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/UIControls/src/Pbk2ContactEditorFieldFactory.cpp --- a/phonebookui/Phonebook2/UIControls/src/Pbk2ContactEditorFieldFactory.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/UIControls/src/Pbk2ContactEditorFieldFactory.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -38,7 +38,7 @@ #include "CPbk2ContactEditorUIAddressOfficeField.h" #include #include "CPbk2IconInfoContainer.h" -#include +#include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/UIControls/src/Pbk2ImageCommands.cpp --- a/phonebookui/Phonebook2/UIControls/src/Pbk2ImageCommands.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/UIControls/src/Pbk2ImageCommands.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -36,9 +36,9 @@ #include #include "Pbk2DataCaging.hrh" #include "Pbk2PresentationUtils.h" -#include -#include -#include +#include +#include +#include #include // MPbk2ImageSetObserver #include // MAknServerAppExitObserver @@ -49,7 +49,7 @@ #include #include #include -#include +#include // System includes #include @@ -60,7 +60,7 @@ #include #include // CDocumentHandler #include // TDataType -#include +#include #include #include #include @@ -619,34 +619,27 @@ services.ContactManager() ); CleanupStack::PushL( imageManager ); - const MVPbkFieldType* thumbType = services.ContactManager().FieldTypes().Find( - R_VPBK_FIELD_TYPE_THUMBNAILPIC ); - - // show a confirmation query if contact has an image - if (thumbType && imageManager->HasImage( *aContact, *thumbType ) ) - { - if ( CAknQueryDialog::NewL()->ExecuteLD( - R_PHONEBOOK2_REMOVE_IMAGE_CONFIRMATION_DIALOG ) ) - { - TPbk2StoreContactAnalyzer analyzer( - services.ContactManager(), aContact ); - TInt imageIndex = analyzer.HasFieldL( R_PHONEBOOK2_IMAGE_SELECTOR ); + if( CAknQueryDialog::NewL()->ExecuteLD( + R_PHONEBOOK2_REMOVE_IMAGE_CONFIRMATION_DIALOG ) ) + { + TPbk2StoreContactAnalyzer analyzer( + services.ContactManager(), aContact ); + TInt imageIndex = analyzer.HasFieldL( R_PHONEBOOK2_IMAGE_SELECTOR ); - if ( imageIndex != KErrNotFound ) - { - //aContact->RemoveField( imageIndex ); - //Instead of above we don't remove the field, just zero it's data - MVPbkContactFieldData& data(aContact->Fields(). - FieldAt( imageIndex ).FieldData()); - MVPbkContactFieldTextData::Cast( data ).SetTextL(KNullDesC); - } + if ( imageIndex != KErrNotFound ) + { + //aContact->RemoveField( imageIndex ); + //Instead of above we don't remove the field, just zero it's data + MVPbkContactFieldData& data(aContact->Fields(). + FieldAt( imageIndex ).FieldData()); + MVPbkContactFieldTextData::Cast( data ).SetTextL(KNullDesC); + } - const MVPbkFieldType* thumbFieldType = ThumbnailFieldTypeL(services); - imageManager->RemoveImage( *aContact, *thumbFieldType ); - } - } - + const MVPbkFieldType* thumbFieldType = ThumbnailFieldTypeL(services); + imageManager->RemoveImage( *aContact, *thumbFieldType ); + } CleanupStack::PopAndDestroy( imageManager ); + CleanupStack::PopAndDestroy(); // services return NULL; // synchronous operation diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/UIControls/src/Pbk2RingtoneCommands.cpp --- a/phonebookui/Phonebook2/UIControls/src/Pbk2RingtoneCommands.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/UIControls/src/Pbk2RingtoneCommands.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -29,9 +29,9 @@ #include #include -#include -#include -#include +#include +#include +#include // VPbk includes #include @@ -39,7 +39,7 @@ #include #include #include -#include +#include // System includes #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/UIControls/src/Pbk2TitlePanePictureFactory.cpp --- a/phonebookui/Phonebook2/UIControls/src/Pbk2TitlePanePictureFactory.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/UIControls/src/Pbk2TitlePanePictureFactory.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -25,7 +25,7 @@ #include #include #include -#include +#include // Virtual Phonebook #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/UIControls/src/TPbk2DeleteItemManager.cpp --- a/phonebookui/Phonebook2/UIControls/src/TPbk2DeleteItemManager.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/UIControls/src/TPbk2DeleteItemManager.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -21,7 +21,7 @@ // Phonebook 2 #include "MPbk2ContactEditorFieldArray.h" #include -#include +#include #include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/UIControls/src/cpbk2contacteditornewowncontact.cpp --- a/phonebookui/Phonebook2/UIControls/src/cpbk2contacteditornewowncontact.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/UIControls/src/cpbk2contacteditornewowncontact.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -224,15 +224,16 @@ { PBK2_DEBUG_PRINT( PBK2_DEBUG_STRING ( "CPbk2ContactEditorNewOwnContact::HandleIdleDelete(0x%x)" ), this ); - iInputAbsorber->StopWait(); - // Notify client asynchronously to let Delete Operation complete firstly and - // then the client will be notified to do the other things in the RunL() function. - iLatestResult.iExtension = NULL; - iLatestResult.iStoreContact = NULL; - iLatestResult.iOpCode = MVPbkContactObserver::EContactDelete; - TRequestStatus* status = &iStatus; - User::RequestComplete(status, KErrNone); - SetActive(); + + iInputAbsorber->StopWait(); + MPbk2ContactEditorEventObserver* observer = iObserver; + iObserver = NULL; + MVPbkContactObserver::TContactOpResult result; + // Disable warnings by nulling the data members + result.iStoreContact = NULL; + result.iExtension = NULL; + result.iOpCode = MVPbkContactObserver::EContactDelete; + observer->ContactEditorOperationCompleted( result, iEditorParams ); } // -------------------------------------------------------------------------- diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/UIControls/src/cpbk2contactviewcustomlistboxdata.cpp --- a/phonebookui/Phonebook2/UIControls/src/cpbk2contactviewcustomlistboxdata.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/UIControls/src/cpbk2contactviewcustomlistboxdata.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -364,7 +364,9 @@ iKineticScrolling = CAknPhysics::FeatureEnabled(); +#ifdef PBK2_AVKON_TOUCH_MARKINGMODE_CHANGES LoadMarkingIconsL(); +#endif // PBK2_AVKON_TOUCH_MARKINGMODE_CHANGES } @@ -589,10 +591,12 @@ // void CPbk2ContactViewCustomListBoxDataExtension::SkinChangedL() { +#ifdef PBK2_AVKON_TOUCH_MARKINGMODE_CHANGES DeleteAnim(); TryCreateAnimation(); CreateColorBitmapsL(); LoadMarkingIconsL(); +#endif // PBK2_AVKON_TOUCH_MARKINGMODE_CHANGES } // ----------------------------------------------------------------------------- // CPbk2ContactViewCustomListBoxDataExtension::SkinChanged @@ -1184,6 +1188,7 @@ // void CPbk2ContactViewCustomListBoxDataExtension::LoadMarkingIconsL() { +#ifdef PBK2_AVKON_TOUCH_MARKINGMODE_CHANGES if ( !iMarkingIconArray ) { iMarkingIconArray = new ( ELeave ) CAknIconArray( 2 ); @@ -1212,6 +1217,7 @@ CleanupStack::PushL( icon ); iMarkingIconArray->AppendL( icon ); CleanupStack::Pop( icon ); +#endif // PBK2_AVKON_TOUCH_MARKINGMODE_CHANGES } CCoeControl *CPbk2ContactViewCustomListBoxData::Control() const @@ -2035,6 +2041,7 @@ TRgb aTextColor = aHighlight ? aColors.iHighlightedText : aColors.iText; +#ifdef PBK2_AVKON_TOUCH_MARKINGMODE_CHANGES TBool markingMode = EFalse; TRect itemRect( aRect ); @@ -2050,6 +2057,7 @@ AknLayoutScalable_Avkon::list_single_graphic_pane_t1( 0 ).LayoutLine().il; } } +#endif // PBK2_AVKON_TOUCH_MARKINGMODE_CHANGES MAknsSkinInstance *skin = AknsUtils::SkinInstance(); MAknsControlContext *cc = AknsDrawUtils::ControlContext( Control() ); @@ -2065,8 +2073,13 @@ if ( iExtension->iSubCellsMightIntersect ) { +#ifdef PBK2_AVKON_TOUCH_MARKINGMODE_CHANGES CheckIfSubCellsIntersectL( &textLines[0], &rectClipped[0], *aText, itemRect ); } +#else + CheckIfSubCellsIntersectL( &textLines[0], &rectClipped[0], *aText, aRect ); + } +#endif // PBK2_AVKON_TOUCH_MARKINGMODE_CHANGES #ifdef RD_UI_TRANSITION_EFFECTS_LIST MAknListBoxTfxInternal *transApi = CAknListLoader::TfxApiInternal( &aGc ); #endif // RD_UI_TRANSITION_EFFECTS_LIST @@ -2107,6 +2120,7 @@ } DrawHighLight( aGc, aRect, aHighlight, skin ); +#ifdef PBK2_AVKON_TOUCH_MARKINGMODE_CHANGES if ( markingMode && !aItemProperties.IsSelectionHidden() ) { TAknLayoutRect layoutRect; @@ -2140,6 +2154,7 @@ } } +#endif // PBK2_AVKON_TOUCH_MARKINGMODE_CHANGES // The column draw loop column = 0; @@ -2255,8 +2270,13 @@ } TAknLayoutText textLayout; +#ifdef PBK2_AVKON_TOUCH_MARKINGMODE_CHANGES textLayout.LayoutText( itemRect, textLineLayout, usedFont ); TRect layoutedRect( itemRect); +#else + textLayout.LayoutText( aRect, textLineLayout, usedFont ); + TRect layoutedRect( aRect ); +#endif // PBK2_AVKON_TOUCH_MARKINGMODE_CHANGES // *2 == leave some room for marquee const TInt maxlen( KMaxColumnDataLength * 2 ); @@ -2303,7 +2323,11 @@ { iExtension->iMarquee->UseLogicalToVisualConversion( bidiConv ); +#ifdef PBK2_AVKON_TOUCH_MARKINGMODE_CHANGES if ( iExtension->iMarquee->DrawText( aGc, itemRect, textLineLayout, convBuf, usedFont, textColor ) ) +#else + if ( iExtension->iMarquee->DrawText( aGc, aRect, textLineLayout, convBuf, usedFont, textColor ) ) +#endif // PBK2_AVKON_TOUCH_MARKINGMODE_CHANGES { // all the loops have been executed textLayout.DrawText( aGc, convBuf, bidiConv, textColor ); @@ -2405,7 +2429,11 @@ TAknWindowLineLayout graphicLayout = iExtension->AtSL(subCellIndex).iGraphicLayout; TAknLayoutRect graphicRect; +#ifdef PBK2_AVKON_TOUCH_MARKINGMODE_CHANGES graphicRect.LayoutRect( itemRect,graphicLayout ); +#else + graphicRect.LayoutRect(aRect,graphicLayout); +#endif // PBK2_AVKON_TOUCH_MARKINGMODE_CHANGES TSize graphicSize( graphicRect.Rect().Size() ); if (index>=0 && IconArray()) @@ -2500,6 +2528,7 @@ return; } +#ifdef PBK2_AVKON_TOUCH_MARKINGMODE_CHANGES CEikListBox* listbox = static_cast( iExtension->iControl ); TBool markingMode = EFalse; TRect itemRect( aRect ); @@ -2516,12 +2545,19 @@ AknLayoutScalable_Avkon::list_single_graphic_pane_t1( 0 ).LayoutLine().il; } } +#endif // PBK2_AVKON_TOUCH_MARKINGMODE_CHANGES TInt extraVerticalSpace=(aRect.Height()-font->HeightInPixels()); TInt baseLineOffset=extraVerticalSpace/2+font->AscentInPixels(); +#ifdef PBK2_AVKON_TOUCH_MARKINGMODE_CHANGES TRect textRect( itemRect ); TRect textMRect; // textrect with margins. textRect.iBr.iX = itemRect.iTl.iX; +#else + TRect textRect( aRect ); + TRect textMRect; // textrect with margins. + textRect.iBr.iX=aRect.iTl.iX; +#endif // PBK2_AVKON_TOUCH_MARKINGMODE_CHANGES TInt column=0; TPtrC text; @@ -2531,12 +2567,20 @@ // be too difficult to do without - and this is cleaner solution. // pass 1, figures out x-coordinates for columns. +#ifdef PBK2_AVKON_TOUCH_MARKINGMODE_CHANGES TInt x = itemRect.iTl.iX; +#else + TInt x = aRect.iTl.iX; +#endif // PBK2_AVKON_TOUCH_MARKINGMODE_CHANGES TBool mirror = AknLayoutUtils::LayoutMirrored(); if (mirror) { +#ifdef PBK2_AVKON_TOUCH_MARKINGMODE_CHANGES x = itemRect.iBr.iX; +#else + x = aRect.iBr.iX; +#endif // PBK2_AVKON_TOUCH_MARKINGMODE_CHANGES } TInt maxx = x; while(column <= lastColumn) @@ -2609,6 +2653,15 @@ cc = SkinBackgroundContext(); } +#ifndef PBK2_AVKON_TOUCH_MARKINGMODE_CHANGES + // aRect is list item's rect, width of which is smaller than width of the list + // with a scroll bar. List needs to draw under scroll bar anyway, so we need to + // modify given rect here. + TRect r(aRect); + + CEikListBox* listbox = static_cast( iExtension->iControl ); +#endif // !PBK2_AVKON_TOUCH_MARKINGMODE_CHANGES + #ifdef RD_UI_TRANSITION_EFFECTS_LIST MAknListBoxTfxInternal *transApi = CAknListLoader::TfxApiInternal( &aGc ); @@ -2644,8 +2697,13 @@ #endif // RD_UI_TRANSITION_EFFECTS_LIST } +#ifdef PBK2_AVKON_TOUCH_MARKINGMODE_CHANGES if ( iExtension->iCurrentRow < listbox->BottomItemIndex() ) - +#else + CEikListBox* list = static_cast( iExtension->iControl ); + + if ( iExtension->iCurrentRow < list->BottomItemIndex() ) +#endif // PBK2_AVKON_TOUCH_MARKINGMODE_CHANGES { AknListUtils::DrawSeparator( aGc, aRect, aColors.iText, skin ); } @@ -2662,6 +2720,7 @@ } #endif // RD_UI_TRANSITION_EFFECTS_LIST +#ifdef PBK2_AVKON_TOUCH_MARKINGMODE_CHANGES if ( markingMode && !aItemProperties.IsSelectionHidden() ) { TAknLayoutRect layoutRect; @@ -2702,6 +2761,7 @@ EFalse ); } } +#endif // PBK2_AVKON_TOUCH_MARKINGMODE_CHANGES // The column draw loop column = 0; @@ -3322,8 +3382,11 @@ // too. if( KAknsMessageSkinChange == aType ) { +#ifdef PBK2_AVKON_TOUCH_MARKINGMODE_CHANGES TRAP_IGNORE( iExtension->SkinChangedL() ); - +#else + iExtension->SkinChanged(); +#endif // PBK2_AVKON_TOUCH_MARKINGMODE_CHANGES } else if(aType == KEikDynamicLayoutVariantSwitch) { diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/UIControls/src/cpbk2contactviewcustomlistboxitemdrawer.cpp --- a/phonebookui/Phonebook2/UIControls/src/cpbk2contactviewcustomlistboxitemdrawer.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/UIControls/src/cpbk2contactviewcustomlistboxitemdrawer.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -148,6 +148,19 @@ data->SetItemCellSize( iItemCellSize ); } +#ifndef RD_TOUCH2 +void CPbk2ContactViewCustomListBoxItemDrawer::DrawCurrentItemRect(const TRect& aRect) const +// +// Draw the item background +// + { + iGc->SetClippingRect(iViewRect); + iGc->SetBrushStyle(CGraphicsContext::ENullBrush); + iGc->SetPenColor(iHighlightedBackColor); // KDefaultLbxHighlightRectColor + iGc->DrawRect(aRect); + iGc->CancelClippingRect(); + } +#endif // !RD_TOUCH2 /** * Returns a pointer to the column data. Does not imply transfer of ownership. @@ -197,11 +210,13 @@ TInt pos = -1; TBool removeicon = (!aItemIsSelected && !ItemMarkReverse()) || (aItemIsSelected && ItemMarkReverse()); +#ifdef PBK2_AVKON_TOUCH_MARKINGMODE_CHANGES if ( Flags() & CListItemDrawer::EMarkingModeEnabled ) { removeicon = EFalse; } +#endif // PBK2_AVKON_TOUCH_MARKINGMODE_CHANGES if ( Flags() & EDrawMarkSelection && ItemMarkPosition() != -1 && removeicon) { repl.Set( ItemMarkReplacement() ); @@ -294,18 +309,7 @@ TListItemProperties CPbk2ContactViewCustomListBoxItemDrawer::Properties(TInt aItemIndex) const { - if ( !iPropertyArray ) - { - TListItemProperties prop( - CTextListItemDrawer::Properties( aItemIndex ) ); - // Do not allow marking other than contact items - if ( !ColumnData()->IsContactAtListboxIndex( aItemIndex ) ) - { - prop.SetHiddenSelection( ETrue ); - } - return prop; - } - + if (!iPropertyArray) return CTextListItemDrawer::Properties(aItemIndex); CAknListBoxFilterItems *filter = STATIC_CAST(CAknFilteredTextListBoxModel*,iModel)->Filter(); if (filter) { diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/UIControls/src/cpbk2predictiveviewstack.cpp --- a/phonebookui/Phonebook2/UIControls/src/cpbk2predictiveviewstack.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/UIControls/src/cpbk2predictiveviewstack.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -21,7 +21,7 @@ // Phonebook 2 / Virtual Phonebook #include #include -#include +#include #include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/UIPolicy/inc/CPbk2ContactViewSortPolicy.h --- a/phonebookui/Phonebook2/UIPolicy/inc/CPbk2ContactViewSortPolicy.h Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/UIPolicy/inc/CPbk2ContactViewSortPolicy.h Wed Oct 13 14:15:33 2010 +0300 @@ -73,17 +73,6 @@ TParam* aParam ); TInt PostProcessResult( TInt aSortUtilResult ); - /** - * Get the index of top contact field in sort order list - */ - TInt GetTopContactFieldIndex(); - /** - * Set sortkey array item from one field - */ - void SetSortKey( - CPbk2SortKeyArray* aSortKeyArray, - const MVPbkBaseContactField* aField, - TInt aIndex ); private: // Data /// Own: Sort Util to forward sorting requests @@ -101,8 +90,6 @@ TPbk2SortOrderFieldMapper iFieldMapper; /// Own: Indicates succesfull initialization TBool iSortPolicyParameterReceived; - /// Index of top contact field in iSortOrder - TInt iTopContactId; }; #endif // CPBK2CONTACTVIEWSORTPOLICY_H diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/UIPolicy/src/CPbk2ContactCopyPolicy.cpp --- a/phonebookui/Phonebook2/UIPolicy/src/CPbk2ContactCopyPolicy.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/UIPolicy/src/CPbk2ContactCopyPolicy.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -29,7 +29,7 @@ #include #include #include -#include +#include // Virtual Phonebook #include @@ -48,7 +48,7 @@ #include #include #include -#include +#include // System includes #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/UIPolicy/src/CPbk2ContactDuplicatePolicy.cpp --- a/phonebookui/Phonebook2/UIPolicy/src/CPbk2ContactDuplicatePolicy.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/UIPolicy/src/CPbk2ContactDuplicatePolicy.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -27,7 +27,7 @@ #include #include "Pbk2DataCaging.hrh" #include "Pbk2PresentationUtils.h" -#include +#include #include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/UIPolicy/src/CPbk2ContactFindPolicy.cpp --- a/phonebookui/Phonebook2/UIPolicy/src/CPbk2ContactFindPolicy.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/UIPolicy/src/CPbk2ContactFindPolicy.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -30,7 +30,7 @@ #include #include #include -#include +#include #include #include @@ -214,9 +214,10 @@ { FeatureManager::InitializeLibL(); TBool chinese = FeatureManager::FeatureSupported( KFeatureIdChinese ); + FeatureManager::UnInitializeLib(); - TBool korean = FeatureManager::FeatureSupported( KFeatureIdKorean ); - FeatureManager::UnInitializeLib(); + TBool korean = (User::Language() == ELangKorean); + if ( chinese || korean ) { match = MatchChineseContactNameL( aFindWords, aContact ); diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/UIPolicy/src/CPbk2ContactViewSortPolicy.cpp --- a/phonebookui/Phonebook2/UIPolicy/src/CPbk2ContactViewSortPolicy.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/UIPolicy/src/CPbk2ContactViewSortPolicy.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -22,7 +22,7 @@ #include "CPbk2SortKeyArray.h" #include "RPbk2LocalizedResourceFile.h" #include "Pbk2DataCaging.hrh" -#include +#include // Virtual Phonebook #include @@ -43,12 +43,6 @@ // Debugging headers #include -#include - -// Greater than any practical top contact number string -// which is in form like '0000000001'. -_LIT(KBigNumStr, "9999999999"); - /// Unnamed namespace for local definitions namespace { @@ -178,8 +172,6 @@ iSortOrder = CVPbkSortOrder::NewL(aParam->iSortOrder); iFieldMapper.SetSortOrder(*iSortOrder); - iTopContactId = GetTopContactFieldIndex(); - RPbk2LocalizedResourceFile resFile(aParam->iFs); resFile.OpenLC( KPbk2RomFileDrive, KDC_RESOURCE_FILES_DIR, KResourceFile ); @@ -213,8 +205,6 @@ delete iSortOrder; iSortOrder = sortOrder; iFieldMapper.SetSortOrder( *iSortOrder ); - - iTopContactId = GetTopContactFieldIndex(); } // -------------------------------------------------------------------------- @@ -285,14 +275,34 @@ const TInt lhsCount = iFieldMapper.FieldCount(); for ( i = 0; i < lhsCount; ++i ) { - SetSortKey( iLeftSortKeyArray, iFieldMapper.FieldAt(i), i ); + const MVPbkBaseContactField* lhsField = + iFieldMapper.FieldAt( i ); + if ( lhsField ) + { + iLeftSortKeyArray->SetText( MVPbkContactFieldTextData::Cast + ( lhsField->FieldData() ).Text(), i ); + } + else + { + iLeftSortKeyArray->SetText( KNullDesC, i ); + } } iFieldMapper.SetContactFields( aRhs.Fields() ); const TInt rhsCount = iFieldMapper.FieldCount(); for ( i = 0; i < rhsCount; ++i ) { - SetSortKey( iRightSortKeyArray, iFieldMapper.FieldAt(i), i ); + const MVPbkBaseContactField* rhsField = + iFieldMapper.FieldAt( i ); + if ( rhsField ) + { + iRightSortKeyArray->SetText( MVPbkContactFieldTextData::Cast + ( rhsField->FieldData() ).Text(), i ); + } + else + { + iRightSortKeyArray->SetText( KNullDesC, i ); + } } PBK2_PROFILE_END( Pbk2Profile::ESortPolicyCompareContacts ); @@ -382,60 +392,4 @@ return result; } -// -------------------------------------------------------------------------- -// CPbk2ContactViewSortPolicy::GetTopContactFieldIndex -// -------------------------------------------------------------------------- -// -TInt CPbk2ContactViewSortPolicy::GetTopContactFieldIndex() - { - TInt index = KErrNotFound; - for ( TInt i=0; iFieldTypeCount(); i++ ) - { - // Resource id of top contact field is R_VPBK_FIELD_TYPE_TOPCONTACT. - if ( iSortOrder->FieldTypeAt( i ).FieldTypeResId() == - R_VPBK_FIELD_TYPE_TOPCONTACT ) - { - index = i; - break; - } - } - return index; - } - -// -------------------------------------------------------------------------- -// CPbk2ContactViewSortPolicy::SetSortKey -// -------------------------------------------------------------------------- -// -void CPbk2ContactViewSortPolicy::SetSortKey( - CPbk2SortKeyArray* aSortKeyArray, - const MVPbkBaseContactField* aField, - TInt aIndex ) - { - TInt textLen = 0; - if ( aField ) - { - TPtrC text = MVPbkContactFieldTextData::Cast - ( aField->FieldData() ).Text(); - aSortKeyArray->SetText( text, aIndex ); - textLen = text.Length(); - } - if ( textLen == 0 ) - { - if ( aIndex == iTopContactId ) - { - // For some variants such as Chinese variant, - // empty string is less than not empty string. - // This will make topic contacts which have substantial top contact - // id strings after those with empty id strings. - // To prevent this, use a big number string instead of empty string - // and make sure top contacts in front of other contacts. - aSortKeyArray->SetText( KBigNumStr, aIndex ); - } - else - { - aSortKeyArray->SetText( KNullDesC, aIndex ); - } - } - } - // End of File diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/UIServices/src/CPbk2AiwAssignProvider.cpp --- a/phonebookui/Phonebook2/UIServices/src/CPbk2AiwAssignProvider.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/UIServices/src/CPbk2AiwAssignProvider.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -22,8 +22,8 @@ #include "CPbk2ServerAppConnection.h" #include "Pbk2UIServices.hrh" #include -#include -#include +#include +#include #include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/USIMExtension/inc/CPsu2CopyToSimFieldInfoArray.h --- a/phonebookui/Phonebook2/USIMExtension/inc/CPsu2CopyToSimFieldInfoArray.h Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/USIMExtension/inc/CPsu2CopyToSimFieldInfoArray.h Wed Oct 13 14:15:33 2010 +0300 @@ -120,16 +120,8 @@ * @return a reference to item in given index */ inline const TPsu2CopyToSimFieldInfo& operator[](TInt aIndex) const; - - /** - * Remove the fieldinfo which target type is not supported. - * Some target types defined in the rss file are not supported because of the limit - * of the sim card support. So the unsupported types must be removed from mapping - * array. - * @param aSupportedTypes: the supported type list. - */ - void RemoveUnSupportedFieldInfo( const MVPbkFieldTypeList& aSupportedTypes ); - + + /** * @param aSourceType the source field type * @return the info that for the aSourceType or NULL diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/USIMExtension/inc/CPsu2FixedDialingView.h --- a/phonebookui/Phonebook2/USIMExtension/inc/CPsu2FixedDialingView.h Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/USIMExtension/inc/CPsu2FixedDialingView.h Wed Oct 13 14:15:33 2010 +0300 @@ -24,8 +24,6 @@ #include #include #include -#include - // FORWARD DECLARATIONS class CAknNavigationControlContainer; @@ -47,8 +45,7 @@ class CPsu2FixedDialingView : public CPsu2NameListViewBase, public MPbk2EditedContactObserver, public MVPbkSingleContactOperationObserver, - public MVPbkContactObserver, - public MAknMarkingModeObserver + public MVPbkContactObserver { public: // Constructors and destructor @@ -88,25 +85,6 @@ void HandleControlEventL( MPbk2ContactUiControl& aControl, const TPbk2ControlEvent& aEvent ); - - public: // From MAknMarkingModeObserver - - /** - * This method is called when marking mode is activated or deactivated. - * - * @param aActivated @c ETrue if marking mode was activate, @c EFalse - * if marking mode was deactivated. - */ - void MarkingModeStatusChanged( TBool aActivated ); - - /** - * This method is called just before marking mode is closed. Client can - * either accept or decline closing. - * - * @return @c ETrue if marking mode should be closed, otherwise @c EFalse. - */ - TBool ExitMarkingMode() const; - private: // From CPsu2NameListViewBase void UpdateCbasL(); @@ -182,9 +160,6 @@ /// Ref: Eliminator of current contact editing dialog MPbk2DialogEliminator* iDlgEliminator; - // Flag to indicate whether Marking mode is active - TBool iMarkingModeOn; - }; #endif // CPSU2FIXEDDIALINGVIEW_H diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/USIMExtension/inc/Pbk2USimUI.rh --- a/phonebookui/Phonebook2/USIMExtension/inc/Pbk2USimUI.rh Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/USIMExtension/inc/Pbk2USimUI.rh Wed Oct 13 14:15:33 2010 +0300 @@ -49,7 +49,7 @@ { // VPBK_FIELD_TYPE_SELECTOR that defines the fields that are mapped from STRUCT sourceTypeSelector; - // The SIM field type resource id, from vpbkeng.rsg + // The SIM field type resource id, from VPbkEng.rsg LONG targetSimType; // Flags defined in Pbk2UsimUi.hrh BYTE flags = 0; diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/USIMExtension/rss/Pbk2USimFixedDialingView.rss --- a/phonebookui/Phonebook2/USIMExtension/rss/Pbk2USimFixedDialingView.rss Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/USIMExtension/rss/Pbk2USimFixedDialingView.rss Wed Oct 13 14:15:33 2010 +0300 @@ -51,11 +51,11 @@ }, MENU_TITLE { - menu_pane = R_AVKON_MENUPANE_MARK_MULTIPLE; + menu_pane = r_psu2_fixed_dialing_copy_menupane; }, MENU_TITLE { - menu_pane = r_psu2_fixed_dialing_copy_menupane; + menu_pane = R_AVKON_MENUPANE_MARKABLE_LIST; }, MENU_TITLE { diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/USIMExtension/rss/Pbk2USimSimCopy.rss --- a/phonebookui/Phonebook2/USIMExtension/rss/Pbk2USimSimCopy.rss Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/USIMExtension/rss/Pbk2USimSimCopy.rss Wed Oct 13 14:15:33 2010 +0300 @@ -15,7 +15,7 @@ * */ -#include +#include // ----------------------------------------------------------------------------- // @@ -218,152 +218,6 @@ }; } -// ----------------------------------------------------------------------------- -// -// R_PSU2_COPY_TO_USIM_FIELDTYPE_MAPPINGS -// A array that defines the rules for copying fields to the usim -// with additional numbers -// -// ----------------------------------------------------------------------------- -// -RESOURCE PSU2_COPY_TO_SIM_FIELDTYPE_MAPPINGS r_psu2_copy_to_usim_fieldtype_mappings - { - items = - { - PSU2_COPY_TO_SIM_FIELDTYPE_MAPPING - { - // Source: all email types - sourceTypeSelector = VPBK_FIELD_TYPE_SELECTOR - { - versitProperties = - { - VBK_FIELD_VERSIT_PROPERTY - { - name = EVPbkVersitNameEMAIL; - } - }; - }; - // Target: USIM supports only general email - targetSimType = R_VPBK_FIELD_TYPE_EMAILGEN; - iBlockingError = KPsu2EMailFullError; - }, - //To handle the situation of USIM supports more than one additional number. - PSU2_COPY_TO_SIM_FIELDTYPE_MAPPING - { - sourceTypeSelector = VPBK_FIELD_TYPE_SELECTOR - { - versitProperties = - { - VBK_FIELD_VERSIT_PROPERTY - { - name = EVPbkVersitNameTEL; - parameters = { EVPbkVersitParamHOME }; - } - }; - excludedParameters ={ EVPbkVersitParamFAX, EVPbkVersitParamWORK, - EVPbkVersitParamCELL, EVPbkVersitParamVIDEO }; - }; - // Target: USIM supports telephone( home ) - targetSimType = R_VPBK_FIELD_TYPE_LANDPHONEHOME; - flags = 0; - }, - PSU2_COPY_TO_SIM_FIELDTYPE_MAPPING - { - sourceTypeSelector = VPBK_FIELD_TYPE_SELECTOR - { - versitProperties = - { - VBK_FIELD_VERSIT_PROPERTY - { - name = EVPbkVersitNameTEL; - parameters = { EVPbkVersitParamWORK }; - } - }; - excludedParameters ={ EVPbkVersitParamFAX, EVPbkVersitParamHOME, - EVPbkVersitParamCELL, EVPbkVersitParamVIDEO }; - }; - - // Target: USIM supports telephone( work ) - targetSimType = R_VPBK_FIELD_TYPE_LANDPHONEWORK; - flags = 0; - }, - PSU2_COPY_TO_SIM_FIELDTYPE_MAPPING - { - sourceTypeSelector = VPBK_FIELD_TYPE_SELECTOR - { - versitProperties = - { - VBK_FIELD_VERSIT_PROPERTY - { - name = EVPbkVersitNameTEL; - parameters = { EVPbkVersitParamFAX }; - }, - VBK_FIELD_VERSIT_PROPERTY - { - name = EVPbkVersitNameTEL; - parameters = { EVPbkVersitParamFAX, EVPbkVersitParamHOME }; - }, - VBK_FIELD_VERSIT_PROPERTY - { - name = EVPbkVersitNameTEL; - parameters = { EVPbkVersitParamFAX,EVPbkVersitParamWORK}; - } - }; - excludedParameters ={ EVPbkVersitParamCELL, EVPbkVersitParamVIDEO }; - }; - // Target: USIM supports only fax general - targetSimType = R_VPBK_FIELD_TYPE_FAXNUMBERGEN; - flags = 0; - }, - PSU2_COPY_TO_SIM_FIELDTYPE_MAPPING - { - // Source: all number types - sourceTypeSelector = VPBK_FIELD_TYPE_SELECTOR - { - versitProperties = - { - VBK_FIELD_VERSIT_PROPERTY - { - name = EVPbkVersitNameTEL; - }, - VBK_FIELD_VERSIT_PROPERTY - { - name = EVPbkVersitNameX; - extensionName = "X-ASSISTANT-TEL"; - } - }; - nonVersitType = - { - EVPbkNonVersitTypeDTMF - }; - }; - // Target: SIM supports only mobile general - targetSimType = R_VPBK_FIELD_TYPE_MOBILEPHONEGEN; - flags = 0; - }, - PSU2_COPY_TO_SIM_FIELDTYPE_MAPPING - { - // Source: nick name - sourceTypeSelector = VPBK_FIELD_TYPE_SELECTOR - { - versitProperties = - { - VBK_FIELD_VERSIT_PROPERTY - { - name = EVPbkVersitNameX; - extensionName = "X-NICKNAME"; - } - }; - }; - // Target: nick name - targetSimType = R_VPBK_FIELD_TYPE_SECONDNAME; - // Nick name can be truncated. - flags = KPsu2AllowedToTruncate; - iBlockingError = KPsu2SecondNameFullError; - } - }; - } - // End of File diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/USIMExtension/rss/Pbk2USimUiRes.rss --- a/phonebookui/Phonebook2/USIMExtension/rss/Pbk2USimUiRes.rss Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/USIMExtension/rss/Pbk2USimUiRes.rss Wed Oct 13 14:15:33 2010 +0300 @@ -25,8 +25,8 @@ #include #include #include -#include -#include +#include +#include #include #include #include @@ -49,7 +49,7 @@ #include #include #include -#include +#include #include // System includes diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/USIMExtension/src/CPsu2ContactCopyInspector.cpp --- a/phonebookui/Phonebook2/USIMExtension/src/CPsu2ContactCopyInspector.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/USIMExtension/src/CPsu2ContactCopyInspector.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -25,7 +25,7 @@ #include #include #include -#include // field type res ids +#include // field type res ids CPsu2ContactCopyInspector::CPsu2ContactCopyInspector ( MPbk2ContactNameFormatter& aNameFormatter ) diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/USIMExtension/src/CPsu2ContactEditorExtension.cpp --- a/phonebookui/Phonebook2/USIMExtension/src/CPsu2ContactEditorExtension.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/USIMExtension/src/CPsu2ContactEditorExtension.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -22,9 +22,9 @@ #include "CPsu2CharConv.h" #include "CPsu2FdnContactEditorPhoneNumberField.h" #include -#include -#include -#include +#include +#include +#include #include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/USIMExtension/src/CPsu2CopyAllToPbkCmd.cpp --- a/phonebookui/Phonebook2/USIMExtension/src/CPsu2CopyAllToPbkCmd.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/USIMExtension/src/CPsu2CopyAllToPbkCmd.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -34,11 +34,11 @@ #include /// Use R_PBK2_GENERAL_CONFIRMATION_QUERY from UI controls /// As a core components UiControl's resource file is loaded in core Pbk2 -#include -#include +#include +#include /// Use R_GENERAL_COPY_PROGRESS_NOTE from Commands /// As a core components Command's resource file is loaded in core Pbk2 -#include +#include #include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/USIMExtension/src/CPsu2CopyFromPbkCmd.cpp --- a/phonebookui/Phonebook2/USIMExtension/src/CPsu2CopyFromPbkCmd.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/USIMExtension/src/CPsu2CopyFromPbkCmd.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -30,20 +30,20 @@ #include #include #include -#include -#include +#include +#include #include #include #include #include #include #include -#include +#include #include #include #include #include -#include +#include // Virtual Phonebook #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/USIMExtension/src/CPsu2CopyToSimCmd.cpp --- a/phonebookui/Phonebook2/USIMExtension/src/CPsu2CopyToSimCmd.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/USIMExtension/src/CPsu2CopyToSimCmd.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -29,12 +29,12 @@ #include #include #include -#include +#include #include #include #include #include -#include +#include // Virtual Phonebook #include @@ -299,13 +299,6 @@ PBK2_DEBUG_PRINT( PBK2_DEBUG_STRING ( "CPsu2CopyToSimCmd::RunError %d" ), aError ); CCoeEnv::Static()->HandleError(aError); - - // If the copy operation is cancelled due to error occurred, update the - // ui control and reset the command pointer before it is destructed. - if ( iNameListUiControl ) - { - iNameListUiControl->UpdateAfterCommandExecution(); - } if ( iCommandObserver ) { iCommandObserver->CommandFinished(*this); diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/USIMExtension/src/CPsu2CopyToSimFieldInfoArray.cpp --- a/phonebookui/Phonebook2/USIMExtension/src/CPsu2CopyToSimFieldInfoArray.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/USIMExtension/src/CPsu2CopyToSimFieldInfoArray.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -23,8 +23,8 @@ #include #include -#include -#include +#include +#include #include #include @@ -33,8 +33,8 @@ #include #include #include -#include -#include + +#include namespace { @@ -86,9 +86,9 @@ MVPbkFieldTypeSelector& SourceTypeSelector() const; /** - * Returns the resource id (vpbkeng.rsg) of the target field type. + * Returns the resource id (VPbkEng.rsg) of the target field type. * - * @return the resource id (vpbkeng.rsg) of the target field type. + * @return the resource id (VPbkEng.rsg) of the target field type. */ TInt TargetFieldtypeResId() const; @@ -112,7 +112,7 @@ private: // Data /// Own: source field type selector CVPbkFieldTypeSelector* iSourceTypeSelector; - /// Own: target field type resource id (vpbkeng.rsg) + /// Own: target field type resource id (VPbkEng.rsg) TInt iTargetFieldTypeResId; /// Flags from Pbk2UsimUi.hrh TUint8 iFlags; @@ -239,19 +239,10 @@ RPbk2LocalizedResourceFile resFile( &aFs ); resFile.OpenLC(KPbk2RomFileDrive, KDC_RESOURCE_FILES_DIR, KPsu2USimExtensionResFile); - FeatureManager::InitializeLibL(); + TResourceReader reader; - if( !FeatureManager::FeatureSupported( - KFeatureIdFfTdClmcontactreplicationfromphonebooktousimcard ) ) - { - reader.SetBuffer( - resFile.AllocReadLC( R_PSU2_COPY_TO_SIM_FIELDTYPE_MAPPINGS ) ); - } - else - { - reader.SetBuffer( - resFile.AllocReadLC( R_PSU2_COPY_TO_USIM_FIELDTYPE_MAPPINGS ) ); - } + reader.SetBuffer( + resFile.AllocReadLC( R_PSU2_COPY_TO_SIM_FIELDTYPE_MAPPINGS ) ); // Go through all mappings in resource and create a mapping array const TInt count = reader.ReadInt16(); @@ -308,7 +299,6 @@ iInfoArray.Close(); iMatchedTypes.Close(); delete iNumberKeyMap; - FeatureManager::UnInitializeLib(); } // ----------------------------------------------------------------------------- @@ -330,25 +320,6 @@ } return result; } - -// ----------------------------------------------------------------------------- -// CPsu2CopyToSimFieldInfoArray::RemoveUnSupportedTargetTypeFieldInfo -// ----------------------------------------------------------------------------- -// -void CPsu2CopyToSimFieldInfoArray::RemoveUnSupportedFieldInfo( const MVPbkFieldTypeList& aSupportedTypes ) - { - // Check all the field info in the iInfoArray, if the target of the fieldinfo - // is not contained in the supportedTypes, Remove it from iInfoArray. - TInt i = iInfoArray.Count() - 1; - while( i >= 0 ) - { - if( !aSupportedTypes.ContainsSame( iInfoArray[i].SimType())) - { - iInfoArray.Remove( i ); - } - i --; - } - } // ----------------------------------------------------------------------------- // CPsu2CopyToSimFieldInfoArray::SimNameType diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/USIMExtension/src/CPsu2FdnContactEditorPhoneNumberField.cpp --- a/phonebookui/Phonebook2/USIMExtension/src/CPsu2FdnContactEditorPhoneNumberField.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/USIMExtension/src/CPsu2FdnContactEditorPhoneNumberField.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -208,10 +208,8 @@ iControl->CreateTextViewL(); iCaptionedCtrl = iUiBuilder.LineControl( ControlId() ); iCaptionedCtrl->SetTakesEnterKey( ETrue ); - - // Enable partial screen input - TInt flags = iControl->AknEditorFlags(); - iControl->SetAknEditorFlags(flags | EAknEditorFlagEnablePartialScreen); + + } // ----------------------------------------------------------------------------- diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/USIMExtension/src/CPsu2FixedDialingCall.cpp --- a/phonebookui/Phonebook2/USIMExtension/src/CPsu2FixedDialingCall.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/USIMExtension/src/CPsu2FixedDialingCall.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -23,7 +23,7 @@ #include "CPsu2NumberQueryDlg.h" #include #include -#include +#include #include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/USIMExtension/src/CPsu2FixedDialingInfoView.cpp --- a/phonebookui/Phonebook2/USIMExtension/src/CPsu2FixedDialingInfoView.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/USIMExtension/src/CPsu2FixedDialingInfoView.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -27,10 +27,10 @@ #include #include #include -#include +#include #include #include -#include +#include #include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/USIMExtension/src/CPsu2FixedDialingView.cpp --- a/phonebookui/Phonebook2/USIMExtension/src/CPsu2FixedDialingView.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/USIMExtension/src/CPsu2FixedDialingView.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -32,8 +32,8 @@ #include #include #include -#include -#include +#include +#include #include #include #include @@ -149,8 +149,7 @@ CPbk2UIExtensionView& aExtensionView, CPsu2ViewManager& aViewManager ) : CPsu2NameListViewBase( aExtensionView, aViewManager ), - iShowFdnNotActiveNote( ETrue ), - iMarkingModeOn( EFalse ) + iShowFdnNotActiveNote( ETrue ) { } @@ -525,6 +524,11 @@ { aMenuPane->SetItemDimmed( EPsu2CmdNewContact , ETrue ); aMenuPane->SetItemDimmed( EPbk2CmdEditMe , ETrue ); + aMenuPane->SetItemSpecific( EPbk2CmdDeleteMe, EFalse ); + } + else + { + aMenuPane->SetItemSpecific( EPbk2CmdDeleteMe, ETrue ); } } break; @@ -536,25 +540,16 @@ { aMenuPane->SetItemDimmed( EPbk2CmdCopy, ETrue ); } - break; - } - case R_AVKON_MENUPANE_MARK_MULTIPLE: + if ( marked ) { - TInt markedContactCount = 0; - - CCoeControl* ctrl = iControl->ComponentControl(0); - CEikListBox* listbox = static_cast (ctrl); - if ( listbox ) - { - markedContactCount = listbox->SelectionIndexes()->Count(); - } - // dim the makr all item if all contacts are marked. - if ( markedContactCount > 0 && markedContactCount == iControl->NumberOfContacts() ) - { - aMenuPane->SetItemDimmed( EAknCmdMarkingModeMarkAll, ETrue ); - } - - break; + aMenuPane->SetItemSpecific( EPbk2CmdCopy, EFalse ); + aMenuPane->SetItemDimmed( EPsu2CmdCopyFromContacts, ETrue ); + } + else + { + aMenuPane->SetItemSpecific( EPbk2CmdCopy, ETrue); + } + break; } case R_PSU2_FIXED_DIALING_DELETE_MENUPANE: { @@ -731,29 +726,6 @@ CCoeEnv::Static()->HandleError(aErrorCode); } -// ----------------------------------------------------------------------------- -// CPsu2FixedDialingView::MarkingModeStatusChanged -// ----------------------------------------------------------------------------- -// -void CPsu2FixedDialingView::MarkingModeStatusChanged( TBool aActivated ) - { - iMarkingModeOn = aActivated; - } - -// ----------------------------------------------------------------------------- -// CPsu2FixedDialingView::ExitMarkingMode -// Called by avkon, if the return value is ETrue, -// the Marking mode will be canceled after any operation, -// otherwise the Marking mode keep active. -// ----------------------------------------------------------------------------- -// -TBool CPsu2FixedDialingView::ExitMarkingMode() const - { - return ETrue; - } - - - // -------------------------------------------------------------------------- // CPsu2FixedDialingView::UpdateNaviPaneTextL // -------------------------------------------------------------------------- diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/USIMExtension/src/CPsu2LaunchViewCmd.cpp --- a/phonebookui/Phonebook2/USIMExtension/src/CPsu2LaunchViewCmd.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/USIMExtension/src/CPsu2LaunchViewCmd.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -21,7 +21,7 @@ // Phonebook 2 #include "CPsu2ViewManager.h" #include -#include +#include #include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/USIMExtension/src/CPsu2NameListViewBase.cpp --- a/phonebookui/Phonebook2/USIMExtension/src/CPsu2NameListViewBase.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/USIMExtension/src/CPsu2NameListViewBase.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -28,9 +28,9 @@ #include #include #include -#include -#include -#include +#include +#include +#include #include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/USIMExtension/src/CPsu2NumberQueryDlg.cpp --- a/phonebookui/Phonebook2/USIMExtension/src/CPsu2NumberQueryDlg.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/USIMExtension/src/CPsu2NumberQueryDlg.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -19,8 +19,8 @@ // INCLUDE FILES #include "CPsu2NumberQueryDlg.h" -#include -#include +#include +#include // ============================ MEMBER FUNCTIONS =============================== diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/USIMExtension/src/CPsu2OwnNumberControl.cpp --- a/phonebookui/Phonebook2/USIMExtension/src/CPsu2OwnNumberControl.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/USIMExtension/src/CPsu2OwnNumberControl.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -21,7 +21,7 @@ // From Phonebook 2 #include "CPsu2OwnNumberListBoxModel.h" #include "Pbk2USIMUIUID.h" -#include +#include #include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/USIMExtension/src/CPsu2OwnNumbersView.cpp --- a/phonebookui/Phonebook2/USIMExtension/src/CPsu2OwnNumbersView.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/USIMExtension/src/CPsu2OwnNumbersView.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -25,7 +25,7 @@ #include #include #include -#include +#include #include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/USIMExtension/src/CPsu2ServiceDialingInfoView.cpp --- a/phonebookui/Phonebook2/USIMExtension/src/CPsu2ServiceDialingInfoView.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/USIMExtension/src/CPsu2ServiceDialingInfoView.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -23,8 +23,8 @@ #include #include #include -#include -#include +#include +#include #include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/USIMExtension/src/CPsu2ServiceDialingView.cpp --- a/phonebookui/Phonebook2/USIMExtension/src/CPsu2ServiceDialingView.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/USIMExtension/src/CPsu2ServiceDialingView.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -25,10 +25,10 @@ #include #include #include -#include +#include #include #include -#include +#include // System includes #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/USIMExtension/src/CPsu2SimContactProcessor.cpp --- a/phonebookui/Phonebook2/USIMExtension/src/CPsu2SimContactProcessor.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/USIMExtension/src/CPsu2SimContactProcessor.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -42,7 +42,7 @@ #include #include #include -#include +#include // System includes #include @@ -253,11 +253,6 @@ // void CPsu2SimContactProcessor::ConstructL( RFs& aFs ) { - const MVPbkFieldTypeList& supportedTypes = - iTargetStore.StoreProperties().SupportedFields(); - // Remove the unsupported fieldInfo from array first. - iCopyToSimFieldInfoArray.RemoveUnSupportedFieldInfo( supportedTypes ); - const TInt count = iCopyToSimFieldInfoArray.Count(); for ( TInt i = 0; i < count; ++i ) { diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/USIMExtension/src/CPsu2ViewManager.cpp --- a/phonebookui/Phonebook2/USIMExtension/src/CPsu2ViewManager.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/USIMExtension/src/CPsu2ViewManager.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -25,11 +25,11 @@ #include "MPsu2ViewLaunchCallback.h" #include #include -#include +#include #include #include #include -#include +#include #include // Virtual Phonebook diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/USIMExtension/src/TPsu2SimCopyResults.cpp --- a/phonebookui/Phonebook2/USIMExtension/src/TPsu2SimCopyResults.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/USIMExtension/src/TPsu2SimCopyResults.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -20,8 +20,8 @@ #include "TPsu2SimCopyResults.h" // Phonebook 2 -#include -#include +#include +#include // System includes #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/USIMThinExtension/src/CPsu2CopySimContactsCmd.cpp --- a/phonebookui/Phonebook2/USIMThinExtension/src/CPsu2CopySimContactsCmd.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/USIMThinExtension/src/CPsu2CopySimContactsCmd.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -37,13 +37,13 @@ #include #include #include -#include +#include /// Use R_PBK2_GENERAL_CONFIRMATION_QUERY from UI controls /// As a core components UiControl's resource file is loaded in core Pbk2 -#include +#include /// Use R_GENERAL_COPY_PROGRESS_NOTE from Commands /// As a core components Command's resource file is loaded in core Pbk2 -#include +#include #include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/USIMThinExtension/src/CPsu2ThinUIExtensionPlugin.cpp --- a/phonebookui/Phonebook2/USIMThinExtension/src/CPsu2ThinUIExtensionPlugin.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/USIMThinExtension/src/CPsu2ThinUIExtensionPlugin.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -22,8 +22,8 @@ // Phonebook 2 #include "CPsu2CopySimContactsCmd.h" #include -#include -#include +#include +#include #include #include #include "CPsu2CheckAvailabeSimStore.h" diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/ccapplication/ccacommlauncherplugin/data/ccappcommlauncherpluginrsc.rss --- a/phonebookui/Phonebook2/ccapplication/ccacommlauncherplugin/data/ccappcommlauncherpluginrsc.rss Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/ccapplication/ccacommlauncherplugin/data/ccappcommlauncherpluginrsc.rss Wed Oct 13 14:15:33 2010 +0300 @@ -26,7 +26,7 @@ #include #include -#include +#include #include #include #include @@ -142,11 +142,6 @@ command = ECCAppCommLauncherVoiceTagDetailsCmd; txt = "";//will be filled dynamically by AIW }, - MENU_ITEM - { - command = ECCAppCommLauncherSendBCardCmd; - txt = qtn_bcard_opt_send_entry_via; - }, #ifdef __SERIES60_HELP MENU_ITEM { diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/ccapplication/ccacommlauncherplugin/group/ccappcommlauncherplugin.mmp --- a/phonebookui/Phonebook2/ccapplication/ccacommlauncherplugin/group/ccappcommlauncherplugin.mmp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/ccapplication/ccacommlauncherplugin/group/ccappcommlauncherplugin.mmp Wed Oct 13 14:15:33 2010 +0300 @@ -59,7 +59,6 @@ USERINCLUDE ../../ccapp/ccapputil/inc USERINCLUDE ../../../../../ccservices/cmsservices/cmsengine/inc USERINCLUDE . ../inc -USERINCLUDE ../../../commands/inc LIBRARY euser.lib LIBRARY ecom.lib @@ -75,15 +74,15 @@ LIBRARY servicehandler.lib // aiw LIBRARY ccapputil.lib LIBRARY bafl.lib -LIBRARY CommonEngine.lib//coneresourceloader +LIBRARY commonengine.lib//coneresourceloader LIBRARY eikctl.lib LIBRARY aknicon.lib LIBRARY egul.lib LIBRARY aknskinsrv.lib LIBRARY aknswallpaperutils.lib -LIBRARY AknLayout2Scalable.lib +LIBRARY aknlayout2scalable.lib LIBRARY aknlayout2.lib -LIBRARY CdlEngine.lib +LIBRARY cdlengine.lib LIBRARY eikcore.lib LIBRARY cone.lib LIBRARY flogger.lib @@ -101,7 +100,7 @@ // Dependencies to AVKON LIBRARY CdlEngine.lib LIBRARY touchfeedback.lib -LIBRARY featmgr.lib +LIBRARY FeatMgr.lib LIBRARY akntransitionutils.lib LIBRARY aknphysics.lib @@ -114,7 +113,7 @@ LIBRARY pbk2spbcontentprovider.lib LIBRARY charconv.lib -LIBRARY fontutils.lib +LIBRARY FontUtils.lib LIBRARY apgrfx.lib LIBRARY ws32.lib diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/ccapplication/ccacommlauncherplugin/inc/CCCAppCommLauncherPbkCmd.h --- a/phonebookui/Phonebook2/ccapplication/ccacommlauncherplugin/inc/CCCAppCommLauncherPbkCmd.h Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/ccapplication/ccacommlauncherplugin/inc/CCCAppCommLauncherPbkCmd.h Wed Oct 13 14:15:33 2010 +0300 @@ -75,10 +75,7 @@ void ExecutePbk2CmdRemoveImageL( const TDesC8& aContact ); void ExecutePbk2CmdAddImageL( const TDesC8& aContact ); void ExecutePbk2CmdDeleteL( const TDesC8& aContact ); - void ExecutePbk2CmdSendBCardL( const TDesC8& aContact ); TBool IsPbk2CommandRunning(); - //Close all the pending pbk2commands launched from CCA - void DeleteAllRunningCmd(); public: // from MVPbkContactStoreObserver diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/ccapplication/ccacommlauncherplugin/inc/ccappcommlauncher.hrh --- a/phonebookui/Phonebook2/ccapplication/ccacommlauncherplugin/inc/ccappcommlauncher.hrh Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/ccapplication/ccacommlauncherplugin/inc/ccappcommlauncher.hrh Wed Oct 13 14:15:33 2010 +0300 @@ -32,7 +32,6 @@ ECCAppCommLauncherStylusRemoveImageCmd, ECCAppCommLauncherStylusAddImageCmd, ECCAppCommLauncherDeleteCmd, - ECCAppCommLauncherSendBCardCmd, // KAiwCmdAssign AIW service cmd used as Edit Options-menu item // set AIW commands at last ECCAppCommLauncherAiwBaseCmd = 1000 // leave this last diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/ccapplication/ccacommlauncherplugin/inc/ccappcommlaunchercontainer.h --- a/phonebookui/Phonebook2/ccapplication/ccacommlauncherplugin/inc/ccappcommlaunchercontainer.h Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/ccapplication/ccacommlauncherplugin/inc/ccappcommlaunchercontainer.h Wed Oct 13 14:15:33 2010 +0300 @@ -23,7 +23,6 @@ #include #include "ccappstatuscontrol.h" #include -#include class CAknsBasicBackgroundControlContext; class CAknPreviewPopUpController; @@ -37,7 +36,6 @@ class CCCAExtensionFactory; class CCCAppCommLauncherCustomListBox; class CCCaFactoryExtensionNotifier; -class CAknInputBlock; /** * Class implementing CCAppCommLauncher -container for controls @@ -54,8 +52,7 @@ public MEikListBoxObserver, public MCCAppContactHandlerNotifier, public MCCAStatusControlObserver, - public MAknLongTapDetectorCallBack, - public MAknInputBlockCancelHandler + public MAknLongTapDetectorCallBack { public: // constructor and destructor @@ -230,8 +227,7 @@ * @return the amount of the list box. * @since S60 v5.0 */ - const TInt GetListBoxItemAmount() const; - + const TInt GetListBoxItemAmount() const; private: // New @@ -365,23 +361,6 @@ TDesC8& aContactIdentifier, TDesC& aFullName, TDesC& aSelectedField ); - - /* - * From MAknInputBlockCancelHandler - */ - void AknInputBlockCancel(); - - /** - * Removes the Input Blocker and makes the contianer regain - * user input, key and pen - */ - void RemoveInputBlocker(); - - /** - * Blocks user input, key and pen, from reaching - * container untill the issue of communication is complete - */ - void SetInputBlockerL(); private: // Constructors @@ -472,10 +451,8 @@ */ CCCaFactoryExtensionNotifier* iFactoryExtensionNotifier; - /** - * Owns - Input Blocker - */ - CAknInputBlock* iInputBlocker; + + TBool iLongTap; }; #endif // __CCAPPCOMMALAUNCHERCONTAINER_H diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/ccapplication/ccacommlauncherplugin/inc/ccappcommlaunchermenuhandler.h --- a/phonebookui/Phonebook2/ccapplication/ccacommlauncherplugin/inc/ccappcommlaunchermenuhandler.h Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/ccapplication/ccacommlauncherplugin/inc/ccappcommlaunchermenuhandler.h Wed Oct 13 14:15:33 2010 +0300 @@ -166,7 +166,6 @@ void DoSetDefaultCmdL(); void DoShowOnMapCmdL(); void DoDeleteCmdL(); - void DoSendBCardCmdL(); /** * Handlers for Aiw-based commands diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/ccapplication/ccacommlauncherplugin/src/CCCAppCommLauncherPbkCmd.cpp --- a/phonebookui/Phonebook2/ccapplication/ccacommlauncherplugin/src/CCCAppCommLauncherPbkCmd.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/ccapplication/ccacommlauncherplugin/src/CCCAppCommLauncherPbkCmd.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -33,7 +33,6 @@ #include #include #include -#include _LIT(KPbk2CommandsDllResFileName, "Pbk2Commands.rsc"); _LIT(KPbk2UiControlsDllResFileName, "Pbk2UiControls.rsc"); @@ -377,39 +376,6 @@ } // --------------------------------------------------------------------------- -// CCCAppCommLauncherMenuHandler::ExecutePbk2CmdSendBCardL -// --------------------------------------------------------------------------- -// -void CCCAppCommLauncherPbkCmd::ExecutePbk2CmdSendBCardL( const TDesC8& aContact ) - { - TCCAppCommandState& cmdState( iPlugin.CommandState() ); - if ( !cmdState.IsRunning() ) - { - cmdState.SetRunningAndPushCleanupL(); - - iPbk2CommandId = EPbk2CmdSend; - - if( iLinks ) - { - delete iLinks; - iLinks = NULL; - } - - iLinks = iAppServices->ContactManager().CreateLinksLC( aContact ); - - if ( iLinks->Count() > 0 ) - { - // operation completes by StoreReady, - // StoreUnavailable or HandleStoreEventL - ( iLinks->At( 0 ) ).ContactStore().OpenL( *this ); - } - - CleanupStack::Pop( 1 ); // iLinks (deleted in destructor) - cmdState.PopCleanup(); - } - } - -// --------------------------------------------------------------------------- // CCCAppCommLauncherMenuHandler::HandleError // --------------------------------------------------------------------------- // @@ -978,25 +944,3 @@ { return *iAppServices; } - -// -------------------------------------------------------------------------- -// CCCAppCommLauncherPbkCmd::DeleteAllRunningCmd -// -------------------------------------------------------------------------- -// -void CCCAppCommLauncherPbkCmd::DeleteAllRunningCmd() - { - //Close all the pending pbk2commands launched from CCA - if ( iPlugin.CommandState().IsRunning() ) - { - iPlugin.CommandState().SetNotRunning(); - if ( iCommandHandler ) - { - CPbk2CommandStore* cmdStore( iCommandHandler->CommandStore() ); - if ( cmdStore ) - { - cmdStore->DestroyAllCommands(); - } - } - } - } - diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/ccapplication/ccacommlauncherplugin/src/ccappcommlaunchercontainer.cpp --- a/phonebookui/Phonebook2/ccapplication/ccacommlauncherplugin/src/ccappcommlaunchercontainer.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/ccapplication/ccacommlauncherplugin/src/ccappcommlaunchercontainer.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -513,10 +513,11 @@ VPbkFieldTypeSelectorFactory::TVPbkContactActionTypeSelector contactActionType = iPlugin.Container().SelectedCommunicationMethod(); - - if ( contactActionType + + if ( !iLongTap && contactActionType == VPbkFieldTypeSelectorFactory::EFindOnMapSelector ) - { + { + iLongTap = ETrue; DoShowMapCmdL( (TPbk2CommandId)EPbk2ExtensionShowOnMap ); } else @@ -575,15 +576,13 @@ iHasBeenDragged = EFalse; } - if ( executeContactAction && iPlugin.CommandState().IsRunning() ) + if ( executeContactAction && iPlugin.CommandState().IsRunning() ) { executeContactAction = EFalse; } - if ( executeContactAction ) + if (executeContactAction) { - SetInputBlockerL(); - VPbkFieldTypeSelectorFactory::TVPbkContactActionTypeSelector contactActionType = iPlugin.Container().SelectedCommunicationMethod(); @@ -596,8 +595,6 @@ { HandleGenericContactActionL( contactActionType ); } - - RemoveInputBlocker(); } } @@ -607,7 +604,14 @@ // void CCCAppCommLauncherContainer::HandleFindOnMapContactActionL() { - DoShowMapCmdL( (TPbk2CommandId)EPbk2ExtensionShowOnMap ); + if ( !iLongTap ) + { + DoShowMapCmdL( (TPbk2CommandId)EPbk2ExtensionShowOnMap ); + } + else + { + iLongTap = EFalse; + } } // ---------------------------------------------------------------------------- @@ -804,13 +808,6 @@ void CCCAppCommLauncherContainer::ContactInfoFetchedNotifyL( const CCmsContactFieldInfo& aContactFieldInfo) { - - //CloseAll Pending Pbk2Commands initiated by CCA. - if( iPbkCmd ) - { - iPbkCmd->DeleteAllRunningCmd(); - } - // update buttons iModel->UpdateAddressesValidationL( aContactFieldInfo ); iModel->FillButtonArrayL(); @@ -1090,39 +1087,4 @@ { return iModel->MdcaCount(); } - -//----------------------------------------------------------------------------- -// CCCAppCommLauncherContainer::SetInputBlockerL() -//----------------------------------------------------------------------------- -// -void CCCAppCommLauncherContainer::SetInputBlockerL() - { - if (!iInputBlocker) - { - iInputBlocker = CAknInputBlock::NewCancelHandlerLC( this ); - CleanupStack::Pop( iInputBlocker ); - iInputBlocker->SetCancelDelete( iInputBlocker ); - } - } - -// -------------------------------------------------------------------------- -// CCCAppCommLauncherContainer::RemoveInputBlockerL -// -------------------------------------------------------------------------- -// -void CCCAppCommLauncherContainer::RemoveInputBlocker() - { - if (iInputBlocker) - { - iInputBlocker->Cancel(); - } - } - -// -------------------------------------------------------------------------- -// CCCAppCommLauncherContainer::AknInputBlockCancel -// -------------------------------------------------------------------------- -// -void CCCAppCommLauncherContainer::AknInputBlockCancel() - { - iInputBlocker = NULL; - } // End of File diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/ccapplication/ccacommlauncherplugin/src/ccappcommlauncherheadercontrol.cpp --- a/phonebookui/Phonebook2/ccapplication/ccacommlauncherplugin/src/ccappcommlauncherheadercontrol.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/ccapplication/ccacommlauncherplugin/src/ccappcommlauncherheadercontrol.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -459,15 +459,15 @@ case TPointerEvent::EButton1Down: { TCmsContactStore cntStore = iPlugin.ContactHandler().ContactStore(); - // Image selection popup - // Image selection popup should not be shown for contact's that belong to sdn store / Sim Store - // Image selection popup can be shown for the contact that belongs to - // local contact DB / XSP Store - - if( ( (cntStore != ECmsContactStoreSdn) && (cntStore != ECmsContactStoreSim) ) - && - iImage->Rect().Contains(aPointerEvent.iPosition) - ) + // Image selection popup + // Image selection popup should not be shown for contact's that belong to sdn store + // Image selection popup can be shown only if the default + // saving memory includes local contact db (contacts.cdb) or if the contact belongs to + // local contact DB + if( cntStore != ECmsContactStoreSdn + && IsPhoneMemoryInConfigurationL() + && (cntStore != ECmsContactStoreSim) + && iImage->Rect().Contains(aPointerEvent.iPosition) ) { // Show the feedback MTouchFeedback* feedback = MTouchFeedback::Instance(); diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/ccapplication/ccacommlauncherplugin/src/ccappcommlauncherheadertextorder.cpp --- a/phonebookui/Phonebook2/ccapplication/ccacommlauncherplugin/src/ccappcommlauncherheadertextorder.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/ccapplication/ccacommlauncherplugin/src/ccappcommlauncherheadertextorder.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -18,7 +18,7 @@ #include "ccappcommlauncherheaders.h" #include "cmscontact.h" #include -#include +#include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/ccapplication/ccacommlauncherplugin/src/ccappcommlauncherlpadmodel.cpp --- a/phonebookui/Phonebook2/ccapplication/ccacommlauncherplugin/src/ccappcommlauncherlpadmodel.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/ccapplication/ccacommlauncherplugin/src/ccappcommlauncherlpadmodel.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -971,21 +971,11 @@ presData.PreparePresenceDataL( iPresenceIconSize ); TUint32 serviceType = presData.ServiceType(); - // The ownerships of mask and bitmap are transferred to this object. - CFbsBitmap* mask = presData.Mask(); - CFbsBitmap* bitmap = presData.Bitmap(); - TBool isValidBitmap = !( bitmap && ( NULL == bitmap->Handle() ) ); - - // If any one of below condition is satisfied, the bitmap and mask are invalid. - // Delete them since the ownerships of them are transferred to this object. - if ( !isValidBitmap || serviceType != CCmsContactFieldItem::ECmsPresenceChatNotification ) - { - delete mask; - delete bitmap; - } - if ( serviceType == CCmsContactFieldItem::ECmsPresenceChatNotification ) - { + { + CFbsBitmap* mask = presData.Mask(); + CFbsBitmap* bitmap = presData.Bitmap(); + // Find the index for chat item TInt index = KErrNotFound; const TInt dataCount = iButtonDataArray.Count(); @@ -1004,35 +994,41 @@ TBool hasPresenceIcon = iButtonDataArray[ index ].iFlags & TCommLauncherButtonData::EHasPresenceIcon; - if ( hasPresenceIcon ) + if ( bitmap && ( NULL == bitmap->Handle() ) ) { - if ( isValidBitmap ) - { - // Update presence icon - iButtonIconArray->At( EPresenceIconIndex )->SetBitmap(bitmap); - iButtonIconArray->At( EPresenceIconIndex )->SetMask(mask); - } - else - { - // Delete presence icon from icon array - iButtonDataArray[ index ].iFlags &= ~(TCommLauncherButtonData::EHasPresenceIcon); - CGulIcon* icon = iButtonIconArray->At( EPresenceIconIndex ); - delete icon; - iButtonIconArray->Delete( EPresenceIconIndex ); - } + if ( hasPresenceIcon ) + { + // Delete presence icon from icon array + iButtonDataArray[ index ].iFlags &= ~(TCommLauncherButtonData::EHasPresenceIcon); + iButtonIconArray->Delete( EPresenceIconIndex ); + } } - else if ( isValidBitmap ) - { - // Append presence icon to icon array - CGulIcon* icon = CGulIcon::NewLC(); - icon->SetBitmap( bitmap ); - icon->SetMask( mask ); - iButtonIconArray->AppendL( icon ); - iButtonDataArray[ index ].iFlags |= TCommLauncherButtonData::EHasPresenceIcon; - CleanupStack::Pop(); // icon - } + else if ( bitmap ) + { + if ( hasPresenceIcon ) + { + // Update presence icon + iButtonIconArray->At( EPresenceIconIndex )->SetBitmap(bitmap); + iButtonIconArray->At( EPresenceIconIndex )->SetMask(mask); + } + else + { + // Append presence icon to icon array + CGulIcon* icon = CGulIcon::NewLC(); + icon->SetBitmap( bitmap ); + icon->SetMask( mask ); + iButtonIconArray->AppendL( icon ); + iButtonDataArray[ index ].iFlags |= TCommLauncherButtonData::EHasPresenceIcon; + CleanupStack::Pop(); // icon + } + } } } + else + { + delete presData.Bitmap(); + delete presData.Mask(); + } } } diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/ccapplication/ccacommlauncherplugin/src/ccappcommlaunchermenuhandler.cpp --- a/phonebookui/Phonebook2/ccapplication/ccacommlauncherplugin/src/ccappcommlaunchermenuhandler.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/ccapplication/ccacommlauncherplugin/src/ccappcommlaunchermenuhandler.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -374,9 +374,6 @@ case ECCAppCommLauncherDeleteCmd: DoDeleteCmdL(); break; - case ECCAppCommLauncherSendBCardCmd: - DoSendBCardCmdL(); - break; default: break; } @@ -547,27 +544,23 @@ TPtrC8 contactLink = param->Value().AsData(); // Update the CCA parameter contact data - TInt length = contactLink.Length(); - if ( length > 0 ) - { - HBufC16* link16 = HBufC16::NewLC( length ); - link16->Des().Copy( contactLink ); - iPlugin.AppEngine()->Parameter().SetContactDataL( link16->Des() ); - // Set contact data flag to EContactLink, because the parameters returned from - // phonebook AIW provider have conatct link but not contact id. - iPlugin.AppEngine()->Parameter().SetContactDataFlag( MCCAParameter::EContactLink ); - CleanupStack::PopAndDestroy(1); // link16 + HBufC16* link16 = HBufC16::NewLC( contactLink.Length() ); + link16->Des().Copy( contactLink ); + iPlugin.AppEngine()->Parameter().SetContactDataL( link16->Des() ); + // Set contact data flag to EContactLink, because the parameters returned from + // phonebook AIW provider have conatct link but not contact id. + iPlugin.AppEngine()->Parameter().SetContactDataFlag( MCCAParameter::EContactLink ); + CleanupStack::PopAndDestroy(1); // link16 - // Inform the app engine of the contact event - iPlugin.AppEngine()->CCAppContactEventL(); + // Inform the app engine of the contact event + iPlugin.AppEngine()->CCAppContactEventL(); - // Update the commlauncher the UI contact data - iPlugin.ContactHandler().RefetchContactL(); - iPlugin.Container().ContactsChangedL(); - - //Update the Store - SetContactStore(iPlugin.ContactHandler().ContactStore()); - } + // Update the commlauncher the UI contact data + iPlugin.ContactHandler().RefetchContactL(); + iPlugin.Container().ContactsChangedL(); + + //Update the Store + SetContactStore(iPlugin.ContactHandler().ContactStore()); } if (errParam) @@ -650,22 +643,6 @@ } // --------------------------------------------------------------------------- -// CCCAppCommLauncherMenuHandler::DoSendBCardCmdL -// --------------------------------------------------------------------------- -// -void CCCAppCommLauncherMenuHandler::DoSendBCardCmdL() - { - if( !iPbkCmd ) - { - iPbkCmd = CCCAppCommLauncherPbkCmd::NewL( iPlugin ); - } - iPbkCmd->ExecutePbk2CmdSendBCardL( - *iPlugin.ContactHandler().ContactIdentifierLC() ); - - CleanupStack::PopAndDestroy( 1 ); // ContactIdentifierLC - } - -// --------------------------------------------------------------------------- // CCCAppCommLauncherMenuHandler::XspContactDynInitMenuPaneL // --------------------------------------------------------------------------- // diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/ccapplication/ccacommlauncherplugin/tsrc/ut_commlaunchercontacthandler/group/ut_commlaunchercontacthandler.mmp --- a/phonebookui/Phonebook2/ccapplication/ccacommlauncherplugin/tsrc/ut_commlaunchercontacthandler/group/ut_commlaunchercontacthandler.mmp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/ccapplication/ccacommlauncherplugin/tsrc/ut_commlaunchercontacthandler/group/ut_commlaunchercontacthandler.mmp Wed Oct 13 14:15:33 2010 +0300 @@ -48,7 +48,7 @@ LIBRARY euser.lib -LIBRARY StifTestInterface.lib +LIBRARY stiftestinterface.lib LIBRARY stiftestengine.lib LIBRARY flogger.lib LIBRARY centralrepository.lib diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/ccapplication/ccacommlauncherplugin/tsrc/ut_commlaunchercontacthandler/inc/ccappcommlauncherheaders.h --- a/phonebookui/Phonebook2/ccapplication/ccacommlauncherplugin/tsrc/ut_commlaunchercontacthandler/inc/ccappcommlauncherheaders.h Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/ccapplication/ccacommlauncherplugin/tsrc/ut_commlaunchercontacthandler/inc/ccappcommlauncherheaders.h Wed Oct 13 14:15:33 2010 +0300 @@ -30,7 +30,7 @@ #include "t_ccappcmscontactfetcher.h" #include "t_testsingleton.h" #include "phonebookPrivateCRKeys.h" -#include + class CCmsContactFieldInfo; class MCCAppContactFieldDataObserver; diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/ccapplication/ccacontactorservice/group/ccacontactorservice.mmp --- a/phonebookui/Phonebook2/ccapplication/ccacontactorservice/group/ccacontactorservice.mmp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/ccapplication/ccacontactorservice/group/ccacontactorservice.mmp Wed Oct 13 14:15:33 2010 +0300 @@ -63,7 +63,7 @@ LIBRARY efsrv.lib LIBRARY bafl.lib LIBRARY aiwdialdata.lib //AIW -LIBRARY CommonEngine.lib +LIBRARY commonengine.lib LIBRARY servicehandler.lib //AIW LIBRARY sendui.lib LIBRARY ecom.lib diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/ccapplication/ccacontactorservice/inc/ccacontactorserviceoperator.h --- a/phonebookui/Phonebook2/ccapplication/ccacontactorservice/inc/ccacontactorserviceoperator.h Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/ccapplication/ccacontactorservice/inc/ccacontactorserviceoperator.h Wed Oct 13 14:15:33 2010 +0300 @@ -79,6 +79,50 @@ void ConstructL(); private: //new methods + /** + * Helper class for handling special cases. + * Currently VOIP ServiceID implemented. + * + * @param aFieldData: Selected field. + * @since S60 5.0 + */ + void ResolveSpecialCasesL(const TDesC& aFieldData); + + /** + * Helper class for searching ServiceID + * + * @param aFieldData: Selected field. + * @return ServiceId + * @since S60 5.0 + */ + TUint32 ResolveServiceIdL(const TDesC& aFieldData); + + /** + * Helper class for parsing xSP identification. + * + * @param aFieldData: Selected field. + * @param aXSPId: Found xSP ID. + * @return boolean if xSP is found. + * @since S60 5.0 + */ + TBool ExtractServiceL(const TDesC& aFieldData, TPtrC& aXSPId); + + /** + * Helper class for searching ServiceId from spsettings + * + * @param aFieldData: Selected field. + * @return ServiceId + * @since S60 5.0 + */ + TUint32 SearchServiceIdL(const TDesC& aFieldData); + + /** + * Helper class for checking if MSISDN addressing is supported. + * + * @return ServiceId + * @since S60 5.0 + */ + TUint32 ResolveMSISDNAddressingSupportedL(); /** * Helper class for starting communication method. @@ -113,6 +157,12 @@ * Not own. */ const CCAContactorService::TCSParameter* iParameter; + + /** + * ServiceId for VOIP service. + * Own. + */ + TUint32 iServiceId; /** * Is call item selected diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/ccapplication/ccacontactorservice/src/ccacontactorserviceoperator.cpp --- a/phonebookui/Phonebook2/ccapplication/ccacontactorservice/src/ccacontactorserviceoperator.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/ccapplication/ccacontactorservice/src/ccacontactorserviceoperator.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -17,7 +17,6 @@ #include #include -#include #include "ccacontactorserviceheaders.h" @@ -121,8 +120,13 @@ __ASSERT_ALWAYS (NULL != iParameter->iSelectedField, User::Leave (KErrArgument)); __ASSERT_ALWAYS (0 < iParameter->iSelectedField->Size(), User::Leave (KErrArgument)); result = iParameter->iSelectedField; + // "isSelected" should also be set as ETrue after the selected field is set to result. + isSelected = ETrue; } + // Resolve special cases + TRAP(err, ResolveSpecialCasesL(*result)); + if (KErrNone != err) { CCA_DP(KCCAContactorServiceLoggerFile, CCA_L("CCCAContactorServiceOperator::ExecuteL: ResolveSpecialCasesL: Leaves %d."), err); @@ -151,6 +155,7 @@ // -------------------------------------------------------------------------- // CCCAContactorServiceOperator::CCCAContactorServiceOperator(): + iServiceId((TUint32)KErrNotFound), isSelected(EFalse) { } @@ -169,6 +174,225 @@ } // -------------------------------------------------------------------------- +// CCCAContactorServiceOperator::ResolveSpecialCasesL +// -------------------------------------------------------------------------- +// +void CCCAContactorServiceOperator::ResolveSpecialCasesL(const TDesC& aFieldData) + { + CCA_DP(KCCAContactorServiceLoggerFile, CCA_L("CCCAContactorServiceOperator::ResolveSpecialCasesL")); + + /* + * Currently only VOIP ServiceId is needed to find out. + */ + switch(iParameter->iCommTypeSelector) + { + case VPbkFieldTypeSelectorFactory::EVOIPCallSelector: + iServiceId = ResolveServiceIdL(aFieldData); + break; + } + + CCA_DP(KCCAContactorServiceLoggerFile, CCA_L("CCCAContactorServiceOperator::ResolveSpecialCasesL: Done.")); + } + +// -------------------------------------------------------------------------- +// CCCAContactorServiceOperator::ResolveServiceIdL +// -------------------------------------------------------------------------- +// +TUint32 CCCAContactorServiceOperator::ResolveServiceIdL(const TDesC& aFieldData) + { + CCA_DP(KCCAContactorServiceLoggerFile, CCA_L("CCCAContactorServiceOperator::ResolveServiceIdL")); + + __ASSERT_ALWAYS (NULL != &aFieldData, User::Leave (KErrArgument)); + __ASSERT_ALWAYS (0 < aFieldData.Size(), User::Leave (KErrArgument)); + + TUint32 ret = (TUint32)KErrNotFound; + + //LOGIC: + /* + * 1. Find out is there xSP prefix + * 2. If there is, search service id + * 3. If not, find out how many services support msisdn + * 4. If only one, find use that service id + * 5. If more than one, do not use service id. + */ + + TPtrC result; + + // 1. Find out is there xSP prefix + if (ExtractServiceL(aFieldData, result)) + { + CCA_DP(KCCAContactorServiceLoggerFile, CCA_L("CCCAContactorServiceOperator::ResolveServiceIdL: ExtractServiceL found.")); + + // 2. If there is, search service id + ret = SearchServiceIdL(result); + } + else + { + CCA_DP(KCCAContactorServiceLoggerFile, CCA_L("CCCAContactorServiceOperator::ResolveServiceIdL: ExtractServiceL not found.")); + + // 3. If not, find out how many services support msisdn + ret = ResolveMSISDNAddressingSupportedL(); + if ((TUint32)KErrNotFound != ret) + { + // 4. If only one, find use that service id + CCA_DP(KCCAContactorServiceLoggerFile, CCA_L("CCCAContactorServiceOperator::ResolveServiceIdL: ResolveMSISDNAddressingSupportedL only one service.")); + + } + else + { + // 5. If more than one or none found, do not use service id. + CCA_DP(KCCAContactorServiceLoggerFile, CCA_L("CCCAContactorServiceOperator::ResolveServiceIdL: ResolveMSISDNAddressingSupportedL more than one service.")); + + } + } + + CCA_DP(KCCAContactorServiceLoggerFile, CCA_L("CCCAContactorServiceOperator::ResolveServiceIdL: Done.")); + + return ret; + } + +// -------------------------------------------------------------------------- +// CCCAContactorServiceOperator::ExtractServiceL +// -------------------------------------------------------------------------- +// +TBool CCCAContactorServiceOperator::ExtractServiceL( + const TDesC& aFieldData, TPtrC& aXSPId) + { + CCA_DP(KCCAContactorServiceLoggerFile, CCA_L("CCCAContactorServiceOperator::ExtractServiceL")); + + TBool found = EFalse; + + TInt pos = aFieldData.Find(KColon); + if (pos >= 0) + { + // ok input + aXSPId.Set(aFieldData.Left(pos)); + found = ETrue; + } + + CCA_DP(KCCAContactorServiceLoggerFile, CCA_L("CCCAContactorServiceOperator::ExtractServiceL: Done.")); + + return found; + } + +// -------------------------------------------------------------------------- +// CCCAContactorServiceOperator::SearchServiceIdL +// -------------------------------------------------------------------------- +// +TUint32 CCCAContactorServiceOperator::SearchServiceIdL(const TDesC& aFieldData) + { + CCA_DP(KCCAContactorServiceLoggerFile, CCA_L("CCCAContactorServiceOperator::SearchServiceIdL")); + + TUint32 ret = (TUint32)KErrNotFound; + TInt err = KErrNone; + CDesCArrayFlat* nameArray = NULL; + + RIdArray ids; + CleanupClosePushL(ids); + + nameArray = new (ELeave) CDesCArrayFlat(2); + CleanupStack::PushL(nameArray); + + CSPSettings* settings = CSPSettings::NewLC(); + + err = settings->FindServiceIdsL(ids); + User::LeaveIfError(err); + err = settings->FindServiceNamesL(ids, *nameArray); + User::LeaveIfError(err); + + TInt count = nameArray->MdcaCount(); + for (TInt i(0); i < count; i++) + { + // search the mathching service name + TPtrC p = nameArray->MdcaPoint(i); + if (!p.CompareF(aFieldData)) + { + // Service found + ret = ids[i]; + + CCA_DP(KCCAContactorServiceLoggerFile, CCA_L("CCCAContactorServiceOperator::SearchServiceIdL: Service found.")); + break; + } + } + CleanupStack::PopAndDestroy(3); // ids, nameArray, settings + + CCA_DP(KCCAContactorServiceLoggerFile, CCA_L("CCCAContactorServiceOperator::SearchServiceIdL: Done.")); + + return ret; + } + +// -------------------------------------------------------------------------- +// CCCAContactorServiceOperator::ResolveMSISDNAddressingSupportedL +// -------------------------------------------------------------------------- +// +TUint32 CCCAContactorServiceOperator::ResolveMSISDNAddressingSupportedL() + { + CCA_DP(KCCAContactorServiceLoggerFile, CCA_L("CCCAContactorServiceOperator::ResolveMSISDNAddressingSupportedL")); + + /* + * LOGIC: + * -Find out services + * -If only 1 service, return the serviceid + * -If services are more than 1, then do not use serviceid. + */ + + TInt err = KErrNone; + TInt foundNo = 0; + TUint32 ret = (TUint32)KErrNotFound; + + RIdArray ids; + CleanupClosePushL(ids); + + CSPSettings* settings = CSPSettings::NewLC(); + + err = settings->FindServiceIdsL(ids); + User::LeaveIfError(err); + + TInt count = ids.Count(); + for (TInt i(0); i < count; i++) + { + CSPProperty* property = CSPProperty::NewLC(); + + // Find out property + err = settings->FindPropertyL(ids[i], + EPropertyServiceAttributeMask, *property); + + // If service have property + if (KErrNone == err) + { + // read the value of mask property + TInt mask = 0; + err = property->GetValue(mask); + if (KErrNone == err) + { + if ((mask & ESupportsMSISDNAddressing) && + (mask & ESupportsInternetCall)) + { + // Found one. + ret = ids[i]; + foundNo++; + + }// if mask + }// if err + }// if err + + CleanupStack::PopAndDestroy(property); + }// for + + // If more than 1 service, do not use serviceid + + if (1 < foundNo) + { + ret = (TUint32)KErrNotFound; + } + + CleanupStack::PopAndDestroy(2); // ids, settings + + CCA_DP(KCCAContactorServiceLoggerFile, CCA_L("CCCAContactorServiceOperator::ResolveMSISDNAddressingSupportedL: Done.")); + return ret; + } + +// -------------------------------------------------------------------------- // CCCAContactorServiceOperator::LaunchCommunicationMethodL // -------------------------------------------------------------------------- // @@ -179,12 +403,8 @@ __ASSERT_ALWAYS (NULL != &iParameter->iFullName, User::Leave (KErrArgument)); - // If there is a default service, use the service - TUint serviceId = 0; - CSPSettingsVoIPUtils* spSettings = CSPSettingsVoIPUtils::NewLC(); - - if ( ( iParameter->iCommTypeSelector == VPbkFieldTypeSelectorFactory::EVOIPCallSelector ) && - ( !spSettings->GetPreferredService( serviceId ) ) ) + // If serviceid found, use it. + if ((TUint32)KErrNotFound != iServiceId) { CCA_DP(KCCAContactorServiceLoggerFile, CCA_L("CCCAContactorServiceOperator::ExecuteL: ExecuteServiceL with serviceid")); CCAContactor::ExecuteServiceL( @@ -192,7 +412,7 @@ aFieldData, iParameter->iFullName, iParameter->iContactLinkArray, - serviceId + iServiceId ); } else @@ -203,9 +423,7 @@ aFieldData, iParameter->iFullName, iParameter->iContactLinkArray); - } - - CleanupStack::PopAndDestroy( spSettings ); + } CCA_DP(KCCAContactorServiceLoggerFile, CCA_L("CCCAContactorServiceOperator::LaunchCommunicationMethodL: Done.")); } diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/ccapplication/ccadetailsviewplugin/data/ccappdetailsviewpluginrsc.rss --- a/phonebookui/Phonebook2/ccapplication/ccadetailsviewplugin/data/ccappdetailsviewpluginrsc.rss Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/ccapplication/ccadetailsviewplugin/data/ccappdetailsviewpluginrsc.rss Wed Oct 13 14:15:33 2010 +0300 @@ -26,7 +26,7 @@ #include #include -#include +#include #include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/ccapplication/ccadetailsviewplugin/group/ccappdetailsviewplugin.mmp --- a/phonebookui/Phonebook2/ccapplication/ccadetailsviewplugin/group/ccappdetailsviewplugin.mmp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/ccapplication/ccadetailsviewplugin/group/ccappdetailsviewplugin.mmp Wed Oct 13 14:15:33 2010 +0300 @@ -58,7 +58,7 @@ LIBRARY ecom.lib LIBRARY VPbkEng.lib LIBRARY Pbk2Presentation.lib -LIBRARY pbk2uicontrols.lib +LIBRARY Pbk2UIControls.lib LIBRARY Pbk2CommonUI.lib LIBRARY Pbk2UIExt.lib LIBRARY Pbk2Commands.lib @@ -72,7 +72,7 @@ LIBRARY aknskins.lib LIBRARY eikcoctl.lib LIBRARY servicehandler.lib // aiw -LIBRARY CommonEngine.lib +LIBRARY commonengine.lib LIBRARY CdlEngine.lib LIBRARY AknLayout2Scalable.lib LIBRARY cone.lib @@ -80,9 +80,8 @@ LIBRARY eikctl.lib LIBRARY ws32.lib LIBRARY mnclientlib.lib -LIBRARY spdctrl.lib +LIBRARY SpdCtrl.lib DEBUGLIBRARY flogger.lib LIBRARY ccacontactorservice.lib -LIBRARY featmgr.lib // To check Unsync icon feature // End of File diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/ccapplication/ccadetailsviewplugin/src/ccappdetailsviewcontainer.cpp --- a/phonebookui/Phonebook2/ccapplication/ccadetailsviewplugin/src/ccappdetailsviewcontainer.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/ccapplication/ccadetailsviewplugin/src/ccappdetailsviewcontainer.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -32,7 +32,7 @@ #include // PhoneBook2 -#include +#include #include #include #include @@ -62,7 +62,7 @@ #include #include -#include +#include /// Unnamed namespace for local definitions namespace { diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/ccapplication/ccadetailsviewplugin/src/ccappdetailsviewlistboxmodel.cpp --- a/phonebookui/Phonebook2/ccapplication/ccadetailsviewplugin/src/ccappdetailsviewlistboxmodel.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/ccapplication/ccadetailsviewplugin/src/ccappdetailsviewlistboxmodel.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -60,16 +60,14 @@ #include #include #include -#include + #include #include #include -#include -#include - -#include +#include +#include #include "ccappdetailsviewlistboxmodel.h" #include "ccappdetailsviewdefs.h" @@ -700,12 +698,7 @@ UpdateMSKinCbaL(); ); - // check if any item highlighted - TBool highLightEnabled = iListBox.IsHighlightEnabled(); - if ( !highLightEnabled ) - { - SetFocusedListIndex(iInitialFocusIndex); - } + SetFocusedListIndex(iInitialFocusIndex); /*if (!iXspIdModifyState) { @@ -927,26 +920,18 @@ // add icon. buffer.Zero(); TInt iconIndex = 0; - TInt iconId = 0; - // UnSync feature indicator flag and chinese flag - TBool supportUnSyncFeature = FeatureManager::FeatureSupported( - KFeatureIdFfTdUnSyncabPbfieldsInd); - TBool supportChinese = FeatureManager::FeatureSupported(KFeatureIdChinese); - // Valid address - TBool addressValidated = IsAddressValidated(groupId); - if(supportChinese && supportUnSyncFeature) - { - // UnSync Icon - iconId = EPbk2qgn_prop_phonebook2_unsync; - } + if (IsAddressValidated(groupId)) + { + TPbk2IconId iconId(TUid::Uid(KPbk2UID3), EPbk2qgn_prop_locev_map); + iconIndex = iIconArray.FindIcon(iconId); + buffer.AppendNum(iconIndex); + } else - { - iconId = addressValidated ? - EPbk2qgn_prop_locev_map : EPbk2qgn_prop_pb_no_valid_lm; - } - TPbk2IconId pbkIconId( TUid::Uid(KPbk2UID3),iconId ); - iconIndex = iIconArray.FindIcon(pbkIconId); - buffer.AppendNum(iconIndex); + { + TPbk2IconId iconId(TUid::Uid(KPbk2UID3), EPbk2qgn_prop_pb_no_valid_lm); + iconIndex = iIconArray.FindIcon(iconId); + buffer.AppendNum(iconIndex); + } row->AppendColumnL(buffer); // add label. diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/ccapplication/ccamycardplugin/data/ccappmycardpluginrsc.rss --- a/phonebookui/Phonebook2/ccapplication/ccamycardplugin/data/ccappmycardpluginrsc.rss Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/ccapplication/ccamycardplugin/data/ccappmycardpluginrsc.rss Wed Oct 13 14:15:33 2010 +0300 @@ -21,7 +21,7 @@ // INCLUDES #include -#include +#include #include #include @@ -40,7 +40,7 @@ #include "ccappmycard.hrh" // includes for the field resource -#include +#include #include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/ccapplication/ccamycardplugin/group/ccappmycardplugin.mmp --- a/phonebookui/Phonebook2/ccapplication/ccamycardplugin/group/ccappmycardplugin.mmp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/ccapplication/ccamycardplugin/group/ccappmycardplugin.mmp Wed Oct 13 14:15:33 2010 +0300 @@ -68,17 +68,17 @@ LIBRARY ecom.lib LIBRARY bafl.lib LIBRARY aknicon.lib -LIBRARY CommonEngine.lib +LIBRARY commonengine.lib LIBRARY eikcoctl.lib LIBRARY servicehandler.lib -LIBRARY CdlEngine.lib +LIBRARY cdlengine.lib LIBRARY aknlayout2.lib LIBRARY featmgr.lib LIBRARY AknLayout2Scalable.lib -LIBRARY VPbkEng.lib -LIBRARY Pbk2Presentation.lib -LIBRARY Pbk2CommonUI.lib +LIBRARY vpbkeng.lib +LIBRARY pbk2presentation.lib +LIBRARY pbk2commonui.lib LIBRARY pbk2uicontrols.lib LIBRARY Pbk2Commands.lib LIBRARY ccapputil.lib diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/ccapplication/ccamycardplugin/inc/ccappmycardimageloader.h --- a/phonebookui/Phonebook2/ccapplication/ccamycardplugin/inc/ccappmycardimageloader.h Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/ccapplication/ccamycardplugin/inc/ccappmycardimageloader.h Wed Oct 13 14:15:33 2010 +0300 @@ -18,7 +18,7 @@ #ifndef CCAPPMYCARDIMAGELOADER_H #define CCAPPMYCARDIMAGELOADER_H -#include +#include class MVPbkStoreContact; class CCCAppImageDecoding; diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/ccapplication/ccamycardplugin/src/ccappmycard.cpp --- a/phonebookui/Phonebook2/ccapplication/ccamycardplugin/src/ccappmycard.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/ccapplication/ccamycardplugin/src/ccappmycard.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -39,7 +39,7 @@ #include #include #include -#include +#include #include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/ccapplication/ccamycardplugin/src/ccappmycardcontainer.cpp --- a/phonebookui/Phonebook2/ccapplication/ccamycardplugin/src/ccappmycardcontainer.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/ccapplication/ccamycardplugin/src/ccappmycardcontainer.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -30,7 +30,7 @@ #include #include #include -#include +#include #include #include #include @@ -56,13 +56,13 @@ #include #include #include -#include +#include #include "MVPbkFieldType.h" #include #include #include #include -#include +#include #include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/ccapplication/ccamycardplugin/src/ccappmycardimageloader.cpp --- a/phonebookui/Phonebook2/ccapplication/ccamycardplugin/src/ccappmycardimageloader.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/ccapplication/ccamycardplugin/src/ccappmycardimageloader.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -25,7 +25,7 @@ #include #include -#include +#include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/ccapplication/ccamycardplugin/src/ccappmycardplugin.cpp --- a/phonebookui/Phonebook2/ccapplication/ccamycardplugin/src/ccappmycardplugin.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/ccapplication/ccamycardplugin/src/ccappmycardplugin.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -24,7 +24,7 @@ #include "ccappmycard.hrh" #include #include -#include +#include #include #include #include @@ -236,9 +236,6 @@ { CCA_DP(KMyCardLogFile, CCA_L("->CCCAppMyCardPlugin::DoDeactivate()")); - // iOwnContainer should update command to reset the UiControl when deactivated. - iOwnContainer->UpdateAfterCommandExecution(); - // Forward the deactivation-call to base-class CCCAppViewPluginAknView::DoDeactivate(); diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/ccapplication/ccapp/ccapputil/group/ccapputil.mmp --- a/phonebookui/Phonebook2/ccapplication/ccapp/ccapputil/group/ccapputil.mmp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/ccapplication/ccapp/ccapputil/group/ccapputil.mmp Wed Oct 13 14:15:33 2010 +0300 @@ -46,7 +46,7 @@ LIBRARY bafl.lib LIBRARY euser.lib LIBRARY flogger.lib -LIBRARY CommonEngine.lib//coneresourceloader +LIBRARY commonengine.lib//coneresourceloader LIBRARY cmsclient.lib//cms wrapper LIBRARY ccaclient.lib//cms wrapper LIBRARY avkon.lib//avkon view/container @@ -57,8 +57,8 @@ LIBRARY pbk2spbcontentprovider.lib // CSpbContentProvider LIBRARY Pbk2Presentation.lib // TPbk2IconId LIBRARY egul.lib // CGulIcon -LIBRARY aknskins.lib -LIBRARY CdlEngine.lib +LIBRARY AknSkins.lib +LIBRARY cdlengine.lib LIBRARY aknlayout2.lib LIBRARY touchfeedback.lib LIBRARY ecom.lib diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/ccapplication/ccapp/group/ccaapp.mmp --- a/phonebookui/Phonebook2/ccapplication/ccapp/group/ccaapp.mmp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/ccapplication/ccapp/group/ccaapp.mmp Wed Oct 13 14:15:33 2010 +0300 @@ -81,7 +81,7 @@ LIBRARY bafl.lib LIBRARY apgrfx.lib LIBRARY efsrv.lib -LIBRARY aknicon.lib +LIBRARY AknIcon.lib LIBRARY ccaclient.lib LIBRARY centralrepository.lib LIBRARY cmsclient.lib @@ -90,7 +90,7 @@ LIBRARY hlplch.lib LIBRARY ccapputil.lib LIBRARY CdlEngine.lib -LIBRARY aknlayout2.lib +LIBRARY AknLayout2.lib LIBRARY ws32.lib LIBRARY Pbk2CommonUI.lib LIBRARY VPbkEng.lib diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/ccapplication/ccapp/src/ccapppluginloader.cpp --- a/phonebookui/Phonebook2/ccapplication/ccapp/src/ccapppluginloader.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/ccapplication/ccapp/src/ccapppluginloader.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -22,7 +22,7 @@ #include #include -#include +#include #include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/ccapplication/ccapp/tsrc/ut_cmscontactfetcher/group/ut_cmscontactfetcher.mmp --- a/phonebookui/Phonebook2/ccapplication/ccapp/tsrc/ut_cmscontactfetcher/group/ut_cmscontactfetcher.mmp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/ccapplication/ccapp/tsrc/ut_cmscontactfetcher/group/ut_cmscontactfetcher.mmp Wed Oct 13 14:15:33 2010 +0300 @@ -51,7 +51,7 @@ LIBRARY euser.lib -LIBRARY StifTestInterface.lib +LIBRARY stiftestinterface.lib LIBRARY stiftestengine.lib LIBRARY flogger.lib diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/ccapplication/inc/ccalogger.h --- a/phonebookui/Phonebook2/ccapplication/inc/ccalogger.h Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/ccapplication/inc/ccalogger.h Wed Oct 13 14:15:33 2010 +0300 @@ -134,20 +134,19 @@ /** * PERFORMANCE LOGGINS - * Logging is down only in debug, to get the log files, - * need to enable the _DEBUG marco first. - * + * * OPTIONS: * PERF_LOGGING -> 12 different points where performance is measured. (c:\logs\perflogger.txt) - * http://presenceprojects/trac/wiki/PerfLogging + * http://presenceprojects/trac/wiki/PerfLogging + * * PERF_LAUNCH -> For test guys (c:\logs\perflaunch.txt) * */ -#ifdef _DEBUG -#define PERF_LOGGING +#undef PERF_LOGGING #define PERF_LAUNCH -#endif //_DEBUG + + #ifdef PERF_LOGGING diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/group/Pbk2Commands.mmp --- a/phonebookui/Phonebook2/group/Pbk2Commands.mmp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/group/Pbk2Commands.mmp Wed Oct 13 14:15:33 2010 +0300 @@ -86,8 +86,8 @@ LIBRARY bafl.lib hlplch.lib eikcore.lib // Dependencies to S60 platform components -LIBRARY avkon.lib CommonEngine.lib featmgr.lib -LIBRARY servicehandler.lib filelist.lib +LIBRARY Avkon.lib CommonEngine.lib FeatMgr.lib +LIBRARY ServiceHandler.lib FileList.lib LIBRARY centralrepository.lib LIBRARY sysutil.lib efsrv.lib LIBRARY aiwdialdata.lib @@ -95,7 +95,7 @@ // Dependencies to Phonebook LIBRARY VPbkEng.lib -LIBRARY pbk2uicontrols.lib Pbk2Presentation.lib +LIBRARY Pbk2UIControls.lib Pbk2Presentation.lib LIBRARY Pbk2CommonUI.lib Pbk2UIExt.lib // Depencency to Phonebook profiling library diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/group/Pbk2CommandsExtension.mmp --- a/phonebookui/Phonebook2/group/Pbk2CommandsExtension.mmp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/group/Pbk2CommandsExtension.mmp Wed Oct 13 14:15:33 2010 +0300 @@ -87,7 +87,7 @@ END // Include paths -USERINCLUDE ../CommandsExtension/inc ../Commands/inc +USERINCLUDE ../CommandsExtension/inc SYSTEMINCLUDE ../inc SYSTEMINCLUDE /epoc32/include/ecom //RCL_ADD @@ -100,13 +100,13 @@ LIBRARY imageconversion.lib fbscli.lib // Dependencies to S60 components -LIBRARY avkon.lib CommonEngine.lib browserlauncher.lib sendui.lib featmgr.lib -LIBRARY mgfetch.lib spdctrl.lib -LIBRARY commonui.lib +LIBRARY Avkon.lib CommonEngine.lib BrowserLauncher.lib SendUI.lib FeatMgr.lib +LIBRARY MGFetch.lib SpdCtrl.lib +LIBRARY CommonUI.lib // Dependencies to Phonebook LIBRARY VPbkEng.lib VPbkVCardEng.lib Pbk2Commands.lib -LIBRARY pbk2uicontrols.lib Pbk2Presentation.lib +LIBRARY Pbk2UIControls.lib Pbk2Presentation.lib LIBRARY Pbk2CommonUI.lib Pbk2UIExt.lib LIBRARY pbk2rclengine.lib diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/group/Pbk2CommonUI.mmp --- a/phonebookui/Phonebook2/group/Pbk2CommonUI.mmp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/group/Pbk2CommonUI.mmp Wed Oct 13 14:15:33 2010 +0300 @@ -94,17 +94,17 @@ // Dependencies to Symbian OS components LIBRARY euser.lib bafl.lib apparc.lib LIBRARY cone.lib eikcore.lib eikcoctl.lib egul.lib -LIBRARY efsrv.lib centralrepository.lib +LIBRARY efsrv.lib CentralRepository.lib LIBRARY estor.lib ecom.lib LIBRARY fbscli.lib // Dependencies to S60 platform components -LIBRARY avkon.lib aknskins.lib CommonEngine.lib +LIBRARY avkon.lib AknSkins.lib CommonEngine.lib LIBRARY aknicon.lib AknLayout2Scalable.lib CdlEngine.lib LIBRARY apgrfx.lib apmime.lib -LIBRARY featmgr.lib -LIBRARY DrmHelper.lib DrmRights.lib DRMCommon.lib -LIBRARY MediaFileList.lib +LIBRARY FeatMgr.lib +LIBRARY DrmHelper.lib DrmRights.lib DrmCommon.lib +LIBRARY mediafilelist.lib // Dependencies to Phonebook LIBRARY VPbkEng.lib @@ -116,7 +116,7 @@ #endif // PBK2_ENABLE_PROFILE #ifdef RD_DRM_COMMON_INTERFACE_FOR_OMA_AND_WMDRM -LIBRARY DRMUtility.lib +LIBRARY drmutility.lib #endif // End of File diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/group/Pbk2GroupExtension.mmp --- a/phonebookui/Phonebook2/group/Pbk2GroupExtension.mmp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/group/Pbk2GroupExtension.mmp Wed Oct 13 14:15:33 2010 +0300 @@ -74,20 +74,19 @@ // Include paths USERINCLUDE ../GroupExtension/inc -USERINCLUDE ../commands/inc SYSTEMINCLUDE ../inc APP_LAYER_SYSTEMINCLUDE // Dependencies to Symbian OS components -LIBRARY euser.lib CommonEngine.lib +LIBRARY euser.lib commonengine.lib LIBRARY cone.lib eikcoctl.lib bafl.lib eikctl.lib eikdlg.lib eikcore.lib LIBRARY efsrv.lib ecom.lib // Dependencies to S60 components -LIBRARY avkon.lib featmgr.lib sendui.lib touchfeedback.lib +LIBRARY Avkon.lib FeatMgr.lib sendui.lib touchfeedback.lib // Dependencies to Phonebook -LIBRARY Pbk2CommonUI.lib pbk2uicontrols.lib Pbk2Commands.lib +LIBRARY Pbk2CommonUi.lib Pbk2UiControls.lib Pbk2Commands.lib LIBRARY Pbk2Presentation.lib VPbkEng.lib LIBRARY CdlEngine.lib // End of File diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/group/Pbk2MMCExtension.mmp --- a/phonebookui/Phonebook2/group/Pbk2MMCExtension.mmp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/group/Pbk2MMCExtension.mmp Wed Oct 13 14:15:33 2010 +0300 @@ -70,19 +70,19 @@ APP_LAYER_SYSTEMINCLUDE // Dependencies to Symbian OS components -LIBRARY euser.lib CommonEngine.lib +LIBRARY euser.lib commonengine.lib LIBRARY efsrv.lib estor.lib ecom.lib LIBRARY cone.lib LIBRARY eikcoctl.lib eikcore.lib // Dependencies to S60 components -LIBRARY avkon.lib platformenv.lib +LIBRARY Avkon.lib PlatformEnv.lib #ifdef RD_MULTIPLE_DRIVE -LIBRARY commondialogs.lib +LIBRARY CommonDialogs.lib #endif // RD_MULTIPLE_DRIVE // Dependencies to Phonebook LIBRARY Pbk2Presentation.lib Pbk2Commands.lib -LIBRARY Pbk2CommonUI.lib VPbkVCardEng.lib VPbkEng.lib +LIBRARY Pbk2CommonUi.lib VPbkVCardEng.lib VPbkEng.lib // End of File diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/group/Pbk2MapExtension.mmp --- a/phonebookui/Phonebook2/group/Pbk2MapExtension.mmp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/group/Pbk2MapExtension.mmp Wed Oct 13 14:15:33 2010 +0300 @@ -62,17 +62,17 @@ APP_LAYER_SYSTEMINCLUDE // Dependencies to Symbian OS components -LIBRARY euser.lib CommonEngine.lib cone.lib +LIBRARY euser.lib commonengine.lib cone.lib LIBRARY efsrv.lib estor.lib ecom.lib bafl.lib // Dependencies to Symbian OS components LIBRARY eikcoctl.lib eikcore.lib eikctl.lib // Dependencies to S60 components -LIBRARY lbs.lib servicehandler.lib eposlandmarks.lib avkon.lib +LIBRARY lbs.lib servicehandler.lib eposlandmarks.lib Avkon.lib LIBRARY mnservicelib.lib mnclientlib.lib // Dependencies to Phonebook -LIBRARY Pbk2CommonUI.lib VPbkEng.lib Pbk2Commands.lib pbk2uicontrols.lib +LIBRARY Pbk2CommonUi.lib VPbkEng.lib Pbk2Commands.lib Pbk2UIControls.lib // End of File diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/group/Pbk2MigrationSupport.mmp --- a/phonebookui/Phonebook2/group/Pbk2MigrationSupport.mmp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/group/Pbk2MigrationSupport.mmp Wed Oct 13 14:15:33 2010 +0300 @@ -51,6 +51,6 @@ LIBRARY euser.lib ecom.lib // Dependencies to S60 components -LIBRARY pbkview.lib VPbkEng.lib Pbk2CommonUI.lib +LIBRARY PbkView.lib VPbkEng.lib Pbk2CommonUi.lib // End of File diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/group/Pbk2NamesListExtension.mmp --- a/phonebookui/Phonebook2/group/Pbk2NamesListExtension.mmp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/group/Pbk2NamesListExtension.mmp Wed Oct 13 14:15:33 2010 +0300 @@ -87,25 +87,25 @@ END // Dependencies to Symbian OS components -LIBRARY euser.lib CommonEngine.lib +LIBRARY euser.lib commonengine.lib LIBRARY cone.lib bafl.lib LIBRARY efsrv.lib ecom.lib // Dependencies to S60 components -LIBRARY avkon.lib featmgr.lib sendui.lib CdlEngine.lib +LIBRARY Avkon.lib FeatMgr.lib sendui.lib CdlEngine.lib LIBRARY eikctl.lib eikdlg.lib eikcore.lib eikcoctl.lib bsclient.lib serviceprovidersettings.lib //CCA LIBRARY ccaclient.lib // Dependencies to Phonebook -LIBRARY Pbk2CommonUI.lib pbk2uicontrols.lib Pbk2Commands.lib Pbk2UIExt.lib +LIBRARY Pbk2CommonUi.lib Pbk2UiControls.lib Pbk2Commands.lib Pbk2UIExt.lib LIBRARY pbk2rclengine.lib LIBRARY Pbk2Presentation.lib VPbkEng.lib pbk2spbcontentprovider.lib LIBRARY centralrepository.lib touchfeedback.lib LIBRARY fbscli.lib LIBRARY egul.lib LIBRARY contactpresence.lib -LIBRARY aknlayout2.lib AknLayout2Scalable.lib +LIBRARY AknLayout2.lib AknLayout2Scalable.lib LIBRARY estor.lib LIBRARY ws32.lib diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/group/Pbk2Presentation.mmp --- a/phonebookui/Phonebook2/group/Pbk2Presentation.mmp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/group/Pbk2Presentation.mmp Wed Oct 13 14:15:33 2010 +0300 @@ -126,14 +126,6 @@ LANGUAGE_IDS END -// UnSync icon resource file -START RESOURCE ../rss/Pbk2PresentationChineseUnSync.rss -DEPENDS vpbkeng.rsg -HEADER -TARGET Pbk2PresentationChineseUnSync -TARGETPATH RESOURCE_FILES_DIR -LANGUAGE_IDS -END // Include paths USERINCLUDE ../Presentation/inc ../Presentation/rss @@ -141,12 +133,12 @@ APP_LAYER_SYSTEMINCLUDE // Dependencies to Symbian OS components -LIBRARY euser.lib efsrv.lib bafl.lib centralrepository.lib +LIBRARY euser.lib efsrv.lib bafl.lib CentralRepository.lib LIBRARY cone.lib fbscli.lib imageconversion.lib bitmaptransforms.lib // Dependencies to S60 components -LIBRARY featmgr.lib -LIBRARY avkon.lib eikcdlg.lib eikctl.lib CommonEngine.lib aknicon.lib +LIBRARY FeatMgr.lib +LIBRARY avkon.lib eikcdlg.lib eikctl.lib CommonEngine.lib AknIcon.lib // Dependencies to Phonebook LIBRARY VPbkEng.lib diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/group/Pbk2ServerApp.mmp --- a/phonebookui/Phonebook2/group/Pbk2ServerApp.mmp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/group/Pbk2ServerApp.mmp Wed Oct 13 14:15:33 2010 +0300 @@ -122,13 +122,13 @@ LIBRARY AknLayout2Scalable.lib CdlEngine.lib // Dependencies to S60 platform components -LIBRARY avkon.lib centralrepository.lib featmgr.lib -LIBRARY CommonEngine.lib aknskins.lib +LIBRARY Avkon.lib CentralRepository.lib FeatMgr.lib +LIBRARY CommonEngine.lib AknSkins.lib LIBRARY serviceprovidersettings.lib LIBRARY contactpresence.lib // Dependencies Phonebook -LIBRARY VPbkEng.lib Pbk2CommonUI.lib Pbk2UIExt.lib Pbk2Presentation.lib -LIBRARY pbk2uicontrols.lib Pbk2Commands.lib Pbk2CommonUtility.lib +LIBRARY VPbkEng.lib Pbk2CommonUi.lib Pbk2UiExt.lib Pbk2Presentation.lib +LIBRARY Pbk2UiControls.lib Pbk2Commands.lib Pbk2CommonUtility.lib // End of File diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/group/Pbk2UIControls.mmp --- a/phonebookui/Phonebook2/group/Pbk2UIControls.mmp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/group/Pbk2UIControls.mmp Wed Oct 13 14:15:33 2010 +0300 @@ -183,26 +183,26 @@ // Dependencies to Symbian OS components LIBRARY euser.lib cone.lib bafl.lib eikdlg.lib bitmaptransforms.lib LIBRARY eikcoctl.lib eikctl.lib eikcore.lib estor.lib fbscli.lib ecom.lib -LIBRARY centralrepository.lib efsrv.lib egul.lib -LIBRARY hlplch.lib FindUtil.lib charconv.lib +LIBRARY CentralRepository.lib efsrv.lib egul.lib +LIBRARY hlplch.lib findutil.lib charconv.lib LIBRARY form.lib etext.lib // Dependencies to AVKON -LIBRARY avkon.lib aknskins.lib -LIBRARY CdlEngine.lib aknjapanesereading.lib -LIBRARY aknlayout2.lib AknLayout2Scalable.lib aknicon.lib +LIBRARY Avkon.lib AknSkins.lib +LIBRARY CdlEngine.lib AknJapaneseReading.lib +LIBRARY AknLayout2.lib AknLayout2Scalable.lib AknIcon.lib LIBRARY touchfeedback.lib LIBRARY serviceprovidersettings.lib LIBRARY rcse.lib // Dependencies to S60 platform components -LIBRARY CommonEngine.lib featmgr.lib numbergrouping.lib +LIBRARY commonengine.lib FeatMgr.lib numbergrouping.lib LIBRARY DrmParsers.lib DrmDcf.lib DrmRights.lib LIBRARY DrmServerInterfaces.lib LIBRARY DRMCommon.lib -LIBRARY apparc.lib mgfetch.lib commonui.lib apmime.lib sysutil.lib +LIBRARY apparc.lib MGFetch.lib CommonUI.lib apmime.lib sysutil.lib // Dependencies to other Phonebook components LIBRARY VPbkEng.lib Pbk2Presentation.lib Pbk2UIExt.lib Pbk2CommonUI.lib @@ -222,8 +222,6 @@ LIBRARY akntransitionutils.lib LIBRARY aknphysics.lib -LIBRARY aknpictograph.lib -LIBRARY featmgr.lib - +LIBRARY aknpictograph.lib // End of File diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/group/Pbk2UIExtensionManager.mmp --- a/phonebookui/Phonebook2/group/Pbk2UIExtensionManager.mmp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/group/Pbk2UIExtensionManager.mmp Wed Oct 13 14:15:33 2010 +0300 @@ -70,13 +70,13 @@ // Dependencies to Symbian OS components LIBRARY euser.lib ecom.lib efsrv.lib cone.lib bafl.lib LIBRARY eikcoctl.lib eikcore.lib -LIBRARY featmgr.lib +LIBRARY FeatMgr.lib // Dependencies to S60 platform components LIBRARY avkon.lib // Dependencies to Phonebook components -LIBRARY Pbk2Presentation.lib Pbk2CommonUI.lib +LIBRARY Pbk2Presentation.lib Pbk2CommonUi.lib #ifdef PBK2_ENABLE_PROFILE // Depencency to Phonebook profiling library diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/group/Pbk2UIPolicy.mmp --- a/phonebookui/Phonebook2/group/Pbk2UIPolicy.mmp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/group/Pbk2UIPolicy.mmp Wed Oct 13 14:15:33 2010 +0300 @@ -75,7 +75,7 @@ // Dependencies to S60 platform components LIBRARY SortUtil.lib FindUtil.lib -LIBRARY featmgr.lib +LIBRARY FeatMgr.lib // Dependencies to Phonebook LIBRARY VPbkEng.lib Pbk2Presentation.lib diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/group/Pbk2UIServices.mmp --- a/phonebookui/Phonebook2/group/Pbk2UIServices.mmp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/group/Pbk2UIServices.mmp Wed Oct 13 14:15:33 2010 +0300 @@ -68,8 +68,8 @@ LIBRARY cone.lib eikcoctl.lib estor.lib efsrv.lib // Dependencies to S60 platform components -LIBRARY avkon.lib servicehandler.lib -LIBRARY featmgr.lib +LIBRARY Avkon.lib ServiceHandler.lib +LIBRARY FeatMgr.lib // Dependencies to Phonebook LIBRARY VPbkEng.lib Pbk2Presentation.lib Pbk2CommonUtility.lib diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/group/Pbk2USimExtension.mmp --- a/phonebookui/Phonebook2/group/Pbk2USimExtension.mmp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/group/Pbk2USimExtension.mmp Wed Oct 13 14:15:33 2010 +0300 @@ -106,18 +106,18 @@ APP_LAYER_SYSTEMINCLUDE // Dependencies to Symbian OS components -LIBRARY euser.lib CommonEngine.lib ecom.lib +LIBRARY euser.lib commonengine.lib ecom.lib LIBRARY cone.lib eikcoctl.lib eikdlg.lib LIBRARY eikcore.lib bafl.lib charconv.lib centralrepository.lib // Dependencies to S60 components -LIBRARY avkon.lib aknicon.lib CdlEngine.lib aknskins.lib +LIBRARY avkon.lib aknicon.lib cdlengine.lib aknskins.lib LIBRARY secui.lib servicehandler.lib LIBRARY featmgr.lib // Dependencies to Phonebook -LIBRARY VPbkEng.lib vpbksimstoreservice.lib +LIBRARY VPbkEng.lib VPbkSimStoreService.lib LIBRARY Pbk2CommonUI.lib Pbk2Presentation.lib -LIBRARY pbk2uicontrols.lib Pbk2Commands.lib +LIBRARY Pbk2UiControls.lib Pbk2Commands.lib // End of File diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/group/Pbk2USimThinExtension.mmp --- a/phonebookui/Phonebook2/group/Pbk2USimThinExtension.mmp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/group/Pbk2USimThinExtension.mmp Wed Oct 13 14:15:33 2010 +0300 @@ -65,10 +65,10 @@ LIBRARY euser.lib ecom.lib eikcoctl.lib cone.lib // Dependencies to S60 platform components -LIBRARY CommonEngine.lib avkon.lib +LIBRARY commonengine.lib avkon.lib // Dependencies to Phonebook -LIBRARY VPbkEng.lib vpbksimstoreservice.lib +LIBRARY VPbkEng.lib VPbkSimStoreService.lib LIBRARY Pbk2Presentation.lib Pbk2CommonUI.lib Pbk2Commands.lib // End of File diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/group/Pbk2VoiceTagExtension.mmp --- a/phonebookui/Phonebook2/group/Pbk2VoiceTagExtension.mmp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/group/Pbk2VoiceTagExtension.mmp Wed Oct 13 14:15:33 2010 +0300 @@ -67,11 +67,11 @@ LIBRARY eikcore.lib ecom.lib // Dependencies to S60 components -LIBRARY avkon.lib featmgr.lib +LIBRARY Avkon.lib FeatMgr.lib LIBRARY VoiceUiNameDialer.lib LIBRARY CommonEngine.lib // Dependencies to Phonebook2 -LIBRARY VPbkEng.lib Pbk2CommonUI.lib Pbk2Presentation.lib +LIBRARY VPbkEng.lib Pbk2CommonUi.lib Pbk2Presentation.lib // End of File diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/group/Pbk2VoiceTagThinExtension.mmp --- a/phonebookui/Phonebook2/group/Pbk2VoiceTagThinExtension.mmp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/group/Pbk2VoiceTagThinExtension.mmp Wed Oct 13 14:15:33 2010 +0300 @@ -56,6 +56,6 @@ LIBRARY euser.lib ecom.lib eikcoctl.lib // Dependencies to S60 platform components -LIBRARY featmgr.lib +LIBRARY FeatMgr.lib // End of File diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/group/Phonebook2.mmp --- a/phonebookui/Phonebook2/group/Phonebook2.mmp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/group/Phonebook2.mmp Wed Oct 13 14:15:33 2010 +0300 @@ -94,17 +94,17 @@ LIBRARY apparc.lib cone.lib fbscli.lib LIBRARY eikcore.lib efsrv.lib eikcoctl.lib LIBRARY ws32.lib apgrfx.lib -LIBRARY centralrepository.lib -LIBRARY platformenv.lib +LIBRARY CentralRepository.lib +LIBRARY PlatformEnv.lib // Dependencies to S60 platform components -LIBRARY avkon.lib aknskins.lib -LIBRARY CommonEngine.lib sendui.lib +LIBRARY Avkon.lib AknSkins.lib +LIBRARY CommonEngine.lib SendUI.lib LIBRARY gfxtrans.lib // Dependencies to Phonebook -LIBRARY VPbkEng.lib pbk2uicontrols.lib Pbk2CommonUI.lib -LIBRARY Pbk2Presentation.lib Pbk2UIExt.lib Pbk2Commands.lib +LIBRARY VPbkEng.lib Pbk2UiControls.lib Pbk2CommonUI.lib +LIBRARY Pbk2Presentation.lib Pbk2UiExt.lib Pbk2Commands.lib #ifdef PBK2_ENABLE_PROFILE // Depencency to Phonebook profiling library diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/group/iconlist.txt --- a/phonebookui/Phonebook2/group/iconlist.txt Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/group/iconlist.txt Wed Oct 13 14:15:33 2010 +0300 @@ -25,5 +25,4 @@ /c8,8 qgn_prop_pb_topc /c8,8 qgn_prop_locev_map.svg /c8,8 qgn_prop_pb_no_valid_lm.svg -/c8,8 qgn_prop_blid_waypoint.svg -/c8,8 qgn_prop_cmcc_unsync.svg \ No newline at end of file +/c8,8 qgn_prop_blid_waypoint.svg \ No newline at end of file diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/group/pbk2spbcontentprovider.mmp --- a/phonebookui/Phonebook2/group/pbk2spbcontentprovider.mmp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/group/pbk2spbcontentprovider.mmp Wed Oct 13 14:15:33 2010 +0300 @@ -60,10 +60,10 @@ LIBRARY estor.lib LIBRARY featmgr.lib -LIBRARY VPbkEng.lib +LIBRARY vpbkeng.lib LIBRARY bsclient.lib -LIBRARY Pbk2Presentation.lib -LIBRARY Pbk2CommonUI.lib +LIBRARY pbk2presentation.lib +LIBRARY pbk2commonui.lib LIBRARY presencecacheclient2.lib LIBRARY presencecacheutils.lib LIBRARY efsrv.lib diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/group/xSPExtensionManager.mmp --- a/phonebookui/Phonebook2/group/xSPExtensionManager.mmp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/group/xSPExtensionManager.mmp Wed Oct 13 14:15:33 2010 +0300 @@ -69,14 +69,14 @@ TARGETPATH ECOM_RESOURCE_DIR END -LIBRARY euser.lib cone.lib ecom.lib bafl.lib CommonEngine.lib +LIBRARY euser.lib cone.lib ecom.lib bafl.lib commonengine.lib LIBRARY eikcore.lib eikctl.lib eikcoctl.lib -LIBRARY avkon.lib aknnotify.lib estor.lib efsrv.lib aknicon.lib egul.lib aknskins.lib -LIBRARY xspviewservices.lib +LIBRARY avkon.lib aknnotify.lib estor.lib efsrv.lib aknicon.lib egul.lib AknSkins.lib +LIBRARY xSPViewServices.lib LIBRARY centralrepository.lib // Dependencies to Phonebook2 -LIBRARY Pbk2CommonUI.lib Pbk2UIExt.lib Pbk2Presentation.lib VPbkEng.lib +LIBRARY Pbk2CommonUi.lib Pbk2UIExt.lib Pbk2Presentation.lib VPbkEng.lib LIBRARY bitgdi.lib fbscli.lib START BITMAP ExtensionManager.mbm diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/group/xSPViewServices.mmp --- a/phonebookui/Phonebook2/group/xSPViewServices.mmp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/group/xSPViewServices.mmp Wed Oct 13 14:15:33 2010 +0300 @@ -31,7 +31,7 @@ SOURCEPATH ../xSPExtensionManager/src SOURCE xSPViewServices.cpp -SOURCE CxSPViewData.cpp +SOURCE CxSPViewData.cpp LIBRARY apgrfx.lib apparc.lib ws32.lib ecom.lib euser.lib -LIBRARY Pbk2CommonUI.lib VPbkEng.lib estor.lib +LIBRARY Pbk2CommonUi.lib VPbkEng.lib estor.lib diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/help/data/xhtml.zip Binary file phonebookui/Phonebook2/help/data/xhtml.zip has changed diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/inc/CPbk2CommandHandler.h --- a/phonebookui/Phonebook2/inc/CPbk2CommandHandler.h Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/inc/CPbk2CommandHandler.h Wed Oct 13 14:15:33 2010 +0300 @@ -136,15 +136,6 @@ TInt aPresIndex, const MVPbkStoreContact* aStoreContact ); - public: - /** - * Returns the Command Store - * OwnerShip is not transferred. - * - * @return Pointer to the instance CPbk2CommandStore. Can be NULL. Ownership not transferred - */ - IMPORT_C CPbk2CommandStore* CommandStore(); - private: // Data /// Own: Command factory MPbk2CommandFactory* iCommandFactory; diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/inc/CPbk2FetchDlg.h --- a/phonebookui/Phonebook2/inc/CPbk2FetchDlg.h Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/inc/CPbk2FetchDlg.h Wed Oct 13 14:15:33 2010 +0300 @@ -159,14 +159,6 @@ */ IMPORT_C void AcceptDelayedFetchL( const TDesC8& aContactLink ); - - /** - * Unmarks the given contact as selected. - * - * @param aContactLink Link to a contact to select. - */ - IMPORT_C void DenyDelayedFetchL( - const TDesC8& aContactLink ); public: // From CEikDialog IMPORT_C TInt ExecuteLD(); @@ -212,7 +204,6 @@ void SelectContactL( const MVPbkContactLink& aLink, TBool aSelected ); - TBool IsSelectPermitted(); private: // From MPbk2StoreConfigurationObserver void ConfigurationChanged(); @@ -321,8 +312,6 @@ CPbk2NamesListControl* iNamesListControl; /// Not own: Group list control CPbk2NamesListControl* iGroupListControl; - /// Is selection permitted - TBool iSelectPermitted; }; #endif // CPBK2FETCHDLG_H diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/inc/CPbk2NamesListControl.h --- a/phonebookui/Phonebook2/inc/CPbk2NamesListControl.h Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/inc/CPbk2NamesListControl.h Wed Oct 13 14:15:33 2010 +0300 @@ -32,7 +32,6 @@ #include #include #include "CPbk2ControlContainer.h" -#include // FORWARD DECLARATIONS class MPbk2NamesListState; @@ -79,8 +78,7 @@ public MEikListBoxObserver, public MPbk2ControlContainerForegroundEventObserver, public MPbk2CommandItemUpdater, - public MVPbkContactViewObserverExtension, - public MAknMarkingModeObserver + public MVPbkContactViewObserverExtension { public: // Enumerations @@ -131,27 +129,27 @@ CPbk2StorePropertyArray& aStoreProperties ); /** - * Creates a new instance of this class. - * - * @param aResourceId Id of the resource where the control - * is defined in. - * @param aContainer This control's container. - * @param aManager Virtual Phonebook contact manager. - * @param aView The contact view. - * @param aNameFormatter Name formatter. - * @param aStoreProperties An array containg properties - * for the stores that are shown. - * @param aThumbManager Thumbnail manager for social phonebook //TODO - * @return A new instance of this class. - */ - IMPORT_C static CPbk2NamesListControl* NewL( - TInt aResourceId, - const CCoeControl* aContainer, - CVPbkContactManager& aManager, - MVPbkContactViewBase& aView, - MPbk2ContactNameFormatter& aNameFormatter, - CPbk2StorePropertyArray& aStoreProperties, - CPbk2ThumbnailManager* aThumbManager ); + * Creates a new instance of this class. + * + * @param aResourceId Id of the resource where the control + * is defined in. + * @param aContainer This control's container. + * @param aManager Virtual Phonebook contact manager. + * @param aView The contact view. + * @param aNameFormatter Name formatter. + * @param aStoreProperties An array containg properties + * for the stores that are shown. + * @param aThumbManager Thumbnail manager for social phonebook //TODO + * @return A new instance of this class. + */ + IMPORT_C static CPbk2NamesListControl* NewL( + TInt aResourceId, + const CCoeControl* aContainer, + CVPbkContactManager& aManager, + MVPbkContactViewBase& aView, + MPbk2ContactNameFormatter& aNameFormatter, + CPbk2StorePropertyArray& aStoreProperties, + CPbk2ThumbnailManager* aThumbManager ); /** * Constructor. Defined as public for custom control needs. @@ -247,8 +245,8 @@ /** * For special case: Call this function to skip showing the * blocking progress note when mass update is going on in nameslistview. - * When done, MassUpdateSkipProgressNote(EFalse) must always be - * called to reset back to original state (even if a Leave would happen in between) + * When done, MassUpdateSkipProgressNote(EFalse) must always be + * called to reset back to original state (even if a Leave would happen in between) * @param aSkip - ETrue if progress note should not be displayed. EFalse reset to normal. */ IMPORT_C void MassUpdateSkipProgressNote( TBool aSkip ); @@ -392,25 +390,6 @@ public: // from MAdaptiveSearchTextObserver void AdaptiveSearchTextChanged( CAknSearchField* aSearchField ); - - public: // From MAknMarkingModeObserver - - /** - * This method is called when marking mode is activated or deactivated. - * - * @param aActivated @c ETrue if marking mode was activate, @c EFalse - * if marking mode was deactivated. - */ - void MarkingModeStatusChanged( TBool aActivated ); - - /** - * This method is called just before marking mode is closed. Client can - * either accept or decline closing. - * - * @return @c ETrue if marking mode should be closed, otherwise @c EFalse. - */ - TBool ExitMarkingMode() const; - private: // Implementation /** @@ -464,16 +443,7 @@ void RestoreMarkedContactsL(); void ClearMarkedContactsInfo(); - public: - inline void SetMarkingMode( TBool aActived ) - { - iMarkingModeOn = aActived; - } - inline TBool GetMarkingMode() const - { - return iMarkingModeOn; - } private: // Data /// Ref: Current state @@ -530,19 +500,17 @@ // Wheter this control owns the thumbnail manager (iThumbManager) or not TBool iOwnThumbManager; //OWN: double list box "handle" - CPbk2ContactViewDoubleListBox* iDoubleListBox; + CPbk2ContactViewDoubleListBox* iDoubleListBox; //Own: Selected/Marked Contacts - MVPbkContactLinkArray* iSelectedLinkArray; + MVPbkContactLinkArray* iSelectedLinkArray; //Own: Background Task Handler CPbk2NamesListControlBgTask* iBgTask; //Own: Mass update checker/handler CPbk2HandleMassUpdate* iCheckMassUpdate; //Own: Open Cca is in progress - TBool iOpeningCca; - // Flag to indicate marking mode is active - TBool iMarkingModeOn; + TBool iOpeningCca; }; #endif // CPBK2NAMESLISTCONTROL_H diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/inc/MPbk2FetchDlg.h --- a/phonebookui/Phonebook2/inc/MPbk2FetchDlg.h Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/inc/MPbk2FetchDlg.h Wed Oct 13 14:15:33 2010 +0300 @@ -118,13 +118,6 @@ virtual void SelectContactL( const MVPbkContactLink& aLink, TBool aSelected ) = 0; - /** - * Check whether selection is permitted - * - * @return Check result - */ - virtual TBool IsSelectPermitted() = 0; - protected: // Protected functions diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/inc/Pbk2Icons.hrh --- a/phonebookui/Phonebook2/inc/Pbk2Icons.hrh Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/inc/Pbk2Icons.hrh Wed Oct 13 14:15:33 2010 +0300 @@ -185,10 +185,6 @@ #define qgn_prop_radiobutt_off EMbmAvkonQgn_prop_radiobutt_off #define qgn_prop_radiobutt_off_mask EMbmAvkonQgn_prop_radiobutt_off_mask -/// UnSync icon -#define qgn_prop_phonebook2_unsync EMbmPhonebook2Qgn_prop_cmcc_unsync -#define qgn_prop_phonebook2_unsync_mask EMbmPhonebook2Qgn_prop_cmcc_unsync_mask - //// Phonebook2 bitmap file location and name #define phonebook2_mbm_file_location "z:\\resource\\apps\\Phonebook2.mif" diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/inc/cpbk2commandactivator.h --- a/phonebookui/Phonebook2/inc/cpbk2commandactivator.h Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/inc/cpbk2commandactivator.h Wed Oct 13 14:15:33 2010 +0300 @@ -52,7 +52,7 @@ void ExecuteLD(); void ResetUiControl(MPbk2ContactUiControl& aUiControl); void AddObserver( MPbk2CommandObserver& aObserver ); - TAny* CommandExtension(TUid /*aExtensionUid*/); + private: // MPbk2CommandObserver void CommandFinished( const MPbk2Command& aCommand ); diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/remotecontactlookup/contactactionmenu/group/pbk2rclcontactactionmenu.mmp --- a/phonebookui/Phonebook2/remotecontactlookup/contactactionmenu/group/pbk2rclcontactactionmenu.mmp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/remotecontactlookup/contactactionmenu/group/pbk2rclcontactactionmenu.mmp Wed Oct 13 14:15:33 2010 +0300 @@ -61,12 +61,12 @@ LIBRARY aknskins.lib LIBRARY aknskinsrv.lib LIBRARY aknswallpaperutils.lib -LIBRARY fontutils.lib -LIBRARY CdlEngine.lib +LIBRARY FontUtils.lib +LIBRARY cdlengine.lib LIBRARY aknlayout2.lib -LIBRARY AknLayout2Scalable.lib -LIBRARY AknLayout2Adaptation.lib -LIBRARY CommonEngine.lib +LIBRARY aknlayout2scalable.lib +LIBRARY aknlayout2adaptation.lib +LIBRARY commonengine.lib #if (PBKX_DEBUG_LEVEL > 0) LIBRARY pbkxdebug.lib diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/remotecontactlookup/contactactionservice/callplugin/group/pbk2rclcallplugin.mmp --- a/phonebookui/Phonebook2/remotecontactlookup/contactactionservice/callplugin/group/pbk2rclcallplugin.mmp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/remotecontactlookup/contactactionservice/callplugin/group/pbk2rclcallplugin.mmp Wed Oct 13 14:15:33 2010 +0300 @@ -46,13 +46,13 @@ LIBRARY ecom.lib LIBRARY egul.lib // Icon LIBRARY servicehandler.lib // AIW -LIBRARY CommonEngine.lib // String loadder +LIBRARY commonengine.lib // String loadder LIBRARY bafl.lib LIBRARY cone.lib LIBRARY fbscli.lib LIBRARY ws32.lib LIBRARY featmgr.lib -LIBRARY ProfileEngine.lib +LIBRARY profileengine.lib LIBRARY centralrepository.lib LIBRARY aiwdialdata.lib diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/remotecontactlookup/contactactionservice/data/pbk2rclactionutils.rss --- a/phonebookui/Phonebook2/remotecontactlookup/contactactionservice/data/pbk2rclactionutils.rss Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/remotecontactlookup/contactactionservice/data/pbk2rclactionutils.rss Wed Oct 13 14:15:33 2010 +0300 @@ -37,7 +37,7 @@ #include #include "FscFieldOrdering.rh" -#include +#include // RESOURCE DEFINITIONS #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/remotecontactlookup/contactactionservice/group/pbk2rclcontactactionservice.mmp --- a/phonebookui/Phonebook2/remotecontactlookup/contactactionservice/group/pbk2rclcontactactionservice.mmp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/remotecontactlookup/contactactionservice/group/pbk2rclcontactactionservice.mmp Wed Oct 13 14:15:33 2010 +0300 @@ -72,13 +72,13 @@ LIBRARY ecom.lib LIBRARY cone.lib LIBRARY avkon.lib -LIBRARY CommonEngine.lib +LIBRARY commonengine.lib LIBRARY centralrepository.lib LIBRARY egul.lib // Icon LIBRARY fbscli.lib LIBRARY featmgr.lib LIBRARY aknskins.lib -LIBRARY VPbkEng.lib +LIBRARY vpbkeng.lib LIBRARY bafl.lib LIBRARY efsrv.lib LIBRARY eikcoctl.lib @@ -89,7 +89,7 @@ // Dependencies to Phonebook LIBRARY Pbk2Presentation.lib -LIBRARY Pbk2CommonUI.lib +LIBRARY Pbk2CommonUi.lib #if (PBKX_DEBUG_LEVEL > 0) LIBRARY pbkxdebug.lib diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/remotecontactlookup/contactactionservice/inc/CFscFieldOrderingManager.h --- a/phonebookui/Phonebook2/remotecontactlookup/contactactionservice/inc/CFscFieldOrderingManager.h Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/remotecontactlookup/contactactionservice/inc/CFscFieldOrderingManager.h Wed Oct 13 14:15:33 2010 +0300 @@ -75,7 +75,7 @@ TFieldTypeOrder( TResourceReader& aReader ); /** - * Field type resource id from vpbkeng.rsg + * Field type resource id from VPbkEng.rsg */ TInt iFieldTypeResId; diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/remotecontactlookup/contactactionservice/inc/FscFieldOrdering.rh --- a/phonebookui/Phonebook2/remotecontactlookup/contactactionservice/inc/FscFieldOrdering.rh Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/remotecontactlookup/contactactionservice/inc/FscFieldOrdering.rh Wed Oct 13 14:15:33 2010 +0300 @@ -25,7 +25,7 @@ // STRUCT FSC_FIELDTYPE_PRESENTATION_ORDER { - /// Field type resource id from vpbkeng.rsg + /// Field type resource id from VPbkEng.rsg LONG fieldTypeResId; /// The number that specifies the location of this field type /// in contact presentation (defines the order of fields). diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/remotecontactlookup/contactactionservice/pocplugin/group/pbk2rclpocplugin.mmp --- a/phonebookui/Phonebook2/remotecontactlookup/contactactionservice/pocplugin/group/pbk2rclpocplugin.mmp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/remotecontactlookup/contactactionservice/pocplugin/group/pbk2rclpocplugin.mmp Wed Oct 13 14:15:33 2010 +0300 @@ -44,16 +44,16 @@ LIBRARY euser.lib LIBRARY ecom.lib LIBRARY egul.lib -LIBRARY servicehandler.lib -LIBRARY CommonEngine.lib +LIBRARY ServiceHandler.lib +LIBRARY commonengine.lib LIBRARY bafl.lib LIBRARY cone.lib LIBRARY fbscli.lib LIBRARY ws32.lib -LIBRARY featmgr.lib +LIBRARY FeatMgr.lib LIBRARY centralrepository.lib LIBRARY aknskins.lib -LIBRARY ProfileEngine.lib +LIBRARY profileengine.lib #if (PBKX_DEBUG_LEVEL > 0) LIBRARY pbkxdebug.lib diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/remotecontactlookup/contactactionservice/saveascontactplugin/group/pbk2rclsaveascontactplugin.mmp --- a/phonebookui/Phonebook2/remotecontactlookup/contactactionservice/saveascontactplugin/group/pbk2rclsaveascontactplugin.mmp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/remotecontactlookup/contactactionservice/saveascontactplugin/group/pbk2rclsaveascontactplugin.mmp Wed Oct 13 14:15:33 2010 +0300 @@ -46,7 +46,7 @@ LIBRARY euser.lib LIBRARY ecom.lib LIBRARY egul.lib -LIBRARY CommonEngine.lib +LIBRARY commonengine.lib LIBRARY bafl.lib LIBRARY cone.lib LIBRARY VPbkEng.lib diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/remotecontactlookup/contactactionservice/sendbusinesscard/group/pbk2rclsendbusinesscardplugin.mmp --- a/phonebookui/Phonebook2/remotecontactlookup/contactactionservice/sendbusinesscard/group/pbk2rclsendbusinesscardplugin.mmp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/remotecontactlookup/contactactionservice/sendbusinesscard/group/pbk2rclsendbusinesscardplugin.mmp Wed Oct 13 14:15:33 2010 +0300 @@ -49,7 +49,7 @@ LIBRARY euser.lib LIBRARY ecom.lib LIBRARY egul.lib -LIBRARY CommonEngine.lib +LIBRARY commonengine.lib LIBRARY bafl.lib LIBRARY cone.lib LIBRARY VPbkEng.lib @@ -59,19 +59,19 @@ LIBRARY centralrepository.lib LIBRARY Pbk2Presentation.lib -LIBRARY sendui.lib -LIBRARY etext.lib -LIBRARY featmgr.lib -LIBRARY bcardeng.lib -LIBRARY pbkeng.lib -LIBRARY estor.lib //RFileWriteStream -LIBRARY platformenv.lib -LIBRARY VPbkVCardEng.lib +LIBRARY sendui.lib +LIBRARY etext.lib +LIBRARY featmgr.lib +LIBRARY bcardeng.lib +LIBRARY pbkeng.lib +LIBRARY estor.lib //RFileWriteStream +LIBRARY PlatformEnv.lib +LIBRARY VPbkVCardEng.lib -LIBRARY eikcoctl.lib -LIBRARY apparc.lib -LIBRARY apmime.lib +LIBRARY eikcoctl.lib +LIBRARY apparc.lib +LIBRARY apmime.lib #if (PBKX_DEBUG_LEVEL > 0) LIBRARY pbkxdebug.lib diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/remotecontactlookup/contactactionservice/sendplugin/group/pbk2rclsendplugin.mmp --- a/phonebookui/Phonebook2/remotecontactlookup/contactactionservice/sendplugin/group/pbk2rclsendplugin.mmp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/remotecontactlookup/contactactionservice/sendplugin/group/pbk2rclsendplugin.mmp Wed Oct 13 14:15:33 2010 +0300 @@ -43,7 +43,7 @@ LIBRARY euser.lib LIBRARY ecom.lib LIBRARY egul.lib -LIBRARY CommonEngine.lib +LIBRARY commonengine.lib LIBRARY bafl.lib LIBRARY cone.lib LIBRARY fbscli.lib @@ -52,7 +52,7 @@ LIBRARY sysutil.lib LIBRARY featmgr.lib LIBRARY centralrepository.lib -LIBRARY VPbkEng.lib +LIBRARY vpbkeng.lib SOURCEPATH ../data START RESOURCE 20029F33.rss diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/remotecontactlookup/contactactionservice/src/CFscFieldPropertyArray.cpp --- a/phonebookui/Phonebook2/remotecontactlookup/contactactionservice/src/CFscFieldPropertyArray.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/remotecontactlookup/contactactionservice/src/CFscFieldPropertyArray.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -31,7 +31,7 @@ #include #include #include -#include +#include // System includes #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/remotecontactlookup/engine/group/pbk2rclengine.mmp --- a/phonebookui/Phonebook2/remotecontactlookup/engine/group/pbk2rclengine.mmp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/remotecontactlookup/engine/group/pbk2rclengine.mmp Wed Oct 13 14:15:33 2010 +0300 @@ -32,22 +32,22 @@ SOURCEPATH ../src SOURCE cpbkxrclqueryeditor.cpp SOURCE cpbkxrclresultinfodlg.cpp -SOURCE cpbkxrclsearchresultdlg.cpp -SOURCE cpbkxrclserviceuicontextimpl.cpp -SOURCE cpbkxrclprotocolresultimpl.cpp -SOURCE cpbkxrclprotocolenvimpl.cpp -SOURCE cpbkxrclprotocolaccountimpl.cpp -SOURCE pbkxrclutils.cpp -SOURCE cpbkxrcleventscheduler.cpp -SOURCE cpbkxrclvcardsender.cpp -SOURCE cpbkxrclcbrsender.cpp -SOURCE cpbkxrclactionservicewrapper.cpp -SOURCE cpbkxrclcontactupdater.cpp -SOURCE cpbkxrclsettingitem.cpp -SOURCE cpbkxrclbasedlg.cpp -SOURCE cpbkxrclsearchresultlistbox.cpp -SOURCE cpbkxrclresultinfolistbox.cpp -SOURCE cpbkxrclcontactconverter.cpp +SOURCE cpbkxrclsearchresultdlg.cpp +SOURCE cpbkxrclserviceuicontextimpl.cpp +SOURCE cpbkxrclprotocolresultimpl.cpp +SOURCE cpbkxrclprotocolenvimpl.cpp +SOURCE cpbkxrclprotocolaccountimpl.cpp +SOURCE pbkxrclutils.cpp +SOURCE cpbkxrcleventscheduler.cpp +SOURCE cpbkxrclvcardsender.cpp +SOURCE cpbkxrclcbrsender.cpp +SOURCE cpbkxrclactionservicewrapper.cpp +SOURCE cpbkxrclcontactupdater.cpp +SOURCE cpbkxrclsettingitem.cpp +SOURCE cpbkxrclbasedlg.cpp +SOURCE cpbkxrclsearchresultlistbox.cpp +SOURCE cpbkxrclresultinfolistbox.cpp +SOURCE cpbkxrclcontactconverter.cpp SOURCE pbk2remotecontactlookupfactory.cpp SOURCE cpbk2remotecontactlookupaccounts.cpp @@ -62,40 +62,40 @@ USERINCLUDE ../../../../inc SYSTEMINCLUDE /epoc32/include/cshelp -LIBRARY aknlayout2.lib -LIBRARY AknLayout2Scalable.lib -LIBRARY CdlEngine.lib +LIBRARY AknLayout2.lib +LIBRARY AknLayout2Scalable.lib +LIBRARY CdlEngine.lib LIBRARY euser.lib LIBRARY ecom.lib LIBRARY centralrepository.lib -LIBRARY CommonEngine.lib +LIBRARY commonengine.lib LIBRARY cone.lib -LIBRARY cntmodel.lib +LIBRARY cntmodel.lib LIBRARY avkon.lib LIBRARY eikcoctl.lib LIBRARY eikctl.lib LIBRARY eikdlg.lib LIBRARY eikcore.lib -LIBRARY bafl.lib -LIBRARY pbkeng.lib -LIBRARY pbkview.lib -LIBRARY aknskins.lib -LIBRARY aknskinsrv.lib -LIBRARY efsrv.lib -LIBRARY estor.lib -LIBRARY bcardeng.lib -LIBRARY sendui.lib -LIBRARY etext.lib -LIBRARY featmgr.lib -LIBRARY servicehandler.lib -LIBRARY ws32.lib -LIBRARY egul.lib -LIBRARY aknicon.lib -LIBRARY fepbase.lib -LIBRARY hlplch.lib -LIBRARY VPbkEng.lib -LIBRARY VPbkVCardEng.lib -LIBRARY platformenv.lib +LIBRARY bafl.lib +LIBRARY pbkeng.lib +LIBRARY pbkview.lib +LIBRARY aknskins.lib +LIBRARY aknskinsrv.lib +LIBRARY efsrv.lib +LIBRARY estor.lib +LIBRARY bcardeng.lib +LIBRARY sendui.lib +LIBRARY etext.lib +LIBRARY featmgr.lib +LIBRARY servicehandler.lib +LIBRARY ws32.lib +LIBRARY egul.lib +LIBRARY aknicon.lib +LIBRARY fepbase.lib +LIBRARY hlplch.lib +LIBRARY VPbkEng.lib +LIBRARY VPbkVCardEng.lib +LIBRARY PlatformEnv.lib LIBRARY Pbk2CommonUI.lib #if (PBKX_DEBUG_LEVEL > 0) diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/remotecontactlookup/settingplugin/group/pbk2rclsetting.mmp --- a/phonebookui/Phonebook2/remotecontactlookup/settingplugin/group/pbk2rclsetting.mmp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/remotecontactlookup/settingplugin/group/pbk2rclsetting.mmp Wed Oct 13 14:15:33 2010 +0300 @@ -54,7 +54,7 @@ USERINCLUDE ../inc USERINCLUDE ../../inc // for emailtrace.h -USERINCLUDE ../../../../inc +USERINCLUDE ../../../../inc SYSTEMINCLUDE /epoc32/include/ecom @@ -62,7 +62,7 @@ // Dependencies to Symbian OS components LIBRARY euser.lib -LIBRARY CommonEngine.lib +LIBRARY commonengine.lib LIBRARY ecom.lib LIBRARY cone.lib LIBRARY eikcoctl.lib diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/rom/Phonebook2Resources.iby --- a/phonebookui/Phonebook2/rom/Phonebook2Resources.iby Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/rom/Phonebook2Resources.iby Wed Oct 13 14:15:33 2010 +0300 @@ -29,7 +29,6 @@ data=DATAZ_\RESOURCE_FILES_DIR\Pbk2Presentation.rsc RESOURCE_FILES_DIR\Pbk2Presentation.rsc data=DATAZ_\RESOURCE_FILES_DIR\Pbk2PresentationChinese.rsc RESOURCE_FILES_DIR\Pbk2PresentationChinese.rsc data=DATAZ_\RESOURCE_FILES_DIR\Pbk2PresentationJapanese.rsc RESOURCE_FILES_DIR\Pbk2PresentationJapanese.rsc -data=DATAZ_\RESOURCE_FILES_DIR\Pbk2PresentationChineseUnSync.rsc RESOURCE_FILES_DIR\Pbk2PresentationChineseUnSync.rsc data=DATAZ_\RESOURCE_FILES_DIR\Pbk2UIControls.rsc RESOURCE_FILES_DIR\Pbk2UIControls.rsc data=DATAZ_\RESOURCE_FILES_DIR\Pbk2Commands.rsc RESOURCE_FILES_DIR\Pbk2Commands.rsc diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/spbcontentprovider/src/spbcontactdatamodelprivate.cpp --- a/phonebookui/Phonebook2/spbcontentprovider/src/spbcontactdatamodelprivate.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/spbcontentprovider/src/spbcontactdatamodelprivate.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -16,7 +16,7 @@ */ #include -#include +#include #include #include #include @@ -35,7 +35,7 @@ #include #include #include -#include +#include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/spbcontentprovider/src/spbphonenumberparser.cpp --- a/phonebookui/Phonebook2/spbcontentprovider/src/spbphonenumberparser.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/spbcontentprovider/src/spbphonenumberparser.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -26,7 +26,7 @@ #include #include #include -#include // resource ids for numbers +#include // resource ids for numbers // --------------------------------------------------------------------------- diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/tsrc/UT_AddFavoritiesVisibility/group/UT_AddFavoritiesVisibility.mmp --- a/phonebookui/Phonebook2/tsrc/UT_AddFavoritiesVisibility/group/UT_AddFavoritiesVisibility.mmp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/tsrc/UT_AddFavoritiesVisibility/group/UT_AddFavoritiesVisibility.mmp Wed Oct 13 14:15:33 2010 +0300 @@ -58,7 +58,7 @@ #endif LIBRARY euser.lib -LIBRARY StifTestInterface.lib +LIBRARY stiftestinterface.lib LIBRARY stiftestengine.lib LIBRARY VPbkContactTestUtils.lib LIBRARY centralrepository.lib diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/tsrc/Utilities/ChangePbk2CenRepKeyValuesTool/group/ChangePbk2CenRepKeyValuesTool.mmp --- a/phonebookui/Phonebook2/tsrc/Utilities/ChangePbk2CenRepKeyValuesTool/group/ChangePbk2CenRepKeyValuesTool.mmp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/tsrc/Utilities/ChangePbk2CenRepKeyValuesTool/group/ChangePbk2CenRepKeyValuesTool.mmp Wed Oct 13 14:15:33 2010 +0300 @@ -53,7 +53,7 @@ #endif LIBRARY euser.lib -LIBRARY StifTestInterface.lib +LIBRARY stiftestinterface.lib LIBRARY stiftestengine.lib LIBRARY centralrepository.lib diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/xSPExtensionManager/src/CExtensionManagerFactory.cpp --- a/phonebookui/Phonebook2/xSPExtensionManager/src/CExtensionManagerFactory.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/xSPExtensionManager/src/CExtensionManagerFactory.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -38,7 +38,7 @@ #include "CxSPAppUiManager.h" #include "CxSPLoader.h" #include "ExtensionManager.hrh" -#include +#include #include "CxSPViewIdChanger.h" #include "ExtensionManagerIcons.hrh" #include "CxSPViewInfo.h" diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/xSPExtensionManager/src/CxSPAppUiManager.cpp --- a/phonebookui/Phonebook2/xSPExtensionManager/src/CxSPAppUiManager.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/xSPExtensionManager/src/CxSPAppUiManager.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -43,7 +43,7 @@ #include // internal -#include +#include #include "ExtensionManager.hrh" #include "CxSPViewInfo.h" #include "CxSPViewIdChanger.h" diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/xSPExtensionManager/src/CxSPSortNamesListViewExtension.cpp --- a/phonebookui/Phonebook2/xSPExtensionManager/src/CxSPSortNamesListViewExtension.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/xSPExtensionManager/src/CxSPSortNamesListViewExtension.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -32,7 +32,7 @@ // internal #include "ExtensionManager.hrh" -#include +#include #include "MxSPCommandMapper.h" #include "ExtensionManagerUID.H" diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/xSPExtensionManager/src/CxSPSortView.cpp --- a/phonebookui/Phonebook2/xSPExtensionManager/src/CxSPSortView.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/xSPExtensionManager/src/CxSPSortView.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -45,7 +45,7 @@ // internal #include "ExtensionManager.hrh" -#include +#include #include "ExtensionManagerUID.H" #include "CxSPLoader.h" #include "MxSPFactory.h" diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/xSPExtensionManager/src/CxSPSortViewControl.cpp --- a/phonebookui/Phonebook2/xSPExtensionManager/src/CxSPSortViewControl.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/xSPExtensionManager/src/CxSPSortViewControl.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -33,7 +33,7 @@ #include "MxSPFactory.h" #include "CxSPViewIdChanger.h" #include "CxSPViewInfo.h" -#include +#include #include "xSPOrderOrganizer.h" #include "CGlobalNoteObserver.h" #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/xSPExtensionManager/src/CxSPViewActivator.cpp --- a/phonebookui/Phonebook2/xSPExtensionManager/src/CxSPViewActivator.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/xSPExtensionManager/src/CxSPViewActivator.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -21,7 +21,6 @@ #include "CxSPViewActivator.h" #include #include "CxSPViewInfo.h" -#include // System includes @@ -138,34 +137,17 @@ newViewId = viewID; } - // If err is KErrNone or KErrNotFound, complete client's request with KErrNone. - // The reason is even if client passed an invalid view id to xsp server, - // the server will launch phonebook namelist view instead. - if ( KErrNone == err || KErrNotFound == err ) - { - aMessage.Complete( KErrNone ); - } - else - { - aMessage.Complete( err ); - } + aMessage.Complete(err); - if( err == KErrNone ) + if(err == KErrNone) { // Make view id - const TVwsViewId viewId( TUid::Uid( KUid ), TUid::Uid( newViewId ) ); + const TVwsViewId viewId(TUid::Uid(KUid), TUid::Uid(newViewId)); // Activate the view static_cast(CCoeEnv::Static()->AppUi())->ActivateViewL( viewId, CPbk2ViewState::Uid(), *paramBuf); } - else if ( err == KErrNotFound ) - { - // Activate phonebook namelist view if valid view id can't be found - const TVwsViewId viewId( TUid::Uid( KUid ), TUid::Uid( EPbk2NamesListViewId ) ); - static_cast( CCoeEnv::Static()->AppUi() )->ActivateViewL( - viewId, CPbk2ViewState::Uid(), *paramBuf ); - } - + CleanupStack::PopAndDestroy(); // paramBuf; } } diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/xSPExtensionManager/src/CxSPViewIdChanger.cpp --- a/phonebookui/Phonebook2/xSPExtensionManager/src/CxSPViewIdChanger.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/xSPExtensionManager/src/CxSPViewIdChanger.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -28,7 +28,7 @@ #include "MxSPViewInfo.h" #include "ExtensionManager.hrh" #include "CxSPViewInfo.h" -#include +#include #include "ExtensionManagerUID.H" #include "xSPOrderOrganizer.h" #include "Phonebook2PrivateCRKeys.h" diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Phonebook2/xSPExtensionManager/src/CxSPViewManager.cpp --- a/phonebookui/Phonebook2/xSPExtensionManager/src/CxSPViewManager.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Phonebook2/xSPExtensionManager/src/CxSPViewManager.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -18,7 +18,7 @@ // INCLUDE FILES -#include +#include #include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Speeddial/ControlSrc/SpdiaControl.cpp --- a/phonebookui/Speeddial/ControlSrc/SpdiaControl.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Speeddial/ControlSrc/SpdiaControl.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -48,7 +48,7 @@ #include // Phonebook view dll resource file loader #include -#include +#include #include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Speeddial/ControlSrc/SpdiaControl_platsec.cpp --- a/phonebookui/Speeddial/ControlSrc/SpdiaControl_platsec.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Speeddial/ControlSrc/SpdiaControl_platsec.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -44,7 +44,7 @@ #include #include // Phonebook view dll resource file loader #include -#include +#include #include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Speeddial/ControlSrc/SpdiaGrid.cpp --- a/phonebookui/Speeddial/ControlSrc/SpdiaGrid.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Speeddial/ControlSrc/SpdiaGrid.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -31,7 +31,7 @@ #include #include #include -#include +#include const TInt KItemPrimary(3); const TInt KItemSecondary(3); diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Speeddial/ControlSrc/SpdiaGridDlg.cpp --- a/phonebookui/Speeddial/ControlSrc/SpdiaGridDlg.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Speeddial/ControlSrc/SpdiaGridDlg.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -44,7 +44,7 @@ #include // phonebook engine #include #include -#include +#include #include "SpdiaControl.hrh" #include "SpdiaControl.h" #include "SpdiaGridDlg.h" diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Speeddial/VPbkControlInc/speeddialprivate.h --- a/phonebookui/Speeddial/VPbkControlInc/speeddialprivate.h Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Speeddial/VPbkControlInc/speeddialprivate.h Wed Oct 13 14:15:33 2010 +0300 @@ -722,7 +722,6 @@ RArray ixspIconInfoArray; - MVPbkContactOperationBase* iFindOperation; //own: contact find operation }; diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Speeddial/VPbkControlSrc/SpdiaGridDlgVPbk.cpp --- a/phonebookui/Speeddial/VPbkControlSrc/SpdiaGridDlgVPbk.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Speeddial/VPbkControlSrc/SpdiaGridDlgVPbk.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -40,7 +40,7 @@ #include #include -#include +#include #include "SpdiaControl.hrh" #include "speeddialprivate.h" #include "SpdiaGridDlgVPbk.h" diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Speeddial/VPbkControlSrc/SpdiaGridVPbk.cpp --- a/phonebookui/Speeddial/VPbkControlSrc/SpdiaGridVPbk.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Speeddial/VPbkControlSrc/SpdiaGridVPbk.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -31,7 +31,7 @@ #include #include #include -#include +#include const TInt KItemPrimary(3); const TInt KItemSecondary(3); diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Speeddial/VPbkControlSrc/speeddialprivate.cpp --- a/phonebookui/Speeddial/VPbkControlSrc/speeddialprivate.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Speeddial/VPbkControlSrc/speeddialprivate.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -44,7 +44,7 @@ #include -#include +#include #include #include #include @@ -97,7 +97,7 @@ #include #include -#include +#include #include #include "SpdiaContainer.h" @@ -223,8 +223,7 @@ iFetchmail(EFalse), iServiceHandler(NULL), iCancelFlag(0), - iRemoveConfirmQueryDialog( NULL ), - iFindOperation( NULL ) + iRemoveConfirmQueryDialog( NULL ) /*iOperationComplete(EFalse),*/ { @@ -496,10 +495,7 @@ iRemoveConfirmQueryDialog = NULL; } - ixspIconInfoArray.Close(); - - // Make sure iFindOperation released if it has not release in InitIndexDataL() - delete iFindOperation; + ixspIconInfoArray.Close(); } // --------------------------------------------------------- @@ -2699,16 +2695,15 @@ iFetchAll = EFalse; iSpeedDial->SetIndex(CVPbkSpeedDialAttribute::KSpeedDialIndexNotDefined); // iSpeedDial->SetIndex(2); - iFindOperation = iAttributeManager->ListContactsL( *iSpeedDial , ( *this ) ); + MVPbkContactOperationBase* findOperation = iAttributeManager->ListContactsL(*iSpeedDial,(*this)); - while( iFindOperation != NULL && !iFetchAll ) + while(findOperation != NULL && !iFetchAll) { //Wait till every contactlink is fetched and set. Wait(); } //Delete the handle - delete iFindOperation; - iFindOperation = NULL; + delete findOperation; MVPbkContactOperationBase* retrieveOperation = NULL; for(TInt count =0; iContactLinkArray && count < iContactLinkArray->Count();++count) diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Speeddial/datasrc/SpdCtrl.rss --- a/phonebookui/Speeddial/datasrc/SpdCtrl.rss Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Speeddial/datasrc/SpdCtrl.rss Wed Oct 13 14:15:33 2010 +0300 @@ -32,7 +32,7 @@ #include #include #include -#include +#include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Speeddial/datasrc/SpeedDial.rss --- a/phonebookui/Speeddial/datasrc/SpeedDial.rss Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Speeddial/datasrc/SpeedDial.rss Wed Oct 13 14:15:33 2010 +0300 @@ -35,7 +35,7 @@ #include #include #include -#include +#include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Speeddial/group/SpdCtrl.mmp --- a/phonebookui/Speeddial/group/SpdCtrl.mmp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Speeddial/group/SpdCtrl.mmp Wed Oct 13 14:15:33 2010 +0300 @@ -69,7 +69,7 @@ USERINCLUDE ../inc ../ControlInc ../VPbkControlInc // Dependencies to other Phonebook components -LIBRARY pbkeng.lib pbkview.lib +LIBRARY PbkEng.lib PbkView.lib // Dependencies to other components //LIBRARY PalbView.lib //PalbEng.lib @@ -79,26 +79,26 @@ // Dependencies to system components LIBRARY euser.lib bafl.lib cntmodel.lib -LIBRARY cone.lib eikcoctl.lib eikdlg.lib avkon.lib fbscli.lib egul.lib -LIBRARY eikcore.lib CommonEngine.lib centralrepository.lib -LIBRARY sysutil.lib commonui.lib CdlEngine.lib +LIBRARY cone.lib eikcoctl.lib eikdlg.lib Avkon.lib fbscli.lib egul.lib +LIBRARY eikcore.lib commonengine.lib centralrepository.lib +LIBRARY sysutil.lib commonui.lib cdlengine.lib // phone client support -LIBRARY phoneclient.lib +LIBRARY PhoneClient.LIB // skins support -LIBRARY aknskins.lib -LIBRARY aknicon.lib -LIBRARY efsrv.lib +LIBRARY AknSkins.LIB +LIBRARY AknIcon.lib +LIBRARY efsrv.lib LIBRARY bitgdi.lib -LIBRARY aknlayout2.lib +LIBRARY AknLayout2.lib LIBRARY AknLayout2Scalable.lib -LIBRARY uiklaf.lib -LIBRARY featmgr.lib +LIBRARY UikLaf.lib +LIBRARY FeatMgr.lib LIBRARY avkon.lib LIBRARY aknicon.lib -LIBRARY servicehandler.lib +LIBRARY ServiceHandler.lib LIBRARY VPbkEng.lib -LIBRARY Pbk2Presentation.lib -LIBRARY Pbk2CommonUI.lib +LIBRARY Pbk2Presentation.lib +LIBRARY Pbk2CommonUI.lib // End of File diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Speeddial/group/SpeedDial.mmp --- a/phonebookui/Speeddial/group/SpeedDial.mmp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Speeddial/group/SpeedDial.mmp Wed Oct 13 14:15:33 2010 +0300 @@ -62,11 +62,11 @@ // Dependencies to system components LIBRARY euser.lib apparc.lib ws32.lib bafl.lib -LIBRARY cone.lib eikcoctl.lib avkon.lib fbscli.lib egul.lib -LIBRARY eikcore.lib CommonEngine.lib +LIBRARY cone.lib eikcoctl.lib Avkon.lib fbscli.lib egul.lib +LIBRARY eikcore.lib commonengine.lib LIBRARY eikdlg.lib LIBRARY numbergrouping.lib -LIBRARY servicehandler.lib //Application InterWorking +LIBRARY ServiceHandler.lib //Application InterWorking LIBRARY efsrv.lib LIBRARY apgrfx.lib LIBRARY bitgdi.lib @@ -74,23 +74,23 @@ LIBRARY VPbkEng.lib LIBRARY Pbk2Presentation.lib LIBRARY Pbk2CommonUI.lib -LIBRARY centralrepository.lib +LIBRARY CentralRepository.lib LIBRARY cenrepnotifhandler.lib // Cenrep notifier // external dependencies /// phone engine support -LIBRARY pbkeng.lib +LIBRARY PbkEng.lib /// context sensitive help support LIBRARY hlplch.lib // for "Help" options menu -LIBRARY featmgr.lib +LIBRARY FeatMgr.lib -library aknlayout.lib -LIBRARY aknlayout2.lib +library AknLayout.lib +LIBRARY AknLayout2.lib LIBRARY AknLayout2Scalable.lib -LIBRARY uiklaf.lib -LIBRARY aknicon.lib +LIBRARY UikLaf.lib +LIBRARY AknIcon.lib library vmbx.lib library aknnotify.lib -library sssettings.lib +library SSSettings.lib LIBRARY sendui.lib LIBRARY etext.lib diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Speeddial/group/Speeddial_reg.rss --- a/phonebookui/Speeddial/group/Speeddial_reg.rss Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Speeddial/group/Speeddial_reg.rss Wed Oct 13 14:15:33 2010 +0300 @@ -20,7 +20,7 @@ #include -#include +#include #include UID2 KUidAppRegistrationResourceFile diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Speeddial/help/data/xhtml.zip Binary file phonebookui/Speeddial/help/data/xhtml.zip has changed diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Speeddial/speeddialgsplugin/data/speeddialgspluginrsc.rss --- a/phonebookui/Speeddial/speeddialgsplugin/data/speeddialgspluginrsc.rss Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Speeddial/speeddialgsplugin/data/speeddialgspluginrsc.rss Wed Oct 13 14:15:33 2010 +0300 @@ -27,13 +27,13 @@ #include #include #include -#include +#include #include #include #include #include #include -#include +#include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Speeddial/speeddialgsplugin/group/speeddialgsplugin.mmp --- a/phonebookui/Speeddial/speeddialgsplugin/group/speeddialgsplugin.mmp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Speeddial/speeddialgsplugin/group/speeddialgsplugin.mmp Wed Oct 13 14:15:33 2010 +0300 @@ -66,14 +66,14 @@ LIBRARY egul.lib LIBRARY flogger.lib // File logging LIBRARY CommonEngine.lib // For RConeResourceLoader -LIBRARY featmgr.lib // Feature manager -LIBRARY centralrepository.lib +LIBRARY FeatMgr.lib // Feature manager +LIBRARY CentralRepository.lib LIBRARY aknskinsrv.lib // for enhanced skinning LIBRARY aknskins.lib // for enhanced skinning -LIBRARY gsecomplugin.lib +LIBRARY GSEcomPlugin.lib LIBRARY hlplch.lib // for "Help" options menu -LIBRARY gsframework.lib // For base classes -LIBRARY gslistbox.lib // For CGSListBoxItemTextArray +LIBRARY GSFramework.lib // For base classes +LIBRARY GSListBox.lib // For CGSListBoxItemTextArray LIBRARY apgrfx.lib LIBRARY apparc.lib LIBRARY ws32.lib diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Speeddial/src/SpdiaAppUi.cpp --- a/phonebookui/Speeddial/src/SpdiaAppUi.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Speeddial/src/SpdiaAppUi.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -29,7 +29,7 @@ #include #include -#include +#include #include #include "speeddial.hrh" @@ -143,6 +143,17 @@ { FeatureManager::UnInitializeLib(); + // We had gone to some other application using active application.. + // We are coming back..Restore the GridStatus.. + if(iSpeedPrivate!=NULL) + { + if(iSpeedPrivate->State() == CSpeedDialPrivate::STATE_IDLE && + iSpeedPrivate->GridStatus() == CSpeedDialPrivate::EGridNoUse ) + { + iSpeedPrivate->SetGridStatus(CSpeedDialPrivate::EGridUse); + } + } + CSpdiaView* view = dynamic_cast(View( KViewId )); if ( view ) { diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Speeddial/src/SpdiaBaseView.cpp --- a/phonebookui/Speeddial/src/SpdiaBaseView.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Speeddial/src/SpdiaBaseView.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -25,7 +25,7 @@ #include -#include +#include #include "SpdiaBaseView.h" diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Speeddial/src/SpdiaCallingVmbxContainer.cpp --- a/phonebookui/Speeddial/src/SpdiaCallingVmbxContainer.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Speeddial/src/SpdiaCallingVmbxContainer.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -21,7 +21,7 @@ // INCLUDE FILES -#include +#include #include "speeddialprivate.h" #include "SpdiaCallingVmbxContainer.h" diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Speeddial/src/SpdiaCallingVmbxView.cpp --- a/phonebookui/Speeddial/src/SpdiaCallingVmbxView.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Speeddial/src/SpdiaCallingVmbxView.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -24,11 +24,12 @@ #include #include -#include +#include #include #include #include +#include #include // needed just to get localized error message #include diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Speeddial/src/SpdiaContainer.cpp --- a/phonebookui/Speeddial/src/SpdiaContainer.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Speeddial/src/SpdiaContainer.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -33,14 +33,14 @@ #include #include -#include +#include #include #include #include #include #include -#include +#include #include "speeddial.hrh" #include "SpdiaControl.hrh" diff -r 6b5524b4f673 -r 38bb213f60ba phonebookui/Speeddial/src/SpdiaView.cpp --- a/phonebookui/Speeddial/src/SpdiaView.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/phonebookui/Speeddial/src/SpdiaView.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -28,7 +28,7 @@ #include #include -#include +#include #include #include //KAiwCmdCall #include @@ -50,13 +50,13 @@ #include #include -#include "spdctrl.rsg" +#include "SpdCtrl.rsg" #include #include #include -#include +#include #include _LIT( KSpace, " " ); diff -r 6b5524b4f673 -r 38bb213f60ba pimprotocols/pbap/group/btaccesshost.mmp --- a/pimprotocols/pbap/group/btaccesshost.mmp Wed Sep 15 11:56:55 2010 +0300 +++ b/pimprotocols/pbap/group/btaccesshost.mmp Wed Oct 13 14:15:33 2010 +0300 @@ -61,7 +61,7 @@ LIBRARY pbaplogeng.lib logcli.lib LIBRARY cntmodel.lib cntview.lib LIBRARY versit.lib vcard.lib logwrap.lib -LIBRARY centralrepository.lib + LIBRARY btlogger.lib tzclient.lib SMPSAFE diff -r 6b5524b4f673 -r 38bb213f60ba pimprotocols/pbap/inc/pbapvcardexporterutil.h --- a/pimprotocols/pbap/inc/pbapvcardexporterutil.h Wed Sep 15 11:56:55 2010 +0300 +++ b/pimprotocols/pbap/inc/pbapvcardexporterutil.h Wed Oct 13 14:15:33 2010 +0300 @@ -63,7 +63,6 @@ private: CPbapVCardExporterUtil(CContactDatabase& aDatabase, CPbapLogWrapper* aLogWrapper); void ConstructL(); - void GetMatchDigitCountL(); TBool ContactExistsL(TContactItemId aContactId); CParserVCard* CreateVCardParserLC(TVCardVersion aFormat); @@ -80,7 +79,6 @@ TVCardVersion iFormat; TUint64 iFilter; RTz iTzClient; - TInt iMatchDigitCount; }; #endif // PBAPVCARDEXPORTERUTIL_H diff -r 6b5524b4f673 -r 38bb213f60ba pimprotocols/pbap/server/pbapvcardexporterutil.cpp --- a/pimprotocols/pbap/server/pbapvcardexporterutil.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/pimprotocols/pbap/server/pbapvcardexporterutil.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -21,8 +21,6 @@ #include #include #include -#include - #ifdef SYMBIAN_ENABLE_SPLIT_HEADERS #include "vcard3.h" #include "cntdb_internal.h" @@ -31,13 +29,6 @@ #include "pbaplogeng.h" #include "btaccesshostlog.h" -/* These constants are properly defined in telconfigcrkeys.h, however we -are not allowed to include that from here. As a temporary fix the constants -from that file are re-defined here. */ -const TUid KCRUidTelConfiguration = {0x102828B8}; -const TUint32 KTelMatchDigits = 0x00000001; -/* And similarly this constant is defined in ccsdefs.h */ -const TInt KDefaultGsmNumberMatchLength = 7; //constants _LIT8(KVersitTokenCALLDATETIME,"X-IRMC-CALL-DATETIME"); @@ -68,13 +59,6 @@ LOG_FUNC CVersitTlsData::VersitTlsDataL(); User::LeaveIfError(iTzClient.Connect()); - - TRAPD(err, GetMatchDigitCountL()) - if (err != KErrNone) - { - iMatchDigitCount = KDefaultGsmNumberMatchLength; - } - } CPbapVCardExporterUtil::~CPbapVCardExporterUtil() @@ -83,21 +67,7 @@ iTzClient.Close(); CVersitTlsData::CloseVersitTlsData(); } - -void CPbapVCardExporterUtil::GetMatchDigitCountL() - { - // Read the amount of digits to be used in contact matching - // The key is properly owned by PhoneApp, however we cannot include - // that header file from here, so a temporary fix has been done to - // use locally defined versions. If there is a problem here it is - // likely because these values have gone out of sync. - CRepository* repository = CRepository::NewLC(KCRUidTelConfiguration); - User::LeaveIfError(repository->Get(KTelMatchDigits, iMatchDigitCount)); - // The rest of the system has a miniumum of 7 for the number matching, so we do the same here - iMatchDigitCount = Max(iMatchDigitCount, KDefaultGsmNumberMatchLength); - CleanupStack::PopAndDestroy(repository); - } - + /** Export a contact as vCard. @@ -191,12 +161,16 @@ TContactItemId CPbapVCardExporterUtil::FindContactIdFromNumberL(const TDesC& aNumber) { TContactItemId ret = KNullContactId; - CContactIdArray* contactIdArray = iDatabase.MatchPhoneNumberL(aNumber, iMatchDigitCount); + CContactItemFieldDef* fieldDef; + fieldDef = new(ELeave) CContactItemFieldDef; + CleanupStack::PushL(fieldDef); + fieldDef->AppendL(KUidContactFieldPhoneNumber); + CContactIdArray* contactIdArray = iDatabase.FindLC(aNumber, fieldDef); if (contactIdArray->Count() > 0) { ret = (*contactIdArray)[0]; } - delete contactIdArray; + CleanupStack::PopAndDestroy(2); // contactIdArray, fieldDef return ret; } diff -r 6b5524b4f673 -r 38bb213f60ba predictivesearch/PcsAlgorithm/Algorithm1/group/PcsAlgorithm1.mmp --- a/predictivesearch/PcsAlgorithm/Algorithm1/group/PcsAlgorithm1.mmp Wed Sep 15 11:56:55 2010 +0300 +++ b/predictivesearch/PcsAlgorithm/Algorithm1/group/PcsAlgorithm1.mmp Wed Oct 13 14:15:33 2010 +0300 @@ -51,7 +51,7 @@ APP_LAYER_SYSTEMINCLUDE LIBRARY euser.lib -LIBRARY ecom.lib +LIBRARY eCom.lib LIBRARY efsrv.lib LIBRARY estor.lib LIBRARY flogger.lib diff -r 6b5524b4f673 -r 38bb213f60ba predictivesearch/PcsAlgorithm/Algorithm1/inc/CPcsPoolElement.h --- a/predictivesearch/PcsAlgorithm/Algorithm1/inc/CPcsPoolElement.h Wed Sep 15 11:56:55 2010 +0300 +++ b/predictivesearch/PcsAlgorithm/Algorithm1/inc/CPcsPoolElement.h Wed Oct 13 14:15:33 2010 +0300 @@ -65,7 +65,7 @@ * Compares the two Pool Elements and returms the comparison value. * It takes care of language variance too. */ - static TInt CompareByDataL ( const CPcsPoolElement& aObject1, + static TInt CompareByData ( const CPcsPoolElement& aObject1, const CPcsPoolElement& aObject2 ); private: diff -r 6b5524b4f673 -r 38bb213f60ba predictivesearch/PcsAlgorithm/Algorithm1/src/CPcsAlgorithm1.cpp --- a/predictivesearch/PcsAlgorithm/Algorithm1/src/CPcsAlgorithm1.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/predictivesearch/PcsAlgorithm/Algorithm1/src/CPcsAlgorithm1.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -978,11 +978,10 @@ } // Calculate cumulative status according to single caches statuses - if ( countCompleted > 0 && ( countCompleted + countNotStarted ) == cacheCount ) + if ( countCompleted == cacheCount ) { - // If at least one caching is finished - // set status to ECachingComplete or ECachingCompleteWithErrors - // according to iCacheError + // If all caching are finished, set status to ECachingComplete or + // ECachingCompleteWithErrors according to iCacheError status = ( iCacheError == KErrNone ) ? ECachingComplete : ECachingCompleteWithErrors; } else if ( countInProgress > 0 ) @@ -997,6 +996,13 @@ //set status to ECachingCompleteWithErrors status = ECachingCompleteWithErrors; } + else if ( countCompleted > 0 && ( countCompleted + countNotStarted ) == cacheCount ) + { + // Else if at least one caching is finished + // set status to ECachingComplete or ECachingCompleteWithErrors + // according to iCacheError + status = ( iCacheError == KErrNone ) ? ECachingComplete : ECachingCompleteWithErrors; + } else { // countNotStarted == cacheCount diff -r 6b5524b4f673 -r 38bb213f60ba predictivesearch/PcsAlgorithm/Algorithm1/src/CPcsCache.cpp --- a/predictivesearch/PcsAlgorithm/Algorithm1/src/CPcsCache.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/predictivesearch/PcsAlgorithm/Algorithm1/src/CPcsCache.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -174,7 +174,7 @@ // element doesn't get added for the same data RHashMap elementHash; CleanupClosePushL( elementHash ); - TLinearOrder rule( CPcsPoolElement::CompareByDataL ); + TLinearOrder rule( CPcsPoolElement::CompareByData ); TBool unnamed = ETrue; // Parse thru each data element diff -r 6b5524b4f673 -r 38bb213f60ba predictivesearch/PcsAlgorithm/Algorithm1/src/CPcsPoolElement.cpp --- a/predictivesearch/PcsAlgorithm/Algorithm1/src/CPcsPoolElement.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/predictivesearch/PcsAlgorithm/Algorithm1/src/CPcsPoolElement.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -74,10 +74,10 @@ } // ---------------------------------------------------------------------------- -// CPcsPoolElement::CompareByDataL -// +// CPcsPoolElement::CompareByData +// Calls CPsData::CompareByData to compare CPsData objects // ---------------------------------------------------------------------------- -TInt CPcsPoolElement::CompareByDataL ( const CPcsPoolElement& aObject1, const CPcsPoolElement& aObject2 ) +TInt CPcsPoolElement::CompareByData ( const CPcsPoolElement& aObject1, const CPcsPoolElement& aObject2 ) { CPsData *data1 = const_cast (aObject1).GetPsData(); CPsData *data2 = const_cast (aObject2).GetPsData(); diff -r 6b5524b4f673 -r 38bb213f60ba predictivesearch/PcsAlgorithm/Algorithm2/group/PcsAlgorithm2.mmp --- a/predictivesearch/PcsAlgorithm/Algorithm2/group/PcsAlgorithm2.mmp Wed Sep 15 11:56:55 2010 +0300 +++ b/predictivesearch/PcsAlgorithm/Algorithm2/group/PcsAlgorithm2.mmp Wed Oct 13 14:15:33 2010 +0300 @@ -40,8 +40,8 @@ SOURCE CPcsPoolElement.cpp SOURCE CPcsKeyMap.cpp SOURCE CPsDataPluginInterface.cpp -SOURCE chinesefindutils.cpp -SOURCE FindUtilChineseECE.cpp +SOURCE FindUtilChineseECE.cpp +SOURCE chinesefindutils.cpp USERINCLUDE ../inc USERINCLUDE ../../inc @@ -51,7 +51,7 @@ APP_LAYER_SYSTEMINCLUDE LIBRARY euser.lib -LIBRARY ecom.lib +LIBRARY eCom.lib LIBRARY efsrv.lib LIBRARY estor.lib LIBRARY flogger.lib @@ -60,9 +60,8 @@ LIBRARY eikcoctl.lib LIBRARY PcsUtils.lib LIBRARY ptiengine.lib -LIBRARY cenrepnotifhandler.lib +LIBRARY CenRepNotifHandler.lib LIBRARY cone.lib LIBRARY fepbase.lib LIBRARY centralrepository.lib -LIBRARY FindUtil.lib -LIBRARY pbkeng.lib +LIBRARY findutil.lib diff -r 6b5524b4f673 -r 38bb213f60ba predictivesearch/PcsAlgorithm/Algorithm2/inc/CPcsAlgorithm2.h --- a/predictivesearch/PcsAlgorithm/Algorithm2/inc/CPcsAlgorithm2.h Wed Sep 15 11:56:55 2010 +0300 +++ b/predictivesearch/PcsAlgorithm/Algorithm2/inc/CPcsAlgorithm2.h Wed Oct 13 14:15:33 2010 +0300 @@ -54,7 +54,8 @@ // CLASS DECLARATION class CPcsAlgorithm2 : public CPcsPlugin, public MDataStoreObserver, -public MStoreListObserver +public MStoreListObserver, +public MFindStringConverter { public: @@ -79,7 +80,7 @@ void PerformSearchL(const CPsSettings& aPcsSettings, CPsQuery& aCondition, RPointerArray& aData, - RPointerArray& aPattern); + RPointerArray& aPattern); /** * Search Function for input string @@ -87,15 +88,15 @@ void SearchInputL(CPsQuery& aSearchQuery, TDesC& aSearchData, RPointerArray& aMatchSet, - RArray& aMatchLocation ); + RArray& aMatchLocation ); /** * Performs search on a input string, and return result also as a string */ void SearchMatchStringL( CPsQuery& aSearchQuery, - TDesC& aSearchData, - TDes& aMatch ); + TDesC& aSearchData, + TDes& aMatch ); /** * Returns ETrue if this language is supported @@ -117,6 +118,12 @@ */ void ChangeSortOrderL(TDesC& aURI, RArray& aSortOrder); + /** + * Get the Adaptive Grid for one or more URIs + */ + void GetAdaptiveGridL( const MDesCArray& aURIs, + const TBool aCompanyName, + TDes& aAdaptiveGrid ); // -------------------------------------------------------------------- @@ -127,29 +134,22 @@ /** * Add a contact to the cache */ - void AddData( TDesC& aDataStore, CPsData* aData ); + void AddData ( TDesC& aDataStore, CPsData* aData); /** - * Remove a contact from the cache based on contact id + * Remove a contact from the cache based on contact id */ - void RemoveData( TDesC& aDataStore, TInt aItemId ); + void RemoveData ( TDesC& aDataStore, TInt aItemId ); /** * Removes all the contacts from a particular datastore */ - void RemoveAll( TDesC& aDataStore ); + void RemoveAll ( TDesC& aDataStore); /** * Updates the caching status for a particular datastore */ void UpdateCachingStatus(TDesC& aDataStore, TInt aStatus); - - /** - * Get the Adaptive Grid for one or more URIs - */ - void GetAdaptiveGridL( const MDesCArray& aURIs, - const TBool aCompanyName, - TDes& aAdaptiveGrid ); // -------------------------------------------------------------------- @@ -160,12 +160,12 @@ /** * This method is called whenever any new store has been added */ - void AddDataStore( TDesC& aDataStore ); + void AddDataStore ( TDesC& aDataStore); /** * This method is called whenever a data store is removed */ - void RemoveDataStore( TDesC& aDataStore ); + void RemoveDataStore ( TDesC& aDataStore); // -------------------------------------------------------------------- @@ -174,7 +174,7 @@ /** * Returns the array index of cache (in iPcsCache) for a datastore */ - TInt GetCacheIndex(const TDesC& aDataStore); + TInt GetCacheIndex(TDesC& aDataStore); /** * Return the cache instance at a specific array index @@ -190,14 +190,8 @@ inline CPcsKeyMap* GetKeyMap() { return iKeyMap; - } + }; - inline CFindUtilChineseECE* FindUtilECE() - { - return iFindUtilECE; - } - - void ReconstructCacheDataL(); private: @@ -221,54 +215,48 @@ void DefinePropertyL( TPcsInternalKeyCacheStatus aPsKey ); /** - * Remove leading and trailing spaces of search query + * Replace occurance of "0" in ITU-T mode with space */ - void RemoveSpacesL( CPsQuery& aQuery ); - - /** - * Replace occurances of "0" in predictive mode with space - * if those are on the same button - */ - TBool ReplaceZeroWithSpaceL( CPsQuery& aQuery ); + TBool ReplaceZeroWithSpaceL(CPsQuery& aQuery); /** * Search function helper */ - void DoSearchL( const CPsSettings& aPcsSettings, - CPsQuery& aCondition, - RPointerArray& aSearchResults, - RPointerArray& aSearchSeqs ); + void DoSearchL(const CPsSettings& aPcsSettings, + CPsQuery& aCondition, + RPointerArray& searchResults, + RPointerArray& searchSeqs ); /** * Search function helper */ - void DoSearchInputL( CPsQuery& aQuery, - const TDesC& aData, - RPointerArray& aSearchSeqs, - RArray& aMatchLocation ); + void DoSearchInputL(CPsQuery& aQuery, + TDesC& aData, + RPointerArray& searchSeqs, + RArray& aMatchLocation ); /** * Returns the index corresponding a URI in iDataStoreUri */ - TInt FindStoreUri( const TDesC& aDataStoreUri ); + TInt FindStoreUri ( TDesC& aDataStoreUri ); /** * Function to return all cached content */ - void GetAllContentsL( const CPsSettings& aPcsSettings, - RPointerArray& aSearchResults ); + void GetAllContentsL(const CPsSettings& aPcsSettings, + RPointerArray& searchResults ); /** * Checks if search is on groups - * Return ETrue if there is a valid group URI + * Return ETrue if there is a valid group URI */ - TBool IsGroupSearchL( CPsSettings& aSettings, - RArray& aGroupIdArray ); + TBool IsGroupSearchL ( CPsSettings& aSettings, + RArray& aGroupIdArray ); /** * Utility function to replace groups uri with that of contacts uri */ - void ReplaceGroupsUriL( CPsSettings& aSettings ); + void ReplaceGroupsUriL ( CPsSettings& aSettings ); /** * Filters the search results array for groups @@ -278,8 +266,8 @@ /** * Get the list of contact ids that belong to a group. - */ - void GetContactsInGroupL( TInt aGroupId, + */ + void GetContactsInGroupL ( TInt aGroupId, RArray& aGroupContactIds ); /** @@ -287,30 +275,31 @@ * @param aURI - The data store URI for which sort order is required * @param aSortOrder - The persisted sort order from the cenrep */ - void ReadSortOrderFromCenRepL( const TDesC& aURI, + void ReadSortOrderFromCenRepL ( TDesC& aURI, RArray& aSortOrder ); /** Write sort order for a data store to the central repository * @param aURI - The data store URI for which sort order is to be persisted * @param aSortOrder - The sort order to be persisted */ - void WriteSortOrderToCenRepL( const TDesC& aURI, - RArray& aSortOrder ); + void WriteSortOrderToCenRepL ( TDesC& aURI, + RArray& aSortOrder ); /** * Utility function that sets the caching error value - */ - void SetCachingError( const TDesC& aDataStore, TInt aError ); + */ + void SetCachingError ( TDesC& aDataStore, + TInt aError ); /** - * Write the content required by client + * Write the content required by client */ - CPsClientData* WriteClientDataL( CPsData& aPsData ); + CPsClientData* WriteClientDataL ( CPsData& aPsData ); /** * Function to return data base URI for an internal identifier - */ - const TDesC& GetUriForIdL( TUint8 aUriId ); + */ + TDesC& GetUriForIdL( TUint8 aUriId ); /** * Inform clients about update happened on the cache @@ -327,18 +316,45 @@ */ static TInt DoLaunchPluginsL(TAny* aPtr); +public: + + inline TInt GetFirstNameIndex() + { + return iFirstNameIndex; + } + + inline TInt GetLastNameIndex() + { + return iLastNameIndex; + } + + inline CFindUtilChineseECE* FindUtilECE() + { + return iFindUtilECE; + } + + inline CFindUtil* FindUtil() + { + return iFindUtil; + } + + void ReconstructCacheDataL(); + +public: // From MFindStringConverter + void Converter(const TDesC& aSourStr, TDes& aDestStr); + private: /** * Instance of contacts cache * Own */ - RPointerArray iPcsCache; + RPointerArray iPcsCache; /** * Keeps the count of caches */ - TUint8 iCacheCount; + TUint8 iCacheCount; /** * Instance of key map @@ -371,6 +387,13 @@ // Own: Find util used to match contacts and construct character grid CFindUtilChineseECE* iFindUtilECE; + // Own: Find util used to match contacts and construct character grid + CFindUtil* iFindUtil; + + // keep the index for Firstname and Lastname + TInt iFirstNameIndex; + TInt iLastNameIndex; + /** * plugin laucher, make the plugin instantiation async */ diff -r 6b5524b4f673 -r 38bb213f60ba predictivesearch/PcsAlgorithm/Algorithm2/inc/CPcsAlgorithm2FilterHelper.h --- a/predictivesearch/PcsAlgorithm/Algorithm2/inc/CPcsAlgorithm2FilterHelper.h Wed Sep 15 11:56:55 2010 +0300 +++ b/predictivesearch/PcsAlgorithm/Algorithm2/inc/CPcsAlgorithm2FilterHelper.h Wed Oct 13 14:15:33 2010 +0300 @@ -91,7 +91,7 @@ /** * 2nd phase construtor */ - void ConstructL(TSortType aSortType); + void ConstructL(TSortType aSortType); /** * Adds each result into respective pool based on match pattern @@ -102,7 +102,7 @@ * Searches for for aSeq in iMatchPatternDetails and returns index * where input sequence is found. Returns -1 if not found */ - TInt FindSequence(const TDesC& aSeq); + TInt FindSequence(TDesC* aSeq); /** @@ -110,19 +110,19 @@ * and returns index where input sequence is found. * Returns -1 if not found */ - TInt FindSubSequence(const TDesC& aSeq, TInt aPatternIndex); + TInt FindSubSequence(TDesC* aSeq,TInt aPatternIndex); /** * Creates the Matchpattern aSeq in iMatchPatternDetails. * Returns the index of the sequence in iMatchPatternDetails */ - TInt CreateMatchPatternDetailsAndPoolsL(const TDesC& aSeq); + TInt CreateMatchPatternDetailsAndPoolsL(TDesC* aSeq); /** * Searches for all the subsequences of aSeq and updates the * aFirstOccrVal in iMatchPatternDetails. */ - void UpdateForSubSequencesL(const TDesC& aSeq, TInt aFirstOccrVal); + void UpdateForSubSequencesL(TDesC& aSeq,TInt aFirstOccrVal); private: diff -r 6b5524b4f673 -r 38bb213f60ba predictivesearch/PcsAlgorithm/Algorithm2/inc/CPcsAlgorithm2Helper.h --- a/predictivesearch/PcsAlgorithm/Algorithm2/inc/CPcsAlgorithm2Helper.h Wed Sep 15 11:56:55 2010 +0300 +++ b/predictivesearch/PcsAlgorithm/Algorithm2/inc/CPcsAlgorithm2Helper.h Wed Oct 13 14:15:33 2010 +0300 @@ -22,7 +22,6 @@ #include #include #include -#include // For name order setting #include "CPcsPlugin.h" #include "CPsData.h" @@ -37,7 +36,7 @@ class CPsDataPluginInterface; // CLASS DECLARATION -class CPcsAlgorithm2Helper : public CBase, private MPbkGlobalSettingObserver +class CPcsAlgorithm2Helper : public CBase { public: @@ -54,52 +53,78 @@ private: /** - * Filter subset results for Mixed mode. Some portion of query can be in - * ITU-T mode and some portion in Qwerty mode. + * Filter subset results for ITU-T Mode. Entire search query is + * entered in ITU-T mode. */ - void FilterResultsSingleL(CPcsAlgorithm2FilterHelper* aAlgorithmFilterHelper, - RPointerArray& aSearchSet, - CPsQuery& aSearchQuery, - TUint8 aFilteredDataMatch, - TBool aIsSearchInGroup, - const RArray& aContactsInGroup); - + void FilterResultsL(CPcsAlgorithm2FilterHelper* aAlgorithmFilterHelper, + RPointerArray& searchSet, + const TDesC& searchQuery, TBool isSearchInGroup, + RArray& aContactsInGroup); /** - * Create a buffer containing the first name and last name of a contact in the - * order specified in Phonebook settings. + * Filter subset results for Qwerty Mode. Entire search query is + * entered in Qwerty mode. + */ + void FilterResultsQwertyL(CPcsAlgorithm2FilterHelper* aAlgorithmFilterHelper, + RPointerArray& searchSet, + const TDesC& searchQuery, TBool isSearchInGroup, + RArray& aContactsInGroup); + + /** + * Filter subset results for Mixed mode. Some portion of query is in + * ITU-T mode and some portion in Qwert mode. */ - HBufC* CreateNameBufLC( const CPsData& aContactData, TInt aFirstNameIndex, TInt aLastNameIndex ) const; - + void FilterResultsMixedL(CPcsAlgorithm2FilterHelper* aAlgorithmFilterHelper, + RPointerArray& searchSet, + CPsQuery& searchQuery, TBool isSearchInGroup, + RArray& aContactsInGroup); + /** - * Get and store the order of first and last name. + * Convert the search query to a string. + * If the mode is ITU-T, character is converted to numeric. + * If the mode is Qwerty, character is retained as is. */ - void UpdateNameOrderL(); + void ExtractQueryL(CPsQuery& aPsQuery, TDes& aOutput); -private: // from MPbkGlobalSettingObserver /** - * React to change in Phonebook settings. + * Convert the input search query to a string. + * Mode is referred in the CPsQuery. + * If the mode is ITU-T, character is converted to numeric. + * If the mode is Qwerty, character is retained as is. + */ + void ExtractQueryL(TDesC& aInput, CPsQuery& aPsQuery, TDes& aOutput); + +public: + + /** + * Search Function for ITU-T style */ - void SettingChangedL( MPbkGlobalSetting::TPbkGlobalSetting aKey ); - -public: + void SearchITUL(const CPsSettings& aSettings, CPsQuery& aQuery, + TBool isGroupSearch, RArray& aContactsInGroup, + RPointerArray& searchResults, + RPointerArray& searchSeqs); + + /** + * Search Function for QWERTY style + */ + void SearchQWERTYL(const CPsSettings& aSettings, CPsQuery& aQuery, + TBool isGroupSearch, RArray& aContactsInGroup, + RPointerArray& searchResults, + RPointerArray& searchSeqs); /** * Search Function for mixed style * Some chars are entered in ITU-T and some in QWERTY */ - void SearchSingleL(const CPsSettings& aSettings, - CPsQuery& aQuery, - TBool aIsGroupSearch, - const RArray& aContactsInGroup, - RPointerArray& aSearchResults, - RPointerArray& aSearchSeqs); + void SearchMixedL(const CPsSettings& aSettings, CPsQuery& aQuery, + TBool isGroupSearch, RArray& aContactsInGroup, + RPointerArray& searchResults, + RPointerArray& searchSeqs); /** * Funciton to search matching sequences in the input text */ - void SearchMatchSeqL(CPsQuery& aPsQuery, - const TDesC& aData, - RPointerArray& aMatchSet, + void SearchMatchSeqL(HBufC* aQuery, TDesC& aData, + RPointerArray& aMatchSet, CPsQuery& aPsQuery, RArray& aMatchLocation); /** @@ -110,6 +135,16 @@ private: /** + * Constructs a bit pattern using the required/supported data fields + * For example, 6, 4 and 27 are supported fields <-- 00000111 + * 6 and 4 are required fields <-- 00000011 + * Bit pattern returned is 00000011. + */ + TUint8 FilterDataFieldsL(RArray& aRequiredDataFields, + RArray& aSupportedDataFields); +private: + + /** * Constructor */ CPcsAlgorithm2Helper(); @@ -129,33 +164,13 @@ /** * Pointer to key map instance. Not owned. */ - CPcsKeyMap* iKeyMap; + CPcsKeyMap* keyMap; /** * Array of result sets from different data stores. */ typedef RPointerArray CPSDATA_R_PTR_ARRAY; RPointerArray iSearchResultsArr; - - /** - * Phonebook settings store for reading name order. - */ - MPbkGlobalSetting* iPbkSettings; - - /** - * Contact name display order - */ - enum TNameOrder - { - EFirstnameLastname, - ELastnameFirstname - }; - TNameOrder iNameOrder; - - /** - * Counter of the matched contacts requested by PCS client - */ - TInt iMaxCount; }; #endif // C_PCS_ALGORITHM_2_HELPER diff -r 6b5524b4f673 -r 38bb213f60ba predictivesearch/PcsAlgorithm/Algorithm2/inc/CPcsAlgorithm2MultiSearchHelper.h --- a/predictivesearch/PcsAlgorithm/Algorithm2/inc/CPcsAlgorithm2MultiSearchHelper.h Wed Sep 15 11:56:55 2010 +0300 +++ b/predictivesearch/PcsAlgorithm/Algorithm2/inc/CPcsAlgorithm2MultiSearchHelper.h Wed Oct 13 14:15:33 2010 +0300 @@ -64,11 +64,33 @@ * Filter subset results for multi query mode. */ void FilterResultsMultiL(CPcsAlgorithm2FilterHelper* aAlgorithmFilterHelper, - RPointerArray& aSearchSet, - RPointerArray& aSearchQuery, - TUint8 aFilteredDataMatch, - TBool aIsGroupSearch, - const RArray& aContactsInGroup); + RPointerArray& searchSet, + RPointerArray& searchQuery, TUint8 aFilteredDataMatch, + TBool isGroupSearch, RArray& aContactsInGroup, + TInt keyboardMode); + + /** + * Convert the search query to a string. + * If the mode is ITU-T, character is converted to numeric. + * If the mode is Qwerty, character is retained as is. + */ + void ExtractQueryL(CPsQuery& aPsQuery, TDes& aOutput); + + /** + * Convert the input search query to a string. + * Mode is referred in the CPsQuery. + * If the mode is ITU-T, character is converted to numeric. + * If the mode is Qwerty, character is retained as is. + */ + void ExtractQueryL(TDesC& aInput, CPsQuery& aPsQuery, TDes& aOutput); + /** + * Converts the input data to the key board mode specified by the query. + * Mode is referred in the CPsQuery. + * If the mode is ITU-T, data is converted to numeric. + * If the mode is Qwerty, data is retained as is. + */ + void ConvertdDataToKeyBoardModeL(CPsQuery* aQuery, TPtrC aInputData, + TBuf& aOutputData); public: @@ -76,36 +98,29 @@ * Search Function for multi query * Initials search feature */ - void SearchMultiL(const CPsSettings& aSettings, - RPointerArray& aQuery, - TBool aIsGroupSearch, - const RArray& aContactsInGroup, - RPointerArray& aSearchResults, - RPointerArray& aSearchSeqs); + void SearchMultiL(const CPsSettings& aSettings, RPointerArray& aQuery, + TBool isGroupSearch, RArray& aContactsInGroup, + RPointerArray& searchResults, + RPointerArray& searchSeqs, TInt keyboardMode); /** * Funtion to Search matching sequences for multi query */ void SearchMatchSeqMultiL(RPointerArray& aPsQuery, - const TDesC& aData, - RPointerArray& aMatchSet, + TDesC& aData, RPointerArray& aMatchSet, RArray& aMatchLocation); - - - /** - * Funtion to Search match string for multi query - * - * @param aSearchQuery Search query - * @param aData Source date for matching - * @param aMatchedData Matching result - */ - void LookupMatchL( CPsQuery& aSearchQuery, - const TDesC& aData, - TDes& aMatchedData ); private: /** + * Constructs a bit pattern using the required/supported data fields + * For example, 6, 4 and 27 are supported fields <-- 00000111 + * 6 and 4 are required fields <-- 00000011 + * Bit pattern returned is 00000011. + */ + TUint8 FilterDataFieldsL(RArray& aRequiredDataFields, + RArray& aSupportedDataFields); + /** * Set the bits corresponding to word matches * * @param aIndex Index of data element @@ -140,6 +155,12 @@ */ RPointerArray MultiQueryL(CPsQuery& aQuery); + /** + * Convert the search query (multiple) to a list + */ + void ConvertQueryToListL(RPointerArray& aSearchQuery, + RPointerArray& aQueryList); + private: /** @@ -162,7 +183,7 @@ /** * Pointer to key map instance. Not owned. */ - CPcsKeyMap* iKeyMap; + CPcsKeyMap* keyMap; /** * Array of result sets from different data stores. @@ -174,11 +195,6 @@ * Array of word macthes. */ TUint8 iWordMatches[MAX_DATA_FIELDS]; - - /** - * Counter of the matched contacts - */ - TInt iMaxCount; }; #endif // C_PCS_ALGORITHM_2_MULTI_SEARCH_HELPER diff -r 6b5524b4f673 -r 38bb213f60ba predictivesearch/PcsAlgorithm/Algorithm2/inc/CPcsAlgorithm2Utils.h --- a/predictivesearch/PcsAlgorithm/Algorithm2/inc/CPcsAlgorithm2Utils.h Wed Sep 15 11:56:55 2010 +0300 +++ b/predictivesearch/PcsAlgorithm/Algorithm2/inc/CPcsAlgorithm2Utils.h Wed Oct 13 14:15:33 2010 +0300 @@ -20,12 +20,11 @@ // INCLUDE FILES -#include +#include + +#include "CPsData.h" // FORWARD DECLARATION -class CPsData; -class CPsQuery; -struct TPsMatchLocation; typedef RPointerArray CPSDATA_R_PTR_ARRAY; @@ -42,27 +41,17 @@ * works for all type of key board modes */ static void FormCompleteSearchResultsL(RPointerArray& aSearchResultsArr, - RPointerArray& aSearchResults); + RPointerArray& SearchResults); /** - * Customized CompareC + * Customized CompareC */ static TInt MyCompareC(const TDesC& aLeft, const TDesC& aRight); /** * TLinearOrder rule for comparison of data objects */ - static TInt CompareDataBySortOrderL(const CPsData& aObject1, const CPsData& aObject2); - - /** - * TIdentityRelation rule for comparing descriptors case-sensitively. - */ - static TBool CompareExact(const TDesC& aFirst, const TDesC& aSecond); - - /** - * TLinearOrder rule for comparing queries by length - */ - static TInt CompareLength(const CPsQuery& aFirst, const CPsQuery& aSecond); + static TInt CompareDataBySortOrder(const CPsData& aObject1, const CPsData& aObject2); /** * Trim off all white spaces and special chars @@ -73,29 +62,9 @@ * Check if the input URI is of contact search in a group template form */ static TBool IsGroupUri(TDesC& aURI); - - /** - * Constructs a bit pattern using the required/supported data fields - * For example, 6, 4 and 27 are supported fields <-- 00000111 - * 6 and 4 are required fields <-- 00000011 - * Bit pattern returned is 00000011. - */ - static TUint8 FilterDataFieldsL(const RArray& aRequiredDataFields, - const RArray& aSupportedDataFields); - - /** - * Create upper-case match sequence buffer from matching part and append it to - * array unless there's equal sequence already present. - */ - static void AppendMatchToSeqL( RPointerArray& aMatchSeq, const TDesC& aMatch ); - - /** - * Check if two match location items have overlapping indices. - */ - static TBool MatchesOverlap( const TPsMatchLocation& aFirst, const TPsMatchLocation& aSecond ); + }; - // CleanupStack helpers for item owning RPointerArrays template class CleanupResetAndDestroy diff -r 6b5524b4f673 -r 38bb213f60ba predictivesearch/PcsAlgorithm/Algorithm2/inc/CPcsCache.h --- a/predictivesearch/PcsAlgorithm/Algorithm2/inc/CPcsCache.h Wed Sep 15 11:56:55 2010 +0300 +++ b/predictivesearch/PcsAlgorithm/Algorithm2/inc/CPcsCache.h Wed Oct 13 14:15:33 2010 +0300 @@ -38,7 +38,7 @@ /** * Two phase construction */ - static CPcsCache* NewL(CPcsAlgorithm2* aAlgorithm, const TDesC& aURI, + static CPcsCache* NewL(CPcsAlgorithm2* aAlgorithm, TDesC& aURI, CPcsKeyMap& aKeyMap, TUint8 aUriId); /** @@ -74,7 +74,7 @@ /** * Removes all data elements from the cache */ - void RemoveAllFromCache(); + void RemoveAllFromCacheL(); /** * Sets data fields to the cache @@ -125,16 +125,6 @@ */ void ResortdataInPoolsL(); - /** - * Get data index of the first name field - */ - TInt GetFirstNameIndex() const; - - /** - * Get data index of the last name field - */ - TInt GetLastNameIndex() const; - private: /** @@ -145,36 +135,24 @@ /** * Second phase constructor */ - void ConstructL(CPcsAlgorithm2* aAlgorithm, const TDesC& aURI, + void ConstructL(CPcsAlgorithm2* aAlgorithm, TDesC& aURI, CPcsKeyMap& aKeyMap, TUint8 aUriId); /** * Utility function to add a contact to the pool */ - void AddToPoolL(TUint64& aPoolMap, CPsData& aData); - - /** - * Utility function - */ - void SetPoolMap(TUint64& aPoolMap, TInt aArrayIndex); + void AddToPoolL(TInt& aInfo, CPsData& data); /** * Utility function */ - TBool GetPoolMap(TUint64& aPoolMap, TInt aArrayIndex); + void SetPoolMap(TInt& aPoolMap, TInt aPoolId); /** - * Gets all the first characters of the words in the data field according - * to which the contact should be inserted into cache. + * Utility function */ - void GetFirstCharsForDataL( const TDesC& aData, RArray& aFirstChars ) const; - - /** - * Gets all the pool IDs matching the given characters. If there are two predictive - * keyboards available, then pool IDs are given according to both keyboards. - */ - void GetPoolIdsForCharsL( const RArray& aChars, RArray& aPoolIds ) const; - + TBool GetPoolMap(TInt& aPoolMap, TInt arrayIndex); + /** * Utility function */ @@ -187,27 +165,27 @@ * Array of key maps */ typedef RPointerArray R_PTR_ARRAY; - RPointerArray iKeyArr; + RPointerArray keyArr; /* * Hashmaps to remember the location of a contact in the pools */ - RHashMap iCacheInfo; + RHashMap cacheInfo; /* * Master pool of all contacts in this cache */ - RPointerArray iMasterPool; + RPointerArray masterPool; /* * Master pool backup of all contacts in this cache when sortorder changed */ - RPointerArray iMasterPoolBackup; + RPointerArray masterPoolBackup; /* * Not owned */ - CPcsKeyMap* iKeyMap; + CPcsKeyMap* keyMap; /** * Owned. Refer to the database URI this cache is for. diff -r 6b5524b4f673 -r 38bb213f60ba predictivesearch/PcsAlgorithm/Algorithm2/inc/CPcsKeyMap.h --- a/predictivesearch/PcsAlgorithm/Algorithm2/inc/CPcsKeyMap.h Wed Sep 15 11:56:55 2010 +0300 +++ b/predictivesearch/PcsAlgorithm/Algorithm2/inc/CPcsKeyMap.h Wed Oct 13 14:15:33 2010 +0300 @@ -18,22 +18,24 @@ #ifndef __CPCS_KEY_MAP_ALGORITHM_2_H__ #define __CPCS_KEY_MAP_ALGORITHM_2_H__ +// The macro is used for a hack which fix a problem of PtiEngine with Sonja keyboard. +// The problem is that J/# key can't returned character code ('J', 'j', '#') +#define HACK_FOR_E72_J_KEY // INCLUDES #include +#include +#include +#include #include -#include -#include "CPcsDefs.h" class CPcsAlgorithm2; -class CPsQuery; -class CPtiEngine; -class CPtiKeyMapData; +class CPtiEngine; class TKeyMappingData { public: - TPtiKey iKey; // key + TPtiKey key; // key RArray iKeyMappingArray; // All the characters mapped to the key }; @@ -54,15 +56,14 @@ virtual ~CPcsKeyMap(); /** - * Convert functions to get the key string from query and/or chars string + * Converts the alphanumeric string to numeric string */ - void GetMixedKeyStringForQueryL(CPsQuery& aSrcQuery, TDes& aDestStr) const; - void GetMixedKeyStringForDataL(CPsQuery& aSrcQuery, const TDesC& aSrcData, TDes& aDestStr) const; + void GetNumericKeyString(const TDesC& alphaNumericStr, TDes& numericStr); /** - * Returns the numeric key id corresponding to a specific character + * Returns the numeric key id corresponding to a specific character */ - TPtiKey KeyForCharacter(TText aChar, TKeyboardModes aKbMode) const; + TInt KeyForCharacter(const TChar& aChar); /** * Returns ETrue if this language is supported @@ -72,20 +73,15 @@ void ReconstructKeymapL(); /** - * Returns the pool Id for a key + * Returns the pool Id for a Character */ - TInt PoolIdForCharacter(TChar aChar, TKeyboardModes aKbMode ); + TInt PoolIdForCharacter(TChar aChar); /** - * Returns total number of pools + * Returns total number of pools */ TInt PoolCount(); - /** - * Returns true if the characters "0" and " " are on the same key - */ - TBool GetSpaceAndZeroOnSameKey( TKeyboardModes aMode ); - private: /** @@ -99,42 +95,41 @@ void ConstructL(CPcsAlgorithm2* aAlgorithm); /** - * Set flags to indicate if space and zero are on same key. - * Keymappings must be constructed before calling this. - */ - void SetSpaceAndZeroOnSameKey(); - - /** * Helper function to construct keyboard specific mappings */ - void ConstructForItutKeyboardL(); - void ConstructForQwertyKeyboardL(TPtiKeyboardType aKbType); + void ContructForItutKeyboardL(TLanguage aLanguage); + void ContructForHalfQwertyKeyboardL(TLanguage aLanguage); + void ContructFor4x10QwertyKeyboardL(TLanguage aLanguage); /** * Helper function to populate Itut key mappings */ void AddKeyMapforItutL(TLanguage aLanguage); - void AddDataForItutKeyboardL(CPtiKeyMapData* aPtiKeyMapData, + void AddDataForItutKeyboardL(CPtiKeyMappings* aPtiKeyMappings, TPtiKey aKey, TKeyMappingData& aKeyDataList); /** * Helper function to populate 4x10 Qwerty Keyboard key mappings */ - void AddKeyMapForQwertyKeyboardL(TLanguage aLanguage, TPtiKeyboardType aKbType); + void AddKeyMapfor4x10QwertyKeyboardL(TLanguage aLanguage); - void AddDataForQwertyKeyboardL( - CPtiKeyMapData* aPtiKeyMapData, - TPtiKeyboardType aKbType, - TPtiKey aKey, + void AddDataFor4x10QwertyKeyboardL( + CPtiQwertyKeyMappings* aPtiKeyMappings, TPtiKey aKey, TKeyMappingData& aKeyDataList); +#ifdef HACK_FOR_E72_J_KEY + void AddDataFor4x10QwertyKeyboardE72HackL(); // Hack for E72 (J/# key) +#endif // HACK_FOR_E72_J_KEY + /** - * Create list of PTI keys for the given keyboard type + * Helper function to populate alfQwerty Keyboard key mappings */ - void CreateKeyListFromKeyBindingTable( RArray& aKeyArray, TPtiKeyboardType aKbType ); + void AddKeyMapforHalfQwertyKeyboardL(TLanguage aLanguage); + + void AddDataForHalfQwertyKeyboardL(CPtiHalfQwertyKeyMappings* aPtiKeyMappings, + TPtiKey aKey, TKeyMappingData& aKeyDataList); void ResetKeyMap(); - /** * Function to construct key mappings for a particula language * @@ -142,15 +137,18 @@ void ConstructKeymapL(); /** - * Select keyboard types according to available physical keyboard(s) + * Get the current keyboard type. + * @return current keyboard type. */ - void SetupKeyboardTypesL(); + TInt CurrentKeyBoardTypeL(); /** * - * Construct keymaps + * Construct keymap by type and language + * @ aKeyboardType, the current keyboard type. + * @ aLanguage, the keymap construct language. */ - void ConstructConcreteKeyMapL(); + void ConstructConcreteKeyMapL( TInt aKeyboardType, TLanguage aLanguage ); /** * @@ -158,104 +156,35 @@ * @ aKeyboardType, the current keyboard type. * @ aLanguage, the keymap construct language. */ - void AddKeyMapforConcreteKeyboardL( TLanguage aLanguage ); - + void AddKeyMapforConcreteKeyboardL( TInt aKeyboardType, TLanguage aLanguage ); + /** * In case the given character is a Chinese characer, give the first * character of it's first spelling using the current spelling mode. * Otherwise, the character is returned unmodified. */ TChar FirstCharFromSpellingL( TChar aChar ) const; - - TInt PoolIdForKey(TPtiKey aKey, TKeyboardModes aKbMode) const; - - /** - * Gets predictive keyboard mapping data for given match mode. - * @param aMode Matching mode for which keymappings are asked. - * @return Mapping table for the given mode. NULL if asked for non-predictive mode. - */ - const RPointerArray* KeyMappings( TKeyboardModes aMode ) const; - /** - * Resolve any ambiguity from the given keyboard mode. - * Keyboard mode "predictive default keyboard" will be replaced by - * "ITU-T predictive" or "QWERTY predictive", depending on the configuration - * of the device. Predictive keyboard modes, which can't be supported - * in this device, are replaced with "non-predictive" mode. - */ - TKeyboardModes ResolveKeyboardMode( TKeyboardModes aKbMode ) const; - - /** - * Get the default charcter for the given key in given keyboard. - * The default character is used to construct the compare string for - * predictive mode. - */ - TText DefaultCharForKey( TPtiKey aKey, TKeyboardModes aKbMode ) const; - private: - /** - * PTI engine istance. Owned. - */ CPtiEngine* iPtiEngine; - /** - * Algorithm instacne pointer. NOT owned. - */ CPcsAlgorithm2* iAlgorithm; - /** * Array to hold the list of languages not supported */ RArray iLanguageNotSupported; /** - * Type of keyboard used in ITU-T search mode. Typically this is standard ITU-T - * 12-key keypad. + * Flag to indicate if Phone is Chinese variant */ - TPtiKeyboardType iItutKeyboardType; - - /** - * PTI keys of the ITU-T keyboard. - */ - RArray iItutKeys; - - /** - * Contains all the ITU-T keys and the characters mapped to each key. Owned. - */ - RPointerArray iItutKeyMappings; + RArray iKeysForPoolFormation; /** - * True if "0" and " " are on the same key in the ITU-T mode - */ - TBool iSpaceAndZeroOnSameKeyOnItut; - - /** - * Type of keyboard used in QWERTY search mode. Typically this is either 3x11 or 4x10 QWERTY - * or EPtiKeyboardNone if there's no any kind of QWERTY available. This may also be - * half-QWERTY. - */ - TPtiKeyboardType iQwertyKeyboardType; - - /** - * PTI keys of the QWERTY keyboard. + * Contains all the keys and the characters mapped to each key + * own */ - RArray iQwertyKeys; - - /** - * Contains all the QWERTY keys and the characters mapped to each key. Owned. - */ - RPointerArray iQwertyKeyMappings; + RPointerArray iAllKeyMappingsPtrArr; - /** - * True if "0" and " " are on the same key in the QWERTY mode - */ - TBool iSpaceAndZeroOnSameKeyOnQwerty; - - /** - * Flag to indicate if the default multi-matching mode is ITU-T or QWERTY mode. - * ETrue, if ITU-T is defualt and EFalse if QWERTY is default. - */ - TBool iItutIsDefault; }; #endif // __CPCS_KEY_MAP_ALGORITHM_2_H__ diff -r 6b5524b4f673 -r 38bb213f60ba predictivesearch/PcsAlgorithm/Algorithm2/inc/CPcsPoolElement.h --- a/predictivesearch/PcsAlgorithm/Algorithm2/inc/CPcsPoolElement.h Wed Sep 15 11:56:55 2010 +0300 +++ b/predictivesearch/PcsAlgorithm/Algorithm2/inc/CPcsPoolElement.h Wed Oct 13 14:15:33 2010 +0300 @@ -64,7 +64,7 @@ * Compares the two Pool Elements and returms the comparison value. * It takes care of language variance too. */ - static TInt CompareByDataL(const CPcsPoolElement& aObject1, + static TInt CompareByData(const CPcsPoolElement& aObject1, const CPcsPoolElement& aObject2); private: @@ -100,7 +100,7 @@ * Bit 6 = Not used * Bit 7 = Not used */ - TUint8 iDataMatchAttribute; + TInt8 iDataMatchAttribute; }; #endif // __CPCS_POOL_ELEMENT_ALGORITHM_2_H__ diff -r 6b5524b4f673 -r 38bb213f60ba predictivesearch/PcsAlgorithm/Algorithm2/inc/FindUtilChineseECE.h --- a/predictivesearch/PcsAlgorithm/Algorithm2/inc/FindUtilChineseECE.h Wed Sep 15 11:56:55 2010 +0300 +++ b/predictivesearch/PcsAlgorithm/Algorithm2/inc/FindUtilChineseECE.h Wed Oct 13 14:15:33 2010 +0300 @@ -36,7 +36,7 @@ Defines flags that can be used to indicate what is the default search method for each language. */ -enum TChineseSearchMethod +enum TDefaultAdaptiveSearchMethod { EAdptSearchPinyin =0, EAdptSearchStroke, @@ -48,7 +48,7 @@ /** * STRINGINFO struct * - * This data struct is for splited text in find pane. + * This data struct is for splited taxt in find pane. * It includes two type word, which is Chinese or no-Chinese * * @lib FindUtil.dll @@ -58,7 +58,6 @@ { TBuf segmentString; TBool isChinese; - TInt segmentPos; }; /** @@ -89,26 +88,12 @@ * * @since S60 v3.2 * @param aItemString Reference to the searching target - * @param aPsQuery Reference to the search query + * @param aWord Reference to text in find pane * @return ETrue for the text are matched; otherwise EFalse */ virtual TBool MatchRefineL(const TDesC& aItemString, CPsQuery& aPsQuery); /** - * Match arithmetic for accurate search - * - * @since S60 v5.2 - * @param aItemString Reference to the searching target - * @param aPsQuery Reference to the search query - * @param aMatchPos On return, contain positions of matching parts within aItemString - * @param aMatchLength On return, contains lenghts of matching parts within aItemString - * @param aHighLight If highlight or underline position of matched contact is enabled - * @return ETrue for the text are matched; otherwise EFalse - */ - TBool MatchRefineL(const TDesC& aItemString, CPsQuery& aPsQuery, - RArray& aMatchPos, RArray& aMatchLength, TBool aHighLight ); - - /** * Current input text is handled by this model * * @since S60 v3.2 @@ -185,6 +170,30 @@ public: /** + * Do translate for Chinese word + * + * @since S60 v3.2 + * @param aHZUnicode For translate word + * @param aSpellList Reference to spelling list for polyphonic word + * @return ETrue for it can be translated; otherwise EFalse + */ + TBool T9ChineseTranslationL(TInt16 aHZUnicode, RPointerArray& aSpellList); + + /** + * Find pane text is including Chinese word + * + * @since S60 v3.2 + * @param aWord Reference to text for analyse + * @return ETrue it includes Chinese; otherwise EFalse + */ + TBool IsChineseWord(const TDesC& aWord); + + /* + * + */ + void SetKeyboardMode(TInt aMode); + + /** * Translate Chinese word to its spelling * * @since S60 v3.2 @@ -194,15 +203,6 @@ */ TBool DoTranslationL(TInt16 aHZUnicode, RPointerArray& aSpellList); - /** - * Find pane text is including Chinese word - * - * @since S60 v3.2 - * @param aWord Reference to text for analyse - * @return ETrue it includes Chinese; otherwise EFalse - */ - TBool IsChineseWordIncluded(const TDesC& aWord); - /* * */ @@ -211,11 +211,6 @@ return iLanguage; } - inline TChineseSearchMethod CurrentSearchMethod() - { - return iSearchMethod; - } - private: /** @@ -243,6 +238,9 @@ */ void CloseT9InterfaceL(); + TInt CategoryOfLang(TLanguage aLanguage); + + /** * This letter is stroke symbol * @@ -250,18 +248,12 @@ * @param aFindWord For analyse * @return ETrue for it is stroke symbol; otherwise EFalse */ - TInt IsStrokeSymbol(const TUint16 aFindWord); + TInt IsStrokeSymbol(const TInt aFindWord); - /** - * Do translate for Chinese word - * - * @since S60 v3.2 - * @param aHZUnicode For translate word - * @param aSpellList Reference to spelling list for polyphonic word - * @return ETrue for it can be translated; otherwise EFalse - */ - TBool T9ChineseTranslationL(TInt16 aHZUnicode, RPointerArray& aSpellList); - + // The below code is commented out because current CFindUtilChineseECE is used + // on 3.2.3 which is not supported adaptive search. It will be easy to keep these code + // for the further merging work (merge from FindUtil 5.0) +#if 0 /** * Do translate for Chinese word * @@ -271,6 +263,7 @@ * @return ETrue for it can be translated; otherwise EFalse */ TBool T9ChineseTranslationAdaptiveL(TInt16 aHZUnicode, RPointerArray& aSpellList); +#endif /** * Find pane text is including separator @@ -291,14 +284,6 @@ TBool IsStrokeSymbolInString(const TDesC& aWord); /** - * Find pane text is just Chinese word - * - * @param aWord Reference to text for analyse - * @return ETrue it is all Chinese word(s); otherwise EFalse - */ - TBool IsAllChineseWord(const TDesC& aWord); - - /** * Find pane text is including zhuyin symbol * * @since S60 v3.2 @@ -342,13 +327,10 @@ * @param aStringInfoArr Reference to segment list * @param aSegmentStr Reference to segment text * @param aChinese The segment is Chinese - * @param aIndexAfterStr The first index in the source string after the aSegmentStr. - * The indices of characters of aSegmentStr are - * [aIndexAfterStr-aSegmementStr.Length(), aIndexAfterStr-1] * @return none */ void InsertStrInforArrayL(RPointerArray& aStringInfoArr, - TDes &aSegmentStr, TBool aChinese, TInt aIndexAfterStr); + TDes &aSegmentStr, const TBool aChinese); /** * This segment is matched by search text @@ -356,13 +338,9 @@ * @since S60 v3.2 * @param aStringInfoArr Reference to segment list * @param aSearchText Reference to searching text - * @param aMatchPos On return, contain positions of matching parts within the original searcg target text - * @param aMatchLength On return, contains lenghts of matching parts within the original search target text - * @param aHighLight If highlight or underline position of matched contact is enabled * @return ETrue it is matched; otherwise EFalse */ - TBool MatchSegmentL(RPointerArray& aStringInfoArr, - CPsQuery& aQuery, RArray& aMatchPos, RArray& aMatchLength, TBool aHighLight ); + TBool MatchSegmentL(RPointerArray& aStringInfoArr, CPsQuery& aQuery); /** * Search text by reverse @@ -370,10 +348,9 @@ * @since S60 v3.2 * @param aFirst Reference to matched text * @param aSecond Reference to matched text - * @param aFullQuery Reference to the FullQuery * @return Matched count */ - TInt ReverseMatchStringL(const TDesC& aFirst, const TDesC& aSecond, CPsQuery& aFullQuery ); + TInt ReverseMatchString(const TDesC& aFirst, const TDesC& aSecond); /** * Search text in other text @@ -381,34 +358,29 @@ * @since S60 v3.2 * @param aFirst Reference to matched text * @param aSecond Reference to matched text - * @param aFullQuery Reference to the FullQuery * @return Matched count */ - TInt MatchStringL(const TDesC& aFirst, const TDesC& aSecond, CPsQuery& aFullQuery); + TInt MatchString(const TDesC& aFirst, const TDesC& aSecond); /** * Search text in other text * * @since S60 v3.2 - * @param aSearchTargetString Data to be searched through - * @param aQuery Text to be searched from aSearchTargetString - * @return Number of matched characters from the begining of aQuery + * @param aSearhTargetStr Reference to the target text to be queried + * @param CPsQuery maintain the matched text from user + * @return Matched count */ - TInt MatchStringL(const TDesC& aSearhTargetString, CPsQuery& aQuery); + TInt MatchString(const TDesC& aSearhTargetStr, CPsQuery& aQuery); /** * Search Chinese word in input text * * @since S60 v3.2 - * @param aSearchTargetString Data to be searched through - * @param aQuery Text to be searched from aSearchTargetString - * @param aMatchStrtIdx On return, will contain the start index - * of the matching part within aSearchTargetString - * @param aMatchEndIdx On return, will contain the end index - * of the matching part within aSearchTargetString - * @return Number of matched characters from the begining of aQuery + * @param aFirst Reference to matched text + * @param aSecond Reference to matched text + * @return Matched count */ - TInt MatchChineseStringL(const TDesC& aSearchTargetString, CPsQuery& aQuery, TInt& aMatchStartIdx, TInt& aMatchEndIdx); + TInt MatchChineseStringL(const TDesC& aSearchTargetString, CPsQuery& aQuery, TInt& aIndex); /** * Initial character search @@ -425,19 +397,18 @@ * Maximal matched count in spelling list * * @since S60 v3.2 - * @param aSpellList Reference to spelling list + * @param spellList Reference to spelling list * @param aSearchStr Reference to search text * @param aPreviouStr Reference to previous matched word * @param aMatchIndex Reference to match index in Search text * @param aFullMatched Previous word is fully matched * @param aMatchedCount Previous word matched count * @param aAgain Search again - * @param aFullQuery Reference to the FullQuery * @return Matched count */ - TInt MaxMatchInListL(RPointerArray& aSpellList, CPsQuery& aQuery, + TInt MaxMatchInList(RPointerArray &spellList, CPsQuery& aQuery, TDesC& aPreviouStr, TInt& aMatchIndex, const TBool aFullMatched, - const TInt aMatchedCount, TBool& aAgain, TBool& aPrevReplaced, CPsQuery& aFullQuery); + const TInt aMatchedCount, TBool& aAgain); /** * Search the taxt is include the input text @@ -556,6 +527,18 @@ const TDes& aCurrentBuf,HBufC*& aNextChars ); #endif + /** + * Converts the input data to the key board mode specified by the query. + * Mode is referred in the CPsQuery. + * If the mode is ITU-T, data is converted to numeric. + * If the mode is Qwerty, data is retained as is. + * If the mode is Mix, data is conerted according to the keyboard mode + * of the corresponding query chararter + */ + void ConvertdDataToKeyBoardModeL(CPsQuery& aQuery, + const TDesC& aSearchTargetStr, + TBuf& aOutputNumInterpretationStr); + // help function for using CPsQuery public: void GetPartOfQueryL(CPsQuery& aSrcQuery, TInt aStartIndex, @@ -572,11 +555,21 @@ CPtiEngine* iPtiEngine; /** + * Ptiengine for Chinese translation in English language (Own) + */ + CPtiEngine* iPtiEnginePrc; + + /** * Current text input language */ TLanguage iLanguage; /** + * It is support Chinese Language + */ + TBool iSupportPRCChinese; + + /** * Current input mode */ TInt iCurInputMode; @@ -591,10 +584,14 @@ */ CFindRepositoryWatcher* iWatcher; + // The below code is commented out because current CFindUtilChineseECE is used + // on 3.2.3 which is not supported adaptive search. It will be easy to keep these code + // for the further merging work (merge from FindUtil 5.0) +#if 0 /** * Repository for input mode (Own) */ - CRepository* iRepositoryFindAdaptive; + CRepository* iRepositoryFindAdaptive; /** * The repository watcher(Own); @@ -605,15 +602,31 @@ /** * The default adaptive search method; */ - TChineseSearchMethod iSearchMethod; + TDefaultAdaptiveSearchMethod iSearchMethodPRC; + + /** + * The default adaptive search method; + */ + TDefaultAdaptiveSearchMethod iSearchMethodTaiWan; + + /** + * The default adaptive search method; + */ + TDefaultAdaptiveSearchMethod iSearchMethodHongKong; /** * The search method; */ TBool iSearchMethodAdaptive; +#endif CPcsAlgorithm2* iAlgorithm; + /* + * The keyboard Mode + */ + TInt iKeyboardMode; + }; #endif // __FINDUTILCHINESE_ECE__ diff -r 6b5524b4f673 -r 38bb213f60ba predictivesearch/PcsAlgorithm/Algorithm2/src/CPcsAlgorithm2.cpp --- a/predictivesearch/PcsAlgorithm/Algorithm2/src/CPcsAlgorithm2.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/predictivesearch/PcsAlgorithm/Algorithm2/src/CPcsAlgorithm2.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -16,7 +16,7 @@ */ // INCLUDES -#include +#include #include #include #include @@ -79,6 +79,7 @@ iCacheCount = 0; // No data iFindUtilECE = CFindUtilChineseECE::NewL(this); + iFindUtil = CFindUtil::NewL(); iPluginLauncher = CIdle::NewL( CActive::EPriorityStandard ); @@ -95,14 +96,13 @@ // Initialize key map and pti engine TInt keyMapErr = KErrNone; - TRAP( keyMapErr, iKeyMap = CPcsKeyMap::NewL( this ) ); + TRAP( keyMapErr, iKeyMap = CPcsKeyMap::NewL( this )); if (keyMapErr != KErrNone) { PRINT ( _L("**********************************************.")); PRINT1 ( _L("CPcsAlgorithm2::ConstructL() KeyMap construction error. The keymap crashed with error code %d."), keyMapErr ); PRINT ( _L("Please check the keypad/language for which keymap got crashed.") ); PRINT ( _L("**********************************************.")); - User::Leave( keyMapErr ); // we can't go on without a key map; constructing cache needs it } // Initialize helpers @@ -140,6 +140,7 @@ delete iMultiSearchHelper; delete iFindUtilECE; + delete iFindUtil; delete iPluginLauncher; @@ -164,152 +165,105 @@ } // ---------------------------------------------------------------------------- -// CPcsAlgorithm2::RemoveSpacesL -// Remove leading and trailing spaces of search query -// ---------------------------------------------------------------------------- -void CPcsAlgorithm2::RemoveSpacesL(CPsQuery& aQuery) - { - PRINT ( _L("Enter CPcsAlgorithm2::RemoveSpacesL") ); - - // Remove all leading " " - while ( aQuery.Count() > 0 ) - { - CPsQueryItem& item = aQuery.GetItemAtL(0); // First - if ( !item.Character().IsSpace() ) - { - break; - } - aQuery.Remove(0); - } - - // Remove all trailing " " - while ( aQuery.Count() > 0 ) - { - CPsQueryItem& item = aQuery.GetItemAtL(aQuery.Count()-1); // Last - if ( !item.Character().IsSpace() ) - { - break; - } - aQuery.Remove(aQuery.Count()-1); - } - - PRINT ( _L("End CPcsAlgorithm2::RemoveSpacesL") ); - } - -// ---------------------------------------------------------------------------- // CPcsAlgorithm2::ReplaceZeroWithSpaceL // Replace first occurance of '0' in a sequence of '0's in ITU-T with space // ---------------------------------------------------------------------------- TBool CPcsAlgorithm2::ReplaceZeroWithSpaceL(CPsQuery& aQuery) { - PRINT ( _L("Enter CPcsAlgorithm2::ReplaceZeroWithSpaceL") ); + TChar space(KSpace); // ascii value for space - //PRINTQUERY ( _L("CPcsAlgorithm2::ReplaceZeroWithSpaceL (BEFORE): "), aQuery ); - - TBool queryModified = EFalse; + TBool queryModified = EFalse; - /* In phones like E52 and E55, where the "0" and the " " characters are on - * the same key, the "0"s have to be considered as possible separators. - * - * In phones like N97 and E72, where the "0" and the " " characters are on - * different keys, the "0"s must not be considered as possible separators. - */ + // Skip initial zeros in query + TInt index = 0; + for (index = 0; index < aQuery.Count() + && aQuery.GetItemAtL(index).Character().GetNumericValue() == 0; ++index) + { + } + + if (aQuery.KeyboardModeL() != EQwerty) + { + for (TInt beg = index; beg < aQuery.Count(); ++beg) + { + CPsQueryItem& item = aQuery.GetItemAtL(beg); - // Skip initial "0"s, they are not replaced into spaces - TInt skipIndex = 0; - while ( (skipIndex < aQuery.Count()) && - (aQuery.GetItemAtL(skipIndex).Character().GetNumericValue() == 0) ) - { - skipIndex++; - } - - // Replace remaining "0"s into spaces in case they are entered with a keyboard - // that has "0" and " " on the same key. - const TInt queryCount = aQuery.Count(); - for ( TInt index = skipIndex; index < queryCount; index++ ) - { - CPsQueryItem& item = aQuery.GetItemAtL(index); + if (item.Character().GetNumericValue() == 0 && item.Mode()== EItut) + { + if (beg != 0) + { + CPsQueryItem& item1 = aQuery.GetItemAtL(beg - 1); + if (item1.Character().GetNumericValue() != 0 + && !item1.Character().IsSpace()) + { + item.SetCharacter(space); + queryModified = ETrue; + } + } + else + { + item.SetCharacter(space); + queryModified = ETrue; + } + } + } + } - if ( iKeyMap->GetSpaceAndZeroOnSameKey( item.Mode() ) && - item.Character().GetNumericValue() == 0 ) - { - item.SetCharacter(KSpace); - queryModified = ETrue; - } - } - - //PRINTQUERY ( _L("CPcsAlgorithm2::ReplaceZeroWithSpaceL (AFTER): "), aQuery ); - - PRINT1 ( _L("CPcsAlgorithm2::ReplaceZeroWithSpaceL: Query modified (0=not, 1=yes): %d"), queryModified ); - - PRINT ( _L("End CPcsAlgorithm2::ReplaceZeroWithSpaceL") ); - - return queryModified; + return queryModified; } // ---------------------------------------------------------------------------- // CPcsAlgorithm2::PerformSearchL // Search function for cache // ---------------------------------------------------------------------------- -void CPcsAlgorithm2::PerformSearchL(const CPsSettings& aSettings, - CPsQuery& aQuery, +void CPcsAlgorithm2::PerformSearchL(const CPsSettings& aSettings, CPsQuery& aQuery, RPointerArray& aSearchResults, RPointerArray& aSearchSeqs) { PRINT ( _L("Enter CPcsAlgorithm2::PerformSearchL") ); - //__LATENCY_MARK ( _L("CPcsAlgorithm2::PerformSearchL") ); - - // Check aSettings - RPointerArray searchUris; - CleanupResetAndDestroyPushL( searchUris ); - aSettings.SearchUrisL(searchUris); - - if ( searchUris.Count() <= 0) - { - PRINT ( _L("searchUris.Count() <= 0, Leave from CPcsAlgorithm2::PerformSearchL") ); - User::Leave(KErrArgument); - } - CleanupStack::PopAndDestroy( &searchUris ); // ResetAndDestroy + __LATENCY_MARK ( _L("CPcsAlgorithm2::PerformSearchL") ); + + // Get the current language + TLanguage lang = User::Language(); + + // Check if the language is supported and the keyboard mode is not qwerty. // Local arrays to hold the search results RPointerArray tempSearchResults; - CleanupClosePushL( tempSearchResults ); RPointerArray tempSearchResults1; - CleanupClosePushL( tempSearchResults1 ); // -------------------- Perform the basic search -------------------------- - RemoveSpacesL(aQuery); - PRINTQUERY ( _L("CPcsAlgorithm2::PerformSearchL: 1st search query: "), aQuery ); DoSearchL(aSettings, aQuery, tempSearchResults, aSearchSeqs); // ------------------------------------------------------------------------ - // ---- Perform new search after "0" replacement if query is not empty ---- - /* Examples: - * - If the original search string is "Abc0" then we will search again with "Abc". - * - If the original search string is "00" then we will not search again. - */ + // ------------------- Perform advanced search if needed ------------------ + // Substitute "0" with space TBool queryModified = ReplaceZeroWithSpaceL(aQuery); - RemoveSpacesL(aQuery); - // Perform query again if query got modified. + + // If query got modified and the search query translated to more than 1 query + // perform a multi search again if (queryModified) { - PRINTQUERY ( _L("CPcsAlgorithm2::PerformSearchL: 2nd search query: "), aQuery ); - DoSearchL(aSettings, aQuery, tempSearchResults1, aSearchSeqs); + // Split query + RPointerArray queryList = iMultiSearchHelper->MultiQueryL(aQuery); + // Perform seach again + if (queryList.Count() > 1) + { + DoSearchL(aSettings, aQuery, tempSearchResults1, aSearchSeqs); + } // Sort rule - TLinearOrder rule(CPcsAlgorithm2Utils::CompareDataBySortOrderL); + TLinearOrder rule(CPcsAlgorithm2Utils::CompareDataBySortOrder); // Avoid duplicates and add new results TIdentityRelation identityRule(CPsData::CompareById); - const TInt tempSearchResults1Count = tempSearchResults1.Count(); if (aSettings.GetSortType() != EAlphabetical) { TInt insertPos = 0; - for (TInt i = 0; i < tempSearchResults1Count; i++) + for (int i = 0; i < tempSearchResults1.Count(); i++) { if (tempSearchResults.Find(tempSearchResults1[i], identityRule) == KErrNotFound) @@ -317,11 +271,14 @@ tempSearchResults.Insert(tempSearchResults1[i], insertPos); insertPos++; } + } + } else { - for (TInt i = 0; i < tempSearchResults1Count; i++) + + for (int i = 0; i < tempSearchResults1.Count(); i++) { if (tempSearchResults.Find(tempSearchResults1[i], identityRule) == KErrNotFound) @@ -331,35 +288,40 @@ } } } + + queryList.ResetAndDestroy(); } // ------------------------------------------------------------------------ // ---------------------- Write result objects to the stream -------------- // Truncate the result set if required - TInt maxNumToDisplay = aSettings.MaxResults(); - TInt resultSetCount = tempSearchResults.Count(); - TInt numToDisplay = 0; - if ( maxNumToDisplay == -1 ) + TInt numToDisplay = aSettings.MaxResults(); + TInt resultSet = tempSearchResults.Count(); + + if (resultSet > numToDisplay && numToDisplay != -1) { - numToDisplay = resultSetCount; + // Copy the top N contents from tempSearchResults to the results stream + for (int i = 0; i < numToDisplay; i++) + { + aSearchResults.Append(WriteClientDataL(*(tempSearchResults[i]))); + } + } else { - numToDisplay = Min( maxNumToDisplay, resultSetCount ); - } - - // Copy desired number of results from tempSearchResults to the results stream - for (TInt i = 0; i < numToDisplay; i++) - { - aSearchResults.Append(WriteClientDataL(*(tempSearchResults[i]))); + // Copy all the contents from tempSearchResults to the results stream + for (int i = 0; i < resultSet; i++) + { + aSearchResults.Append(WriteClientDataL(*(tempSearchResults[i]))); + } } // ------------------------------------------------------------------------ // Cleanup local results array - CleanupStack::PopAndDestroy( &tempSearchResults1 ); // Close, don't destroy - CleanupStack::PopAndDestroy( &tempSearchResults ); // Close, don't destroy + tempSearchResults.Reset(); // Don't destroy + tempSearchResults1.Reset(); // Don't destroy - // __LATENCY_MARKEND ( _L("CPcsAlgorithm2::PerformSearchL") ); + __LATENCY_MARKEND ( _L("CPcsAlgorithm2::PerformSearchL") ); PRINT ( _L("End CPcsAlgorithm2::PerformSearchL") ); } @@ -368,187 +330,84 @@ // CPcsAlgorithm2::SearchInputL // Search function for input string // ---------------------------------------------------------------------------- -void CPcsAlgorithm2::SearchInputL(CPsQuery& aQuery, - TDesC& aData, +void CPcsAlgorithm2::SearchInputL(CPsQuery& aQuery, TDesC& aData, RPointerArray& aMatchSet, RArray& aMatchLocation) { - // __LATENCY_MARK ( _L("CPcsAlgorithm2::SearchInputL: ") ); PRINT ( _L("Enter CPcsAlgorithm2::SearchInputL") ); + // Get the current language + TLanguage lang = User::Language(); + + // Check if the language is supported and the keyboard mode is not qwerty. + // Print input query for debug - PRINTQUERY ( _L("CPcsAlgorithm2::SearchInputL: Search query: "), aQuery ); + aQuery.PrintQuery(); // Print received search data PRINT1 ( _L("Search data received = %S"), &aData); - // -------------------- Perform the basic search -------------------------- - RemoveSpacesL(aQuery); DoSearchInputL(aQuery, aData, aMatchSet, aMatchLocation); // ------------------------------------------------------------------------ - // ---- Perform new search after "0" replacement if query is not empty ---- - /* Examples: - * - If the original search string is "Abc0" then we will search again with "Abc". - * - If the original search string is "00" then we will not search again. - */ + // ------------------- Perform advanced search if needed ------------------ + // Substitute "0" with space TBool queryModified = ReplaceZeroWithSpaceL(aQuery); - RemoveSpacesL(aQuery); - // If query got modified and the search query still contains something + + // If query got modified and the search query translated to more than 1 query // perform a multi search again - if (queryModified && aQuery.Count() > 0 && aMatchSet.Count() == 0 && aMatchLocation.Count() == 0 ) + if (queryModified) { - DoSearchInputL(aQuery, aData, aMatchSet, aMatchLocation); + RPointerArray queryList = iMultiSearchHelper->MultiQueryL(aQuery); + + if (queryList.Count() > 1) + { + DoSearchInputL(aQuery, aData, aMatchSet, aMatchLocation); + } + + queryList.ResetAndDestroy(); } // ------------------------------------------------------------------------ - // --- Remove overlapping items from aMatchLocation --- - TInt i = 0; - TBool incrementFirstCursor; - while ( i < aMatchLocation.Count() ) - { - incrementFirstCursor = ETrue; - TInt j = i+1; - while ( j < aMatchLocation.Count() ) - { - if ( CPcsAlgorithm2Utils::MatchesOverlap( aMatchLocation[j], aMatchLocation[i] ) ) - { - // Remove match location item with smallest length if 2 items have same index - if ( aMatchLocation[j].length <= aMatchLocation[i].length ) - { - aMatchLocation.Remove(j); - continue; // Do not increment j - } - else - { - aMatchLocation.Remove(i); - incrementFirstCursor = EFalse; // Do not increment i - break; - } - } - j++; - } - if ( incrementFirstCursor ) - { - i++; - } - } - - // --- Remove from aMatchSet items which no longer have corresponding item in aMatchLocation --- - HBufC* dataUpper = HBufC::NewLC(aData.Length()); - dataUpper->Des().Copy(aData); - dataUpper->Des().UpperCase(); // Get uppercase, as aMatchSet is in upper case - - TInt k = 0; - while ( k < aMatchSet.Count() ) - { - TBool keepMatch = EFalse; - TInt startCursor = -1; - - TInt offsetCursor; - while ( KErrNotFound != (offsetCursor = dataUpper->Mid(startCursor + 1).Find(*aMatchSet[k])) ) - { - // startCursor = index of match item *aMatchSet[k] into search string aData - startCursor = offsetCursor + startCursor + 1; - const TInt matchLocationCount = aMatchLocation.Count(); - for ( TInt i = 0; i < matchLocationCount; i++ ) - { - // If match item was found in the location list, then keep it - if ( (aMatchLocation[i].index == startCursor) && - (aMatchLocation[i].length == aMatchSet[k]->Length()) ) - { - keepMatch = ETrue; - break; - } - } - } - - if ( keepMatch ) - { - k++; - } - else - { - aMatchSet.Remove(k); // Do not increment k - } - } - CleanupStack::PopAndDestroy( dataUpper ); - // --- Remove items End --- - // Sort match set iHelper->SortSearchSeqsL(aMatchSet); PRINT ( _L("End CPcsAlgorithm2::SearchInputL") ); - //__LATENCY_MARKEND ( _L("CPcsAlgorithm2::SearchInputL") ); } // ---------------------------------------------------------------------------- // CPcsAlgorithm2::SearchMatchStringL // Search function for input string, result also as string // ---------------------------------------------------------------------------- -void CPcsAlgorithm2::SearchMatchStringL( CPsQuery& aSearchQuery, - TDesC& aSearchData, - TDes& aMatch ) +void CPcsAlgorithm2::SearchMatchStringL( CPsQuery& /*aSearchQuery*/, + TDesC& /*aSearchData*/, + TDes& /*aMatch*/ ) { - PRINT ( _L("Enter CPcsAlgorithm2::SearchMatchStringL") ); - - __LATENCY_MARK ( _L("CPcsAlgorithm2::SearchMatchStringL") ); - - RemoveSpacesL(aSearchQuery); - // ---------------------- Perform the initial search ---------------------- - iMultiSearchHelper->LookupMatchL( aSearchQuery, aSearchData, aMatch ); - PRINTQUERY ( _L("CPcsAlgorithm2::SearchMatchStringL: 1st search: "), aSearchQuery ); - PRINT1 ( _L("CPcsAlgorithm2::SearchMatchStringL: 1st search: Search Data: %S"), &aSearchData ); - PRINT1 ( _L("CPcsAlgorithm2::SearchMatchStringL: 1st search: Result: %S"), &aMatch ); - // ------------------------------------------------------------------------ - - // ---- Perform new search after "0" replacement if query is not empty ---- - /* Examples: - * - If the original search string is "Abc0" then we will search again with "Abc". - * - If the original search string is "00" then we will not search again. - */ - if ( aMatch.Length() <= 0 ) - { - TBool isQueryModified = ReplaceZeroWithSpaceL(aSearchQuery); - RemoveSpacesL(aSearchQuery); - if ( isQueryModified && (aSearchQuery.Count() > 0) ) - { - iMultiSearchHelper->LookupMatchL( aSearchQuery, aSearchData, aMatch ); - PRINTQUERY ( _L("CPcsAlgorithm2::SearchMatchStringL: 2nd search: "), aSearchQuery ); - PRINT1 ( _L("CPcsAlgorithm2::SearchMatchStringL: 2nd search: Search Data: %S"), &aSearchData ); - PRINT1 ( _L("CPcsAlgorithm2::SearchMatchStringL: 2nd search: Result: %S"), &aMatch ); - } - } - __LATENCY_MARKEND ( _L("CPcsAlgorithm2::SearchMatchStringL") ); - - PRINT ( _L("End CPcsAlgorithm2::SearchMatchStringL") ); + //NOT IMPLEMENTED YET } // ---------------------------------------------------------------------------- // CPcsAlgorithm2::DoSearchL // Search function helper // ---------------------------------------------------------------------------- -void CPcsAlgorithm2::DoSearchL( const CPsSettings& aSettings, - CPsQuery& aQuery, - RPointerArray& aSearchResults, - RPointerArray& aSearchSeqs ) +void CPcsAlgorithm2::DoSearchL(const CPsSettings& aSettings, CPsQuery& aQuery, + RPointerArray& searchResults, + RPointerArray& searchSeqs) { PRINT ( _L("Enter CPcsAlgorithm2::DoSearchL") ); - //__LATENCY_MARK ( _L("CPcsAlgorithm2::DoSearchL") ); - + // Print query for debug + aQuery.PrintQuery(); + // -(0)----------------- Check if group search is required --------------- RArray contactsInGroup; - CleanupClosePushL( contactsInGroup ); RArray groupIdArray; - CleanupClosePushL( groupIdArray ); // Create a new settings instance - CPsSettings* tempSettings = aSettings.CloneL(); - CleanupStack::PushL( tempSettings ); + CPsSettings *tempSettings = aSettings.CloneL(); TBool isGroupSearch = IsGroupSearchL(*tempSettings, groupIdArray); @@ -561,55 +420,102 @@ GetContactsInGroupL(groupIdArray[0], contactsInGroup); } + groupIdArray.Close(); + // ----------------------------------------------------------------------- // Extract query list. RPointerArray queryList = iMultiSearchHelper->MultiQueryL(aQuery); - CleanupResetAndDestroyPushL( queryList ); - // (1)-------------------- No query return all contacts ------------------- + // -(1)--------------------- No query return all contacts ---------------- if (queryList.Count() == 0) { - GetAllContentsL(*tempSettings, aSearchResults); + GetAllContentsL(*tempSettings, searchResults); if (isGroupSearch) { - FilterSearchResultsForGroupsL(contactsInGroup, aSearchResults); + FilterSearchResultsForGroupsL(contactsInGroup, searchResults); } } // ------------------------------------------------------------------------ - // (2)-------------------- Perform a single query search ------------------ - else if (queryList.Count() == 1) + + // -(2)------------------------ Perform a single query search ------------- + if (queryList.Count() == 1) { + TInt mode = aQuery.KeyboardModeL(); + CPsQuery* query = queryList[0]; - // Search results - iHelper->SearchSingleL(*tempSettings, *query, isGroupSearch, - contactsInGroup, aSearchResults, aSearchSeqs); + iFindUtilECE->SetKeyboardMode(mode); + + switch (mode) + { + case EItut: + + PRINT ( _L("Query received is in ITU-T mode") ); + + // Search results + iHelper->SearchITUL(*tempSettings, *query, isGroupSearch, + contactsInGroup, searchResults, searchSeqs); + + break; + + case EQwerty: + + PRINT ( _L("Query received is in QWERTY mode") ); + + // Search results + iHelper->SearchQWERTYL(*tempSettings, *query, isGroupSearch, + contactsInGroup, searchResults, searchSeqs); + + break; + + case EModeUndefined: + + PRINT ( _L("Query received is in Mixed mode. Keyboard swap happened.") ); + + // Search results + iHelper->SearchMixedL(*tempSettings, *query, isGroupSearch, + contactsInGroup, searchResults, searchSeqs); + + break; + } + } // ------------------------------------------------------------------------ - // (3)-------------------- Perform a multi query search ------------------- - else // multiple query + + // -(3)---------------------------- Perform a multi query search ---------- + if (queryList.Count() > 1) // multiple query { PRINT ( _L("Query received is in multiple. Performing a multi search.") ); + TInt mode = aQuery.KeyboardModeL(); + iFindUtilECE->SetKeyboardMode(mode); + + for (int i = 0; i < queryList.Count(); i++) + { + TPtrC queryPtr = queryList[i]->QueryAsStringLC(); + PRINT2 ( _L("Received Query, index = %d; value = %S"), i, &queryPtr ); + CleanupStack::PopAndDestroy(); + } + // Search results iMultiSearchHelper->SearchMultiL(*tempSettings, queryList, isGroupSearch, - contactsInGroup, aSearchResults, aSearchSeqs); + contactsInGroup, searchResults, searchSeqs, + mode); } // ------------------------------------------------------------------------- // Cleanup - - CleanupStack::PopAndDestroy( &queryList ); // ResetAndDestroy - CleanupStack::PopAndDestroy( tempSettings ); - CleanupStack::PopAndDestroy( &groupIdArray ); // Close - CleanupStack::PopAndDestroy( &contactsInGroup ); // Close + delete tempSettings; + tempSettings = NULL; - //__LATENCY_MARKEND ( _L("CPcsAlgorithm2::DoSearchL") ); + groupIdArray.Close(); + contactsInGroup.Close(); + queryList.ResetAndDestroy(); PRINT ( _L("End CPcsAlgorithm2::DoSearchL") ); } @@ -618,49 +524,56 @@ // CPcsAlgorithm2::DoSearchInputL // Search function helper // ---------------------------------------------------------------------------- -void CPcsAlgorithm2::DoSearchInputL(CPsQuery& aQuery, - const TDesC& aData, +void CPcsAlgorithm2::DoSearchInputL(CPsQuery& aQuery, TDesC& aData, RPointerArray& aMatchSet, RArray& aMatchLocation) { - //__LATENCY_MARK ( _L("CPcsAlgorithm2::SearchInputL: ") ); PRINT ( _L("Enter CPcsAlgorithm2::DoSearchInputL") ); // Check if any seperator is there in the query RPointerArray queryList = iMultiSearchHelper->MultiQueryL(aQuery); - CleanupResetAndDestroyPushL( queryList ); // No query if (queryList.Count() == 0) { PRINT ( _L("Query received is empty") ); - CleanupStack::PopAndDestroy( &queryList ); // ResetAndDestroy return; } + RPointerArray convertedQuery; + iMultiSearchHelper->ConvertQueryToListL(queryList, convertedQuery); + // Single query if (queryList.Count() == 1) { - iHelper->SearchMatchSeqL(aQuery, aData, aMatchSet, aMatchLocation); + iHelper->SearchMatchSeqL(convertedQuery[0], aData, aMatchSet, aQuery, + aMatchLocation); + } if (queryList.Count() > 1) // multiple query { PRINT ( _L("Query received is in multiple. Performing a multi search.") ); + for (int i = 0; i < queryList.Count(); i++) + { + TPtrC queryPtr = queryList[i]->QueryAsStringLC(); + PRINT2 ( _L("Rceived Query, index = %d; value = %S"), i, &queryPtr ); + CleanupStack::PopAndDestroy(); + } + // Search results - iMultiSearchHelper->SearchMatchSeqMultiL(queryList, - aData, - aMatchSet, + iMultiSearchHelper->SearchMatchSeqMultiL(queryList, aData, aMatchSet, aMatchLocation); + } // Delete all the query elements - CleanupStack::PopAndDestroy( &queryList ); // ResetAndDestroy + queryList.ResetAndDestroy(); + convertedQuery.ResetAndDestroy(); + PRINT ( _L("End CPcsAlgorithm2::DoSearchInputL") ); - //__LATENCY_MARKEND ( _L("CPcsAlgorithm2::SearchInputL") ); - } // ---------------------------------------------------------------------------- @@ -727,17 +640,21 @@ return; CPcsCache* cache = iPcsCache[dataStoreIndex]; - cache->RemoveAllFromCache(); + TRAPD(err, cache->RemoveAllFromCacheL()); + + if (err != KErrNone) + { + SetCachingError(aDataStore, err); + } } // ---------------------------------------------------------------------------- // CPcsAlgorithm2::GetCacheIndex // Return the cache index for a data store // ---------------------------------------------------------------------------- -TInt CPcsAlgorithm2::GetCacheIndex(const TDesC& aDataStore) +TInt CPcsAlgorithm2::GetCacheIndex(TDesC& aDataStore) { - const TInt pcsCacheCount = iPcsCache.Count(); - for (int i = 0; i GetUriId() == aUriId) { @@ -874,18 +790,17 @@ // CPcsAlgorithm2::FindStoreUri // Checks if this store exists // ---------------------------------------------------------------------------- -TInt CPcsAlgorithm2::FindStoreUri(const TDesC& aDataStore) +TInt CPcsAlgorithm2::FindStoreUri(TDesC& aDataStore) { - const TInt pcsCacheCount = iPcsCache.Count(); - for ( TInt i = 0; i < pcsCacheCount; i++ ) + for (int i = 0; i < iPcsCache.Count(); i++) { - if ( aDataStore.CompareC(*(iPcsCache[i]->GetUri())) == 0 ) + if (aDataStore.CompareC(*(iPcsCache[i]->GetUri())) == 0) { return i; } } - return KErrNotFound; + return -1; } // ---------------------------------------------------------------------------- @@ -893,10 +808,8 @@ // Update caching status // ---------------------------------------------------------------------------- void CPcsAlgorithm2::UpdateCachingStatus(TDesC& aDataStore, TInt aStatus) -{ + { PRINT ( _L("Enter CPcsAlgorithm2::UpdateCachingStatus") ); - PRINT2 ( _L("CPcsAlgorithm2::UpdateCachingStatus: Request received for URI=%S with status=%d"), - &aDataStore, aStatus ); // Handle data store update events if ( aStatus == ECacheUpdateContactRemoved || @@ -909,108 +822,82 @@ // If not a cache update event, then this event is related to the initial // cache construction. - - // Check if any error occurred and update the cache error - if ( aStatus < 0 ) - { - SetCachingError(aDataStore, aStatus); - } - else - { - TInt index = FindStoreUri(aDataStore); - iPcsCache[index]->UpdateCacheStatus(aStatus); - } + TInt index = FindStoreUri(aDataStore); + iPcsCache[index]->UpdateCacheStatus(aStatus); - TCachingStatus status = ECachingNotStarted; - TUint countNotStarted = 0; - TUint countInProgress = 0; - TUint countCompleted = 0; - TUint countCompletedWithErrors = 0; - TInt cacheCount = iPcsCache.Count(); - for ( TInt i = 0; i < cacheCount; i++ ) - { - PRINT3 ( _L("CPcsAlgorithm2::UpdateCachingStatus: URI[%d]=%S, cache status=%d"), - i, &iPcsCache[i]->GetURI(), iPcsCache[i]->GetCacheStatus() ); + // Check if any error occurred + // If so, update the cache status, Set the property and return + if (aStatus < 0) + { + SetCachingError(aDataStore, aStatus); + //return; + } - switch ( iPcsCache[i]->GetCacheStatus() ) + //store the index for firstname and lastname + if (aStatus == ECachingComplete) { - case ECachingNotStarted: - { - countNotStarted++; - break; - } - case ECachingInProgress: - { - countInProgress++; - break; - } - case ECachingComplete: + RArray dataFields; + iPcsCache[index]->GetDataFields(dataFields); + + for (int i = 0; i < dataFields.Count(); i++) { - countCompleted++; - break; - } - case ECachingCompleteWithErrors: - { - countCompletedWithErrors++; - break; - } - default: - { - // Default completed state - countCompleted++; - break; + if (dataFields[i] == R_VPBK_FIELD_TYPE_FIRSTNAME) + { + iFirstNameIndex = i; + } + else if (dataFields[i] == R_VPBK_FIELD_TYPE_LASTNAME) + { + iLastNameIndex = i; + } } } - } - // Calculate cumulative status according to single caches statuses - if ( countCompleted > 0 && ( countCompleted + countNotStarted ) == cacheCount ) - { - // If at least one caching is finished - // set status to ECachingComplete or ECachingCompleteWithErrors - // according to iCacheError - status = ( iCacheError == KErrNone ) ? ECachingComplete : ECachingCompleteWithErrors; - } - else if ( countInProgress > 0 ) - { - // Else if at least one caching is in progress, - // set status to ECachingInProgress - status = ECachingInProgress; - } - else if ( countCompletedWithErrors > 0 ) - { - // Else if at least one caching is completed with errors, - //set status to ECachingCompleteWithErrors - status = ECachingCompleteWithErrors; - } - else - { - // countNotStarted == cacheCount - // status is set to default ECachingNotStarted - } + // No error occurred + TCachingStatus status = ECachingComplete; + TBool atLeastOneStoreCachingCompleteWithErrors(EFalse); + for (TInt i = 0; i < iPcsCache.Count(); i++) + { + if (iPcsCache[i]->GetCacheStatus() == ECachingComplete) + { + continue; + } + else if (iPcsCache[i]->GetCacheStatus() == ECachingCompleteWithErrors) + { + atLeastOneStoreCachingCompleteWithErrors = ETrue; + continue; + } + else + { + status = ECachingInProgress; + break; + } + } - PRINT1 ( _L("CPcsAlgorithm2::UpdateCachingStatus: Cumulative caching status is %d"), - status ); + if (status == ECachingComplete) + { + // See if any error occurred while caching + // If so, change the status to ECachingCompleteWithErrors + if ((iCacheError != KErrNone) || (atLeastOneStoreCachingCompleteWithErrors)) + { + status = ECachingCompleteWithErrors; + } + } // Check if status changed - if ( status != iCacheStatus ) - { - PRINT2 ( _L("CPcsAlgorithm2::UpdateCachingStatus: Cumulative caching changed: %d -> %d"), - iCacheStatus, status ); - + if (status != iCacheStatus) + { iCacheStatus = status; RProperty::Set(KPcsInternalUidCacheStatus, EPsKeyCacheStatus, iCacheStatus ); - } + } - PRINT( _L("End CPcsAlgorithm2::UpdateCachingStatus") ); -} - + PRINT ( _L("End CPcsAlgorithm2::UpdateCachingStatus") ); + } // ---------------------------------------------------------------------------- // CPcsAlgorithm2::SetCachingError // Updates cachinge error // ---------------------------------------------------------------------------- -void CPcsAlgorithm2::SetCachingError(const TDesC& aDataStore, TInt aError) +void CPcsAlgorithm2::SetCachingError(TDesC& aDataStore, TInt aError) { PRINT2 ( _L("SetCachingError::URI %S ERROR %d"), &aDataStore, aError ); @@ -1025,33 +912,25 @@ void CPcsAlgorithm2::GetAllContentsL(const CPsSettings& aSettings, RPointerArray& aResults) { - //__LATENCY_MARK ( _L("CPcsAlgorithm2::GetAllContentsL") ); + __LATENCY_MARK ( _L("CPcsAlgorithm2::GetAllContentsL") ); PRINT ( _L("Enter CPcsAlgorithm2::GetAllContentsL") ); + // Get the data stores + RPointerArray aDataStores; + aSettings.SearchUrisL(aDataStores); + // To hold array of results from different data stores typedef RPointerArray CPSDATA_R_PTR_ARRAY; - RPointerArray searchResultsArr; - CleanupResetAndDestroyPushL( searchResultsArr ); - // TODO: Here's still a potential memory leak if a leave happens. The child - // arrays of searchResultsArr are not Reset in that case. The CPsData objects - // may leak as well. Handling this safely is somewhat complicated because some of - // the CPsData objects may already be transferred to ownership of aResults array - // at the time the leave happens, and those items must not be deleted. - - // Get the data stores - RPointerArray dataStores; - CleanupResetAndDestroyPushL( dataStores ); - aSettings.SearchUrisL(dataStores); + RPointerArray iSearchResultsArr; // Get all contacts for each data store - const TInt dataStoresCount = dataStores.Count(); - for (TInt dsIndex = 0; dsIndex < dataStoresCount; dsIndex++) + for (int dsIndex = 0; dsIndex < aDataStores.Count(); dsIndex++) { RPointerArray *temp = new (ELeave) RPointerArray (); - searchResultsArr.Append(temp); + iSearchResultsArr.Append(temp); - TInt arrayIndex = GetCacheIndex(*(dataStores[dsIndex])); + TInt arrayIndex = GetCacheIndex(*(aDataStores[dsIndex])); if (arrayIndex < 0) { continue; @@ -1059,28 +938,29 @@ CPcsCache* cache = GetCache(arrayIndex); - cache->GetAllContentsL(*(searchResultsArr[dsIndex])); + cache->GetAllContentsL(*(iSearchResultsArr[dsIndex])); } - CleanupStack::PopAndDestroy( &dataStores ); // ResetAndDestroy + aDataStores.ResetAndDestroy(); // Merge the results from different data stores - CPcsAlgorithm2Utils::FormCompleteSearchResultsL(searchResultsArr, aResults); + CPcsAlgorithm2Utils::FormCompleteSearchResultsL(iSearchResultsArr, aResults); // Cleanup the local arrays - const TInt seaerchResultsArrCount = searchResultsArr.Count(); - for (TInt i = 0; i < seaerchResultsArrCount; i++) + for (TInt i = 0; i < iSearchResultsArr.Count(); i++) { - searchResultsArr[i]->Reset(); + iSearchResultsArr[i]->Reset(); + delete iSearchResultsArr[i]; + iSearchResultsArr[i] = NULL; } - CleanupStack::PopAndDestroy( &searchResultsArr ); // ResetAndDestroy + iSearchResultsArr.Reset(); PRINT1 ( _L("Number of results = %d"), aResults.Count() ); PRINT ( _L("End CPcsAlgorithm2::GetAllContentsL") ); - //__LATENCY_MARKEND ( _L("CPcsAlgorithm2::GetAllContentsL") ); + __LATENCY_MARKEND ( _L("CPcsAlgorithm2::GetAllContentsL") ); } // ---------------------------------------------------------------------------- @@ -1097,18 +977,18 @@ // Get the current URIs defined in settings RPointerArray searchUris; - CleanupResetAndDestroyPushL( searchUris ); aSettings.SearchUrisL(searchUris); if (aGroupIdArray.Count() && (searchUris.Count() > aGroupIdArray.Count())) { // There is an error, either there are more than one groups // or the settings contain a combination of group/non-group Uris + searchUris.ResetAndDestroy(); aGroupIdArray.Close(); User::Leave(KErrArgument); } - CleanupStack::PopAndDestroy( &searchUris ); // ResetAndDestroy + searchUris.ResetAndDestroy(); PRINT ( _L("End CPcsAlgorithm2::IsGroupSearchL") ); @@ -1125,16 +1005,15 @@ void CPcsAlgorithm2::ReplaceGroupsUriL(CPsSettings& aSettings) { RPointerArray uri; - CleanupResetAndDestroyPushL( uri ); // Set contacts db uri - HBufC* cntdb = KVPbkDefaultCntDbURI().AllocLC(); - uri.AppendL(cntdb); - CleanupStack::Pop( cntdb ); // ownership transferred + HBufC* cntdb = HBufC::NewL(KBufferMaxLen); + cntdb->Des().Copy(KVPbkDefaultCntDbURI); + uri.Append(cntdb); aSettings.SetSearchUrisL(uri); // Cleanup - CleanupStack::PopAndDestroy( &uri ); // ResetAndDestroy + uri.ResetAndDestroy(); } // ---------------------------------------------------------------------------- @@ -1176,22 +1055,28 @@ { // Clear results array aGroupContactIds.Reset(); - - // Cache Index for group database - TInt cacheIndex = GetCacheIndex(KVPbkDefaultGrpDbURI); - + + // Groups URI + HBufC* groupURI = HBufC::NewL(50); + groupURI->Des().Copy(KVPbkDefaultGrpDbURI); + + // Cache Index + TInt cacheIndex = GetCacheIndex(*groupURI); + + // Cleanup + delete groupURI; + groupURI = NULL; + // Get the groups contact ids if (cacheIndex != -1) { RPointerArray groups; - CleanupClosePushL( groups ); // Get all groups iPcsCache[cacheIndex]->GetAllContentsL(groups); // Get all contacts in group - const TInt groupsCount = groups.Count(); - for (TInt i = 0; i < groupsCount; i++) + for (TInt i = 0; i < groups.Count(); i++) { if (groups[i]->Id() == aGroupId) { @@ -1200,7 +1085,7 @@ } } - CleanupStack::PopAndDestroy( &groups ); // Close + groups.Reset(); } } @@ -1217,7 +1102,8 @@ if (CPcsAlgorithm2Utils::IsGroupUri(aURI)) { // If search in a group uri, use contacts db - arrayIndex = GetCacheIndex(KVPbkDefaultCntDbURI); + TBuf<255> cntdb(KVPbkDefaultCntDbURI); + arrayIndex = GetCacheIndex(cntdb); } else { @@ -1252,7 +1138,8 @@ if (CPcsAlgorithm2Utils::IsGroupUri(aURI)) { // If search in a group uri, use contacts db - arrayIndex = GetCacheIndex(KVPbkDefaultCntDbURI); + TBuf<255> cntdb(KVPbkDefaultCntDbURI); + arrayIndex = GetCacheIndex(cntdb); } else { @@ -1310,8 +1197,7 @@ if (aSortOrder.Count() == mySortOrder.Count()) { TBool same = ETrue; - const TInt mySourtOrderCount = mySortOrder.Count(); - for ( TInt i = 0; i < mySourtOrderCount ; i++ ) + for (int i = 0; i < mySortOrder.Count(); i++) { if (mySortOrder[i] != aSortOrder[i]) { @@ -1344,7 +1230,7 @@ TRAP(err, cache->ResortdataInPoolsL()); if (err != KErrNone) { - PRINT ( _L("CPcsAlgorithm2::ChangeSortOrderL() Set Caching Error ") ); + PRINT ( _L("CPcsAlgorithm1::ChangeSortOrderL() Set Caching Error ") ); SetCachingError(aURI, err); UpdateCachingStatus(aURI, ECachingCompleteWithErrors); return; @@ -1353,11 +1239,22 @@ PRINT ( _L("End CPcsAlgorithm2::ChangeSortOrderL.") ); } +// ---------------------------------------------------------------------------- +// CPcsAlgorithm2::GetAdaptiveGridL +// +// ---------------------------------------------------------------------------- +void CPcsAlgorithm2::GetAdaptiveGridL( const MDesCArray& /*aURIs*/, + const TBool /*aCompanyName*/, + TDes& /*aAdaptiveGrid*/ ) + { + //NOT IMPLEMENTED YET + } + // --------------------------------------------------------------------------------- // Read the persisted sort order from the central repository // Persisted sort order is of form URI Field1 Field2 Field3 .. FieldN (space delimited) // --------------------------------------------------------------------------------- -void CPcsAlgorithm2::ReadSortOrderFromCenRepL(const TDesC& aURI, RArray& aSortOrder) +void CPcsAlgorithm2::ReadSortOrderFromCenRepL(TDesC& aURI, RArray& aSortOrder) { PRINT ( _L("Enter CPcsAlgorithm2::ReadSortOrderFromCenRepL.") ); @@ -1368,9 +1265,8 @@ // Read the sort order from cenrep TBuf str; - for ( TInt i(KCenrepFieldsStartKey); - i < KCenrepFieldsStartKey + KCenrepNumberOfFieldsCount; - i++ ) + for (TInt i(KCenrepFieldsStartKey); i < KCenrepFieldsStartKey + + KCenrepNumberOfFieldsCount; i++) { TInt err = repository->Get(i, str); @@ -1422,19 +1318,18 @@ // Write the sort order into the central repository // Persisted sort order is of form URI Field1 Field2 Field3 .. FieldN (space delimited) // --------------------------------------------------------------------------------- -void CPcsAlgorithm2::WriteSortOrderToCenRepL(const TDesC& aURI, RArray& aSortOrder) +void CPcsAlgorithm2::WriteSortOrderToCenRepL(TDesC& aURI, RArray& aSortOrder) { PRINT ( _L("Enter CPcsAlgorithm2::WriteSortOrderToCenRepL.") ); - CRepository* repository = CRepository::NewLC(KCRUidPSSortOrder); + CRepository *repository = CRepository::NewL(KCRUidPSSortOrder); // Check if there an entry for this URI in cenrep TBuf str; TInt keyIndex = -1; - for ( TInt i(KCenrepFieldsStartKey); - i < KCenrepFieldsStartKey + KCenrepNumberOfFieldsCount; - i++ ) + for (TInt i(KCenrepFieldsStartKey); i < KCenrepFieldsStartKey + + KCenrepNumberOfFieldsCount; i++) { TInt err = repository->Get(i, str); @@ -1464,9 +1359,8 @@ if (keyIndex == -1) { // Find the next free key index - for ( TInt i(KCenrepFieldsStartKey); - i < KCenrepFieldsStartKey + KCenrepNumberOfFieldsCount; - i++ ) + for (TInt i(KCenrepFieldsStartKey); i < KCenrepFieldsStartKey + + KCenrepNumberOfFieldsCount; i++) { TInt err = repository->Get(i, str); @@ -1491,7 +1385,7 @@ } // Persist the sort order - HBufC* str1 = HBufC::NewLC(KCRMaxLen); + HBufC* str1 = HBufC::NewL(KCRMaxLen); TPtr ptr(str1->Des()); // Append the URI @@ -1499,8 +1393,7 @@ ptr.Append(KSpace); // Append the sort order fields - const TInt sortOrderCount = aSortOrder.Count(); - for (TInt j = 0; j < sortOrderCount; j++) + for (int j = 0; j < aSortOrder.Count(); j++) { ptr.AppendNum(aSortOrder[j]); ptr.Append(KSpace); @@ -1511,9 +1404,9 @@ User::LeaveIfError(err); - CleanupStack::PopAndDestroy( str1 ); + delete str1; - CleanupStack::PopAndDestroy( repository ); + delete repository; PRINT ( _L("End CPcsAlgorithm2::WriteSortOrderToCenRepL.") ); } @@ -1534,8 +1427,7 @@ clientData->SetUriL(GetUriForIdL(aPsData.UriId())); // set pointer to the each data element - const TInt dataElementCount = aPsData.DataElementCount(); - for (TInt i = 0; i SetDataL(i, *(aPsData.Data(i))); } @@ -1574,11 +1466,11 @@ default: break; } - - // Increment the relevant counter in P&S by one to signal the clients about - // the cache update. - if( psKey != KErrNotFound ) + + if ( psKey != KErrNotFound ) { + // Increment the relevant counter in P&S by one to signal the clients about + // the cache update. TInt counter( KErrNotFound ); TInt err = RProperty::Get( KPcsInternalUidCacheStatus, psKey, counter ); if ( !err ) @@ -1603,24 +1495,25 @@ PRINT1 ( _L("keyMap ReconstructKeymapL, err =%d"),err ); } - for (TInt index = 0; index < iCacheCount; index++) + for (int index = 0; index < iCacheCount; index++) { CPcsCache* cache = iPcsCache[index]; - HBufC* uri = cache->GetUri(); + HBufC * uri = cache->GetUri(); // Clear the cache - cache->RemoveAllFromCache(); + TRAP(err, cache->RemoveAllFromCacheL()); + PRINT1 ( _L("cache RemoveAllFromCacheL, err =%d"),err ); if (err != KErrNone) { SetCachingError(*uri, err); } //Update the caching status as ECachingInProgress, since now the caching - // would be started again + // would be strated again UpdateCachingStatus(*uri, ECachingInProgress); // Request for data again - TRAP(err, iPsDataPluginInterface->RequestForDataL(*uri)); + TRAP(err, iPsDataPluginInterface->RequestForDataL(*uri)); PRINT1 ( _L("iPsDataPluginInterface->RequestForDataL, err =%d"),err ); if (err != KErrNone) @@ -1630,6 +1523,14 @@ } } +void CPcsAlgorithm2::Converter(const TDesC& aSourStr, TDes& aDestStr) + { + if (iKeyMap) + { + iKeyMap->GetNumericKeyString(aSourStr, aDestStr); + } + } + // --------------------------------------------------------------------------------- // DoLaunchPluginsL. // launch plugins by idle @@ -1660,32 +1561,15 @@ // Initialize cache RPointerArray dataStores; - CleanupClosePushL( dataStores ); iPsDataPluginInterface->GetAllSupportedDataStoresL(dataStores); - const TInt dataStoresCount = dataStores.Count(); - for (TInt dIndex = 0; dIndex < dataStoresCount; dIndex++) + for (int dIndex = 0; dIndex < dataStores.Count(); dIndex++) { AddDataStore(*(dataStores[dIndex])); } - CleanupStack::PopAndDestroy( &dataStores ); // Close - } - -/** -* Returns the Adaptive Grid for one or more URI -* -*/ - void CPcsAlgorithm2::GetAdaptiveGridL( const MDesCArray& /*aURIs*/, - const TBool /*aCompanyName*/, - TDes& /*aAdaptiveGrid*/ ) - { - PRINT ( _L("Enter CPcsAlgorithm2::GetAdaptiveGridL") ); - - - PRINT ( _L("End CPcsAlgorithm2::GetAdaptiveGridL") ); - + dataStores.Reset(); } // End of file diff -r 6b5524b4f673 -r 38bb213f60ba predictivesearch/PcsAlgorithm/Algorithm2/src/CPcsAlgorithm2FilterHelper.cpp --- a/predictivesearch/PcsAlgorithm/Algorithm2/src/CPcsAlgorithm2FilterHelper.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/predictivesearch/PcsAlgorithm/Algorithm2/src/CPcsAlgorithm2FilterHelper.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -20,8 +20,8 @@ #include "CPcsDebug.h" // Compare functions -TInt ComparePsPattern(const TPsPatternDetails& aFirst, - const TPsPatternDetails& aSecond) +TBool ComparePsPattern(const TPsPatternDetails& aFirst, + const TPsPatternDetails& aSecond) { return (CPcsAlgorithm2Utils::MyCompareC(*(aFirst.matchPattern), *(aSecond.matchPattern))); @@ -109,7 +109,7 @@ // CPcsAlgorithm2FilterHelper::AddL // // ---------------------------------------------------------------------------- -void CPcsAlgorithm2FilterHelper::AddL(CPsData* aPsData, RPointerArray& aPatternSequence) +void CPcsAlgorithm2FilterHelper::AddL(CPsData* psData, RPointerArray& aPatternSequence) { if (iSortType == EAlphabetical) { @@ -117,46 +117,44 @@ if (iMatchPatternPools.Count() == 0) { RPointerArray *tempPsDataArray = new (ELeave) RPointerArray (); - CleanupStack::PushL( tempPsDataArray ); - iMatchPatternPools.AppendL(tempPsDataArray); - CleanupStack::Pop( tempPsDataArray ); + iMatchPatternPools.Append(tempPsDataArray); } // Add result to the result set - iMatchPatternPools[0]->AppendL(aPsData); + iMatchPatternPools[0]->Append(psData); // Update the count iResultCount++; // Update sequence list - const TInt patternSequenceCount = aPatternSequence.Count(); - for (TInt i = 0; i < patternSequenceCount; i++) + for (TInt i = 0; i < aPatternSequence.Count(); i++) { - TInt index = FindSequence(*aPatternSequence[i]); + TInt index = FindSequence(aPatternSequence[i]); if (index == KErrNotFound) { // sequence not found, add it to array TPsPatternDetails* temp = new (ELeave) TPsPatternDetails; - CleanupStack::PushL( temp ); - - temp->matchPattern = aPatternSequence[i]->AllocL(); + + TInt len = aPatternSequence[i]->Length(); + temp->matchPattern = HBufC::NewL(len); + temp->matchPattern->Des().Copy(*(aPatternSequence[i])); // First occurence should be -1 for alphabetical sort // and pool index will be 0 as only one pool will be created temp->firstOccurence = -1; temp->poolIndex = 0; - iMatchPatternDetails.AppendL(temp); - CleanupStack::Pop( temp ); + iMatchPatternDetails.Append(temp); } } } else { // PatternBased sort - TInt index = AddToPoolL(aPsData, aPatternSequence); + TInt index = AddToPoolL(psData, aPatternSequence); // Increment the total count iResultCount++; + } } @@ -165,7 +163,7 @@ // // ---------------------------------------------------------------------------- -TInt CPcsAlgorithm2FilterHelper::AddToPoolL(CPsData* aPsData, RPointerArray& aPatternSequence) +TInt CPcsAlgorithm2FilterHelper::AddToPoolL(CPsData* psData, RPointerArray& aPatternSequence) { // Sort the pattern sequence @@ -173,7 +171,7 @@ aPatternSequence.Sort(rule); // Sort rule - TLinearOrder psDataRule(CPcsAlgorithm2Utils::CompareDataBySortOrderL); + TLinearOrder psDataRule(CPcsAlgorithm2Utils::CompareDataBySortOrder); // Search Rule TIdentityRelation identitySearchRule(CPsData::CompareById); @@ -181,13 +179,12 @@ TInt poolItemCount = -1; TInt matchpatterpoolIndexToAppend = -1; - const TInt patternSequenceCount = aPatternSequence.Count(); - for (TInt cnt = 0; cnt < patternSequenceCount; cnt++) + for (TInt cnt = 0; cnt < aPatternSequence.Count(); cnt++) { // Create the pattern for aPatternSequence[cnt] in iMatchPatternDetails // and return the index - TInt indexInMatchPatternDetails = CreateMatchPatternDetailsAndPoolsL(*aPatternSequence[cnt]); + TInt indexInMatchPatternDetails = CreateMatchPatternDetailsAndPoolsL(aPatternSequence[cnt]); //Add the data to the pool the first pattern pool. // The data should be added only once @@ -195,8 +192,8 @@ { TInt poolIndex = iMatchPatternDetails[indexInMatchPatternDetails]->poolIndex; matchpatterpoolIndexToAppend = indexInMatchPatternDetails; - iMatchPatternPools[poolIndex]->InsertInOrderAllowRepeats(aPsData, psDataRule); - TInt findposition = iMatchPatternPools[poolIndex]->Find(aPsData, identitySearchRule); + iMatchPatternPools[poolIndex]->InsertInOrderAllowRepeats(psData, psDataRule); + TInt findposition = iMatchPatternPools[poolIndex]->Find(psData, identitySearchRule); if (findposition != KErrNotFound) { poolItemCount = findposition; @@ -211,7 +208,7 @@ { // Check if aPatternSequence[cnt] is listed in subpatterns of aPatternSequence[0] // If not, then create a sub pattern and apped it to iMatchPatternDetails for aPatternSequence[0] - TInt subSeq = FindSubSequence(*aPatternSequence[cnt], matchpatterpoolIndexToAppend); + TInt subSeq = FindSubSequence(aPatternSequence[cnt], matchpatterpoolIndexToAppend); if (subSeq == KErrNotFound) { //Create the subpattern and append it. @@ -233,7 +230,7 @@ // Returns the index of the sequence in iMatchPatternDetails // ---------------------------------------------------------------------------- -TInt CPcsAlgorithm2FilterHelper::CreateMatchPatternDetailsAndPoolsL(const TDesC& aSeq) +TInt CPcsAlgorithm2FilterHelper::CreateMatchPatternDetailsAndPoolsL(TDesC* aSeq) { TInt indexInMatchPatternDetails = FindSequence(aSeq); @@ -243,7 +240,8 @@ TPsPatternDetails* tempPatternDetailsInstance = new (ELeave) TPsPatternDetails; //TInt len = aPatternSequence[cnt]->Length(); - tempPatternDetailsInstance->matchPattern = aSeq.Alloc(); + tempPatternDetailsInstance->matchPattern = HBufC::NewL(aSeq->Length()); + tempPatternDetailsInstance->matchPattern->Des().Copy(*(aSeq)); tempPatternDetailsInstance->firstOccurence = -1; //RAVIKIRAN // Pools doesn't exist for this sequence.. @@ -284,8 +282,7 @@ if (iSortType == EAlphabetical) { // Return the results stored in single array - const TInt cnt = iMatchPatternPools[0]->Count(); - for (TInt i = 0; i < cnt; i++) + for (TInt i = 0; i < iMatchPatternPools[0]->Count(); i++) { aSearchResults.Append((*(iMatchPatternPools[0]))[i]); } @@ -296,21 +293,18 @@ else { TInt firstOccurenceTracker = 0; - const TInt matchPatternDetailsCount = iMatchPatternDetails.Count(); - for (TInt i = 0; i < matchPatternDetailsCount; i++) + for (TInt i = 0; i < iMatchPatternDetails.Count(); i++) { // Get the mapping pool index for this sequence TInt index = iMatchPatternDetails[i]->poolIndex; TInt j = 0; - const TInt poolCount = iMatchPatternPools[index]->Count(); - for (; j < poolCount; j++) + for (; j < iMatchPatternPools[index]->Count(); j++) { aSearchResults.Append((*(iMatchPatternPools[index]))[j]); } // Check the sub patterns - const TInt subPatternArrayCount = iMatchPatternDetails[i]->subPatternArray.Count(); - for (TInt k = 0; k < subPatternArrayCount; k++) + for (TInt k = 0; k < iMatchPatternDetails[i]->subPatternArray.Count(); k++) { HBufC* temporseq = iMatchPatternDetails[i]->subPatternArray[k]->matchPattern; TRAP_IGNORE( UpdateForSubSequencesL( *temporseq, @@ -340,8 +334,7 @@ TLinearOrder rule(ComparePsPattern); iMatchPatternDetails.Sort(rule); - const TInt matchPatternDetailsCount = iMatchPatternDetails.Count(); - for (TInt i = 0; i < matchPatternDetailsCount; i++) + for (TInt i = 0; i < iMatchPatternDetails.Count(); i++) { CPsPattern *tempPattern = CPsPattern::NewL(); @@ -358,14 +351,17 @@ // Searches for for aSeq in iMatchPatternDetails and returns index // where input sequence is found. Returns -1 if not found // ---------------------------------------------------------------------------- -TInt CPcsAlgorithm2FilterHelper::FindSequence(const TDesC& aSeq) +TInt CPcsAlgorithm2FilterHelper::FindSequence(TDesC* aSeq) { + TBuf<50> seqBuf; + seqBuf.Append(*aSeq); + TInt j = 0; - const TInt matchPatternDetailsCount = iMatchPatternDetails.Count(); - for (; j < matchPatternDetailsCount; j++) + for (; j < iMatchPatternDetails.Count(); j++) { - const TDesC& matchPattern = *(iMatchPatternDetails[j]->matchPattern); - if ( CPcsAlgorithm2Utils::MyCompareC(aSeq, matchPattern) == 0 ) + TBuf<50> matchPatternBuf; + matchPatternBuf.Copy((iMatchPatternDetails[j]->matchPattern->Des())); + if (seqBuf == matchPatternBuf) break; } @@ -381,14 +377,17 @@ // and returns index where input sequence is found. // Returns -1 if not found // ---------------------------------------------------------------------------- -TInt CPcsAlgorithm2FilterHelper::FindSubSequence(const TDesC& aSeq, TInt aPatternIndex) +TInt CPcsAlgorithm2FilterHelper::FindSubSequence(TDesC* aSeq, TInt aPatternIndex) { + TBuf<50> seqBuf; + seqBuf.Append(*aSeq); + TInt j = 0; - const TInt subPatternArraycount = iMatchPatternDetails[aPatternIndex]->subPatternArray.Count(); - for (; j < subPatternArraycount; j++) + for (; j < iMatchPatternDetails[aPatternIndex]->subPatternArray.Count(); j++) { - const TDesC& matchPattern = *(iMatchPatternDetails[aPatternIndex]->subPatternArray[j]->matchPattern); - if ( CPcsAlgorithm2Utils::MyCompareC(aSeq, matchPattern) == 0 ) + TBuf<50> matchPatternBuf; + matchPatternBuf.Copy((iMatchPatternDetails[aPatternIndex]->subPatternArray[j]->matchPattern->Des())); + if (seqBuf == matchPatternBuf) break; } @@ -411,13 +410,13 @@ // then, firstOccurence of all substring sequences ("A", "AB", "ABC") // in iMatchPatternDetails will be set to 2 // ---------------------------------------------------------------------------- -void CPcsAlgorithm2FilterHelper::UpdateForSubSequencesL(const TDesC& aSeq, TInt aFirstOccrVal) +void CPcsAlgorithm2FilterHelper::UpdateForSubSequencesL(TDesC& aSeq, TInt aFirstOccrVal) { - TPtrC tempSequence; - for ( TInt i = 1; i <= aSeq.Length(); i++ ) + HBufC* tempSequence = HBufC::NewL(aSeq.Length() + 1); + for (TInt i = 0; i < aSeq.Length(); i++) { // Get the next substring in tempSequence - tempSequence.Set( aSeq.Left(i) ); + tempSequence->Des().Append(aSeq[i]); // Find if this sequence exist in iMatchPatternDetails TInt patternIndex = FindSequence(tempSequence); @@ -429,6 +428,11 @@ } } + delete tempSequence; + tempSequence = NULL; + + return; + } // END OF FILE diff -r 6b5524b4f673 -r 38bb213f60ba predictivesearch/PcsAlgorithm/Algorithm2/src/CPcsAlgorithm2Helper.cpp --- a/predictivesearch/PcsAlgorithm/Algorithm2/src/CPcsAlgorithm2Helper.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/predictivesearch/PcsAlgorithm/Algorithm2/src/CPcsAlgorithm2Helper.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -16,7 +16,7 @@ */ // INCLUDES -#include +#include #include "FindUtilChineseECE.h" #include "CPcsAlgorithm2.h" #include "CPcsAlgorithm2Helper.h" @@ -25,11 +25,22 @@ #include "CPcsCache.h" #include "CPcsKeyMap.h" #include "CPsData.h" +#include "CWords.h" #include "CPsQuery.h" #include "CPsQueryItem.h" #include "CPsDataPluginInterface.h" #include "CPcsPoolElement.h" +// Compare functions +TBool Compare1(const TDesC& aFirst, const TDesC& aSecond) + { + return aFirst == aSecond; + } + +TBool Compare2(const TDesC& aFirst, const TDesC& aSecond) + { + return CPcsAlgorithm2Utils::MyCompareC(aFirst, aSecond); + } // ============================== MEMBER FUNCTIONS ============================ @@ -59,7 +70,6 @@ { PRINT ( _L("Enter CPcsAlgorithm2Helper::CPcsAlgorithm2") ); PRINT ( _L("End CPcsAlgorithm2Helper::CPcsAlgorithm2") ); - iMaxCount = 0; } // ---------------------------------------------------------------------------- @@ -71,18 +81,13 @@ PRINT ( _L("Enter CPcsAlgorithm2Helper::ConstructL") ); iAlgorithm = aAlgorithm; - iKeyMap = iAlgorithm->GetKeyMap(); + keyMap = iAlgorithm->GetKeyMap(); - iPbkSettings = PbkGlobalSettingFactory::CreatePersistentSettingL(); - iPbkSettings->ConnectL( MPbkGlobalSetting::EGeneralSettingCategory ); - iPbkSettings->RegisterObserverL( this ); - UpdateNameOrderL(); - PRINT ( _L("End CPcsAlgorithm2Helper::ConstructL") ); } // ---------------------------------------------------------------------------- -// CPcsAlgorithm2Helper::~CPcsAlgorithm2Helper +// CPcsAlgorithm2Helper::CPcsAlgorithm2Helper // Destructor // ---------------------------------------------------------------------------- CPcsAlgorithm2Helper::~CPcsAlgorithm2Helper() @@ -93,323 +98,798 @@ } // ---------------------------------------------------------------------------- -// CPcsAlgorithm2Helper::SearchSingleL +// CPcsAlgorithm2Helper::SearchMixedL // Search function for input with both ITU-T and QWERTY mode // ---------------------------------------------------------------------------- -void CPcsAlgorithm2Helper::SearchSingleL(const CPsSettings& aSettings, - CPsQuery& aPsQuery, - TBool aIsSearchInGroup, - const RArray& aContactsInGroup, - RPointerArray& aSearchResults, - RPointerArray& aSearchSeqs) +void CPcsAlgorithm2Helper::SearchMixedL(const CPsSettings& aSettings, + CPsQuery& aPsQuery, TBool isSearchInGroup, + RArray& aContactsInGroup, + RPointerArray& searchResults, + RPointerArray& searchSeqs) { - PRINT ( _L("Enter CPcsAlgorithm2Helper::SearchSingleL") ); + __LATENCY_MARK ( _L("CPcsAlgorithm2Helper::SearchMixedL") ); - //__LATENCY_MARK ( _L("CPcsAlgorithm2Helper::SearchSingleL") ); + PRINT ( _L("Enter CPcsAlgorithm2Helper::SearchMixedL") ); - iMaxCount = aSettings.MaxResults(); - // Create filtering helper for the required sort type TSortType sortType = aSettings.GetSortType(); CPcsAlgorithm2FilterHelper* filterHelper = CPcsAlgorithm2FilterHelper::NewL(sortType); - CleanupStack::PushL( filterHelper ); - - // Search from cache based on first character - const CPsQueryItem& firstCharItem = aPsQuery.GetItemAtL(0); - TInt cachePoolId = iKeyMap->PoolIdForCharacter( firstCharItem.Character(), firstCharItem.Mode() ); // Reset the result set array for new search iSearchResultsArr.ResetAndDestroy(); // Get the data stores - RPointerArray dataStores; - CleanupResetAndDestroyPushL( dataStores ); - aSettings.SearchUrisL(dataStores); + RPointerArray aDataStores; + aSettings.SearchUrisL(aDataStores); // Get the required display fields from the client RArray requiredDataFields; - CleanupClosePushL( requiredDataFields ); aSettings.DisplayFieldsL(requiredDataFields); + + // Search from cache based on first character + const CPsQueryItem& firstCharItem = aPsQuery.GetItemAtL(0); + TInt numValue = keyMap->PoolIdForCharacter( firstCharItem.Character() ); // Perform search for each required data store RPointerArray elements; - CleanupClosePushL( elements ); - const TInt dataStoresCount = dataStores.Count(); - for (TInt dsIndex = 0; dsIndex < dataStoresCount; dsIndex++) + for (int dsIndex = 0; dsIndex < aDataStores.Count(); dsIndex++) { - RPointerArray* temp = new (ELeave) RPointerArray (); - CleanupStack::PushL( temp ); - iSearchResultsArr.AppendL( temp ); - CleanupStack::Pop( temp ); + + RPointerArray *temp = new (ELeave) RPointerArray (); + iSearchResultsArr.Append(temp); // Get the contents for this data store - TInt arrayIndex = iAlgorithm->GetCacheIndex(*(dataStores[dsIndex])); + TInt arrayIndex = iAlgorithm->GetCacheIndex(*(aDataStores[dsIndex])); if (arrayIndex < 0) { continue; } CPcsCache* cache = iAlgorithm->GetCache(arrayIndex); - cache->GetContactsForKeyL(cachePoolId, elements); - - // Get the supported data fields for this data store - RArray supportedDataFields; - CleanupClosePushL( supportedDataFields ); - cache->GetDataFields(supportedDataFields); - - // Get the filtered data fields for this data store - TUint8 filteredDataMatch = CPcsAlgorithm2Utils::FilterDataFieldsL(requiredDataFields, - supportedDataFields); + cache->GetContactsForKeyL(numValue, elements); // Perform filtering - FilterResultsSingleL(filterHelper, - elements, - aPsQuery, - filteredDataMatch, - aIsSearchInGroup, - aContactsInGroup); + FilterResultsMixedL(filterHelper, elements, aPsQuery, + isSearchInGroup, aContactsInGroup); - // If alphabetical sorting, get the results for this datastore + // If alphabetical sorting, get the results for this datastore if (sortType == EAlphabetical) { filterHelper->GetResults(*(iSearchResultsArr[dsIndex])); } elements.Reset(); - CleanupStack::PopAndDestroy( &supportedDataFields ); // Close + } + + aDataStores.ResetAndDestroy(); + requiredDataFields.Reset(); + + // If alphabetical sorting, merge the result sets of all datastores + if (sortType == EAlphabetical) + { + // Form the complete searchResults array + CPcsAlgorithm2Utils::FormCompleteSearchResultsL(iSearchResultsArr, + searchResults); + } + else + { + // Results are already sorted pattern based + filterHelper->GetResults(searchResults); + } + + // Get the sorted match sequence list + filterHelper->GetPatternsL(searchSeqs); + + PRINT1 ( _L("Number of search results = %d"), searchResults.Count() ); + + // Cleanup + for (TInt i = 0; i < iSearchResultsArr.Count(); i++) + { + iSearchResultsArr[i]->Reset(); + delete iSearchResultsArr[i]; + iSearchResultsArr[i] = NULL; } - CleanupStack::PopAndDestroy( &elements ); // Close - CleanupStack::PopAndDestroy( &requiredDataFields ); // Close - CleanupStack::PopAndDestroy( &dataStores ); // ResetAndDestroy + iSearchResultsArr.Reset(); + + CleanupStack::PopAndDestroy(); // query + delete filterHelper; + + PRINT ( _L("End CPcsAlgorithm2Helper::SearchMixedL") ); + + __LATENCY_MARKEND ( _L("CPcsAlgorithm2Helper::SearchMixedL") ); + } + +// ---------------------------------------------------------------------------- +// CPcsAlgorithm2Helper::SearchITUL +// Search function for ITU-T style +// ---------------------------------------------------------------------------- +void CPcsAlgorithm2Helper::SearchITUL(const CPsSettings& aSettings, + CPsQuery& aPsQuery, TBool isSearchInGroup, + RArray& aContactsInGroup, + RPointerArray& searchResults, + RPointerArray& searchSeqs) + { + __LATENCY_MARK ( _L("CPcsAlgorithm2Helper::SearchITUL") ); + + PRINT ( _L("Enter CPcsAlgorithm2Helper::SearchITUL") ); + + // Create filtering helper for the required sort type + TSortType sortType = aSettings.GetSortType(); + CPcsAlgorithm2FilterHelper* filterHelper = + CPcsAlgorithm2FilterHelper::NewL(sortType); + + // Convert the query to string + TPtrC queryPtr = aPsQuery.QueryAsStringLC(); + + // Search from cache based on first character + const CPsQueryItem& firstCharItem = aPsQuery.GetItemAtL(0); + TInt numValue = keyMap->PoolIdForCharacter( firstCharItem.Character() ); + + // Reset the result set array for new search + iSearchResultsArr.ResetAndDestroy(); + + // Get the data stores + RPointerArray aDataStores; + aSettings.SearchUrisL(aDataStores); + + // Get the required display fields from the client + RArray requiredDataFields; + aSettings.DisplayFieldsL(requiredDataFields); + + // Perform search for each required data store + RPointerArray elements; + + for (int dsIndex = 0; dsIndex < aDataStores.Count(); dsIndex++) + { + RPointerArray *temp = new (ELeave) RPointerArray (); + iSearchResultsArr.Append(temp); + + // Get the contents for this data store + TInt arrayIndex = iAlgorithm->GetCacheIndex(*(aDataStores[dsIndex])); + if (arrayIndex < 0) + { + continue; + } + CPcsCache* cache = iAlgorithm->GetCache(arrayIndex); + cache->GetContactsForKeyL(numValue, elements); + + // Perform filtering + FilterResultsL(filterHelper, elements, queryPtr, + isSearchInGroup, aContactsInGroup); + + // If alphabetical sorting, get the results for this datastore + if (sortType == EAlphabetical) + { + filterHelper->GetResults(*(iSearchResultsArr[dsIndex])); + } + + elements.Reset(); + } + + aDataStores.ResetAndDestroy(); + requiredDataFields.Reset(); + + // If alphabetical sorting, merge the result sets of all datastores + if (sortType == EAlphabetical) + { + // Merge the result sets of individual datastores alphabetically + CPcsAlgorithm2Utils::FormCompleteSearchResultsL(iSearchResultsArr, + searchResults); + } + else + { + // Results are already sorted pattern based + filterHelper->GetResults(searchResults); + } + + // Get the sorted match sequence list + filterHelper->GetPatternsL(searchSeqs); + + PRINT1 ( _L("Number of search results = %d"), searchResults.Count() ); + + // Cleanup + for (TInt i = 0; i < iSearchResultsArr.Count(); i++) + { + iSearchResultsArr[i]->Reset(); + delete iSearchResultsArr[i]; + iSearchResultsArr[i] = NULL; + } + iSearchResultsArr.Reset(); + + CleanupStack::PopAndDestroy(); // query + delete filterHelper; + + PRINT ( _L("End CPcsAlgorithm2Helper::SearchITUL") ); + __LATENCY_MARKEND ( _L("CPcsAlgorithm2Helper::SearchITUL") ); + } + +// ---------------------------------------------------------------------------- +// CPcsAlgorithm2Helper::SearchQWERTYL +// Search function for QWERTY style +// ---------------------------------------------------------------------------- +void CPcsAlgorithm2Helper::SearchQWERTYL(const CPsSettings& aSettings, + CPsQuery& aPsQuery, TBool isSearchInGroup, + RArray& aContactsInGroup, + RPointerArray& searchResults, + RPointerArray& searchSeqs) + { + __LATENCY_MARK ( _L("CPcsAlgorithm2Helper::SearchQWERTYL") ); + PRINT ( _L("Enter CPcsAlgorithm2Helper::SearchQWERTYL") ); + + // te filtering helper for the required sort type + TSortType sortType = aSettings.GetSortType(); + CPcsAlgorithm2FilterHelper* filterHelper = + CPcsAlgorithm2FilterHelper::NewL(sortType); + + // Convert the query to string + TPtrC queryPtr = aPsQuery.QueryAsStringLC(); + + // Search from cache based on first character + const CPsQueryItem& firstCharItem = aPsQuery.GetItemAtL(0); + TInt numValue = keyMap->PoolIdForCharacter( firstCharItem.Character() ); + + // Reset the result set array for new search + iSearchResultsArr.ResetAndDestroy(); + + // Get the data stores + RPointerArray aDataStores; + aSettings.SearchUrisL(aDataStores); + + // Get the required display fields from the client + RArray requiredDataFields; + aSettings.DisplayFieldsL(requiredDataFields); + + // Perform search for each of the required data stores + RPointerArray elements; + + for (int dsIndex = 0; dsIndex < aDataStores.Count(); dsIndex++) + { + + RPointerArray *temp = new (ELeave) RPointerArray (); + iSearchResultsArr.Append(temp); + + // Get the contents for this data store + TInt arrayIndex = iAlgorithm->GetCacheIndex(*(aDataStores[dsIndex])); + if (arrayIndex < 0) + { + continue; + } + CPcsCache* cache = iAlgorithm->GetCache(arrayIndex); + cache->GetContactsForKeyL(numValue, elements); + + // Perform filtering + FilterResultsQwertyL(filterHelper, elements, queryPtr, + isSearchInGroup, aContactsInGroup); + + // If alphabetical sorting, get the results for this datastore + if (sortType == EAlphabetical) + { + filterHelper->GetResults(*(iSearchResultsArr[dsIndex])); + } + + elements.Reset(); + } + aDataStores.ResetAndDestroy(); + requiredDataFields.Reset(); // If alphabetical sorting, merge the result sets of all datastores if (sortType == EAlphabetical) { // Form the complete searchResults array CPcsAlgorithm2Utils::FormCompleteSearchResultsL(iSearchResultsArr, - aSearchResults); + searchResults); } else { // Results are already sorted pattern based - filterHelper->GetResults(aSearchResults); + filterHelper->GetResults(searchResults); } // Get the sorted match sequence list - filterHelper->GetPatternsL(aSearchSeqs); - - PRINT1 ( _L("Number of search results = %d"), aSearchResults.Count() ); + filterHelper->GetPatternsL(searchSeqs); - // Cleanup - const TInt searchResultsArrCount = iSearchResultsArr.Count(); - for (TInt i = 0; i < searchResultsArrCount; i++) + PRINT1 ( _L("Number of search results = %d"), searchResults.Count() ); + + // Cleanup + for (TInt i = 0; i < iSearchResultsArr.Count(); i++) { iSearchResultsArr[i]->Reset(); + delete iSearchResultsArr[i]; + iSearchResultsArr[i] = NULL; } - iSearchResultsArr.ResetAndDestroy(); + iSearchResultsArr.Reset(); - CleanupStack::PopAndDestroy( filterHelper ); + CleanupStack::PopAndDestroy(); // query + delete filterHelper; - //__LATENCY_MARKEND ( _L("CPcsAlgorithm2Helper::SearchSingleL") ); - - PRINT ( _L("End CPcsAlgorithm2Helper::SearchSingleL") ); + PRINT ( _L("End CPcsAlgorithm2Helper::SearchQWERTYL") ); + __LATENCY_MARKEND ( _L("CPcsAlgorithm2Helper::SearchQWERTYL") ); } // ---------------------------------------------------------------------------- // CPcsAlgorithm2Helper::SearchMatchSeqL -// Function to search matching sequences in the input text +// Funciton to search matching sequences in the input text // ---------------------------------------------------------------------------- -void CPcsAlgorithm2Helper::SearchMatchSeqL(CPsQuery& aPsQuery, - const TDesC& aData, - RPointerArray& aMatchSet, - RArray& aMatchLocation ) +void CPcsAlgorithm2Helper::SearchMatchSeqL(HBufC* /*aQuery*/, TDesC& aData, + RPointerArray& /*aMatchSet*/, + CPsQuery& /*aPsQuery*/, + RArray& aMatchLocation) { PRINT ( _L("Enter CPcsAlgorithm2Helper::SearchMatchSeqL") ); - RArray matchPos; - CleanupClosePushL( matchPos ); - RArray matchLen; - CleanupClosePushL( matchLen ); - if ( iAlgorithm->FindUtilECE()->MatchRefineL( aData, aPsQuery, matchPos, matchLen, ETrue ) ) + // Convert the data into words + TLex lex(aData); + + // First word + TPtrC token = lex.NextToken(); + + TInt beg = lex.Offset() - token.Length(); // start index of match sequence + + // Search thru multiple words + while (token.Length() != 0) { - ASSERT( matchPos.Count() == matchLen.Count() ); - const TInt matchPosCount = matchPos.Count(); - for ( TInt i = 0 ; i < matchPosCount ; ++i ) - { - TPsMatchLocation tempLocation; - - // check for directionality of the text - TBool found(EFalse); - TPtrC matchingPart = aData.Mid( matchPos[i], matchLen[i] ); - TBidiText::TDirectionality dir = TBidiText::TextDirectionality(matchingPart, &found); - - tempLocation.index = matchPos[i]; - tempLocation.length = matchLen[i]; - tempLocation.direction = dir; - - // Add the match location to the data structure array - aMatchLocation.Append(tempLocation); - - // Add the matched sequence to set, not allowing duplicates - CPcsAlgorithm2Utils::AppendMatchToSeqL( aMatchSet, matchingPart ); - } + TPsMatchLocation tempLocation; + + // check for directionality of the text + TBool found(EFalse); + TBidiText::TDirectionality dir = TBidiText::TextDirectionality(token, &found); + + tempLocation.index = beg; + tempLocation.length = 0; + tempLocation.direction = dir; + + // Add the match location to the data structure array + aMatchLocation.Append(tempLocation); + + // Next word + token.Set(lex.NextToken()); + beg = lex.Offset() - token.Length(); // start index of next word } - CleanupStack::PopAndDestroy( &matchLen ); - CleanupStack::PopAndDestroy( &matchPos ); PRINT ( _L("End CPcsAlgorithm2Helper::SearchMatchSeqL") ); } // ---------------------------------------------------------------------------- -// CPcsAlgorithm2Helper::FilterResultsSingleL +// CPcsAlgorithm2::FilterResultsL // Subset search function // ---------------------------------------------------------------------------- -void CPcsAlgorithm2Helper::FilterResultsSingleL(CPcsAlgorithm2FilterHelper* aAlgorithmFilterHelper, - RPointerArray& aSearchSet, - CPsQuery& aSearchQuery, - TUint8 aFilteredDataMatch, - TBool aIsSearchInGroup, - const RArray& aContactsInGroup) +void CPcsAlgorithm2Helper::FilterResultsL(CPcsAlgorithm2FilterHelper* aAlgorithmFilterHelper, + RPointerArray& searchSet, + const TDesC& searchQuery, + TBool isSearchInGroup, + RArray& aContactsInGroup) { - PRINT ( _L("Enter CPcsAlgorithm2::FilterResultsSingleL") ); + __LATENCY_MARK ( _L("CPcsAlgorithm2Helper::FilterResultsL") ); + PRINT ( _L("Enter CPcsAlgorithm2Helper::FilterResultsL") ); - TInt maxcount = 0; - CFindUtilChineseECE* pFindUtilEce = iAlgorithm->FindUtilECE(); + // Convert the search condition to numeric key string + TBuf tmpSearchQuery; + keyMap->GetNumericKeyString(searchQuery, tmpSearchQuery); + + //Holds the first char of first name of a contact + TBuf<10> firstChar; - // Assume that all the elements is aSearchSet are from the same database. - // Get firstname index and lastname index for that database. - // If both are found, then name fields are matched a bit differently compared - // to rest of the fields. - TInt fnIndex( KErrNotFound ); - TInt lnIndex( KErrNotFound ); - TBool fullNameSearch( EFalse ); - if ( aSearchSet.Count() ) + PRINT2 ( _L("Numeric Key String for %S = %S"), &searchQuery, &tmpSearchQuery ); + + // Parse thru each search set elements and filter the results + for (int index = 0; index < searchSet.Count(); index++) { - TInt dbUriId = aSearchSet[0]->GetPsData()->UriId(); - CPcsCache* cache = iAlgorithm->GetCache( dbUriId ); - fnIndex = cache->GetFirstNameIndex(); - lnIndex = cache->GetLastNameIndex(); - - // Ensure that firstname and lastname are among the fields to be searched - TUint8 fnBitmask = 1 << fnIndex; - TUint8 lnBitmask = 1 << lnIndex; - if ( (aFilteredDataMatch & fnBitmask) && - (aFilteredDataMatch & lnBitmask) ) - { - fullNameSearch = ETrue; - // Remove firstname and lastname from the set of fields to search - // so that they will not be searched twice. - aFilteredDataMatch &= ~fnBitmask; - aFilteredDataMatch &= ~lnBitmask; - } - } - - // Parse thru each search set elements and filter the results - const TInt searchSetCount = aSearchSet.Count(); - for (TInt index = 0; index < searchSetCount; index++) - { - CPcsPoolElement* poolElement = static_cast (aSearchSet[index]); + CPcsPoolElement* poolElement = static_cast (searchSet[index]); CPsData* psData = poolElement->GetPsData(); psData->ClearDataMatches(); + RPointerArray tempMatchSeq; - // Skip the contact if we are doing a group search and contact doesn't belong to the group - if ( aIsSearchInGroup && - aContactsInGroup.Find( psData->Id() ) == KErrNotFound ) + // Search thru multiple words + TBuf token; + TBuf firstName; + TBuf lastName; + lastName.Append(psData->Data(iAlgorithm->GetLastNameIndex())->Des()); + firstName.Append(psData->Data(iAlgorithm->GetFirstNameIndex())->Des()); + + CFindUtilChineseECE* pFindUtilEce = iAlgorithm->FindUtilECE(); + TBool matched = 0; + + // If has Chinese word and the first name doesn't start with Chinese character, then should add a space + // before the first name, otherwise intitial letter searching will not function + if( pFindUtilEce->IsChineseWord(lastName) || pFindUtilEce->IsChineseWord(firstName)) { - continue; - } - - // Buffer for matched character sequence. Currently, we don't return - // accurate pattern but just first character from the matching point. - // Current clients don't actually use this data for anything. - TBuf<1> matchingData; - - TBool matched = EFalse; + token.Append(lastName); + if (firstName.Length()) + { + firstChar.Zero(); + firstChar.Append(firstName[0]); + if (!pFindUtilEce->IsChineseWord(firstChar) ) + { + token.Append(KSpace); + } + token.Append(firstName); + } + + if (token.Length() != 0) + { + matched = iAlgorithm->FindUtil()->Interface()-> + MatchRefineL(token, tmpSearchQuery, ECustomConverter, iAlgorithm); - // Parse thru each data field and filter the results - // ------------------------------------------------- - - // Name fields are handled separately to enable searching with query like - // "LastnameFirstname". Searching fullname by query string - // only for the pool elements matching with the firstname or lastname - if ( fullNameSearch && ( poolElement->IsDataMatch(fnIndex) || - poolElement->IsDataMatch(lnIndex) )) + if (matched) + { + psData->SetDataMatch(iAlgorithm->GetLastNameIndex()); + psData->SetDataMatch(iAlgorithm->GetFirstNameIndex()); + } + } + } + else { - HBufC* fullName = CreateNameBufLC( *psData, fnIndex, lnIndex ); + // If contact name only has western word, then should send + // "first name","last name" and "last name + first name" to FindUtil to do the search + const TInt lastnameLen = lastName.Length(); + const TInt firstnameLen = firstName.Length(); + if(lastnameLen) + { + matched = iAlgorithm->FindUtil()->Interface()-> + MatchRefineL(lastName, tmpSearchQuery, ECustomConverter, iAlgorithm); - // FindUtil can take care of matching queries like "Firstname", "Lastname", - // and "LastnameFirstname". - matched = pFindUtilEce->MatchRefineL( *fullName, aSearchQuery ); - if (matched) + if (matched) + { + psData->SetDataMatch(iAlgorithm->GetLastNameIndex()); + } + } + + if(!matched && firstnameLen) { - matchingData = fullName->Left(1); - psData->SetDataMatch( fnIndex ); - psData->SetDataMatch( lnIndex ); + matched = iAlgorithm->FindUtil()->Interface()-> + MatchRefineL(firstName, tmpSearchQuery, ECustomConverter, iAlgorithm); + + if (matched) + { + psData->SetDataMatch(iAlgorithm->GetFirstNameIndex()); + } } - CleanupStack::PopAndDestroy( fullName ); - } + token.Append(lastName); + token.Append(firstName); + if (!matched && lastnameLen && firstnameLen) + { + matched = iAlgorithm->FindUtil()->Interface()-> + MatchRefineL(token, tmpSearchQuery, ECustomConverter, iAlgorithm); - // Find from the rest of the fields if no match found so far. - // Name fields are already removed from aFilteredDataMatch if we did separate full name search. - const TInt dataElementCount = psData->DataElementCount(); - for ( TInt dataIndex = 0; dataIndex < dataElementCount && !matched ; dataIndex++ ) - { - // Filter off data fields not required in search - TUint8 bitIndex = 1 << dataIndex; - TUint8 filter = bitIndex & aFilteredDataMatch; - if ( filter == 0x0 ) - { - // Move to next data - continue; - } - - if ( poolElement->IsDataMatch(dataIndex) ) - { - TPtrC fieldData( *psData->Data(dataIndex) ); - matched = pFindUtilEce->MatchRefineL( fieldData, aSearchQuery ); if (matched) { - matchingData = fieldData.Left(1); - psData->SetDataMatch( dataIndex ); + psData->SetDataMatch(iAlgorithm->GetLastNameIndex()); + psData->SetDataMatch(iAlgorithm->GetFirstNameIndex()); } } } + if (matched) + { + // Extract matched character sequence, don't need to be accurate for Chinese variant + const TInt len = 1; + HBufC* seq = HBufC::NewLC(len); + *seq = token.Mid(0, len); + seq->Des().UpperCase(); - // Add to results if match is found - if ( matched ) + TIdentityRelation rule(Compare1); + if (tempMatchSeq.Find(seq, rule) == KErrNotFound) + { + tempMatchSeq.Append(seq); + CleanupStack::Pop(); + } + else + { + CleanupStack::PopAndDestroy(); + } + + + // Add the result + if (isSearchInGroup) + { + if (aContactsInGroup.Find(psData->Id()) != KErrNotFound) + { + aAlgorithmFilterHelper->AddL(psData, tempMatchSeq); + } + } + else + { + aAlgorithmFilterHelper->AddL(psData, tempMatchSeq); + } + } + + // Cleanup the match sequence array as + // they are stored in pattern details structure + tempMatchSeq.ResetAndDestroy(); + } + + PRINT ( _L("End CPcsAlgorithm2Helper::FilterResultsL") ); + __LATENCY_MARKEND ( _L("CPcsAlgorithm2Helper::FilterResultsL") ); + } + +// ---------------------------------------------------------------------------- +// CPcsAlgorithm2Helper::FilterResultsQwertyL +// Subset search function +// ---------------------------------------------------------------------------- +void CPcsAlgorithm2Helper::FilterResultsQwertyL(CPcsAlgorithm2FilterHelper* aAlgorithmFilterHelper, + RPointerArray& searchSet, + const TDesC& searchQuery,TBool isSearchInGroup, + RArray& aContactsInGroup) + { + PRINT ( _L("Enter CPcsAlgorithm2::FilterResultsQwertyL") ); + + TBuf<50> tmpSearchQuery = searchQuery; + tmpSearchQuery.LowerCase(); + + //Holds the first char of first name of a contact + TBuf<10> firstChar; + + // Parse thru each search set elements and filter the results + for (int index = 0; index < searchSet.Count(); index++) + { + CPcsPoolElement* poolElement = static_cast (searchSet[index]); + CPsData* psData = poolElement->GetPsData(); + psData->ClearDataMatches(); + RPointerArray tempMatchSeq; + + // Parse thru each data and filter the results + TBuf token; + TBuf firstName; + TBuf lastName; + lastName.Append(psData->Data(iAlgorithm->GetLastNameIndex())->Des()); + firstName.Append(psData->Data(iAlgorithm->GetFirstNameIndex())->Des()); + + CFindUtilChineseECE* pFindUtilEce = iAlgorithm->FindUtilECE(); + TBool matched = 0; + + // If has Chinese word and the first name doesn't start with Chinese character, then should add a space + // before the first name, otherwise intitial letter searching will not function + if( pFindUtilEce->IsChineseWord(lastName) || pFindUtilEce->IsChineseWord(firstName)) { - RPointerArray tempMatchSeq; - CleanupClosePushL( tempMatchSeq ); + token.Append(lastName); + if (firstName.Length()) + { + firstChar.Zero(); + firstChar.Append(firstName[0]); + if (!pFindUtilEce->IsChineseWord(firstChar) ) + { + token.Append(KSpace); + } + token.Append(firstName); + } + + if (token.Length() != 0) + { + matched = iAlgorithm->FindUtil()->Interface()->MatchRefineL(token, tmpSearchQuery); + + if (matched) + { + psData->SetDataMatch(iAlgorithm->GetLastNameIndex()); + psData->SetDataMatch(iAlgorithm->GetFirstNameIndex()); + } + } + } + else + { + // If contact name only has western word, then should send + // "first name","last name" and "last name + first name" to FindUtil to do the search + const TInt lastnameLen = lastName.Length(); + const TInt firstnameLen = firstName.Length(); + if(lastnameLen) + { + matched = iAlgorithm->FindUtil()->Interface()->MatchRefineL(lastName, tmpSearchQuery); + + if (matched) + { + psData->SetDataMatch(iAlgorithm->GetLastNameIndex()); + } + } - // Wrap matched character sequence to array. - matchingData.UpperCase(); - tempMatchSeq.AppendL(&matchingData); + if(!matched && firstnameLen) + { + matched = iAlgorithm->FindUtil()->Interface()->MatchRefineL(firstName, tmpSearchQuery); + + if (matched) + { + psData->SetDataMatch(iAlgorithm->GetFirstNameIndex()); + } + } + + token.Append(lastName); + token.Append(firstName); + if (!matched && lastnameLen && firstnameLen) + { + matched = iAlgorithm->FindUtil()->Interface()->MatchRefineL(token, tmpSearchQuery); + + if (matched) + { + psData->SetDataMatch(iAlgorithm->GetLastNameIndex()); + psData->SetDataMatch(iAlgorithm->GetFirstNameIndex()); + } + } + } + + if (matched) + { + // Extract matched character sequence, don't need to be accurate for Chinese variant + const TInt len = 1; + HBufC* seq = HBufC::NewLC(len); + *seq = token.Mid(0, len); + seq->Des().UpperCase(); + + TIdentityRelation rule(Compare1); + if (tempMatchSeq.Find(seq, rule) == KErrNotFound) + { + tempMatchSeq.Append(seq); + CleanupStack::Pop(); + } + else + { + CleanupStack::PopAndDestroy(); + } // Add the result - aAlgorithmFilterHelper->AddL( psData, tempMatchSeq ); - maxcount++; - - // Cleanup the match sequence array as - // they are stored in pattern details structure - CleanupStack::PopAndDestroy( &tempMatchSeq ); // Close - - // TODO: Match seqs could be extracted from actual - // match locations by using the other overload of - // CFindUtilChineseECE::MatchRefineL(). - // Currently, match seq data is not used by clients. + if (isSearchInGroup) + { + if (aContactsInGroup.Find(psData->Id()) != KErrNotFound) + { + aAlgorithmFilterHelper->AddL(psData, tempMatchSeq); + } + } + else + { + aAlgorithmFilterHelper->AddL(psData, tempMatchSeq); + } } - - if ( iMaxCount != -1 && maxcount > iMaxCount ) - { - return; - } + + // Cleanup the match sequence array as + // they are stored in pattern details structure + tempMatchSeq.ResetAndDestroy(); } - PRINT ( _L("End CPcsAlgorithm2Helper::FilterResultsSingleL") ); + PRINT ( _L("End CPcsAlgorithm2Helper::FilterResultsQwertyL") ); + } + +// ---------------------------------------------------------------------------- +// CPcsAlgorithm2Helper::FilterResultsMixedL +// Subset search function +// ---------------------------------------------------------------------------- +void CPcsAlgorithm2Helper::FilterResultsMixedL(CPcsAlgorithm2FilterHelper* aAlgorithmFilterHelper, + RPointerArray& searchSet, + CPsQuery& searchQuery, TBool isSearchInGroup, + RArray& aContactsInGroup) + { + PRINT ( _L("Enter CPcsAlgorithm2::FilterResultsMixedL") ); + + // Convert the search query to alpha numeric string + TBuf<50> tmpSearchQuery; + ExtractQueryL(searchQuery, tmpSearchQuery); + tmpSearchQuery.LowerCase(); + TBuf<10> firstChar; + + // Parse thru each search set elements and filter the results + for (int index = 0; index < searchSet.Count(); index++) + { + CPcsPoolElement* poolElement = static_cast (searchSet[index]); + CPsData* psData = poolElement->GetPsData(); + psData->ClearDataMatches(); + RPointerArray tempMatchSeq; + + // Parse thru each data and filter the results + TBuf<255> token; + TBuf firstName; + TBuf lastName; + lastName.Append(psData->Data(iAlgorithm->GetLastNameIndex())->Des()); + firstName.Append(psData->Data(iAlgorithm->GetFirstNameIndex())->Des()); + + CFindUtilChineseECE* pFindUtilEce = iAlgorithm->FindUtilECE(); + TBool matched = 0; + + // If has Chinese word and the first name doesn't start with Chinese character, then should add a space + // before the first name, otherwise intitial letter searching will not function + if( pFindUtilEce->IsChineseWord(lastName) || pFindUtilEce->IsChineseWord(firstName)) + { + token.Append(lastName); + if (firstName.Length()) + { + firstChar.Zero(); + firstChar.Append(firstName[0]); + if (!pFindUtilEce->IsChineseWord(firstChar) ) + { + token.Append(KSpace); + } + token.Append(firstName); + } + + if (token.Length() != 0) + { + matched = pFindUtilEce->MatchRefineL(token, searchQuery); + + if (matched) + { + psData->SetDataMatch(iAlgorithm->GetLastNameIndex()); + psData->SetDataMatch(iAlgorithm->GetFirstNameIndex()); + } + } + } + else + { + // If contact name only has western word, then should send + // "first name","last name" and "last name + first name" to FindUtil to do the search + const TInt lastnameLen = lastName.Length(); + const TInt firstnameLen = firstName.Length(); + if(lastnameLen) + { + matched = pFindUtilEce->MatchRefineL(lastName, searchQuery); + + if (matched) + { + psData->SetDataMatch(iAlgorithm->GetLastNameIndex()); + } + } + + if(!matched && firstnameLen) + { + matched = pFindUtilEce->MatchRefineL(firstName, searchQuery); + + if (matched) + { + psData->SetDataMatch(iAlgorithm->GetFirstNameIndex()); + } + } + + token.Append(lastName); + token.Append(firstName); + if (!matched && lastnameLen && firstnameLen) + { + matched = pFindUtilEce->MatchRefineL(token, searchQuery); + + if (matched) + { + psData->SetDataMatch(iAlgorithm->GetLastNameIndex()); + psData->SetDataMatch(iAlgorithm->GetFirstNameIndex()); + } + } + } + + if (matched) + { + // Extract matched character sequence, don't need to be accurate for Chinese variant + const TInt len = 1; + + HBufC* seq = HBufC::NewLC(len); + *seq = token.Mid(0, len); + seq->Des().UpperCase(); + + TIdentityRelation rule(Compare1); + if (tempMatchSeq.Find(seq, rule) == KErrNotFound) + { + tempMatchSeq.Append(seq); + CleanupStack::Pop(); + } + else + { + CleanupStack::PopAndDestroy(); + } + + // Add the result + if (isSearchInGroup) + { + if (aContactsInGroup.Find(psData->Id()) != KErrNotFound) + { + aAlgorithmFilterHelper->AddL(psData, tempMatchSeq); + } + } + else + { + aAlgorithmFilterHelper->AddL(psData, tempMatchSeq); + } + } + + // Cleanup the match sequence array as + // they are stored in pattern details structure + tempMatchSeq.ResetAndDestroy(); + } + + PRINT ( _L("End CPcsAlgorithm2Helper::FilterResultsMixedL") ); } // ---------------------------------------------------------------------------- @@ -419,156 +899,93 @@ void CPcsAlgorithm2Helper::SortSearchSeqsL(RPointerArray& aSearchSeqs) { // Sort the search seqs - TLinearOrder rule( CPcsAlgorithm2Utils::MyCompareC ); + TLinearOrder rule(Compare2); aSearchSeqs.Sort(rule); } -// --------------------------------------------------------------------------- -// CPcsAlgorithm2Helper::CreteNameBufLC -// Update name order according to Phonebook setting -// --------------------------------------------------------------------------- -HBufC* CPcsAlgorithm2Helper::CreateNameBufLC( const CPsData& aContactData, - TInt aFirstNameIndex, TInt aLastNameIndex ) const +// ---------------------------------------------------------------------------- +// CPcsAlgorithm2Helper::ExtractQueryL() +// Required for mixed mode search. +// ---------------------------------------------------------------------------- +void CPcsAlgorithm2Helper::ExtractQueryL(CPsQuery& aQuery, TDes& aOutput) { - const TDesC& firstName( *aContactData.Data(aFirstNameIndex) ); - const TDesC& lastName( *aContactData.Data(aLastNameIndex) ); - CFindUtilChineseECE* pFindUtilEce = iAlgorithm->FindUtilECE(); - HBufC* fullName = NULL; - - if ( pFindUtilEce->IsChineseWordIncluded( lastName ) || - pFindUtilEce->IsChineseWordIncluded( firstName ) ) + for (int i = 0; i < aQuery.Count(); i++) { - fullName = HBufC::NewLC( lastName.Length() + firstName.Length() + 1 ); - TPtr fullNamePtr = fullName->Des(); - - // Form the full name according the Phonebook name order setting. Typically, - // the order is always lastname-firstname in Chinese variants. However, at least - // currently it is possible to change this from Contacts app if UI language has - // been set to English. - if ( iNameOrder == ELastnameFirstname ) + if (aQuery.GetItemAtL(i).Mode() == EItut) { - fullNamePtr.Append( lastName ); - //Holds the first char of first name of a contact - TBuf<10> firstChar; - firstChar.Zero(); - - if(firstName.Length()) - { - firstChar.Append(firstName[0]); - // There is no space between LastName and FirstName in Chinese Name - // except that the firstChar of FirstName isn't Chinese character - if ( !pFindUtilEce->IsChineseWordIncluded( firstChar ) ) - { - fullNamePtr.Append( KSpace ); - } - fullNamePtr.Append( firstName ); - } + TBuf outBuf; + keyMap->GetNumericKeyString(aQuery.QueryAsStringLC(), outBuf); + aOutput.Append(outBuf[i]); + CleanupStack::PopAndDestroy(); } else { - fullNamePtr.Append( firstName ); - //Holds the first char of last name of a contact - TBuf<10> firstChar; - firstChar.Zero(); - - if(lastName.Length()) - { - firstChar.Append(lastName[0]); - // There is no space between LastName and FirstName in Chinese Name - // except that the firstChar of Lastname isn't Chinese character - if ( !pFindUtilEce->IsChineseWordIncluded( firstChar ) ) - { - fullNamePtr.Append( KSpace ); - } - fullNamePtr.Append( lastName ); - } - } - } - else - { - fullName = HBufC::NewLC( lastName.Length() + firstName.Length() + 1 ); - TPtr fullNamePtr = fullName->Des(); - - // Form the full name according the Phonebook name order setting. Typically, - // the order is always lastname-firstname in Chinese variants. However, at least - // currently it is possible to change this from Contacts app if UI language has - // been set to English. - if ( iNameOrder == ELastnameFirstname ) - { - fullNamePtr.Append( lastName ); - fullNamePtr.Append( KSpace ); - fullNamePtr.Append( firstName ); - } - else - { - fullNamePtr.Append( firstName ); - fullNamePtr.Append( KSpace ); - fullNamePtr.Append( lastName ); - } - } - - return fullName; - } - -// --------------------------------------------------------------------------- -// CPcsAlgorithm2Helper::UpdateNameOrderL -// Update name order according to Phonebook setting -// --------------------------------------------------------------------------- -void CPcsAlgorithm2Helper::UpdateNameOrderL() - { - /* - * Phonebook name ordering flag, integer value, possible values: - * 0: name order Lastname Firstname - * 1: name order Firstname Lastname - * 2: name order undefined - */ - TInt nameOrderSetting; - iPbkSettings->Get( MPbkGlobalSetting::ENameOrdering, nameOrderSetting ); - - switch ( nameOrderSetting ) - { - case 0: - { - iNameOrder = ELastnameFirstname; - break; - } - case 1: - { - iNameOrder = EFirstnameLastname; - break; - } - case 2: - default: - { - // Decide name order based on UI language: lastname-firstname - // for Chinese, firstname-lastname for the rest of languages. - TLanguage uiLang = User::Language(); - if ( uiLang == ELangPrcChinese || - uiLang == ELangHongKongChinese || - uiLang == ELangTaiwanChinese ) - { - iNameOrder = ELastnameFirstname; - } - else - { - iNameOrder = EFirstnameLastname; - } + aOutput.Append(aQuery.GetItemAtL(i).Character()); } } } -// --------------------------------------------------------------------------- -// CPcsAlgorithm2Helper::SettingChangedL -// From MPbkGlobalSettingObserver -// --------------------------------------------------------------------------- -void CPcsAlgorithm2Helper::SettingChangedL( MPbkGlobalSetting::TPbkGlobalSetting aKey ) +// ---------------------------------------------------------------------------- +// CPcsAlgorithm2Helper::ExtractQueryL() +// Required for mixed mode search. +// ---------------------------------------------------------------------------- +void CPcsAlgorithm2Helper::ExtractQueryL(TDesC& aInput, CPsQuery& aQuery, TDes& aOutput) { - if ( aKey == MPbkGlobalSetting::ENameOrdering ) + TInt len = -1; + + if (aInput.Length() > aQuery.Count()) + { + len = aQuery.Count(); + } + else + { + len = aInput.Length(); + } + + for (int i = 0; i < len; i++) { - UpdateNameOrderL(); + if (aQuery.GetItemAtL(i).Mode() == EItut) + { + TBuf outBuf; + keyMap->GetNumericKeyString(aInput, outBuf); + aOutput.Append(outBuf[i]); + } + else + { + aOutput.Append(aInput[i]); + } } } +// ---------------------------------------------------------------------------- +// CPcsAlgorithm2Helper::FilterDataFieldsL() +// Constructs a bit pattern using the required/supported data fields +// For example, 6, 4 and 27 are supported fields <-- 00000111 +// 6 and 4 are required fields <-- 00000011 +// Bit pattern returned is 00000011. +// ---------------------------------------------------------------------------- +TUint8 CPcsAlgorithm2Helper::FilterDataFieldsL(RArray& aRequiredDataFields, + RArray& aSupportedDataFields) + { + TUint8 filteredMatch = 0x0; + + for (int i = 0; i < aSupportedDataFields.Count(); i++) + { + for (int j = 0; j < aRequiredDataFields.Count(); j++) + { + if (aSupportedDataFields[i] == aRequiredDataFields[j]) + { + TReal val; + Math::Pow(val, 2, i); + + filteredMatch |= (TUint8) val; + } + } + } + + return filteredMatch; + } + // End of file diff -r 6b5524b4f673 -r 38bb213f60ba predictivesearch/PcsAlgorithm/Algorithm2/src/CPcsAlgorithm2MultiSearchHelper.cpp --- a/predictivesearch/PcsAlgorithm/Algorithm2/src/CPcsAlgorithm2MultiSearchHelper.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/predictivesearch/PcsAlgorithm/Algorithm2/src/CPcsAlgorithm2MultiSearchHelper.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -23,7 +23,26 @@ #include #include +// Compare functions +TBool Compare2(const HBufC& aFirst, const HBufC& aSecond) + { + TPtrC t1(aFirst); + TPtrC t2(aSecond); + return (t1.Length() > t2.Length()); + } +TBool Compare3(const TDesC& aFirst, const TDesC& aSecond) + { + return aFirst == aSecond; + } + +TBool Compare4(const CPsQuery& aFirst, const CPsQuery& aSecond) + { + CPsQuery& first = const_cast (aFirst); + CPsQuery& second = const_cast (aSecond); + + return (first.Count() > second.Count()); + } // ============================== MEMBER FUNCTIONS ============================ // ---------------------------------------------------------------------------- @@ -63,14 +82,13 @@ PRINT ( _L("Enter CPcsAlgorithm2MultiSearchHelper::ConstructL") ); iAlgorithm = aAlgorithm; - iKeyMap = iAlgorithm->GetKeyMap(); - iMaxCount = 0; - + keyMap = iAlgorithm->GetKeyMap(); + PRINT ( _L("End CPcsAlgorithm2MultiSearchHelper::ConstructL") ); } // ---------------------------------------------------------------------------- -// CPcsAlgorithm2MultiSearchHelper::~CPcsAlgorithm2MultiSearchHelper +// CPcsAlgorithm2MultiSearchHelper::CPcsAlgorithm2MultiSearchHelper // Destructor // ---------------------------------------------------------------------------- CPcsAlgorithm2MultiSearchHelper::~CPcsAlgorithm2MultiSearchHelper() @@ -98,105 +116,90 @@ // ---------------------------------------------------------------------------- void CPcsAlgorithm2MultiSearchHelper::SearchMultiL(const CPsSettings& aSettings, RPointerArray& aPsQuery, - TBool aIsSearchInGroup, - const RArray& aContactsInGroup, - RPointerArray& aSearchResults, - RPointerArray& aSearchSeqs) + TBool isSearchInGroup, + RArray& aContactsInGroup, + RPointerArray& searchResults, + RPointerArray& searchSeqs, + TInt keyboardMode) { + __LATENCY_MARK ( _L("CPcsAlgorithm2MultiSearchHelper::SearchMultiL") ); PRINT ( _L("Enter CPcsAlgorithm2MultiSearchHelper::SearchMultiL") ); - //__LATENCY_MARK ( _L("CPcsAlgorithm2MultiSearchHelper::SearchMultiL") ); - - PRINTQUERYLIST ( _L("CPcsAlgorithm2MultiSearchHelper::SearchMultiL: "), aPsQuery ); - - iMaxCount = aSettings.MaxResults(); // Create CPcsAlgorithm2FilterHelper object to be used for filtering the results TSortType sortType = aSettings.GetSortType(); CPcsAlgorithm2FilterHelper* filterHelper = CPcsAlgorithm2FilterHelper::NewL(sortType); - CleanupStack::PushL( filterHelper ); RPointerArray elements; - CleanupClosePushL( elements ); iMultiSearchResultsArr.ResetAndDestroy(); // Get the data stores - RPointerArray dataStores; - CleanupResetAndDestroyPushL( dataStores ); - aSettings.SearchUrisL(dataStores); + RPointerArray aDataStores; + aSettings.SearchUrisL(aDataStores); // Get the required display fields from the client RArray requiredDataFields; - CleanupClosePushL( requiredDataFields ); aSettings.DisplayFieldsL(requiredDataFields); - // Search from cache based on first character of 1st item in query list + // Search from cache based on first character const CPsQueryItem& firstCharItem = aPsQuery[0]->GetItemAtL(0); - TInt cachePoolId = iKeyMap->PoolIdForCharacter( firstCharItem.Character(), firstCharItem.Mode() ); - + TInt numValue = keyMap->PoolIdForCharacter( firstCharItem.Character() ); + // Get the elements from all the databases - const TInt dataStoresCount = dataStores.Count(); - for (TInt dsIndex = 0; dsIndex < dataStoresCount; dsIndex++) + for (int dsIndex = 0; dsIndex < aDataStores.Count(); dsIndex++) { RPointerArray *temp = new (ELeave) RPointerArray (); iMultiSearchResultsArr.Append(temp); // Get the contents for this data store - TInt arrayIndex = iAlgorithm->GetCacheIndex(*(dataStores[dsIndex])); + TInt arrayIndex = iAlgorithm->GetCacheIndex(*(aDataStores[dsIndex])); if (arrayIndex < 0) { continue; } CPcsCache* cache = iAlgorithm->GetCache(arrayIndex); - cache->GetContactsForKeyL(cachePoolId, elements); + cache->GetContactsForKeyL(numValue, elements); // Get the supported data fields for this data store RArray supportedDataFields; - CleanupClosePushL( supportedDataFields ); cache->GetDataFields(supportedDataFields); - // Get the filtered data fields for this data store - TUint8 filteredDataMatch = CPcsAlgorithm2Utils::FilterDataFieldsL( - requiredDataFields, supportedDataFields); + // Get the filtered data fields for this data store + TUint8 filteredDataMatch = FilterDataFieldsL(requiredDataFields, supportedDataFields); // Filter the results now - FilterResultsMultiL(filterHelper, - elements, - aPsQuery, - filteredDataMatch, - aIsSearchInGroup, - aContactsInGroup); + FilterResultsMultiL(filterHelper, elements, aPsQuery, filteredDataMatch, + isSearchInGroup, aContactsInGroup, keyboardMode); - // If alphabetical sorting, get the results for this datastore + // If alphabetical sorting, get the results for this datastore if (sortType == EAlphabetical) { filterHelper->GetResults(*(iMultiSearchResultsArr[dsIndex])); } elements.Reset(); - CleanupStack::PopAndDestroy( &supportedDataFields ); // Close + supportedDataFields.Reset(); } - CleanupStack::PopAndDestroy( &requiredDataFields ); // Close - CleanupStack::PopAndDestroy( &dataStores ); // ResetAndDestroy + aDataStores.ResetAndDestroy(); + requiredDataFields.Reset(); // If alphabetical sorting, merge the result sets of all datastores if (sortType == EAlphabetical) { // Form the complete searchResults array - CPcsAlgorithm2Utils::FormCompleteSearchResultsL(iMultiSearchResultsArr, - aSearchResults); + CPcsAlgorithm2Utils::FormCompleteSearchResultsL(iMultiSearchResultsArr, searchResults); } else { // Results are already sorted patternbased - filterHelper->GetResults(aSearchResults); + filterHelper->GetResults(searchResults); } // Get the sorted match sequence list - filterHelper->GetPatternsL(aSearchSeqs); + filterHelper->GetPatternsL(searchSeqs); - PRINT1 ( _L("Number of search results = %d"), aSearchResults.Count() ); + PRINT1 ( _L("Number of search results = %d"), searchResults.Count() ); - // Cleanup + // Cleanup for (TInt i = 0; i < iMultiSearchResultsArr.Count(); i++) { iMultiSearchResultsArr[i]->Reset(); @@ -205,197 +208,214 @@ } iMultiSearchResultsArr.Reset(); - CleanupStack::PopAndDestroy( &elements ); // Close - CleanupStack::PopAndDestroy( filterHelper ); - - //__LATENCY_MARKEND ( _L("CPcsAlgorithm2MultiSearchHelper::SearchMultiL") ); + delete filterHelper; PRINT ( _L("End CPcsAlgorithm2MultiSearchHelper::SearchMultiL") ); + __LATENCY_MARKEND ( _L("CPcsAlgorithm2MultiSearchHelper::SearchMultiL") ); } // ---------------------------------------------------------------------------- -// CPcsAlgorithm1MultiSearchHelper::SearchMatchSeqMultiL -// Function adds matches, and locations based on multi query, and data -// Duplicate locations are allowed (as they are removed later anyway) -// Post condition locations in index order +// CPcsAlgorithm2MultiSearchHelper::SearchInputMultiL +// Function to search match sequences for multi query // ---------------------------------------------------------------------------- -void CPcsAlgorithm2MultiSearchHelper::SearchMatchSeqMultiL( RPointerArray& aPsQuery, - const TDesC& aData, - RPointerArray& aMatchSeq, - RArray& aMatchLocation ) +void CPcsAlgorithm2MultiSearchHelper::SearchMatchSeqMultiL(RPointerArray& aPsQuery, + TDesC& aData, + RPointerArray& aMatchSet, + RArray& aMatchLocation) { PRINT ( _L("Enter CPcsAlgorithm2MultiSearchHelper::SearchMatchSeqMultiL") ); - - TLex lex(aData); - while ( !lex.Eos() ) // Search thru all words - { - TPtrC currentWord = lex.NextToken(); // next word - - const TInt psQueryCount = aPsQuery.Count(); - for ( TInt queryIndex = 0; queryIndex < psQueryCount; ++queryIndex ) - { - CPsQuery* currentQuery = aPsQuery[queryIndex]; - - RArray matchPos; - CleanupClosePushL( matchPos ); - RArray matchLen; - CleanupClosePushL( matchLen ); - - if ( iAlgorithm->FindUtilECE()->MatchRefineL( currentWord, *currentQuery, matchPos, matchLen, ETrue ) ) - { - // Some matches found. Add all of them to result array. - ASSERT( matchPos.Count() == matchLen.Count() ); - - TInt wordStartPos = lex.Offset() - currentWord.Length(); - const TInt matchPosCount = matchPos.Count(); - for ( TInt i = 0 ; i < matchPosCount; ++i ) - { - TPsMatchLocation newLocation = { wordStartPos + matchPos[i], matchLen[i], - TBidiText::TextDirectionality(currentWord) }; - aMatchLocation.AppendL( newLocation ); + CleanupResetAndDestroyPushL( aMatchSet ); + CleanupClosePushL( aMatchLocation ); + + RPointerArray queryList; + ConvertQueryToListL(aPsQuery, queryList); - TPtrC matchPart = currentWord.Mid( matchPos[i], matchLen[i] ); - CPcsAlgorithm2Utils::AppendMatchToSeqL( aMatchSeq, matchPart ); - } - } - - CleanupStack::PopAndDestroy( &matchLen ); - CleanupStack::PopAndDestroy( &matchPos ); - } + RPointerArray tempqueryList; + // Remember a temporary copy of query list + // since we sort the queries + for (TInt i = 0; i < queryList.Count(); i++) + { + tempqueryList.Append(queryList[i]); } - - PRINT ( _L("End CPcsAlgorithm2MultiSearchHelper::SearchMatchSeqMultiL") ); - } - -// ---------------------------------------------------------------------------- -// CPcsAlgorithm2MultiSearchHelper::LookupMatchL -// ---------------------------------------------------------------------------- -void CPcsAlgorithm2MultiSearchHelper::LookupMatchL( CPsQuery& aSearchQuery, - const TDesC& aData, TDes& aMatchedData ) - { - _LIT( KSpace, " " ); - aMatchedData.Zero(); - RPointerArray queryList = MultiQueryL( aSearchQuery ); - CleanupResetAndDestroyPushL( queryList ); - // Convert the individual queries to string form - RPointerArray mySearchQuery; - CleanupResetAndDestroyPushL( mySearchQuery ); - - // Remember a temporary copy of query list - // Copy the content of searchQuery - const TInt searchQueryCount = queryList.Count(); - for (TInt i = 0; i < searchQueryCount; i++ ) - { - CPsQuery* tempQuery = CPsQuery::NewL(); - CleanupStack::PushL( tempQuery ); - iAlgorithm->FindUtilECE()->GetPartOfQueryL( *(queryList[i]), 0, - queryList[i]->Count() - 1, *tempQuery ); - mySearchQuery.AppendL( tempQuery ); - CleanupStack::Pop( tempQuery ); // ownership transferred - } - - // Sort the query items according to the length of each query - TLinearOrder rule( CPcsAlgorithm2Utils::CompareLength ); - mySearchQuery.Sort( rule ); - // To hold the match results RPointerArray tmpMatchSet; - CleanupResetAndDestroyPushL( tmpMatchSet ); + TBool isMatch = ETrue; + TUint32 wordMatches = 0; - TBool isMatch = ETrue; - TInt wordMatches = 0; - - // Reset iWordMatches to zero - ClearWordMatches(); + // Sort the query items before we search them + TLinearOrder rule(Compare2); + queryList.Sort(rule); // Check for each query atleast one data element matches // Loop from the last query so that longest match is seen first - for (TInt queryIndex = mySearchQuery.Count() - 1; queryIndex >= 0; queryIndex-- ) + for (TInt queryIndex = queryList.Count() - 1; queryIndex >= 0; queryIndex--) { TBool queryMatch = EFalse; - CPsQuery* tmpPsQuery = mySearchQuery[queryIndex]; + HBufC* tmpQuery = queryList[queryIndex]; + // Get the original query mode corresponding to this query + TInt modeIndex = tempqueryList.Find(tmpQuery); - TInt wordIndex = -1; - TLex lex( aData ); + TLex lex(aData); // First word TPtrC tmpData = lex.NextToken(); + TInt beg = lex.Offset() - tmpData.Length(); // start index of match sequence + + TInt wordIndex = -1; // Search thru multiple words - while (tmpData.Length() != 0 ) + while ((tmpData.Length() != 0) && (!queryMatch)) { wordIndex++; - // Compare the data against query - TBool matched = iAlgorithm->FindUtilECE()->MatchRefineL( tmpData, - *tmpPsQuery ); + TPtr ptr = tmpQuery->Des(); - if ( matched ) + // Perform two checks. + // 1. Ensure that the word is not matched against any previous query + // 2. If it is the first match to the query + TBool isWordMatch = EFalse; + TReal val; + Math::Pow(val, 2, wordIndex); + isWordMatch = wordMatches & (TUint) val; + + if (!isWordMatch) { - // Perform two checks. - // 1. Ensure that the word is not matched against any previous query - // 2. If it is the first match to the query - TBool isWordMatch = IsWordMatch( 0, wordIndex ); - - // Check if the current word is not matched to any query - // For example, there is a contact named "abc a" and query is key2 - // The key2 could match the first and second 'a'. So it is required to - // check if the current word has aready been matched before. - - if ( !isWordMatch ) + // Check if no word is matched till now for this query + if (!queryMatch) { - // Check if no word is matched for this query till now - if ( !queryMatch ) - { - wordMatches++; - queryMatch = ETrue; - SetWordMap( 0, wordIndex ); - // Extract matched character sequence and fill in temp array - TInt len = tmpPsQuery->Count(); - if ( iAlgorithm->FindUtilECE()->IsChineseWordIncluded( - tmpData ) ) - { - // A Chinese word could be matched by serveral keys - // It is hard to know the matched query length. So set it to 1 - // as a trick result - len = 1; - } + queryMatch = ETrue; + //set the word match bit + TReal val; + Math::Pow(val, 2, wordIndex); + wordMatches |= (TUint) val; + } + + TPsMatchLocation tempLocation; + // check for directionality of the text + TBool found(EFalse); + TBidiText::TDirectionality dir = TBidiText::TextDirectionality(tmpData, &found); - TPtrC seq = tmpData.Left( len ); - CPcsAlgorithm2Utils::AppendMatchToSeqL( tmpMatchSet, - seq ); - } - } + tempLocation.index = beg; + tempLocation.length = 0; + tempLocation.direction = dir; + + // Add the match location to the data structure array + aMatchLocation.Append(tempLocation); } + } + // Next word + tmpData.Set(lex.NextToken()); + beg = lex.Offset() - tmpData.Length(); // start index of next word - // Next word - tmpData.Set( lex.NextToken() ); - } // No data element matches the query. Ignore this result. - if ( queryMatch == EFalse ) + if (queryMatch == EFalse) { isMatch = EFalse; break; } } + // Count the number of bits set + TInt matchCount = 0; + matchCount = BitsSet32(wordMatches); + // If match add the element to the result set - // And before adding to the result set, check if there is atleast one match per query - if ( isMatch && wordMatches >= mySearchQuery.Count() ) + // Before adding to the result set, check if there is atleast one match per query + // Number of bits set in word matches is atleast equal to total number of queries. + if ((isMatch) && (matchCount >= queryList.Count())) { - const TInt matchCount = tmpMatchSet.Count(); - for (TInt i = 0; i < matchCount; i++ ) + + // Include the match sequences in the final results + for (int i = 0; i < tmpMatchSet.Count(); i++) { - aMatchedData.Append( *tmpMatchSet[i] ); - aMatchedData.Append( KSpace ); + TIdentityRelation rule(Compare3); + CleanupStack::PushL(tmpMatchSet[i]); + if (aMatchSet.Find(tmpMatchSet[i], rule) == KErrNotFound) + { + aMatchSet.Append(tmpMatchSet[i]); + CleanupStack::Pop(); + } + else + { + CleanupStack::PopAndDestroy(); + } } - aMatchedData.TrimRight(); + + // Reset tmp match set + tmpMatchSet.Reset(); + } + else + { + tmpMatchSet.ResetAndDestroy(); } - CleanupStack::PopAndDestroy( &tmpMatchSet ); // ResetAndDestroy - CleanupStack::PopAndDestroy( &mySearchQuery ); // ResetAndDestroy - CleanupStack::PopAndDestroy( &queryList ); // ResetAndDestroy + // Free the query list + queryList.ResetAndDestroy(); + tempqueryList.Reset(); + + CleanupStack::Pop(); + CleanupStack::Pop( &aMatchSet ); + + PRINT ( _L("End CPcsAlgorithm2MultiSearchHelper::SearchMatchSeqMultiL") ); + } + +// ---------------------------------------------------------------------------- +// CPcsAlgorithm2MultiSearchHelper::ConvertQueryToList +// Converts the multiple search queries to a list +// ---------------------------------------------------------------------------- +void CPcsAlgorithm2MultiSearchHelper::ConvertQueryToListL(RPointerArray& aSearchQuery, + RPointerArray& aQueryList) + { + for (int queryIndex = 0; queryIndex < aSearchQuery.Count(); queryIndex++) + { + CPsQuery* query = aSearchQuery[queryIndex]; + + HBufC* tmpSearchQuery = HBufC::NewL(KPsQueryMaxLen); + TPtr ptr = tmpSearchQuery->Des(); + + if (query->KeyboardModeL() == EItut) // ITU + { + keyMap->GetNumericKeyString(query->QueryAsStringLC(), ptr); + CleanupStack::PopAndDestroy(); + } + else if (query->KeyboardModeL() == EQwerty) // QWERTY + { + ptr = query->QueryAsStringLC(); + ptr.LowerCase(); + CleanupStack::PopAndDestroy(); + } + else // UNDEFINED + { + ExtractQueryL(*query, ptr); + ptr.LowerCase(); + } + aQueryList.Append(tmpSearchQuery); + } + } + +// ---------------------------------------------------------------------------- +// CPcsAlgorithm2MultiSearchHelper::ConvertdDataToKeyBoardModeL +// Converts the input data to the key board mode specified by the query +// ---------------------------------------------------------------------------- +void CPcsAlgorithm2MultiSearchHelper::ConvertdDataToKeyBoardModeL(CPsQuery* aQuery, + TPtrC aInputData, + TBuf& aOutputData) + { + if (aQuery->KeyboardModeL() == EItut) + { + keyMap->GetNumericKeyString(aInputData, aOutputData); + } + else if (aQuery->KeyboardModeL() == EQwerty) + { + aOutputData = aInputData; + aOutputData.LowerCase(); + } + else + { + ExtractQueryL(aInputData, *aQuery, aOutputData); + aOutputData.LowerCase(); + } } // ---------------------------------------------------------------------------- @@ -403,81 +423,63 @@ // Subset search function. Refer the above function for more description. // ---------------------------------------------------------------------------- void CPcsAlgorithm2MultiSearchHelper::FilterResultsMultiL(CPcsAlgorithm2FilterHelper* aAlgorithmFilterHelper, - RPointerArray& aSearchSet, - RPointerArray& aSearchQuery, + RPointerArray& searchSet, + RPointerArray& searchQuery, TUint8 aFilteredDataMatch, - TBool aIsSearchInGroup, - const RArray& aContactsInGroup) + TBool isSearchInGroup, + RArray& aContactsInGroup, + TInt keyboardMode) { PRINT ( _L("Enter CPcsAlgorithm2MultiSearchHelper::FilterResultsMultiL") ); - //__LATENCY_MARK ( _L("CPcsAlgorithm2MultiSearchHelper::FilterResultsMultiL") ); - - TInt maxcount = 0; - // Convert the individual queries to string form RPointerArray mySearchQuery; - CleanupResetAndDestroyPushL( mySearchQuery ); // Remember a temporary copy of query list // Copy the content of searchQuery - const TInt searchQueryCount = aSearchQuery.Count(); - for (TInt i=0; i < searchQueryCount; i++) + for (TInt i=0; iFindUtilECE()->GetPartOfQueryL( - *(aSearchQuery[i]), 0, aSearchQuery[i]->Count()-1, *tempQuery ); - mySearchQuery.AppendL(tempQuery); - CleanupStack::Pop(tempQuery); // ownership transferred + iAlgorithm->FindUtilECE()->GetPartOfQueryL(*(searchQuery[i]), 0, + searchQuery[i]->Count()-1, *tempQuery); + mySearchQuery.Append(tempQuery); } // Sort the query items according to the length of each query - TLinearOrder rule(CPcsAlgorithm2Utils::CompareLength); + TLinearOrder rule(Compare4); mySearchQuery.Sort(rule); // To hold the match results RPointerArray tmpMatchSet; - CleanupResetAndDestroyPushL( tmpMatchSet ); - // Parse thru each search set elements and filter the results - const TInt searchSetCount = aSearchSet.Count(); - for (TInt index = 0; index < searchSetCount; index++) + // Parse thru each search set elements and filter the results + for (int index = 0; index < searchSet.Count(); index++) { - CPcsPoolElement* poolElement = static_cast (aSearchSet[index]); + CPcsPoolElement* poolElement = static_cast (searchSet[index]); CPsData* psData = poolElement->GetPsData(); psData->ClearDataMatches(); - // Skip the contact if we are doing a group search and contact doesn't belong to the group - if ( aIsSearchInGroup && - aContactsInGroup.Find( psData->Id() ) == KErrNotFound ) - { - continue; - } - TBool isMatch = ETrue; - TInt wordMatches = 0; + TUint8 wordMatches = 0; // Reset iWordMatches to zero ClearWordMatches(); // Check for each query atleast one data element matches // Loop from the last query so that longest match is seen first - for (TInt queryIndex = mySearchQuery.Count() - 1; queryIndex >= 0; queryIndex--) + for (TInt queryIndex = mySearchQuery.Count() - 1; queryIndex >= 0; queryIndex--) { TBool queryMatch = EFalse; CPsQuery* tmpPsQuery = mySearchQuery[queryIndex]; - const TInt dataElementCount = psData->DataElementCount(); - for (TInt dataIndex = 0; dataIndex < dataElementCount; dataIndex++) + for (TInt dataIndex = 0; dataIndex < psData->DataElementCount(); dataIndex++) { // Filter off data fields not required in search - TUint8 bitIndex = 1 << dataIndex; - TUint8 filter = bitIndex & aFilteredDataMatch; - - // Omit the data fields which is not required in search - // or not matched with the pool element - if ( filter == 0x0 ) + TReal bitIndex; + Math::Pow(bitIndex, 2, dataIndex); + + TUint8 filter = (TUint8) bitIndex & aFilteredDataMatch; + if (filter == 0x0) { // Move to next data continue; @@ -495,9 +497,27 @@ { wordIndex++; + TPtrC queryPtr = tmpPsQuery->QueryAsStringLC(); + TBool matched = EFalse; + + if (keyboardMode == EModeUndefined) + { + matched = iAlgorithm->FindUtilECE()->MatchRefineL(tmpData, *tmpPsQuery); + } + else if (keyboardMode == EItut) + { + matched = iAlgorithm->FindUtil()->Interface()-> + MatchRefineL(tmpData, queryPtr, ECustomConverter, iAlgorithm); + } + else // Qwerty + { + matched = iAlgorithm->FindUtil()->Interface()->MatchRefineL(tmpData, queryPtr); + + } + + CleanupStack::PopAndDestroy(); // queryPtr + // Compare the data against query - TBool matched = iAlgorithm->FindUtilECE()->MatchRefineL(tmpData, *tmpPsQuery); - if (matched) { psData->SetDataMatch(dataIndex); @@ -520,18 +540,25 @@ // Extract matched character sequence and fill in temp array TInt len = tmpPsQuery->Count(); - if (iAlgorithm->FindUtilECE()->IsChineseWordIncluded(tmpData)) + if (iAlgorithm->FindUtilECE()->IsChineseWord(tmpData)) { len = 1; } - TPtrC seq = tmpData.Left(len); - CPcsAlgorithm2Utils::AppendMatchToSeqL( tmpMatchSet, seq ); - - // TODO: Match seqs could be extracted from actual - // match locations by using the other overload of - // CFindUtilChineseECE::MatchRefineL(). - // Currently, match seq data is not used by clients. + HBufC* seq = HBufC::NewL(len); + *seq = tmpData.Mid(0, len); + + seq->Des().UpperCase(); + TIdentityRelation searchRule(Compare3); + if (tmpMatchSet.Find(seq, searchRule) == KErrNotFound) + { + tmpMatchSet.Append(seq); + } + else + { + delete seq; + seq = NULL; + } } } @@ -547,50 +574,112 @@ break; } } - // If match add the element to the result set // And before adding to the result set, check if there is atleast one match per query - if ( isMatch && wordMatches >= mySearchQuery.Count() ) + if ((isMatch) && (wordMatches >= mySearchQuery.Count())) { - aAlgorithmFilterHelper->AddL(psData, tmpMatchSet); - maxcount++; + if (isSearchInGroup) + { + if (aContactsInGroup.Find(psData->Id()) != KErrNotFound) + { + aAlgorithmFilterHelper->AddL(psData, tmpMatchSet); + } + } + else + { + aAlgorithmFilterHelper->AddL(psData, tmpMatchSet); + } } - - if ( iMaxCount != -1 && maxcount > iMaxCount ) - { - break; - } - + // Cleanup the match sequence array as // they are stored in pattern details structure tmpMatchSet.ResetAndDestroy(); } - CleanupStack::PopAndDestroy( &tmpMatchSet ); // ResetAndDestroy - CleanupStack::PopAndDestroy( &mySearchQuery ); // ResetAndDestroy - - //__LATENCY_MARKEND ( _L("CPcsAlgorithm2MultiSearchHelper::FilterResultsMultiL") ); + mySearchQuery.Reset(); PRINT ( _L("End CPcsAlgorithm2MultiSearchHelper::FilterResultsMultiL") ); } // ---------------------------------------------------------------------------- -// CPcsAlgorithm2MultiSearchHelper::SetWordMap +// CPcsAlgorithm2MultiSearchHelper::SetWordMap() // ---------------------------------------------------------------------------- void CPcsAlgorithm2MultiSearchHelper::SetWordMap(TInt aIndex, TInt aPosition) { - TUint8 val = 1 << aPosition; - iWordMatches[aIndex] |= val; + TReal val; + Math::Pow(val, 2, aPosition); + + iWordMatches[aIndex] |= (TUint8) val; + } + +// ---------------------------------------------------------------------------- +// CPcsAlgorithm2MultiSearchHelper::IsWordMatch() +// ---------------------------------------------------------------------------- +TBool CPcsAlgorithm2MultiSearchHelper::IsWordMatch(TInt aDataIndex, TInt aWordIndex) + { + TReal val; + Math::Pow(val, 2, aWordIndex); + + return (iWordMatches[aDataIndex] & (TUint8) val); } // ---------------------------------------------------------------------------- -// CPcsAlgorithm2MultiSearchHelper::IsWordMatch +// CPcsAlgorithm2MultiSearchHelper::ExtractQueryL() +// Extracts the query as a string. If the mode of query item is ITU numeric +// character is used. Else the character is used. +// ---------------------------------------------------------------------------- +void CPcsAlgorithm2MultiSearchHelper::ExtractQueryL(CPsQuery& aQuery, TDes& aOutput) + { + for (int i = 0; i < aQuery.Count(); i++) + { + if (aQuery.GetItemAtL(i).Mode() == EItut) + { + TBuf outBuf; + keyMap->GetNumericKeyString(aQuery.QueryAsStringLC(), outBuf); + aOutput.Append(outBuf[i]); + CleanupStack::PopAndDestroy(); + } + else + { + aOutput.Append(aQuery.GetItemAtL(i).Character()); + } + } + } + +// ---------------------------------------------------------------------------- +// CPcsAlgorithm2MultiSearchHelper::ExtractQueryL() +// Converts the input data refering the modes in the query. +// If the mode of query item is ITU numeric character is used. Else the character +// is used. // ---------------------------------------------------------------------------- -TBool CPcsAlgorithm2MultiSearchHelper::IsWordMatch(TInt aDataIndex, TInt aWordIndex) +void CPcsAlgorithm2MultiSearchHelper::ExtractQueryL(TDesC& aInput, CPsQuery& aQuery, TDes& aOutput) { - TUint8 val = 1 << aWordIndex; - return (iWordMatches[aDataIndex] & val); + TInt len = -1; + + // Always loop thru the lowest length + if (aInput.Length() > aQuery.Count()) + { + len = aQuery.Count(); + } + else + { + len = aInput.Length(); + } + + for (int i = 0; i < len; i++) + { + if (aQuery.GetItemAtL(i).Mode() == EItut) + { + TBuf outBuf; + keyMap->GetNumericKeyString(aInput, outBuf); + aOutput.Append(outBuf[i]); + } + else + { + aOutput.Append(aInput[i]); + } + } } // ---------------------------------------------------------------------------- @@ -610,7 +699,7 @@ } // ---------------------------------------------------------------------------- -// CPcsAlgorithm2MultiSearchHelper::ClearWordMatches +// CPcsAlgorithm2MultiSearchHelper::BitsSet32 // Function to reset the iWordMatches // ---------------------------------------------------------------------------- void CPcsAlgorithm2MultiSearchHelper::ClearWordMatches() @@ -640,14 +729,13 @@ { // Scan the end of the word TInt end = beg; - while ( end < textLength && !aQuery.GetItemAtL(end).Character().IsSpace() ) + for (; end < textLength && !aQuery.GetItemAtL(end).Character().IsSpace(); ++end) { - end++; } // Create a new query object and append CPsQuery* newQuery = CPsQuery::NewL(); - for (TInt i = beg; i < end; i++) + for (int i = beg; i < end; i++) { CPsQueryItem* item = CPsQueryItem::NewL(); item->SetCharacter(aQuery.GetItemAtL(i).Character()); @@ -664,6 +752,35 @@ return query; } +// ---------------------------------------------------------------------------- +// CPcsAlgorithm2MultiSearchHelper::FilterDataFieldsL() +// Constructs a bit pattern using the required/supported data fields +// For example, 6, 4 and 27 are supported fields <-- 00000111 +// 6 and 4 are required fields <-- 00000011 +// Bit pattern returned is 00000011. +// ---------------------------------------------------------------------------- +TUint8 CPcsAlgorithm2MultiSearchHelper::FilterDataFieldsL(RArray& aRequiredDataFields, + RArray& aSupportedDataFields) + { + TUint8 filteredMatch = 0x0; + + for (int i = 0; i < aSupportedDataFields.Count(); i++) + { + for (int j = 0; j < aRequiredDataFields.Count(); j++) + { + if (aSupportedDataFields[i] == aRequiredDataFields[j]) + { + TReal val; + Math::Pow(val, 2, i); + + filteredMatch |= (TUint8) val; + } + } + } + + return filteredMatch; + } + // End of file diff -r 6b5524b4f673 -r 38bb213f60ba predictivesearch/PcsAlgorithm/Algorithm2/src/CPcsAlgorithm2Utils.cpp --- a/predictivesearch/PcsAlgorithm/Algorithm2/src/CPcsAlgorithm2Utils.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/predictivesearch/PcsAlgorithm/Algorithm2/src/CPcsAlgorithm2Utils.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -18,7 +18,6 @@ // INCLUDES #include "CPcsAlgorithm2Utils.h" #include "CPsData.h" -#include "CPsQuery.h" #include "CPcsDefs.h" #include "CPcsCache.h" #include @@ -34,15 +33,16 @@ // Merges all the respective data store result sets to single set in sorted order. // ---------------------------------------------------------------------------- void CPcsAlgorithm2Utils::FormCompleteSearchResultsL(RPointerArray& aSearchResultsArr, - RPointerArray& aSearchResults) + RPointerArray& SearchResults) { + CleanupClosePushL( SearchResults ); + TInt maxIndex = 0; TInt maxValue = aSearchResultsArr[maxIndex]->Count(); - TLinearOrder rule(CPcsAlgorithm2Utils::CompareDataBySortOrderL); + TLinearOrder rule(CPcsAlgorithm2Utils::CompareDataBySortOrder); // Find the largest array in aSearchResultsArr - const TInt searchResultsArrCount = aSearchResultsArr.Count(); - for (TInt i = 1; i < searchResultsArrCount; i++) + for (TInt i = 1; i < aSearchResultsArr.Count(); i++) { if (aSearchResultsArr[i]->Count() > maxValue) { @@ -52,15 +52,13 @@ } // Assign the largets array to searchresults - const TInt cnt = aSearchResultsArr[maxIndex]->Count(); - for (TInt i = 0; i < cnt; i++) + for (TInt i = 0; i < aSearchResultsArr[maxIndex]->Count(); i++) { - aSearchResults.Append((*(aSearchResultsArr[maxIndex]))[i]); + SearchResults.Append((*(aSearchResultsArr[maxIndex]))[i]); } // Merge the remaining result arrays to the largest array in sequential order - - for (TInt i = 0; i < searchResultsArrCount; i++) + for (TInt i = 0; i < aSearchResultsArr.Count(); i++) { // Check if we are not copying again the largest array if ((i != maxIndex) && ((aSearchResultsArr[i])->Count() != 0)) @@ -68,10 +66,11 @@ TInt numElements = (aSearchResultsArr[i])->Count(); for (TInt j = 0; j < numElements; j++) { - aSearchResults.InsertInOrderAllowRepeatsL((*(aSearchResultsArr[i]))[j], rule); + SearchResults.InsertInOrderAllowRepeatsL((*(aSearchResultsArr[i]))[j], rule); } } } + CleanupStack::Pop(); } // ---------------------------------------------------------------------------- @@ -99,149 +98,100 @@ } // ---------------------------------------------------------------------------- -// CPcsAlgorithm2Utils::CompareDataBySortOrderL() +// CPcsAlgorithm2Utils::CompareDataBySortOrder() // TLinearOrder rule for comparison of data objects // ---------------------------------------------------------------------------- -TInt CPcsAlgorithm2Utils::CompareDataBySortOrderL(const CPsData& aObject1, - const CPsData& aObject2) +TInt CPcsAlgorithm2Utils::CompareDataBySortOrder(const CPsData& aObject1, + const CPsData& aObject2) { - TInt compareRes = 0; - - if( CPsData::CompareById(aObject1, aObject2) ) - { - return compareRes; - } + _LIT(KSpace, " "); // Fetch the cache list stored in TLS to recover the sort order typedef RPointerArray PTR; - PTR* pcsCache = static_cast(Dll::Tls()); - User::LeaveIfNull(pcsCache); + PTR* pcsCache = static_cast (Dll::Tls()); - CPcsCache* cache1 = (*pcsCache)[aObject1.UriId()]; - CPcsCache* cache2 = (*pcsCache)[aObject2.UriId()]; - RArray indexOrder1; - RArray indexOrder2; + // Data1 + TBuf<255> data1(KNullDesC); + TInt uriId1 = aObject1.UriId(); + CPcsCache* cache = (*pcsCache)[uriId1]; + + RArray indexOrder; // Get the index order based on sort order from the cache - cache1->GetIndexOrder(indexOrder1); - CleanupClosePushL(indexOrder1); - cache2->GetIndexOrder(indexOrder2); - CleanupClosePushL(indexOrder2); + cache->GetIndexOrder(indexOrder); - // Check if Sort Order is identical (it must be for same cache) - TBool sameIndexOrder = ETrue; - if ( indexOrder1.Count() != indexOrder2.Count() ) + // Append sort order elements first + for (int i = 0; i < indexOrder.Count(); i++) { - sameIndexOrder = EFalse; - } - else - { - for ( TInt i = 0; i < indexOrder1.Count(); i++ ) + TInt index = indexOrder[i]; + if (index < aObject1.DataElementCount() && aObject1.Data(index)) { - if (indexOrder1[i] != indexOrder2[i]) - { - sameIndexOrder = EFalse; - break; - } + // Trim the unnecessary white spaces/special chars before we compare + TBuf<255> str(KNullDesC); + + str = aObject1.Data(index)->Des(); + CPcsAlgorithm2Utils::MyTrim(str); + + data1 += str; + data1 += KSpace; } } - // Sort Orders among diffent caches should be the same, anyway - // if caches and SO are different we compare by cache URI index - if (!sameIndexOrder) - { - compareRes = aObject1.UriId() - aObject2.UriId(); - - CleanupStack::PopAndDestroy(&indexOrder2); - CleanupStack::PopAndDestroy(&indexOrder1); - return compareRes; - } + /* --- NOT SURE IF THIS BEHAVIOR IS REQUIRED --- + // Append remaining elements in order + for ( int i = 0; i < aObject1.DataElementCount(); i++ ) + { + if ( indexOrder.Find(i) == KErrNone && aObject1.Data(i) ) + { + data1 += aObject1.Data(i)->Des(); + data1 += KSpace; + } + } + */ - // The comparison between contacts data is done for the sort order - // fields skipping the ones that are empty - TInt indexCount = indexOrder1.Count(); - TInt idx1 = 0; - TInt idx2 = 0; - while ( compareRes == 0 && idx1 < indexCount && idx2 < indexCount ) + // Data2 + TBuf<255> data2(KNullDesC); + TInt uriId2 = aObject2.UriId(); + cache = (*pcsCache)[uriId2]; + + indexOrder.Reset(); + + // Get the index order based on sort order from the cache + cache->GetIndexOrder(indexOrder); + + // Append sort order elements first + for (int i = 0; i < indexOrder.Count(); i++) { - // Get contact field of 1st contact - TInt object1Idx = indexOrder1[idx1]; - HBufC* strCompare1 = aObject1.Data(object1Idx)->Des().AllocLC(); - TPtr strCompare1Ptr( strCompare1->Des() ); - CPcsAlgorithm2Utils::MyTrim( strCompare1Ptr ); - - // Get contact field of 2nd contact - TInt object2Idx = indexOrder2[idx2]; - HBufC* strCompare2 = aObject2.Data(object2Idx)->Des().AllocLC(); - TPtr strCompare2Ptr( strCompare2->Des() ); - CPcsAlgorithm2Utils::MyTrim( strCompare2Ptr ); - - if ( strCompare1->Length() > 0 && strCompare2->Length() > 0 ) + TInt index = indexOrder[i]; + if (index < aObject2.DataElementCount() && aObject2.Data(index)) { - compareRes = CPcsAlgorithm2Utils::MyCompareC(*strCompare1, *strCompare2); - idx1++; - idx2++; - } - else // Increment only the index of the contact with empty field - { - if ( strCompare1->Length() == 0 ) - idx1++; - if ( strCompare2->Length() == 0 ) - idx2++; - } - - CleanupStack::PopAndDestroy(strCompare2); - CleanupStack::PopAndDestroy(strCompare1); - } + // Trim the unnecessary white spaces/special chars before we compare + TBuf<255> str(KNullDesC); - // We do not return that contacts are equal by SO - if ( compareRes == 0 ) - { - if ( idx1 != idx2 ) - { - // Compare by index position - // If idx1 > idx2 and SO is "FN LN" it means for instance that: - // Contact1=[FN:"", LN:"Smith"], idx1=2 - // Contact2=[FN:"Smith", LN:"Donald"], idx2=1 - // Therefore Contact1="Smith" is < than Contact2="Smith Donald" - // and the return value of this method has to be < 0 (idx2-idx1) + str = aObject2.Data(index)->Des(); + CPcsAlgorithm2Utils::MyTrim(str); - compareRes = idx2 - idx1; - } - else - { - // Compare by URI ID as 1st choice and Contact ID as 2nd choice - - compareRes == ( aObject1.UriId() != aObject2.UriId() ) ? - aObject1.UriId() - aObject2.UriId() : aObject1.Id() - aObject2.Id(); + data2 += str; + data2 += KSpace; } } - CleanupStack::PopAndDestroy(&indexOrder2); - CleanupStack::PopAndDestroy(&indexOrder1); - - return compareRes; - } + /* --- NOT SURE IF THIS BEHAVIOR IS REQUIRED --- + // Append remaining elements in order + for ( int i = 0; i < aObject2.DataElementCount(); i++ ) + { + if ( indexOrder.Find(i) == KErrNone && aObject2.Data(i) ) + { + data2 += aObject2.Data(i)->Des(); + data2 += KSpace; + } + } + */ -// ---------------------------------------------------------------------------- -// CPcsAlgorithm2Utils::CompareExact() -// -// ---------------------------------------------------------------------------- -TBool CPcsAlgorithm2Utils::CompareExact(const TDesC& aFirst, const TDesC& aSecond) - { - return aFirst == aSecond; - } - -// ---------------------------------------------------------------------------- -// CPcsAlgorithm2Utils::CompareLength() -// -// ---------------------------------------------------------------------------- -TInt CPcsAlgorithm2Utils::CompareLength(const CPsQuery& aFirst, const CPsQuery& aSecond) - { - CPsQuery& first = const_cast (aFirst); - CPsQuery& second = const_cast (aSecond); - - return (first.Count() - second.Count()); + indexOrder.Reset(); + data1.TrimAll(); + data2.TrimAll(); + return (CPcsAlgorithm2Utils::MyCompareC(data1, data2)); } // ---------------------------------------------------------------------------- @@ -283,90 +233,5 @@ return ETrue; } -// ---------------------------------------------------------------------------- -// CPcsAlgorithm1Helper::FilterDataFieldsL() -// Constructs a bit pattern using the required/supported data fields -// For example, 6, 4 and 27 are supported fields <-- 00000111 -// 6 and 4 are required fields <-- 00000011 -// Bit pattern returned is 00000011. -// ---------------------------------------------------------------------------- -TUint8 CPcsAlgorithm2Utils::FilterDataFieldsL(const RArray& aRequiredDataFields, - const RArray& aSupportedDataFields) -{ - TUint8 filteredMatch = 0x0; - const TInt supportedDataFieldsCount = aSupportedDataFields.Count(); - const TInt requiredDataFieldsCount = aRequiredDataFields.Count(); - for ( TInt i = 0; i < supportedDataFieldsCount; i++ ) - { - for ( TInt j = 0; j < requiredDataFieldsCount; j++ ) - { - if ( aSupportedDataFields[i] == aRequiredDataFields[j] ) - { - TUint8 val = 1 << i; - filteredMatch |= val; - } - } - } - - return filteredMatch; -} - -// ---------------------------------------------------------------------------- -// CPcsAlgorithm2Utils::AppendMatchToSeqL -// ---------------------------------------------------------------------------- -void CPcsAlgorithm2Utils::AppendMatchToSeqL( - RPointerArray& aMatchSeq, const TDesC& aMatch ) - { - HBufC* seq = aMatch.AllocLC(); - seq->Des().UpperCase(); - TIdentityRelation rule(CompareExact); - if ( aMatchSeq.Find(seq, rule) == KErrNotFound ) - { - aMatchSeq.AppendL(seq); - CleanupStack::Pop( seq ); - } - else - { - CleanupStack::PopAndDestroy( seq ); - } - } - -// ---------------------------------------------------------------------------- -// CPcsAlgorithm2Utils::MatchesOverlap -// Check if two match location items have overlapping indices. -// ---------------------------------------------------------------------------- -TBool CPcsAlgorithm2Utils::MatchesOverlap( const TPsMatchLocation& aFirst, - const TPsMatchLocation& aSecond ) - { - TBool overlap = EFalse; - - if ( aFirst.index == aSecond.index ) - { - overlap = ETrue; - } - else - { - // give arguments alias names where first begins before the second - TInt firstPos( aFirst.index ); - TInt firstLen( aFirst.length ); - TInt secondPos( aSecond.index ); - if ( firstPos > secondPos ) - { - firstPos = aSecond.index; - firstLen = aSecond.length; - secondPos = aFirst.index; - } - - // there is an overlap if the end of the first comes after - // beginning of the second - if ( firstPos + firstLen > secondPos ) - { - overlap = ETrue; - } - } - - return overlap; - } - // End of File diff -r 6b5524b4f673 -r 38bb213f60ba predictivesearch/PcsAlgorithm/Algorithm2/src/CPcsCache.cpp --- a/predictivesearch/PcsAlgorithm/Algorithm2/src/CPcsCache.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/predictivesearch/PcsAlgorithm/Algorithm2/src/CPcsCache.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -22,7 +22,6 @@ // INCLUDE FILES #include -#include #include "FindUtilChineseECE.h" #include "CPsData.h" @@ -38,7 +37,7 @@ // CPcsCache::NewL // Two Phase Construction // ---------------------------------------------------------------------------- -CPcsCache* CPcsCache::NewL(CPcsAlgorithm2* aAlgorithm, const TDesC& aURI, +CPcsCache* CPcsCache::NewL(CPcsAlgorithm2* aAlgorithm, TDesC& aURI, CPcsKeyMap& aKeyMap, TUint8 aUriId) { PRINT ( _L("Enter CPcsCache::NewL") ); @@ -70,7 +69,7 @@ // CPcsCache::ConstructL // 2nd Phase Constructor // ---------------------------------------------------------------------------- -void CPcsCache::ConstructL(CPcsAlgorithm2* aAlgorithm, const TDesC& aURI, +void CPcsCache::ConstructL(CPcsAlgorithm2* aAlgorithm, TDesC& aURI, CPcsKeyMap& aKeyMap, TUint8 aUriId) { PRINT ( _L("Enter CPcsCache::ConstructL") ); @@ -81,14 +80,13 @@ //Update the caching status for this cache iCacheStatus = ECachingNotStarted; - iKeyMap = &aKeyMap; + keyMap = &aKeyMap; - // Populate iKeyArr - const TInt keyMapPoolcount = aKeyMap.PoolCount(); - for (TInt i = 0; i < keyMapPoolcount; i++) + // Populate keyArr + for (TInt i = 0; i < aKeyMap.PoolCount(); i++) { - RPointerArray* keyMap = new (ELeave) RPointerArray (1); - iKeyArr.InsertL(keyMap, i); + RPointerArray *keyMap = new (ELeave) RPointerArray (1); + keyArr.InsertL(keyMap, i); } PRINT ( _L("End CPcsCache::ConstructL") ); @@ -102,15 +100,86 @@ { PRINT ( _L("Enter CPcsCache::~CPcsCache") ); - delete iURI; + if (iURI) + { + delete iURI; + } + + // Loop thru cache info and free and the data elements + THashMapIter iter(cacheInfo); + + do + { + TInt* id = const_cast (iter.NextKey()); + + if (id == NULL) + break; + + TInt* poolMap = iter.CurrentValue(); + + if (poolMap == NULL) + { + continue; + } + + CPsData *data = NULL; + for (int keyIndex = 0; keyIndex <= keyArr.Count(); keyIndex++) + { + TBool present = GetPoolMap(*poolMap, keyIndex); + + if (!present) + { + continue; + } - RemoveAllFromCache(); // cleans up iMasterPool and iCacheInfo - - iKeyArr.ResetAndDestroy(); + RPointerArray tmpKeyMap = *(keyArr[keyIndex]); + for (int arrayIndex = 0; arrayIndex < tmpKeyMap.Count(); arrayIndex++) + { + CPcsPoolElement *element = tmpKeyMap[arrayIndex]; + TInt localId = element->GetPsData()->Id(); + if (*id == localId) + { + data = element->GetPsData(); + delete element; + keyArr[keyIndex]->Remove(arrayIndex); + } + } + }; + + // Remove this element from master pool + for (int arrayIndex = 0; arrayIndex < masterPool.Count(); arrayIndex++) + { + CPsData *dataElement = masterPool[arrayIndex]; + TInt localId = dataElement->Id(); + if (*id == localId) + { + masterPool.Remove(arrayIndex); + } + } + + if (data) + { + delete data; + } + + } + while (1); + + for (TInt i = 0; i < keyArr.Count(); i++) + { + keyArr[i]->ResetAndDestroy(); + delete keyArr[i]; + keyArr[i] = NULL; + } + + masterPool.ResetAndDestroy(); + + cacheInfo.Close(); + + keyArr.Reset(); iDataFields.Reset(); iSortOrder.Reset(); iIndexOrder.Reset(); - iMasterPoolBackup.Close(); PRINT ( _L("End CPcsCache::~CPcsCache") ); } @@ -122,18 +191,15 @@ void CPcsCache::GetContactsForKeyL(TInt aKeyId, RPointerArray& aData) { PRINT ( _L("Enter CPcsCache::GetContactsForKeyL") ); - - if ( aKeyId >= 0 && aKeyId < iKeyArr.Count() ) + CleanupClosePushL( aData ); + RPointerArray arr = *keyArr[aKeyId]; + for (int i = 0; i < arr.Count(); i++) { - const RPointerArray& arr = *iKeyArr[aKeyId]; - const TInt arrCount = arr.Count(); - for (TInt i = 0; i < arrCount; i++) - { - CPcsPoolElement* value = arr[i]; - aData.AppendL(value); - } + CPcsPoolElement* value = arr[i]; + aData.AppendL(value); } + CleanupStack::Pop(); PRINT ( _L("End CPcsCache::GetContactsForKeyL") ); } @@ -144,14 +210,13 @@ void CPcsCache::GetAllContentsL(RPointerArray& aData) { PRINT ( _L("Enter CPcsCache::GetAllContentsL") ); - - const TInt masterPoolCount = iMasterPool.Count(); - for (TInt i = 0; i < masterPoolCount; i++) + CleanupClosePushL( aData ); + for (int i = 0; i < masterPool.Count(); i++) { - CPsData* value = iMasterPool[i]; + CPsData* value = masterPool[i]; aData.AppendL(value); } - + CleanupStack::Pop(); PRINT ( _L("End CPcsCache::GetAllContentsL") ); } @@ -159,7 +224,7 @@ // CPcsCache::AddToPool // Adds a contact to cache // ---------------------------------------------------------------------------- -void CPcsCache::AddToPoolL(TUint64& aPoolMap, CPsData& aData) +void CPcsCache::AddToPoolL(TInt& aPoolMap, CPsData& aData) { // Temp hash to remember the location of pool elements // First TInt = Pool @@ -167,43 +232,68 @@ // Required for memory optimization so that more than one pool // element doesn't get added for the same data RHashMap elementHash; - CleanupClosePushL( elementHash ); - TLinearOrder rule(CPcsPoolElement::CompareByDataL); + TLinearOrder rule(CPcsPoolElement::CompareByData); - // Parse thru each data element - const TInt dataElementCount = aData.DataElementCount(); - for (TInt dataIndex = 0; dataIndex < dataElementCount; dataIndex++) + // Parse thru each data element + for (int dataIndex = 0; dataIndex < aData.DataElementCount(); dataIndex++) { // Stores first key for each word - RArray firstCharArr; - CleanupClosePushL( firstCharArr ); + RArray firstKey; // Recover the first character - if ( aData.Data(dataIndex) ) + if (aData.Data(dataIndex) && aData.Data(dataIndex)->Length() != 0) { - GetFirstCharsForDataL( *aData.Data(dataIndex), firstCharArr ); + // Split the data into words + CWords* words = CWords::NewLC(*aData.Data(dataIndex)); + + // Store the first numeric key for each word + for (int i = 0; i < words->MdcaCount(); i++) + { + TChar firstChar; + for (int j = 0; j < words->MdcaPoint(i).Length(); j++) + { + firstChar = (words->MdcaPoint(i))[j]; + TBuf<20> word; + word.Append(firstChar); + if (iAlgorithm->FindUtilECE()->IsChineseWord(word)) + { + RPointerArray spellList; + if (iAlgorithm->FindUtilECE()->T9ChineseTranslationL(firstChar, spellList)) + { + for (int j = 0; j < spellList.Count(); j++) + { + firstKey.Append(keyMap->KeyForCharacter(*(spellList[j]->Ptr()))); + } + } + else + { + firstKey.Append( keyMap->KeyForCharacter(firstChar)); + } + spellList.ResetAndDestroy(); + } + else + { + firstKey.Append(keyMap->KeyForCharacter(firstChar)); + } + } + } + + CleanupStack::PopAndDestroy(words); } - - // Get the corresponding Pool IDs - RArray poolIdArr; - CleanupClosePushL( poolIdArr ); - GetPoolIdsForCharsL( firstCharArr, poolIdArr ); - const TInt poolIdArrCount = poolIdArr.Count(); - for (TInt poolArrIndex = 0; poolArrIndex < poolIdArrCount ; poolArrIndex++) + for (TInt wordIndex = 0; wordIndex < firstKey.Count(); wordIndex++) { - - TInt poolId = poolIdArr[poolArrIndex]; + TInt arrayIndex = keyMap->PoolIdForCharacter(firstKey[wordIndex]); CPcsPoolElement* element = NULL; // Check if an element already exists in the pool for this data TInt* loc = NULL; - loc = elementHash.Find(poolId); + loc = elementHash.Find(arrayIndex); if (loc != NULL) { // Exists. Then recover ... - RPointerArray tmpKeyMap = *(iKeyArr[poolId]); + RPointerArray tmpKeyMap = *(keyArr[arrayIndex]); element = tmpKeyMap[*loc]; } @@ -214,31 +304,30 @@ element->SetDataMatch(dataIndex); // Insert to pool - iKeyArr[poolId]->InsertInOrderAllowRepeatsL(element, rule); - TInt index = iKeyArr[poolId]->FindInOrderL(element, rule); + keyArr[arrayIndex]->InsertInOrderAllowRepeatsL(element, rule); + TInt index = keyArr[arrayIndex]->FindInOrderL(element, rule); - // Set the bit for this pool - SetPoolMap(aPoolMap, poolId); + // Set the bit for this pool + SetPoolMap(aPoolMap, arrayIndex); // Store the array index in the temp hash - elementHash.InsertL(poolId, index); + elementHash.InsertL(arrayIndex, index); } else // Pool element exists. Just alter the data match attribute { element->SetDataMatch(dataIndex); - // Set the bit for this pool - SetPoolMap(aPoolMap, poolId); + // Set the bit for this pool + SetPoolMap(aPoolMap, arrayIndex); } } // for 2 loop - CleanupStack::PopAndDestroy( &poolIdArr ); // Close - CleanupStack::PopAndDestroy( &firstCharArr ); // Close + firstKey.Reset(); } // for 1 loop - CleanupStack::PopAndDestroy( &elementHash ); // Close + elementHash.Close(); } // --------------------------------------------------------------------- @@ -248,19 +337,19 @@ void CPcsCache::AddToCacheL(CPsData& aData) { // Protect against duplicate items getting added - if (iCacheInfo.Find(aData.Id()) != NULL) + if (cacheInfo.Find(aData.Id()) != NULL) { return; } // Include this element in the pool - TUint64 poolMap = 0; + TInt poolMap = 0; AddToPoolL(poolMap, aData); - iCacheInfo.InsertL(aData.Id(), poolMap); + cacheInfo.InsertL(aData.Id(), poolMap); // Include this element in master pool - TLinearOrder rule(CPcsAlgorithm2Utils::CompareDataBySortOrderL); - iMasterPool.InsertInOrderAllowRepeatsL(&aData, rule); + TLinearOrder rule(CPcsAlgorithm2Utils::CompareDataBySortOrder); + masterPool.InsertInOrderAllowRepeatsL(&aData, rule); } // --------------------------------------------------------------------- @@ -271,7 +360,7 @@ { CPsData *data = NULL; - TUint64* poolMap = iCacheInfo.Find(aItemId); + TInt* poolMap = cacheInfo.Find(aItemId); if (poolMap == NULL) { @@ -279,8 +368,7 @@ } // Remove this element from pools - const TInt keyArrCount = iKeyArr.Count(); - for (TInt keyIndex = 0; keyIndex < keyArrCount; keyIndex++) + for (int keyIndex = 0; keyIndex <= keyArr.Count(); keyIndex++) { TBool present = GetPoolMap(*poolMap, keyIndex); @@ -289,9 +377,8 @@ continue; } - const RPointerArray& tmpKeyMap = *(iKeyArr[keyIndex]); - - for (TInt arrayIndex = 0; arrayIndex < tmpKeyMap.Count(); arrayIndex++) + RPointerArray tmpKeyMap = *(keyArr[keyIndex]); + for (int arrayIndex = 0; arrayIndex < tmpKeyMap.Count(); arrayIndex++) { CPcsPoolElement *element = tmpKeyMap[arrayIndex]; TInt id = element->GetPsData()->Id(); @@ -299,19 +386,19 @@ { data = element->GetPsData(); delete element; - iKeyArr[keyIndex]->Remove(arrayIndex); + keyArr[keyIndex]->Remove(arrayIndex); } } } // Remove this element from master pool - for (TInt arrayIndex = 0; arrayIndex < iMasterPool.Count(); arrayIndex++) + for (int arrayIndex = 0; arrayIndex < masterPool.Count(); arrayIndex++) { - CPsData *dataElement = iMasterPool[arrayIndex]; + CPsData *dataElement = masterPool[arrayIndex]; TInt id = dataElement->Id(); if (id == aItemId) { - iMasterPool.Remove(arrayIndex); + masterPool.Remove(arrayIndex); } } @@ -323,178 +410,51 @@ } // Clear up cache information - iCacheInfo.Remove(aItemId); + cacheInfo.Remove(aItemId); } // --------------------------------------------------------------------- // CPcsCache::RemoveAllFromCacheL // // --------------------------------------------------------------------- -void CPcsCache::RemoveAllFromCache() +void CPcsCache::RemoveAllFromCacheL() { - PRINT ( _L("Enter CPcsCache::RemoveAllFromCache") ); + PRINT ( _L("Enter CPcsCache::RemoveAllFromCacheL") ); - const TInt keyArrCount = iKeyArr.Count(); - for ( TInt i = 0 ; i < keyArrCount ; i++ ) + for (TInt i = 0; i < keyArr.Count(); i++) { - iKeyArr[i]->ResetAndDestroy(); + keyArr[i]->ResetAndDestroy(); + } - iMasterPool.ResetAndDestroy(); - iCacheInfo.Close(); + masterPool.ResetAndDestroy(); + cacheInfo.Close(); - PRINT ( _L("End CPcsCache::RemoveAllFromCache") ); + PRINT ( _L("End CPcsCache::RemoveAllFromCacheL") ); } // --------------------------------------------------------------------- // CPcsCache::SetPoolMap // // --------------------------------------------------------------------- -void CPcsCache::SetPoolMap(TUint64& aPoolMap, TInt aArrayIndex) +void CPcsCache::SetPoolMap(TInt& aPoolMap, TInt arrayIndex) { - __ASSERT_DEBUG( aArrayIndex < 64, User::Panic(_L("CPcsCache"), KErrOverflow ) ); + TReal val; + Math::Pow(val, 2, arrayIndex); - /* Some platforms do not support 64 bits shift operations. - * Split to two 32 bits operations. - */ - - TUint32 poolMapH = I64HIGH(aPoolMap); - TUint32 poolMapL = I64LOW(aPoolMap); - - TUint32 valH = 0; - TUint32 valL = 0; - if (aArrayIndex < 32) - { - valL = 1 << aArrayIndex; - } - else - { - valH = 1 << (aArrayIndex-32); - } - - poolMapH |= valH; - poolMapL |= valL; - - aPoolMap = MAKE_TUINT64(poolMapH, poolMapL); + aPoolMap |= (TInt) val; } // --------------------------------------------------------------------- // CPcsCache::GetPoolMap // // --------------------------------------------------------------------- -TBool CPcsCache::GetPoolMap(TUint64& aPoolMap, TInt aArrayIndex) +TBool CPcsCache::GetPoolMap(TInt& aPoolMap, TInt arrayIndex) { - __ASSERT_DEBUG( aArrayIndex < 64, User::Panic(_L("CPcsCache"), KErrOverflow ) ); - - /* Some platforms do not support 64 bits shift operations. - * Split to two 32 bits operations. - */ - - TUint32 poolMapH = I64HIGH(aPoolMap); - TUint32 poolMapL = I64LOW(aPoolMap); - - TUint32 valH = 0; - TUint32 valL = 0; - if (aArrayIndex < 32) - { - valL = 1 << aArrayIndex; - } - else - { - valH = 1 << (aArrayIndex-32); - } - - TBool ret = (poolMapH & valH) || (poolMapL & valL); - - return (ret); - } - -// --------------------------------------------------------------------- -// CPcsCache::GetFirstCharsForDataL -// -// --------------------------------------------------------------------- -void CPcsCache::GetFirstCharsForDataL( const TDesC& aData, RArray& aFirstChars ) const - { - // Split the data into words - CWords* words = CWords::NewLC(aData); + TReal val; + Math::Pow(val, 2, arrayIndex); - // Find indexing characters for each word - for (TInt i = 0; i < words->MdcaCount(); i++) - { - TPtrC16 word = words->MdcaPoint(i); - TBool lastCharIsChinese = EFalse; - - // If the word contains any Chinese characters, then it is - // stored to cache according all the available spellings of - // all the Chinese characters - if ( iAlgorithm->FindUtilECE()->IsChineseWordIncluded(word) ) - { - const TInt wordLength = word.Length(); - for (TInt j = 0; j < wordLength; j++) - { - TText curChar = word[j]; - RPointerArray spellList; - CleanupResetAndDestroyPushL( spellList ); - if ( iAlgorithm->FindUtilECE()->DoTranslationL(curChar, spellList) ) - { - lastCharIsChinese = ETrue; - // Append first char of each spelling - const TInt spellListCount = spellList.Count(); - for (TInt k = 0; k < spellListCount; k++) - { - const HBufC* spelling = spellList[k]; - aFirstChars.AppendL( (*spelling)[0] ); - } - } - else - { - if ( lastCharIsChinese ) - { - aFirstChars.AppendL( word[j] ); - lastCharIsChinese = EFalse; - } - } - CleanupStack::PopAndDestroy( &spellList ); // ResetAndDestroy - } - } - - // If the first charcter of the word is non-Chinese, then it's stored to the - // cache according this first character. Other characters of the word may or - // may not be Chinese. - if ( !iAlgorithm->FindUtilECE()->IsChineseWordIncluded( word.Left(1) ) ) - { - aFirstChars.AppendL( word[0] ); - } - } - CleanupStack::PopAndDestroy(words); - } - -// --------------------------------------------------------------------- -// CPcsCache::GetPoolIdsForCharsL -// -// --------------------------------------------------------------------- -void CPcsCache::GetPoolIdsForCharsL( const RArray& aChars, RArray& aPoolIds ) const - { - // There can potentially be two pool IDs for each character. - // Reserve memory for this upfront to prevent unnecessary reallocations. - aPoolIds.ReserveL( aChars.Count() * 2 ); - - const TInt charsCount = aChars.Count() ; - for ( TInt i = 0 ; i < charsCount ; ++i ) - { - TChar character = aChars[i]; - TInt itutPoolId = iKeyMap->PoolIdForCharacter( character, EPredictiveItuT ); - if ( itutPoolId != KErrNotFound ) - { - aPoolIds.AppendL( itutPoolId ); - } - - TInt qwertyPoolId = iKeyMap->PoolIdForCharacter( character, EPredictiveQwerty ); - if ( qwertyPoolId != KErrNotFound ) - { - aPoolIds.AppendL( qwertyPoolId ); - } - } + return (aPoolMap & (TInt) val); } // --------------------------------------------------------------------- @@ -512,8 +472,7 @@ // --------------------------------------------------------------------- void CPcsCache::SetDataFields(RArray& aDataFields) { - const TInt dataFieldsCount = aDataFields.Count(); - for (TInt i(0); i < dataFieldsCount; i++) + for (TInt i(0); i < aDataFields.Count(); i++) { iDataFields.Append(aDataFields[i]); } @@ -525,8 +484,7 @@ // --------------------------------------------------------------------- void CPcsCache::GetDataFields(RArray& aDataFields) { - const TInt dataFieldsCount = iDataFields.Count(); - for (TInt i(0); i < dataFieldsCount; i++) + for (TInt i(0); i < iDataFields.Count(); i++) { aDataFields.Append(iDataFields[i]); } @@ -577,8 +535,8 @@ PRINT ( _L("Enter CPcsCache::SetSortOrder") ); iSortOrder.Reset(); - const TInt sortOrderCount = aSortOrder.Count(); - for (TInt i(0); i < sortOrderCount; i++) + + for (TInt i(0); i < aSortOrder.Count(); i++) { iSortOrder.Append(aSortOrder[i]); } @@ -595,8 +553,8 @@ void CPcsCache::GetSortOrder(RArray& aSortOrder) { aSortOrder.Reset(); - const TInt sortOrderCount = iSortOrder.Count(); - for (TInt i(0); i < sortOrderCount; i++) + + for (TInt i(0); i < iSortOrder.Count(); i++) { aSortOrder.Append(iSortOrder[i]); } @@ -609,8 +567,8 @@ void CPcsCache::GetIndexOrder(RArray& aIndexOrder) { aIndexOrder.Reset(); - const TInt indexOrderCount = iIndexOrder.Count(); - for (TInt i(0); i < indexOrderCount; i++) + + for (TInt i(0); i < iIndexOrder.Count(); i++) { aIndexOrder.Append(iIndexOrder[i]); } @@ -624,11 +582,9 @@ { iIndexOrder.Reset(); - const TInt sortOrderCount = iSortOrder.Count(); - const TInt dataFieldsCount = iDataFields.Count(); - for (TInt i = 0; i < sortOrderCount; i++) + for (int i = 0; i < iSortOrder.Count(); i++) { - for (TInt j = 0; j ResetAndDestroy(); + keyArr[i]->ResetAndDestroy(); } - iMasterPool.Reset(); - iCacheInfo.Close(); - //now add data again from the iMasterPoolBackup - const TInt masterPoolBackupCount = iMasterPoolBackup.Count(); - for (TInt i = 0; i < masterPoolBackupCount; i++ ) + masterPool.Reset(); + cacheInfo.Close(); + //now add data again from the masterPoolBackup + for (TInt i = 0; i < masterPoolBackup.Count(); i++ ) { - CPsData* temp = iMasterPoolBackup[i]; + CPsData* temp = static_cast(masterPoolBackup[i]); AddToCacheL( *temp ); } - iMasterPoolBackup.Reset(); - } - -// --------------------------------------------------------------------- -// CPcsCache::GetFirstNameIndex -// -// --------------------------------------------------------------------- -TInt CPcsCache::GetFirstNameIndex() const - { - TInt fnIndex = KErrNotFound; - const TInt dataFieldsCount = iDataFields.Count(); - for ( TInt i = 0 ; i < dataFieldsCount && fnIndex == KErrNotFound ; ++i ) - { - if ( iDataFields[i] == R_VPBK_FIELD_TYPE_FIRSTNAME ) - { - fnIndex = i; - } - } - return fnIndex; - } - -// --------------------------------------------------------------------- -// CPcsCache::GetLastNameIndex -// -// --------------------------------------------------------------------- -TInt CPcsCache::GetLastNameIndex() const - { - TInt lnIndex = KErrNotFound; - const TInt dataFieldsCount = iDataFields.Count(); - for ( TInt i = 0 ; i < dataFieldsCount && lnIndex == KErrNotFound ; ++i ) - { - if ( iDataFields[i] == R_VPBK_FIELD_TYPE_LASTNAME ) - { - lnIndex = i; - } - } - return lnIndex; - } - + masterPoolBackup.Reset(); + } // End of file diff -r 6b5524b4f673 -r 38bb213f60ba predictivesearch/PcsAlgorithm/Algorithm2/src/CPcsKeyMap.cpp --- a/predictivesearch/PcsAlgorithm/Algorithm2/src/CPcsKeyMap.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/predictivesearch/PcsAlgorithm/Algorithm2/src/CPcsKeyMap.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -23,37 +23,9 @@ #include "FindUtilChineseECE.h" #include "CPcsDebug.h" #include "CPcsKeyMap.h" -#include "CPsQueryItem.h" -#include -#include #include #include - -// Unnamed namespace for local definitions -namespace { - -#ifdef _DEBUG - enum TPanicCode - { - EPanicPreCond_MultipleSingleCharMatching = 1, - EPanicPreCond_MultipleUIPriorityMatching = 2, - EPanicPreCond_MultipleEnglishPriorityMatching = 3, - EPanicPreCond_MultipleOthersPriorityMatching = 4, - EPanic_OverflowInPoolIndex = 5, - EPanic_InvalidKeyboardType = 6 - }; - - void Panic(TInt aReason) - { - _LIT(KPanicText, "CPcsKeyMap"); - User::Panic(KPanicText, aReason); - } -#endif // DEBUG - -} // namespace - - // ============================== MEMBER FUNCTIONS ============================ // ---------------------------------------------------------------------------- @@ -89,14 +61,11 @@ void CPcsKeyMap::ConstructL(CPcsAlgorithm2* aAlgorithm) { iLanguageNotSupported.Append(ELangJapanese); - iLanguageNotSupported.Append(ELangKorean); iAlgorithm = aAlgorithm; iPtiEngine = CPtiEngine::NewL(); - - SetupKeyboardTypesL(); + ConstructKeymapL(); - SetSpaceAndZeroOnSameKey(); } // ---------------------------------------------------------------------------- @@ -105,18 +74,17 @@ // ---------------------------------------------------------------------------- void CPcsKeyMap::ReconstructKeymapL() { + TLanguage lang = iAlgorithm->FindUtilECE()->CurrentInputLanguage(); + if (lang == ELangPrcChinese || !IsLanguageSupportedL(lang)) + lang = ELangEnglish; + + TInt keyboardType = CurrentKeyBoardTypeL(); + // Clear the keymap data array first when reconstruct the keymap. ResetKeyMap(); - // Always add English mappings first - AddKeyMapforConcreteKeyboardL( ELangEnglish ); - - // Then append the mappings of the current input language - TLanguage lang = iAlgorithm->FindUtilECE()->CurrentInputLanguage(); - if ( lang != ELangEnglish && IsLanguageSupportedL(lang) ) - { - AddKeyMapforConcreteKeyboardL( lang ); - } + // Add new keymap to the keymap data array according the current writing language. + AddKeyMapforConcreteKeyboardL( keyboardType, lang ); } // ---------------------------------------------------------------------------- @@ -125,107 +93,106 @@ // ---------------------------------------------------------------------------- void CPcsKeyMap::ConstructKeymapL() { - ConstructConcreteKeyMapL(); - - // Always add English mappings first - AddKeyMapforConcreteKeyboardL( ELangEnglish ); + TLanguage lang = iAlgorithm->FindUtilECE()->CurrentInputLanguage(); + if (lang == ELangPrcChinese || !IsLanguageSupportedL(lang)) + lang = ELangEnglish; + + TInt keyboardType = CurrentKeyBoardTypeL(); - // Then append the mappings of the current input language - TLanguage lang = iAlgorithm->FindUtilECE()->CurrentInputLanguage(); - if ( lang != ELangEnglish && IsLanguageSupportedL(lang) ) - { - AddKeyMapforConcreteKeyboardL( lang ); - } + ConstructConcreteKeyMapL( keyboardType, lang ); PRINT ( _L("----------------------------------------")); + } // ---------------------------------------------------------------------------- -// CPcsKeyMap::SetupKeyboardTypesL -// Initialise the keyboard type variables +// CPcsKeyMap::CurrentKeyBoardTypeL +// // ---------------------------------------------------------------------------- -void CPcsKeyMap::SetupKeyboardTypesL() +TInt CPcsKeyMap::CurrentKeyBoardTypeL() { + TInt keyBoardType = EPtiKeyboardNone; + +#ifdef RD_INTELLIGENT_TEXT_INPUT + TInt physicalKeyboard = 0; CRepository* aknFepRepository = CRepository::NewL( KCRUidAknFep ); + // Get all the physical keyboards which are connected to the phone currently. aknFepRepository->Get( KAknFepPhysicalKeyboards, physicalKeyboard ); delete aknFepRepository; - - PRINT1 ( _L("CPcsKeyMap::ConstructL: Physical keyboard support flag = 0x%02X"), physicalKeyboard ); + + + PRINT1 ( _L("CPcsKeyMap::CurrentKeyBoardTypeL: Physical keyboard support flag = 0x%02X"), physicalKeyboard ); // Constants follow the definition of KAknFepPhysicalKeyboards - const TInt KPtiKeyboard12Key = 0x01; - const TInt KPtiKeyboardQwerty4x12 = 0x02; - const TInt KPtiKeyboardQwerty4x10 = 0x04; - const TInt KPtiKeyboardQwerty3x11 = 0x08; - const TInt KPtiKeyboardHalfQwerty = 0x10; - const TInt KPtiKeyboardCustomQwerty = 0x20; + const TInt ptiKeyboard12Key = 0x01; // Default + // const TInt ptiKeyboardQwerty4x12 = 0x02; // Not used at the moment + const TInt ptiKeyboardQwerty4x10 = 0x04; + // const TInt ptiKeyboardQwerty3x11 = 0x08; // Not used at the moment + const TInt ptiKeyboardHalfQwerty = 0x10; + // const TInt ptiKeyboardCustomQwerty = 0x20; // Not used at the moment - // Setup ITU-T mode first. - // Use always 12-key mode since all the supported devices should have at least - // virtual ITU-T available. - iItutKeyboardType = EPtiKeyboard12Key; - // TODO: ITU-T type could be set to "none" if device does not have either - // virtual keypad or hardware ITU-T available. This could be decided according - // some cenrep value, feature flag, device model, or platform version. - - // Then setup QWERTY mode. On real-life devices there should never - // be more than one QWERTY keyboard available but on emulator there can be several. - // Use the first one found in the following precedence - if ( physicalKeyboard & KPtiKeyboardQwerty3x11 ) + // If there are more than 1 keyboards on HW, The priority from high to low for + // selecting keyboard is EPtiKeyboard12Key, EPtiKeyboardHalfQwerty, EPtiKeyboardQwerty4x10 + if ( physicalKeyboard & ptiKeyboard12Key ) { - iQwertyKeyboardType = EPtiKeyboardQwerty3x11; + keyBoardType = EPtiKeyboard12Key; } - else if ( physicalKeyboard & KPtiKeyboardQwerty4x10 ) + else if ( physicalKeyboard & ptiKeyboardHalfQwerty ) { - iQwertyKeyboardType = EPtiKeyboardQwerty4x10; - } - else if ( physicalKeyboard & KPtiKeyboardQwerty4x12 ) - { - iQwertyKeyboardType = EPtiKeyboardQwerty4x12; + keyBoardType = EPtiKeyboardHalfQwerty; } - else if ( physicalKeyboard & KPtiKeyboardCustomQwerty ) + else if ( physicalKeyboard & ptiKeyboardQwerty4x10 ) { - iQwertyKeyboardType = EPtiKeyboardCustomQwerty; - } - else if ( physicalKeyboard & KPtiKeyboardHalfQwerty ) - { - iQwertyKeyboardType = EPtiKeyboardHalfQwerty; + keyBoardType = EPtiKeyboardQwerty4x10; } else +#endif { - iQwertyKeyboardType = EPtiKeyboardNone; + keyBoardType = EPtiKeyboard12Key; } - - // Decide, which keyboard is used for the "default" matching mode. - // If there is physical ITU-T available, or there's no physical QWERTY, - // then ITU-T is default. - iItutIsDefault = (physicalKeyboard & KPtiKeyboard12Key) || - (iQwertyKeyboardType == EPtiKeyboardNone); - - PRINT1 ( _L("CPcsKeyMap::ConstructL: ITU-T Keyboard chosen for Predictive Search = %d"), iItutKeyboardType ); - PRINT1 ( _L("CPcsKeyMap::ConstructL: QWERTY Keyboard chosen for Predictive Search = %d"), iQwertyKeyboardType ); + return keyBoardType; } - // ---------------------------------------------------------------------------- // CPcsKeyMap::ConstructConcreteKeyMapL // // ---------------------------------------------------------------------------- -void CPcsKeyMap::ConstructConcreteKeyMapL() +void CPcsKeyMap::ConstructConcreteKeyMapL( TInt aKeyboardType, TLanguage aLanguage ) { - if ( iItutKeyboardType != EPtiKeyboardNone ) + switch ( aKeyboardType ) { - // Construct for Itut keyboard by default - PRINT ( _L("CPcsKeyMap::ConstructConcreteKeyMapL: Construct keymap for ITU-T")); - ConstructForItutKeyboardL(); - } - if ( iQwertyKeyboardType != EPtiKeyboardNone ) - { - // Construct for any QWERTY keyboard - PRINT1 ( _L("CPcsKeyMap::ConstructConcreteKeyMapL: Construct keymap for QWERTY keyboard type %d"), - iQwertyKeyboardType ); - ConstructForQwertyKeyboardL( iQwertyKeyboardType ); + case EPtiKeyboard12Key: + { + // Construct for Itut keyboard by default + PRINT ( _L("CPcsKeyMap::ConstructConcreteKeyMapL: Construct keymap for ContructForItutKeyboardL")); + + ContructForItutKeyboardL( aLanguage ); + break; + } + case EPtiKeyboardHalfQwerty: + { + // Construct for Half Qwerty keyboard + PRINT ( _L("CPcsKeyMap::ConstructConcreteKeyMapL: Construct keymap for ContructForHalfQwertyKeyboardL")); + + ContructForHalfQwertyKeyboardL( aLanguage ); + break; + } + case EPtiKeyboardQwerty4x10: + { + // Construct for 4x10 Qwerty keyboard + PRINT ( _L("CPcsKeyMap::ConstructConcreteKeyMapL: Construct keymap for ContructFor4x10QwertyKeyboardL")); + + ContructFor4x10QwertyKeyboardL( aLanguage ); + break; + } + default: + { + // Construct for Itut keyboard + PRINT ( _L("CPcsKeyMap::ConstructConcreteKeyMapL: Construct keymap for ContructForItutKeyboardL")); + + ContructForItutKeyboardL( aLanguage ); + } } } @@ -233,16 +200,49 @@ // CPcsKeyMap::AddKeyMapforConcreteKeyboardL // // ---------------------------------------------------------------------------- -void CPcsKeyMap::AddKeyMapforConcreteKeyboardL( TLanguage aLanguage ) +void CPcsKeyMap::AddKeyMapforConcreteKeyboardL( TInt aKeyboardType, TLanguage aLanguage ) { - if ( iItutKeyboardType != EPtiKeyboardNone ) + // If it's TW or HK variant, the key map for English also needs add to current key map. + TBool needAddEnglishKeyMap = ( aLanguage == ELangTaiwanChinese || aLanguage == ELangHongKongChinese ); + + // Add the keymap for current writing language. + switch ( aKeyboardType ) { - AddKeyMapforItutL( aLanguage ); - } - - if ( iQwertyKeyboardType != EPtiKeyboardNone ) - { - AddKeyMapForQwertyKeyboardL( aLanguage, iQwertyKeyboardType ); + case EPtiKeyboard12Key: + { + AddKeyMapforItutL( aLanguage ); + if ( needAddEnglishKeyMap ) + { + AddKeyMapforItutL( ELangEnglish ); + } + break; + } + case EPtiKeyboardHalfQwerty: + { + AddKeyMapforHalfQwertyKeyboardL( aLanguage ); + if ( needAddEnglishKeyMap ) + { + AddKeyMapforHalfQwertyKeyboardL( ELangEnglish ); + } + break; + } + case EPtiKeyboardQwerty4x10: + { + AddKeyMapfor4x10QwertyKeyboardL( aLanguage ); + if ( needAddEnglishKeyMap ) + { + AddKeyMapfor4x10QwertyKeyboardL( ELangEnglish ); + } + break; + } + default: + { + AddKeyMapforItutL( aLanguage ); + if ( needAddEnglishKeyMap ) + { + AddKeyMapforItutL( ELangEnglish ); + } + } } } @@ -252,18 +252,12 @@ // ---------------------------------------------------------------------------- void CPcsKeyMap::ResetKeyMap() { - const TInt ItutKeyMappingsCount = iItutKeyMappings.Count(); - const TInt qwertyKeyMappingsCount = iQwertyKeyMappings.Count(); - for (TInt i = 0; i < ItutKeyMappingsCount; i++) + for (TInt i = 0; i < iAllKeyMappingsPtrArr.Count(); i++) { - iItutKeyMappings[i]->iKeyMappingArray.Reset(); + iAllKeyMappingsPtrArr[i]->iKeyMappingArray.Close(); } - for (TInt i = 0; i < qwertyKeyMappingsCount; i++) - { - iQwertyKeyMappings[i]->iKeyMappingArray.Reset(); - } + } - // ---------------------------------------------------------------------------- // CPcsKeyMap::~CPcsKeyMap // Destructor @@ -274,162 +268,137 @@ // Cleanup local arrays iLanguageNotSupported.Reset(); - iItutKeyMappings.ResetAndDestroy(); - iItutKeys.Close(); - iQwertyKeyMappings.ResetAndDestroy(); - iQwertyKeys.Close(); + iAllKeyMappingsPtrArr.ResetAndDestroy(); + iKeysForPoolFormation.Close(); delete iPtiEngine; } // ---------------------------------------------------------------------------- -// CPcsKeyMap::GetMixedKeyStringForQueryL -// aDestStr will have the length as the number of items in aSrcQuery. -// ---------------------------------------------------------------------------- -void CPcsKeyMap::GetMixedKeyStringForQueryL( - CPsQuery& aSrcQuery, TDes& aDestStr) const -{ - PRINT ( _L("Enter CPcsKeyMap::GetMixedKeyStringForQueryL") ); - - GetMixedKeyStringForDataL( aSrcQuery, aSrcQuery.QueryAsStringLC(), aDestStr ); - CleanupStack::PopAndDestroy(); //result of QueryAsStringLC - - PRINT ( _L("End CPcsKeyMap::GetMixedKeyStringForQueryL") ); -} - -// ---------------------------------------------------------------------------- -// CPcsKeyMap::GetMixedKeyStringForDataL -// aDestStr will have the same length as aSrcData. aSrcQuery can be shorter. +// CPcsKeyMap::GetNumericKeyStringL +// // ---------------------------------------------------------------------------- -void CPcsKeyMap::GetMixedKeyStringForDataL( - CPsQuery& aSrcQuery, const TDesC& aSrcData, TDes& aDestStr) const -{ - PRINT ( _L("Enter CPcsKeyMap::GetMixedKeyStringForDataL") ); +void CPcsKeyMap::GetNumericKeyString(const TDesC& aSrcStr, TDes& aDestStr) + { + for (int i = 0; i < aSrcStr.Length(); i++) + { + TInt index = KeyForCharacter(aSrcStr[i]); - const TInt srcDataLength = aSrcData.Length(); - for ( TInt i = 0; i < srcDataLength; ++i ) - { - TChar character( aSrcData[i] ); - character.LowerCase(); - if ( i < aSrcQuery.Count() ) + // If a character is not mapped to numeric key append the character + if (index == -1) { - CPsQueryItem& currentItem = aSrcQuery.GetItemAtL(i); - TKeyboardModes curMode = ResolveKeyboardMode( currentItem.Mode() ); - TPtiKey key = KeyForCharacter( aSrcData[i], curMode ); - // If a character is not mapped to any key or it's entered in non-predictive mode, - // then append the character as exact. - if ( EPtiKeyNone == key ) - { - aDestStr.Append( character ); - } - else - { - aDestStr.Append( DefaultCharForKey(key, curMode) ); - } + aDestStr.Append(aSrcStr[i]); } else { - // characters over query length are taken as exact - aDestStr.Append( character ); + aDestStr.Append(index); } } - - PRINT1 ( _L("CPcsKeyMap::GetMixedKeyStringForDataL: Return string: \"%S\""), - &aDestStr ); - - PRINT ( _L("End CPcsKeyMap::GetMixedKeyStringForDataL") ); -} + } // ---------------------------------------------------------------------------- // CPcsKeyMap::KeyForCharacter // // ---------------------------------------------------------------------------- -TPtiKey CPcsKeyMap::KeyForCharacter(TText aChar, TKeyboardModes aKbMode) const +TInt CPcsKeyMap::KeyForCharacter(const TChar& aChar) { - const RPointerArray* keyMappings = KeyMappings( aKbMode ); - - // Don't return any key in the exact mode - if ( !keyMappings ) - { - return EPtiKeyNone; - } - TInt index = KErrNotFound; - TText lChar = User::LowerCase(aChar); + TChar lChar = User::LowerCase(aChar); - const TInt count = keyMappings->Count() - 1; + TInt count = iAllKeyMappingsPtrArr.Count() - 1; for (TInt i = 0; i < count; i++) { - index = (*keyMappings)[i]->iKeyMappingArray.Find(lChar); + index = iAllKeyMappingsPtrArr[i]->iKeyMappingArray.Find(lChar); if (index != KErrNotFound) { - return (*keyMappings)[i]->iKey; + return (TInt) iAllKeyMappingsPtrArr[i]->key; } } - return EPtiKeyNone; + return index; } - // ---------------------------------------------------------------------------- -// CPcsKeyMap::AddKeyMapForQwertyKeyboardL +// CPcsKeyMap::ContructForHalfQwertyKeyboardL // // ---------------------------------------------------------------------------- -void CPcsKeyMap::AddKeyMapForQwertyKeyboardL(TLanguage aLanguage, TPtiKeyboardType aKbType) +void CPcsKeyMap::ContructForHalfQwertyKeyboardL(TLanguage aLanguage) { -#ifdef RD_INTELLIGENT_TEXT_INPUT - iPtiEngine->ActivateLanguageL(aLanguage); - iPtiEngine->SetKeyboardType(aKbType); +#ifdef RD_INTELLIGENT_TEXT_INPUT + + iKeysForPoolFormation.Append(EPtiKeyQwertyQ); + iKeysForPoolFormation.Append(EPtiKeyQwertyE); + iKeysForPoolFormation.Append(EPtiKeyQwertyT); + iKeysForPoolFormation.Append(EPtiKeyQwertyU); + iKeysForPoolFormation.Append(EPtiKeyQwertyO); + iKeysForPoolFormation.Append(EPtiKeyQwertyA); + iKeysForPoolFormation.Append(EPtiKeyQwertyD); + iKeysForPoolFormation.Append(EPtiKeyQwertyG); + iKeysForPoolFormation.Append(EPtiKeyQwertyJ); + iKeysForPoolFormation.Append(EPtiKeyQwertyL); + iKeysForPoolFormation.Append(EPtiKeyQwertyZ); + iKeysForPoolFormation.Append(EPtiKeyQwertyC); + iKeysForPoolFormation.Append(EPtiKeyQwertyB); + iKeysForPoolFormation.Append(EPtiKeyQwertyM); + iKeysForPoolFormation.Append(EPtiKeyQwerty0); + // one additional pool for special characters not mapped too any keys. + // This should always be the last one in the arrary + iKeysForPoolFormation.Append(EPtiKeyNone); + // Now add the keymap arrays to hold the keymap data + for (TInt i = 0; i < iKeysForPoolFormation.Count(); i++) + { + TKeyMappingData *keyData = new (ELeave) TKeyMappingData; + keyData->key = iKeysForPoolFormation[i]; + iAllKeyMappingsPtrArr.Append(keyData); + } + // Add the keymap for current language + AddKeyMapforHalfQwertyKeyboardL(aLanguage); + + // If it's TW or HK variant, add the keymap for English language + if (aLanguage == ELangTaiwanChinese || aLanguage == ELangHongKongChinese) + { + AddKeyMapforHalfQwertyKeyboardL(ELangEnglish); + } + + PRINT ( _L("----------------------------------------")); +#endif // RD_INTELLIGENT_TEXT_INPUT + } +// ---------------------------------------------------------------------------- +// CPcsKeyMap::AddKeyMapforHalfQwertyKeyboardL +// +// ---------------------------------------------------------------------------- +void CPcsKeyMap::AddKeyMapforHalfQwertyKeyboardL(TLanguage aLanguage) + { +#ifdef RD_INTELLIGENT_TEXT_INPUT // Make a language object based on current language - CPtiCoreLanguage* coreLanguage = static_cast(iPtiEngine->GetLanguage( aLanguage )); + CPtiCoreLanguage* iCoreLanguage = static_cast(iPtiEngine->GetLanguage( aLanguage)); //Perfrom the key mappings only if the corelanguage is available - if (coreLanguage) + if (iCoreLanguage) { // Get the keyboard mappings for the language - CPtiKeyMapData* ptiKeyMapData = coreLanguage->RawKeyMapData(); + CPtiHalfQwertyKeyMappings* ptiKeyMappings = static_cast + (iCoreLanguage->GetHalfQwertyKeymappings()); - const TInt qwertyKeyMappingsCount = iQwertyKeyMappings.Count() - 1; - for (TInt i = 0; i < qwertyKeyMappingsCount; i++) + iPtiEngine->ActivateLanguageL(aLanguage, EPtiEngineHalfQwerty); + iPtiEngine->SetKeyboardType(EPtiKeyboardHalfQwerty); + + for (TInt i = 0; i < iAllKeyMappingsPtrArr.Count() - 1; i++) { - AddDataForQwertyKeyboardL( ptiKeyMapData, aKbType, - iQwertyKeys[i], *(iQwertyKeyMappings[i]) ); + AddDataForHalfQwertyKeyboardL( ptiKeyMappings, iKeysForPoolFormation[i], *(iAllKeyMappingsPtrArr[i])); } } #endif // RD_INTELLIGENT_TEXT_INPUT } // ---------------------------------------------------------------------------- -// CPcsKeyMap::ConstructForQwertyKeyboardL -// Destructor -// ---------------------------------------------------------------------------- -void CPcsKeyMap::ConstructForQwertyKeyboardL(TPtiKeyboardType aKbType) - { -#ifdef RD_INTELLIGENT_TEXT_INPUT - CreateKeyListFromKeyBindingTable( iQwertyKeys, aKbType ); - - // Now add the keymap arrays to hold the keymap data - const TInt qwertyKeysCount = iQwertyKeys.Count(); - for (TInt i = 0; i < qwertyKeysCount; i++) - { - TKeyMappingData* keyData = new (ELeave) TKeyMappingData; - keyData->iKey = iQwertyKeys[i]; - iQwertyKeyMappings.Append(keyData); - } - - PRINT ( _L("----------------------------------------")); -#endif //RD_INTELLIGENT_TEXT_INPUT - } - -// ---------------------------------------------------------------------------- -// CPcsKeyMap::AddDataForQwertyKeyboardL +// CPcsKeyMap::AddDataForHalfQwertyKeyboardL // // ---------------------------------------------------------------------------- -void CPcsKeyMap::AddDataForQwertyKeyboardL(CPtiKeyMapData* aPtiKeyMapData, - TPtiKeyboardType aKbType, - TPtiKey aKey, - TKeyMappingData& aKeyDataList) +void CPcsKeyMap::AddDataForHalfQwertyKeyboardL( CPtiHalfQwertyKeyMappings* aPtiKeyMappings, + TPtiKey aKey, + TKeyMappingData& aKeyDataList) { #ifdef RD_INTELLIGENT_TEXT_INPUT TPtiTextCase caseArray[] = @@ -442,15 +411,171 @@ EPtiCaseChrUpper }; - for (TInt i = 0; i < sizeof(caseArray) / sizeof(TPtiTextCase); i++) + TBuf<50> iResult; + for (int i = 0; i < sizeof(caseArray) / sizeof(TPtiTextCase); i++) { - TPtrC result = aPtiKeyMapData->DataForKey(aKbType, aKey, caseArray[i]); + iResult.Zero(); + aPtiKeyMappings->GetDataForKey(aKey, iResult, caseArray[i]); + + for (int j = 0; j < iResult.Length(); j++) + aKeyDataList.iKeyMappingArray.Append(iResult[j]); + + PRINT2 ( _L("CPcsKeyMap: Mapping for Key %c = %S"), aKey,&iResult) + } +#endif // RD_INTELLIGENT_TEXT_INPUT + } + +// ---------------------------------------------------------------------------- +// CPcsKeyMap::ContructFor4x10QwertyKeyboardL +// Destructor +// ---------------------------------------------------------------------------- +void CPcsKeyMap::ContructFor4x10QwertyKeyboardL(TLanguage aLanguage) + { +#ifdef RD_INTELLIGENT_TEXT_INPUT +// The special 4x10 Qwerty keyboard for Sonja. + iKeysForPoolFormation.Append( EPtiKeyQwertyA ); + iKeysForPoolFormation.Append( EPtiKeyQwerty8 ); + iKeysForPoolFormation.Append( EPtiKeyQwertyC ); + iKeysForPoolFormation.Append( EPtiKeyQwertyD ); + iKeysForPoolFormation.Append( EPtiKeyQwertyE ); + iKeysForPoolFormation.Append( EPtiKeyQwerty4 ); + iKeysForPoolFormation.Append( EPtiKeyQwerty5 ); + iKeysForPoolFormation.Append( EPtiKeyQwerty6 ); + iKeysForPoolFormation.Append( EPtiKeyQwertyI ); + iKeysForPoolFormation.Append( EPtiKeyQwertyHash ); // Could have been EPtiKeyQwertyJ, EPtiKeyHash + iKeysForPoolFormation.Append( EPtiKeyQwertyK ); + iKeysForPoolFormation.Append( EPtiKeyQwertyL ); + iKeysForPoolFormation.Append( EPtiKeyQwerty0 ); + iKeysForPoolFormation.Append( EPtiKeyQwerty9 ); + iKeysForPoolFormation.Append( EPtiKeyQwertyO ); + iKeysForPoolFormation.Append( EPtiKeyQwertyP ); + iKeysForPoolFormation.Append( EPtiKeyQwertyQ ); + iKeysForPoolFormation.Append( EPtiKeyQwerty1 ); + iKeysForPoolFormation.Append( EPtiKeyQwertyS ); + iKeysForPoolFormation.Append( EPtiKeyQwerty2 ); + iKeysForPoolFormation.Append( EPtiKeyStar ); // Could have been EPtiKeyQwertyU + iKeysForPoolFormation.Append( EPtiKeyQwertyV ); // Could have been EPtiKeyQwerty7 + iKeysForPoolFormation.Append( EPtiKeyQwertyW ); + iKeysForPoolFormation.Append( EPtiKeyQwertyX ); + iKeysForPoolFormation.Append( EPtiKeyQwerty3 ); + iKeysForPoolFormation.Append( EPtiKeyQwertyZ ); + + // one additional pool for special characters not mapped too any keys. + // This should always be the last one in the arrary + iKeysForPoolFormation.Append(EPtiKeyNone); + + // Now add the keymap arrays to hold the keymap data + for (TInt i = 0; i < iKeysForPoolFormation.Count(); i++) + { + TKeyMappingData *keyData = new (ELeave) TKeyMappingData; + keyData->key = iKeysForPoolFormation[i]; + iAllKeyMappingsPtrArr.Append(keyData); + } + + // Add the keymap for current language + AddKeyMapfor4x10QwertyKeyboardL(aLanguage); + + // If it's TW or HK variant, add the keymap for English language + if (aLanguage == ELangTaiwanChinese || aLanguage == ELangHongKongChinese) + { + AddKeyMapfor4x10QwertyKeyboardL(ELangEnglish); + } + + PRINT ( _L("----------------------------------------")); +#endif //RD_INTELLIGENT_TEXT_INPUT + } - const TInt resultLength = result.Length(); - for (TInt j = 0; j < resultLength; j++) - aKeyDataList.iKeyMappingArray.Append(result[j]); +// ---------------------------------------------------------------------------- +// CPcsKeyMap::AddKeyMapfor4x10QwertyKeyboardL +// +// ---------------------------------------------------------------------------- +void CPcsKeyMap::AddKeyMapfor4x10QwertyKeyboardL(TLanguage aLanguage) + { +#ifdef RD_INTELLIGENT_TEXT_INPUT + // Make a language object based on current language + CPtiCoreLanguage* iCoreLanguage = static_cast(iPtiEngine->GetLanguage(aLanguage)); + + //Perfrom the key mappings only if the corelanguage is available + if (iCoreLanguage) + { + // Get the keyboard mappings for the language + CPtiQwertyKeyMappings* iPtiKeyMappings = static_cast + (iCoreLanguage->GetQwertyKeymappings()); + iPtiEngine->SetKeyboardType(EPtiKeyboardQwerty4x10); + + for (TInt i = 0; i < iAllKeyMappingsPtrArr.Count() - 1; i++) + { + AddDataFor4x10QwertyKeyboardL(iPtiKeyMappings, iKeysForPoolFormation[i], *(iAllKeyMappingsPtrArr[i])); + } + +#ifdef HACK_FOR_E72_J_KEY + AddDataFor4x10QwertyKeyboardE72HackL(); +#endif // HACK_FOR_E72_J_KEY + } +#endif //RD_INTELLIGENT_TEXT_INPUT + + } + +#ifdef HACK_FOR_E72_J_KEY +// ---------------------------------------------------------------------------- +// CPcsKeyMap::AddDataFor4x10QwertyKeyboardE72HackL +// +// Key code for J/# key in Sonja is EPtiKeyQwertyHash (127). +// No returned character code ('J', 'j', '#') has 127 as ASCII value. +// In this case we must add key to the list of characters for the pool. +// ---------------------------------------------------------------------------- +void CPcsKeyMap::AddDataFor4x10QwertyKeyboardE72HackL() + { +#ifdef RD_INTELLIGENT_TEXT_INPUT + PRINT ( _L("Enter CPcsKeyMap::AddDataFor4x10QwertyKeyboardE72HackL") ); - PRINT2 ( _L("CPcsKeyMap: Mapping for Key %c = %S"), aKey, &result) + TPtiKey keyValue = (TPtiKey) EPtiKeyQwertyHash; + TInt keyIndex = iKeysForPoolFormation.Find(keyValue); + + PRINT3 ( _L("CPcsKeyMap: ===== At index %d appending key to list: '%c' (#%d) -Hack-for-E72-"), + keyIndex, (TInt) keyValue, (TInt) keyValue); + + if ( KErrNotFound != keyIndex ) + { + iAllKeyMappingsPtrArr[keyIndex]->iKeyMappingArray.Append(keyValue); + } + + PRINT ( _L("CPcsKeyMap: ===================================================") ); + + PRINT ( _L("End CPcsKeyMap::AddDataFor4x10QwertyKeyboardE72HackL") ); +#endif // RD_INTELLIGENT_TEXT_INPUT + } +#endif // HACK_FOR_E72_J_KEY + +// ---------------------------------------------------------------------------- +// CPcsKeyMap::AddDataFor4x10QwertyKeyboardL +// +// ---------------------------------------------------------------------------- +void CPcsKeyMap::AddDataFor4x10QwertyKeyboardL(CPtiQwertyKeyMappings* iPtiKeyMappings, + TPtiKey aKey, + TKeyMappingData& aKeyDataList) + { +#ifdef RD_INTELLIGENT_TEXT_INPUT + TPtiTextCase caseArray[] = + { + EPtiCaseUpper, + EPtiCaseLower, + EPtiCaseFnLower, + EPtiCaseFnUpper, + EPtiCaseChrLower, + EPtiCaseChrUpper + }; + + TBuf<50> iResult; + for (int i = 0; i < sizeof(caseArray) / sizeof(TPtiTextCase); i++) + { + iResult.Zero(); + iPtiKeyMappings->GetDataForKey(aKey, iResult, caseArray[i]); + + for (int j = 0; j < iResult.Length(); j++) + aKeyDataList.iKeyMappingArray.Append(iResult[j]); + + PRINT2 ( _L("CPcsKeyMap: Mapping for Key %c = %S"), aKey, &iResult) } #endif //RD_INTELLIGENT_TEXT_INPUT } @@ -459,33 +584,42 @@ // CPcsKeyMap::ContructForItutKeyboardL // // ---------------------------------------------------------------------------- -void CPcsKeyMap::ConstructForItutKeyboardL() +void CPcsKeyMap::ContructForItutKeyboardL(TLanguage aLanguage) { // Add the keys for Pool formation - iItutKeys.Append(EPtiKey0); - iItutKeys.Append(EPtiKey1); - iItutKeys.Append(EPtiKey2); - iItutKeys.Append(EPtiKey3); - iItutKeys.Append(EPtiKey4); - iItutKeys.Append(EPtiKey5); - iItutKeys.Append(EPtiKey6); - iItutKeys.Append(EPtiKey7); - iItutKeys.Append(EPtiKey8); - iItutKeys.Append(EPtiKey9); + iKeysForPoolFormation.Append(EPtiKey0); + iKeysForPoolFormation.Append(EPtiKey1); + iKeysForPoolFormation.Append(EPtiKey2); + iKeysForPoolFormation.Append(EPtiKey3); + iKeysForPoolFormation.Append(EPtiKey4); + iKeysForPoolFormation.Append(EPtiKey5); + iKeysForPoolFormation.Append(EPtiKey6); + iKeysForPoolFormation.Append(EPtiKey7); + iKeysForPoolFormation.Append(EPtiKey8); + iKeysForPoolFormation.Append(EPtiKey9); // one additional pool for special characters not mapped too any keys. // This should always be the last one in the arrary - iItutKeys.Append(EPtiKeyNone); + iKeysForPoolFormation.Append(EPtiKeyNone); // Now add the keymap arrays to hold the keymap data - const TInt ltutKeysCount = iItutKeys.Count(); - for (TInt i = 0; i < ltutKeysCount; i++) + for (TInt i = 0; i < iKeysForPoolFormation.Count(); i++) { TKeyMappingData *keyData = new (ELeave) TKeyMappingData; - keyData->iKey = iItutKeys[i]; - iItutKeyMappings.Append(keyData); + keyData->key = iKeysForPoolFormation[i]; + iAllKeyMappingsPtrArr.Append(keyData); + } + + // Add the keymap for current language + AddKeyMapforItutL(aLanguage); + + // If it's TW or HK variant, add the keymap for English language + if (aLanguage == ELangTaiwanChinese || aLanguage == ELangHongKongChinese) + { + AddKeyMapforItutL(ELangEnglish); } PRINT ( _L("----------------------------------------")); + } // ---------------------------------------------------------------------------- @@ -494,31 +628,29 @@ // ---------------------------------------------------------------------------- void CPcsKeyMap::AddKeyMapforItutL(TLanguage aLanguage) { - // Activate given language and get corresponding language object - iPtiEngine->ActivateLanguageL(aLanguage); - CPtiCoreLanguage* coreLanguage = static_cast (iPtiEngine->GetLanguage(aLanguage)); + // Make a language object based on current language + CPtiCoreLanguage* iCoreLanguage = static_cast (iPtiEngine->GetLanguage(aLanguage)); //Perfrom the key mappings only if the corelanguage is available - if (coreLanguage) + if (iCoreLanguage) { // Get the keyboard mappings for the language - CPtiKeyMapData* ptiKeyMapData = coreLanguage->RawKeyMapData(); + CPtiKeyMappings* iPtiKeyMappings = static_cast + (iCoreLanguage->GetKeymappings()); - const TInt ltutKeyMappingsCount = iItutKeyMappings.Count() - 1; - for (TInt i = 0; i < ltutKeyMappingsCount; i++) + for (TInt i = 0; i < iAllKeyMappingsPtrArr.Count() - 1; i++) { - AddDataForItutKeyboardL(ptiKeyMapData, iItutKeys[i], *(iItutKeyMappings[i])); + AddDataForItutKeyboardL(iPtiKeyMappings, iKeysForPoolFormation[i], *(iAllKeyMappingsPtrArr[i])); } } - if ( (aLanguage == ELangPrcChinese || aLanguage == ELangTaiwanChinese || aLanguage == ELangHongKongChinese) && - (iAlgorithm->FindUtilECE()->CurrentSearchMethod() == EAdptSearchStroke) ) + if (iAlgorithm->FindUtilECE()->CurrentInputLanguage() == ELangHongKongChinese) { - (*(iItutKeyMappings[1])).iKeyMappingArray.Append(0x4E00); //heng - (*(iItutKeyMappings[2])).iKeyMappingArray.Append(0x4E28); //shu - (*(iItutKeyMappings[3])).iKeyMappingArray.Append(0x4E3F); //pie - (*(iItutKeyMappings[4])).iKeyMappingArray.Append(0x4E36); //dian - (*(iItutKeyMappings[5])).iKeyMappingArray.Append(0x4E5B); //zhe + (*(iAllKeyMappingsPtrArr[1])).iKeyMappingArray.Append(0x4E00); //heng + (*(iAllKeyMappingsPtrArr[2])).iKeyMappingArray.Append(0x4E28); //shu + (*(iAllKeyMappingsPtrArr[3])).iKeyMappingArray.Append(0x4E3F); //pie + (*(iAllKeyMappingsPtrArr[4])).iKeyMappingArray.Append(0x4E36); //dian + (*(iAllKeyMappingsPtrArr[5])).iKeyMappingArray.Append(0x4E5B); //zhe } } @@ -526,80 +658,18 @@ // CPcsKeyMap::AddDataForItutKeyboardL // // ---------------------------------------------------------------------------- -void CPcsKeyMap::AddDataForItutKeyboardL(CPtiKeyMapData* aPtiKeyMapData, TPtiKey aKey, TKeyMappingData& aKeyDataList) +void CPcsKeyMap::AddDataForItutKeyboardL(CPtiKeyMappings* iPtiKeyMappings, TPtiKey aKey, TKeyMappingData& aKeyDataList) { TPtiTextCase caseArray[] = { EPtiCaseUpper, EPtiCaseLower }; - for (TInt i = 0; i< sizeof(caseArray) / sizeof(TPtiTextCase); i++) - { - TPtrC result = aPtiKeyMapData->DataForKey(EPtiKeyboard12Key, aKey, caseArray[i]); - const TInt resultLength = result.Length(); - for (TInt j = 0; j < resultLength; j++) - aKeyDataList.iKeyMappingArray.Append(result[j]); - PRINT2 ( _L("CPcsKeyMap: Mapping for Key %c = %S"), aKey,&result) - } - } - -// ---------------------------------------------------------------------------- -// CPcsKeyMap::CreateKeyMapFromKeyBindingTable -// -// ---------------------------------------------------------------------------- -void CPcsKeyMap::CreateKeyListFromKeyBindingTable( RArray& aKeyArray, - TPtiKeyboardType aKbType ) - { - PRINT ( _L("Enter CPcsKeyMap::CreateKeyListFromKeyBindingTable") ); - - // Use Eglish mappings to list the keys on the keyboard - TRAP_IGNORE( iPtiEngine->ActivateLanguageL( ELangEnglish ) ); - CPtiCoreLanguage* ptiLang = - static_cast(iPtiEngine->GetLanguage( ELangEnglish )); - - if (ptiLang) + TBuf<50> iResult; + for (int i = 0; i< sizeof(caseArray) / sizeof(TPtiTextCase); i++) { - const CPtiKeyMapData* keyMapData = ptiLang->RawKeyMapData(); - const TPtiKeyBinding* table = NULL; - TInt numItems = 0; - if ( keyMapData ) - { - table = keyMapData->KeyBindingTable(aKbType, numItems); - } - else - { - PRINT( _L("CPcsKeyMap::CreateKeyListFromKeyBindingTable: #### Failed to get RawKeyMapData ####") ); - } - - PRINT1 ( _L("CPcsKeyMap::CreateKeyListFromKeyBindingTable: Num of Items in KeyBindingTable is %d"), numItems ); - - // Get from the key table the keys for constructing the pools - if (table) - { - for (TInt i = 0; i < numItems; i++) - { - TPtiKey key = (TPtiKey) table[i].iScanCode; - // Get all keys with same EPtiCaseLower or EPtiCaseUpper case - // Only for one of the casing to avoid repetitions - if ( (EPtiKeyNone != key) && (EPtiCaseLower == table[i].iCase) ) - { - PRINT3 ( _L("CPcsKeyMap::CreateKeyListFromKeyBindingTable: Adding pool %d with key '%c' (0x%02X)"), - aKeyArray.Count(), key, key ); - aKeyArray.Append( key ); - } - } - } - else - { - PRINT ( _L("CPcsKeyMap::CreateKeyListFromKeyBindingTable: ##### Failed to create Key List (KeyBindingTable) #####") ); - } + iResult.Zero(); + iPtiKeyMappings->GetDataForKey(aKey, iResult, caseArray[i]); + for (int j = 0; j < iResult.Length(); j++) + aKeyDataList.iKeyMappingArray.Append(iResult[j]); + PRINT2 ( _L("CPcsKeyMap: Mapping for Key %c = %S"), aKey,&iResult) } - else - { - PRINT ( _L("CPcsKeyMap::CreateKeyListFromKeyBindingTable: ##### Failed to create Key List (Language) #####") ); - } - - // one additional pool for special characters not mapped too any keys. - // This should always be the last one in the arrary - aKeyArray.Append(EPtiKeyNone); - - PRINT ( _L("End CPcsKeyMap::CreateKeyListFromKeyBindingTable") ); } // ---------------------------------------------------------------------------- @@ -610,8 +680,7 @@ { TBool flag = ETrue; - const TInt languageNotSupportedCount = iLanguageNotSupported.Count(); - for (TInt i = 0; i < languageNotSupportedCount; i++) + for (int i = 0; i < iLanguageNotSupported.Count(); i++) { if (iLanguageNotSupported[i] == aLang) { @@ -621,131 +690,31 @@ return flag; } - -// ---------------------------------------------------------------------------- -// CPcsKeyMap::PoolIdForKey -// -// ---------------------------------------------------------------------------- -TInt CPcsKeyMap::PoolIdForKey(TPtiKey aKey, TKeyboardModes aKbMode) const - { - __ASSERT_DEBUG( (aKbMode==EPredictiveItuT || aKbMode==EPredictiveQwerty), - Panic(EPanic_InvalidKeyboardType) ); - - // From logical point of view, the Pool ID is an index of the key in - // an array which is formed by concatenating QWERTY keys array in the end - // of the ITU-T keys array. - TInt poolId = KErrNotFound; - if ( aKbMode == EPredictiveItuT && iItutKeys.Count() ) - { - poolId = iItutKeys.Find(aKey); - // IF the key is not found, then it should go to the special pool, - // which is the pool of the dummy key in the ITU-T keys array - if (KErrNotFound == poolId) - { - poolId = iItutKeys.Count() - 1; - } - } - else if ( aKbMode == EPredictiveQwerty && iQwertyKeys.Count() ) - { - poolId = iQwertyKeys.Find(aKey); - // IF the key is not found, then it should go to the special pool, - // which is the pool of the dummy key in the QWERTY keys array - if (KErrNotFound == poolId) - { - poolId = iQwertyKeys.Count() - 1; - } - // Pools of QWERTY keys come after pools of ITU-T keys - poolId += iItutKeys.Count(); - } - - // Pool ID must never exceed value 63, because CPcsCache class - // stores these values as bitmask into 64 bit variable. - __ASSERT_DEBUG( poolId < 64, Panic(EPanic_OverflowInPoolIndex) ); - return poolId; - } - // ---------------------------------------------------------------------------- // CPcsKeyMap::PoolIdForCharacter // // ---------------------------------------------------------------------------- -TInt CPcsKeyMap::PoolIdForCharacter( TChar aChar, TKeyboardModes aKbMode ) +TInt CPcsKeyMap::PoolIdForCharacter(TChar aChar) { - // Pools are formed according the predictive keyboard mapping(s). - // When selecting pool for non-predictive mode, we use the pool of the - // default keyboard. The non-predictive matches should be a sub set of the - // predictive matches of the default keyboard, although strictly speaking, - // there' no guarantee for this. - if ( aKbMode == ENonPredictive || aKbMode == EPredictiveDefaultKeyboard ) - { - aKbMode = ( iItutIsDefault ? EPredictiveItuT : EPredictiveQwerty ); - } - + TInt numValue = KErrNotFound; + // If character is a Chinese word character, then we select the // pool ID according the first character of the first spelling of the word. TRAP_IGNORE( aChar = FirstCharFromSpellingL( aChar ) ); - - TPtiKey key = KeyForCharacter( aChar, aKbMode ); - TInt poolId = PoolIdForKey( key, aKbMode ); - - return poolId; - } - -// ---------------------------------------------------------------------------- -// CPcsKeyMap::PoolCount -// -// ---------------------------------------------------------------------------- -TInt CPcsKeyMap::PoolCount() - { - return iItutKeyMappings.Count() + iQwertyKeyMappings.Count(); - } - -// ---------------------------------------------------------------------------- -// CPcsKeyMap::GetSpaceAndZeroOnSameKey -// -// ---------------------------------------------------------------------------- -TBool CPcsKeyMap::GetSpaceAndZeroOnSameKey( TKeyboardModes aMode ) - { - // Resolve ambiguous keyboard mode - aMode = ResolveKeyboardMode( aMode ); - if ( aMode == EPredictiveItuT ) + TInt key = KeyForCharacter(aChar); + if (key != KErrNotFound) { - return iSpaceAndZeroOnSameKeyOnItut; - } - else if ( aMode == EPredictiveQwerty ) - { - return iSpaceAndZeroOnSameKeyOnQwerty; + numValue = iKeysForPoolFormation.Find((TPtiKey) key); } else { - return EFalse; + // IF the key is not found, then it should go to the special pool, + // which is the last pool of iAllKeyMappingsPtrArr + numValue = iAllKeyMappingsPtrArr.Count() - 1; } - } - -// ---------------------------------------------------------------------------- -// CPcsKeyMap::SetSpaceAndZeroOnSameKey -// -// ---------------------------------------------------------------------------- -void CPcsKeyMap::SetSpaceAndZeroOnSameKey() - { - static const TInt KSpace = 0x20; // ASCII for " " - static const TInt KZero = 0x30; // ASCII for "0" - TChar charSpace(KSpace); - TChar charZero(KZero); - - TPtiKey keySpace; - TPtiKey keyZero; - - // ITU-T mode - keySpace = KeyForCharacter(charSpace, EPredictiveItuT); - keyZero = KeyForCharacter(charZero, EPredictiveItuT); - iSpaceAndZeroOnSameKeyOnItut = (keySpace == keyZero); - - // QWERTY mode - keySpace = KeyForCharacter(charSpace, EPredictiveQwerty); - keyZero = KeyForCharacter(charZero, EPredictiveQwerty); - iSpaceAndZeroOnSameKeyOnQwerty = (keySpace == keyZero); + return numValue; } // ---------------------------------------------------------------------------- @@ -757,7 +726,7 @@ TChar translated( aChar ); TBuf<1> temp; temp.Append( aChar ); - if ( iAlgorithm->FindUtilECE()->IsChineseWordIncluded( temp ) ) + if ( iAlgorithm->FindUtilECE()->IsChineseWord( temp ) ) { RPointerArray spellList; CleanupResetAndDestroyPushL( spellList ); @@ -769,91 +738,12 @@ } return translated; } - // ---------------------------------------------------------------------------- -// CPcsKeyMap::KeyMappings -// -// ---------------------------------------------------------------------------- -const RPointerArray* CPcsKeyMap::KeyMappings( TKeyboardModes aMode ) const - { - const RPointerArray* mappings = NULL; - - if ( aMode == EPredictiveItuT ) - { - mappings = &iItutKeyMappings; - } - else if ( aMode == EPredictiveQwerty ) - { - mappings = &iQwertyKeyMappings; - } - else if ( aMode == ENonPredictive ) - { - mappings = NULL; - } - else - { - mappings = NULL; - __ASSERT_DEBUG( EFalse, Panic( EPanic_InvalidKeyboardType ) ); - } - - return mappings; - } - -// ---------------------------------------------------------------------------- -// CPcsKeyMap::ResolveKeyboardMode +// CPcsKeyMap::PoolCount // // ---------------------------------------------------------------------------- -TKeyboardModes CPcsKeyMap::ResolveKeyboardMode( TKeyboardModes aKbMode ) const +TInt CPcsKeyMap::PoolCount() { - TKeyboardModes resolvedMode = aKbMode; - - // Substitute "default predictive" mode with actual mode - if ( resolvedMode == EPredictiveDefaultKeyboard ) - { - resolvedMode = ( iItutIsDefault ? EPredictiveItuT : EPredictiveQwerty ); - } - - // Substitute predictive mode with non-predictive mode if corresponding - // keyboard mappings are not available. - if ( ( resolvedMode == EPredictiveItuT && iItutKeyboardType == EPtiKeyboardNone ) || - ( resolvedMode == EPredictiveQwerty && iQwertyKeyboardType == EPtiKeyboardNone ) ) - { - PRINT1( _L("CPcsKeyMap::ResolveKeyboardMode: Mappings for requested mode %d unavailable. Falling back to non-predictive mode!"), aKbMode ); - resolvedMode = ENonPredictive; - } - - return resolvedMode; - } - -// ---------------------------------------------------------------------------- -// CPcsKeyMap::DefaultCharForKey -// -// ---------------------------------------------------------------------------- -TText CPcsKeyMap::DefaultCharForKey( TPtiKey aKey, TKeyboardModes aKbMode ) const - { - // On ITU-T, the Pti key code can be directly interpreted as unicode character. - // Thus, default characters for keys are 1,2,3,4,5,6,7,8,9,0,*,#. - TText defChar = aKey; - - // On QWERTY, using PtiKey values directly is not safe since all PtiKey values are - // not codepoints of printable Unicode characters. - // Treating these arbitrary numerical values as Unicode characters could break - // the uniqueness of keys when collated comparison is used. Also, converting same - // data multiple times to "compare format" would then break the data. - if ( aKbMode == EPredictiveQwerty ) - { - // Take first mapped character of the key and convert it to upper case. - TInt index = iQwertyKeys.Find( aKey ); - if ( index != KErrNotFound ) - { - const RArray& mappings = iQwertyKeyMappings[index]->iKeyMappingArray; - if ( mappings.Count() ) - { - defChar = User::UpperCase( mappings[0] ); - } - } - } - - return defChar; + return iAllKeyMappingsPtrArr.Count(); } // End of file diff -r 6b5524b4f673 -r 38bb213f60ba predictivesearch/PcsAlgorithm/Algorithm2/src/CPcsPoolElement.cpp --- a/predictivesearch/PcsAlgorithm/Algorithm2/src/CPcsPoolElement.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/predictivesearch/PcsAlgorithm/Algorithm2/src/CPcsPoolElement.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -73,25 +73,26 @@ } // ---------------------------------------------------------------------------- -// CPcsPoolElement::CompareByDataL -// +// CPcsPoolElement::CompareByData +// Calls CPsData::CompareByData to compare CPsData objects // // ---------------------------------------------------------------------------- -TInt CPcsPoolElement::CompareByDataL ( const CPcsPoolElement& aObject1, const CPcsPoolElement& aObject2 ) +TInt CPcsPoolElement::CompareByData ( const CPcsPoolElement& aObject1, const CPcsPoolElement& aObject2 ) { - CPsData *data1 = const_cast (aObject1).GetPsData(); - CPsData *data2 = const_cast (aObject2).GetPsData(); - return (CPcsAlgorithm2Utils::CompareDataBySortOrderL(*(data1), *(data2))); + CPsData *data1 = const_cast (aObject1).GetPsData(); + CPsData *data2 = const_cast (aObject2).GetPsData(); + return (CPcsAlgorithm2Utils::CompareDataBySortOrder(*(data1), *(data2))); } // CPcsPoolElement::IsDataMatch // // ---------------------------------------------------------------------------- -TBool CPcsPoolElement::IsDataMatch(TInt aIndex) +TBool CPcsPoolElement::IsDataMatch (TInt aIndex) { - __ASSERT_DEBUG( aIndex < 8, User::Panic( _L("CPcsPoolElement"), KErrOverflow ) ); - TUint8 val = 1 << aIndex; - return (iDataMatchAttribute & val); + TReal val; + Math::Pow(val, 2, aIndex); + + return(iDataMatchAttribute & (TUint8)val); } // ---------------------------------------------------------------------------- @@ -100,9 +101,10 @@ // ---------------------------------------------------------------------------- void CPcsPoolElement::SetDataMatch(TInt aIndex) { - __ASSERT_DEBUG( aIndex < 8, User::Panic( _L("CPcsPoolElement"), KErrOverflow ) ); - TUint8 val = 1 << aIndex; - iDataMatchAttribute |= val; + TReal val; + Math::Pow(val, 2, aIndex); + + iDataMatchAttribute |= (TUint8)val; } // ---------------------------------------------------------------------------- diff -r 6b5524b4f673 -r 38bb213f60ba predictivesearch/PcsAlgorithm/Algorithm2/src/CPsDataPluginInterface.cpp --- a/predictivesearch/PcsAlgorithm/Algorithm2/src/CPsDataPluginInterface.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/predictivesearch/PcsAlgorithm/Algorithm2/src/CPsDataPluginInterface.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -15,7 +15,6 @@ * */ - // INCLUDE FILES #include "CPsDataPluginInterface.h" #include "CPsDataPlugin.h" @@ -110,8 +109,7 @@ // Instantiate plugins for all impUIds by calling // InstantiatePlugInFromImpUidL - const TInt infoArrayCount = infoArray.Count(); - for ( TInt i=0; i < infoArrayCount; i++ ) + for ( TInt i=0; iIsDataStoresSupportedL(aDataStore)) { @@ -202,8 +200,8 @@ { PRINT ( _L("Enter CPsDataPluginInterface::GetAllSupportedDataStoresL") ); - const TInt instancesCount = iPsDataPluginInstances.Count(); - for ( TInt idx = 0; idx < instancesCount; idx++ ) + + for ( TInt idx = 0; idx < iPsDataPluginInstances.Count(); idx++ ) { iPsDataPluginInstances[idx]->GetSupportedDataStoresL(aDataStores); } @@ -221,23 +219,20 @@ PRINT ( _L("Enter CPsDataPluginInterface::GetAllSupportedDataStoresL") ); - const TInt instancesCount = iPsDataPluginInstances.Count(); - for ( TInt idx = 0; idx < instancesCount; idx++ ) - { - RPointerArray dataStores; - CleanupClosePushL( dataStores ); - iPsDataPluginInstances[idx]->GetSupportedDataStoresL(dataStores); + for ( TInt idx = 0; idx < iPsDataPluginInstances.Count(); idx++ ) + { + RPointerArray aDataStores; + iPsDataPluginInstances[idx]->GetSupportedDataStoresL(aDataStores); - const TInt dataStoresCount = dataStores.Count(); - for ( TInt i(0); i < dataStoresCount; i++) - { - if ( dataStores[i]->Compare(aUri) == 0) + for( TInt i(0); iCompare(aUri) == 0) { iPsDataPluginInstances[idx]->GetSupportedDataFieldsL(aDataFields); break; - } + } } - CleanupStack::PopAndDestroy( &dataStores ); // Close + aDataStores.Reset(); } PRINT ( _L("End CPsDataPluginInterface::GetAllSupportedDataStoresL") ); diff -r 6b5524b4f673 -r 38bb213f60ba predictivesearch/PcsAlgorithm/Algorithm2/src/FindUtilChineseECE.cpp --- a/predictivesearch/PcsAlgorithm/Algorithm2/src/FindUtilChineseECE.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/predictivesearch/PcsAlgorithm/Algorithm2/src/FindUtilChineseECE.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -20,12 +20,11 @@ #include #include #include -#include - // The below code is commented out because current CFindUtilChineseECE is used // on 3.2.3 which is not supported adaptive search. It will be easy to keep these code // for the further merging work (merge from FindUtil 5.0) #if 0 +#include #include //phonebook #include #include @@ -46,13 +45,12 @@ const TUint16 KZhuyinstart = 0x3105; const TInt KZhuyincount = 37; const TInt KSeperator = 2626; -const TUint16 KMinUnicodeHz = 0x4e00; -const TUint16 KMaxUnicodeHz = 0x9fa5; -const TUint16 KStrokeHorizontalValue = 0x4e00; -const TUint16 KStrokeVerticalValue = 0x4e28; -const TUint16 KStrokeDownToLeftValue = 0x4e3f; -const TUint16 KStrokeDownToRightValue = 0x4e36; -const TUint16 KStrokeBendingValue = 0x4e5b; +const TInt16 KMinUnicodeHz = 0x4e00; +const TInt16 KStrokeHorizontalValue = 0x4e00; +const TInt16 KStrokeVerticalValue = 0x4e28; +const TInt16 KStrokeDownToLeftValue = 0x4e3f; +const TInt16 KStrokeDownToRightValue = 0x4e36; +const TInt16 KStrokeBendingValue = 0x4e5b; const TInt KSysInputMode = -1; const TInt KLeftToRightFlag =0x200e; const TInt KRightToLeftFlag =0x200f; @@ -64,7 +62,6 @@ const TUid KUidPhoneBookServer = {0x10207277}; #endif - _LIT(KWildChar, "*"); _LIT(KUnderLine, "_"); _LIT(KMiddleLine, "-"); @@ -73,6 +70,28 @@ _LIT(KPanicReason, "Abnormal input parameters!"); const TInt KLitLineFeed(8233); + +// CleanupStack helpers for item owning RPointerArrays +template +class CleanupResetAndDestroy + { +public: + inline static void PushL( T& aRef ) + { + CleanupStack::PushL( TCleanupItem( &ResetAndDestroy, &aRef ) ); + } +private: + inline static void ResetAndDestroy( TAny *aPtr ) + { + static_cast( aPtr )->ResetAndDestroy(); + } + }; + +template +inline void CleanupResetAndDestroyPushL( T& aRef ) + { + CleanupResetAndDestroy::PushL( aRef ); + } // ======== MEMBER FUNCTIONS ======== // --------------------------------------------------------- @@ -97,16 +116,25 @@ void CFindUtilChineseECE::ConstructL(CPcsAlgorithm2* aAlgorithm) { iRepositoryFind = CRepository::NewL(KCRUidAknFep); + // The below code is commented out because current CFindUtilChineseECE is used + // on 3.2.3 which is not supported adaptive search. It will be easy to keep these code + // for the further merging work (merge from FindUtil 5.0) +#if 0 iRepositoryFindAdaptive = CRepository::NewL(KCRUidAvkon); +#endif iWatcher = CFindRepositoryWatcher::NewL(KCRUidAknFep, TCallBack(HandleFindRepositoryCallBack, this), iRepositoryFind); + // The below code is commented out because current CFindUtilChineseECE is used + // on 3.2.3 which is not supported adaptive search. It will be easy to keep these code + // for the further merging work (merge from FindUtil 5.0) +#if 0 iWatcherAdaptive = CFindRepositoryWatcher::NewL(KCRUidAvkon, TCallBack(HandleFindRepositoryCallBack, this), - iRepositoryFindAdaptive); - + iRepositoryFindAdaptive); +#endif iAlgorithm = aAlgorithm; OpenL(); @@ -118,11 +146,19 @@ // CFindUtilChineseECE::CFindUtilChineseECE() : iLanguage(ELangTest), -iCurInputMode(KSysInputMode), -iSearchMethod(EAdptSearchPinyin), +iSupportPRCChinese(EFalse), +iCurInputMode(KSysInputMode) +// The below code is commented out because current CFindUtilChineseECE is used +// on 3.2.3 which is not supported adaptive search. It will be easy to keep these code +// for the further merging work (merge from FindUtil 5.0) +#if 0 +iSearchMethodPRC(EAdptSearchPinyin), +iSearchMethodTaiWan(EAdptSearchZhuyin), +iSearchMethodHongKong(EAdptSearchStroke), iSearchMethodAdaptive(EFalse) - { - } +#endif + { + } // --------------------------------------------------------- // Destructor @@ -132,9 +168,15 @@ { delete iPtiEngine; delete iWatcher; + delete iPtiEnginePrc; delete iRepositoryFind; + // The below code is commented out because current CFindUtilChineseECE is used + // on 3.2.3 which is not supported adaptive search. It will be easy to keep these code + // for the further merging work (merge from FindUtil 5.0) +#if 0 delete iWatcherAdaptive; delete iRepositoryFindAdaptive; +#endif } // --------------------------------------------------------- @@ -146,36 +188,12 @@ if (!iPtiEngine) { iPtiEngine = CPtiEngine::NewL(); + iSupportPRCChinese = IsSupportLanguage(ELangPrcChinese); } if (aLanguage != iLanguage) { - // We only support Chinese languages. If input language is changed - // to non-Chinese, then first available Chinese language is used - // instead. - if ( aLanguage == ELangPrcChinese || - aLanguage == ELangTaiwanChinese || - aLanguage == ELangHongKongChinese ) - { - iLanguage = aLanguage; - } - else if ( IsSupportLanguage(ELangPrcChinese) ) - { - iLanguage = ELangPrcChinese; - } - else if ( IsSupportLanguage(ELangTaiwanChinese) ) - { - iLanguage = ELangTaiwanChinese; - } - else if ( IsSupportLanguage(ELangHongKongChinese) ) - { - iLanguage = ELangHongKongChinese; - } - else - { - iLanguage = aLanguage; - } - + iLanguage = aLanguage; iPtiEngine->ActivateLanguageL(iLanguage); iPtiEngine->EnableToneMarks(EFalse); } @@ -199,10 +217,6 @@ // TBool CFindUtilChineseECE::DoTranslationL(TInt16 aHZUnicode, RPointerArray& aSpellList) { - // Always translate according the adaptive search method setting - return T9ChineseTranslationAdaptiveL(aHZUnicode, aSpellList); - -#if 0 // The below code is commented out because current CFindUtilChineseECE is used // on 3.2.3 which is not supported adaptive search. It will be easy to keep these code // for the further merging work (merge from FindUtil 5.0) @@ -250,14 +264,13 @@ #endif return ETrue; -#endif } // --------------------------------------------------------- // Find pane text is including stroke symbol // --------------------------------------------------------- // -TInt CFindUtilChineseECE::IsStrokeSymbol(const TUint16 aFindWord) +TInt CFindUtilChineseECE::IsStrokeSymbol(const TInt aFindWord) { TInt strokeValue = 0; @@ -285,7 +298,24 @@ return strokeValue; } -#if 0 +TInt CFindUtilChineseECE::CategoryOfLang(TLanguage aLanguage) + { + TInt ret = 0; + if (iLanguage == ELangPrcChinese || ( aLanguage == ELangEnglish && iSupportPRCChinese )) + { + ret = 1; + } + else if (aLanguage == ELangTaiwanChinese) + { + ret = 2; + } + else if (aLanguage == ELangHongKongChinese) + { + ret = 3; + } + return ret; + } + // --------------------------------------------------------- // Do translate for Chinese word // --------------------------------------------------------- @@ -293,6 +323,7 @@ TBool CFindUtilChineseECE::T9ChineseTranslationL(TInt16 aHZUnicode, RPointerArray& aSpellList) { TBuf wordInterpretationBuf; + TBuf numInterpretationBuf; if (iLanguage == ELangPrcChinese) { @@ -358,8 +389,11 @@ return ETrue; } -#endif +// The below code is commented out because current CFindUtilChineseECE is used +// on 3.2.3 which is not supported adaptive search. It will be easy to keep these code +// for the further merging work (merge from FindUtil 5.0) +#if 0 // --------------------------------------------------------- // Do translate for Chinese word // --------------------------------------------------------- @@ -369,59 +403,121 @@ { TBuf wordInterpretationBuf; - switch(iSearchMethod) + if ( iLanguage == ELangPrcChinese ) { - case EAdptSearchPinyin: - if (iPtiEngine->GetSpelling(aHZUnicode, wordInterpretationBuf, EPtiPinyin) + if(iSearchMethodPRC == EAdptSearchPinyin) + { + if (iPtiEngine->GetSpelling(aHZUnicode, wordInterpretationBuf, EPtiPinyin) + != KErrNone) + { + return EFalse; + } + } + else if(iSearchMethodPRC == EAdptSearchStroke) + { + if (iPtiEngine->GetSpelling(aHZUnicode, wordInterpretationBuf, EPtiStrokes) != KErrNone) { return EFalse; - } - break; - case EAdptSearchStroke: - if (iPtiEngine->GetSpelling(aHZUnicode, wordInterpretationBuf, EPtiStrokes) + } + } + else + { + return EFalse; + } + + } + else if ( iLanguage == ELangTaiwanChinese ) + { + if(iSearchMethodTaiWan == EAdptSearchZhuyin) + { + if (iPtiEngine->GetSpelling(aHZUnicode, wordInterpretationBuf, EPtiZhuyin) != KErrNone) { return EFalse; - } - break; - case EAdptSearchZhuyin: - if (iPtiEngine->GetSpelling(aHZUnicode, wordInterpretationBuf, EPtiZhuyin) + } + } + else if(iSearchMethodTaiWan == EAdptSearchStroke) + { + if (iPtiEngine->GetSpelling(aHZUnicode, wordInterpretationBuf, EPtiStrokes) != KErrNone) { return EFalse; - } - break; - case EAdptSearchNormalCangjie: - if (iPtiEngine->GetSpelling(aHZUnicode, wordInterpretationBuf, EPtiCangJie) - != KErrNone) - { - return EFalse; - } - break; - case EAdptSearchEasyCangjie: - if (iPtiEngine->GetSpelling(aHZUnicode, wordInterpretationBuf, EPtiEasyCangjie) - != KErrNone) - { + } + } + else + { + return EFalse; + } + } + else if ( iLanguage == ELangHongKongChinese ) + { + switch(iSearchMethodHongKong) + { + case EAdptSearchNormalCangjie: + if (iPtiEngine->GetSpelling(aHZUnicode, wordInterpretationBuf, EPtiCangJie) + != KErrNone) + { + return EFalse; + } + break; + case EAdptSearchEasyCangjie: + if (iPtiEngine->GetSpelling(aHZUnicode, wordInterpretationBuf, EPtiEasyCangjie) + != KErrNone) + { + return EFalse; + } + break; + case EAdptSearchAdvCangjie: + if ((iPtiEngine->GetSpelling(aHZUnicode, wordInterpretationBuf, EPtiCangJie) != KErrNone) + &&(iPtiEngine->GetSpelling(aHZUnicode, wordInterpretationBuf, EPtiEasyCangjie) != KErrNone)) + { + return EFalse; + } + break; + case EAdptSearchStroke: + if (iPtiEngine->GetSpelling(aHZUnicode, wordInterpretationBuf, EPtiStrokes) + != KErrNone) + { + return EFalse; + } + break; + default: + return EFalse; + } + + } + else if ( iLanguage == ELangEnglish ) + { + if (!iSupportPRCChinese) + { + return EFalse; + } + + TInt err = KErrNone; + if (!iPtiEnginePrc) + { + iPtiEnginePrc = CPtiEngine::NewL(EFalse); + TRAP(err, iPtiEnginePrc->ActivateLanguageL(ELangPrcChinese)); + } + + if (err == KErrNone) + { + if (iPtiEnginePrc->GetSpelling(aHZUnicode, wordInterpretationBuf, EPtiPinyin) + != KErrNone) + return EFalse; - } - break; - case EAdptSearchAdvCangjie: - if ((iPtiEngine->GetSpelling(aHZUnicode, wordInterpretationBuf, EPtiCangJie) != KErrNone) - &&(iPtiEngine->GetSpelling(aHZUnicode, wordInterpretationBuf, EPtiEasyCangjie) != KErrNone)) - { - return EFalse; - } - break; - default: - return EFalse; + } } - + else + { + return EFalse; + } TInt len = wordInterpretationBuf.Length(); TInt start = 0; - if( iSearchMethod != EAdptSearchAdvCangjie ) + if( iSearchMethodHongKong != EAdptSearchAdvCangjie ) { for (TInt i =0; i < len; i++) { @@ -432,7 +528,7 @@ } } - aSpellList.Append((wordInterpretationBuf.MidTPtr(start, len-start)).Alloc()); + aSpellList.Append((wordInterpretationBuf.MidTPtr(start, len-start)).Alloc()); } //Could look advanced cangjie as normal and easy cangjie else @@ -468,7 +564,8 @@ } return ETrue; - } + } +#endif // --------------------------------------------------------- // Find pane text is including separator @@ -486,71 +583,75 @@ void CFindUtilChineseECE::OpenL() { TInt inputLanguage = 0; - TInt searchMode = 0; + //TInt searchMode =0; if (iRepositoryFind != NULL) { iRepositoryFind->Get(KAknFepInputTxtLang, inputLanguage); } - // The following sets iLangueage to inputLanguage if inputLanguage - // is Chinese. If inputLanguage is non-Chinese, iLanguage will be - // set to first available Chinese language. OpenT9InterfaceL((TLanguage) inputLanguage); + // The below code is commented out because current CFindUtilChineseECE is used + // on 3.2.3 which is not supported adaptive search. It will be easy to keep these code + // for the further merging work (merge from FindUtil 5.0) +#if 0 if (iRepositoryFindAdaptive != NULL) { iRepositoryFindAdaptive->Get(KAknAvkonAdaptiveSearchEnabled, iSearchMethodAdaptive); } - if (iLanguage == ELangPrcChinese) + if( inputLanguage == ELangPrcChinese) { - iRepositoryFindAdaptive->Get(KAknAdaptiveSearchChinesePRC , searchMode); - if (searchMode == 0) + iRepositoryFindAdaptive->Get(KAknAdaptiveSearchChinesePRC , searchMode); + if(searchMode ==0) { - iSearchMethod = EAdptSearchPinyin; + iSearchMethodPRC = EAdptSearchPinyin; } - else if (searchMode == 1) + else if(searchMode ==1) { - iSearchMethod = EAdptSearchStroke; + iSearchMethodPRC = EAdptSearchStroke; } } - else if (iLanguage == ELangTaiwanChinese) + else if(inputLanguage == ELangTaiwanChinese) { iRepositoryFindAdaptive->Get(KAknAdaptiveSearchChineseTW , searchMode); - if (searchMode == 0) + if(searchMode ==0) { - iSearchMethod = EAdptSearchZhuyin; + iSearchMethodTaiWan = EAdptSearchZhuyin; } - else if (searchMode == 1) + else if(searchMode ==1) { - iSearchMethod = EAdptSearchStroke; - } + iSearchMethodTaiWan = EAdptSearchStroke; + } } - else if (iLanguage == ELangHongKongChinese) + else if(inputLanguage == ELangHongKongChinese) { iRepositoryFindAdaptive->Get(KAknAdaptiveSearchChineseHongkong , searchMode); - if (searchMode == 1) - { + if(searchMode ==1) + { iRepositoryFind->Get(KAknFepCangJieMode , searchMode); switch (searchMode) { case 0: - iSearchMethod = EAdptSearchNormalCangjie; + iSearchMethodHongKong = EAdptSearchNormalCangjie; break; case 1: - iSearchMethod = EAdptSearchEasyCangjie; + iSearchMethodHongKong = EAdptSearchEasyCangjie; break; case 2: - iSearchMethod = EAdptSearchAdvCangjie; + iSearchMethodHongKong = EAdptSearchAdvCangjie; break; } + } - else if (searchMode == 0) + else if(searchMode ==0) { - iSearchMethod = EAdptSearchStroke; + iSearchMethodHongKong = EAdptSearchStroke; } + } +#endif } // --------------------------------------------------------- @@ -581,7 +682,7 @@ TBool ret = EFalse; // Check Chinese word in find pane - TBool chineseWord = IsChineseWordIncluded(aWord); + TBool chineseWord = IsChineseWord(aWord); if (chineseWord) { @@ -750,25 +851,8 @@ // TBool CFindUtilChineseECE::MatchRefineL(const TDesC& aItemString, CPsQuery& aPsQuery) { - RArray ignore1; - CleanupClosePushL( ignore1 ); - RArray ignore2; - CleanupClosePushL( ignore2 ); - - TBool match = MatchRefineL( aItemString, aPsQuery, ignore1, ignore2, EFalse ); - - CleanupStack::PopAndDestroy( &ignore2 ); - CleanupStack::PopAndDestroy( &ignore1 ); - - return match; - } - -TBool CFindUtilChineseECE::MatchRefineL(const TDesC& aItemString, CPsQuery& aPsQuery, - RArray& aMatchPos, RArray& aMatchLength, TBool aHighLight ) - { TBuf tempBuf; TBuf itemString; - TBool haschineseword = EFalse; itemString.Zero(); if ( KMaxWordLength > aItemString.Length() ) @@ -786,10 +870,12 @@ if(itemString[0]== KLeftToRightFlag || itemString[0]== KRightToLeftFlag) { itemString.Delete(0,1); - itemString.Delete((itemString.Length()-1),1); + itemString.Delete((itemString.Length()-1),1); } } + TBool haschineseword = EFalse; + // Check function parameter if (aPsQuery.Count() == 0) { @@ -802,8 +888,8 @@ } TBool ret = EFalse; + CPsQuery* query = CPsQuery::NewL(); - CleanupStack::PushL( query ); GetPartOfQueryL(aPsQuery, 0, aPsQuery.Count()-1, *query); RemoveSeparatorL(*query); TPtrC queryStrPtr = query->QueryAsStringLC(); @@ -826,63 +912,78 @@ { iCurInputMode = KSysInputMode; } - - TBool inputMethodStroke = EFalse; - if(iLanguage == ELangHongKongChinese && iCurInputMode == 0x0020) - { - inputMethodStroke = ETrue; - } - - // Check if any Chinese word in find pane - if ( IsChineseWordIncluded(tempBuf) ) + + // Check Chinese word in find pane + if (IsChineseWord(tempBuf)) { haschineseword = ETrue; ret = IncludeString(aItemString, tempBuf); - - if( IsAllChineseWord( tempBuf )) + + if (ret) { - CleanupStack::PopAndDestroy( query ); return ret; } + /* else + { + // if Stroke Symbol in HongKong + TBool strokeSymHK = (IsStrokeSymbolInString(tempBuf)) && + (iLanguage == ELangHongKongChinese) && + iCurInputMode == 0x0020; + + if (!strokeSymHK) + { + return ret; + } + }*/ } - - // There are two steps to do when searchstring includes Chinese character - // - // step 1: check whether itemstring includes the chinese charactor in the searchstring - // If not, return EFalse. Otherwise, go to step2 - // - // step2: If itemstring includes the chinese charactor in the searchstring, translate - // the Chinese character in the searchstring to spellList and reconstruct the query. + //Find if search string has chinese word. + //Compare with item string if find chinese word in item string then delete it from search and item string. + //if not then return EFalse. + TBool InputMethodStroke = EFalse; + if(iLanguage == ELangHongKongChinese && iCurInputMode == 0x0020) + { + InputMethodStroke = ETrue; + } + if (haschineseword) { TInt ii=0; - - // Step 1: - // E.g: itemstring = "0x4E00,0x4E8C,0x4E09,0x56DB,0x4E94" - // (Unicode of Chinese number "1 2 3 4 5") - // searchstring1 = "0x4E00,x,y,z,0x4E09" - // searchstring2 = "0x4E8C,0x4E00" - // searchstring3 = "0x4E00,0x4E5D" - // In this case, searchstring2 and searchstring3 will return EFalse, - // only searchstring1 will be translated to spellList in step 2 + TBool leftDifferentChinese = EFalse; //Fixed for ESSG-7PJ6GF, flag the different Chinese character at the left of aSearchText. while (ii< tempBuf.Length()) { - TInt lastFindCursor = -1; - if( (TUint16)tempBuf[ii] <= KMaxUnicodeHz - && (TUint16)tempBuf[ii]>= KMinUnicodeHz - && ( !inputMethodStroke ||(inputMethodStroke && - !IsStrokeSymbol(tempBuf[ii])) ) ) + if ((TInt)tempBuf[ii]>= KMinUnicodeHz && (!InputMethodStroke + ||(InputMethodStroke && !IsStrokeSymbol(tempBuf[ii])))) { TInt Findcursor = itemString.Locate(tempBuf[ii]); - if( KErrNotFound == Findcursor || Findcursor < lastFindCursor ) + if (Findcursor != KErrNotFound) { - CleanupStack::PopAndDestroy( query ); - return EFalse; + if ((Findcursor == itemString.Length()-1)&& (ii + ==tempBuf.Length()-1)) + { + //Start:Fixed for ESSG-7PJ6GF + if ( leftDifferentChinese || IsChineseWord( + itemString.Left( Findcursor ) ) ) + { + //if the different Chinese character at the left or middle, return false. + return EFalse; + } + //End:Fixed for ESSG-7PJ6GF + return ETrue; + } + itemString.Delete(0, Findcursor+1); + tempBuf.Delete(0, ii+1); + ii=0; } else { - lastFindCursor = Findcursor; + //Start:Fixed for ESSG-7PJ6GF + if ( IsChineseWord( tempBuf.Left( ii + 1 ) ) ) + { + //flag the different Chinese character at the left. + leftDifferentChinese = ETrue; + } + //End:Fixed for ESSG-7PJ6GF ii++; } } @@ -891,70 +992,9 @@ ii++; } } - - ii = 0; - // Counter of queryItem - TInt queryItemCount = 0; - - //Step 2: - // Translating searchstring to spellList and reconstruct query - while ( ii< tempBuf.Length() ) - { - // If it is a valid chinese character - if ( (TUint16)tempBuf[ii] <= KMaxUnicodeHz - && (TUint16)tempBuf[ii]>= KMinUnicodeHz - && ( !inputMethodStroke ||(inputMethodStroke && - !IsStrokeSymbol(tempBuf[ii])) ) ) - { - RPointerArray spellList; - - // If successfully translating the chinese character to spellList( Pinyin,Zhuyin or stroke ) - // then reconstruct the query, replace the Chinese character with its spellList in the query. - // Otherwise, just increase the counter of queryItem. - if( DoTranslationL(TInt16(tempBuf[ii]), spellList) ) - { - // Replace the queryItem by the translated spelling - CPsQueryItem& tempItem = query->GetItemAtL(queryItemCount); - const TKeyboardModes tempMode = tempItem.Mode(); - - // Remove the Chinese character queryItem - query->Remove(queryItemCount); - - // Reconstruct the query, replace Chinese character with its spellList - for(TInt cnt = 0; cnt < spellList[0]->Length(); cnt++) - { - // Add a new query item to query - CPsQueryItem* newItem = CPsQueryItem::NewL(); - CleanupStack::PushL(newItem); - newItem->SetCharacter( (*spellList[0])[cnt] ); - newItem->SetMode(tempMode); - - query->InsertL(*newItem, queryItemCount + cnt ); - CleanupStack::Pop(newItem); - } - - queryItemCount += spellList[0]->Length(); - } - else - { - queryItemCount++; - } - - ii++; - spellList.ResetAndDestroy(); - spellList.Close(); - - } - //if not, just pass it by - else - { - ii++; - queryItemCount++; - } - } } - + // Array for item string RPointerArray stringInfoArr; // Split item string @@ -962,13 +1002,13 @@ if (stringInfoArr.Count() > 0) { - ret = MatchSegmentL(stringInfoArr, *query, aMatchPos, aMatchLength, aHighLight); + ret = MatchSegmentL(stringInfoArr, *query); } stringInfoArr.ResetAndDestroy(); stringInfoArr.Close(); - CleanupStack::PopAndDestroy( query ); + delete query; return ret; } @@ -978,7 +1018,7 @@ // --------------------------------------------------------- // void CFindUtilChineseECE::SplitItemStringL(RPointerArray& aStringInfoArr, - const TDesC& aItemString) + const TDesC &aItemString) { TBuf tempBuf; TBuf englishBuf; @@ -989,7 +1029,8 @@ chineseBuf.Zero(); TInt index = 0; - TBool isChinese = EFalse; + TUint32 temp = 0; + TInt32 distance = 0; const TInt strLength = aItemString.Length(); for (; index < strLength; index++) @@ -998,35 +1039,35 @@ { // Check Chinese and English Buf. If it is not empty, // add buf to Array - InsertStrInforArrayL(aStringInfoArr, chineseBuf, ETrue, index); - InsertStrInforArrayL(aStringInfoArr, englishBuf, EFalse, index); + InsertStrInforArrayL(aStringInfoArr, chineseBuf, ETrue); + InsertStrInforArrayL(aStringInfoArr, englishBuf, EFalse); continue; } - isChinese = ((TUint16)aItemString[index] >= KMinUnicodeHz && - (TUint16)aItemString[index] <= KMaxUnicodeHz); - - if ( !isChinese )// English word + temp = aItemString[index]; + distance = (TInt32)(temp - KMinUnicodeHz); + + if (distance < 0)// English word { // Chinese word is end and add to array - InsertStrInforArrayL(aStringInfoArr, chineseBuf, ETrue, index); + InsertStrInforArrayL(aStringInfoArr, chineseBuf, ETrue); // Add English word to array - englishBuf.Append(aItemString[index]); + englishBuf.Append((TChar) aItemString[index]); } else // Chinese word { // English word is end and add to array - InsertStrInforArrayL(aStringInfoArr, englishBuf, EFalse, index); + InsertStrInforArrayL(aStringInfoArr, englishBuf, EFalse); // Add Chinese word to array - chineseBuf.Append(aItemString[index]); + chineseBuf.Append((TChar) aItemString[index]); } } // Finish loop check buffer is empty - InsertStrInforArrayL(aStringInfoArr, chineseBuf, ETrue, index); - InsertStrInforArrayL(aStringInfoArr, englishBuf, EFalse, index); + InsertStrInforArrayL(aStringInfoArr, chineseBuf, ETrue); + InsertStrInforArrayL(aStringInfoArr, englishBuf, EFalse); } // --------------------------------------------------------- @@ -1034,8 +1075,9 @@ // --------------------------------------------------------- // void CFindUtilChineseECE::InsertStrInforArrayL(RPointerArray& aStringInfoArr, - TDes &aSegmentStr, TBool aChinese, TInt aIndexAfterStr) + TDes &aSegmentStr, const TBool aChinese) { + CleanupResetAndDestroyPushL( aStringInfoArr ); if (aSegmentStr.Length() <= 0) { return; @@ -1047,10 +1089,10 @@ strInfo->segmentString.Copy(aSegmentStr); strInfo->segmentString.LowerCase(); strInfo->isChinese = aChinese; - strInfo->segmentPos = aIndexAfterStr - aSegmentStr.Length(); aStringInfoArr.AppendL(strInfo); aSegmentStr.Zero(); + CleanupStack::Pop( &aStringInfoArr ); } // --------------------------------------------------------- @@ -1058,133 +1100,107 @@ // --------------------------------------------------------- // TBool CFindUtilChineseECE::MatchSegmentL(RPointerArray& aStringInfoArr, - CPsQuery& aQuery, RArray& aMatchPos, RArray& aMatchLength, TBool aHighLight ) + CPsQuery& aQuery) { const TInt arrayLength = aStringInfoArr.Count(); const TInt searchStrLength = aQuery.Count(); + TInt searchStrIndex = 0; STRINGINFO* pStringInfo; TInt index = 0; - TBool ret = EFalse; - TBool hasChinese = EFalse; - // First check if there is a full match in non-Chinese in any one segment + // First only check English for (; index < arrayLength; index++) { - pStringInfo = aStringInfoArr[index]; - TPtrC currentSeg( pStringInfo->segmentString ); - TInt matchLen( 0 ); - - // Compare word - if (pStringInfo->isChinese) - { - hasChinese = ETrue; - } - else - { - matchLen = MatchStringL( currentSeg, aQuery ); - } - - // If full match is found - if ( matchLen == searchStrLength ) - { - //Only append postion of non-Chinese character - if( !pStringInfo->isChinese ) - { - aMatchPos.Append( pStringInfo->segmentPos ); - aMatchLength.Append( matchLen ); - } - ret = ETrue; - - // If there is no need to HighLight the matched part, return immediately - // Otherwise, continue to find all the matched positions - if( !aHighLight ) - return ret; - } - } - - // Then search through segments again, this time considering - // also cases where matching part continues over several segments. - // This algorithm is greedy and heuristic and can't necesarily find - // all the matches in the segments after the first one. - TPtrC segCurrent; - TInt searchStrIndextemp = 0; - TInt searchStrIndexMax = 0; - TInt searchStrIndex = 0; - index = 0; - - // Loop through seqments until whole query is matched - for (; index < arrayLength && !ret ; index++) - { // Create an empty CPsQuery CPsQuery* tempQuery = CPsQuery::NewL(); - CleanupStack::PushL( tempQuery ); + pStringInfo = aStringInfoArr[index]; - GetPartOfQueryL( aQuery, searchStrIndex, searchStrLength - 1, *tempQuery ); + GetPartOfQueryL( aQuery, searchStrIndex, searchStrLength - 1, + *tempQuery ); - pStringInfo = aStringInfoArr[index]; - segCurrent.Set( pStringInfo->segmentString ); + // Compare word + if (!pStringInfo->isChinese) + { + searchStrIndex += MatchString(pStringInfo->segmentString, *tempQuery); + } - if (pStringInfo->isChinese) + delete tempQuery; + tempQuery = NULL; + + if (searchStrIndex >= searchStrLength) { - // find the longest substring matching the query - searchStrIndexMax = 0; - for (TInt i = 0; i< segCurrent.Length(); i++) + return ETrue; + } + } + + TBuf bufcurrent; + TBuf tempbufcurrent; + TInt searchStrIndextemp = 0; + TInt searchStrIndexMax = 0; + // Find Chinese and English + searchStrIndex = 0; + index = 0; + + for (; index < arrayLength; index++) + { + // Create an empty CPsQuery + CPsQuery* tempQuery = CPsQuery::NewL(); + pStringInfo = aStringInfoArr[index]; + + GetPartOfQueryL( aQuery, searchStrIndex, searchStrLength - 1, + *tempQuery ); + searchStrIndexMax = 0; + + bufcurrent = pStringInfo->segmentString; + + for(TInt i =0;i< pStringInfo->segmentString.Length();i++) + { + tempbufcurrent = bufcurrent.Mid(i); + if (pStringInfo->isChinese) { - TPtrC tempSeg( segCurrent.Mid(i) ); - TInt startIdx( KErrNotFound ); - TInt endIdx( KErrNotFound ); - searchStrIndextemp = MatchChineseStringL(tempSeg, *tempQuery, startIdx, endIdx); - if (searchStrIndextemp > searchStrIndexMax) + TInt temp=0; + searchStrIndextemp = MatchChineseStringL(tempbufcurrent, *tempQuery, temp); + if(searchStrIndextemp > searchStrIndexMax) { searchStrIndex -= searchStrIndexMax; searchStrIndexMax = searchStrIndextemp; searchStrIndex += searchStrIndexMax; } - - if (searchStrIndex >= searchStrLength) - { - // found substring which consumes whole query, no need to find any longer - break; - } + } + else + { + searchStrIndex += MatchString(pStringInfo->segmentString, *tempQuery); } - } - else // not chinese - { - TInt matchLen = MatchStringL(segCurrent, *tempQuery); - searchStrIndex += matchLen; - if ( matchLen ) + + if (searchStrIndex >= searchStrLength) { - aMatchPos.Append( pStringInfo->segmentPos ); - aMatchLength.Append( matchLen ); + delete tempQuery; + tempQuery = NULL; + return ETrue; + } + else if(!pStringInfo->isChinese) + { + break; } } - if (searchStrIndex >= searchStrLength) - { - ret = ETrue; // also breaks us out from the loop - } - else if ( !pStringInfo->isChinese && !hasChinese ) - { - CleanupStack::PopAndDestroy( tempQuery ); - break; - } - - CleanupStack::PopAndDestroy( tempQuery ); + delete tempQuery; + tempQuery = NULL; } - return ret; + return EFalse; } // --------------------------------------------------------- // Search Chinese word in input text // --------------------------------------------------------- // -TInt CFindUtilChineseECE::MatchChineseStringL(const TDesC& aSearhTargetString, CPsQuery& aQuery, - TInt& aMatchStartIdx, TInt& aMatchEndIdx) +TInt CFindUtilChineseECE::MatchChineseStringL(const TDesC& aSearhTargetString, CPsQuery& aQuery, TInt& aIndex) { const TInt stringLength = aSearhTargetString.Length(); const TInt searchLength = aQuery.Count(); TInt index = 0; + //TBuf tempBuf; TBuf previousBuf; TInt curMatchCount = 0; TInt preMatchCount = 0; @@ -1192,13 +1208,6 @@ TInt curSearchIndex = 0; TBool bFullMatched = EFalse; TBool bContinue = EFalse; - TBool bPrevReplaced = EFalse; - aMatchStartIdx = KErrNotFound; - aMatchEndIdx = KErrNotFound; - - CPsQuery* tempFullQuery = CPsQuery::NewL(); - CleanupStack::PushL( tempFullQuery ); - GetPartOfQueryL( aQuery, 0, aQuery.Count() - 1, *tempFullQuery ); for (; index < stringLength; index++) { @@ -1217,17 +1226,17 @@ // Get left string CPsQuery* tempQuery = CPsQuery::NewL(); - CleanupStack::PushL( tempQuery ); - GetPartOfQueryL( aQuery, curSearchIndex, searchLength - 1, *tempQuery ); + GetPartOfQueryL( aQuery, curSearchIndex, searchLength - 1, + *tempQuery ); - // Get Matched count and the matched index in list - curMatchCount = MaxMatchInListL(spellList, *tempQuery, previousBuf, matchIndex, - bFullMatched, preMatchCount, bContinue, bPrevReplaced, *tempFullQuery); + // Get Matched count and the matched index in list + curMatchCount = MaxMatchInList(spellList, *tempQuery, previousBuf, matchIndex, + bFullMatched, preMatchCount, bContinue); // There is a string matched in list if (curMatchCount != 0) { - previousBuf.Copy(*spellList[matchIndex]); + previousBuf.Copy(spellList[matchIndex]->Des()); if (curMatchCount == previousBuf.Length()) { @@ -1238,7 +1247,7 @@ bFullMatched = EFalse; } - // If it is repeat match, continue + // If it is repeat match, continue if (!bContinue) { curSearchIndex += curMatchCount; @@ -1249,14 +1258,6 @@ previousBuf.Zero(); curMatchCount = 0; } - - // Store the index of first matched Han character - if ( bPrevReplaced || aMatchStartIdx == KErrNotFound ) - { - aMatchStartIdx = index; - } - // Store the index of last matched Han character - aMatchEndIdx = index; } else { @@ -1268,17 +1269,13 @@ } curSearchIndex = 0; - - // Any earlier partial match is discarded, reset the matching part indices - aMatchStartIdx = KErrNotFound; - aMatchEndIdx = KErrNotFound; } spellList.ResetAndDestroy();//destroy spellList spellList.Close(); preMatchCount = curMatchCount; - CleanupStack::PopAndDestroy( tempQuery ); + delete tempQuery; tempQuery = NULL; // Search to End and return @@ -1287,9 +1284,8 @@ break; } } - CleanupStack::PopAndDestroy( tempFullQuery ); - tempFullQuery = NULL; + aIndex = index; return curSearchIndex; } @@ -1297,11 +1293,11 @@ // Maximal matched count in spelling list // --------------------------------------------------------- // -TInt CFindUtilChineseECE::MaxMatchInListL(RPointerArray &aSpellList, CPsQuery& aQuery, +TInt CFindUtilChineseECE::MaxMatchInList(RPointerArray &spellList, CPsQuery& aQuery, TDesC& aPreviouStr, TInt& aMatchIndex, const TBool aFullMatched, - const TInt aMatchedCount, TBool& aAgain, TBool& aPrevReplaced, CPsQuery& aFullQuery) + const TInt aMatchedCount, TBool& aAgain) { - const TInt itemCount = aSpellList.Count(); + const TInt itemCount = spellList.Count(); TInt matchCount = 0; TBool selfMatch = EFalse; aMatchIndex = 0; @@ -1324,9 +1320,9 @@ repeatCount = 0; loopFlag = EFalse; tempBuf.Zero(); - tempBuf.Copy( *aSpellList[index] ); + tempBuf.Copy(spellList[index]->Des()); - temp = MatchStringL(tempBuf, aQuery); + temp = MatchString(tempBuf, aQuery); if(temp != 0) { selfMatch = ETrue; @@ -1341,11 +1337,11 @@ // Previous word is fully matched if (aFullMatched) { - repeatCount = ReverseMatchStringL(aPreviouStr, tempBuf, aFullQuery ); + repeatCount = ReverseMatchString(aPreviouStr, tempBuf); // Find repeat and remove it, search again if (repeatCount != 0) { - temp = MatchStringL(tempBuf.Right(tempBuf.Length() - repeatCount), aQuery); + temp = MatchString(tempBuf.Right(tempBuf.Length() - repeatCount), aQuery); if (temp == 0) { @@ -1356,14 +1352,14 @@ } else { - repeatCount = MatchStringL(aPreviouStr, tempBuf, aFullQuery); + repeatCount = MatchString(aPreviouStr, tempBuf); // Find repeat and remove it, search again if (repeatCount != 0) { if (aMatchedCount <= repeatCount) { - temp = MatchStringL(tempBuf.Right(tempBuf.Length() - aMatchedCount), aQuery); + temp = MatchString(tempBuf.Right(tempBuf.Length() - aMatchedCount), aQuery); if (temp == 0) { @@ -1375,11 +1371,11 @@ if (temp == 0) { - repeatCount = ReverseMatchStringL(aPreviouStr.Left(aMatchedCount), tempBuf, aFullQuery); + repeatCount = ReverseMatchString(aPreviouStr.Left(aMatchedCount), tempBuf); if (repeatCount != 0) { - temp = MatchStringL(tempBuf.Right(tempBuf.Length() - repeatCount), aQuery); + temp = MatchString(tempBuf.Right(tempBuf.Length() - repeatCount), aQuery); if (temp == 0) { @@ -1418,20 +1414,16 @@ aMatchIndex = index; aAgain = loopFlag; } - if (matchCount == aQuery.Count() && selfMatch) + if(matchCount == aQuery.Count() && selfMatch) { break; } } - - // Was the previous match replaced with a longer match from this spell list - aPrevReplaced = ( matchCount && repeatCount ); - return matchCount; } // --------------------------------------------------------- -// Search the text is include the input text +// Search the taxt is include the input text // --------------------------------------------------------- // TBool CFindUtilChineseECE::IncludeString(const TDesC& aFirst, const TDesC& aSecond) @@ -1463,22 +1455,29 @@ // Search text in other text // --------------------------------------------------------- // -TInt CFindUtilChineseECE::MatchStringL(const TDesC& aFirst, const TDesC& aSecond, CPsQuery& aFullQuery) +TInt CFindUtilChineseECE::MatchString(const TDesC& aFirst, const TDesC& aSecond) { const TInt secondStrLength = aSecond.Length(); const TInt firstStrLength = aFirst.Length(); - const TInt compareCount = Min( firstStrLength, secondStrLength ); + const TInt compareCount = firstStrLength > secondStrLength ? secondStrLength + : firstStrLength; TInt index = 0; - TBuf firstNumInterpretationBuf; - TBuf secondNumInterpretationBuf; - - iAlgorithm->GetKeyMap()->GetMixedKeyStringForDataL(aFullQuery, aFirst, firstNumInterpretationBuf); - iAlgorithm->GetKeyMap()->GetMixedKeyStringForDataL(aFullQuery, aSecond, secondNumInterpretationBuf); + + TBuf tempStr; + // translate search target string into numeric string before match + if (iAlgorithm) + { + iAlgorithm->Converter( aFirst, tempStr ); + } + else + { + tempStr.Copy(aFirst); + } for (; index < compareCount; index++) { - if (firstNumInterpretationBuf.Left(index + 1).FindC(secondNumInterpretationBuf.Left(index + 1)) == KErrNotFound) + if (tempStr.Left(index + 1).FindC(aSecond.Left(index + 1)) == KErrNotFound) { break; } @@ -1486,32 +1485,32 @@ // Match count return index; } - // --------------------------------------------------------- // Search CPsQuery in aSearhTargetStr // --------------------------------------------------------- // -TInt CFindUtilChineseECE::MatchStringL(const TDesC& aSearhTargetStr, CPsQuery& aQuery) +TInt CFindUtilChineseECE::MatchString(const TDesC& aSearhTargetStr, CPsQuery& aQuery) { const TInt secondStrLength = aQuery.Count(); const TInt firstStrLength = aSearhTargetStr.Length(); TBuf numInterpretationBuf; - TBuf queryStr; - const TInt compareCount = Min( firstStrLength, secondStrLength ); - + const TInt compareCount = firstStrLength > secondStrLength ? secondStrLength + : firstStrLength; TInt index = 0; - iAlgorithm->GetKeyMap()->GetMixedKeyStringForDataL(aQuery, aSearhTargetStr, numInterpretationBuf); - iAlgorithm->GetKeyMap()->GetMixedKeyStringForQueryL(aQuery, queryStr); + ConvertdDataToKeyBoardModeL(aQuery, aSearhTargetStr, numInterpretationBuf); + TPtrC queryStr = aQuery.QueryAsStringLC(); for (; index < compareCount; index++) { + if (numInterpretationBuf.Left(index + 1).FindC(queryStr.Left(index + 1)) == KErrNotFound) { break; } } + CleanupStack::PopAndDestroy(); // Match count return index; @@ -1521,22 +1520,32 @@ // Search text by reverse // --------------------------------------------------------- // -TInt CFindUtilChineseECE::ReverseMatchStringL(const TDesC& aFirst, const TDesC& aSecond, CPsQuery& aFullQuery) +TInt CFindUtilChineseECE::ReverseMatchString(const TDesC& aFirst, const TDesC& aSecond) { const TInt secondStrLength = aSecond.Length(); const TInt firstStrLength = aFirst.Length(); TInt compareCount = firstStrLength > secondStrLength ? secondStrLength : firstStrLength; TInt index = 0; TInt matchCount = 0; - TBuf firstNumInterpretationBuf; - TBuf secondNumInterpretationBuf; - - iAlgorithm->GetKeyMap()->GetMixedKeyStringForDataL(aFullQuery, aFirst, firstNumInterpretationBuf); - iAlgorithm->GetKeyMap()->GetMixedKeyStringForDataL(aFullQuery, aSecond, secondNumInterpretationBuf); - + for (; index < compareCount; index++) { - if( firstNumInterpretationBuf.Right( index + 1 ).FindC( secondNumInterpretationBuf.Left( index + 1 ) ) != KErrNotFound ) + TBuf firstConvStr; + TBuf secondConvStr; + + // translate compared target string into numeric string before match + if ( iAlgorithm ) + { + iAlgorithm->Converter( aFirst, firstConvStr ); + iAlgorithm->Converter( aSecond, secondConvStr ); + } + else + { + firstConvStr.Copy( aFirst ); + secondConvStr.Copy( aSecond ); + } + + if( firstConvStr.Right( index + 1 ).FindC( secondConvStr.Left( index + 1 ) ) != KErrNotFound ) { matchCount = index + 1; } @@ -1558,16 +1567,14 @@ // Find pane text is including Chinese word // --------------------------------------------------------- // -TBool CFindUtilChineseECE::IsChineseWordIncluded(const TDesC& aWord) +TBool CFindUtilChineseECE::IsChineseWord(const TDesC& aWord) { TBool IsChineseSearchStr = EFalse; const TInt len = aWord.Length(); for (TInt ii = 0; ii < len; ii++) { - - if ( ((TUint16) aWord[ii] >= KMinUnicodeHz) && - ((TUint16) aWord[ii] <= KMaxUnicodeHz) ) + if ((TInt) aWord[ii] >= KMinUnicodeHz) { IsChineseSearchStr = ETrue; break; @@ -1587,7 +1594,7 @@ for (TInt index = 0; index < len; index++) { - if (IsStrokeSymbol(TUint16(aWord[index])) != 0) + if (IsStrokeSymbol(TInt(aWord[index])) != 0) { return ETrue; } @@ -1595,33 +1602,6 @@ return EFalse; } -// -------------------------------------------------------- -// Find pane text is all Chinese word(s) -// -------------------------------------------------------- -// -TBool CFindUtilChineseECE::IsAllChineseWord(const TDesC& aWord) - { - TBool isChineseWord = ETrue; - const TInt len = aWord.Length(); - - TBool InputMethodStroke = EFalse; - if(iLanguage == ELangHongKongChinese && iCurInputMode == 0x0020) - { - InputMethodStroke = ETrue; - } - - for( TInt i = 0; i < len; i++ ) - { - if( (( TUint16 )aWord[i] > KMaxUnicodeHz ) || (( TUint16 )aWord[i] < KMinUnicodeHz ) - || ( InputMethodStroke && IsStrokeSymbol(aWord[i]) ) ) - { - isChineseWord = EFalse; - break; - } - } - return isChineseWord; - } - // --------------------------------------------------------- // Find pane text is including zhuyin symbol // --------------------------------------------------------- @@ -1663,37 +1643,108 @@ TInt CFindUtilChineseECE::HandleFindRepositoryCallBack(TAny* aPtr) { TInt ret = KErrNone; - CFindUtilChineseECE* self = static_cast (aPtr); - - // Get changed key either from language repository (AknFepRepository) - // or from adaptive repository (AvkonRepository). - TUint32 changedKey = self->iWatcher->ChangedKey(); - if ( changedKey == NCentralRepositoryConstants::KInvalidNotificationId ) - { - changedKey = self->iWatcherAdaptive->ChangedKey(); - } - + CFindUtilChineseECE *self = static_cast (aPtr); + TInt searchMode = 0; - // Update the search method if input language or any search method variable - // changed - if ( changedKey == KAknFepInputTxtLang || - changedKey == KAknAdaptiveSearchChinesePRC || - changedKey == KAknAdaptiveSearchChineseTW || - changedKey == KAknAdaptiveSearchChineseHongkong || - changedKey == KAknFepCangJieMode || - changedKey == KAknAvkonAdaptiveSearchEnabled ) + if (self->iWatcher->ChangedKey() == KAknFepInputTxtLang) { - TChineseSearchMethod prevSearchMethods = self->iSearchMethod; + TInt inputLanguage = 0; + self->iRepositoryFind->Get(KAknFepInputTxtLang, inputLanguage); - TRAP( ret, self->OpenL() ); - - // Reconstruct cache if search method got changed - if ( ret == KErrNone && prevSearchMethods != self->iSearchMethod ) + TInt prevCategory = self->CategoryOfLang(self->iLanguage); + TRAP(ret, self->OpenT9InterfaceL(TLanguage(inputLanguage))); + + TInt category = self->CategoryOfLang(TLanguage(inputLanguage)); + if (prevCategory != category && category != 0) { TRAP(ret, self->iAlgorithm->ReconstructCacheDataL()); } } - + + // The below code is commented out because current CFindUtilChineseECE is used + // on 3.2.3 which is not supported adaptive search. It will be easy to keep these code + // for the further merging work (merge from FindUtil 5.0) +#if 0 + if(self->iWatcherAdaptive->ChangedKey() == KAknAvkonAdaptiveSearchEnabled) + { + self->iRepositoryFindAdaptive->Get(KAknAvkonAdaptiveSearchEnabled, self->iSearchMethodAdaptive); + } + + if (self->iWatcherAdaptive->ChangedKey() == KAknAdaptiveSearchChinesePRC) + { + self->iRepositoryFindAdaptive->Get(KAknAdaptiveSearchChinesePRC, searchMode); + + if(searchMode ==0) + { + self->iSearchMethodPRC = EAdptSearchPinyin; + } + else if(searchMode ==1) + { + self->iSearchMethodPRC = EAdptSearchStroke; + } + } + + if (self->iWatcherAdaptive->ChangedKey() == KAknAdaptiveSearchChineseTW ) + { + self->iRepositoryFindAdaptive->Get(KAknAdaptiveSearchChineseTW , searchMode); + + if(searchMode ==0) + { + self->iSearchMethodTaiWan = EAdptSearchZhuyin; + } + else if(searchMode ==1) + { + self->iSearchMethodTaiWan = EAdptSearchStroke; + } + } + + if (self->iWatcherAdaptive->ChangedKey() == KAknAdaptiveSearchChineseHongkong ) + { + self->iRepositoryFindAdaptive->Get(KAknAdaptiveSearchChineseHongkong , searchMode); + + if(searchMode ==1) + { + self->iRepositoryFind->Get(KAknFepCangJieMode , searchMode); + + switch (searchMode) + { + case 0: + self->iSearchMethodHongKong = EAdptSearchNormalCangjie; + break; + case 1: + self->iSearchMethodHongKong = EAdptSearchEasyCangjie; + break; + case 2: + self->iSearchMethodHongKong = EAdptSearchAdvCangjie; + break; + } + + } + else if(searchMode ==0) + { + self->iSearchMethodHongKong = EAdptSearchStroke; + } + } + + if (self->iWatcher->ChangedKey() == KAknFepCangJieMode ) + { + self->iRepositoryFind->Get(KAknFepCangJieMode , searchMode); + + switch (searchMode) + { + case 0: + self->iSearchMethodHongKong = EAdptSearchNormalCangjie; + break; + case 1: + self->iSearchMethodHongKong = EAdptSearchEasyCangjie; + break; + case 2: + self->iSearchMethodHongKong = EAdptSearchAdvCangjie; + break; + } + + } +#endif return ret; } @@ -1726,6 +1777,11 @@ } } +void CFindUtilChineseECE::SetKeyboardMode(TInt aMode) + { + iKeyboardMode = aMode; + } + // The below code is commented out because current CFindUtilChineseECE is used // on 3.2.3 which is not supported adaptive search. It will be easy to keep these code // for the further merging work (merge from FindUtil 5.0) @@ -1742,7 +1798,7 @@ { aNextChars = aNextChars->ReAllocL( aNextChars->Des().MaxLength()+10 ); } - aNextChars->Des().Append(aCh); + aNextChars->Des().Append(aCh); } } @@ -1934,7 +1990,7 @@ // Compare word if (!pStringInfo->isChinese) { - searchStrIndex += MatchStringL(pStringInfo->segmentString, + searchStrIndex += MatchString(pStringInfo->segmentString, transSearchBuf); } @@ -2014,7 +2070,7 @@ } tempSpellList.ResetAndDestroy(); - if(ReverseMatchStringL(aCurrentBuf,temp)>0) + if(ReverseMatchString(aCurrentBuf,temp)>0) { if (pStringInfo->isChinese) { @@ -2264,7 +2320,7 @@ //Find if search string has chinese word. //Compare with item string if find chinese word in item string then delete it from search and item string. - if(IsChineseWordIncluded(tempBuf)) + if(IsChineseWord(tempBuf)) { if(TrimChineseCharacterL(itemString,tempBuf,aNextChars)) { @@ -2349,7 +2405,7 @@ } else {//english words and chinese words don't coexist in same segment - matchLength = MatchStringL(bufcurrent, transSearchBuf); + matchLength = MatchString(bufcurrent, transSearchBuf); searchStrIndex +=matchLength; if (searchStrIndex >= searchStrLength) { @@ -2498,6 +2554,58 @@ } #endif +// ---------------------------------------------------------------------------- +// CFindUtilChineseECE::ConvertdDataToKeyBoardModeL +// Converts the input data to the key board mode specified by the query +// ---------------------------------------------------------------------------- +void CFindUtilChineseECE::ConvertdDataToKeyBoardModeL(CPsQuery& aQuery, + const TDesC& aSearchTargetStr, + TBuf& aOutputNumInterpretationStr) + { + if (iKeyboardMode == EItut) + { + iAlgorithm->GetKeyMap()->GetNumericKeyString(aSearchTargetStr, aOutputNumInterpretationStr); + } + else if (iKeyboardMode == EQwerty) + { + aOutputNumInterpretationStr = aSearchTargetStr; + aOutputNumInterpretationStr.LowerCase(); + } + else + { + + TInt len = -1; + TBuf outBuf; + + iAlgorithm->GetKeyMap()->GetNumericKeyString(aSearchTargetStr, outBuf); + + // Always loop thru the lowest length + if (aSearchTargetStr.Length() > aQuery.Count() ) + { + len = aQuery.Count(); + } + else + { + len = aSearchTargetStr.Length(); + } + + // Interprete search target str according to the query char mode + for (TInt i = 0; i < len; i++) + { + if (aQuery.GetItemAtL(i).Mode() == EItut) + { + aOutputNumInterpretationStr.Append(outBuf[i]); + } + else + { + aOutputNumInterpretationStr.Append(aSearchTargetStr[i]); + } + } + + aOutputNumInterpretationStr.LowerCase(); + } + } + void CFindUtilChineseECE::GetPartOfQueryL(CPsQuery& aSrcQuery, TInt aStartIndex, TInt aEndIndex, CPsQuery& aDestQuery) { @@ -2516,6 +2624,7 @@ aDestQuery.AppendL(*newItem); } + } else { @@ -2542,7 +2651,6 @@ // ajust index after remove index--; } - break; default: continue; } // switch diff -r 6b5524b4f673 -r 38bb213f60ba predictivesearch/PcsAlgorithm/Algorithm2/src/chinesefindutils.cpp --- a/predictivesearch/PcsAlgorithm/Algorithm2/src/chinesefindutils.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/predictivesearch/PcsAlgorithm/Algorithm2/src/chinesefindutils.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -66,11 +66,7 @@ TCallBack aCallBack, CRepository* aRepository) : - iUid(aUid), - iKey(aKey), - iChangedKey(NCentralRepositoryConstants::KInvalidNotificationId), - iCallBack(aCallBack), - iRepository(aRepository) + iUid(aUid), iKey(aKey), iCallBack(aCallBack), iRepository(aRepository) { } diff -r 6b5524b4f673 -r 38bb213f60ba predictivesearch/PcsServer/group/PcsServer.mmp --- a/predictivesearch/PcsServer/group/PcsServer.mmp Wed Sep 15 11:56:55 2010 +0300 +++ b/predictivesearch/PcsServer/group/PcsServer.mmp Wed Oct 13 14:15:33 2010 +0300 @@ -44,4 +44,4 @@ LIBRARY bafl.lib LIBRARY ecom.lib LIBRARY PcsUtils.lib -LIBRARY featmgr.lib +LIBRARY FeatMgr.lib diff -r 6b5524b4f673 -r 38bb213f60ba predictivesearch/PcsServer/inc/CPcsServer.h --- a/predictivesearch/PcsServer/inc/CPcsServer.h Wed Sep 15 11:56:55 2010 +0300 +++ b/predictivesearch/PcsServer/inc/CPcsServer.h Wed Oct 13 14:15:33 2010 +0300 @@ -58,6 +58,11 @@ */ CPcsPluginInterface* PluginInterface(); + /** + * Returns ETrue if there is Chinese variant feature in phone + */ + TBool IsChineseVariant() const; + private: /** @@ -80,6 +85,11 @@ * A PCS algorithm instance (owned) */ CPcsPluginInterface* iPcs; + + /** + * Flag for whether there is Chinese in phone + */ + TBool iIsChineseVariant; }; #endif // End of file diff -r 6b5524b4f673 -r 38bb213f60ba predictivesearch/PcsServer/src/CPcsServer.cpp --- a/predictivesearch/PcsServer/src/CPcsServer.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/predictivesearch/PcsServer/src/CPcsServer.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -44,7 +44,7 @@ self->StartL(KPcsServerName); CleanupStack::Pop(); - PRINT ( _L("End CPcsServer::NewL") ); + PRINT ( _L("End CPcsServer::NewL") ); return self; } @@ -70,17 +70,18 @@ iPcs = CPcsPluginInterface::NewL(); // Check if the phone is chinese feature id installed - TBool isChineseVariant = IsChineseFeatureInitilizedL(); + iIsChineseVariant = IsChineseFeatureInitilizedL(); // Create the plugin for the required algorithm // Matches the ECOM Plugin's display name definition in rss file // Check for the chinese feature id flag. - if(isChineseVariant) + if(iIsChineseVariant) { // Chinese variant phones. Use Algorithm 2 PRINT ( _L("Enter CPcsServer::ConstructL() - Chinese Variant Phone Algorithm Instantiated") ); TBuf algorithmName(KPcsAlgorithm_Chinese); iPcs->InstantiateAlgorithmL(algorithmName); - + + } else { @@ -133,7 +134,7 @@ CPcsPluginInterface* CPcsServer::PluginInterface() { return iPcs; -} +}; // ---------------------------------------------------------------------------- // CPcsServer::IsChineseFeatureInitilizedL() @@ -150,3 +151,12 @@ return chineseFeatureInitialized; } + +// ---------------------------------------------------------------------------- +// CPcsServer::IsChineseVariant() const +// Returns ETrue if there is Chinese variant feature in phone +// ---------------------------------------------------------------------------- +TBool CPcsServer::IsChineseVariant() const + { + return iIsChineseVariant; + } diff -r 6b5524b4f673 -r 38bb213f60ba predictivesearch/PcsServer/src/CPcsSession.cpp --- a/predictivesearch/PcsServer/src/CPcsSession.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/predictivesearch/PcsServer/src/CPcsSession.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -240,11 +240,10 @@ void CPcsSession::GetAsyncPcsResultsL(const RMessage2& aMessage) { __LATENCY_MARK ( _L("CPcsSession::GetAsyncPcsResultsL") ); - PRINT( _L("Enter CPcsSession::GetAsyncPcsResultsL") ); + PRINT ( _L("Enter CPcsSession::GetAsyncPcsResultsL") ); if ( iBufferOverFlow == EFalse ) { - // ------------------------------------------------------------- // Read search query from the message @@ -255,10 +254,20 @@ RPointerArray searchResults; RPointerArray searchSeqs; - iServer->PluginInterface()->PerformSearchL(*iSettings, - *psQuery, - searchResults, - searchSeqs); + + if( !iServer->IsChineseVariant() ) + { + PRINT ( _L("----Algorithm1 search----") ); + iServer->PluginInterface()->PerformSearchL(*iSettings, + *psQuery, + searchResults, + searchSeqs); + } + else + { + PRINT ( _L("----Algorithm2 fake search----") ); + } + CleanupStack::PopAndDestroy( psQuery ); // Dynamic data buffer @@ -384,11 +393,18 @@ // To hold matched location RArray sequenceLoc; - iServer->PluginInterface()->SearchInputL(*psQuery, - *data, - searchSeqs, - sequenceLoc); - + if( !iServer->IsChineseVariant() ) + { + PRINT ( _L("----Algorithm1 searchinput----") ); + iServer->PluginInterface()->SearchInputL(*psQuery, + *data, + searchSeqs, + sequenceLoc); + } + else + { + PRINT ( _L("----Algorithm2 fake searchinput----") ); + } // Delete the search query and search data CleanupStack::PopAndDestroy( data ); @@ -462,7 +478,7 @@ void CPcsSession::SearchMatchStringL(const RMessage2& aMessage) { PRINT ( _L("Enter CPcsSession::SearchMatchStringL") ); - //__LATENCY_MARK ( _L("CPcsSession::SearchMatchStringL") ); + __LATENCY_MARK ( _L("CPcsSession::SearchMatchStringL") ); // ------------------------------------------------------------- @@ -509,8 +525,7 @@ CleanupStack::PopAndDestroy(des); PRINT ( _L("End CPcsSession::SearchMatchStringL") ); - //__LATENCY_MARKEND ( _L("CPcsSession::SearchMatchStringL") ); - + __LATENCY_MARKEND ( _L("CPcsSession::SearchMatchStringL") ); } // ---------------------------------------------------------------------------- diff -r 6b5524b4f673 -r 38bb213f60ba predictivesearch/PcsServerClientAPI/group/PsServerClientAPI.mmp --- a/predictivesearch/PcsServerClientAPI/group/PsServerClientAPI.mmp Wed Sep 15 11:56:55 2010 +0300 +++ b/predictivesearch/PcsServerClientAPI/group/PsServerClientAPI.mmp Wed Oct 13 14:15:33 2010 +0300 @@ -41,4 +41,4 @@ LIBRARY PcsUtils.lib LIBRARY VPbkEng.lib -LIBRARY ecom.lib +LIBRARY eCom.lib diff -r 6b5524b4f673 -r 38bb213f60ba predictivesearch/adapters/contacts/group/pscontactdatastore.mmp --- a/predictivesearch/adapters/contacts/group/pscontactdatastore.mmp Wed Sep 15 11:56:55 2010 +0300 +++ b/predictivesearch/adapters/contacts/group/pscontactdatastore.mmp Wed Oct 13 14:15:33 2010 +0300 @@ -49,7 +49,7 @@ APP_LAYER_SYSTEMINCLUDE LIBRARY euser.lib -LIBRARY ecom.lib +LIBRARY eCom.lib LIBRARY efsrv.lib LIBRARY flogger.lib @@ -57,6 +57,6 @@ LIBRARY PcsUtils.lib LIBRARY VPbkEng.lib LIBRARY centralrepository.lib -LIBRARY featmgr.lib -LIBRARY Pbk2Presentation.lib +LIBRARY FeatMgr.lib +LIBRARY pbk2presentation.lib diff -r 6b5524b4f673 -r 38bb213f60ba predictivesearch/adapters/contacts/inc/cpcscontactstore.h --- a/predictivesearch/adapters/contacts/inc/cpcscontactstore.h Wed Sep 15 11:56:55 2010 +0300 +++ b/predictivesearch/adapters/contacts/inc/cpcscontactstore.h Wed Oct 13 14:15:33 2010 +0300 @@ -267,7 +267,7 @@ /** * Issues request to active object to call RunL method */ - void IssueRequest( TInt aTimeDelay ); + void IssueRequest( TInt timeDelay ); /** * Creates a sort order depending on the fields specified in the cenrep diff -r 6b5524b4f673 -r 38bb213f60ba predictivesearch/adapters/contacts/src/cpcscontactfetch.cpp --- a/predictivesearch/adapters/contacts/src/cpcscontactfetch.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/predictivesearch/adapters/contacts/src/cpcscontactfetch.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -35,7 +35,7 @@ #include #include #include -#include +#include #include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba predictivesearch/adapters/contacts/src/cpcscontactstore.cpp --- a/predictivesearch/adapters/contacts/src/cpcscontactstore.cpp Wed Sep 15 11:56:55 2010 +0300 +++ b/predictivesearch/adapters/contacts/src/cpcscontactstore.cpp Wed Oct 13 14:15:33 2010 +0300 @@ -36,7 +36,7 @@ #include #include #include -#include +#include #include #include #include diff -r 6b5524b4f673 -r 38bb213f60ba presencecache/presencecacheutils/group/presencecacheutils.mmp --- a/presencecache/presencecacheutils/group/presencecacheutils.mmp Wed Sep 15 11:56:55 2010 +0300 +++ b/presencecache/presencecacheutils/group/presencecacheutils.mmp Wed Oct 13 14:15:33 2010 +0300 @@ -45,7 +45,7 @@ LIBRARY euser.lib LIBRARY bafl.lib LIBRARY estor.lib -LIBRARY VPbkEng.lib +LIBRARY vpbkeng.lib LIBRARY ecom.lib // UNICODE CONVERSION LIBRARY charconv.lib