--- a/textinput/ptikoreanqwertycore/inc/PtiKoreanQwertyCore.h Mon Mar 15 12:42:02 2010 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,401 +0,0 @@
-/*
-* Copyright (c) 2002-2006 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:
-*
-*/
-
-
-#ifndef __PTIKOREANQWERTYCORE_H__
-#define __PTIKOREANQWERTYCORE_H__
-
-#include <e32base.h> // CBase
-#include <e32std.h> // TBuf
-
-#include <PtiCore.h>
-#include <osscombination.h>
-
-class COssHangulInputContext;
-class CRepository;
-class CActiveCallback;
-
-class CPtiKoreanQwertyCore : public CPtiCore
- {
-public:
- static CPtiKoreanQwertyCore* NewLC(
- CPtiEngine* aOwner,
- TDes* aTextBuffer);
-
- static CPtiKoreanQwertyCore* NewL(
- CPtiEngine* aOwner,
- TDes* aTextBuffer);
-
- virtual ~CPtiKoreanQwertyCore();
-
-private:
-
- CPtiKoreanQwertyCore(
- CPtiEngine* aOwner,
- TDes* aTextBuffer);
-
- void ConstructL();
-
-private: // from CPtiCore
-
- /**
- * Initialized core object. This method is called by PtiEngine framework when core object
- * is loaded.
- *
- * @since 2.6
- * @param aOwner Pointer to onwing PtiEngine framework instance.
- * @param aTextBuffer A pointer to PtiEngine main text buffer.
- * @param aLanguageList A language list to be filled with language bindings to this core
- * onbject
- * @param aUseDefautUserDictionary A boolean value indicating whether default user dictionary shoulkd be used
- * (in case this core object supports user dictionaries).
- */
- virtual void InitializeL(
- CPtiEngine* aOwner,
- TDes* aTextBuffer,
- CArrayPtrFlat<CPtiCoreLanguage>* aLanguageList,
- TBool aUseDefautUserDictionary);
-
- /**
- * Removes languages associated to this core object from given language list. Languages
- * not associated to this core abject are not touched.
- *
- * @since 2.6
- * @param aLanguageList A language list to be cleaned.
- */
- virtual void DropLanguages(CArrayPtrFlat<CPtiCoreLanguage>* aLanguageList);
-
- /**
- * Opens resources for given language and itinialized them.
- *
- * @since 2.6
- * @param aLanguage Symbian OS language code a language to be initialized.
- * @return KErrNone or a system wide error code.
- */
- virtual TInt OpenLanguageL(CPtiCoreLanguage *aLanguage);
-
- /**
- * Closes currently activate language and frees resources associated to it.
- *
- * @since 2.6
- * @return KErrNone of system wide error ocde.
- */
- virtual TInt CloseLanguageL();
-
- /**
- * Returns the contents of text buffer.
- *
- * @since 2.6
- * @return A constant pointer to text buffer.
- */
- virtual TPtrC GetCurrentWord() const;
-
- /**
- * Commits current word. Commiting means that user has added current
- * word as part of text. Frequency information and other related attributes
- * can then be updated.
- *
- * @since 2.6
- * @return KErrNone or a system wide error code.
- */
- virtual TInt CommitCurrentWord();
-
- /**
- * Returns a pointer core info structure. Core info struct contains useful
- * information about core object and its features.
- *
- */
- virtual MPtiCoreInfo* GetCoreInfo();
-
- /**
- * Turns reoreding feature on or off. Reordering means that prediction engine
- * maintains frequency information for used words and modifys the order of candidate list
- * based on that information. This feature may not be supported by all prediction engines.
- *
- * @since 2.6
- * @param aStatus New status for reorderinf feature.
- * @return KErrNone or a system wide error code.
- */
- virtual TInt SetReordering(TBool aStatus);
-
- /**
- * This is the single most important core API method, most of the text input functionality
- * will be utilize this method. Call to this method indicates core object that a key was
- * pressed and it should act accordingly and fill the output buffer.
- *
- * @since 2.6
- * @param aKey Enum value for pressed key.
- */
- virtual void AppendKeyPress(TPtiKey aKey);
-
- /**
- * Indicates core object that it should perform 'delete key press'-operation.
- *
- * @since 2.6
- */
- virtual void DeleteKeyPress();
-
- /**
- * Call to this method notifys core object that input buffer was cleared.
- *
- * @since 2.6
- */
- virtual void ClearBuffer();
-
- /**
- * Sets current input sequence. The end result of this operation must be same as
- * if user had entered keys in input array as individual key presses.
- *
- * @since 2.6
- * @param aInput An array containing sequence of key presses (type TPtiKey).
- * @return KErrNone or a system wide error code.
- */
- virtual TInt SetCurrentInputSequence(TPtrC8 aInput);
-
- /**
- * Converts given string from one character set to another. Possible conversion types
- * are defined in PtiDefs.h
- *
- * @since 2.6
- * @param aType Conversion type.
- * @param aInput Pointer to input string to be converted.
- * @param aInputLength Length of input buffer.
- * @param aOutput pointer to output buffer.
- * @return KErrNone or a system wide error code.
- */
- virtual TInt Convert(
- TPtiCharConversion aType,
- TAny* aInput,
- TInt aInputLength,
- TAny* aOutput);
-
- /**
- * Re-defines keymappings for given key / input mode / case combination. Previous
- * keymapping will be deleted and new mappings will be used instead.
- *
- * @since 2.6
- * @param aMode Input mode for new key mapping.
- * @param aKey A key to be replaced.
- * @param aKeyMap New keymapping data for aKey.
- * @param aCase Text case to be replaced.
- * @return KErrNone or system wide error code.
- */
- virtual TInt SetExternalKeyMapL(
- TPtiEngineInputMode aMode,
- TPtiKey aKey,
- TDesC& aKeyMap,
- TPtiTextCase aCase);
- /**
- * Returns alternate spelling for given unicode characters. Possible conversion
- * types are defined in header PtiDefs.h.
- *
- * @sinec 2.6
- * @aInput A character to be converted.
- * @aOutput Resulting alternate spelling will be stored here.
- * @aType Spelling conversion type.
- * @return KErrNone or system wide error code.
- */
- virtual TInt GetSpelling(TUint16 aInput, TDes& aOutput, TPtiSpelling aType);
-
- /**
- * Cancels all on-going core obejct timner activity.
- *
- * @since 2.6
- * @return KErrNone or system wide error code.
- */
- virtual TInt CancelTimerActivity();
-
- /**
- * A generic command handling method for extending PtiEngine API without adding
- * new base class methods. It is recommended to use this only in force major
- * situations, where there is no other way.
- *
- * @since 2.6
- * @param aCommand A Command id value. Platform wide command ids are defined in PtiDefs.h.
- * @param aParams TAny pointer for passing any required parameters.
- * @return An integer containing possible return value related to command.
- */
- virtual TInt HandleCommandL(
- TPtiEngineCommand aCommand,
- TAny* aParams);
-
-//
-// Predictive latin API
-//
-private:
- /**
- * Returns number of candidates for currently entered key sequence.
- *
- * @since 2.6
- * @return Number of prediction candidates for currently entered key sequence.
- */
- virtual TInt NumberOfCandidates();
-
- /**
- * Returns a list of candidate words for currently entered key sequence.
- *
- * @since 2.6
- * @param aList A list to be filled with candidate words.
- * @return Number of candidate works in aList.
- */
- virtual TInt GetCandidateListL(CDesCArray& aList);
-
- /**
- * Returns next word candidate list. Next word candidates are words
- * potentially related to currently selected candidate. Next word prediction
- * feature must supported by the engine and turned on.
- *
- * @since 2.6
- */
- virtual TInt GetNextWordCandidateListL(CDesCArray& aList);
-
- /**
- * Returns first word in list of candidate words for current input sequence.
- *
- * @since 2.6
- * @param aResult A descriptor where resulting word will be stored.
- * @return KErrnNone or system wide error code.
- */
- virtual TInt GetFirstCandidate(TDes& aResult);
-
- /**
- * Returns next word in list of candidate words for current input sequence.
- *
- * @since 2.6
- * @param aResult A descriptor where resulting word will be stored.
- * @return KErrnNone or system wide error code.
- */
- virtual TInt GetNextCandidate(TDes& aResult);
-
- /**
- * Returns previous word in list of candidate words for current input sequence.
- *
- * @since 2.6
- * @param aResult A descriptor where resulting word will be stored.
- * @return KErrnNone or system wide error code.
- */
- virtual TInt GetPreviousCandidate(TDes& aResult);
-
-//
-// User dictionary API
-//
-private:
- virtual TInt AddUserDictionaryEntry(
- MPtiUserDictionaryEntry& aEntry,
- CPtiUserDictionary* aDict);
-
- virtual TInt RemoveUserDictionaryEntry(
- MPtiUserDictionaryEntry& aEntry,
- CPtiUserDictionary* aDict);
-
- virtual TInt NumberOfEntriesInUserDictionary(
- CPtiUserDictionary* aDict);
-
- virtual TInt GetUserDictionaryEntry(
- TInt aIndex,
- MPtiUserDictionaryEntry& aResult,
- CPtiUserDictionary* aDict);
-
- virtual CPtiUserDictionary* CreateEmptyUserDictionaryL(TInt aMaxSize);
-
- virtual TInt AttachUserDictionary(CPtiUserDictionary* aDict);
-
- virtual TBool DetachUserDictionary(CPtiUserDictionary* aDict);
-
-//
-// Chinese API
-//
-private:
-
- virtual TPtrC GetCandidatePage();
-
- virtual TBool NextCandidatePage();
-
- virtual TBool PreviousCandidatePage();
-
- virtual TBool MoreCandidatePages();
-
- virtual void SetCandidatePageLength(TInt aLength);
-
- virtual TPtrC GetPhoneticSpelling(TInt aIndex) const;
-
- virtual TInt PhoneticSpellingCount() const;
-
- virtual TBool SelectPhoneticSpelling(TInt aIndex);
-
- virtual TInt SelectedPhoneticSpelling() const;
-
- virtual TBool ToneMark(TText& aToneMark) const;
-
- virtual TBool IsToneMarkValidForSpelling();
-
- virtual TBool SetPredictiveChineseChar(const TDesC& aChar);
-
- virtual TBool SetToneMark(TInt aToneMark);
-
-
-//
-// Japanese API
-//
-private:
-
- virtual TPtrC ReadingTextL();
-
- virtual MPtiEngineCompositionDataInterface* CompositionData();
-
-//
-// Chinese API
-//
-private:
-
- virtual HBufC* GetCandidatesByInputString(
- const TDesC& aInputString,
- RPointerArray<HBufC>& aList,
- const TBool aIsPredictive);
-
- void UpdateFromRepositoryL();
-
- void UpdateDblConsonentL(
- const TInt& aCenRepId,
- const TOssCombinationItem& aCombination);
-
-public:
-
- static TInt CBSettingChanged(void* aSelf);
-
-private:
-
- CPtiEngine* iOwner;
-
- TDes* iTextBuffer;
-
- TBool iKoreanLanOpen;
-
- COssHangulInputContext* iHic;
-
- COssCombination* iCombination;
-
- TBool iLowerCase;
-
- CRepository* iRepository;
-
- CActiveCallback* iCRNotifier;
-
- };
-
-#endif // __PTIKOREANQWERTYCORE_H__
-