tsrc/mustestapp/inc/AiwTestAppAppUi.h
branchRCL_3
changeset 33 bc78a40cd63c
parent 32 73a1feb507fb
child 35 6c57ef9392d2
equal deleted inserted replaced
32:73a1feb507fb 33:bc78a40cd63c
     1 /*
       
     2 * Copyright (c) 2002-2005 Nokia Corporation and/or its subsidiary(-ies).
       
     3 * All rights reserved.
       
     4 * This component and the accompanying materials are made available
       
     5 * under the terms of "Eclipse Public License v1.0"
       
     6 * which accompanies this distribution, and is available
       
     7 * at the URL "http://www.eclipse.org/legal/epl-v10.html".
       
     8 *
       
     9 * Initial Contributors:
       
    10 * Nokia Corporation - initial contribution.
       
    11 *
       
    12 * Contributors:
       
    13 *
       
    14 * Description:  Declares UI class for application.
       
    15 *
       
    16 */
       
    17 
       
    18 #ifndef AIWTESTAPPUI_H
       
    19 #define AIWTESTAPPUI_H
       
    20 
       
    21 // INCLUDES
       
    22 #include "musavaobserver.h"
       
    23 #include "muscallmonitorobserver.h"
       
    24 
       
    25 #include <eikapp.h>
       
    26 #include <eikdoc.h>
       
    27 #include <e32std.h>
       
    28 #include <coeccntx.h>
       
    29 #include <aknappui.h>
       
    30 
       
    31 
       
    32 // FORWARD DECLARATIONS
       
    33 class CAiwTestContainer;
       
    34 class CAiwServiceHandler;
       
    35 class CMusManager;
       
    36 class CMusAvaInterface;
       
    37 class CMusCallMonitor;
       
    38 
       
    39 // CLASS DECLARATION
       
    40 
       
    41 /**
       
    42 * Application UI class.
       
    43 * Provides support for the following features:
       
    44 * - EIKON control architecture
       
    45 */
       
    46 class CAiwTestAppUi : public CAknAppUi, public MMusAvaObserver,
       
    47                       public MMusCallMonitorObserver
       
    48     {
       
    49     public: // Constructors and destructor
       
    50         /**
       
    51         * By default Symbian 2nd phase constructor is private.
       
    52         */    
       
    53         void ConstructL();
       
    54 
       
    55         /**
       
    56         * Destructor.
       
    57         */      
       
    58         virtual ~CAiwTestAppUi();
       
    59         
       
    60     public: // New functions
       
    61     public: // Functions from base classes
       
    62 
       
    63      void AvailabilityState( TAvailabilityState aState, 
       
    64                                               TAvailabilityStatus aStatus,
       
    65                                               TAvailabilityName aName );
       
    66     
       
    67 
       
    68     void StopComplete();
       
    69 
       
    70 
       
    71     void CallConnectedL( const TDesC& /*aTelNumber*/, TBool /*aIsSipUri*/ ) 
       
    72         {
       
    73         }
       
    74     
       
    75     void CallHold( const TDesC& /*aTelNumber*/, TBool /*aIsSipUri*/ )
       
    76         {
       
    77         }
       
    78     
       
    79     void ConferenceCallL()
       
    80         {
       
    81         }
       
    82     
       
    83     void NoActiveCallL()
       
    84         {
       
    85         }
       
    86     
       
    87 
       
    88     private: 
       
    89         /**
       
    90         * From MEikMenuObserver, dynamically initialises a menu pane.
       
    91         * @param aResourceId The menu's ID.
       
    92         * @param aMenuPane The in-memory representation of the menu pane.
       
    93         */
       
    94         void DynInitMenuPaneL(TInt aResourceId, CEikMenuPane* aMenuPane);
       
    95 
       
    96     private:
       
    97         /**
       
    98         * From CEikAppUi, takes care of command handling.
       
    99         * @param aCommand command to be handled
       
   100         */
       
   101         void HandleCommandL(TInt aCommand);
       
   102 
       
   103         /**
       
   104         * From CEikAppUi, handles key events.
       
   105         * @param aKeyEvent Event to handled.
       
   106         * @param aType Type of the key event. 
       
   107         * @return Response code (EKeyWasConsumed, EKeyWasNotConsumed). 
       
   108         */
       
   109         virtual TKeyResponse HandleKeyEventL(
       
   110             const TKeyEvent& aKeyEvent,TEventCode aType);
       
   111     
       
   112     private:        
       
   113         CAiwTestContainer* iAppContainer;  
       
   114         CAiwServiceHandler* iServiceHandler;        
       
   115         
       
   116         CMusManager* iManager;    
       
   117         CMusAvaInterface* iPlugin;
       
   118         TAvailabilityStatus iMinimumStatus;
       
   119         TAvailabilityStatus iMandatoryStatus;
       
   120         TAvailabilityStatus iExtensionStatus;
       
   121         
       
   122         CMusCallMonitor* iCallMonitor;
       
   123     };
       
   124 
       
   125 #endif
       
   126 
       
   127 // End of File