diff -r 000000000000 -r 2f259fa3e83a classicui_pub/popups_api/tsrc/src/testsdkpopupsblockscpf.cpp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/classicui_pub/popups_api/tsrc/src/testsdkpopupsblockscpf.cpp Tue Feb 02 01:00:49 2010 +0200 @@ -0,0 +1,842 @@ +/* +* Copyright (c) 2002 - 2007 Nokia Corporation and/or its subsidiary(-ies). +* All rights reserved. +* This component and the accompanying materials are made available +* under the terms of "Eclipse Public License v1.0" +* which accompanies this distribution, and is available +* at the URL "http://www.eclipse.org/legal/epl-v10.html". +* +* Initial Contributors: +* Nokia Corporation - initial contribution. +* +* Contributors: +* +* Description: test AknPopupField.h +* +*/ + + + +// [INCLUDE FILES] + +#include +#include +#include +#include +#include +#include +#include +#include + +#include "testsdkpopups.hrh" +#include "testsdkpopups.h" +#include "testsdkpopupspf.h" +#include "testsdkpopupscpf.h" + +const TInt KLength = 20; +// ============================ MEMBER FUNCTIONS =============================== + +// ----------------------------------------------------------------------------- +// CTestSDKPopups::TestCPFCAknPopupFieldL +// ----------------------------------------------------------------------------- +// +TInt CTestSDKPopups::TestCPFCAknPopupFieldL( CStifItemParser& /*aItem*/ ) + { + CAknPopupField* field = new (ELeave) CAknPopupField; + CleanupStack::PushL( field ); + STIF_ASSERT_NOT_NULL( field ); + + CleanupStack::PopAndDestroy( field ); + + return KErrNone; + + } + +// ----------------------------------------------------------------------------- +// CTestSDKPopups::TestCPFDeconstructorL +// ----------------------------------------------------------------------------- +// +TInt CTestSDKPopups::TestCPFDeconstructorL( CStifItemParser& /*aItem*/ ) + { + CAknPopupField* field = new (ELeave) CAknPopupField; + CleanupStack::PushL( field ); + STIF_ASSERT_NOT_NULL( field ); + + CleanupStack::Pop( field ); + delete field; + + return KErrNone; + + } + +// ----------------------------------------------------------------------------- +// CTestSDKPopups::TestCPFConstructL +// ----------------------------------------------------------------------------- +// +TInt CTestSDKPopups::TestCPFConstructL( CStifItemParser& /*aItem*/ ) + { + CAknPopupField* field = new (ELeave) CAknPopupField; + CleanupStack::PushL( field ); + STIF_ASSERT_NOT_NULL( field ); + + TResourceReader reader; + CCoeEnv::Static()->CreateResourceReaderLC(reader, R_TESTSDK_POPUPSFIELD ); + field->ConstructFromResourceL( reader ); + + _LIT( KEmptyText, "EmptyText" ); + TBuf emptyText( KEmptyText ); + field->SetEmptyTextL( emptyText ); + + _LIT( KInvalidText, "InvalidText" ); + TBuf invalidText( KInvalidText ); + field->SetInvalidTextL( invalidText ); + + field->ConstructL(); + + CleanupStack::PopAndDestroy(); + CleanupStack::PopAndDestroy( field ); + + return KErrNone; + + } + +// ----------------------------------------------------------------------------- +// CTestSDKPopups::TestCPFSetAllowsUserDefinedEntryL +// ----------------------------------------------------------------------------- +// +TInt CTestSDKPopups::TestCPFSetAllowsUserDefinedEntryL( CStifItemParser& /*aItem*/ ) + { + CAknPopupField* field = new (ELeave) CAknPopupField; + CleanupStack::PushL( field ); + STIF_ASSERT_NOT_NULL( field ); + + TResourceReader reader; + CCoeEnv::Static()->CreateResourceReaderLC(reader, R_TESTSDK_POPUPSFIELD ); + field->ConstructFromResourceL( reader ); + CleanupStack::PopAndDestroy(); + + field->SetAllowsUserDefinedEntry( EFalse ); + field->SetAllowsUserDefinedEntry( ETrue ); + + CleanupStack::PopAndDestroy( field ); + + return KErrNone; + + } + +// ----------------------------------------------------------------------------- +// CTestSDKPopups::TestCPFActivateSelectionListL +// ----------------------------------------------------------------------------- +// +TInt CTestSDKPopups::TestCPFActivateSelectionListL( CStifItemParser& /*aItem*/ ) + { + CAknPopupField* field = new (ELeave) CAknPopupField; + CleanupStack::PushL( field ); + STIF_ASSERT_NOT_NULL( field ); + + TResourceReader reader; + CCoeEnv::Static()->CreateResourceReaderLC(reader, R_TESTSDK_POPUPSFIELD ); + field->ConstructFromResourceL( reader ); + CleanupStack::PopAndDestroy(); + + field->SetEmptyListNoteL( R_TESTSDK_LISTNOTE ); + field->ActivateSelectionListL(); + + CleanupStack::PopAndDestroy( field ); + + return KErrNone; + + } + +// ----------------------------------------------------------------------------- +// CTestSDKPopups::TestCPFSetQueryValueL +// ----------------------------------------------------------------------------- +// +TInt CTestSDKPopups::TestCPFSetQueryValueL( CStifItemParser& /*aItem*/ ) + { + CAknPopupField* field = new (ELeave) CAknPopupField; + CleanupStack::PushL( field ); + STIF_ASSERT_NOT_NULL( field ); + + TResourceReader reader; + CCoeEnv::Static()->CreateResourceReaderLC(reader, R_TESTSDK_POPUPSFIELD ); + field->ConstructFromResourceL( reader ); + CleanupStack::PopAndDestroy(); + + _LIT( KArrayContent, "test" ); + CAknQueryValueText* queryValue = CAknQueryValueText::NewL(); + CleanupStack::PushL( queryValue ); + CAknQueryValueTextArray* array = CAknQueryValueTextArray::NewL(); + CleanupStack::PushL( array ); + CDesC16ArrayFlat* temp = new (ELeave) CDesC16ArrayFlat(1); + CleanupStack::PushL( temp ); + temp->AppendL( KArrayContent ); + array->SetArray( *temp ); + queryValue->SetArrayL( array ); + field->SetQueryValueL( queryValue ); + + CleanupStack::PopAndDestroy( temp ); + CleanupStack::PopAndDestroy( array ); + CleanupStack::PopAndDestroy( queryValue ); + CleanupStack::PopAndDestroy( field ); + + return KErrNone; + + } + +// ----------------------------------------------------------------------------- +// CTestSDKPopups::TestCPFSetFontL +// ----------------------------------------------------------------------------- +// +TInt CTestSDKPopups::TestCPFSetFontL( CStifItemParser& /*aItem*/ ) + { + CAknPopupField* field = new (ELeave) CAknPopupField; + CleanupStack::PushL( field ); + STIF_ASSERT_NOT_NULL( field ); + + TResourceReader reader; + CCoeEnv::Static()->CreateResourceReaderLC(reader, R_TESTSDK_POPUPSFIELD ); + field->ConstructFromResourceL( reader ); + CleanupStack::PopAndDestroy(); + + const CFont* font = CEikonEnv::Static()->LegendFont(); + field->SetFont( font ); + + CleanupStack::PopAndDestroy( field ); + + return KErrNone; + + } + +// ----------------------------------------------------------------------------- +// CTestSDKPopups::TestCPFSetShowIndicatorsL +// ----------------------------------------------------------------------------- +// +TInt CTestSDKPopups::TestCPFSetShowIndicatorsL( CStifItemParser& /*aItem*/ ) + { + CAknPopupField* field = new (ELeave) CAknPopupField; + CleanupStack::PushL( field ); + STIF_ASSERT_NOT_NULL( field ); + + TResourceReader reader; + CCoeEnv::Static()->CreateResourceReaderLC(reader, R_TESTSDK_POPUPSFIELD ); + field->ConstructFromResourceL( reader ); + CleanupStack::PopAndDestroy(); + + field->SetShowIndicatorsL( EFalse ); + field->SetShowIndicatorsL( ETrue ); + + CleanupStack::PopAndDestroy( field ); + + return KErrNone; + + } + +// ----------------------------------------------------------------------------- +// CTestSDKPopups::TestCPFNumLinesL +// ----------------------------------------------------------------------------- +// +TInt CTestSDKPopups::TestCPFNumLinesL( CStifItemParser& /*aItem*/ ) + { + CAknPopupField* field = new (ELeave) CAknPopupField; + CleanupStack::PushL( field ); + STIF_ASSERT_NOT_NULL( field ); + + TResourceReader reader; + CCoeEnv::Static()->CreateResourceReaderLC(reader, R_TESTSDK_POPUPSFIELD ); + field->ConstructFromResourceL( reader ); + CleanupStack::PopAndDestroy(); + + TInt num = field->NumLines(); + STIF_ASSERT_EQUALS( 1, num ); + + CleanupStack::PopAndDestroy( field ); + + return KErrNone; + + } + +// ----------------------------------------------------------------------------- +// CTestSDKPopups::TestCPFSetPopupFieldObserverL +// ----------------------------------------------------------------------------- +// +TInt CTestSDKPopups::TestCPFSetPopupFieldObserverL( CStifItemParser& /*aItem*/ ) + { + CTestSDKPopupsPF* observer = new (ELeave) CTestSDKPopupsPF; + CleanupStack::PushL( observer ); + STIF_ASSERT_NOT_NULL( observer ); + + CAknPopupField* field = new (ELeave) CAknPopupField; + CleanupStack::PushL( field ); + STIF_ASSERT_NOT_NULL( field ); + + TResourceReader reader; + CCoeEnv::Static()->CreateResourceReaderLC(reader, R_TESTSDK_POPUPSFIELD ); + field->ConstructFromResourceL( reader ); + CleanupStack::PopAndDestroy(); + + field->SetPopupFieldObserver( observer ); + + CleanupStack::PopAndDestroy( field ); + CleanupStack::PopAndDestroy( observer ); + + return KErrNone; + + } + +// ----------------------------------------------------------------------------- +// CTestSDKPopups::TestCPFSetEmptyListNoteL +// ----------------------------------------------------------------------------- +// +TInt CTestSDKPopups::TestCPFSetEmptyListNoteL( CStifItemParser& aItem ) + { + return TestCPFActivateSelectionListL( aItem ); + + } + +// ----------------------------------------------------------------------------- +// CTestSDKPopups::TestCPFSetEmptyTextL +// ----------------------------------------------------------------------------- +// +TInt CTestSDKPopups::TestCPFSetEmptyTextL( CStifItemParser& /*aItem*/ ) + { + CAknPopupField* field = new (ELeave) CAknPopupField; + CleanupStack::PushL( field ); + STIF_ASSERT_NOT_NULL( field ); + + TResourceReader reader; + CCoeEnv::Static()->CreateResourceReaderLC(reader, R_TESTSDK_POPUPSFIELD ); + field->ConstructFromResourceL( reader ); + CleanupStack::PopAndDestroy(); + + _LIT( KEmptyText, "EmptyText" ); + TBuf emptyText( KEmptyText ); + field->SetEmptyTextL( emptyText ); + + CleanupStack::PopAndDestroy( field ); + + return KErrNone; + + } + +// ----------------------------------------------------------------------------- +// CTestSDKPopups::TestCPFSetOtherTextL +// ----------------------------------------------------------------------------- +// +TInt CTestSDKPopups::TestCPFSetOtherTextL( CStifItemParser& /*aItem*/ ) + { + CAknPopupField* field = new (ELeave) CAknPopupField; + CleanupStack::PushL( field ); + STIF_ASSERT_NOT_NULL( field ); + + TResourceReader reader; + CCoeEnv::Static()->CreateResourceReaderLC(reader, R_TESTSDK_POPUPSFIELD ); + field->ConstructFromResourceL( reader ); + CleanupStack::PopAndDestroy(); + + _LIT( KOtherText, "OtherText" ); + TBuf otherText( KOtherText ); + field->SetOtherTextL( otherText ); + + CleanupStack::PopAndDestroy( field ); + + return KErrNone; + + } + +// ----------------------------------------------------------------------------- +// CTestSDKPopups::TestCPFSetInvalidTextL +// ----------------------------------------------------------------------------- +// +TInt CTestSDKPopups::TestCPFSetInvalidTextL( CStifItemParser& /*aItem*/ ) + { + CAknPopupField* field = new (ELeave) CAknPopupField; + CleanupStack::PushL( field ); + STIF_ASSERT_NOT_NULL( field ); + + TResourceReader reader; + CCoeEnv::Static()->CreateResourceReaderLC(reader, R_TESTSDK_POPUPSFIELD ); + field->ConstructFromResourceL( reader ); + CleanupStack::PopAndDestroy(); + + _LIT( KInvalidText, "InvalidText" ); + TBuf invalidText( KInvalidText ); + field->SetInvalidTextL( invalidText ); + + CleanupStack::PopAndDestroy( field ); + + return KErrNone; + + } + +// ----------------------------------------------------------------------------- +// CTestSDKPopups::TestCPFOfferKeyEventL +// ----------------------------------------------------------------------------- +// +TInt CTestSDKPopups::TestCPFOfferKeyEventL( CStifItemParser& /*aItem*/ ) + { + CAknPopupField* field = new (ELeave) CAknPopupField; + CleanupStack::PushL( field ); + STIF_ASSERT_NOT_NULL( field ); + + TResourceReader reader; + CCoeEnv::Static()->CreateResourceReaderLC(reader, R_TESTSDK_POPUPSFIELD ); + field->ConstructFromResourceL( reader ); + CleanupStack::PopAndDestroy(); + + TKeyEvent keyEvent; + keyEvent.iCode = EKeyDevice1; + STIF_ASSERT_TRUE( EKeyWasNotConsumed == field->OfferKeyEventL( keyEvent, EEventKey ) ); + + CleanupStack::PopAndDestroy( field ); + + return KErrNone; + + } + +// ----------------------------------------------------------------------------- +// CTestSDKPopups::TestCPFConstructFromResourceL +// ----------------------------------------------------------------------------- +// +TInt CTestSDKPopups::TestCPFConstructFromResourceL( CStifItemParser& /*aItem*/ ) + { + CAknPopupField* field = new (ELeave) CAknPopupField; + CleanupStack::PushL( field ); + STIF_ASSERT_NOT_NULL( field ); + + TResourceReader reader; + CCoeEnv::Static()->CreateResourceReaderLC(reader, R_TESTSDK_POPUPSFIELD ); + field->ConstructFromResourceL( reader ); + CleanupStack::PopAndDestroy(); + + CleanupStack::PopAndDestroy( field ); + + return KErrNone; + + } + +// ----------------------------------------------------------------------------- +// CTestSDKPopups::TestCPFMinimumSizeL +// ----------------------------------------------------------------------------- +// +TInt CTestSDKPopups::TestCPFMinimumSizeL( CStifItemParser& /*aItem*/ ) + { + CAknPopupField* field = new (ELeave) CAknPopupField; + CleanupStack::PushL( field ); + STIF_ASSERT_NOT_NULL( field ); + + TResourceReader reader; + CCoeEnv::Static()->CreateResourceReaderLC(reader, R_TESTSDK_POPUPSFIELD ); + field->ConstructFromResourceL( reader ); + CleanupStack::PopAndDestroy(); + + TSize size = field->MinimumSize(); + TPoint point = size.AsPoint(); + STIF_ASSERT_EQUALS( 0, point.iX ); + STIF_ASSERT_NOT_EQUALS( 0, point.iY ); + + CleanupStack::PopAndDestroy( field ); + + return KErrNone; + + } + +// ----------------------------------------------------------------------------- +// CTestSDKPopups::TestCPFHandleResourceChangeL +// ----------------------------------------------------------------------------- +// +TInt CTestSDKPopups::TestCPFHandleResourceChangeL( CStifItemParser& /*aItem*/ ) + { + CAknPopupField* field = new (ELeave) CAknPopupField; + CleanupStack::PushL( field ); + STIF_ASSERT_NOT_NULL( field ); + + TResourceReader reader; + CCoeEnv::Static()->CreateResourceReaderLC(reader, R_TESTSDK_POPUPSFIELD ); + field->ConstructFromResourceL( reader ); + CleanupStack::PopAndDestroy(); + + field->HandleResourceChange( KEikMessageCaptionedControlEditableStateChange ); + field->HandleResourceChange( KEikMessageCaptionedControlEditableStateChangeWideWithGraphic ); + field->HandleResourceChange( KEikMessageCaptionedControlEditableStateChangeWideWithoutGraphic ); + field->HandleResourceChange( KEikMessageCaptionedControlNotEditableStateChange ); + field->HandleResourceChange( KEikMessageCaptionedControlNotEditableStateChangeWideWithGraphic ); + field->HandleResourceChange( KEikMessageCaptionedControlNotEditableStateChangeWideWithoutGraphic ); + field->HandleResourceChange( KEikMessageCaptionedControlEditableStateChange ); + + CleanupStack::PopAndDestroy( field ); + + return KErrNone; + + } + +// ----------------------------------------------------------------------------- +// CTestSDKPopups::TestCPFHandlePointerEventL +// ----------------------------------------------------------------------------- +// +TInt CTestSDKPopups::TestCPFHandlePointerEventL( CStifItemParser& /*aItem*/ ) + { + CAknPopupField* field = new (ELeave) CAknPopupField; + CleanupStack::PushL( field ); + STIF_ASSERT_NOT_NULL( field ); + + TResourceReader reader; + CCoeEnv::Static()->CreateResourceReaderLC(reader, R_TESTSDK_POPUPSFIELD ); + field->ConstructFromResourceL( reader ); + CleanupStack::PopAndDestroy(); + + TPointerEvent event; + event.iType = TPointerEvent::EButton1Down; + event.iModifiers = 0; + TPoint eventPos( 10, 30 ); + event.iPosition = eventPos; + event.iParentPosition = eventPos; + field->HandlePointerEventL( event ); + + CleanupStack::PopAndDestroy( field ); + + return KErrNone; + + } + +// ----------------------------------------------------------------------------- +// CTestSDKPopups::TestCPFSetMaxNumberOfLinesPermittedL +// ----------------------------------------------------------------------------- +// +TInt CTestSDKPopups::TestCPFSetMaxNumberOfLinesPermittedL( CStifItemParser& /*aItem*/ ) + { + CAknPopupField* field = new (ELeave) CAknPopupField; + CleanupStack::PushL( field ); + STIF_ASSERT_NOT_NULL( field ); + + TResourceReader reader; + CCoeEnv::Static()->CreateResourceReaderLC(reader, R_TESTSDK_POPUPSFIELD ); + field->ConstructFromResourceL( reader ); + CleanupStack::PopAndDestroy(); + + const TInt maxnum = 5; + field->SetMaxNumberOfLinesPermitted( maxnum ); + + CleanupStack::PopAndDestroy( field ); + + return KErrNone; + + } + +// ----------------------------------------------------------------------------- +// CTestSDKPopups::TestCPFSetFormFieldRectL +// ----------------------------------------------------------------------------- +// +TInt CTestSDKPopups::TestCPFSetFormFieldRectL( CStifItemParser& /*aItem*/ ) + { + CAknPopupField* field = new (ELeave) CAknPopupField; + CleanupStack::PushL( field ); + STIF_ASSERT_NOT_NULL( field ); + + TResourceReader reader; + CCoeEnv::Static()->CreateResourceReaderLC(reader, R_TESTSDK_POPUPSFIELD ); + field->ConstructFromResourceL( reader ); + CleanupStack::PopAndDestroy(); + + TRect rect( KLength, KLength, KLength, KLength ); + field->SetFormFieldRect( rect ); + + CleanupStack::PopAndDestroy( field ); + + return KErrNone; + + } + +// ----------------------------------------------------------------------------- +// CTestSDKPopups::TestCPFHandleControlEventL +// ----------------------------------------------------------------------------- +// +TInt CTestSDKPopups::TestCPFHandleControlEventL( CStifItemParser& /*aItem*/ ) + { + CEikFormattedCellListBox* formatListBox = new( ELeave ) CAknSinglePopupMenuStyleListBox; + CleanupStack::PushL( formatListBox ); + STIF_ASSERT_NOT_NULL( formatListBox ); + + CTestSDKPopupsCPF* field = new (ELeave) CTestSDKPopupsCPF; + CleanupStack::PushL( field ); + STIF_ASSERT_NOT_NULL( field ); + + TResourceReader reader; + CCoeEnv::Static()->CreateResourceReaderLC(reader, R_TESTSDK_POPUPSFIELD ); + field->ConstructFromResourceL( reader ); + CleanupStack::PopAndDestroy(); + + field->HandleControlEventL( formatListBox, MCoeControlObserver::EEventRequestExit ); + field->HandleControlEventL( formatListBox, MCoeControlObserver::EEventRequestFocus ); + field->HandleControlEventL( formatListBox, MCoeControlObserver::EEventPrepareFocusTransition ); + + CleanupStack::PopAndDestroy( field ); + CleanupStack::PopAndDestroy( formatListBox ); + + return KErrNone; + + } + +// ----------------------------------------------------------------------------- +// CTestSDKPopups::TestCPFProcessCommandL +// ----------------------------------------------------------------------------- +// +TInt CTestSDKPopups::TestCPFProcessCommandL( CStifItemParser& /*aItem*/ ) + { + CAknForm* form = new( ELeave ) CAknForm(); + CleanupStack::PushL( form ); + STIF_ASSERT_NOT_NULL( form ); + CleanupStack::Pop( form ); + form->PrepareLC( R_TESTSDK_POPUPSFIELDFORM ); + + CTestSDKPopupsCPF* field = static_cast( form->ControlOrNull( ETestSDKField1 ) ); + CleanupStack::PushL( field ); + STIF_ASSERT_NOT_NULL( field ); + + _LIT( KArrayContent, "test" ); + _LIT( KArrayContent1, "test1" ); + CAknQueryValueText* queryValue = CAknQueryValueText::NewL(); + CleanupStack::PushL( queryValue ); + CAknQueryValueTextArray* array = CAknQueryValueTextArray::NewL(); + CleanupStack::PushL( array ); + CDesC16ArrayFlat* temp = new (ELeave) CDesC16ArrayFlat(1); + CleanupStack::PushL( temp ); + temp->AppendL( KArrayContent ); + temp->AppendL( KArrayContent1 ); + array->SetArray( *temp ); + queryValue->SetArrayL( array ); + field->SetQueryValueL( queryValue ); + + field->ActivateSelectionListL(); + + field->ProcessCommandL( EAknSoftkeyOk ); + + CleanupStack::PopAndDestroy( temp ); + CleanupStack::PopAndDestroy( array ); + CleanupStack::PopAndDestroy( queryValue ); + CleanupStack::Pop( field ); + CleanupStack::PopAndDestroy( form ); + + return KErrNone; + + } + +// ----------------------------------------------------------------------------- +// CTestSDKPopups::TestCPFHandleListBoxEventL +// ----------------------------------------------------------------------------- +// +TInt CTestSDKPopups::TestCPFHandleListBoxEventL( CStifItemParser& /*aItem*/ ) + { + CEikFormattedCellListBox* formatListBox = new( ELeave ) CAknSinglePopupMenuStyleListBox; + CleanupStack::PushL( formatListBox ); + STIF_ASSERT_NOT_NULL( formatListBox ); + + CAknForm* form = new( ELeave ) CAknForm(); + CleanupStack::PushL( form ); + STIF_ASSERT_NOT_NULL( form ); + CleanupStack::Pop( form ); + form->PrepareLC( R_TESTSDK_POPUPSFIELDFORM ); + + CTestSDKPopupsCPF* field = static_cast( form->ControlOrNull( ETestSDKField1 ) ); + CleanupStack::PushL( field ); + STIF_ASSERT_NOT_NULL( field ); + + _LIT( KArrayContent, "test" ); + _LIT( KArrayContent1, "test1" ); + CAknQueryValueText* queryValue = CAknQueryValueText::NewL(); + CleanupStack::PushL( queryValue ); + CAknQueryValueTextArray* array = CAknQueryValueTextArray::NewL(); + CleanupStack::PushL( array ); + CDesC16ArrayFlat* temp = new (ELeave) CDesC16ArrayFlat(1); + CleanupStack::PushL( temp ); + temp->AppendL( KArrayContent ); + temp->AppendL( KArrayContent1 ); + array->SetArray( *temp ); + queryValue->SetArrayL( array ); + field->SetQueryValueL( queryValue ); + + field->ActivateSelectionListL(); + field->HandleListBoxEventL( formatListBox, MEikListBoxObserver::EEventEnterKeyPressed ); + + CleanupStack::PopAndDestroy( temp ); + CleanupStack::PopAndDestroy( array ); + CleanupStack::PopAndDestroy( queryValue ); + CleanupStack::Pop( field ); + CleanupStack::PopAndDestroy( form ); + CleanupStack::PopAndDestroy( formatListBox ); + + return KErrNone; + + } + +// ----------------------------------------------------------------------------- +// CTestSDKPopups::TestCPFCountComponentControlsL +// ----------------------------------------------------------------------------- +// +TInt CTestSDKPopups::TestCPFCountComponentControlsL( CStifItemParser& /*aItem*/ ) + { + CTestSDKPopupsCPF* field = new (ELeave) CTestSDKPopupsCPF; + CleanupStack::PushL( field ); + STIF_ASSERT_NOT_NULL( field ); + + TResourceReader reader; + CCoeEnv::Static()->CreateResourceReaderLC(reader, R_TESTSDK_POPUPSFIELD ); + field->ConstructFromResourceL( reader ); + CleanupStack::PopAndDestroy(); + + TInt count = field->CountComponentControls(); + STIF_ASSERT_EQUALS( 1, count ); + + CleanupStack::PopAndDestroy( field ); + + return KErrNone; + + } + +// ----------------------------------------------------------------------------- +// CTestSDKPopups::TestCPFComponentControlL +// ----------------------------------------------------------------------------- +// +TInt CTestSDKPopups::TestCPFComponentControlL( CStifItemParser& /*aItem*/ ) + { + CAknForm* form = new( ELeave ) CAknForm(); + CleanupStack::PushL( form ); + STIF_ASSERT_NOT_NULL( form ); + CleanupStack::Pop( form ); + form->PrepareLC( R_TESTSDK_POPUPSFIELDFORM ); + + CTestSDKPopupsCPF* field = static_cast( form->ControlOrNull( ETestSDKField1 ) ); + CleanupStack::PushL( field ); + STIF_ASSERT_NOT_NULL( field ); + + _LIT( KArrayContent, "test" ); + _LIT( KArrayContent1, "test1" ); + CAknQueryValueText* queryValue = CAknQueryValueText::NewL(); + CleanupStack::PushL( queryValue ); + CAknQueryValueTextArray* array = CAknQueryValueTextArray::NewL(); + CleanupStack::PushL( array ); + CDesC16ArrayFlat* temp = new (ELeave) CDesC16ArrayFlat(1); + CleanupStack::PushL( temp ); + temp->AppendL( KArrayContent ); + temp->AppendL( KArrayContent1 ); + array->SetArray( *temp ); + queryValue->SetArrayL( array ); + field->SetQueryValueL( queryValue ); + + field->ActivateSelectionListL(); + + CEikLabel* label = static_cast ( field->ComponentControl( 1 ) ); + STIF_ASSERT_NOT_NULL( label ); + + CleanupStack::PopAndDestroy( temp ); + CleanupStack::PopAndDestroy( array ); + CleanupStack::PopAndDestroy( queryValue ); + CleanupStack::Pop( field ); + CleanupStack::PopAndDestroy( form ); + + return KErrNone; + + } + +// ----------------------------------------------------------------------------- +// CTestSDKPopups::TestCPFSizeChangedL +// ----------------------------------------------------------------------------- +// +TInt CTestSDKPopups::TestCPFSizeChangedL( CStifItemParser& /*aItem*/ ) + { + + CTestSDKPopupsCPF* field = new (ELeave) CTestSDKPopupsCPF; + CleanupStack::PushL( field ); + STIF_ASSERT_NOT_NULL( field ); + + TResourceReader reader; + CCoeEnv::Static()->CreateResourceReaderLC(reader, R_TESTSDK_POPUPSFIELD ); + field->ConstructFromResourceL( reader ); + CleanupStack::PopAndDestroy(); + + TRect rect( KLength, KLength, KLength, KLength ); + field->SetFormFieldRect( rect ); + field->SizeChanged(); + + CleanupStack::PopAndDestroy( field ); + + return KErrNone; + + } + +// ----------------------------------------------------------------------------- +// CTestSDKPopups::TestCPFFocusChangedL +// ----------------------------------------------------------------------------- +// +TInt CTestSDKPopups::TestCPFFocusChangedL( CStifItemParser& /*aItem*/ ) + { + + CTestSDKPopupsCPF* field = new (ELeave) CTestSDKPopupsCPF; + CleanupStack::PushL( field ); + STIF_ASSERT_NOT_NULL( field ); + + TResourceReader reader; + CCoeEnv::Static()->CreateResourceReaderLC(reader, R_TESTSDK_POPUPSFIELD ); + field->ConstructFromResourceL( reader ); + CleanupStack::PopAndDestroy(); + + field->FocusChanged( EDrawNow ); + + CleanupStack::PopAndDestroy( field ); + + return KErrNone; + + } + +// ----------------------------------------------------------------------------- +// CTestSDKPopups::TestCPFDrawL +// ----------------------------------------------------------------------------- +// +TInt CTestSDKPopups::TestCPFDrawL( CStifItemParser& /*aItem*/ ) + { + + CTestSDKPopupsCPF* field = new (ELeave) CTestSDKPopupsCPF; + CleanupStack::PushL( field ); + STIF_ASSERT_NOT_NULL( field ); + + TResourceReader reader; + CCoeEnv::Static()->CreateResourceReaderLC(reader, R_TESTSDK_POPUPSFIELD ); + field->ConstructFromResourceL( reader ); + CleanupStack::PopAndDestroy(); + + TRect rect( KLength, KLength, KLength, KLength ); + field->Draw( rect ); + + CleanupStack::PopAndDestroy( field ); + + return KErrNone; + + } + +// ----------------------------------------------------------------------------- +// CTestSDKPopups::TestCPFMopSupplyObjectL +// ----------------------------------------------------------------------------- +// +TInt CTestSDKPopups::TestCPFMopSupplyObjectL( CStifItemParser& /*aItem*/ ) + { + CAknForm* form = new( ELeave ) CAknForm(); + CleanupStack::PushL( form ); + STIF_ASSERT_NOT_NULL( form ); + CleanupStack::Pop( form ); + form->PrepareLC( R_TESTSDK_POPUPSFIELDFORM ); + + CTestSDKPopupsCPF* field = static_cast( form->ControlOrNull( ETestSDKField1 ) ); + CleanupStack::PushL( field ); + STIF_ASSERT_NOT_NULL( field ); + + TTypeUid::Ptr ptr = TTypeUid::Null(); + ptr = field->MopSupplyObject( CAknPopupList::ETypeId ); + CTestSDKPopupsCPF* point = static_cast ( ptr.Pointer() ); + STIF_ASSERT_NULL( point ); + + CleanupStack::Pop( field ); + CleanupStack::PopAndDestroy( form ); + + return KErrNone; + + }