mPlacementActor.Reset();
// Image loaded and ready to display
- ResourceReady();
+ ResourceReady( Toolkit::Visual::ResourceStatus::READY );
}
}
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() );
}
}
+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;
// 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 )
{
sampler.SetWrapMode( mWrapModeU, mWrapModeV );
textureSet.SetSampler( 0u, sampler );
mImpl->mRenderer.SetTextures(textureSet);
+
+ resourceStatus = Toolkit::Visual::ResourceStatus::READY;
}
else
{
mImpl->mRenderer.SetTextures( textureSet );
ApplyImageToSampler( brokenImage );
+
+ resourceStatus = Toolkit::Visual::ResourceStatus::FAILED;
}
// Image loaded and ready to display
- ResourceReady();
+ ResourceReady( resourceStatus );
}
}
mLoading = false;