From: minho.sun Date: Thu, 8 Jun 2017 07:06:54 +0000 (+0900) Subject: Fixed getting SCROLL_POSITION_INTERVALS Property bug in ScrollBar X-Git-Tag: dali_1.2.43~2 X-Git-Url: http://review.tizen.org/git/?p=platform%2Fcore%2Fuifw%2Fdali-toolkit.git;a=commitdiff_plain;h=3e8125aaa4cd84f45c67a054bd0f6abe71ca0e9e Fixed getting SCROLL_POSITION_INTERVALS Property bug in ScrollBar Fixed getting SCROLL_POSITION_INTERVALS Property bug in ScrollBar. When getting SCROLL_POSITION_INTERVALS property via GetProperty, it always return 0. Make the result of GetProperty be same as GetScrollPositionInterval(). Change-Id: Ide7353ebfb82e80959f7a0834f98d4c05ccd201f Signed-off-by: minho.sun --- diff --git a/automated-tests/src/dali-toolkit/utc-Dali-ScrollBar.cpp b/automated-tests/src/dali-toolkit/utc-Dali-ScrollBar.cpp index 95b784d..f3a377c 100644 --- a/automated-tests/src/dali-toolkit/utc-Dali-ScrollBar.cpp +++ b/automated-tests/src/dali-toolkit/utc-Dali-ScrollBar.cpp @@ -698,6 +698,20 @@ int UtcDaliToolkitScrollBarGetScrollPositionIntervalsP(void) DALI_TEST_EQUALS( positionIntervals[8], results[8], TEST_LOCATION ); DALI_TEST_EQUALS( positionIntervals[9], results[9], TEST_LOCATION ); + Property::Array resultArray = scrollBar.GetProperty(Toolkit::ScrollBar::Property::SCROLL_POSITION_INTERVALS); + + DALI_TEST_EQUALS( positionIntervals.Count(), resultArray.Count(), TEST_LOCATION ); + DALI_TEST_EQUALS( positionIntervals[0], resultArray[0].Get(), TEST_LOCATION ); + DALI_TEST_EQUALS( positionIntervals[1], resultArray[1].Get(), TEST_LOCATION ); + DALI_TEST_EQUALS( positionIntervals[2], resultArray[2].Get(), TEST_LOCATION ); + DALI_TEST_EQUALS( positionIntervals[3], resultArray[3].Get(), TEST_LOCATION ); + DALI_TEST_EQUALS( positionIntervals[4], resultArray[4].Get(), TEST_LOCATION ); + DALI_TEST_EQUALS( positionIntervals[5], resultArray[5].Get(), TEST_LOCATION ); + DALI_TEST_EQUALS( positionIntervals[6], resultArray[6].Get(), TEST_LOCATION ); + DALI_TEST_EQUALS( positionIntervals[7], resultArray[7].Get(), TEST_LOCATION ); + DALI_TEST_EQUALS( positionIntervals[8], resultArray[8].Get(), TEST_LOCATION ); + DALI_TEST_EQUALS( positionIntervals[9], resultArray[9].Get(), TEST_LOCATION ); + END_TEST; } diff --git a/dali-toolkit/internal/controls/scroll-bar/scroll-bar-impl.cpp b/dali-toolkit/internal/controls/scroll-bar/scroll-bar-impl.cpp index dd55010..4360f1e 100755 --- a/dali-toolkit/internal/controls/scroll-bar/scroll-bar-impl.cpp +++ b/dali-toolkit/internal/controls/scroll-bar/scroll-bar-impl.cpp @@ -769,17 +769,20 @@ Property::Value ScrollBar::GetProperty( BaseObject* object, Property::Index inde } case Toolkit::ScrollBar::Property::SCROLL_POSITION_INTERVALS: { - Property::Value value( Property::ARRAY ); - Property::Array* array = value.GetArray(); + Property::Value tempValue( Property::ARRAY ); + Property::Array* array = tempValue.GetArray(); if( array ) { Dali::Vector positions = scrollBarImpl.GetScrollPositionIntervals(); - size_t positionCount( array->Count() ); + size_t positionCount( positions.Count() ); + for( size_t i( 0 ); i != positionCount; ++i ) { array->PushBack( positions[i] ); } + + value = tempValue; } break; }