phoneapp/phoneuivoipextension/inc/cphonecustomizationvoip.h
branchRCL_3
changeset 24 41a7f70b3818
parent 10 ba54057fe027
child 25 5266b1f337bd
equal deleted inserted replaced
23:40a3f856b14d 24:41a7f70b3818
    18 
    18 
    19 #ifndef C_CPHONECUSTOMIZATIONVOIP_H
    19 #ifndef C_CPHONECUSTOMIZATIONVOIP_H
    20 #define C_CPHONECUSTOMIZATIONVOIP_H
    20 #define C_CPHONECUSTOMIZATIONVOIP_H
    21 
    21 
    22 // INCLUDES
    22 // INCLUDES
    23 #include <settingsinternalcrkeys.h> 
    23 #include <settingsinternalcrkeys.h>
    24 #include <telmenuextension.h>
    24 #include <telmenuextension.h>
    25 #include <spdefinitions.h>
    25 #include <spdefinitions.h>
    26 #include "mphonecustomization.h"
    26 #include "mphonecustomization.h"
    27 #include "mphonebuttoncustomization.h"
    27 #include "mphonebuttoncustomization.h"
    28 
    28 
    35 class CPhoneStateUtilsVoip;
    35 class CPhoneStateUtilsVoip;
    36 class CPhoneUnattendedTransferCmdHandler;
    36 class CPhoneUnattendedTransferCmdHandler;
    37 class CPhoneNewCallCmdHandler;
    37 class CPhoneNewCallCmdHandler;
    38 class CEikMenuPaneItem;
    38 class CEikMenuPaneItem;
    39 class CCoeEnv;
    39 class CCoeEnv;
    40 class CPhoneVccHandler;
       
    41 class CPhoneCallForwardQueryHandler;
    40 class CPhoneCallForwardQueryHandler;
    42 
    41 
    43 // CONSTANTS
    42 // CONSTANTS
    44 
    43 
    45 const TInt KMaxVoIPServiceName = 100;
    44 const TInt KMaxVoIPServiceName = 100;
    75         * @return an instance of class CPhoneCustomizationVoip
    74         * @return an instance of class CPhoneCustomizationVoip
    76         */
    75         */
    77         static CPhoneCustomizationVoip* NewL( 
    76         static CPhoneCustomizationVoip* NewL( 
    78             MPhoneStateMachine& aStateMachine,
    77             MPhoneStateMachine& aStateMachine,
    79             MPhoneViewCommandHandle& aViewCommandHandle );
    78             MPhoneViewCommandHandle& aViewCommandHandle );
    80     	
    79         
    81 // from base class MPhoneCustomization  
    80 // from base class MPhoneCustomization  
    82     	
    81         
    83         /**
    82         /**
    84         * From MPhoneCustomization.
    83         * From MPhoneCustomization.
    85         * Customizes menu bar.
    84         * Customizes menu bar.
    86         * @param    aResourceId     Menu bar resource identifier.
    85         * @param    aResourceId     Menu bar resource identifier.
    87         * @param    aMenuBar        Menu bar.
    86         * @param    aMenuBar        Menu bar.
   167         * @param aNumber   Number/Address 
   166         * @param aNumber   Number/Address 
   168         */
   167         */
   169         void HandleDialL( const TDesC& aNumber );
   168         void HandleDialL( const TDesC& aNumber );
   170 
   169 
   171 // from base class MPhoneButtonCustomization
   170 // from base class MPhoneButtonCustomization
   172         
       
   173         /**
   171         /**
   174         * From MPhoneButtonCustomization.
   172         * From MPhoneButtonCustomization.
   175         * Customizes touch pane buttons.
   173         * Customizes touch pane buttons.
   176         * @param aTouchPane Interface to add and dimm
   174         * @param aTouchPane Interface to add and dimm
   177         *                   bubble touch pane buttons.
   175         *                   bubble touch pane buttons.
   178         */
   176         */
   179         void CustomizeTouchPaneButtons(
   177         void CustomizeTouchPaneButtons(
   180                         MBubbleTouchPaneInterface& aTouchPane );
   178                         /*MBubbleTouchPaneInterface& aTouchPane*/ );
   181         
       
   182     protected:
   179     protected:
   183 
   180 
   184         CPhoneCustomizationVoip( 
   181         CPhoneCustomizationVoip( 
   185             MPhoneStateMachine& aStateMachine,
   182             MPhoneStateMachine& aStateMachine,
   186             MPhoneViewCommandHandle& aViewCommandHandle );
   183             MPhoneViewCommandHandle& aViewCommandHandle );
   203         * Get the service provider name
   200         * Get the service provider name
   204         * @param aServiceId The service, whose name is requested
   201         * @param aServiceId The service, whose name is requested
   205         * @param aServiceName On return, contains the service name
   202         * @param aServiceName On return, contains the service name
   206         */
   203         */
   207         void GetVoipServiceNameL( TServiceId aServiceId, TDes& aServiceName ) const;
   204         void GetVoipServiceNameL( TServiceId aServiceId, TDes& aServiceName ) const;
   208     	
   205         
   209         /**
   206         /**
   210          * EasyDialing enabled check
   207         * Modifies menu when there is active call.
   211          */
   208         * @param aResourceId Menu resource id.
   212         TBool EasyDialingEnabled();
   209         * @param aMenuPane Menu pane
   213 
   210         */
   214         /**
       
   215     	* Modifies menu when there is active call.
       
   216     	* @param aResourceId Menu resource id.
       
   217     	* @param aMenuPane Menu pane
       
   218     	*/
       
   219         void ModifyInCallMenuL( TInt aResourceId, CEikMenuPane& aMenuPane );
   211         void ModifyInCallMenuL( TInt aResourceId, CEikMenuPane& aMenuPane );
   220         
   212         
   221         /**
   213         /**
   222     	 * Modifies menu when there is dialer/number entry shown.
   214          * Modifies menu when there is dialer/number entry shown.
   223     	 * 
   215          * 
   224     	 * @param   aResourceId     Menu pane resource identifier.
   216          * @param   aResourceId     Menu pane resource identifier.
   225          * @param   aMenuPane       Menu pane.
   217          * @param   aMenuPane       Menu pane.
   226     	 */
   218          */
   227         void ModifyNumberAcquisitionMenuL( 
   219         void ModifyNumberAcquisitionMenuL( 
   228             TInt aResourceId, CEikMenuPane& aMenuPane );
   220             TInt aResourceId, CEikMenuPane& aMenuPane );
   229         
   221         
   230         /**
   222         /**
   231          * Inserts "Internet call" menu item to the given menu pane.
   223          * Inserts "Internet call" menu item to the given menu pane.
   243          * @param   aMenuPane       Menu pane. 
   235          * @param   aMenuPane       Menu pane. 
   244          */
   236          */
   245         void InsertTextInputModeChangeMenuItemL( CEikMenuPane& aMenuPane );
   237         void InsertTextInputModeChangeMenuItemL( CEikMenuPane& aMenuPane );
   246         
   238         
   247         /**
   239         /**
   248     	* Resolves active calls from phoneengine.
   240         * Resolves active calls from phoneengine.
   249     	* @param aArray Active call array.
   241         * @param aArray Active call array.
   250     	*/
   242         */
   251         void GetActiveCallArrayL( 
   243         void GetActiveCallArrayL( 
   252                 RArray<CTelMenuExtension::TCallInfo>& aArray );
   244                 RArray<CTelMenuExtension::TCallInfo>& aArray );
   253         
   245         
   254         /**
   246         /**
   255     	* Resolves most active call.
   247         * Resolves most active call.
   256     	* This is used to determine which plug-in customizes menu pane 
   248         * This is used to determine which plug-in customizes menu pane 
   257     	* and handles command.
   249         * and handles command.
   258     	* @param aArray Active call array.
   250         * @param aArray Active call array.
   259     	*/
   251         */
   260         TInt ResolveMostActiveCallL( 
   252         TInt ResolveMostActiveCallL( 
   261                 const RArray<CTelMenuExtension::TCallInfo>& aArray );
   253                 const RArray<CTelMenuExtension::TCallInfo>& aArray );
   262 
   254 
   263         /**
   255         /**
   264          * Returns service id for activest call
   256          * Returns service id for activest call
   286         * @param    aFeature A feature to be checked.
   278         * @param    aFeature A feature to be checked.
   287         * @return   ETrue if feature supported.
   279         * @return   ETrue if feature supported.
   288         */  
   280         */  
   289         TBool CheckFeatureSupportByCallTypeL( 
   281         TBool CheckFeatureSupportByCallTypeL( 
   290                 TFeature aFeature );
   282                 TFeature aFeature );
   291         
   283 
   292         /**
       
   293         * Customizes touch pane buttons by extension.
       
   294         * @leave KErrNotFound if extension not found.
       
   295         * @param aTouchPane Interface to add and dimm
       
   296         *                   bubble touch pane buttons.
       
   297         */
       
   298         void CustomizeTouchPaneUsingExtensionL(
       
   299                         MBubbleTouchPaneInterface& aTouchPane );
       
   300         
       
   301         /**
   284         /**
   302         * Shows "Enabling %U service" wait note 
   285         * Shows "Enabling %U service" wait note 
   303         */
   286         */
   304         void LaunchEnablingServiceNoteL();
   287         void LaunchEnablingServiceNoteL();
   305          
   288          
   368         /**
   351         /**
   369         * Gets phone number from the phone number entry.
   352         * Gets phone number from the phone number entry.
   370         * @return  Phone number
   353         * @return  Phone number
   371         */
   354         */
   372         HBufC* PhoneNumberFromEntryLC() const;
   355         HBufC* PhoneNumberFromEntryLC() const;
   373 		
       
   374 		/**
       
   375          * Enables or disables key lock.
       
   376          * @param aEnabled ETrue if keylock is enabled,
       
   377          * EFalse if disabled.
       
   378          */
       
   379         void SetKeyLockEnabledL( TBool aEnabled );
       
   380 
       
   381 		/**
       
   382 		* Keylock was on before and needs to be restored.
       
   383 		* @param aRestore ETrue if keylock needs to be restored.
       
   384 		*/
       
   385 	    void SetNeedToRestoreKeyLock( TBool aRestore );
       
   386 		
       
   387 		/* Check if keylock was on before and needs to be restored.
       
   388 		 * @return ETrue if keylock needs to be restored.
       
   389 		 */
       
   390 	    TBool NeedToRestoreKeyLock() const;
       
   391 	    
       
   392         
   356         
   393     private: // Data
   357     private: // Data
   394 		        
   358                 
   395         /** 
   359         /** 
   396          * Control environment.
   360          * Control environment.
   397          */
   361          */
   398         CCoeEnv& iCoeEnv;
   362         CCoeEnv& iCoeEnv;
   399         
   363         
   427          * New Internet call command handler.
   391          * New Internet call command handler.
   428          */
   392          */
   429         CPhoneNewCallCmdHandler* iNewCallCmdHandler;
   393         CPhoneNewCallCmdHandler* iNewCallCmdHandler;
   430         
   394         
   431         /**
   395         /**
   432          * Pointer to VCC handler
       
   433          */
       
   434         CPhoneVccHandler* iVccHandler; 
       
   435 
       
   436         /**
       
   437          * Call forward handler.
   396          * Call forward handler.
   438          */
   397          */
   439         CPhoneCallForwardQueryHandler* iCallForwardHandler;
   398         CPhoneCallForwardQueryHandler* iCallForwardHandler;
   440         
   399         
   441         /**
       
   442          * Boolean flag. ETrue if keylock was on before and
       
   443          * needs to be restored.
       
   444          */
       
   445         TBool iNeedToRestoreKeyLock;
       
   446 		
       
   447     };
   400     };
   448 
   401 
   449 #endif // C_CPHONECUSTOMIZATIONVOIP_H
   402 #endif // C_CPHONECUSTOMIZATIONVOIP_H
   450 
   403 
   451 // End of File
   404 // End of File