+void Control::EnableVisual( Property::Index index, bool enable )
+{
+ RegisteredVisualContainer::Iterator iter;
+ if ( FindVisual( index, mImpl->mVisuals, iter ) )
+ {
+ if ( (*iter)->enabled == enable )
+ {
+ return;
+ }
+
+ (*iter)->enabled = enable;
+ Actor parentActor = Self();
+ if ( (*iter)->placementActor )
+ {
+ parentActor = (*iter)->placementActor;
+ }
+
+ if ( Self().OnStage() ) // If control not on Stage then Visual will be added when StageConnection is called.
+ {
+ if ( enable )
+ {
+
+ (*iter)->visual.SetOnStage( parentActor );
+ }
+ else
+ {
+ (*iter)->visual.SetOffStage( parentActor ); // No need to call if control not staged.
+ }
+ }
+ }
+}
+
+bool Control::IsVisualEnabled( Property::Index index ) const
+{
+ RegisteredVisualContainer::Iterator iter;
+ if ( FindVisual( index, mImpl->mVisuals, iter ) )
+ {
+ return (*iter)->enabled;
+ }
+ return false;
+}
+