phoneapp/phoneuistates/tsrc/common/CPhoneViewControllerStub.h
author hgs
Fri, 17 Sep 2010 17:09:12 +0300
changeset 74 d1c62c765e48
permissions -rw-r--r--
201037
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
74
hgs
parents:
diff changeset
     1
/*
hgs
parents:
diff changeset
     2
* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). 
hgs
parents:
diff changeset
     3
* All rights reserved.
hgs
parents:
diff changeset
     4
* This component and the accompanying materials are made available
hgs
parents:
diff changeset
     5
* under the terms of "Eclipse Public License v1.0"
hgs
parents:
diff changeset
     6
* which accompanies this distribution, and is available
hgs
parents:
diff changeset
     7
* at the URL "http://www.eclipse.org/legal/epl-v10.html".
hgs
parents:
diff changeset
     8
*
hgs
parents:
diff changeset
     9
* Initial Contributors:
hgs
parents:
diff changeset
    10
* Nokia Corporation - initial contribution.
hgs
parents:
diff changeset
    11
*
hgs
parents:
diff changeset
    12
* Contributors:
hgs
parents:
diff changeset
    13
*
hgs
parents:
diff changeset
    14
* Description:
hgs
parents:
diff changeset
    15
*
hgs
parents:
diff changeset
    16
*/
hgs
parents:
diff changeset
    17
#include "MPhoneViewCommandHandle.h"
hgs
parents:
diff changeset
    18
#include "TPhoneCommandParam.h"
hgs
parents:
diff changeset
    19
#include "TPhoneCmdParamBoolean.h"
hgs
parents:
diff changeset
    20
#include "TPhoneCmdParamInteger.h"
hgs
parents:
diff changeset
    21
#include "TPhoneCmdParamEmergencyCallHeaderData.h"
hgs
parents:
diff changeset
    22
#include "TPhoneCmdParamCallStateData.h"
hgs
parents:
diff changeset
    23
hgs
parents:
diff changeset
    24
#include "TPhoneCmdParamCallHeaderData.h"
hgs
parents:
diff changeset
    25
hgs
parents:
diff changeset
    26
struct TCmds
hgs
parents:
diff changeset
    27
     {
hgs
parents:
diff changeset
    28
public:
hgs
parents:
diff changeset
    29
     TInt iCmd;
hgs
parents:
diff changeset
    30
     TPhoneUICommandParam* iP;
hgs
parents:
diff changeset
    31
     }; 
hgs
parents:
diff changeset
    32
hgs
parents:
diff changeset
    33
