Added chaining support for Property::Array 39/92739/1
authorKimmo Hoikka <kimmo.hoikka@samsung.com>
Tue, 18 Oct 2016 10:56:27 +0000 (11:56 +0100)
committerKimmo Hoikka <kimmo.hoikka@samsung.com>
Tue, 18 Oct 2016 10:56:27 +0000 (11:56 +0100)
Change-Id: Id0a70f623890ae835285ff7db9fc1b202ddcddbe

automated-tests/src/dali/utc-Dali-PropertyArray.cpp
dali/public-api/object/property-array.h

index d48b334..4f3cd74 100644 (file)
@@ -49,6 +49,29 @@ int UtcDaliPropertyArrayPushBackP(void)
   END_TEST;
 }
 
   END_TEST;
 }
 
+int UtcDaliPropertyArrayAddP(void)
+{
+  Property::Array array;
+
+  DALI_TEST_CHECK( 0 == array.Size() );
+
+  array.Add( 1 );
+
+  DALI_TEST_CHECK( 1 == array.Size() );
+  DALI_TEST_CHECK( array[0].Get<int>() == 1 );
+
+  array.Add( 2 )
+       .Add( 3 )
+       .Add( 4.f );
+
+  DALI_TEST_EQUALS( 4u, array.Size(), TEST_LOCATION );
+  DALI_TEST_EQUALS( array[1].Get<int>(), 2, TEST_LOCATION );
+  DALI_TEST_EQUALS( array[2].Get<int>(), 3, TEST_LOCATION );
+  DALI_TEST_EQUALS( array[3].Get<float>(), 4.f, Math::MACHINE_EPSILON_1, TEST_LOCATION );
+
+  END_TEST;
+}
+
 int UtcDaliPropertyArrayCapacityP(void)
 {
   Property::Array array;
 int UtcDaliPropertyArrayCapacityP(void)
 {
   Property::Array array;
index 790043b..1b26b95 100644 (file)
@@ -130,6 +130,18 @@ public:
   void PushBack( const Value& value );
 
   /**
   void PushBack( const Value& value );
 
   /**
+   * @brief Add an element to the array.
+   *
+   * @SINCE_1_2.11
+   * @param[in] value The value to add to the end of the array
+   */
+  inline Property::Array& Add( const Value& value )
+  {
+    PushBack( value );
+    return *this;
+  }
+
+  /**
    * @brief Const access an element.
    *
    * @SINCE_1_0.0
    * @brief Const access an element.
    *
    * @SINCE_1_0.0