1
0
Fork 0
mirror of https://github.com/juce-framework/JUCE.git synced 2026-01-10 23:44:24 +00:00

Accessibility: Removed widget_handlers

This commit is contained in:
ed 2021-05-20 17:48:41 +01:00
parent 88313c26b6
commit 333983947e
17 changed files with 321 additions and 623 deletions

View file

@ -515,6 +515,35 @@ void Label::textEditorFocusLost (TextEditor& ed)
textEditorTextChanged (ed);
}
//==============================================================================
class LabelAccessibilityHandler : public AccessibilityHandler
{
public:
explicit LabelAccessibilityHandler (Label& labelToWrap)
: AccessibilityHandler (labelToWrap,
AccessibilityRole::staticText,
getAccessibilityActions (labelToWrap)),
label (labelToWrap)
{
}
String getTitle() const override { return label.getText(); }
private:
static AccessibilityActions getAccessibilityActions (Label& label)
{
if (label.isEditable())
return AccessibilityActions().addAction (AccessibilityActionType::press, [&label] { label.showEditor(); });
return {};
}
Label& label;
//==============================================================================
JUCE_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR (LabelAccessibilityHandler)
};
std::unique_ptr<AccessibilityHandler> Label::createAccessibilityHandler()
{
return std::make_unique<LabelAccessibilityHandler> (*this);