--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/uiservicetab/vimpstui/inc/cvimpstuiblockview.h Wed Sep 01 12:33:36 2010 +0100
@@ -0,0 +1,189 @@
+/*
+* Copyright (c) 2008 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: Block view declaration
+ *
+*/
+
+
+#ifndef CVIMPSTUIBLOCKVIEW_H
+#define CVIMPSTUIBLOCKVIEW_H
+
+
+// INCLUDES
+#include <e32base.h> // CBase
+
+#include "CxSPBaseView.h"
+#include "mvimpstcmdobserver.h"
+#include "mvimpstengineblockedlistfetcheventobserver.h"
+
+// FORWARD DECLARATIONS
+class CVIMPSTUiBlockViewControl;
+class CVIMPSTUIExtensionService;
+class MVIMPSTEngine;
+class CAknNavigationDecorator;
+class MVIMPSTEnginePresenceSubService;
+class MVIMPSTCmdHandler;
+
+// CLASS DECLARATION
+/**
+ * Search view implementation
+ * @lib vimpstui.lib
+ * @since S60 v5.0
+ */
+ // codescanner warnings can be ignored as CxSPBaseView derived from CBsse
+
+class CVIMPSTUiBlockView :public CxSPBaseView,
+ public MVIMPSTCmdObserver,
+ public MVIMPSTEngineBlockedListFetchEventObserver
+ {
+ public: // Constructors and destructor
+
+
+ /**
+ * Creates a new CVIMPSTUiSearchView.
+ *
+ * @param aMapper Reference to view mapper object
+ * @param aContactManager Reference to contact manager object
+ * @param aBlockViewId Block view id
+ * @param aView Reference to Phonebook2-created view instance
+ * @param aServiceData Reference to ui extension service
+ * @param aEngine Reference to engine object
+ * @return New instance of this class
+ */
+ static CVIMPSTUiBlockView* NewL( MxSPViewMapper& aMapper,
+ MxSPContactManager& aContactManager,
+ TUint aBlockViewId,
+ CPbk2UIExtensionView& aView,
+ CVIMPSTUIExtensionService& aServiceData,
+ MVIMPSTEngine& aEngine,
+ MVIMPSTCmdHandler& aCommandHandler );
+
+
+
+ public: // From MPbk2UIExtensionView through CxSPBaseView
+
+ /**
+ * @see MPbk2UIExtensionView
+ */
+ void DoDeactivate();
+
+ /**
+ * @see MPbk2UIExtensionView
+ */
+ void HandleCommandL( TInt aCommand );
+ /**
+ * @see MPbk2UIExtensionView
+ */
+ void DynInitMenuPaneL( TInt aResourceId,
+ CEikMenuPane* aMenuPane );
+
+ /**
+ * @see MPbk2UIExtensionView
+ */
+ void HandleStatusPaneSizeChange();
+
+ //From MVIMPSTCmdObserver
+
+ /**
+ *@see MVIMPSTCmdObserver
+ */
+ void CommandFinishedL( const MVIMPSTCmd& aCommand );
+
+ /**
+ *@see MVIMPSTCmdObserver
+ */
+ void HandleCommandEventL( TVIMPSTEnums::TVIMPSTRegistrationState aState,
+ TInt aServiceError) ;
+
+ //from MVIMPSTEngineBlockedListFetchEventObserver.
+ /**
+ *@see MVIMPSTEngineBlockedListFetchEventObserver
+ */
+ void HandleBlockedListFetchCompleteL() ;
+ private: // From CxSPBaseView
+
+ /**
+ * @see CxSPBaseView
+ */
+ void DoActivateViewL( const TVwsViewId& aPrevViewId,
+ TUid aCustomMessageId,
+ const TDesC8& aCustomMessage );
+
+
+ /**
+ * This function updates text to navi pane
+ */
+ void UpdateNaviPaneTextL( );
+
+ void FetchBlockedListFromServerL();
+
+ private:
+
+ /**
+ * Standard C++ constructor
+ * @param aMapper Reference to view mapper object
+ * @param aContactManager Reference to contact manager object
+ * @param aBlockViewId Block view id
+ * @param aView Reference to Phonebook2-created view instance
+ * @param aServiceData Reference to ui extension service
+ * @param aEngine Reference to engine object
+ */
+ CVIMPSTUiBlockView( MxSPViewMapper& aMapper,
+ MxSPContactManager& aContactManager,
+ TUint aBlockViewId,
+ CPbk2UIExtensionView& aView,
+ CVIMPSTUIExtensionService& aServiceData ,
+ MVIMPSTEngine& aEngine,
+ MVIMPSTCmdHandler& aCommandHandler );
+
+ /**
+ * Performs the 2nd phase of construction.
+ */
+ void ConstructL();
+
+ /**
+ * Standard C++ destructor.
+ */
+ ~CVIMPSTUiBlockView();
+
+ private: // Data
+
+ // Own: This view's control container
+ CVIMPSTUiBlockViewControl* iContainer;
+
+ // Stores view id
+ TUint iBlockViewId;
+
+ //Doesnt own - reference to engine for this service
+ MVIMPSTEngine& iEngine;
+
+ // Own: Used for navigation pane text
+ CAknNavigationDecorator* iNaviDecorator;
+
+ //doesnt own, refernec to extension service
+ CVIMPSTUIExtensionService& iExtensionService;
+
+ //Not owned; pointer to instance of prsece sub service
+ MVIMPSTEnginePresenceSubService* iPresenceSubService;
+
+ //Not owned; blocked list array pointer
+ RPointerArray<HBufC>* iBlockedList;
+
+ //Doesnt own - reference to Command handler for this service
+ MVIMPSTCmdHandler& iCommandHandler;
+ };
+
+#endif // CVIMPSTUIBLOCKVIEW_H
+
+// End of File