uiacceltk/hitchcock/coretoolkit/src/HuiTimedPoint.cpp
changeset 0 15bf7259bb7c
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/uiacceltk/hitchcock/coretoolkit/src/HuiTimedPoint.cpp	Tue Feb 02 07:56:43 2010 +0200
@@ -0,0 +1,129 @@
+/*
+* Copyright (c) 2006-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:   ?Description
+*
+*/
+
+
+
+#include "uiacceltk/HuiTimedPoint.h"  // Class definition
+#include "uiacceltk/HuiUtil.h"
+
+EXPORT_C THuiTimedPoint::THuiTimedPoint()
+    {
+    iX.SetMappingMode(0);
+    iY.SetMappingMode(1);
+    }
+
+
+EXPORT_C THuiTimedPoint::THuiTimedPoint(TReal32 aX, TReal32 aY) __SOFTFP
+        : iX(aX), iY(aY)
+    {
+    iX.SetMappingMode(0);
+    iY.SetMappingMode(1);
+    }
+
+
+EXPORT_C void THuiTimedPoint::SetStyle(THuiInterpolationStyle aStyle)
+    {
+    iX.SetStyle(aStyle);
+    iY.SetStyle(aStyle);
+    }
+
+
+EXPORT_C void THuiTimedPoint::SetFunction(MHuiMappingFunction* aFunction)
+    {
+    // Both use the same function, but the components are different.
+    iX.SetFunction(aFunction);
+    iY.SetFunction(aFunction);
+    }
+
+
+EXPORT_C void THuiTimedPoint::Set(const THuiRealPoint& aPoint,
+                                  TInt aTransitionTime)
+    {
+    iX.Set(aPoint.iX, aTransitionTime);
+    iY.Set(aPoint.iY, aTransitionTime);
+    }
+
+
+EXPORT_C void THuiTimedPoint::SetWithSpeed(const THuiRealPoint& aPoint,
+                                           TReal32 aUnitsPerSecond) __SOFTFP
+    {
+    iX.SetWithSpeed(aPoint.iX, aUnitsPerSecond);
+    iY.SetWithSpeed(aPoint.iY, aUnitsPerSecond);
+    }
+
+
+EXPORT_C void THuiTimedPoint::Set(TReal32 aValue, TInt aTransitionTime) __SOFTFP
+    {
+    iX.Set(aValue, aTransitionTime);
+    iY.Set(aValue, aTransitionTime);
+    }
+
+
+EXPORT_C void THuiTimedPoint::SetWithSpeed(TReal32 aValue, TReal32 aUnitsPerSecond) __SOFTFP
+    {
+    iX.SetWithSpeed(aValue, aUnitsPerSecond);
+    iY.SetWithSpeed(aValue, aUnitsPerSecond);
+    }
+
+
+EXPORT_C TPoint THuiTimedPoint::Now() const
+    {
+    // NOTE! the THuiTimeValue Now() and Target() return floating point values
+    // Round these floating point values to closest integer values
+    return TPoint(HUI_ROUND_FLOAT_TO_INT(iX.Now()), HUI_ROUND_FLOAT_TO_INT(iY.Now()));
+    }
+
+
+EXPORT_C THuiRealPoint THuiTimedPoint::RealNow() const __SOFTFP
+    {
+    // NOTE! the THuiTimeValue Now() and Target() return floating point values
+    return THuiRealPoint(iX.Now(), iY.Now());
+    }
+
+
+EXPORT_C TPoint THuiTimedPoint::Target() const
+    {
+    // NOTE! the THuiTimeValue Now() and Target() return floating point values
+    // Round these floating point values to closest integer values
+    return TPoint(HUI_ROUND_FLOAT_TO_INT(iX.Target()), HUI_ROUND_FLOAT_TO_INT(iY.Target()));
+    }
+
+
+EXPORT_C THuiRealPoint THuiTimedPoint::RealTarget() const __SOFTFP
+    {
+    return THuiRealPoint(iX.Target(), iY.Target());
+    }
+
+
+EXPORT_C void THuiTimedPoint::Finish()
+    {
+    iX.Finish();
+    iY.Finish();
+    }
+
+
+TBool THuiTimedPoint::Changed() const
+    {
+    return iX.Changed() || iY.Changed();
+    }
+
+
+void THuiTimedPoint::ClearChanged()
+    {
+    iX.ClearChanged();
+    iY.ClearChanged();
+    }