else
{
// if its not a string then get a Property::Map from the property if possible.
- Property::Map *map = value.GetMap();
+ const Property::Map *map = value.GetMap();
if( map && !map->Empty() ) // Empty map results in current visual removal.
{
DALI_LOG_INFO( gLogButtonFilter, Debug::Verbose, "CreateVisualsForComponent Using Map(%d)\n", index );
else
{
// Get a Property::Map from the property if possible.
- Property::Map* setPropertyMap = value.GetMap();
+ const Property::Map* setPropertyMap = value.GetMap();
if( setPropertyMap )
{
- TextVisual::ConvertStringKeysToIndexKeys( *setPropertyMap );
- GetImplementation( button ).MergeWithExistingLabelProperties( *setPropertyMap, outTextVisualProperties );
+ Property::Map indexKeys = TextVisual::ConvertStringKeysToIndexKeys( *setPropertyMap );
+ GetImplementation( button ).MergeWithExistingLabelProperties( indexKeys, outTextVisualProperties );
}
}
return mForegroundPadding;
}
+std::string Button::AccessibleImpl::GetNameRaw()
+{
+ auto slf = Toolkit::Button::DownCast( self );
+
+ Property::Map label = slf.GetProperty<Property::Map>( Toolkit::Button::Property::LABEL );
+
+ std::string labelText;
+ label.Find( Toolkit::TextVisual::Property::TEXT )->Get( labelText );
+
+ return labelText;
+}
+
+Dali::Accessibility::States Button::AccessibleImpl::CalculateStates()
+{
+ auto tmp = Control::Impl::AccessibleImpl::CalculateStates();
+ tmp[Dali::Accessibility::State::SELECTABLE] = true;
+ auto slf = Toolkit::Button::DownCast( self );
+ tmp[Dali::Accessibility::State::ENABLED] = !slf.GetProperty<bool>( Toolkit::Button::Property::DISABLED );
+ tmp[Dali::Accessibility::State::CHECKED] = slf.GetProperty<bool>( Toolkit::Button::Property::SELECTED );
+ return tmp;
+}
+
} // namespace Internal
} // namespace Toolkit