void ProgressBar::OnInitialize()
{
- DevelControl::SetAccessibilityConstructor(Self(), [](Dali::Actor actor) {
- return std::unique_ptr<Dali::Accessibility::Accessible>(
- new AccessibleImpl(actor, Dali::Accessibility::Role::PROGRESS_BAR));
- });
- //Enable highightability
- Self().SetProperty(Toolkit::DevelControl::Property::ACCESSIBILITY_HIGHLIGHTABLE, true);
+ // Accessibility
+ Self().SetProperty(DevelControl::Property::ACCESSIBILITY_ROLE, Dali::Accessibility::Role::PROGRESS_BAR);
+ Self().SetProperty(DevelControl::Property::ACCESSIBILITY_HIGHLIGHTABLE, true);
+}
+
+DevelControl::ControlAccessible* ProgressBar::CreateAccessibleObject()
+{
+ return new ProgressBarAccessible(Self());
}
void ProgressBar::OnRelayout(const Vector2& size, RelayoutContainer& container)
mValueChangedSignal.Emit(self, mProgressValue, mSecondaryProgressValue);
if(Self() == Dali::Accessibility::Accessible::GetCurrentlyHighlightedActor())
{
- Control::Impl::GetAccessibilityObject(Self())->Emit(Dali::Accessibility::ObjectPropertyChangeEvent::VALUE);
+ GetAccessibleObject()->Emit(Dali::Accessibility::ObjectPropertyChangeEvent::VALUE);
}
RelayoutRequest();
}
}
}
-double ProgressBar::AccessibleImpl::GetMinimum()
+double ProgressBar::ProgressBarAccessible::GetMinimum() const
{
return DEFAULT_LOWER_BOUND;
}
-double ProgressBar::AccessibleImpl::GetCurrent()
+double ProgressBar::ProgressBarAccessible::GetCurrent() const
{
- auto p = Toolkit::ProgressBar::DownCast(self);
- return p.GetProperty(Toolkit::ProgressBar::Property::PROGRESS_VALUE)
- .Get<float>();
+ auto self = Toolkit::ProgressBar::DownCast(Self());
+ return self.GetProperty(Toolkit::ProgressBar::Property::PROGRESS_VALUE).Get<float>();
}
-double ProgressBar::AccessibleImpl::GetMaximum()
+double ProgressBar::ProgressBarAccessible::GetMaximum() const
{
return DEFAULT_UPPER_BOUND;
}
-bool ProgressBar::AccessibleImpl::SetCurrent(double current)
+bool ProgressBar::ProgressBarAccessible::SetCurrent(double current)
{
if(current < GetMinimum() || current > GetMaximum())
+ {
return false;
- auto p = Toolkit::ProgressBar::DownCast(self);
- p.SetProperty(Toolkit::ProgressBar::Property::PROGRESS_VALUE,
- static_cast<float>(current));
+ }
+
+ auto self = Toolkit::ProgressBar::DownCast(Self());
+ self.SetProperty(Toolkit::ProgressBar::Property::PROGRESS_VALUE, static_cast<float>(current));
return true;
}
-double ProgressBar::AccessibleImpl::GetMinimumIncrement()
+double ProgressBar::ProgressBarAccessible::GetMinimumIncrement() const
{
return 0.0;
}