phoneapp/phoneuiview/inc/cphoneaudiocontroller.h
branchRCL_3
changeset 81 c26cc2a7c548
parent 62 5266b1f337bd
--- a/phoneapp/phoneuiview/inc/cphoneaudiocontroller.h	Wed Sep 15 12:12:21 2010 +0300
+++ b/phoneapp/phoneuiview/inc/cphoneaudiocontroller.h	Wed Oct 13 14:31:22 2010 +0300
@@ -73,7 +73,13 @@
         * @param aCommandParam command parameter
         */
         void HandleIhfChange( TPhoneCommandParam* aCommandParam );
-   
+        
+        /**
+        * Update control using the specified data
+        * @param aCommandParam command parameter
+        */
+        void HandleMuteChange( TPhoneCommandParam* aCommandParam );
+        
         /**
         * Gets volume level from navi pane control.
         * @return Volume level.
@@ -127,6 +133,14 @@
         void PushL(CAknNavigationDecorator& aNew);
 
         /**
+        * Callback function. Called when navi pane should be updated 
+        * back to default.
+        * @param aAny pointer to instance of this class.
+        * @return KErrNone always.
+        */
+        static TInt DoUpdateNaviPaneToDefault( TAny* aAny );
+
+        /**
         * Get current volume decorator (Ihf or Ear) 
         * @return Current volume decorator
         */
@@ -143,6 +157,12 @@
         * @return Current Ihf or Ear volume level         
         */        
         TInt VolumeLevel(); 
+        
+        /**
+        * Select decorator based on current audio status
+        * @return Selected decorator (Ihf, Ear or Muted).         
+        */
+        CAknNavigationDecorator& SelectDecoratorL();         
 
         /**
         * Set volume level for given volume control
@@ -169,6 +189,9 @@
         
         // ETrue IHF is active
         TBool iIhfMode;
+
+        // ETrue if transfer to or from IHF pending
+        TBool iIhfTransferPending; 
         
         // Owned non-IHF volume control.
         CAknNavigationDecorator* iEarVolumeControl;
@@ -176,9 +199,20 @@
         // Non-IHF volume, from 1 to 10
         TInt iEarVolume; 
 
+        // Owned muted indicator
+        CAknNavigationDecorator* iMutedControl;
+        
+        // ETrue phone is muted
+        TBool iMuted;
+
+        // ETrue if timed control transfer to muted is pending
+        TBool iTimedMuteTransferPending; 
+
         // Pointer the current control that is in navi pane
         CAknNavigationDecorator* iOldControl;
- 
+        
+        // Owned timer to update navi pane
+        CPhoneTimer* iNaviPaneUpdateTimer;
         
         /**
          * ETrue if Telephony is the foreground application,