diff -r ebd48d2de13c -r ecbabf52600f textinput/peninputgenericitut/inc/peninputgenericitutlayout.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/textinput/peninputgenericitut/inc/peninputgenericitutlayout.h Wed Sep 01 12:23:33 2010 +0100 @@ -0,0 +1,161 @@ +/* +* Copyright (c) 2002-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: drop-down list control +* +*/ + + +#ifndef C_GENERICITUTUILAYOUT_H +#define C_GENERICITUTUILAYOUT_H + +#include +#include +#include +#include + +#include + +#include "peninputgenericitutpropertysubscriber.h" +#include "peninputgenericitutlayoutcontext.h" + +class CAknFepCtrlButton; +class CAknFepCtrlRepeatButton; +class CAknFepCtrlRawKeyButton; +class CGenericItutDataMgr; +class CFepCtrlDropdownList; +class CGenericItutUiMgrBase; +class CPeninputLayoutInputmodelChoice; +class CFepLayoutScrollableList; +class CAknFepCtrlLabel; +class CAknFepCtrlCommonButton; +class CAknFepCtrlCommonBgCtrl; +class CAknFepCtrlRepeatButtonEx; + +class CGenericItutWindowManager; +class CGenericItutUiLayout : public CFepUiLayout, + public MItutLayoutContext + { +public: + static CGenericItutUiLayout* NewL(MLayoutOwner* aLayoutOwner,const TAny* aInitData); + + ~CGenericItutUiLayout(); + + void HandleControlEvent(TInt aEventType, CFepUiBaseCtrl* aCtrl, const TDesC& aEventData); + + TInt OnAppEditorTextComing(const TFepInputContextFieldData& aData); + + TInt HandleCommand(TInt aCmd, TUint8* aData) ; + + TInt PenInputType(); + + TInt SizeChanged(const TAny* pData); + + // from MItutLayoutContext + CFepUiBaseCtrl* Control(TInt aCtrlId); + + CFepUiLayout* UiLayout(); + + void SubmitText(const TDesC& aEventData); + + CGenericItutUiMgrBase* UiMgr(); + + void OnDeActivate(); + + void OnActivate(); + + inline CGenericItutDataMgr* DataMgr(); + + inline TBool IsSecretEdtior(); + + void EnterMatchSelectionState(TBool aOn); + + + void HandleAppInfoChange(const TDesC& aInfo, TPeninputAppInfo aType); + + void ShowArrowBtn(TInt aShowFlag); + + void ApplyVariantLafDataL(TBool aResolutionChange = EFalse); + + CGenericItutWindowManager* UiManager(); + + void SimulateRawEvent(TInt aScanCode, TRawEvent::TType aType ); + + /** + * Simulate raw event to window server immediately + * simulating raw event command won't be scheduled by AO + * because it won't be added into CPeninputAnimObj::iAnimCmd. + * + */ + void SimulateImmeRawEvent( TInt aScanCode, TRawEvent::TType aType ); + + void SetInputLanguageL(TInt aLanguage); + + + void SetLatinOnly( TBool aLatinOnly ); + +private: + CGenericItutUiLayout(MLayoutOwner* aLayoutOwner); + + void ConstructL(const TAny* aInitData); + + + void CreateICFL(); + + void CreateDropdownListL(); + + + + TInt OnSkinChange(); + + TBool PressOnCtrls(TPoint aPt); + + void SetInputModeL(TInt aMode); + + void SetCtrlRect(CFepUiBaseCtrl* aCtrl, TInt aRectIdx); + + CFepUiBaseCtrl* CurrentIndicator(); + + void SetPromptTextL(TUint8* aData); + + CGenericItutUiMgrBase* ChineseUiManager(); + +private: + + CGenericItutDataMgr* iDataMgr; + + + TBool iPenDownOnNaviPane; + + + CGenericItutUiMgrBase* iChnUiMgr; + CGenericItutUiMgrBase* iWesternUiMgr; + CPeninputLayoutInputmodelChoice* iInputModeSwitch; + + CGenericItutUiMgrBase* iCurrentUiMgr; + TBool iIsSecret; + + CGenericItutWindowManager* iWindowMgr; + }; + +inline CGenericItutDataMgr* CGenericItutUiLayout::DataMgr() + { + return iDataMgr; + } + +inline TBool CGenericItutUiLayout::IsSecretEdtior() + { + return iIsSecret; + } + +#endif //C_GENERICITUTUILAYOUT_H