Add GetVisualProperty to Control
[platform/core/uifw/dali-toolkit.git] / dali-toolkit / devel-api / controls / control-devel.cpp
index 0b33685..0670e68 100644 (file)
@@ -115,6 +115,13 @@ VisualEventSignalType& VisualEventSignal(Control control)
   return controlDataImpl.VisualEventSignal();
 }
 
+Dali::Property GetVisualProperty(Control control, Dali::Property::Index index, Dali::Property::Key visualPropertyKey)
+{
+  Internal::Control&       internalControl = Toolkit::Internal::GetImplementation(control);
+  Internal::Control::Impl& controlDataImpl = Internal::Control::Impl::Get(internalControl);
+  return controlDataImpl.GetVisualProperty(index, visualPropertyKey);
+}
+
 static Toolkit::Internal::Control::Impl *GetControlImplementationIfAny( Dali::Actor actor)
 {
   Dali::Toolkit::Control c = Toolkit::Control::DownCast( actor );
@@ -139,6 +146,18 @@ Toolkit::DevelControl::AccessibilityReadingSkippedSignalType &AccessibilityReadi
   return ac->mAccessibilityReadingSkippedSignal;
 }
 
+Toolkit::DevelControl::AccessibilityReadingPausedSignalType &AccessibilityReadingPausedSignal( Toolkit::Control control )
+{
+  auto ac = GetControlImplementationIfAny ( control );
+  return ac->mAccessibilityReadingPausedSignal;
+}
+
+Toolkit::DevelControl::AccessibilityReadingResumedSignalType &AccessibilityReadingResumedSignal( Toolkit::Control control )
+{
+  auto ac = GetControlImplementationIfAny ( control );
+  return ac->mAccessibilityReadingResumedSignal;
+}
+
 Toolkit::DevelControl::AccessibilityReadingCancelledSignalType &AccessibilityReadingCancelledSignal( Toolkit::Control control )
 {
   auto ac = GetControlImplementationIfAny ( control );
@@ -287,7 +306,7 @@ bool ClearAccessibilityHighlight( Dali::Actor control )
 {
   if ( auto ac = GetControlImplementationIfAny ( control ) )
   {
-    auto ptr = dynamic_cast<Dali::Accessibility::Component*>( ac );
+    auto ptr = dynamic_cast<Dali::Accessibility::Component*>( ac->GetAccessibilityObject() );
     if( ptr )
       return ptr->ClearHighlight();
   }
@@ -298,7 +317,7 @@ bool GrabAccessibilityHighlight( Dali::Actor control )
 {
   if ( auto ac = GetControlImplementationIfAny ( control ) )
   {
-    auto ptr = dynamic_cast<Dali::Accessibility::Component*>( ac );
+    auto ptr = dynamic_cast<Dali::Accessibility::Component*>( ac->GetAccessibilityObject() );
     if( ptr )
       return ptr->GrabHighlight();
   }
@@ -309,7 +328,7 @@ Dali::Accessibility::States GetAccessibilityStates( Dali::Actor control )
 {
   if ( auto ac = GetControlImplementationIfAny ( control ) )
   {
-    auto ptr = dynamic_cast<Dali::Accessibility::Component*>( ac );
+    auto ptr = dynamic_cast<Dali::Accessibility::Component*>( ac->GetAccessibilityObject() );
     if(ptr)
       return ptr->GetStates();
   }
@@ -320,7 +339,7 @@ void NotifyAccessibilityStateChange( Dali::Actor control, Dali::Accessibility::S
 {
   if ( auto ac = GetControlImplementationIfAny ( control ) )
   {
-    ac->GetAccessibilityObject()->NotifyAccessibilityStateChange( states, doRecursive );
+    ac->GetAccessibilityObject()->NotifyAccessibilityStateChange( std::move(states), doRecursive );
   }
 }