diff -r 8ee96d21d9bf -r 7e0eff37aedb gssettingsuis/Gs/GSCallBarringPlugin/Inc/GSCallBarringPlugin.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/gssettingsuis/Gs/GSCallBarringPlugin/Inc/GSCallBarringPlugin.h Wed Sep 01 12:20:44 2010 +0100 @@ -0,0 +1,213 @@ +/* +* 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: Barrings sub-menu in General Settings. +* +*/ + + +#ifndef GSCALLBARRINGPLUGIN_H +#define GSCALLBARRINGPLUGIN_H + +// INCLUDES +#include +#include +#include +#include +#include +#include +#include +#include + +#include "GSLocalBaseView.h" +#include "CallBarringPlugin.hrh" + + +// FORWARD DECLARATIONS +class CGSBaseContainer; +class CGSCallBarringPluginContainer; +class CPsetCustomerServiceProfile; +class CAknNavigationDecorator; +class CPsetContainer; +class CPsuiContainer; +class CPsuiBarringObs; +class CAknStaticNoteDialog; +class CAknNoteDialog; + +// CONSTANTS +_LIT( KGSCallBarringPluginIconDirAndName, "z:GSCallBarringPlugin.mbm"); + + +// CLASS DECLARATION +/*************************************************** +* CGSCallBarringPlugin class * +****************************************************/ +class CGSCallBarringPlugin : public CGSBaseView, + public MGSSettingPSObserver + { + public: // Constructors and destructor + + /* C++ Constructor */ + CGSCallBarringPlugin(); + + /* Symbian OS two phase constructor - puts self into stack. + * + * @return CGSCallBarringPlugin object + */ + static CGSCallBarringPlugin* NewLC(); + + /** + * Destructor. + */ + ~CGSCallBarringPlugin(); + + /** + * Symbian OS two-phased constructor + * @return GS call barring view. + */ + static CGSCallBarringPlugin* NewL( TAny* aInitParams ); + + /** + * + */ + void HandleClientRectChange(); + + public: // Functions from base classes + + /** + * From CAknView, returns the views id. + * + * @return Returns TUid, which is the id of the view. + */ + TUid Id() const; + + /** + * From MEikCommandObserver, handles the commands given through menu. + * + * @param aCommand is the given command. + */ + void HandleCommandL( TInt aCommand ); + + public: // From CGSPluginInterface + + /** + * @see CGSPluginInterface header file. + */ + void GetCaptionL( TDes& aCaption ) const; + + /** + * See base class. + */ + CGulIcon* CreateIconL( const TUid aIconType ); + + /** + * @see CGSPluginInterface header file. + */ + TInt PluginProviderCategory() const; + + /** + * @see CGSPluginInterface header file. + */ + TBool Visible() const; + + /** + * @see CGSPluginInterface header file. + */ + TGSListboxItemTypes ItemType(); + + void HandleSelection( + const TGSSelectionTypes aSelectionType ); + public: //new + + /** + * This is a locally owned method used to activate + * other local views seen from GSTelPlugin + * @param aFeatureId feature ID of the folder + */ + void ActivateInternalViewL(); + + /** + * This is a locally owned method used to initialize + * other local views seen from GSTelPlugin + * @param aLocalViewId view ID of local views to this plugin + */ + void CreateLocalViewL( TUid aLocalViewId ); + + /** + * Removes sub-views owned by this plugin to make sure sub-view UIDs do + * not clash. + */ + void RemoveLocalViews(); + + /** + *Is VoIP feature supported + */ + TBool VoipSupported() const; + + protected: // from CAknView + + void DoActivateL( const TVwsViewId& aPrevViewId, + TUid aCustomMessageId, + const TDesC8& aCustomMessage ); + + void DoDeactivate(); + + private: // from base class + + /** + * Symbian OS default constructor. + * + */ + void ConstructL(); + + /** + * From CGSBaseView, handles selection of list box. + */ + void HandleListBoxSelectionL(); + + void NewContainerL(); + + private: // From MGSSettingPSObserver + /** + * Callback from MGSSettingPSObserver + */ + void HandleNotifyPSL( const TUid aUid, const TInt& aKey, + const TRequestStatus& aStatus ); + + private: //new + /** + * Retrieves container pointer. + */ + CGSCallBarringPluginContainer* Container(); + + /** + * Customer Service Profile status setting + */ + void SetCSPActiveL( TBool aValue ); + + private: // Member variables + //Navi pane + CAknNavigationDecorator* iNaviPaneContext; + //PubSub object for BT SAP state + CGSPubSubsListener* iBtSapListener; + //check if CSP is active + CPsetCustomerServiceProfile* iCSP; + // Call barring view. Not owned by this - owned by iAppUi. + CGSLocalBaseView* iBarringView; + // check if voip supported + TBool iVoipSupported; + }; + +#endif //GSCALLBARRINGPLUGIN_H + +// End of File