#ifndef DALI_ATSPI_ACCESSIBILITY_H\r
#define DALI_ATSPI_ACCESSIBILITY_H\r
/*\r
- * Copyright (c) 2021 Samsung Electronics Co., Ltd.\r
+ * Copyright (c) 2023 Samsung Electronics Co., Ltd.\r
*\r
* Licensed under the Apache License, Version 2.0 (the "License");\r
* you may not use this file except in compliance with the License.\r
{\r
namespace Accessibility\r
{\r
+class Accessible;\r
+\r
/**\r
* @brief Enumeration describing type of object move relative to the screen. Only outgoing moves are signalled to AT-clients.\r
*/\r
SHADE,\r
UU_SHADE,\r
RESTYLE,\r
+ POST_RENDER,\r
};\r
\r
/**\r
MAX_COUNT\r
};\r
\r
-using AtspiInterfaces = EnumBitSet<AtspiInterface, AtspiInterface::MAX_COUNT>;\r
-using ReadingInfoTypes = EnumBitSet<ReadingInfoType, ReadingInfoType::MAX_COUNT>;\r
-using States = EnumBitSet<State, State::MAX_COUNT>;\r
-using Attributes = std::unordered_map<std::string, std::string>;\r
+/**\r
+ * @brief Enumeration of all AT-SPI events.\r
+ */\r
+enum class AtspiEvent\r
+{\r
+ PROPERTY_CHANGED,\r
+ BOUNDS_CHANGED,\r
+ LINK_SELECTED,\r
+ STATE_CHANGED,\r
+ CHILDREN_CHANGED,\r
+ VISIBLE_DATA_CHANGED,\r
+ SELECTION_CHANGED,\r
+ MODEL_CHANGED,\r
+ ACTIVE_DESCENDANT_CHANGED,\r
+ ROW_INSERTED,\r
+ ROW_REORDERED,\r
+ ROW_DELETED,\r
+ COLUMN_INSERTED,\r
+ COLUMN_REORDERED,\r
+ COLUMN_DELETED,\r
+ TEXT_BOUNDS_CHANGED,\r
+ TEXT_SELECTION_CHANGED,\r
+ TEXT_CHANGED,\r
+ TEXT_ATTRIBUTES_CHANGED,\r
+ TEXT_CARET_MOVED,\r
+ ATTRIBUTES_CHANGED,\r
+ MOVED_OUT,\r
+ WINDOW_CHANGED,\r
+ MAX_COUNT\r
+};\r
+\r
+using AtspiInterfaces = EnumBitSet<AtspiInterface, AtspiInterface::MAX_COUNT>;\r
+using AtspiEvents = EnumBitSet<AtspiEvent, AtspiEvent::MAX_COUNT>;\r
+using ReadingInfoTypes = EnumBitSet<ReadingInfoType, ReadingInfoType::MAX_COUNT>;\r
+using States = EnumBitSet<State, State::MAX_COUNT>;\r
+using Attributes = std::unordered_map<std::string, std::string>;\r
\r
namespace Internal\r
{\r
\r
/**\r
* @brief Class representing accessibility relations\r
+ *\r
* Class connecting one source object with multiple target objects with usage\r
* of specific relation type.\r
- * @note std::string representing source and targets are string values of Accessibility::Address\r
- * @see Dali::Accessibility::Accessible::Address\r
+ *\r
+ * A remote target object (i.e. one belonging to a different process) can be\r
+ * represented in terms of a ProxyAccessible.\r
+ *\r
+ * @see Dali::Accessibility::Accessible::Accessible\r
* @see Dali::Accessibility::Accessible::RelationType\r
*/\r
struct DALI_ADAPTOR_API Relation\r
{\r
- Relation(RelationType relationType, std::vector<Address> targets)\r
- : relationType(relationType),\r
- targets(targets)\r
+ Relation(RelationType relationType, const std::vector<Accessible*>& targets)\r
+ : mRelationType(relationType),\r
+ mTargets(targets)\r
{\r
}\r
\r
- RelationType relationType;\r
- std::vector<Address> targets;\r
+ RelationType mRelationType;\r
+ std::vector<Accessible*> mTargets;\r
};\r
\r
} // namespace Accessibility\r