void Control::ClearBackground()
{
- Actor self( Self() );
- mImpl->mBackgroundVisual.RemoveAndReset( self );
+ if( mImpl->mBackgroundVisual )
+ {
+ Actor self( Self() );
+ Toolkit::GetImplementation( mImpl->mBackgroundVisual ).SetOffStage( self );
+ mImpl->mBackgroundVisual.Reset();
+ }
mImpl->mBackgroundColor = Color::TRANSPARENT;
}
void Control::UnregisterVisual( Property::Index index )
{
- RegisteredVisualContainer::Iterator iter;
- if ( FindVisual( index, mImpl->mVisuals, iter ) )
- {
- mImpl->mVisuals.Erase( iter );
- }
+ RegisteredVisualContainer::Iterator iter;
+ if ( FindVisual( index, mImpl->mVisuals, iter ) )
+ {
+ mImpl->mVisuals.Erase( iter );
+ }
}
Toolkit::Visual::Base Control::GetVisual( Property::Index index ) const