diff -r 000000000000 -r eb1f2e154e89 textinput/ptienginev2/src/PtiEngine.cpp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/textinput/ptienginev2/src/PtiEngine.cpp Tue Feb 02 01:02:04 2010 +0200 @@ -0,0 +1,1288 @@ +/* +* Copyright (c) 2003-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: Predective text input engine API implementation +* +*/ + + + +#include "PtiEngine.h" +#include "PtiEngineImpl.h" +#include "PtiHwrRecognizer.h" + +// +// CPtiEngine +// + +// --------------------------------------------------------------------------- +// CPtiEngineImpl::NewL +// +// --------------------------------------------------------------------------- +// +EXPORT_C CPtiEngine* CPtiEngine::NewL(TBool aUseDefaultUserDictionary) + { + CPtiEngine *engine = new (ELeave) CPtiEngine(); + CleanupStack::PushL( engine ); + engine->ConstructL(aUseDefaultUserDictionary); + CleanupStack::Pop(); // engine + return engine; + } + + +// --------------------------------------------------------------------------- +// CPtiEngineImpl::NewL +// +// --------------------------------------------------------------------------- +// +EXPORT_C CPtiEngine* CPtiEngine::NewL(const TDesC& /*aCoreName*/, TBool /*aUseDefaultUserDictionary*/) + { + // Deprecated. + User::Leave(KErrNotSupported); + return NULL; + } + + +// --------------------------------------------------------------------------- +// CPtiEngineImpl::NewL +// +// --------------------------------------------------------------------------- +// +EXPORT_C CPtiEngine* CPtiEngine::NewL(const TUid aCoreUid, TBool aUseDefaultUserDictionary) + { + CPtiEngine *engine = new (ELeave) CPtiEngine(); + CleanupStack::PushL( engine ); + engine->ConstructL(aCoreUid, aUseDefaultUserDictionary); + CleanupStack::Pop(); // engine + return engine; + } + + +// --------------------------------------------------------------------------- +// CPtiEngineImpl::CPtiEngine +// +// --------------------------------------------------------------------------- +// +CPtiEngine::CPtiEngine() + { + } + + +// --------------------------------------------------------------------------- +// CPtiEngineImpl::~CPtiEngine +// +// --------------------------------------------------------------------------- +// +EXPORT_C CPtiEngine::~CPtiEngine() + { + delete iImpl; + } + + +// --------------------------------------------------------------------------- +// CPtiEngineImpl::ConstructL +// +// --------------------------------------------------------------------------- +// +void CPtiEngine::ConstructL(TBool aUseDefaultUserDictionary) + { + iImpl = CPtiEngineImpl::NewL(this); + iImpl->InitializeL(aUseDefaultUserDictionary); + } + + +// --------------------------------------------------------------------------- +// CPtiEngineImpl::ConstructL +// +// --------------------------------------------------------------------------- +// +void CPtiEngine::ConstructL(const TUid /*aCoreUid*/, TBool aUseDefaultUserDictionary) + { + iImpl = CPtiEngineImpl::NewL(this); + iImpl->InitializeL(aUseDefaultUserDictionary); + } + + +// --------------------------------------------------------------------------- +// CPtiEngineImpl::GetLanguage +// +// --------------------------------------------------------------------------- +// +EXPORT_C MPtiLanguage* CPtiEngine::GetLanguage(TInt aCode) const + { + return iImpl->GetLanguage( aCode ); + } + + +// --------------------------------------------------------------------------- +// CPtiEngineImpl::GetAvailableLanguagesL +// +// --------------------------------------------------------------------------- +// +EXPORT_C void CPtiEngine::GetAvailableLanguagesL(CArrayFix* aResult) + { + iImpl->GetAvailableLanguagesL( aResult ); + } + + +// --------------------------------------------------------------------------- +// CPtiEngineImpl::CreateUserDictionaryL +// +// --------------------------------------------------------------------------- +// +EXPORT_C TInt CPtiEngine::CreateUserDictionaryL(TDesC& aFileName, CDesCArrayFlat* aWords, TPtiEngineInputMode aMode) + { + return iImpl->CreateUserDictionaryL(aFileName, aWords, aMode); + } + + +// --------------------------------------------------------------------------- +// CPtiEngineImpl::AttachUserDictionaryL +// +// --------------------------------------------------------------------------- +// +EXPORT_C MPtiUserDictionary* CPtiEngine::AttachUserDictionaryL(TDesC& aFileName) + { + return iImpl->AttachUserDictionaryL (aFileName ); + } + + +// --------------------------------------------------------------------------- +// CPtiEngineImpl::DetachUserDictionary +// +// --------------------------------------------------------------------------- +// +EXPORT_C TInt CPtiEngine::DetachUserDictionary(TDesC& aFileName) + { + return iImpl->DetachUserDictionary( aFileName ); + } + + +// --------------------------------------------------------------------------- +// CPtiEngineImpl::DetachUserDictionary +// +// --------------------------------------------------------------------------- +// +EXPORT_C TInt CPtiEngine::DetachUserDictionary(TInt aId) + { + return iImpl->DetachUserDictionary( aId ); + } + + +// --------------------------------------------------------------------------- +// CPtiEngineImpl::SetCurrentWord +// +// --------------------------------------------------------------------------- +// +EXPORT_C TInt CPtiEngine::SetCurrentWord(TPtrC aWord) + { + return iImpl->SetCurrentWord( aWord ); + } + + +// --------------------------------------------------------------------------- +// CPtiEngineImpl::ActivateLanguageL +// +// --------------------------------------------------------------------------- +// +EXPORT_C TInt CPtiEngine::ActivateLanguageL(TInt aEpocLanguageID, TPtiEngineInputMode aMode) + { + return iImpl->ActivateLanguageL(aEpocLanguageID, aMode); + } + + +// --------------------------------------------------------------------------- +// CPtiEngineImpl::CloseCurrentLanguageL +// +// --------------------------------------------------------------------------- +// +EXPORT_C void CPtiEngine::CloseCurrentLanguageL() + { + iImpl->CloseCurrentLanguageL(); + } + + +// --------------------------------------------------------------------------- +// CPtiEngineImpl::SetInputMode +// +// --------------------------------------------------------------------------- +// +EXPORT_C TInt CPtiEngine::SetInputMode(TPtiEngineInputMode aMode) + { + return iImpl->SetInputMode( aMode ); + } + + +// --------------------------------------------------------------------------- +// CPtiEngineImpl::GetNextWordCandidateListL +// +// --------------------------------------------------------------------------- +// +EXPORT_C TInt CPtiEngine::GetNextWordCandidateListL(CDesCArray& aList) + { + return iImpl->GetNextWordCandidateListL( aList ); + } + + +// --------------------------------------------------------------------------- +// CPtiEngineImpl::AppendKeyPress +// +// --------------------------------------------------------------------------- +// +EXPORT_C TPtrC CPtiEngine::AppendKeyPress(TPtiKey aKey) + { + return iImpl->AppendKeyPress( aKey ); + } + + +// --------------------------------------------------------------------------- +// CPtiEngineImpl::DeleteKeyPress +// +// --------------------------------------------------------------------------- +// +EXPORT_C TPtrC CPtiEngine::DeleteKeyPress() + { + return iImpl->DeleteKeyPress(); + } + + +// --------------------------------------------------------------------------- +// CPtiEngineImpl::GetLocalizedLanguageName +// +// --------------------------------------------------------------------------- +// +EXPORT_C void CPtiEngine::GetLocalizedLanguageName(TInt aLangCode, TDes& aResult) + { + TRAP_IGNORE(iImpl->GetLocalizedLanguageNameL(aLangCode, aResult)); + } + + +// --------------------------------------------------------------------------- +// CPtiEngineImpl::GetCandidateListL +// +// --------------------------------------------------------------------------- +// +EXPORT_C TInt CPtiEngine::GetCandidateListL(CDesCArray& aList) + { + return iImpl->GetCandidateListL( aList ); + } + + +// --------------------------------------------------------------------------- +// CPtiEngineImpl::FirstCandidate +// +// --------------------------------------------------------------------------- +// +EXPORT_C TPtrC CPtiEngine::FirstCandidate() + { + return iImpl->FirstCandidate(); + } + + +// --------------------------------------------------------------------------- +// CPtiEngineImpl::NextCandidate +// +// --------------------------------------------------------------------------- +// +EXPORT_C TPtrC CPtiEngine::NextCandidate() + { + return iImpl->NextCandidate(); + } + + +// --------------------------------------------------------------------------- +// CPtiEngineImpl::PreviousCandidate +// +// --------------------------------------------------------------------------- +// +EXPORT_C TPtrC CPtiEngine::PreviousCandidate() + { + return iImpl->PreviousCandidate(); + } + + +// --------------------------------------------------------------------------- +// CPtiEngineImpl::CoreInfo +// +// --------------------------------------------------------------------------- +// +EXPORT_C MPtiCoreInfo* CPtiEngine::CoreInfo(TPtiEngineInputMode aMode) const + { + return iImpl->CoreInfo( aMode ); + } + + +// --------------------------------------------------------------------------- +// CPtiEngineImpl::NumberOfCandidates +// +// --------------------------------------------------------------------------- +// +EXPORT_C TInt CPtiEngine::NumberOfCandidates() + { + return iImpl->NumberOfCandidates(); + } + + +// --------------------------------------------------------------------------- +// CPtiEngineImpl::SetReordering +// +// --------------------------------------------------------------------------- +// +EXPORT_C TInt CPtiEngine::SetReordering(TBool aStatus) + { + return iImpl->SetReordering( aStatus ); + } + + +// --------------------------------------------------------------------------- +// CPtiEngineImpl::ClearCurrentWord +// +// --------------------------------------------------------------------------- +// +EXPORT_C void CPtiEngine::ClearCurrentWord() + { + iImpl->ClearCurrentWord(); + } + + +// --------------------------------------------------------------------------- +// CPtiEngineImpl::CommitCurrentWord +// +// --------------------------------------------------------------------------- +// +EXPORT_C TInt CPtiEngine::CommitCurrentWord() + { + return iImpl->CommitCurrentWord(); + } + + +// --------------------------------------------------------------------------- +// CPtiEngineImpl::AddCoreL +// +// --------------------------------------------------------------------------- +// +EXPORT_C TInt CPtiEngine::AddCoreL(const TDesC& /*aFileName*/, TBool /*aUseDefaultUserDictionary*/) + { + User::Leave(KErrNotSupported); + return KErrNotSupported; + } + + +// --------------------------------------------------------------------------- +// CPtiEngineImpl::AddCoreL +// +// --------------------------------------------------------------------------- +// +EXPORT_C TInt CPtiEngine::AddCoreL(const TUid aCoreUid, TBool aUseDefaultUserDictionary) + { + return iImpl->AddCoreL(aCoreUid, aUseDefaultUserDictionary); + } + + +// --------------------------------------------------------------------------- +// CPtiEngineImpl::CharConversion +// +// --------------------------------------------------------------------------- +// +EXPORT_C TInt CPtiEngine::CharConversion(TPtiCharConversion aType, + TAny* aInput, + TInt aInputLength, + TAny* aOutput) + { + return iImpl->CharConversion(aType, aInput, aInputLength, aOutput); + } + + +// --------------------------------------------------------------------------- +// CPtiEngineImpl::AvailableCharConversions +// +// --------------------------------------------------------------------------- +// +EXPORT_C TUint32 CPtiEngine::AvailableCharConversions() const + { + return iImpl->AvailableCharConversions(); + } + + +// --------------------------------------------------------------------------- +// CPtiEngineImpl::SetExternalKeyMapL +// +// --------------------------------------------------------------------------- +// +EXPORT_C TInt CPtiEngine::SetExternalKeyMapL(TPtiEngineInputMode aMode, + TPtiKey aKey, + TDesC& aKeyMap, + TPtiTextCase aCase) + { + return iImpl->SetExternalKeyMapL(aMode, aKey, aKeyMap, aCase); + } + + +// --------------------------------------------------------------------------- +// CPtiEngineImpl::GetSpelling +// +// --------------------------------------------------------------------------- +// +EXPORT_C TInt CPtiEngine::GetSpelling(TUint16 aInput, TDes& aOutput, TPtiSpelling aType) + { + return iImpl->GetSpelling(aInput, aOutput, aType); + } + + +// --------------------------------------------------------------------------- +// CPtiEngineImpl::CancelTimerActivity +// +// --------------------------------------------------------------------------- +// +EXPORT_C TInt CPtiEngine::CancelTimerActivity() + { + return iImpl->CancelTimerActivity(); + } + + +// --------------------------------------------------------------------------- +// CPtiEngineImpl::CharacterToKey +// +// --------------------------------------------------------------------------- +// +EXPORT_C TPtiKey CPtiEngine::CharacterToKey(TUint16 aChar) + { + return iImpl->CharacterToKey( aChar ); + } + + +// --------------------------------------------------------------------------- +// CPtiEngineImpl::AddUserDictionaryEntry +// +// --------------------------------------------------------------------------- +// +EXPORT_C TInt CPtiEngine::AddUserDictionaryEntry(MPtiUserDictionaryEntry& aEntry) + { + return iImpl->AddUserDictionaryEntry( aEntry ); + } + + +// --------------------------------------------------------------------------- +// CPtiEngineImpl::AddUserDictionaryEntry +// +// --------------------------------------------------------------------------- +// +EXPORT_C TInt CPtiEngine::AddUserDictionaryEntry(MPtiUserDictionaryEntry& aEntry, TInt aId) + { + return iImpl->AddUserDictionaryEntry(aEntry, aId); + } + + +// --------------------------------------------------------------------------- +// CPtiEngineImpl::RemoveEntryFromUserDictionary +// +// --------------------------------------------------------------------------- +// +EXPORT_C TInt CPtiEngine::RemoveEntryFromUserDictionary(MPtiUserDictionaryEntry& aEntry) + { + return iImpl->RemoveEntryFromUserDictionary( aEntry ); + } + + +// --------------------------------------------------------------------------- +// CPtiEngineImpl::RemoveEntryFromUserDictionary +// +// --------------------------------------------------------------------------- +// +EXPORT_C TInt CPtiEngine::RemoveEntryFromUserDictionary(MPtiUserDictionaryEntry& aEntry, TInt aId) + { + return iImpl->RemoveEntryFromUserDictionary(aEntry, aId); + } + + +// --------------------------------------------------------------------------- +// CPtiEngineImpl::NumberOfEntriesInUserDictionary +// +// --------------------------------------------------------------------------- +// +EXPORT_C TInt CPtiEngine::NumberOfEntriesInUserDictionary() + { + return iImpl->NumberOfEntriesInUserDictionary(); + } + + +// --------------------------------------------------------------------------- +// CPtiEngineImpl::HandleCommandL +// +// --------------------------------------------------------------------------- +// +EXPORT_C TInt CPtiEngine::HandleCommandL(TPtiEngineCommand aCommand, TAny* aParams) + { + return iImpl->HandleCommandL(aCommand, aParams); + } + + +// --------------------------------------------------------------------------- +// CPtiEngineImpl::CandidatePage +// +// --------------------------------------------------------------------------- +// +EXPORT_C TPtrC CPtiEngine::CandidatePage() + { + return iImpl->CandidatePage(); + } + + +// --------------------------------------------------------------------------- +// CPtiEngineImpl::NextCandidatePage +// +// --------------------------------------------------------------------------- +// +EXPORT_C TBool CPtiEngine::NextCandidatePage() + { + return iImpl->NextCandidatePage(); + } + + +// --------------------------------------------------------------------------- +// CPtiEngineImpl::PreviousCandidatePage +// +// --------------------------------------------------------------------------- +// +EXPORT_C TBool CPtiEngine::PreviousCandidatePage() + { + return iImpl->PreviousCandidatePage(); + } + + +// --------------------------------------------------------------------------- +// CPtiEngineImpl::MoreCandidatePages +// +// --------------------------------------------------------------------------- +// +EXPORT_C TBool CPtiEngine::MoreCandidatePages() + { + return iImpl->MoreCandidatePages(); + } + + +// --------------------------------------------------------------------------- +// CPtiEngineImpl::SetCandidatePageLength +// +// --------------------------------------------------------------------------- +// +EXPORT_C void CPtiEngine::SetCandidatePageLength(TInt aLength) + { + iImpl->SetCandidatePageLength( aLength ); + } + + +// --------------------------------------------------------------------------- +// CPtiEngineImpl::CompositionData +// +// --------------------------------------------------------------------------- +// +EXPORT_C MPtiEngineCompositionDataInterface* CPtiEngine::CompositionData() + { + return iImpl->CompositionData(); + } + + +// --------------------------------------------------------------------------- +// CPtiEngineImpl::DefaultUserDictionary +// +// --------------------------------------------------------------------------- +// +EXPORT_C MPtiUserDictionary* CPtiEngine::DefaultUserDictionary(TPtiEngineInputMode aMode) + { + return iImpl->DefaultUserDictionary( aMode ); + } + + +// --------------------------------------------------------------------------- +// CPtiEngineImpl::GetUserDictionaryEntry +// +// --------------------------------------------------------------------------- +// +EXPORT_C TInt CPtiEngine::GetUserDictionaryEntry(TInt aIndex, MPtiUserDictionaryEntry& aResult) + { + return iImpl->GetUserDictionaryEntry(aIndex, aResult); + } + + +// --------------------------------------------------------------------------- +// CPtiEngineImpl::GetPhoneticSpelling +// +// --------------------------------------------------------------------------- +// +EXPORT_C TPtrC CPtiEngine::GetPhoneticSpelling(TInt aIndex) const + { + return iImpl->GetPhoneticSpelling( aIndex ); + } + + +// --------------------------------------------------------------------------- +// CPtiEngineImpl::PhoneticSpellingCount +// +// --------------------------------------------------------------------------- +// +EXPORT_C TInt CPtiEngine::PhoneticSpellingCount() const + { + return iImpl->PhoneticSpellingCount(); + } + + +// --------------------------------------------------------------------------- +// CPtiEngineImpl::SelectPhoneticSpelling +// +// --------------------------------------------------------------------------- +// +EXPORT_C TBool CPtiEngine::SelectPhoneticSpelling(TInt aIndex) + { + return iImpl->SelectPhoneticSpelling( aIndex ); + } + + +// --------------------------------------------------------------------------- +// CPtiEngineImpl::SelectedPhoneticSpelling +// +// --------------------------------------------------------------------------- +// +EXPORT_C TInt CPtiEngine::SelectedPhoneticSpelling() const + { + return iImpl->SelectedPhoneticSpelling(); + } + + +// --------------------------------------------------------------------------- +// CPtiEngineImpl::ReadingTextL +// +// --------------------------------------------------------------------------- +// +EXPORT_C TPtrC CPtiEngine::ReadingTextL() + { + return iImpl->ReadingTextL(); + } + + +// --------------------------------------------------------------------------- +// CPtiEngineImpl::EnableToneMarks +// +// --------------------------------------------------------------------------- +// +EXPORT_C void CPtiEngine::EnableToneMarks(TBool aValue) + { + iImpl->EnableToneMarks( aValue ); + } + + +// --------------------------------------------------------------------------- +// CPtiEngineImpl::ResetToneMark +// +// --------------------------------------------------------------------------- +// +EXPORT_C void CPtiEngine::ResetToneMark() + { + iImpl->ResetToneMark(); + } + + +// --------------------------------------------------------------------------- +// CPtiEngineImpl::ToneMark +// +// --------------------------------------------------------------------------- +// +EXPORT_C TBool CPtiEngine::ToneMark(TText& aToneMark) const + { + return iImpl->ToneMark( aToneMark ); + } + + +// --------------------------------------------------------------------------- +// CPtiEngineImpl::IsToneMarkValidForSpelling +// +// --------------------------------------------------------------------------- +// +EXPORT_C TBool CPtiEngine::IsToneMarkValidForSpelling() const + { + return iImpl->IsToneMarkValidForSpelling(); + } + + +// --------------------------------------------------------------------------- +// CPtiEngineImpl::IncrementToneMark +// +// --------------------------------------------------------------------------- +// +EXPORT_C TBool CPtiEngine::IncrementToneMark(TBool aOverrideInvalid) + { + return iImpl->IncrementToneMark( aOverrideInvalid ); + } + + +// --------------------------------------------------------------------------- +// CPtiEngineImpl::SetPredictiveChineseChar +// +// --------------------------------------------------------------------------- +// +EXPORT_C TBool CPtiEngine::SetPredictiveChineseChar(const TDesC& aChar) + { + return iImpl->SetPredictiveChineseChar( aChar ); + } + + +// --------------------------------------------------------------------------- +// CPtiEngineImpl::GetModeNameIndexL +// +// --------------------------------------------------------------------------- +// +EXPORT_C void CPtiEngine::GetModeNameIndexL(TPtiChineseVariant aVariant, RArray& aResult) + { + iImpl->GetModeNameIndexL(aVariant, aResult); + } + + +// --------------------------------------------------------------------------- +// CPtiEngineImpl::CurrentLanguage +// +// --------------------------------------------------------------------------- +// +EXPORT_C MPtiLanguage* CPtiEngine::CurrentLanguage() + { + return iImpl->CurrentLanguage(); + } + + +// --------------------------------------------------------------------------- +// CPtiEngineImpl::CurrentWord +// +// --------------------------------------------------------------------------- +// +EXPORT_C TPtrC CPtiEngine::CurrentWord() + { + return iImpl->CurrentWord(); + } + + +// --------------------------------------------------------------------------- +// CPtiEngineImpl::InputMode +// +// --------------------------------------------------------------------------- +// +EXPORT_C TPtiEngineInputMode CPtiEngine::InputMode() const + { + return iImpl->InputMode(); + } + + +// --------------------------------------------------------------------------- +// CPtiEngineImpl::SetCase +// +// --------------------------------------------------------------------------- +// +EXPORT_C void CPtiEngine::SetCase(TPtiTextCase aCase) + { + iImpl->SetCase( aCase ); + } + + +// --------------------------------------------------------------------------- +// CPtiEngineImpl::Case +// +// --------------------------------------------------------------------------- +// +EXPORT_C TPtiTextCase CPtiEngine::Case() const + { + return iImpl->Case(); + } + + +// --------------------------------------------------------------------------- +// CPtiEngineImpl::NumberOfLanguages +// +// --------------------------------------------------------------------------- +// +EXPORT_C TInt CPtiEngine::NumberOfLanguages() const + { + return iImpl->NumberOfLanguages(); + } + + +// --------------------------------------------------------------------------- +// CPtiEngineImpl::LastEnteredKey +// +// --------------------------------------------------------------------------- +// +EXPORT_C TPtiKey CPtiEngine::LastEnteredKey() const + { + return iImpl->LastEnteredKey(); + } + + +// --------------------------------------------------------------------------- +// CPtiEngineImpl::Observer +// +// --------------------------------------------------------------------------- +// +EXPORT_C MPtiObserver* CPtiEngine::Observer() + { + return iImpl->Observer(); + } + + +// --------------------------------------------------------------------------- +// CPtiEngineImpl::SetObserver +// +// --------------------------------------------------------------------------- +// +EXPORT_C void CPtiEngine::SetObserver(MPtiObserver* aObserver) + { + iImpl->SetObserver( aObserver ); + } + + +// --------------------------------------------------------------------------- +// CPtiEngineImpl::CurrentInputSequence +// +// --------------------------------------------------------------------------- +// +EXPORT_C TPtrC8 CPtiEngine::CurrentInputSequence() const + { + return iImpl->CurrentInputSequence(); + } + + +// --------------------------------------------------------------------------- +// CPtiEngineImpl::GetPhoneticSpellingsL +// +// --------------------------------------------------------------------------- +// +EXPORT_C TInt CPtiEngine::GetPhoneticSpellingsL(CDesCArray& aList) + { + return iImpl->GetPhoneticSpellingsL(aList); + } + + +// --------------------------------------------------------------------------- +// CPtiEngineImpl::GetChinesePhraseCandidatesL +// +// --------------------------------------------------------------------------- +// +EXPORT_C TInt CPtiEngine::GetChinesePhraseCandidatesL(CDesCArray& aList) + { + return iImpl->GetChinesePhraseCandidatesL(aList); + } + + +// --------------------------------------------------------------------------- +// CPtiEngineImpl::SetToneMark +// +// --------------------------------------------------------------------------- +// +EXPORT_C TBool CPtiEngine::SetToneMark(TInt aToneMark) + { + return iImpl->SetToneMark(aToneMark); + } + + +// --------------------------------------------------------------------------- +// CPtiEngineImpl::GetAvailableLanguagesL +// +// --------------------------------------------------------------------------- +// +EXPORT_C void CPtiEngine::GetAvailableLanguagesL(RArray& aResult) + { + return iImpl->GetAvailableLanguagesL(aResult); + } + + +// --------------------------------------------------------------------------- +// CPtiEngineImpl::CreateDefaultUserDictionaryFileL +// +// --------------------------------------------------------------------------- +// +EXPORT_C void CPtiEngine::CreateDefaultUserDictionaryFileL(TUid aCoreUid, TInt aSymbolClass) + { + iImpl->CreateDefaultUserDictionaryFileL(aCoreUid, aSymbolClass); + } + + +// --------------------------------------------------------------------------- +// CPtiEngineImpl::AttachDefaultUserDictionaryL +// +// --------------------------------------------------------------------------- +// +EXPORT_C MPtiUserDictionary* CPtiEngine::AttachDefaultUserDictionaryL(TUid aCoreUid, TInt aSymbolClass) + { + return iImpl->AttachDefaultUserDictionaryL(aCoreUid, aSymbolClass); + } + + +// --------------------------------------------------------------------------- +// CPtiEngineImpl::WriteSecondaryDataFileL +// +// --------------------------------------------------------------------------- +// +EXPORT_C void CPtiEngine::WriteSecondaryDataFileL(TUid aCoreUid, TInt aIndexNumber, HBufC8* aData) + { + iImpl->WriteSecondaryDataFileL(aCoreUid, aIndexNumber, aData); + } + + +// --------------------------------------------------------------------------- +// CPtiEngineImpl::ReadSecondaryDataFileL +// +// --------------------------------------------------------------------------- +// +EXPORT_C HBufC8* CPtiEngine::ReadSecondaryDataFileL(TUid aCoreUid, TInt aIndexNumber) + { + return iImpl->ReadSecondaryDataFileL(aCoreUid, aIndexNumber); + } + + +// --------------------------------------------------------------------------- +// CPtiEngineImpl::MappingDataForKey +// +// --------------------------------------------------------------------------- +// +EXPORT_C void CPtiEngine::MappingDataForKey(TPtiKey aKey, TDes& aResult, TPtiTextCase aCase) + { + iImpl->MappingDataForKey(aKey, aResult, aCase); + } + + +// --------------------------------------------------------------------------- +// CPtiEngineImpl::GetNumericModeKeysForQwertyL +// +// --------------------------------------------------------------------------- +// +EXPORT_C void CPtiEngine::GetNumericModeKeysForQwertyL(TInt aLanguage, RArray& aResult) + { + iImpl->GetNumericModeKeysForQwertyL(aLanguage, aResult); + } + + +// --------------------------------------------------------------------------- +// CPtiEngineImpl::GetCandidatesByInputString +// +// --------------------------------------------------------------------------- +// +EXPORT_C HBufC* CPtiEngine::GetCandidatesByInputString(const TDesC& aInputString, + RPointerArray& aList, + const TBool aIsPredictive) + { + return iImpl->GetCandidatesByInputString(aInputString, aList, aIsPredictive); + } + + +// --------------------------------------------------------------------------- +// CPtiEngine::GetHwrRecognizerL +// (other items were commented in a header). +// --------------------------------------------------------------------------- +// +EXPORT_C MPtiHwrRecognizer* CPtiEngine::GetHwrRecognizerL(TLanguage aLanguage) + { + return iImpl->GetHwrRecognizerL(aLanguage); + } + + +// --------------------------------------------------------------------------- +// CPtiEngine::GetHwrRecognizerL +// (other items were commented in a header). +// --------------------------------------------------------------------------- +// +EXPORT_C MPtiHwrRecognizer* CPtiEngine::GetHwrRecognizerL(TInt aImpId) + { + return iImpl->GetHwrRecognizerL(aImpId); + } + + +// --------------------------------------------------------------------------- +// CPtiEngine::ListHwrRecognizerL +// (other items were commented in a header). +// --------------------------------------------------------------------------- +// +EXPORT_C RArray& CPtiEngine::ListHwrRecognizerL(TLanguage aLanguage) + { + return iImpl->ListHwrRecognizerL(aLanguage); + } + + +// --------------------------------------------------------------------------- +// CPtiEngine::GetHwrAvailableLanguagesL +// (other items were commented in a header). +// --------------------------------------------------------------------------- +// +EXPORT_C void CPtiEngine::GetHwrAvailableLanguagesL(RArray& aResult) + { + iImpl->GetHwrAvailableLanguagesL(aResult); + } + + +// --------------------------------------------------------------------------- +// CPtiEngineImpl::ExtendedNumericModeKeysForQwertyL +// +// --------------------------------------------------------------------------- +// +EXPORT_C const RArray& CPtiEngine::ExtendedNumericModeKeysForQwertyL(TInt aLanguage) + { + return iImpl->ExtendedNumericModeKeysForQwertyL(aLanguage); + } + + +// --------------------------------------------------------------------------- +// CPtiEngine::SetAutoSubstitution +// +// --------------------------------------------------------------------------- +// +EXPORT_C TInt CPtiEngine::SetAutoSubstitution(TBool aStatus) + { + return iImpl->SetAutoSubstitution(aStatus); + } + + +// --------------------------------------------------------------------------- +// CPtiEngine::AddAutoSubstitutionEntry +// +// --------------------------------------------------------------------------- +// +EXPORT_C TInt CPtiEngine::AddAutoSubstitutionEntry(const TDesC& aShortcut, + const TDesC& aSubstituition) + { + return iImpl->AddAutoSubstitutionEntry(aShortcut, aSubstituition); + } + + +// --------------------------------------------------------------------------- +// CPtiEngine::DeleteAutoSubstitutionEntry +// +// --------------------------------------------------------------------------- +// +EXPORT_C TInt CPtiEngine::DeleteAutoSubstitutionEntry(const TDesC& aShortcut) + { + return iImpl->DeleteAutoSubstitutionEntry(aShortcut); + } + + +// --------------------------------------------------------------------------- +// CPtiEngine::NumberOfAutoSubstitutionEntries +// +// --------------------------------------------------------------------------- +// +EXPORT_C TInt CPtiEngine::NumberOfAutoSubstitutionEntries() const + { + return iImpl->NumberOfAutoSubstitutionEntries(); + } + + +// --------------------------------------------------------------------------- +// CPtiEngine::GetAutoSubstitutionEntry +// +// --------------------------------------------------------------------------- +// +EXPORT_C TInt CPtiEngine::GetAutoSubstitutionEntry(TInt aIndex, TDes& aShortcut, + TDes& aSubstitution) + { + return iImpl->GetAutoSubstitutionEntry(aIndex, aShortcut, aSubstitution); + } + + +// --------------------------------------------------------------------------- +// CPtiEngine::KeyboardType +// +// --------------------------------------------------------------------------- +// +EXPORT_C TPtiKeyboardType CPtiEngine::KeyboardType() const + { + return iImpl->KeyboardType(); + } + + +// --------------------------------------------------------------------------- +// CPtiEngine::KeyboardType +// +// --------------------------------------------------------------------------- +// +EXPORT_C TInt CPtiEngine::SetKeyboardType(TPtiKeyboardType aType) + { + return iImpl->SetKeyboardType(aType); + } + + +// --------------------------------------------------------------------------- +// CPtiEngine::IsQwertyBasedMode +// +// --------------------------------------------------------------------------- +// +EXPORT_C TBool CPtiEngine::IsQwertyBasedMode(TPtiEngineInputMode aMode) const + { + if ((aMode == EPtiEngineQwerty) || + (aMode == EPtiEngineZhuyinQwerty) || + (aMode == EPtiEngineZhuyinPhraseQwerty) || + (aMode == EPtiEnginePinyinQwerty) || + (aMode == EPtiEnginePinyinPhraseQwerty) || + (aMode == EPtiEngineStrokeQwerty) || + (aMode == EPtiEngineStrokePhraseQwerty) || + (aMode == EPtiEngineNormalCangjieQwerty) || + (aMode == EPtiEngineEasyCangjieQwerty) || + (aMode == EPtiEngineAdvCangjieQwerty) || + (aMode == EPtiEngineHiraganaKanjiQwerty) || + (aMode == EPtiEngineHiraganaKanjiPredictiveQwerty) || + (aMode == EPtiEngineKatakanaQwerty) || + (aMode == EPtiEngineFullWidthKatakanaQwerty) || + (aMode == EPtiEngineFullWidthNumericQwerty) || + (aMode == EPtiEngineFullWidthAlphabetQwerty) || + (aMode == EPtiEngineHiraganaQwerty) || + (aMode == EPtiEngineQwertyPredictive) +#ifdef RD_HINDI_PHONETIC_INPUT + || (aMode == EPtiEngineInputModeIndicPhoneticQwerty) +#endif +#ifdef RD_INTELLIGENT_TEXT_INPUT + || (aMode == EPtiEnginePinyinPhraseHalfQwerty) + || (aMode == EPtiEngineStrokePhraseHalfQwerty) + || (aMode == EPtiEngineZhuyinPhraseHalfQwerty) + || (aMode == EPtiEngineInputModeZhuyinMiniQwertyFind) + || (aMode == EPtiEngineQwertyKorean) +#endif + || (aMode == EPtiEngineNormalCangjieQwerty) + || (aMode == EPtiEngineEasyCangjieQwerty) + || (aMode == EPtiEngineAdvCangjieQwerty)) + { + return ETrue; + } + + return EFalse; + } + + +// --------------------------------------------------------------------------- +// CPtiEngine::KeyboardTypesSupportedByLanguage +// +// --------------------------------------------------------------------------- +// +EXPORT_C void CPtiEngine::KeyboardTypesSupportedByLanguageL(TInt aLanguage, + RArray& aResult) + { + iImpl->KeyboardTypesSupportedByLanguageL(aLanguage, aResult); + } + + +// --------------------------------------------------------------------------- +// CPtiEngine::GetNumericModeKeysForQwertyL +// +// --------------------------------------------------------------------------- +// +EXPORT_C void CPtiEngine::GetNumericModeKeysForQwertyL(TInt aLanguage, + RArray& aResult, + TPtiKeyboardType aKeyboardType) + { + iImpl->GetNumericModeKeysForQwertyL(aLanguage, aResult, aKeyboardType); + } + + +// --------------------------------------------------------------------------- +// CPtiEngine::ExtendedNumericModeKeysForQwertyL +// +// --------------------------------------------------------------------------- +// +EXPORT_C const RArray& CPtiEngine::ExtendedNumericModeKeysForQwertyL(TInt aLanguage, + TPtiKeyboardType aKeyboardType) + { + return iImpl->ExtendedNumericModeKeysForQwertyL(aLanguage, aKeyboardType); + } + + +// --------------------------------------------------------------------------- +// CPtiEngine::ListAvailablePhysicalKeyboardsL +// +// --------------------------------------------------------------------------- +// +EXPORT_C void CPtiEngine::ListAvailablePhysicalKeyboardsL(RArray& aResult) + { + // Add real implementation later. + User::LeaveIfError(aResult.Append(EPtiKeyboard12Key)); + } + + +// --------------------------------------------------------------------------- +// CPtiEngine::SetNumberCandidateStatus +// +// --------------------------------------------------------------------------- +// +EXPORT_C TInt CPtiEngine::SetNumberCandidateStatus(TBool aStatus) + { + return iImpl->SetNumberCandidateStatus(aStatus); + } + + +// --------------------------------------------------------------------------- +// CPtiEngine::SetNumberCandidateStatus +// +// --------------------------------------------------------------------------- +// +EXPORT_C TBool CPtiEngine::IsValidKey(TPtiKey aKey) const + { + return iImpl->IsValidKey(aKey); + } + + +// --------------------------------------------------------------------------- +// CPtiEngine::SetNumberCandidateStatus +// +// --------------------------------------------------------------------------- +// +EXPORT_C TInt CPtiEngine::SetMaxLengthForAutoCompletedCandidates(TInt aMaxLength) + { + return iImpl->SetMaxLengthForAutoCompletedCandidates(aMaxLength); + } + + +// --------------------------------------------------------------------------- +// CPtiEngine::MarkAutoCapitalized() +// +// --------------------------------------------------------------------------- +// +EXPORT_C void CPtiEngine::MarkAutoCapitalized() + { + iImpl->MarkAutoCapitalized(); + } + + +// --------------------------------------------------------------------------- +// CPtiEngine::CaseSequence() +// +// --------------------------------------------------------------------------- +// +EXPORT_C TPtrC8 CPtiEngine::CaseSequence() + { + return iImpl->CaseSequence(); + } + + +// --------------------------------------------------------------------------- +// CPtiEngine::AddPhrase() +// +// --------------------------------------------------------------------------- +// +EXPORT_C TInt CPtiEngine::AddPhrase(const TDesC& aNewPhrase) + { + return iImpl->AddPhrase(aNewPhrase); + } + +#ifdef FF_DUAL_LANGUAGE_SUPPORT +// --------------------------------------------------------------------------- +// CPtiEngineImpl::SetSecondaryInputL +// +// --------------------------------------------------------------------------- +// +EXPORT_C TInt CPtiEngine::SetSecondaryInputL(TInt aEpocLanguageID) + { + return iImpl->SetSecondaryInputL(aEpocLanguageID); + } +#endif //FF_DUAL_LANGUAGE_SUPPORT +// End of file