williamr@2: /*
williamr@2: * Copyright (c) 2002-2004 Nokia Corporation and/or its subsidiary(-ies).
williamr@2: * All rights reserved.
williamr@2: * This component and the accompanying materials are made available
williamr@2: * under the terms of the License "Eclipse Public License v1.0"
williamr@2: * which accompanies this distribution, and is available
williamr@2: * at the URL "http://www.eclipse.org/legal/epl-v10.html".
williamr@2: *
williamr@2: * Initial Contributors:
williamr@2: * Nokia Corporation - initial contribution.
williamr@2: *
williamr@2: * Contributors:
williamr@2: *
williamr@2: * Description:  Dialog observer M class
williamr@2: *
williamr@2: */
williamr@2: 
williamr@2: 
williamr@2: 
williamr@2: #ifndef DOWNLOADSLISTDLGOBSERVER_H
williamr@2: #define DOWNLOADSLISTDLGOBSERVER_H
williamr@2: 
williamr@2: //  INCLUDES
williamr@2: #include <e32def.h>
williamr@2: #include <coedef.h>
williamr@2: #include <w32std.h>
williamr@2: 
williamr@2: // FORWARD DECLARATIONS
williamr@2: class CDownloadsListDlg;
williamr@2: class CEikMenuPane;
williamr@2: 
williamr@2: // CLASS DECLARATION
williamr@2: 
williamr@2: /**
williamr@2: *  Observer interface of CDownloadsListDlg.
williamr@2: *
williamr@2: *  @lib Download Manager UI Lib
williamr@2: *  @since Series 60 2.8
williamr@2: */
williamr@2: NONSHARABLE_CLASS( MDownloadsListDlgObserver )
williamr@2:     {
williamr@2:     public:
williamr@2: 
williamr@2:         /**
williamr@2:         * Called for layouting the dialog before executing it.
williamr@2:         */
williamr@2:         virtual void PreLayoutDynInitL( CDownloadsListDlg& aDialog ) = 0;
williamr@2: 
williamr@2:         /**
williamr@2:         * Called for processing not dialog specific commands.
williamr@2:         */
williamr@2:         virtual void ProcessCommandL( CDownloadsListDlg& aDialog, TInt aCommandId ) = 0;
williamr@2: 
williamr@2:         /**
williamr@2:         * Called for initializing Options menu.
williamr@2:         */
williamr@2:         virtual void DynInitMenuPaneL( CDownloadsListDlg& aDialog, TInt aResourceId, CEikMenuPane* aMenuPane ) = 0;
williamr@2: 
williamr@2:         /**
williamr@2:         * Key events first forwarded to the observer.
williamr@2:         */
williamr@2:         virtual TKeyResponse OfferKeyEventL( CDownloadsListDlg& aDialog, const TKeyEvent& aKeyEvent, TEventCode aType ) = 0;
williamr@2: 
williamr@4:         /**
williamr@4:         * setting the downloadlist hide to the observer.
williamr@4:         */
williamr@4:         virtual void SetDownloadListHide( TBool aHide ) = 0;
williamr@4: #ifdef BRDO_SINGLE_CLICK_ENABLED_FF
williamr@4:         /**
williamr@4:         * Adding Aiw Commands for the given MenuPane to the observer.
williamr@4:         */
williamr@4:         virtual void AIWPlugInMenusL(TInt aResourceId,CEikMenuPane* aMenuPane) = 0;
williamr@4: #endif        
williamr@2:     };
williamr@2: 
williamr@2: #endif /* DOWNLOADSLISTDLGOBSERVER_H */
williamr@2: