X-Git-Url: http://review.tizen.org/git/?p=platform%2Fcore%2Fuifw%2Fdali-toolkit.git;a=blobdiff_plain;f=dali-toolkit%2Finternal%2Fvisuals%2Fimage%2Fimage-visual.cpp;h=59cccd55df926d9fcf6ef083459598f166c4186a;hp=ea3c49ccd416660c60c4de6ea7258d7a031cd630;hb=ecf31ea6865a0ebd5b668166427def6499b3ddc1;hpb=2019141bbcd901c7096f42caa9aa5ebb1324c983 diff --git a/dali-toolkit/internal/visuals/image/image-visual.cpp b/dali-toolkit/internal/visuals/image/image-visual.cpp index ea3c49c..59cccd5 100644 --- a/dali-toolkit/internal/visuals/image/image-visual.cpp +++ b/dali-toolkit/internal/visuals/image/image-visual.cpp @@ -869,7 +869,7 @@ void ImageVisual::DoSetOnStage( Actor& actor ) mPlacementActor.Reset(); // Image loaded and ready to display - ResourceReady(); + ResourceReady( Toolkit::Visual::ResourceStatus::READY ); } } @@ -927,6 +927,7 @@ void ImageVisual::DoCreatePropertyMap( Property::Map& map ) const map.Insert( Toolkit::ImageVisual::Property::WRAP_MODE_V, mWrapModeV ); map.Insert( Toolkit::ImageVisual::Property::ATLASING, mAttemptAtlasing ); + if( mMaskingData != NULL ) { map.Insert( Toolkit::ImageVisual::Property::ALPHA_MASK_URL, mMaskingData->mAlphaMaskUrl.GetUrl() ); @@ -963,6 +964,12 @@ void ImageVisual::OnSetTransform() } } +bool ImageVisual::IsResourceReady() const +{ + return ( mImpl->mResourceStatus == Toolkit::Visual::ResourceStatus::READY || + mImpl->mResourceStatus == Toolkit::Visual::ResourceStatus::FAILED ); +} + Shader ImageVisual::GetImageShader( VisualFactoryCache& factoryCache, bool atlasing, bool defaultTextureWrapping ) { Shader shader; @@ -1035,6 +1042,7 @@ void ImageVisual::UploadCompleted() // From Texture Manager void ImageVisual::UploadComplete( bool loadingSuccess, int32_t textureId, TextureSet textureSet, bool usingAtlas, const Vector4& atlasRectangle ) { + Toolkit::Visual::ResourceStatus resourceStatus; Actor actor = mPlacementActor.GetHandle(); if( actor ) { @@ -1054,6 +1062,8 @@ void ImageVisual::UploadComplete( bool loadingSuccess, int32_t textureId, Textur sampler.SetWrapMode( mWrapModeU, mWrapModeV ); textureSet.SetSampler( 0u, sampler ); mImpl->mRenderer.SetTextures(textureSet); + + resourceStatus = Toolkit::Visual::ResourceStatus::READY; } else { @@ -1063,9 +1073,11 @@ void ImageVisual::UploadComplete( bool loadingSuccess, int32_t textureId, Textur mImpl->mRenderer.SetTextures( textureSet ); ApplyImageToSampler( brokenImage ); + + resourceStatus = Toolkit::Visual::ResourceStatus::FAILED; } // Image loaded and ready to display - ResourceReady(); + ResourceReady( resourceStatus ); } } mLoading = false;