diff -r 000000000000 -r e686773b3f54 logsui/AppSrc/MLogsNaviDecoratorWrapper.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/logsui/AppSrc/MLogsNaviDecoratorWrapper.h Tue Feb 02 10:12:17 2010 +0200 @@ -0,0 +1,63 @@ +/* +* Copyright (c) 2002 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: +* An interface for the CLogsNaviDecoratorWrapper. This is basically needed +* to hide implementation from Logs Plugin wich inherits CLogsBaseControlContainer. +* Instead of using the singleton directly in CLogsBaseControlContainer we pass an +* interface object and then we dont have to add CLogsNaviDecoratorWrapper.cpp to the +* Logs Plugin project file. +* +* +*/ + + +#ifndef MLogsNaviDecoratorWrapper_H +#define MLogsNaviDecoratorWrapper_H + +// FORWARD DECLARATIONS +class CAknNavigationDecorator; +class CAknNavigationControlContainer; +class MAknTabObserver; + +// CLASS DECLARATION + +/** + * An abstract interface for CLogsNaviDecoratorWrapper + */ +class MLogsNaviDecoratorWrapper + { + + public: + /** + * Returns the wrapped iNaviDecorator instance. If no instance + * exists yet a new one is created. If there is an instance but it is + * of wrong resource type, a new instance is created and the old deleted. + * + * Called from CLogsBaseControlContainer::NavigationTabGroupL + * + * @param aNaviPane, the calling views status pane's navigation pane control + * @param aTabObserver, an interface to the LogsAppUi::TabChangedL + * @param aResource, the resource id of the + * + * @return CAknNavigationDecorator object for the view's tab group + */ + virtual CAknNavigationDecorator* GetNaviDecoratorL(CAknNavigationControlContainer* aNaviPane, + MAknTabObserver* aTabObserver, + TInt aResource) =0; + }; + +#endif //MLogsNaviDecoratorWrapper_H + + +// End of File