diff -r 000000000000 -r f72a12da539e idlehomescreen/xmluirendering/uiengine/inc/xnextrenderingpluginwrapper.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/idlehomescreen/xmluirendering/uiengine/inc/xnextrenderingpluginwrapper.h Thu Dec 17 08:40:49 2009 +0200 @@ -0,0 +1,113 @@ +/* +* Copyright (c) 2002-2004 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: External rendering plugin wrapper header +* +*/ + +#ifndef XNEXTRENDERINGPLUGINWRAPPER_H +#define XNEXTRENDERINGPLUGINWRAPPER_H + +// System includes +#include +#include + +// User includes +#include "xncontroladapter.h" +#include "xnproperty.h" +#include "xncomponent.h" +#include "xnnodepluginif.h" + +/** + * CXnExtRenderingPluginWrapper class + * + * + * @code + * + * @endcode + * + * @lib extrenderingplugin.lib + * @since S60 v5.0 + */ +NONSHARABLE_CLASS( CXnExtRenderingPluginWrapper ) : public CXnControlAdapter + { +public: // Constructor and destructor + /** + * Two-phased constructor. + */ + static CXnExtRenderingPluginWrapper* NewL( + CXnNodePluginIf& aNode, CXnExtRenderingPluginAdapter& aAdapter ); + + /** + * Destructor. + */ + virtual ~CXnExtRenderingPluginWrapper(); + +private: // Constructors + /** + * Constructor + */ + CXnExtRenderingPluginWrapper( CXnExtRenderingPluginAdapter& aAdapter ); + + /** + * Second phase constructor + */ + void ConstructL( CXnNodePluginIf& aNode ); + +private: + TInt CountComponentControls() const; + + CCoeControl* ComponentControl(TInt aIndex) const; + + void HandleScreenDeviceChangedL(); + + void MakeVisible(TBool aVisible); + + void FocusChanged(TDrawNow aDrawNow); + + void SetContainerWindowL(const CCoeControl& aContainer); + + void SkinChanged(); + + void SizeChanged(); + + TKeyResponse OfferKeyEventL(const TKeyEvent& aKeyEvent,TEventCode aType); + +public: // New functions + + /** + * @see CXnControlAdapter + */ + void DoEnterPowerSaveModeL( TModeEvent aEvent ); + + /** + * @see CXnControlAdapter + */ + void DoExitPowerSaveModeL( TModeEvent aEvent ); + +private: // Data + + /** + * Rendering plugin adapter. Own. + */ + CXnExtRenderingPluginAdapter* iAdapter; + + /** + * Node. Not own. + */ + CXnNodePluginIf* iNode; + }; + +#endif // XNEXTRENDERINGPLUGINFACTORY_H + +// End of file