X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=dali-toolkit%2Finternal%2Fcontrols%2Fscrollable%2Fitem-view%2Fdepth-layout.cpp;h=4cb20436bcfb44cccee56384266a693dcd207855;hb=c57e053b5795783ad92b0fd7f8fbaba6b6d9322a;hp=2fa572dd601cbc966ee01b64c732064e5723f964;hpb=c3f7ea6cb0c0b75c2276193aff88b5c7a679a2d5;p=platform%2Fcore%2Fuifw%2Fdali-toolkit.git diff --git a/dali-toolkit/internal/controls/scrollable/item-view/depth-layout.cpp b/dali-toolkit/internal/controls/scrollable/item-view/depth-layout.cpp old mode 100644 new mode 100755 index 2fa572d..4cb2043 --- a/dali-toolkit/internal/controls/scrollable/item-view/depth-layout.cpp +++ b/dali-toolkit/internal/controls/scrollable/item-view/depth-layout.cpp @@ -1,5 +1,5 @@ /* - * Copyright (c) 2015 Samsung Electronics Co., Ltd. + * Copyright (c) 2016 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. @@ -25,6 +25,7 @@ // INTERNAL INCLUDES #include +#include using namespace Dali; using namespace Dali::Toolkit; @@ -390,7 +391,7 @@ float DepthLayout::GetClosestAnchorPosition(float layoutPosition) const float DepthLayout::GetItemScrollToPosition(unsigned int itemId) const { - float rowIndex = static_cast(itemId / mImpl->mNumberOfColumns); + float rowIndex = static_cast< float >( itemId ) / mImpl->mNumberOfColumns; return -rowIndex * static_cast(mImpl->mNumberOfColumns); } @@ -418,14 +419,6 @@ void DepthLayout::GetDefaultItemSize( unsigned int itemId, const Vector3& layout itemSize.width = itemSize.height = itemSize.depth = ( IsVertical( GetOrientation() ) ? layoutSize.width : layoutSize.height ) / static_cast( mImpl->mNumberOfColumns + 1 ); } -void DepthLayout::GetResizeAnimation(Animation& animation, Actor actor, Vector3 size, float durationSeconds) const -{ - if(animation) - { - animation.AnimateTo( Property( actor, Actor::Property::SIZE ), size ); - } -} - Degree DepthLayout::GetScrollDirection() const { Degree scrollDirection(0.0f); @@ -453,6 +446,7 @@ Degree DepthLayout::GetScrollDirection() const void DepthLayout::ApplyConstraints( Actor& actor, const int itemId, const Vector3& layoutSize, const Actor& itemViewActor ) { + Dali::Toolkit::ItemView itemView = Dali::Toolkit::ItemView::DownCast( itemViewActor ); if( itemView ) { @@ -507,6 +501,62 @@ void DepthLayout::ApplyConstraints( Actor& actor, const int itemId, const Vector } } +void DepthLayout::SetDepthLayoutProperties(const Property::Map& properties) +{ + // Set any properties specified for DepthLayout. + for( unsigned int idx = 0, mapCount = properties.Count(); idx < mapCount; ++idx ) + { + KeyValuePair propertyPair = properties.GetKeyValue( idx ); + switch(DefaultItemLayoutProperty::Property(propertyPair.first.indexKey)) + { + case DefaultItemLayoutProperty::DEPTH_COLUMN_NUMBER: + { + SetNumberOfColumns(propertyPair.second.Get()); + break; + } + case DefaultItemLayoutProperty::DEPTH_ROW_NUMBER: + { + SetNumberOfRows(propertyPair.second.Get()); + break; + } + case DefaultItemLayoutProperty::DEPTH_ROW_SPACING: + { + SetRowSpacing(propertyPair.second.Get()); + break; + } + case DefaultItemLayoutProperty::DEPTH_MAXIMUM_SWIPE_SPEED: + { + SetMaximumSwipeSpeed(propertyPair.second.Get()); + break; + } + case DefaultItemLayoutProperty::DEPTH_SCROLL_SPEED_FACTOR: + { + SetScrollSpeedFactor(propertyPair.second.Get()); + break; + } + case DefaultItemLayoutProperty::DEPTH_TILT_ANGLE: + { + SetTiltAngle(Degree(Radian(propertyPair.second.Get()))); + break; + } + case DefaultItemLayoutProperty::DEPTH_ITEM_TILT_ANGLE: + { + SetItemTiltAngle(Degree(Radian(propertyPair.second.Get()))); + break; + } + case DefaultItemLayoutProperty::DEPTH_ITEM_FLICK_ANIMATION_DURATION: + { + SetItemFlickAnimationDuration(propertyPair.second.Get()); + break; + } + default: + { + break; + } + } + } +} + Vector3 DepthLayout::GetItemPosition( int itemID, float currentLayoutPosition, const Vector3& layoutSize ) const { Vector3 itemPosition = Vector3::ZERO; @@ -607,6 +657,10 @@ int DepthLayout::GetNextFocusItemID(int itemID, int maxItems, Dali::Toolkit::Con } break; } + default: + { + break; + } } return itemID; }