--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/fep/aknfep/inc/aknfepinputstatepinyinphrasecreationbase.h Wed Sep 01 12:23:33 2010 +0100
@@ -0,0 +1,296 @@
+/*
+* Copyright (c) 2008 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:
+ * Provides the TAknFepInputStateEntryPinyinPhraseCreation methods.
+ *
+*/
+
+
+
+
+
+
+
+
+
+
+
+
+#ifndef T_AKNFEPINPUTSTATEPINYINPHRASECREATIONBASE_H
+#define T_AKNFEPINPUTSTATEPINYINPHRASECREATIONBASE_H
+
+#include <PtiDefs.h> //keys
+
+#include "AknFepUiInputStateCandidateBase.h"
+
+enum TMkeyReturnValue
+ {
+ EKeyStrokeNull = -2, // neans the keystroke is null
+ EKeyDelimiter, // means the input key is delimiter
+ EkeyNumber // means the input key is the number( from 2 to 9 )
+ };
+
+class TAknFepInputStatePinyinPhraseCreationBase : public TAknFepInputStateCandidateBase
+ {
+public:
+
+ /**
+ * C++ constructor.
+ *
+ * @since S60 v5.0.
+ * @return self object.
+ */
+ TAknFepInputStatePinyinPhraseCreationBase(
+ MAknFepUIManagerStateInterface* aOwner,
+ MAknFepUICtrlContainerChinese* aUIContainer);
+
+ /**
+ * Add keystroke.
+ *
+ * @param aKey the input keystroke.
+ * @since S60 v5.0.
+ * @return ETrue if that the key can add to the current keystroke, EFase others.
+ */
+ TBool AddKeystroke( TInt aKey );
+
+ /**
+ * Add tone mark.
+ *
+ * @since S60 v5.0.
+ * @return ETrue if that the key can add to the current keystroke, EFase others.
+ */
+ TBool AddToneMark();
+
+ /**
+ * get the valid keystroke.
+ *
+ * @since S60 v5.0.
+ * @return ETrue if valid keystroke happen change , EFase others.
+ */
+ TBool GetValidKeystroke();
+
+ /**
+ * Delete current keystroke.
+ *
+ * @since S60 v5.0.
+ * @return ETrue if that can be deleted, EFase others.
+ */
+ TBool DeleteCurrentKeystroke();
+
+ /**
+ * Revert the current chinse to keystroke.
+ *
+ * @since S60 v5.0.
+ * @return ETrue if that can be deleted, EFase others.
+ */
+ TBool ChineseRevertKeystroke();
+
+ /**
+ * show info to the eep ctrl.
+ *
+ * @since S60 v5.0.
+ * @return none.
+ */
+ void ShowInfo();
+
+ /**
+ * set the show info warning color.
+ *
+ * @since S60 v5.0.
+ * @return none.
+ */
+ void SetWarningColor();
+
+ /**
+ * Get the candidate info.
+ *
+ * @since S60 v5.0.
+ * @return none.
+ */
+ void GetCandidate( TInt aSelection = 0 );
+
+ /**
+ * Change CBA.
+ *
+ * @since S60 v5.0
+ * @return None.
+ */
+ void ChangeCba();
+
+ /**
+ * Refresh the candidate info.
+ *
+ * @since S60 v5.0.
+ * @return none.
+ */
+ void RefreshCandidate();
+
+ /**
+ * Update Selection
+ *
+ * @since S60 v5.0
+ * @param aSelection the index of selecion.
+ * @return None.
+ */
+ void RefreshUI(TInt aSelection = 0);
+
+ /**
+ * clear Selection
+ *
+ * @since S60 v5.0
+ * @return None.
+ */
+ void ClearDeliberateSelection();
+
+ /**
+ * Update indicator
+ *
+ * @since S60 v5.0
+ * @return None.
+ */
+ void UpdateIndicator();
+
+private:
+
+ /**
+ * clear the keystroke of PtiEngine.
+ *
+ * @since S60 v5.0.
+ * @return none.
+ */
+ void ClearPtiEngineKeystroke();
+
+ /**
+ * Add keystroke.
+ *
+ * @param aKey the input keystroke.
+ * @since S60 v5.0.
+ * @return ETrue if that the key can add to the current keystroke, EFase others.
+ */
+ TBool AddKeystrokeL( TInt aKey );
+
+ /**
+ * Add tone mark.
+ *
+ * @since S60 v5.0.
+ * @return ETrue if that the key can add to the current keystroke, EFase others.
+ */
+ TBool AddToneMarkL();
+
+ /**
+ * check the keystroke.
+ *
+ * @param aInput the input keystroke.
+ * @since S60 v5.0.
+ * @return ETrue if the input param is tone mark, EFalse others.
+ */
+ TBool IsToneMark( const TDesC& aInput );
+
+ /**
+ * check the keystroke.
+ *
+ * @since S60 v5.0.
+ * @return EFalse if that have invalid keystroke, ETrue others.
+ */
+ TBool CheckKeystroke();
+
+ /**
+ * get the valid keystroke.
+ *
+ * @since S60 v5.0.
+ * @return ETrue if that have valid keystroke than happens change, EFase others.
+ */
+ TBool GetValidKeystrokeL();
+
+ /**
+ * get the key code.
+ *
+ * @param aKey the TPtiKey.
+ * @param aKeystroke the input show key.
+ *
+ * @since S60 v5.0.
+ * @return -2 the aKeystroke is null,-1 if the input key is delimiter,
+ * 0 the input key is 2 - 9, others return tome mark.
+ */
+ TInt GetKeystrokeCode( TPtiKey& aKey,
+ const TDesC& aKeystroke );
+
+ /**
+ * Append the key to the ptiengine.
+ *
+ * @param aKey the TPtiKey.
+ * @param aKey the add the spelling to the spelling array flag.
+ * @since S60 v5.0.
+ * @return ETrue if ptiengine can append keypress, others return EFalse.
+ */
+ TBool AppendKeyPressL( TPtiKey& aKey, TBool aAddSpellingFlag );
+
+
+ /**
+ * Append the tone mark to the ptiengine.
+ *
+ * @param aToneMark the tone mark.
+ *
+ * @since S60 v5.0.
+ * @return ETrue if ptiengine can append tone mark, others return EFalse.
+ */
+ TBool AppendToneMarkL( TInt& aToneMark );
+
+ /**
+ * Revert the current chinse to keystroke.
+ *
+ * @since S60 v5.0.
+ * @return ETrue if that can be deleted, EFase others.
+ */
+ TBool ChineseRevertKeystrokeL();
+
+ /**
+ * check the spelling delete the phrase spelling.
+ *
+ * @since S60 v5.0.
+ * @return none.
+ */
+ void CheckSpellingL( CDesCArrayFlat* aTempSpelling, CDesCArrayFlat* aAfterCheck );
+
+ /**
+ * check the tone mark and delete the phrase spelling.
+ *
+ * @param aToneMark the tone mark.
+ * @since S60 v5.0.
+ * @return ETrue if the spelling is valid, EFalse others.
+ */
+ TBool CheckToneMark( TInt& aToneMark );
+
+ /**
+ * Get the candidate info.
+ *
+ * @since S60 v5.0.
+ * @return none.
+ */
+ void GetCandidateL( TInt aSelection );
+
+ /**
+ * Change CBA.
+ *
+ * @since S60 v5.0
+ * @return None.
+ */
+ void ChangeCbaL();
+
+ };
+
+#endif /*T_AKNFEPINPUTSTATEPINYINPHRASECREATIONBASE_H*/
+
+// End of file
+