--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/textinput/peninputgenericitut/inc/peninputgenericitutlayout.h Tue Feb 02 01:02:04 2010 +0200
@@ -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 <peninputlayout.h>
+#include <peninputpluginutils.h>
+#include <peninputlayoutmultilineicf.h>
+#include <peninputinputcontextfield.h>
+
+#include <peninputlayoutvkb.h>
+
+#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