class CPhoneViewController : public MPhoneViewCommandHandle, public CBase
hgs
parents:
diff changeset
    34
    {
hgs
parents:
diff changeset
    35
   
hgs
parents:
diff changeset
    36
    
hgs
parents:
diff changeset
    37
    public:  // Constructors and destructor
hgs
parents:
diff changeset
    38
        
hgs
parents:
diff changeset
    39
        CPhoneViewController(){}
hgs
parents:
diff changeset
    40
      
hgs
parents:
diff changeset
    41
        static CPhoneViewController*  NewL()
hgs
parents:
diff changeset
    42
            {
hgs
parents:
diff changeset
    43
            CPhoneViewController* self = new (ELeave) CPhoneViewController();
hgs
parents:
diff changeset
    44
            return self;
hgs
parents:
diff changeset
    45
            }
hgs
parents:
diff changeset
    46
        
hgs
parents:
diff changeset
    47
        
hgs
parents:
diff changeset
    48
        /**
hgs
parents:
diff changeset
    49
        * Destructor.
hgs
parents:
diff changeset
    50
        */
hgs
parents:
diff changeset
    51
        ~CPhoneViewController()
hgs
parents:
diff changeset
    52
            {
hgs
parents:
diff changeset
    53
            if(iCmds)
hgs
parents:
diff changeset
    54
                {
hgs
parents:
diff changeset
    55
                for(TInt i = 0; i<iCmds->Count(); i++)
hgs
parents:
diff changeset
    56
                    {
hgs
parents:
diff changeset
    57
                    TCmds t = iCmds->At(i);
hgs
parents:
diff changeset
    58
                    delete t.iP;
hgs
parents:
diff changeset
    59
                
hgs
parents:
diff changeset
    60
                    }
hgs
parents:
diff changeset
    61
                
hgs
parents:
diff changeset
    62
                iCmds->Reset();
hgs
parents:
diff changeset
    63
                }
hgs
parents:
diff changeset
    64
            
hgs
parents:
diff changeset
    65
            delete iCmds;
hgs
parents:
diff changeset
    66
            };
hgs
parents:
diff changeset
    67
hgs
parents:
diff changeset
    68
    public: // New functions
hgs
parents:
diff changeset
    69
        
hgs
parents:
diff changeset
    70
        /**
hgs
parents:
diff changeset
    71
        * Execute Command with given Command Id
hgs
parents:
diff changeset
    72
        * @param aCmdId Command Id
hgs
parents:
diff changeset
    73
        * @return None
hgs
parents:
diff changeset
    74
        */
hgs
parents:
diff changeset
    75
        void ExecuteCommandL( 
hgs
parents:
diff changeset
    76
            TPhoneViewCommandId aCmdId )
hgs
parents:
diff changeset
    77
            {
hgs
parents:
diff changeset
    78
            if(iCmds == NULL)
hgs
parents:
diff changeset
    79
                iCmds = new (ELeave) CArrayFixFlat<TCmds> (10);
hgs
parents:
diff changeset
    80
            TCmds cmd;
hgs
parents:
diff changeset
    81
            cmd.iCmd = aCmdId;
hgs
parents:
diff changeset
    82
            cmd.iP = NULL;
hgs
parents:
diff changeset
    83
            iCmds->AppendL( cmd );
hgs
parents:
diff changeset
    84
            }
hgs
parents:
diff changeset
    85
hgs
parents:
diff changeset
    86
        /**
hgs
parents:
diff changeset
    87
        * Execute Command with given Command Id  and Call Id
hgs
parents:
diff changeset
    88
        * @param aCmdId Command Id
hgs
parents:
diff changeset
    89
        * @param aCallId Call Id
hgs
parents:
diff changeset
    90
        * @return None
hgs
parents:
diff changeset
    91
        */
hgs
parents:
diff changeset
    92
         void ExecuteCommandL( 
hgs
parents:
diff changeset
    93
            TPhoneViewCommandId aCmdId, 
hgs
parents:
diff changeset
    94
            TInt /*aCallId*/ ) 
hgs
parents:
diff changeset
    95
            {
hgs
parents:
diff changeset
    96
            ExecuteCommandL( aCmdId );
hgs
parents:
diff changeset
    97
            
hgs
parents:
diff changeset
    98
            }
hgs
parents:
diff changeset
    99
hgs
parents:
diff changeset
   100
         /**
hgs
parents:
diff changeset
   101
        * Execute Command with given command id, call id and command parameter.
hgs
parents:
diff changeset
   102
        * @param aCmdId Command Id
hgs
parents:
diff changeset
   103
        * @param aCommandParam Command parameter
hgs
parents:
diff changeset
   104
        * @return None
hgs
parents:
diff changeset
   105
        */
hgs
parents:
diff changeset
   106
         void ExecuteCommandL( 
hgs
parents:
diff changeset
   107
            TPhoneViewCommandId aCmdId, 
hgs
parents:
diff changeset
   108
            TPhoneCommandParam* aCommandParam ) 
hgs
parents:
diff changeset
   109
             {
hgs
parents:
diff changeset
   110
             if( iCmds == NULL )
hgs
parents:
diff changeset
   111
                 iCmds = new (ELeave) CArrayFixFlat<TCmds> (10);
hgs
parents:
diff changeset
   112
            TCmds cmd;
hgs
parents:
diff changeset
   113
            cmd.iCmd = aCmdId;
hgs
parents:
diff changeset
   114
            
hgs
parents:
diff changeset
   115
            switch ( aCmdId )
hgs
parents:
diff changeset
   116
                {
hgs
parents:
diff changeset
   117
                case EPhoneViewGetCountOfActiveCalls:
hgs
parents:
diff changeset
   118
                    {
hgs
parents:
diff changeset
   119
                    if ( aCommandParam->ParamId() == 
hgs
parents:
diff changeset
   120
                            TPhoneCommandParam::EPhoneParamIdInteger )
hgs
parents:
diff changeset
   121
                        {
hgs
parents:
diff changeset
   122
                        TPhoneCmdParamInteger* intParam = 
hgs
parents:
diff changeset
   123
                            static_cast<TPhoneCmdParamInteger*>( aCommandParam );
hgs
parents:
diff changeset
   124
                        
hgs
parents:
diff changeset
   125
                        intParam->SetInteger( iActiveCallCount );
hgs
parents:
diff changeset
   126
                        }
hgs
parents:
diff changeset
   127
                    }
hgs
parents:
diff changeset
   128
                    break;
hgs
parents:
diff changeset
   129
                                   
hgs
parents:
diff changeset
   130
                case EPhoneViewGetCallExistsInConference:
hgs
parents:
diff changeset
   131
                    {
hgs
parents:
diff changeset
   132
                    if ( aCommandParam->ParamId() == 
hgs
parents:
diff changeset
   133
                            TPhoneCommandParam::EPhoneParamIdBoolean )
hgs
parents:
diff changeset
   134
                        {
hgs
parents:
diff changeset
   135
                        static_cast<TPhoneCmdParamBoolean*>(aCommandParam)->SetBoolean( iCallExistsInConference ); 
hgs
parents:
diff changeset
   136
                        }
hgs
parents:
diff changeset
   137
                    }
hgs
parents:
diff changeset
   138
                    break;
hgs
parents:
diff changeset
   139
                }
hgs
parents:
diff changeset
   140
            
hgs
parents:
diff changeset
   141
            if ( aCommandParam->ParamId() == TPhoneCommandParam::EPhoneParamIdBoolean )
hgs
parents:
diff changeset
   142
                {
hgs
parents:
diff changeset
   143
                TPhoneCmdParamBoolean* value =
hgs
parents:
diff changeset
   144
                                            static_cast<TPhoneCmdParamBoolean*>( aCommandParam );
hgs
parents:
diff changeset
   145
                TPhoneCmdParamBoolean* value2 = new (ELeave) TPhoneCmdParamBoolean (*value);
hgs
parents:
diff changeset
   146
                cmd.iP = value2;
hgs
parents:
diff changeset
   147
                }
hgs
parents:
diff changeset
   148
            else if ( aCommandParam->ParamId() == TPhoneCommandParam::EPhoneParamIdInteger )
hgs
parents:
diff changeset
   149
                {
hgs
parents:
diff changeset
   150
                TPhoneCmdParamInteger* value =
hgs
parents:
diff changeset
   151
                             static_cast<TPhoneCmdParamInteger*>( aCommandParam );
hgs
parents:
diff changeset
   152
                TPhoneCmdParamInteger* value2 = new (ELeave) TPhoneCmdParamInteger (*value);
hgs
parents:
diff changeset
   153
                cmd.iP = value2;             
hgs
parents:
diff changeset
   154
                }
hgs
parents:
diff changeset
   155
            else if ( aCommandParam->ParamId() == TPhoneCommandParam::EPhoneParamIdCallHeaderData )
hgs
parents:
diff changeset
   156
                {
hgs
parents:
diff changeset
   157
                TPhoneCmdParamCallHeaderData* value =
hgs
parents:
diff changeset
   158
                            static_cast<TPhoneCmdParamCallHeaderData*>( aCommandParam );
hgs
parents:
diff changeset
   159
                TPhoneCmdParamCallHeaderData* value2 = new (ELeave) TPhoneCmdParamCallHeaderData( *value);  
hgs
parents:
diff changeset
   160
                cmd.iP = value2;             
hgs
parents:
diff changeset
   161
                }
hgs
parents:
diff changeset
   162
            else if(  aCommandParam->ParamId() == TPhoneCommandParam::EPhoneParamIdEmergencyCallHeaderData)
hgs
parents:
diff changeset
   163
                {
hgs
parents:
diff changeset
   164
                TPhoneCmdParamEmergencyCallHeaderData* value =
hgs
parents:
diff changeset
   165
                                            static_cast<TPhoneCmdParamEmergencyCallHeaderData*>( aCommandParam );
hgs
parents:
diff changeset
   166
                TPhoneCmdParamEmergencyCallHeaderData* value2 = new (ELeave) TPhoneCmdParamEmergencyCallHeaderData( *value);      
hgs
parents:
diff changeset
   167
                cmd.iP = value2;       
hgs
parents:
diff changeset
   168
                }
hgs
parents:
diff changeset
   169
             else
hgs
parents:
diff changeset
   170
                {
hgs
parents:
diff changeset
   171
                cmd.iP = NULL;
hgs
parents:
diff changeset
   172
                }
hgs
parents:
diff changeset
   173
            
hgs
parents:
diff changeset
   174
            iCmds->AppendL( cmd );
hgs
parents:
diff changeset
   175
            }
hgs
parents:
diff changeset
   176
hgs
parents:
diff changeset
   177
         /**
hgs
parents:
diff changeset
   178
        * Execute Command with given command id, call id and command parameter.
hgs
parents:
diff changeset
   179
        * @param aCmdId Command Id
hgs
parents:
diff changeset
   180
        * @param aCallId Call Id
hgs
parents:
diff changeset
   181
        * @param aCommandParam Command parameter
hgs
parents:
diff changeset
   182
        * @return None
hgs
parents:
diff changeset
   183
        */
hgs
parents:
diff changeset
   184
         void ExecuteCommandL( 
hgs
parents:
diff changeset
   185
            TPhoneViewCommandId aCmdId, 
hgs
parents:
diff changeset
   186
            TInt /*aCallId*/, 
hgs
parents:
diff changeset
   187
            TPhoneCommandParam* aCommandParam ) 
hgs
parents:
diff changeset
   188
             {
hgs
parents:
diff changeset
   189
             ExecuteCommandL( aCmdId, aCommandParam );
hgs
parents:
diff changeset
   190
             }
hgs
parents:
diff changeset
   191
hgs
parents:
diff changeset
   192
        /**
hgs
parents:
diff changeset
   193
        * Execute Command with given command id, call id and message.
hgs
parents:
diff changeset
   194
        * @param aCmdId Command Id
hgs
parents:
diff changeset
   195
        * @param aCallId Call Id
hgs
parents:
diff changeset
   196
        * @param aMessage Command message
hgs
parents:
diff changeset
   197
        */
hgs
parents:
diff changeset
   198
        void ExecuteCommandL( 
hgs
parents:
diff changeset
   199
            TPhoneViewCommandId /*aCmdId*/, 
hgs
parents:
diff changeset
   200
            TInt /*aCallId*/, 
hgs
parents:
diff changeset
   201
            TDesC& /*aMessage*/ ){}
hgs
parents:
diff changeset
   202
hgs
parents:
diff changeset
   203
        /**
hgs
parents:
diff changeset
   204
        * From MPhoneViewCommandHandle
hgs
parents:
diff changeset
   205
        */    
hgs
parents:
diff changeset
   206
        void ExecuteCommand( 
hgs
parents:
diff changeset
   207
                   TPhoneViewCommandId /*aCmdId*/ ){}
hgs
parents:
diff changeset
   208
                   
hgs
parents:
diff changeset
   209
        /**
hgs
parents:
diff changeset
   210
        * From MPhoneViewCommandHandle
hgs
parents:
diff changeset
   211
        */
hgs
parents:
diff changeset
   212
        void ExecuteCommand( 
hgs
parents:
diff changeset
   213
                   TPhoneViewCommandId aCmdId, 
hgs
parents:
diff changeset
   214
                   TPhoneCommandParam* /*aCommandParam*/ )
hgs
parents:
diff changeset
   215
            {
hgs
parents:
diff changeset
   216
            ExecuteCommandL( aCmdId );
hgs
parents:
diff changeset
   217
            }
hgs
parents:
diff changeset
   218
hgs
parents:
diff changeset
   219
        /**
hgs
parents:
diff changeset
   220
        * Handle Command with given Command Id
hgs
parents:
diff changeset
   221
        * @param aCmdId Command Id
hgs
parents:
diff changeset
   222
        * @return TPhoneViewResponseId
hgs
parents:
diff changeset
   223
        */
hgs
parents:
diff changeset
   224
        TPhoneViewResponseId HandleCommandL( 
hgs
parents:
diff changeset
   225
            TPhoneViewCommandId /*aCmdId*/ ) { return iViewResponseId; }
hgs
parents:
diff changeset
   226
hgs
parents:
diff changeset
   227
        /**
hgs
parents:
diff changeset
   228
        * Handle Command with given command id and command parameter.
hgs
parents:
diff changeset
   229
        * @param aCmdId Command Id
hgs
parents:
diff changeset
   230
        * @param aCommandParam Command parameter
hgs
parents:
diff changeset
   231
        * @return TPhoneViewResponseId
hgs
parents:
diff changeset
   232
        */
hgs
parents:
diff changeset
   233
        TPhoneViewResponseId HandleCommandL( 
hgs
parents:
diff changeset
   234
            TPhoneViewCommandId /*aCmdId*/, 
hgs
parents:
diff changeset
   235
            TPhoneCommandParam* aCommandParam ) 
hgs
parents:
diff changeset
   236
            {
hgs
parents:
diff changeset
   237
            
hgs
parents:
diff changeset
   238
            if ( aCommandParam->ParamId() == 
hgs
parents:
diff changeset
   239
                 TPhoneCommandParam::EPhoneParamIdCallStateData )
hgs
parents:
diff changeset
   240
                {
hgs
parents:
diff changeset
   241
                TPhoneCmdParamCallStateData* stateParam = 
hgs
parents:
diff changeset
   242
                          static_cast<TPhoneCmdParamCallStateData*>( aCommandParam );
hgs
parents:
diff changeset
   243
                     stateParam->SetCallId( iCallId );
hgs
parents:
diff changeset
   244
                }
hgs
parents:
diff changeset
   245
                
hgs
parents:
diff changeset
   246
            return iViewResponseId; }
hgs
parents:
diff changeset
   247
       
hgs
parents:
diff changeset
   248
        /**
hgs
parents:
diff changeset
   249
        * Execute Command with given Command Id
hgs
parents:
diff changeset
   250
        */     
hgs
parents:
diff changeset
   251
         const TDesC& FetchContent() { return KNullDesC();}     
hgs
parents:
diff changeset
   252
   
hgs
parents:
diff changeset
   253
  //helper functions:       
hgs
parents:
diff changeset
   254
         
hgs
parents:
diff changeset
   255
         TInt VerifyViewCommand( const TInt& aCmd )
hgs
parents:
diff changeset
   256
             {
hgs
parents:
diff changeset
   257
             _LIT(KDesC, "Checking command id = %d ");
hgs
parents:
diff changeset
   258
             EUNIT_PRINT( KDesC(), aCmd );
hgs
parents:
diff changeset
   259
             
hgs
parents:
diff changeset
   260
             TInt count = iCmds->Count();
hgs
parents:
diff changeset
   261
             TBool cmdFound = EFalse;
hgs
parents:
diff changeset
   262
             TInt i = 0;
hgs
parents:
diff changeset
   263
             for ( ; i < count; i++ )
hgs
parents:
diff changeset
   264
                 {
hgs
parents:
diff changeset
   265
                 TCmds cmd = iCmds->At(i);
hgs
parents:
diff changeset
   266
                 if( cmd.iCmd == aCmd )  
hgs
parents:
diff changeset
   267
                     {
hgs
parents:
diff changeset
   268
                     cmdFound = ETrue;
hgs
parents:
diff changeset
   269
                     break;
hgs
parents:
diff changeset
   270
                     }
hgs
parents:
diff changeset
   271
                 }
hgs
parents:
diff changeset
   272
             
hgs
parents:
diff changeset
   273
             EUNIT_ASSERT_DESC( cmdFound, "View Command not ok" );
hgs
parents:
diff changeset
   274
             return i;
hgs
parents:
diff changeset
   275
             }
hgs
parents:
diff changeset
   276
hgs
parents:
diff changeset
   277
         void VerifyViewCommandBoolean( const TInt& aCmd, const TBool& aValue )
hgs
parents:
diff changeset
   278
             {
hgs
parents:
diff changeset
   279
             TBool paramOk = EFalse;
hgs
parents:
diff changeset
   280
             
hgs
parents:
diff changeset
   281
             for( TInt j = 0 ; j<iCmds->Count(); j++)
hgs
parents:
diff changeset
   282
                  {
hgs
parents:
diff changeset
   283
                  TCmds cmd = iCmds->At(j);
hgs
parents:
diff changeset
   284
                  if( cmd.iCmd == aCmd )  
hgs
parents:
diff changeset
   285
                      {
hgs
parents:
diff changeset
   286
                      _LIT(KDesC, "Checking command id = %d ");
hgs
parents:
diff changeset
   287
                      EUNIT_PRINT( KDesC(), aCmd );
hgs
parents:
diff changeset
   288
                      
hgs
parents:
diff changeset
   289
                      TPhoneUICommandParam* p = cmd.iP;
hgs
parents:
diff changeset
   290
                      TPhoneCmdParamBoolean* booleanValue =
hgs
parents:
diff changeset
   291
                                        static_cast<TPhoneCmdParamBoolean*>( p );
hgs
parents:
diff changeset
   292
                      TBool val = booleanValue->Boolean();
hgs
parents:
diff changeset
   293
                      if( val == aValue )
hgs
parents:
diff changeset
   294
                          {
hgs
parents:
diff changeset
   295
                          paramOk = ETrue;
hgs
parents:
diff changeset
   296
                          break;
hgs
parents:
diff changeset
   297
                          }
hgs
parents:
diff changeset
   298
                      }
hgs
parents:
diff changeset
   299
                  }
hgs
parents:
diff changeset
   300
             
hgs
parents:
diff changeset
   301
             EUNIT_ASSERT_DESC( paramOk, "View Boolean param not ok" );
hgs
parents:
diff changeset
   302
             }
hgs
parents:
diff changeset
   303
hgs
parents:
diff changeset
   304
         void VerifyViewCommandInteger( const TInt& aCmd, const TInt& aValue )
hgs
parents:
diff changeset
   305
             {
hgs
parents:
diff changeset
   306
             TBool paramOk = EFalse;
hgs
parents:
diff changeset
   307
            
hgs
parents:
diff changeset
   308
             for( TInt j = 0 ; j< iCmds->Count(); j++)
hgs
parents:
diff changeset
   309
                 {
hgs
parents:
diff changeset
   310
                 TCmds cmd = iCmds->At(j);
hgs
parents:
diff changeset
   311
                 if( cmd.iCmd == aCmd )  
hgs
parents:
diff changeset
   312
                     {
hgs
parents:
diff changeset
   313
                     _LIT(KDesC, "Checking command id = %d ");
hgs
parents:
diff changeset
   314
                     EUNIT_PRINT( KDesC(), aCmd );
hgs
parents:
diff changeset
   315
                     TPhoneCmdParamInteger* value = static_cast<TPhoneCmdParamInteger*>( cmd.iP );
hgs
parents:
diff changeset
   316
                     
hgs
parents:
diff changeset
   317
                     if( value->Integer() == aValue )
hgs
parents:
diff changeset
   318
                         {
hgs
parents:
diff changeset
   319
                         paramOk = ETrue;
hgs
parents:
diff changeset
   320
                         break;
hgs
parents:
diff changeset
   321
                         }
hgs
parents:
diff changeset
   322
                     }
hgs
parents:
diff changeset
   323
                 }
hgs
parents:
diff changeset
   324
                 
hgs
parents:
diff changeset
   325
             EUNIT_ASSERT_DESC( paramOk, "View Integer param not ok" );
hgs
parents:
diff changeset
   326
             }
hgs
parents:
diff changeset
   327
hgs
parents:
diff changeset
   328
         void VerifyViewCommandCallHeader( const TInt& aCmd, const TPhoneCmdParamCallHeaderData& aValue )
hgs
parents:
diff changeset
   329
             {
hgs
parents:
diff changeset
   330
             TBool paramOk = EFalse;
hgs
parents:
diff changeset
   331
             
hgs
parents:
diff changeset
   332
             for( TInt j = 0 ; j< iCmds->Count(); j++)
hgs
parents:
diff changeset
   333
                 {
hgs
parents:
diff changeset
   334
                 TCmds cmd = iCmds->At(j);
hgs
parents:
diff changeset
   335
                 if( cmd.iCmd == aCmd )  
hgs
parents:
diff changeset
   336
                     {
hgs
parents:
diff changeset
   337
                     _LIT(KDesC, "Checking command id = %d ");
hgs
parents:
diff changeset
   338
                     EUNIT_PRINT( KDesC(), aCmd );
hgs
parents:
diff changeset
   339
                     TPhoneCmdParamCallHeaderData* value = static_cast<TPhoneCmdParamCallHeaderData*>( cmd.iP );
hgs
parents:
diff changeset
   340
                     if( CheckCallheaderValues( *value, aValue) == KErrNone )
hgs
parents:
diff changeset
   341
                         {
hgs
parents:
diff changeset
   342
                         paramOk = ETrue;
hgs
parents:
diff changeset
   343
                         break;
hgs
parents:
diff changeset
   344
                         }
hgs
parents:
diff changeset
   345
                     }
hgs
parents:
diff changeset
   346
                 }
hgs
parents:
diff changeset
   347
             
hgs
parents:
diff changeset
   348
             EUNIT_ASSERT_DESC( paramOk, "View Call Header param not ok" );
hgs
parents:
diff changeset
   349
             }
hgs
parents:
diff changeset
   350
hgs
parents:
diff changeset
   351
         TInt CheckCallheaderValues(const TPhoneCmdParamCallHeaderData& aActual, 
hgs
parents:
diff changeset
   352
                 const TPhoneCmdParamCallHeaderData& aExpected )
hgs
parents:
diff changeset
   353
             {
hgs
parents:
diff changeset
   354
             EUNIT_PRINT(_L("Checking CallHeaderData"));
hgs
parents:
diff changeset
   355
             if( aActual.CallState() != aExpected.CallState())
hgs
parents:
diff changeset
   356
                 {
hgs
parents:
diff changeset
   357
                 EUNIT_PRINT(_L("CallState does not match."));
hgs
parents:
diff changeset
   358
                 return KErrNotFound;
hgs
parents:
diff changeset
   359
                 }
hgs
parents:
diff changeset
   360
             
hgs
parents:
diff changeset
   361
             if(aActual.Line2() != aExpected.Line2() )
hgs
parents:
diff changeset
   362
                 {
hgs
parents:
diff changeset
   363
                 EUNIT_PRINT(_L("Line2 does not match."));
hgs
parents:
diff changeset
   364
                 return KErrNotFound;
hgs
parents:
diff changeset
   365
                 }
hgs
parents:
diff changeset
   366
                 
hgs
parents:
diff changeset
   367
             return KErrNone;
hgs
parents:
diff changeset
   368
             }
hgs
parents:
diff changeset
   369
hgs
parents:
diff changeset
   370
         void SetViewGetCountOfActiveCalls( TInt aValue )
hgs
parents:
diff changeset
   371
             {
hgs
parents:
diff changeset
   372
             iActiveCallCount = aValue;
hgs
parents:
diff changeset
   373
             }
hgs
parents:
diff changeset
   374
hgs
parents:
diff changeset
   375
hgs
parents:
diff changeset
   376
         void SetViewGetCallExistsInConference( TInt aValue )
hgs
parents:
diff changeset
   377
             {
hgs
parents:
diff changeset
   378
             iCallExistsInConference = aValue;
hgs
parents:
diff changeset
   379
             }         
hgs
parents:
diff changeset
   380
         
hgs
parents:
diff changeset
   381
         void ResetCommands()
hgs
parents:
diff changeset
   382
             {
hgs
parents:
diff changeset
   383
             if(iCmds)
hgs
parents:
diff changeset
   384
                 {
hgs
parents:
diff changeset
   385
                 for(TInt i = 0; i<iCmds->Count(); i++)
hgs
parents:
diff changeset
   386
                     {
hgs
parents:
diff changeset
   387
                     TCmds t = iCmds->At(i);
hgs
parents:
diff changeset
   388
                     delete t.iP;
hgs
parents:
diff changeset
   389
                 
hgs
parents:
diff changeset
   390
                     }
hgs
parents:
diff changeset
   391
                 iCmds->Reset();
hgs
parents:
diff changeset
   392
                 }
hgs
parents:
diff changeset
   393
             }         
hgs
parents:
diff changeset
   394
    public: // members 
hgs
parents:
diff changeset
   395
         TPhoneViewResponseId iViewResponseId;
hgs
parents:
diff changeset
   396
         CArrayFixFlat<TCmds>* iCmds;
hgs
parents:
diff changeset
   397
         TInt                  iCallId;
hgs
parents:
diff changeset
   398
         TInt                  iActiveCallCount;
hgs
parents:
diff changeset
   399
         TBool                 iCallExistsInConference;
hgs
parents:
diff changeset
   400
         TBool                 iHoldFlag; 
hgs
parents:
diff changeset
   401
    };
hgs
parents:
diff changeset
   402