textinput/ptienginev2/src/PtiCore.cpp
changeset 0 eb1f2e154e89
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/textinput/ptienginev2/src/PtiCore.cpp	Tue Feb 02 01:02:04 2010 +0200
@@ -0,0 +1,490 @@
+/*
+* Copyright (c) 2004-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 core local methods.
+*
+*/
+
+
+#include <ecom/ecom.h>
+#include <PtiCore.h>
+#include "PtiUserDictionary.h"
+
+const TUid KPtiCoreInterfaceUid = { 0x101F87FC };
+
+//
+// LOCAL METHODS
+//
+
+void Cleanup( TAny* aAny )
+	{
+	RImplInfoPtrArray* implArray = 
+		reinterpret_cast< RImplInfoPtrArray*> ( aAny );
+	implArray->ResetAndDestroy();
+	implArray->Close();
+	}
+
+//
+// CPtiCore
+//
+	
+// ---------------------------------------------------------------------------
+// CPtiCore::~CPtiCore
+// 
+// ---------------------------------------------------------------------------
+// 	
+EXPORT_C CPtiCore::~CPtiCore()
+	{
+	REComSession::DestroyedImplementation(TUid::Uid(iDtorKeyId));
+	}
+
+	
+// ---------------------------------------------------------------------------
+// CPtiCore::CreateCoreL
+// 
+// ---------------------------------------------------------------------------
+// 	
+EXPORT_C CPtiCore* CPtiCore::CreateCoreL(TUid aCoreUid)
+	{
+	TUid dtorIDKey;
+	CPtiCore* iface = (CPtiCore*)REComSession::CreateImplementationL(aCoreUid, dtorIDKey);		
+	if (iface)
+		{
+		iface->SetDestructorKeyId(dtorIDKey.iUid);
+		}
+	return iface;
+	}	
+
+	
+// ---------------------------------------------------------------------------
+// CPtiCore::ListCoresLC
+// 
+// ---------------------------------------------------------------------------
+// 	
+EXPORT_C CArrayFix<TInt>* CPtiCore::ListCoresLC()
+	{
+	RImplInfoPtrArray infoArray;
+	TInt i;
+
+	CArrayFixFlat<TInt>* result = new (ELeave) CArrayFixFlat<TInt>(KDefaultCoresGran);
+	CleanupStack::PushL( result );
+
+	CleanupStack::PushL( TCleanupItem( Cleanup, &infoArray ) );
+	REComSession::ListImplementationsL(KPtiCoreInterfaceUid, infoArray);
+
+	for (i = 0; i < infoArray.Count(); i++)
+		{
+		result->AppendL(infoArray[i]->ImplementationUid().iUid);
+		}
+
+	CleanupStack::PopAndDestroy(); // infoArray 
+
+	return result;
+	}
+
+	
+// ---------------------------------------------------------------------------
+// CPtiCore::SetCurrentInputSequence
+// 
+// ---------------------------------------------------------------------------
+//
+EXPORT_C TInt CPtiCore::SetCurrentInputSequence(TPtrC8 /*aInput*/)
+	{
+	return KErrNotSupported;
+	}
+
+	
+// ---------------------------------------------------------------------------
+// CPtiCore::Convert
+// 
+// ---------------------------------------------------------------------------
+//
+EXPORT_C TInt CPtiCore::Convert(TPtiCharConversion /*aType*/,
+								TAny* /*aInput*/,
+							    TInt /*aInputLength*/,
+							    TAny* /*aOutput*/)
+	{
+	return KErrNotSupported;	
+	}
+
+
+// ---------------------------------------------------------------------------
+// CPtiCore::GetSpelling
+// 
+// ---------------------------------------------------------------------------
+//
+EXPORT_C TInt CPtiCore::GetSpelling(TUint16 /*aInput*/,
+			                        TDes& /*aOutput*/,
+						            TPtiSpelling /*aType*/)
+	{
+	return KErrNotSupported;		
+	}
+
+
+// ---------------------------------------------------------------------------
+// CPtiCore::SetExternalKeyMapL
+// 
+// ---------------------------------------------------------------------------
+//
+EXPORT_C TInt CPtiCore::SetExternalKeyMapL(TPtiEngineInputMode /*aMode*/,
+	                                       TPtiKey /*aKey*/,
+							               TDesC& /*aKeyMap*/,
+								           TPtiTextCase /*aCase*/)
+	{
+	return KErrNotSupported;	
+	}
+
+
+// ---------------------------------------------------------------------------
+// CPtiCore::CommitCurrentWord
+// 
+// ---------------------------------------------------------------------------
+//
+EXPORT_C TInt CPtiCore::CommitCurrentWord()
+	{
+	return KErrNotSupported;
+	}
+
+
+// ---------------------------------------------------------------------------
+// CPtiCore::GetCurrentWord
+// 
+// ---------------------------------------------------------------------------
+//	
+EXPORT_C TPtrC CPtiCore::GetCurrentWord() const
+	{
+	return TPtrC();
+	}
+
+
+// ---------------------------------------------------------------------------
+// CPtiCore::NumberOfCandidates
+// 
+// ---------------------------------------------------------------------------
+//
+EXPORT_C TInt CPtiCore::NumberOfCandidates()
+	{
+	return 0;
+	}
+
+
+// ---------------------------------------------------------------------------
+// CPtiCore::GetCandidateListL
+// 
+// ---------------------------------------------------------------------------
+//
+EXPORT_C TInt CPtiCore::GetCandidateListL(CDesCArray& /*aList*/)
+	{
+	return KErrNotSupported;
+	}
+
+
+// ---------------------------------------------------------------------------
+// CPtiCore::GetNextWordCandidateListL
+// 
+// ---------------------------------------------------------------------------
+//
+EXPORT_C TInt CPtiCore::GetNextWordCandidateListL(CDesCArray& /*aList*/)
+	{
+	return KErrNotSupported;
+	}
+
+
+// ---------------------------------------------------------------------------
+// CPtiCore::GetFirstCandidate
+// 
+// ---------------------------------------------------------------------------
+//
+EXPORT_C TInt CPtiCore::GetFirstCandidate(TDes& /*aResult*/)
+	{
+	return KErrNotSupported;
+	}
+
+
+// ---------------------------------------------------------------------------
+// CPtiCore::GetNextCandidate
+// 
+// ---------------------------------------------------------------------------
+//
+EXPORT_C TInt CPtiCore::GetNextCandidate(TDes& /*aResult*/)
+	{
+	return KErrNotSupported;
+	}
+
+
+// ---------------------------------------------------------------------------
+// CPtiCore::GetPreviousCandidate
+// 
+// ---------------------------------------------------------------------------
+//
+EXPORT_C TInt CPtiCore::GetPreviousCandidate(TDes& /*aResult*/)
+	{
+	return KErrNotSupported;
+	}
+
+	
+// ---------------------------------------------------------------------------
+// CPtiCore::AddUserDictionaryEntry
+// 
+// ---------------------------------------------------------------------------
+//
+EXPORT_C TInt CPtiCore::AddUserDictionaryEntry(MPtiUserDictionaryEntry& /*aEntry*/, CPtiUserDictionary* /*aDict*/)
+	{
+	return KErrNotSupported;
+	}
+
+
+// ---------------------------------------------------------------------------
+// CPtiCore::RemoveUserDictionaryEntry
+// 
+// ---------------------------------------------------------------------------
+//
+EXPORT_C TInt CPtiCore::RemoveUserDictionaryEntry(MPtiUserDictionaryEntry& /*aEntry*/, CPtiUserDictionary* /*aDict*/)
+	{
+	return KErrNotSupported;
+	}
+
+
+// ---------------------------------------------------------------------------
+// CPtiCore::NumberOfEntriesInUserDictionary
+// 
+// ---------------------------------------------------------------------------
+//
+EXPORT_C TInt CPtiCore::NumberOfEntriesInUserDictionary(CPtiUserDictionary* /*aDict*/)
+	{
+	return 0;
+	}
+
+
+// ---------------------------------------------------------------------------
+// CPtiCore::GetUserDictionaryEntry
+// 
+// ---------------------------------------------------------------------------
+//
+EXPORT_C TInt CPtiCore::GetUserDictionaryEntry(TInt /*aIndex*/, MPtiUserDictionaryEntry& /*aResult*/, CPtiUserDictionary* /*aDict*/)
+	{
+	return KErrNotSupported;
+	}
+
+
+// ---------------------------------------------------------------------------
+// CPtiCore::CreateEmptyUserDictionaryL
+// 
+// ---------------------------------------------------------------------------
+//
+EXPORT_C CPtiUserDictionary* CPtiCore::CreateEmptyUserDictionaryL(TInt aMaxSize)
+	{
+	return CPtiUserDictionary::NewL(aMaxSize);		
+	}
+
+
+// ---------------------------------------------------------------------------
+// CPtiCore::AttachUserDictionary
+// 
+// ---------------------------------------------------------------------------
+//
+EXPORT_C TInt CPtiCore::AttachUserDictionary(CPtiUserDictionary* /*aDict*/)
+	{
+	return KErrNotSupported;
+	}
+
+
+// ---------------------------------------------------------------------------
+// CPtiCore::DetachUserDictionary
+// 
+// ---------------------------------------------------------------------------
+//
+EXPORT_C TBool CPtiCore::DetachUserDictionary(CPtiUserDictionary* /*aDict*/)		
+	{
+	return EFalse;
+	}
+
+
+// ---------------------------------------------------------------------------
+// CPtiCore::GetCandidatePage
+// 
+// ---------------------------------------------------------------------------
+//
+EXPORT_C TPtrC CPtiCore::GetCandidatePage()
+	{
+	return TPtrC();
+	}
+
+
+// ---------------------------------------------------------------------------
+// CPtiCore::NextCandidatePage
+// 
+// ---------------------------------------------------------------------------
+//
+EXPORT_C TBool CPtiCore::NextCandidatePage()
+	{
+	return EFalse;
+	}
+
+
+// ---------------------------------------------------------------------------
+// CPtiCore::PreviousCandidatePage
+// 
+// ---------------------------------------------------------------------------
+//
+EXPORT_C TBool CPtiCore::PreviousCandidatePage()
+	{
+	return EFalse;
+	}
+
+
+// ---------------------------------------------------------------------------
+// CPtiCore::MoreCandidatePages
+// 
+// ---------------------------------------------------------------------------
+//
+EXPORT_C TBool CPtiCore::MoreCandidatePages()
+	{
+	return EFalse;
+	}
+
+
+// ---------------------------------------------------------------------------
+// CPtiCore::SetCandidatePageLength
+// 
+// ---------------------------------------------------------------------------
+//
+EXPORT_C void CPtiCore::SetCandidatePageLength(TInt /*aLength*/)
+	{
+	}
+
+
+// ---------------------------------------------------------------------------
+// CPtiCore::GetPhoneticSpelling
+// 
+// ---------------------------------------------------------------------------
+//
+EXPORT_C TPtrC CPtiCore::GetPhoneticSpelling(TInt /*aIndex*/) const
+ 	{
+	return TPtrC();
+	}
+
+
+// ---------------------------------------------------------------------------
+// CPtiCore::PhoneticSpellingCount
+// 
+// ---------------------------------------------------------------------------
+//
+EXPORT_C TInt CPtiCore::PhoneticSpellingCount() const
+	{
+	return 0;
+	}
+
+
+// ---------------------------------------------------------------------------
+// CPtiCore::SelectPhoneticSpelling
+// 
+// ---------------------------------------------------------------------------
+//	
+EXPORT_C TBool CPtiCore::SelectPhoneticSpelling(TInt /*aIndex*/)
+	{
+	return EFalse;
+	}
+
+
+// ---------------------------------------------------------------------------
+// CPtiCore::SelectedPhoneticSpelling
+// 
+// ---------------------------------------------------------------------------
+//
+EXPORT_C TInt CPtiCore::SelectedPhoneticSpelling() const
+ 	{
+	return KErrNotSupported;
+	}
+
+
+// ---------------------------------------------------------------------------
+// CPtiCore::ToneMark
+// 
+// ---------------------------------------------------------------------------
+//
+EXPORT_C TBool CPtiCore::ToneMark(TText& aToneMark) const
+	{
+	aToneMark = 0;
+	return EFalse;
+	}
+
+
+// ---------------------------------------------------------------------------
+// CPtiCore::IsToneMarkValidForSpelling
+// 
+// ---------------------------------------------------------------------------
+//
+EXPORT_C TBool CPtiCore::IsToneMarkValidForSpelling()
+	{
+	return EFalse;
+	}
+
+
+// ---------------------------------------------------------------------------
+// CPtiCore::SetPredictiveChineseChar
+// 
+// ---------------------------------------------------------------------------
+//
+EXPORT_C TBool CPtiCore::SetPredictiveChineseChar(const TDesC& /*aChar*/)
+	{
+	return EFalse;
+	}
+
+
+// ---------------------------------------------------------------------------
+// CPtiCore::SetToneMark
+// 
+// ---------------------------------------------------------------------------
+//
+EXPORT_C TBool CPtiCore::SetToneMark(TInt /*aToneMark*/)
+	{
+	return EFalse;
+	}
+
+
+// ---------------------------------------------------------------------------
+// CPtiCore::ReadingTextL
+// 
+// ---------------------------------------------------------------------------
+//
+EXPORT_C TPtrC CPtiCore::ReadingTextL()
+	{
+	return TPtrC();
+	}
+
+
+// ---------------------------------------------------------------------------
+// CPtiCore::CompositionData
+// 
+// ---------------------------------------------------------------------------
+//
+EXPORT_C MPtiEngineCompositionDataInterface* CPtiCore::CompositionData()
+	{
+	return NULL;
+	}
+
+
+// ---------------------------------------------------------------------------
+// CPtiCore::GetCandidatesByInputString
+// 
+// ---------------------------------------------------------------------------
+//	
+EXPORT_C HBufC* CPtiCore::GetCandidatesByInputString(const TDesC& /*aInputString*/, 
+                                                     RPointerArray<HBufC>& /*aList*/, 
+                                                     const TBool /*aIsPredictive*/)
+    {
+    return NULL;
+    }
+    
+// End of file