diff -r 000000000000 -r eb1f2e154e89 textinput/peninputvkbjp/inc/peninputvkbdatamgr.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/textinput/peninputvkbjp/inc/peninputvkbdatamgr.h Tue Feb 02 01:02:04 2010 +0200 @@ -0,0 +1,260 @@ +/* +* Copyright (c) 2002-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: Interface of vkb ui state +* +*/ + + +#ifndef C_PENINPUTVKBDATAMGR_H +#define C_PENINPUTVKBDATAMGR_H + +// System includes +#include + +// User includes + +// Forward decalaration +class MPeninputLayoutContext; +class CPtiEngine; + +// class declarations +/** + * Data manager class + * + * @lib peninputvkbjp.lib + * @since S60 v3.2 + */ +class CPeninputVkbDataMgr: public CPeninputDataMgr + { +public: + /** + * Create one CPeninputVkbDataMgr object + * + * @since S60 v3.2 + * @param aContext The layout context + * @return CPeninputVkbDataMgr object. + */ + static CPeninputVkbDataMgr* NewL(MPeninputLayoutContext* aContext); + + /** + * Create one CPeninputVkbDataMgr object + * + * @since S60 v3.2 + * @param aContext The layout context + * @return The CPeninputVkbDataMgr object. + */ + static CPeninputVkbDataMgr* NewLC(MPeninputLayoutContext* aContext); + + /** + * Destructor + * + * @since S60 v3.2 + * @return None. + */ + virtual ~CPeninputVkbDataMgr(); + + /** + * From CPeninputDataMgr + * instesd of "void InitMore();" + * + * @since S60 v3.2 + * @return None + */ + void InitMoreJpL(); + + + /** + * Get PtiEngine + * + * @since S60 v3.2 + * @return ptiengine. + */ + CPtiEngine* PtiEngine(); + + /** + * Get Predictive flag + * + * @since S60 v3.2 + * @return The predictive flag. + */ + TBool Predictive() const; + + /** + * Get full or half flag + * + * @since S60 v3.2 + * @return The full or half flag. + */ + TInt FullHalf() const; + + /** + * Get japanese flags + * + * @since S60 v3.2 + * @return japanese flags. + */ + TInt JapaneseFlags() const; + + /** + * Set permitted range + * + * @since S60 v3.2 + * @param aRange The new value + * @return None. + */ + void SetPermittedRange(TInt aRange); + + /** + * Set ptiEngine InputMode by new range + * + * @since S60 v3.2 + * @param aRange The new Range + * @return None. + */ + void SetEngineInputMode(TInt aRange); + + /** + * Set predictive + * + * @since S60 v3.2 + * @param aPredictive ETrue:show prediction pane EFalse:not show + * @return None. + */ + void SetPredictive(TBool aPredictive); + + /** + * Set full or half + * + * @since S60 v3.2 + * @param aFullHalf 0:half 1:full + * @return None. + */ + void SetFullHalf(TInt aFullHalf); + + /** + * Set backspace or delete + * + * @since S60 v3.2 + * @param aClear 0:backspace 1:delete + * @return None. + */ + void SetClear(TInt aClear); + + /** + * Set JapaneseFlags + * + * @since S60 v3.2 + * @param aJapaneseFlags + * @return None. + */ + void SetJapaneseFlags(TInt aJapaneseFlags); + + /** + * kana : handle dakuten hanndakuten little + * + * @since S60 v3.2 + * @param aEventData The event data + * @param aPreChar The previous character + * @param aStatus ETrue:handled EFalse:not handled + * @param aSendText 1:Send Text + */ + void HandleFunctionalVkbEventL(const TDesC& aEventData, TUint aPreChar, TBool& aStatus, TInt& aSendText); + + /** + * half katakana : handle dakuten hanndakuten + * + * @since S60 v3.2 + * @param aEventData The event data(dakuten or hanndakuten) + * @param aPreChar The previous character + * @param aPrePreChar The previous previous character + * @param aStatus ETrue:handled EFalse:not handled + * @param aSendText 1:Send Text + */ + void HandleFunctionalVkbEventWithPrePreCharL(const TDesC& aEventData, TUint aPreChar, TUint aPrePreChar, TBool& aStatus, TInt& aSendText); + + /** + * kana : handle touten,kuten + * + * @since S60 v3.2 + * @param anewChar initial/converted character + * @return ETrue:converted EFalse:not converted + */ + TBool ConvertCommaFullStop(TUint& aNewChar) const; + + /** + * Clear direction + * + * @since S60 v3.2 + * @return TInt 1:delete 0:backspace + */ + TInt ClearDirection() const; + +protected: + + /** + * Constructor + * + * @since S60 v3.2 + * @param aContext The layout context + * @return None. + */ + CPeninputVkbDataMgr(MPeninputLayoutContext* aContext); + + /** + * 2nd constructor function + * + * @since S60 v3.2 + * @return None. + */ + void ConstructL(); + +private: // Data + + /** + * The pti engine + * Own + */ + CPtiEngine* iPtiEngine; + + /** + * prediction pane on/off + */ + TBool iPredictive; + + /** + * 0:half 1:full + */ + TInt iFullHalf; + + /** + * backspace or delete + * 1:delete 0:Backspace + */ + TInt iClear; + + /** + * Japanese Qwerty Comma ON(Japanese)/OFF(Western) + * EPenInputJapaneseSettingQwertyComma = 0x00000010, + * Japanese Qwerty Period ON(Japanese)/OFF(Western) + * EPenInputJapaneseSettingQwertyPeriod = 0x00000020, + * Japanese Qwerty Width Of Space ON(Full)/OFF(Half) + * EPenInputJapaneseSettingQwertyWidthOfSpace = 0x00000040, + */ + TInt iJapaneseFlags; + }; + + +#endif // C_PENINPUTVKBDATAMGR_H + +// End Of File