X-Git-Url: http://review.tizen.org/git/?p=platform%2Fcore%2Fuifw%2Fdali-toolkit.git;a=blobdiff_plain;f=dali-toolkit%2Finternal%2Fcontrols%2Fimage-view%2Fimage-view-impl.cpp;h=eba10853281f58b618f708fb518168a8c547dab3;hp=5e520d87832b071686dad7f165d2dc632a9697f5;hb=c7d84762db43777627ad936f794afb4b08f3e82b;hpb=56523221b58038d0a88e415eb5a163a983d2b63c diff --git a/dali-toolkit/internal/controls/image-view/image-view-impl.cpp b/dali-toolkit/internal/controls/image-view/image-view-impl.cpp index 5e520d8..eba1085 100755 --- a/dali-toolkit/internal/controls/image-view/image-view-impl.cpp +++ b/dali-toolkit/internal/controls/image-view/image-view-impl.cpp @@ -233,6 +233,22 @@ void ImageView::SetDepthIndex( int depthIndex ) } } +void ImageView::OnStageConnection( int depth ) +{ + if( mImage ) + { + mImage.UploadedSignal().Emit( mImage ); + } + + Dali::ResourceImage resourceImage = Dali::ResourceImage::DownCast( mImage ); + if( resourceImage ) + { + resourceImage.LoadingFinishedSignal().Emit( resourceImage ); + } + + Control::OnStageConnection( depth ); // Enabled visuals will be put on stage +} + Vector3 ImageView::GetNaturalSize() { if( mVisual ) @@ -394,19 +410,23 @@ void ImageView::SetProperty( BaseObject* object, Property::Index index, const Pr // the property map contains only the custom shader else if( ( map->Count() == 1u )&&( shaderValue ) ) { - impl.mShaderMap = *( shaderValue->GetMap() ); - - if( !impl.mUrl.empty() ) + Property::Map* shaderMap = shaderValue->GetMap(); + if( shaderMap ) { - impl.SetImage( impl.mUrl, impl.mImageSize ); - } - else if( impl.mImage ) - { - impl.SetImage( impl.mImage ); - } - else if( !impl.mPropertyMap.Empty() ) - { - impl.SetImage( impl.mPropertyMap ); + impl.mShaderMap = *shaderMap; + + if( !impl.mUrl.empty() ) + { + impl.SetImage( impl.mUrl, impl.mImageSize ); + } + else if( impl.mImage ) + { + impl.SetImage( impl.mImage ); + } + else if( !impl.mPropertyMap.Empty() ) + { + impl.SetImage( impl.mPropertyMap ); + } } } } @@ -459,9 +479,15 @@ Property::Value ImageView::GetProperty( BaseObject* object, Property::Index prop Scripting::CreatePropertyMap( impl.mImage, map ); value = map; } - else if( !impl.mPropertyMap.Empty() ) + else { - value = impl.mPropertyMap; + Property::Map map; + Toolkit::Visual::Base visual = DevelControl::GetVisual( impl, Toolkit::ImageView::Property::IMAGE ); + if( visual ) + { + visual.CreatePropertyMap( map ); + } + value = map; } break; }