/*
- * Copyright (c) 2014 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2018 Samsung Electronics Co., Ltd.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
namespace
{
-const int ARGINDEX_REF_VALUE = 0;
-const int ARGINDEX_STEP_SIZE = 1;
-const int ARGINDEX_CURRENT_STEP = 2;
+const int32_t ARGINDEX_REF_VALUE = 0;
+const int32_t ARGINDEX_STEP_SIZE = 1;
+const int32_t ARGINDEX_CURRENT_STEP = 2;
} // namespace
switch(valueType)
{
+ case Property::INTEGER:
+ {
+ function = EvalInteger;
+ break;
+ }
case Property::FLOAT:
{
function = EvalFloat;
{
const float refValue = arg[ARGINDEX_REF_VALUE];
const float step = arg[ARGINDEX_STEP_SIZE];
- const int currentStep = static_cast<int>(arg[ARGINDEX_CURRENT_STEP]);
+ const int32_t currentStep = static_cast<int32_t>(arg[ARGINDEX_CURRENT_STEP]);
const float distance = (propertyValue - refValue);
// step is actual 1.0f / step so can multiply instead of dividing
- const int newStep = static_cast<int>(floorf(distance * step));
+ const int32_t newStep = static_cast<int32_t>(floorf(distance * step));
if( newStep != currentStep )
{
return false;
}
+
+bool Step::EvalInteger( const Dali::PropertyInput& value, PropertyNotification::RawArgumentContainer& arg )
+{
+ const float propertyValue = static_cast<float>( value.GetInteger() );
+ return Evaluate( propertyValue, arg );
+}
+
bool Step::EvalFloat( const Dali::PropertyInput& value, PropertyNotification::RawArgumentContainer& arg )
{
const float propertyValue = value.GetFloat();
return Evaluate( propertyValue, arg );
}
-
bool Step::EvalVector2( const Dali::PropertyInput& value, PropertyNotification::RawArgumentContainer& arg )
{
const float propertyValue = value.GetVector2().LengthSquared();