uifw/AvKon/tsrc/bc/bctestdom3.2/bctestdomavkonpsln/src/bctestdomjplangcase.cpp
changeset 21 558113899881
parent 14 3320e4e6e8bb
child 22 75713bee6484
child 33 b3425bf29f82
equal deleted inserted replaced
14:3320e4e6e8bb 21:558113899881
     1 /*
       
     2 * Copyright (c) 2007 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:  ?Description
       
    15 *
       
    16 */
       
    17 
       
    18 
       
    19 #include <w32std.h>
       
    20 #include <coecntrl.h>
       
    21 #include <jplangutil.h>
       
    22 #include <numbergrouping.h>
       
    23 #include <genericparamconsumer.h>
       
    24 #include <aiwgenericparam.h>
       
    25 
       
    26 
       
    27 #include <bctestdomavkonpsln.rsg>
       
    28 
       
    29 #include "bctestdomjplangcase.h"
       
    30 #include "bctestdomavkonpslncontainer.h"
       
    31 #include "bctestdomavkonpslnext.h"
       
    32 #include "bctestdomavkonpsln.hrh"
       
    33 
       
    34 //CONSTANTS
       
    35 
       
    36 const TInt KDesLength = 24;
       
    37 _LIT( KText, "Text" );
       
    38 
       
    39 // ======== MEMBER FUNCTIONS ========
       
    40 
       
    41 // ---------------------------------------------------------------------------
       
    42 // Symbian 2nd static Constructor
       
    43 // ---------------------------------------------------------------------------
       
    44 //
       
    45 CBCTestDomJPLangCase* CBCTestDomJPLangCase::NewL( CBCTestDomAvkonPslnContainer* 
       
    46     aContainer )
       
    47     {
       
    48     CBCTestDomJPLangCase* self = new( ELeave ) CBCTestDomJPLangCase( 
       
    49         aContainer );
       
    50     CleanupStack::PushL( self );
       
    51     self->ConstructL();
       
    52     CleanupStack::Pop( self );
       
    53     return self;
       
    54     }
       
    55     
       
    56 // ---------------------------------------------------------------------------
       
    57 // C++ default constructor
       
    58 // ---------------------------------------------------------------------------
       
    59 //
       
    60 CBCTestDomJPLangCase::CBCTestDomJPLangCase( CBCTestDomAvkonPslnContainer* 
       
    61     aContainer )
       
    62     : iContainer( aContainer )
       
    63     {    
       
    64     }
       
    65     
       
    66 // ---------------------------------------------------------------------------
       
    67 // Destructor
       
    68 // ---------------------------------------------------------------------------
       
    69 //
       
    70 CBCTestDomJPLangCase::~CBCTestDomJPLangCase()
       
    71     {  
       
    72     }
       
    73     
       
    74 // ---------------------------------------------------------------------------
       
    75 // Symbian 2nd Constructor
       
    76 // ---------------------------------------------------------------------------
       
    77 //
       
    78 void CBCTestDomJPLangCase::ConstructL()
       
    79     {    
       
    80     BuildScriptL();    
       
    81     }
       
    82     
       
    83 // ---------------------------------------------------------------------------
       
    84 // CBCTestDomJPLangCase::BuildScriptL
       
    85 // ---------------------------------------------------------------------------
       
    86 //
       
    87 void CBCTestDomJPLangCase::BuildScriptL()
       
    88     { 
       
    89     const TInt scripts[] =
       
    90         {
       
    91         DELAY(1),        // delay between commands is 1*0.1 seconds = 0.1 seconds
       
    92         LeftCBA,
       
    93         REP( Down, 3 ),
       
    94         KeyOK,
       
    95         TEND
       
    96         };
       
    97     AddTestScriptL( scripts, sizeof(scripts)/sizeof(TInt) );  
       
    98     }
       
    99     
       
   100 // ---------------------------------------------------------------------------
       
   101 // CBCTestDomJPLangCase::RunL
       
   102 // ---------------------------------------------------------------------------
       
   103 //
       
   104 void CBCTestDomJPLangCase::RunL( TInt aCmd )
       
   105     {
       
   106     if ( aCmd != EBCTestCmdOutline4 )
       
   107         {
       
   108         return;
       
   109         }
       
   110     switch ( aCmd )  
       
   111         {
       
   112         case EBCTestCmdOutline4:
       
   113             TestJPLangUtilL();
       
   114             TestNumberGroupL();
       
   115             TestGenericParamConsumerL();
       
   116             break;
       
   117         default:
       
   118             break;
       
   119         }
       
   120     }
       
   121     
       
   122 // ---------------------------------------------------------------------------
       
   123 // CBCTestDomJPLangCase::TestLayoutDecorator
       
   124 // ---------------------------------------------------------------------------
       
   125 //    
       
   126 void CBCTestDomJPLangCase::TestJPLangUtilL()
       
   127     {
       
   128     // Test some API here
       
   129     
       
   130     _LIT( KConvertHalfToFullWidth, 
       
   131         "JPLangUtil::ConvertHalfToFullWidth() invoked" );
       
   132     _LIT( KConvertFullToHalfWidth, 
       
   133         "JPLangUtil::ConvertFullToHalfWidth() invoked" );
       
   134     _LIT( KConvertHalfToFullWidthKatakana, 
       
   135         "JPLangUtil::ConvertHalfToFullWidthKatakana() invoked" );
       
   136     _LIT( KConvertFullHiragnaToFullKatakana, 
       
   137         "JPLangUtil::ConvertFullHiragnaToFullKatakana() invoked" );
       
   138     _LIT( KIsKatakana, "JPLangUtil::IsKatakana() invoked" );    
       
   139     _LIT( KIsHiragana, "JPLangUtil::IsHiragana() invoked" );    
       
   140     _LIT( KIsKanji, "JPLangUtil::IsKanji() invoked" );        
       
   141     _LIT( KIsHalfWidth, "JPLangUtil::IsKanji() invoked" );    
       
   142     _LIT( KIsFullWidth, "JPLangUtil::IsFullWidth() invoked" );    
       
   143     
       
   144     TBuf<KDesLength> unisrc( KText );
       
   145     TBuf<KDesLength> unides;                
       
   146     JPLangUtil::ConvertHalfToFullWidth( unisrc, unides );
       
   147     AssertTrueL( ETrue, KConvertHalfToFullWidth );
       
   148     
       
   149     JPLangUtil::ConvertFullToHalfWidth( unisrc, unides );
       
   150     AssertTrueL( ETrue, KConvertFullToHalfWidth );
       
   151     
       
   152     JPLangUtil::ConvertHalfToFullWidthKatakana( unisrc, unides );
       
   153     AssertTrueL( ETrue, KConvertHalfToFullWidthKatakana );
       
   154 
       
   155     JPLangUtil::ConvertFullToHalfWidthKatakana( unisrc, unides );
       
   156     AssertTrueL( ETrue, KConvertHalfToFullWidthKatakana );
       
   157     
       
   158     JPLangUtil::ConvertFullHiragnaToFullKatakana( unisrc, unides );
       
   159     AssertTrueL( ETrue, KConvertFullHiragnaToFullKatakana );
       
   160     
       
   161     JPLangUtil::IsKatakana( *unisrc.Ptr() );
       
   162     AssertTrueL( ETrue, KIsKatakana );
       
   163     
       
   164     JPLangUtil::IsHiragana( *unisrc.Ptr() );
       
   165     AssertTrueL( ETrue, KIsHiragana );
       
   166     
       
   167     JPLangUtil::IsKanji( *unisrc.Ptr() );
       
   168     AssertTrueL( ETrue, KIsKanji );
       
   169     
       
   170     JPLangUtil::IsHalfWidth( *unisrc.Ptr() );
       
   171     AssertTrueL( ETrue, KIsHalfWidth );
       
   172     
       
   173     JPLangUtil::IsFullWidth( *unisrc.Ptr() );
       
   174     AssertTrueL( ETrue, KIsFullWidth );
       
   175     
       
   176     }
       
   177  
       
   178 // ---------------------------------------------------------------------------
       
   179 // CBCTestDomJPLangCase::TestNumberGroupL()
       
   180 // ---------------------------------------------------------------------------
       
   181 //       
       
   182 void CBCTestDomJPLangCase::TestNumberGroupL()
       
   183     {
       
   184     
       
   185     _LIT( KNewL, "CPNGNumberGrouping::NewL() invoked" );
       
   186     _LIT( KDes, "CPNGNumberGrouping::~CPNGNumberGrouping() invokde" );
       
   187     _LIT( KNewLC, "CPNGNumberGrouping::NewLC() invoked" );
       
   188     _LIT( KInsert, "CPNGNumberGrouping::Insert() invoked" );
       
   189     _LIT( KDelete, "CPNGNumberGrouping::Delete() invoked" );
       
   190     _LIT( KAppend, "CPNGNumberGrouping::Append() invoked" );
       
   191     _LIT( KSet, "CPNGNumberGrouping::Set() invoked" );
       
   192     _LIT( KUnFormattedLength, 
       
   193         "CPNGNumberGrouping::UnFormattedLength() invoked" );
       
   194     _LIT( KMaxDisplayLength, 
       
   195         "CPNGNumberGrouping::MaxDisplayLength() invoked" );
       
   196     _LIT( KIsSpace, "CPNGNumberGrouping::IsSpace() invoked" );
       
   197     
       
   198     _LIT( KFormattedNumber, 
       
   199         "CPNGNumberGrouping::FormattedNumber() invoked" );
       
   200     _LIT( KFormattedNumberOverLoad, 
       
   201         "CPNGNumberGrouping::FormattedNumber() overload invoked" );
       
   202     _LIT( KReverseFormattedNumber, 
       
   203         "CPNGNumberGrouping::ReverseFormattedNumber() invoked" );
       
   204     _LIT( KReverseFormattedNumberOverLoad, 
       
   205         "CPNGNumberGrouping::ReverseFormattedNumber() overload invoked" );
       
   206     _LIT( KSelection, 
       
   207         "CPNGNumberGrouping::Selection() invoked" );
       
   208     _LIT( KUnFormattedNumber, 
       
   209         "CPNGNumberGrouping::UnFormattedNumber() invoked" );
       
   210     _LIT( KIsCharacterInsertedByNumberGrouping, 
       
   211         "CPNGNumberGrouping::IsCharacterInsertedByNumberGrouping() invoked" );
       
   212     _LIT( KIsChangedByGrouping, 
       
   213         "CPNGNumberGrouping::IsChangedByGrouping() overload invoked" );
       
   214     
       
   215     CPNGNumberGrouping* group = CPNGNumberGrouping::NewL();
       
   216     CleanupStack::PushL( group );
       
   217     AssertNotNullL( group, KNewL );
       
   218     
       
   219     CleanupStack::Pop( group );
       
   220     delete group;
       
   221     group = NULL;
       
   222     AssertTrueL( ETrue, KDes );
       
   223     
       
   224     group = CPNGNumberGrouping::NewLC();
       
   225     AssertNotNullL( group, KNewLC );
       
   226     
       
   227     const TInt index = 0;
       
   228     TText chr( 'a' );
       
   229     TBuf<KDesLength>  numstr( KText );
       
   230     
       
   231     group->Insert( index, chr );
       
   232     AssertTrueL( ETrue, KInsert );
       
   233     
       
   234     group->Delete( index );
       
   235     AssertTrueL( ETrue, KDelete );
       
   236     
       
   237     group->Append( chr );
       
   238     AssertTrueL( ETrue, KAppend );
       
   239     
       
   240     group->Set( numstr );
       
   241     AssertTrueL( ETrue, KSet );
       
   242     
       
   243     group->UnFormattedLength();
       
   244     AssertTrueL( ETrue, KUnFormattedLength );
       
   245     
       
   246     group->MaxDisplayLength();
       
   247     AssertTrueL( ETrue, KMaxDisplayLength );
       
   248     
       
   249     group->IsSpace( index );
       
   250     AssertTrueL( ETrue, KIsSpace );
       
   251     
       
   252     group->FormattedNumber( index, index );
       
   253     AssertTrueL( ETrue, KFormattedNumber );
       
   254     
       
   255     group->FormattedNumber();
       
   256     AssertTrueL( ETrue, KFormattedNumberOverLoad );
       
   257     
       
   258     group->ReverseFormattedNumber( index, index );
       
   259     AssertTrueL( ETrue, KReverseFormattedNumber );
       
   260     
       
   261     group->ReverseFormattedNumber();
       
   262     AssertTrueL( ETrue, KReverseFormattedNumberOverLoad );
       
   263     
       
   264     group->Selection( index, index );
       
   265     AssertTrueL( ETrue, KIsSpace );
       
   266     
       
   267     group->UnFormattedNumber( index, index );
       
   268     AssertTrueL( ETrue, KSelection );
       
   269     
       
   270     group->UnFormattedNumber();
       
   271     AssertTrueL( ETrue, KUnFormattedNumber );
       
   272     
       
   273     group->IsCharacterInsertedByNumberGrouping( index );
       
   274     AssertTrueL( ETrue, KIsCharacterInsertedByNumberGrouping );
       
   275     
       
   276     group->IsChangedByGrouping();
       
   277     AssertTrueL( ETrue, KIsChangedByGrouping );
       
   278     
       
   279     CleanupStack::PopAndDestroy( group );
       
   280     
       
   281     }
       
   282     
       
   283 // ---------------------------------------------------------------------------
       
   284 // CBCTestDomJPLangCase::TestGenericParamConsumerL()
       
   285 // ---------------------------------------------------------------------------
       
   286 //    
       
   287 void CBCTestDomJPLangCase::TestGenericParamConsumerL()
       
   288     {
       
   289     
       
   290     _LIT( KAiwGenericParamConsumer, 
       
   291         "CAiwGenericParamConsumer::CAiwGenericParamConsumer() invoked" );
       
   292     _LIT( KDes, 
       
   293         "CAiwGenericParamConsumer::~CAiwGenericParamConsumer() invoked" );
       
   294     _LIT( KRestoreL, 
       
   295         "CAiwGenericParamConsumer::RestoreL() invoked" );
       
   296         
       
   297     CEikAppUi* appui = static_cast<CEikAppUi*>( CCoeEnv::Static()->AppUi() );
       
   298     CAiwGenericParamConsumerExt* consumer = 
       
   299         new ( ELeave ) CAiwGenericParamConsumerExt( *appui->Application() );
       
   300     CleanupStack::PushL( consumer );
       
   301     AssertNotNullL( consumer, KAiwGenericParamConsumer );
       
   302     
       
   303     CAiwGenericParamList* list = CAiwGenericParamList::NewL();
       
   304     CleanupStack::PushL( list );
       
   305     TRAP_IGNORE( consumer->SetOutputParamsL( list ) );
       
   306 
       
   307     CEikDocument* doc = CEikonEnv::Static()->EikAppUi()->Document();
       
   308     CStreamStore* strm = doc->EditStore();
       
   309     CStreamDictionary* dict = CStreamDictionary::NewLC();
       
   310     TRAP_IGNORE( consumer->RestoreL( *strm, *dict ) );
       
   311     AssertTrueL( ETrue, KRestoreL );
       
   312      
       
   313     CleanupStack::PopAndDestroy( dict );
       
   314     CleanupStack::PopAndDestroy( list );
       
   315     CleanupStack::PopAndDestroy( consumer );
       
   316     AssertTrueL( ETrue, KDes );
       
   317     }
       
   318  //end of file