diff -r 41a7f70b3818 -r 5266b1f337bd phoneapp/phoneuicontrol/inc/cphonestateidle.h --- a/phoneapp/phoneuicontrol/inc/cphonestateidle.h Tue Aug 31 15:14:29 2010 +0300 +++ b/phoneapp/phoneuicontrol/inc/cphonestateidle.h Wed Sep 01 12:30:10 2010 +0100 @@ -22,6 +22,7 @@ // INCLUDES #include "cphonestate.h" +#include "tphonecmdparamspeeddial.h" // FORWARD DECLARATIONS @@ -45,23 +46,6 @@ EDialMethodSendCommand = 2, /** Dial is initiated by one key dialing. */ EDialMethodOneKeyDialing = 3 - - }; - - /** - * Phone number types - * - * EPhoneNumberTypeNotFound - phone number's type was not found - * EPhoneNumberTypeCS - CS call can be made to the phone number - * EPhoneNumberTypeVideo - video call can be made to the phone number - * EPhoneNumberTypeVoip - VoIP call can be made to the address. - */ - enum TPhoneNumberType - { - EPhoneNumberTypeNotFound = -1, - EPhoneNumberTypeCS = 0, - EPhoneNumberTypeVideo, - EPhoneNumberTypeVoip }; /** @@ -95,7 +79,7 @@ */ IMPORT_C virtual void HandlePhoneEngineMessageL( const TInt aMessage, - TInt aCallId ); + TInt aCallId ); IMPORT_C virtual TBool HandleCommandL( TInt aCommand ); @@ -115,7 +99,20 @@ * Indicates when the Phone app has lost focus. */ IMPORT_C virtual void HandlePhoneFocusLostEventL(); - + + /** + * This function is called from displaycallsetup and + * the purpose is to do state specific things for callsetup. + */ + IMPORT_C virtual void DoStateSpecificCallSetUpDefinitionsL(); + + /** + * HandleError + * Implements error handling framework + * @param aErrorInfo: the error info + */ + IMPORT_C virtual void HandleErrorL( + const TPEErrorInfo& aErrorInfo ); protected: /** @@ -134,12 +131,6 @@ IMPORT_C void DisplayIncomingCallL( TInt aCallId ); /** - * Display Call Setup - * @param aCallid call id - */ - IMPORT_C void DisplayCallSetupL( TInt aCallId ); - - /** * By default EPOC constructor is private. */ IMPORT_C CPhoneStateIdle( @@ -187,12 +178,57 @@ IMPORT_C virtual void HandleDialingL( TInt aCallId ); /** + * This is called when Speed Dial dialog is cancelled or user didn't give + * a valid number. + * @param aDigit: entered digit + */ + IMPORT_C void SpeedDialCanceledL( const TUint& aDigit ); + + /** + * Handle long key press of a number. + */ + IMPORT_C void HandleNumberLongKeyPressL(); + + /** + * Tests whether given number is speed dial number. + * @param aNumber A number to test. + * @return ETrue if given number is speed dial number. + */ + IMPORT_C TBool IsSpeedDialNumber( const TDesC& aNumber ) const; + + /** + * Handles speed dialing. + * @param aDigit Entered digit. + * @param aDialMethod Dial initiation method. + */ + IMPORT_C void SpeedDialL( const TUint& aDigit, + TDialInitiationMethod aDialMethod ); + + /** * Handles send command. */ IMPORT_C virtual void HandleSendCommandL(); + protected: + + /** + * Sets iCallInitialized value. + */ + void SetCallInitialized( TBool aValue ); + + /** + * Gets iCallInitialized value. + */ + TBool IsCallInitialized(); + + /** + * Removes NE and sets idle to background, for more detailed + * information check comments from implementation. + */ + void RemoveNumberEntryAndSetIdleToBackgroundIfNeededL(); + private: // New functions - + /** * A message handling function for EPEMessageIncoming * @param aCallId: the call id of the call @@ -212,6 +248,11 @@ void HandleIdleL( TInt aCallId ); /** + * Launches application. + */ + void LaunchApplicationL(); + + /** * Send Exit command */ void SendExitCommandL(); @@ -241,16 +282,47 @@ */ TBool RestoreOngoing(); + /** + * Handles back command. + */ + void HandleBackCommandL(); - void HandleVoiceCallCommandL(); + /** + * Checks for application launching configurations from + * central repository. + * @param aCode key code. + * @return ETrue if configuration found. + */ + TBool CheckAppLaunchingL( const TKeyCode aCode ); + + /** + * Returns phone number for specified speed dial location. + * @param aDigit Speed dial digit. + * @param aDigit On return contains speed dial parameters. + * @return Phone number + */ + HBufC* NumberForSpeedDialLocationL( const TUint& aDigit, + TPhoneCmdParamSpeedDial& aSpeedDialParam ) const; + + void HandleVoiceCallCommandL( TBool aSendKey ); + + /** + * Returns options menu id when number entry is visible. + * If easydialing is in focus, id is asked from it. + * @return Menu resource id. + */ + TInt GetNumberAcqMenuIdL(); + + /** + * Changes state to aState and resets iBubbleInitialized + * value to false. + */ + void ChangeTo( TInt aState ); private: - - // Owned profile engine - MProfileEngine* iEngine; - // indicates that incomming call is arrived. - TBool iIncommingCall; - + + // True if call initiliazed. + TBool iCallInitialized; }; #endif // CPHONESTATEIDLE