fep/aknfep/src/AknFepUiInputStateCandidateMiniQwertyZhuyinPhrase.cpp
branchRCL_3
changeset 3 f5a1e66df979
parent 0 eb1f2e154e89
child 12 5e18d8c489d6
--- a/fep/aknfep/src/AknFepUiInputStateCandidateMiniQwertyZhuyinPhrase.cpp	Tue Feb 02 01:02:04 2010 +0200
+++ b/fep/aknfep/src/AknFepUiInputStateCandidateMiniQwertyZhuyinPhrase.cpp	Fri Feb 19 23:09:27 2010 +0200
@@ -220,10 +220,28 @@
     CDesCArrayFlat* keyStrokeArray = UIContainer()->EditPaneWindow()->KeystrokeArray();
     CDesCArrayFlat* phraseKeyStrokeArray = UIContainer()->EditPaneWindow()->PhraseShowKeyStrokeArray() ;
     CDesCArrayFlat* phraseArray = UIContainer()->EditPaneWindow()->PhraseArray();
+    CDesCArrayFlat* phraseZhuYinSpellingArray = UIContainer()->EditPaneWindow()->PhraseZhuYinSpellingArray();
     
     RArray<TInt>* keyCodeArray = UIContainer()->EditPaneWindow()->KeycodeArray();
     RArray<TInt>* keyCodePhraseArray = UIContainer()->EditPaneWindow()->PhraseKeycodeArray();
     phraseArray->AppendL( aPhrase );
+    
+    //we store zhuyin-spelling for this phrase
+	TInt delCount = phraseZhuYinSpellingArray->Count() - phraseArray->Count();//we can sure delCount>=0,impossible <0
+	if(delCount > 0) 
+		{
+		phraseZhuYinSpellingArray->Delete( phraseArray->Count(),delCount );//keep same count,del from tail one by one
+		}
+	TInt pos = -1;
+	if(-1 == pos)
+		pos = aText.Find( KDelimiter );//single quote
+	if(-1 == pos)
+		pos = GetIndexOfToneMark( aText );
+	if(-1 == pos)
+		pos = aText.Length();//impossible
+	phraseZhuYinSpellingArray->AppendL(aText.Left(pos+1));//we are sure the first spelling-group from left  match the aPhrase 
+    	
+    
     TBuf<KInputPaneLength> keyStoke;
     TInt replaceCount = 0;
     TInt delimiterIndex = aText.Find( KDelimiter );