diff -r 000000000000 -r eb1f2e154e89 textinput/GSLangPlugin/inc/GSLangPlugin.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/textinput/GSLangPlugin/inc/GSLangPlugin.h Tue Feb 02 01:02:04 2010 +0200 @@ -0,0 +1,280 @@ +/* +* Copyright (c) 2005 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: GSLangPlugin header file. +* +*/ + +#ifndef GSLANGPLUGIN_H +#define GSLANGPLUGIN_H + +// Includes +#include "GSLangPlugin.hrh" + +#include +#include +#include + +#include +#include +#include +#include +#include +#ifdef __ITI_VIRTUAL_TOUCH_FIRST_GENERATION_SUPPORT__ +#include +#endif + +// Classes referenced +class CAknViewAppUi; +class CGSLangContainer; +class CEikDialog; +#ifdef __ITI_VIRTUAL_TOUCH_FIRST_GENERATION_SUPPORT__ +class CRepository; +#endif + +// Constants +const TUid KGSLangPluginUID = { 0x10275067 }; +_LIT( KGSDefaultLangIconFileName, "Z:\\resource\\apps\\GSLangplugin.mbm"); +const TInt KGSBufSize128 = 128; +const TInt KGSMapSize = 8; + +_LIT( KGSLangPluginResourceFileName, "z:GSLangPluginRsc.rsc" ); + +// CLASS DECLARATION + +/** +* CGSLangPlugin view class. +* @lib GSLangPlugin.dll +* @since Series60 3.1 +*/ +class CGSLangPlugin : public CGSBaseView + { + public: // Constructors and destructor + + /** + * Symbian OS two-phased constructor + * @return + */ + static CGSLangPlugin* NewL( TAny* aInitParams ); + + /** + * Destructor. + */ + ~CGSLangPlugin(); + + public: // New + + /** + * Getter for CGSLangPlugin's ccontainer. + */ + CGSLangContainer* Container(); + + public: // From CAknView + + /** + * See base class. + */ + TUid Id() const; + + /** + * See base class. + */ + void HandleClientRectChange(); + + /** + * See base class. + */ + void DoActivateL( const TVwsViewId& aPrevViewId, + TUid aCustomMessageId, + const TDesC8& aCustomMessage ); + + /** + * See base class. + */ + void DoDeactivate(); + + /** + * See base class. + */ + void HandleCommandL( TInt aCommand ); + + protected: + + /** + * C++ default constructor. + */ + CGSLangPlugin(); + + /** + * Symbian OS default constructor. + */ + void ConstructL(); + + public: // From CGSPluginInterface + + /** + * See base class. + */ + void GetCaptionL( TDes& aCaption ) const; + + /** + * See base class. + */ + TInt PluginProviderCategory() const; + + /** + * See base class. + */ + CGulIcon* CreateIconL( const TUid aIconType ); + + protected: // From MEikMenuObserver + + void DynInitMenuPaneL( TInt aResourceId, CEikMenuPane* aMenuPane ); + + private: // From CGSBaseView + + /** + * See base class. + */ + void NewContainerL(); + + /** + * See base class. + */ + void HandleListBoxSelectionL(); + + private: // New + + /** + * Confirm Boot of DTL + */ + void ConfirmRebootDTLL( TInt aCurrentLanguage, + const TDesC& aLanguageName ); + + /** + * Check current call state using PubSub or SA. + */ + TInt CheckCallState(); + + /** + * Shows language selection page. + */ + void ShowLanguageSelectionSettingPageL(); + + /** + * Shows input selection page. + */ + void ShowInputSelectionSettingPageL(); + + /** + * Shows default input method selection page. + */ + void ShowDefaultInputMethodSettingPageL(); + + /** + * Shows number mode setting page for A&H. + */ + TBool ShowAHNumberModeSettingPageL(); + + /** + * Shows number mode setting page for Hindi. + */ + TBool ShowHindiNumberModeSettingPageL(); + + /** + * Resets dictionary. + */ + void ResetATOKDictionaryL(); + + /* + * Create a Keypress timeout setting page + */ + void ShowKeypressTimeoutSettingPageL(); + + /* + * Change Japanese Qwerty settings + * @param aFlag CenRep flag for Querty keypad + * @param aItemId current feature ID + * @param aShowSettingPage boolean, show/hide setting page. + */ + void ChangeJapQwertySettingL( const TGSJapQwertyFlags aFlag, + const TInt aItemId, + const TBool aShowSettingPage ); + + /* + * Display Japanese Qwerty ON/OFF setting page. + * @param aSettingPageResourceId setting page resourece ID + * @param aItemArraryResourceId setting page items resourece ID + * @param aCurrentValue current selection in setting page + */ + TBool ShowJapQwertySettingPageL( const TInt aSettingPageResourceId, + const TInt aItemArraryResourceId, + const TBool aCurrentValue ); + + /** + * Show CangJie input mode setting page + */ + void ShowChiCangJieInputModeSettingPageL(); + + /** + * Show Predictive mode setting page + */ + void ShowPredictiveModeSettingPageL( const TBool aShowSettingPage ); + +#ifdef RD_INTELLIGENT_TEXT_INPUT +#ifdef FF_DUAL_LANGUAGE_SUPPORT + void ShowDualInputLanguageSettingListL(); +#endif + + void ShowITIMultiSettingPageL(TBool aShowOnOffSettingPage); + void ShowPredictiveSettingListL(); + +#ifdef __ITI_VIRTUAL_TOUCH_FIRST_GENERATION_SUPPORT__ + class CSubscriber : public CActive + { + public: + CSubscriber(TCallBack aCallBack, RProperty& aProperty); + ~CSubscriber(); + + public: // New functions + void SubscribeL(); + void StopSubscribe(); + + private: // from CActive + void RunL(); + void DoCancel(); + + private: + TCallBack iCallBack; + RProperty& iProperty; + }; + /** + * Call back function to handle a change in keyboard layout. + */ + static TInt HandleKeyboardLayoutChangeNotification(TAny* aObj); + + void HandleKeyboardLayoutChange(); + + CSubscriber* iKeyboardLayoutStatusSubscriber; + RProperty iKeyboardLayoutStatusProperty; + + friend class CSubscriber; +#endif //__ITI_VIRTUAL_TOUCH_FIRST_GENERATION_SUPPORT__ + + TBool iCascadeOptionsOpen; +#endif //RD_INTELLIGENT_TEXT_INPUT + CEikDialog* iDialog; + }; + +#endif // GSLANGPLUGIN_H +// End of File