classicui_pub/editors_api/tsrc/src/testsdkeditorsblocksfpointeditor.cpp
changeset 0 2f259fa3e83a
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/classicui_pub/editors_api/tsrc/src/testsdkeditorsblocksfpointeditor.cpp	Tue Feb 02 01:00:49 2010 +0200
@@ -0,0 +1,583 @@
+/*
+* 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 EIKFPNE.h
+*
+*/
+
+
+
+// [INCLUDE FILES]
+
+#include <eikfpne.h>
+#include <barsread.h>
+#include <coemain.h>
+#include <coeaui.h>
+#include <akndef.h>
+#include <testsdkeditors.rsg>
+
+#include "testsdkeditors.h"
+#include "testsdkeditorscontrol.h"
+
+const TReal KMin = 0.0;
+const TReal KMax = 100.0;
+const TInt KLimit = 5;
+const TInt KLength = 10;
+const TInt KMinValue = 0;
+const TInt KMaxValue = 100;
+
+// ============================ MEMBER FUNCTIONS ===============================
+// -----------------------------------------------------------------------------
+// CTestSDKEditors::TestFPECEikFloatingPointEditorL
+// -----------------------------------------------------------------------------
+//
+TInt CTestSDKEditors::TestFPECEikFloatingPointEditorL( CStifItemParser& /*aItem*/ )
+    {
+    CEikFloatingPointEditor* pointEditor = new (ELeave) CEikFloatingPointEditor;
+    CleanupStack::PushL( pointEditor );
+    STIF_ASSERT_NOT_NULL( pointEditor );
+    
+    CleanupStack::PopAndDestroy( pointEditor );
+    
+    return KErrNone;
+    
+    }
+
+// -----------------------------------------------------------------------------
+// CTestSDKEditors::TestFPEConstructL
+// -----------------------------------------------------------------------------
+//
+TInt CTestSDKEditors::TestFPEConstructL( CStifItemParser& /*aItem*/ )
+    {
+    CEikFloatingPointEditor* pointEditor = new (ELeave) CEikFloatingPointEditor;
+    CleanupStack::PushL( pointEditor );
+    STIF_ASSERT_NOT_NULL( pointEditor );
+    
+    pointEditor->ConstructL( KMin, KMax, KLimit );
+    
+    CleanupStack::PopAndDestroy( pointEditor );
+    
+    return KErrNone;
+    
+    }
+
+// -----------------------------------------------------------------------------
+// CTestSDKEditors::TestFPEValueL
+// -----------------------------------------------------------------------------
+//
+TInt CTestSDKEditors::TestFPEValueL( CStifItemParser& /*aItem*/ )
+    {
+    CEikFloatingPointEditor* pointEditor = new (ELeave) CEikFloatingPointEditor;
+    CleanupStack::PushL( pointEditor );
+    STIF_ASSERT_NOT_NULL( pointEditor );
+    
+    pointEditor->ConstructL( KMin, KMax, KLimit );
+    pointEditor->SetValueL( &KMax );
+    STIF_ASSERT_TRUE( KMax == pointEditor->Value() );
+    
+    CleanupStack::PopAndDestroy( pointEditor );
+    
+    return KErrNone;
+    
+    }
+
+// -----------------------------------------------------------------------------
+// CTestSDKEditors::TestFPEGetValueAsRealL
+// -----------------------------------------------------------------------------
+//
+TInt CTestSDKEditors::TestFPEGetValueAsRealL( CStifItemParser& /*aItem*/ )
+    {
+    CEikFloatingPointEditor* pointEditor = new (ELeave) CEikFloatingPointEditor;
+    CleanupStack::PushL( pointEditor );
+    STIF_ASSERT_NOT_NULL( pointEditor );
+    
+    pointEditor->ConstructL( KMin, KMax, KLimit );
+    pointEditor->SetValueL( &KMax );
+    
+    TReal valueGet;
+    pointEditor->GetValueAsReal( valueGet );
+    STIF_ASSERT_TRUE( KMax == valueGet );
+    
+    CleanupStack::PopAndDestroy( pointEditor );
+    
+    return KErrNone;
+    
+    }
+
+// -----------------------------------------------------------------------------
+// CTestSDKEditors::TestFPESetValueL
+// -----------------------------------------------------------------------------
+//
+TInt CTestSDKEditors::TestFPESetValueL( CStifItemParser& aItem )
+    {
+    return TestFPEValueL( aItem );
+    
+    }
+
+// -----------------------------------------------------------------------------
+// CTestSDKEditors::TestFPESetMinMaxL
+// -----------------------------------------------------------------------------
+//
+TInt CTestSDKEditors::TestFPESetMinMaxL( CStifItemParser& /*aItem*/ )
+    {
+    CEikFloatingPointEditor* pointEditor = new (ELeave) CEikFloatingPointEditor;
+    CleanupStack::PushL( pointEditor );
+    STIF_ASSERT_NOT_NULL( pointEditor );
+    
+    pointEditor->ConstructL( KMin, KMax, KLimit );
+    pointEditor->SetMinMax( KMin, KMax );
+    
+    TReal minGet;
+    TReal maxGet;
+    pointEditor->GetMinMax( minGet, maxGet );
+    STIF_ASSERT_TRUE( KMin == minGet );
+    STIF_ASSERT_TRUE( KMax == maxGet );
+    
+    CleanupStack::PopAndDestroy( pointEditor );
+    
+    return KErrNone;
+    
+    }
+
+// -----------------------------------------------------------------------------
+// CTestSDKEditors::TestFPEGetMinMaxL
+// -----------------------------------------------------------------------------
+//
+TInt CTestSDKEditors::TestFPEGetMinMaxL( CStifItemParser& aItem )
+    {
+    return TestFPESetMinMaxL( aItem );
+    
+    }
+
+// -----------------------------------------------------------------------------
+// CTestSDKEditors::TestFPEConstructFromResourceL
+// -----------------------------------------------------------------------------
+//
+TInt CTestSDKEditors::TestFPEConstructFromResourceL( CStifItemParser& /*aItem*/ )
+    {
+    CEikFloatingPointEditor* pointEditor = new (ELeave) CEikFloatingPointEditor;
+    CleanupStack::PushL( pointEditor );
+    STIF_ASSERT_NOT_NULL( pointEditor );
+    
+    TResourceReader reader;
+    CCoeEnv::Static()->CreateResourceReaderLC( reader, R_TESTSDK_FPEEDITOR );
+    pointEditor->ConstructFromResourceL( reader );
+    CleanupStack::PopAndDestroy();
+    
+    CleanupStack::PopAndDestroy( pointEditor );
+    
+    return KErrNone;
+    
+    }
+
+// -----------------------------------------------------------------------------
+// CTestSDKEditors::TestFPEPrepareForFocusLossL
+// -----------------------------------------------------------------------------
+//
+TInt CTestSDKEditors::TestFPEPrepareForFocusLossL( CStifItemParser& /*aItem*/ )
+    {
+    CEikFloatingPointEditor* pointEditor = new (ELeave) CEikFloatingPointEditor;
+    CleanupStack::PushL( pointEditor );
+    STIF_ASSERT_NOT_NULL( pointEditor );
+    
+    pointEditor->ConstructL( KMin, KMax, KLimit );
+    _LIT( KText, "100" );
+    TBuf<KLength> text( KText );
+    pointEditor->SetTextL( &text );
+    pointEditor->PrepareForFocusLossL();
+    
+    CleanupStack::PopAndDestroy( pointEditor );
+    
+    return KErrNone;
+    
+    }
+
+// -----------------------------------------------------------------------------
+// CTestSDKEditors::TestFPEInputCapabilitiesL
+// -----------------------------------------------------------------------------
+//
+TInt CTestSDKEditors::TestFPEInputCapabilitiesL( CStifItemParser& /*aItem*/ )
+    {
+    CEikFloatingPointEditor* pointEditor = new (ELeave) CEikFloatingPointEditor;
+    CleanupStack::PushL( pointEditor );
+    STIF_ASSERT_NOT_NULL( pointEditor );
+    
+    pointEditor->ConstructL( KMin, KMax, KLimit );
+    TCoeInputCapabilities capa = pointEditor->InputCapabilities();
+    
+    CleanupStack::PopAndDestroy( pointEditor );
+    
+    return KErrNone;
+    
+    }
+
+// -----------------------------------------------------------------------------
+// CTestSDKEditors::TestFPEOfferKeyEventL
+// -----------------------------------------------------------------------------
+//
+TInt CTestSDKEditors::TestFPEOfferKeyEventL( CStifItemParser& /*aItem*/ )
+    {
+    CEikFloatingPointEditor* pointEditor = new (ELeave) CEikFloatingPointEditor;
+    CleanupStack::PushL( pointEditor );
+    STIF_ASSERT_NOT_NULL( pointEditor );
+    
+    pointEditor->ConstructL( KMin, KMax, KLimit );
+    TKeyEvent keyEvent;
+    keyEvent.iCode = EKeyCBA1;
+    STIF_ASSERT_TRUE( EKeyWasNotConsumed == pointEditor->OfferKeyEventL( keyEvent, EEventKeyDown ) );
+    
+    CleanupStack::PopAndDestroy( pointEditor );
+    
+    return KErrNone;
+    
+    }
+
+// -----------------------------------------------------------------------------
+// CTestSDKEditors::TestFPEHandleResourceChangeL
+// -----------------------------------------------------------------------------
+//
+TInt CTestSDKEditors::TestFPEHandleResourceChangeL( CStifItemParser& /*aItem*/ )
+    {
+    CEikFloatingPointEditor* pointEditor = new (ELeave) CEikFloatingPointEditor;
+    CleanupStack::PushL( pointEditor );
+    STIF_ASSERT_NOT_NULL( pointEditor );
+    
+    pointEditor->ConstructL( KMin, KMax, KLimit );
+
+    pointEditor->HandleResourceChange( KEikInputLanguageChange );
+    
+    CleanupStack::PopAndDestroy( pointEditor );
+    
+    return KErrNone;
+    
+    }
+
+// -----------------------------------------------------------------------------
+// CTestSDKEditors::TestFPEHandlePointerEventL
+// -----------------------------------------------------------------------------
+//
+TInt CTestSDKEditors::TestFPEHandlePointerEventL( CStifItemParser& /*aItem*/ )
+    {
+    CTestEditorsControl* control = CTestEditorsControl::NewL();
+    CleanupStack::PushL( control );
+    STIF_ASSERT_NOT_NULL( control );
+    
+    CEikFloatingPointEditor* pointEditor = new (ELeave) CEikFloatingPointEditor;
+    CleanupStack::PushL( pointEditor );
+    STIF_ASSERT_NOT_NULL( pointEditor );
+    
+    pointEditor->ConstructL( KMin, KMax, KLimit );
+    pointEditor->SetContainerWindowL( *control );
+    pointEditor->CreateTextViewL();
+
+    TPointerEvent event;
+    event.iType = TPointerEvent::EButton1Up;
+    pointEditor->HandlePointerEventL( event );
+    
+    CleanupStack::PopAndDestroy( pointEditor );
+    CleanupStack::PopAndDestroy( control );
+    
+    return KErrNone;
+    
+    }
+
+// -----------------------------------------------------------------------------
+// CTestSDKEditors::TestXPECEikFixedPointEditorL
+// -----------------------------------------------------------------------------
+//
+TInt CTestSDKEditors::TestXPECEikFixedPointEditorL( CStifItemParser& /*aItem*/ )
+    {
+    CEikFixedPointEditor* pointEditor = new (ELeave) CEikFixedPointEditor;
+    CleanupStack::PushL( pointEditor );
+    STIF_ASSERT_NOT_NULL( pointEditor );
+    
+    CleanupStack::PopAndDestroy( pointEditor );
+    
+    return KErrNone;
+    
+    }
+
+// -----------------------------------------------------------------------------
+// CTestSDKEditors::TestXPEConstructL
+// -----------------------------------------------------------------------------
+//
+TInt CTestSDKEditors::TestXPEConstructL( CStifItemParser& /*aItem*/ )
+    {
+    CEikFixedPointEditor* pointEditor = new (ELeave) CEikFixedPointEditor;
+    CleanupStack::PushL( pointEditor );
+    STIF_ASSERT_NOT_NULL( pointEditor );
+    
+    pointEditor->ConstructL( KMinValue, KMaxValue );
+    
+    CleanupStack::PopAndDestroy( pointEditor );
+    
+    return KErrNone;
+    
+    }
+
+// -----------------------------------------------------------------------------
+// CTestSDKEditors::TestXPEValueL
+// -----------------------------------------------------------------------------
+//
+TInt CTestSDKEditors::TestXPEValueL( CStifItemParser& /*aItem*/ )
+    {
+    CEikFixedPointEditor* pointEditor = new (ELeave) CEikFixedPointEditor;
+    CleanupStack::PushL( pointEditor );
+    STIF_ASSERT_NOT_NULL( pointEditor );
+    
+    pointEditor->ConstructL( KMinValue, KMaxValue );
+    pointEditor->SetValueL( &KMaxValue );
+    STIF_ASSERT_TRUE( KMaxValue == pointEditor->Value() );
+    
+    CleanupStack::PopAndDestroy( pointEditor );
+    
+    return KErrNone;
+    
+    }
+
+// -----------------------------------------------------------------------------
+// CTestSDKEditors::TestXPEGetValueAsIntegerL
+// -----------------------------------------------------------------------------
+//
+TInt CTestSDKEditors::TestXPEGetValueAsIntegerL( CStifItemParser& /*aItem*/ )
+    {
+    CEikFixedPointEditor* pointEditor = new (ELeave) CEikFixedPointEditor;
+    CleanupStack::PushL( pointEditor );
+    STIF_ASSERT_NOT_NULL( pointEditor );
+    
+    pointEditor->ConstructL( KMinValue, KMaxValue );
+    pointEditor->SetValueL( &KMaxValue );
+    TInt valueGet;
+    
+    STIF_ASSERT_TRUE( CAknNumericEdwin::EValueValid == pointEditor->GetValueAsInteger( valueGet ) );
+    STIF_ASSERT_TRUE( valueGet == KMaxValue );
+    
+    CleanupStack::PopAndDestroy( pointEditor );
+    
+    return KErrNone;
+    
+    }
+
+// -----------------------------------------------------------------------------
+// CTestSDKEditors::TestXPESetValueL
+// -----------------------------------------------------------------------------
+//
+TInt CTestSDKEditors::TestXPESetValueL( CStifItemParser& aItem )
+    {
+    return TestXPEValueL( aItem );
+    
+    }
+
+// -----------------------------------------------------------------------------
+// CTestSDKEditors::TestXPESetMinMaxrL
+// -----------------------------------------------------------------------------
+//
+TInt CTestSDKEditors::TestXPESetMinMaxrL( CStifItemParser& /*aItem*/ )
+    {
+    CEikFixedPointEditor* pointEditor = new (ELeave) CEikFixedPointEditor;
+    CleanupStack::PushL( pointEditor );
+    STIF_ASSERT_NOT_NULL( pointEditor );
+    
+    pointEditor->ConstructL( KMinValue, KMaxValue );
+    pointEditor->SetMinMax( KMinValue, KMaxValue );
+    TInt minGet;
+    TInt maxGet;
+    pointEditor->GetMinMax( minGet, maxGet );
+    
+    STIF_ASSERT_TRUE( minGet == KMinValue );
+    STIF_ASSERT_TRUE( maxGet == KMaxValue );
+    
+    CleanupStack::PopAndDestroy( pointEditor );
+    
+    return KErrNone;
+    
+    }
+
+// -----------------------------------------------------------------------------
+// CTestSDKEditors::TestXPEGetMinMaxL
+// -----------------------------------------------------------------------------
+//
+TInt CTestSDKEditors::TestXPEGetMinMaxL( CStifItemParser& aItem )
+    {
+    return TestXPESetMinMaxrL( aItem );
+    
+    }
+
+// -----------------------------------------------------------------------------
+// CTestSDKEditors::TestXPESetDecimalPlacesL
+// -----------------------------------------------------------------------------
+//
+TInt CTestSDKEditors::TestXPESetDecimalPlacesL( CStifItemParser& /*aItem*/ )
+    {
+    CEikFixedPointEditor* pointEditor = new (ELeave) CEikFixedPointEditor;
+    CleanupStack::PushL( pointEditor );
+    STIF_ASSERT_NOT_NULL( pointEditor );
+    
+    pointEditor->ConstructL( KMinValue, KMaxValue );
+    const TInt KDecimalPlace = 3;
+    pointEditor->SetDecimalPlaces( KDecimalPlace );
+    STIF_ASSERT_TRUE( KDecimalPlace == pointEditor->DecimalPlaces() );
+    
+    CleanupStack::PopAndDestroy( pointEditor );
+    
+    return KErrNone;
+    
+    }
+
+// -----------------------------------------------------------------------------
+// CTestSDKEditors::TestXPEDecimalPlacesL
+// -----------------------------------------------------------------------------
+//
+TInt CTestSDKEditors::TestXPEDecimalPlacesL( CStifItemParser& aItem )
+    {
+    return TestXPESetDecimalPlacesL( aItem );
+    
+    }
+
+// -----------------------------------------------------------------------------
+// CTestSDKEditors::TestXPEConstructFromResourceL
+// -----------------------------------------------------------------------------
+//
+TInt CTestSDKEditors::TestXPEConstructFromResourceL( CStifItemParser& /*aItem*/ )
+    {
+    CEikFixedPointEditor* pointEditor = new (ELeave) CEikFixedPointEditor;
+    CleanupStack::PushL( pointEditor );
+    STIF_ASSERT_NOT_NULL( pointEditor );
+    
+    TResourceReader reader;
+    CCoeEnv::Static()->CreateResourceReaderLC( reader, R_TESTSDK_XPEEDITOR );
+    pointEditor->ConstructFromResourceL( reader );
+    CleanupStack::PopAndDestroy();
+    
+    CleanupStack::PopAndDestroy( pointEditor );
+    
+    return KErrNone;
+    
+    }
+
+// -----------------------------------------------------------------------------
+// CTestSDKEditors::TestXPEPrepareForFocusLossL
+// -----------------------------------------------------------------------------
+//
+TInt CTestSDKEditors::TestXPEPrepareForFocusLossL( CStifItemParser& /*aItem*/ )
+    {
+    CEikFixedPointEditor* pointEditor = new (ELeave) CEikFixedPointEditor;
+    CleanupStack::PushL( pointEditor );
+    STIF_ASSERT_NOT_NULL( pointEditor );
+    
+    pointEditor->ConstructL( KMinValue, KMaxValue );
+    
+    _LIT( KText, "100" );
+    TBuf<KLength> text( KText );
+    pointEditor->SetTextL( &text );
+    pointEditor->PrepareForFocusLossL();
+    
+    CleanupStack::PopAndDestroy( pointEditor );
+    
+    return KErrNone;
+    
+    }
+
+// -----------------------------------------------------------------------------
+// CTestSDKEditors::TestXPEInputCapabilitiesL
+// -----------------------------------------------------------------------------
+//
+TInt CTestSDKEditors::TestXPEInputCapabilitiesL( CStifItemParser& /*aItem*/ )
+    {
+    CEikFixedPointEditor* pointEditor = new (ELeave) CEikFixedPointEditor;
+    CleanupStack::PushL( pointEditor );
+    STIF_ASSERT_NOT_NULL( pointEditor );
+    
+    pointEditor->ConstructL( KMinValue, KMaxValue );
+    
+    TCoeInputCapabilities capa = pointEditor->InputCapabilities();
+    
+    CleanupStack::PopAndDestroy( pointEditor );
+    
+    return KErrNone;
+    
+    }
+
+// -----------------------------------------------------------------------------
+// CTestSDKEditors::TestXPEOfferKeyEventL
+// -----------------------------------------------------------------------------
+//
+TInt CTestSDKEditors::TestXPEOfferKeyEventL( CStifItemParser& /*aItem*/ )
+    {
+    CEikFixedPointEditor* pointEditor = new (ELeave) CEikFixedPointEditor;
+    CleanupStack::PushL( pointEditor );
+    STIF_ASSERT_NOT_NULL( pointEditor );
+    
+    pointEditor->ConstructL( KMinValue, KMaxValue );
+    TKeyEvent keyEvent;
+    keyEvent.iCode = EKeyCBA1;
+    STIF_ASSERT_TRUE( EKeyWasNotConsumed == pointEditor->OfferKeyEventL( keyEvent, EEventKeyDown ) );
+    
+    CleanupStack::PopAndDestroy( pointEditor );
+    
+    return KErrNone;
+    
+    }
+
+// -----------------------------------------------------------------------------
+// CTestSDKEditors::TestXPEHandleResourceChangeL
+// -----------------------------------------------------------------------------
+//
+TInt CTestSDKEditors::TestXPEHandleResourceChangeL( CStifItemParser& /*aItem*/ )
+    {
+    CEikFixedPointEditor* pointEditor = new (ELeave) CEikFixedPointEditor;
+    CleanupStack::PushL( pointEditor );
+    STIF_ASSERT_NOT_NULL( pointEditor );
+    
+    pointEditor->ConstructL( KMinValue, KMaxValue );
+
+    _LIT( KText, "100" );
+    TBuf<KLength> text( KText );
+    pointEditor->SetTextL( &text );
+    
+    pointEditor->HandleResourceChange( KEikInputLanguageChange );
+    
+    CleanupStack::PopAndDestroy( pointEditor );
+    
+    return KErrNone;
+    
+    }
+
+// -----------------------------------------------------------------------------
+// CTestSDKEditors::TestXPEHandlePointerEventL
+// -----------------------------------------------------------------------------
+//
+TInt CTestSDKEditors::TestXPEHandlePointerEventL( CStifItemParser& /*aItem*/ )
+    {
+    CTestEditorsControl* control = CTestEditorsControl::NewL();
+    CleanupStack::PushL( control );
+    STIF_ASSERT_NOT_NULL( control );
+    
+    CEikFixedPointEditor* pointEditor = new (ELeave) CEikFixedPointEditor;
+    CleanupStack::PushL( pointEditor );
+    STIF_ASSERT_NOT_NULL( pointEditor );
+    
+    pointEditor->ConstructL( KMinValue, KMaxValue );
+    pointEditor->SetContainerWindowL( *control );
+    pointEditor->CreateTextViewL();
+    
+    TPointerEvent event;
+    event.iType = TPointerEvent::EButton1Down;
+    pointEditor->HandlePointerEventL( event );
+    
+    CleanupStack::PopAndDestroy( pointEditor );
+    CleanupStack::PopAndDestroy( control );
+    
+    return KErrNone;
+    
+    }