classicui_pub/popups_api/tsrc/src/testsdkpopupsblockscpf.cpp
changeset 0 2f259fa3e83a
equal deleted inserted replaced
-1:000000000000 0:2f259fa3e83a
       
     1 /*
       
     2 * Copyright (c) 2002 - 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:  test AknPopupField.h 
       
    15 *
       
    16 */
       
    17 
       
    18 
       
    19 
       
    20 // [INCLUDE FILES]
       
    21 
       
    22 #include <aknpopupfield.h> 
       
    23 #include <barsread.h>
       
    24 #include <coemain.h>
       
    25 #include <aknqueryvaluetext.h> 
       
    26 #include <eikenv.h>
       
    27 #include <aknlists.h>
       
    28 #include <aknform.h>
       
    29 #include <testsdkpopups.rsg>
       
    30 
       
    31 #include "testsdkpopups.hrh"
       
    32 #include "testsdkpopups.h"
       
    33 #include "testsdkpopupspf.h"
       
    34 #include "testsdkpopupscpf.h"
       
    35 
       
    36 const TInt KLength = 20;
       
    37 // ============================ MEMBER FUNCTIONS ===============================
       
    38 
       
    39 // -----------------------------------------------------------------------------
       
    40 // CTestSDKPopups::TestCPFCAknPopupFieldL
       
    41 // -----------------------------------------------------------------------------
       
    42 //
       
    43 TInt CTestSDKPopups::TestCPFCAknPopupFieldL( CStifItemParser& /*aItem*/ )
       
    44     {
       
    45     CAknPopupField* field = new (ELeave) CAknPopupField;
       
    46     CleanupStack::PushL( field );
       
    47     STIF_ASSERT_NOT_NULL( field );
       
    48     
       
    49     CleanupStack::PopAndDestroy( field );
       
    50     
       
    51     return KErrNone;
       
    52     
       
    53     }
       
    54 
       
    55 // -----------------------------------------------------------------------------
       
    56 // CTestSDKPopups::TestCPFDeconstructorL
       
    57 // -----------------------------------------------------------------------------
       
    58 //
       
    59 TInt CTestSDKPopups::TestCPFDeconstructorL( CStifItemParser& /*aItem*/ )
       
    60     {
       
    61     CAknPopupField* field = new (ELeave) CAknPopupField;
       
    62     CleanupStack::PushL( field );
       
    63     STIF_ASSERT_NOT_NULL( field );
       
    64     
       
    65     CleanupStack::Pop( field );
       
    66     delete field;
       
    67     
       
    68     return KErrNone;
       
    69     
       
    70     }
       
    71 
       
    72 // -----------------------------------------------------------------------------
       
    73 // CTestSDKPopups::TestCPFConstructL
       
    74 // -----------------------------------------------------------------------------
       
    75 //
       
    76 TInt CTestSDKPopups::TestCPFConstructL( CStifItemParser& /*aItem*/ )
       
    77     {
       
    78     CAknPopupField* field = new (ELeave) CAknPopupField;
       
    79     CleanupStack::PushL( field );
       
    80     STIF_ASSERT_NOT_NULL( field );
       
    81     
       
    82     TResourceReader reader;
       
    83     CCoeEnv::Static()->CreateResourceReaderLC(reader, R_TESTSDK_POPUPSFIELD );
       
    84     field->ConstructFromResourceL( reader );
       
    85     
       
    86     _LIT( KEmptyText, "EmptyText" );
       
    87     TBuf<KLength> emptyText( KEmptyText );
       
    88     field->SetEmptyTextL( emptyText );
       
    89     
       
    90     _LIT( KInvalidText, "InvalidText" );
       
    91     TBuf<KLength> invalidText( KInvalidText );
       
    92     field->SetInvalidTextL( invalidText );
       
    93     
       
    94     field->ConstructL();
       
    95     
       
    96     CleanupStack::PopAndDestroy();
       
    97     CleanupStack::PopAndDestroy( field );
       
    98     
       
    99     return KErrNone;
       
   100     
       
   101     }
       
   102 
       
   103 // -----------------------------------------------------------------------------
       
   104 // CTestSDKPopups::TestCPFSetAllowsUserDefinedEntryL
       
   105 // -----------------------------------------------------------------------------
       
   106 //
       
   107 TInt CTestSDKPopups::TestCPFSetAllowsUserDefinedEntryL( CStifItemParser& /*aItem*/ )
       
   108     {
       
   109     CAknPopupField* field = new (ELeave) CAknPopupField;
       
   110     CleanupStack::PushL( field );
       
   111     STIF_ASSERT_NOT_NULL( field );
       
   112     
       
   113     TResourceReader reader;
       
   114     CCoeEnv::Static()->CreateResourceReaderLC(reader, R_TESTSDK_POPUPSFIELD );
       
   115     field->ConstructFromResourceL( reader );
       
   116     CleanupStack::PopAndDestroy();
       
   117     
       
   118     field->SetAllowsUserDefinedEntry( EFalse );
       
   119     field->SetAllowsUserDefinedEntry( ETrue );
       
   120     
       
   121     CleanupStack::PopAndDestroy( field );
       
   122     
       
   123     return KErrNone;
       
   124     
       
   125     }
       
   126 
       
   127 // -----------------------------------------------------------------------------
       
   128 // CTestSDKPopups::TestCPFActivateSelectionListL
       
   129 // -----------------------------------------------------------------------------
       
   130 //
       
   131 TInt CTestSDKPopups::TestCPFActivateSelectionListL( CStifItemParser& /*aItem*/ )
       
   132     {
       
   133     CAknPopupField* field = new (ELeave) CAknPopupField;
       
   134     CleanupStack::PushL( field );
       
   135     STIF_ASSERT_NOT_NULL( field );
       
   136     
       
   137     TResourceReader reader;
       
   138     CCoeEnv::Static()->CreateResourceReaderLC(reader, R_TESTSDK_POPUPSFIELD );
       
   139     field->ConstructFromResourceL( reader );
       
   140     CleanupStack::PopAndDestroy();
       
   141     
       
   142     field->SetEmptyListNoteL( R_TESTSDK_LISTNOTE );
       
   143     field->ActivateSelectionListL();
       
   144     
       
   145     CleanupStack::PopAndDestroy( field );
       
   146     
       
   147     return KErrNone;
       
   148     
       
   149     }
       
   150 
       
   151 // -----------------------------------------------------------------------------
       
   152 // CTestSDKPopups::TestCPFSetQueryValueL
       
   153 // -----------------------------------------------------------------------------
       
   154 //
       
   155 TInt CTestSDKPopups::TestCPFSetQueryValueL( CStifItemParser& /*aItem*/ )
       
   156     {
       
   157     CAknPopupField* field = new (ELeave) CAknPopupField;
       
   158     CleanupStack::PushL( field );
       
   159     STIF_ASSERT_NOT_NULL( field );
       
   160     
       
   161     TResourceReader reader;
       
   162     CCoeEnv::Static()->CreateResourceReaderLC(reader, R_TESTSDK_POPUPSFIELD );
       
   163     field->ConstructFromResourceL( reader );
       
   164     CleanupStack::PopAndDestroy();
       
   165     
       
   166     _LIT( KArrayContent, "test" );
       
   167     CAknQueryValueText* queryValue = CAknQueryValueText::NewL();
       
   168     CleanupStack::PushL( queryValue );
       
   169     CAknQueryValueTextArray* array = CAknQueryValueTextArray::NewL();
       
   170     CleanupStack::PushL( array );
       
   171     CDesC16ArrayFlat* temp = new (ELeave) CDesC16ArrayFlat(1);
       
   172     CleanupStack::PushL( temp );
       
   173     temp->AppendL( KArrayContent );
       
   174     array->SetArray( *temp );
       
   175     queryValue->SetArrayL( array );
       
   176     field->SetQueryValueL( queryValue );
       
   177     
       
   178     CleanupStack::PopAndDestroy( temp );
       
   179     CleanupStack::PopAndDestroy( array );
       
   180     CleanupStack::PopAndDestroy( queryValue );
       
   181     CleanupStack::PopAndDestroy( field );
       
   182     
       
   183     return KErrNone;
       
   184     
       
   185     }
       
   186 
       
   187 // -----------------------------------------------------------------------------
       
   188 // CTestSDKPopups::TestCPFSetFontL
       
   189 // -----------------------------------------------------------------------------
       
   190 //
       
   191 TInt CTestSDKPopups::TestCPFSetFontL( CStifItemParser& /*aItem*/ )
       
   192     {
       
   193     CAknPopupField* field = new (ELeave) CAknPopupField;
       
   194     CleanupStack::PushL( field );
       
   195     STIF_ASSERT_NOT_NULL( field );
       
   196     
       
   197     TResourceReader reader;
       
   198     CCoeEnv::Static()->CreateResourceReaderLC(reader, R_TESTSDK_POPUPSFIELD );
       
   199     field->ConstructFromResourceL( reader );
       
   200     CleanupStack::PopAndDestroy();
       
   201     
       
   202     const CFont* font = CEikonEnv::Static()->LegendFont();
       
   203     field->SetFont( font );
       
   204     
       
   205     CleanupStack::PopAndDestroy( field );
       
   206     
       
   207     return KErrNone;
       
   208     
       
   209     }
       
   210 
       
   211 // -----------------------------------------------------------------------------
       
   212 // CTestSDKPopups::TestCPFSetShowIndicatorsL
       
   213 // -----------------------------------------------------------------------------
       
   214 //
       
   215 TInt CTestSDKPopups::TestCPFSetShowIndicatorsL( CStifItemParser& /*aItem*/ )
       
   216     {
       
   217     CAknPopupField* field = new (ELeave) CAknPopupField;
       
   218     CleanupStack::PushL( field );
       
   219     STIF_ASSERT_NOT_NULL( field );
       
   220     
       
   221     TResourceReader reader;
       
   222     CCoeEnv::Static()->CreateResourceReaderLC(reader, R_TESTSDK_POPUPSFIELD );
       
   223     field->ConstructFromResourceL( reader );
       
   224     CleanupStack::PopAndDestroy();
       
   225     
       
   226     field->SetShowIndicatorsL( EFalse );
       
   227     field->SetShowIndicatorsL( ETrue );
       
   228     
       
   229     CleanupStack::PopAndDestroy( field );
       
   230     
       
   231     return KErrNone;
       
   232     
       
   233     }
       
   234 
       
   235 // -----------------------------------------------------------------------------
       
   236 // CTestSDKPopups::TestCPFNumLinesL
       
   237 // -----------------------------------------------------------------------------
       
   238 //
       
   239 TInt CTestSDKPopups::TestCPFNumLinesL( CStifItemParser& /*aItem*/ )
       
   240     {
       
   241     CAknPopupField* field = new (ELeave) CAknPopupField;
       
   242     CleanupStack::PushL( field );
       
   243     STIF_ASSERT_NOT_NULL( field );
       
   244     
       
   245     TResourceReader reader;
       
   246     CCoeEnv::Static()->CreateResourceReaderLC(reader, R_TESTSDK_POPUPSFIELD );
       
   247     field->ConstructFromResourceL( reader );
       
   248     CleanupStack::PopAndDestroy();
       
   249     
       
   250     TInt num = field->NumLines();
       
   251     STIF_ASSERT_EQUALS( 1, num );
       
   252     
       
   253     CleanupStack::PopAndDestroy( field );
       
   254     
       
   255     return KErrNone;
       
   256     
       
   257     }
       
   258 
       
   259 // -----------------------------------------------------------------------------
       
   260 // CTestSDKPopups::TestCPFSetPopupFieldObserverL
       
   261 // -----------------------------------------------------------------------------
       
   262 //
       
   263 TInt CTestSDKPopups::TestCPFSetPopupFieldObserverL( CStifItemParser& /*aItem*/ )
       
   264     {
       
   265     CTestSDKPopupsPF* observer = new (ELeave) CTestSDKPopupsPF;
       
   266     CleanupStack::PushL( observer );
       
   267     STIF_ASSERT_NOT_NULL( observer );
       
   268     
       
   269     CAknPopupField* field = new (ELeave) CAknPopupField;
       
   270     CleanupStack::PushL( field );
       
   271     STIF_ASSERT_NOT_NULL( field );
       
   272     
       
   273     TResourceReader reader;
       
   274     CCoeEnv::Static()->CreateResourceReaderLC(reader, R_TESTSDK_POPUPSFIELD );
       
   275     field->ConstructFromResourceL( reader );
       
   276     CleanupStack::PopAndDestroy();
       
   277     
       
   278     field->SetPopupFieldObserver( observer );
       
   279     
       
   280     CleanupStack::PopAndDestroy( field );
       
   281     CleanupStack::PopAndDestroy( observer );
       
   282     
       
   283     return KErrNone;
       
   284     
       
   285     }
       
   286 
       
   287 // -----------------------------------------------------------------------------
       
   288 // CTestSDKPopups::TestCPFSetEmptyListNoteL
       
   289 // -----------------------------------------------------------------------------
       
   290 //
       
   291 TInt CTestSDKPopups::TestCPFSetEmptyListNoteL( CStifItemParser& aItem )
       
   292     {
       
   293     return TestCPFActivateSelectionListL( aItem );
       
   294     
       
   295     }
       
   296 
       
   297 // -----------------------------------------------------------------------------
       
   298 // CTestSDKPopups::TestCPFSetEmptyTextL
       
   299 // -----------------------------------------------------------------------------
       
   300 //
       
   301 TInt CTestSDKPopups::TestCPFSetEmptyTextL( CStifItemParser& /*aItem*/ )
       
   302     {
       
   303     CAknPopupField* field = new (ELeave) CAknPopupField;
       
   304     CleanupStack::PushL( field );
       
   305     STIF_ASSERT_NOT_NULL( field );
       
   306     
       
   307     TResourceReader reader;
       
   308     CCoeEnv::Static()->CreateResourceReaderLC(reader, R_TESTSDK_POPUPSFIELD );
       
   309     field->ConstructFromResourceL( reader );
       
   310     CleanupStack::PopAndDestroy();
       
   311     
       
   312     _LIT( KEmptyText, "EmptyText" );
       
   313     TBuf<KLength> emptyText( KEmptyText );
       
   314     field->SetEmptyTextL( emptyText );
       
   315     
       
   316     CleanupStack::PopAndDestroy( field );
       
   317     
       
   318     return KErrNone;
       
   319     
       
   320     }
       
   321 
       
   322 // -----------------------------------------------------------------------------
       
   323 // CTestSDKPopups::TestCPFSetOtherTextL
       
   324 // -----------------------------------------------------------------------------
       
   325 //
       
   326 TInt CTestSDKPopups::TestCPFSetOtherTextL( CStifItemParser& /*aItem*/ )
       
   327     {
       
   328     CAknPopupField* field = new (ELeave) CAknPopupField;
       
   329     CleanupStack::PushL( field );
       
   330     STIF_ASSERT_NOT_NULL( field );
       
   331     
       
   332     TResourceReader reader;
       
   333     CCoeEnv::Static()->CreateResourceReaderLC(reader, R_TESTSDK_POPUPSFIELD );
       
   334     field->ConstructFromResourceL( reader );
       
   335     CleanupStack::PopAndDestroy();
       
   336     
       
   337     _LIT( KOtherText, "OtherText" );
       
   338     TBuf<KLength> otherText( KOtherText );
       
   339     field->SetOtherTextL( otherText );
       
   340     
       
   341     CleanupStack::PopAndDestroy( field );
       
   342     
       
   343     return KErrNone;
       
   344     
       
   345     }
       
   346 
       
   347 // -----------------------------------------------------------------------------
       
   348 // CTestSDKPopups::TestCPFSetInvalidTextL
       
   349 // -----------------------------------------------------------------------------
       
   350 //
       
   351 TInt CTestSDKPopups::TestCPFSetInvalidTextL( CStifItemParser& /*aItem*/ )
       
   352     {
       
   353     CAknPopupField* field = new (ELeave) CAknPopupField;
       
   354     CleanupStack::PushL( field );
       
   355     STIF_ASSERT_NOT_NULL( field );
       
   356     
       
   357     TResourceReader reader;
       
   358     CCoeEnv::Static()->CreateResourceReaderLC(reader, R_TESTSDK_POPUPSFIELD );
       
   359     field->ConstructFromResourceL( reader );
       
   360     CleanupStack::PopAndDestroy();
       
   361     
       
   362     _LIT( KInvalidText, "InvalidText" );
       
   363     TBuf<KLength> invalidText( KInvalidText );
       
   364     field->SetInvalidTextL( invalidText );
       
   365     
       
   366     CleanupStack::PopAndDestroy( field );
       
   367     
       
   368     return KErrNone;
       
   369     
       
   370     }
       
   371 
       
   372 // -----------------------------------------------------------------------------
       
   373 // CTestSDKPopups::TestCPFOfferKeyEventL
       
   374 // -----------------------------------------------------------------------------
       
   375 //
       
   376 TInt CTestSDKPopups::TestCPFOfferKeyEventL( CStifItemParser& /*aItem*/ )
       
   377     {
       
   378     CAknPopupField* field = new (ELeave) CAknPopupField;
       
   379     CleanupStack::PushL( field );
       
   380     STIF_ASSERT_NOT_NULL( field );
       
   381     
       
   382     TResourceReader reader;
       
   383     CCoeEnv::Static()->CreateResourceReaderLC(reader, R_TESTSDK_POPUPSFIELD );
       
   384     field->ConstructFromResourceL( reader );
       
   385     CleanupStack::PopAndDestroy();
       
   386     
       
   387     TKeyEvent keyEvent;
       
   388     keyEvent.iCode = EKeyDevice1;
       
   389     STIF_ASSERT_TRUE( EKeyWasNotConsumed == field->OfferKeyEventL( keyEvent, EEventKey ) );
       
   390     
       
   391     CleanupStack::PopAndDestroy( field );
       
   392     
       
   393     return KErrNone;
       
   394     
       
   395     }
       
   396 
       
   397 // -----------------------------------------------------------------------------
       
   398 // CTestSDKPopups::TestCPFConstructFromResourceL
       
   399 // -----------------------------------------------------------------------------
       
   400 //
       
   401 TInt CTestSDKPopups::TestCPFConstructFromResourceL( CStifItemParser& /*aItem*/ )
       
   402     {
       
   403     CAknPopupField* field = new (ELeave) CAknPopupField;
       
   404     CleanupStack::PushL( field );
       
   405     STIF_ASSERT_NOT_NULL( field );
       
   406     
       
   407     TResourceReader reader;
       
   408     CCoeEnv::Static()->CreateResourceReaderLC(reader, R_TESTSDK_POPUPSFIELD );
       
   409     field->ConstructFromResourceL( reader );
       
   410     CleanupStack::PopAndDestroy();
       
   411     
       
   412     CleanupStack::PopAndDestroy( field );
       
   413     
       
   414     return KErrNone;
       
   415     
       
   416     }
       
   417 
       
   418 // -----------------------------------------------------------------------------
       
   419 // CTestSDKPopups::TestCPFMinimumSizeL
       
   420 // -----------------------------------------------------------------------------
       
   421 //
       
   422 TInt CTestSDKPopups::TestCPFMinimumSizeL( CStifItemParser& /*aItem*/ )
       
   423     {
       
   424     CAknPopupField* field = new (ELeave) CAknPopupField;
       
   425     CleanupStack::PushL( field );
       
   426     STIF_ASSERT_NOT_NULL( field );
       
   427     
       
   428     TResourceReader reader;
       
   429     CCoeEnv::Static()->CreateResourceReaderLC(reader, R_TESTSDK_POPUPSFIELD );
       
   430     field->ConstructFromResourceL( reader );
       
   431     CleanupStack::PopAndDestroy();
       
   432     
       
   433     TSize size = field->MinimumSize();
       
   434     TPoint point = size.AsPoint();
       
   435     STIF_ASSERT_EQUALS( 0, point.iX );
       
   436     STIF_ASSERT_NOT_EQUALS( 0, point.iY );
       
   437     
       
   438     CleanupStack::PopAndDestroy( field );
       
   439     
       
   440     return KErrNone;
       
   441     
       
   442     }
       
   443 
       
   444 // -----------------------------------------------------------------------------
       
   445 // CTestSDKPopups::TestCPFHandleResourceChangeL
       
   446 // -----------------------------------------------------------------------------
       
   447 //
       
   448 TInt CTestSDKPopups::TestCPFHandleResourceChangeL( CStifItemParser& /*aItem*/ )
       
   449     {
       
   450     CAknPopupField* field = new (ELeave) CAknPopupField;
       
   451     CleanupStack::PushL( field );
       
   452     STIF_ASSERT_NOT_NULL( field );
       
   453     
       
   454     TResourceReader reader;
       
   455     CCoeEnv::Static()->CreateResourceReaderLC(reader, R_TESTSDK_POPUPSFIELD );
       
   456     field->ConstructFromResourceL( reader );
       
   457     CleanupStack::PopAndDestroy();
       
   458     
       
   459     field->HandleResourceChange( KEikMessageCaptionedControlEditableStateChange );
       
   460     field->HandleResourceChange( KEikMessageCaptionedControlEditableStateChangeWideWithGraphic );
       
   461     field->HandleResourceChange( KEikMessageCaptionedControlEditableStateChangeWideWithoutGraphic );
       
   462     field->HandleResourceChange( KEikMessageCaptionedControlNotEditableStateChange );
       
   463     field->HandleResourceChange( KEikMessageCaptionedControlNotEditableStateChangeWideWithGraphic );
       
   464     field->HandleResourceChange( KEikMessageCaptionedControlNotEditableStateChangeWideWithoutGraphic );
       
   465     field->HandleResourceChange( KEikMessageCaptionedControlEditableStateChange );
       
   466     
       
   467     CleanupStack::PopAndDestroy( field );
       
   468     
       
   469     return KErrNone;
       
   470     
       
   471     }
       
   472 
       
   473 // -----------------------------------------------------------------------------
       
   474 // CTestSDKPopups::TestCPFHandlePointerEventL
       
   475 // -----------------------------------------------------------------------------
       
   476 //
       
   477 TInt CTestSDKPopups::TestCPFHandlePointerEventL( CStifItemParser& /*aItem*/ )
       
   478     {
       
   479     CAknPopupField* field = new (ELeave) CAknPopupField;
       
   480     CleanupStack::PushL( field );
       
   481     STIF_ASSERT_NOT_NULL( field );
       
   482     
       
   483     TResourceReader reader;
       
   484     CCoeEnv::Static()->CreateResourceReaderLC(reader, R_TESTSDK_POPUPSFIELD );
       
   485     field->ConstructFromResourceL( reader );
       
   486     CleanupStack::PopAndDestroy();
       
   487     
       
   488     TPointerEvent event;
       
   489     event.iType = TPointerEvent::EButton1Down;
       
   490     event.iModifiers = 0;
       
   491     TPoint eventPos( 10, 30 );
       
   492     event.iPosition = eventPos;
       
   493     event.iParentPosition = eventPos;
       
   494     field->HandlePointerEventL( event );
       
   495     
       
   496     CleanupStack::PopAndDestroy( field );
       
   497     
       
   498     return KErrNone;
       
   499     
       
   500     }
       
   501 
       
   502 // -----------------------------------------------------------------------------
       
   503 // CTestSDKPopups::TestCPFSetMaxNumberOfLinesPermittedL
       
   504 // -----------------------------------------------------------------------------
       
   505 //
       
   506 TInt CTestSDKPopups::TestCPFSetMaxNumberOfLinesPermittedL( CStifItemParser& /*aItem*/ )
       
   507     {
       
   508     CAknPopupField* field = new (ELeave) CAknPopupField;
       
   509     CleanupStack::PushL( field );
       
   510     STIF_ASSERT_NOT_NULL( field );
       
   511     
       
   512     TResourceReader reader;
       
   513     CCoeEnv::Static()->CreateResourceReaderLC(reader, R_TESTSDK_POPUPSFIELD );
       
   514     field->ConstructFromResourceL( reader );
       
   515     CleanupStack::PopAndDestroy();
       
   516     
       
   517     const TInt maxnum = 5;
       
   518     field->SetMaxNumberOfLinesPermitted( maxnum );
       
   519     
       
   520     CleanupStack::PopAndDestroy( field );
       
   521     
       
   522     return KErrNone;
       
   523     
       
   524     }
       
   525 
       
   526 // -----------------------------------------------------------------------------
       
   527 // CTestSDKPopups::TestCPFSetFormFieldRectL
       
   528 // -----------------------------------------------------------------------------
       
   529 //
       
   530 TInt CTestSDKPopups::TestCPFSetFormFieldRectL( CStifItemParser& /*aItem*/ )
       
   531     {
       
   532     CAknPopupField* field = new (ELeave) CAknPopupField;
       
   533     CleanupStack::PushL( field );
       
   534     STIF_ASSERT_NOT_NULL( field );
       
   535     
       
   536     TResourceReader reader;
       
   537     CCoeEnv::Static()->CreateResourceReaderLC(reader, R_TESTSDK_POPUPSFIELD );
       
   538     field->ConstructFromResourceL( reader );
       
   539     CleanupStack::PopAndDestroy();
       
   540     
       
   541     TRect rect( KLength, KLength, KLength, KLength );
       
   542     field->SetFormFieldRect( rect );
       
   543     
       
   544     CleanupStack::PopAndDestroy( field );
       
   545     
       
   546     return KErrNone;
       
   547     
       
   548     }
       
   549 
       
   550 // -----------------------------------------------------------------------------
       
   551 // CTestSDKPopups::TestCPFHandleControlEventL
       
   552 // -----------------------------------------------------------------------------
       
   553 //
       
   554 TInt CTestSDKPopups::TestCPFHandleControlEventL( CStifItemParser& /*aItem*/ )
       
   555     {
       
   556     CEikFormattedCellListBox* formatListBox = new( ELeave ) CAknSinglePopupMenuStyleListBox;
       
   557     CleanupStack::PushL( formatListBox );
       
   558     STIF_ASSERT_NOT_NULL( formatListBox );
       
   559     
       
   560     CTestSDKPopupsCPF* field = new (ELeave) CTestSDKPopupsCPF;
       
   561     CleanupStack::PushL( field );
       
   562     STIF_ASSERT_NOT_NULL( field );
       
   563     
       
   564     TResourceReader reader;
       
   565     CCoeEnv::Static()->CreateResourceReaderLC(reader, R_TESTSDK_POPUPSFIELD );
       
   566     field->ConstructFromResourceL( reader );
       
   567     CleanupStack::PopAndDestroy();
       
   568     
       
   569     field->HandleControlEventL( formatListBox, MCoeControlObserver::EEventRequestExit );
       
   570     field->HandleControlEventL( formatListBox, MCoeControlObserver::EEventRequestFocus );
       
   571     field->HandleControlEventL( formatListBox, MCoeControlObserver::EEventPrepareFocusTransition );
       
   572     
       
   573     CleanupStack::PopAndDestroy( field );
       
   574     CleanupStack::PopAndDestroy( formatListBox );
       
   575     
       
   576     return KErrNone;
       
   577     
       
   578     }
       
   579 
       
   580 // -----------------------------------------------------------------------------
       
   581 // CTestSDKPopups::TestCPFProcessCommandL
       
   582 // -----------------------------------------------------------------------------
       
   583 //
       
   584 TInt CTestSDKPopups::TestCPFProcessCommandL( CStifItemParser& /*aItem*/ )
       
   585     {
       
   586     CAknForm* form = new( ELeave ) CAknForm();
       
   587     CleanupStack::PushL( form );
       
   588     STIF_ASSERT_NOT_NULL( form );
       
   589     CleanupStack::Pop( form );
       
   590     form->PrepareLC( R_TESTSDK_POPUPSFIELDFORM );
       
   591     
       
   592     CTestSDKPopupsCPF* field = static_cast<CTestSDKPopupsCPF*>( form->ControlOrNull( ETestSDKField1 ) );
       
   593     CleanupStack::PushL( field );
       
   594     STIF_ASSERT_NOT_NULL( field );
       
   595     
       
   596     _LIT( KArrayContent, "test" );
       
   597     _LIT( KArrayContent1, "test1" );
       
   598     CAknQueryValueText* queryValue = CAknQueryValueText::NewL();
       
   599     CleanupStack::PushL( queryValue );
       
   600     CAknQueryValueTextArray* array = CAknQueryValueTextArray::NewL();
       
   601     CleanupStack::PushL( array );
       
   602     CDesC16ArrayFlat* temp = new (ELeave) CDesC16ArrayFlat(1);
       
   603     CleanupStack::PushL( temp );
       
   604     temp->AppendL( KArrayContent );
       
   605     temp->AppendL( KArrayContent1 );
       
   606     array->SetArray( *temp );
       
   607     queryValue->SetArrayL( array );
       
   608     field->SetQueryValueL( queryValue );
       
   609     
       
   610     field->ActivateSelectionListL();
       
   611     
       
   612     field->ProcessCommandL( EAknSoftkeyOk );
       
   613     
       
   614     CleanupStack::PopAndDestroy( temp );
       
   615     CleanupStack::PopAndDestroy( array );
       
   616     CleanupStack::PopAndDestroy( queryValue );
       
   617     CleanupStack::Pop( field );
       
   618     CleanupStack::PopAndDestroy( form );
       
   619     
       
   620     return KErrNone;
       
   621     
       
   622     }
       
   623 
       
   624 // -----------------------------------------------------------------------------
       
   625 // CTestSDKPopups::TestCPFHandleListBoxEventL
       
   626 // -----------------------------------------------------------------------------
       
   627 //
       
   628 TInt CTestSDKPopups::TestCPFHandleListBoxEventL( CStifItemParser& /*aItem*/ )
       
   629     {
       
   630     CEikFormattedCellListBox* formatListBox = new( ELeave ) CAknSinglePopupMenuStyleListBox;
       
   631     CleanupStack::PushL( formatListBox );
       
   632     STIF_ASSERT_NOT_NULL( formatListBox );
       
   633     
       
   634     CAknForm* form = new( ELeave ) CAknForm();
       
   635     CleanupStack::PushL( form );
       
   636     STIF_ASSERT_NOT_NULL( form );
       
   637     CleanupStack::Pop( form );
       
   638     form->PrepareLC( R_TESTSDK_POPUPSFIELDFORM );
       
   639     
       
   640     CTestSDKPopupsCPF* field = static_cast<CTestSDKPopupsCPF*>( form->ControlOrNull( ETestSDKField1 ) );
       
   641     CleanupStack::PushL( field );
       
   642     STIF_ASSERT_NOT_NULL( field );
       
   643     
       
   644     _LIT( KArrayContent, "test" );
       
   645     _LIT( KArrayContent1, "test1" );
       
   646     CAknQueryValueText* queryValue = CAknQueryValueText::NewL();
       
   647     CleanupStack::PushL( queryValue );
       
   648     CAknQueryValueTextArray* array = CAknQueryValueTextArray::NewL();
       
   649     CleanupStack::PushL( array );
       
   650     CDesC16ArrayFlat* temp = new (ELeave) CDesC16ArrayFlat(1);
       
   651     CleanupStack::PushL( temp );
       
   652     temp->AppendL( KArrayContent );
       
   653     temp->AppendL( KArrayContent1 );
       
   654     array->SetArray( *temp );
       
   655     queryValue->SetArrayL( array );
       
   656     field->SetQueryValueL( queryValue );
       
   657     
       
   658     field->ActivateSelectionListL();
       
   659     field->HandleListBoxEventL( formatListBox, MEikListBoxObserver::EEventEnterKeyPressed );
       
   660     
       
   661     CleanupStack::PopAndDestroy( temp );
       
   662     CleanupStack::PopAndDestroy( array );
       
   663     CleanupStack::PopAndDestroy( queryValue );
       
   664     CleanupStack::Pop( field );
       
   665     CleanupStack::PopAndDestroy( form );
       
   666     CleanupStack::PopAndDestroy( formatListBox );
       
   667     
       
   668     return KErrNone;
       
   669     
       
   670     }
       
   671 
       
   672 // -----------------------------------------------------------------------------
       
   673 // CTestSDKPopups::TestCPFCountComponentControlsL
       
   674 // -----------------------------------------------------------------------------
       
   675 //
       
   676 TInt CTestSDKPopups::TestCPFCountComponentControlsL( CStifItemParser& /*aItem*/ )
       
   677     {
       
   678     CTestSDKPopupsCPF* field = new (ELeave) CTestSDKPopupsCPF;
       
   679     CleanupStack::PushL( field );
       
   680     STIF_ASSERT_NOT_NULL( field );
       
   681     
       
   682     TResourceReader reader;
       
   683     CCoeEnv::Static()->CreateResourceReaderLC(reader, R_TESTSDK_POPUPSFIELD );
       
   684     field->ConstructFromResourceL( reader );
       
   685     CleanupStack::PopAndDestroy();
       
   686     
       
   687     TInt count = field->CountComponentControls();
       
   688     STIF_ASSERT_EQUALS( 1, count );
       
   689     
       
   690     CleanupStack::PopAndDestroy( field );
       
   691     
       
   692     return KErrNone;
       
   693     
       
   694     }
       
   695 
       
   696 // -----------------------------------------------------------------------------
       
   697 // CTestSDKPopups::TestCPFComponentControlL
       
   698 // -----------------------------------------------------------------------------
       
   699 //
       
   700 TInt CTestSDKPopups::TestCPFComponentControlL( CStifItemParser& /*aItem*/ )
       
   701     {
       
   702     CAknForm* form = new( ELeave ) CAknForm();
       
   703     CleanupStack::PushL( form );
       
   704     STIF_ASSERT_NOT_NULL( form );
       
   705     CleanupStack::Pop( form );
       
   706     form->PrepareLC( R_TESTSDK_POPUPSFIELDFORM );
       
   707     
       
   708     CTestSDKPopupsCPF* field = static_cast<CTestSDKPopupsCPF*>( form->ControlOrNull( ETestSDKField1 ) );
       
   709     CleanupStack::PushL( field );
       
   710     STIF_ASSERT_NOT_NULL( field );
       
   711     
       
   712     _LIT( KArrayContent, "test" );
       
   713     _LIT( KArrayContent1, "test1" );
       
   714     CAknQueryValueText* queryValue = CAknQueryValueText::NewL();
       
   715     CleanupStack::PushL( queryValue );
       
   716     CAknQueryValueTextArray* array = CAknQueryValueTextArray::NewL();
       
   717     CleanupStack::PushL( array );
       
   718     CDesC16ArrayFlat* temp = new (ELeave) CDesC16ArrayFlat(1);
       
   719     CleanupStack::PushL( temp );
       
   720     temp->AppendL( KArrayContent );
       
   721     temp->AppendL( KArrayContent1 );
       
   722     array->SetArray( *temp );
       
   723     queryValue->SetArrayL( array );
       
   724     field->SetQueryValueL( queryValue );
       
   725     
       
   726     field->ActivateSelectionListL();
       
   727     
       
   728     CEikLabel* label = static_cast<CEikLabel*> ( field->ComponentControl( 1 ) );
       
   729     STIF_ASSERT_NOT_NULL( label );
       
   730     
       
   731     CleanupStack::PopAndDestroy( temp );
       
   732     CleanupStack::PopAndDestroy( array );
       
   733     CleanupStack::PopAndDestroy( queryValue );
       
   734     CleanupStack::Pop( field );
       
   735     CleanupStack::PopAndDestroy( form );
       
   736     
       
   737     return KErrNone;
       
   738     
       
   739     }
       
   740 
       
   741 // -----------------------------------------------------------------------------
       
   742 // CTestSDKPopups::TestCPFSizeChangedL
       
   743 // -----------------------------------------------------------------------------
       
   744 //
       
   745 TInt CTestSDKPopups::TestCPFSizeChangedL( CStifItemParser& /*aItem*/ )
       
   746     {
       
   747     
       
   748     CTestSDKPopupsCPF* field = new (ELeave) CTestSDKPopupsCPF;
       
   749     CleanupStack::PushL( field );
       
   750     STIF_ASSERT_NOT_NULL( field );
       
   751     
       
   752     TResourceReader reader;
       
   753     CCoeEnv::Static()->CreateResourceReaderLC(reader, R_TESTSDK_POPUPSFIELD );
       
   754     field->ConstructFromResourceL( reader );
       
   755     CleanupStack::PopAndDestroy();
       
   756     
       
   757     TRect rect( KLength, KLength, KLength, KLength );
       
   758     field->SetFormFieldRect( rect );
       
   759     field->SizeChanged();
       
   760     
       
   761     CleanupStack::PopAndDestroy( field );
       
   762     
       
   763     return KErrNone;
       
   764     
       
   765     }
       
   766 
       
   767 // -----------------------------------------------------------------------------
       
   768 // CTestSDKPopups::TestCPFFocusChangedL
       
   769 // -----------------------------------------------------------------------------
       
   770 //
       
   771 TInt CTestSDKPopups::TestCPFFocusChangedL( CStifItemParser& /*aItem*/ )
       
   772     {
       
   773     
       
   774     CTestSDKPopupsCPF* field = new (ELeave) CTestSDKPopupsCPF;
       
   775     CleanupStack::PushL( field );
       
   776     STIF_ASSERT_NOT_NULL( field );
       
   777     
       
   778     TResourceReader reader;
       
   779     CCoeEnv::Static()->CreateResourceReaderLC(reader, R_TESTSDK_POPUPSFIELD );
       
   780     field->ConstructFromResourceL( reader );
       
   781     CleanupStack::PopAndDestroy();
       
   782     
       
   783     field->FocusChanged( EDrawNow );
       
   784     
       
   785     CleanupStack::PopAndDestroy( field );
       
   786     
       
   787     return KErrNone;
       
   788     
       
   789     }
       
   790 
       
   791 // -----------------------------------------------------------------------------
       
   792 // CTestSDKPopups::TestCPFDrawL
       
   793 // -----------------------------------------------------------------------------
       
   794 //
       
   795 TInt CTestSDKPopups::TestCPFDrawL( CStifItemParser& /*aItem*/ )
       
   796     {
       
   797     
       
   798     CTestSDKPopupsCPF* field = new (ELeave) CTestSDKPopupsCPF;
       
   799     CleanupStack::PushL( field );
       
   800     STIF_ASSERT_NOT_NULL( field );
       
   801     
       
   802     TResourceReader reader;
       
   803     CCoeEnv::Static()->CreateResourceReaderLC(reader, R_TESTSDK_POPUPSFIELD );
       
   804     field->ConstructFromResourceL( reader );
       
   805     CleanupStack::PopAndDestroy();
       
   806     
       
   807     TRect rect( KLength, KLength, KLength, KLength );
       
   808     field->Draw( rect );
       
   809     
       
   810     CleanupStack::PopAndDestroy( field );
       
   811     
       
   812     return KErrNone;
       
   813     
       
   814     }
       
   815 
       
   816 // -----------------------------------------------------------------------------
       
   817 // CTestSDKPopups::TestCPFMopSupplyObjectL
       
   818 // -----------------------------------------------------------------------------
       
   819 //
       
   820 TInt CTestSDKPopups::TestCPFMopSupplyObjectL( CStifItemParser& /*aItem*/ )
       
   821     {
       
   822     CAknForm* form = new( ELeave ) CAknForm();
       
   823     CleanupStack::PushL( form );
       
   824     STIF_ASSERT_NOT_NULL( form );
       
   825     CleanupStack::Pop( form );
       
   826     form->PrepareLC( R_TESTSDK_POPUPSFIELDFORM );
       
   827     
       
   828     CTestSDKPopupsCPF* field = static_cast<CTestSDKPopupsCPF*>( form->ControlOrNull( ETestSDKField1 ) );
       
   829     CleanupStack::PushL( field );
       
   830     STIF_ASSERT_NOT_NULL( field );
       
   831     
       
   832     TTypeUid::Ptr ptr = TTypeUid::Null();
       
   833     ptr = field->MopSupplyObject( CAknPopupList::ETypeId );
       
   834     CTestSDKPopupsCPF* point = static_cast<CTestSDKPopupsCPF*> ( ptr.Pointer() );
       
   835     STIF_ASSERT_NULL( point );
       
   836     
       
   837     CleanupStack::Pop( field );
       
   838     CleanupStack::PopAndDestroy( form );
       
   839     
       
   840     return KErrNone;
       
   841     
       
   842     }