diff -r 000000000000 -r eb1f2e154e89 textinput/peninputgenericitut/inc/peninputitutcustomizationresourcemgr.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/textinput/peninputgenericitut/inc/peninputitutcustomizationresourcemgr.h Tue Feb 02 01:02:04 2010 +0200 @@ -0,0 +1,91 @@ +/* +* 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_ITUTCUSTOMIZATIONRESOURCEMGR_H +#define C_ITUTCUSTOMIZATIONRESOURCEMGR_H + +#include +#include + +#include "peninputgenericitutcustomization.h" + +class CFepUiBaseCtrl; +class CFepUiLayout; +class CFbsBitmap; +class MItutLayoutContext; +class CAknFepCtrlRawKeyButton; +class CVirtualKey; + +class CItutCustomizedRscMgr : public CBase + { +public: + static CItutCustomizedRscMgr* NewL(CFepUiLayout* aUiLayout, + MItutLayoutContext* aLayoutContext); + virtual ~CItutCustomizedRscMgr(); + + // release all bitmap's handles to app side created bmps + // restore dimmed/hided keys by application, + void Restore(); + + void RemoveAddedCtrls(); + + void CreateCustomizedRawKeyButtonL(TItutKey aKeyInfo); + + TInt AddDimmedCtrl(CFepUiBaseCtrl* aCtrl); + TInt AddHidedCtrl(CFepUiBaseCtrl* aCtrl); + TInt AddDimmedVKey(CVirtualKey* aKey); + + void ResizeAddedCtrls(); + + TInt FindRawKeyBtn(TInt aScanCode); + + void ShowRawKeyBtn(TInt aScanCode, TBool aShow = ETrue); + +private: + CItutCustomizedRscMgr(CFepUiLayout* aUiLayout, + MItutLayoutContext* aLayoutContext); + void ConstructL(); + +private: + struct TAddedRawKeyCtrl + { + TInt iPos; + TInt iInnerPos; + TAknTextLineLayout iTextFormat; + CAknFepCtrlRawKeyButton* iCtrl; + }; + +private: + TBool IsBmpValid(const TItutBmp& aBmp); + TBool IsMaskBmpValid(const TItutBmp& aMaskBmp); + +private: + RArray iAddedCtrls; + RPointerArray iDimmedCtrls; + RPointerArray iHidedCtrls; + RPointerArray iDimmedVKeys; + + // not own + CFepUiLayout* iUiLayout; + MItutLayoutContext* iLayoutContext; + + // start control index of new added control + TInt iNewCtrlId; + }; + +#endif // C_ITUTCUSTOMIZATIONRESOURCEMGR_H \ No newline at end of file