diff -r 000000000000 -r 72b543305e3a messagingappbase/mce/inc/MceDeliveryReportView.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/messagingappbase/mce/inc/MceDeliveryReportView.h Thu Dec 17 08:44:11 2009 +0200 @@ -0,0 +1,207 @@ +/* +* 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: +* Messaging Centre application "Delivery Reports" view class +* implementation. +* +*/ + + + +#ifndef __Mce_CMceDeliveryReportView_H__ +#define __Mce_CMceDeliveryReportView_H__ + +// INCLUDES +#include +#include +#include +#include +#include + +#include + +// CONSTANTS + +_LIT( KHelpContext, "MCE_HLP_DELIVERY_REPORTS" ); + +// FORWARD DECLARATIONS +class CMceUi; +class CEikMenuBar; +class CMceSessionHolder; + + +class CMceDeliveryReportControlContainer; + +// CLASS DECLARATION + +/** + * Mce application "Delivery Report" view class implementation. + */ +class CMceDeliveryReportView : + public CAknView, + public MEikListBoxObserver, + public MCoeForegroundObserver + + { + public: // interface + /** + * Standard creation function. Creates and returns a new object of this + * class. + * + * @return pointer to CMceDeliveryReportView instance. + */ + static CMceDeliveryReportView* NewL( CMceSessionHolder& aSessionHolder ); + /** + * Destructor. + */ + ~CMceDeliveryReportView(); + + /** + * Returns the Mce Application UI object. + * + * @return Pointer to Application UI + */ + CMceUi* MceAppUi(); + + /** + * HandleClientRectChange. Called by the framework the view rectangle + * changes + */ + void HandleClientRectChange(); + + public: // from CAknView + /** + * Framework calls to init menu items. + * + * @param aResourceId resource id + * @param aMenuPane menu pane + */ + void DynInitMenuPaneL(TInt aResourceId, CEikMenuPane* aMenuPane); + + protected: // from MEikListBoxObserver + /** + * Handles list boxes key events. + * + * @param aListBox listbox. Not used. + * @param aEventType event type + * This event type is specified by + * MEikListBoxObserver class. + */ + void HandleListBoxEventL(CEikListBox* aListBox, + TListBoxEvent aEventType); + + private: // from CAknView + /** + * Returns the ID of the view. + * + * @return id of this view. + */ + TUid Id() const; + + /** + * Called by the framework when this view is activated. + * + * @param aPrevViewId This is ID for previous view. + * @param aCustomMessageId ID of the custom message. Not used. + * @param aCustomMessage custom message. Not used. + */ + void DoActivateL(const TVwsViewId& aPrevViewId, + TUid aCustomMessageId, + const TDesC8& aCustomMessage); + /** + * Called by the framework when this view is deactivated. + */ + void DoDeactivate(); + + + public: // from MEikCommandObserver + /** + * HandleCommandL. Handles the view specific commands. + * + * @param aCommandId Command's id + */ + void HandleCommandL(TInt aCommand); + + public: // MCoeForegroundObserver + + /** + * It is called whenever observer has gained foreground + */ + void HandleGainingForeground(); + + /** + * It is called whenever observer has lost foreground + */ + void HandleLosingForeground(); + + private: // operations + /** + * C++ constructor + * + */ + CMceDeliveryReportView::CMceDeliveryReportView( CMceSessionHolder& aSessionHolder ); + /** + * Constructor, second phase. + */ + void ConstructL(); + + public: + /** + * Creates a pop up menubar of aResourceId. Runs DoLaunchPopupL + * inside a TRAP. + * + * @param aResourceId Resource ID. + */ + void LaunchPopupMenuL( TInt aResourceId ); + + /** + * Removes the popup from the view stack and deletes it. + */ + void ClosePopup(); + + /** + * From MEikCommandObserver + */ + virtual void ProcessCommandL( TInt aCommand ); + + /** + * Set the middle soft key. + * + */ + void SetMSKButtonL(); + + private: // functions + /** + * Launch the popup. + * + * @param aResourceId Resource ID. + */ + void DoLaunchPopupL( TInt aResourceId ); + + private: // data + /// Own: This view's control container. + CMceDeliveryReportControlContainer* iContainer; + + /// Own: popup menu + CEikMenuBar* iPopup; + + + CMceSessionHolder& iSessionHolder; + }; + + +#endif // __Mce_CMceDeliveryReportView_H__ + + +// End of File