libaurum: add childat api on uiobject
authorWonki Kim <wonki_.kim@samsung.com>
Thu, 24 Sep 2020 09:47:29 +0000 (18:47 +0900)
committerWonki Kim <wonki_.kim@samsung.com>
Thu, 24 Sep 2020 09:50:16 +0000 (18:50 +0900)
uiobject doesn't have a api to get child at a specific index.
this patch add it.

Change-Id: Id06ed04de599a3734ef2f4b84cf8e4ad29d9a7d0

libaurum/inc/UiObject.h
libaurum/src/UiObject.cc

index 6b9e0d083ec8e002ef003fc6d421fbba192c8c3b..8fc4060454b32eea0cb0cdba34f451e873514a68 100644 (file)
@@ -125,6 +125,12 @@ public:
      */
     std::vector<std::shared_ptr<UiObject>> getChildren() const;
 
+    /**
+     * @brief TBD
+     * @since_tizen 5.5
+     */
+    std::shared_ptr<UiObject> getChildAt(int index) const;
+
     /**
      * @brief TBD
      * @since_tizen 5.5
index 4b52680c4f83c122d81500d638f553f92ebe4f55..428c39c33d6c78fc94aeb53853ea9a1ab7db1fe4 100644 (file)
@@ -130,6 +130,14 @@ int UiObject::getChildCount() const
     return getAccessibleNode()->getChildCount();
 }
 
+std::shared_ptr<UiObject> UiObject::getChildAt(int index) const {
+    auto childNode = getAccessibleNode()->getChildAt(index);
+    if (childNode) {
+        return std::make_shared<UiObject>(mDevice, mSelector, childNode);
+    }
+    return nullptr;
+}
+
 std::vector<std::shared_ptr<UiObject>> UiObject::getChildren() const
 {
     return this->findObjects(Sel::depth(1));