[dali_1.4.39] Merge branch 'devel/master'
[platform/core/uifw/dali-csharp-binder.git] / dali-csharp-binder / src / dali_wrap.cpp
index 466f20c..3a3d457 100755 (executable)
@@ -425,6 +425,7 @@ void SWIG_CSharpException(int code, const char *msg) {
 
 #include <dali/devel-api/actors/actor-devel.h>
 #include <dali/devel-api/common/stage-devel.h>
+#include <dali/devel-api/events/key-event-devel.h>
 
 #include <dali/public-api/math/matrix.h>
 #include <dali/public-api/math/matrix3.h>
@@ -435,8 +436,7 @@ void SWIG_CSharpException(int code, const char *msg) {
 
 #include <dali/public-api/adaptor-framework/timer.h>
 #include <dali/public-api/adaptor-framework/style-change.h>
-#include <dali/devel-api/adaptor-framework/drag-and-drop-detector.h>
-#include <dali/devel-api/adaptor-framework/application-extensions.h>
+#include <dali/devel-api/adaptor-framework/environment-variable.h>
 
 #include <dali/devel-api/images/nine-patch-image.h>
 
@@ -464,6 +464,7 @@ void SWIG_CSharpException(int code, const char *msg) {
 
 #include <dali-toolkit/devel-api/controls/tooltip/tooltip-properties.h>
 #include <dali-toolkit/devel-api/visuals/image-visual-properties-devel.h>
+#include <dali-toolkit/devel-api/controls/control-depth-index-ranges.h>
 
 #include <dali-toolkit/public-api/controls/scrollable/item-view/item-view-declarations.h>
 
@@ -472,6 +473,11 @@ void SWIG_CSharpException(int code, const char *msg) {
 
 #include <dali/public-api/events/mouse-button.h>
 
+#include <dali-toolkit/devel-api/controls/web-view/web-view.h>
+#include "web-view-signal-converter.h"
+
+#include <dali/integration-api/debug.h>
+
 // add here SWIG version check
 
 #if defined(_MSC_VER)         // Microsoft Visual C++ 6.0
@@ -1684,7 +1690,6 @@ SWIGINTERN bool Dali_Signal_Sl_bool_Sp_Dali_Toolkit_Slider_Sc_int_SP__Sg__Emit(D
         return self->Emit( arg1, arg2 );
       }
 
-
 /* ---------------------------------------------------
  * C++ director class methods
  * --------------------------------------------------- */
@@ -2563,7 +2568,7 @@ Dali::Actor SwigDirector_CustomAlgorithmInterface::GetNextFocusableActor(Dali::A
     jdirection = (int)direction;
     jresult = (void *) swig_callbackGetNextFocusableActor(jcurrent, jproposed, jdirection);
     if (!jresult) {
-      SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Unexpected null return for type Dali::Actor", 0);
+      DALI_LOG_ERROR("[ERROR][%s line:%d] Unexpected null return for type Dali::Actor! Next focus will be NULL, please be cautious to handle the keyboard foucs! ", __FILE__, __LINE__);
       return c_result;
     }
     c_result = *(Dali::Actor *)jresult;
@@ -23973,7 +23978,9 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_PixelData_New(unsigned char* jarg1, un
   arg6 = (Dali::PixelData::ReleaseFunction)jarg6;
   {
     try {
-      result = Dali::PixelData::New(arg1,arg2,arg3,arg4,arg5,arg6);
+      auto pixelBuffer = new unsigned char[jarg2];
+      memcpy( pixelBuffer, arg1, arg2);
+      result = Dali::PixelData::New(pixelBuffer,arg2,arg3,arg4,arg5,arg6);
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -26524,6 +26531,56 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_Shader_Assign(void * jarg1, void * jar
 }
 
 
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_Renderer_Range_BACKGROUND_EFFECT_get() {
+  int jresult ;
+  int result;
+
+  result = (int)Dali::Toolkit::DepthIndex::Ranges::BACKGROUND_EFFECT;
+  jresult = (int)result;
+  return jresult;
+}
+
+
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_Renderer_Range_BACKGROUND_get() {
+  int jresult ;
+  int result;
+
+  result = (int)Dali::Toolkit::DepthIndex::Ranges::BACKGROUND;
+  jresult = (int)result;
+  return jresult;
+}
+
+
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_Renderer_Range_CONTENT_get() {
+  int jresult ;
+  int result;
+
+  result = (int)Dali::Toolkit::DepthIndex::Ranges::CONTENT;
+  jresult = (int)result;
+  return jresult;
+}
+
+
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_Renderer_Range_DECORATION_get() {
+  int jresult ;
+  int result;
+
+  result = (int)Dali::Toolkit::DepthIndex::Ranges::DECORATION;
+  jresult = (int)result;
+  return jresult;
+}
+
+
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_Renderer_Range_FOREGROUND_EFFECT_get() {
+  int jresult ;
+  int result;
+
+  result = (int)Dali::Toolkit::DepthIndex::FOREGROUND_EFFECT;
+  jresult = (int)result;
+  return jresult;
+}
+
+
 SWIGEXPORT int SWIGSTDCALL CSharp_Dali_Renderer_Property_DEPTH_INDEX_get() {
   int jresult ;
   int result;
@@ -31448,218 +31505,19 @@ SWIGEXPORT int SWIGSTDCALL CSharp_Dali_Key_state_get(void * jarg1) {
   return jresult;
 }
 
+SWIGEXPORT char * SWIGSTDCALL CSharp_Dali_Key_logicalKey_get(void * jarg1) {
+  char * jresult ;
+  std::string result;
+  Dali::KeyEvent *arg1 = (Dali::KeyEvent *) 0;
 
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_LongPressGestureDetector__SWIG_0() {
-  void * jresult ;
-  Dali::LongPressGestureDetector *result = 0 ;
-
-  {
-    try {
-      result = (Dali::LongPressGestureDetector *)new Dali::LongPressGestureDetector();
-    } catch (std::out_of_range& e) {
-      {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
-      };
-    } catch (std::exception& e) {
-      {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
-      };
-    } catch (Dali::DaliException e) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
-      };
-    } catch (...) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
-      };
-    }
-  }
-
-  jresult = (void *)result;
-  return jresult;
-}
-
-
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_LongPressGestureDetector_New__SWIG_0() {
-  void * jresult ;
-  Dali::LongPressGestureDetector result;
-
-  {
-    try {
-      result = Dali::LongPressGestureDetector::New();
-    } catch (std::out_of_range& e) {
-      {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
-      };
-    } catch (std::exception& e) {
-      {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
-      };
-    } catch (Dali::DaliException e) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
-      };
-    } catch (...) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
-      };
-    }
-  }
-
-  jresult = new Dali::LongPressGestureDetector((const Dali::LongPressGestureDetector &)result);
-  return jresult;
-}
-
-
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_LongPressGestureDetector_New__SWIG_1(unsigned int jarg1) {
-  void * jresult ;
-  unsigned int arg1 ;
-  Dali::LongPressGestureDetector result;
-
-  arg1 = (unsigned int)jarg1;
-  {
-    try {
-      result = Dali::LongPressGestureDetector::New(arg1);
-    } catch (std::out_of_range& e) {
-      {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
-      };
-    } catch (std::exception& e) {
-      {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
-      };
-    } catch (Dali::DaliException e) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
-      };
-    } catch (...) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
-      };
-    }
-  }
-
-  jresult = new Dali::LongPressGestureDetector((const Dali::LongPressGestureDetector &)result);
-  return jresult;
-}
-
-
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_LongPressGestureDetector_New__SWIG_2(unsigned int jarg1, unsigned int jarg2) {
-  void * jresult ;
-  unsigned int arg1 ;
-  unsigned int arg2 ;
-  Dali::LongPressGestureDetector result;
-
-  arg1 = (unsigned int)jarg1;
-  arg2 = (unsigned int)jarg2;
-  {
-    try {
-      result = Dali::LongPressGestureDetector::New(arg1,arg2);
-    } catch (std::out_of_range& e) {
-      {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
-      };
-    } catch (std::exception& e) {
-      {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
-      };
-    } catch (Dali::DaliException e) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
-      };
-    } catch (...) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
-      };
-    }
-  }
-
-  jresult = new Dali::LongPressGestureDetector((const Dali::LongPressGestureDetector &)result);
-  return jresult;
-}
-
-
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_LongPressGestureDetector_DownCast(void * jarg1) {
-  void * jresult ;
-  Dali::BaseHandle arg1 ;
-  Dali::BaseHandle *argp1 ;
-  Dali::LongPressGestureDetector result;
-
-  argp1 = (Dali::BaseHandle *)jarg1;
-  if (!argp1) {
-    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null Dali::BaseHandle", 0);
-    return 0;
-  }
-  arg1 = *argp1;
-  {
-    try {
-      result = Dali::LongPressGestureDetector::DownCast(arg1);
-    } catch (std::out_of_range& e) {
-      {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
-      };
-    } catch (std::exception& e) {
-      {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
-      };
-    } catch (Dali::DaliException e) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
-      };
-    } catch (...) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
-      };
-    }
-  }
-
-  jresult = new Dali::LongPressGestureDetector((const Dali::LongPressGestureDetector &)result);
-  return jresult;
-}
-
-
-SWIGEXPORT void SWIGSTDCALL CSharp_Dali_delete_LongPressGestureDetector(void * jarg1) {
-  Dali::LongPressGestureDetector *arg1 = (Dali::LongPressGestureDetector *) 0 ;
-
-  arg1 = (Dali::LongPressGestureDetector *)jarg1;
-  {
-    try {
-      delete arg1;
-    } catch (std::out_of_range& e) {
-      {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
-      };
-    } catch (std::exception& e) {
-      {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return ;
-      };
-    } catch (Dali::DaliException e) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return ;
-      };
-    } catch (...) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ;
-      };
-    }
-  }
-
-}
-
-
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_LongPressGestureDetector__SWIG_1(void * jarg1) {
-  void * jresult ;
-  Dali::LongPressGestureDetector *arg1 = 0 ;
-  Dali::LongPressGestureDetector *result = 0 ;
-
-  arg1 = (Dali::LongPressGestureDetector *)jarg1;
+  arg1 = (Dali::KeyEvent *)jarg1;
   if (!arg1) {
-    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::LongPressGestureDetector const & type is null", 0);
+    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::DevelKeyEvent const & type is null", 0);
     return 0;
   }
   {
     try {
-      result = (Dali::LongPressGestureDetector *)new Dali::LongPressGestureDetector((Dali::LongPressGestureDetector const &)*arg1);
+      result = Dali::DevelKeyEvent::GetLogicalKey(*arg1);
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -31677,28 +31535,264 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_LongPressGestureDetector__SWIG_1(v
         SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
       };
     }
+
   }
 
-  jresult = (void *)result;
+  jresult = SWIG_csharp_string_callback( (&result)->c_str() );
   return jresult;
 }
 
 
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_LongPressGestureDetector_Assign(void * jarg1, void * jarg2) {
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_LongPressGestureDetector__SWIG_0() {
   void * jresult ;
-  Dali::LongPressGestureDetector *arg1 = (Dali::LongPressGestureDetector *) 0 ;
-  Dali::LongPressGestureDetector *arg2 = 0 ;
   Dali::LongPressGestureDetector *result = 0 ;
 
-  arg1 = (Dali::LongPressGestureDetector *)jarg1;
-  arg2 = (Dali::LongPressGestureDetector *)jarg2;
-  if (!arg2) {
-    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::LongPressGestureDetector const & type is null", 0);
-    return 0;
-  }
   {
     try {
-      result = (Dali::LongPressGestureDetector *) &(arg1)->operator =((Dali::LongPressGestureDetector const &)*arg2);
+      result = (Dali::LongPressGestureDetector *)new Dali::LongPressGestureDetector();
+    } catch (std::out_of_range& e) {
+      {
+        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
+      };
+    } catch (std::exception& e) {
+      {
+        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
+      };
+    } catch (Dali::DaliException e) {
+      {
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
+      };
+    } catch (...) {
+      {
+        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
+      };
+    }
+  }
+
+  jresult = (void *)result;
+  return jresult;
+}
+
+
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_LongPressGestureDetector_New__SWIG_0() {
+  void * jresult ;
+  Dali::LongPressGestureDetector result;
+
+  {
+    try {
+      result = Dali::LongPressGestureDetector::New();
+    } catch (std::out_of_range& e) {
+      {
+        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
+      };
+    } catch (std::exception& e) {
+      {
+        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
+      };
+    } catch (Dali::DaliException e) {
+      {
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
+      };
+    } catch (...) {
+      {
+        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
+      };
+    }
+  }
+
+  jresult = new Dali::LongPressGestureDetector((const Dali::LongPressGestureDetector &)result);
+  return jresult;
+}
+
+
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_LongPressGestureDetector_New__SWIG_1(unsigned int jarg1) {
+  void * jresult ;
+  unsigned int arg1 ;
+  Dali::LongPressGestureDetector result;
+
+  arg1 = (unsigned int)jarg1;
+  {
+    try {
+      result = Dali::LongPressGestureDetector::New(arg1);
+    } catch (std::out_of_range& e) {
+      {
+        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
+      };
+    } catch (std::exception& e) {
+      {
+        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
+      };
+    } catch (Dali::DaliException e) {
+      {
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
+      };
+    } catch (...) {
+      {
+        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
+      };
+    }
+  }
+
+  jresult = new Dali::LongPressGestureDetector((const Dali::LongPressGestureDetector &)result);
+  return jresult;
+}
+
+
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_LongPressGestureDetector_New__SWIG_2(unsigned int jarg1, unsigned int jarg2) {
+  void * jresult ;
+  unsigned int arg1 ;
+  unsigned int arg2 ;
+  Dali::LongPressGestureDetector result;
+
+  arg1 = (unsigned int)jarg1;
+  arg2 = (unsigned int)jarg2;
+  {
+    try {
+      result = Dali::LongPressGestureDetector::New(arg1,arg2);
+    } catch (std::out_of_range& e) {
+      {
+        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
+      };
+    } catch (std::exception& e) {
+      {
+        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
+      };
+    } catch (Dali::DaliException e) {
+      {
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
+      };
+    } catch (...) {
+      {
+        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
+      };
+    }
+  }
+
+  jresult = new Dali::LongPressGestureDetector((const Dali::LongPressGestureDetector &)result);
+  return jresult;
+}
+
+
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_LongPressGestureDetector_DownCast(void * jarg1) {
+  void * jresult ;
+  Dali::BaseHandle arg1 ;
+  Dali::BaseHandle *argp1 ;
+  Dali::LongPressGestureDetector result;
+
+  argp1 = (Dali::BaseHandle *)jarg1;
+  if (!argp1) {
+    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null Dali::BaseHandle", 0);
+    return 0;
+  }
+  arg1 = *argp1;
+  {
+    try {
+      result = Dali::LongPressGestureDetector::DownCast(arg1);
+    } catch (std::out_of_range& e) {
+      {
+        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
+      };
+    } catch (std::exception& e) {
+      {
+        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
+      };
+    } catch (Dali::DaliException e) {
+      {
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
+      };
+    } catch (...) {
+      {
+        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
+      };
+    }
+  }
+
+  jresult = new Dali::LongPressGestureDetector((const Dali::LongPressGestureDetector &)result);
+  return jresult;
+}
+
+
+SWIGEXPORT void SWIGSTDCALL CSharp_Dali_delete_LongPressGestureDetector(void * jarg1) {
+  Dali::LongPressGestureDetector *arg1 = (Dali::LongPressGestureDetector *) 0 ;
+
+  arg1 = (Dali::LongPressGestureDetector *)jarg1;
+  {
+    try {
+      delete arg1;
+    } catch (std::out_of_range& e) {
+      {
+        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
+      };
+    } catch (std::exception& e) {
+      {
+        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return ;
+      };
+    } catch (Dali::DaliException e) {
+      {
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return ;
+      };
+    } catch (...) {
+      {
+        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ;
+      };
+    }
+  }
+
+}
+
+
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_LongPressGestureDetector__SWIG_1(void * jarg1) {
+  void * jresult ;
+  Dali::LongPressGestureDetector *arg1 = 0 ;
+  Dali::LongPressGestureDetector *result = 0 ;
+
+  arg1 = (Dali::LongPressGestureDetector *)jarg1;
+  if (!arg1) {
+    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::LongPressGestureDetector const & type is null", 0);
+    return 0;
+  }
+  {
+    try {
+      result = (Dali::LongPressGestureDetector *)new Dali::LongPressGestureDetector((Dali::LongPressGestureDetector const &)*arg1);
+    } catch (std::out_of_range& e) {
+      {
+        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
+      };
+    } catch (std::exception& e) {
+      {
+        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
+      };
+    } catch (Dali::DaliException e) {
+      {
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
+      };
+    } catch (...) {
+      {
+        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
+      };
+    }
+  }
+
+  jresult = (void *)result;
+  return jresult;
+}
+
+
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_LongPressGestureDetector_Assign(void * jarg1, void * jarg2) {
+  void * jresult ;
+  Dali::LongPressGestureDetector *arg1 = (Dali::LongPressGestureDetector *) 0 ;
+  Dali::LongPressGestureDetector *arg2 = 0 ;
+  Dali::LongPressGestureDetector *result = 0 ;
+
+  arg1 = (Dali::LongPressGestureDetector *)jarg1;
+  arg2 = (Dali::LongPressGestureDetector *)jarg2;
+  if (!arg2) {
+    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::LongPressGestureDetector const & type is null", 0);
+    return 0;
+  }
+  {
+    try {
+      result = (Dali::LongPressGestureDetector *) &(arg1)->operator =((Dali::LongPressGestureDetector const &)*arg2);
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -33244,16 +33338,6 @@ SWIGEXPORT int SWIGSTDCALL CSharp_Dali_Actor_Property_COLOR_MODE_get() {
 }
 
 
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_Actor_Property_POSITION_INHERITANCE_get() {
-  int jresult ;
-  int result;
-
-  result = (int)Dali::Actor::Property::POSITION_INHERITANCE;
-  jresult = (int)result;
-  return jresult;
-}
-
-
 SWIGEXPORT int SWIGSTDCALL CSharp_Dali_Actor_Property_DRAW_MODE_get() {
   int jresult ;
   int result;
@@ -33718,6 +33802,12 @@ SWIGEXPORT unsigned int SWIGSTDCALL CSharp_Dali_Actor_GetId(void * jarg1) {
   unsigned int result;
 
   arg1 = (Dali::Actor *)jarg1;
+
+  if(!arg1) {
+    DALI_LOG_ERROR("[ERROR] actor is null! return -1");
+    return -1;
+  }
+
   {
     try {
       result = (unsigned int)((Dali::Actor const *)arg1)->GetId();
@@ -34860,39 +34950,6 @@ SWIGEXPORT void SWIGSTDCALL CSharp_Dali_Actor_SetInheritPosition(void * jarg1, u
 }
 
 
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_Actor_GetPositionInheritanceMode(void * jarg1) {
-  int jresult ;
-  Dali::Actor *arg1 = (Dali::Actor *) 0 ;
-  Dali::PositionInheritanceMode result;
-
-  arg1 = (Dali::Actor *)jarg1;
-  {
-    try {
-      result = (Dali::PositionInheritanceMode)((Dali::Actor const *)arg1)->GetPositionInheritanceMode();
-    } catch (std::out_of_range& e) {
-      {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
-      };
-    } catch (std::exception& e) {
-      {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
-      };
-    } catch (Dali::DaliException e) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
-      };
-    } catch (...) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
-      };
-    }
-  }
-
-  jresult = (int)result;
-  return jresult;
-}
-
-
 SWIGEXPORT unsigned int SWIGSTDCALL CSharp_Dali_Actor_IsPositionInherited(void * jarg1) {
   unsigned int jresult ;
   Dali::Actor *arg1 = (Dali::Actor *) 0 ;
@@ -36700,14 +36757,6 @@ SWIGEXPORT int SWIGSTDCALL CSharp_Dali_Actor_GetHierarchyDepth(void * jarg1) {
     try {
       result = (int)(arg1)->GetHierarchyDepth();
       Dali::Actor parent = ((Dali::Actor const *)arg1)->GetParent();
-      if(parent)
-      {
-        const std::string parentName = parent.GetName();
-        if(parentName.compare("rootAbsoluteLayout") == 0)
-        {
-          result -= 1;
-        }
-      }
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -58789,271 +58838,15 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_Timer_TickSignal(void * jarg1) {
 }
 
 
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_DragAndDropDetector() {
-  void * jresult ;
-  Dali::DragAndDropDetector *result = 0 ;
-
-  {
-    try {
-      result = (Dali::DragAndDropDetector *)new Dali::DragAndDropDetector();
-    } catch (std::out_of_range& e) {
-      {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
-      };
-    } catch (std::exception& e) {
-      {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
-      };
-    } catch (Dali::DaliException e) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
-      };
-    } catch (...) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
-      };
-    }
-  }
-
-  jresult = (void *)result;
-  return jresult;
-}
-
-
-SWIGEXPORT void SWIGSTDCALL CSharp_Dali_delete_DragAndDropDetector(void * jarg1) {
-  Dali::DragAndDropDetector *arg1 = (Dali::DragAndDropDetector *) 0 ;
-
-  arg1 = (Dali::DragAndDropDetector *)jarg1;
-  {
-    try {
-      delete arg1;
-    } catch (std::out_of_range& e) {
-      {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
-      };
-    } catch (std::exception& e) {
-      {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return ;
-      };
-    } catch (Dali::DaliException e) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return ;
-      };
-    } catch (...) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ;
-      };
-    }
-  }
-
-}
-
-
-SWIGEXPORT char * SWIGSTDCALL CSharp_Dali_DragAndDropDetector_GetContent(void * jarg1) {
-  char * jresult ;
-  Dali::DragAndDropDetector *arg1 = (Dali::DragAndDropDetector *) 0 ;
-  std::string *result = 0 ;
-
-  arg1 = (Dali::DragAndDropDetector *)jarg1;
-  {
-    try {
-      result = (std::string *) &((Dali::DragAndDropDetector const *)arg1)->GetContent();
-    } catch (std::out_of_range& e) {
-      {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
-      };
-    } catch (std::exception& e) {
-      {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
-      };
-    } catch (Dali::DaliException e) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
-      };
-    } catch (...) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
-      };
-    }
-  }
-
-  jresult = SWIG_csharp_string_callback(result->c_str());
-  return jresult;
-}
-
-
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_DragAndDropDetector_GetCurrentScreenPosition(void * jarg1) {
-  void * jresult ;
-  Dali::DragAndDropDetector *arg1 = (Dali::DragAndDropDetector *) 0 ;
-  Dali::Vector2 result;
-
-  arg1 = (Dali::DragAndDropDetector *)jarg1;
-  {
-    try {
-      result = ((Dali::DragAndDropDetector const *)arg1)->GetCurrentScreenPosition();
-    } catch (std::out_of_range& e) {
-      {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
-      };
-    } catch (std::exception& e) {
-      {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
-      };
-    } catch (Dali::DaliException e) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
-      };
-    } catch (...) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
-      };
-    }
-  }
-
-  jresult = new Dali::Vector2((const Dali::Vector2 &)result);
-  return jresult;
-}
-
-
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_DragAndDropDetector_EnteredSignal(void * jarg1) {
-  void * jresult ;
-  Dali::DragAndDropDetector *arg1 = (Dali::DragAndDropDetector *) 0 ;
-  Dali::DragAndDropDetector::DragAndDropSignal *result = 0 ;
-
-  arg1 = (Dali::DragAndDropDetector *)jarg1;
-  {
-    try {
-      result = (Dali::DragAndDropDetector::DragAndDropSignal *) &(arg1)->EnteredSignal();
-    } catch (std::out_of_range& e) {
-      {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
-      };
-    } catch (std::exception& e) {
-      {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
-      };
-    } catch (Dali::DaliException e) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
-      };
-    } catch (...) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
-      };
-    }
-  }
-
-  jresult = (void *)result;
-  return jresult;
-}
-
-
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_DragAndDropDetector_ExitedSignal(void * jarg1) {
-  void * jresult ;
-  Dali::DragAndDropDetector *arg1 = (Dali::DragAndDropDetector *) 0 ;
-  Dali::DragAndDropDetector::DragAndDropSignal *result = 0 ;
-
-  arg1 = (Dali::DragAndDropDetector *)jarg1;
-  {
-    try {
-      result = (Dali::DragAndDropDetector::DragAndDropSignal *) &(arg1)->ExitedSignal();
-    } catch (std::out_of_range& e) {
-      {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
-      };
-    } catch (std::exception& e) {
-      {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
-      };
-    } catch (Dali::DaliException e) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
-      };
-    } catch (...) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
-      };
-    }
-  }
-
-  jresult = (void *)result;
-  return jresult;
-}
-
-
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_DragAndDropDetector_MovedSignal(void * jarg1) {
-  void * jresult ;
-  Dali::DragAndDropDetector *arg1 = (Dali::DragAndDropDetector *) 0 ;
-  Dali::DragAndDropDetector::DragAndDropSignal *result = 0 ;
-
-  arg1 = (Dali::DragAndDropDetector *)jarg1;
-  {
-    try {
-      result = (Dali::DragAndDropDetector::DragAndDropSignal *) &(arg1)->MovedSignal();
-    } catch (std::out_of_range& e) {
-      {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
-      };
-    } catch (std::exception& e) {
-      {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
-      };
-    } catch (Dali::DaliException e) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
-      };
-    } catch (...) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
-      };
-    }
-  }
-
-  jresult = (void *)result;
-  return jresult;
-}
-
-
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_DragAndDropDetector_DroppedSignal(void * jarg1) {
-  void * jresult ;
-  Dali::DragAndDropDetector *arg1 = (Dali::DragAndDropDetector *) 0 ;
-  Dali::DragAndDropDetector::DragAndDropSignal *result = 0 ;
-
-  arg1 = (Dali::DragAndDropDetector *)jarg1;
-  {
-    try {
-      result = (Dali::DragAndDropDetector::DragAndDropSignal *) &(arg1)->DroppedSignal();
-    } catch (std::out_of_range& e) {
-      {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
-      };
-    } catch (std::exception& e) {
-      {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
-      };
-    } catch (Dali::DaliException e) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
-      };
-    } catch (...) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
-      };
-    }
-  }
-
-  jresult = (void *)result;
-  return jresult;
-}
-
-
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_ApplicationExtensions__SWIG_0() {
-  void * jresult ;
-  Dali::ApplicationExtensions *result = 0 ;
+SWIGEXPORT unsigned int SWIGSTDCALL CSharp_Dali_TimerSignalType_Empty(void * jarg1) {
+  unsigned int jresult ;
+  Dali::Signal< bool () > *arg1 = (Dali::Signal< bool () > *) 0 ;
+  bool result;
 
+  arg1 = (Dali::Signal< bool () > *)jarg1;
   {
     try {
-      result = (Dali::ApplicationExtensions *)new Dali::ApplicationExtensions();
+      result = (bool)Dali_Signal_Sl_bool_Sp__SP__Sg__Empty((Dali::Signal< bool () > const *)arg1);
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -59073,20 +58866,20 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_ApplicationExtensions__SWIG_0() {
     }
   }
 
-  jresult = (void *)result;
+  jresult = result;
   return jresult;
 }
 
 
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_ApplicationExtensions__SWIG_1(void * jarg1) {
-  void * jresult ;
-  Dali::Application *arg1 = (Dali::Application *) 0 ;
-  Dali::ApplicationExtensions *result = 0 ;
+SWIGEXPORT unsigned long SWIGSTDCALL CSharp_Dali_TimerSignalType_GetConnectionCount(void * jarg1) {
+  unsigned long jresult ;
+  Dali::Signal< bool () > *arg1 = (Dali::Signal< bool () > *) 0 ;
+  std::size_t result;
 
-  arg1 = (Dali::Application *)jarg1;
+  arg1 = (Dali::Signal< bool () > *)jarg1;
   {
     try {
-      result = (Dali::ApplicationExtensions *)new Dali::ApplicationExtensions(arg1);
+      result = Dali_Signal_Sl_bool_Sp__SP__Sg__GetConnectionCount((Dali::Signal< bool () > const *)arg1);
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -59106,18 +58899,20 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_ApplicationExtensions__SWIG_1(void
     }
   }
 
-  jresult = (void *)result;
+  jresult = (unsigned long)result;
   return jresult;
 }
 
 
-SWIGEXPORT void SWIGSTDCALL CSharp_Dali_delete_ApplicationExtensions(void * jarg1) {
-  Dali::ApplicationExtensions *arg1 = (Dali::ApplicationExtensions *) 0 ;
+SWIGEXPORT void SWIGSTDCALL CSharp_Dali_TimerSignalType_Connect(void * jarg1, void * jarg2) {
+  Dali::Signal< bool () > *arg1 = (Dali::Signal< bool () > *) 0 ;
+  bool (*arg2)() = (bool (*)()) 0 ;
 
-  arg1 = (Dali::ApplicationExtensions *)jarg1;
+  arg1 = (Dali::Signal< bool () > *)jarg1;
+  arg2 = (bool (*)())jarg2;
   {
     try {
-      delete arg1;
+      Dali_Signal_Sl_bool_Sp__SP__Sg__Connect(arg1,arg2);
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
@@ -59140,13 +58935,15 @@ SWIGEXPORT void SWIGSTDCALL CSharp_Dali_delete_ApplicationExtensions(void * jarg
 }
 
 
-SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ApplicationExtensions_Init(void * jarg1) {
-  Dali::ApplicationExtensions *arg1 = (Dali::ApplicationExtensions *) 0 ;
+SWIGEXPORT void SWIGSTDCALL CSharp_Dali_TimerSignalType_Disconnect(void * jarg1, void * jarg2) {
+  Dali::Signal< bool () > *arg1 = (Dali::Signal< bool () > *) 0 ;
+  bool (*arg2)() = (bool (*)()) 0 ;
 
-  arg1 = (Dali::ApplicationExtensions *)jarg1;
+  arg1 = (Dali::Signal< bool () > *)jarg1;
+  arg2 = (bool (*)())jarg2;
   {
     try {
-      (arg1)->Init();
+      Dali_Signal_Sl_bool_Sp__SP__Sg__Disconnect(arg1,arg2);
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
@@ -59168,119 +58965,78 @@ SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ApplicationExtensions_Init(void * jarg1)
 
 }
 
-SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ApplicationExtensions_Start(void * jarg1) {
-  Dali::ApplicationExtensions *arg1 = (Dali::ApplicationExtensions *) 0 ;
 
-  arg1 = (Dali::ApplicationExtensions *)jarg1;
-  {
-    try {
-      (arg1)->Start();
-    } catch (std::out_of_range& e) {
-      {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
-      };
-    } catch (std::exception& e) {
-      {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return ;
-      };
-    } catch (DaliException e) { SWIG_CSharpException(SWIG_UnknownError, e.condition); return ; } catch (...) { SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ; }
-  }
-}
-
-SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ApplicationExtensions_Terminate(void * jarg1) {
-  Dali::ApplicationExtensions *arg1 = (Dali::ApplicationExtensions *) 0 ;
-
-  arg1 = (Dali::ApplicationExtensions *)jarg1;
-  {
-    try {
-      (arg1)->Terminate();
-    } catch (std::out_of_range& e) {
-      {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
-      };
-    } catch (std::exception& e) {
-      {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return ;
-      };
-    } catch (Dali::DaliException e) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return ;
-      };
-    } catch (...) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ;
-      };
-    }
-  }
-
-}
-
-
-SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ApplicationExtensions_Pause(void * jarg1) {
-  Dali::ApplicationExtensions *arg1 = (Dali::ApplicationExtensions *) 0 ;
+SWIGEXPORT unsigned int SWIGSTDCALL CSharp_Dali_TimerSignalType_Emit(void * jarg1) {
+  unsigned int jresult ;
+  Dali::Signal< bool () > *arg1 = (Dali::Signal< bool () > *) 0 ;
+  bool result;
 
-  arg1 = (Dali::ApplicationExtensions *)jarg1;
+  arg1 = (Dali::Signal< bool () > *)jarg1;
   {
     try {
-      (arg1)->Pause();
+      result = (bool)Dali_Signal_Sl_bool_Sp__SP__Sg__Emit(arg1);
     } catch (std::out_of_range& e) {
       {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
+        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
       };
     } catch (std::exception& e) {
       {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return ;
+        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
       };
     } catch (Dali::DaliException e) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return ;
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
       };
     } catch (...) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ;
+        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
       };
     }
   }
 
+  jresult = result;
+  return jresult;
 }
 
 
-SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ApplicationExtensions_Resume(void * jarg1) {
-  Dali::ApplicationExtensions *arg1 = (Dali::ApplicationExtensions *) 0 ;
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_TimerSignalType() {
+  void * jresult ;
+  Dali::Signal< bool () > *result = 0 ;
 
-  arg1 = (Dali::ApplicationExtensions *)jarg1;
   {
     try {
-      (arg1)->Resume();
+      result = (Dali::Signal< bool () > *)new Dali::Signal< bool () >();
     } catch (std::out_of_range& e) {
       {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
+        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
       };
     } catch (std::exception& e) {
       {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return ;
+        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
       };
     } catch (Dali::DaliException e) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return ;
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
       };
     } catch (...) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ;
+        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
       };
     }
   }
 
+  jresult = (void *)result;
+  return jresult;
 }
 
 
-SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ApplicationExtensions_LanguageChange(void * jarg1) {
-  Dali::ApplicationExtensions *arg1 = (Dali::ApplicationExtensions *) 0 ;
+SWIGEXPORT void SWIGSTDCALL CSharp_Dali_delete_TimerSignalType(void * jarg1) {
+  Dali::Signal< bool () > *arg1 = (Dali::Signal< bool () > *) 0 ;
 
-  arg1 = (Dali::ApplicationExtensions *)jarg1;
+  arg1 = (Dali::Signal< bool () > *)jarg1;
   {
     try {
-      (arg1)->LanguageChange();
+      delete arg1;
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
@@ -59303,16 +59059,13 @@ SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ApplicationExtensions_LanguageChange(voi
 }
 
 
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_VISUAL_PROPERTY_TYPE_get() {
+  int jresult ;
+  int result;
 
-SWIGEXPORT unsigned int SWIGSTDCALL CSharp_Dali_TimerSignalType_Empty(void * jarg1) {
-  unsigned int jresult ;
-  Dali::Signal< bool () > *arg1 = (Dali::Signal< bool () > *) 0 ;
-  bool result;
-
-  arg1 = (Dali::Signal< bool () > *)jarg1;
   {
     try {
-      result = (bool)Dali_Signal_Sl_bool_Sp__SP__Sg__Empty((Dali::Signal< bool () > const *)arg1);
+      result = (int)Dali::Toolkit::Visual::Property::TYPE;
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -59332,20 +59085,18 @@ SWIGEXPORT unsigned int SWIGSTDCALL CSharp_Dali_TimerSignalType_Empty(void * jar
     }
   }
 
-  jresult = result;
+  jresult = (int)result;
   return jresult;
 }
 
 
-SWIGEXPORT unsigned long SWIGSTDCALL CSharp_Dali_TimerSignalType_GetConnectionCount(void * jarg1) {
-  unsigned long jresult ;
-  Dali::Signal< bool () > *arg1 = (Dali::Signal< bool () > *) 0 ;
-  std::size_t result;
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_VISUAL_PROPERTY_SHADER_get() {
+  int jresult ;
+  int result;
 
-  arg1 = (Dali::Signal< bool () > *)jarg1;
   {
     try {
-      result = Dali_Signal_Sl_bool_Sp__SP__Sg__GetConnectionCount((Dali::Signal< bool () > const *)arg1);
+      result = (int)Dali::Toolkit::Visual::Property::SHADER;
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -59365,82 +59116,18 @@ SWIGEXPORT unsigned long SWIGSTDCALL CSharp_Dali_TimerSignalType_GetConnectionCo
     }
   }
 
-  jresult = (unsigned long)result;
+  jresult = (int)result;
   return jresult;
 }
 
 
-SWIGEXPORT void SWIGSTDCALL CSharp_Dali_TimerSignalType_Connect(void * jarg1, void * jarg2) {
-  Dali::Signal< bool () > *arg1 = (Dali::Signal< bool () > *) 0 ;
-  bool (*arg2)() = (bool (*)()) 0 ;
-
-  arg1 = (Dali::Signal< bool () > *)jarg1;
-  arg2 = (bool (*)())jarg2;
-  {
-    try {
-      Dali_Signal_Sl_bool_Sp__SP__Sg__Connect(arg1,arg2);
-    } catch (std::out_of_range& e) {
-      {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
-      };
-    } catch (std::exception& e) {
-      {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return ;
-      };
-    } catch (Dali::DaliException e) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return ;
-      };
-    } catch (...) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ;
-      };
-    }
-  }
-
-}
-
-
-SWIGEXPORT void SWIGSTDCALL CSharp_Dali_TimerSignalType_Disconnect(void * jarg1, void * jarg2) {
-  Dali::Signal< bool () > *arg1 = (Dali::Signal< bool () > *) 0 ;
-  bool (*arg2)() = (bool (*)()) 0 ;
-
-  arg1 = (Dali::Signal< bool () > *)jarg1;
-  arg2 = (bool (*)())jarg2;
-  {
-    try {
-      Dali_Signal_Sl_bool_Sp__SP__Sg__Disconnect(arg1,arg2);
-    } catch (std::out_of_range& e) {
-      {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
-      };
-    } catch (std::exception& e) {
-      {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return ;
-      };
-    } catch (Dali::DaliException e) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return ;
-      };
-    } catch (...) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ;
-      };
-    }
-  }
-
-}
-
-
-SWIGEXPORT unsigned int SWIGSTDCALL CSharp_Dali_TimerSignalType_Emit(void * jarg1) {
-  unsigned int jresult ;
-  Dali::Signal< bool () > *arg1 = (Dali::Signal< bool () > *) 0 ;
-  bool result;
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_VISUAL_SHADER_VERTEX_get() {
+  int jresult ;
+  int result;
 
-  arg1 = (Dali::Signal< bool () > *)jarg1;
   {
     try {
-      result = (bool)Dali_Signal_Sl_bool_Sp__SP__Sg__Emit(arg1);
+      result = (int)Dali::Toolkit::Visual::Shader::Property::VERTEX_SHADER;
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -59460,18 +59147,18 @@ SWIGEXPORT unsigned int SWIGSTDCALL CSharp_Dali_TimerSignalType_Emit(void * jarg
     }
   }
 
-  jresult = result;
+  jresult = (int)result;
   return jresult;
 }
 
 
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_TimerSignalType() {
-  void * jresult ;
-  Dali::Signal< bool () > *result = 0 ;
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_VISUAL_SHADER_FRAGMENT_get() {
+  int jresult ;
+  int result;
 
   {
     try {
-      result = (Dali::Signal< bool () > *)new Dali::Signal< bool () >();
+      result = (int)Dali::Toolkit::Visual::Shader::Property::FRAGMENT_SHADER;
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -59491,47 +59178,49 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_TimerSignalType() {
     }
   }
 
-  jresult = (void *)result;
+  jresult = (int)result;
   return jresult;
 }
 
 
-SWIGEXPORT void SWIGSTDCALL CSharp_Dali_delete_TimerSignalType(void * jarg1) {
-  Dali::Signal< bool () > *arg1 = (Dali::Signal< bool () > *) 0 ;
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_VISUAL_SHADER_SUBDIVIDE_GRID_X_get() {
+  int jresult ;
+  int result;
 
-  arg1 = (Dali::Signal< bool () > *)jarg1;
   {
     try {
-      delete arg1;
+      result = (int)Dali::Toolkit::Visual::Shader::Property::SUBDIVIDE_GRID_X;
     } catch (std::out_of_range& e) {
       {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
+        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
       };
     } catch (std::exception& e) {
       {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return ;
+        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
       };
     } catch (Dali::DaliException e) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return ;
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
       };
     } catch (...) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ;
+        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
       };
     }
   }
 
+  jresult = (int)result;
+  return jresult;
 }
 
 
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_VISUAL_PROPERTY_TYPE_get() {
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_VISUAL_SHADER_SUBDIVIDE_GRID_Y_get() {
   int jresult ;
   int result;
 
   {
     try {
-      result = (int)Dali::Toolkit::Visual::Property::TYPE;
+      result = (int)Dali::Toolkit::Visual::Shader::Property::SUBDIVIDE_GRID_Y;
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -59556,13 +59245,13 @@ SWIGEXPORT int SWIGSTDCALL CSharp_Dali_VISUAL_PROPERTY_TYPE_get() {
 }
 
 
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_VISUAL_PROPERTY_SHADER_get() {
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_VISUAL_SHADER_HINTS_get() {
   int jresult ;
   int result;
 
   {
     try {
-      result = (int)Dali::Toolkit::Visual::Property::SHADER;
+      result = (int)Dali::Toolkit::Visual::Shader::Property::HINTS;
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -59587,13 +59276,13 @@ SWIGEXPORT int SWIGSTDCALL CSharp_Dali_VISUAL_PROPERTY_SHADER_get() {
 }
 
 
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_VISUAL_SHADER_VERTEX_get() {
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_BORDER_VISUAL_COLOR_get() {
   int jresult ;
   int result;
 
   {
     try {
-      result = (int)Dali::Toolkit::Visual::Shader::Property::VERTEX_SHADER;
+      result = (int)Dali::Toolkit::BorderVisual::Property::COLOR;
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -59618,13 +59307,13 @@ SWIGEXPORT int SWIGSTDCALL CSharp_Dali_VISUAL_SHADER_VERTEX_get() {
 }
 
 
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_VISUAL_SHADER_FRAGMENT_get() {
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_BORDER_VISUAL_SIZE_get() {
   int jresult ;
   int result;
 
   {
     try {
-      result = (int)Dali::Toolkit::Visual::Shader::Property::FRAGMENT_SHADER;
+      result = (int)Dali::Toolkit::BorderVisual::Property::SIZE;
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -59649,13 +59338,13 @@ SWIGEXPORT int SWIGSTDCALL CSharp_Dali_VISUAL_SHADER_FRAGMENT_get() {
 }
 
 
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_VISUAL_SHADER_SUBDIVIDE_GRID_X_get() {
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_BORDER_VISUAL_ANTI_ALIASING_get() {
   int jresult ;
   int result;
 
   {
     try {
-      result = (int)Dali::Toolkit::Visual::Shader::Property::SUBDIVIDE_GRID_X;
+      result = (int)Dali::Toolkit::BorderVisual::Property::ANTI_ALIASING;
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -59680,13 +59369,13 @@ SWIGEXPORT int SWIGSTDCALL CSharp_Dali_VISUAL_SHADER_SUBDIVIDE_GRID_X_get() {
 }
 
 
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_VISUAL_SHADER_SUBDIVIDE_GRID_Y_get() {
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_COLOR_VISUAL_MIX_COLOR_get() {
   int jresult ;
   int result;
 
   {
     try {
-      result = (int)Dali::Toolkit::Visual::Shader::Property::SUBDIVIDE_GRID_Y;
+      result = (int)Dali::Toolkit::ColorVisual::Property::MIX_COLOR;
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -59711,13 +59400,13 @@ SWIGEXPORT int SWIGSTDCALL CSharp_Dali_VISUAL_SHADER_SUBDIVIDE_GRID_Y_get() {
 }
 
 
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_VISUAL_SHADER_HINTS_get() {
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_GRADIENT_VISUAL_START_POSITION_get() {
   int jresult ;
   int result;
 
   {
     try {
-      result = (int)Dali::Toolkit::Visual::Shader::Property::HINTS;
+      result = (int)Dali::Toolkit::GradientVisual::Property::START_POSITION;
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -59742,13 +59431,13 @@ SWIGEXPORT int SWIGSTDCALL CSharp_Dali_VISUAL_SHADER_HINTS_get() {
 }
 
 
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_BORDER_VISUAL_COLOR_get() {
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_GRADIENT_VISUAL_END_POSITION_get() {
   int jresult ;
   int result;
 
   {
     try {
-      result = (int)Dali::Toolkit::BorderVisual::Property::COLOR;
+      result = (int)Dali::Toolkit::GradientVisual::Property::END_POSITION;
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -59773,13 +59462,13 @@ SWIGEXPORT int SWIGSTDCALL CSharp_Dali_BORDER_VISUAL_COLOR_get() {
 }
 
 
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_BORDER_VISUAL_SIZE_get() {
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_GRADIENT_VISUAL_CENTER_get() {
   int jresult ;
   int result;
 
   {
     try {
-      result = (int)Dali::Toolkit::BorderVisual::Property::SIZE;
+      result = (int)Dali::Toolkit::GradientVisual::Property::CENTER;
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -59804,13 +59493,13 @@ SWIGEXPORT int SWIGSTDCALL CSharp_Dali_BORDER_VISUAL_SIZE_get() {
 }
 
 
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_BORDER_VISUAL_ANTI_ALIASING_get() {
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_GRADIENT_VISUAL_RADIUS_get() {
   int jresult ;
   int result;
 
   {
     try {
-      result = (int)Dali::Toolkit::BorderVisual::Property::ANTI_ALIASING;
+      result = (int)Dali::Toolkit::GradientVisual::Property::RADIUS;
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -59835,13 +59524,13 @@ SWIGEXPORT int SWIGSTDCALL CSharp_Dali_BORDER_VISUAL_ANTI_ALIASING_get() {
 }
 
 
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_COLOR_VISUAL_MIX_COLOR_get() {
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_GRADIENT_VISUAL_STOP_OFFSET_get() {
   int jresult ;
   int result;
 
   {
     try {
-      result = (int)Dali::Toolkit::ColorVisual::Property::MIX_COLOR;
+      result = (int)Dali::Toolkit::GradientVisual::Property::STOP_OFFSET;
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -59866,13 +59555,13 @@ SWIGEXPORT int SWIGSTDCALL CSharp_Dali_COLOR_VISUAL_MIX_COLOR_get() {
 }
 
 
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_GRADIENT_VISUAL_START_POSITION_get() {
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_GRADIENT_VISUAL_STOP_COLOR_get() {
   int jresult ;
   int result;
 
   {
     try {
-      result = (int)Dali::Toolkit::GradientVisual::Property::START_POSITION;
+      result = (int)Dali::Toolkit::GradientVisual::Property::STOP_COLOR;
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -59897,13 +59586,13 @@ SWIGEXPORT int SWIGSTDCALL CSharp_Dali_GRADIENT_VISUAL_START_POSITION_get() {
 }
 
 
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_GRADIENT_VISUAL_END_POSITION_get() {
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_GRADIENT_VISUAL_UNITS_get() {
   int jresult ;
   int result;
 
   {
     try {
-      result = (int)Dali::Toolkit::GradientVisual::Property::END_POSITION;
+      result = (int)Dali::Toolkit::GradientVisual::Property::UNITS;
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -59928,13 +59617,13 @@ SWIGEXPORT int SWIGSTDCALL CSharp_Dali_GRADIENT_VISUAL_END_POSITION_get() {
 }
 
 
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_GRADIENT_VISUAL_CENTER_get() {
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_GRADIENT_VISUAL_SPREAD_METHOD_get() {
   int jresult ;
   int result;
 
   {
     try {
-      result = (int)Dali::Toolkit::GradientVisual::Property::CENTER;
+      result = (int)Dali::Toolkit::GradientVisual::Property::SPREAD_METHOD;
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -59959,13 +59648,13 @@ SWIGEXPORT int SWIGSTDCALL CSharp_Dali_GRADIENT_VISUAL_CENTER_get() {
 }
 
 
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_GRADIENT_VISUAL_RADIUS_get() {
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_IMAGE_VISUAL_URL_get() {
   int jresult ;
   int result;
 
   {
     try {
-      result = (int)Dali::Toolkit::GradientVisual::Property::RADIUS;
+      result = (int)Dali::Toolkit::ImageVisual::Property::URL;
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -59989,14 +59678,13 @@ SWIGEXPORT int SWIGSTDCALL CSharp_Dali_GRADIENT_VISUAL_RADIUS_get() {
   return jresult;
 }
 
-
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_GRADIENT_VISUAL_STOP_OFFSET_get() {
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_IMAGE_VISUAL_ALPHA_MASK_URL_get() {
   int jresult ;
   int result;
 
   {
     try {
-      result = (int)Dali::Toolkit::GradientVisual::Property::STOP_OFFSET;
+      result = (int)Dali::Toolkit::ImageVisual::Property::ALPHA_MASK_URL;
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -60021,13 +59709,13 @@ SWIGEXPORT int SWIGSTDCALL CSharp_Dali_GRADIENT_VISUAL_STOP_OFFSET_get() {
 }
 
 
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_GRADIENT_VISUAL_STOP_COLOR_get() {
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_IMAGE_VISUAL_BATCH_SIZE_get() {
   int jresult ;
   int result;
-
   {
-    try {
-      result = (int)Dali::Toolkit::GradientVisual::Property::STOP_COLOR;
+    try
+    {
+      result = (int)Dali::Toolkit::ImageVisual::Property::BATCH_SIZE;
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -60051,14 +59739,13 @@ SWIGEXPORT int SWIGSTDCALL CSharp_Dali_GRADIENT_VISUAL_STOP_COLOR_get() {
   return jresult;
 }
 
-
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_GRADIENT_VISUAL_UNITS_get() {
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_IMAGE_VISUAL_CACHE_SIZE_get() {
   int jresult ;
   int result;
-
   {
-    try {
-      result = (int)Dali::Toolkit::GradientVisual::Property::UNITS;
+    try
+    {
+      result = (int)Dali::Toolkit::ImageVisual::Property::CACHE_SIZE;
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -60082,14 +59769,13 @@ SWIGEXPORT int SWIGSTDCALL CSharp_Dali_GRADIENT_VISUAL_UNITS_get() {
   return jresult;
 }
 
-
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_GRADIENT_VISUAL_SPREAD_METHOD_get() {
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_IMAGE_VISUAL_FRAME_DELAY_get() {
   int jresult ;
   int result;
-
   {
-    try {
-      result = (int)Dali::Toolkit::GradientVisual::Property::SPREAD_METHOD;
+    try
+    {
+      result = (int)Dali::Toolkit::ImageVisual::Property::FRAME_DELAY;
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -60113,14 +59799,17 @@ SWIGEXPORT int SWIGSTDCALL CSharp_Dali_GRADIENT_VISUAL_SPREAD_METHOD_get() {
   return jresult;
 }
 
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_IMAGE_VISUAL_LOOP_COUNT_get() {
+  return (int)Dali::Toolkit::DevelImageVisual::Property::LOOP_COUNT;
+}
 
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_IMAGE_VISUAL_URL_get() {
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_IMAGE_VISUAL_MASK_CONTENT_SCALE_get() {
   int jresult ;
   int result;
-
   {
-    try {
-      result = (int)Dali::Toolkit::ImageVisual::Property::URL;
+    try
+    {
+      result = (int)Dali::Toolkit::ImageVisual::Property::MASK_CONTENT_SCALE;
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -60144,13 +59833,13 @@ SWIGEXPORT int SWIGSTDCALL CSharp_Dali_IMAGE_VISUAL_URL_get() {
   return jresult;
 }
 
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_IMAGE_VISUAL_ALPHA_MASK_URL_get() {
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_IMAGE_VISUAL_CROP_TO_MASK_get() {
   int jresult ;
   int result;
-
   {
-    try {
-      result = (int)Dali::Toolkit::ImageVisual::Property::ALPHA_MASK_URL;
+    try
+    {
+      result = (int)Dali::Toolkit::ImageVisual::Property::CROP_TO_MASK;
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -60174,14 +59863,13 @@ SWIGEXPORT int SWIGSTDCALL CSharp_Dali_IMAGE_VISUAL_ALPHA_MASK_URL_get() {
   return jresult;
 }
 
-
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_IMAGE_VISUAL_BATCH_SIZE_get() {
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_IMAGE_VISUAL_FITTING_MODE_get() {
   int jresult ;
   int result;
+
   {
-    try
-    {
-      result = (int)Dali::Toolkit::ImageVisual::Property::BATCH_SIZE;
+    try {
+      result = (int)Dali::Toolkit::ImageVisual::Property::FITTING_MODE;
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -60205,13 +59893,14 @@ SWIGEXPORT int SWIGSTDCALL CSharp_Dali_IMAGE_VISUAL_BATCH_SIZE_get() {
   return jresult;
 }
 
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_IMAGE_VISUAL_CACHE_SIZE_get() {
+
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_IMAGE_VISUAL_SAMPLING_MODE_get() {
   int jresult ;
   int result;
+
   {
-    try
-    {
-      result = (int)Dali::Toolkit::ImageVisual::Property::CACHE_SIZE;
+    try {
+      result = (int)Dali::Toolkit::ImageVisual::Property::SAMPLING_MODE;
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -60235,13 +59924,13 @@ SWIGEXPORT int SWIGSTDCALL CSharp_Dali_IMAGE_VISUAL_CACHE_SIZE_get() {
   return jresult;
 }
 
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_IMAGE_VISUAL_FRAME_DELAY_get() {
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_IMAGE_VISUAL_RELEASE_POLICY_get() {
   int jresult ;
   int result;
   {
     try
     {
-      result = (int)Dali::Toolkit::ImageVisual::Property::FRAME_DELAY;
+      result = (int)Dali::Toolkit::ImageVisual::Property::RELEASE_POLICY;
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -60250,32 +59939,23 @@ SWIGEXPORT int SWIGSTDCALL CSharp_Dali_IMAGE_VISUAL_FRAME_DELAY_get() {
       {
         SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
       };
-    } catch (Dali::DaliException e) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
-      };
     } catch (...) {
       {
         SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
       };
     }
   }
-
   jresult = (int)result;
   return jresult;
 }
 
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_IMAGE_VISUAL_LOOP_COUNT_get() {
-  return (int)Dali::Toolkit::DevelImageVisual::Property::LOOP_COUNT;
-}
-
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_IMAGE_VISUAL_MASK_CONTENT_SCALE_get() {
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_IMAGE_VISUAL_LOAD_POLICY_get() {
   int jresult ;
   int result;
   {
     try
     {
-      result = (int)Dali::Toolkit::ImageVisual::Property::MASK_CONTENT_SCALE;
+      result = (int)Dali::Toolkit::ImageVisual::Property::LOAD_POLICY;
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -60284,9 +59964,30 @@ SWIGEXPORT int SWIGSTDCALL CSharp_Dali_IMAGE_VISUAL_MASK_CONTENT_SCALE_get() {
       {
         SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
       };
-    } catch (Dali::DaliException e) {
+    } catch (...) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
+        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
+      };
+    }
+  }
+  jresult = (int)result;
+  return jresult;
+}
+
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_IMAGE_VISUAL_ORIENTATION_CORRECTION_get() {
+  int jresult ;
+  int result;
+  {
+    try
+    {
+      result = (int)Dali::Toolkit::ImageVisual::Property::ORIENTATION_CORRECTION;
+    } catch (std::out_of_range& e) {
+      {
+        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
+      };
+    } catch (std::exception& e) {
+      {
+        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
       };
     } catch (...) {
       {
@@ -60294,18 +59995,18 @@ SWIGEXPORT int SWIGSTDCALL CSharp_Dali_IMAGE_VISUAL_MASK_CONTENT_SCALE_get() {
       };
     }
   }
-
   jresult = (int)result;
   return jresult;
 }
 
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_IMAGE_VISUAL_CROP_TO_MASK_get() {
+
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_IMAGE_VISUAL_AUXILIARY_IMAGE_URL_get() {
   int jresult ;
   int result;
   {
     try
     {
-      result = (int)Dali::Toolkit::ImageVisual::Property::CROP_TO_MASK;
+      result = (int)Dali::Toolkit::DevelImageVisual::Property::AUXILIARY_IMAGE;
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -60314,9 +60015,30 @@ SWIGEXPORT int SWIGSTDCALL CSharp_Dali_IMAGE_VISUAL_CROP_TO_MASK_get() {
       {
         SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
       };
-    } catch (Dali::DaliException e) {
+    } catch (...) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
+        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
+      };
+    }
+  }
+  jresult = (int)result;
+  return jresult;
+}
+
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_IMAGE_VISUAL_AUXILIARY_IMAGE_ALPHA_get() {
+  int jresult ;
+  int result;
+  {
+    try
+    {
+      result = (int)Dali::Toolkit::DevelImageVisual::Property::AUXILIARY_IMAGE_ALPHA;
+    } catch (std::out_of_range& e) {
+      {
+        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
+      };
+    } catch (std::exception& e) {
+      {
+        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
       };
     } catch (...) {
       {
@@ -60324,18 +60046,19 @@ SWIGEXPORT int SWIGSTDCALL CSharp_Dali_IMAGE_VISUAL_CROP_TO_MASK_get() {
       };
     }
   }
-
   jresult = (int)result;
   return jresult;
 }
 
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_IMAGE_VISUAL_FITTING_MODE_get() {
+
+
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_IMAGE_VISUAL_DESIRED_WIDTH_get() {
   int jresult ;
   int result;
 
   {
     try {
-      result = (int)Dali::Toolkit::ImageVisual::Property::FITTING_MODE;
+      result = (int)Dali::Toolkit::ImageVisual::Property::DESIRED_WIDTH;
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -60360,13 +60083,13 @@ SWIGEXPORT int SWIGSTDCALL CSharp_Dali_IMAGE_VISUAL_FITTING_MODE_get() {
 }
 
 
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_IMAGE_VISUAL_SAMPLING_MODE_get() {
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_IMAGE_VISUAL_DESIRED_HEIGHT_get() {
   int jresult ;
   int result;
 
   {
     try {
-      result = (int)Dali::Toolkit::ImageVisual::Property::SAMPLING_MODE;
+      result = (int)Dali::Toolkit::ImageVisual::Property::DESIRED_HEIGHT;
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -60390,13 +60113,14 @@ SWIGEXPORT int SWIGSTDCALL CSharp_Dali_IMAGE_VISUAL_SAMPLING_MODE_get() {
   return jresult;
 }
 
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_IMAGE_VISUAL_RELEASE_POLICY_get() {
+
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_IMAGE_VISUAL_SYNCHRONOUS_LOADING_get() {
   int jresult ;
   int result;
+
   {
-    try
-    {
-      result = (int)Dali::Toolkit::ImageVisual::Property::RELEASE_POLICY;
+    try {
+      result = (int)Dali::Toolkit::ImageVisual::Property::SYNCHRONOUS_LOADING;
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -60405,23 +60129,29 @@ SWIGEXPORT int SWIGSTDCALL CSharp_Dali_IMAGE_VISUAL_RELEASE_POLICY_get() {
       {
         SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
       };
+    } catch (Dali::DaliException e) {
+      {
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
+      };
     } catch (...) {
       {
         SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
       };
     }
   }
+
   jresult = (int)result;
   return jresult;
 }
 
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_IMAGE_VISUAL_LOAD_POLICY_get() {
+
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_IMAGE_VISUAL_BORDER_ONLY_get() {
   int jresult ;
   int result;
+
   {
-    try
-    {
-      result = (int)Dali::Toolkit::ImageVisual::Property::LOAD_POLICY;
+    try {
+      result = (int)Dali::Toolkit::ImageVisual::Property::BORDER_ONLY;
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -60430,23 +60160,29 @@ SWIGEXPORT int SWIGSTDCALL CSharp_Dali_IMAGE_VISUAL_LOAD_POLICY_get() {
       {
         SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
       };
+    } catch (Dali::DaliException e) {
+      {
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
+      };
     } catch (...) {
       {
         SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
       };
     }
   }
+
   jresult = (int)result;
   return jresult;
 }
 
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_IMAGE_VISUAL_ORIENTATION_CORRECTION_get() {
+
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_IMAGE_VISUAL_PIXEL_AREA_get() {
   int jresult ;
   int result;
+
   {
-    try
-    {
-      result = (int)Dali::Toolkit::ImageVisual::Property::ORIENTATION_CORRECTION;
+    try {
+      result = (int)Dali::Toolkit::ImageVisual::Property::PIXEL_AREA;
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -60455,24 +60191,29 @@ SWIGEXPORT int SWIGSTDCALL CSharp_Dali_IMAGE_VISUAL_ORIENTATION_CORRECTION_get()
       {
         SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
       };
+    } catch (Dali::DaliException e) {
+      {
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
+      };
     } catch (...) {
       {
         SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
       };
     }
   }
+
   jresult = (int)result;
   return jresult;
 }
 
 
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_IMAGE_VISUAL_AUXILIARY_IMAGE_URL_get() {
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_IMAGE_VISUAL_WRAP_MODE_U_get() {
   int jresult ;
   int result;
+
   {
-    try
-    {
-      result = (int)Dali::Toolkit::DevelImageVisual::Property::AUXILIARY_IMAGE;
+    try {
+      result = (int)Dali::Toolkit::ImageVisual::Property::WRAP_MODE_U;
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -60481,23 +60222,29 @@ SWIGEXPORT int SWIGSTDCALL CSharp_Dali_IMAGE_VISUAL_AUXILIARY_IMAGE_URL_get() {
       {
         SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
       };
+    } catch (Dali::DaliException e) {
+      {
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
+      };
     } catch (...) {
       {
         SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
       };
     }
   }
+
   jresult = (int)result;
   return jresult;
 }
 
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_IMAGE_VISUAL_AUXILIARY_IMAGE_ALPHA_get() {
+
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_IMAGE_VISUAL_WRAP_MODE_V_get() {
   int jresult ;
   int result;
+
   {
-    try
-    {
-      result = (int)Dali::Toolkit::DevelImageVisual::Property::AUXILIARY_IMAGE_ALPHA;
+    try {
+      result = (int)Dali::Toolkit::ImageVisual::Property::WRAP_MODE_V;
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -60506,25 +60253,28 @@ SWIGEXPORT int SWIGSTDCALL CSharp_Dali_IMAGE_VISUAL_AUXILIARY_IMAGE_ALPHA_get()
       {
         SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
       };
+    } catch (Dali::DaliException e) {
+      {
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
+      };
     } catch (...) {
       {
         SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
       };
     }
   }
+
   jresult = (int)result;
   return jresult;
 }
 
-
-
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_IMAGE_VISUAL_DESIRED_WIDTH_get() {
+SWIGEXPORT int SWIGSTDCALL CSharp_Image_Visual_BORDER_get() {
   int jresult ;
   int result;
 
   {
     try {
-      result = (int)Dali::Toolkit::ImageVisual::Property::DESIRED_WIDTH;
+      result = (int)Dali::Toolkit::ImageVisual::Property::BORDER;
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -60533,29 +60283,23 @@ SWIGEXPORT int SWIGSTDCALL CSharp_Dali_IMAGE_VISUAL_DESIRED_WIDTH_get() {
       {
         SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
       };
-    } catch (Dali::DaliException e) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
-      };
     } catch (...) {
       {
         SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
       };
     }
   }
-
   jresult = (int)result;
   return jresult;
 }
 
-
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_IMAGE_VISUAL_DESIRED_HEIGHT_get() {
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_MESH_VISUAL_OBJECT_URL_get() {
   int jresult ;
   int result;
 
   {
     try {
-      result = (int)Dali::Toolkit::ImageVisual::Property::DESIRED_HEIGHT;
+      result = (int)Dali::Toolkit::MeshVisual::Property::OBJECT_URL;
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -60580,13 +60324,13 @@ SWIGEXPORT int SWIGSTDCALL CSharp_Dali_IMAGE_VISUAL_DESIRED_HEIGHT_get() {
 }
 
 
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_IMAGE_VISUAL_SYNCHRONOUS_LOADING_get() {
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_MESH_VISUAL_MATERIAL_URL_get() {
   int jresult ;
   int result;
 
   {
     try {
-      result = (int)Dali::Toolkit::ImageVisual::Property::SYNCHRONOUS_LOADING;
+      result = (int)Dali::Toolkit::MeshVisual::Property::MATERIAL_URL;
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -60611,13 +60355,13 @@ SWIGEXPORT int SWIGSTDCALL CSharp_Dali_IMAGE_VISUAL_SYNCHRONOUS_LOADING_get() {
 }
 
 
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_IMAGE_VISUAL_BORDER_ONLY_get() {
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_MESH_VISUAL_TEXTURES_PATH_get() {
   int jresult ;
   int result;
 
   {
     try {
-      result = (int)Dali::Toolkit::ImageVisual::Property::BORDER_ONLY;
+      result = (int)Dali::Toolkit::MeshVisual::Property::TEXTURES_PATH;
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -60642,13 +60386,13 @@ SWIGEXPORT int SWIGSTDCALL CSharp_Dali_IMAGE_VISUAL_BORDER_ONLY_get() {
 }
 
 
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_IMAGE_VISUAL_PIXEL_AREA_get() {
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_MESH_VISUAL_SHADING_MODE_get() {
   int jresult ;
   int result;
 
   {
     try {
-      result = (int)Dali::Toolkit::ImageVisual::Property::PIXEL_AREA;
+      result = (int)Dali::Toolkit::MeshVisual::Property::SHADING_MODE;
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -60673,223 +60417,13 @@ SWIGEXPORT int SWIGSTDCALL CSharp_Dali_IMAGE_VISUAL_PIXEL_AREA_get() {
 }
 
 
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_IMAGE_VISUAL_WRAP_MODE_U_get() {
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_MESH_VISUAL_USE_MIPMAPPING_get() {
   int jresult ;
   int result;
 
   {
     try {
-      result = (int)Dali::Toolkit::ImageVisual::Property::WRAP_MODE_U;
-    } catch (std::out_of_range& e) {
-      {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
-      };
-    } catch (std::exception& e) {
-      {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
-      };
-    } catch (Dali::DaliException e) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
-      };
-    } catch (...) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
-      };
-    }
-  }
-
-  jresult = (int)result;
-  return jresult;
-}
-
-
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_IMAGE_VISUAL_WRAP_MODE_V_get() {
-  int jresult ;
-  int result;
-
-  {
-    try {
-      result = (int)Dali::Toolkit::ImageVisual::Property::WRAP_MODE_V;
-    } catch (std::out_of_range& e) {
-      {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
-      };
-    } catch (std::exception& e) {
-      {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
-      };
-    } catch (Dali::DaliException e) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
-      };
-    } catch (...) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
-      };
-    }
-  }
-
-  jresult = (int)result;
-  return jresult;
-}
-
-SWIGEXPORT int SWIGSTDCALL CSharp_Image_Visual_BORDER_get() {
-  int jresult ;
-  int result;
-
-  {
-    try {
-      result = (int)Dali::Toolkit::ImageVisual::Property::BORDER;
-    } catch (std::out_of_range& e) {
-      {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
-      };
-    } catch (std::exception& e) {
-      {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
-      };
-    } catch (...) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
-      };
-    }
-  }
-  jresult = (int)result;
-  return jresult;
-}
-
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_MESH_VISUAL_OBJECT_URL_get() {
-  int jresult ;
-  int result;
-
-  {
-    try {
-      result = (int)Dali::Toolkit::MeshVisual::Property::OBJECT_URL;
-    } catch (std::out_of_range& e) {
-      {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
-      };
-    } catch (std::exception& e) {
-      {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
-      };
-    } catch (Dali::DaliException e) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
-      };
-    } catch (...) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
-      };
-    }
-  }
-
-  jresult = (int)result;
-  return jresult;
-}
-
-
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_MESH_VISUAL_MATERIAL_URL_get() {
-  int jresult ;
-  int result;
-
-  {
-    try {
-      result = (int)Dali::Toolkit::MeshVisual::Property::MATERIAL_URL;
-    } catch (std::out_of_range& e) {
-      {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
-      };
-    } catch (std::exception& e) {
-      {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
-      };
-    } catch (Dali::DaliException e) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
-      };
-    } catch (...) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
-      };
-    }
-  }
-
-  jresult = (int)result;
-  return jresult;
-}
-
-
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_MESH_VISUAL_TEXTURES_PATH_get() {
-  int jresult ;
-  int result;
-
-  {
-    try {
-      result = (int)Dali::Toolkit::MeshVisual::Property::TEXTURES_PATH;
-    } catch (std::out_of_range& e) {
-      {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
-      };
-    } catch (std::exception& e) {
-      {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
-      };
-    } catch (Dali::DaliException e) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
-      };
-    } catch (...) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
-      };
-    }
-  }
-
-  jresult = (int)result;
-  return jresult;
-}
-
-
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_MESH_VISUAL_SHADING_MODE_get() {
-  int jresult ;
-  int result;
-
-  {
-    try {
-      result = (int)Dali::Toolkit::MeshVisual::Property::SHADING_MODE;
-    } catch (std::out_of_range& e) {
-      {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
-      };
-    } catch (std::exception& e) {
-      {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
-      };
-    } catch (Dali::DaliException e) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
-      };
-    } catch (...) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
-      };
-    }
-  }
-
-  jresult = (int)result;
-  return jresult;
-}
-
-
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_MESH_VISUAL_USE_MIPMAPPING_get() {
-  int jresult ;
-  int result;
-
-  {
-    try {
-      result = (int)Dali::Toolkit::MeshVisual::Property::USE_MIPMAPPING;
+      result = (int)Dali::Toolkit::MeshVisual::Property::USE_MIPMAPPING;
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -62510,11 +62044,11 @@ SWIGEXPORT void SWIGSTDCALL CSharp_Dali_Builder_CreateRenderTask(void * jarg1, c
 }
 
 
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_Builder_GetFrameBufferImage(void * jarg1, char * jarg2) {
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_Builder_GetPath(void * jarg1, char * jarg2) {
   void * jresult ;
   Dali::Toolkit::Builder *arg1 = (Dali::Toolkit::Builder *) 0 ;
   std::string *arg2 = 0 ;
-  Dali::FrameBufferImage result;
+  Dali::Path result;
 
   arg1 = (Dali::Toolkit::Builder *)jarg1;
   if (!jarg2) {
@@ -62525,7 +62059,7 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_Builder_GetFrameBufferImage(void * jar
   arg2 = &arg2_str;
   {
     try {
-      result = (arg1)->GetFrameBufferImage((std::string const &)*arg2);
+      result = (arg1)->GetPath((std::string const &)*arg2);
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -62545,7 +62079,7 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_Builder_GetFrameBufferImage(void * jar
     }
   }
 
-  jresult = new Dali::FrameBufferImage((const Dali::FrameBufferImage &)result);
+  jresult = new Dali::Path((const Dali::Path &)result);
 
   //argout typemap for const std::string&
 
@@ -62553,11 +62087,11 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_Builder_GetFrameBufferImage(void * jar
 }
 
 
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_Builder_GetPath(void * jarg1, char * jarg2) {
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_Builder_GetPathConstrainer(void * jarg1, char * jarg2) {
   void * jresult ;
   Dali::Toolkit::Builder *arg1 = (Dali::Toolkit::Builder *) 0 ;
   std::string *arg2 = 0 ;
-  Dali::Path result;
+  Dali::PathConstrainer result;
 
   arg1 = (Dali::Toolkit::Builder *)jarg1;
   if (!jarg2) {
@@ -62568,7 +62102,7 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_Builder_GetPath(void * jarg1, char * j
   arg2 = &arg2_str;
   {
     try {
-      result = (arg1)->GetPath((std::string const &)*arg2);
+      result = (arg1)->GetPathConstrainer((std::string const &)*arg2);
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -62588,7 +62122,7 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_Builder_GetPath(void * jarg1, char * j
     }
   }
 
-  jresult = new Dali::Path((const Dali::Path &)result);
+  jresult = new Dali::PathConstrainer((const Dali::PathConstrainer &)result);
 
   //argout typemap for const std::string&
 
@@ -62596,11 +62130,11 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_Builder_GetPath(void * jarg1, char * j
 }
 
 
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_Builder_GetPathConstrainer(void * jarg1, char * jarg2) {
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_Builder_GetLinearConstrainer(void * jarg1, char * jarg2) {
   void * jresult ;
   Dali::Toolkit::Builder *arg1 = (Dali::Toolkit::Builder *) 0 ;
   std::string *arg2 = 0 ;
-  Dali::PathConstrainer result;
+  Dali::LinearConstrainer result;
 
   arg1 = (Dali::Toolkit::Builder *)jarg1;
   if (!jarg2) {
@@ -62611,7 +62145,7 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_Builder_GetPathConstrainer(void * jarg
   arg2 = &arg2_str;
   {
     try {
-      result = (arg1)->GetPathConstrainer((std::string const &)*arg2);
+      result = (arg1)->GetLinearConstrainer((std::string const &)*arg2);
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -62631,7 +62165,7 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_Builder_GetPathConstrainer(void * jarg
     }
   }
 
-  jresult = new Dali::PathConstrainer((const Dali::PathConstrainer &)result);
+  jresult = new Dali::LinearConstrainer((const Dali::LinearConstrainer &)result);
 
   //argout typemap for const std::string&
 
@@ -62639,22 +62173,15 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_Builder_GetPathConstrainer(void * jarg
 }
 
 
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_Builder_GetLinearConstrainer(void * jarg1, char * jarg2) {
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_Builder_QuitSignal(void * jarg1) {
   void * jresult ;
   Dali::Toolkit::Builder *arg1 = (Dali::Toolkit::Builder *) 0 ;
-  std::string *arg2 = 0 ;
-  Dali::LinearConstrainer result;
+  Dali::Toolkit::Builder::BuilderSignalType *result = 0 ;
 
   arg1 = (Dali::Toolkit::Builder *)jarg1;
-  if (!jarg2) {
-    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "null string", 0);
-    return 0;
-  }
-  std::string arg2_str(jarg2);
-  arg2 = &arg2_str;
   {
     try {
-      result = (arg1)->GetLinearConstrainer((std::string const &)*arg2);
+      result = (Dali::Toolkit::Builder::BuilderSignalType *) &(arg1)->QuitSignal();
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -62674,54 +62201,18 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_Builder_GetLinearConstrainer(void * ja
     }
   }
 
-  jresult = new Dali::LinearConstrainer((const Dali::LinearConstrainer &)result);
-
-  //argout typemap for const std::string&
-
+  jresult = (void *)result;
   return jresult;
 }
 
 
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_Builder_QuitSignal(void * jarg1) {
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_TransitionData__SWIG_0() {
   void * jresult ;
-  Dali::Toolkit::Builder *arg1 = (Dali::Toolkit::Builder *) 0 ;
-  Dali::Toolkit::Builder::BuilderSignalType *result = 0 ;
+  Dali::Toolkit::TransitionData *result = 0 ;
 
-  arg1 = (Dali::Toolkit::Builder *)jarg1;
   {
     try {
-      result = (Dali::Toolkit::Builder::BuilderSignalType *) &(arg1)->QuitSignal();
-    } catch (std::out_of_range& e) {
-      {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
-      };
-    } catch (std::exception& e) {
-      {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
-      };
-    } catch (Dali::DaliException e) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
-      };
-    } catch (...) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
-      };
-    }
-  }
-
-  jresult = (void *)result;
-  return jresult;
-}
-
-
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_TransitionData__SWIG_0() {
-  void * jresult ;
-  Dali::Toolkit::TransitionData *result = 0 ;
-
-  {
-    try {
-      result = (Dali::Toolkit::TransitionData *)new Dali::Toolkit::TransitionData();
+      result = (Dali::Toolkit::TransitionData *)new Dali::Toolkit::TransitionData();
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -63605,13 +63096,25 @@ SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ViewImpl_SetBackgroundColor(void * jarg1
 
 SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_ViewImpl_GetBackgroundColor(void * jarg1) {
   void * jresult ;
-  Dali::Toolkit::Internal::Control *arg1 = (Dali::Toolkit::Internal::Control *) 0 ;
+  Dali::Handle *arg1 = (Dali::Handle *) 0 ;
   Dali::Vector4 result;
 
-  arg1 = (Dali::Toolkit::Internal::Control *)jarg1;
+  arg1 = (Dali::Handle *)jarg1;
   {
     try {
-      result = ((Dali::Toolkit::Internal::Control const *)arg1)->GetBackgroundColor();
+      Property::Map* resultMap = ((arg1)->GetProperty( Control::Property::BACKGROUND )).GetMap();
+      if (resultMap)
+      {
+        Dali::Property::Value* type = resultMap->Find( Toolkit::Visual::Property::TYPE );
+        if(type && type->Get<int>() == Visual::COLOR )
+        {
+          Dali::Property::Value* value = resultMap->Find( ColorVisual::Property::MIX_COLOR );
+          if (value)
+          {
+            result = value->Get<Vector4>();
+          }
+        }
+      }
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -63636,43 +63139,6 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_ViewImpl_GetBackgroundColor(void * jar
 }
 
 
-SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ViewImpl_SetBackgroundImage(void * jarg1, void * jarg2) {
-  Dali::Toolkit::Internal::Control *arg1 = (Dali::Toolkit::Internal::Control *) 0 ;
-  Dali::Image arg2 ;
-  Dali::Image *argp2 ;
-
-  arg1 = (Dali::Toolkit::Internal::Control *)jarg1;
-  argp2 = (Dali::Image *)jarg2;
-  if (!argp2) {
-    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null Dali::Image", 0);
-    return ;
-  }
-  arg2 = *argp2;
-  {
-    try {
-      (arg1)->SetBackgroundImage(arg2);
-    } catch (std::out_of_range& e) {
-      {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
-      };
-    } catch (std::exception& e) {
-      {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return ;
-      };
-    } catch (Dali::DaliException e) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return ;
-      };
-    } catch (...) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ;
-      };
-    }
-  }
-
-}
-
-
 SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ViewImpl_SetBackground(void * jarg1, void * jarg2) {
   Dali::Toolkit::Internal::Control *arg1 = (Dali::Toolkit::Internal::Control *) 0 ;
   Dali::Property::Map *arg2 = 0 ;
@@ -67470,27 +66936,6 @@ SWIGEXPORT int SWIGSTDCALL CSharp_Dali_View_Property_STYLE_NAME_get() {
   return jresult;
 }
 
-
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_View_Property_BACKGROUND_COLOR_get() {
-  int jresult ;
-  int result;
-
-  result = (int)Dali::Toolkit::Control::Property::BACKGROUND_COLOR;
-  jresult = (int)result;
-  return jresult;
-}
-
-
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_View_Property_BACKGROUND_IMAGE_get() {
-  int jresult ;
-  int result;
-
-  result = (int)Dali::Toolkit::Control::Property::BACKGROUND_IMAGE;
-  jresult = (int)result;
-  return jresult;
-}
-
-
 SWIGEXPORT int SWIGSTDCALL CSharp_Dali_View_Property_KEY_INPUT_FOCUS_get() {
   int jresult ;
   int result;
@@ -68184,77 +67629,6 @@ SWIGEXPORT void SWIGSTDCALL CSharp_Dali_View_SetBackgroundColor(void * jarg1, vo
 
 }
 
-
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_View_GetBackgroundColor(void * jarg1) {
-  void * jresult ;
-  Dali::Toolkit::Control *arg1 = (Dali::Toolkit::Control *) 0 ;
-  Dali::Vector4 result;
-
-  arg1 = (Dali::Toolkit::Control *)jarg1;
-  {
-    try {
-      result = ((Dali::Toolkit::Control const *)arg1)->GetBackgroundColor();
-    } catch (std::out_of_range& e) {
-      {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
-      };
-    } catch (std::exception& e) {
-      {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
-      };
-    } catch (Dali::DaliException e) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
-      };
-    } catch (...) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
-      };
-    }
-  }
-
-  jresult = new Dali::Vector4((const Dali::Vector4 &)result);
-  return jresult;
-}
-
-
-SWIGEXPORT void SWIGSTDCALL CSharp_Dali_View_SetBackgroundImage(void * jarg1, void * jarg2) {
-  Dali::Toolkit::Control *arg1 = (Dali::Toolkit::Control *) 0 ;
-  Dali::Image arg2 ;
-  Dali::Image *argp2 ;
-
-  arg1 = (Dali::Toolkit::Control *)jarg1;
-  argp2 = (Dali::Image *)jarg2;
-  if (!argp2) {
-    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null Dali::Image", 0);
-    return ;
-  }
-  arg2 = *argp2;
-  {
-    try {
-      (arg1)->SetBackgroundImage(arg2);
-    } catch (std::out_of_range& e) {
-      {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
-      };
-    } catch (std::exception& e) {
-      {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return ;
-      };
-    } catch (Dali::DaliException e) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return ;
-      };
-    } catch (...) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ;
-      };
-    }
-  }
-
-}
-
-
 SWIGEXPORT void SWIGSTDCALL CSharp_Dali_View_ClearBackground(void * jarg1) {
   Dali::Toolkit::Control *arg1 = (Dali::Toolkit::Control *) 0 ;
 
@@ -68513,12 +67887,11 @@ SWIGEXPORT void SWIGSTDCALL CSharp_Dali_View_DoAction(void * jarg1, int jarg2, i
   Dali::Property::Index arg3 = 0 ;
   arg3 = (Dali::Property::Index)jarg3;
 
-  Dali::Property::Value arg4;
-  arg4 = (Dali::Property::Value *)jarg4;
+  Dali::Property::Value *arg4 = (Dali::Property::Value *)jarg4;
 
   {
     try {
-      DevelControl::DoAction(arg1, arg2, arg3, arg4);
+      DevelControl::DoAction(arg1, arg2, arg3, *arg4);
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
@@ -68537,19 +67910,19 @@ SWIGEXPORT void SWIGSTDCALL CSharp_Dali_View_DoAction(void * jarg1, int jarg2, i
 
 }
 
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_GetLayout__SWIG_0(void * jarg1) {
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_ResourceReadySignal(void * jarg1) {
   void * jresult ;
-  Dali::Toolkit::Internal::Control *arg1 = 0 ;
-  Dali::Toolkit::LayoutItem result;
+  Dali::Toolkit::Control *arg1 = 0 ;
+  Dali::Toolkit::Control::ResourceReadySignalType *result = 0 ;
 
-  arg1 = (Dali::Toolkit::Internal::Control *)jarg1;
+  arg1 = (Dali::Toolkit::Control *)jarg1;
   if (!arg1) {
-    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::Toolkit::Internal::Control & type is null", 0);
+    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::Toolkit::Control & type is null", 0);
     return 0;
   }
   {
     try {
-      result = Dali::Toolkit::DevelControl::GetLayout(*arg1);
+      result = (Dali::Toolkit::Control::ResourceReadySignalType *) &arg1->ResourceReadySignal();
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -68558,32 +67931,35 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_GetLayout__SWIG_0(void * jarg1) {
       {
         SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
       };
+    } catch (Dali::DaliException e) {
+      {
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
+      };
     } catch (...) {
       {
         SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
       };
     }
   }
-  jresult = new Dali::Toolkit::LayoutItem((const Dali::Toolkit::LayoutItem &)result);
+
+  jresult = (void *)result;
   return jresult;
 }
 
 
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_GetLayout__SWIG_1(void * jarg1) {
-  void * jresult ;
-  Dali::Toolkit::Control arg1 ;
-  Dali::Toolkit::Control *argp1 ;
-  Dali::Toolkit::LayoutItem result;
+SWIGEXPORT unsigned int SWIGSTDCALL CSharp_Dali_IsResourceReady(void * jarg1) {
+  unsigned int jresult ;
+  Dali::Toolkit::Control *arg1 = 0 ;
+  bool result;
 
-  argp1 = (Dali::Toolkit::Control *)jarg1;
-  if (!argp1) {
-    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null Dali::Toolkit::Control", 0);
+  arg1 = (Dali::Toolkit::Control *)jarg1;
+  if (!arg1) {
+    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::Toolkit::Control const & type is null", 0);
     return 0;
   }
-  arg1 = *argp1;
   {
     try {
-      result = Dali::Toolkit::DevelControl::GetLayout(arg1);
+      result = (bool)arg1->IsResourceReady();
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -68592,170 +67968,29 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_GetLayout__SWIG_1(void * jarg1) {
       {
         SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
       };
-    } catch (...) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
-      };
-    }
-  }
-  jresult = new Dali::Toolkit::LayoutItem((const Dali::Toolkit::LayoutItem &)result);
-  return jresult;
-}
-
-SWIGEXPORT void SWIGSTDCALL CSharp_Dali_SetLayout__SWIG_0(void * jarg1, void * jarg2) {
-  Dali::Toolkit::Internal::Control *arg1 = 0 ;
-  Dali::Toolkit::LayoutItem arg2 ;
-  Dali::Toolkit::LayoutItem *argp2 ;
-
-  arg1 = (Dali::Toolkit::Internal::Control *)jarg1;
-  if (!arg1) {
-    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::Toolkit::Internal::Control & type is null", 0);
-    return ;
-  }
-  argp2 = (Dali::Toolkit::LayoutItem *)jarg2;
-  if (!argp2) {
-    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null Dali::Toolkit::LayoutItem", 0);
-    return ;
-  }
-  arg2 = *argp2;
-  {
-    try {
-      Dali::Toolkit::DevelControl::SetLayout(*arg1,arg2);
-    } catch (std::out_of_range& e) {
-      {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
-      };
-    } catch (std::exception& e) {
+    } catch (Dali::DaliException e) {
       {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return ;
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
       };
     } catch (...) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ;
+        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
       };
     }
   }
-}
-
-
-SWIGEXPORT void SWIGSTDCALL CSharp_Dali_SetLayout__SWIG_1(void * jarg1, void * jarg2) {
-  Dali::Toolkit::Control arg1 ;
-  Dali::Toolkit::LayoutItem arg2 ;
-  Dali::Toolkit::Control *argp1 ;
-  Dali::Toolkit::LayoutItem *argp2 ;
 
-  argp1 = (Dali::Toolkit::Control *)jarg1;
-  if (!argp1) {
-    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null Dali::Toolkit::Control", 0);
-    return ;
-  }
-  arg1 = *argp1;
-  argp2 = (Dali::Toolkit::LayoutItem *)jarg2;
-  if (!argp2) {
-    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null Dali::Toolkit::LayoutItem", 0);
-    return ;
-  }
-  arg2 = *argp2;
-  {
-    try {
-      Dali::Toolkit::DevelControl::SetLayout(arg1,arg2);
-    } catch (std::out_of_range& e) {
-      {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
-      };
-    } catch (std::exception& e) {
-      {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return ;
-      };
-    } catch (...) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ;
-      };
-    }
-  }
+  jresult = result;
+  return jresult;
 }
 
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_ResourceReadySignal(void * jarg1) {
+
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_KeyInputFocusManager() {
   void * jresult ;
-  Dali::Toolkit::Control *arg1 = 0 ;
-  Dali::Toolkit::Control::ResourceReadySignalType *result = 0 ;
+  Dali::Toolkit::KeyInputFocusManager *result = 0 ;
 
-  arg1 = (Dali::Toolkit::Control *)jarg1;
-  if (!arg1) {
-    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::Toolkit::Control & type is null", 0);
-    return 0;
-  }
   {
     try {
-      result = (Dali::Toolkit::Control::ResourceReadySignalType *) &arg1->ResourceReadySignal();
-    } catch (std::out_of_range& e) {
-      {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
-      };
-    } catch (std::exception& e) {
-      {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
-      };
-    } catch (Dali::DaliException e) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
-      };
-    } catch (...) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
-      };
-    }
-  }
-
-  jresult = (void *)result;
-  return jresult;
-}
-
-
-SWIGEXPORT unsigned int SWIGSTDCALL CSharp_Dali_IsResourceReady(void * jarg1) {
-  unsigned int jresult ;
-  Dali::Toolkit::Control *arg1 = 0 ;
-  bool result;
-
-  arg1 = (Dali::Toolkit::Control *)jarg1;
-  if (!arg1) {
-    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::Toolkit::Control const & type is null", 0);
-    return 0;
-  }
-  {
-    try {
-      result = (bool)arg1->IsResourceReady();
-    } catch (std::out_of_range& e) {
-      {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
-      };
-    } catch (std::exception& e) {
-      {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
-      };
-    } catch (Dali::DaliException e) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
-      };
-    } catch (...) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
-      };
-    }
-  }
-
-  jresult = result;
-  return jresult;
-}
-
-
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_KeyInputFocusManager() {
-  void * jresult ;
-  Dali::Toolkit::KeyInputFocusManager *result = 0 ;
-
-  {
-    try {
-      result = (Dali::Toolkit::KeyInputFocusManager *)new Dali::Toolkit::KeyInputFocusManager();
+      result = (Dali::Toolkit::KeyInputFocusManager *)new Dali::Toolkit::KeyInputFocusManager();
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -69696,54 +68931,158 @@ SWIGEXPORT int SWIGSTDCALL CSharp_Dali_Button_Property_SELECTED_get() {
   return jresult;
 }
 
-
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_Button_Property_UNSELECTED_COLOR_get() {
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_Button_Property_LABEL_get() {
   int jresult ;
   int result;
 
-  result = (int)Dali::Toolkit::Button::Property::UNSELECTED_COLOR;
+  result = (int)Dali::Toolkit::Button::Property::LABEL;
   jresult = (int)result;
   return jresult;
 }
 
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_Button_Property() {
+  void * jresult ;
+  Dali::Toolkit::Button::Property *result = 0 ;
 
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_Button_Property_SELECTED_COLOR_get() {
-  int jresult ;
-  int result;
+  {
+    try {
+      result = (Dali::Toolkit::Button::Property *)new Dali::Toolkit::Button::Property();
+    } catch (std::out_of_range& e) {
+      {
+        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
+      };
+    } catch (std::exception& e) {
+      {
+        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
+      };
+    } catch (Dali::DaliException e) {
+      {
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
+      };
+    } catch (...) {
+      {
+        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
+      };
+    }
+  }
 
-  result = (int)Dali::Toolkit::Button::Property::SELECTED_COLOR;
-  jresult = (int)result;
+  jresult = (void *)result;
   return jresult;
 }
 
 
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_Button_Property_LABEL_get() {
-  int jresult ;
-  int result;
+SWIGEXPORT void SWIGSTDCALL CSharp_Dali_delete_Button_Property(void * jarg1) {
+  Dali::Toolkit::Button::Property *arg1 = (Dali::Toolkit::Button::Property *) 0 ;
 
-  result = (int)Dali::Toolkit::Button::Property::LABEL;
-  jresult = (int)result;
+  arg1 = (Dali::Toolkit::Button::Property *)jarg1;
+  {
+    try {
+      delete arg1;
+    } catch (std::out_of_range& e) {
+      {
+        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
+      };
+    } catch (std::exception& e) {
+      {
+        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return ;
+      };
+    } catch (Dali::DaliException e) {
+      {
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return ;
+      };
+    } catch (...) {
+      {
+        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ;
+      };
+    }
+  }
+
+}
+
+
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_Button__SWIG_0() {
+  void * jresult ;
+  Dali::Toolkit::Button *result = 0 ;
+
+  {
+    try {
+      result = (Dali::Toolkit::Button *)new Dali::Toolkit::Button();
+    } catch (std::out_of_range& e) {
+      {
+        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
+      };
+    } catch (std::exception& e) {
+      {
+        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
+      };
+    } catch (Dali::DaliException e) {
+      {
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
+      };
+    } catch (...) {
+      {
+        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
+      };
+    }
+  }
+
+  jresult = (void *)result;
   return jresult;
 }
 
 
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_Button_Property_LABEL_TEXT_get() {
-  int jresult ;
-  int result;
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_Button__SWIG_1(void * jarg1) {
+  void * jresult ;
+  Dali::Toolkit::Button *arg1 = 0 ;
+  Dali::Toolkit::Button *result = 0 ;
 
-  result = (int)Dali::Toolkit::Button::Property::LABEL_TEXT;
-  jresult = (int)result;
+  arg1 = (Dali::Toolkit::Button *)jarg1;
+  if (!arg1) {
+    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::Toolkit::Button const & type is null", 0);
+    return 0;
+  }
+  {
+    try {
+      result = (Dali::Toolkit::Button *)new Dali::Toolkit::Button((Dali::Toolkit::Button const &)*arg1);
+    } catch (std::out_of_range& e) {
+      {
+        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
+      };
+    } catch (std::exception& e) {
+      {
+        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
+      };
+    } catch (Dali::DaliException e) {
+      {
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
+      };
+    } catch (...) {
+      {
+        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
+      };
+    }
+  }
+
+  jresult = (void *)result;
   return jresult;
 }
 
 
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_Button_Property() {
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_Button_Assign(void * jarg1, void * jarg2) {
   void * jresult ;
-  Dali::Toolkit::Button::Property *result = 0 ;
+  Dali::Toolkit::Button *arg1 = (Dali::Toolkit::Button *) 0 ;
+  Dali::Toolkit::Button *arg2 = 0 ;
+  Dali::Toolkit::Button *result = 0 ;
 
+  arg1 = (Dali::Toolkit::Button *)jarg1;
+  arg2 = (Dali::Toolkit::Button *)jarg2;
+  if (!arg2) {
+    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::Toolkit::Button const & type is null", 0);
+    return 0;
+  }
   {
     try {
-      result = (Dali::Toolkit::Button::Property *)new Dali::Toolkit::Button::Property();
+      result = (Dali::Toolkit::Button *) &(arg1)->operator =((Dali::Toolkit::Button const &)*arg2);
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -69768,10 +69107,49 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_Button_Property() {
 }
 
 
-SWIGEXPORT void SWIGSTDCALL CSharp_Dali_delete_Button_Property(void * jarg1) {
-  Dali::Toolkit::Button::Property *arg1 = (Dali::Toolkit::Button::Property *) 0 ;
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_Button_DownCast(void * jarg1) {
+  void * jresult ;
+  Dali::BaseHandle arg1 ;
+  Dali::BaseHandle *argp1 ;
+  Dali::Toolkit::Button result;
 
-  arg1 = (Dali::Toolkit::Button::Property *)jarg1;
+  argp1 = (Dali::BaseHandle *)jarg1;
+  if (!argp1) {
+    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null Dali::BaseHandle", 0);
+    return 0;
+  }
+  arg1 = *argp1;
+  {
+    try {
+      result = Dali::Toolkit::Button::DownCast(arg1);
+    } catch (std::out_of_range& e) {
+      {
+        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
+      };
+    } catch (std::exception& e) {
+      {
+        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
+      };
+    } catch (Dali::DaliException e) {
+      {
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
+      };
+    } catch (...) {
+      {
+        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
+      };
+    }
+  }
+
+  jresult = new Dali::Toolkit::Button((const Dali::Toolkit::Button &)result);
+  return jresult;
+}
+
+
+SWIGEXPORT void SWIGSTDCALL CSharp_Dali_delete_Button(void * jarg1) {
+  Dali::Toolkit::Button *arg1 = (Dali::Toolkit::Button *) 0 ;
+
+  arg1 = (Dali::Toolkit::Button *)jarg1;
   {
     try {
       delete arg1;
@@ -69796,14 +69174,15 @@ SWIGEXPORT void SWIGSTDCALL CSharp_Dali_delete_Button_Property(void * jarg1) {
 
 }
 
-
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_Button__SWIG_0() {
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_Button_PressedSignal(void * jarg1) {
   void * jresult ;
-  Dali::Toolkit::Button *result = 0 ;
+  Dali::Toolkit::Button *arg1 = (Dali::Toolkit::Button *) 0 ;
+  Dali::Toolkit::Button::ButtonSignalType *result = 0 ;
 
+  arg1 = (Dali::Toolkit::Button *)jarg1;
   {
     try {
-      result = (Dali::Toolkit::Button *)new Dali::Toolkit::Button();
+      result = (Dali::Toolkit::Button::ButtonSignalType *) &(arg1)->PressedSignal();
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -69827,20 +69206,15 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_Button__SWIG_0() {
   return jresult;
 }
 
-
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_Button__SWIG_1(void * jarg1) {
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_Button_ReleasedSignal(void * jarg1) {
   void * jresult ;
-  Dali::Toolkit::Button *arg1 = 0 ;
-  Dali::Toolkit::Button *result = 0 ;
+  Dali::Toolkit::Button *arg1 = (Dali::Toolkit::Button *) 0 ;
+  Dali::Toolkit::Button::ButtonSignalType *result = 0 ;
 
   arg1 = (Dali::Toolkit::Button *)jarg1;
-  if (!arg1) {
-    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::Toolkit::Button const & type is null", 0);
-    return 0;
-  }
   {
     try {
-      result = (Dali::Toolkit::Button *)new Dali::Toolkit::Button((Dali::Toolkit::Button const &)*arg1);
+      result = (Dali::Toolkit::Button::ButtonSignalType *) &(arg1)->ReleasedSignal();
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -69865,21 +69239,15 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_Button__SWIG_1(void * jarg1) {
 }
 
 
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_Button_Assign(void * jarg1, void * jarg2) {
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_Button_ClickedSignal(void * jarg1) {
   void * jresult ;
   Dali::Toolkit::Button *arg1 = (Dali::Toolkit::Button *) 0 ;
-  Dali::Toolkit::Button *arg2 = 0 ;
-  Dali::Toolkit::Button *result = 0 ;
+  Dali::Toolkit::Button::ButtonSignalType *result = 0 ;
 
   arg1 = (Dali::Toolkit::Button *)jarg1;
-  arg2 = (Dali::Toolkit::Button *)jarg2;
-  if (!arg2) {
-    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::Toolkit::Button const & type is null", 0);
-    return 0;
-  }
   {
     try {
-      result = (Dali::Toolkit::Button *) &(arg1)->operator =((Dali::Toolkit::Button const &)*arg2);
+      result = (Dali::Toolkit::Button::ButtonSignalType *) &(arg1)->ClickedSignal();
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -69904,21 +69272,15 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_Button_Assign(void * jarg1, void * jar
 }
 
 
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_Button_DownCast(void * jarg1) {
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_Button_StateChangedSignal(void * jarg1) {
   void * jresult ;
-  Dali::BaseHandle arg1 ;
-  Dali::BaseHandle *argp1 ;
-  Dali::Toolkit::Button result;
+  Dali::Toolkit::Button *arg1 = (Dali::Toolkit::Button *) 0 ;
+  Dali::Toolkit::Button::ButtonSignalType *result = 0 ;
 
-  argp1 = (Dali::BaseHandle *)jarg1;
-  if (!argp1) {
-    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null Dali::BaseHandle", 0);
-    return 0;
-  }
-  arg1 = *argp1;
+  arg1 = (Dali::Toolkit::Button *)jarg1;
   {
     try {
-      result = Dali::Toolkit::Button::DownCast(arg1);
+      result = (Dali::Toolkit::Button::ButtonSignalType *) &(arg1)->StateChangedSignal();
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -69938,49 +69300,18 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_Button_DownCast(void * jarg1) {
     }
   }
 
-  jresult = new Dali::Toolkit::Button((const Dali::Toolkit::Button &)result);
+  jresult = (void *)result;
   return jresult;
 }
 
 
-SWIGEXPORT void SWIGSTDCALL CSharp_Dali_delete_Button(void * jarg1) {
-  Dali::Toolkit::Button *arg1 = (Dali::Toolkit::Button *) 0 ;
-
-  arg1 = (Dali::Toolkit::Button *)jarg1;
-  {
-    try {
-      delete arg1;
-    } catch (std::out_of_range& e) {
-      {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
-      };
-    } catch (std::exception& e) {
-      {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return ;
-      };
-    } catch (Dali::DaliException e) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return ;
-      };
-    } catch (...) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ;
-      };
-    }
-  }
-
-}
-
-
-SWIGEXPORT unsigned int SWIGSTDCALL CSharp_Dali_Button_IsDisabled(void * jarg1) {
-  unsigned int jresult ;
-  Dali::Toolkit::Button *arg1 = (Dali::Toolkit::Button *) 0 ;
-  bool result;
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_CheckBoxButton__SWIG_0() {
+  void * jresult ;
+  Dali::Toolkit::CheckBoxButton *result = 0 ;
 
-  arg1 = (Dali::Toolkit::Button *)jarg1;
   {
     try {
-      result = (bool)((Dali::Toolkit::Button const *)arg1)->IsDisabled();
+      result = (Dali::Toolkit::CheckBoxButton *)new Dali::Toolkit::CheckBoxButton();
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -70000,20 +69331,24 @@ SWIGEXPORT unsigned int SWIGSTDCALL CSharp_Dali_Button_IsDisabled(void * jarg1)
     }
   }
 
-  jresult = result;
+  jresult = (void *)result;
   return jresult;
 }
 
 
-SWIGEXPORT unsigned int SWIGSTDCALL CSharp_Dali_Button_IsAutoRepeating(void * jarg1) {
-  unsigned int jresult ;
-  Dali::Toolkit::Button *arg1 = (Dali::Toolkit::Button *) 0 ;
-  bool result;
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_CheckBoxButton__SWIG_1(void * jarg1) {
+  void * jresult ;
+  Dali::Toolkit::CheckBoxButton *arg1 = 0 ;
+  Dali::Toolkit::CheckBoxButton *result = 0 ;
 
-  arg1 = (Dali::Toolkit::Button *)jarg1;
+  arg1 = (Dali::Toolkit::CheckBoxButton *)jarg1;
+  if (!arg1) {
+    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::Toolkit::CheckBoxButton const & type is null", 0);
+    return 0;
+  }
   {
     try {
-      result = (bool)((Dali::Toolkit::Button const *)arg1)->IsAutoRepeating();
+      result = (Dali::Toolkit::CheckBoxButton *)new Dali::Toolkit::CheckBoxButton((Dali::Toolkit::CheckBoxButton const &)*arg1);
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -70033,20 +69368,26 @@ SWIGEXPORT unsigned int SWIGSTDCALL CSharp_Dali_Button_IsAutoRepeating(void * ja
     }
   }
 
-  jresult = result;
+  jresult = (void *)result;
   return jresult;
 }
 
 
-SWIGEXPORT float SWIGSTDCALL CSharp_Dali_Button_GetInitialAutoRepeatingDelay(void * jarg1) {
-  float jresult ;
-  Dali::Toolkit::Button *arg1 = (Dali::Toolkit::Button *) 0 ;
-  float result;
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_CheckBoxButton_Assign(void * jarg1, void * jarg2) {
+  void * jresult ;
+  Dali::Toolkit::CheckBoxButton *arg1 = (Dali::Toolkit::CheckBoxButton *) 0 ;
+  Dali::Toolkit::CheckBoxButton *arg2 = 0 ;
+  Dali::Toolkit::CheckBoxButton *result = 0 ;
 
-  arg1 = (Dali::Toolkit::Button *)jarg1;
+  arg1 = (Dali::Toolkit::CheckBoxButton *)jarg1;
+  arg2 = (Dali::Toolkit::CheckBoxButton *)jarg2;
+  if (!arg2) {
+    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::Toolkit::CheckBoxButton const & type is null", 0);
+    return 0;
+  }
   {
     try {
-      result = (float)((Dali::Toolkit::Button const *)arg1)->GetInitialAutoRepeatingDelay();
+      result = (Dali::Toolkit::CheckBoxButton *) &(arg1)->operator =((Dali::Toolkit::CheckBoxButton const &)*arg2);
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -70066,53 +69407,47 @@ SWIGEXPORT float SWIGSTDCALL CSharp_Dali_Button_GetInitialAutoRepeatingDelay(voi
     }
   }
 
-  jresult = result;
+  jresult = (void *)result;
   return jresult;
 }
 
 
-SWIGEXPORT float SWIGSTDCALL CSharp_Dali_Button_GetNextAutoRepeatingDelay(void * jarg1) {
-  float jresult ;
-  Dali::Toolkit::Button *arg1 = (Dali::Toolkit::Button *) 0 ;
-  float result;
+SWIGEXPORT void SWIGSTDCALL CSharp_Dali_delete_CheckBoxButton(void * jarg1) {
+  Dali::Toolkit::CheckBoxButton *arg1 = (Dali::Toolkit::CheckBoxButton *) 0 ;
 
-  arg1 = (Dali::Toolkit::Button *)jarg1;
+  arg1 = (Dali::Toolkit::CheckBoxButton *)jarg1;
   {
     try {
-      result = (float)((Dali::Toolkit::Button const *)arg1)->GetNextAutoRepeatingDelay();
+      delete arg1;
     } catch (std::out_of_range& e) {
       {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
+        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
       };
     } catch (std::exception& e) {
       {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
+        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return ;
       };
     } catch (Dali::DaliException e) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return ;
       };
     } catch (...) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
+        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ;
       };
     }
   }
 
-  jresult = result;
-  return jresult;
 }
 
 
-SWIGEXPORT unsigned int SWIGSTDCALL CSharp_Dali_Button_IsTogglableButton(void * jarg1) {
-  unsigned int jresult ;
-  Dali::Toolkit::Button *arg1 = (Dali::Toolkit::Button *) 0 ;
-  bool result;
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_CheckBoxButton_New() {
+  void * jresult ;
+  Dali::Toolkit::CheckBoxButton result;
 
-  arg1 = (Dali::Toolkit::Button *)jarg1;
   {
     try {
-      result = (bool)((Dali::Toolkit::Button const *)arg1)->IsTogglableButton();
+      result = Dali::Toolkit::CheckBoxButton::New();
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -70132,20 +69467,26 @@ SWIGEXPORT unsigned int SWIGSTDCALL CSharp_Dali_Button_IsTogglableButton(void *
     }
   }
 
-  jresult = result;
+  jresult = new Dali::Toolkit::CheckBoxButton((const Dali::Toolkit::CheckBoxButton &)result);
   return jresult;
 }
 
 
-SWIGEXPORT unsigned int SWIGSTDCALL CSharp_Dali_Button_IsSelected(void * jarg1) {
-  unsigned int jresult ;
-  Dali::Toolkit::Button *arg1 = (Dali::Toolkit::Button *) 0 ;
-  bool result;
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_CheckBoxButton_DownCast(void * jarg1) {
+  void * jresult ;
+  Dali::BaseHandle arg1 ;
+  Dali::BaseHandle *argp1 ;
+  Dali::Toolkit::CheckBoxButton result;
 
-  arg1 = (Dali::Toolkit::Button *)jarg1;
+  argp1 = (Dali::BaseHandle *)jarg1;
+  if (!argp1) {
+    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null Dali::BaseHandle", 0);
+    return 0;
+  }
+  arg1 = *argp1;
   {
     try {
-      result = (bool)((Dali::Toolkit::Button const *)arg1)->IsSelected();
+      result = Dali::Toolkit::CheckBoxButton::DownCast(arg1);
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -70165,129 +69506,99 @@ SWIGEXPORT unsigned int SWIGSTDCALL CSharp_Dali_Button_IsSelected(void * jarg1)
     }
   }
 
-  jresult = result;
+  jresult = new Dali::Toolkit::CheckBoxButton((const Dali::Toolkit::CheckBoxButton &)result);
   return jresult;
 }
 
 
-SWIGEXPORT float SWIGSTDCALL CSharp_Dali_Button_GetAnimationTime(void * jarg1) {
-  float jresult ;
-  Dali::Toolkit::Button *arg1 = (Dali::Toolkit::Button *) 0 ;
-  float result;
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_PushButton_Property_UNSELECTED_ICON_get() {
+  int jresult ;
+  int result;
 
-  arg1 = (Dali::Toolkit::Button *)jarg1;
-  {
-    try {
-      result = (float)((Dali::Toolkit::Button const *)arg1)->GetAnimationTime();
-    } catch (std::out_of_range& e) {
-      {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
-      };
-    } catch (std::exception& e) {
-      {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
-      };
-    } catch (Dali::DaliException e) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
-      };
-    } catch (...) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
-      };
-    }
-  }
+  result = (int)Dali::Toolkit::PushButton::Property::UNSELECTED_ICON;
+  jresult = (int)result;
+  return jresult;
+}
 
-  jresult = result;
+
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_PushButton_Property_SELECTED_ICON_get() {
+  int jresult ;
+  int result;
+
+  result = (int)Dali::Toolkit::PushButton::Property::SELECTED_ICON;
+  jresult = (int)result;
   return jresult;
 }
 
 
-SWIGEXPORT char * SWIGSTDCALL CSharp_Dali_Button_GetLabelText(void * jarg1) {
-  char * jresult ;
-  Dali::Toolkit::Button *arg1 = (Dali::Toolkit::Button *) 0 ;
-  std::string result;
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_PushButton_Property_ICON_ALIGNMENT_get() {
+  int jresult ;
+  int result;
 
-  arg1 = (Dali::Toolkit::Button *)jarg1;
-  {
-    try {
-      result = ((Dali::Toolkit::Button const *)arg1)->GetLabelText();
-    } catch (std::out_of_range& e) {
-      {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
-      };
-    } catch (std::exception& e) {
-      {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
-      };
-    } catch (Dali::DaliException e) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
-      };
-    } catch (...) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
-      };
-    }
-  }
+  result = (int)Dali::Toolkit::PushButton::Property::ICON_ALIGNMENT;
+  jresult = (int)result;
+  return jresult;
+}
 
-  jresult = SWIG_csharp_string_callback((&result)->c_str());
+
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_PushButton_Property_LABEL_PADDING_get() {
+  int jresult ;
+  int result;
+
+  result = (int)Dali::Toolkit::PushButton::Property::LABEL_PADDING;
+  jresult = (int)result;
   return jresult;
 }
 
 
-SWIGEXPORT void SWIGSTDCALL CSharp_Dali_Button_SetLabel(void * jarg1, void * jarg2) {
-  Dali::Toolkit::Button *arg1 = (Dali::Toolkit::Button *) 0 ;
-  Dali::Actor arg2 ;
-  Dali::Actor *argp2 ;
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_PushButton_Property_ICON_PADDING_get() {
+  int jresult ;
+  int result;
+
+  result = (int)Dali::Toolkit::PushButton::Property::ICON_PADDING;
+  jresult = (int)result;
+  return jresult;
+}
+
+
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_PushButton_Property() {
+  void * jresult ;
+  Dali::Toolkit::PushButton::Property *result = 0 ;
 
-  arg1 = (Dali::Toolkit::Button *)jarg1;
-  argp2 = (Dali::Actor *)jarg2;
-  if (!argp2) {
-    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null Dali::Actor", 0);
-    return ;
-  }
-  arg2 = *argp2;
   {
     try {
-      (arg1)->SetLabel(arg2);
+      result = (Dali::Toolkit::PushButton::Property *)new Dali::Toolkit::PushButton::Property();
     } catch (std::out_of_range& e) {
       {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
+        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
       };
     } catch (std::exception& e) {
       {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return ;
+        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
       };
     } catch (Dali::DaliException e) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return ;
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
       };
     } catch (...) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ;
+        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
       };
     }
   }
 
+  jresult = (void *)result;
+  return jresult;
 }
 
 
-SWIGEXPORT void SWIGSTDCALL CSharp_Dali_Button_SetButtonImage(void * jarg1, void * jarg2) {
-  Dali::Toolkit::Button *arg1 = (Dali::Toolkit::Button *) 0 ;
-  Dali::Image arg2 ;
-  Dali::Image *argp2 ;
+SWIGEXPORT void SWIGSTDCALL CSharp_Dali_delete_PushButton_Property(void * jarg1) {
+  Dali::Toolkit::PushButton::Property *arg1 = (Dali::Toolkit::PushButton::Property *) 0 ;
 
-  arg1 = (Dali::Toolkit::Button *)jarg1;
-  argp2 = (Dali::Image *)jarg2;
-  if (!argp2) {
-    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null Dali::Image", 0);
-    return ;
-  }
-  arg2 = *argp2;
+  arg1 = (Dali::Toolkit::PushButton::Property *)jarg1;
   {
     try {
-      (arg1)->SetButtonImage(arg2);
+      delete arg1;
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
@@ -70310,52 +69621,50 @@ SWIGEXPORT void SWIGSTDCALL CSharp_Dali_Button_SetButtonImage(void * jarg1, void
 }
 
 
-SWIGEXPORT void SWIGSTDCALL CSharp_Dali_Button_SetSelectedImage(void * jarg1, void * jarg2) {
-  Dali::Toolkit::Button *arg1 = (Dali::Toolkit::Button *) 0 ;
-  Dali::Image arg2 ;
-  Dali::Image *argp2 ;
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_PushButton__SWIG_0() {
+  void * jresult ;
+  Dali::Toolkit::PushButton *result = 0 ;
 
-  arg1 = (Dali::Toolkit::Button *)jarg1;
-  argp2 = (Dali::Image *)jarg2;
-  if (!argp2) {
-    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null Dali::Image", 0);
-    return ;
-  }
-  arg2 = *argp2;
   {
     try {
-      (arg1)->SetSelectedImage(arg2);
+      result = (Dali::Toolkit::PushButton *)new Dali::Toolkit::PushButton();
     } catch (std::out_of_range& e) {
       {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
+        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
       };
     } catch (std::exception& e) {
       {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return ;
+        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
       };
     } catch (Dali::DaliException e) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return ;
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
       };
     } catch (...) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ;
+        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
       };
     }
   }
 
+  jresult = (void *)result;
+  return jresult;
 }
 
 
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_Button_GetButtonImage(void * jarg1) {
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_PushButton__SWIG_1(void * jarg1) {
   void * jresult ;
-  Dali::Toolkit::Button *arg1 = (Dali::Toolkit::Button *) 0 ;
-  Dali::Actor result;
+  Dali::Toolkit::PushButton *arg1 = 0 ;
+  Dali::Toolkit::PushButton *result = 0 ;
 
-  arg1 = (Dali::Toolkit::Button *)jarg1;
+  arg1 = (Dali::Toolkit::PushButton *)jarg1;
+  if (!arg1) {
+    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::Toolkit::PushButton const & type is null", 0);
+    return 0;
+  }
   {
     try {
-      result = ((Dali::Toolkit::Button const *)arg1)->GetButtonImage();
+      result = (Dali::Toolkit::PushButton *)new Dali::Toolkit::PushButton((Dali::Toolkit::PushButton const &)*arg1);
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -70375,20 +69684,26 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_Button_GetButtonImage(void * jarg1) {
     }
   }
 
-  jresult = new Dali::Actor((const Dali::Actor &)result);
+  jresult = (void *)result;
   return jresult;
 }
 
 
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_Button_GetSelectedImage(void * jarg1) {
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_PushButton_Assign(void * jarg1, void * jarg2) {
   void * jresult ;
-  Dali::Toolkit::Button *arg1 = (Dali::Toolkit::Button *) 0 ;
-  Dali::Actor result;
+  Dali::Toolkit::PushButton *arg1 = (Dali::Toolkit::PushButton *) 0 ;
+  Dali::Toolkit::PushButton *arg2 = 0 ;
+  Dali::Toolkit::PushButton *result = 0 ;
 
-  arg1 = (Dali::Toolkit::Button *)jarg1;
+  arg1 = (Dali::Toolkit::PushButton *)jarg1;
+  arg2 = (Dali::Toolkit::PushButton *)jarg2;
+  if (!arg2) {
+    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::Toolkit::PushButton const & type is null", 0);
+    return 0;
+  }
   {
     try {
-      result = ((Dali::Toolkit::Button const *)arg1)->GetSelectedImage();
+      result = (Dali::Toolkit::PushButton *) &(arg1)->operator =((Dali::Toolkit::PushButton const &)*arg2);
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -70408,53 +69723,47 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_Button_GetSelectedImage(void * jarg1)
     }
   }
 
-  jresult = new Dali::Actor((const Dali::Actor &)result);
+  jresult = (void *)result;
   return jresult;
 }
 
 
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_Button_PressedSignal(void * jarg1) {
-  void * jresult ;
-  Dali::Toolkit::Button *arg1 = (Dali::Toolkit::Button *) 0 ;
-  Dali::Toolkit::Button::ButtonSignalType *result = 0 ;
+SWIGEXPORT void SWIGSTDCALL CSharp_Dali_delete_PushButton(void * jarg1) {
+  Dali::Toolkit::PushButton *arg1 = (Dali::Toolkit::PushButton *) 0 ;
 
-  arg1 = (Dali::Toolkit::Button *)jarg1;
+  arg1 = (Dali::Toolkit::PushButton *)jarg1;
   {
     try {
-      result = (Dali::Toolkit::Button::ButtonSignalType *) &(arg1)->PressedSignal();
+      delete arg1;
     } catch (std::out_of_range& e) {
       {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
+        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
       };
     } catch (std::exception& e) {
       {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
+        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return ;
       };
     } catch (Dali::DaliException e) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return ;
       };
     } catch (...) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
+        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ;
       };
     }
   }
 
-  jresult = (void *)result;
-  return jresult;
 }
 
 
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_Button_ReleasedSignal(void * jarg1) {
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_PushButton_New() {
   void * jresult ;
-  Dali::Toolkit::Button *arg1 = (Dali::Toolkit::Button *) 0 ;
-  Dali::Toolkit::Button::ButtonSignalType *result = 0 ;
+  Dali::Toolkit::PushButton result;
 
-  arg1 = (Dali::Toolkit::Button *)jarg1;
   {
     try {
-      result = (Dali::Toolkit::Button::ButtonSignalType *) &(arg1)->ReleasedSignal();
+      result = Dali::Toolkit::PushButton::New();
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -70474,20 +69783,26 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_Button_ReleasedSignal(void * jarg1) {
     }
   }
 
-  jresult = (void *)result;
+  jresult = new Dali::Toolkit::PushButton((const Dali::Toolkit::PushButton &)result);
   return jresult;
 }
 
 
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_Button_ClickedSignal(void * jarg1) {
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_PushButton_DownCast(void * jarg1) {
   void * jresult ;
-  Dali::Toolkit::Button *arg1 = (Dali::Toolkit::Button *) 0 ;
-  Dali::Toolkit::Button::ButtonSignalType *result = 0 ;
+  Dali::BaseHandle arg1 ;
+  Dali::BaseHandle *argp1 ;
+  Dali::Toolkit::PushButton result;
 
-  arg1 = (Dali::Toolkit::Button *)jarg1;
+  argp1 = (Dali::BaseHandle *)jarg1;
+  if (!argp1) {
+    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null Dali::BaseHandle", 0);
+    return 0;
+  }
+  arg1 = *argp1;
   {
     try {
-      result = (Dali::Toolkit::Button::ButtonSignalType *) &(arg1)->ClickedSignal();
+      result = Dali::Toolkit::PushButton::DownCast(arg1);
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -70507,20 +69822,17 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_Button_ClickedSignal(void * jarg1) {
     }
   }
 
-  jresult = (void *)result;
+  jresult = new Dali::Toolkit::PushButton((const Dali::Toolkit::PushButton &)result);
   return jresult;
 }
 
-
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_Button_StateChangedSignal(void * jarg1) {
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_RadioButton__SWIG_0() {
   void * jresult ;
-  Dali::Toolkit::Button *arg1 = (Dali::Toolkit::Button *) 0 ;
-  Dali::Toolkit::Button::ButtonSignalType *result = 0 ;
+  Dali::Toolkit::RadioButton *result = 0 ;
 
-  arg1 = (Dali::Toolkit::Button *)jarg1;
   {
     try {
-      result = (Dali::Toolkit::Button::ButtonSignalType *) &(arg1)->StateChangedSignal();
+      result = (Dali::Toolkit::RadioButton *)new Dali::Toolkit::RadioButton();
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -70545,13 +69857,19 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_Button_StateChangedSignal(void * jarg1
 }
 
 
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_CheckBoxButton__SWIG_0() {
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_RadioButton__SWIG_1(void * jarg1) {
   void * jresult ;
-  Dali::Toolkit::CheckBoxButton *result = 0 ;
+  Dali::Toolkit::RadioButton *arg1 = 0 ;
+  Dali::Toolkit::RadioButton *result = 0 ;
 
+  arg1 = (Dali::Toolkit::RadioButton *)jarg1;
+  if (!arg1) {
+    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::Toolkit::RadioButton const & type is null", 0);
+    return 0;
+  }
   {
     try {
-      result = (Dali::Toolkit::CheckBoxButton *)new Dali::Toolkit::CheckBoxButton();
+      result = (Dali::Toolkit::RadioButton *)new Dali::Toolkit::RadioButton((Dali::Toolkit::RadioButton const &)*arg1);
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -70576,19 +69894,21 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_CheckBoxButton__SWIG_0() {
 }
 
 
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_CheckBoxButton__SWIG_1(void * jarg1) {
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_RadioButton_Assign(void * jarg1, void * jarg2) {
   void * jresult ;
-  Dali::Toolkit::CheckBoxButton *arg1 = 0 ;
-  Dali::Toolkit::CheckBoxButton *result = 0 ;
+  Dali::Toolkit::RadioButton *arg1 = (Dali::Toolkit::RadioButton *) 0 ;
+  Dali::Toolkit::RadioButton *arg2 = 0 ;
+  Dali::Toolkit::RadioButton *result = 0 ;
 
-  arg1 = (Dali::Toolkit::CheckBoxButton *)jarg1;
-  if (!arg1) {
-    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::Toolkit::CheckBoxButton const & type is null", 0);
+  arg1 = (Dali::Toolkit::RadioButton *)jarg1;
+  arg2 = (Dali::Toolkit::RadioButton *)jarg2;
+  if (!arg2) {
+    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::Toolkit::RadioButton const & type is null", 0);
     return 0;
   }
   {
     try {
-      result = (Dali::Toolkit::CheckBoxButton *)new Dali::Toolkit::CheckBoxButton((Dali::Toolkit::CheckBoxButton const &)*arg1);
+      result = (Dali::Toolkit::RadioButton *) &(arg1)->operator =((Dali::Toolkit::RadioButton const &)*arg2);
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -70613,81 +69933,80 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_CheckBoxButton__SWIG_1(void * jarg
 }
 
 
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_CheckBoxButton_Assign(void * jarg1, void * jarg2) {
-  void * jresult ;
-  Dali::Toolkit::CheckBoxButton *arg1 = (Dali::Toolkit::CheckBoxButton *) 0 ;
-  Dali::Toolkit::CheckBoxButton *arg2 = 0 ;
-  Dali::Toolkit::CheckBoxButton *result = 0 ;
+SWIGEXPORT void SWIGSTDCALL CSharp_Dali_delete_RadioButton(void * jarg1) {
+  Dali::Toolkit::RadioButton *arg1 = (Dali::Toolkit::RadioButton *) 0 ;
 
-  arg1 = (Dali::Toolkit::CheckBoxButton *)jarg1;
-  arg2 = (Dali::Toolkit::CheckBoxButton *)jarg2;
-  if (!arg2) {
-    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::Toolkit::CheckBoxButton const & type is null", 0);
-    return 0;
-  }
+  arg1 = (Dali::Toolkit::RadioButton *)jarg1;
   {
     try {
-      result = (Dali::Toolkit::CheckBoxButton *) &(arg1)->operator =((Dali::Toolkit::CheckBoxButton const &)*arg2);
+      delete arg1;
     } catch (std::out_of_range& e) {
       {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
+        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
       };
     } catch (std::exception& e) {
       {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
+        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return ;
       };
     } catch (Dali::DaliException e) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return ;
       };
     } catch (...) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
+        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ;
       };
     }
   }
 
-  jresult = (void *)result;
-  return jresult;
 }
 
 
-SWIGEXPORT void SWIGSTDCALL CSharp_Dali_delete_CheckBoxButton(void * jarg1) {
-  Dali::Toolkit::CheckBoxButton *arg1 = (Dali::Toolkit::CheckBoxButton *) 0 ;
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_RadioButton_New__SWIG_0() {
+  void * jresult ;
+  Dali::Toolkit::RadioButton result;
 
-  arg1 = (Dali::Toolkit::CheckBoxButton *)jarg1;
   {
     try {
-      delete arg1;
+      result = Dali::Toolkit::RadioButton::New();
     } catch (std::out_of_range& e) {
       {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
+        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
       };
     } catch (std::exception& e) {
       {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return ;
+        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
       };
     } catch (Dali::DaliException e) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return ;
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
       };
     } catch (...) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ;
+        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
       };
     }
   }
 
+  jresult = new Dali::Toolkit::RadioButton((const Dali::Toolkit::RadioButton &)result);
+  return jresult;
 }
 
 
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_CheckBoxButton_New() {
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_RadioButton_New__SWIG_1(char * jarg1) {
   void * jresult ;
-  Dali::Toolkit::CheckBoxButton result;
+  std::string *arg1 = 0 ;
+  Dali::Toolkit::RadioButton result;
 
+  if (!jarg1) {
+    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "null string", 0);
+    return 0;
+  }
+  std::string arg1_str(jarg1);
+  arg1 = &arg1_str;
   {
     try {
-      result = Dali::Toolkit::CheckBoxButton::New();
+      result = Dali::Toolkit::RadioButton::New((std::string const &)*arg1);
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -70707,16 +70026,19 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_CheckBoxButton_New() {
     }
   }
 
-  jresult = new Dali::Toolkit::CheckBoxButton((const Dali::Toolkit::CheckBoxButton &)result);
+  jresult = new Dali::Toolkit::RadioButton((const Dali::Toolkit::RadioButton &)result);
+
+  //argout typemap for const std::string&
+
   return jresult;
 }
 
 
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_CheckBoxButton_DownCast(void * jarg1) {
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_RadioButton_DownCast(void * jarg1) {
   void * jresult ;
   Dali::BaseHandle arg1 ;
   Dali::BaseHandle *argp1 ;
-  Dali::Toolkit::CheckBoxButton result;
+  Dali::Toolkit::RadioButton result;
 
   argp1 = (Dali::BaseHandle *)jarg1;
   if (!argp1) {
@@ -70726,7 +70048,7 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_CheckBoxButton_DownCast(void * jarg1)
   arg1 = *argp1;
   {
     try {
-      result = Dali::Toolkit::CheckBoxButton::DownCast(arg1);
+      result = Dali::Toolkit::RadioButton::DownCast(arg1);
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -70746,68 +70068,78 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_CheckBoxButton_DownCast(void * jarg1)
     }
   }
 
-  jresult = new Dali::Toolkit::CheckBoxButton((const Dali::Toolkit::CheckBoxButton &)result);
+  jresult = new Dali::Toolkit::RadioButton((const Dali::Toolkit::RadioButton &)result);
   return jresult;
 }
 
 
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_PushButton_Property_UNSELECTED_ICON_get() {
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_FlexContainer_Property_CONTENT_DIRECTION_get() {
   int jresult ;
   int result;
 
-  result = (int)Dali::Toolkit::PushButton::Property::UNSELECTED_ICON;
+  result = (int)Dali::Toolkit::FlexContainer::Property::CONTENT_DIRECTION;
   jresult = (int)result;
   return jresult;
 }
 
 
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_PushButton_Property_SELECTED_ICON_get() {
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_FlexContainer_Property_FLEX_DIRECTION_get() {
   int jresult ;
   int result;
 
-  result = (int)Dali::Toolkit::PushButton::Property::SELECTED_ICON;
+  result = (int)Dali::Toolkit::FlexContainer::Property::FLEX_DIRECTION;
   jresult = (int)result;
   return jresult;
 }
 
 
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_PushButton_Property_ICON_ALIGNMENT_get() {
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_FlexContainer_Property_FLEX_WRAP_get() {
   int jresult ;
   int result;
 
-  result = (int)Dali::Toolkit::PushButton::Property::ICON_ALIGNMENT;
+  result = (int)Dali::Toolkit::FlexContainer::Property::FLEX_WRAP;
   jresult = (int)result;
   return jresult;
 }
 
 
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_PushButton_Property_LABEL_PADDING_get() {
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_FlexContainer_Property_JUSTIFY_CONTENT_get() {
   int jresult ;
   int result;
 
-  result = (int)Dali::Toolkit::PushButton::Property::LABEL_PADDING;
+  result = (int)Dali::Toolkit::FlexContainer::Property::JUSTIFY_CONTENT;
   jresult = (int)result;
   return jresult;
 }
 
 
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_PushButton_Property_ICON_PADDING_get() {
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_FlexContainer_Property_ALIGN_ITEMS_get() {
   int jresult ;
   int result;
 
-  result = (int)Dali::Toolkit::PushButton::Property::ICON_PADDING;
+  result = (int)Dali::Toolkit::FlexContainer::Property::ALIGN_ITEMS;
   jresult = (int)result;
   return jresult;
 }
 
 
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_PushButton_Property() {
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_FlexContainer_Property_ALIGN_CONTENT_get() {
+  int jresult ;
+  int result;
+
+  result = (int)Dali::Toolkit::FlexContainer::Property::ALIGN_CONTENT;
+  jresult = (int)result;
+  return jresult;
+}
+
+
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_FlexContainer_Property() {
   void * jresult ;
-  Dali::Toolkit::PushButton::Property *result = 0 ;
+  Dali::Toolkit::FlexContainer::Property *result = 0 ;
 
   {
     try {
-      result = (Dali::Toolkit::PushButton::Property *)new Dali::Toolkit::PushButton::Property();
+      result = (Dali::Toolkit::FlexContainer::Property *)new Dali::Toolkit::FlexContainer::Property();
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -70832,10 +70164,10 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_PushButton_Property() {
 }
 
 
-SWIGEXPORT void SWIGSTDCALL CSharp_Dali_delete_PushButton_Property(void * jarg1) {
-  Dali::Toolkit::PushButton::Property *arg1 = (Dali::Toolkit::PushButton::Property *) 0 ;
+SWIGEXPORT void SWIGSTDCALL CSharp_Dali_delete_FlexContainer_Property(void * jarg1) {
+  Dali::Toolkit::FlexContainer::Property *arg1 = (Dali::Toolkit::FlexContainer::Property *) 0 ;
 
-  arg1 = (Dali::Toolkit::PushButton::Property *)jarg1;
+  arg1 = (Dali::Toolkit::FlexContainer::Property *)jarg1;
   {
     try {
       delete arg1;
@@ -70861,89 +70193,43 @@ SWIGEXPORT void SWIGSTDCALL CSharp_Dali_delete_PushButton_Property(void * jarg1)
 }
 
 
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_PushButton__SWIG_0() {
-  void * jresult ;
-  Dali::Toolkit::PushButton *result = 0 ;
-
-  {
-    try {
-      result = (Dali::Toolkit::PushButton *)new Dali::Toolkit::PushButton();
-    } catch (std::out_of_range& e) {
-      {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
-      };
-    } catch (std::exception& e) {
-      {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
-      };
-    } catch (Dali::DaliException e) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
-      };
-    } catch (...) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
-      };
-    }
-  }
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_FlexContainer_ChildProperty_FLEX_get() {
+  int jresult ;
+  int result;
 
-  jresult = (void *)result;
+  result = (int)Dali::Toolkit::FlexContainer::ChildProperty::FLEX;
+  jresult = (int)result;
   return jresult;
 }
 
 
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_PushButton__SWIG_1(void * jarg1) {
-  void * jresult ;
-  Dali::Toolkit::PushButton *arg1 = 0 ;
-  Dali::Toolkit::PushButton *result = 0 ;
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_FlexContainer_ChildProperty_ALIGN_SELF_get() {
+  int jresult ;
+  int result;
 
-  arg1 = (Dali::Toolkit::PushButton *)jarg1;
-  if (!arg1) {
-    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::Toolkit::PushButton const & type is null", 0);
-    return 0;
-  }
-  {
-    try {
-      result = (Dali::Toolkit::PushButton *)new Dali::Toolkit::PushButton((Dali::Toolkit::PushButton const &)*arg1);
-    } catch (std::out_of_range& e) {
-      {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
-      };
-    } catch (std::exception& e) {
-      {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
-      };
-    } catch (Dali::DaliException e) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
-      };
-    } catch (...) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
-      };
-    }
-  }
+  result = (int)Dali::Toolkit::FlexContainer::ChildProperty::ALIGN_SELF;
+  jresult = (int)result;
+  return jresult;
+}
 
-  jresult = (void *)result;
+
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_FlexContainer_ChildProperty_FLEX_MARGIN_get() {
+  int jresult ;
+  int result;
+
+  result = (int)Dali::Toolkit::FlexContainer::ChildProperty::FLEX_MARGIN;
+  jresult = (int)result;
   return jresult;
 }
 
 
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_PushButton_Assign(void * jarg1, void * jarg2) {
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_FlexContainer_ChildProperty() {
   void * jresult ;
-  Dali::Toolkit::PushButton *arg1 = (Dali::Toolkit::PushButton *) 0 ;
-  Dali::Toolkit::PushButton *arg2 = 0 ;
-  Dali::Toolkit::PushButton *result = 0 ;
+  Dali::Toolkit::FlexContainer::ChildProperty *result = 0 ;
 
-  arg1 = (Dali::Toolkit::PushButton *)jarg1;
-  arg2 = (Dali::Toolkit::PushButton *)jarg2;
-  if (!arg2) {
-    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::Toolkit::PushButton const & type is null", 0);
-    return 0;
-  }
   {
     try {
-      result = (Dali::Toolkit::PushButton *) &(arg1)->operator =((Dali::Toolkit::PushButton const &)*arg2);
+      result = (Dali::Toolkit::FlexContainer::ChildProperty *)new Dali::Toolkit::FlexContainer::ChildProperty();
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -70968,10 +70254,10 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_PushButton_Assign(void * jarg1, void *
 }
 
 
-SWIGEXPORT void SWIGSTDCALL CSharp_Dali_delete_PushButton(void * jarg1) {
-  Dali::Toolkit::PushButton *arg1 = (Dali::Toolkit::PushButton *) 0 ;
+SWIGEXPORT void SWIGSTDCALL CSharp_Dali_delete_FlexContainer_ChildProperty(void * jarg1) {
+  Dali::Toolkit::FlexContainer::ChildProperty *arg1 = (Dali::Toolkit::FlexContainer::ChildProperty *) 0 ;
 
-  arg1 = (Dali::Toolkit::PushButton *)jarg1;
+  arg1 = (Dali::Toolkit::FlexContainer::ChildProperty *)jarg1;
   {
     try {
       delete arg1;
@@ -70997,13 +70283,13 @@ SWIGEXPORT void SWIGSTDCALL CSharp_Dali_delete_PushButton(void * jarg1) {
 }
 
 
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_PushButton_New() {
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_FlexContainer__SWIG_0() {
   void * jresult ;
-  Dali::Toolkit::PushButton result;
+  Dali::Toolkit::FlexContainer *result = 0 ;
 
   {
     try {
-      result = Dali::Toolkit::PushButton::New();
+      result = (Dali::Toolkit::FlexContainer *)new Dali::Toolkit::FlexContainer();
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -71023,26 +70309,24 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_PushButton_New() {
     }
   }
 
-  jresult = new Dali::Toolkit::PushButton((const Dali::Toolkit::PushButton &)result);
+  jresult = (void *)result;
   return jresult;
 }
 
 
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_PushButton_DownCast(void * jarg1) {
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_FlexContainer__SWIG_1(void * jarg1) {
   void * jresult ;
-  Dali::BaseHandle arg1 ;
-  Dali::BaseHandle *argp1 ;
-  Dali::Toolkit::PushButton result;
+  Dali::Toolkit::FlexContainer *arg1 = 0 ;
+  Dali::Toolkit::FlexContainer *result = 0 ;
 
-  argp1 = (Dali::BaseHandle *)jarg1;
-  if (!argp1) {
-    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null Dali::BaseHandle", 0);
+  arg1 = (Dali::Toolkit::FlexContainer *)jarg1;
+  if (!arg1) {
+    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::Toolkit::FlexContainer const & type is null", 0);
     return 0;
   }
-  arg1 = *argp1;
   {
     try {
-      result = Dali::Toolkit::PushButton::DownCast(arg1);
+      result = (Dali::Toolkit::FlexContainer *)new Dali::Toolkit::FlexContainer((Dali::Toolkit::FlexContainer const &)*arg1);
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -71062,63 +70346,57 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_PushButton_DownCast(void * jarg1) {
     }
   }
 
-  jresult = new Dali::Toolkit::PushButton((const Dali::Toolkit::PushButton &)result);
+  jresult = (void *)result;
   return jresult;
 }
 
 
-SWIGEXPORT void SWIGSTDCALL CSharp_Dali_PushButton_SetButtonImage__SWIG_0_0(void * jarg1, void * jarg2) {
-  Dali::Toolkit::PushButton *arg1 = (Dali::Toolkit::PushButton *) 0 ;
-  Dali::Image arg2 ;
-  Dali::Image *argp2 ;
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_FlexContainer_Assign(void * jarg1, void * jarg2) {
+  void * jresult ;
+  Dali::Toolkit::FlexContainer *arg1 = (Dali::Toolkit::FlexContainer *) 0 ;
+  Dali::Toolkit::FlexContainer *arg2 = 0 ;
+  Dali::Toolkit::FlexContainer *result = 0 ;
 
-  arg1 = (Dali::Toolkit::PushButton *)jarg1;
-  argp2 = (Dali::Image *)jarg2;
-  if (!argp2) {
-    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null Dali::Image", 0);
-    return ;
+  arg1 = (Dali::Toolkit::FlexContainer *)jarg1;
+  arg2 = (Dali::Toolkit::FlexContainer *)jarg2;
+  if (!arg2) {
+    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::Toolkit::FlexContainer const & type is null", 0);
+    return 0;
   }
-  arg2 = *argp2;
   {
     try {
-      (arg1)->SetButtonImage(arg2);
+      result = (Dali::Toolkit::FlexContainer *) &(arg1)->operator =((Dali::Toolkit::FlexContainer const &)*arg2);
     } catch (std::out_of_range& e) {
       {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
+        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
       };
     } catch (std::exception& e) {
       {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return ;
+        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
       };
     } catch (Dali::DaliException e) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return ;
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
       };
     } catch (...) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ;
+        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
       };
     }
   }
 
+  jresult = (void *)result;
+  return jresult;
 }
 
 
-SWIGEXPORT void SWIGSTDCALL CSharp_Dali_PushButton_SetButtonImage__SWIG_1(void * jarg1, void * jarg2) {
-  Dali::Toolkit::PushButton *arg1 = (Dali::Toolkit::PushButton *) 0 ;
-  Dali::Actor arg2 ;
-  Dali::Actor *argp2 ;
+SWIGEXPORT void SWIGSTDCALL CSharp_Dali_delete_FlexContainer(void * jarg1) {
+  Dali::Toolkit::FlexContainer *arg1 = (Dali::Toolkit::FlexContainer *) 0 ;
 
-  arg1 = (Dali::Toolkit::PushButton *)jarg1;
-  argp2 = (Dali::Actor *)jarg2;
-  if (!argp2) {
-    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null Dali::Actor", 0);
-    return ;
-  }
-  arg2 = *argp2;
+  arg1 = (Dali::Toolkit::FlexContainer *)jarg1;
   {
     try {
-      (arg1)->SetButtonImage(arg2);
+      delete arg1;
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
@@ -71141,169 +70419,143 @@ SWIGEXPORT void SWIGSTDCALL CSharp_Dali_PushButton_SetButtonImage__SWIG_1(void *
 }
 
 
-SWIGEXPORT void SWIGSTDCALL CSharp_Dali_PushButton_SetBackgroundImage(void * jarg1, void * jarg2) {
-  Dali::Toolkit::PushButton *arg1 = (Dali::Toolkit::PushButton *) 0 ;
-  Dali::Actor arg2 ;
-  Dali::Actor *argp2 ;
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_FlexContainer_New() {
+  void * jresult ;
+  Dali::Toolkit::FlexContainer result;
 
-  arg1 = (Dali::Toolkit::PushButton *)jarg1;
-  argp2 = (Dali::Actor *)jarg2;
-  if (!argp2) {
-    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null Dali::Actor", 0);
-    return ;
-  }
-  arg2 = *argp2;
   {
     try {
-      (arg1)->SetBackgroundImage(arg2);
+      result = Dali::Toolkit::FlexContainer::New();
     } catch (std::out_of_range& e) {
       {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
+        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
       };
     } catch (std::exception& e) {
       {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return ;
+        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
       };
     } catch (Dali::DaliException e) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return ;
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
       };
     } catch (...) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ;
+        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
       };
     }
   }
 
+  jresult = new Dali::Toolkit::FlexContainer((const Dali::Toolkit::FlexContainer &)result);
+  return jresult;
 }
 
 
-SWIGEXPORT void SWIGSTDCALL CSharp_Dali_PushButton_SetSelectedImage__SWIG_0_0(void * jarg1, void * jarg2) {
-  Dali::Toolkit::PushButton *arg1 = (Dali::Toolkit::PushButton *) 0 ;
-  Dali::Image arg2 ;
-  Dali::Image *argp2 ;
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_FlexContainer_DownCast(void * jarg1) {
+  void * jresult ;
+  Dali::BaseHandle arg1 ;
+  Dali::BaseHandle *argp1 ;
+  Dali::Toolkit::FlexContainer result;
 
-  arg1 = (Dali::Toolkit::PushButton *)jarg1;
-  argp2 = (Dali::Image *)jarg2;
-  if (!argp2) {
-    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null Dali::Image", 0);
-    return ;
+  argp1 = (Dali::BaseHandle *)jarg1;
+  if (!argp1) {
+    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null Dali::BaseHandle", 0);
+    return 0;
   }
-  arg2 = *argp2;
+  arg1 = *argp1;
   {
     try {
-      (arg1)->SetSelectedImage(arg2);
+      result = Dali::Toolkit::FlexContainer::DownCast(arg1);
     } catch (std::out_of_range& e) {
       {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
+        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
       };
     } catch (std::exception& e) {
       {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return ;
+        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
       };
     } catch (Dali::DaliException e) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return ;
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
       };
     } catch (...) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ;
+        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
       };
     }
   }
 
+  jresult = new Dali::Toolkit::FlexContainer((const Dali::Toolkit::FlexContainer &)result);
+  return jresult;
 }
 
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_ImageView_Property_IMAGE_get() {
+  int jresult ;
+  int result;
 
-SWIGEXPORT void SWIGSTDCALL CSharp_Dali_PushButton_SetSelectedImage__SWIG_1(void * jarg1, void * jarg2) {
-  Dali::Toolkit::PushButton *arg1 = (Dali::Toolkit::PushButton *) 0 ;
-  Dali::Actor arg2 ;
-  Dali::Actor *argp2 ;
+  result = (int)Dali::Toolkit::ImageView::Property::IMAGE;
+  jresult = (int)result;
+  return jresult;
+}
 
-  arg1 = (Dali::Toolkit::PushButton *)jarg1;
-  argp2 = (Dali::Actor *)jarg2;
-  if (!argp2) {
-    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null Dali::Actor", 0);
-    return ;
-  }
-  arg2 = *argp2;
-  {
-    try {
-      (arg1)->SetSelectedImage(arg2);
-    } catch (std::out_of_range& e) {
-      {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
-      };
-    } catch (std::exception& e) {
-      {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return ;
-      };
-    } catch (Dali::DaliException e) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return ;
-      };
-    } catch (...) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ;
-      };
-    }
-  }
 
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_ImageView_Property_PRE_MULTIPLIED_ALPHA_get() {
+  int jresult ;
+  int result;
+
+  result = (int)Dali::Toolkit::ImageView::Property::PRE_MULTIPLIED_ALPHA;
+  jresult = (int)result;
+  return jresult;
 }
 
 
-SWIGEXPORT void SWIGSTDCALL CSharp_Dali_PushButton_SetSelectedBackgroundImage(void * jarg1, void * jarg2) {
-  Dali::Toolkit::PushButton *arg1 = (Dali::Toolkit::PushButton *) 0 ;
-  Dali::Actor arg2 ;
-  Dali::Actor *argp2 ;
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_ImageView_Property_PIXEL_AREA_get() {
+  int jresult ;
+  int result;
+
+  result = (int)Dali::Toolkit::ImageView::Property::PIXEL_AREA;
+  jresult = (int)result;
+  return jresult;
+}
+
+
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_ImageView_Property() {
+  void * jresult ;
+  Dali::Toolkit::ImageView::Property *result = 0 ;
 
-  arg1 = (Dali::Toolkit::PushButton *)jarg1;
-  argp2 = (Dali::Actor *)jarg2;
-  if (!argp2) {
-    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null Dali::Actor", 0);
-    return ;
-  }
-  arg2 = *argp2;
   {
     try {
-      (arg1)->SetSelectedBackgroundImage(arg2);
+      result = (Dali::Toolkit::ImageView::Property *)new Dali::Toolkit::ImageView::Property();
     } catch (std::out_of_range& e) {
       {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
+        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
       };
     } catch (std::exception& e) {
       {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return ;
+        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
       };
     } catch (Dali::DaliException e) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return ;
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
       };
     } catch (...) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ;
+        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
       };
     }
   }
 
+  jresult = (void *)result;
+  return jresult;
 }
 
 
-SWIGEXPORT void SWIGSTDCALL CSharp_Dali_PushButton_SetDisabledBackgroundImage(void * jarg1, void * jarg2) {
-  Dali::Toolkit::PushButton *arg1 = (Dali::Toolkit::PushButton *) 0 ;
-  Dali::Actor arg2 ;
-  Dali::Actor *argp2 ;
+SWIGEXPORT void SWIGSTDCALL CSharp_Dali_delete_ImageView_Property(void * jarg1) {
+  Dali::Toolkit::ImageView::Property *arg1 = (Dali::Toolkit::ImageView::Property *) 0 ;
 
-  arg1 = (Dali::Toolkit::PushButton *)jarg1;
-  argp2 = (Dali::Actor *)jarg2;
-  if (!argp2) {
-    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null Dali::Actor", 0);
-    return ;
-  }
-  arg2 = *argp2;
+  arg1 = (Dali::Toolkit::ImageView::Property *)jarg1;
   {
     try {
-      (arg1)->SetDisabledBackgroundImage(arg2);
+      delete arg1;
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
@@ -71326,87 +70578,83 @@ SWIGEXPORT void SWIGSTDCALL CSharp_Dali_PushButton_SetDisabledBackgroundImage(vo
 }
 
 
-SWIGEXPORT void SWIGSTDCALL CSharp_Dali_PushButton_SetDisabledImage(void * jarg1, void * jarg2) {
-  Dali::Toolkit::PushButton *arg1 = (Dali::Toolkit::PushButton *) 0 ;
-  Dali::Actor arg2 ;
-  Dali::Actor *argp2 ;
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_ImageView__SWIG_0() {
+  void * jresult ;
+  Dali::Toolkit::ImageView *result = 0 ;
 
-  arg1 = (Dali::Toolkit::PushButton *)jarg1;
-  argp2 = (Dali::Actor *)jarg2;
-  if (!argp2) {
-    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null Dali::Actor", 0);
-    return ;
-  }
-  arg2 = *argp2;
   {
     try {
-      (arg1)->SetDisabledImage(arg2);
+      result = (Dali::Toolkit::ImageView *)new Dali::Toolkit::ImageView();
     } catch (std::out_of_range& e) {
       {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
+        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
       };
     } catch (std::exception& e) {
       {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return ;
+        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
       };
     } catch (Dali::DaliException e) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return ;
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
       };
     } catch (...) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ;
+        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
       };
     }
   }
 
+  jresult = (void *)result;
+  return jresult;
 }
 
 
-SWIGEXPORT void SWIGSTDCALL CSharp_Dali_PushButton_SetDisabledSelectedImage(void * jarg1, void * jarg2) {
-  Dali::Toolkit::PushButton *arg1 = (Dali::Toolkit::PushButton *) 0 ;
-  Dali::Actor arg2 ;
-  Dali::Actor *argp2 ;
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_ImageView_New__SWIG_0() {
+  void * jresult ;
+  Dali::Toolkit::ImageView result;
 
-  arg1 = (Dali::Toolkit::PushButton *)jarg1;
-  argp2 = (Dali::Actor *)jarg2;
-  if (!argp2) {
-    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null Dali::Actor", 0);
-    return ;
-  }
-  arg2 = *argp2;
   {
     try {
-      (arg1)->SetDisabledSelectedImage(arg2);
+      result = Dali::Toolkit::ImageView::New();
     } catch (std::out_of_range& e) {
       {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
+        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
       };
     } catch (std::exception& e) {
       {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return ;
+        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
       };
     } catch (Dali::DaliException e) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return ;
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
       };
     } catch (...) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ;
+        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
       };
     }
   }
 
+  jresult = new Dali::Toolkit::ImageView((const Dali::Toolkit::ImageView &)result);
+  return jresult;
 }
 
 
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_RadioButton__SWIG_0() {
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_ImageView_New__SWIG_1(void * jarg1) {
   void * jresult ;
-  Dali::Toolkit::RadioButton *result = 0 ;
+  Dali::Image arg1 ;
+  Dali::Image *argp1 ;
+  Dali::Toolkit::ImageView result;
 
+  argp1 = (Dali::Image *)jarg1;
+  if (!argp1) {
+    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null Dali::Image", 0);
+    return 0;
+  }
+  arg1 = *argp1;
   {
     try {
-      result = (Dali::Toolkit::RadioButton *)new Dali::Toolkit::RadioButton();
+      result = Dali::Toolkit::ImageView::New(arg1);
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -71426,24 +70674,25 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_RadioButton__SWIG_0() {
     }
   }
 
-  jresult = (void *)result;
+  jresult = new Dali::Toolkit::ImageView((const Dali::Toolkit::ImageView &)result);
   return jresult;
 }
 
 
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_RadioButton__SWIG_1(void * jarg1) {
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_ImageView_New__SWIG_2(char * jarg1) {
   void * jresult ;
-  Dali::Toolkit::RadioButton *arg1 = 0 ;
-  Dali::Toolkit::RadioButton *result = 0 ;
+  std::string *arg1 = 0 ;
+  Dali::Toolkit::ImageView result;
 
-  arg1 = (Dali::Toolkit::RadioButton *)jarg1;
-  if (!arg1) {
-    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::Toolkit::RadioButton const & type is null", 0);
+  if (!jarg1) {
+    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "null string", 0);
     return 0;
   }
+  std::string arg1_str(jarg1);
+  arg1 = &arg1_str;
   {
     try {
-      result = (Dali::Toolkit::RadioButton *)new Dali::Toolkit::RadioButton((Dali::Toolkit::RadioButton const &)*arg1);
+      result = Dali::Toolkit::ImageView::New((std::string const &)*arg1);
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -71463,26 +70712,36 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_RadioButton__SWIG_1(void * jarg1)
     }
   }
 
-  jresult = (void *)result;
+  jresult = new Dali::Toolkit::ImageView((const Dali::Toolkit::ImageView &)result);
+
+  //argout typemap for const std::string&
+
   return jresult;
 }
 
 
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_RadioButton_Assign(void * jarg1, void * jarg2) {
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_ImageView_New__SWIG_3(char * jarg1, void * jarg2) {
   void * jresult ;
-  Dali::Toolkit::RadioButton *arg1 = (Dali::Toolkit::RadioButton *) 0 ;
-  Dali::Toolkit::RadioButton *arg2 = 0 ;
-  Dali::Toolkit::RadioButton *result = 0 ;
+  std::string *arg1 = 0 ;
+  Dali::ImageDimensions arg2 ;
+  Dali::ImageDimensions *argp2 ;
+  Dali::Toolkit::ImageView result;
 
-  arg1 = (Dali::Toolkit::RadioButton *)jarg1;
-  arg2 = (Dali::Toolkit::RadioButton *)jarg2;
-  if (!arg2) {
-    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::Toolkit::RadioButton const & type is null", 0);
+  if (!jarg1) {
+    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "null string", 0);
+    return 0;
+  }
+  std::string arg1_str(jarg1);
+  arg1 = &arg1_str;
+  argp2 = (Dali::ImageDimensions *)jarg2;
+  if (!argp2) {
+    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null Dali::ImageDimensions", 0);
     return 0;
   }
+  arg2 = *argp2;
   {
     try {
-      result = (Dali::Toolkit::RadioButton *) &(arg1)->operator =((Dali::Toolkit::RadioButton const &)*arg2);
+      result = Dali::Toolkit::ImageView::New((std::string const &)*arg1,arg2);
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -71502,15 +70761,18 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_RadioButton_Assign(void * jarg1, void
     }
   }
 
-  jresult = (void *)result;
+  jresult = new Dali::Toolkit::ImageView((const Dali::Toolkit::ImageView &)result);
+
+  //argout typemap for const std::string&
+
   return jresult;
 }
 
 
-SWIGEXPORT void SWIGSTDCALL CSharp_Dali_delete_RadioButton(void * jarg1) {
-  Dali::Toolkit::RadioButton *arg1 = (Dali::Toolkit::RadioButton *) 0 ;
+SWIGEXPORT void SWIGSTDCALL CSharp_Dali_delete_ImageView(void * jarg1) {
+  Dali::Toolkit::ImageView *arg1 = (Dali::Toolkit::ImageView *) 0 ;
 
-  arg1 = (Dali::Toolkit::RadioButton *)jarg1;
+  arg1 = (Dali::Toolkit::ImageView *)jarg1;
   {
     try {
       delete arg1;
@@ -71536,13 +70798,19 @@ SWIGEXPORT void SWIGSTDCALL CSharp_Dali_delete_RadioButton(void * jarg1) {
 }
 
 
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_RadioButton_New__SWIG_0() {
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_ImageView__SWIG_1(void * jarg1) {
   void * jresult ;
-  Dali::Toolkit::RadioButton result;
+  Dali::Toolkit::ImageView *arg1 = 0 ;
+  Dali::Toolkit::ImageView *result = 0 ;
 
+  arg1 = (Dali::Toolkit::ImageView *)jarg1;
+  if (!arg1) {
+    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::Toolkit::ImageView const & type is null", 0);
+    return 0;
+  }
   {
     try {
-      result = Dali::Toolkit::RadioButton::New();
+      result = (Dali::Toolkit::ImageView *)new Dali::Toolkit::ImageView((Dali::Toolkit::ImageView const &)*arg1);
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -71562,25 +70830,26 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_RadioButton_New__SWIG_0() {
     }
   }
 
-  jresult = new Dali::Toolkit::RadioButton((const Dali::Toolkit::RadioButton &)result);
+  jresult = (void *)result;
   return jresult;
 }
 
 
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_RadioButton_New__SWIG_1(char * jarg1) {
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_ImageView_Assign(void * jarg1, void * jarg2) {
   void * jresult ;
-  std::string *arg1 = 0 ;
-  Dali::Toolkit::RadioButton result;
+  Dali::Toolkit::ImageView *arg1 = (Dali::Toolkit::ImageView *) 0 ;
+  Dali::Toolkit::ImageView *arg2 = 0 ;
+  Dali::Toolkit::ImageView *result = 0 ;
 
-  if (!jarg1) {
-    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "null string", 0);
+  arg1 = (Dali::Toolkit::ImageView *)jarg1;
+  arg2 = (Dali::Toolkit::ImageView *)jarg2;
+  if (!arg2) {
+    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::Toolkit::ImageView const & type is null", 0);
     return 0;
   }
-  std::string arg1_str(jarg1);
-  arg1 = &arg1_str;
   {
     try {
-      result = Dali::Toolkit::RadioButton::New((std::string const &)*arg1);
+      result = (Dali::Toolkit::ImageView *) &(arg1)->operator =((Dali::Toolkit::ImageView const &)*arg2);
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -71600,19 +70869,16 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_RadioButton_New__SWIG_1(char * jarg1)
     }
   }
 
-  jresult = new Dali::Toolkit::RadioButton((const Dali::Toolkit::RadioButton &)result);
-
-  //argout typemap for const std::string&
-
+  jresult = (void *)result;
   return jresult;
 }
 
 
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_RadioButton_DownCast(void * jarg1) {
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_ImageView_DownCast(void * jarg1) {
   void * jresult ;
   Dali::BaseHandle arg1 ;
   Dali::BaseHandle *argp1 ;
-  Dali::Toolkit::RadioButton result;
+  Dali::Toolkit::ImageView result;
 
   argp1 = (Dali::BaseHandle *)jarg1;
   if (!argp1) {
@@ -71622,7 +70888,7 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_RadioButton_DownCast(void * jarg1) {
   arg1 = *argp1;
   {
     try {
-      result = Dali::Toolkit::RadioButton::DownCast(arg1);
+      result = Dali::Toolkit::ImageView::DownCast(arg1);
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -71642,168 +70908,253 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_RadioButton_DownCast(void * jarg1) {
     }
   }
 
-  jresult = new Dali::Toolkit::RadioButton((const Dali::Toolkit::RadioButton &)result);
+  jresult = new Dali::Toolkit::ImageView((const Dali::Toolkit::ImageView &)result);
   return jresult;
 }
 
 
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_FlexContainer_Property_CONTENT_DIRECTION_get() {
-  int jresult ;
-  int result;
+SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ImageView_SetImage__SWIG_0(void * jarg1, void * jarg2) {
+  Dali::Toolkit::ImageView *arg1 = (Dali::Toolkit::ImageView *) 0 ;
+  Dali::Image arg2 ;
+  Dali::Image *argp2 ;
 
-  result = (int)Dali::Toolkit::FlexContainer::Property::CONTENT_DIRECTION;
-  jresult = (int)result;
-  return jresult;
-}
-
-
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_FlexContainer_Property_FLEX_DIRECTION_get() {
-  int jresult ;
-  int result;
-
-  result = (int)Dali::Toolkit::FlexContainer::Property::FLEX_DIRECTION;
-  jresult = (int)result;
-  return jresult;
-}
-
-
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_FlexContainer_Property_FLEX_WRAP_get() {
-  int jresult ;
-  int result;
-
-  result = (int)Dali::Toolkit::FlexContainer::Property::FLEX_WRAP;
-  jresult = (int)result;
-  return jresult;
-}
-
-
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_FlexContainer_Property_JUSTIFY_CONTENT_get() {
-  int jresult ;
-  int result;
+  arg1 = (Dali::Toolkit::ImageView *)jarg1;
+  argp2 = (Dali::Image *)jarg2;
+  if (!argp2) {
+    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null Dali::Image", 0);
+    return ;
+  }
+  arg2 = *argp2;
+  {
+    try {
+      (arg1)->SetImage(arg2);
+    } catch (std::out_of_range& e) {
+      {
+        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
+      };
+    } catch (std::exception& e) {
+      {
+        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return ;
+      };
+    } catch (Dali::DaliException e) {
+      {
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return ;
+      };
+    } catch (...) {
+      {
+        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ;
+      };
+    }
+  }
 
-  result = (int)Dali::Toolkit::FlexContainer::Property::JUSTIFY_CONTENT;
-  jresult = (int)result;
-  return jresult;
 }
 
 
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_FlexContainer_Property_ALIGN_ITEMS_get() {
-  int jresult ;
-  int result;
+SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ImageView_SetImage__SWIG_1(void * jarg1, char * jarg2) {
+  Dali::Toolkit::ImageView *arg1 = (Dali::Toolkit::ImageView *) 0 ;
+  std::string *arg2 = 0 ;
 
-  result = (int)Dali::Toolkit::FlexContainer::Property::ALIGN_ITEMS;
-  jresult = (int)result;
-  return jresult;
-}
+  arg1 = (Dali::Toolkit::ImageView *)jarg1;
+  if (!jarg2) {
+    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "null string", 0);
+    return ;
+  }
+  std::string arg2_str(jarg2);
+  arg2 = &arg2_str;
+  {
+    try {
+      (arg1)->SetImage((std::string const &)*arg2);
+    } catch (std::out_of_range& e) {
+      {
+        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
+      };
+    } catch (std::exception& e) {
+      {
+        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return ;
+      };
+    } catch (Dali::DaliException e) {
+      {
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return ;
+      };
+    } catch (...) {
+      {
+        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ;
+      };
+    }
+  }
 
 
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_FlexContainer_Property_ALIGN_CONTENT_get() {
-  int jresult ;
-  int result;
+  //argout typemap for const std::string&
 
-  result = (int)Dali::Toolkit::FlexContainer::Property::ALIGN_CONTENT;
-  jresult = (int)result;
-  return jresult;
 }
 
 
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_FlexContainer_Property() {
-  void * jresult ;
-  Dali::Toolkit::FlexContainer::Property *result = 0 ;
+SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ImageView_SetImage__SWIG_2(void * jarg1, char * jarg2, void * jarg3) {
+  Dali::Toolkit::ImageView *arg1 = (Dali::Toolkit::ImageView *) 0 ;
+  std::string *arg2 = 0 ;
+  Dali::ImageDimensions arg3 ;
+  Dali::ImageDimensions *argp3 ;
 
+  arg1 = (Dali::Toolkit::ImageView *)jarg1;
+  if (!jarg2) {
+    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "null string", 0);
+    return ;
+  }
+  std::string arg2_str(jarg2);
+  arg2 = &arg2_str;
+  argp3 = (Dali::ImageDimensions *)jarg3;
+  if (!argp3) {
+    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null Dali::ImageDimensions", 0);
+    return ;
+  }
+  arg3 = *argp3;
   {
     try {
-      result = (Dali::Toolkit::FlexContainer::Property *)new Dali::Toolkit::FlexContainer::Property();
+      (arg1)->SetImage((std::string const &)*arg2,arg3);
     } catch (std::out_of_range& e) {
       {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
+        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
       };
     } catch (std::exception& e) {
       {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
+        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return ;
       };
     } catch (Dali::DaliException e) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return ;
       };
     } catch (...) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
+        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ;
       };
     }
   }
 
-  jresult = (void *)result;
-  return jresult;
-}
 
+  //argout typemap for const std::string&
 
-SWIGEXPORT void SWIGSTDCALL CSharp_Dali_delete_FlexContainer_Property(void * jarg1) {
-  Dali::Toolkit::FlexContainer::Property *arg1 = (Dali::Toolkit::FlexContainer::Property *) 0 ;
+}
 
-  arg1 = (Dali::Toolkit::FlexContainer::Property *)jarg1;
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_ImageView_GetImage(void * jarg1) {
+  void * jresult ;
+  Dali::Toolkit::ImageView *arg1 = (Dali::Toolkit::ImageView *) 0 ;
+  Dali::Image result;
+
+  arg1 = (Dali::Toolkit::ImageView *)jarg1;
   {
     try {
-      delete arg1;
+      result = ((Dali::Toolkit::ImageView const *)arg1)->GetImage();
     } catch (std::out_of_range& e) {
       {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
+        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
       };
     } catch (std::exception& e) {
       {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return ;
+        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
       };
     } catch (Dali::DaliException e) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return ;
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
       };
     } catch (...) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ;
+        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
       };
     }
   }
 
+  jresult = new Dali::Image((const Dali::Image &)result);
+  return jresult;
+}
+
+
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_Model3dView_Property_GEOMETRY_URL_get() {
+  int jresult ;
+  int result;
+
+  result = (int)Dali::Toolkit::Model3dView::Property::GEOMETRY_URL;
+  jresult = (int)result;
+  return jresult;
 }
 
 
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_FlexContainer_ChildProperty_FLEX_get() {
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_Model3dView_Property_MATERIAL_URL_get() {
   int jresult ;
   int result;
 
-  result = (int)Dali::Toolkit::FlexContainer::ChildProperty::FLEX;
+  result = (int)Dali::Toolkit::Model3dView::Property::MATERIAL_URL;
   jresult = (int)result;
   return jresult;
 }
 
 
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_FlexContainer_ChildProperty_ALIGN_SELF_get() {
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_Model3dView_Property_IMAGES_URL_get() {
   int jresult ;
   int result;
 
-  result = (int)Dali::Toolkit::FlexContainer::ChildProperty::ALIGN_SELF;
+  result = (int)Dali::Toolkit::Model3dView::Property::IMAGES_URL;
   jresult = (int)result;
   return jresult;
 }
 
 
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_FlexContainer_ChildProperty_FLEX_MARGIN_get() {
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_Model3dView_Property_ILLUMINATION_TYPE_get() {
   int jresult ;
   int result;
 
-  result = (int)Dali::Toolkit::FlexContainer::ChildProperty::FLEX_MARGIN;
+  result = (int)Dali::Toolkit::Model3dView::Property::ILLUMINATION_TYPE;
   jresult = (int)result;
   return jresult;
 }
 
 
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_FlexContainer_ChildProperty() {
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_Model3dView_Property_TEXTURE0_URL_get() {
+  int jresult ;
+  int result;
+
+  result = (int)Dali::Toolkit::Model3dView::Property::TEXTURE0_URL;
+  jresult = (int)result;
+  return jresult;
+}
+
+
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_Model3dView_Property_TEXTURE1_URL_get() {
+  int jresult ;
+  int result;
+
+  result = (int)Dali::Toolkit::Model3dView::Property::TEXTURE1_URL;
+  jresult = (int)result;
+  return jresult;
+}
+
+
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_Model3dView_Property_TEXTURE2_URL_get() {
+  int jresult ;
+  int result;
+
+  result = (int)Dali::Toolkit::Model3dView::Property::TEXTURE2_URL;
+  jresult = (int)result;
+  return jresult;
+}
+
+
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_Model3dView_Property_LIGHT_POSITION_get() {
+  int jresult ;
+  int result;
+
+  result = (int)Dali::Toolkit::Model3dView::Property::LIGHT_POSITION;
+  jresult = (int)result;
+  return jresult;
+}
+
+
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_Model3dView_Property() {
   void * jresult ;
-  Dali::Toolkit::FlexContainer::ChildProperty *result = 0 ;
+  Dali::Toolkit::Model3dView::Property *result = 0 ;
 
   {
     try {
-      result = (Dali::Toolkit::FlexContainer::ChildProperty *)new Dali::Toolkit::FlexContainer::ChildProperty();
+      result = (Dali::Toolkit::Model3dView::Property *)new Dali::Toolkit::Model3dView::Property();
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -71828,10 +71179,10 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_FlexContainer_ChildProperty() {
 }
 
 
-SWIGEXPORT void SWIGSTDCALL CSharp_Dali_delete_FlexContainer_ChildProperty(void * jarg1) {
-  Dali::Toolkit::FlexContainer::ChildProperty *arg1 = (Dali::Toolkit::FlexContainer::ChildProperty *) 0 ;
+SWIGEXPORT void SWIGSTDCALL CSharp_Dali_delete_Model3dView_Property(void * jarg1) {
+  Dali::Toolkit::Model3dView::Property *arg1 = (Dali::Toolkit::Model3dView::Property *) 0 ;
 
-  arg1 = (Dali::Toolkit::FlexContainer::ChildProperty *)jarg1;
+  arg1 = (Dali::Toolkit::Model3dView::Property *)jarg1;
   {
     try {
       delete arg1;
@@ -71857,13 +71208,13 @@ SWIGEXPORT void SWIGSTDCALL CSharp_Dali_delete_FlexContainer_ChildProperty(void
 }
 
 
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_FlexContainer__SWIG_0() {
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_Model3dView_New__SWIG_0() {
   void * jresult ;
-  Dali::Toolkit::FlexContainer *result = 0 ;
+  Dali::Toolkit::Model3dView result;
 
   {
     try {
-      result = (Dali::Toolkit::FlexContainer *)new Dali::Toolkit::FlexContainer();
+      result = Dali::Toolkit::Model3dView::New();
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -71883,24 +71234,39 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_FlexContainer__SWIG_0() {
     }
   }
 
-  jresult = (void *)result;
+  jresult = new Dali::Toolkit::Model3dView((const Dali::Toolkit::Model3dView &)result);
   return jresult;
 }
 
 
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_FlexContainer__SWIG_1(void * jarg1) {
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_Model3dView_New__SWIG_1(char * jarg1, char * jarg2, char * jarg3) {
   void * jresult ;
-  Dali::Toolkit::FlexContainer *arg1 = 0 ;
-  Dali::Toolkit::FlexContainer *result = 0 ;
+  std::string *arg1 = 0 ;
+  std::string *arg2 = 0 ;
+  std::string *arg3 = 0 ;
+  Dali::Toolkit::Model3dView result;
 
-  arg1 = (Dali::Toolkit::FlexContainer *)jarg1;
-  if (!arg1) {
-    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::Toolkit::FlexContainer const & type is null", 0);
+  if (!jarg1) {
+    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "null string", 0);
+    return 0;
+  }
+  std::string arg1_str(jarg1);
+  arg1 = &arg1_str;
+  if (!jarg2) {
+    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "null string", 0);
+    return 0;
+  }
+  std::string arg2_str(jarg2);
+  arg2 = &arg2_str;
+  if (!jarg3) {
+    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "null string", 0);
     return 0;
   }
+  std::string arg3_str(jarg3);
+  arg3 = &arg3_str;
   {
     try {
-      result = (Dali::Toolkit::FlexContainer *)new Dali::Toolkit::FlexContainer((Dali::Toolkit::FlexContainer const &)*arg1);
+      result = Dali::Toolkit::Model3dView::New((std::string const &)*arg1,(std::string const &)*arg2,(std::string const &)*arg3);
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -71920,26 +71286,27 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_FlexContainer__SWIG_1(void * jarg1
     }
   }
 
-  jresult = (void *)result;
+  jresult = new Dali::Toolkit::Model3dView((const Dali::Toolkit::Model3dView &)result);
+
+  //argout typemap for const std::string&
+
+
+  //argout typemap for const std::string&
+
+
+  //argout typemap for const std::string&
+
   return jresult;
 }
 
 
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_FlexContainer_Assign(void * jarg1, void * jarg2) {
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_Model3dView__SWIG_0() {
   void * jresult ;
-  Dali::Toolkit::FlexContainer *arg1 = (Dali::Toolkit::FlexContainer *) 0 ;
-  Dali::Toolkit::FlexContainer *arg2 = 0 ;
-  Dali::Toolkit::FlexContainer *result = 0 ;
+  Dali::Toolkit::Model3dView *result = 0 ;
 
-  arg1 = (Dali::Toolkit::FlexContainer *)jarg1;
-  arg2 = (Dali::Toolkit::FlexContainer *)jarg2;
-  if (!arg2) {
-    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::Toolkit::FlexContainer const & type is null", 0);
-    return 0;
-  }
   {
     try {
-      result = (Dali::Toolkit::FlexContainer *) &(arg1)->operator =((Dali::Toolkit::FlexContainer const &)*arg2);
+      result = (Dali::Toolkit::Model3dView *)new Dali::Toolkit::Model3dView();
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -71964,10 +71331,10 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_FlexContainer_Assign(void * jarg1, voi
 }
 
 
-SWIGEXPORT void SWIGSTDCALL CSharp_Dali_delete_FlexContainer(void * jarg1) {
-  Dali::Toolkit::FlexContainer *arg1 = (Dali::Toolkit::FlexContainer *) 0 ;
+SWIGEXPORT void SWIGSTDCALL CSharp_Dali_delete_Model3dView(void * jarg1) {
+  Dali::Toolkit::Model3dView *arg1 = (Dali::Toolkit::Model3dView *) 0 ;
 
-  arg1 = (Dali::Toolkit::FlexContainer *)jarg1;
+  arg1 = (Dali::Toolkit::Model3dView *)jarg1;
   {
     try {
       delete arg1;
@@ -71993,13 +71360,19 @@ SWIGEXPORT void SWIGSTDCALL CSharp_Dali_delete_FlexContainer(void * jarg1) {
 }
 
 
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_FlexContainer_New() {
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_Model3dView__SWIG_1(void * jarg1) {
   void * jresult ;
-  Dali::Toolkit::FlexContainer result;
+  Dali::Toolkit::Model3dView *arg1 = 0 ;
+  Dali::Toolkit::Model3dView *result = 0 ;
 
+  arg1 = (Dali::Toolkit::Model3dView *)jarg1;
+  if (!arg1) {
+    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::Toolkit::Model3dView const & type is null", 0);
+    return 0;
+  }
   {
     try {
-      result = Dali::Toolkit::FlexContainer::New();
+      result = (Dali::Toolkit::Model3dView *)new Dali::Toolkit::Model3dView((Dali::Toolkit::Model3dView const &)*arg1);
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -72019,16 +71392,55 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_FlexContainer_New() {
     }
   }
 
-  jresult = new Dali::Toolkit::FlexContainer((const Dali::Toolkit::FlexContainer &)result);
+  jresult = (void *)result;
   return jresult;
 }
 
 
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_FlexContainer_DownCast(void * jarg1) {
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_Model3dView_Assign(void * jarg1, void * jarg2) {
+  void * jresult ;
+  Dali::Toolkit::Model3dView *arg1 = (Dali::Toolkit::Model3dView *) 0 ;
+  Dali::Toolkit::Model3dView *arg2 = 0 ;
+  Dali::Toolkit::Model3dView *result = 0 ;
+
+  arg1 = (Dali::Toolkit::Model3dView *)jarg1;
+  arg2 = (Dali::Toolkit::Model3dView *)jarg2;
+  if (!arg2) {
+    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::Toolkit::Model3dView const & type is null", 0);
+    return 0;
+  }
+  {
+    try {
+      result = (Dali::Toolkit::Model3dView *) &(arg1)->operator =((Dali::Toolkit::Model3dView const &)*arg2);
+    } catch (std::out_of_range& e) {
+      {
+        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
+      };
+    } catch (std::exception& e) {
+      {
+        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
+      };
+    } catch (Dali::DaliException e) {
+      {
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
+      };
+    } catch (...) {
+      {
+        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
+      };
+    }
+  }
+
+  jresult = (void *)result;
+  return jresult;
+}
+
+
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_Model3dView_DownCast(void * jarg1) {
   void * jresult ;
   Dali::BaseHandle arg1 ;
   Dali::BaseHandle *argp1 ;
-  Dali::Toolkit::FlexContainer result;
+  Dali::Toolkit::Model3dView result;
 
   argp1 = (Dali::BaseHandle *)jarg1;
   if (!argp1) {
@@ -72038,7 +71450,7 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_FlexContainer_DownCast(void * jarg1) {
   arg1 = *argp1;
   {
     try {
-      result = Dali::Toolkit::FlexContainer::DownCast(arg1);
+      result = Dali::Toolkit::Model3dView::DownCast(arg1);
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -72058,58 +71470,108 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_FlexContainer_DownCast(void * jarg1) {
     }
   }
 
-  jresult = new Dali::Toolkit::FlexContainer((const Dali::Toolkit::FlexContainer &)result);
+  jresult = new Dali::Toolkit::Model3dView((const Dali::Toolkit::Model3dView &)result);
   return jresult;
 }
 
 
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_ImageView_Property_RESOURCE_URL_get() {
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_ScrollBar_Property_SCROLL_DIRECTION_get() {
   int jresult ;
   int result;
 
-  result = (int)Dali::Toolkit::ImageView::Property::RESOURCE_URL;
+  result = (int)Dali::Toolkit::ScrollBar::Property::SCROLL_DIRECTION;
   jresult = (int)result;
   return jresult;
 }
 
 
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_ImageView_Property_IMAGE_get() {
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_ScrollBar_Property_INDICATOR_HEIGHT_POLICY_get() {
   int jresult ;
   int result;
 
-  result = (int)Dali::Toolkit::ImageView::Property::IMAGE;
+  result = (int)Dali::Toolkit::ScrollBar::Property::INDICATOR_HEIGHT_POLICY;
   jresult = (int)result;
   return jresult;
 }
 
 
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_ImageView_Property_PRE_MULTIPLIED_ALPHA_get() {
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_ScrollBar_Property_INDICATOR_FIXED_HEIGHT_get() {
   int jresult ;
   int result;
 
-  result = (int)Dali::Toolkit::ImageView::Property::PRE_MULTIPLIED_ALPHA;
+  result = (int)Dali::Toolkit::ScrollBar::Property::INDICATOR_FIXED_HEIGHT;
   jresult = (int)result;
   return jresult;
 }
 
 
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_ImageView_Property_PIXEL_AREA_get() {
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_ScrollBar_Property_INDICATOR_SHOW_DURATION_get() {
   int jresult ;
   int result;
 
-  result = (int)Dali::Toolkit::ImageView::Property::PIXEL_AREA;
+  result = (int)Dali::Toolkit::ScrollBar::Property::INDICATOR_SHOW_DURATION;
   jresult = (int)result;
   return jresult;
 }
 
 
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_ImageView_Property() {
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_ScrollBar_Property_INDICATOR_HIDE_DURATION_get() {
+  int jresult ;
+  int result;
+
+  result = (int)Dali::Toolkit::ScrollBar::Property::INDICATOR_HIDE_DURATION;
+  jresult = (int)result;
+  return jresult;
+}
+
+
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_ScrollBar_Property_SCROLL_POSITION_INTERVALS_get() {
+  int jresult ;
+  int result;
+
+  result = (int)Dali::Toolkit::ScrollBar::Property::SCROLL_POSITION_INTERVALS;
+  jresult = (int)result;
+  return jresult;
+}
+
+
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_ScrollBar_Property_INDICATOR_MINIMUM_HEIGHT_get() {
+  int jresult ;
+  int result;
+
+  result = (int)Dali::Toolkit::ScrollBar::Property::INDICATOR_MINIMUM_HEIGHT;
+  jresult = (int)result;
+  return jresult;
+}
+
+
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_ScrollBar_Property_INDICATOR_START_PADDING_get() {
+  int jresult ;
+  int result;
+
+  result = (int)Dali::Toolkit::ScrollBar::Property::INDICATOR_START_PADDING;
+  jresult = (int)result;
+  return jresult;
+}
+
+
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_ScrollBar_Property_INDICATOR_END_PADDING_get() {
+  int jresult ;
+  int result;
+
+  result = (int)Dali::Toolkit::ScrollBar::Property::INDICATOR_END_PADDING;
+  jresult = (int)result;
+  return jresult;
+}
+
+
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_ScrollBar_Property() {
   void * jresult ;
-  Dali::Toolkit::ImageView::Property *result = 0 ;
+  Dali::Toolkit::ScrollBar::Property *result = 0 ;
 
   {
     try {
-      result = (Dali::Toolkit::ImageView::Property *)new Dali::Toolkit::ImageView::Property();
+      result = (Dali::Toolkit::ScrollBar::Property *)new Dali::Toolkit::ScrollBar::Property();
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -72134,10 +71596,10 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_ImageView_Property() {
 }
 
 
-SWIGEXPORT void SWIGSTDCALL CSharp_Dali_delete_ImageView_Property(void * jarg1) {
-  Dali::Toolkit::ImageView::Property *arg1 = (Dali::Toolkit::ImageView::Property *) 0 ;
+SWIGEXPORT void SWIGSTDCALL CSharp_Dali_delete_ScrollBar_Property(void * jarg1) {
+  Dali::Toolkit::ScrollBar::Property *arg1 = (Dali::Toolkit::ScrollBar::Property *) 0 ;
 
-  arg1 = (Dali::Toolkit::ImageView::Property *)jarg1;
+  arg1 = (Dali::Toolkit::ScrollBar::Property *)jarg1;
   {
     try {
       delete arg1;
@@ -72163,13 +71625,13 @@ SWIGEXPORT void SWIGSTDCALL CSharp_Dali_delete_ImageView_Property(void * jarg1)
 }
 
 
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_ImageView__SWIG_0() {
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_ScrollBar__SWIG_0() {
   void * jresult ;
-  Dali::Toolkit::ImageView *result = 0 ;
+  Dali::Toolkit::ScrollBar *result = 0 ;
 
   {
     try {
-      result = (Dali::Toolkit::ImageView *)new Dali::Toolkit::ImageView();
+      result = (Dali::Toolkit::ScrollBar *)new Dali::Toolkit::ScrollBar();
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -72194,13 +71656,19 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_ImageView__SWIG_0() {
 }
 
 
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_ImageView_New__SWIG_0() {
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_ScrollBar__SWIG_1(void * jarg1) {
   void * jresult ;
-  Dali::Toolkit::ImageView result;
+  Dali::Toolkit::ScrollBar *arg1 = 0 ;
+  Dali::Toolkit::ScrollBar *result = 0 ;
 
+  arg1 = (Dali::Toolkit::ScrollBar *)jarg1;
+  if (!arg1) {
+    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::Toolkit::ScrollBar const & type is null", 0);
+    return 0;
+  }
   {
     try {
-      result = Dali::Toolkit::ImageView::New();
+      result = (Dali::Toolkit::ScrollBar *)new Dali::Toolkit::ScrollBar((Dali::Toolkit::ScrollBar const &)*arg1);
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -72220,26 +71688,26 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_ImageView_New__SWIG_0() {
     }
   }
 
-  jresult = new Dali::Toolkit::ImageView((const Dali::Toolkit::ImageView &)result);
+  jresult = (void *)result;
   return jresult;
 }
 
 
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_ImageView_New__SWIG_1(void * jarg1) {
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_ScrollBar_Assign(void * jarg1, void * jarg2) {
   void * jresult ;
-  Dali::Image arg1 ;
-  Dali::Image *argp1 ;
-  Dali::Toolkit::ImageView result;
+  Dali::Toolkit::ScrollBar *arg1 = (Dali::Toolkit::ScrollBar *) 0 ;
+  Dali::Toolkit::ScrollBar *arg2 = 0 ;
+  Dali::Toolkit::ScrollBar *result = 0 ;
 
-  argp1 = (Dali::Image *)jarg1;
-  if (!argp1) {
-    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null Dali::Image", 0);
+  arg1 = (Dali::Toolkit::ScrollBar *)jarg1;
+  arg2 = (Dali::Toolkit::ScrollBar *)jarg2;
+  if (!arg2) {
+    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::Toolkit::ScrollBar const & type is null", 0);
     return 0;
   }
-  arg1 = *argp1;
   {
     try {
-      result = Dali::Toolkit::ImageView::New(arg1);
+      result = (Dali::Toolkit::ScrollBar *) &(arg1)->operator =((Dali::Toolkit::ScrollBar const &)*arg2);
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -72259,74 +71727,49 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_ImageView_New__SWIG_1(void * jarg1) {
     }
   }
 
-  jresult = new Dali::Toolkit::ImageView((const Dali::Toolkit::ImageView &)result);
+  jresult = (void *)result;
   return jresult;
 }
 
 
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_ImageView_New__SWIG_2(char * jarg1) {
-  void * jresult ;
-  std::string *arg1 = 0 ;
-  Dali::Toolkit::ImageView result;
+SWIGEXPORT void SWIGSTDCALL CSharp_Dali_delete_ScrollBar(void * jarg1) {
+  Dali::Toolkit::ScrollBar *arg1 = (Dali::Toolkit::ScrollBar *) 0 ;
 
-  if (!jarg1) {
-    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "null string", 0);
-    return 0;
-  }
-  std::string arg1_str(jarg1);
-  arg1 = &arg1_str;
+  arg1 = (Dali::Toolkit::ScrollBar *)jarg1;
   {
     try {
-      result = Dali::Toolkit::ImageView::New((std::string const &)*arg1);
+      delete arg1;
     } catch (std::out_of_range& e) {
       {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
+        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
       };
     } catch (std::exception& e) {
       {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
+        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return ;
       };
     } catch (Dali::DaliException e) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return ;
       };
     } catch (...) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
+        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ;
       };
     }
   }
 
-  jresult = new Dali::Toolkit::ImageView((const Dali::Toolkit::ImageView &)result);
-
-  //argout typemap for const std::string&
-
-  return jresult;
 }
 
 
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_ImageView_New__SWIG_3(char * jarg1, void * jarg2) {
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_ScrollBar_New__SWIG_0(int jarg1) {
   void * jresult ;
-  std::string *arg1 = 0 ;
-  Dali::ImageDimensions arg2 ;
-  Dali::ImageDimensions *argp2 ;
-  Dali::Toolkit::ImageView result;
+  Dali::Toolkit::ScrollBar::Direction arg1 ;
+  Dali::Toolkit::ScrollBar result;
 
-  if (!jarg1) {
-    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "null string", 0);
-    return 0;
-  }
-  std::string arg1_str(jarg1);
-  arg1 = &arg1_str;
-  argp2 = (Dali::ImageDimensions *)jarg2;
-  if (!argp2) {
-    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null Dali::ImageDimensions", 0);
-    return 0;
-  }
-  arg2 = *argp2;
+  arg1 = (Dali::Toolkit::ScrollBar::Direction)jarg1;
   {
     try {
-      result = Dali::Toolkit::ImageView::New((std::string const &)*arg1,arg2);
+      result = Dali::Toolkit::ScrollBar::New(arg1);
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -72346,56 +71789,57 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_ImageView_New__SWIG_3(char * jarg1, vo
     }
   }
 
-  jresult = new Dali::Toolkit::ImageView((const Dali::Toolkit::ImageView &)result);
-
-  //argout typemap for const std::string&
-
+  jresult = new Dali::Toolkit::ScrollBar((const Dali::Toolkit::ScrollBar &)result);
   return jresult;
 }
 
 
-SWIGEXPORT void SWIGSTDCALL CSharp_Dali_delete_ImageView(void * jarg1) {
-  Dali::Toolkit::ImageView *arg1 = (Dali::Toolkit::ImageView *) 0 ;
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_ScrollBar_New__SWIG_1() {
+  void * jresult ;
+  Dali::Toolkit::ScrollBar result;
 
-  arg1 = (Dali::Toolkit::ImageView *)jarg1;
   {
     try {
-      delete arg1;
+      result = Dali::Toolkit::ScrollBar::New();
     } catch (std::out_of_range& e) {
       {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
+        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
       };
     } catch (std::exception& e) {
       {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return ;
+        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
       };
     } catch (Dali::DaliException e) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return ;
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
       };
     } catch (...) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ;
+        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
       };
     }
   }
 
+  jresult = new Dali::Toolkit::ScrollBar((const Dali::Toolkit::ScrollBar &)result);
+  return jresult;
 }
 
 
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_ImageView__SWIG_1(void * jarg1) {
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_ScrollBar_DownCast(void * jarg1) {
   void * jresult ;
-  Dali::Toolkit::ImageView *arg1 = 0 ;
-  Dali::Toolkit::ImageView *result = 0 ;
+  Dali::BaseHandle arg1 ;
+  Dali::BaseHandle *argp1 ;
+  Dali::Toolkit::ScrollBar result;
 
-  arg1 = (Dali::Toolkit::ImageView *)jarg1;
-  if (!arg1) {
-    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::Toolkit::ImageView const & type is null", 0);
+  argp1 = (Dali::BaseHandle *)jarg1;
+  if (!argp1) {
+    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null Dali::BaseHandle", 0);
     return 0;
   }
+  arg1 = *argp1;
   {
     try {
-      result = (Dali::Toolkit::ImageView *)new Dali::Toolkit::ImageView((Dali::Toolkit::ImageView const &)*arg1);
+      result = Dali::Toolkit::ScrollBar::DownCast(arg1);
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -72415,140 +71859,139 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_ImageView__SWIG_1(void * jarg1) {
     }
   }
 
-  jresult = (void *)result;
+  jresult = new Dali::Toolkit::ScrollBar((const Dali::Toolkit::ScrollBar &)result);
   return jresult;
 }
 
 
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_ImageView_Assign(void * jarg1, void * jarg2) {
-  void * jresult ;
-  Dali::Toolkit::ImageView *arg1 = (Dali::Toolkit::ImageView *) 0 ;
-  Dali::Toolkit::ImageView *arg2 = 0 ;
-  Dali::Toolkit::ImageView *result = 0 ;
+SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ScrollBar_SetScrollPropertySource(void * jarg1, void * jarg2, int jarg3, int jarg4, int jarg5, int jarg6) {
+  Dali::Toolkit::ScrollBar *arg1 = (Dali::Toolkit::ScrollBar *) 0 ;
+  Dali::Handle arg2 ;
+  Dali::Property::Index arg3 ;
+  Dali::Property::Index arg4 ;
+  Dali::Property::Index arg5 ;
+  Dali::Property::Index arg6 ;
+  Dali::Handle *argp2 ;
 
-  arg1 = (Dali::Toolkit::ImageView *)jarg1;
-  arg2 = (Dali::Toolkit::ImageView *)jarg2;
-  if (!arg2) {
-    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::Toolkit::ImageView const & type is null", 0);
-    return 0;
+  arg1 = (Dali::Toolkit::ScrollBar *)jarg1;
+  argp2 = (Dali::Handle *)jarg2;
+  if (!argp2) {
+    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null Dali::Handle", 0);
+    return ;
   }
+  arg2 = *argp2;
+  arg3 = (Dali::Property::Index)jarg3;
+  arg4 = (Dali::Property::Index)jarg4;
+  arg5 = (Dali::Property::Index)jarg5;
+  arg6 = (Dali::Property::Index)jarg6;
   {
     try {
-      result = (Dali::Toolkit::ImageView *) &(arg1)->operator =((Dali::Toolkit::ImageView const &)*arg2);
+      (arg1)->SetScrollPropertySource(arg2,arg3,arg4,arg5,arg6);
     } catch (std::out_of_range& e) {
       {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
+        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
       };
     } catch (std::exception& e) {
       {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
+        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return ;
       };
     } catch (Dali::DaliException e) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return ;
       };
     } catch (...) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
+        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ;
       };
     }
   }
 
-  jresult = (void *)result;
-  return jresult;
 }
 
 
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_ImageView_DownCast(void * jarg1) {
-  void * jresult ;
-  Dali::BaseHandle arg1 ;
-  Dali::BaseHandle *argp1 ;
-  Dali::Toolkit::ImageView result;
+SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ScrollBar_SetScrollIndicator(void * jarg1, void * jarg2) {
+  Dali::Toolkit::ScrollBar *arg1 = (Dali::Toolkit::ScrollBar *) 0 ;
+  Dali::Actor arg2 ;
+  Dali::Actor *argp2 ;
 
-  argp1 = (Dali::BaseHandle *)jarg1;
-  if (!argp1) {
-    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null Dali::BaseHandle", 0);
-    return 0;
+  arg1 = (Dali::Toolkit::ScrollBar *)jarg1;
+  argp2 = (Dali::Actor *)jarg2;
+  if (!argp2) {
+    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null Dali::Actor", 0);
+    return ;
   }
-  arg1 = *argp1;
+  arg2 = *argp2;
   {
     try {
-      result = Dali::Toolkit::ImageView::DownCast(arg1);
+      (arg1)->SetScrollIndicator(arg2);
     } catch (std::out_of_range& e) {
       {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
+        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
       };
     } catch (std::exception& e) {
       {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
+        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return ;
       };
     } catch (Dali::DaliException e) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return ;
       };
     } catch (...) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
+        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ;
       };
     }
   }
 
-  jresult = new Dali::Toolkit::ImageView((const Dali::Toolkit::ImageView &)result);
-  return jresult;
 }
 
 
-SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ImageView_SetImage__SWIG_0(void * jarg1, void * jarg2) {
-  Dali::Toolkit::ImageView *arg1 = (Dali::Toolkit::ImageView *) 0 ;
-  Dali::Image arg2 ;
-  Dali::Image *argp2 ;
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_ScrollBar_GetScrollIndicator(void * jarg1) {
+  void * jresult ;
+  Dali::Toolkit::ScrollBar *arg1 = (Dali::Toolkit::ScrollBar *) 0 ;
+  Dali::Actor result;
 
-  arg1 = (Dali::Toolkit::ImageView *)jarg1;
-  argp2 = (Dali::Image *)jarg2;
-  if (!argp2) {
-    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null Dali::Image", 0);
-    return ;
-  }
-  arg2 = *argp2;
+  arg1 = (Dali::Toolkit::ScrollBar *)jarg1;
   {
     try {
-      (arg1)->SetImage(arg2);
+      result = (arg1)->GetScrollIndicator();
     } catch (std::out_of_range& e) {
       {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
+        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
       };
     } catch (std::exception& e) {
       {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return ;
+        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
       };
     } catch (Dali::DaliException e) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return ;
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
       };
     } catch (...) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ;
+        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
       };
     }
   }
 
+  jresult = new Dali::Actor((const Dali::Actor &)result);
+  return jresult;
 }
 
 
-SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ImageView_SetImage__SWIG_1(void * jarg1, char * jarg2) {
-  Dali::Toolkit::ImageView *arg1 = (Dali::Toolkit::ImageView *) 0 ;
-  std::string *arg2 = 0 ;
+SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ScrollBar_SetScrollPositionIntervals(void * jarg1, void * jarg2) {
+  Dali::Toolkit::ScrollBar *arg1 = (Dali::Toolkit::ScrollBar *) 0 ;
+  Dali::Vector< float,TypeTraits< float >::IS_TRIVIAL_TYPE==true > *arg2 = 0 ;
 
-  arg1 = (Dali::Toolkit::ImageView *)jarg1;
-  if (!jarg2) {
-    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "null string", 0);
+  arg1 = (Dali::Toolkit::ScrollBar *)jarg1;
+  arg2 = (Dali::Vector< float,TypeTraits< float >::IS_TRIVIAL_TYPE==true > *)jarg2;
+  if (!arg2) {
+    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::Vector< float,TypeTraits< float >::IS_TRIVIAL_TYPE==true > const & type is null", 0);
     return ;
   }
-  std::string arg2_str(jarg2);
-  arg2 = &arg2_str;
   {
     try {
-      (arg1)->SetImage((std::string const &)*arg2);
+      (arg1)->SetScrollPositionIntervals((Dali::Vector< float,TypeTraits< float >::IS_TRIVIAL_TYPE==true > const &)*arg2);
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
@@ -72568,34 +72011,44 @@ SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ImageView_SetImage__SWIG_1(void * jarg1,
     }
   }
 
+}
 
-  //argout typemap for const std::string&
 
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_ScrollBar_GetScrollPositionIntervals(void * jarg1) {
+  void * jresult ;
+  Dali::Toolkit::ScrollBar *arg1 = (Dali::Toolkit::ScrollBar *) 0 ;
+
+  arg1 = (Dali::Toolkit::ScrollBar *)jarg1;
+  {
+    try {
+      jresult = new Dali::Vector< float,TypeTraits< float >::IS_TRIVIAL_TYPE==true >((const Dali::Vector< float,TypeTraits< float >::IS_TRIVIAL_TYPE==true > &)(((Dali::Toolkit::ScrollBar const *)arg1)->GetScrollPositionIntervals()));
+    } catch (std::out_of_range& e) {
+      {
+        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
+      };
+    } catch (std::exception& e) {
+      {
+        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
+      };
+    } catch (...) {
+      {
+        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
+      };
+    }
+  }
+  return jresult;
 }
 
 
-SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ImageView_SetImage__SWIG_2(void * jarg1, char * jarg2, void * jarg3) {
-  Dali::Toolkit::ImageView *arg1 = (Dali::Toolkit::ImageView *) 0 ;
-  std::string *arg2 = 0 ;
-  Dali::ImageDimensions arg3 ;
-  Dali::ImageDimensions *argp3 ;
+SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ScrollBar_SetScrollDirection(void * jarg1, int jarg2) {
+  Dali::Toolkit::ScrollBar *arg1 = (Dali::Toolkit::ScrollBar *) 0 ;
+  Dali::Toolkit::ScrollBar::Direction arg2 ;
 
-  arg1 = (Dali::Toolkit::ImageView *)jarg1;
-  if (!jarg2) {
-    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "null string", 0);
-    return ;
-  }
-  std::string arg2_str(jarg2);
-  arg2 = &arg2_str;
-  argp3 = (Dali::ImageDimensions *)jarg3;
-  if (!argp3) {
-    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null Dali::ImageDimensions", 0);
-    return ;
-  }
-  arg3 = *argp3;
+  arg1 = (Dali::Toolkit::ScrollBar *)jarg1;
+  arg2 = (Dali::Toolkit::ScrollBar::Direction)jarg2;
   {
     try {
-      (arg1)->SetImage((std::string const &)*arg2,arg3);
+      (arg1)->SetScrollDirection(arg2);
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
@@ -72615,20 +72068,18 @@ SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ImageView_SetImage__SWIG_2(void * jarg1,
     }
   }
 
-
-  //argout typemap for const std::string&
-
 }
 
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_ImageView_GetImage(void * jarg1) {
-  void * jresult ;
-  Dali::Toolkit::ImageView *arg1 = (Dali::Toolkit::ImageView *) 0 ;
-  Dali::Image result;
 
-  arg1 = (Dali::Toolkit::ImageView *)jarg1;
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_ScrollBar_GetScrollDirection(void * jarg1) {
+  int jresult ;
+  Dali::Toolkit::ScrollBar *arg1 = (Dali::Toolkit::ScrollBar *) 0 ;
+  Dali::Toolkit::ScrollBar::Direction result;
+
+  arg1 = (Dali::Toolkit::ScrollBar *)jarg1;
   {
     try {
-      result = ((Dali::Toolkit::ImageView const *)arg1)->GetImage();
+      result = (Dali::Toolkit::ScrollBar::Direction)((Dali::Toolkit::ScrollBar const *)arg1)->GetScrollDirection();
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -72648,98 +72099,51 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_ImageView_GetImage(void * jarg1) {
     }
   }
 
-  jresult = new Dali::Image((const Dali::Image &)result);
-  return jresult;
-}
-
-
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_Model3dView_Property_GEOMETRY_URL_get() {
-  int jresult ;
-  int result;
-
-  result = (int)Dali::Toolkit::Model3dView::Property::GEOMETRY_URL;
-  jresult = (int)result;
-  return jresult;
-}
-
-
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_Model3dView_Property_MATERIAL_URL_get() {
-  int jresult ;
-  int result;
-
-  result = (int)Dali::Toolkit::Model3dView::Property::MATERIAL_URL;
-  jresult = (int)result;
-  return jresult;
-}
-
-
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_Model3dView_Property_IMAGES_URL_get() {
-  int jresult ;
-  int result;
-
-  result = (int)Dali::Toolkit::Model3dView::Property::IMAGES_URL;
-  jresult = (int)result;
-  return jresult;
-}
-
-
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_Model3dView_Property_ILLUMINATION_TYPE_get() {
-  int jresult ;
-  int result;
-
-  result = (int)Dali::Toolkit::Model3dView::Property::ILLUMINATION_TYPE;
-  jresult = (int)result;
-  return jresult;
-}
-
-
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_Model3dView_Property_TEXTURE0_URL_get() {
-  int jresult ;
-  int result;
-
-  result = (int)Dali::Toolkit::Model3dView::Property::TEXTURE0_URL;
   jresult = (int)result;
   return jresult;
 }
 
 
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_Model3dView_Property_TEXTURE1_URL_get() {
-  int jresult ;
-  int result;
-
-  result = (int)Dali::Toolkit::Model3dView::Property::TEXTURE1_URL;
-  jresult = (int)result;
-  return jresult;
-}
-
+SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ScrollBar_SetIndicatorHeightPolicy(void * jarg1, int jarg2) {
+  Dali::Toolkit::ScrollBar *arg1 = (Dali::Toolkit::ScrollBar *) 0 ;
+  Dali::Toolkit::ScrollBar::IndicatorHeightPolicy arg2 ;
 
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_Model3dView_Property_TEXTURE2_URL_get() {
-  int jresult ;
-  int result;
+  arg1 = (Dali::Toolkit::ScrollBar *)jarg1;
+  arg2 = (Dali::Toolkit::ScrollBar::IndicatorHeightPolicy)jarg2;
+  {
+    try {
+      (arg1)->SetIndicatorHeightPolicy(arg2);
+    } catch (std::out_of_range& e) {
+      {
+        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
+      };
+    } catch (std::exception& e) {
+      {
+        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return ;
+      };
+    } catch (Dali::DaliException e) {
+      {
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return ;
+      };
+    } catch (...) {
+      {
+        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ;
+      };
+    }
+  }
 
-  result = (int)Dali::Toolkit::Model3dView::Property::TEXTURE2_URL;
-  jresult = (int)result;
-  return jresult;
 }
 
 
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_Model3dView_Property_LIGHT_POSITION_get() {
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_ScrollBar_GetIndicatorHeightPolicy(void * jarg1) {
   int jresult ;
-  int result;
-
-  result = (int)Dali::Toolkit::Model3dView::Property::LIGHT_POSITION;
-  jresult = (int)result;
-  return jresult;
-}
-
-
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_Model3dView_Property() {
-  void * jresult ;
-  Dali::Toolkit::Model3dView::Property *result = 0 ;
+  Dali::Toolkit::ScrollBar *arg1 = (Dali::Toolkit::ScrollBar *) 0 ;
+  Dali::Toolkit::ScrollBar::IndicatorHeightPolicy result;
 
+  arg1 = (Dali::Toolkit::ScrollBar *)jarg1;
   {
     try {
-      result = (Dali::Toolkit::Model3dView::Property *)new Dali::Toolkit::Model3dView::Property();
+      result = (Dali::Toolkit::ScrollBar::IndicatorHeightPolicy)((Dali::Toolkit::ScrollBar const *)arg1)->GetIndicatorHeightPolicy();
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -72759,18 +72163,20 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_Model3dView_Property() {
     }
   }
 
-  jresult = (void *)result;
+  jresult = (int)result;
   return jresult;
 }
 
 
-SWIGEXPORT void SWIGSTDCALL CSharp_Dali_delete_Model3dView_Property(void * jarg1) {
-  Dali::Toolkit::Model3dView::Property *arg1 = (Dali::Toolkit::Model3dView::Property *) 0 ;
+SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ScrollBar_SetIndicatorFixedHeight(void * jarg1, float jarg2) {
+  Dali::Toolkit::ScrollBar *arg1 = (Dali::Toolkit::ScrollBar *) 0 ;
+  float arg2 ;
 
-  arg1 = (Dali::Toolkit::Model3dView::Property *)jarg1;
+  arg1 = (Dali::Toolkit::ScrollBar *)jarg1;
+  arg2 = (float)jarg2;
   {
     try {
-      delete arg1;
+      (arg1)->SetIndicatorFixedHeight(arg2);
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
@@ -72793,13 +72199,15 @@ SWIGEXPORT void SWIGSTDCALL CSharp_Dali_delete_Model3dView_Property(void * jarg1
 }
 
 
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_Model3dView_New__SWIG_0() {
-  void * jresult ;
-  Dali::Toolkit::Model3dView result;
+SWIGEXPORT float SWIGSTDCALL CSharp_Dali_ScrollBar_GetIndicatorFixedHeight(void * jarg1) {
+  float jresult ;
+  Dali::Toolkit::ScrollBar *arg1 = (Dali::Toolkit::ScrollBar *) 0 ;
+  float result;
 
+  arg1 = (Dali::Toolkit::ScrollBar *)jarg1;
   {
     try {
-      result = Dali::Toolkit::Model3dView::New();
+      result = (float)((Dali::Toolkit::ScrollBar const *)arg1)->GetIndicatorFixedHeight();
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -72819,79 +72227,51 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_Model3dView_New__SWIG_0() {
     }
   }
 
-  jresult = new Dali::Toolkit::Model3dView((const Dali::Toolkit::Model3dView &)result);
+  jresult = result;
   return jresult;
 }
 
 
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_Model3dView_New__SWIG_1(char * jarg1, char * jarg2, char * jarg3) {
-  void * jresult ;
-  std::string *arg1 = 0 ;
-  std::string *arg2 = 0 ;
-  std::string *arg3 = 0 ;
-  Dali::Toolkit::Model3dView result;
+SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ScrollBar_SetIndicatorShowDuration(void * jarg1, float jarg2) {
+  Dali::Toolkit::ScrollBar *arg1 = (Dali::Toolkit::ScrollBar *) 0 ;
+  float arg2 ;
 
-  if (!jarg1) {
-    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "null string", 0);
-    return 0;
-  }
-  std::string arg1_str(jarg1);
-  arg1 = &arg1_str;
-  if (!jarg2) {
-    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "null string", 0);
-    return 0;
-  }
-  std::string arg2_str(jarg2);
-  arg2 = &arg2_str;
-  if (!jarg3) {
-    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "null string", 0);
-    return 0;
-  }
-  std::string arg3_str(jarg3);
-  arg3 = &arg3_str;
+  arg1 = (Dali::Toolkit::ScrollBar *)jarg1;
+  arg2 = (float)jarg2;
   {
     try {
-      result = Dali::Toolkit::Model3dView::New((std::string const &)*arg1,(std::string const &)*arg2,(std::string const &)*arg3);
+      (arg1)->SetIndicatorShowDuration(arg2);
     } catch (std::out_of_range& e) {
       {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
+        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
       };
     } catch (std::exception& e) {
       {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
+        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return ;
       };
     } catch (Dali::DaliException e) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return ;
       };
     } catch (...) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
+        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ;
       };
     }
   }
 
-  jresult = new Dali::Toolkit::Model3dView((const Dali::Toolkit::Model3dView &)result);
-
-  //argout typemap for const std::string&
-
-
-  //argout typemap for const std::string&
-
-
-  //argout typemap for const std::string&
-
-  return jresult;
 }
 
 
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_Model3dView__SWIG_0() {
-  void * jresult ;
-  Dali::Toolkit::Model3dView *result = 0 ;
+SWIGEXPORT float SWIGSTDCALL CSharp_Dali_ScrollBar_GetIndicatorShowDuration(void * jarg1) {
+  float jresult ;
+  Dali::Toolkit::ScrollBar *arg1 = (Dali::Toolkit::ScrollBar *) 0 ;
+  float result;
 
+  arg1 = (Dali::Toolkit::ScrollBar *)jarg1;
   {
     try {
-      result = (Dali::Toolkit::Model3dView *)new Dali::Toolkit::Model3dView();
+      result = (float)((Dali::Toolkit::ScrollBar const *)arg1)->GetIndicatorShowDuration();
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -72911,18 +72291,20 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_Model3dView__SWIG_0() {
     }
   }
 
-  jresult = (void *)result;
+  jresult = result;
   return jresult;
 }
 
 
-SWIGEXPORT void SWIGSTDCALL CSharp_Dali_delete_Model3dView(void * jarg1) {
-  Dali::Toolkit::Model3dView *arg1 = (Dali::Toolkit::Model3dView *) 0 ;
+SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ScrollBar_SetIndicatorHideDuration(void * jarg1, float jarg2) {
+  Dali::Toolkit::ScrollBar *arg1 = (Dali::Toolkit::ScrollBar *) 0 ;
+  float arg2 ;
 
-  arg1 = (Dali::Toolkit::Model3dView *)jarg1;
+  arg1 = (Dali::Toolkit::ScrollBar *)jarg1;
+  arg2 = (float)jarg2;
   {
     try {
-      delete arg1;
+      (arg1)->SetIndicatorHideDuration(arg2);
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
@@ -72945,19 +72327,15 @@ SWIGEXPORT void SWIGSTDCALL CSharp_Dali_delete_Model3dView(void * jarg1) {
 }
 
 
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_Model3dView__SWIG_1(void * jarg1) {
-  void * jresult ;
-  Dali::Toolkit::Model3dView *arg1 = 0 ;
-  Dali::Toolkit::Model3dView *result = 0 ;
+SWIGEXPORT float SWIGSTDCALL CSharp_Dali_ScrollBar_GetIndicatorHideDuration(void * jarg1) {
+  float jresult ;
+  Dali::Toolkit::ScrollBar *arg1 = (Dali::Toolkit::ScrollBar *) 0 ;
+  float result;
 
-  arg1 = (Dali::Toolkit::Model3dView *)jarg1;
-  if (!arg1) {
-    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::Toolkit::Model3dView const & type is null", 0);
-    return 0;
-  }
+  arg1 = (Dali::Toolkit::ScrollBar *)jarg1;
   {
     try {
-      result = (Dali::Toolkit::Model3dView *)new Dali::Toolkit::Model3dView((Dali::Toolkit::Model3dView const &)*arg1);
+      result = (float)((Dali::Toolkit::ScrollBar const *)arg1)->GetIndicatorHideDuration();
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -72977,76 +72355,89 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_Model3dView__SWIG_1(void * jarg1)
     }
   }
 
-  jresult = (void *)result;
+  jresult = result;
   return jresult;
 }
 
 
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_Model3dView_Assign(void * jarg1, void * jarg2) {
-  void * jresult ;
-  Dali::Toolkit::Model3dView *arg1 = (Dali::Toolkit::Model3dView *) 0 ;
-  Dali::Toolkit::Model3dView *arg2 = 0 ;
-  Dali::Toolkit::Model3dView *result = 0 ;
+SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ScrollBar_ShowIndicator(void * jarg1) {
+  Dali::Toolkit::ScrollBar *arg1 = (Dali::Toolkit::ScrollBar *) 0 ;
 
-  arg1 = (Dali::Toolkit::Model3dView *)jarg1;
-  arg2 = (Dali::Toolkit::Model3dView *)jarg2;
-  if (!arg2) {
-    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::Toolkit::Model3dView const & type is null", 0);
-    return 0;
-  }
+  arg1 = (Dali::Toolkit::ScrollBar *)jarg1;
   {
     try {
-      result = (Dali::Toolkit::Model3dView *) &(arg1)->operator =((Dali::Toolkit::Model3dView const &)*arg2);
+      (arg1)->ShowIndicator();
     } catch (std::out_of_range& e) {
       {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
+        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
       };
     } catch (std::exception& e) {
       {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
+        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return ;
       };
     } catch (Dali::DaliException e) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return ;
       };
     } catch (...) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
+        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ;
       };
     }
   }
 
-  jresult = (void *)result;
-  return jresult;
 }
 
 
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_Model3dView_DownCast(void * jarg1) {
-  void * jresult ;
-  Dali::BaseHandle arg1 ;
-  Dali::BaseHandle *argp1 ;
-  Dali::Toolkit::Model3dView result;
+SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ScrollBar_HideIndicator(void * jarg1) {
+  Dali::Toolkit::ScrollBar *arg1 = (Dali::Toolkit::ScrollBar *) 0 ;
 
-  argp1 = (Dali::BaseHandle *)jarg1;
-  if (!argp1) {
-    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null Dali::BaseHandle", 0);
-    return 0;
-  }
-  arg1 = *argp1;
+  arg1 = (Dali::Toolkit::ScrollBar *)jarg1;
   {
     try {
-      result = Dali::Toolkit::Model3dView::DownCast(arg1);
+      (arg1)->HideIndicator();
     } catch (std::out_of_range& e) {
       {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
+        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
       };
     } catch (std::exception& e) {
       {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
+        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return ;
       };
     } catch (Dali::DaliException e) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return ;
+      };
+    } catch (...) {
+      {
+        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ;
+      };
+    }
+  }
+
+}
+
+
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_ScrollBar_PanFinishedSignal(void * jarg1) {
+  void * jresult ;
+  Dali::Toolkit::ScrollBar *arg1 = (Dali::Toolkit::ScrollBar *) 0 ;
+  Dali::Toolkit::ScrollBar::PanFinishedSignalType *result = 0 ;
+
+  arg1 = (Dali::Toolkit::ScrollBar *)jarg1;
+  {
+    try {
+      result = (Dali::Toolkit::ScrollBar::PanFinishedSignalType *) &(arg1)->PanFinishedSignal();
+    } catch (std::out_of_range& e) {
+      {
+        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
+      };
+    } catch (std::exception& e) {
+      {
+        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
+      };
+    } catch (Dali::DaliException e) {
+      {
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
       };
     } catch (...) {
       {
@@ -73055,108 +72446,191 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_Model3dView_DownCast(void * jarg1) {
     }
   }
 
-  jresult = new Dali::Toolkit::Model3dView((const Dali::Toolkit::Model3dView &)result);
+  jresult = (void *)result;
   return jresult;
 }
 
 
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_ScrollBar_Property_SCROLL_DIRECTION_get() {
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_ScrollBar_ScrollPositionIntervalReachedSignal(void * jarg1) {
+  void * jresult ;
+  Dali::Toolkit::ScrollBar *arg1 = (Dali::Toolkit::ScrollBar *) 0 ;
+  Dali::Toolkit::ScrollBar::ScrollPositionIntervalReachedSignalType *result = 0 ;
+
+  arg1 = (Dali::Toolkit::ScrollBar *)jarg1;
+  {
+    try {
+      result = (Dali::Toolkit::ScrollBar::ScrollPositionIntervalReachedSignalType *) &(arg1)->ScrollPositionIntervalReachedSignal();
+    } catch (std::out_of_range& e) {
+      {
+        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
+      };
+    } catch (std::exception& e) {
+      {
+        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
+      };
+    } catch (Dali::DaliException e) {
+      {
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
+      };
+    } catch (...) {
+      {
+        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
+      };
+    }
+  }
+
+  jresult = (void *)result;
+  return jresult;
+}
+
+
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_Scrollable_Property_OVERSHOOT_EFFECT_COLOR_get() {
   int jresult ;
   int result;
 
-  result = (int)Dali::Toolkit::ScrollBar::Property::SCROLL_DIRECTION;
+  result = (int)Dali::Toolkit::Scrollable::Property::OVERSHOOT_EFFECT_COLOR;
   jresult = (int)result;
   return jresult;
 }
 
 
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_ScrollBar_Property_INDICATOR_HEIGHT_POLICY_get() {
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_Scrollable_Property_OVERSHOOT_ANIMATION_SPEED_get() {
   int jresult ;
   int result;
 
-  result = (int)Dali::Toolkit::ScrollBar::Property::INDICATOR_HEIGHT_POLICY;
+  result = (int)Dali::Toolkit::Scrollable::Property::OVERSHOOT_ANIMATION_SPEED;
   jresult = (int)result;
   return jresult;
 }
 
 
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_ScrollBar_Property_INDICATOR_FIXED_HEIGHT_get() {
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_Scrollable_Property_OVERSHOOT_ENABLED_get() {
   int jresult ;
   int result;
 
-  result = (int)Dali::Toolkit::ScrollBar::Property::INDICATOR_FIXED_HEIGHT;
+  result = (int)Dali::Toolkit::Scrollable::Property::OVERSHOOT_ENABLED;
   jresult = (int)result;
   return jresult;
 }
 
 
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_ScrollBar_Property_INDICATOR_SHOW_DURATION_get() {
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_Scrollable_Property_OVERSHOOT_SIZE_get() {
   int jresult ;
   int result;
 
-  result = (int)Dali::Toolkit::ScrollBar::Property::INDICATOR_SHOW_DURATION;
+  result = (int)Dali::Toolkit::Scrollable::Property::OVERSHOOT_SIZE;
   jresult = (int)result;
   return jresult;
 }
 
 
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_ScrollBar_Property_INDICATOR_HIDE_DURATION_get() {
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_Scrollable_Property_SCROLL_TO_ALPHA_FUNCTION_get() {
   int jresult ;
   int result;
 
-  result = (int)Dali::Toolkit::ScrollBar::Property::INDICATOR_HIDE_DURATION;
+  result = (int)Dali::Toolkit::Scrollable::Property::SCROLL_TO_ALPHA_FUNCTION;
   jresult = (int)result;
   return jresult;
 }
 
 
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_ScrollBar_Property_SCROLL_POSITION_INTERVALS_get() {
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_Scrollable_Property_SCROLL_RELATIVE_POSITION_get() {
   int jresult ;
   int result;
 
-  result = (int)Dali::Toolkit::ScrollBar::Property::SCROLL_POSITION_INTERVALS;
+  result = (int)Dali::Toolkit::Scrollable::Property::SCROLL_RELATIVE_POSITION;
   jresult = (int)result;
   return jresult;
 }
 
 
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_ScrollBar_Property_INDICATOR_MINIMUM_HEIGHT_get() {
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_Scrollable_Property_SCROLL_POSITION_MIN_get() {
   int jresult ;
   int result;
 
-  result = (int)Dali::Toolkit::ScrollBar::Property::INDICATOR_MINIMUM_HEIGHT;
+  result = (int)Dali::Toolkit::Scrollable::Property::SCROLL_POSITION_MIN;
   jresult = (int)result;
   return jresult;
 }
 
 
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_ScrollBar_Property_INDICATOR_START_PADDING_get() {
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_Scrollable_Property_SCROLL_POSITION_MIN_X_get() {
   int jresult ;
   int result;
 
-  result = (int)Dali::Toolkit::ScrollBar::Property::INDICATOR_START_PADDING;
+  result = (int)Dali::Toolkit::Scrollable::Property::SCROLL_POSITION_MIN_X;
   jresult = (int)result;
   return jresult;
 }
 
 
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_ScrollBar_Property_INDICATOR_END_PADDING_get() {
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_Scrollable_Property_SCROLL_POSITION_MIN_Y_get() {
   int jresult ;
   int result;
 
-  result = (int)Dali::Toolkit::ScrollBar::Property::INDICATOR_END_PADDING;
+  result = (int)Dali::Toolkit::Scrollable::Property::SCROLL_POSITION_MIN_Y;
   jresult = (int)result;
   return jresult;
 }
 
 
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_ScrollBar_Property() {
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_Scrollable_Property_SCROLL_POSITION_MAX_get() {
+  int jresult ;
+  int result;
+
+  result = (int)Dali::Toolkit::Scrollable::Property::SCROLL_POSITION_MAX;
+  jresult = (int)result;
+  return jresult;
+}
+
+
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_Scrollable_Property_SCROLL_POSITION_MAX_X_get() {
+  int jresult ;
+  int result;
+
+  result = (int)Dali::Toolkit::Scrollable::Property::SCROLL_POSITION_MAX_X;
+  jresult = (int)result;
+  return jresult;
+}
+
+
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_Scrollable_Property_SCROLL_POSITION_MAX_Y_get() {
+  int jresult ;
+  int result;
+
+  result = (int)Dali::Toolkit::Scrollable::Property::SCROLL_POSITION_MAX_Y;
+  jresult = (int)result;
+  return jresult;
+}
+
+
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_Scrollable_Property_CAN_SCROLL_VERTICAL_get() {
+  int jresult ;
+  int result;
+
+  result = (int)Dali::Toolkit::Scrollable::Property::CAN_SCROLL_VERTICAL;
+  jresult = (int)result;
+  return jresult;
+}
+
+
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_Scrollable_Property_CAN_SCROLL_HORIZONTAL_get() {
+  int jresult ;
+  int result;
+
+  result = (int)Dali::Toolkit::Scrollable::Property::CAN_SCROLL_HORIZONTAL;
+  jresult = (int)result;
+  return jresult;
+}
+
+
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_Scrollable_Property() {
   void * jresult ;
-  Dali::Toolkit::ScrollBar::Property *result = 0 ;
+  Dali::Toolkit::Scrollable::Property *result = 0 ;
 
   {
     try {
-      result = (Dali::Toolkit::ScrollBar::Property *)new Dali::Toolkit::ScrollBar::Property();
+      result = (Dali::Toolkit::Scrollable::Property *)new Dali::Toolkit::Scrollable::Property();
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -73181,10 +72655,10 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_ScrollBar_Property() {
 }
 
 
-SWIGEXPORT void SWIGSTDCALL CSharp_Dali_delete_ScrollBar_Property(void * jarg1) {
-  Dali::Toolkit::ScrollBar::Property *arg1 = (Dali::Toolkit::ScrollBar::Property *) 0 ;
+SWIGEXPORT void SWIGSTDCALL CSharp_Dali_delete_Scrollable_Property(void * jarg1) {
+  Dali::Toolkit::Scrollable::Property *arg1 = (Dali::Toolkit::Scrollable::Property *) 0 ;
 
-  arg1 = (Dali::Toolkit::ScrollBar::Property *)jarg1;
+  arg1 = (Dali::Toolkit::Scrollable::Property *)jarg1;
   {
     try {
       delete arg1;
@@ -73210,13 +72684,13 @@ SWIGEXPORT void SWIGSTDCALL CSharp_Dali_delete_ScrollBar_Property(void * jarg1)
 }
 
 
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_ScrollBar__SWIG_0() {
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_Scrollable__SWIG_0() {
   void * jresult ;
-  Dali::Toolkit::ScrollBar *result = 0 ;
+  Dali::Toolkit::Scrollable *result = 0 ;
 
   {
     try {
-      result = (Dali::Toolkit::ScrollBar *)new Dali::Toolkit::ScrollBar();
+      result = (Dali::Toolkit::Scrollable *)new Dali::Toolkit::Scrollable();
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -73241,19 +72715,19 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_ScrollBar__SWIG_0() {
 }
 
 
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_ScrollBar__SWIG_1(void * jarg1) {
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_Scrollable__SWIG_1(void * jarg1) {
   void * jresult ;
-  Dali::Toolkit::ScrollBar *arg1 = 0 ;
-  Dali::Toolkit::ScrollBar *result = 0 ;
+  Dali::Toolkit::Scrollable *arg1 = 0 ;
+  Dali::Toolkit::Scrollable *result = 0 ;
 
-  arg1 = (Dali::Toolkit::ScrollBar *)jarg1;
+  arg1 = (Dali::Toolkit::Scrollable *)jarg1;
   if (!arg1) {
-    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::Toolkit::ScrollBar const & type is null", 0);
+    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::Toolkit::Scrollable const & type is null", 0);
     return 0;
   }
   {
     try {
-      result = (Dali::Toolkit::ScrollBar *)new Dali::Toolkit::ScrollBar((Dali::Toolkit::ScrollBar const &)*arg1);
+      result = (Dali::Toolkit::Scrollable *)new Dali::Toolkit::Scrollable((Dali::Toolkit::Scrollable const &)*arg1);
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -73278,21 +72752,21 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_ScrollBar__SWIG_1(void * jarg1) {
 }
 
 
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_ScrollBar_Assign(void * jarg1, void * jarg2) {
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_Scrollable_Assign(void * jarg1, void * jarg2) {
   void * jresult ;
-  Dali::Toolkit::ScrollBar *arg1 = (Dali::Toolkit::ScrollBar *) 0 ;
-  Dali::Toolkit::ScrollBar *arg2 = 0 ;
-  Dali::Toolkit::ScrollBar *result = 0 ;
+  Dali::Toolkit::Scrollable *arg1 = (Dali::Toolkit::Scrollable *) 0 ;
+  Dali::Toolkit::Scrollable *arg2 = 0 ;
+  Dali::Toolkit::Scrollable *result = 0 ;
 
-  arg1 = (Dali::Toolkit::ScrollBar *)jarg1;
-  arg2 = (Dali::Toolkit::ScrollBar *)jarg2;
+  arg1 = (Dali::Toolkit::Scrollable *)jarg1;
+  arg2 = (Dali::Toolkit::Scrollable *)jarg2;
   if (!arg2) {
-    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::Toolkit::ScrollBar const & type is null", 0);
+    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::Toolkit::Scrollable const & type is null", 0);
     return 0;
   }
   {
     try {
-      result = (Dali::Toolkit::ScrollBar *) &(arg1)->operator =((Dali::Toolkit::ScrollBar const &)*arg2);
+      result = (Dali::Toolkit::Scrollable *) &(arg1)->operator =((Dali::Toolkit::Scrollable const &)*arg2);
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -73317,10 +72791,10 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_ScrollBar_Assign(void * jarg1, void *
 }
 
 
-SWIGEXPORT void SWIGSTDCALL CSharp_Dali_delete_ScrollBar(void * jarg1) {
-  Dali::Toolkit::ScrollBar *arg1 = (Dali::Toolkit::ScrollBar *) 0 ;
+SWIGEXPORT void SWIGSTDCALL CSharp_Dali_delete_Scrollable(void * jarg1) {
+  Dali::Toolkit::Scrollable *arg1 = (Dali::Toolkit::Scrollable *) 0 ;
 
-  arg1 = (Dali::Toolkit::ScrollBar *)jarg1;
+  arg1 = (Dali::Toolkit::Scrollable *)jarg1;
   {
     try {
       delete arg1;
@@ -73346,46 +72820,21 @@ SWIGEXPORT void SWIGSTDCALL CSharp_Dali_delete_ScrollBar(void * jarg1) {
 }
 
 
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_ScrollBar_New__SWIG_0(int jarg1) {
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_Scrollable_DownCast(void * jarg1) {
   void * jresult ;
-  Dali::Toolkit::ScrollBar::Direction arg1 ;
-  Dali::Toolkit::ScrollBar result;
+  Dali::BaseHandle arg1 ;
+  Dali::BaseHandle *argp1 ;
+  Dali::Toolkit::Scrollable result;
 
-  arg1 = (Dali::Toolkit::ScrollBar::Direction)jarg1;
-  {
-    try {
-      result = Dali::Toolkit::ScrollBar::New(arg1);
-    } catch (std::out_of_range& e) {
-      {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
-      };
-    } catch (std::exception& e) {
-      {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
-      };
-    } catch (Dali::DaliException e) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
-      };
-    } catch (...) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
-      };
-    }
+  argp1 = (Dali::BaseHandle *)jarg1;
+  if (!argp1) {
+    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null Dali::BaseHandle", 0);
+    return 0;
   }
-
-  jresult = new Dali::Toolkit::ScrollBar((const Dali::Toolkit::ScrollBar &)result);
-  return jresult;
-}
-
-
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_ScrollBar_New__SWIG_1() {
-  void * jresult ;
-  Dali::Toolkit::ScrollBar result;
-
+  arg1 = *argp1;
   {
     try {
-      result = Dali::Toolkit::ScrollBar::New();
+      result = Dali::Toolkit::Scrollable::DownCast(arg1);
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -73405,26 +72854,20 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_ScrollBar_New__SWIG_1() {
     }
   }
 
-  jresult = new Dali::Toolkit::ScrollBar((const Dali::Toolkit::ScrollBar &)result);
+  jresult = new Dali::Toolkit::Scrollable((const Dali::Toolkit::Scrollable &)result);
   return jresult;
 }
 
 
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_ScrollBar_DownCast(void * jarg1) {
-  void * jresult ;
-  Dali::BaseHandle arg1 ;
-  Dali::BaseHandle *argp1 ;
-  Dali::Toolkit::ScrollBar result;
+SWIGEXPORT unsigned int SWIGSTDCALL CSharp_Dali_Scrollable_IsOvershootEnabled(void * jarg1) {
+  unsigned int jresult ;
+  Dali::Toolkit::Scrollable *arg1 = (Dali::Toolkit::Scrollable *) 0 ;
+  bool result;
 
-  argp1 = (Dali::BaseHandle *)jarg1;
-  if (!argp1) {
-    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null Dali::BaseHandle", 0);
-    return 0;
-  }
-  arg1 = *argp1;
+  arg1 = (Dali::Toolkit::Scrollable *)jarg1;
   {
     try {
-      result = Dali::Toolkit::ScrollBar::DownCast(arg1);
+      result = (bool)((Dali::Toolkit::Scrollable const *)arg1)->IsOvershootEnabled();
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -73444,34 +72887,20 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_ScrollBar_DownCast(void * jarg1) {
     }
   }
 
-  jresult = new Dali::Toolkit::ScrollBar((const Dali::Toolkit::ScrollBar &)result);
+  jresult = result;
   return jresult;
 }
 
 
-SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ScrollBar_SetScrollPropertySource(void * jarg1, void * jarg2, int jarg3, int jarg4, int jarg5, int jarg6) {
-  Dali::Toolkit::ScrollBar *arg1 = (Dali::Toolkit::ScrollBar *) 0 ;
-  Dali::Handle arg2 ;
-  Dali::Property::Index arg3 ;
-  Dali::Property::Index arg4 ;
-  Dali::Property::Index arg5 ;
-  Dali::Property::Index arg6 ;
-  Dali::Handle *argp2 ;
+SWIGEXPORT void SWIGSTDCALL CSharp_Dali_Scrollable_SetOvershootEnabled(void * jarg1, unsigned int jarg2) {
+  Dali::Toolkit::Scrollable *arg1 = (Dali::Toolkit::Scrollable *) 0 ;
+  bool arg2 ;
 
-  arg1 = (Dali::Toolkit::ScrollBar *)jarg1;
-  argp2 = (Dali::Handle *)jarg2;
-  if (!argp2) {
-    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null Dali::Handle", 0);
-    return ;
-  }
-  arg2 = *argp2;
-  arg3 = (Dali::Property::Index)jarg3;
-  arg4 = (Dali::Property::Index)jarg4;
-  arg5 = (Dali::Property::Index)jarg5;
-  arg6 = (Dali::Property::Index)jarg6;
+  arg1 = (Dali::Toolkit::Scrollable *)jarg1;
+  arg2 = jarg2 ? true : false;
   {
     try {
-      (arg1)->SetScrollPropertySource(arg2,arg3,arg4,arg5,arg6);
+      (arg1)->SetOvershootEnabled(arg2);
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
@@ -73494,21 +72923,19 @@ SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ScrollBar_SetScrollPropertySource(void *
 }
 
 
-SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ScrollBar_SetScrollIndicator(void * jarg1, void * jarg2) {
-  Dali::Toolkit::ScrollBar *arg1 = (Dali::Toolkit::ScrollBar *) 0 ;
-  Dali::Actor arg2 ;
-  Dali::Actor *argp2 ;
+SWIGEXPORT void SWIGSTDCALL CSharp_Dali_Scrollable_SetOvershootEffectColor(void * jarg1, void * jarg2) {
+  Dali::Toolkit::Scrollable *arg1 = (Dali::Toolkit::Scrollable *) 0 ;
+  Dali::Vector4 *arg2 = 0 ;
 
-  arg1 = (Dali::Toolkit::ScrollBar *)jarg1;
-  argp2 = (Dali::Actor *)jarg2;
-  if (!argp2) {
-    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null Dali::Actor", 0);
+  arg1 = (Dali::Toolkit::Scrollable *)jarg1;
+  arg2 = (Dali::Vector4 *)jarg2;
+  if (!arg2) {
+    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::Vector4 const & type is null", 0);
     return ;
   }
-  arg2 = *argp2;
   {
     try {
-      (arg1)->SetScrollIndicator(arg2);
+      (arg1)->SetOvershootEffectColor((Dali::Vector4 const &)*arg2);
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
@@ -73531,15 +72958,15 @@ SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ScrollBar_SetScrollIndicator(void * jarg
 }
 
 
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_ScrollBar_GetScrollIndicator(void * jarg1) {
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_Scrollable_GetOvershootEffectColor(void * jarg1) {
   void * jresult ;
-  Dali::Toolkit::ScrollBar *arg1 = (Dali::Toolkit::ScrollBar *) 0 ;
-  Dali::Actor result;
+  Dali::Toolkit::Scrollable *arg1 = (Dali::Toolkit::Scrollable *) 0 ;
+  Dali::Vector4 result;
 
-  arg1 = (Dali::Toolkit::ScrollBar *)jarg1;
+  arg1 = (Dali::Toolkit::Scrollable *)jarg1;
   {
     try {
-      result = (arg1)->GetScrollIndicator();
+      result = ((Dali::Toolkit::Scrollable const *)arg1)->GetOvershootEffectColor();
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -73559,24 +72986,20 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_ScrollBar_GetScrollIndicator(void * ja
     }
   }
 
-  jresult = new Dali::Actor((const Dali::Actor &)result);
+  jresult = new Dali::Vector4((const Dali::Vector4 &)result);
   return jresult;
 }
 
 
-SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ScrollBar_SetScrollPositionIntervals(void * jarg1, void * jarg2) {
-  Dali::Toolkit::ScrollBar *arg1 = (Dali::Toolkit::ScrollBar *) 0 ;
-  Dali::Vector< float,TypeTraits< float >::IS_TRIVIAL_TYPE==true > *arg2 = 0 ;
+SWIGEXPORT void SWIGSTDCALL CSharp_Dali_Scrollable_SetOvershootAnimationSpeed(void * jarg1, float jarg2) {
+  Dali::Toolkit::Scrollable *arg1 = (Dali::Toolkit::Scrollable *) 0 ;
+  float arg2 ;
 
-  arg1 = (Dali::Toolkit::ScrollBar *)jarg1;
-  arg2 = (Dali::Vector< float,TypeTraits< float >::IS_TRIVIAL_TYPE==true > *)jarg2;
-  if (!arg2) {
-    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::Vector< float,TypeTraits< float >::IS_TRIVIAL_TYPE==true > const & type is null", 0);
-    return ;
-  }
+  arg1 = (Dali::Toolkit::Scrollable *)jarg1;
+  arg2 = (float)jarg2;
   {
     try {
-      (arg1)->SetScrollPositionIntervals((Dali::Vector< float,TypeTraits< float >::IS_TRIVIAL_TYPE==true > const &)*arg2);
+      (arg1)->SetOvershootAnimationSpeed(arg2);
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
@@ -73599,14 +73022,15 @@ SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ScrollBar_SetScrollPositionIntervals(voi
 }
 
 
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_ScrollBar_GetScrollPositionIntervals(void * jarg1) {
-  void * jresult ;
-  Dali::Toolkit::ScrollBar *arg1 = (Dali::Toolkit::ScrollBar *) 0 ;
+SWIGEXPORT float SWIGSTDCALL CSharp_Dali_Scrollable_GetOvershootAnimationSpeed(void * jarg1) {
+  float jresult ;
+  Dali::Toolkit::Scrollable *arg1 = (Dali::Toolkit::Scrollable *) 0 ;
+  float result;
 
-  arg1 = (Dali::Toolkit::ScrollBar *)jarg1;
+  arg1 = (Dali::Toolkit::Scrollable *)jarg1;
   {
     try {
-      jresult = new Dali::Vector< float,TypeTraits< float >::IS_TRIVIAL_TYPE==true >((const Dali::Vector< float,TypeTraits< float >::IS_TRIVIAL_TYPE==true > &)(((Dali::Toolkit::ScrollBar const *)arg1)->GetScrollPositionIntervals()));
+      result = (float)((Dali::Toolkit::Scrollable const *)arg1)->GetOvershootAnimationSpeed();
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -73615,56 +73039,31 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_ScrollBar_GetScrollPositionIntervals(v
       {
         SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
       };
-    } catch (...) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
-      };
-    }
-  }
-  return jresult;
-}
-
-
-SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ScrollBar_SetScrollDirection(void * jarg1, int jarg2) {
-  Dali::Toolkit::ScrollBar *arg1 = (Dali::Toolkit::ScrollBar *) 0 ;
-  Dali::Toolkit::ScrollBar::Direction arg2 ;
-
-  arg1 = (Dali::Toolkit::ScrollBar *)jarg1;
-  arg2 = (Dali::Toolkit::ScrollBar::Direction)jarg2;
-  {
-    try {
-      (arg1)->SetScrollDirection(arg2);
-    } catch (std::out_of_range& e) {
-      {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
-      };
-    } catch (std::exception& e) {
-      {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return ;
-      };
     } catch (Dali::DaliException e) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return ;
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
       };
     } catch (...) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ;
+        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
       };
     }
   }
 
+  jresult = result;
+  return jresult;
 }
 
 
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_ScrollBar_GetScrollDirection(void * jarg1) {
-  int jresult ;
-  Dali::Toolkit::ScrollBar *arg1 = (Dali::Toolkit::ScrollBar *) 0 ;
-  Dali::Toolkit::ScrollBar::Direction result;
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_Scrollable_ScrollStartedSignal(void * jarg1) {
+  void * jresult ;
+  Dali::Toolkit::Scrollable *arg1 = (Dali::Toolkit::Scrollable *) 0 ;
+  Dali::Toolkit::Scrollable::ScrollStartedSignalType *result = 0 ;
 
-  arg1 = (Dali::Toolkit::ScrollBar *)jarg1;
+  arg1 = (Dali::Toolkit::Scrollable *)jarg1;
   {
     try {
-      result = (Dali::Toolkit::ScrollBar::Direction)((Dali::Toolkit::ScrollBar const *)arg1)->GetScrollDirection();
+      result = (Dali::Toolkit::Scrollable::ScrollStartedSignalType *) &(arg1)->ScrollStartedSignal();
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -73684,51 +73083,53 @@ SWIGEXPORT int SWIGSTDCALL CSharp_Dali_ScrollBar_GetScrollDirection(void * jarg1
     }
   }
 
-  jresult = (int)result;
+  jresult = (void *)result;
   return jresult;
 }
 
 
-SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ScrollBar_SetIndicatorHeightPolicy(void * jarg1, int jarg2) {
-  Dali::Toolkit::ScrollBar *arg1 = (Dali::Toolkit::ScrollBar *) 0 ;
-  Dali::Toolkit::ScrollBar::IndicatorHeightPolicy arg2 ;
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_Scrollable_ScrollUpdatedSignal(void * jarg1) {
+  void * jresult ;
+  Dali::Toolkit::Scrollable *arg1 = (Dali::Toolkit::Scrollable *) 0 ;
+  Dali::Toolkit::Scrollable::ScrollUpdatedSignalType *result = 0 ;
 
-  arg1 = (Dali::Toolkit::ScrollBar *)jarg1;
-  arg2 = (Dali::Toolkit::ScrollBar::IndicatorHeightPolicy)jarg2;
+  arg1 = (Dali::Toolkit::Scrollable *)jarg1;
   {
     try {
-      (arg1)->SetIndicatorHeightPolicy(arg2);
+      result = (Dali::Toolkit::Scrollable::ScrollUpdatedSignalType *) &(arg1)->ScrollUpdatedSignal();
     } catch (std::out_of_range& e) {
       {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
+        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
       };
     } catch (std::exception& e) {
       {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return ;
+        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
       };
     } catch (Dali::DaliException e) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return ;
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
       };
     } catch (...) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ;
+        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
       };
     }
   }
 
+  jresult = (void *)result;
+  return jresult;
 }
 
 
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_ScrollBar_GetIndicatorHeightPolicy(void * jarg1) {
-  int jresult ;
-  Dali::Toolkit::ScrollBar *arg1 = (Dali::Toolkit::ScrollBar *) 0 ;
-  Dali::Toolkit::ScrollBar::IndicatorHeightPolicy result;
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_Scrollable_ScrollCompletedSignal(void * jarg1) {
+  void * jresult ;
+  Dali::Toolkit::Scrollable *arg1 = (Dali::Toolkit::Scrollable *) 0 ;
+  Dali::Toolkit::Scrollable::ScrollCompletedSignalType *result = 0 ;
 
-  arg1 = (Dali::Toolkit::ScrollBar *)jarg1;
+  arg1 = (Dali::Toolkit::Scrollable *)jarg1;
   {
     try {
-      result = (Dali::Toolkit::ScrollBar::IndicatorHeightPolicy)((Dali::Toolkit::ScrollBar const *)arg1)->GetIndicatorHeightPolicy();
+      result = (Dali::Toolkit::Scrollable::ScrollCompletedSignalType *) &(arg1)->ScrollCompletedSignal();
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -73748,51 +73149,53 @@ SWIGEXPORT int SWIGSTDCALL CSharp_Dali_ScrollBar_GetIndicatorHeightPolicy(void *
     }
   }
 
-  jresult = (int)result;
+  jresult = (void *)result;
   return jresult;
 }
 
 
-SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ScrollBar_SetIndicatorFixedHeight(void * jarg1, float jarg2) {
-  Dali::Toolkit::ScrollBar *arg1 = (Dali::Toolkit::ScrollBar *) 0 ;
-  float arg2 ;
+SWIGEXPORT unsigned int SWIGSTDCALL CSharp_Dali_IsVertical(int jarg1) {
+  unsigned int jresult ;
+  Dali::Toolkit::ControlOrientation::Type arg1 ;
+  bool result;
 
-  arg1 = (Dali::Toolkit::ScrollBar *)jarg1;
-  arg2 = (float)jarg2;
+  arg1 = (Dali::Toolkit::ControlOrientation::Type)jarg1;
   {
     try {
-      (arg1)->SetIndicatorFixedHeight(arg2);
+      result = (bool)Dali::Toolkit::IsVertical(arg1);
     } catch (std::out_of_range& e) {
       {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
+        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
       };
     } catch (std::exception& e) {
       {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return ;
+        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
       };
     } catch (Dali::DaliException e) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return ;
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
       };
     } catch (...) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ;
+        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
       };
     }
   }
 
+  jresult = result;
+  return jresult;
 }
 
 
-SWIGEXPORT float SWIGSTDCALL CSharp_Dali_ScrollBar_GetIndicatorFixedHeight(void * jarg1) {
-  float jresult ;
-  Dali::Toolkit::ScrollBar *arg1 = (Dali::Toolkit::ScrollBar *) 0 ;
-  float result;
+SWIGEXPORT unsigned int SWIGSTDCALL CSharp_Dali_IsHorizontal(int jarg1) {
+  unsigned int jresult ;
+  Dali::Toolkit::ControlOrientation::Type arg1 ;
+  bool result;
 
-  arg1 = (Dali::Toolkit::ScrollBar *)jarg1;
+  arg1 = (Dali::Toolkit::ControlOrientation::Type)jarg1;
   {
     try {
-      result = (float)((Dali::Toolkit::ScrollBar const *)arg1)->GetIndicatorFixedHeight();
+      result = (bool)Dali::Toolkit::IsHorizontal(arg1);
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -73817,46 +73220,54 @@ SWIGEXPORT float SWIGSTDCALL CSharp_Dali_ScrollBar_GetIndicatorFixedHeight(void
 }
 
 
-SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ScrollBar_SetIndicatorShowDuration(void * jarg1, float jarg2) {
-  Dali::Toolkit::ScrollBar *arg1 = (Dali::Toolkit::ScrollBar *) 0 ;
-  float arg2 ;
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_ItemRange__SWIG_0(unsigned int jarg1, unsigned int jarg2) {
+  void * jresult ;
+  unsigned int arg1 ;
+  unsigned int arg2 ;
+  Dali::Toolkit::ItemRange *result = 0 ;
 
-  arg1 = (Dali::Toolkit::ScrollBar *)jarg1;
-  arg2 = (float)jarg2;
+  arg1 = (unsigned int)jarg1;
+  arg2 = (unsigned int)jarg2;
   {
     try {
-      (arg1)->SetIndicatorShowDuration(arg2);
+      result = (Dali::Toolkit::ItemRange *)new Dali::Toolkit::ItemRange(arg1,arg2);
     } catch (std::out_of_range& e) {
       {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
+        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
       };
     } catch (std::exception& e) {
       {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return ;
+        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
       };
     } catch (Dali::DaliException e) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return ;
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
       };
     } catch (...) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ;
+        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
       };
     }
   }
 
+  jresult = (void *)result;
+  return jresult;
 }
 
 
-SWIGEXPORT float SWIGSTDCALL CSharp_Dali_ScrollBar_GetIndicatorShowDuration(void * jarg1) {
-  float jresult ;
-  Dali::Toolkit::ScrollBar *arg1 = (Dali::Toolkit::ScrollBar *) 0 ;
-  float result;
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_ItemRange__SWIG_1(void * jarg1) {
+  void * jresult ;
+  Dali::Toolkit::ItemRange *arg1 = 0 ;
+  Dali::Toolkit::ItemRange *result = 0 ;
 
-  arg1 = (Dali::Toolkit::ScrollBar *)jarg1;
+  arg1 = (Dali::Toolkit::ItemRange *)jarg1;
+  if (!arg1) {
+    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::Toolkit::ItemRange const & type is null", 0);
+    return 0;
+  }
   {
     try {
-      result = (float)((Dali::Toolkit::ScrollBar const *)arg1)->GetIndicatorShowDuration();
+      result = (Dali::Toolkit::ItemRange *)new Dali::Toolkit::ItemRange((Dali::Toolkit::ItemRange const &)*arg1);
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -73876,51 +73287,61 @@ SWIGEXPORT float SWIGSTDCALL CSharp_Dali_ScrollBar_GetIndicatorShowDuration(void
     }
   }
 
-  jresult = result;
+  jresult = (void *)result;
   return jresult;
 }
 
 
-SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ScrollBar_SetIndicatorHideDuration(void * jarg1, float jarg2) {
-  Dali::Toolkit::ScrollBar *arg1 = (Dali::Toolkit::ScrollBar *) 0 ;
-  float arg2 ;
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_ItemRange_Assign(void * jarg1, void * jarg2) {
+  void * jresult ;
+  Dali::Toolkit::ItemRange *arg1 = (Dali::Toolkit::ItemRange *) 0 ;
+  Dali::Toolkit::ItemRange *arg2 = 0 ;
+  Dali::Toolkit::ItemRange *result = 0 ;
 
-  arg1 = (Dali::Toolkit::ScrollBar *)jarg1;
-  arg2 = (float)jarg2;
+  arg1 = (Dali::Toolkit::ItemRange *)jarg1;
+  arg2 = (Dali::Toolkit::ItemRange *)jarg2;
+  if (!arg2) {
+    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::Toolkit::ItemRange const & type is null", 0);
+    return 0;
+  }
   {
     try {
-      (arg1)->SetIndicatorHideDuration(arg2);
+      result = (Dali::Toolkit::ItemRange *) &(arg1)->operator =((Dali::Toolkit::ItemRange const &)*arg2);
     } catch (std::out_of_range& e) {
       {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
+        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
       };
     } catch (std::exception& e) {
       {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return ;
+        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
       };
     } catch (Dali::DaliException e) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return ;
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
       };
     } catch (...) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ;
+        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
       };
     }
   }
 
+  jresult = (void *)result;
+  return jresult;
 }
 
 
-SWIGEXPORT float SWIGSTDCALL CSharp_Dali_ScrollBar_GetIndicatorHideDuration(void * jarg1) {
-  float jresult ;
-  Dali::Toolkit::ScrollBar *arg1 = (Dali::Toolkit::ScrollBar *) 0 ;
-  float result;
+SWIGEXPORT unsigned int SWIGSTDCALL CSharp_Dali_ItemRange_Within(void * jarg1, unsigned int jarg2) {
+  unsigned int jresult ;
+  Dali::Toolkit::ItemRange *arg1 = (Dali::Toolkit::ItemRange *) 0 ;
+  unsigned int arg2 ;
+  bool result;
 
-  arg1 = (Dali::Toolkit::ScrollBar *)jarg1;
+  arg1 = (Dali::Toolkit::ItemRange *)jarg1;
+  arg2 = (unsigned int)jarg2;
   {
     try {
-      result = (float)((Dali::Toolkit::ScrollBar const *)arg1)->GetIndicatorHideDuration();
+      result = (bool)(arg1)->Within(arg2);
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -73945,42 +73366,96 @@ SWIGEXPORT float SWIGSTDCALL CSharp_Dali_ScrollBar_GetIndicatorHideDuration(void
 }
 
 
-SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ScrollBar_ShowIndicator(void * jarg1) {
-  Dali::Toolkit::ScrollBar *arg1 = (Dali::Toolkit::ScrollBar *) 0 ;
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_ItemRange_Intersection(void * jarg1, void * jarg2) {
+  void * jresult ;
+  Dali::Toolkit::ItemRange *arg1 = (Dali::Toolkit::ItemRange *) 0 ;
+  Dali::Toolkit::ItemRange *arg2 = 0 ;
+  SwigValueWrapper< Dali::Toolkit::ItemRange > result;
 
-  arg1 = (Dali::Toolkit::ScrollBar *)jarg1;
+  arg1 = (Dali::Toolkit::ItemRange *)jarg1;
+  arg2 = (Dali::Toolkit::ItemRange *)jarg2;
+  if (!arg2) {
+    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::Toolkit::ItemRange const & type is null", 0);
+    return 0;
+  }
   {
     try {
-      (arg1)->ShowIndicator();
+      result = (arg1)->Intersection((Dali::Toolkit::ItemRange const &)*arg2);
     } catch (std::out_of_range& e) {
       {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
+        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
       };
     } catch (std::exception& e) {
       {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return ;
+        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
       };
     } catch (Dali::DaliException e) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return ;
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
       };
     } catch (...) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ;
+        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
       };
     }
   }
 
+  jresult = new Dali::Toolkit::ItemRange((const Dali::Toolkit::ItemRange &)result);
+  return jresult;
 }
 
 
-SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ScrollBar_HideIndicator(void * jarg1) {
-  Dali::Toolkit::ScrollBar *arg1 = (Dali::Toolkit::ScrollBar *) 0 ;
+SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ItemRange_begin_set(void * jarg1, unsigned int jarg2) {
+  Dali::Toolkit::ItemRange *arg1 = (Dali::Toolkit::ItemRange *) 0 ;
+  unsigned int arg2 ;
 
-  arg1 = (Dali::Toolkit::ScrollBar *)jarg1;
+  arg1 = (Dali::Toolkit::ItemRange *)jarg1;
+  arg2 = (unsigned int)jarg2;
+  if (arg1) (arg1)->begin = arg2;
+}
+
+
+SWIGEXPORT unsigned int SWIGSTDCALL CSharp_Dali_ItemRange_begin_get(void * jarg1) {
+  unsigned int jresult ;
+  Dali::Toolkit::ItemRange *arg1 = (Dali::Toolkit::ItemRange *) 0 ;
+  unsigned int result;
+
+  arg1 = (Dali::Toolkit::ItemRange *)jarg1;
+  result = (unsigned int) ((arg1)->begin);
+  jresult = result;
+  return jresult;
+}
+
+
+SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ItemRange_end_set(void * jarg1, unsigned int jarg2) {
+  Dali::Toolkit::ItemRange *arg1 = (Dali::Toolkit::ItemRange *) 0 ;
+  unsigned int arg2 ;
+
+  arg1 = (Dali::Toolkit::ItemRange *)jarg1;
+  arg2 = (unsigned int)jarg2;
+  if (arg1) (arg1)->end = arg2;
+}
+
+
+SWIGEXPORT unsigned int SWIGSTDCALL CSharp_Dali_ItemRange_end_get(void * jarg1) {
+  unsigned int jresult ;
+  Dali::Toolkit::ItemRange *arg1 = (Dali::Toolkit::ItemRange *) 0 ;
+  unsigned int result;
+
+  arg1 = (Dali::Toolkit::ItemRange *)jarg1;
+  result = (unsigned int) ((arg1)->end);
+  jresult = result;
+  return jresult;
+}
+
+
+SWIGEXPORT void SWIGSTDCALL CSharp_Dali_delete_ItemRange(void * jarg1) {
+  Dali::Toolkit::ItemRange *arg1 = (Dali::Toolkit::ItemRange *) 0 ;
+
+  arg1 = (Dali::Toolkit::ItemRange *)jarg1;
   {
     try {
-      (arg1)->HideIndicator();
+      delete arg1;
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
@@ -74003,219 +73478,75 @@ SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ScrollBar_HideIndicator(void * jarg1) {
 }
 
 
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_ScrollBar_PanFinishedSignal(void * jarg1) {
-  void * jresult ;
-  Dali::Toolkit::ScrollBar *arg1 = (Dali::Toolkit::ScrollBar *) 0 ;
-  Dali::Toolkit::ScrollBar::PanFinishedSignalType *result = 0 ;
+SWIGEXPORT void SWIGSTDCALL CSharp_Dali_delete_ItemLayout(void * jarg1) {
+  Dali::Toolkit::ItemLayout *arg1 = (Dali::Toolkit::ItemLayout *) 0 ;
 
-  arg1 = (Dali::Toolkit::ScrollBar *)jarg1;
+  arg1 = (Dali::Toolkit::ItemLayout *)jarg1;
   {
     try {
-      result = (Dali::Toolkit::ScrollBar::PanFinishedSignalType *) &(arg1)->PanFinishedSignal();
+      delete arg1;
     } catch (std::out_of_range& e) {
       {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
+        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
       };
     } catch (std::exception& e) {
       {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
+        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return ;
       };
     } catch (Dali::DaliException e) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return ;
       };
     } catch (...) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
+        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ;
       };
     }
   }
 
-  jresult = (void *)result;
-  return jresult;
 }
 
 
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_ScrollBar_ScrollPositionIntervalReachedSignal(void * jarg1) {
-  void * jresult ;
-  Dali::Toolkit::ScrollBar *arg1 = (Dali::Toolkit::ScrollBar *) 0 ;
-  Dali::Toolkit::ScrollBar::ScrollPositionIntervalReachedSignalType *result = 0 ;
+SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ItemLayout_SetOrientation(void * jarg1, int jarg2) {
+  Dali::Toolkit::ItemLayout *arg1 = (Dali::Toolkit::ItemLayout *) 0 ;
+  Dali::Toolkit::ControlOrientation::Type arg2 ;
 
-  arg1 = (Dali::Toolkit::ScrollBar *)jarg1;
+  arg1 = (Dali::Toolkit::ItemLayout *)jarg1;
+  arg2 = (Dali::Toolkit::ControlOrientation::Type)jarg2;
   {
     try {
-      result = (Dali::Toolkit::ScrollBar::ScrollPositionIntervalReachedSignalType *) &(arg1)->ScrollPositionIntervalReachedSignal();
+      (arg1)->SetOrientation(arg2);
     } catch (std::out_of_range& e) {
       {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
+        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
       };
     } catch (std::exception& e) {
       {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
+        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return ;
       };
     } catch (Dali::DaliException e) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return ;
       };
     } catch (...) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
+        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ;
       };
     }
   }
 
-  jresult = (void *)result;
-  return jresult;
-}
-
-
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_Scrollable_Property_OVERSHOOT_EFFECT_COLOR_get() {
-  int jresult ;
-  int result;
-
-  result = (int)Dali::Toolkit::Scrollable::Property::OVERSHOOT_EFFECT_COLOR;
-  jresult = (int)result;
-  return jresult;
-}
-
-
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_Scrollable_Property_OVERSHOOT_ANIMATION_SPEED_get() {
-  int jresult ;
-  int result;
-
-  result = (int)Dali::Toolkit::Scrollable::Property::OVERSHOOT_ANIMATION_SPEED;
-  jresult = (int)result;
-  return jresult;
-}
-
-
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_Scrollable_Property_OVERSHOOT_ENABLED_get() {
-  int jresult ;
-  int result;
-
-  result = (int)Dali::Toolkit::Scrollable::Property::OVERSHOOT_ENABLED;
-  jresult = (int)result;
-  return jresult;
-}
-
-
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_Scrollable_Property_OVERSHOOT_SIZE_get() {
-  int jresult ;
-  int result;
-
-  result = (int)Dali::Toolkit::Scrollable::Property::OVERSHOOT_SIZE;
-  jresult = (int)result;
-  return jresult;
-}
-
-
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_Scrollable_Property_SCROLL_TO_ALPHA_FUNCTION_get() {
-  int jresult ;
-  int result;
-
-  result = (int)Dali::Toolkit::Scrollable::Property::SCROLL_TO_ALPHA_FUNCTION;
-  jresult = (int)result;
-  return jresult;
-}
-
-
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_Scrollable_Property_SCROLL_RELATIVE_POSITION_get() {
-  int jresult ;
-  int result;
-
-  result = (int)Dali::Toolkit::Scrollable::Property::SCROLL_RELATIVE_POSITION;
-  jresult = (int)result;
-  return jresult;
-}
-
-
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_Scrollable_Property_SCROLL_POSITION_MIN_get() {
-  int jresult ;
-  int result;
-
-  result = (int)Dali::Toolkit::Scrollable::Property::SCROLL_POSITION_MIN;
-  jresult = (int)result;
-  return jresult;
-}
-
-
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_Scrollable_Property_SCROLL_POSITION_MIN_X_get() {
-  int jresult ;
-  int result;
-
-  result = (int)Dali::Toolkit::Scrollable::Property::SCROLL_POSITION_MIN_X;
-  jresult = (int)result;
-  return jresult;
-}
-
-
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_Scrollable_Property_SCROLL_POSITION_MIN_Y_get() {
-  int jresult ;
-  int result;
-
-  result = (int)Dali::Toolkit::Scrollable::Property::SCROLL_POSITION_MIN_Y;
-  jresult = (int)result;
-  return jresult;
-}
-
-
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_Scrollable_Property_SCROLL_POSITION_MAX_get() {
-  int jresult ;
-  int result;
-
-  result = (int)Dali::Toolkit::Scrollable::Property::SCROLL_POSITION_MAX;
-  jresult = (int)result;
-  return jresult;
-}
-
-
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_Scrollable_Property_SCROLL_POSITION_MAX_X_get() {
-  int jresult ;
-  int result;
-
-  result = (int)Dali::Toolkit::Scrollable::Property::SCROLL_POSITION_MAX_X;
-  jresult = (int)result;
-  return jresult;
-}
-
-
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_Scrollable_Property_SCROLL_POSITION_MAX_Y_get() {
-  int jresult ;
-  int result;
-
-  result = (int)Dali::Toolkit::Scrollable::Property::SCROLL_POSITION_MAX_Y;
-  jresult = (int)result;
-  return jresult;
-}
-
-
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_Scrollable_Property_CAN_SCROLL_VERTICAL_get() {
-  int jresult ;
-  int result;
-
-  result = (int)Dali::Toolkit::Scrollable::Property::CAN_SCROLL_VERTICAL;
-  jresult = (int)result;
-  return jresult;
 }
 
 
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_Scrollable_Property_CAN_SCROLL_HORIZONTAL_get() {
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_ItemLayout_GetOrientation(void * jarg1) {
   int jresult ;
-  int result;
-
-  result = (int)Dali::Toolkit::Scrollable::Property::CAN_SCROLL_HORIZONTAL;
-  jresult = (int)result;
-  return jresult;
-}
-
-
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_Scrollable_Property() {
-  void * jresult ;
-  Dali::Toolkit::Scrollable::Property *result = 0 ;
+  Dali::Toolkit::ItemLayout *arg1 = (Dali::Toolkit::ItemLayout *) 0 ;
+  Dali::Toolkit::ControlOrientation::Type result;
 
+  arg1 = (Dali::Toolkit::ItemLayout *)jarg1;
   {
     try {
-      result = (Dali::Toolkit::Scrollable::Property *)new Dali::Toolkit::Scrollable::Property();
+      result = (Dali::Toolkit::ControlOrientation::Type)((Dali::Toolkit::ItemLayout const *)arg1)->GetOrientation();
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -74235,18 +73566,24 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_Scrollable_Property() {
     }
   }
 
-  jresult = (void *)result;
+  jresult = (int)result;
   return jresult;
 }
 
 
-SWIGEXPORT void SWIGSTDCALL CSharp_Dali_delete_Scrollable_Property(void * jarg1) {
-  Dali::Toolkit::Scrollable::Property *arg1 = (Dali::Toolkit::Scrollable::Property *) 0 ;
+SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ItemLayout_SetLayoutProperties(void * jarg1, void * jarg2) {
+  Dali::Toolkit::ItemLayout *arg1 = (Dali::Toolkit::ItemLayout *) 0 ;
+  Dali::Property::Map *arg2 = 0 ;
 
-  arg1 = (Dali::Toolkit::Scrollable::Property *)jarg1;
+  arg1 = (Dali::Toolkit::ItemLayout *)jarg1;
+  arg2 = (Dali::Property::Map *)jarg2;
+  if (!arg2) {
+    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::Property::Map const & type is null", 0);
+    return ;
+  }
   {
     try {
-      delete arg1;
+      (arg1)->SetLayoutProperties((Dali::Property::Map const &)*arg2);
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
@@ -74269,13 +73606,15 @@ SWIGEXPORT void SWIGSTDCALL CSharp_Dali_delete_Scrollable_Property(void * jarg1)
 }
 
 
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_Scrollable__SWIG_0() {
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_ItemLayout_GetLayoutProperties(void * jarg1) {
   void * jresult ;
-  Dali::Toolkit::Scrollable *result = 0 ;
+  Dali::Toolkit::ItemLayout *arg1 = (Dali::Toolkit::ItemLayout *) 0 ;
+  Dali::Property::Map result;
 
+  arg1 = (Dali::Toolkit::ItemLayout *)jarg1;
   {
     try {
-      result = (Dali::Toolkit::Scrollable *)new Dali::Toolkit::Scrollable();
+      result = (arg1)->GetLayoutProperties();
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -74295,131 +73634,143 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_Scrollable__SWIG_0() {
     }
   }
 
-  jresult = (void *)result;
+  jresult = new Dali::Property::Map((const Dali::Property::Map &)result);
   return jresult;
 }
 
 
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_Scrollable__SWIG_1(void * jarg1) {
-  void * jresult ;
-  Dali::Toolkit::Scrollable *arg1 = 0 ;
-  Dali::Toolkit::Scrollable *result = 0 ;
+SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ItemLayout_GetItemSize(void * jarg1, unsigned int jarg2, void * jarg3, void * jarg4) {
+  Dali::Toolkit::ItemLayout *arg1 = (Dali::Toolkit::ItemLayout *) 0 ;
+  unsigned int arg2 ;
+  Dali::Vector3 *arg3 = 0 ;
+  Dali::Vector3 *arg4 = 0 ;
 
-  arg1 = (Dali::Toolkit::Scrollable *)jarg1;
-  if (!arg1) {
-    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::Toolkit::Scrollable const & type is null", 0);
-    return 0;
+  arg1 = (Dali::Toolkit::ItemLayout *)jarg1;
+  arg2 = (unsigned int)jarg2;
+  arg3 = (Dali::Vector3 *)jarg3;
+  if (!arg3) {
+    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::Vector3 const & type is null", 0);
+    return ;
+  }
+  arg4 = (Dali::Vector3 *)jarg4;
+  if (!arg4) {
+    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::Vector3 & type is null", 0);
+    return ;
   }
   {
     try {
-      result = (Dali::Toolkit::Scrollable *)new Dali::Toolkit::Scrollable((Dali::Toolkit::Scrollable const &)*arg1);
+      ((Dali::Toolkit::ItemLayout const *)arg1)->GetItemSize(arg2,(Dali::Vector3 const &)*arg3,*arg4);
     } catch (std::out_of_range& e) {
       {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
+        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
       };
     } catch (std::exception& e) {
       {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
+        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return ;
       };
     } catch (Dali::DaliException e) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return ;
       };
     } catch (...) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
+        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ;
       };
     }
   }
 
-  jresult = (void *)result;
-  return jresult;
 }
 
 
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_Scrollable_Assign(void * jarg1, void * jarg2) {
-  void * jresult ;
-  Dali::Toolkit::Scrollable *arg1 = (Dali::Toolkit::Scrollable *) 0 ;
-  Dali::Toolkit::Scrollable *arg2 = 0 ;
-  Dali::Toolkit::Scrollable *result = 0 ;
+SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ItemLayout_SetItemSize(void * jarg1, void * jarg2) {
+  Dali::Toolkit::ItemLayout *arg1 = (Dali::Toolkit::ItemLayout *) 0 ;
+  Dali::Vector3 *arg2 = 0 ;
 
-  arg1 = (Dali::Toolkit::Scrollable *)jarg1;
-  arg2 = (Dali::Toolkit::Scrollable *)jarg2;
+  arg1 = (Dali::Toolkit::ItemLayout *)jarg1;
+  arg2 = (Dali::Vector3 *)jarg2;
   if (!arg2) {
-    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::Toolkit::Scrollable const & type is null", 0);
-    return 0;
+    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::Vector3 const & type is null", 0);
+    return ;
   }
   {
     try {
-      result = (Dali::Toolkit::Scrollable *) &(arg1)->operator =((Dali::Toolkit::Scrollable const &)*arg2);
+      (arg1)->SetItemSize((Dali::Vector3 const &)*arg2);
     } catch (std::out_of_range& e) {
       {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
+        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
       };
     } catch (std::exception& e) {
       {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
+        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return ;
       };
     } catch (Dali::DaliException e) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return ;
       };
     } catch (...) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
+        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ;
       };
     }
   }
 
-  jresult = (void *)result;
-  return jresult;
 }
 
 
-SWIGEXPORT void SWIGSTDCALL CSharp_Dali_delete_Scrollable(void * jarg1) {
-  Dali::Toolkit::Scrollable *arg1 = (Dali::Toolkit::Scrollable *) 0 ;
+SWIGEXPORT float SWIGSTDCALL CSharp_Dali_ItemLayout_GetMinimumLayoutPosition(void * jarg1, unsigned int jarg2, void * jarg3) {
+  float jresult ;
+  Dali::Toolkit::ItemLayout *arg1 = (Dali::Toolkit::ItemLayout *) 0 ;
+  unsigned int arg2 ;
+  Dali::Vector3 arg3 ;
+  Dali::Vector3 *argp3 ;
+  float result;
 
-  arg1 = (Dali::Toolkit::Scrollable *)jarg1;
+  arg1 = (Dali::Toolkit::ItemLayout *)jarg1;
+  arg2 = (unsigned int)jarg2;
+  argp3 = (Dali::Vector3 *)jarg3;
+  if (!argp3) {
+    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null Dali::Vector3", 0);
+    return 0;
+  }
+  arg3 = *argp3;
   {
     try {
-      delete arg1;
+      result = (float)((Dali::Toolkit::ItemLayout const *)arg1)->GetMinimumLayoutPosition(arg2,arg3);
     } catch (std::out_of_range& e) {
       {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
+        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
       };
     } catch (std::exception& e) {
       {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return ;
+        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
       };
     } catch (Dali::DaliException e) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return ;
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
       };
     } catch (...) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ;
+        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
       };
     }
   }
 
+  jresult = result;
+  return jresult;
 }
 
 
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_Scrollable_DownCast(void * jarg1) {
-  void * jresult ;
-  Dali::BaseHandle arg1 ;
-  Dali::BaseHandle *argp1 ;
-  Dali::Toolkit::Scrollable result;
+SWIGEXPORT float SWIGSTDCALL CSharp_Dali_ItemLayout_GetClosestAnchorPosition(void * jarg1, float jarg2) {
+  float jresult ;
+  Dali::Toolkit::ItemLayout *arg1 = (Dali::Toolkit::ItemLayout *) 0 ;
+  float arg2 ;
+  float result;
 
-  argp1 = (Dali::BaseHandle *)jarg1;
-  if (!argp1) {
-    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null Dali::BaseHandle", 0);
-    return 0;
-  }
-  arg1 = *argp1;
+  arg1 = (Dali::Toolkit::ItemLayout *)jarg1;
+  arg2 = (float)jarg2;
   {
     try {
-      result = Dali::Toolkit::Scrollable::DownCast(arg1);
+      result = (float)((Dali::Toolkit::ItemLayout const *)arg1)->GetClosestAnchorPosition(arg2);
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -74439,20 +73790,22 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_Scrollable_DownCast(void * jarg1) {
     }
   }
 
-  jresult = new Dali::Toolkit::Scrollable((const Dali::Toolkit::Scrollable &)result);
+  jresult = result;
   return jresult;
 }
 
 
-SWIGEXPORT unsigned int SWIGSTDCALL CSharp_Dali_Scrollable_IsOvershootEnabled(void * jarg1) {
-  unsigned int jresult ;
-  Dali::Toolkit::Scrollable *arg1 = (Dali::Toolkit::Scrollable *) 0 ;
-  bool result;
+SWIGEXPORT float SWIGSTDCALL CSharp_Dali_ItemLayout_GetItemScrollToPosition(void * jarg1, unsigned int jarg2) {
+  float jresult ;
+  Dali::Toolkit::ItemLayout *arg1 = (Dali::Toolkit::ItemLayout *) 0 ;
+  unsigned int arg2 ;
+  float result;
 
-  arg1 = (Dali::Toolkit::Scrollable *)jarg1;
+  arg1 = (Dali::Toolkit::ItemLayout *)jarg1;
+  arg2 = (unsigned int)jarg2;
   {
     try {
-      result = (bool)((Dali::Toolkit::Scrollable const *)arg1)->IsOvershootEnabled();
+      result = (float)((Dali::Toolkit::ItemLayout const *)arg1)->GetItemScrollToPosition(arg2);
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -74477,81 +73830,109 @@ SWIGEXPORT unsigned int SWIGSTDCALL CSharp_Dali_Scrollable_IsOvershootEnabled(vo
 }
 
 
-SWIGEXPORT void SWIGSTDCALL CSharp_Dali_Scrollable_SetOvershootEnabled(void * jarg1, unsigned int jarg2) {
-  Dali::Toolkit::Scrollable *arg1 = (Dali::Toolkit::Scrollable *) 0 ;
-  bool arg2 ;
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_ItemLayout_GetItemsWithinArea(void * jarg1, float jarg2, void * jarg3) {
+  void * jresult ;
+  Dali::Toolkit::ItemLayout *arg1 = (Dali::Toolkit::ItemLayout *) 0 ;
+  float arg2 ;
+  Dali::Vector3 arg3 ;
+  Dali::Vector3 *argp3 ;
+  SwigValueWrapper< Dali::Toolkit::ItemRange > result;
 
-  arg1 = (Dali::Toolkit::Scrollable *)jarg1;
-  arg2 = jarg2 ? true : false;
+  arg1 = (Dali::Toolkit::ItemLayout *)jarg1;
+  arg2 = (float)jarg2;
+  argp3 = (Dali::Vector3 *)jarg3;
+  if (!argp3) {
+    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null Dali::Vector3", 0);
+    return 0;
+  }
+  arg3 = *argp3;
   {
     try {
-      (arg1)->SetOvershootEnabled(arg2);
+      result = ((Dali::Toolkit::ItemLayout const *)arg1)->GetItemsWithinArea(arg2,arg3);
     } catch (std::out_of_range& e) {
       {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
+        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
       };
     } catch (std::exception& e) {
       {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return ;
+        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
       };
     } catch (Dali::DaliException e) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return ;
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
       };
     } catch (...) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ;
+        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
       };
     }
   }
 
+  jresult = new Dali::Toolkit::ItemRange((const Dali::Toolkit::ItemRange &)result);
+  return jresult;
 }
 
 
-SWIGEXPORT void SWIGSTDCALL CSharp_Dali_Scrollable_SetOvershootEffectColor(void * jarg1, void * jarg2) {
-  Dali::Toolkit::Scrollable *arg1 = (Dali::Toolkit::Scrollable *) 0 ;
-  Dali::Vector4 *arg2 = 0 ;
+SWIGEXPORT float SWIGSTDCALL CSharp_Dali_ItemLayout_GetClosestOnScreenLayoutPosition(void * jarg1, int jarg2, float jarg3, void * jarg4) {
+  float jresult ;
+  Dali::Toolkit::ItemLayout *arg1 = (Dali::Toolkit::ItemLayout *) 0 ;
+  int arg2 ;
+  float arg3 ;
+  Dali::Vector3 *arg4 = 0 ;
+  float result;
 
-  arg1 = (Dali::Toolkit::Scrollable *)jarg1;
-  arg2 = (Dali::Vector4 *)jarg2;
-  if (!arg2) {
-    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::Vector4 const & type is null", 0);
-    return ;
+  arg1 = (Dali::Toolkit::ItemLayout *)jarg1;
+  arg2 = (int)jarg2;
+  arg3 = (float)jarg3;
+  arg4 = (Dali::Vector3 *)jarg4;
+  if (!arg4) {
+    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::Vector3 const & type is null", 0);
+    return 0;
   }
   {
     try {
-      (arg1)->SetOvershootEffectColor((Dali::Vector4 const &)*arg2);
+      result = (float)(arg1)->GetClosestOnScreenLayoutPosition(arg2,arg3,(Dali::Vector3 const &)*arg4);
     } catch (std::out_of_range& e) {
       {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
+        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
       };
     } catch (std::exception& e) {
       {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return ;
+        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
       };
     } catch (Dali::DaliException e) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return ;
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
       };
     } catch (...) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ;
+        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
       };
     }
   }
 
+  jresult = result;
+  return jresult;
 }
 
 
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_Scrollable_GetOvershootEffectColor(void * jarg1) {
-  void * jresult ;
-  Dali::Toolkit::Scrollable *arg1 = (Dali::Toolkit::Scrollable *) 0 ;
-  Dali::Vector4 result;
+SWIGEXPORT unsigned int SWIGSTDCALL CSharp_Dali_ItemLayout_GetReserveItemCount(void * jarg1, void * jarg2) {
+  unsigned int jresult ;
+  Dali::Toolkit::ItemLayout *arg1 = (Dali::Toolkit::ItemLayout *) 0 ;
+  Dali::Vector3 arg2 ;
+  Dali::Vector3 *argp2 ;
+  unsigned int result;
 
-  arg1 = (Dali::Toolkit::Scrollable *)jarg1;
+  arg1 = (Dali::Toolkit::ItemLayout *)jarg1;
+  argp2 = (Dali::Vector3 *)jarg2;
+  if (!argp2) {
+    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null Dali::Vector3", 0);
+    return 0;
+  }
+  arg2 = *argp2;
   {
     try {
-      result = ((Dali::Toolkit::Scrollable const *)arg1)->GetOvershootEffectColor();
+      result = (unsigned int)((Dali::Toolkit::ItemLayout const *)arg1)->GetReserveItemCount(arg2);
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -74571,20 +73952,32 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_Scrollable_GetOvershootEffectColor(voi
     }
   }
 
-  jresult = new Dali::Vector4((const Dali::Vector4 &)result);
+  jresult = result;
   return jresult;
 }
 
 
-SWIGEXPORT void SWIGSTDCALL CSharp_Dali_Scrollable_SetOvershootAnimationSpeed(void * jarg1, float jarg2) {
-  Dali::Toolkit::Scrollable *arg1 = (Dali::Toolkit::Scrollable *) 0 ;
-  float arg2 ;
+SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ItemLayout_GetDefaultItemSize(void * jarg1, unsigned int jarg2, void * jarg3, void * jarg4) {
+  Dali::Toolkit::ItemLayout *arg1 = (Dali::Toolkit::ItemLayout *) 0 ;
+  unsigned int arg2 ;
+  Dali::Vector3 *arg3 = 0 ;
+  Dali::Vector3 *arg4 = 0 ;
 
-  arg1 = (Dali::Toolkit::Scrollable *)jarg1;
-  arg2 = (float)jarg2;
+  arg1 = (Dali::Toolkit::ItemLayout *)jarg1;
+  arg2 = (unsigned int)jarg2;
+  arg3 = (Dali::Vector3 *)jarg3;
+  if (!arg3) {
+    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::Vector3 const & type is null", 0);
+    return ;
+  }
+  arg4 = (Dali::Vector3 *)jarg4;
+  if (!arg4) {
+    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::Vector3 & type is null", 0);
+    return ;
+  }
   {
     try {
-      (arg1)->SetOvershootAnimationSpeed(arg2);
+      ((Dali::Toolkit::ItemLayout const *)arg1)->GetDefaultItemSize(arg2,(Dali::Vector3 const &)*arg3,*arg4);
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
@@ -74607,15 +74000,15 @@ SWIGEXPORT void SWIGSTDCALL CSharp_Dali_Scrollable_SetOvershootAnimationSpeed(vo
 }
 
 
-SWIGEXPORT float SWIGSTDCALL CSharp_Dali_Scrollable_GetOvershootAnimationSpeed(void * jarg1) {
-  float jresult ;
-  Dali::Toolkit::Scrollable *arg1 = (Dali::Toolkit::Scrollable *) 0 ;
-  float result;
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_ItemLayout_GetScrollDirection(void * jarg1) {
+  void * jresult ;
+  Dali::Toolkit::ItemLayout *arg1 = (Dali::Toolkit::ItemLayout *) 0 ;
+  Dali::Degree result;
 
-  arg1 = (Dali::Toolkit::Scrollable *)jarg1;
+  arg1 = (Dali::Toolkit::ItemLayout *)jarg1;
   {
     try {
-      result = (float)((Dali::Toolkit::Scrollable const *)arg1)->GetOvershootAnimationSpeed();
+      result = ((Dali::Toolkit::ItemLayout const *)arg1)->GetScrollDirection();
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -74635,20 +74028,20 @@ SWIGEXPORT float SWIGSTDCALL CSharp_Dali_Scrollable_GetOvershootAnimationSpeed(v
     }
   }
 
-  jresult = result;
+  jresult = new Dali::Degree((const Dali::Degree &)result);
   return jresult;
 }
 
 
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_Scrollable_ScrollStartedSignal(void * jarg1) {
-  void * jresult ;
-  Dali::Toolkit::Scrollable *arg1 = (Dali::Toolkit::Scrollable *) 0 ;
-  Dali::Toolkit::Scrollable::ScrollStartedSignalType *result = 0 ;
+SWIGEXPORT float SWIGSTDCALL CSharp_Dali_ItemLayout_GetScrollSpeedFactor(void * jarg1) {
+  float jresult ;
+  Dali::Toolkit::ItemLayout *arg1 = (Dali::Toolkit::ItemLayout *) 0 ;
+  float result;
 
-  arg1 = (Dali::Toolkit::Scrollable *)jarg1;
+  arg1 = (Dali::Toolkit::ItemLayout *)jarg1;
   {
     try {
-      result = (Dali::Toolkit::Scrollable::ScrollStartedSignalType *) &(arg1)->ScrollStartedSignal();
+      result = (float)((Dali::Toolkit::ItemLayout const *)arg1)->GetScrollSpeedFactor();
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -74668,20 +74061,20 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_Scrollable_ScrollStartedSignal(void *
     }
   }
 
-  jresult = (void *)result;
+  jresult = result;
   return jresult;
 }
 
 
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_Scrollable_ScrollUpdatedSignal(void * jarg1) {
-  void * jresult ;
-  Dali::Toolkit::Scrollable *arg1 = (Dali::Toolkit::Scrollable *) 0 ;
-  Dali::Toolkit::Scrollable::ScrollUpdatedSignalType *result = 0 ;
+SWIGEXPORT float SWIGSTDCALL CSharp_Dali_ItemLayout_GetMaximumSwipeSpeed(void * jarg1) {
+  float jresult ;
+  Dali::Toolkit::ItemLayout *arg1 = (Dali::Toolkit::ItemLayout *) 0 ;
+  float result;
 
-  arg1 = (Dali::Toolkit::Scrollable *)jarg1;
+  arg1 = (Dali::Toolkit::ItemLayout *)jarg1;
   {
     try {
-      result = (Dali::Toolkit::Scrollable::ScrollUpdatedSignalType *) &(arg1)->ScrollUpdatedSignal();
+      result = (float)((Dali::Toolkit::ItemLayout const *)arg1)->GetMaximumSwipeSpeed();
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -74701,20 +74094,20 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_Scrollable_ScrollUpdatedSignal(void *
     }
   }
 
-  jresult = (void *)result;
+  jresult = result;
   return jresult;
 }
 
 
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_Scrollable_ScrollCompletedSignal(void * jarg1) {
-  void * jresult ;
-  Dali::Toolkit::Scrollable *arg1 = (Dali::Toolkit::Scrollable *) 0 ;
-  Dali::Toolkit::Scrollable::ScrollCompletedSignalType *result = 0 ;
+SWIGEXPORT float SWIGSTDCALL CSharp_Dali_ItemLayout_GetItemFlickAnimationDuration(void * jarg1) {
+  float jresult ;
+  Dali::Toolkit::ItemLayout *arg1 = (Dali::Toolkit::ItemLayout *) 0 ;
+  float result;
 
-  arg1 = (Dali::Toolkit::Scrollable *)jarg1;
+  arg1 = (Dali::Toolkit::ItemLayout *)jarg1;
   {
     try {
-      result = (Dali::Toolkit::Scrollable::ScrollCompletedSignalType *) &(arg1)->ScrollCompletedSignal();
+      result = (float)((Dali::Toolkit::ItemLayout const *)arg1)->GetItemFlickAnimationDuration();
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -74734,20 +74127,28 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_Scrollable_ScrollCompletedSignal(void
     }
   }
 
-  jresult = (void *)result;
+  jresult = result;
   return jresult;
 }
 
 
-SWIGEXPORT unsigned int SWIGSTDCALL CSharp_Dali_IsVertical(int jarg1) {
-  unsigned int jresult ;
-  Dali::Toolkit::ControlOrientation::Type arg1 ;
-  bool result;
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_ItemLayout_GetNextFocusItemID(void * jarg1, int jarg2, int jarg3, int jarg4, unsigned int jarg5) {
+  int jresult ;
+  Dali::Toolkit::ItemLayout *arg1 = (Dali::Toolkit::ItemLayout *) 0 ;
+  int arg2 ;
+  int arg3 ;
+  Dali::Toolkit::Control::KeyboardFocus::Direction arg4 ;
+  bool arg5 ;
+  int result;
 
-  arg1 = (Dali::Toolkit::ControlOrientation::Type)jarg1;
+  arg1 = (Dali::Toolkit::ItemLayout *)jarg1;
+  arg2 = (int)jarg2;
+  arg3 = (int)jarg3;
+  arg4 = (Dali::Toolkit::Control::KeyboardFocus::Direction)jarg4;
+  arg5 = jarg5 ? true : false;
   {
     try {
-      result = (bool)Dali::Toolkit::IsVertical(arg1);
+      result = (int)(arg1)->GetNextFocusItemID(arg2,arg3,arg4,arg5);
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -74772,15 +74173,15 @@ SWIGEXPORT unsigned int SWIGSTDCALL CSharp_Dali_IsVertical(int jarg1) {
 }
 
 
-SWIGEXPORT unsigned int SWIGSTDCALL CSharp_Dali_IsHorizontal(int jarg1) {
-  unsigned int jresult ;
-  Dali::Toolkit::ControlOrientation::Type arg1 ;
-  bool result;
+SWIGEXPORT float SWIGSTDCALL CSharp_Dali_ItemLayout_GetFlickSpeedFactor(void * jarg1) {
+  float jresult ;
+  Dali::Toolkit::ItemLayout *arg1 = (Dali::Toolkit::ItemLayout *) 0 ;
+  float result;
 
-  arg1 = (Dali::Toolkit::ControlOrientation::Type)jarg1;
+  arg1 = (Dali::Toolkit::ItemLayout *)jarg1;
   {
     try {
-      result = (bool)Dali::Toolkit::IsHorizontal(arg1);
+      result = (float)((Dali::Toolkit::ItemLayout const *)arg1)->GetFlickSpeedFactor();
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -74805,54 +74206,74 @@ SWIGEXPORT unsigned int SWIGSTDCALL CSharp_Dali_IsHorizontal(int jarg1) {
 }
 
 
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_ItemRange__SWIG_0(unsigned int jarg1, unsigned int jarg2) {
-  void * jresult ;
-  unsigned int arg1 ;
-  unsigned int arg2 ;
-  Dali::Toolkit::ItemRange *result = 0 ;
+SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ItemLayout_ApplyConstraints(void * jarg1, void * jarg2, int jarg3, void * jarg4, void * jarg5) {
+  Dali::Toolkit::ItemLayout *arg1 = (Dali::Toolkit::ItemLayout *) 0 ;
+  Dali::Actor *arg2 = 0 ;
+  int arg3 ;
+  Dali::Vector3 *arg4 = 0 ;
+  Dali::Actor *arg5 = 0 ;
 
-  arg1 = (unsigned int)jarg1;
-  arg2 = (unsigned int)jarg2;
+  arg1 = (Dali::Toolkit::ItemLayout *)jarg1;
+  arg2 = (Dali::Actor *)jarg2;
+  if (!arg2) {
+    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::Actor & type is null", 0);
+    return ;
+  }
+  arg3 = (int)jarg3;
+  arg4 = (Dali::Vector3 *)jarg4;
+  if (!arg4) {
+    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::Vector3 const & type is null", 0);
+    return ;
+  }
+  arg5 = (Dali::Actor *)jarg5;
+  if (!arg5) {
+    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::Actor const & type is null", 0);
+    return ;
+  }
   {
     try {
-      result = (Dali::Toolkit::ItemRange *)new Dali::Toolkit::ItemRange(arg1,arg2);
+      (arg1)->ApplyConstraints(*arg2,arg3,(Dali::Vector3 const &)*arg4,(Dali::Actor const &)*arg5);
     } catch (std::out_of_range& e) {
       {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
+        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
       };
     } catch (std::exception& e) {
       {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
+        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return ;
       };
     } catch (Dali::DaliException e) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return ;
       };
     } catch (...) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
+        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ;
       };
     }
   }
 
-  jresult = (void *)result;
-  return jresult;
 }
 
 
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_ItemRange__SWIG_1(void * jarg1) {
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_ItemLayout_GetItemPosition(void * jarg1, int jarg2, float jarg3, void * jarg4) {
   void * jresult ;
-  Dali::Toolkit::ItemRange *arg1 = 0 ;
-  Dali::Toolkit::ItemRange *result = 0 ;
+  Dali::Toolkit::ItemLayout *arg1 = (Dali::Toolkit::ItemLayout *) 0 ;
+  int arg2 ;
+  float arg3 ;
+  Dali::Vector3 *arg4 = 0 ;
+  Dali::Vector3 result;
 
-  arg1 = (Dali::Toolkit::ItemRange *)jarg1;
-  if (!arg1) {
-    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::Toolkit::ItemRange const & type is null", 0);
+  arg1 = (Dali::Toolkit::ItemLayout *)jarg1;
+  arg2 = (int)jarg2;
+  arg3 = (float)jarg3;
+  arg4 = (Dali::Vector3 *)jarg4;
+  if (!arg4) {
+    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::Vector3 const & type is null", 0);
     return 0;
   }
   {
     try {
-      result = (Dali::Toolkit::ItemRange *)new Dali::Toolkit::ItemRange((Dali::Toolkit::ItemRange const &)*arg1);
+      result = ((Dali::Toolkit::ItemLayout const *)arg1)->GetItemPosition(arg2,arg3,(Dali::Vector3 const &)*arg4);
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -74872,26 +74293,20 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_ItemRange__SWIG_1(void * jarg1) {
     }
   }
 
-  jresult = (void *)result;
+  jresult = new Dali::Vector3((const Dali::Vector3 &)result);
   return jresult;
 }
 
 
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_ItemRange_Assign(void * jarg1, void * jarg2) {
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_NewItemLayout(int jarg1) {
   void * jresult ;
-  Dali::Toolkit::ItemRange *arg1 = (Dali::Toolkit::ItemRange *) 0 ;
-  Dali::Toolkit::ItemRange *arg2 = 0 ;
-  Dali::Toolkit::ItemRange *result = 0 ;
+  Dali::Toolkit::DefaultItemLayout::Type arg1 ;
+  SwigValueWrapper< Dali::IntrusivePtr< Dali::Toolkit::ItemLayout > > result;
 
-  arg1 = (Dali::Toolkit::ItemRange *)jarg1;
-  arg2 = (Dali::Toolkit::ItemRange *)jarg2;
-  if (!arg2) {
-    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::Toolkit::ItemRange const & type is null", 0);
-    return 0;
-  }
+  arg1 = (Dali::Toolkit::DefaultItemLayout::Type)jarg1;
   {
     try {
-      result = (Dali::Toolkit::ItemRange *) &(arg1)->operator =((Dali::Toolkit::ItemRange const &)*arg2);
+      result = Dali::Toolkit::DefaultItemLayout::New(arg1);
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -74911,61 +74326,49 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_ItemRange_Assign(void * jarg1, void *
     }
   }
 
-  jresult = (void *)result;
+  jresult = new Dali::Toolkit::ItemLayoutPtr((const Dali::Toolkit::ItemLayoutPtr &)result);
   return jresult;
 }
 
 
-SWIGEXPORT unsigned int SWIGSTDCALL CSharp_Dali_ItemRange_Within(void * jarg1, unsigned int jarg2) {
-  unsigned int jresult ;
-  Dali::Toolkit::ItemRange *arg1 = (Dali::Toolkit::ItemRange *) 0 ;
-  unsigned int arg2 ;
-  bool result;
+SWIGEXPORT void SWIGSTDCALL CSharp_Dali_delete_ItemFactory(void * jarg1) {
+  Dali::Toolkit::ItemFactory *arg1 = (Dali::Toolkit::ItemFactory *) 0 ;
 
-  arg1 = (Dali::Toolkit::ItemRange *)jarg1;
-  arg2 = (unsigned int)jarg2;
+  arg1 = (Dali::Toolkit::ItemFactory *)jarg1;
   {
     try {
-      result = (bool)(arg1)->Within(arg2);
+      delete arg1;
     } catch (std::out_of_range& e) {
       {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
+        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
       };
     } catch (std::exception& e) {
       {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
+        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return ;
       };
     } catch (Dali::DaliException e) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return ;
       };
     } catch (...) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
+        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ;
       };
     }
   }
 
-  jresult = result;
-  return jresult;
 }
 
 
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_ItemRange_Intersection(void * jarg1, void * jarg2) {
-  void * jresult ;
-  Dali::Toolkit::ItemRange *arg1 = (Dali::Toolkit::ItemRange *) 0 ;
-  Dali::Toolkit::ItemRange *arg2 = 0 ;
-  SwigValueWrapper< Dali::Toolkit::ItemRange > result;
+SWIGEXPORT unsigned int SWIGSTDCALL CSharp_Dali_ItemFactory_GetNumberOfItems(void * jarg1) {
+  unsigned int jresult ;
+  Dali::Toolkit::ItemFactory *arg1 = (Dali::Toolkit::ItemFactory *) 0 ;
+  unsigned int result;
 
-  arg1 = (Dali::Toolkit::ItemRange *)jarg1;
-  arg2 = (Dali::Toolkit::ItemRange *)jarg2;
-  if (!arg2) {
-    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::Toolkit::ItemRange const & type is null", 0);
-    return 0;
-  }
+  arg1 = (Dali::Toolkit::ItemFactory *)jarg1;
   {
     try {
-      result = (arg1)->Intersection((Dali::Toolkit::ItemRange const &)*arg2);
+      result = (unsigned int)(arg1)->GetNumberOfItems();
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -74985,91 +74388,63 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_ItemRange_Intersection(void * jarg1, v
     }
   }
 
-  jresult = new Dali::Toolkit::ItemRange((const Dali::Toolkit::ItemRange &)result);
-  return jresult;
-}
-
-
-SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ItemRange_begin_set(void * jarg1, unsigned int jarg2) {
-  Dali::Toolkit::ItemRange *arg1 = (Dali::Toolkit::ItemRange *) 0 ;
-  unsigned int arg2 ;
-
-  arg1 = (Dali::Toolkit::ItemRange *)jarg1;
-  arg2 = (unsigned int)jarg2;
-  if (arg1) (arg1)->begin = arg2;
-}
-
-
-SWIGEXPORT unsigned int SWIGSTDCALL CSharp_Dali_ItemRange_begin_get(void * jarg1) {
-  unsigned int jresult ;
-  Dali::Toolkit::ItemRange *arg1 = (Dali::Toolkit::ItemRange *) 0 ;
-  unsigned int result;
-
-  arg1 = (Dali::Toolkit::ItemRange *)jarg1;
-  result = (unsigned int) ((arg1)->begin);
   jresult = result;
   return jresult;
 }
 
 
-SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ItemRange_end_set(void * jarg1, unsigned int jarg2) {
-  Dali::Toolkit::ItemRange *arg1 = (Dali::Toolkit::ItemRange *) 0 ;
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_ItemFactory_NewItem(void * jarg1, unsigned int jarg2) {
+  void * jresult ;
+  Dali::Toolkit::ItemFactory *arg1 = (Dali::Toolkit::ItemFactory *) 0 ;
   unsigned int arg2 ;
+  Dali::Actor result;
 
-  arg1 = (Dali::Toolkit::ItemRange *)jarg1;
+  arg1 = (Dali::Toolkit::ItemFactory *)jarg1;
   arg2 = (unsigned int)jarg2;
-  if (arg1) (arg1)->end = arg2;
-}
-
-
-SWIGEXPORT unsigned int SWIGSTDCALL CSharp_Dali_ItemRange_end_get(void * jarg1) {
-  unsigned int jresult ;
-  Dali::Toolkit::ItemRange *arg1 = (Dali::Toolkit::ItemRange *) 0 ;
-  unsigned int result;
-
-  arg1 = (Dali::Toolkit::ItemRange *)jarg1;
-  result = (unsigned int) ((arg1)->end);
-  jresult = result;
-  return jresult;
-}
-
-
-SWIGEXPORT void SWIGSTDCALL CSharp_Dali_delete_ItemRange(void * jarg1) {
-  Dali::Toolkit::ItemRange *arg1 = (Dali::Toolkit::ItemRange *) 0 ;
-
-  arg1 = (Dali::Toolkit::ItemRange *)jarg1;
   {
     try {
-      delete arg1;
+      result = (arg1)->NewItem(arg2);
     } catch (std::out_of_range& e) {
       {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
+        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
       };
     } catch (std::exception& e) {
       {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return ;
+        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
       };
     } catch (Dali::DaliException e) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return ;
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
       };
     } catch (...) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ;
+        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
       };
     }
   }
 
+  jresult = new Dali::Actor((const Dali::Actor &)result);
+  return jresult;
 }
 
 
-SWIGEXPORT void SWIGSTDCALL CSharp_Dali_delete_ItemLayout(void * jarg1) {
-  Dali::Toolkit::ItemLayout *arg1 = (Dali::Toolkit::ItemLayout *) 0 ;
+SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ItemFactory_ItemReleased(void * jarg1, unsigned int jarg2, void * jarg3) {
+  Dali::Toolkit::ItemFactory *arg1 = (Dali::Toolkit::ItemFactory *) 0 ;
+  unsigned int arg2 ;
+  Dali::Actor arg3 ;
+  Dali::Actor *argp3 ;
 
-  arg1 = (Dali::Toolkit::ItemLayout *)jarg1;
+  arg1 = (Dali::Toolkit::ItemFactory *)jarg1;
+  arg2 = (unsigned int)jarg2;
+  argp3 = (Dali::Actor *)jarg3;
+  if (!argp3) {
+    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null Dali::Actor", 0);
+    return ;
+  }
+  arg3 = *argp3;
   {
     try {
-      delete arg1;
+      (arg1)->ItemReleased(arg2,arg3);
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
@@ -75092,15 +74467,23 @@ SWIGEXPORT void SWIGSTDCALL CSharp_Dali_delete_ItemLayout(void * jarg1) {
 }
 
 
-SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ItemLayout_SetOrientation(void * jarg1, int jarg2) {
-  Dali::Toolkit::ItemLayout *arg1 = (Dali::Toolkit::ItemLayout *) 0 ;
-  Dali::Toolkit::ControlOrientation::Type arg2 ;
+SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ItemFactory_ItemReleasedSwigExplicitItemFactory(void * jarg1, unsigned int jarg2, void * jarg3) {
+  Dali::Toolkit::ItemFactory *arg1 = (Dali::Toolkit::ItemFactory *) 0 ;
+  unsigned int arg2 ;
+  Dali::Actor arg3 ;
+  Dali::Actor *argp3 ;
 
-  arg1 = (Dali::Toolkit::ItemLayout *)jarg1;
-  arg2 = (Dali::Toolkit::ControlOrientation::Type)jarg2;
+  arg1 = (Dali::Toolkit::ItemFactory *)jarg1;
+  arg2 = (unsigned int)jarg2;
+  argp3 = (Dali::Actor *)jarg3;
+  if (!argp3) {
+    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null Dali::Actor", 0);
+    return ;
+  }
+  arg3 = *argp3;
   {
     try {
-      (arg1)->SetOrientation(arg2);
+      (arg1)->Dali::Toolkit::ItemFactory::ItemReleased(arg2,arg3);
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
@@ -75123,15 +74506,13 @@ SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ItemLayout_SetOrientation(void * jarg1,
 }
 
 
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_ItemLayout_GetOrientation(void * jarg1) {
-  int jresult ;
-  Dali::Toolkit::ItemLayout *arg1 = (Dali::Toolkit::ItemLayout *) 0 ;
-  Dali::Toolkit::ControlOrientation::Type result;
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_ItemFactory() {
+  void * jresult ;
+  Dali::Toolkit::ItemFactory *result = 0 ;
 
-  arg1 = (Dali::Toolkit::ItemLayout *)jarg1;
   {
     try {
-      result = (Dali::Toolkit::ControlOrientation::Type)((Dali::Toolkit::ItemLayout const *)arg1)->GetOrientation();
+      result = (Dali::Toolkit::ItemFactory *)new SwigDirector_ItemFactory();
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -75151,211 +74532,197 @@ SWIGEXPORT int SWIGSTDCALL CSharp_Dali_ItemLayout_GetOrientation(void * jarg1) {
     }
   }
 
-  jresult = (int)result;
+  jresult = (void *)result;
   return jresult;
 }
 
 
-SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ItemLayout_SetLayoutProperties(void * jarg1, void * jarg2) {
-  Dali::Toolkit::ItemLayout *arg1 = (Dali::Toolkit::ItemLayout *) 0 ;
-  Dali::Property::Map *arg2 = 0 ;
-
-  arg1 = (Dali::Toolkit::ItemLayout *)jarg1;
-  arg2 = (Dali::Property::Map *)jarg2;
-  if (!arg2) {
-    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::Property::Map const & type is null", 0);
-    return ;
-  }
-  {
-    try {
-      (arg1)->SetLayoutProperties((Dali::Property::Map const &)*arg2);
-    } catch (std::out_of_range& e) {
-      {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
-      };
-    } catch (std::exception& e) {
-      {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return ;
-      };
-    } catch (Dali::DaliException e) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return ;
-      };
-    } catch (...) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ;
-      };
-    }
+SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ItemFactory_director_connect(void *objarg, SwigDirector_ItemFactory::SWIG_Callback0_t callback0, SwigDirector_ItemFactory::SWIG_Callback1_t callback1, SwigDirector_ItemFactory::SWIG_Callback2_t callback2) {
+  Dali::Toolkit::ItemFactory *obj = (Dali::Toolkit::ItemFactory *)objarg;
+  SwigDirector_ItemFactory *director = dynamic_cast<SwigDirector_ItemFactory *>(obj);
+  if (director) {
+    director->swig_connect_director(callback0, callback1, callback2);
   }
-
 }
 
 
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_ItemLayout_GetLayoutProperties(void * jarg1) {
-  void * jresult ;
-  Dali::Toolkit::ItemLayout *arg1 = (Dali::Toolkit::ItemLayout *) 0 ;
-  Dali::Property::Map result;
-
-  arg1 = (Dali::Toolkit::ItemLayout *)jarg1;
-  {
-    try {
-      result = (arg1)->GetLayoutProperties();
-    } catch (std::out_of_range& e) {
-      {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
-      };
-    } catch (std::exception& e) {
-      {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
-      };
-    } catch (Dali::DaliException e) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
-      };
-    } catch (...) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
-      };
-    }
-  }
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_ItemView_Property_MINIMUM_SWIPE_SPEED_get() {
+  int jresult ;
+  int result;
 
-  jresult = new Dali::Property::Map((const Dali::Property::Map &)result);
+  result = (int)Dali::Toolkit::ItemView::Property::MINIMUM_SWIPE_SPEED;
+  jresult = (int)result;
   return jresult;
 }
 
 
-SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ItemLayout_GetItemSize(void * jarg1, unsigned int jarg2, void * jarg3, void * jarg4) {
-  Dali::Toolkit::ItemLayout *arg1 = (Dali::Toolkit::ItemLayout *) 0 ;
-  unsigned int arg2 ;
-  Dali::Vector3 *arg3 = 0 ;
-  Dali::Vector3 *arg4 = 0 ;
-
-  arg1 = (Dali::Toolkit::ItemLayout *)jarg1;
-  arg2 = (unsigned int)jarg2;
-  arg3 = (Dali::Vector3 *)jarg3;
-  if (!arg3) {
-    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::Vector3 const & type is null", 0);
-    return ;
-  }
-  arg4 = (Dali::Vector3 *)jarg4;
-  if (!arg4) {
-    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::Vector3 & type is null", 0);
-    return ;
-  }
-  {
-    try {
-      ((Dali::Toolkit::ItemLayout const *)arg1)->GetItemSize(arg2,(Dali::Vector3 const &)*arg3,*arg4);
-    } catch (std::out_of_range& e) {
-      {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
-      };
-    } catch (std::exception& e) {
-      {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return ;
-      };
-    } catch (Dali::DaliException e) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return ;
-      };
-    } catch (...) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ;
-      };
-    }
-  }
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_ItemView_Property_MINIMUM_SWIPE_DISTANCE_get() {
+  int jresult ;
+  int result;
 
+  result = (int)Dali::Toolkit::ItemView::Property::MINIMUM_SWIPE_DISTANCE;
+  jresult = (int)result;
+  return jresult;
 }
 
 
-SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ItemLayout_SetItemSize(void * jarg1, void * jarg2) {
-  Dali::Toolkit::ItemLayout *arg1 = (Dali::Toolkit::ItemLayout *) 0 ;
-  Dali::Vector3 *arg2 = 0 ;
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_ItemView_Property_WHEEL_SCROLL_DISTANCE_STEP_get() {
+  int jresult ;
+  int result;
+
+  result = (int)Dali::Toolkit::ItemView::Property::WHEEL_SCROLL_DISTANCE_STEP;
+  jresult = (int)result;
+  return jresult;
+}
+
+
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_ItemView_Property_SNAP_TO_ITEM_ENABLED_get() {
+  int jresult ;
+  int result;
+
+  result = (int)Dali::Toolkit::ItemView::Property::SNAP_TO_ITEM_ENABLED;
+  jresult = (int)result;
+  return jresult;
+}
+
+
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_ItemView_Property_REFRESH_INTERVAL_get() {
+  int jresult ;
+  int result;
+
+  result = (int)Dali::Toolkit::ItemView::Property::REFRESH_INTERVAL;
+  jresult = (int)result;
+  return jresult;
+}
+
+
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_ItemView_Property_LAYOUT_POSITION_get() {
+  int jresult ;
+  int result;
+
+  result = (int)Dali::Toolkit::ItemView::Property::LAYOUT_POSITION;
+  jresult = (int)result;
+  return jresult;
+}
+
+
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_ItemView_Property_SCROLL_SPEED_get() {
+  int jresult ;
+  int result;
+
+  result = (int)Dali::Toolkit::ItemView::Property::SCROLL_SPEED;
+  jresult = (int)result;
+  return jresult;
+}
+
+
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_ItemView_Property_OVERSHOOT_get() {
+  int jresult ;
+  int result;
+
+  result = (int)Dali::Toolkit::ItemView::Property::OVERSHOOT;
+  jresult = (int)result;
+  return jresult;
+}
+
+
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_ItemView_Property_SCROLL_DIRECTION_get() {
+  int jresult ;
+  int result;
+
+  result = (int)Dali::Toolkit::ItemView::Property::SCROLL_DIRECTION;
+  jresult = (int)result;
+  return jresult;
+}
+
+
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_ItemView_Property_LAYOUT_ORIENTATION_get() {
+  int jresult ;
+  int result;
+
+  result = (int)Dali::Toolkit::ItemView::Property::LAYOUT_ORIENTATION;
+  jresult = (int)result;
+  return jresult;
+}
+
+
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_ItemView_Property_SCROLL_CONTENT_SIZE_get() {
+  int jresult ;
+  int result;
+
+  result = (int)Dali::Toolkit::ItemView::Property::SCROLL_CONTENT_SIZE;
+  jresult = (int)result;
+  return jresult;
+}
+
+
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_ItemView_Property() {
+  void * jresult ;
+  Dali::Toolkit::ItemView::Property *result = 0 ;
 
-  arg1 = (Dali::Toolkit::ItemLayout *)jarg1;
-  arg2 = (Dali::Vector3 *)jarg2;
-  if (!arg2) {
-    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::Vector3 const & type is null", 0);
-    return ;
-  }
   {
     try {
-      (arg1)->SetItemSize((Dali::Vector3 const &)*arg2);
+      result = (Dali::Toolkit::ItemView::Property *)new Dali::Toolkit::ItemView::Property();
     } catch (std::out_of_range& e) {
       {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
+        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
       };
     } catch (std::exception& e) {
       {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return ;
+        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
       };
     } catch (Dali::DaliException e) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return ;
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
       };
     } catch (...) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ;
+        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
       };
     }
   }
 
+  jresult = (void *)result;
+  return jresult;
 }
 
 
-SWIGEXPORT float SWIGSTDCALL CSharp_Dali_ItemLayout_GetMinimumLayoutPosition(void * jarg1, unsigned int jarg2, void * jarg3) {
-  float jresult ;
-  Dali::Toolkit::ItemLayout *arg1 = (Dali::Toolkit::ItemLayout *) 0 ;
-  unsigned int arg2 ;
-  Dali::Vector3 arg3 ;
-  Dali::Vector3 *argp3 ;
-  float result;
+SWIGEXPORT void SWIGSTDCALL CSharp_Dali_delete_ItemView_Property(void * jarg1) {
+  Dali::Toolkit::ItemView::Property *arg1 = (Dali::Toolkit::ItemView::Property *) 0 ;
 
-  arg1 = (Dali::Toolkit::ItemLayout *)jarg1;
-  arg2 = (unsigned int)jarg2;
-  argp3 = (Dali::Vector3 *)jarg3;
-  if (!argp3) {
-    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null Dali::Vector3", 0);
-    return 0;
-  }
-  arg3 = *argp3;
+  arg1 = (Dali::Toolkit::ItemView::Property *)jarg1;
   {
     try {
-      result = (float)((Dali::Toolkit::ItemLayout const *)arg1)->GetMinimumLayoutPosition(arg2,arg3);
+      delete arg1;
     } catch (std::out_of_range& e) {
       {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
+        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
       };
     } catch (std::exception& e) {
       {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
+        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return ;
       };
     } catch (Dali::DaliException e) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return ;
       };
     } catch (...) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
+        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ;
       };
     }
   }
 
-  jresult = result;
-  return jresult;
 }
 
 
-SWIGEXPORT float SWIGSTDCALL CSharp_Dali_ItemLayout_GetClosestAnchorPosition(void * jarg1, float jarg2) {
-  float jresult ;
-  Dali::Toolkit::ItemLayout *arg1 = (Dali::Toolkit::ItemLayout *) 0 ;
-  float arg2 ;
-  float result;
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_ItemView__SWIG_0() {
+  void * jresult ;
+  Dali::Toolkit::ItemView *result = 0 ;
 
-  arg1 = (Dali::Toolkit::ItemLayout *)jarg1;
-  arg2 = (float)jarg2;
   {
     try {
-      result = (float)((Dali::Toolkit::ItemLayout const *)arg1)->GetClosestAnchorPosition(arg2);
+      result = (Dali::Toolkit::ItemView *)new Dali::Toolkit::ItemView();
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -75375,22 +74742,24 @@ SWIGEXPORT float SWIGSTDCALL CSharp_Dali_ItemLayout_GetClosestAnchorPosition(voi
     }
   }
 
-  jresult = result;
+  jresult = (void *)result;
   return jresult;
 }
 
 
-SWIGEXPORT float SWIGSTDCALL CSharp_Dali_ItemLayout_GetItemScrollToPosition(void * jarg1, unsigned int jarg2) {
-  float jresult ;
-  Dali::Toolkit::ItemLayout *arg1 = (Dali::Toolkit::ItemLayout *) 0 ;
-  unsigned int arg2 ;
-  float result;
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_ItemView__SWIG_1(void * jarg1) {
+  void * jresult ;
+  Dali::Toolkit::ItemView *arg1 = 0 ;
+  Dali::Toolkit::ItemView *result = 0 ;
 
-  arg1 = (Dali::Toolkit::ItemLayout *)jarg1;
-  arg2 = (unsigned int)jarg2;
+  arg1 = (Dali::Toolkit::ItemView *)jarg1;
+  if (!arg1) {
+    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::Toolkit::ItemView const & type is null", 0);
+    return 0;
+  }
   {
     try {
-      result = (float)((Dali::Toolkit::ItemLayout const *)arg1)->GetItemScrollToPosition(arg2);
+      result = (Dali::Toolkit::ItemView *)new Dali::Toolkit::ItemView((Dali::Toolkit::ItemView const &)*arg1);
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -75410,30 +74779,26 @@ SWIGEXPORT float SWIGSTDCALL CSharp_Dali_ItemLayout_GetItemScrollToPosition(void
     }
   }
 
-  jresult = result;
+  jresult = (void *)result;
   return jresult;
 }
 
 
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_ItemLayout_GetItemsWithinArea(void * jarg1, float jarg2, void * jarg3) {
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_ItemView_Assign(void * jarg1, void * jarg2) {
   void * jresult ;
-  Dali::Toolkit::ItemLayout *arg1 = (Dali::Toolkit::ItemLayout *) 0 ;
-  float arg2 ;
-  Dali::Vector3 arg3 ;
-  Dali::Vector3 *argp3 ;
-  SwigValueWrapper< Dali::Toolkit::ItemRange > result;
+  Dali::Toolkit::ItemView *arg1 = (Dali::Toolkit::ItemView *) 0 ;
+  Dali::Toolkit::ItemView *arg2 = 0 ;
+  Dali::Toolkit::ItemView *result = 0 ;
 
-  arg1 = (Dali::Toolkit::ItemLayout *)jarg1;
-  arg2 = (float)jarg2;
-  argp3 = (Dali::Vector3 *)jarg3;
-  if (!argp3) {
-    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null Dali::Vector3", 0);
+  arg1 = (Dali::Toolkit::ItemView *)jarg1;
+  arg2 = (Dali::Toolkit::ItemView *)jarg2;
+  if (!arg2) {
+    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::Toolkit::ItemView const & type is null", 0);
     return 0;
   }
-  arg3 = *argp3;
   {
     try {
-      result = ((Dali::Toolkit::ItemLayout const *)arg1)->GetItemsWithinArea(arg2,arg3);
+      result = (Dali::Toolkit::ItemView *) &(arg1)->operator =((Dali::Toolkit::ItemView const &)*arg2);
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -75453,71 +74818,53 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_ItemLayout_GetItemsWithinArea(void * j
     }
   }
 
-  jresult = new Dali::Toolkit::ItemRange((const Dali::Toolkit::ItemRange &)result);
+  jresult = (void *)result;
   return jresult;
 }
 
 
-SWIGEXPORT float SWIGSTDCALL CSharp_Dali_ItemLayout_GetClosestOnScreenLayoutPosition(void * jarg1, int jarg2, float jarg3, void * jarg4) {
-  float jresult ;
-  Dali::Toolkit::ItemLayout *arg1 = (Dali::Toolkit::ItemLayout *) 0 ;
-  int arg2 ;
-  float arg3 ;
-  Dali::Vector3 *arg4 = 0 ;
-  float result;
+SWIGEXPORT void SWIGSTDCALL CSharp_Dali_delete_ItemView(void * jarg1) {
+  Dali::Toolkit::ItemView *arg1 = (Dali::Toolkit::ItemView *) 0 ;
 
-  arg1 = (Dali::Toolkit::ItemLayout *)jarg1;
-  arg2 = (int)jarg2;
-  arg3 = (float)jarg3;
-  arg4 = (Dali::Vector3 *)jarg4;
-  if (!arg4) {
-    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::Vector3 const & type is null", 0);
-    return 0;
-  }
+  arg1 = (Dali::Toolkit::ItemView *)jarg1;
   {
     try {
-      result = (float)(arg1)->GetClosestOnScreenLayoutPosition(arg2,arg3,(Dali::Vector3 const &)*arg4);
+      delete arg1;
     } catch (std::out_of_range& e) {
       {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
+        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
       };
     } catch (std::exception& e) {
       {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
+        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return ;
       };
     } catch (Dali::DaliException e) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return ;
       };
     } catch (...) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
+        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ;
       };
     }
   }
 
-  jresult = result;
-  return jresult;
 }
 
 
-SWIGEXPORT unsigned int SWIGSTDCALL CSharp_Dali_ItemLayout_GetReserveItemCount(void * jarg1, void * jarg2) {
-  unsigned int jresult ;
-  Dali::Toolkit::ItemLayout *arg1 = (Dali::Toolkit::ItemLayout *) 0 ;
-  Dali::Vector3 arg2 ;
-  Dali::Vector3 *argp2 ;
-  unsigned int result;
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_ItemView_New(void * jarg1) {
+  void * jresult ;
+  Dali::Toolkit::ItemFactory *arg1 = 0 ;
+  Dali::Toolkit::ItemView result;
 
-  arg1 = (Dali::Toolkit::ItemLayout *)jarg1;
-  argp2 = (Dali::Vector3 *)jarg2;
-  if (!argp2) {
-    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null Dali::Vector3", 0);
+  arg1 = (Dali::Toolkit::ItemFactory *)jarg1;
+  if (!arg1) {
+    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::Toolkit::ItemFactory & type is null", 0);
     return 0;
   }
-  arg2 = *argp2;
   {
     try {
-      result = (unsigned int)((Dali::Toolkit::ItemLayout const *)arg1)->GetReserveItemCount(arg2);
+      result = Dali::Toolkit::ItemView::New(*arg1);
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -75537,63 +74884,59 @@ SWIGEXPORT unsigned int SWIGSTDCALL CSharp_Dali_ItemLayout_GetReserveItemCount(v
     }
   }
 
-  jresult = result;
+  jresult = new Dali::Toolkit::ItemView((const Dali::Toolkit::ItemView &)result);
   return jresult;
 }
 
 
-SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ItemLayout_GetDefaultItemSize(void * jarg1, unsigned int jarg2, void * jarg3, void * jarg4) {
-  Dali::Toolkit::ItemLayout *arg1 = (Dali::Toolkit::ItemLayout *) 0 ;
-  unsigned int arg2 ;
-  Dali::Vector3 *arg3 = 0 ;
-  Dali::Vector3 *arg4 = 0 ;
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_ItemView_DownCast(void * jarg1) {
+  void * jresult ;
+  Dali::BaseHandle arg1 ;
+  Dali::BaseHandle *argp1 ;
+  Dali::Toolkit::ItemView result;
 
-  arg1 = (Dali::Toolkit::ItemLayout *)jarg1;
-  arg2 = (unsigned int)jarg2;
-  arg3 = (Dali::Vector3 *)jarg3;
-  if (!arg3) {
-    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::Vector3 const & type is null", 0);
-    return ;
-  }
-  arg4 = (Dali::Vector3 *)jarg4;
-  if (!arg4) {
-    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::Vector3 & type is null", 0);
-    return ;
+  argp1 = (Dali::BaseHandle *)jarg1;
+  if (!argp1) {
+    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null Dali::BaseHandle", 0);
+    return 0;
   }
+  arg1 = *argp1;
   {
     try {
-      ((Dali::Toolkit::ItemLayout const *)arg1)->GetDefaultItemSize(arg2,(Dali::Vector3 const &)*arg3,*arg4);
+      result = Dali::Toolkit::ItemView::DownCast(arg1);
     } catch (std::out_of_range& e) {
       {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
+        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
       };
     } catch (std::exception& e) {
       {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return ;
+        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
       };
     } catch (Dali::DaliException e) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return ;
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
       };
     } catch (...) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ;
+        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
       };
     }
   }
 
+  jresult = new Dali::Toolkit::ItemView((const Dali::Toolkit::ItemView &)result);
+  return jresult;
 }
 
 
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_ItemLayout_GetScrollDirection(void * jarg1) {
-  void * jresult ;
-  Dali::Toolkit::ItemLayout *arg1 = (Dali::Toolkit::ItemLayout *) 0 ;
-  Dali::Degree result;
+SWIGEXPORT unsigned int SWIGSTDCALL CSharp_Dali_ItemView_GetLayoutCount(void * jarg1) {
+  unsigned int jresult ;
+  Dali::Toolkit::ItemView *arg1 = (Dali::Toolkit::ItemView *) 0 ;
+  unsigned int result;
 
-  arg1 = (Dali::Toolkit::ItemLayout *)jarg1;
+  arg1 = (Dali::Toolkit::ItemView *)jarg1;
   {
     try {
-      result = ((Dali::Toolkit::ItemLayout const *)arg1)->GetScrollDirection();
+      result = (unsigned int)((Dali::Toolkit::ItemView const *)arg1)->GetLayoutCount();
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -75613,86 +74956,88 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_ItemLayout_GetScrollDirection(void * j
     }
   }
 
-  jresult = new Dali::Degree((const Dali::Degree &)result);
+  jresult = result;
   return jresult;
 }
 
 
-SWIGEXPORT float SWIGSTDCALL CSharp_Dali_ItemLayout_GetScrollSpeedFactor(void * jarg1) {
-  float jresult ;
-  Dali::Toolkit::ItemLayout *arg1 = (Dali::Toolkit::ItemLayout *) 0 ;
-  float result;
+SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ItemView_AddLayout(void * jarg1, void * jarg2) {
+  Dali::Toolkit::ItemView *arg1 = (Dali::Toolkit::ItemView *) 0 ;
+  Dali::Toolkit::ItemLayout *arg2 = 0 ;
 
-  arg1 = (Dali::Toolkit::ItemLayout *)jarg1;
+  arg1 = (Dali::Toolkit::ItemView *)jarg1;
+  arg2 = (Dali::Toolkit::ItemLayout *)jarg2;
+  if (!arg2) {
+    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::Toolkit::ItemLayout & type is null", 0);
+    return ;
+  }
   {
     try {
-      result = (float)((Dali::Toolkit::ItemLayout const *)arg1)->GetScrollSpeedFactor();
+      (arg1)->AddLayout(*arg2);
     } catch (std::out_of_range& e) {
       {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
+        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
       };
     } catch (std::exception& e) {
       {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
+        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return ;
       };
     } catch (Dali::DaliException e) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return ;
       };
     } catch (...) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
+        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ;
       };
     }
   }
 
-  jresult = result;
-  return jresult;
 }
 
 
-SWIGEXPORT float SWIGSTDCALL CSharp_Dali_ItemLayout_GetMaximumSwipeSpeed(void * jarg1) {
-  float jresult ;
-  Dali::Toolkit::ItemLayout *arg1 = (Dali::Toolkit::ItemLayout *) 0 ;
-  float result;
+SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ItemView_RemoveLayout(void * jarg1, unsigned int jarg2) {
+  Dali::Toolkit::ItemView *arg1 = (Dali::Toolkit::ItemView *) 0 ;
+  unsigned int arg2 ;
 
-  arg1 = (Dali::Toolkit::ItemLayout *)jarg1;
+  arg1 = (Dali::Toolkit::ItemView *)jarg1;
+  arg2 = (unsigned int)jarg2;
   {
     try {
-      result = (float)((Dali::Toolkit::ItemLayout const *)arg1)->GetMaximumSwipeSpeed();
+      (arg1)->RemoveLayout(arg2);
     } catch (std::out_of_range& e) {
       {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
+        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
       };
     } catch (std::exception& e) {
       {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
+        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return ;
       };
     } catch (Dali::DaliException e) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return ;
       };
     } catch (...) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
+        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ;
       };
     }
   }
 
-  jresult = result;
-  return jresult;
 }
 
 
-SWIGEXPORT float SWIGSTDCALL CSharp_Dali_ItemLayout_GetItemFlickAnimationDuration(void * jarg1) {
-  float jresult ;
-  Dali::Toolkit::ItemLayout *arg1 = (Dali::Toolkit::ItemLayout *) 0 ;
-  float result;
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_ItemView_GetLayout(void * jarg1, unsigned int jarg2) {
+  void * jresult ;
+  Dali::Toolkit::ItemView *arg1 = (Dali::Toolkit::ItemView *) 0 ;
+  unsigned int arg2 ;
+  SwigValueWrapper< Dali::IntrusivePtr< Dali::Toolkit::ItemLayout > > result;
 
-  arg1 = (Dali::Toolkit::ItemLayout *)jarg1;
+  arg1 = (Dali::Toolkit::ItemView *)jarg1;
+  arg2 = (unsigned int)jarg2;
   {
     try {
-      result = (float)((Dali::Toolkit::ItemLayout const *)arg1)->GetItemFlickAnimationDuration();
+      result = ((Dali::Toolkit::ItemView const *)arg1)->GetLayout(arg2);
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -75712,28 +75057,20 @@ SWIGEXPORT float SWIGSTDCALL CSharp_Dali_ItemLayout_GetItemFlickAnimationDuratio
     }
   }
 
-  jresult = result;
+  jresult = new Dali::Toolkit::ItemLayoutPtr((const Dali::Toolkit::ItemLayoutPtr &)result);
   return jresult;
 }
 
 
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_ItemLayout_GetNextFocusItemID(void * jarg1, int jarg2, int jarg3, int jarg4, unsigned int jarg5) {
-  int jresult ;
-  Dali::Toolkit::ItemLayout *arg1 = (Dali::Toolkit::ItemLayout *) 0 ;
-  int arg2 ;
-  int arg3 ;
-  Dali::Toolkit::Control::KeyboardFocus::Direction arg4 ;
-  bool arg5 ;
-  int result;
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_ItemView_GetActiveLayout(void * jarg1) {
+  void * jresult ;
+  Dali::Toolkit::ItemView *arg1 = (Dali::Toolkit::ItemView *) 0 ;
+  SwigValueWrapper< Dali::IntrusivePtr< Dali::Toolkit::ItemLayout > > result;
 
-  arg1 = (Dali::Toolkit::ItemLayout *)jarg1;
-  arg2 = (int)jarg2;
-  arg3 = (int)jarg3;
-  arg4 = (Dali::Toolkit::Control::KeyboardFocus::Direction)jarg4;
-  arg5 = jarg5 ? true : false;
+  arg1 = (Dali::Toolkit::ItemView *)jarg1;
   {
     try {
-      result = (int)(arg1)->GetNextFocusItemID(arg2,arg3,arg4,arg5);
+      result = ((Dali::Toolkit::ItemView const *)arg1)->GetActiveLayout();
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -75753,20 +75090,22 @@ SWIGEXPORT int SWIGSTDCALL CSharp_Dali_ItemLayout_GetNextFocusItemID(void * jarg
     }
   }
 
-  jresult = result;
+  jresult = new Dali::Toolkit::ItemLayoutPtr((const Dali::Toolkit::ItemLayoutPtr &)result);
   return jresult;
 }
 
 
-SWIGEXPORT float SWIGSTDCALL CSharp_Dali_ItemLayout_GetFlickSpeedFactor(void * jarg1) {
+SWIGEXPORT float SWIGSTDCALL CSharp_Dali_ItemView_GetCurrentLayoutPosition(void * jarg1, unsigned int jarg2) {
   float jresult ;
-  Dali::Toolkit::ItemLayout *arg1 = (Dali::Toolkit::ItemLayout *) 0 ;
+  Dali::Toolkit::ItemView *arg1 = (Dali::Toolkit::ItemView *) 0 ;
+  Dali::Toolkit::ItemId arg2 ;
   float result;
 
-  arg1 = (Dali::Toolkit::ItemLayout *)jarg1;
+  arg1 = (Dali::Toolkit::ItemView *)jarg1;
+  arg2 = (Dali::Toolkit::ItemId)jarg2;
   {
     try {
-      result = (float)((Dali::Toolkit::ItemLayout const *)arg1)->GetFlickSpeedFactor();
+      result = (float)((Dali::Toolkit::ItemView const *)arg1)->GetCurrentLayoutPosition(arg2);
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -75791,33 +75130,25 @@ SWIGEXPORT float SWIGSTDCALL CSharp_Dali_ItemLayout_GetFlickSpeedFactor(void * j
 }
 
 
-SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ItemLayout_ApplyConstraints(void * jarg1, void * jarg2, int jarg3, void * jarg4, void * jarg5) {
-  Dali::Toolkit::ItemLayout *arg1 = (Dali::Toolkit::ItemLayout *) 0 ;
-  Dali::Actor *arg2 = 0 ;
-  int arg3 ;
-  Dali::Vector3 *arg4 = 0 ;
-  Dali::Actor *arg5 = 0 ;
+SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ItemView_ActivateLayout(void * jarg1, unsigned int jarg2, void * jarg3, float jarg4) {
+  Dali::Toolkit::ItemView *arg1 = (Dali::Toolkit::ItemView *) 0 ;
+  unsigned int arg2 ;
+  Dali::Vector3 arg3 ;
+  float arg4 ;
+  Dali::Vector3 *argp3 ;
 
-  arg1 = (Dali::Toolkit::ItemLayout *)jarg1;
-  arg2 = (Dali::Actor *)jarg2;
-  if (!arg2) {
-    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::Actor & type is null", 0);
-    return ;
-  }
-  arg3 = (int)jarg3;
-  arg4 = (Dali::Vector3 *)jarg4;
-  if (!arg4) {
-    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::Vector3 const & type is null", 0);
-    return ;
-  }
-  arg5 = (Dali::Actor *)jarg5;
-  if (!arg5) {
-    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::Actor const & type is null", 0);
+  arg1 = (Dali::Toolkit::ItemView *)jarg1;
+  arg2 = (unsigned int)jarg2;
+  argp3 = (Dali::Vector3 *)jarg3;
+  if (!argp3) {
+    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null Dali::Vector3", 0);
     return ;
   }
+  arg3 = *argp3;
+  arg4 = (float)jarg4;
   {
     try {
-      (arg1)->ApplyConstraints(*arg2,arg3,(Dali::Vector3 const &)*arg4,(Dali::Actor const &)*arg5);
+      (arg1)->ActivateLayout(arg2,arg3,arg4);
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
@@ -75840,155 +75171,139 @@ SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ItemLayout_ApplyConstraints(void * jarg1
 }
 
 
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_ItemLayout_GetItemPosition(void * jarg1, int jarg2, float jarg3, void * jarg4) {
-  void * jresult ;
-  Dali::Toolkit::ItemLayout *arg1 = (Dali::Toolkit::ItemLayout *) 0 ;
-  int arg2 ;
-  float arg3 ;
-  Dali::Vector3 *arg4 = 0 ;
-  Dali::Vector3 result;
+SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ItemView_DeactivateCurrentLayout(void * jarg1) {
+  Dali::Toolkit::ItemView *arg1 = (Dali::Toolkit::ItemView *) 0 ;
 
-  arg1 = (Dali::Toolkit::ItemLayout *)jarg1;
-  arg2 = (int)jarg2;
-  arg3 = (float)jarg3;
-  arg4 = (Dali::Vector3 *)jarg4;
-  if (!arg4) {
-    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::Vector3 const & type is null", 0);
-    return 0;
-  }
+  arg1 = (Dali::Toolkit::ItemView *)jarg1;
   {
     try {
-      result = ((Dali::Toolkit::ItemLayout const *)arg1)->GetItemPosition(arg2,arg3,(Dali::Vector3 const &)*arg4);
+      (arg1)->DeactivateCurrentLayout();
     } catch (std::out_of_range& e) {
       {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
+        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
       };
     } catch (std::exception& e) {
       {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
+        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return ;
       };
     } catch (Dali::DaliException e) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return ;
       };
     } catch (...) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
+        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ;
       };
     }
   }
 
-  jresult = new Dali::Vector3((const Dali::Vector3 &)result);
-  return jresult;
 }
 
 
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_NewItemLayout(int jarg1) {
-  void * jresult ;
-  Dali::Toolkit::DefaultItemLayout::Type arg1 ;
-  SwigValueWrapper< Dali::IntrusivePtr< Dali::Toolkit::ItemLayout > > result;
+SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ItemView_SetMinimumSwipeSpeed(void * jarg1, float jarg2) {
+  Dali::Toolkit::ItemView *arg1 = (Dali::Toolkit::ItemView *) 0 ;
+  float arg2 ;
 
-  arg1 = (Dali::Toolkit::DefaultItemLayout::Type)jarg1;
+  arg1 = (Dali::Toolkit::ItemView *)jarg1;
+  arg2 = (float)jarg2;
   {
     try {
-      result = Dali::Toolkit::DefaultItemLayout::New(arg1);
+      (arg1)->SetMinimumSwipeSpeed(arg2);
     } catch (std::out_of_range& e) {
       {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
+        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
       };
     } catch (std::exception& e) {
       {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
+        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return ;
       };
     } catch (Dali::DaliException e) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return ;
       };
     } catch (...) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
+        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ;
       };
     }
   }
 
-  jresult = new Dali::Toolkit::ItemLayoutPtr((const Dali::Toolkit::ItemLayoutPtr &)result);
-  return jresult;
 }
 
 
-SWIGEXPORT void SWIGSTDCALL CSharp_Dali_delete_ItemFactory(void * jarg1) {
-  Dali::Toolkit::ItemFactory *arg1 = (Dali::Toolkit::ItemFactory *) 0 ;
+SWIGEXPORT float SWIGSTDCALL CSharp_Dali_ItemView_GetMinimumSwipeSpeed(void * jarg1) {
+  float jresult ;
+  Dali::Toolkit::ItemView *arg1 = (Dali::Toolkit::ItemView *) 0 ;
+  float result;
 
-  arg1 = (Dali::Toolkit::ItemFactory *)jarg1;
+  arg1 = (Dali::Toolkit::ItemView *)jarg1;
   {
     try {
-      delete arg1;
+      result = (float)((Dali::Toolkit::ItemView const *)arg1)->GetMinimumSwipeSpeed();
     } catch (std::out_of_range& e) {
       {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
+        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
       };
     } catch (std::exception& e) {
       {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return ;
+        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
       };
     } catch (Dali::DaliException e) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return ;
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
       };
     } catch (...) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ;
+        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
       };
     }
   }
 
+  jresult = result;
+  return jresult;
 }
 
 
-SWIGEXPORT unsigned int SWIGSTDCALL CSharp_Dali_ItemFactory_GetNumberOfItems(void * jarg1) {
-  unsigned int jresult ;
-  Dali::Toolkit::ItemFactory *arg1 = (Dali::Toolkit::ItemFactory *) 0 ;
-  unsigned int result;
+SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ItemView_SetMinimumSwipeDistance(void * jarg1, float jarg2) {
+  Dali::Toolkit::ItemView *arg1 = (Dali::Toolkit::ItemView *) 0 ;
+  float arg2 ;
 
-  arg1 = (Dali::Toolkit::ItemFactory *)jarg1;
+  arg1 = (Dali::Toolkit::ItemView *)jarg1;
+  arg2 = (float)jarg2;
   {
     try {
-      result = (unsigned int)(arg1)->GetNumberOfItems();
+      (arg1)->SetMinimumSwipeDistance(arg2);
     } catch (std::out_of_range& e) {
       {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
+        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
       };
     } catch (std::exception& e) {
       {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
+        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return ;
       };
     } catch (Dali::DaliException e) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return ;
       };
     } catch (...) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
+        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ;
       };
     }
   }
 
-  jresult = result;
-  return jresult;
 }
 
 
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_ItemFactory_NewItem(void * jarg1, unsigned int jarg2) {
-  void * jresult ;
-  Dali::Toolkit::ItemFactory *arg1 = (Dali::Toolkit::ItemFactory *) 0 ;
-  unsigned int arg2 ;
-  Dali::Actor result;
+SWIGEXPORT float SWIGSTDCALL CSharp_Dali_ItemView_GetMinimumSwipeDistance(void * jarg1) {
+  float jresult ;
+  Dali::Toolkit::ItemView *arg1 = (Dali::Toolkit::ItemView *) 0 ;
+  float result;
 
-  arg1 = (Dali::Toolkit::ItemFactory *)jarg1;
-  arg2 = (unsigned int)jarg2;
+  arg1 = (Dali::Toolkit::ItemView *)jarg1;
   {
     try {
-      result = (arg1)->NewItem(arg2);
+      result = (float)((Dali::Toolkit::ItemView const *)arg1)->GetMinimumSwipeDistance();
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -76008,28 +75323,20 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_ItemFactory_NewItem(void * jarg1, unsi
     }
   }
 
-  jresult = new Dali::Actor((const Dali::Actor &)result);
+  jresult = result;
   return jresult;
 }
 
 
-SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ItemFactory_ItemReleased(void * jarg1, unsigned int jarg2, void * jarg3) {
-  Dali::Toolkit::ItemFactory *arg1 = (Dali::Toolkit::ItemFactory *) 0 ;
-  unsigned int arg2 ;
-  Dali::Actor arg3 ;
-  Dali::Actor *argp3 ;
+SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ItemView_SetWheelScrollDistanceStep(void * jarg1, float jarg2) {
+  Dali::Toolkit::ItemView *arg1 = (Dali::Toolkit::ItemView *) 0 ;
+  float arg2 ;
 
-  arg1 = (Dali::Toolkit::ItemFactory *)jarg1;
-  arg2 = (unsigned int)jarg2;
-  argp3 = (Dali::Actor *)jarg3;
-  if (!argp3) {
-    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null Dali::Actor", 0);
-    return ;
-  }
-  arg3 = *argp3;
+  arg1 = (Dali::Toolkit::ItemView *)jarg1;
+  arg2 = (float)jarg2;
   {
     try {
-      (arg1)->ItemReleased(arg2,arg3);
+      (arg1)->SetWheelScrollDistanceStep(arg2);
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
@@ -76052,202 +75359,83 @@ SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ItemFactory_ItemReleased(void * jarg1, u
 }
 
 
-SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ItemFactory_ItemReleasedSwigExplicitItemFactory(void * jarg1, unsigned int jarg2, void * jarg3) {
-  Dali::Toolkit::ItemFactory *arg1 = (Dali::Toolkit::ItemFactory *) 0 ;
-  unsigned int arg2 ;
-  Dali::Actor arg3 ;
-  Dali::Actor *argp3 ;
+SWIGEXPORT float SWIGSTDCALL CSharp_Dali_ItemView_GetWheelScrollDistanceStep(void * jarg1) {
+  float jresult ;
+  Dali::Toolkit::ItemView *arg1 = (Dali::Toolkit::ItemView *) 0 ;
+  float result;
 
-  arg1 = (Dali::Toolkit::ItemFactory *)jarg1;
-  arg2 = (unsigned int)jarg2;
-  argp3 = (Dali::Actor *)jarg3;
-  if (!argp3) {
-    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null Dali::Actor", 0);
-    return ;
-  }
-  arg3 = *argp3;
+  arg1 = (Dali::Toolkit::ItemView *)jarg1;
   {
     try {
-      (arg1)->Dali::Toolkit::ItemFactory::ItemReleased(arg2,arg3);
+      result = (float)((Dali::Toolkit::ItemView const *)arg1)->GetWheelScrollDistanceStep();
     } catch (std::out_of_range& e) {
       {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
+        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
       };
     } catch (std::exception& e) {
       {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return ;
+        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
       };
     } catch (Dali::DaliException e) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return ;
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
       };
     } catch (...) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ;
+        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
       };
     }
   }
 
+  jresult = result;
+  return jresult;
 }
 
 
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_ItemFactory() {
-  void * jresult ;
-  Dali::Toolkit::ItemFactory *result = 0 ;
+SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ItemView_SetAnchoring(void * jarg1, unsigned int jarg2) {
+  Dali::Toolkit::ItemView *arg1 = (Dali::Toolkit::ItemView *) 0 ;
+  bool arg2 ;
 
+  arg1 = (Dali::Toolkit::ItemView *)jarg1;
+  arg2 = jarg2 ? true : false;
   {
     try {
-      result = (Dali::Toolkit::ItemFactory *)new SwigDirector_ItemFactory();
+      (arg1)->SetAnchoring(arg2);
     } catch (std::out_of_range& e) {
       {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
+        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
       };
     } catch (std::exception& e) {
       {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
+        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return ;
       };
     } catch (Dali::DaliException e) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return ;
       };
     } catch (...) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
+        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ;
       };
     }
   }
 
-  jresult = (void *)result;
-  return jresult;
-}
-
-
-SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ItemFactory_director_connect(void *objarg, SwigDirector_ItemFactory::SWIG_Callback0_t callback0, SwigDirector_ItemFactory::SWIG_Callback1_t callback1, SwigDirector_ItemFactory::SWIG_Callback2_t callback2) {
-  Dali::Toolkit::ItemFactory *obj = (Dali::Toolkit::ItemFactory *)objarg;
-  SwigDirector_ItemFactory *director = dynamic_cast<SwigDirector_ItemFactory *>(obj);
-  if (director) {
-    director->swig_connect_director(callback0, callback1, callback2);
-  }
-}
-
-
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_ItemView_Property_MINIMUM_SWIPE_SPEED_get() {
-  int jresult ;
-  int result;
-
-  result = (int)Dali::Toolkit::ItemView::Property::MINIMUM_SWIPE_SPEED;
-  jresult = (int)result;
-  return jresult;
-}
-
-
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_ItemView_Property_MINIMUM_SWIPE_DISTANCE_get() {
-  int jresult ;
-  int result;
-
-  result = (int)Dali::Toolkit::ItemView::Property::MINIMUM_SWIPE_DISTANCE;
-  jresult = (int)result;
-  return jresult;
-}
-
-
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_ItemView_Property_WHEEL_SCROLL_DISTANCE_STEP_get() {
-  int jresult ;
-  int result;
-
-  result = (int)Dali::Toolkit::ItemView::Property::WHEEL_SCROLL_DISTANCE_STEP;
-  jresult = (int)result;
-  return jresult;
-}
-
-
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_ItemView_Property_SNAP_TO_ITEM_ENABLED_get() {
-  int jresult ;
-  int result;
-
-  result = (int)Dali::Toolkit::ItemView::Property::SNAP_TO_ITEM_ENABLED;
-  jresult = (int)result;
-  return jresult;
-}
-
-
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_ItemView_Property_REFRESH_INTERVAL_get() {
-  int jresult ;
-  int result;
-
-  result = (int)Dali::Toolkit::ItemView::Property::REFRESH_INTERVAL;
-  jresult = (int)result;
-  return jresult;
-}
-
-
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_ItemView_Property_LAYOUT_POSITION_get() {
-  int jresult ;
-  int result;
-
-  result = (int)Dali::Toolkit::ItemView::Property::LAYOUT_POSITION;
-  jresult = (int)result;
-  return jresult;
-}
-
-
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_ItemView_Property_SCROLL_SPEED_get() {
-  int jresult ;
-  int result;
-
-  result = (int)Dali::Toolkit::ItemView::Property::SCROLL_SPEED;
-  jresult = (int)result;
-  return jresult;
-}
-
-
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_ItemView_Property_OVERSHOOT_get() {
-  int jresult ;
-  int result;
-
-  result = (int)Dali::Toolkit::ItemView::Property::OVERSHOOT;
-  jresult = (int)result;
-  return jresult;
-}
-
-
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_ItemView_Property_SCROLL_DIRECTION_get() {
-  int jresult ;
-  int result;
-
-  result = (int)Dali::Toolkit::ItemView::Property::SCROLL_DIRECTION;
-  jresult = (int)result;
-  return jresult;
-}
-
-
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_ItemView_Property_LAYOUT_ORIENTATION_get() {
-  int jresult ;
-  int result;
-
-  result = (int)Dali::Toolkit::ItemView::Property::LAYOUT_ORIENTATION;
-  jresult = (int)result;
-  return jresult;
 }
 
+//// ========================= end of part 3 =============================
 
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_ItemView_Property_SCROLL_CONTENT_SIZE_get() {
-  int jresult ;
-  int result;
-
-  result = (int)Dali::Toolkit::ItemView::Property::SCROLL_CONTENT_SIZE;
-  jresult = (int)result;
-  return jresult;
-}
+//// ========================== start part 4 ===============================
 
 
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_ItemView_Property() {
-  void * jresult ;
-  Dali::Toolkit::ItemView::Property *result = 0 ;
+SWIGEXPORT unsigned int SWIGSTDCALL CSharp_Dali_ItemView_GetAnchoring(void * jarg1) {
+  unsigned int jresult ;
+  Dali::Toolkit::ItemView *arg1 = (Dali::Toolkit::ItemView *) 0 ;
+  bool result;
 
+  arg1 = (Dali::Toolkit::ItemView *)jarg1;
   {
     try {
-      result = (Dali::Toolkit::ItemView::Property *)new Dali::Toolkit::ItemView::Property();
+      result = (bool)((Dali::Toolkit::ItemView const *)arg1)->GetAnchoring();
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -76267,18 +75455,20 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_ItemView_Property() {
     }
   }
 
-  jresult = (void *)result;
+  jresult = result;
   return jresult;
 }
 
 
-SWIGEXPORT void SWIGSTDCALL CSharp_Dali_delete_ItemView_Property(void * jarg1) {
-  Dali::Toolkit::ItemView::Property *arg1 = (Dali::Toolkit::ItemView::Property *) 0 ;
+SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ItemView_SetAnchoringDuration(void * jarg1, float jarg2) {
+  Dali::Toolkit::ItemView *arg1 = (Dali::Toolkit::ItemView *) 0 ;
+  float arg2 ;
 
-  arg1 = (Dali::Toolkit::ItemView::Property *)jarg1;
+  arg1 = (Dali::Toolkit::ItemView *)jarg1;
+  arg2 = (float)jarg2;
   {
     try {
-      delete arg1;
+      (arg1)->SetAnchoringDuration(arg2);
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
@@ -76301,13 +75491,15 @@ SWIGEXPORT void SWIGSTDCALL CSharp_Dali_delete_ItemView_Property(void * jarg1) {
 }
 
 
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_ItemView__SWIG_0() {
-  void * jresult ;
-  Dali::Toolkit::ItemView *result = 0 ;
+SWIGEXPORT float SWIGSTDCALL CSharp_Dali_ItemView_GetAnchoringDuration(void * jarg1) {
+  float jresult ;
+  Dali::Toolkit::ItemView *arg1 = (Dali::Toolkit::ItemView *) 0 ;
+  float result;
 
+  arg1 = (Dali::Toolkit::ItemView *)jarg1;
   {
     try {
-      result = (Dali::Toolkit::ItemView *)new Dali::Toolkit::ItemView();
+      result = (float)((Dali::Toolkit::ItemView const *)arg1)->GetAnchoringDuration();
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -76327,168 +75519,148 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_ItemView__SWIG_0() {
     }
   }
 
-  jresult = (void *)result;
+  jresult = result;
   return jresult;
 }
 
 
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_ItemView__SWIG_1(void * jarg1) {
-  void * jresult ;
-  Dali::Toolkit::ItemView *arg1 = 0 ;
-  Dali::Toolkit::ItemView *result = 0 ;
+SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ItemView_ScrollToItem(void * jarg1, unsigned int jarg2, float jarg3) {
+  Dali::Toolkit::ItemView *arg1 = (Dali::Toolkit::ItemView *) 0 ;
+  Dali::Toolkit::ItemId arg2 ;
+  float arg3 ;
 
   arg1 = (Dali::Toolkit::ItemView *)jarg1;
-  if (!arg1) {
-    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::Toolkit::ItemView const & type is null", 0);
-    return 0;
-  }
+  arg2 = (Dali::Toolkit::ItemId)jarg2;
+  arg3 = (float)jarg3;
   {
     try {
-      result = (Dali::Toolkit::ItemView *)new Dali::Toolkit::ItemView((Dali::Toolkit::ItemView const &)*arg1);
+      (arg1)->ScrollToItem(arg2,arg3);
     } catch (std::out_of_range& e) {
       {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
+        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
       };
     } catch (std::exception& e) {
       {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
+        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return ;
       };
     } catch (Dali::DaliException e) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return ;
       };
     } catch (...) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
+        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ;
       };
     }
   }
 
-  jresult = (void *)result;
-  return jresult;
 }
 
 
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_ItemView_Assign(void * jarg1, void * jarg2) {
-  void * jresult ;
+SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ItemView_SetRefreshInterval(void * jarg1, float jarg2) {
   Dali::Toolkit::ItemView *arg1 = (Dali::Toolkit::ItemView *) 0 ;
-  Dali::Toolkit::ItemView *arg2 = 0 ;
-  Dali::Toolkit::ItemView *result = 0 ;
+  float arg2 ;
 
   arg1 = (Dali::Toolkit::ItemView *)jarg1;
-  arg2 = (Dali::Toolkit::ItemView *)jarg2;
-  if (!arg2) {
-    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::Toolkit::ItemView const & type is null", 0);
-    return 0;
-  }
+  arg2 = (float)jarg2;
   {
     try {
-      result = (Dali::Toolkit::ItemView *) &(arg1)->operator =((Dali::Toolkit::ItemView const &)*arg2);
+      (arg1)->SetRefreshInterval(arg2);
     } catch (std::out_of_range& e) {
       {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
+        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
       };
     } catch (std::exception& e) {
       {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
+        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return ;
       };
     } catch (Dali::DaliException e) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return ;
       };
     } catch (...) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
+        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ;
       };
     }
   }
 
-  jresult = (void *)result;
-  return jresult;
 }
 
 
-SWIGEXPORT void SWIGSTDCALL CSharp_Dali_delete_ItemView(void * jarg1) {
+SWIGEXPORT float SWIGSTDCALL CSharp_Dali_ItemView_GetRefreshInterval(void * jarg1) {
+  float jresult ;
   Dali::Toolkit::ItemView *arg1 = (Dali::Toolkit::ItemView *) 0 ;
+  float result;
 
   arg1 = (Dali::Toolkit::ItemView *)jarg1;
   {
     try {
-      delete arg1;
+      result = (float)((Dali::Toolkit::ItemView const *)arg1)->GetRefreshInterval();
     } catch (std::out_of_range& e) {
       {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
+        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
       };
     } catch (std::exception& e) {
       {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return ;
+        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
       };
     } catch (Dali::DaliException e) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return ;
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
       };
     } catch (...) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ;
+        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
       };
     }
   }
 
+  jresult = result;
+  return jresult;
 }
 
 
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_ItemView_New(void * jarg1) {
-  void * jresult ;
-  Dali::Toolkit::ItemFactory *arg1 = 0 ;
-  Dali::Toolkit::ItemView result;
+SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ItemView_Refresh(void * jarg1) {
+  Dali::Toolkit::ItemView *arg1 = (Dali::Toolkit::ItemView *) 0 ;
 
-  arg1 = (Dali::Toolkit::ItemFactory *)jarg1;
-  if (!arg1) {
-    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::Toolkit::ItemFactory & type is null", 0);
-    return 0;
-  }
+  arg1 = (Dali::Toolkit::ItemView *)jarg1;
   {
     try {
-      result = Dali::Toolkit::ItemView::New(*arg1);
+      (arg1)->Refresh();
     } catch (std::out_of_range& e) {
       {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
+        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
       };
     } catch (std::exception& e) {
       {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
+        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return ;
       };
     } catch (Dali::DaliException e) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return ;
       };
     } catch (...) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
+        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ;
       };
     }
   }
 
-  jresult = new Dali::Toolkit::ItemView((const Dali::Toolkit::ItemView &)result);
-  return jresult;
 }
 
 
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_ItemView_DownCast(void * jarg1) {
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_ItemView_GetItem(void * jarg1, unsigned int jarg2) {
   void * jresult ;
-  Dali::BaseHandle arg1 ;
-  Dali::BaseHandle *argp1 ;
-  Dali::Toolkit::ItemView result;
+  Dali::Toolkit::ItemView *arg1 = (Dali::Toolkit::ItemView *) 0 ;
+  Dali::Toolkit::ItemId arg2 ;
+  Dali::Actor result;
 
-  argp1 = (Dali::BaseHandle *)jarg1;
-  if (!argp1) {
-    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null Dali::BaseHandle", 0);
-    return 0;
-  }
-  arg1 = *argp1;
+  arg1 = (Dali::Toolkit::ItemView *)jarg1;
+  arg2 = (Dali::Toolkit::ItemId)jarg2;
   {
     try {
-      result = Dali::Toolkit::ItemView::DownCast(arg1);
+      result = ((Dali::Toolkit::ItemView const *)arg1)->GetItem(arg2);
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -76508,20 +75680,28 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_ItemView_DownCast(void * jarg1) {
     }
   }
 
-  jresult = new Dali::Toolkit::ItemView((const Dali::Toolkit::ItemView &)result);
+  jresult = new Dali::Actor((const Dali::Actor &)result);
   return jresult;
 }
 
 
-SWIGEXPORT unsigned int SWIGSTDCALL CSharp_Dali_ItemView_GetLayoutCount(void * jarg1) {
+SWIGEXPORT unsigned int SWIGSTDCALL CSharp_Dali_ItemView_GetItemId(void * jarg1, void * jarg2) {
   unsigned int jresult ;
   Dali::Toolkit::ItemView *arg1 = (Dali::Toolkit::ItemView *) 0 ;
-  unsigned int result;
+  Dali::Actor arg2 ;
+  Dali::Actor *argp2 ;
+  Dali::Toolkit::ItemId result;
 
   arg1 = (Dali::Toolkit::ItemView *)jarg1;
+  argp2 = (Dali::Actor *)jarg2;
+  if (!argp2) {
+    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null Dali::Actor", 0);
+    return 0;
+  }
+  arg2 = *argp2;
   {
     try {
-      result = (unsigned int)((Dali::Toolkit::ItemView const *)arg1)->GetLayoutCount();
+      result = (Dali::Toolkit::ItemId)((Dali::Toolkit::ItemView const *)arg1)->GetItemId(arg2);
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -76546,19 +75726,23 @@ SWIGEXPORT unsigned int SWIGSTDCALL CSharp_Dali_ItemView_GetLayoutCount(void * j
 }
 
 
-SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ItemView_AddLayout(void * jarg1, void * jarg2) {
+SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ItemView_InsertItem(void * jarg1, void * jarg2, float jarg3) {
   Dali::Toolkit::ItemView *arg1 = (Dali::Toolkit::ItemView *) 0 ;
-  Dali::Toolkit::ItemLayout *arg2 = 0 ;
+  Dali::Toolkit::Item arg2 ;
+  float arg3 ;
+  Dali::Toolkit::Item *argp2 ;
 
   arg1 = (Dali::Toolkit::ItemView *)jarg1;
-  arg2 = (Dali::Toolkit::ItemLayout *)jarg2;
-  if (!arg2) {
-    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::Toolkit::ItemLayout & type is null", 0);
+  argp2 = (Dali::Toolkit::Item *)jarg2;
+  if (!argp2) {
+    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null Dali::Toolkit::Item", 0);
     return ;
   }
+  arg2 = *argp2;
+  arg3 = (float)jarg3;
   {
     try {
-      (arg1)->AddLayout(*arg2);
+      (arg1)->InsertItem(arg2,arg3);
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
@@ -76581,15 +75765,21 @@ SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ItemView_AddLayout(void * jarg1, void *
 }
 
 
-SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ItemView_RemoveLayout(void * jarg1, unsigned int jarg2) {
+SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ItemView_InsertItems(void * jarg1, void * jarg2, float jarg3) {
   Dali::Toolkit::ItemView *arg1 = (Dali::Toolkit::ItemView *) 0 ;
-  unsigned int arg2 ;
+  Dali::Toolkit::ItemContainer *arg2 = 0 ;
+  float arg3 ;
 
   arg1 = (Dali::Toolkit::ItemView *)jarg1;
-  arg2 = (unsigned int)jarg2;
+  arg2 = (Dali::Toolkit::ItemContainer *)jarg2;
+  if (!arg2) {
+    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::Toolkit::ItemContainer const & type is null", 0);
+    return ;
+  }
+  arg3 = (float)jarg3;
   {
     try {
-      (arg1)->RemoveLayout(arg2);
+      (arg1)->InsertItems((Dali::Toolkit::ItemContainer const &)*arg2,arg3);
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
@@ -76612,128 +75802,130 @@ SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ItemView_RemoveLayout(void * jarg1, unsi
 }
 
 
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_ItemView_GetLayout(void * jarg1, unsigned int jarg2) {
-  void * jresult ;
+SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ItemView_RemoveItem(void * jarg1, unsigned int jarg2, float jarg3) {
   Dali::Toolkit::ItemView *arg1 = (Dali::Toolkit::ItemView *) 0 ;
-  unsigned int arg2 ;
-  SwigValueWrapper< Dali::IntrusivePtr< Dali::Toolkit::ItemLayout > > result;
+  Dali::Toolkit::ItemId arg2 ;
+  float arg3 ;
 
   arg1 = (Dali::Toolkit::ItemView *)jarg1;
-  arg2 = (unsigned int)jarg2;
+  arg2 = (Dali::Toolkit::ItemId)jarg2;
+  arg3 = (float)jarg3;
   {
     try {
-      result = ((Dali::Toolkit::ItemView const *)arg1)->GetLayout(arg2);
+      (arg1)->RemoveItem(arg2,arg3);
     } catch (std::out_of_range& e) {
       {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
+        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
       };
     } catch (std::exception& e) {
       {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
+        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return ;
       };
     } catch (Dali::DaliException e) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return ;
       };
     } catch (...) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
+        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ;
       };
     }
   }
 
-  jresult = new Dali::Toolkit::ItemLayoutPtr((const Dali::Toolkit::ItemLayoutPtr &)result);
-  return jresult;
 }
 
 
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_ItemView_GetActiveLayout(void * jarg1) {
-  void * jresult ;
+SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ItemView_RemoveItems(void * jarg1, void * jarg2, float jarg3) {
   Dali::Toolkit::ItemView *arg1 = (Dali::Toolkit::ItemView *) 0 ;
-  SwigValueWrapper< Dali::IntrusivePtr< Dali::Toolkit::ItemLayout > > result;
+  Dali::Toolkit::ItemIdContainer *arg2 = 0 ;
+  float arg3 ;
 
   arg1 = (Dali::Toolkit::ItemView *)jarg1;
+  arg2 = (Dali::Toolkit::ItemIdContainer *)jarg2;
+  if (!arg2) {
+    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::Toolkit::ItemIdContainer const & type is null", 0);
+    return ;
+  }
+  arg3 = (float)jarg3;
   {
     try {
-      result = ((Dali::Toolkit::ItemView const *)arg1)->GetActiveLayout();
+      (arg1)->RemoveItems((Dali::Toolkit::ItemIdContainer const &)*arg2,arg3);
     } catch (std::out_of_range& e) {
       {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
+        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
       };
     } catch (std::exception& e) {
       {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
+        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return ;
       };
     } catch (Dali::DaliException e) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return ;
       };
     } catch (...) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
+        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ;
       };
     }
   }
 
-  jresult = new Dali::Toolkit::ItemLayoutPtr((const Dali::Toolkit::ItemLayoutPtr &)result);
-  return jresult;
 }
 
 
-SWIGEXPORT float SWIGSTDCALL CSharp_Dali_ItemView_GetCurrentLayoutPosition(void * jarg1, unsigned int jarg2) {
-  float jresult ;
+SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ItemView_ReplaceItem(void * jarg1, void * jarg2, float jarg3) {
   Dali::Toolkit::ItemView *arg1 = (Dali::Toolkit::ItemView *) 0 ;
-  Dali::Toolkit::ItemId arg2 ;
-  float result;
+  Dali::Toolkit::Item arg2 ;
+  float arg3 ;
+  Dali::Toolkit::Item *argp2 ;
 
   arg1 = (Dali::Toolkit::ItemView *)jarg1;
-  arg2 = (Dali::Toolkit::ItemId)jarg2;
+  argp2 = (Dali::Toolkit::Item *)jarg2;
+  if (!argp2) {
+    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null Dali::Toolkit::Item", 0);
+    return ;
+  }
+  arg2 = *argp2;
+  arg3 = (float)jarg3;
   {
     try {
-      result = (float)((Dali::Toolkit::ItemView const *)arg1)->GetCurrentLayoutPosition(arg2);
+      (arg1)->ReplaceItem(arg2,arg3);
     } catch (std::out_of_range& e) {
       {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
+        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
       };
     } catch (std::exception& e) {
       {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
+        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return ;
       };
     } catch (Dali::DaliException e) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return ;
       };
     } catch (...) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
+        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ;
       };
     }
   }
 
-  jresult = result;
-  return jresult;
 }
 
 
-SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ItemView_ActivateLayout(void * jarg1, unsigned int jarg2, void * jarg3, float jarg4) {
+SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ItemView_ReplaceItems(void * jarg1, void * jarg2, float jarg3) {
   Dali::Toolkit::ItemView *arg1 = (Dali::Toolkit::ItemView *) 0 ;
-  unsigned int arg2 ;
-  Dali::Vector3 arg3 ;
-  float arg4 ;
-  Dali::Vector3 *argp3 ;
+  Dali::Toolkit::ItemContainer *arg2 = 0 ;
+  float arg3 ;
 
   arg1 = (Dali::Toolkit::ItemView *)jarg1;
-  arg2 = (unsigned int)jarg2;
-  argp3 = (Dali::Vector3 *)jarg3;
-  if (!argp3) {
-    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null Dali::Vector3", 0);
+  arg2 = (Dali::Toolkit::ItemContainer *)jarg2;
+  if (!arg2) {
+    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::Toolkit::ItemContainer const & type is null", 0);
     return ;
   }
-  arg3 = *argp3;
-  arg4 = (float)jarg4;
+  arg3 = (float)jarg3;
   {
     try {
-      (arg1)->ActivateLayout(arg2,arg3,arg4);
+      (arg1)->ReplaceItems((Dali::Toolkit::ItemContainer const &)*arg2,arg3);
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
@@ -76756,13 +75948,19 @@ SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ItemView_ActivateLayout(void * jarg1, un
 }
 
 
-SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ItemView_DeactivateCurrentLayout(void * jarg1) {
+SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ItemView_SetItemsParentOrigin(void * jarg1, void * jarg2) {
   Dali::Toolkit::ItemView *arg1 = (Dali::Toolkit::ItemView *) 0 ;
+  Dali::Vector3 *arg2 = 0 ;
 
   arg1 = (Dali::Toolkit::ItemView *)jarg1;
+  arg2 = (Dali::Vector3 *)jarg2;
+  if (!arg2) {
+    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::Vector3 const & type is null", 0);
+    return ;
+  }
   {
     try {
-      (arg1)->DeactivateCurrentLayout();
+      (arg1)->SetItemsParentOrigin((Dali::Vector3 const &)*arg2);
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
@@ -76785,46 +75983,15 @@ SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ItemView_DeactivateCurrentLayout(void *
 }
 
 
-SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ItemView_SetMinimumSwipeSpeed(void * jarg1, float jarg2) {
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_ItemView_GetItemsParentOrigin(void * jarg1) {
+  void * jresult ;
   Dali::Toolkit::ItemView *arg1 = (Dali::Toolkit::ItemView *) 0 ;
-  float arg2 ;
-
-  arg1 = (Dali::Toolkit::ItemView *)jarg1;
-  arg2 = (float)jarg2;
-  {
-    try {
-      (arg1)->SetMinimumSwipeSpeed(arg2);
-    } catch (std::out_of_range& e) {
-      {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
-      };
-    } catch (std::exception& e) {
-      {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return ;
-      };
-    } catch (Dali::DaliException e) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return ;
-      };
-    } catch (...) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ;
-      };
-    }
-  }
-
-}
-
-
-SWIGEXPORT float SWIGSTDCALL CSharp_Dali_ItemView_GetMinimumSwipeSpeed(void * jarg1) {
-  float jresult ;
-  Dali::Toolkit::ItemView *arg1 = (Dali::Toolkit::ItemView *) 0 ;
-  float result;
+  Dali::Vector3 result;
 
   arg1 = (Dali::Toolkit::ItemView *)jarg1;
   {
     try {
-      result = (float)((Dali::Toolkit::ItemView const *)arg1)->GetMinimumSwipeSpeed();
+      result = ((Dali::Toolkit::ItemView const *)arg1)->GetItemsParentOrigin();
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -76844,20 +76011,24 @@ SWIGEXPORT float SWIGSTDCALL CSharp_Dali_ItemView_GetMinimumSwipeSpeed(void * ja
     }
   }
 
-  jresult = result;
+  jresult = new Dali::Vector3((const Dali::Vector3 &)result);
   return jresult;
 }
 
 
-SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ItemView_SetMinimumSwipeDistance(void * jarg1, float jarg2) {
+SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ItemView_SetItemsAnchorPoint(void * jarg1, void * jarg2) {
   Dali::Toolkit::ItemView *arg1 = (Dali::Toolkit::ItemView *) 0 ;
-  float arg2 ;
+  Dali::Vector3 *arg2 = 0 ;
 
   arg1 = (Dali::Toolkit::ItemView *)jarg1;
-  arg2 = (float)jarg2;
+  arg2 = (Dali::Vector3 *)jarg2;
+  if (!arg2) {
+    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::Vector3 const & type is null", 0);
+    return ;
+  }
   {
     try {
-      (arg1)->SetMinimumSwipeDistance(arg2);
+      (arg1)->SetItemsAnchorPoint((Dali::Vector3 const &)*arg2);
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
@@ -76880,15 +76051,15 @@ SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ItemView_SetMinimumSwipeDistance(void *
 }
 
 
-SWIGEXPORT float SWIGSTDCALL CSharp_Dali_ItemView_GetMinimumSwipeDistance(void * jarg1) {
-  float jresult ;
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_ItemView_GetItemsAnchorPoint(void * jarg1) {
+  void * jresult ;
   Dali::Toolkit::ItemView *arg1 = (Dali::Toolkit::ItemView *) 0 ;
-  float result;
+  Dali::Vector3 result;
 
   arg1 = (Dali::Toolkit::ItemView *)jarg1;
   {
     try {
-      result = (float)((Dali::Toolkit::ItemView const *)arg1)->GetMinimumSwipeDistance();
+      result = ((Dali::Toolkit::ItemView const *)arg1)->GetItemsAnchorPoint();
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -76908,20 +76079,24 @@ SWIGEXPORT float SWIGSTDCALL CSharp_Dali_ItemView_GetMinimumSwipeDistance(void *
     }
   }
 
-  jresult = result;
+  jresult = new Dali::Vector3((const Dali::Vector3 &)result);
   return jresult;
 }
 
 
-SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ItemView_SetWheelScrollDistanceStep(void * jarg1, float jarg2) {
+SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ItemView_GetItemsRange(void * jarg1, void * jarg2) {
   Dali::Toolkit::ItemView *arg1 = (Dali::Toolkit::ItemView *) 0 ;
-  float arg2 ;
+  Dali::Toolkit::ItemRange *arg2 = 0 ;
 
   arg1 = (Dali::Toolkit::ItemView *)jarg1;
-  arg2 = (float)jarg2;
+  arg2 = (Dali::Toolkit::ItemRange *)jarg2;
+  if (!arg2) {
+    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::Toolkit::ItemRange & type is null", 0);
+    return ;
+  }
   {
     try {
-      (arg1)->SetWheelScrollDistanceStep(arg2);
+      (arg1)->GetItemsRange(*arg2);
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
@@ -76944,15 +76119,15 @@ SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ItemView_SetWheelScrollDistanceStep(void
 }
 
 
-SWIGEXPORT float SWIGSTDCALL CSharp_Dali_ItemView_GetWheelScrollDistanceStep(void * jarg1) {
-  float jresult ;
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_ItemView_LayoutActivatedSignal(void * jarg1) {
+  void * jresult ;
   Dali::Toolkit::ItemView *arg1 = (Dali::Toolkit::ItemView *) 0 ;
-  float result;
+  Dali::Toolkit::ItemView::LayoutActivatedSignalType *result = 0 ;
 
   arg1 = (Dali::Toolkit::ItemView *)jarg1;
   {
     try {
-      result = (float)((Dali::Toolkit::ItemView const *)arg1)->GetWheelScrollDistanceStep();
+      result = (Dali::Toolkit::ItemView::LayoutActivatedSignalType *) &(arg1)->LayoutActivatedSignal();
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -76972,20 +76147,28 @@ SWIGEXPORT float SWIGSTDCALL CSharp_Dali_ItemView_GetWheelScrollDistanceStep(voi
     }
   }
 
-  jresult = result;
+  jresult = (void *)result;
   return jresult;
 }
 
 
-SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ItemView_SetAnchoring(void * jarg1, unsigned int jarg2) {
-  Dali::Toolkit::ItemView *arg1 = (Dali::Toolkit::ItemView *) 0 ;
-  bool arg2 ;
+SWIGEXPORT void SWIGSTDCALL CSharp_Dali_MoveActorConstraint(void * jarg1, void * jarg2) {
+  Dali::Vector3 *arg1 = 0 ;
+  PropertyInputContainer *arg2 = 0 ;
 
-  arg1 = (Dali::Toolkit::ItemView *)jarg1;
-  arg2 = jarg2 ? true : false;
+  arg1 = (Dali::Vector3 *)jarg1;
+  if (!arg1) {
+    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::Vector3 & type is null", 0);
+    return ;
+  }
+  arg2 = (PropertyInputContainer *)jarg2;
+  if (!arg2) {
+    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "PropertyInputContainer const & type is null", 0);
+    return ;
+  }
   {
     try {
-      (arg1)->SetAnchoring(arg2);
+      Dali::Toolkit::MoveActorConstraint(*arg1,(PropertyInputContainer const &)*arg2);
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
@@ -77007,53 +76190,24 @@ SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ItemView_SetAnchoring(void * jarg1, unsi
 
 }
 
-//// ========================= end of part 3 =============================
-
-//// ========================== start part 4 ===============================
-
 
-SWIGEXPORT unsigned int SWIGSTDCALL CSharp_Dali_ItemView_GetAnchoring(void * jarg1) {
-  unsigned int jresult ;
-  Dali::Toolkit::ItemView *arg1 = (Dali::Toolkit::ItemView *) 0 ;
-  bool result;
+SWIGEXPORT void SWIGSTDCALL CSharp_Dali_WrapActorConstraint(void * jarg1, void * jarg2) {
+  Dali::Vector3 *arg1 = 0 ;
+  PropertyInputContainer *arg2 = 0 ;
 
-  arg1 = (Dali::Toolkit::ItemView *)jarg1;
-  {
-    try {
-      result = (bool)((Dali::Toolkit::ItemView const *)arg1)->GetAnchoring();
-    } catch (std::out_of_range& e) {
-      {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
-      };
-    } catch (std::exception& e) {
-      {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
-      };
-    } catch (Dali::DaliException e) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
-      };
-    } catch (...) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
-      };
-    }
+  arg1 = (Dali::Vector3 *)jarg1;
+  if (!arg1) {
+    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::Vector3 & type is null", 0);
+    return ;
+  }
+  arg2 = (PropertyInputContainer *)jarg2;
+  if (!arg2) {
+    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "PropertyInputContainer const & type is null", 0);
+    return ;
   }
-
-  jresult = result;
-  return jresult;
-}
-
-
-SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ItemView_SetAnchoringDuration(void * jarg1, float jarg2) {
-  Dali::Toolkit::ItemView *arg1 = (Dali::Toolkit::ItemView *) 0 ;
-  float arg2 ;
-
-  arg1 = (Dali::Toolkit::ItemView *)jarg1;
-  arg2 = (float)jarg2;
   {
     try {
-      (arg1)->SetAnchoringDuration(arg2);
+      Dali::Toolkit::WrapActorConstraint(*arg1,(PropertyInputContainer const &)*arg2);
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
@@ -77076,15 +76230,13 @@ SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ItemView_SetAnchoringDuration(void * jar
 }
 
 
-SWIGEXPORT float SWIGSTDCALL CSharp_Dali_ItemView_GetAnchoringDuration(void * jarg1) {
-  float jresult ;
-  Dali::Toolkit::ItemView *arg1 = (Dali::Toolkit::ItemView *) 0 ;
-  float result;
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_ScrollViewEffect() {
+  void * jresult ;
+  Dali::Toolkit::ScrollViewEffect *result = 0 ;
 
-  arg1 = (Dali::Toolkit::ItemView *)jarg1;
   {
     try {
-      result = (float)((Dali::Toolkit::ItemView const *)arg1)->GetAnchoringDuration();
+      result = (Dali::Toolkit::ScrollViewEffect *)new Dali::Toolkit::ScrollViewEffect();
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -77104,22 +76256,18 @@ SWIGEXPORT float SWIGSTDCALL CSharp_Dali_ItemView_GetAnchoringDuration(void * ja
     }
   }
 
-  jresult = result;
+  jresult = (void *)result;
   return jresult;
 }
 
 
-SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ItemView_ScrollToItem(void * jarg1, unsigned int jarg2, float jarg3) {
-  Dali::Toolkit::ItemView *arg1 = (Dali::Toolkit::ItemView *) 0 ;
-  Dali::Toolkit::ItemId arg2 ;
-  float arg3 ;
+SWIGEXPORT void SWIGSTDCALL CSharp_Dali_delete_ScrollViewEffect(void * jarg1) {
+  Dali::Toolkit::ScrollViewEffect *arg1 = (Dali::Toolkit::ScrollViewEffect *) 0 ;
 
-  arg1 = (Dali::Toolkit::ItemView *)jarg1;
-  arg2 = (Dali::Toolkit::ItemId)jarg2;
-  arg3 = (float)jarg3;
+  arg1 = (Dali::Toolkit::ScrollViewEffect *)jarg1;
   {
     try {
-      (arg1)->ScrollToItem(arg2,arg3);
+      delete arg1;
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
@@ -77142,46 +76290,37 @@ SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ItemView_ScrollToItem(void * jarg1, unsi
 }
 
 
-SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ItemView_SetRefreshInterval(void * jarg1, float jarg2) {
-  Dali::Toolkit::ItemView *arg1 = (Dali::Toolkit::ItemView *) 0 ;
-  float arg2 ;
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_ScrollViewPagePathEffect_New(void * jarg1, void * jarg2, int jarg3, void * jarg4, unsigned int jarg5) {
+  void * jresult ;
+  Dali::Path arg1 ;
+  Dali::Vector3 *arg2 = 0 ;
+  Dali::Property::Index arg3 ;
+  Dali::Vector3 *arg4 = 0 ;
+  unsigned int arg5 ;
+  Dali::Path *argp1 ;
+  Dali::Toolkit::ScrollViewPagePathEffect result;
 
-  arg1 = (Dali::Toolkit::ItemView *)jarg1;
-  arg2 = (float)jarg2;
-  {
-    try {
-      (arg1)->SetRefreshInterval(arg2);
-    } catch (std::out_of_range& e) {
-      {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
-      };
-    } catch (std::exception& e) {
-      {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return ;
-      };
-    } catch (Dali::DaliException e) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return ;
-      };
-    } catch (...) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ;
-      };
-    }
+  argp1 = (Dali::Path *)jarg1;
+  if (!argp1) {
+    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null Dali::Path", 0);
+    return 0;
   }
-
-}
-
-
-SWIGEXPORT float SWIGSTDCALL CSharp_Dali_ItemView_GetRefreshInterval(void * jarg1) {
-  float jresult ;
-  Dali::Toolkit::ItemView *arg1 = (Dali::Toolkit::ItemView *) 0 ;
-  float result;
-
-  arg1 = (Dali::Toolkit::ItemView *)jarg1;
+  arg1 = *argp1;
+  arg2 = (Dali::Vector3 *)jarg2;
+  if (!arg2) {
+    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::Vector3 const & type is null", 0);
+    return 0;
+  }
+  arg3 = (Dali::Property::Index)jarg3;
+  arg4 = (Dali::Vector3 *)jarg4;
+  if (!arg4) {
+    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::Vector3 const & type is null", 0);
+    return 0;
+  }
+  arg5 = (unsigned int)jarg5;
   {
     try {
-      result = (float)((Dali::Toolkit::ItemView const *)arg1)->GetRefreshInterval();
+      result = Dali::Toolkit::ScrollViewPagePathEffect::New(arg1,(Dali::Vector3 const &)*arg2,arg3,(Dali::Vector3 const &)*arg4,arg5);
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -77201,51 +76340,18 @@ SWIGEXPORT float SWIGSTDCALL CSharp_Dali_ItemView_GetRefreshInterval(void * jarg
     }
   }
 
-  jresult = result;
+  jresult = new Dali::Toolkit::ScrollViewPagePathEffect((const Dali::Toolkit::ScrollViewPagePathEffect &)result);
   return jresult;
 }
 
 
-SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ItemView_Refresh(void * jarg1) {
-  Dali::Toolkit::ItemView *arg1 = (Dali::Toolkit::ItemView *) 0 ;
-
-  arg1 = (Dali::Toolkit::ItemView *)jarg1;
-  {
-    try {
-      (arg1)->Refresh();
-    } catch (std::out_of_range& e) {
-      {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
-      };
-    } catch (std::exception& e) {
-      {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return ;
-      };
-    } catch (Dali::DaliException e) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return ;
-      };
-    } catch (...) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ;
-      };
-    }
-  }
-
-}
-
-
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_ItemView_GetItem(void * jarg1, unsigned int jarg2) {
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_ScrollViewPagePathEffect() {
   void * jresult ;
-  Dali::Toolkit::ItemView *arg1 = (Dali::Toolkit::ItemView *) 0 ;
-  Dali::Toolkit::ItemId arg2 ;
-  Dali::Actor result;
+  Dali::Toolkit::ScrollViewPagePathEffect *result = 0 ;
 
-  arg1 = (Dali::Toolkit::ItemView *)jarg1;
-  arg2 = (Dali::Toolkit::ItemId)jarg2;
   {
     try {
-      result = ((Dali::Toolkit::ItemView const *)arg1)->GetItem(arg2);
+      result = (Dali::Toolkit::ScrollViewPagePathEffect *)new Dali::Toolkit::ScrollViewPagePathEffect();
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -77265,28 +76371,26 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_ItemView_GetItem(void * jarg1, unsigne
     }
   }
 
-  jresult = new Dali::Actor((const Dali::Actor &)result);
+  jresult = (void *)result;
   return jresult;
 }
 
 
-SWIGEXPORT unsigned int SWIGSTDCALL CSharp_Dali_ItemView_GetItemId(void * jarg1, void * jarg2) {
-  unsigned int jresult ;
-  Dali::Toolkit::ItemView *arg1 = (Dali::Toolkit::ItemView *) 0 ;
-  Dali::Actor arg2 ;
-  Dali::Actor *argp2 ;
-  Dali::Toolkit::ItemId result;
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_ScrollViewPagePathEffect_DownCast(void * jarg1) {
+  void * jresult ;
+  Dali::BaseHandle arg1 ;
+  Dali::BaseHandle *argp1 ;
+  Dali::Toolkit::ScrollViewPagePathEffect result;
 
-  arg1 = (Dali::Toolkit::ItemView *)jarg1;
-  argp2 = (Dali::Actor *)jarg2;
-  if (!argp2) {
-    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null Dali::Actor", 0);
+  argp1 = (Dali::BaseHandle *)jarg1;
+  if (!argp1) {
+    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null Dali::BaseHandle", 0);
     return 0;
   }
-  arg2 = *argp2;
+  arg1 = *argp1;
   {
     try {
-      result = (Dali::Toolkit::ItemId)((Dali::Toolkit::ItemView const *)arg1)->GetItemId(arg2);
+      result = Dali::Toolkit::ScrollViewPagePathEffect::DownCast(arg1);
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -77306,28 +76410,28 @@ SWIGEXPORT unsigned int SWIGSTDCALL CSharp_Dali_ItemView_GetItemId(void * jarg1,
     }
   }
 
-  jresult = result;
+  jresult = new Dali::Toolkit::ScrollViewPagePathEffect((const Dali::Toolkit::ScrollViewPagePathEffect &)result);
   return jresult;
 }
 
 
-SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ItemView_InsertItem(void * jarg1, void * jarg2, float jarg3) {
-  Dali::Toolkit::ItemView *arg1 = (Dali::Toolkit::ItemView *) 0 ;
-  Dali::Toolkit::Item arg2 ;
-  float arg3 ;
-  Dali::Toolkit::Item *argp2 ;
+SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ScrollViewPagePathEffect_ApplyToPage(void * jarg1, void * jarg2, unsigned int jarg3) {
+  Dali::Toolkit::ScrollViewPagePathEffect *arg1 = (Dali::Toolkit::ScrollViewPagePathEffect *) 0 ;
+  Dali::Actor arg2 ;
+  unsigned int arg3 ;
+  Dali::Actor *argp2 ;
 
-  arg1 = (Dali::Toolkit::ItemView *)jarg1;
-  argp2 = (Dali::Toolkit::Item *)jarg2;
+  arg1 = (Dali::Toolkit::ScrollViewPagePathEffect *)jarg1;
+  argp2 = (Dali::Actor *)jarg2;
   if (!argp2) {
-    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null Dali::Toolkit::Item", 0);
+    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null Dali::Actor", 0);
     return ;
   }
   arg2 = *argp2;
-  arg3 = (float)jarg3;
+  arg3 = (unsigned int)jarg3;
   {
     try {
-      (arg1)->InsertItem(arg2,arg3);
+      (arg1)->ApplyToPage(arg2,arg3);
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
@@ -77350,21 +76454,13 @@ SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ItemView_InsertItem(void * jarg1, void *
 }
 
 
-SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ItemView_InsertItems(void * jarg1, void * jarg2, float jarg3) {
-  Dali::Toolkit::ItemView *arg1 = (Dali::Toolkit::ItemView *) 0 ;
-  Dali::Toolkit::ItemContainer *arg2 = 0 ;
-  float arg3 ;
+SWIGEXPORT void SWIGSTDCALL CSharp_Dali_delete_ScrollViewPagePathEffect(void * jarg1) {
+  Dali::Toolkit::ScrollViewPagePathEffect *arg1 = (Dali::Toolkit::ScrollViewPagePathEffect *) 0 ;
 
-  arg1 = (Dali::Toolkit::ItemView *)jarg1;
-  arg2 = (Dali::Toolkit::ItemContainer *)jarg2;
-  if (!arg2) {
-    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::Toolkit::ItemContainer const & type is null", 0);
-    return ;
-  }
-  arg3 = (float)jarg3;
+  arg1 = (Dali::Toolkit::ScrollViewPagePathEffect *)jarg1;
   {
     try {
-      (arg1)->InsertItems((Dali::Toolkit::ItemContainer const &)*arg2,arg3);
+      delete arg1;
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
@@ -77387,54 +76483,88 @@ SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ItemView_InsertItems(void * jarg1, void
 }
 
 
-SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ItemView_RemoveItem(void * jarg1, unsigned int jarg2, float jarg3) {
-  Dali::Toolkit::ItemView *arg1 = (Dali::Toolkit::ItemView *) 0 ;
-  Dali::Toolkit::ItemId arg2 ;
-  float arg3 ;
+SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ClampState2D_x_set(void * jarg1, int jarg2) {
+  Dali::Toolkit::ClampState2D *arg1 = (Dali::Toolkit::ClampState2D *) 0 ;
+  Dali::Toolkit::ClampState arg2 ;
+
+  arg1 = (Dali::Toolkit::ClampState2D *)jarg1;
+  arg2 = (Dali::Toolkit::ClampState)jarg2;
+  if (arg1) (arg1)->x = arg2;
+}
+
+
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_ClampState2D_x_get(void * jarg1) {
+  int jresult ;
+  Dali::Toolkit::ClampState2D *arg1 = (Dali::Toolkit::ClampState2D *) 0 ;
+  Dali::Toolkit::ClampState result;
+
+  arg1 = (Dali::Toolkit::ClampState2D *)jarg1;
+  result = (Dali::Toolkit::ClampState) ((arg1)->x);
+  jresult = (int)result;
+  return jresult;
+}
+
+
+SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ClampState2D_y_set(void * jarg1, int jarg2) {
+  Dali::Toolkit::ClampState2D *arg1 = (Dali::Toolkit::ClampState2D *) 0 ;
+  Dali::Toolkit::ClampState arg2 ;
+
+  arg1 = (Dali::Toolkit::ClampState2D *)jarg1;
+  arg2 = (Dali::Toolkit::ClampState)jarg2;
+  if (arg1) (arg1)->y = arg2;
+}
+
+
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_ClampState2D_y_get(void * jarg1) {
+  int jresult ;
+  Dali::Toolkit::ClampState2D *arg1 = (Dali::Toolkit::ClampState2D *) 0 ;
+  Dali::Toolkit::ClampState result;
+
+  arg1 = (Dali::Toolkit::ClampState2D *)jarg1;
+  result = (Dali::Toolkit::ClampState) ((arg1)->y);
+  jresult = (int)result;
+  return jresult;
+}
+
+
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_ClampState2D() {
+  void * jresult ;
+  Dali::Toolkit::ClampState2D *result = 0 ;
 
-  arg1 = (Dali::Toolkit::ItemView *)jarg1;
-  arg2 = (Dali::Toolkit::ItemId)jarg2;
-  arg3 = (float)jarg3;
   {
     try {
-      (arg1)->RemoveItem(arg2,arg3);
+      result = (Dali::Toolkit::ClampState2D *)new Dali::Toolkit::ClampState2D();
     } catch (std::out_of_range& e) {
       {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
+        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
       };
     } catch (std::exception& e) {
       {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return ;
+        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
       };
     } catch (Dali::DaliException e) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return ;
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
       };
     } catch (...) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ;
+        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
       };
     }
   }
 
+  jresult = (void *)result;
+  return jresult;
 }
 
 
-SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ItemView_RemoveItems(void * jarg1, void * jarg2, float jarg3) {
-  Dali::Toolkit::ItemView *arg1 = (Dali::Toolkit::ItemView *) 0 ;
-  Dali::Toolkit::ItemIdContainer *arg2 = 0 ;
-  float arg3 ;
+SWIGEXPORT void SWIGSTDCALL CSharp_Dali_delete_ClampState2D(void * jarg1) {
+  Dali::Toolkit::ClampState2D *arg1 = (Dali::Toolkit::ClampState2D *) 0 ;
 
-  arg1 = (Dali::Toolkit::ItemView *)jarg1;
-  arg2 = (Dali::Toolkit::ItemIdContainer *)jarg2;
-  if (!arg2) {
-    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::Toolkit::ItemIdContainer const & type is null", 0);
-    return ;
-  }
-  arg3 = (float)jarg3;
+  arg1 = (Dali::Toolkit::ClampState2D *)jarg1;
   {
     try {
-      (arg1)->RemoveItems((Dali::Toolkit::ItemIdContainer const &)*arg2,arg3);
+      delete arg1;
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
@@ -77457,126 +76587,159 @@ SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ItemView_RemoveItems(void * jarg1, void
 }
 
 
-SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ItemView_ReplaceItem(void * jarg1, void * jarg2, float jarg3) {
-  Dali::Toolkit::ItemView *arg1 = (Dali::Toolkit::ItemView *) 0 ;
-  Dali::Toolkit::Item arg2 ;
-  float arg3 ;
-  Dali::Toolkit::Item *argp2 ;
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_RulerDomain__SWIG_0(float jarg1, float jarg2, unsigned int jarg3) {
+  void * jresult ;
+  float arg1 ;
+  float arg2 ;
+  bool arg3 ;
+  Dali::Toolkit::RulerDomain *result = 0 ;
 
-  arg1 = (Dali::Toolkit::ItemView *)jarg1;
-  argp2 = (Dali::Toolkit::Item *)jarg2;
-  if (!argp2) {
-    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null Dali::Toolkit::Item", 0);
-    return ;
-  }
-  arg2 = *argp2;
-  arg3 = (float)jarg3;
+  arg1 = (float)jarg1;
+  arg2 = (float)jarg2;
+  arg3 = jarg3 ? true : false;
   {
     try {
-      (arg1)->ReplaceItem(arg2,arg3);
+      result = (Dali::Toolkit::RulerDomain *)new Dali::Toolkit::RulerDomain(arg1,arg2,arg3);
     } catch (std::out_of_range& e) {
       {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
+        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
       };
     } catch (std::exception& e) {
       {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return ;
+        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
       };
     } catch (Dali::DaliException e) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return ;
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
       };
     } catch (...) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ;
+        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
       };
     }
   }
 
+  jresult = (void *)result;
+  return jresult;
 }
 
 
-SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ItemView_ReplaceItems(void * jarg1, void * jarg2, float jarg3) {
-  Dali::Toolkit::ItemView *arg1 = (Dali::Toolkit::ItemView *) 0 ;
-  Dali::Toolkit::ItemContainer *arg2 = 0 ;
-  float arg3 ;
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_RulerDomain__SWIG_1(float jarg1, float jarg2) {
+  void * jresult ;
+  float arg1 ;
+  float arg2 ;
+  Dali::Toolkit::RulerDomain *result = 0 ;
 
-  arg1 = (Dali::Toolkit::ItemView *)jarg1;
-  arg2 = (Dali::Toolkit::ItemContainer *)jarg2;
-  if (!arg2) {
-    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::Toolkit::ItemContainer const & type is null", 0);
-    return ;
-  }
-  arg3 = (float)jarg3;
+  arg1 = (float)jarg1;
+  arg2 = (float)jarg2;
   {
     try {
-      (arg1)->ReplaceItems((Dali::Toolkit::ItemContainer const &)*arg2,arg3);
+      result = (Dali::Toolkit::RulerDomain *)new Dali::Toolkit::RulerDomain(arg1,arg2);
     } catch (std::out_of_range& e) {
       {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
+        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
       };
     } catch (std::exception& e) {
       {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return ;
+        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
       };
     } catch (Dali::DaliException e) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return ;
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
       };
     } catch (...) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ;
+        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
       };
     }
   }
 
+  jresult = (void *)result;
+  return jresult;
 }
 
 
-SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ItemView_SetItemsParentOrigin(void * jarg1, void * jarg2) {
-  Dali::Toolkit::ItemView *arg1 = (Dali::Toolkit::ItemView *) 0 ;
-  Dali::Vector3 *arg2 = 0 ;
+SWIGEXPORT void SWIGSTDCALL CSharp_Dali_RulerDomain_min_set(void * jarg1, float jarg2) {
+  Dali::Toolkit::RulerDomain *arg1 = (Dali::Toolkit::RulerDomain *) 0 ;
+  float arg2 ;
 
-  arg1 = (Dali::Toolkit::ItemView *)jarg1;
-  arg2 = (Dali::Vector3 *)jarg2;
-  if (!arg2) {
-    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::Vector3 const & type is null", 0);
-    return ;
-  }
-  {
-    try {
-      (arg1)->SetItemsParentOrigin((Dali::Vector3 const &)*arg2);
-    } catch (std::out_of_range& e) {
-      {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
-      };
-    } catch (std::exception& e) {
-      {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return ;
-      };
-    } catch (Dali::DaliException e) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return ;
-      };
-    } catch (...) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ;
-      };
-    }
-  }
+  arg1 = (Dali::Toolkit::RulerDomain *)jarg1;
+  arg2 = (float)jarg2;
+  if (arg1) (arg1)->min = arg2;
+}
+
+
+SWIGEXPORT float SWIGSTDCALL CSharp_Dali_RulerDomain_min_get(void * jarg1) {
+  float jresult ;
+  Dali::Toolkit::RulerDomain *arg1 = (Dali::Toolkit::RulerDomain *) 0 ;
+  float result;
 
+  arg1 = (Dali::Toolkit::RulerDomain *)jarg1;
+  result = (float) ((arg1)->min);
+  jresult = result;
+  return jresult;
 }
 
 
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_ItemView_GetItemsParentOrigin(void * jarg1) {
-  void * jresult ;
-  Dali::Toolkit::ItemView *arg1 = (Dali::Toolkit::ItemView *) 0 ;
-  Dali::Vector3 result;
+SWIGEXPORT void SWIGSTDCALL CSharp_Dali_RulerDomain_max_set(void * jarg1, float jarg2) {
+  Dali::Toolkit::RulerDomain *arg1 = (Dali::Toolkit::RulerDomain *) 0 ;
+  float arg2 ;
 
-  arg1 = (Dali::Toolkit::ItemView *)jarg1;
+  arg1 = (Dali::Toolkit::RulerDomain *)jarg1;
+  arg2 = (float)jarg2;
+  if (arg1) (arg1)->max = arg2;
+}
+
+
+SWIGEXPORT float SWIGSTDCALL CSharp_Dali_RulerDomain_max_get(void * jarg1) {
+  float jresult ;
+  Dali::Toolkit::RulerDomain *arg1 = (Dali::Toolkit::RulerDomain *) 0 ;
+  float result;
+
+  arg1 = (Dali::Toolkit::RulerDomain *)jarg1;
+  result = (float) ((arg1)->max);
+  jresult = result;
+  return jresult;
+}
+
+
+SWIGEXPORT void SWIGSTDCALL CSharp_Dali_RulerDomain_enabled_set(void * jarg1, unsigned int jarg2) {
+  Dali::Toolkit::RulerDomain *arg1 = (Dali::Toolkit::RulerDomain *) 0 ;
+  bool arg2 ;
+
+  arg1 = (Dali::Toolkit::RulerDomain *)jarg1;
+  arg2 = jarg2 ? true : false;
+  if (arg1) (arg1)->enabled = arg2;
+}
+
+
+SWIGEXPORT unsigned int SWIGSTDCALL CSharp_Dali_RulerDomain_enabled_get(void * jarg1) {
+  unsigned int jresult ;
+  Dali::Toolkit::RulerDomain *arg1 = (Dali::Toolkit::RulerDomain *) 0 ;
+  bool result;
+
+  arg1 = (Dali::Toolkit::RulerDomain *)jarg1;
+  result = (bool) ((arg1)->enabled);
+  jresult = result;
+  return jresult;
+}
+
+
+SWIGEXPORT float SWIGSTDCALL CSharp_Dali_RulerDomain_Clamp__SWIG_0(void * jarg1, float jarg2, float jarg3, float jarg4) {
+  float jresult ;
+  Dali::Toolkit::RulerDomain *arg1 = (Dali::Toolkit::RulerDomain *) 0 ;
+  float arg2 ;
+  float arg3 ;
+  float arg4 ;
+  float result;
+
+  arg1 = (Dali::Toolkit::RulerDomain *)jarg1;
+  arg2 = (float)jarg2;
+  arg3 = (float)jarg3;
+  arg4 = (float)jarg4;
   {
     try {
-      result = ((Dali::Toolkit::ItemView const *)arg1)->GetItemsParentOrigin();
+      result = (float)((Dali::Toolkit::RulerDomain const *)arg1)->Clamp(arg2,arg3,arg4);
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -77596,55 +76759,59 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_ItemView_GetItemsParentOrigin(void * j
     }
   }
 
-  jresult = new Dali::Vector3((const Dali::Vector3 &)result);
+  jresult = result;
   return jresult;
 }
 
 
-SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ItemView_SetItemsAnchorPoint(void * jarg1, void * jarg2) {
-  Dali::Toolkit::ItemView *arg1 = (Dali::Toolkit::ItemView *) 0 ;
-  Dali::Vector3 *arg2 = 0 ;
+SWIGEXPORT float SWIGSTDCALL CSharp_Dali_RulerDomain_Clamp__SWIG_1(void * jarg1, float jarg2, float jarg3) {
+  float jresult ;
+  Dali::Toolkit::RulerDomain *arg1 = (Dali::Toolkit::RulerDomain *) 0 ;
+  float arg2 ;
+  float arg3 ;
+  float result;
 
-  arg1 = (Dali::Toolkit::ItemView *)jarg1;
-  arg2 = (Dali::Vector3 *)jarg2;
-  if (!arg2) {
-    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::Vector3 const & type is null", 0);
-    return ;
-  }
+  arg1 = (Dali::Toolkit::RulerDomain *)jarg1;
+  arg2 = (float)jarg2;
+  arg3 = (float)jarg3;
   {
     try {
-      (arg1)->SetItemsAnchorPoint((Dali::Vector3 const &)*arg2);
+      result = (float)((Dali::Toolkit::RulerDomain const *)arg1)->Clamp(arg2,arg3);
     } catch (std::out_of_range& e) {
       {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
+        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
       };
     } catch (std::exception& e) {
       {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return ;
+        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
       };
     } catch (Dali::DaliException e) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return ;
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
       };
     } catch (...) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ;
+        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
       };
     }
   }
 
+  jresult = result;
+  return jresult;
 }
 
 
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_ItemView_GetItemsAnchorPoint(void * jarg1) {
-  void * jresult ;
-  Dali::Toolkit::ItemView *arg1 = (Dali::Toolkit::ItemView *) 0 ;
-  Dali::Vector3 result;
+SWIGEXPORT float SWIGSTDCALL CSharp_Dali_RulerDomain_Clamp__SWIG_2(void * jarg1, float jarg2) {
+  float jresult ;
+  Dali::Toolkit::RulerDomain *arg1 = (Dali::Toolkit::RulerDomain *) 0 ;
+  float arg2 ;
+  float result;
 
-  arg1 = (Dali::Toolkit::ItemView *)jarg1;
+  arg1 = (Dali::Toolkit::RulerDomain *)jarg1;
+  arg2 = (float)jarg2;
   {
     try {
-      result = ((Dali::Toolkit::ItemView const *)arg1)->GetItemsAnchorPoint();
+      result = (float)((Dali::Toolkit::RulerDomain const *)arg1)->Clamp(arg2);
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -77664,55 +76831,65 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_ItemView_GetItemsAnchorPoint(void * ja
     }
   }
 
-  jresult = new Dali::Vector3((const Dali::Vector3 &)result);
+  jresult = result;
   return jresult;
 }
 
 
-SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ItemView_GetItemsRange(void * jarg1, void * jarg2) {
-  Dali::Toolkit::ItemView *arg1 = (Dali::Toolkit::ItemView *) 0 ;
-  Dali::Toolkit::ItemRange *arg2 = 0 ;
+SWIGEXPORT float SWIGSTDCALL CSharp_Dali_RulerDomain_Clamp__SWIG_3(void * jarg1, float jarg2, float jarg3, float jarg4, void * jarg5) {
+  float jresult ;
+  Dali::Toolkit::RulerDomain *arg1 = (Dali::Toolkit::RulerDomain *) 0 ;
+  float arg2 ;
+  float arg3 ;
+  float arg4 ;
+  Dali::Toolkit::ClampState *arg5 = 0 ;
+  float result;
 
-  arg1 = (Dali::Toolkit::ItemView *)jarg1;
-  arg2 = (Dali::Toolkit::ItemRange *)jarg2;
-  if (!arg2) {
-    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::Toolkit::ItemRange & type is null", 0);
-    return ;
+  arg1 = (Dali::Toolkit::RulerDomain *)jarg1;
+  arg2 = (float)jarg2;
+  arg3 = (float)jarg3;
+  arg4 = (float)jarg4;
+  arg5 = (Dali::Toolkit::ClampState *)jarg5;
+  if (!arg5) {
+    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::Toolkit::ClampState & type is null", 0);
+    return 0;
   }
   {
     try {
-      (arg1)->GetItemsRange(*arg2);
+      result = (float)((Dali::Toolkit::RulerDomain const *)arg1)->Clamp(arg2,arg3,arg4,*arg5);
     } catch (std::out_of_range& e) {
       {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
+        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
       };
     } catch (std::exception& e) {
       {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return ;
+        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
       };
     } catch (Dali::DaliException e) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return ;
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
       };
     } catch (...) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ;
+        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
       };
     }
   }
 
+  jresult = result;
+  return jresult;
 }
 
 
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_ItemView_LayoutActivatedSignal(void * jarg1) {
-  void * jresult ;
-  Dali::Toolkit::ItemView *arg1 = (Dali::Toolkit::ItemView *) 0 ;
-  Dali::Toolkit::ItemView::LayoutActivatedSignalType *result = 0 ;
+SWIGEXPORT float SWIGSTDCALL CSharp_Dali_RulerDomain_GetSize(void * jarg1) {
+  float jresult ;
+  Dali::Toolkit::RulerDomain *arg1 = (Dali::Toolkit::RulerDomain *) 0 ;
+  float result;
 
-  arg1 = (Dali::Toolkit::ItemView *)jarg1;
+  arg1 = (Dali::Toolkit::RulerDomain *)jarg1;
   {
     try {
-      result = (Dali::Toolkit::ItemView::LayoutActivatedSignalType *) &(arg1)->LayoutActivatedSignal();
+      result = (float)((Dali::Toolkit::RulerDomain const *)arg1)->GetSize();
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -77732,28 +76909,18 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_ItemView_LayoutActivatedSignal(void *
     }
   }
 
-  jresult = (void *)result;
+  jresult = result;
   return jresult;
 }
 
 
-SWIGEXPORT void SWIGSTDCALL CSharp_Dali_MoveActorConstraint(void * jarg1, void * jarg2) {
-  Dali::Vector3 *arg1 = 0 ;
-  PropertyInputContainer *arg2 = 0 ;
+SWIGEXPORT void SWIGSTDCALL CSharp_Dali_delete_RulerDomain(void * jarg1) {
+  Dali::Toolkit::RulerDomain *arg1 = (Dali::Toolkit::RulerDomain *) 0 ;
 
-  arg1 = (Dali::Vector3 *)jarg1;
-  if (!arg1) {
-    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::Vector3 & type is null", 0);
-    return ;
-  }
-  arg2 = (PropertyInputContainer *)jarg2;
-  if (!arg2) {
-    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "PropertyInputContainer const & type is null", 0);
-    return ;
-  }
+  arg1 = (Dali::Toolkit::RulerDomain *)jarg1;
   {
     try {
-      Dali::Toolkit::MoveActorConstraint(*arg1,(PropertyInputContainer const &)*arg2);
+      delete arg1;
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
@@ -77776,52 +76943,54 @@ SWIGEXPORT void SWIGSTDCALL CSharp_Dali_MoveActorConstraint(void * jarg1, void *
 }
 
 
-SWIGEXPORT void SWIGSTDCALL CSharp_Dali_WrapActorConstraint(void * jarg1, void * jarg2) {
-  Dali::Vector3 *arg1 = 0 ;
-  PropertyInputContainer *arg2 = 0 ;
+SWIGEXPORT float SWIGSTDCALL CSharp_Dali_Ruler_Snap__SWIG_0(void * jarg1, float jarg2, float jarg3) {
+  float jresult ;
+  Dali::Toolkit::Ruler *arg1 = (Dali::Toolkit::Ruler *) 0 ;
+  float arg2 ;
+  float arg3 ;
+  float result;
 
-  arg1 = (Dali::Vector3 *)jarg1;
-  if (!arg1) {
-    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::Vector3 & type is null", 0);
-    return ;
-  }
-  arg2 = (PropertyInputContainer *)jarg2;
-  if (!arg2) {
-    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "PropertyInputContainer const & type is null", 0);
-    return ;
-  }
+  arg1 = (Dali::Toolkit::Ruler *)jarg1;
+  arg2 = (float)jarg2;
+  arg3 = (float)jarg3;
   {
     try {
-      Dali::Toolkit::WrapActorConstraint(*arg1,(PropertyInputContainer const &)*arg2);
+      result = (float)((Dali::Toolkit::Ruler const *)arg1)->Snap(arg2,arg3);
     } catch (std::out_of_range& e) {
       {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
+        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
       };
     } catch (std::exception& e) {
       {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return ;
+        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
       };
     } catch (Dali::DaliException e) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return ;
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
       };
     } catch (...) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ;
+        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
       };
     }
   }
 
+  jresult = result;
+  return jresult;
 }
 
 
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_ScrollViewEffect() {
-  void * jresult ;
-  Dali::Toolkit::ScrollViewEffect *result = 0 ;
+SWIGEXPORT float SWIGSTDCALL CSharp_Dali_Ruler_Snap__SWIG_1(void * jarg1, float jarg2) {
+  float jresult ;
+  Dali::Toolkit::Ruler *arg1 = (Dali::Toolkit::Ruler *) 0 ;
+  float arg2 ;
+  float result;
 
+  arg1 = (Dali::Toolkit::Ruler *)jarg1;
+  arg2 = (float)jarg2;
   {
     try {
-      result = (Dali::Toolkit::ScrollViewEffect *)new Dali::Toolkit::ScrollViewEffect();
+      result = (float)((Dali::Toolkit::Ruler const *)arg1)->Snap(arg2);
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -77841,71 +77010,63 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_ScrollViewEffect() {
     }
   }
 
-  jresult = (void *)result;
+  jresult = result;
   return jresult;
 }
 
 
-SWIGEXPORT void SWIGSTDCALL CSharp_Dali_delete_ScrollViewEffect(void * jarg1) {
-  Dali::Toolkit::ScrollViewEffect *arg1 = (Dali::Toolkit::ScrollViewEffect *) 0 ;
+SWIGEXPORT float SWIGSTDCALL CSharp_Dali_Ruler_GetPositionFromPage(void * jarg1, unsigned int jarg2, unsigned int * jarg3, unsigned int jarg4) {
+  float jresult ;
+  Dali::Toolkit::Ruler *arg1 = (Dali::Toolkit::Ruler *) 0 ;
+  unsigned int arg2 ;
+  unsigned int *arg3 = 0 ;
+  bool arg4 ;
+  float result;
 
-  arg1 = (Dali::Toolkit::ScrollViewEffect *)jarg1;
+  arg1 = (Dali::Toolkit::Ruler *)jarg1;
+  arg2 = (unsigned int)jarg2;
+  arg3 = (unsigned int *)jarg3;
+  arg4 = jarg4 ? true : false;
   {
     try {
-      delete arg1;
+      result = (float)((Dali::Toolkit::Ruler const *)arg1)->GetPositionFromPage(arg2,*arg3,arg4);
     } catch (std::out_of_range& e) {
       {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
+        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
       };
     } catch (std::exception& e) {
       {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return ;
+        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
       };
     } catch (Dali::DaliException e) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return ;
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
       };
     } catch (...) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ;
+        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
       };
     }
   }
 
+  jresult = result;
+  return jresult;
 }
 
 
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_ScrollViewPagePathEffect_New(void * jarg1, void * jarg2, int jarg3, void * jarg4, unsigned int jarg5) {
-  void * jresult ;
-  Dali::Path arg1 ;
-  Dali::Vector3 *arg2 = 0 ;
-  Dali::Property::Index arg3 ;
-  Dali::Vector3 *arg4 = 0 ;
-  unsigned int arg5 ;
-  Dali::Path *argp1 ;
-  Dali::Toolkit::ScrollViewPagePathEffect result;
+SWIGEXPORT unsigned int SWIGSTDCALL CSharp_Dali_Ruler_GetPageFromPosition(void * jarg1, float jarg2, unsigned int jarg3) {
+  unsigned int jresult ;
+  Dali::Toolkit::Ruler *arg1 = (Dali::Toolkit::Ruler *) 0 ;
+  float arg2 ;
+  bool arg3 ;
+  unsigned int result;
 
-  argp1 = (Dali::Path *)jarg1;
-  if (!argp1) {
-    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null Dali::Path", 0);
-    return 0;
-  }
-  arg1 = *argp1;
-  arg2 = (Dali::Vector3 *)jarg2;
-  if (!arg2) {
-    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::Vector3 const & type is null", 0);
-    return 0;
-  }
-  arg3 = (Dali::Property::Index)jarg3;
-  arg4 = (Dali::Vector3 *)jarg4;
-  if (!arg4) {
-    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::Vector3 const & type is null", 0);
-    return 0;
-  }
-  arg5 = (unsigned int)jarg5;
+  arg1 = (Dali::Toolkit::Ruler *)jarg1;
+  arg2 = (float)jarg2;
+  arg3 = jarg3 ? true : false;
   {
     try {
-      result = Dali::Toolkit::ScrollViewPagePathEffect::New(arg1,(Dali::Vector3 const &)*arg2,arg3,(Dali::Vector3 const &)*arg4,arg5);
+      result = (unsigned int)((Dali::Toolkit::Ruler const *)arg1)->GetPageFromPosition(arg2,arg3);
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -77925,18 +77086,20 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_ScrollViewPagePathEffect_New(void * ja
     }
   }
 
-  jresult = new Dali::Toolkit::ScrollViewPagePathEffect((const Dali::Toolkit::ScrollViewPagePathEffect &)result);
+  jresult = result;
   return jresult;
 }
 
 
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_ScrollViewPagePathEffect() {
-  void * jresult ;
-  Dali::Toolkit::ScrollViewPagePathEffect *result = 0 ;
+SWIGEXPORT unsigned int SWIGSTDCALL CSharp_Dali_Ruler_GetTotalPages(void * jarg1) {
+  unsigned int jresult ;
+  Dali::Toolkit::Ruler *arg1 = (Dali::Toolkit::Ruler *) 0 ;
+  unsigned int result;
 
+  arg1 = (Dali::Toolkit::Ruler *)jarg1;
   {
     try {
-      result = (Dali::Toolkit::ScrollViewPagePathEffect *)new Dali::Toolkit::ScrollViewPagePathEffect();
+      result = (unsigned int)((Dali::Toolkit::Ruler const *)arg1)->GetTotalPages();
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -77956,26 +77119,20 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_ScrollViewPagePathEffect() {
     }
   }
 
-  jresult = (void *)result;
+  jresult = result;
   return jresult;
 }
 
 
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_ScrollViewPagePathEffect_DownCast(void * jarg1) {
-  void * jresult ;
-  Dali::BaseHandle arg1 ;
-  Dali::BaseHandle *argp1 ;
-  Dali::Toolkit::ScrollViewPagePathEffect result;
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_Ruler_GetType(void * jarg1) {
+  int jresult ;
+  Dali::Toolkit::Ruler *arg1 = (Dali::Toolkit::Ruler *) 0 ;
+  Dali::Toolkit::Ruler::RulerType result;
 
-  argp1 = (Dali::BaseHandle *)jarg1;
-  if (!argp1) {
-    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null Dali::BaseHandle", 0);
-    return 0;
-  }
-  arg1 = *argp1;
+  arg1 = (Dali::Toolkit::Ruler *)jarg1;
   {
     try {
-      result = Dali::Toolkit::ScrollViewPagePathEffect::DownCast(arg1);
+      result = (Dali::Toolkit::Ruler::RulerType)((Dali::Toolkit::Ruler const *)arg1)->GetType();
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -77995,57 +77152,51 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_ScrollViewPagePathEffect_DownCast(void
     }
   }
 
-  jresult = new Dali::Toolkit::ScrollViewPagePathEffect((const Dali::Toolkit::ScrollViewPagePathEffect &)result);
+  jresult = (int)result;
   return jresult;
 }
 
 
-SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ScrollViewPagePathEffect_ApplyToPage(void * jarg1, void * jarg2, unsigned int jarg3) {
-  Dali::Toolkit::ScrollViewPagePathEffect *arg1 = (Dali::Toolkit::ScrollViewPagePathEffect *) 0 ;
-  Dali::Actor arg2 ;
-  unsigned int arg3 ;
-  Dali::Actor *argp2 ;
+SWIGEXPORT unsigned int SWIGSTDCALL CSharp_Dali_Ruler_IsEnabled(void * jarg1) {
+  unsigned int jresult ;
+  Dali::Toolkit::Ruler *arg1 = (Dali::Toolkit::Ruler *) 0 ;
+  bool result;
 
-  arg1 = (Dali::Toolkit::ScrollViewPagePathEffect *)jarg1;
-  argp2 = (Dali::Actor *)jarg2;
-  if (!argp2) {
-    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null Dali::Actor", 0);
-    return ;
-  }
-  arg2 = *argp2;
-  arg3 = (unsigned int)jarg3;
+  arg1 = (Dali::Toolkit::Ruler *)jarg1;
   {
     try {
-      (arg1)->ApplyToPage(arg2,arg3);
+      result = (bool)((Dali::Toolkit::Ruler const *)arg1)->IsEnabled();
     } catch (std::out_of_range& e) {
       {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
+        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
       };
     } catch (std::exception& e) {
       {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return ;
+        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
       };
     } catch (Dali::DaliException e) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return ;
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
       };
     } catch (...) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ;
+        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
       };
     }
   }
 
+  jresult = result;
+  return jresult;
 }
 
 
-SWIGEXPORT void SWIGSTDCALL CSharp_Dali_delete_ScrollViewPagePathEffect(void * jarg1) {
-  Dali::Toolkit::ScrollViewPagePathEffect *arg1 = (Dali::Toolkit::ScrollViewPagePathEffect *) 0 ;
+SWIGEXPORT void SWIGSTDCALL CSharp_Dali_Ruler_Enable(void * jarg1) {
+  Dali::Toolkit::Ruler *arg1 = (Dali::Toolkit::Ruler *) 0 ;
 
-  arg1 = (Dali::Toolkit::ScrollViewPagePathEffect *)jarg1;
+  arg1 = (Dali::Toolkit::Ruler *)jarg1;
   {
     try {
-      delete arg1;
+      (arg1)->Enable();
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
@@ -78068,88 +77219,50 @@ SWIGEXPORT void SWIGSTDCALL CSharp_Dali_delete_ScrollViewPagePathEffect(void * j
 }
 
 
-SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ClampState2D_x_set(void * jarg1, int jarg2) {
-  Dali::Toolkit::ClampState2D *arg1 = (Dali::Toolkit::ClampState2D *) 0 ;
-  Dali::Toolkit::ClampState arg2 ;
-
-  arg1 = (Dali::Toolkit::ClampState2D *)jarg1;
-  arg2 = (Dali::Toolkit::ClampState)jarg2;
-  if (arg1) (arg1)->x = arg2;
-}
-
-
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_ClampState2D_x_get(void * jarg1) {
-  int jresult ;
-  Dali::Toolkit::ClampState2D *arg1 = (Dali::Toolkit::ClampState2D *) 0 ;
-  Dali::Toolkit::ClampState result;
-
-  arg1 = (Dali::Toolkit::ClampState2D *)jarg1;
-  result = (Dali::Toolkit::ClampState) ((arg1)->x);
-  jresult = (int)result;
-  return jresult;
-}
-
-
-SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ClampState2D_y_set(void * jarg1, int jarg2) {
-  Dali::Toolkit::ClampState2D *arg1 = (Dali::Toolkit::ClampState2D *) 0 ;
-  Dali::Toolkit::ClampState arg2 ;
-
-  arg1 = (Dali::Toolkit::ClampState2D *)jarg1;
-  arg2 = (Dali::Toolkit::ClampState)jarg2;
-  if (arg1) (arg1)->y = arg2;
-}
-
-
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_ClampState2D_y_get(void * jarg1) {
-  int jresult ;
-  Dali::Toolkit::ClampState2D *arg1 = (Dali::Toolkit::ClampState2D *) 0 ;
-  Dali::Toolkit::ClampState result;
-
-  arg1 = (Dali::Toolkit::ClampState2D *)jarg1;
-  result = (Dali::Toolkit::ClampState) ((arg1)->y);
-  jresult = (int)result;
-  return jresult;
-}
-
-
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_ClampState2D() {
-  void * jresult ;
-  Dali::Toolkit::ClampState2D *result = 0 ;
+SWIGEXPORT void SWIGSTDCALL CSharp_Dali_Ruler_Disable(void * jarg1) {
+  Dali::Toolkit::Ruler *arg1 = (Dali::Toolkit::Ruler *) 0 ;
 
+  arg1 = (Dali::Toolkit::Ruler *)jarg1;
   {
     try {
-      result = (Dali::Toolkit::ClampState2D *)new Dali::Toolkit::ClampState2D();
+      (arg1)->Disable();
     } catch (std::out_of_range& e) {
       {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
+        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
       };
     } catch (std::exception& e) {
       {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
+        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return ;
       };
     } catch (Dali::DaliException e) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return ;
       };
     } catch (...) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
+        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ;
       };
     }
   }
 
-  jresult = (void *)result;
-  return jresult;
 }
 
 
-SWIGEXPORT void SWIGSTDCALL CSharp_Dali_delete_ClampState2D(void * jarg1) {
-  Dali::Toolkit::ClampState2D *arg1 = (Dali::Toolkit::ClampState2D *) 0 ;
+SWIGEXPORT void SWIGSTDCALL CSharp_Dali_Ruler_SetDomain(void * jarg1, void * jarg2) {
+  Dali::Toolkit::Ruler *arg1 = (Dali::Toolkit::Ruler *) 0 ;
+  SwigValueWrapper< Dali::Toolkit::RulerDomain > arg2 ;
+  Dali::Toolkit::RulerDomain *argp2 ;
 
-  arg1 = (Dali::Toolkit::ClampState2D *)jarg1;
+  arg1 = (Dali::Toolkit::Ruler *)jarg1;
+  argp2 = (Dali::Toolkit::RulerDomain *)jarg2;
+  if (!argp2) {
+    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null Dali::Toolkit::RulerDomain", 0);
+    return ;
+  }
+  arg2 = *argp2;
   {
     try {
-      delete arg1;
+      (arg1)->SetDomain(arg2);
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
@@ -78172,19 +77285,15 @@ SWIGEXPORT void SWIGSTDCALL CSharp_Dali_delete_ClampState2D(void * jarg1) {
 }
 
 
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_RulerDomain__SWIG_0(float jarg1, float jarg2, unsigned int jarg3) {
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_Ruler_GetDomain(void * jarg1) {
   void * jresult ;
-  float arg1 ;
-  float arg2 ;
-  bool arg3 ;
+  Dali::Toolkit::Ruler *arg1 = (Dali::Toolkit::Ruler *) 0 ;
   Dali::Toolkit::RulerDomain *result = 0 ;
 
-  arg1 = (float)jarg1;
-  arg2 = (float)jarg2;
-  arg3 = jarg3 ? true : false;
+  arg1 = (Dali::Toolkit::Ruler *)jarg1;
   {
     try {
-      result = (Dali::Toolkit::RulerDomain *)new Dali::Toolkit::RulerDomain(arg1,arg2,arg3);
+      result = (Dali::Toolkit::RulerDomain *) &((Dali::Toolkit::Ruler const *)arg1)->GetDomain();
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -78209,122 +77318,50 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_RulerDomain__SWIG_0(float jarg1, f
 }
 
 
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_RulerDomain__SWIG_1(float jarg1, float jarg2) {
-  void * jresult ;
-  float arg1 ;
-  float arg2 ;
-  Dali::Toolkit::RulerDomain *result = 0 ;
+SWIGEXPORT void SWIGSTDCALL CSharp_Dali_Ruler_DisableDomain(void * jarg1) {
+  Dali::Toolkit::Ruler *arg1 = (Dali::Toolkit::Ruler *) 0 ;
 
-  arg1 = (float)jarg1;
-  arg2 = (float)jarg2;
+  arg1 = (Dali::Toolkit::Ruler *)jarg1;
   {
     try {
-      result = (Dali::Toolkit::RulerDomain *)new Dali::Toolkit::RulerDomain(arg1,arg2);
+      (arg1)->DisableDomain();
     } catch (std::out_of_range& e) {
       {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
+        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
       };
     } catch (std::exception& e) {
       {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
+        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return ;
       };
     } catch (Dali::DaliException e) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return ;
       };
     } catch (...) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
+        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ;
       };
     }
   }
 
-  jresult = (void *)result;
-  return jresult;
 }
 
 
-SWIGEXPORT void SWIGSTDCALL CSharp_Dali_RulerDomain_min_set(void * jarg1, float jarg2) {
-  Dali::Toolkit::RulerDomain *arg1 = (Dali::Toolkit::RulerDomain *) 0 ;
+SWIGEXPORT float SWIGSTDCALL CSharp_Dali_Ruler_Clamp__SWIG_0(void * jarg1, float jarg2, float jarg3, float jarg4) {
+  float jresult ;
+  Dali::Toolkit::Ruler *arg1 = (Dali::Toolkit::Ruler *) 0 ;
   float arg2 ;
+  float arg3 ;
+  float arg4 ;
+  float result;
 
-  arg1 = (Dali::Toolkit::RulerDomain *)jarg1;
-  arg2 = (float)jarg2;
-  if (arg1) (arg1)->min = arg2;
-}
-
-
-SWIGEXPORT float SWIGSTDCALL CSharp_Dali_RulerDomain_min_get(void * jarg1) {
-  float jresult ;
-  Dali::Toolkit::RulerDomain *arg1 = (Dali::Toolkit::RulerDomain *) 0 ;
-  float result;
-
-  arg1 = (Dali::Toolkit::RulerDomain *)jarg1;
-  result = (float) ((arg1)->min);
-  jresult = result;
-  return jresult;
-}
-
-
-SWIGEXPORT void SWIGSTDCALL CSharp_Dali_RulerDomain_max_set(void * jarg1, float jarg2) {
-  Dali::Toolkit::RulerDomain *arg1 = (Dali::Toolkit::RulerDomain *) 0 ;
-  float arg2 ;
-
-  arg1 = (Dali::Toolkit::RulerDomain *)jarg1;
-  arg2 = (float)jarg2;
-  if (arg1) (arg1)->max = arg2;
-}
-
-
-SWIGEXPORT float SWIGSTDCALL CSharp_Dali_RulerDomain_max_get(void * jarg1) {
-  float jresult ;
-  Dali::Toolkit::RulerDomain *arg1 = (Dali::Toolkit::RulerDomain *) 0 ;
-  float result;
-
-  arg1 = (Dali::Toolkit::RulerDomain *)jarg1;
-  result = (float) ((arg1)->max);
-  jresult = result;
-  return jresult;
-}
-
-
-SWIGEXPORT void SWIGSTDCALL CSharp_Dali_RulerDomain_enabled_set(void * jarg1, unsigned int jarg2) {
-  Dali::Toolkit::RulerDomain *arg1 = (Dali::Toolkit::RulerDomain *) 0 ;
-  bool arg2 ;
-
-  arg1 = (Dali::Toolkit::RulerDomain *)jarg1;
-  arg2 = jarg2 ? true : false;
-  if (arg1) (arg1)->enabled = arg2;
-}
-
-
-SWIGEXPORT unsigned int SWIGSTDCALL CSharp_Dali_RulerDomain_enabled_get(void * jarg1) {
-  unsigned int jresult ;
-  Dali::Toolkit::RulerDomain *arg1 = (Dali::Toolkit::RulerDomain *) 0 ;
-  bool result;
-
-  arg1 = (Dali::Toolkit::RulerDomain *)jarg1;
-  result = (bool) ((arg1)->enabled);
-  jresult = result;
-  return jresult;
-}
-
-
-SWIGEXPORT float SWIGSTDCALL CSharp_Dali_RulerDomain_Clamp__SWIG_0(void * jarg1, float jarg2, float jarg3, float jarg4) {
-  float jresult ;
-  Dali::Toolkit::RulerDomain *arg1 = (Dali::Toolkit::RulerDomain *) 0 ;
-  float arg2 ;
-  float arg3 ;
-  float arg4 ;
-  float result;
-
-  arg1 = (Dali::Toolkit::RulerDomain *)jarg1;
+  arg1 = (Dali::Toolkit::Ruler *)jarg1;
   arg2 = (float)jarg2;
   arg3 = (float)jarg3;
   arg4 = (float)jarg4;
   {
     try {
-      result = (float)((Dali::Toolkit::RulerDomain const *)arg1)->Clamp(arg2,arg3,arg4);
+      result = (float)((Dali::Toolkit::Ruler const *)arg1)->Clamp(arg2,arg3,arg4);
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -78349,19 +77386,19 @@ SWIGEXPORT float SWIGSTDCALL CSharp_Dali_RulerDomain_Clamp__SWIG_0(void * jarg1,
 }
 
 
-SWIGEXPORT float SWIGSTDCALL CSharp_Dali_RulerDomain_Clamp__SWIG_1(void * jarg1, float jarg2, float jarg3) {
+SWIGEXPORT float SWIGSTDCALL CSharp_Dali_Ruler_Clamp__SWIG_1(void * jarg1, float jarg2, float jarg3) {
   float jresult ;
-  Dali::Toolkit::RulerDomain *arg1 = (Dali::Toolkit::RulerDomain *) 0 ;
+  Dali::Toolkit::Ruler *arg1 = (Dali::Toolkit::Ruler *) 0 ;
   float arg2 ;
   float arg3 ;
   float result;
 
-  arg1 = (Dali::Toolkit::RulerDomain *)jarg1;
+  arg1 = (Dali::Toolkit::Ruler *)jarg1;
   arg2 = (float)jarg2;
   arg3 = (float)jarg3;
   {
     try {
-      result = (float)((Dali::Toolkit::RulerDomain const *)arg1)->Clamp(arg2,arg3);
+      result = (float)((Dali::Toolkit::Ruler const *)arg1)->Clamp(arg2,arg3);
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -78386,17 +77423,17 @@ SWIGEXPORT float SWIGSTDCALL CSharp_Dali_RulerDomain_Clamp__SWIG_1(void * jarg1,
 }
 
 
-SWIGEXPORT float SWIGSTDCALL CSharp_Dali_RulerDomain_Clamp__SWIG_2(void * jarg1, float jarg2) {
+SWIGEXPORT float SWIGSTDCALL CSharp_Dali_Ruler_Clamp__SWIG_2(void * jarg1, float jarg2) {
   float jresult ;
-  Dali::Toolkit::RulerDomain *arg1 = (Dali::Toolkit::RulerDomain *) 0 ;
+  Dali::Toolkit::Ruler *arg1 = (Dali::Toolkit::Ruler *) 0 ;
   float arg2 ;
   float result;
 
-  arg1 = (Dali::Toolkit::RulerDomain *)jarg1;
+  arg1 = (Dali::Toolkit::Ruler *)jarg1;
   arg2 = (float)jarg2;
   {
     try {
-      result = (float)((Dali::Toolkit::RulerDomain const *)arg1)->Clamp(arg2);
+      result = (float)((Dali::Toolkit::Ruler const *)arg1)->Clamp(arg2);
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -78421,16 +77458,16 @@ SWIGEXPORT float SWIGSTDCALL CSharp_Dali_RulerDomain_Clamp__SWIG_2(void * jarg1,
 }
 
 
-SWIGEXPORT float SWIGSTDCALL CSharp_Dali_RulerDomain_Clamp__SWIG_3(void * jarg1, float jarg2, float jarg3, float jarg4, void * jarg5) {
+SWIGEXPORT float SWIGSTDCALL CSharp_Dali_Ruler_Clamp__SWIG_3(void * jarg1, float jarg2, float jarg3, float jarg4, void * jarg5) {
   float jresult ;
-  Dali::Toolkit::RulerDomain *arg1 = (Dali::Toolkit::RulerDomain *) 0 ;
+  Dali::Toolkit::Ruler *arg1 = (Dali::Toolkit::Ruler *) 0 ;
   float arg2 ;
   float arg3 ;
   float arg4 ;
   Dali::Toolkit::ClampState *arg5 = 0 ;
   float result;
 
-  arg1 = (Dali::Toolkit::RulerDomain *)jarg1;
+  arg1 = (Dali::Toolkit::Ruler *)jarg1;
   arg2 = (float)jarg2;
   arg3 = (float)jarg3;
   arg4 = (float)jarg4;
@@ -78441,7 +77478,7 @@ SWIGEXPORT float SWIGSTDCALL CSharp_Dali_RulerDomain_Clamp__SWIG_3(void * jarg1,
   }
   {
     try {
-      result = (float)((Dali::Toolkit::RulerDomain const *)arg1)->Clamp(arg2,arg3,arg4,*arg5);
+      result = (float)((Dali::Toolkit::Ruler const *)arg1)->Clamp(arg2,arg3,arg4,*arg5);
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -78466,15 +77503,23 @@ SWIGEXPORT float SWIGSTDCALL CSharp_Dali_RulerDomain_Clamp__SWIG_3(void * jarg1,
 }
 
 
-SWIGEXPORT float SWIGSTDCALL CSharp_Dali_RulerDomain_GetSize(void * jarg1) {
+SWIGEXPORT float SWIGSTDCALL CSharp_Dali_Ruler_SnapAndClamp__SWIG_0(void * jarg1, float jarg2, float jarg3, float jarg4, float jarg5) {
   float jresult ;
-  Dali::Toolkit::RulerDomain *arg1 = (Dali::Toolkit::RulerDomain *) 0 ;
+  Dali::Toolkit::Ruler *arg1 = (Dali::Toolkit::Ruler *) 0 ;
+  float arg2 ;
+  float arg3 ;
+  float arg4 ;
+  float arg5 ;
   float result;
 
-  arg1 = (Dali::Toolkit::RulerDomain *)jarg1;
+  arg1 = (Dali::Toolkit::Ruler *)jarg1;
+  arg2 = (float)jarg2;
+  arg3 = (float)jarg3;
+  arg4 = (float)jarg4;
+  arg5 = (float)jarg5;
   {
     try {
-      result = (float)((Dali::Toolkit::RulerDomain const *)arg1)->GetSize();
+      result = (float)((Dali::Toolkit::Ruler const *)arg1)->SnapAndClamp(arg2,arg3,arg4,arg5);
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -78499,36 +77544,46 @@ SWIGEXPORT float SWIGSTDCALL CSharp_Dali_RulerDomain_GetSize(void * jarg1) {
 }
 
 
-SWIGEXPORT void SWIGSTDCALL CSharp_Dali_delete_RulerDomain(void * jarg1) {
-  Dali::Toolkit::RulerDomain *arg1 = (Dali::Toolkit::RulerDomain *) 0 ;
+SWIGEXPORT float SWIGSTDCALL CSharp_Dali_Ruler_SnapAndClamp__SWIG_1(void * jarg1, float jarg2, float jarg3, float jarg4) {
+  float jresult ;
+  Dali::Toolkit::Ruler *arg1 = (Dali::Toolkit::Ruler *) 0 ;
+  float arg2 ;
+  float arg3 ;
+  float arg4 ;
+  float result;
 
-  arg1 = (Dali::Toolkit::RulerDomain *)jarg1;
+  arg1 = (Dali::Toolkit::Ruler *)jarg1;
+  arg2 = (float)jarg2;
+  arg3 = (float)jarg3;
+  arg4 = (float)jarg4;
   {
     try {
-      delete arg1;
+      result = (float)((Dali::Toolkit::Ruler const *)arg1)->SnapAndClamp(arg2,arg3,arg4);
     } catch (std::out_of_range& e) {
       {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
+        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
       };
     } catch (std::exception& e) {
       {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return ;
+        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
       };
     } catch (Dali::DaliException e) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return ;
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
       };
     } catch (...) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ;
+        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
       };
     }
   }
 
+  jresult = result;
+  return jresult;
 }
 
 
-SWIGEXPORT float SWIGSTDCALL CSharp_Dali_Ruler_Snap__SWIG_0(void * jarg1, float jarg2, float jarg3) {
+SWIGEXPORT float SWIGSTDCALL CSharp_Dali_Ruler_SnapAndClamp__SWIG_2(void * jarg1, float jarg2, float jarg3) {
   float jresult ;
   Dali::Toolkit::Ruler *arg1 = (Dali::Toolkit::Ruler *) 0 ;
   float arg2 ;
@@ -78540,7 +77595,7 @@ SWIGEXPORT float SWIGSTDCALL CSharp_Dali_Ruler_Snap__SWIG_0(void * jarg1, float
   arg3 = (float)jarg3;
   {
     try {
-      result = (float)((Dali::Toolkit::Ruler const *)arg1)->Snap(arg2,arg3);
+      result = (float)((Dali::Toolkit::Ruler const *)arg1)->SnapAndClamp(arg2,arg3);
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -78565,7 +77620,7 @@ SWIGEXPORT float SWIGSTDCALL CSharp_Dali_Ruler_Snap__SWIG_0(void * jarg1, float
 }
 
 
-SWIGEXPORT float SWIGSTDCALL CSharp_Dali_Ruler_Snap__SWIG_1(void * jarg1, float jarg2) {
+SWIGEXPORT float SWIGSTDCALL CSharp_Dali_Ruler_SnapAndClamp__SWIG_3(void * jarg1, float jarg2) {
   float jresult ;
   Dali::Toolkit::Ruler *arg1 = (Dali::Toolkit::Ruler *) 0 ;
   float arg2 ;
@@ -78575,7 +77630,7 @@ SWIGEXPORT float SWIGSTDCALL CSharp_Dali_Ruler_Snap__SWIG_1(void * jarg1, float
   arg2 = (float)jarg2;
   {
     try {
-      result = (float)((Dali::Toolkit::Ruler const *)arg1)->Snap(arg2);
+      result = (float)((Dali::Toolkit::Ruler const *)arg1)->SnapAndClamp(arg2);
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -78600,21 +77655,29 @@ SWIGEXPORT float SWIGSTDCALL CSharp_Dali_Ruler_Snap__SWIG_1(void * jarg1, float
 }
 
 
-SWIGEXPORT float SWIGSTDCALL CSharp_Dali_Ruler_GetPositionFromPage(void * jarg1, unsigned int jarg2, unsigned int * jarg3, unsigned int jarg4) {
+SWIGEXPORT float SWIGSTDCALL CSharp_Dali_Ruler_SnapAndClamp__SWIG_4(void * jarg1, float jarg2, float jarg3, float jarg4, float jarg5, void * jarg6) {
   float jresult ;
   Dali::Toolkit::Ruler *arg1 = (Dali::Toolkit::Ruler *) 0 ;
-  unsigned int arg2 ;
-  unsigned int *arg3 = 0 ;
-  bool arg4 ;
+  float arg2 ;
+  float arg3 ;
+  float arg4 ;
+  float arg5 ;
+  Dali::Toolkit::ClampState *arg6 = 0 ;
   float result;
 
   arg1 = (Dali::Toolkit::Ruler *)jarg1;
-  arg2 = (unsigned int)jarg2;
-  arg3 = (unsigned int *)jarg3;
-  arg4 = jarg4 ? true : false;
+  arg2 = (float)jarg2;
+  arg3 = (float)jarg3;
+  arg4 = (float)jarg4;
+  arg5 = (float)jarg5;
+  arg6 = (Dali::Toolkit::ClampState *)jarg6;
+  if (!arg6) {
+    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::Toolkit::ClampState & type is null", 0);
+    return 0;
+  }
   {
     try {
-      result = (float)((Dali::Toolkit::Ruler const *)arg1)->GetPositionFromPage(arg2,*arg3,arg4);
+      result = (float)((Dali::Toolkit::Ruler const *)arg1)->SnapAndClamp(arg2,arg3,arg4,arg5,*arg6);
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -78639,19 +77702,13 @@ SWIGEXPORT float SWIGSTDCALL CSharp_Dali_Ruler_GetPositionFromPage(void * jarg1,
 }
 
 
-SWIGEXPORT unsigned int SWIGSTDCALL CSharp_Dali_Ruler_GetPageFromPosition(void * jarg1, float jarg2, unsigned int jarg3) {
-  unsigned int jresult ;
-  Dali::Toolkit::Ruler *arg1 = (Dali::Toolkit::Ruler *) 0 ;
-  float arg2 ;
-  bool arg3 ;
-  unsigned int result;
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_DefaultRuler() {
+  void * jresult ;
+  Dali::Toolkit::DefaultRuler *result = 0 ;
 
-  arg1 = (Dali::Toolkit::Ruler *)jarg1;
-  arg2 = (float)jarg2;
-  arg3 = jarg3 ? true : false;
   {
     try {
-      result = (unsigned int)((Dali::Toolkit::Ruler const *)arg1)->GetPageFromPosition(arg2,arg3);
+      result = (Dali::Toolkit::DefaultRuler *)new Dali::Toolkit::DefaultRuler();
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -78671,20 +77728,24 @@ SWIGEXPORT unsigned int SWIGSTDCALL CSharp_Dali_Ruler_GetPageFromPosition(void *
     }
   }
 
-  jresult = result;
+  jresult = (void *)result;
   return jresult;
 }
 
 
-SWIGEXPORT unsigned int SWIGSTDCALL CSharp_Dali_Ruler_GetTotalPages(void * jarg1) {
-  unsigned int jresult ;
-  Dali::Toolkit::Ruler *arg1 = (Dali::Toolkit::Ruler *) 0 ;
-  unsigned int result;
+SWIGEXPORT float SWIGSTDCALL CSharp_Dali_DefaultRuler_Snap(void * jarg1, float jarg2, float jarg3) {
+  float jresult ;
+  Dali::Toolkit::DefaultRuler *arg1 = (Dali::Toolkit::DefaultRuler *) 0 ;
+  float arg2 ;
+  float arg3 ;
+  float result;
 
-  arg1 = (Dali::Toolkit::Ruler *)jarg1;
+  arg1 = (Dali::Toolkit::DefaultRuler *)jarg1;
+  arg2 = (float)jarg2;
+  arg3 = (float)jarg3;
   {
     try {
-      result = (unsigned int)((Dali::Toolkit::Ruler const *)arg1)->GetTotalPages();
+      result = (float)((Dali::Toolkit::DefaultRuler const *)arg1)->Snap(arg2,arg3);
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -78709,15 +77770,21 @@ SWIGEXPORT unsigned int SWIGSTDCALL CSharp_Dali_Ruler_GetTotalPages(void * jarg1
 }
 
 
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_Ruler_GetType(void * jarg1) {
-  int jresult ;
-  Dali::Toolkit::Ruler *arg1 = (Dali::Toolkit::Ruler *) 0 ;
-  Dali::Toolkit::Ruler::RulerType result;
+SWIGEXPORT float SWIGSTDCALL CSharp_Dali_DefaultRuler_GetPositionFromPage(void * jarg1, unsigned int jarg2, unsigned int * jarg3, unsigned int jarg4) {
+  float jresult ;
+  Dali::Toolkit::DefaultRuler *arg1 = (Dali::Toolkit::DefaultRuler *) 0 ;
+  unsigned int arg2 ;
+  unsigned int *arg3 = 0 ;
+  bool arg4 ;
+  float result;
 
-  arg1 = (Dali::Toolkit::Ruler *)jarg1;
+  arg1 = (Dali::Toolkit::DefaultRuler *)jarg1;
+  arg2 = (unsigned int)jarg2;
+  arg3 = (unsigned int *)jarg3;
+  arg4 = jarg4 ? true : false;
   {
     try {
-      result = (Dali::Toolkit::Ruler::RulerType)((Dali::Toolkit::Ruler const *)arg1)->GetType();
+      result = (float)((Dali::Toolkit::DefaultRuler const *)arg1)->GetPositionFromPage(arg2,*arg3,arg4);
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -78737,20 +77804,24 @@ SWIGEXPORT int SWIGSTDCALL CSharp_Dali_Ruler_GetType(void * jarg1) {
     }
   }
 
-  jresult = (int)result;
+  jresult = result;
   return jresult;
 }
 
 
-SWIGEXPORT unsigned int SWIGSTDCALL CSharp_Dali_Ruler_IsEnabled(void * jarg1) {
+SWIGEXPORT unsigned int SWIGSTDCALL CSharp_Dali_DefaultRuler_GetPageFromPosition(void * jarg1, float jarg2, unsigned int jarg3) {
   unsigned int jresult ;
-  Dali::Toolkit::Ruler *arg1 = (Dali::Toolkit::Ruler *) 0 ;
-  bool result;
+  Dali::Toolkit::DefaultRuler *arg1 = (Dali::Toolkit::DefaultRuler *) 0 ;
+  float arg2 ;
+  bool arg3 ;
+  unsigned int result;
 
-  arg1 = (Dali::Toolkit::Ruler *)jarg1;
+  arg1 = (Dali::Toolkit::DefaultRuler *)jarg1;
+  arg2 = (float)jarg2;
+  arg3 = jarg3 ? true : false;
   {
     try {
-      result = (bool)((Dali::Toolkit::Ruler const *)arg1)->IsEnabled();
+      result = (unsigned int)((Dali::Toolkit::DefaultRuler const *)arg1)->GetPageFromPosition(arg2,arg3);
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -78775,42 +77846,46 @@ SWIGEXPORT unsigned int SWIGSTDCALL CSharp_Dali_Ruler_IsEnabled(void * jarg1) {
 }
 
 
-SWIGEXPORT void SWIGSTDCALL CSharp_Dali_Ruler_Enable(void * jarg1) {
-  Dali::Toolkit::Ruler *arg1 = (Dali::Toolkit::Ruler *) 0 ;
+SWIGEXPORT unsigned int SWIGSTDCALL CSharp_Dali_DefaultRuler_GetTotalPages(void * jarg1) {
+  unsigned int jresult ;
+  Dali::Toolkit::DefaultRuler *arg1 = (Dali::Toolkit::DefaultRuler *) 0 ;
+  unsigned int result;
 
-  arg1 = (Dali::Toolkit::Ruler *)jarg1;
+  arg1 = (Dali::Toolkit::DefaultRuler *)jarg1;
   {
     try {
-      (arg1)->Enable();
+      result = (unsigned int)((Dali::Toolkit::DefaultRuler const *)arg1)->GetTotalPages();
     } catch (std::out_of_range& e) {
       {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
+        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
       };
     } catch (std::exception& e) {
       {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return ;
+        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
       };
     } catch (Dali::DaliException e) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return ;
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
       };
     } catch (...) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ;
+        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
       };
     }
   }
 
+  jresult = result;
+  return jresult;
 }
 
 
-SWIGEXPORT void SWIGSTDCALL CSharp_Dali_Ruler_Disable(void * jarg1) {
-  Dali::Toolkit::Ruler *arg1 = (Dali::Toolkit::Ruler *) 0 ;
+SWIGEXPORT void SWIGSTDCALL CSharp_Dali_delete_DefaultRuler(void * jarg1) {
+  Dali::Toolkit::DefaultRuler *arg1 = (Dali::Toolkit::DefaultRuler *) 0 ;
 
-  arg1 = (Dali::Toolkit::Ruler *)jarg1;
+  arg1 = (Dali::Toolkit::DefaultRuler *)jarg1;
   {
     try {
-      (arg1)->Disable();
+      delete arg1;
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
@@ -78833,52 +77908,15 @@ SWIGEXPORT void SWIGSTDCALL CSharp_Dali_Ruler_Disable(void * jarg1) {
 }
 
 
-SWIGEXPORT void SWIGSTDCALL CSharp_Dali_Ruler_SetDomain(void * jarg1, void * jarg2) {
-  Dali::Toolkit::Ruler *arg1 = (Dali::Toolkit::Ruler *) 0 ;
-  SwigValueWrapper< Dali::Toolkit::RulerDomain > arg2 ;
-  Dali::Toolkit::RulerDomain *argp2 ;
-
-  arg1 = (Dali::Toolkit::Ruler *)jarg1;
-  argp2 = (Dali::Toolkit::RulerDomain *)jarg2;
-  if (!argp2) {
-    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null Dali::Toolkit::RulerDomain", 0);
-    return ;
-  }
-  arg2 = *argp2;
-  {
-    try {
-      (arg1)->SetDomain(arg2);
-    } catch (std::out_of_range& e) {
-      {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
-      };
-    } catch (std::exception& e) {
-      {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return ;
-      };
-    } catch (Dali::DaliException e) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return ;
-      };
-    } catch (...) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ;
-      };
-    }
-  }
-
-}
-
-
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_Ruler_GetDomain(void * jarg1) {
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_FixedRuler__SWIG_0(float jarg1) {
   void * jresult ;
-  Dali::Toolkit::Ruler *arg1 = (Dali::Toolkit::Ruler *) 0 ;
-  Dali::Toolkit::RulerDomain *result = 0 ;
+  float arg1 ;
+  Dali::Toolkit::FixedRuler *result = 0 ;
 
-  arg1 = (Dali::Toolkit::Ruler *)jarg1;
+  arg1 = (float)jarg1;
   {
     try {
-      result = (Dali::Toolkit::RulerDomain *) &((Dali::Toolkit::Ruler const *)arg1)->GetDomain();
+      result = (Dali::Toolkit::FixedRuler *)new Dali::Toolkit::FixedRuler(arg1);
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -78903,50 +77941,13 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_Ruler_GetDomain(void * jarg1) {
 }
 
 
-SWIGEXPORT void SWIGSTDCALL CSharp_Dali_Ruler_DisableDomain(void * jarg1) {
-  Dali::Toolkit::Ruler *arg1 = (Dali::Toolkit::Ruler *) 0 ;
-
-  arg1 = (Dali::Toolkit::Ruler *)jarg1;
-  {
-    try {
-      (arg1)->DisableDomain();
-    } catch (std::out_of_range& e) {
-      {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
-      };
-    } catch (std::exception& e) {
-      {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return ;
-      };
-    } catch (Dali::DaliException e) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return ;
-      };
-    } catch (...) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ;
-      };
-    }
-  }
-
-}
-
-
-SWIGEXPORT float SWIGSTDCALL CSharp_Dali_Ruler_Clamp__SWIG_0(void * jarg1, float jarg2, float jarg3, float jarg4) {
-  float jresult ;
-  Dali::Toolkit::Ruler *arg1 = (Dali::Toolkit::Ruler *) 0 ;
-  float arg2 ;
-  float arg3 ;
-  float arg4 ;
-  float result;
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_FixedRuler__SWIG_1() {
+  void * jresult ;
+  Dali::Toolkit::FixedRuler *result = 0 ;
 
-  arg1 = (Dali::Toolkit::Ruler *)jarg1;
-  arg2 = (float)jarg2;
-  arg3 = (float)jarg3;
-  arg4 = (float)jarg4;
   {
     try {
-      result = (float)((Dali::Toolkit::Ruler const *)arg1)->Clamp(arg2,arg3,arg4);
+      result = (Dali::Toolkit::FixedRuler *)new Dali::Toolkit::FixedRuler();
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -78966,24 +77967,24 @@ SWIGEXPORT float SWIGSTDCALL CSharp_Dali_Ruler_Clamp__SWIG_0(void * jarg1, float
     }
   }
 
-  jresult = result;
+  jresult = (void *)result;
   return jresult;
 }
 
 
-SWIGEXPORT float SWIGSTDCALL CSharp_Dali_Ruler_Clamp__SWIG_1(void * jarg1, float jarg2, float jarg3) {
+SWIGEXPORT float SWIGSTDCALL CSharp_Dali_FixedRuler_Snap(void * jarg1, float jarg2, float jarg3) {
   float jresult ;
-  Dali::Toolkit::Ruler *arg1 = (Dali::Toolkit::Ruler *) 0 ;
+  Dali::Toolkit::FixedRuler *arg1 = (Dali::Toolkit::FixedRuler *) 0 ;
   float arg2 ;
   float arg3 ;
   float result;
 
-  arg1 = (Dali::Toolkit::Ruler *)jarg1;
+  arg1 = (Dali::Toolkit::FixedRuler *)jarg1;
   arg2 = (float)jarg2;
   arg3 = (float)jarg3;
   {
     try {
-      result = (float)((Dali::Toolkit::Ruler const *)arg1)->Clamp(arg2,arg3);
+      result = (float)((Dali::Toolkit::FixedRuler const *)arg1)->Snap(arg2,arg3);
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -79008,17 +78009,21 @@ SWIGEXPORT float SWIGSTDCALL CSharp_Dali_Ruler_Clamp__SWIG_1(void * jarg1, float
 }
 
 
-SWIGEXPORT float SWIGSTDCALL CSharp_Dali_Ruler_Clamp__SWIG_2(void * jarg1, float jarg2) {
+SWIGEXPORT float SWIGSTDCALL CSharp_Dali_FixedRuler_GetPositionFromPage(void * jarg1, unsigned int jarg2, unsigned int * jarg3, unsigned int jarg4) {
   float jresult ;
-  Dali::Toolkit::Ruler *arg1 = (Dali::Toolkit::Ruler *) 0 ;
-  float arg2 ;
+  Dali::Toolkit::FixedRuler *arg1 = (Dali::Toolkit::FixedRuler *) 0 ;
+  unsigned int arg2 ;
+  unsigned int *arg3 = 0 ;
+  bool arg4 ;
   float result;
 
-  arg1 = (Dali::Toolkit::Ruler *)jarg1;
-  arg2 = (float)jarg2;
+  arg1 = (Dali::Toolkit::FixedRuler *)jarg1;
+  arg2 = (unsigned int)jarg2;
+  arg3 = (unsigned int *)jarg3;
+  arg4 = jarg4 ? true : false;
   {
     try {
-      result = (float)((Dali::Toolkit::Ruler const *)arg1)->Clamp(arg2);
+      result = (float)((Dali::Toolkit::FixedRuler const *)arg1)->GetPositionFromPage(arg2,*arg3,arg4);
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -79043,27 +78048,19 @@ SWIGEXPORT float SWIGSTDCALL CSharp_Dali_Ruler_Clamp__SWIG_2(void * jarg1, float
 }
 
 
-SWIGEXPORT float SWIGSTDCALL CSharp_Dali_Ruler_Clamp__SWIG_3(void * jarg1, float jarg2, float jarg3, float jarg4, void * jarg5) {
-  float jresult ;
-  Dali::Toolkit::Ruler *arg1 = (Dali::Toolkit::Ruler *) 0 ;
+SWIGEXPORT unsigned int SWIGSTDCALL CSharp_Dali_FixedRuler_GetPageFromPosition(void * jarg1, float jarg2, unsigned int jarg3) {
+  unsigned int jresult ;
+  Dali::Toolkit::FixedRuler *arg1 = (Dali::Toolkit::FixedRuler *) 0 ;
   float arg2 ;
-  float arg3 ;
-  float arg4 ;
-  Dali::Toolkit::ClampState *arg5 = 0 ;
-  float result;
+  bool arg3 ;
+  unsigned int result;
 
-  arg1 = (Dali::Toolkit::Ruler *)jarg1;
+  arg1 = (Dali::Toolkit::FixedRuler *)jarg1;
   arg2 = (float)jarg2;
-  arg3 = (float)jarg3;
-  arg4 = (float)jarg4;
-  arg5 = (Dali::Toolkit::ClampState *)jarg5;
-  if (!arg5) {
-    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::Toolkit::ClampState & type is null", 0);
-    return 0;
-  }
+  arg3 = jarg3 ? true : false;
   {
     try {
-      result = (float)((Dali::Toolkit::Ruler const *)arg1)->Clamp(arg2,arg3,arg4,*arg5);
+      result = (unsigned int)((Dali::Toolkit::FixedRuler const *)arg1)->GetPageFromPosition(arg2,arg3);
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -79088,23 +78085,15 @@ SWIGEXPORT float SWIGSTDCALL CSharp_Dali_Ruler_Clamp__SWIG_3(void * jarg1, float
 }
 
 
-SWIGEXPORT float SWIGSTDCALL CSharp_Dali_Ruler_SnapAndClamp__SWIG_0(void * jarg1, float jarg2, float jarg3, float jarg4, float jarg5) {
-  float jresult ;
-  Dali::Toolkit::Ruler *arg1 = (Dali::Toolkit::Ruler *) 0 ;
-  float arg2 ;
-  float arg3 ;
-  float arg4 ;
-  float arg5 ;
-  float result;
+SWIGEXPORT unsigned int SWIGSTDCALL CSharp_Dali_FixedRuler_GetTotalPages(void * jarg1) {
+  unsigned int jresult ;
+  Dali::Toolkit::FixedRuler *arg1 = (Dali::Toolkit::FixedRuler *) 0 ;
+  unsigned int result;
 
-  arg1 = (Dali::Toolkit::Ruler *)jarg1;
-  arg2 = (float)jarg2;
-  arg3 = (float)jarg3;
-  arg4 = (float)jarg4;
-  arg5 = (float)jarg5;
+  arg1 = (Dali::Toolkit::FixedRuler *)jarg1;
   {
     try {
-      result = (float)((Dali::Toolkit::Ruler const *)arg1)->SnapAndClamp(arg2,arg3,arg4,arg5);
+      result = (unsigned int)((Dali::Toolkit::FixedRuler const *)arg1)->GetTotalPages();
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -79129,171 +78118,108 @@ SWIGEXPORT float SWIGSTDCALL CSharp_Dali_Ruler_SnapAndClamp__SWIG_0(void * jarg1
 }
 
 
-SWIGEXPORT float SWIGSTDCALL CSharp_Dali_Ruler_SnapAndClamp__SWIG_1(void * jarg1, float jarg2, float jarg3, float jarg4) {
-  float jresult ;
-  Dali::Toolkit::Ruler *arg1 = (Dali::Toolkit::Ruler *) 0 ;
-  float arg2 ;
-  float arg3 ;
-  float arg4 ;
-  float result;
+SWIGEXPORT void SWIGSTDCALL CSharp_Dali_delete_FixedRuler(void * jarg1) {
+  Dali::Toolkit::FixedRuler *arg1 = (Dali::Toolkit::FixedRuler *) 0 ;
 
-  arg1 = (Dali::Toolkit::Ruler *)jarg1;
-  arg2 = (float)jarg2;
-  arg3 = (float)jarg3;
-  arg4 = (float)jarg4;
+  arg1 = (Dali::Toolkit::FixedRuler *)jarg1;
   {
     try {
-      result = (float)((Dali::Toolkit::Ruler const *)arg1)->SnapAndClamp(arg2,arg3,arg4);
+      delete arg1;
     } catch (std::out_of_range& e) {
       {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
+        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
       };
     } catch (std::exception& e) {
       {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
+        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return ;
       };
     } catch (Dali::DaliException e) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return ;
       };
     } catch (...) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
+        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ;
       };
     }
   }
 
-  jresult = result;
-  return jresult;
 }
 
 
-SWIGEXPORT float SWIGSTDCALL CSharp_Dali_Ruler_SnapAndClamp__SWIG_2(void * jarg1, float jarg2, float jarg3) {
-  float jresult ;
-  Dali::Toolkit::Ruler *arg1 = (Dali::Toolkit::Ruler *) 0 ;
-  float arg2 ;
-  float arg3 ;
-  float result;
+SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ScrollView_ClampEvent_scale_set(void * jarg1, void * jarg2) {
+  Dali::Toolkit::ScrollView::ClampEvent *arg1 = (Dali::Toolkit::ScrollView::ClampEvent *) 0 ;
+  Dali::Toolkit::ClampState2D *arg2 = (Dali::Toolkit::ClampState2D *) 0 ;
 
-  arg1 = (Dali::Toolkit::Ruler *)jarg1;
-  arg2 = (float)jarg2;
-  arg3 = (float)jarg3;
-  {
-    try {
-      result = (float)((Dali::Toolkit::Ruler const *)arg1)->SnapAndClamp(arg2,arg3);
-    } catch (std::out_of_range& e) {
-      {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
-      };
-    } catch (std::exception& e) {
-      {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
-      };
-    } catch (Dali::DaliException e) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
-      };
-    } catch (...) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
-      };
-    }
-  }
+  arg1 = (Dali::Toolkit::ScrollView::ClampEvent *)jarg1;
+  arg2 = (Dali::Toolkit::ClampState2D *)jarg2;
+  if (arg1) (arg1)->scale = *arg2;
+}
 
-  jresult = result;
+
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_ScrollView_ClampEvent_scale_get(void * jarg1) {
+  void * jresult ;
+  Dali::Toolkit::ScrollView::ClampEvent *arg1 = (Dali::Toolkit::ScrollView::ClampEvent *) 0 ;
+  Dali::Toolkit::ClampState2D *result = 0 ;
+
+  arg1 = (Dali::Toolkit::ScrollView::ClampEvent *)jarg1;
+  result = (Dali::Toolkit::ClampState2D *)& ((arg1)->scale);
+  jresult = (void *)result;
   return jresult;
 }
 
 
-SWIGEXPORT float SWIGSTDCALL CSharp_Dali_Ruler_SnapAndClamp__SWIG_3(void * jarg1, float jarg2) {
-  float jresult ;
-  Dali::Toolkit::Ruler *arg1 = (Dali::Toolkit::Ruler *) 0 ;
-  float arg2 ;
-  float result;
+SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ScrollView_ClampEvent_position_set(void * jarg1, void * jarg2) {
+  Dali::Toolkit::ScrollView::ClampEvent *arg1 = (Dali::Toolkit::ScrollView::ClampEvent *) 0 ;
+  Dali::Toolkit::ClampState2D *arg2 = (Dali::Toolkit::ClampState2D *) 0 ;
 
-  arg1 = (Dali::Toolkit::Ruler *)jarg1;
-  arg2 = (float)jarg2;
-  {
-    try {
-      result = (float)((Dali::Toolkit::Ruler const *)arg1)->SnapAndClamp(arg2);
-    } catch (std::out_of_range& e) {
-      {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
-      };
-    } catch (std::exception& e) {
-      {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
-      };
-    } catch (Dali::DaliException e) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
-      };
-    } catch (...) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
-      };
-    }
-  }
+  arg1 = (Dali::Toolkit::ScrollView::ClampEvent *)jarg1;
+  arg2 = (Dali::Toolkit::ClampState2D *)jarg2;
+  if (arg1) (arg1)->position = *arg2;
+}
 
-  jresult = result;
+
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_ScrollView_ClampEvent_position_get(void * jarg1) {
+  void * jresult ;
+  Dali::Toolkit::ScrollView::ClampEvent *arg1 = (Dali::Toolkit::ScrollView::ClampEvent *) 0 ;
+  Dali::Toolkit::ClampState2D *result = 0 ;
+
+  arg1 = (Dali::Toolkit::ScrollView::ClampEvent *)jarg1;
+  result = (Dali::Toolkit::ClampState2D *)& ((arg1)->position);
+  jresult = (void *)result;
   return jresult;
 }
 
 
-SWIGEXPORT float SWIGSTDCALL CSharp_Dali_Ruler_SnapAndClamp__SWIG_4(void * jarg1, float jarg2, float jarg3, float jarg4, float jarg5, void * jarg6) {
-  float jresult ;
-  Dali::Toolkit::Ruler *arg1 = (Dali::Toolkit::Ruler *) 0 ;
-  float arg2 ;
-  float arg3 ;
-  float arg4 ;
-  float arg5 ;
-  Dali::Toolkit::ClampState *arg6 = 0 ;
-  float result;
+SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ScrollView_ClampEvent_rotation_set(void * jarg1, int jarg2) {
+  Dali::Toolkit::ScrollView::ClampEvent *arg1 = (Dali::Toolkit::ScrollView::ClampEvent *) 0 ;
+  Dali::Toolkit::ClampState arg2 ;
 
-  arg1 = (Dali::Toolkit::Ruler *)jarg1;
-  arg2 = (float)jarg2;
-  arg3 = (float)jarg3;
-  arg4 = (float)jarg4;
-  arg5 = (float)jarg5;
-  arg6 = (Dali::Toolkit::ClampState *)jarg6;
-  if (!arg6) {
-    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::Toolkit::ClampState & type is null", 0);
-    return 0;
-  }
-  {
-    try {
-      result = (float)((Dali::Toolkit::Ruler const *)arg1)->SnapAndClamp(arg2,arg3,arg4,arg5,*arg6);
-    } catch (std::out_of_range& e) {
-      {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
-      };
-    } catch (std::exception& e) {
-      {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
-      };
-    } catch (Dali::DaliException e) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
-      };
-    } catch (...) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
-      };
-    }
-  }
+  arg1 = (Dali::Toolkit::ScrollView::ClampEvent *)jarg1;
+  arg2 = (Dali::Toolkit::ClampState)jarg2;
+  if (arg1) (arg1)->rotation = arg2;
+}
 
-  jresult = result;
+
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_ScrollView_ClampEvent_rotation_get(void * jarg1) {
+  int jresult ;
+  Dali::Toolkit::ScrollView::ClampEvent *arg1 = (Dali::Toolkit::ScrollView::ClampEvent *) 0 ;
+  Dali::Toolkit::ClampState result;
+
+  arg1 = (Dali::Toolkit::ScrollView::ClampEvent *)jarg1;
+  result = (Dali::Toolkit::ClampState) ((arg1)->rotation);
+  jresult = (int)result;
   return jresult;
 }
 
 
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_DefaultRuler() {
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_ScrollView_ClampEvent() {
   void * jresult ;
-  Dali::Toolkit::DefaultRuler *result = 0 ;
+  Dali::Toolkit::ScrollView::ClampEvent *result = 0 ;
 
   {
     try {
-      result = (Dali::Toolkit::DefaultRuler *)new Dali::Toolkit::DefaultRuler();
+      result = (Dali::Toolkit::ScrollView::ClampEvent *)new Dali::Toolkit::ScrollView::ClampEvent();
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -79318,128 +78244,108 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_DefaultRuler() {
 }
 
 
-SWIGEXPORT float SWIGSTDCALL CSharp_Dali_DefaultRuler_Snap(void * jarg1, float jarg2, float jarg3) {
-  float jresult ;
-  Dali::Toolkit::DefaultRuler *arg1 = (Dali::Toolkit::DefaultRuler *) 0 ;
-  float arg2 ;
-  float arg3 ;
-  float result;
+SWIGEXPORT void SWIGSTDCALL CSharp_Dali_delete_ScrollView_ClampEvent(void * jarg1) {
+  Dali::Toolkit::ScrollView::ClampEvent *arg1 = (Dali::Toolkit::ScrollView::ClampEvent *) 0 ;
 
-  arg1 = (Dali::Toolkit::DefaultRuler *)jarg1;
-  arg2 = (float)jarg2;
-  arg3 = (float)jarg3;
+  arg1 = (Dali::Toolkit::ScrollView::ClampEvent *)jarg1;
   {
     try {
-      result = (float)((Dali::Toolkit::DefaultRuler const *)arg1)->Snap(arg2,arg3);
+      delete arg1;
     } catch (std::out_of_range& e) {
       {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
+        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
       };
     } catch (std::exception& e) {
       {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
+        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return ;
       };
     } catch (Dali::DaliException e) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return ;
       };
     } catch (...) {
       {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
+        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ;
       };
     }
   }
 
-  jresult = result;
+}
+
+
+SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ScrollView_SnapEvent_type_set(void * jarg1, int jarg2) {
+  Dali::Toolkit::ScrollView::SnapEvent *arg1 = (Dali::Toolkit::ScrollView::SnapEvent *) 0 ;
+  Dali::Toolkit::SnapType arg2 ;
+
+  arg1 = (Dali::Toolkit::ScrollView::SnapEvent *)jarg1;
+  arg2 = (Dali::Toolkit::SnapType)jarg2;
+  if (arg1) (arg1)->type = arg2;
+}
+
+
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_ScrollView_SnapEvent_type_get(void * jarg1) {
+  int jresult ;
+  Dali::Toolkit::ScrollView::SnapEvent *arg1 = (Dali::Toolkit::ScrollView::SnapEvent *) 0 ;
+  Dali::Toolkit::SnapType result;
+
+  arg1 = (Dali::Toolkit::ScrollView::SnapEvent *)jarg1;
+  result = (Dali::Toolkit::SnapType) ((arg1)->type);
+  jresult = (int)result;
   return jresult;
 }
 
 
-SWIGEXPORT float SWIGSTDCALL CSharp_Dali_DefaultRuler_GetPositionFromPage(void * jarg1, unsigned int jarg2, unsigned int * jarg3, unsigned int jarg4) {
-  float jresult ;
-  Dali::Toolkit::DefaultRuler *arg1 = (Dali::Toolkit::DefaultRuler *) 0 ;
-  unsigned int arg2 ;
-  unsigned int *arg3 = 0 ;
-  bool arg4 ;
-  float result;
+SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ScrollView_SnapEvent_position_set(void * jarg1, void * jarg2) {
+  Dali::Toolkit::ScrollView::SnapEvent *arg1 = (Dali::Toolkit::ScrollView::SnapEvent *) 0 ;
+  Dali::Vector2 *arg2 = (Dali::Vector2 *) 0 ;
 
-  arg1 = (Dali::Toolkit::DefaultRuler *)jarg1;
-  arg2 = (unsigned int)jarg2;
-  arg3 = (unsigned int *)jarg3;
-  arg4 = jarg4 ? true : false;
-  {
-    try {
-      result = (float)((Dali::Toolkit::DefaultRuler const *)arg1)->GetPositionFromPage(arg2,*arg3,arg4);
-    } catch (std::out_of_range& e) {
-      {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
-      };
-    } catch (std::exception& e) {
-      {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
-      };
-    } catch (Dali::DaliException e) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
-      };
-    } catch (...) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
-      };
-    }
-  }
+  arg1 = (Dali::Toolkit::ScrollView::SnapEvent *)jarg1;
+  arg2 = (Dali::Vector2 *)jarg2;
+  if (arg1) (arg1)->position = *arg2;
+}
 
-  jresult = result;
+
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_ScrollView_SnapEvent_position_get(void * jarg1) {
+  void * jresult ;
+  Dali::Toolkit::ScrollView::SnapEvent *arg1 = (Dali::Toolkit::ScrollView::SnapEvent *) 0 ;
+  Dali::Vector2 *result = 0 ;
+
+  arg1 = (Dali::Toolkit::ScrollView::SnapEvent *)jarg1;
+  result = (Dali::Vector2 *)& ((arg1)->position);
+  jresult = (void *)result;
   return jresult;
 }
 
 
-SWIGEXPORT unsigned int SWIGSTDCALL CSharp_Dali_DefaultRuler_GetPageFromPosition(void * jarg1, float jarg2, unsigned int jarg3) {
-  unsigned int jresult ;
-  Dali::Toolkit::DefaultRuler *arg1 = (Dali::Toolkit::DefaultRuler *) 0 ;
+SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ScrollView_SnapEvent_duration_set(void * jarg1, float jarg2) {
+  Dali::Toolkit::ScrollView::SnapEvent *arg1 = (Dali::Toolkit::ScrollView::SnapEvent *) 0 ;
   float arg2 ;
-  bool arg3 ;
-  unsigned int result;
 
-  arg1 = (Dali::Toolkit::DefaultRuler *)jarg1;
+  arg1 = (Dali::Toolkit::ScrollView::SnapEvent *)jarg1;
   arg2 = (float)jarg2;
-  arg3 = jarg3 ? true : false;
-  {
-    try {
-      result = (unsigned int)((Dali::Toolkit::DefaultRuler const *)arg1)->GetPageFromPosition(arg2,arg3);
-    } catch (std::out_of_range& e) {
-      {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
-      };
-    } catch (std::exception& e) {
-      {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
-      };
-    } catch (Dali::DaliException e) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
-      };
-    } catch (...) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
-      };
-    }
-  }
+  if (arg1) (arg1)->duration = arg2;
+}
+
+
+SWIGEXPORT float SWIGSTDCALL CSharp_Dali_ScrollView_SnapEvent_duration_get(void * jarg1) {
+  float jresult ;
+  Dali::Toolkit::ScrollView::SnapEvent *arg1 = (Dali::Toolkit::ScrollView::SnapEvent *) 0 ;
+  float result;
 
+  arg1 = (Dali::Toolkit::ScrollView::SnapEvent *)jarg1;
+  result = (float) ((arg1)->duration);
   jresult = result;
   return jresult;
 }
 
 
-SWIGEXPORT unsigned int SWIGSTDCALL CSharp_Dali_DefaultRuler_GetTotalPages(void * jarg1) {
-  unsigned int jresult ;
-  Dali::Toolkit::DefaultRuler *arg1 = (Dali::Toolkit::DefaultRuler *) 0 ;
-  unsigned int result;
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_ScrollView_SnapEvent() {
+  void * jresult ;
+  Dali::Toolkit::ScrollView::SnapEvent *result = 0 ;
 
-  arg1 = (Dali::Toolkit::DefaultRuler *)jarg1;
   {
     try {
-      result = (unsigned int)((Dali::Toolkit::DefaultRuler const *)arg1)->GetTotalPages();
+      result = (Dali::Toolkit::ScrollView::SnapEvent *)new Dali::Toolkit::ScrollView::SnapEvent();
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -79459,15 +78365,15 @@ SWIGEXPORT unsigned int SWIGSTDCALL CSharp_Dali_DefaultRuler_GetTotalPages(void
     }
   }
 
-  jresult = result;
+  jresult = (void *)result;
   return jresult;
 }
 
 
-SWIGEXPORT void SWIGSTDCALL CSharp_Dali_delete_DefaultRuler(void * jarg1) {
-  Dali::Toolkit::DefaultRuler *arg1 = (Dali::Toolkit::DefaultRuler *) 0 ;
+SWIGEXPORT void SWIGSTDCALL CSharp_Dali_delete_ScrollView_SnapEvent(void * jarg1) {
+  Dali::Toolkit::ScrollView::SnapEvent *arg1 = (Dali::Toolkit::ScrollView::SnapEvent *) 0 ;
 
-  arg1 = (Dali::Toolkit::DefaultRuler *)jarg1;
+  arg1 = (Dali::Toolkit::ScrollView::SnapEvent *)jarg1;
   {
     try {
       delete arg1;
@@ -79493,500 +78399,9 @@ SWIGEXPORT void SWIGSTDCALL CSharp_Dali_delete_DefaultRuler(void * jarg1) {
 }
 
 
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_FixedRuler__SWIG_0(float jarg1) {
-  void * jresult ;
-  float arg1 ;
-  Dali::Toolkit::FixedRuler *result = 0 ;
-
-  arg1 = (float)jarg1;
-  {
-    try {
-      result = (Dali::Toolkit::FixedRuler *)new Dali::Toolkit::FixedRuler(arg1);
-    } catch (std::out_of_range& e) {
-      {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
-      };
-    } catch (std::exception& e) {
-      {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
-      };
-    } catch (Dali::DaliException e) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
-      };
-    } catch (...) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
-      };
-    }
-  }
-
-  jresult = (void *)result;
-  return jresult;
-}
-
-
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_FixedRuler__SWIG_1() {
-  void * jresult ;
-  Dali::Toolkit::FixedRuler *result = 0 ;
-
-  {
-    try {
-      result = (Dali::Toolkit::FixedRuler *)new Dali::Toolkit::FixedRuler();
-    } catch (std::out_of_range& e) {
-      {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
-      };
-    } catch (std::exception& e) {
-      {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
-      };
-    } catch (Dali::DaliException e) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
-      };
-    } catch (...) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
-      };
-    }
-  }
-
-  jresult = (void *)result;
-  return jresult;
-}
-
-
-SWIGEXPORT float SWIGSTDCALL CSharp_Dali_FixedRuler_Snap(void * jarg1, float jarg2, float jarg3) {
-  float jresult ;
-  Dali::Toolkit::FixedRuler *arg1 = (Dali::Toolkit::FixedRuler *) 0 ;
-  float arg2 ;
-  float arg3 ;
-  float result;
-
-  arg1 = (Dali::Toolkit::FixedRuler *)jarg1;
-  arg2 = (float)jarg2;
-  arg3 = (float)jarg3;
-  {
-    try {
-      result = (float)((Dali::Toolkit::FixedRuler const *)arg1)->Snap(arg2,arg3);
-    } catch (std::out_of_range& e) {
-      {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
-      };
-    } catch (std::exception& e) {
-      {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
-      };
-    } catch (Dali::DaliException e) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
-      };
-    } catch (...) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
-      };
-    }
-  }
-
-  jresult = result;
-  return jresult;
-}
-
-
-SWIGEXPORT float SWIGSTDCALL CSharp_Dali_FixedRuler_GetPositionFromPage(void * jarg1, unsigned int jarg2, unsigned int * jarg3, unsigned int jarg4) {
-  float jresult ;
-  Dali::Toolkit::FixedRuler *arg1 = (Dali::Toolkit::FixedRuler *) 0 ;
-  unsigned int arg2 ;
-  unsigned int *arg3 = 0 ;
-  bool arg4 ;
-  float result;
-
-  arg1 = (Dali::Toolkit::FixedRuler *)jarg1;
-  arg2 = (unsigned int)jarg2;
-  arg3 = (unsigned int *)jarg3;
-  arg4 = jarg4 ? true : false;
-  {
-    try {
-      result = (float)((Dali::Toolkit::FixedRuler const *)arg1)->GetPositionFromPage(arg2,*arg3,arg4);
-    } catch (std::out_of_range& e) {
-      {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
-      };
-    } catch (std::exception& e) {
-      {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
-      };
-    } catch (Dali::DaliException e) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
-      };
-    } catch (...) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
-      };
-    }
-  }
-
-  jresult = result;
-  return jresult;
-}
-
-
-SWIGEXPORT unsigned int SWIGSTDCALL CSharp_Dali_FixedRuler_GetPageFromPosition(void * jarg1, float jarg2, unsigned int jarg3) {
-  unsigned int jresult ;
-  Dali::Toolkit::FixedRuler *arg1 = (Dali::Toolkit::FixedRuler *) 0 ;
-  float arg2 ;
-  bool arg3 ;
-  unsigned int result;
-
-  arg1 = (Dali::Toolkit::FixedRuler *)jarg1;
-  arg2 = (float)jarg2;
-  arg3 = jarg3 ? true : false;
-  {
-    try {
-      result = (unsigned int)((Dali::Toolkit::FixedRuler const *)arg1)->GetPageFromPosition(arg2,arg3);
-    } catch (std::out_of_range& e) {
-      {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
-      };
-    } catch (std::exception& e) {
-      {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
-      };
-    } catch (Dali::DaliException e) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
-      };
-    } catch (...) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
-      };
-    }
-  }
-
-  jresult = result;
-  return jresult;
-}
-
-
-SWIGEXPORT unsigned int SWIGSTDCALL CSharp_Dali_FixedRuler_GetTotalPages(void * jarg1) {
-  unsigned int jresult ;
-  Dali::Toolkit::FixedRuler *arg1 = (Dali::Toolkit::FixedRuler *) 0 ;
-  unsigned int result;
-
-  arg1 = (Dali::Toolkit::FixedRuler *)jarg1;
-  {
-    try {
-      result = (unsigned int)((Dali::Toolkit::FixedRuler const *)arg1)->GetTotalPages();
-    } catch (std::out_of_range& e) {
-      {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
-      };
-    } catch (std::exception& e) {
-      {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
-      };
-    } catch (Dali::DaliException e) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
-      };
-    } catch (...) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
-      };
-    }
-  }
-
-  jresult = result;
-  return jresult;
-}
-
-
-SWIGEXPORT void SWIGSTDCALL CSharp_Dali_delete_FixedRuler(void * jarg1) {
-  Dali::Toolkit::FixedRuler *arg1 = (Dali::Toolkit::FixedRuler *) 0 ;
-
-  arg1 = (Dali::Toolkit::FixedRuler *)jarg1;
-  {
-    try {
-      delete arg1;
-    } catch (std::out_of_range& e) {
-      {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
-      };
-    } catch (std::exception& e) {
-      {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return ;
-      };
-    } catch (Dali::DaliException e) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return ;
-      };
-    } catch (...) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ;
-      };
-    }
-  }
-
-}
-
-
-SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ScrollView_ClampEvent_scale_set(void * jarg1, void * jarg2) {
-  Dali::Toolkit::ScrollView::ClampEvent *arg1 = (Dali::Toolkit::ScrollView::ClampEvent *) 0 ;
-  Dali::Toolkit::ClampState2D *arg2 = (Dali::Toolkit::ClampState2D *) 0 ;
-
-  arg1 = (Dali::Toolkit::ScrollView::ClampEvent *)jarg1;
-  arg2 = (Dali::Toolkit::ClampState2D *)jarg2;
-  if (arg1) (arg1)->scale = *arg2;
-}
-
-
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_ScrollView_ClampEvent_scale_get(void * jarg1) {
-  void * jresult ;
-  Dali::Toolkit::ScrollView::ClampEvent *arg1 = (Dali::Toolkit::ScrollView::ClampEvent *) 0 ;
-  Dali::Toolkit::ClampState2D *result = 0 ;
-
-  arg1 = (Dali::Toolkit::ScrollView::ClampEvent *)jarg1;
-  result = (Dali::Toolkit::ClampState2D *)& ((arg1)->scale);
-  jresult = (void *)result;
-  return jresult;
-}
-
-
-SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ScrollView_ClampEvent_position_set(void * jarg1, void * jarg2) {
-  Dali::Toolkit::ScrollView::ClampEvent *arg1 = (Dali::Toolkit::ScrollView::ClampEvent *) 0 ;
-  Dali::Toolkit::ClampState2D *arg2 = (Dali::Toolkit::ClampState2D *) 0 ;
-
-  arg1 = (Dali::Toolkit::ScrollView::ClampEvent *)jarg1;
-  arg2 = (Dali::Toolkit::ClampState2D *)jarg2;
-  if (arg1) (arg1)->position = *arg2;
-}
-
-
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_ScrollView_ClampEvent_position_get(void * jarg1) {
-  void * jresult ;
-  Dali::Toolkit::ScrollView::ClampEvent *arg1 = (Dali::Toolkit::ScrollView::ClampEvent *) 0 ;
-  Dali::Toolkit::ClampState2D *result = 0 ;
-
-  arg1 = (Dali::Toolkit::ScrollView::ClampEvent *)jarg1;
-  result = (Dali::Toolkit::ClampState2D *)& ((arg1)->position);
-  jresult = (void *)result;
-  return jresult;
-}
-
-
-SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ScrollView_ClampEvent_rotation_set(void * jarg1, int jarg2) {
-  Dali::Toolkit::ScrollView::ClampEvent *arg1 = (Dali::Toolkit::ScrollView::ClampEvent *) 0 ;
-  Dali::Toolkit::ClampState arg2 ;
-
-  arg1 = (Dali::Toolkit::ScrollView::ClampEvent *)jarg1;
-  arg2 = (Dali::Toolkit::ClampState)jarg2;
-  if (arg1) (arg1)->rotation = arg2;
-}
-
-
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_ScrollView_ClampEvent_rotation_get(void * jarg1) {
-  int jresult ;
-  Dali::Toolkit::ScrollView::ClampEvent *arg1 = (Dali::Toolkit::ScrollView::ClampEvent *) 0 ;
-  Dali::Toolkit::ClampState result;
-
-  arg1 = (Dali::Toolkit::ScrollView::ClampEvent *)jarg1;
-  result = (Dali::Toolkit::ClampState) ((arg1)->rotation);
-  jresult = (int)result;
-  return jresult;
-}
-
-
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_ScrollView_ClampEvent() {
-  void * jresult ;
-  Dali::Toolkit::ScrollView::ClampEvent *result = 0 ;
-
-  {
-    try {
-      result = (Dali::Toolkit::ScrollView::ClampEvent *)new Dali::Toolkit::ScrollView::ClampEvent();
-    } catch (std::out_of_range& e) {
-      {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
-      };
-    } catch (std::exception& e) {
-      {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
-      };
-    } catch (Dali::DaliException e) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
-      };
-    } catch (...) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
-      };
-    }
-  }
-
-  jresult = (void *)result;
-  return jresult;
-}
-
-
-SWIGEXPORT void SWIGSTDCALL CSharp_Dali_delete_ScrollView_ClampEvent(void * jarg1) {
-  Dali::Toolkit::ScrollView::ClampEvent *arg1 = (Dali::Toolkit::ScrollView::ClampEvent *) 0 ;
-
-  arg1 = (Dali::Toolkit::ScrollView::ClampEvent *)jarg1;
-  {
-    try {
-      delete arg1;
-    } catch (std::out_of_range& e) {
-      {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
-      };
-    } catch (std::exception& e) {
-      {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return ;
-      };
-    } catch (Dali::DaliException e) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return ;
-      };
-    } catch (...) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ;
-      };
-    }
-  }
-
-}
-
-
-SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ScrollView_SnapEvent_type_set(void * jarg1, int jarg2) {
-  Dali::Toolkit::ScrollView::SnapEvent *arg1 = (Dali::Toolkit::ScrollView::SnapEvent *) 0 ;
-  Dali::Toolkit::SnapType arg2 ;
-
-  arg1 = (Dali::Toolkit::ScrollView::SnapEvent *)jarg1;
-  arg2 = (Dali::Toolkit::SnapType)jarg2;
-  if (arg1) (arg1)->type = arg2;
-}
-
-
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_ScrollView_SnapEvent_type_get(void * jarg1) {
-  int jresult ;
-  Dali::Toolkit::ScrollView::SnapEvent *arg1 = (Dali::Toolkit::ScrollView::SnapEvent *) 0 ;
-  Dali::Toolkit::SnapType result;
-
-  arg1 = (Dali::Toolkit::ScrollView::SnapEvent *)jarg1;
-  result = (Dali::Toolkit::SnapType) ((arg1)->type);
-  jresult = (int)result;
-  return jresult;
-}
-
-
-SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ScrollView_SnapEvent_position_set(void * jarg1, void * jarg2) {
-  Dali::Toolkit::ScrollView::SnapEvent *arg1 = (Dali::Toolkit::ScrollView::SnapEvent *) 0 ;
-  Dali::Vector2 *arg2 = (Dali::Vector2 *) 0 ;
-
-  arg1 = (Dali::Toolkit::ScrollView::SnapEvent *)jarg1;
-  arg2 = (Dali::Vector2 *)jarg2;
-  if (arg1) (arg1)->position = *arg2;
-}
-
-
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_ScrollView_SnapEvent_position_get(void * jarg1) {
-  void * jresult ;
-  Dali::Toolkit::ScrollView::SnapEvent *arg1 = (Dali::Toolkit::ScrollView::SnapEvent *) 0 ;
-  Dali::Vector2 *result = 0 ;
-
-  arg1 = (Dali::Toolkit::ScrollView::SnapEvent *)jarg1;
-  result = (Dali::Vector2 *)& ((arg1)->position);
-  jresult = (void *)result;
-  return jresult;
-}
-
-
-SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ScrollView_SnapEvent_duration_set(void * jarg1, float jarg2) {
-  Dali::Toolkit::ScrollView::SnapEvent *arg1 = (Dali::Toolkit::ScrollView::SnapEvent *) 0 ;
-  float arg2 ;
-
-  arg1 = (Dali::Toolkit::ScrollView::SnapEvent *)jarg1;
-  arg2 = (float)jarg2;
-  if (arg1) (arg1)->duration = arg2;
-}
-
-
-SWIGEXPORT float SWIGSTDCALL CSharp_Dali_ScrollView_SnapEvent_duration_get(void * jarg1) {
-  float jresult ;
-  Dali::Toolkit::ScrollView::SnapEvent *arg1 = (Dali::Toolkit::ScrollView::SnapEvent *) 0 ;
-  float result;
-
-  arg1 = (Dali::Toolkit::ScrollView::SnapEvent *)jarg1;
-  result = (float) ((arg1)->duration);
-  jresult = result;
-  return jresult;
-}
-
-
-SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_ScrollView_SnapEvent() {
-  void * jresult ;
-  Dali::Toolkit::ScrollView::SnapEvent *result = 0 ;
-
-  {
-    try {
-      result = (Dali::Toolkit::ScrollView::SnapEvent *)new Dali::Toolkit::ScrollView::SnapEvent();
-    } catch (std::out_of_range& e) {
-      {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
-      };
-    } catch (std::exception& e) {
-      {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
-      };
-    } catch (Dali::DaliException e) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
-      };
-    } catch (...) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
-      };
-    }
-  }
-
-  jresult = (void *)result;
-  return jresult;
-}
-
-
-SWIGEXPORT void SWIGSTDCALL CSharp_Dali_delete_ScrollView_SnapEvent(void * jarg1) {
-  Dali::Toolkit::ScrollView::SnapEvent *arg1 = (Dali::Toolkit::ScrollView::SnapEvent *) 0 ;
-
-  arg1 = (Dali::Toolkit::ScrollView::SnapEvent *)jarg1;
-  {
-    try {
-      delete arg1;
-    } catch (std::out_of_range& e) {
-      {
-        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
-      };
-    } catch (std::exception& e) {
-      {
-        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return ;
-      };
-    } catch (Dali::DaliException e) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, e.condition); return ;
-      };
-    } catch (...) {
-      {
-        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ;
-      };
-    }
-  }
-
-}
-
-
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_ScrollView_Property_WRAP_ENABLED_get() {
-  int jresult ;
-  int result;
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_ScrollView_Property_WRAP_ENABLED_get() {
+  int jresult ;
+  int result;
 
   result = (int)Dali::Toolkit::ScrollView::Property::WRAP_ENABLED;
   jresult = (int)result;
@@ -84353,55 +82768,6 @@ SWIGEXPORT int SWIGSTDCALL CSharp_Dali_TextLabel_Property_TEXT_COLOR_get() {
   return jresult;
 }
 
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_TextLabel_Property_SHADOW_OFFSET_get() {
-  int jresult ;
-  int result;
-
-  result = (int)Dali::Toolkit::TextLabel::Property::SHADOW_OFFSET;
-  jresult = (int)result;
-  return jresult;
-}
-
-
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_TextLabel_Property_SHADOW_COLOR_get() {
-  int jresult ;
-  int result;
-
-  result = (int)Dali::Toolkit::TextLabel::Property::SHADOW_COLOR;
-  jresult = (int)result;
-  return jresult;
-}
-
-
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_TextLabel_Property_UNDERLINE_ENABLED_get() {
-  int jresult ;
-  int result;
-
-  result = (int)Dali::Toolkit::TextLabel::Property::UNDERLINE_ENABLED;
-  jresult = (int)result;
-  return jresult;
-}
-
-
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_TextLabel_Property_UNDERLINE_COLOR_get() {
-  int jresult ;
-  int result;
-
-  result = (int)Dali::Toolkit::TextLabel::Property::UNDERLINE_COLOR;
-  jresult = (int)result;
-  return jresult;
-}
-
-
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_TextLabel_Property_UNDERLINE_HEIGHT_get() {
-  int jresult ;
-  int result;
-
-  result = (int)Dali::Toolkit::TextLabel::Property::UNDERLINE_HEIGHT;
-  jresult = (int)result;
-  return jresult;
-}
-
 
 SWIGEXPORT int SWIGSTDCALL CSharp_Dali_TextLabel_Property_ENABLE_MARKUP_get() {
   int jresult ;
@@ -89900,21 +88266,21 @@ SWIGEXPORT void SWIGSTDCALL CSharp_Dali_GaussianBlurView_Deactivate(void * jarg1
 
 SWIGEXPORT void SWIGSTDCALL CSharp_Dali_GaussianBlurView_SetUserImageAndOutputRenderTarget(void * jarg1, void * jarg2, void * jarg3) {
   Dali::Toolkit::GaussianBlurView *arg1 = (Dali::Toolkit::GaussianBlurView *) 0 ;
-  Dali::Image arg2 ;
-  Dali::FrameBufferImage arg3 ;
-  Dali::Image *argp2 ;
-  Dali::FrameBufferImage *argp3 ;
+  Dali::Texture arg2 ;
+  Dali::FrameBuffer arg3 ;
+  Dali::Texture *argp2 ;
+  Dali::FrameBuffer *argp3 ;
 
   arg1 = (Dali::Toolkit::GaussianBlurView *)jarg1;
-  argp2 = (Dali::Image *)jarg2;
+  argp2 = (Dali::Texture *)jarg2;
   if (!argp2) {
-    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null Dali::Image", 0);
+    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null Dali::Texture", 0);
     return ;
   }
   arg2 = *argp2;
-  argp3 = (Dali::FrameBufferImage *)jarg3;
+  argp3 = (Dali::FrameBuffer *)jarg3;
   if (!argp3) {
-    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null Dali::FrameBufferImage", 0);
+    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null Dali::FrameBuffer", 0);
     return ;
   }
   arg3 = *argp3;
@@ -89979,7 +88345,7 @@ SWIGEXPORT int SWIGSTDCALL CSharp_Dali_GaussianBlurView_GetBlurStrengthPropertyI
 SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_GaussianBlurView_GetBlurredRenderTarget(void * jarg1) {
   void * jresult ;
   Dali::Toolkit::GaussianBlurView *arg1 = (Dali::Toolkit::GaussianBlurView *) 0 ;
-  Dali::FrameBufferImage result;
+  Dali::FrameBuffer result;
 
   arg1 = (Dali::Toolkit::GaussianBlurView *)jarg1;
   {
@@ -90004,7 +88370,7 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_GaussianBlurView_GetBlurredRenderTarge
     }
   }
 
-  jresult = new Dali::FrameBufferImage((const Dali::FrameBufferImage &)result);
+  jresult = new Dali::FrameBuffer((const Dali::FrameBuffer &)result);
   return jresult;
 }
 
@@ -90207,11 +88573,11 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_PageFactory_NewPage(void * jarg1, unsi
 }
 
 
-SWIGEXPORT int SWIGSTDCALL CSharp_Dali_PageTurnView_Property_PAGE_SIZE_get() {
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_PageTurnView_Property_VIEW_PAGE_SIZE_get() {
   int jresult ;
   int result;
 
-  result = (int)Dali::Toolkit::PageTurnView::Property::PAGE_SIZE;
+  result = (int)Dali::Toolkit::PageTurnView::Property::VIEW_PAGE_SIZE;
   jresult = (int)result;
   return jresult;
 }
@@ -92818,10 +91184,7 @@ SWIGEXPORT void SWIGSTDCALL CSharp_Dali_SetCustomAlgorithm(void * jarg1, void *
   }
   arg1 = *argp1;
   arg2 = (Dali::Toolkit::DevelKeyboardFocusManager::CustomAlgorithmInterface *)jarg2;
-  if (!arg2) {
-    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::Toolkit::DevelKeyboardFocusManager::CustomAlgorithmInterface & type is null", 0);
-    return ;
-  }
+  //Null checking of arg2 is removed. arg2's null set means resetting so it can be a null value.
   {
     try {
       Dali::Toolkit::DevelKeyboardFocusManager::SetCustomAlgorithm(arg1,*arg2);
@@ -101241,11 +99604,6 @@ SWIGEXPORT Dali::BaseHandle * SWIGSTDCALL CSharp_Dali_Timer_SWIGUpcast(Dali::Tim
     return (Dali::BaseHandle *)jarg1;
 }
 
-SWIGEXPORT Dali::BaseHandle * SWIGSTDCALL CSharp_Dali_DragAndDropDetector_SWIGUpcast(Dali::DragAndDropDetector *jarg1) {
-    return (Dali::BaseHandle *)jarg1;
-}
-
-
 SWIGEXPORT Dali::BaseHandle * SWIGSTDCALL CSharp_Dali_Builder_SWIGUpcast(Dali::Toolkit::Builder *jarg1) {
     return (Dali::BaseHandle *)jarg1;
 }
@@ -103348,6 +101706,38 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_GetClosestImageSize__SWIG_4(char * jar
   return jresult;
 }
 
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_GetOriginalImageSize(char * jarg1) {
+  void * jresult ;
+  std::string *arg1 = 0 ;
+  Dali::ImageDimensions result;
+
+  if (!jarg1) {
+    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "null string", 0);
+    return 0;
+  }
+  std::string arg1_str(jarg1);
+  arg1 = &arg1_str;
+  {
+    try {
+      result = Dali::GetOriginalImageSize((std::string const &)*arg1);
+    } catch (std::out_of_range& e) {
+      {
+        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
+      };
+    } catch (std::exception& e) {
+      {
+        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
+      };
+    } catch (...) {
+      {
+        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
+      };
+    }
+  }
+  jresult = new Dali::ImageDimensions((const Dali::ImageDimensions &)result);
+
+  return jresult;
+}
 
 SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_DownloadImageSynchronously__SWIG_0(char * jarg1, void * jarg2, int jarg3, int jarg4, unsigned int jarg5) {
   void * jresult ;
@@ -103563,13 +101953,123 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_DownloadImageSynchronously__SWIG_4(cha
 }
 
 
-SWIGEXPORT void SWIGSTDCALL CSharp_Dali_SetMaxTextureSize(unsigned int jarg1) {
-  unsigned int arg1 ;
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_WebView_New() {
+  void * jresult ;
+  Dali::Toolkit::WebView result;
 
-  arg1 = (unsigned int)jarg1;
   {
     try {
-      Dali::SetMaxTextureSize(arg1);
+      result = Dali::Toolkit::WebView::New();
+    } catch (std::out_of_range& e) {
+      {
+        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
+      };
+    } catch (std::exception& e) {
+      {
+        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
+      };
+    } catch (Dali::DaliException e) {
+      {
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
+      };
+    } catch (...) {
+      {
+        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
+      };
+    }
+  }
+  jresult = new Dali::Toolkit::WebView((const Dali::Toolkit::WebView &)result);
+  return jresult;
+}
+
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_WebView_New_2(char * jarg1, char * jarg2) {
+  void * jresult ;
+  Dali::Toolkit::WebView result;
+
+  std::string *arg1;
+  std::string *arg2;
+
+  if (!jarg1) {
+    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "jarg1 is null string", 0);
+    return 0;
+  }
+  if (!jarg2) {
+    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "jarg2 is null string", 0);
+    return 0;
+  }
+
+  std::string jarg1_str = std::string(jarg1);
+  std::string jarg2_str = std::string(jarg2);
+
+  arg1 = &jarg1_str;
+  arg2 = &jarg2_str;
+
+  {
+    try {
+      result = Dali::Toolkit::WebView::New( (std::string const &)*arg1, (std::string const &)*arg2);
+    } catch (std::out_of_range& e) {
+      {
+        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
+      };
+    } catch (std::exception& e) {
+      {
+        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
+      };
+    } catch (Dali::DaliException e) {
+      {
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
+      };
+    } catch (...) {
+      {
+        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
+      };
+    }
+  }
+  jresult = new Dali::Toolkit::WebView((const Dali::Toolkit::WebView &)result);
+  return jresult;
+}
+
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_WebView__SWIG_1(void * jarg1) {
+  void * jresult ;
+  Dali::Toolkit::WebView *arg1 = 0 ;
+  Dali::Toolkit::WebView *result = 0 ;
+
+  arg1 = (Dali::Toolkit::WebView *)jarg1;
+  if (!arg1) {
+    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::Toolkit::WebView const & type is null", 0);
+    return 0;
+  }
+  {
+    try {
+      result = (Dali::Toolkit::WebView *)new Dali::Toolkit::WebView((Dali::Toolkit::WebView const &)*arg1);
+    } catch (std::out_of_range& e) {
+      {
+        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
+      };
+    } catch (std::exception& e) {
+      {
+        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
+      };
+    } catch (Dali::DaliException e) {
+      {
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
+      };
+    } catch (...) {
+      {
+        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
+      };
+    }
+  }
+  jresult = (void *)result;
+  return jresult;
+}
+
+SWIGEXPORT void SWIGSTDCALL CSharp_Dali_delete_WebView(void * jarg1) {
+  Dali::Toolkit::WebView *arg1 = (Dali::Toolkit::WebView *) 0 ;
+  arg1 = (Dali::Toolkit::WebView *)jarg1;
+  {
+    try {
+      delete arg1;
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
@@ -103578,6 +102078,10 @@ SWIGEXPORT void SWIGSTDCALL CSharp_Dali_SetMaxTextureSize(unsigned int jarg1) {
       {
         SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return ;
       };
+    } catch (Dali::DaliException e) {
+      {
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return ;
+      };
     } catch (...) {
       {
         SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ;
@@ -103586,14 +102090,58 @@ SWIGEXPORT void SWIGSTDCALL CSharp_Dali_SetMaxTextureSize(unsigned int jarg1) {
   }
 }
 
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_WebView_Assign(void * jarg1, void * jarg2) {
+  void * jresult ;
+  Dali::Toolkit::WebView *arg1 = (Dali::Toolkit::WebView *) 0 ;
+  Dali::Toolkit::WebView *arg2 = 0 ;
+  Dali::Toolkit::WebView *result = 0 ;
 
-SWIGEXPORT unsigned int SWIGSTDCALL CSharp_Dali_GetMaxTextureSize() {
-  unsigned int jresult ;
-  unsigned int result;
+  arg1 = (Dali::Toolkit::WebView *)jarg1;
+  arg2 = (Dali::Toolkit::WebView *)jarg2;
+  if (!arg2) {
+    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::Toolkit::WebView const & type is null", 0);
+    return 0;
+  }
+  {
+    try {
+      result = (Dali::Toolkit::WebView *) &(arg1)->operator =((Dali::Toolkit::WebView const &)*arg2);
+    } catch (std::out_of_range& e) {
+      {
+        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
+      };
+    } catch (std::exception& e) {
+      {
+        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
+      };
+    } catch (Dali::DaliException e) {
+      {
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
+      };
+    } catch (...) {
+      {
+        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
+      };
+    }
+  }
+  jresult = (void *)result;
+  return jresult;
+}
 
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_WebView_DownCast(void * jarg1) {
+  void * jresult ;
+  Dali::BaseHandle arg1 ;
+  Dali::BaseHandle *argp1 ;
+  Dali::Toolkit::WebView result;
+
+  argp1 = (Dali::BaseHandle *)jarg1;
+  if (!argp1) {
+    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null Dali::BaseHandle", 0);
+    return 0;
+  }
+  arg1 = *argp1;
   {
     try {
-      result = (unsigned int)Dali::GetMaxTextureSize();
+      result = Dali::Toolkit::WebView::DownCast(arg1);
     } catch (std::out_of_range& e) {
       {
         SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
@@ -103602,16 +102150,756 @@ SWIGEXPORT unsigned int SWIGSTDCALL CSharp_Dali_GetMaxTextureSize() {
       {
         SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
       };
+    } catch (Dali::DaliException e) {
+      {
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
+      };
     } catch (...) {
       {
         SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
       };
     }
   }
-  jresult = result;
+  jresult = new Dali::Toolkit::WebView((const Dali::Toolkit::WebView &)result);
   return jresult;
 }
 
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_WebView_Property_URL_get() {
+  return (int) Dali::Toolkit::WebView::Property::URL;
+}
+
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_WebView_Property_CACHE_MODEL_get() {
+  return (int) Dali::Toolkit::WebView::Property::CACHE_MODEL;
+}
+
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_WebView_Property_COOKIE_ACCEPT_POLICY_get() {
+  return (int) Dali::Toolkit::WebView::Property::COOKIE_ACCEPT_POLICY;
+}
+
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_WebView_Property_USER_AGENT_get() {
+  return (int) Dali::Toolkit::WebView::Property::USER_AGENT;
+}
+
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_WebView_Property_ENABLE_JAVASCRIPT_get() {
+  return (int) Dali::Toolkit::WebView::Property::ENABLE_JAVASCRIPT;
+}
+
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_WebView_Property_LOAD_IMAGES_AUTOMATICALLY_get() {
+  return (int) Dali::Toolkit::WebView::Property::LOAD_IMAGES_AUTOMATICALLY;
+}
+
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_WebView_Property_DEFAULT_TEXT_ENCODING_NAME_get() {
+  return (int) Dali::Toolkit::WebView::Property::DEFAULT_TEXT_ENCODING_NAME;
+}
+
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_WebView_Property_DEFAULT_FONT_SIZE_get() {
+  return (int) Dali::Toolkit::WebView::Property::DEFAULT_FONT_SIZE;
+}
+
+SWIGEXPORT void SWIGSTDCALL CSharp_Dali_WebView_LoadUrl(void * jarg1, char * jarg2) {
+  Dali::Toolkit::WebView *arg1 = (Dali::Toolkit::WebView *) 0 ;
+  std::string *arg2;
+
+  arg1 = (Dali::Toolkit::WebView *)jarg1;
+
+  if (!jarg2) {
+    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "null string", 0);
+    return;
+  }
+
+  std::string jarg2str = std::string(jarg2);
+  arg2 = &jarg2str;
+  {
+    try {
+      (arg1)->LoadUrl((std::string const &)*arg2);
+    } catch (std::out_of_range& e) {
+      {
+        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
+      };
+    } catch (std::exception& e) {
+      {
+        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return ;
+      };
+    } catch (Dali::DaliException e) {
+      {
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return ;
+      };
+    } catch (...) {
+      {
+        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ;
+      };
+    }
+  }
+}
+
+SWIGEXPORT void SWIGSTDCALL CSharp_Dali_WebView_LoadHTMLString(void * jarg1, char * jarg2) {
+  Dali::Toolkit::WebView *arg1 = (Dali::Toolkit::WebView *) 0 ;
+  std::string *arg2;
+
+  arg1 = (Dali::Toolkit::WebView *)jarg1;
+  if (!jarg2) {
+    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "null string", 0);
+    return;
+  }
+  std::string jarg2str = std::string(jarg2);
+  arg2 = &jarg2str;
+  {
+    try {
+      (arg1)->LoadHTMLString((std::string const &)*arg2);
+    } catch (std::out_of_range& e) {
+      {
+        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
+      };
+    } catch (std::exception& e) {
+      {
+        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return ;
+      };
+    } catch (Dali::DaliException e) {
+      {
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return ;
+      };
+    } catch (...) {
+      {
+        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ;
+      };
+    }
+  }
+}
+
+SWIGEXPORT void SWIGSTDCALL CSharp_Dali_WebView_Reload(void * jarg1) {
+  Dali::Toolkit::WebView *arg1 = (Dali::Toolkit::WebView *) 0 ;
+
+  arg1 = (Dali::Toolkit::WebView *)jarg1;
+  {
+    try {
+      (arg1)->Reload();
+    } catch (std::out_of_range& e) {
+      {
+        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
+      };
+    } catch (std::exception& e) {
+      {
+        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return ;
+      };
+    } catch (Dali::DaliException e) {
+      {
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return ;
+      };
+    } catch (...) {
+      {
+        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ;
+      };
+    }
+  }
+}
+
+SWIGEXPORT void SWIGSTDCALL CSharp_Dali_WebView_StopLoading(void * jarg1) {
+  Dali::Toolkit::WebView *arg1 = (Dali::Toolkit::WebView *) 0 ;
+
+  arg1 = (Dali::Toolkit::WebView *)jarg1;
+  {
+    try {
+      (arg1)->StopLoading();
+    } catch (std::out_of_range& e) {
+      {
+        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
+      };
+    } catch (std::exception& e) {
+      {
+        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return ;
+      };
+    } catch (Dali::DaliException e) {
+      {
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return ;
+      };
+    } catch (...) {
+      {
+        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ;
+      };
+    }
+  }
+}
+
+SWIGEXPORT void SWIGSTDCALL CSharp_Dali_WebView_Suspend(void * jarg1) {
+  Dali::Toolkit::WebView *arg1 = (Dali::Toolkit::WebView *) 0 ;
+
+  arg1 = (Dali::Toolkit::WebView *)jarg1;
+  {
+    try {
+      (arg1)->Suspend();
+    } catch (std::out_of_range& e) {
+      {
+        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
+      };
+    } catch (std::exception& e) {
+      {
+        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return ;
+      };
+    } catch (Dali::DaliException e) {
+      {
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return ;
+      };
+    } catch (...) {
+      {
+        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ;
+      };
+    }
+  }
+}
+
+SWIGEXPORT void SWIGSTDCALL CSharp_Dali_WebView_Resume(void * jarg1) {
+  Dali::Toolkit::WebView *arg1 = (Dali::Toolkit::WebView *) 0 ;
+
+  arg1 = (Dali::Toolkit::WebView *)jarg1;
+  {
+    try {
+      (arg1)->Resume();
+    } catch (std::out_of_range& e) {
+      {
+        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
+      };
+    } catch (std::exception& e) {
+      {
+        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return ;
+      };
+    } catch (Dali::DaliException e) {
+      {
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return ;
+      };
+    } catch (...) {
+      {
+        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ;
+      };
+    }
+  }
+}
+
+SWIGEXPORT void SWIGSTDCALL CSharp_Dali_WebView_GoBack(void * jarg1) {
+  Dali::Toolkit::WebView *arg1 = (Dali::Toolkit::WebView *) 0 ;
+
+  arg1 = (Dali::Toolkit::WebView *)jarg1;
+  {
+    try {
+      (arg1)->GoBack();
+    } catch (std::out_of_range& e) {
+      {
+        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
+      };
+    } catch (std::exception& e) {
+      {
+        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return ;
+      };
+    } catch (Dali::DaliException e) {
+      {
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return ;
+      };
+    } catch (...) {
+      {
+        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ;
+      };
+    }
+  }
+}
+
+SWIGEXPORT void SWIGSTDCALL CSharp_Dali_WebView_GoForward(void * jarg1) {
+  Dali::Toolkit::WebView *arg1 = (Dali::Toolkit::WebView *) 0 ;
+
+  arg1 = (Dali::Toolkit::WebView *)jarg1;
+  {
+    try {
+      (arg1)->GoForward();
+    } catch (std::out_of_range& e) {
+      {
+        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
+      };
+    } catch (std::exception& e) {
+      {
+        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return ;
+      };
+    } catch (Dali::DaliException e) {
+      {
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return ;
+      };
+    } catch (...) {
+      {
+        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ;
+      };
+    }
+  }
+}
+
+SWIGEXPORT bool SWIGSTDCALL CSharp_Dali_WebView_CanGoBack(void * jarg1) {
+  Dali::Toolkit::WebView *arg1 = (Dali::Toolkit::WebView *) 0 ;
+  bool ret;
+
+  arg1 = (Dali::Toolkit::WebView *)jarg1;
+  {
+    try {
+      ret = (arg1)->CanGoBack();
+    } catch (std::out_of_range& e) {
+      {
+        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return false;
+      };
+    } catch (std::exception& e) {
+      {
+        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return false;
+      };
+    } catch (Dali::DaliException e) {
+      {
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return false;
+      };
+    } catch (...) {
+      {
+        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return false;
+      };
+    }
+  }
+  return ret;
+}
+
+SWIGEXPORT bool SWIGSTDCALL CSharp_Dali_WebView_CanGoForward(void * jarg1) {
+  Dali::Toolkit::WebView *arg1 = (Dali::Toolkit::WebView *) 0 ;
+  bool ret;
+
+  arg1 = (Dali::Toolkit::WebView *)jarg1;
+  {
+    try {
+      ret = (arg1)->CanGoForward();
+    } catch (std::out_of_range& e) {
+      {
+        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return false;
+      };
+    } catch (std::exception& e) {
+      {
+        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return false;
+      };
+    } catch (Dali::DaliException e) {
+      {
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return false;
+      };
+    } catch (...) {
+      {
+        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return false;
+      };
+    }
+  }
+  return ret;
+}
+
+SWIGEXPORT void SWIGSTDCALL CSharp_Dali_WebView_EvaluateJavaScript(void * jarg1, char * jarg2, void* jarg3) {
+  Dali::Toolkit::WebView *arg1 = (Dali::Toolkit::WebView *) 0 ;
+  std::string *arg2;
+
+  arg1 = (Dali::Toolkit::WebView *)jarg1;
+  if (!jarg2) {
+    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "null string", 0);
+    return;
+  }
+  std::string jarg2_str = std::string(jarg2);
+  arg2 = &jarg2_str;
+
+  {
+    try {
+      if (jarg3) {
+        void (*handler)(char*) = (void (*)(char*)) jarg3;
+        (arg1)->EvaluateJavaScript((std::string const &)*arg2, [handler](const std::string& result) {
+          handler(SWIG_csharp_string_callback(result.c_str()));
+        });
+      } else {
+        (arg1)->EvaluateJavaScript((std::string const &)*arg2);
+      }
+    } catch (std::out_of_range& e) {
+      {
+        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
+      };
+    } catch (std::exception& e) {
+      {
+        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return ;
+      };
+    } catch (Dali::DaliException e) {
+      {
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return ;
+      };
+    } catch (...) {
+      {
+        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ;
+      };
+    }
+  }
+}
+
+SWIGEXPORT void SWIGSTDCALL CSharp_Dali_WebView_AddJavaScriptMessageHandler(void* jarg1, char* jarg2, void* jarg3)
+{
+  if (!jarg2) {
+    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "null string", 0);
+    return;
+  }
+
+  Dali::Toolkit::WebView* webview = (Dali::Toolkit::WebView *) jarg1;
+  std::string exposedObjectName = jarg2;
+  void (*handler)(char*) = (void (*)(char*)) jarg3;
+
+  {
+    try {
+      webview->AddJavaScriptMessageHandler(exposedObjectName, [handler](const std::string& message) {
+        handler(SWIG_csharp_string_callback(message.c_str()));
+      });
+    } catch (std::out_of_range& e) {
+      {
+        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
+      };
+    } catch (std::exception& e) {
+      {
+        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return ;
+      };
+    } catch (Dali::DaliException e) {
+      {
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return ;
+      };
+    } catch (...) {
+      {
+        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ;
+      };
+    }
+  }
+}
+
+SWIGEXPORT void SWIGSTDCALL CSharp_Dali_WebView_ClearHistory(void * jarg1) {
+  Dali::Toolkit::WebView *arg1 = (Dali::Toolkit::WebView *) 0 ;
+
+  arg1 = (Dali::Toolkit::WebView *)jarg1;
+  {
+    try {
+      (arg1)->ClearHistory();
+    } catch (std::out_of_range& e) {
+      {
+        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
+      };
+    } catch (std::exception& e) {
+      {
+        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return ;
+      };
+    } catch (Dali::DaliException e) {
+      {
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return ;
+      };
+    } catch (...) {
+      {
+        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ;
+      };
+    }
+  }
+}
+
+SWIGEXPORT void SWIGSTDCALL CSharp_Dali_WebView_ClearCache(void * jarg1) {
+  Dali::Toolkit::WebView *arg1 = (Dali::Toolkit::WebView *) 0 ;
+
+  arg1 = (Dali::Toolkit::WebView *)jarg1;
+  {
+    try {
+      (arg1)->ClearCache();
+    } catch (std::out_of_range& e) {
+      {
+        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
+      };
+    } catch (std::exception& e) {
+      {
+        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return ;
+      };
+    } catch (Dali::DaliException e) {
+      {
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return ;
+      };
+    } catch (...) {
+      {
+        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ;
+      };
+    }
+  }
+}
+
+SWIGEXPORT void SWIGSTDCALL CSharp_Dali_WebView_ClearCookies(void * jarg1) {
+  Dali::Toolkit::WebView *arg1 = (Dali::Toolkit::WebView *) 0 ;
+
+  arg1 = (Dali::Toolkit::WebView *)jarg1;
+  {
+    try {
+      (arg1)->ClearCookies();
+    } catch (std::out_of_range& e) {
+      {
+        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
+      };
+    } catch (std::exception& e) {
+      {
+        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return ;
+      };
+    } catch (Dali::DaliException e) {
+      {
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return ;
+      };
+    } catch (...) {
+      {
+        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ;
+      };
+    }
+  }
+}
+
+SWIGEXPORT Dali::Toolkit::Control * SWIGSTDCALL CSharp_Dali_WebView_SWIGUpcast(Dali::Toolkit::WebView *jarg1) {
+    return (Dali::Toolkit::Control *)jarg1;
+}
+
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_WebViewPageLoadSignal_PageLoadStarted(void * jarg1) {
+  Dali::Toolkit::WebView* webview = (Dali::Toolkit::WebView *) jarg1;
+  SignalConverter::WebViewPageLoadSignal* result = NULL;
+  {
+    try {
+      result = new SignalConverter::WebViewPageLoadSignal(&webview->PageLoadStartedSignal());
+    } catch (std::out_of_range& e) {
+      {
+        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
+      };
+    } catch (std::exception& e) {
+      {
+        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
+      };
+    } catch (Dali::DaliException e) {
+      {
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
+      };
+    } catch (...) {
+      {
+        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
+      };
+    }
+  }
+  return (void*) result;
+}
+
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_WebViewPageLoadSignal_PageLoadFinished(void * jarg1) {
+  Dali::Toolkit::WebView* webview = (Dali::Toolkit::WebView *) jarg1;
+  SignalConverter::WebViewPageLoadSignal* result = NULL;
+  {
+    try {
+      result = new SignalConverter::WebViewPageLoadSignal(&webview->PageLoadFinishedSignal());
+    } catch (std::out_of_range& e) {
+      {
+        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
+      };
+    } catch (std::exception& e) {
+      {
+        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
+      };
+    } catch (Dali::DaliException e) {
+      {
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
+      };
+    } catch (...) {
+      {
+        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
+      };
+    }
+  }
+  return (void*) result;
+}
+
+SWIGEXPORT void SWIGSTDCALL CSharp_Dali_delete_WebViewPageLoadSignal(void * jarg1)
+{
+  SignalConverter::WebViewPageLoadSignal* object = (SignalConverter::WebViewPageLoadSignal*) jarg1;
+  {
+    try {
+      delete object;
+    } catch (std::out_of_range& e) {
+      {
+        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
+      };
+    } catch (std::exception& e) {
+      {
+        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return ;
+      };
+    } catch (Dali::DaliException e) {
+      {
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return ;
+      };
+    } catch (...) {
+      {
+        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ;
+      };
+    }
+  }
+}
+
+SWIGEXPORT void SWIGSTDCALL CSharp_Dali_WebViewPageLoadSignal_Connect(void * jarg1, void * jarg2)
+{
+  SignalConverter::WebViewPageLoadSignal* proxy = (SignalConverter::WebViewPageLoadSignal*) jarg1;
+  SignalConverter::WebViewPageLoadSignal::CallbackType callback = (SignalConverter::WebViewPageLoadSignal::CallbackType) jarg2;
+  {
+    try {
+      proxy->Connect(callback);
+    } catch (std::out_of_range& e) {
+      {
+        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
+      };
+    } catch (std::exception& e) {
+      {
+        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return ;
+      };
+    } catch (Dali::DaliException e) {
+      {
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return ;
+      };
+    } catch (...) {
+      {
+        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ;
+      };
+    }
+  }
+}
+
+
+SWIGEXPORT void SWIGSTDCALL CSharp_Dali_WebViewPageLoadSignal_Disconnect(void * jarg1, void * jarg2) {
+  SignalConverter::WebViewPageLoadSignal* proxy = (SignalConverter::WebViewPageLoadSignal*) jarg1;
+  SignalConverter::WebViewPageLoadSignal::CallbackType callback = (SignalConverter::WebViewPageLoadSignal::CallbackType) jarg2;
+  {
+    try {
+      proxy->Disconnect(callback);
+    } catch (std::out_of_range& e) {
+      {
+        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
+      };
+    } catch (std::exception& e) {
+      {
+        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return ;
+      };
+    } catch (Dali::DaliException e) {
+      {
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return ;
+      };
+    } catch (...) {
+      {
+        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ;
+      };
+    }
+  }
+}
+
+SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_WebViewPageLoadErrorSignal_PageLoadError(void * jarg1) {
+  Dali::Toolkit::WebView* webview = (Dali::Toolkit::WebView *) jarg1;
+  SignalConverter::WebViewPageLoadErrorSignal* result = NULL;
+  {
+    try {
+      result = new SignalConverter::WebViewPageLoadErrorSignal(&webview->PageLoadErrorSignal());
+    } catch (std::out_of_range& e) {
+      {
+        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
+      };
+    } catch (std::exception& e) {
+      {
+        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
+      };
+    } catch (Dali::DaliException e) {
+      {
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
+      };
+    } catch (...) {
+      {
+        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
+      };
+    }
+  }
+  return (void*) result;
+}
+
+SWIGEXPORT void SWIGSTDCALL CSharp_Dali_delete_WebViewPageLoadErrorSignal(void * jarg1)
+{
+  SignalConverter::WebViewPageLoadErrorSignal* object = (SignalConverter::WebViewPageLoadErrorSignal*) jarg1;
+  {
+    try {
+      delete object;
+    } catch (std::out_of_range& e) {
+      {
+        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
+      };
+    } catch (std::exception& e) {
+      {
+        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return ;
+      };
+    } catch (Dali::DaliException e) {
+      {
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return ;
+      };
+    } catch (...) {
+      {
+        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ;
+      };
+    }
+  }
+}
+
+SWIGEXPORT void SWIGSTDCALL CSharp_Dali_WebViewPageLoadErrorSignal_Connect(void * jarg1, void * jarg2)
+{
+  SignalConverter::WebViewPageLoadErrorSignal* proxy = (SignalConverter::WebViewPageLoadErrorSignal*) jarg1;
+  SignalConverter::WebViewPageLoadErrorSignal::CallbackType callback = (SignalConverter::WebViewPageLoadErrorSignal::CallbackType) jarg2;
+  {
+    try {
+      proxy->Connect(callback);
+    } catch (std::out_of_range& e) {
+      {
+        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
+      };
+    } catch (std::exception& e) {
+      {
+        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return ;
+      };
+    } catch (Dali::DaliException e) {
+      {
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return ;
+      };
+    } catch (...) {
+      {
+        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ;
+      };
+    }
+  }
+}
+
+
+SWIGEXPORT void SWIGSTDCALL CSharp_Dali_WebViewPageLoadErrorSignal_Disconnect(void * jarg1, void * jarg2) {
+  SignalConverter::WebViewPageLoadErrorSignal* proxy = (SignalConverter::WebViewPageLoadErrorSignal*) jarg1;
+  SignalConverter::WebViewPageLoadErrorSignal::CallbackType callback = (SignalConverter::WebViewPageLoadErrorSignal::CallbackType) jarg2;
+  {
+    try {
+      proxy->Disconnect(callback);
+    } catch (std::out_of_range& e) {
+      {
+        SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return ;
+      };
+    } catch (std::exception& e) {
+      {
+        SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return ;
+      };
+    } catch (Dali::DaliException e) {
+      {
+        SWIG_CSharpException(SWIG_UnknownError, e.condition); return ;
+      };
+    } catch (...) {
+      {
+        SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ;
+      };
+    }
+  }
+}
+
+SWIGEXPORT char * SWIGSTDCALL CSharp_Dali_GetEnvironmentVariable(char * jarg1) {
+  const char * result = EnvironmentVariable::GetEnvironmentVariable(jarg1);
+  char * jresult = SWIG_csharp_string_callback((const char *)result);
+  return jresult;
+}
+
+SWIGEXPORT bool SWIGSTDCALL CSharp_Dali_SetEnvironmentVariable(char * jarg1, char * jarg2) {
+  bool result = EnvironmentVariable::SetEnvironmentVariable(jarg1, jarg2);
+  return result;
+}
 
 #ifdef __cplusplus
 }