#define DALI_INTERNAL_ACCESSIBILITY_BRIDGE_OBJECT_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 Samsung Electronics Co., Ltd.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
#include <dali/internal/accessibility/bridge/bridge-base.h>
#include <dali/public-api/math/rect.h>
+/**
+ * @brief The BridgeObject class is to correspond with Dali::Accessibility::Bridge.
+ */
class BridgeObject : public virtual BridgeBase
{
protected:
+ /**
+ * @brief Constructor.
+ */
BridgeObject();
+ /**
+ * @brief Registers Bridge functions to dbus interfaces.
+ */
void RegisterInterfaces();
- DBus::DBusInterfaceDescription::SignalId stateChanged;
+ /**
+ * @copydoc Dali::Accessibility::Bridge::EmitActiveDescendantChanged()
+ */
+ void EmitActiveDescendantChanged(Dali::Accessibility::Accessible* obj, Dali::Accessibility::Accessible* child) override;
+
+ /**
+ * @copydoc Dali::Accessibility::Bridge::EmitCursorMoved()
+ */
+ void EmitCursorMoved(Dali::Accessibility::Accessible* obj, unsigned int cursorPosition) override;
+
+ /**
+ * @copydoc Dali::Accessibility::Bridge::EmitTextChanged()
+ */
+ void EmitTextChanged(Dali::Accessibility::Accessible* obj, Dali::Accessibility::TextChangedState state, unsigned int position, unsigned int length, const std::string& content) override;
+
+ /**
+ * @copydoc Dali::Accessibility::Bridge::EmitStateChanged()
+ */
+ void EmitStateChanged(Dali::Accessibility::Accessible* obj, Dali::Accessibility::State state, int newValue, int reserved) override;
- void EmitActiveDescendantChanged( Dali::Accessibility::Accessible* obj, Dali::Accessibility::Accessible *child ) override;
- void EmitCaretMoved( Dali::Accessibility::Accessible* obj, unsigned int cursorPosition ) override;
- void EmitTextChanged( Dali::Accessibility::Accessible* obj, Dali::Accessibility::TextChangedState state, unsigned int position, unsigned int length, const std::string &content ) override;
- void EmitStateChanged( Dali::Accessibility::Accessible* obj, Dali::Accessibility::State state, int val1, int val2 ) override;
- void Emit( Dali::Accessibility::Accessible* obj, Dali::Accessibility::WindowEvent we, unsigned int detail1 ) override;
- void Emit( Dali::Accessibility::Accessible* obj, Dali::Accessibility::ObjectPropertyChangeEvent we ) override;
- void EmitBoundsChanged( Dali::Accessibility::Accessible* obj, Dali::Rect<> rect ) override;
+ /**
+ * @copydoc Dali::Accessibility::Bridge::Emit()
+ */
+ void Emit(Dali::Accessibility::Accessible* obj, Dali::Accessibility::WindowEvent event, unsigned int detail) override;
-public:
- int GetChildCount();
- DBus::ValueOrError< Dali::Accessibility::Accessible* > GetChildAtIndex( int index );
- Dali::Accessibility::Accessible* GetParent();
- DBus::ValueOrError< std::vector< Dali::Accessibility::Accessible* > > GetChildren();
- std::string GetName();
- std::string GetDescription();
- DBus::ValueOrError< uint32_t > GetRole();
- DBus::ValueOrError< std::string > GetRoleName();
- DBus::ValueOrError< std::string > GetLocalizedRoleName();
- DBus::ValueOrError< int32_t > GetIndexInParent();
- DBus::ValueOrError< std::array< uint32_t, 2 > > GetStates();
- DBus::ValueOrError< std::unordered_map< std::string, std::string > > GetAttributes();
- DBus::ValueOrError< std::vector< std::string > > GetInterfaces();
+ /**
+ * @copydoc Dali::Accessibility::Bridge::Emit()
+ */
+ void Emit(Dali::Accessibility::Accessible* obj, Dali::Accessibility::ObjectPropertyChangeEvent event) override;
+
+ /**
+ * @copydoc Dali::Accessibility::Bridge::EmitBoundsChanged()
+ */
+ void EmitBoundsChanged(Dali::Accessibility::Accessible* obj, Dali::Rect<> rect) override;
+
+ /**
+ * @copydoc Dali::Accessibility::Bridge::EmitMovedOutOfScreen()
+ */
+ void EmitMovedOutOfScreen(Dali::Accessibility::Accessible* obj, Dali::Accessibility::ScreenRelativeMoveType type) override;
+
+protected:
+ DBus::DBusInterfaceDescription::SignalId mStateChanged;
};
#endif // DALI_INTERNAL_ACCESSIBILITY_BRIDGE_OBJECT_H