[NUI] Integration from dalihub to Samsung (#399)
authordongsug-song <35130733+dongsug-song@users.noreply.github.com>
Fri, 17 Aug 2018 09:27:53 +0000 (18:27 +0900)
committerGitHub <noreply@github.com>
Fri, 17 Aug 2018 09:27:53 +0000 (18:27 +0900)
* Added LayoutGroup and LayoutItem classes in NUI.

This was done by using bindings wrapper classes for LayoutItem,
LayoutGroup, LayoutMeasureSpec, LayoutLength, and LayoutMeasuredSize.

Change-Id: I19e28bdff59a62cf1c8e8711f50f9f0e8f1c119a

* Layouting support in NUI

Change-Id: I3d6f688d869faa81c34385db37feceb1d8c1d0c0

* Fixed disposed bug and removed RegisterChildProperties API usage.

Change-Id: I7b71bd1a3a03306897abdf3c263c6bbb65c1bff8

* RootLayout added to Window

Change-Id: Ie47ceec452b5f254950263bdaf661e9e3fe86d1f

* All Layers have an Absolute layout

Change-Id: I08281a25b2b73822b45f5c6a567b574b5af74fb4

* Set View.Size2D sets layout minimum size if exists.

Change-Id: Ide73c78957d9ee5d4799bfff4aa2232b87ffa536

* [NUI] Minimize public api for xaml

Change-Id: Ib1426b1956a2af307bd6128d6b97067b0d732847

* Renaming of rootlayer in Layer.cs

Change-Id: I583f49caaad819cabaca83b09c9c7dd9c2b9a331

* Fix NUI nested layout issue

Change-Id: I68edd6cf8295e06a52655d84b8ce039a4e1f1008

* [NUI] Back-sync Samsung/TizenFX into dalihub/TizenFX

Change-Id: Ib63e792bc3474c9226506f30889994219e237ec1

* [NUI] Remove tabs and redundant spaces

Change-Id: I1d512d7f478e532f76629b2529995386820fc764

* Sync dalihub/TizenFX and Samsung/TizenFX

- [NUI] Remove apis which are using internal APIs (#324)
  Some apis are using DALi internal APIs.
  Clean up these wrong apis to prevent future errors.
Signed-off-by: minho.sun <minho.sun@samsung.com>
Change-Id: I77f773ec84f93f69684c2bdad26d9721f8ed705d
Signed-off-by: dongsug.song <dongsug.song@samsung.com>
* Sync dalihub/TizenFX and Samsung/TizenFX for NUI-XAML related changes

Change-Id: Ied6a4e33d462712672e65763572c6aa88065a897
Signed-off-by: dongsug.song <dongsug.song@samsung.com>
* Support multi-cascade property setting for Size2D and Position2D

Change-Id: Ibeb9e9ec639742b78054fe8592167170ea0f00d2
Signed-off-by: dongsug.song <dongsug.song@samsung.com>
* Add Mouse button type to identify clicked button kind

Change-Id: Id336dacccff8192a17cda552ba8ea2ba01121002
Signed-off-by: dongsug.song <dongsug.song@samsung.com>
* [NUI] Fix dereferenced error

Value trans, which has null value,
is dereferenced in member access expression trans.Name

Change-Id: I5b7fa2a0e96689ff0cc0821f2e931ed3c4001e9d
Signed-off-by: huiyu.eun <huiyu.eun@samsung.com>
* [NUI]Remove ContentProperty attribute and update sample

Change-Id: I0fbb60bf00c609779b6f5ff4d8aff58a26a8819e

* [NUI] Fix children count of LayoutGroup bug

Change-Id: I73c3b597b161a2dbf4a52d37e6f5a0ab4858c11b
Signed-off-by: huiyu.eun <huiyu.eun@samsung.com>
* [NUI] Make Layout APIs as internal ones (will be changed as public APIs later)

Conflicts:
src/Tizen.NUI/src/internal/Layouting/LayoutGroupWrapper.cs
src/Tizen.NUI/src/internal/Layouting/LayoutItemWrapper.cs

Change-Id: Ia64e9216d10ecc986e0e977f2e0633a03813faec
Signed-off-by: dongsug.song <dongsug.song@samsung.com>
* Fix View Size2D.

We force Size2D by setting fixed width & height specifications.
There is no really another way in new layouting without breaking
new layouting design.

Also MinimumSize will set now Layout.MinimumSize.

Change-Id: I65c7eaab8210c83b9097426a14c8877173d11f90

* [NUI] Change Parameter type of KeyboardRepeatInfo APIs

- Changed the parameters type of KeyboardRepeatInfo APIs
  : 'double' type -> 'float' type

Change-Id: I3940e44a1a2c116988e8c947ae81d118ac266000
Signed-off-by: Seoyeon Kim <seoyeon2.kim@samsung.com>
* [NUI] Fix getting ClippingMode error

Change-Id: I2379ec6adda1442e819d2adbaa9751e5dd154996

* [NUI] Fix animation flickering issue.

Change-Id: Idd3e28ac861a6fa33ad316e4bcae6a7b2199c0de
Signed-off-by: Feng Jin <feng16.jin@samsung.com>
* [NUI] Remove redundant logs

Change-Id: Ic7ec157fe8117b613d0d008f68e74cf7c4bccf64

* [NUI] Fix KeyValue issue

Change-Id: I1970a61633fba277379a43035cf84ec2871d1cdd

* [NUI]public BindableObject.GetValue and BindableObject.SetValue to enable other modules(EX.Tizen.TV.NUI) to implement data binding.

Change-Id: Ibb048e668e765a96f1e8553951e4073b181e9a84
Signed-off-by: Feng Jin <feng16.jin@samsung.com>
* [NUI]Add protect codes in API View::Add

1. Add protect codes, so that if the child is null, this API won't don anything.

Change-Id: Icfd7e2cbb08b99ed962660edb88e8797bad2b654

* [NUI] public gesture detector.

Change-Id: Ife9902fe77b43f2c422a1a2ebeaf474d13e67589
Signed-off-by: Feng Jin <feng16.jin@samsung.com>
* GridLayout added

Change-Id: I67916a0e2a8efde6fd8d28daac79bca39d679d10

* Add PropertyValue.Get function for RelativeVector2, RelativeVector3, and RelativeVector4 type.

Change-Id: I181c51a6eea0a94721b28a48d8187673a3f0b88b
Signed-off-by: Feng Jin <feng16.jin@samsung.com>
* Explict assigning of Layouts to children

Allows legacy GridContainer to display it's children.
CustomLayouts children get a LayoutItem and displayed.

Change-Id: Ic3f900ae01800de77695b85a57661f886ee060b7

14 files changed:
src/Tizen.NUI/src/internal/Layouting/GridLayout.cs [new file with mode: 0755]
src/Tizen.NUI/src/internal/Layouting/LayoutPINVOKE.cs
src/Tizen.NUI/src/public/Animation.cs
src/Tizen.NUI/src/public/BaseComponents/FlexContainer.cs
src/Tizen.NUI/src/public/BaseComponents/ImageView.cs
src/Tizen.NUI/src/public/BaseComponents/View.cs
src/Tizen.NUI/src/public/GestureDetector.cs [moved from src/Tizen.NUI/src/internal/GestureDetector.cs with 55% similarity]
src/Tizen.NUI/src/public/LongPressGestureDetector.cs [moved from src/Tizen.NUI/src/internal/LongPressGestureDetector.cs with 58% similarity]
src/Tizen.NUI/src/public/PanGestureDetector.cs [moved from src/Tizen.NUI/src/internal/PanGestureDetector.cs with 59% similarity]
src/Tizen.NUI/src/public/PinchGestureDetector.cs [moved from src/Tizen.NUI/src/internal/PinchGestureDetector.cs with 69% similarity]
src/Tizen.NUI/src/public/Property.cs
src/Tizen.NUI/src/public/TapGestureDetector.cs [moved from src/Tizen.NUI/src/internal/TapGestureDetector.cs with 61% similarity]
src/Tizen.NUI/src/public/UIComponents/Slider.cs
src/Tizen.NUI/src/public/XamlBinding/BindableObject.cs

diff --git a/src/Tizen.NUI/src/internal/Layouting/GridLayout.cs b/src/Tizen.NUI/src/internal/Layouting/GridLayout.cs
new file mode 100755 (executable)
index 0000000..85a3654
--- /dev/null
@@ -0,0 +1,163 @@
+/** Copyright (c) 2018 Samsung Electronics Co., Ltd.
+*
+* Licensed under the Apache License, Version 2.0 (the "License");
+* you may not use this file except in compliance with the License.
+* You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+*
+*/
+
+using System.ComponentModel;
+
+namespace Tizen.NUI
+{
+    /// <summary>
+    /// [Draft] This class implements a grid layout
+    /// </summary>
+    internal class GridLayout : LayoutGroupWrapper
+    {
+        private global::System.Runtime.InteropServices.HandleRef swigCPtr;
+
+        /// <summary>
+        /// [draft] Internal contstructor/>
+        /// </summary>
+        /// <param name="cPtr"> object to get handle to.</param>
+        /// <param name="cMemoryOwn"> flag to indicate if memory is owned.</param>
+        internal GridLayout(global::System.IntPtr cPtr, bool cMemoryOwn) : base(LayoutPINVOKE.GridLayout_SWIGUpcast(cPtr), cMemoryOwn)
+        {
+                        System.Console.WriteLine("GridLayout\n");
+
+            swigCPtr = new global::System.Runtime.InteropServices.HandleRef(this, cPtr);
+        }
+
+        /// <summary>
+        /// [draft] Get C pointer for the GridLayout/>
+        /// </summary>
+        /// <param name="obj"> object to get handle to.</param>
+        /// <returns>Handle to the managed C class.</returns>
+        internal static global::System.Runtime.InteropServices.HandleRef getCPtr(GridLayout obj)
+        {
+            return (obj == null) ? new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero) : obj.swigCPtr;
+        }
+
+        /// <summary>
+        /// [draft] Dispose/>
+        /// </summary>
+        /// <param name="type"> Type of disposal.</param>
+        protected override void Dispose(DisposeTypes type)
+        {
+            if (disposed)
+            {
+                return;
+            }
+
+            if (type == DisposeTypes.Explicit)
+            {
+                //Called by User
+                //Release your own managed resources here.
+                //You should release all of your own disposable objects here.
+            }
+
+            //Release your own unmanaged resources here.
+            //You should not access any managed member here except static instance.
+            //because the execution order of Finalizes is non-deterministic.
+            if (swigCPtr.Handle != global::System.IntPtr.Zero)
+            {
+                if (swigCMemOwn)
+                {
+                    swigCMemOwn = false;
+                    LayoutPINVOKE.delete_GridLayout(swigCPtr);
+                }
+                swigCPtr = new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero);
+            }
+            base.Dispose(type);
+        }
+
+        /// <summary>
+        /// [draft] GridLayout Constructor/>
+        /// </summary>
+        /// <returns> New Grid object.</returns>
+        public GridLayout() : this(LayoutPINVOKE.GridLayout_New(), true)
+        {
+            if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
+        }
+
+        /// <summary>
+        /// [draft] Downcast/>
+        /// </summary>
+        /// <param name="handle">Handle to the given object that maybe be a GridLayout.</param>
+        /// <returns>Grid object if Downcase possible.</returns>
+        public static GridLayout DownCast(BaseHandle handle)
+        {
+            GridLayout ret = new GridLayout(LayoutPINVOKE.GridLayout_DownCast(BaseHandle.getCPtr(handle)), true);
+            if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
+            return ret;
+        }
+
+        /// <summary>
+        /// [draft] Copy of a Gridlayout to another GridLayout />
+        /// </summary>
+        /// <param name="other">Copy the given Grid object to another Grid object.</param>
+        /// <returns>The newly created Grid object.</returns>
+        internal GridLayout(GridLayout other) : this(LayoutPINVOKE.new_GridLayout_SWIG_1(GridLayout.getCPtr(other)), true)
+        {
+            if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
+        }
+
+        /// <summary>
+        /// [draft] Assignment of a Gridlayout to another GridLayout />
+        /// </summary>
+        /// <param name="other">Assign the given Grid object to another Grid object.</param>
+        /// <returns>The newly assigned Grid object.</returns>
+        internal GridLayout Assign(GridLayout other)
+        {
+            GridLayout ret = new GridLayout(LayoutPINVOKE.GridLayout_Assign(swigCPtr, GridLayout.getCPtr(other)), false);
+            if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
+            return ret;
+        }
+
+        /// <summary>
+        /// [draft ] Sets the number of columns the GridLayout should have. />
+        /// </summary>
+        /// <param name="columns">The nunber of columns.</param>
+        internal void SetColumns(int columns)
+        {
+            LayoutPINVOKE.GridLayout_SetColumns(swigCPtr, columns);
+            if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
+        }
+
+        /// <summary>
+        /// [draft ] Gets the number of columns in the Grid />
+        /// </summary>
+        /// <returns>The number of coulumns in the Grid.</returns>
+        internal int GetColumns()
+        {
+            int ret = (int)LayoutPINVOKE.GridLayout_GetColumns(swigCPtr);
+            if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
+            return ret;
+        }
+
+        // <summary>
+        // [Draft] Get/Set the number of columns in the grid
+        // </summary>
+        public int Columns
+        {
+            get
+            {
+                return GetColumns();
+            }
+            set
+            {
+                SetColumns(value);
+            }
+        }
+    }
+
+}
index 9225fa1..aa135f3 100755 (executable)
@@ -4538,5 +4538,179 @@ namespace Tizen.NUI
             }
         }
 
+        // Grid Layout
+
+        // GridLayout_SWIGUpcast
+        [global::System.Runtime.InteropServices.DllImport(Graphics.GlesCSharpBinder,
+                                                          EntryPoint="CSharp_Dali_GridLayout_SWIGUpcast")]
+        public static extern global::System.IntPtr GridLayout_SWIGUpcast_gl(global::System.IntPtr jarg1);
+
+        [global::System.Runtime.InteropServices.DllImport(Graphics.VulkanCSharpBinder,
+                                                          EntryPoint="CSharp_Dali_GridLayoutt_SWIGUpcast")]
+
+        public static extern global::System.IntPtr GridLayout_SWIGUpcast_vulkan(global::System.IntPtr jarg1);
+
+
+        public static global::System.IntPtr GridLayout_SWIGUpcast(global::System.IntPtr jarg1)
+        {
+            if (Tizen.NUI.Graphics.Backend == Tizen.NUI.Graphics.BackendType.Vulkan)
+            {
+                return GridLayout_SWIGUpcast_vulkan(jarg1);
+            }
+            else
+            {
+                return GridLayout_SWIGUpcast_gl(jarg1);
+            }
+        }
+
+        // GridLayout_New
+        [global::System.Runtime.InteropServices.DllImport(Graphics.GlesCSharpBinder,
+                                                          EntryPoint="CSharp_Dali_GridLayout_New")]
+        public static extern global::System.IntPtr GridLayout_New_gl();
+
+        [global::System.Runtime.InteropServices.DllImport(Graphics.VulkanCSharpBinder,
+                                                          EntryPoint="CSharp_Dali_GridLayout_New")]
+        public static extern global::System.IntPtr GridLayout_New_vulkan();
+
+        public static global::System.IntPtr GridLayout_New()
+        {
+            if (Tizen.NUI.Graphics.Backend == Tizen.NUI.Graphics.BackendType.Vulkan)
+            {
+                return GridLayout_New_vulkan();
+            }
+            else
+            {
+                return GridLayout_New_gl();
+            }
+        }
+
+        // delete_GridLayout
+        [global::System.Runtime.InteropServices.DllImport(Graphics.GlesCSharpBinder,
+                                                          EntryPoint="CSharp_Dali_GridLayout_delete")]
+        public static extern void delete_GridLayout_gl(global::System.Runtime.InteropServices.HandleRef jarg1);
+
+        [global::System.Runtime.InteropServices.DllImport(Graphics.VulkanCSharpBinder,
+                                                          EntryPoint="CSharp_Dali_GridLayout_delete")]
+        public static extern void delete_GridLayout_vulkan(global::System.Runtime.InteropServices.HandleRef jarg1);
+
+        public static void delete_GridLayout(global::System.Runtime.InteropServices.HandleRef jarg1)
+        {
+            if (Tizen.NUI.Graphics.Backend == Tizen.NUI.Graphics.BackendType.Vulkan)
+            {
+                delete_GridLayout_vulkan(jarg1);
+            }
+            else
+            {
+                delete_GridLayout_gl(jarg1);
+            }
+        }
+
+        // GridLayout_Downcast
+        [global::System.Runtime.InteropServices.DllImport(Graphics.GlesCSharpBinder,
+                                                          EntryPoint="CSharp_Dali_GridLayout_DownCast")]
+        public static extern global::System.IntPtr GridLayout_DownCast_gl(global::System.Runtime.InteropServices.HandleRef jarg1);
+
+        [global::System.Runtime.InteropServices.DllImport(Graphics.VulkanCSharpBinder,
+                                                          EntryPoint="CSharp_Dali_GridLayout_DownCast")]
+        public static extern global::System.IntPtr GridLayout_DownCast_vulkan(global::System.Runtime.InteropServices.HandleRef jarg1);
+
+        public static global::System.IntPtr GridLayout_DownCast(global::System.Runtime.InteropServices.HandleRef jarg1)
+        {
+            if (Tizen.NUI.Graphics.Backend == Tizen.NUI.Graphics.BackendType.Vulkan)
+            {
+                return GridLayout_DownCast_vulkan(jarg1);
+            }
+            else
+            {
+                return GridLayout_DownCast_gl(jarg1);
+            }
+        }
+
+        // new_GridLayout_SWIG_1
+        [global::System.Runtime.InteropServices.DllImport(Graphics.GlesCSharpBinder,
+                                                          EntryPoint="CSharp_Dali_new_GridLayout_SWIG_1")]
+        public static extern global::System.IntPtr new_GridLayout_SWIG_1_gl(global::System.Runtime.InteropServices.HandleRef jarg1);
+
+        [global::System.Runtime.InteropServices.DllImport(Graphics.VulkanCSharpBinder,
+                                                          EntryPoint="CSharp_Dali_new_GridLayout_SWIG_1")]
+        public static extern global::System.IntPtr new_GridLayout_SWIG_1_vulkan(global::System.Runtime.InteropServices.HandleRef jarg1);
+
+        public static global::System.IntPtr new_GridLayout_SWIG_1(global::System.Runtime.InteropServices.HandleRef jarg1)
+        {
+            if (Tizen.NUI.Graphics.Backend == Tizen.NUI.Graphics.BackendType.Vulkan)
+            {
+                return new_GridLayout_SWIG_1_vulkan(jarg1);
+            }
+            else
+            {
+                return new_GridLayout_SWIG_1_gl(jarg1);
+            }
+        }
+
+        // GridLayout_Assign
+        [global::System.Runtime.InteropServices.DllImport(Graphics.GlesCSharpBinder,
+                                                          EntryPoint="CSharp_Dali_GridLayout_GridLayout_Assign")]
+        public static extern global::System.IntPtr GridLayout_Assign_gl(global::System.Runtime.InteropServices.HandleRef jarg1,
+                                                                        global::System.Runtime.InteropServices.HandleRef jarg2);
+
+        [global::System.Runtime.InteropServices.DllImport(Graphics.VulkanCSharpBinder,
+                                                          EntryPoint="CSharp_Dali_GridLayout_GridLayout_Assign")]
+        public static extern global::System.IntPtr GridLayout_Assign_vulkan(global::System.Runtime.InteropServices.HandleRef jarg1,
+                                                                            global::System.Runtime.InteropServices.HandleRef jarg2);
+
+        public static global::System.IntPtr GridLayout_Assign(global::System.Runtime.InteropServices.HandleRef jarg1,
+                                                              global::System.Runtime.InteropServices.HandleRef jarg2)
+        {
+            if (Tizen.NUI.Graphics.Backend == Tizen.NUI.Graphics.BackendType.Vulkan)
+            {
+                return GridLayout_Assign_vulkan(jarg1,jarg2);
+            }
+            else
+            {
+                return GridLayout_Assign_gl(jarg1,jarg2);
+            }
+        }
+
+        // GridLayout_SetColumns
+        [global::System.Runtime.InteropServices.DllImport(Graphics.GlesCSharpBinder,
+                                                          EntryPoint="CSharp_Dali_GridLayout_SetColumns")]
+        public static extern void GridLayout_SetColumns_gl(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2);
+
+        [global::System.Runtime.InteropServices.DllImport(Graphics.VulkanCSharpBinder,
+                                                          EntryPoint="CSharp_Dali_GridLayout_SetColumns")]
+        public static extern void GridLayout_SetColumns_vulkan(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2);
+
+        public static void GridLayout_SetColumns(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2)
+        {
+            if (Tizen.NUI.Graphics.Backend == Tizen.NUI.Graphics.BackendType.Vulkan)
+            {
+                GridLayout_SetColumns_vulkan( jarg1, jarg2);
+            }
+            else
+            {
+                GridLayout_SetColumns_gl(jarg1, jarg2);
+            }
+        }
+
+        // GridLayout_GetColumns
+        [global::System.Runtime.InteropServices.DllImport(Graphics.GlesCSharpBinder,
+                                                          EntryPoint="CSharp_Dali_GridLayout__GetColumns")]
+        public static extern int GridLayout_GetColumns_gl(global::System.Runtime.InteropServices.HandleRef jarg1);
+
+        [global::System.Runtime.InteropServices.DllImport(Graphics.VulkanCSharpBinder,
+                                                          EntryPoint="CSharp_Dali_GridLayout_GetColumns")]
+        public static extern int GridLayout_GetColumns_vulkan(global::System.Runtime.InteropServices.HandleRef jarg1);
+
+        public static int GridLayout_GetColumns(global::System.Runtime.InteropServices.HandleRef jarg1)
+        {
+            if (Tizen.NUI.Graphics.Backend == Tizen.NUI.Graphics.BackendType.Vulkan)
+            {
+                return GridLayout_GetColumns_vulkan(jarg1);
+            }
+            else
+            {
+                return GridLayout_GetColumns_gl(jarg1);
+            }
+        }
     }
 }
index ca7880b..57b41a4 100755 (executable)
@@ -19,6 +19,7 @@ namespace Tizen.NUI
 {
 
     using System;
+    using System.ComponentModel;
     using System.Runtime.InteropServices;
     using Tizen.NUI.BaseComponents;
 
@@ -569,6 +570,12 @@ namespace Tizen.NUI
             }
         }
         private string[] _properties = null;
+
+        /// <summary>
+        /// Gets or sets the properties of the animation.
+        /// </summary>
+        /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
+        [EditorBrowsable(EditorBrowsableState.Never)]
         public string[] Properties
         {
             get
@@ -582,6 +589,12 @@ namespace Tizen.NUI
         }
 
         private string[] _destValue = null;
+
+        /// <summary>
+        /// Gets or sets the destination value for each property of the animation.
+        /// </summary>
+        /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
+        [EditorBrowsable(EditorBrowsableState.Never)]
         public string[] DestValue
         {
             get
@@ -595,6 +608,12 @@ namespace Tizen.NUI
         }
 
         private int[] _startTime = null;
+
+        /// <summary>
+        /// Gets or sets the start time for each property of the animation.
+        /// </summary>
+        /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
+        [EditorBrowsable(EditorBrowsableState.Never)]
         public int[] StartTime
         {
             get
@@ -608,6 +627,12 @@ namespace Tizen.NUI
         }
 
         private int[] _endTime = null;
+
+        /// <summary>
+        /// Gets or sets the end time for each property of the animation.
+        /// </summary>
+        /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
+        [EditorBrowsable(EditorBrowsableState.Never)]
         public int[] EndTime
         {
             get
@@ -620,8 +645,15 @@ namespace Tizen.NUI
             }
         }
 
+        /// <summary>
+        /// Animates one or more properties to a destination value.<br />
+        /// </summary>
+        /// <param name="target">The target object to animate.</param>
+        /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
+        [EditorBrowsable(EditorBrowsableState.Never)]
         public void PlayAnimateTo(View target)
         {
+            Clear();
             if (_properties.Length == _destValue.Length && _startTime.Length == _endTime.Length && _properties.Length == _startTime.Length)
             {
                 int length = _properties.Length;
@@ -672,7 +704,7 @@ namespace Tizen.NUI
             {
                 //If there's a [TypeConverter], use it
                 object converter = getConverter?.Invoke();
-                var xfTypeConverter = converter as TypeConverter;
+                var xfTypeConverter = converter as Tizen.NUI.Binding.TypeConverter;
                 if (xfTypeConverter != null)
                     return value = xfTypeConverter.ConvertFromInvariantString(str);
                 var converterType = converter?.GetType();
@@ -758,7 +790,7 @@ namespace Tizen.NUI
         internal string GetTypeConverterTypeName(IEnumerable<CustomAttributeData> attributes)
         {
             var converterAttribute =
-                attributes.FirstOrDefault(cad => TypeConverterAttribute.TypeConvertersType.Contains(cad.AttributeType.FullName));
+                attributes.FirstOrDefault(cad => Tizen.NUI.Binding.TypeConverterAttribute.TypeConvertersType.Contains(cad.AttributeType.FullName));
             if (converterAttribute == null)
                 return null;
             if (converterAttribute.ConstructorArguments[0].ArgumentType == typeof(string))
index 449bdb2..a85d1e9 100755 (executable)
@@ -38,7 +38,6 @@ namespace Tizen.NUI.BaseComponents
             {
                 Tizen.NUI.Object.SetProperty(flexContainer.swigCPtr, FlexContainer.Property.CONTENT_DIRECTION, new Tizen.NUI.PropertyValue((int)newValue));
             }
-            Console.WriteLine("FlexContainer ContentDirectionProperty changed: oldValue: " + oldValue + ", newValue: " + newValue);
         },
         defaultValueCreator: (bindable) =>
         {
@@ -56,7 +55,6 @@ namespace Tizen.NUI.BaseComponents
             {
                 Tizen.NUI.Object.SetProperty(flexContainer.swigCPtr, FlexContainer.Property.FLEX_DIRECTION, new Tizen.NUI.PropertyValue((int)newValue));
             }
-            Console.WriteLine("FlexContainer FlexDirectionProperty changed: oldValue: " + oldValue + ", newValue: " + newValue);
         },
         defaultValueCreator: (bindable) =>
         {
@@ -74,7 +72,6 @@ namespace Tizen.NUI.BaseComponents
             {
                 Tizen.NUI.Object.SetProperty(flexContainer.swigCPtr, FlexContainer.Property.FLEX_WRAP, new Tizen.NUI.PropertyValue((int)newValue));
             }
-            Console.WriteLine("FlexContainer FlexWrapProperty changed: oldValue: " + oldValue + ", newValue: " + newValue);
         },
         defaultValueCreator: (bindable) =>
         {
@@ -92,7 +89,6 @@ namespace Tizen.NUI.BaseComponents
             {
                 Tizen.NUI.Object.SetProperty(flexContainer.swigCPtr, FlexContainer.Property.JUSTIFY_CONTENT, new Tizen.NUI.PropertyValue((int)newValue));
             }
-            Console.WriteLine("FlexContainer JustifyContentProperty changed: oldValue: " + oldValue + ", newValue: " + newValue);
         },
         defaultValueCreator: (bindable) =>
         {
@@ -110,7 +106,6 @@ namespace Tizen.NUI.BaseComponents
             {
                 Tizen.NUI.Object.SetProperty(flexContainer.swigCPtr, FlexContainer.Property.ALIGN_ITEMS, new Tizen.NUI.PropertyValue((int)newValue));
             }
-            Console.WriteLine("FlexContainer AlignItemsProperty changed: oldValue: " + oldValue + ", newValue: " + newValue);
         },
         defaultValueCreator: (bindable) =>
         {
@@ -128,7 +123,6 @@ namespace Tizen.NUI.BaseComponents
             {
                 Tizen.NUI.Object.SetProperty(flexContainer.swigCPtr, FlexContainer.Property.ALIGN_CONTENT, new Tizen.NUI.PropertyValue((int)newValue));
             }
-            Console.WriteLine("FlexContainer AlignContentProperty changed: oldValue: " + oldValue + ", newValue: " + newValue);
         },
         defaultValueCreator: (bindable) =>
         {
index 086b5cb..e8cd9fc 100755 (executable)
@@ -39,7 +39,6 @@ namespace Tizen.NUI.BaseComponents
                 imageView._url = (newValue == null? "" : (string)newValue);
                 imageView.UpdateImage();
             }
-            Console.WriteLine("ImageView ResourceUrlProperty changed: oldValue: " + oldValue + ", newValue: " + newValue);
         },
         defaultValueCreator:(bindable) =>
         {
@@ -59,7 +58,6 @@ namespace Tizen.NUI.BaseComponents
                     Tizen.NUI.Object.SetProperty(imageView.swigCPtr, ImageView.Property.IMAGE, new Tizen.NUI.PropertyValue((PropertyMap)newValue));
                 }
             }
-            Console.WriteLine("ImageView ImageProperty changed: oldValue: " + oldValue + ", newValue: " + newValue);
         },
         defaultValueCreator:(bindable) =>
         {
@@ -84,7 +82,6 @@ namespace Tizen.NUI.BaseComponents
             {
                 Tizen.NUI.Object.SetProperty(imageView.swigCPtr, ImageView.Property.PRE_MULTIPLIED_ALPHA, new Tizen.NUI.PropertyValue((bool)newValue));
             }
-            Console.WriteLine("ImageView PreMultipliedAlphaProperty changed: oldValue: " + oldValue + ", newValue: " + newValue);
         },
         defaultValueCreator:(bindable) =>
         {
@@ -102,7 +99,6 @@ namespace Tizen.NUI.BaseComponents
             {
                 Tizen.NUI.Object.SetProperty(imageView.swigCPtr, ImageView.Property.PIXEL_AREA, new Tizen.NUI.PropertyValue((RelativeVector4)newValue));
             }
-            Console.WriteLine("ImageView PixelAreaProperty changed: oldValue: " + oldValue + ", newValue: " + newValue);
         },
         defaultValueCreator:(bindable) =>
         {
@@ -122,7 +118,6 @@ namespace Tizen.NUI.BaseComponents
                 imageView._border = (Rectangle)newValue;
                 imageView.UpdateImage();
             }
-            Console.WriteLine("ImageView BorderProperty changed: oldValue: " + oldValue + ", newValue: " + newValue);
         },
         defaultValueCreator:(bindable) =>
         {
@@ -139,7 +134,6 @@ namespace Tizen.NUI.BaseComponents
                 imageView._borderOnly = (bool)newValue;
                 imageView.UpdateImage();
             }
-            Console.WriteLine("ImageView BorderOnlyProperty changed: oldValue: " + oldValue + ", newValue: " + newValue);
         },
         defaultValueCreator:(bindable) =>
         {
@@ -156,7 +150,6 @@ namespace Tizen.NUI.BaseComponents
                 imageView._synchronousLoading = (bool)newValue;
                 imageView.UpdateImage();
             }
-            Console.WriteLine("ImageView SynchronosLoadingProperty changed: oldValue: " + oldValue + ", newValue: " + newValue);
         },
         defaultValueCreator:(bindable) =>
         {
@@ -173,7 +166,6 @@ namespace Tizen.NUI.BaseComponents
                 imageView._orientationCorrection = (bool)newValue;
                 imageView.UpdateImage();
             }
-            Console.WriteLine("ImageView OrientationCorrectionProperty changed: oldValue: " + oldValue + ", newValue: " + newValue);
         },
         defaultValueCreator:(bindable) =>
         {
index ba9bd33..448de5f 100755 (executable)
@@ -476,7 +476,6 @@ namespace Tizen.NUI.BaseComponents
             Size temp = new Size(0.0f, 0.0f, 0.0f);
             Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.SIZE).Get(temp);
             Size2D size = new Size2D((int)temp.Width, (int)temp.Height);
-            Console.WriteLine($"View Size2DProperty get width: {size.Width} height: {size.Height}");
             return size;
         });
         /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
@@ -522,7 +521,6 @@ namespace Tizen.NUI.BaseComponents
             {
                 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.POSITION_USES_ANCHOR_POINT, new Tizen.NUI.PropertyValue((bool)newValue));
             }
-            Console.WriteLine("View PositionUsesPivotPointProperty changed: oldValue: " + oldValue + ", newValue: " + newValue);
         },
         defaultValueCreator:(bindable) =>
         {
@@ -586,7 +584,6 @@ namespace Tizen.NUI.BaseComponents
             {
                 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.PARENT_ORIGIN, new Tizen.NUI.PropertyValue((Position)newValue));
             }
-            Console.WriteLine("View ParentOriginProperty changed: oldValue: " + oldValue + ", newValue: " + newValue);
         },
         defaultValueCreator:(bindable) =>
         {
@@ -605,7 +602,6 @@ namespace Tizen.NUI.BaseComponents
             {
                 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.ANCHOR_POINT, new Tizen.NUI.PropertyValue((Position)newValue));
             }
-            Console.WriteLine("View PivotPointProperty changed: oldValue: " + oldValue + ", newValue: " + newValue);
         },
         defaultValueCreator:(bindable) =>
         {
@@ -623,14 +619,12 @@ namespace Tizen.NUI.BaseComponents
             {
                 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.SIZE_WIDTH, new Tizen.NUI.PropertyValue((float)newValue));
             }
-            Console.WriteLine("View SizeWidthProperty changed: oldValue: " + oldValue + ", newValue: " + newValue);
         },
         defaultValueCreator:(bindable) =>
         {
             var view = (View)bindable;
             float temp = 0.0f;
             Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.SIZE_WIDTH).Get(out temp);
-            Console.WriteLine($"View SizeWidthProperty get Value: {temp}");
             return temp;
         });
         /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
@@ -642,14 +636,12 @@ namespace Tizen.NUI.BaseComponents
             {
                 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.SIZE_HEIGHT, new Tizen.NUI.PropertyValue((float)newValue));
             }
-            Console.WriteLine("View SizeHeightProperty changed: oldValue: " + oldValue + ", newValue: " + newValue);
         },
         defaultValueCreator:(bindable) =>
         {
             var view = (View)bindable;
             float temp = 0.0f;
             Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.SIZE_HEIGHT).Get(out temp);
-            Console.WriteLine($"View SizeHeightProperty get Value: {temp}");
             return temp;
         });
         /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
@@ -1160,18 +1152,12 @@ namespace Tizen.NUI.BaseComponents
         defaultValueCreator:(bindable) =>
         {
             var view = (View)bindable;
-            string temp;
+            int temp = 0;
             if (Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.CLIPPING_MODE).Get(out temp) == false)
             {
                 NUILog.Error("ClippingMode get error!");
             }
-            switch (temp)
-            {
-                case "DISABLED": return ClippingModeType.Disabled;
-                case "CLIP_CHILDREN": return ClippingModeType.ClipChildren;
-                case "CLIP_TO_BOUNDING_BOX": return ClippingModeType.ClipToBoundingBox;
-                default: return ClippingModeType.Disabled;
-            }
+            return (ClippingModeType)temp;
         });
         /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
         [EditorBrowsable(EditorBrowsableState.Never)]
@@ -1235,6 +1221,8 @@ namespace Tizen.NUI.BaseComponents
 
         private global::System.Runtime.InteropServices.HandleRef swigCPtr;
 
+        private bool layoutSet = false; // Flag to indicate if SetLayout was called or View was automatically given a Layout
+
         internal View(global::System.IntPtr cPtr, bool cMemoryOwn) : base(NDalicPINVOKE.View_SWIGUpcast(cPtr), cMemoryOwn)
         {
             swigCPtr = new global::System.Runtime.InteropServices.HandleRef(this, cPtr);
@@ -1281,6 +1269,12 @@ namespace Tizen.NUI.BaseComponents
         /// <since_tizen> 4 </since_tizen>
         public override void Add(View child)
         {
+            if (null == child)
+            {
+                Tizen.Log.Fatal("NUI", "Child is null");
+                return;
+            }
+
             Container oldParent = child.Parent;
             if (oldParent != this)
             {
@@ -1289,7 +1283,7 @@ namespace Tizen.NUI.BaseComponents
                     oldParent.Remove(child);
                 }
 
-                if (child.Layout == null)
+                if (layoutSet = true && child.Layout == null) // Only give children a layout if parent an explict container
                 {
                     LayoutItem layoutItem = new LayoutItem();
                     child.Layout = layoutItem;
@@ -1338,7 +1332,7 @@ namespace Tizen.NUI.BaseComponents
         /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
         [EditorBrowsable(EditorBrowsableState.Never)]
         public new event EventHandler<ChildRemovedEventArgs> ChildRemoved;
-        
+
 
         /// <summary>
         /// Removes a child view from this View. If the view was not a child of this view, this is a no-op.
@@ -3188,6 +3182,11 @@ namespace Tizen.NUI.BaseComponents
             set
             {
                 SetValue(Size2DProperty, value);
+                if ( this.Layout != null)
+                {
+                  SetProperty(LayoutItemWrapper.ChildProperty.WIDTH_SPECIFICATION, new Tizen.NUI.PropertyValue(value.Width));
+                  SetProperty(LayoutItemWrapper.ChildProperty.HEIGHT_SPECIFICATION, new Tizen.NUI.PropertyValue(value.Height));
+                }
                 NotifyPropertyChanged();
             }
         }
@@ -3449,6 +3448,7 @@ namespace Tizen.NUI.BaseComponents
             {
                 Tizen.NUI.NDalicManualPINVOKE.SetLayout__SWIG_1(View.getCPtr(this), LayoutItem.getCPtr(value));
                 value.LayoutChildren.Clear();
+                layoutSet = true;
                 foreach (View view in Children)
                 {
                     value.LayoutChildren.Add(view.Layout);
@@ -5154,6 +5154,13 @@ namespace Tizen.NUI.BaseComponents
             }
             set
             {
+                if (Layout != null)
+                {
+                    // Note: it only works if minimum size is >= than natural size.
+                    // To force the size it should be done through the width&height spec or Size2D.
+                    Layout.MinimumWidth = new Tizen.NUI.LayoutLength(value.Width);
+                    Layout.MinimumHeight = new Tizen.NUI.LayoutLength(value.Height);
+                }
                 SetValue(MinimumSizeProperty, value);
                 NotifyPropertyChanged();
             }
@@ -5171,6 +5178,8 @@ namespace Tizen.NUI.BaseComponents
             }
             set
             {
+                // We don't have Layout.Maximum(Width|Height) so we cannot apply it to layout.
+                // MATCH_PARENT spec + parent container size can be used to limit
                 SetValue(MaximumSizeProperty, value);
                 NotifyPropertyChanged();
             }
similarity index 55%
rename from src/Tizen.NUI/src/internal/GestureDetector.cs
rename to src/Tizen.NUI/src/public/GestureDetector.cs
index e328e30..c46e4d7 100755 (executable)
@@ -1,5 +1,5 @@
 /*
- * Copyright(c) 2017 Samsung Electronics Co., Ltd.
+ * Copyright(c) 2018 Samsung Electronics Co., Ltd.
  *
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
  * limitations under the License.
  *
  */
+using Tizen.NUI.BaseComponents;
+using System.ComponentModel;
 
 namespace Tizen.NUI
 {
-    using Tizen.NUI.BaseComponents;
-    internal class GestureDetector : BaseHandle
+    /// <summary>
+    /// GestureDetectors analyse a stream of touch events and attempt to determine the intention of the user.<br />
+    /// An view is attached to a gesture detector and if the detector recognises a pattern in its analysis, it will
+    /// trigger a detected event to the application.<br />
+    /// This is the base class for different gesture detectors available and provides functionality that is common to all the gesture detectors.<br />
+    /// </summary>
+    /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
+    [EditorBrowsable(EditorBrowsableState.Never)]
+    public class GestureDetector : BaseHandle
     {
         private global::System.Runtime.InteropServices.HandleRef swigCPtr;
 
@@ -32,6 +41,12 @@ namespace Tizen.NUI
             return (obj == null) ? new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero) : obj.swigCPtr;
         }
 
+        /// <summary>
+        /// Dispose.
+        /// </summary>
+        /// <param name="type">The dispose type</param>
+        /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
+        [EditorBrowsable(EditorBrowsableState.Never)]
         protected override void Dispose(DisposeTypes type)
         {
             if (disposed)
@@ -64,48 +79,82 @@ namespace Tizen.NUI
             base.Dispose(type);
         }
 
+        /// <summary>
+        /// Constructor. Creates an uninitialized GestureDetector.
+        /// </summary>
+        /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
+        [EditorBrowsable(EditorBrowsableState.Never)]
         public GestureDetector() : this(NDalicPINVOKE.new_GestureDetector__SWIG_0(), true)
         {
             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
         }
 
-        public static GestureDetector DownCast(BaseHandle handle)
+        internal static GestureDetector DownCast(BaseHandle handle)
         {
             GestureDetector ret =  Registry.GetManagedBaseHandleFromNativePtr(handle) as GestureDetector;
             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
             return ret;
         }
 
+        /// <summary>
+        /// Constructor.
+        /// </summary>
+        /// <param name="handle">A reference to the copied handle</param>
+        /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
+        [EditorBrowsable(EditorBrowsableState.Never)]
         public GestureDetector(GestureDetector handle) : this(NDalicPINVOKE.new_GestureDetector__SWIG_1(GestureDetector.getCPtr(handle)), true)
         {
             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
         }
 
-        public GestureDetector Assign(GestureDetector rhs)
+        internal GestureDetector Assign(GestureDetector rhs)
         {
             GestureDetector ret = new GestureDetector(NDalicPINVOKE.GestureDetector_Assign(swigCPtr, GestureDetector.getCPtr(rhs)), false);
             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
             return ret;
         }
 
+        /// <summary>
+        /// Attaches an view to the gesture. The detected event will be triggered when the gesture occurs on the attached view.
+        /// </summary>
+        /// <param name="view">The view to attach to the gesture detector</param>
+        /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
+        [EditorBrowsable(EditorBrowsableState.Never)]
         public void Attach(View view)
         {
             NDalicPINVOKE.GestureDetector_Attach(swigCPtr, View.getCPtr(view));
             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
         }
 
+        /// <summary>
+        /// Detaches the attached view from the gesture detector.
+        /// </summary>
+        /// <param name="view">The view to detach from the gesture detector</param>
+        /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
+        [EditorBrowsable(EditorBrowsableState.Never)]
         public void Detach(View view)
         {
             NDalicPINVOKE.GestureDetector_Detach(swigCPtr, View.getCPtr(view));
             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
         }
 
+        /// <summary>
+        /// Detaches all the views that have been attached to the gesture detector.
+        /// </summary>
+        /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
+        [EditorBrowsable(EditorBrowsableState.Never)]
         public void DetachAll()
         {
             NDalicPINVOKE.GestureDetector_DetachAll(swigCPtr);
             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
         }
 
+        /// <summary>
+        /// Returns the number of views attached to the gesture detector.
+        /// </summary>
+        /// <returns>The count</returns>
+        /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
+        [EditorBrowsable(EditorBrowsableState.Never)]
         public uint GetAttachedViewCount()
         {
             uint ret = NDalicPINVOKE.GestureDetector_GetAttachedActorCount(swigCPtr);
@@ -113,6 +162,13 @@ namespace Tizen.NUI
             return ret;
         }
 
+        /// <summary>
+        /// Returns an view by index. An empty handle if the index is not valid.
+        /// </summary>
+        /// <param name="index">The attached view's index</param>
+        /// <returns>The attached view or an empty handle</returns>
+        /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
+        [EditorBrowsable(EditorBrowsableState.Never)]
         public View GetAttachedView(uint index)
         {
             View ret = new View(NDalicPINVOKE.GestureDetector_GetAttachedActor(swigCPtr, index), true);
@@ -1,5 +1,5 @@
 /*
- * Copyright(c) 2017 Samsung Electronics Co., Ltd.
+ * Copyright(c) 2018 Samsung Electronics Co., Ltd.
  *
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
  * limitations under the License.
  *
  */
+using System;
+using System.Runtime.InteropServices;
+using Tizen.NUI.BaseComponents;
+using System.ComponentModel;
 
 namespace Tizen.NUI
 {
-
-    using System;
-    using System.Runtime.InteropServices;
-    using Tizen.NUI.BaseComponents;
-
-    internal class LongPressGestureDetector : GestureDetector
+    /// <summary>
+    /// This class emits a signals when a long press gesture occurs that meets the requirements set by the application.<br />
+    /// For any valid long press, two signals will be emitted:<br />
+    /// - First identifying the beginning (state = Started) i.e. when fingers held down for the required time.<br />
+    /// - Second identifying the ending (state = Finished) i.e. when fingers are released.<br />
+    /// </summary>
+    /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
+    [EditorBrowsable(EditorBrowsableState.Never)]
+    public class LongPressGestureDetector : GestureDetector
     {
         private global::System.Runtime.InteropServices.HandleRef swigCPtr;
 
@@ -36,6 +43,12 @@ namespace Tizen.NUI
             return (obj == null) ? new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero) : obj.swigCPtr;
         }
 
+        /// <summary>
+        /// Dispose.
+        /// </summary>
+        /// <param name="type">The dispose type</param>
+        /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
+        [EditorBrowsable(EditorBrowsableState.Never)]
         protected override void Dispose(DisposeTypes type)
         {
             if (disposed)
@@ -68,14 +81,23 @@ namespace Tizen.NUI
             base.Dispose(type);
         }
 
-
-        /// <since_tizen> 3 </since_tizen>
+        /// <summary>
+        /// Event arguments that passed via the LongPressGestureEvent signal.
+        /// </summary>
+        /// <since_tizen> 5 </since_tizen>
+        /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
+        [EditorBrowsable(EditorBrowsableState.Never)]
         public class DetectedEventArgs : EventArgs
         {
             private View _view;
             private LongPressGesture _longPressGesture;
 
-            /// <since_tizen> 3 </since_tizen>
+            /// <summary>
+            /// View - the attached view.
+            /// </summary>
+            /// <since_tizen> 5 </since_tizen>
+            /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
+            [EditorBrowsable(EditorBrowsableState.Never)]
             public View View
             {
                 get
@@ -88,7 +110,12 @@ namespace Tizen.NUI
                 }
             }
 
-            /// <since_tizen> 3 </since_tizen>
+            /// <summary>
+            /// The LongPressGesture.
+            /// </summary>
+            /// <since_tizen> 5 </since_tizen>
+            /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
+            [EditorBrowsable(EditorBrowsableState.Never)]
             public LongPressGesture LongPressGesture
             {
                 get
@@ -107,7 +134,11 @@ namespace Tizen.NUI
         private DaliEventHandler<object, DetectedEventArgs> _longPressGestureEventHandler;
         private DetectedCallbackDelegate _longPressGestureCallbackDelegate;
 
-
+        /// <summary>
+        /// This signal is emitted when the specified long press is detected on the attached view.
+        /// </summary>
+        /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
+        [EditorBrowsable(EditorBrowsableState.Never)]
         public event DaliEventHandler<object, DetectedEventArgs> Detected
         {
             add
@@ -155,61 +186,108 @@ namespace Tizen.NUI
 
         }
 
-
-        public static LongPressGestureDetector GetLongPressGestureDetectorFromPtr(global::System.IntPtr cPtr)
+        internal static LongPressGestureDetector GetLongPressGestureDetectorFromPtr(global::System.IntPtr cPtr)
         {
             LongPressGestureDetector ret = new LongPressGestureDetector(cPtr, false);
             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
             return ret;
         }
 
-
+        /// <summary>
+        /// Constructor.
+        /// </summary>
+        /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
+        [EditorBrowsable(EditorBrowsableState.Never)]
         public LongPressGestureDetector() : this(NDalicPINVOKE.LongPressGestureDetector_New__SWIG_0(), true)
         {
             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
 
         }
+
+        /// <summary>
+        /// Creates an initialized LongPressGestureDetector with the number of touches required.<br />
+        /// A long press gesture will be emitted from this detector if the number of fingers touching the screen is equal to the touches required.<br />
+        /// </summary>
+        /// <param name="touchesRequired">The number of touches required</param>
+        /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
+        [EditorBrowsable(EditorBrowsableState.Never)]
         public LongPressGestureDetector(uint touchesRequired) : this(NDalicPINVOKE.LongPressGestureDetector_New__SWIG_1(touchesRequired), true)
         {
             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
 
         }
+
+        /// <summary>
+        /// Creates an initialized LongPressGestureDetector with the minimum and maximum number of touches required.<br />
+        /// A long press gesture will be emitted from this detector if the number of fingers touching the screen falls between the minimum and maximum touches set.<br />
+        /// </summary>
+        /// <param name="minTouches">The minimum number of touches required</param>
+        /// <param name="maxTouches">The maximum number of touches required</param>
+        /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
+        [EditorBrowsable(EditorBrowsableState.Never)]
         public LongPressGestureDetector(uint minTouches, uint maxTouches) : this(NDalicPINVOKE.LongPressGestureDetector_New__SWIG_2(minTouches, maxTouches), true)
         {
             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
 
         }
-        public new static LongPressGestureDetector DownCast(BaseHandle handle)
+
+        internal new static LongPressGestureDetector DownCast(BaseHandle handle)
         {
             LongPressGestureDetector ret =  Registry.GetManagedBaseHandleFromNativePtr(handle) as LongPressGestureDetector;
             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
             return ret;
         }
 
+        /// <summary>
+        /// The copy constructor.
+        /// </summary>
+        /// <param name="handle">A reference to the copied handle</param>
+        /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
+        [EditorBrowsable(EditorBrowsableState.Never)]
         public LongPressGestureDetector(LongPressGestureDetector handle) : this(NDalicPINVOKE.new_LongPressGestureDetector__SWIG_1(LongPressGestureDetector.getCPtr(handle)), true)
         {
             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
         }
 
-        public LongPressGestureDetector Assign(LongPressGestureDetector rhs)
+        internal LongPressGestureDetector Assign(LongPressGestureDetector rhs)
         {
             LongPressGestureDetector ret = new LongPressGestureDetector(NDalicPINVOKE.LongPressGestureDetector_Assign(swigCPtr, LongPressGestureDetector.getCPtr(rhs)), false);
             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
             return ret;
         }
 
+        /// <summary>
+        /// Sets the number of touches required.<br />
+        /// The number of touches corresponds to the number of fingers a user has on the screen. The default is 1.<br />
+        /// </summary>
+        /// <param name="touches">Touches required</param>
+        /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
+        [EditorBrowsable(EditorBrowsableState.Never)]
         public void SetTouchesRequired(uint touches)
         {
             NDalicPINVOKE.LongPressGestureDetector_SetTouchesRequired__SWIG_0(swigCPtr, touches);
             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
         }
 
+        /// <summary>
+        /// Sets the minimum and maximum touches required.
+        /// </summary>
+        /// <param name="minTouches">Minimum Touches required</param>
+        /// <param name="maxTouches">Maximum Touches required</param>
+        /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
+        [EditorBrowsable(EditorBrowsableState.Never)]
         public void SetTouchesRequired(uint minTouches, uint maxTouches)
         {
             NDalicPINVOKE.LongPressGestureDetector_SetTouchesRequired__SWIG_1(swigCPtr, minTouches, maxTouches);
             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
         }
 
+        /// <summary>
+        /// Retrieves the minimum number of touches required.
+        /// </summary>
+        /// <returns>The minimum number of touches required.</returns>
+        /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
+        [EditorBrowsable(EditorBrowsableState.Never)]
         public uint GetMinimumTouchesRequired()
         {
             uint ret = NDalicPINVOKE.LongPressGestureDetector_GetMinimumTouchesRequired(swigCPtr);
@@ -217,6 +295,12 @@ namespace Tizen.NUI
             return ret;
         }
 
+        /// <summary>
+        /// Retrieves the maximum number of touches required.
+        /// </summary>
+        /// <returns>The maximum number of touches required.</returns>
+        /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
+        [EditorBrowsable(EditorBrowsableState.Never)]
         public uint GetMaximumTouchesRequired()
         {
             uint ret = NDalicPINVOKE.LongPressGestureDetector_GetMaximumTouchesRequired(swigCPtr);
similarity index 59%
rename from src/Tizen.NUI/src/internal/PanGestureDetector.cs
rename to src/Tizen.NUI/src/public/PanGestureDetector.cs
index b0f73ba..92b88ef 100755 (executable)
@@ -1,5 +1,5 @@
 /*
- * Copyright(c) 2017 Samsung Electronics Co., Ltd.
+ * Copyright(c) 2018 Samsung Electronics Co., Ltd.
  *
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
  * limitations under the License.
  *
  */
+using System;
+using System.Runtime.InteropServices;
+using Tizen.NUI.BaseComponents;
+using System.ComponentModel;
 
 namespace Tizen.NUI
 {
 
-    using System;
-    using System.Runtime.InteropServices;
-    using Tizen.NUI.BaseComponents;
-
-
-    internal class PanGestureDetector : GestureDetector
+    /// <summary>
+    /// This class emits a signals when a pan gesture occurs.<br />
+    /// </summary>
+    /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
+    [EditorBrowsable(EditorBrowsableState.Never)]
+    public class PanGestureDetector : GestureDetector
     {
         private global::System.Runtime.InteropServices.HandleRef swigCPtr;
 
@@ -37,6 +41,12 @@ namespace Tizen.NUI
             return (obj == null) ? new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero) : obj.swigCPtr;
         }
 
+        /// <summary>
+        /// Dispose.
+        /// </summary>
+        /// <param name="type">The dispose type</param>
+        /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
+        [EditorBrowsable(EditorBrowsableState.Never)]
         protected override void Dispose(DisposeTypes type)
         {
             if (disposed)
@@ -70,14 +80,23 @@ namespace Tizen.NUI
         }
 
 
-
-        /// <since_tizen> 3 </since_tizen>
+        /// <summary>
+        /// Event arguments that passed via the PanGestureEvent signal.
+        /// </summary>
+        /// <since_tizen> 5 </since_tizen>
+        /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
+        [EditorBrowsable(EditorBrowsableState.Never)]
         public class DetectedEventArgs : EventArgs
         {
             private View _view;
             private PanGesture _panGesture;
 
-            /// <since_tizen> 3 </since_tizen>
+            /// <summary>
+            /// The attached view.
+            /// </summary>
+            /// <since_tizen> 5 </since_tizen>
+            /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
+            [EditorBrowsable(EditorBrowsableState.Never)]
             public View View
             {
                 get
@@ -90,7 +109,12 @@ namespace Tizen.NUI
                 }
             }
 
-            /// <since_tizen> 3 </since_tizen>
+            /// <summary>
+            /// The PanGesture.
+            /// </summary>
+            /// <since_tizen> 5 </since_tizen>
+            /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
+            [EditorBrowsable(EditorBrowsableState.Never)]
             public PanGesture PanGesture
             {
                 get
@@ -109,7 +133,11 @@ namespace Tizen.NUI
         private DaliEventHandler<object, DetectedEventArgs> _panGestureEventHandler;
         private DetectedCallbackDelegate _panGestureCallbackDelegate;
 
-
+        /// <summary>
+        /// This signal is emitted when the specified pan is detected on the attached view.
+        /// </summary>
+        /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
+        [EditorBrowsable(EditorBrowsableState.Never)]
         public event DaliEventHandler<object, DetectedEventArgs> Detected
         {
             add
@@ -157,20 +185,17 @@ namespace Tizen.NUI
 
         }
 
-
-        public static PanGestureDetector GetPanGestureDetectorFromPtr(global::System.IntPtr cPtr)
+        internal static PanGestureDetector GetPanGestureDetectorFromPtr(global::System.IntPtr cPtr)
         {
             PanGestureDetector ret = new PanGestureDetector(cPtr, false);
             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
             return ret;
         }
 
-
-        /// <since_tizen> 3 </since_tizen>
-        public class Property : global::System.IDisposable
+        internal class Property : global::System.IDisposable
         {
             private global::System.Runtime.InteropServices.HandleRef swigCPtr;
-            /// <since_tizen> 3 </since_tizen>
+
             protected bool swigCMemOwn;
 
             internal Property(global::System.IntPtr cPtr, bool cMemoryOwn)
@@ -187,7 +212,7 @@ namespace Tizen.NUI
             //A Flag to check who called Dispose(). (By User or DisposeQueue)
             private bool isDisposeQueued = false;
             //A Flat to check if it is already disposed.
-            /// <since_tizen> 3 </since_tizen>
+
             protected bool disposed = false;
 
 
@@ -200,7 +225,7 @@ namespace Tizen.NUI
                 }
             }
 
-            /// <since_tizen> 3 </since_tizen>
+
             public void Dispose()
             {
                 //Throw excpetion if Dispose() is called in separate thread.
@@ -220,7 +245,7 @@ namespace Tizen.NUI
                 }
             }
 
-            /// <since_tizen> 3 </since_tizen>
+
             protected virtual void Dispose(DisposeTypes type)
             {
                 if (disposed)
@@ -253,30 +278,35 @@ namespace Tizen.NUI
                 disposed = true;
             }
 
-            /// <since_tizen> 3 </since_tizen>
+
             public Property() : this(NDalicPINVOKE.new_PanGestureDetector_Property(), true)
             {
                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
             }
 
-            /// <since_tizen> 3 </since_tizen>
+
             public static readonly int SCREEN_POSITION = NDalicPINVOKE.PanGestureDetector_Property_SCREEN_POSITION_get();
-            /// <since_tizen> 3 </since_tizen>
+
             public static readonly int SCREEN_DISPLACEMENT = NDalicPINVOKE.PanGestureDetector_Property_SCREEN_DISPLACEMENT_get();
-            /// <since_tizen> 3 </since_tizen>
+
             public static readonly int SCREEN_VELOCITY = NDalicPINVOKE.PanGestureDetector_Property_SCREEN_VELOCITY_get();
-            /// <since_tizen> 3 </since_tizen>
+
             public static readonly int LOCAL_POSITION = NDalicPINVOKE.PanGestureDetector_Property_LOCAL_POSITION_get();
-            /// <since_tizen> 3 </since_tizen>
+
             public static readonly int LOCAL_DISPLACEMENT = NDalicPINVOKE.PanGestureDetector_Property_LOCAL_DISPLACEMENT_get();
-            /// <since_tizen> 3 </since_tizen>
+
             public static readonly int LOCAL_VELOCITY = NDalicPINVOKE.PanGestureDetector_Property_LOCAL_VELOCITY_get();
-            /// <since_tizen> 3 </since_tizen>
+
             public static readonly int PANNING = NDalicPINVOKE.PanGestureDetector_Property_PANNING_get();
 
         }
 
-        public static Radian DIRECTION_LEFT
+        /// <summary>
+        /// For a left pan (-PI Radians).
+        /// </summary>
+        /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
+        [EditorBrowsable(EditorBrowsableState.Never)]
+        public static Radian DirectionLeft
         {
             get
             {
@@ -287,7 +317,12 @@ namespace Tizen.NUI
             }
         }
 
-        public static Radian DIRECTION_RIGHT
+        /// <summary>
+        /// For a right pan (0 Radians).
+        /// </summary>
+        /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
+        [EditorBrowsable(EditorBrowsableState.Never)]
+        public static Radian DirectionRight
         {
             get
             {
@@ -298,7 +333,12 @@ namespace Tizen.NUI
             }
         }
 
-        public static Radian DIRECTION_UP
+        /// <summary>
+        /// For an up pan (-0.5 * PI Radians).
+        /// </summary>
+        /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
+        [EditorBrowsable(EditorBrowsableState.Never)]
+        public static Radian DirectionUp
         {
             get
             {
@@ -309,7 +349,12 @@ namespace Tizen.NUI
             }
         }
 
-        public static Radian DIRECTION_DOWN
+        /// <summary>
+        /// For a down pan (0.5 * PI Radians).
+        /// </summary>
+        /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
+        [EditorBrowsable(EditorBrowsableState.Never)]
+        public static Radian DirectionDown
         {
             get
             {
@@ -320,7 +365,12 @@ namespace Tizen.NUI
             }
         }
 
-        public static Radian DIRECTION_HORIZONTAL
+        /// <summary>
+        /// For a left and right pan (PI Radians). Useful for AddDirection().
+        /// </summary>
+        /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
+        [EditorBrowsable(EditorBrowsableState.Never)]
+        public static Radian DirectionHorizontal
         {
             get
             {
@@ -331,7 +381,12 @@ namespace Tizen.NUI
             }
         }
 
-        public static Radian DIRECTION_VERTICAL
+        /// <summary>
+        /// For an up and down pan (-0.5 * PI Radians). Useful for AddDirection().
+        /// </summary>
+        /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
+        [EditorBrowsable(EditorBrowsableState.Never)]
+        public static Radian DirectionVertical
         {
             get
             {
@@ -342,7 +397,12 @@ namespace Tizen.NUI
             }
         }
 
-        public static Radian DEFAULT_THRESHOLD
+        /// <summary>
+        /// The default threshold is PI * 0.25 radians (or 45 degrees).
+        /// </summary>
+        /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
+        [EditorBrowsable(EditorBrowsableState.Never)]
+        public static Radian DefaultThreshold
         {
             get
             {
@@ -353,42 +413,72 @@ namespace Tizen.NUI
             }
         }
 
+        /// <summary>
+        /// Creates an initialized PanGestureDetector.
+        /// </summary>
+        /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
+        [EditorBrowsable(EditorBrowsableState.Never)]
         public PanGestureDetector() : this(NDalicPINVOKE.PanGestureDetector_New(), true)
         {
             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
 
         }
-        public new static PanGestureDetector DownCast(BaseHandle handle)
+
+        internal new static PanGestureDetector DownCast(BaseHandle handle)
         {
             PanGestureDetector ret =  Registry.GetManagedBaseHandleFromNativePtr(handle) as PanGestureDetector;
             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
             return ret;
         }
 
+        /// <summary>
+        /// The copy constructor.
+        /// </summary>
+        /// <param name="handle">A reference to the copied handle</param>
+        /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
+        [EditorBrowsable(EditorBrowsableState.Never)]
         public PanGestureDetector(PanGestureDetector handle) : this(NDalicPINVOKE.new_PanGestureDetector__SWIG_1(PanGestureDetector.getCPtr(handle)), true)
         {
             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
         }
 
-        public PanGestureDetector Assign(PanGestureDetector rhs)
+        internal PanGestureDetector Assign(PanGestureDetector rhs)
         {
             PanGestureDetector ret = new PanGestureDetector(NDalicPINVOKE.PanGestureDetector_Assign(swigCPtr, PanGestureDetector.getCPtr(rhs)), false);
             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
             return ret;
         }
 
+        /// <summary>
+        /// This is the minimum number of touches required for the pan gesture to be detected.
+        /// </summary>
+        /// <param name="minimum">Minimum touches required</param>
+        /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
+        [EditorBrowsable(EditorBrowsableState.Never)]
         public void SetMinimumTouchesRequired(uint minimum)
         {
             NDalicPINVOKE.PanGestureDetector_SetMinimumTouchesRequired(swigCPtr, minimum);
             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
         }
 
+        /// <summary>
+        /// This is the maximum number of touches required for the pan gesture to be detected.
+        /// </summary>
+        /// <param name="maximum">Maximum touches required</param>
+        /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
+        [EditorBrowsable(EditorBrowsableState.Never)]
         public void SetMaximumTouchesRequired(uint maximum)
         {
             NDalicPINVOKE.PanGestureDetector_SetMaximumTouchesRequired(swigCPtr, maximum);
             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
         }
 
+        /// <summary>
+        /// Retrieves the minimum number of touches required for the pan gesture to be detected.
+        /// </summary>
+        /// <returns>The minimum touches required</returns>
+        /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
+        [EditorBrowsable(EditorBrowsableState.Never)]
         public uint GetMinimumTouchesRequired()
         {
             uint ret = NDalicPINVOKE.PanGestureDetector_GetMinimumTouchesRequired(swigCPtr);
@@ -396,6 +486,12 @@ namespace Tizen.NUI
             return ret;
         }
 
+        /// <summary>
+        /// Retrieves the maximum number of touches required for the pan gesture to be detected.
+        /// </summary>
+        /// <returns>The maximum touches required</returns>
+        /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
+        [EditorBrowsable(EditorBrowsableState.Never)]
         public uint GetMaximumTouchesRequired()
         {
             uint ret = NDalicPINVOKE.PanGestureDetector_GetMaximumTouchesRequired(swigCPtr);
@@ -403,30 +499,70 @@ namespace Tizen.NUI
             return ret;
         }
 
+        /// <summary>
+        /// The pan gesture is only emitted if the pan occurs in the direction specified by this method with a +/- threshold allowance.<br />
+        /// If an angle of 0.0 degrees is specified and the threshold is 45 degrees then the acceptable direction range is from -45 to 45 degrees.<br />
+        /// The angle added using this API is only checked when the gesture first starts, after that, this detector will emit the gesture regardless of what angle the pan is moving.
+        /// The user can add as many angles as they require.
+        /// </summary>
+        /// <param name="angle">The angle that pan should be allowed</param>
+        /// <param name="threshold">The threshold around that angle</param>
+        /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
+        [EditorBrowsable(EditorBrowsableState.Never)]
         public void AddAngle(Radian angle, Radian threshold)
         {
             NDalicPINVOKE.PanGestureDetector_AddAngle__SWIG_0(swigCPtr, Radian.getCPtr(angle), Radian.getCPtr(threshold));
             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
         }
 
+        /// <summary>
+        /// The pan gesture is only emitted if the pan occurs in the direction specified by this method with a +/- threshold allowance. The default threshold (PI * 0.25) is used.<br />
+        /// The angle added using this API is only checked when the gesture first starts, after that, this detector will emit the gesture regardless of what angle the pan is moving.<br />
+        /// The user can add as many angles as they require.<br />
+        /// </summary>
+        /// <param name="angle">The angle that pan should be allowed</param>
+        /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
+        [EditorBrowsable(EditorBrowsableState.Never)]
         public void AddAngle(Radian angle)
         {
             NDalicPINVOKE.PanGestureDetector_AddAngle__SWIG_1(swigCPtr, Radian.getCPtr(angle));
             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
         }
 
+        /// <summary>
+        /// A helper method for adding bi-directional angles where the pan should take place.<br />
+        /// In other words, if 0 is requested, then PI will also be added so that we have both left and right scrolling.<br />
+        /// </summary>
+        /// <param name="direction">The direction of panning required</param>
+        /// <param name="threshold">The threshold</param>
+        /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
+        [EditorBrowsable(EditorBrowsableState.Never)]
         public void AddDirection(Radian direction, Radian threshold)
         {
             NDalicPINVOKE.PanGestureDetector_AddDirection__SWIG_0(swigCPtr, Radian.getCPtr(direction), Radian.getCPtr(threshold));
             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
         }
 
+        /// <summary>
+        /// A helper method for adding bi-directional angles where the pan should take place.
+        /// In other words, if 0 is requested, then PI will also be added so that we have both left and right scrolling.<br />
+        /// The default threshold (PI * 0.25) is used.
+        /// </summary>
+        /// <param name="direction">The direction of panning required</param>
+        /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
+        [EditorBrowsable(EditorBrowsableState.Never)]
         public void AddDirection(Radian direction)
         {
             NDalicPINVOKE.PanGestureDetector_AddDirection__SWIG_1(swigCPtr, Radian.getCPtr(direction));
             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
         }
 
+        /// <summary>
+        /// Returns the count of angles that this pan gesture detector emits a signal.
+        /// </summary>
+        /// <returns>The gesture detector has been initialized.</returns>
+        /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
+        [EditorBrowsable(EditorBrowsableState.Never)]
         public uint GetAngleCount()
         {
             uint ret = NDalicPINVOKE.PanGestureDetector_GetAngleCount(swigCPtr);
@@ -441,18 +577,35 @@ namespace Tizen.NUI
             return ret;
         }
 
+        /// <summary>
+        /// Clears any directional angles that are used by the gesture detector.
+        /// </summary>
+        /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
+        [EditorBrowsable(EditorBrowsableState.Never)]
         public void ClearAngles()
         {
             NDalicPINVOKE.PanGestureDetector_ClearAngles(swigCPtr);
             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
         }
 
+        /// <summary>
+        /// Removes the angle specified from the container. This will only remove the first instance of the angle found from the container.
+        /// </summary>
+        /// <param name="angle">The angle to remove</param>
+        /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
+        [EditorBrowsable(EditorBrowsableState.Never)]
         public void RemoveAngle(Radian angle)
         {
             NDalicPINVOKE.PanGestureDetector_RemoveAngle(swigCPtr, Radian.getCPtr(angle));
             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
         }
 
+        /// <summary>
+        /// Removes the two angles that make up the direction from the container.
+        /// </summary>
+        /// <param name="direction">The direction to remove</param>
+        /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
+        [EditorBrowsable(EditorBrowsableState.Never)]
         public void RemoveDirection(Radian direction)
         {
             NDalicPINVOKE.PanGestureDetector_RemoveDirection(swigCPtr, Radian.getCPtr(direction));
@@ -466,12 +619,23 @@ namespace Tizen.NUI
             return ret;
         }
 
+        /// <summary>
+        /// Allows setting of the pan properties that are returned in constraints.
+        /// </summary>
+        /// <param name="pan">The pan gesture to set</param>
+        /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
+        [EditorBrowsable(EditorBrowsableState.Never)]
         public static void SetPanGestureProperties(PanGesture pan)
         {
             NDalicPINVOKE.PanGestureDetector_SetPanGestureProperties(PanGesture.getCPtr(pan));
             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
         }
 
+        /// <summary>
+        /// Retrieves the screen position.
+        /// </summary>
+        /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
+        [EditorBrowsable(EditorBrowsableState.Never)]
         public Vector2 ScreenPosition
         {
             get
@@ -481,6 +645,12 @@ namespace Tizen.NUI
                 return temp;
             }
         }
+
+        /// <summary>
+        /// Retrieves the screen displacement.
+        /// </summary>
+        /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
+        [EditorBrowsable(EditorBrowsableState.Never)]
         public Vector2 ScreenDisplacement
         {
             get
@@ -490,6 +660,12 @@ namespace Tizen.NUI
                 return temp;
             }
         }
+
+        /// <summary>
+        /// Retrieves the screen velocity.
+        /// </summary>
+        /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
+        [EditorBrowsable(EditorBrowsableState.Never)]
         public Vector2 ScreenVelocity
         {
             get
@@ -499,6 +675,12 @@ namespace Tizen.NUI
                 return temp;
             }
         }
+
+        /// <summary>
+        /// Retrieves the local position.
+        /// </summary>
+        /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
+        [EditorBrowsable(EditorBrowsableState.Never)]
         public Vector2 LocalPosition
         {
             get
@@ -508,6 +690,12 @@ namespace Tizen.NUI
                 return temp;
             }
         }
+
+        /// <summary>
+        /// Retrieves the local displacement
+        /// </summary>
+        /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
+        [EditorBrowsable(EditorBrowsableState.Never)]
         public Vector2 LocalDisplacement
         {
             get
@@ -517,6 +705,12 @@ namespace Tizen.NUI
                 return temp;
             }
         }
+
+        /// <summary>
+        /// Retrieves the local velocity.
+        /// </summary>
+        /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
+        [EditorBrowsable(EditorBrowsableState.Never)]
         public Vector2 LocalVelocity
         {
             get
@@ -526,6 +720,12 @@ namespace Tizen.NUI
                 return temp;
             }
         }
+
+        /// <summary>
+        /// Retrieves the panning flag.
+        /// </summary>
+        /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
+        [EditorBrowsable(EditorBrowsableState.Never)]
         public bool Panning
         {
             get
similarity index 69%
rename from src/Tizen.NUI/src/internal/PinchGestureDetector.cs
rename to src/Tizen.NUI/src/public/PinchGestureDetector.cs
index 76961f7..719e6fc 100755 (executable)
@@ -1,5 +1,5 @@
 /*
- * Copyright(c) 2017 Samsung Electronics Co., Ltd.
+ * Copyright(c) 2018 Samsung Electronics Co., Ltd.
  *
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
  * limitations under the License.
  *
  */
+using System;
+using System.Runtime.InteropServices;
+using Tizen.NUI.BaseComponents;
+using System.ComponentModel;
 
 namespace Tizen.NUI
 {
-
-    using System;
-    using System.Runtime.InteropServices;
-    using Tizen.NUI.BaseComponents;
-
-
-    internal class PinchGestureDetector : GestureDetector
+    /// <summary>
+    /// It tries to detect when the user moves two touch points towards or away from each other.
+    /// </summary>
+    /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
+    [EditorBrowsable(EditorBrowsableState.Never)]
+    public class PinchGestureDetector : GestureDetector
     {
         private global::System.Runtime.InteropServices.HandleRef swigCPtr;
 
@@ -37,7 +40,12 @@ namespace Tizen.NUI
             return (obj == null) ? new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero) : obj.swigCPtr;
         }
 
-
+        /// <summary>
+        /// Dispose.
+        /// </summary>
+        /// <param name="type">The dispose type</param>
+        /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
+        [EditorBrowsable(EditorBrowsableState.Never)]
         protected override void Dispose(DisposeTypes type)
         {
             if (disposed)
@@ -71,14 +79,23 @@ namespace Tizen.NUI
             base.Dispose(type);
         }
 
-
-        /// <since_tizen> 3 </since_tizen>
+        /// <summary>
+        /// Event arguments that passed via the PinchGestureEvent signal.
+        /// </summary>
+        /// <since_tizen> 5 </since_tizen>
+        /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
+        [EditorBrowsable(EditorBrowsableState.Never)]
         public class DetectedEventArgs : EventArgs
         {
             private View _view;
             private PinchGesture _pinchGesture;
 
-            /// <since_tizen> 3 </since_tizen>
+            /// <summary>
+            /// The attached view.
+            /// </summary>
+            /// <since_tizen> 5 </since_tizen>
+            /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
+            [EditorBrowsable(EditorBrowsableState.Never)]
             public View View
             {
                 get
@@ -91,7 +108,12 @@ namespace Tizen.NUI
                 }
             }
 
-            /// <since_tizen> 3 </since_tizen>
+            /// <summary>
+            /// The PinchGesture.
+            /// </summary>
+            /// <since_tizen> 5 </since_tizen>
+            /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
+            [EditorBrowsable(EditorBrowsableState.Never)]
             public PinchGesture PinchGesture
             {
                 get
@@ -110,7 +132,11 @@ namespace Tizen.NUI
         private DaliEventHandler<object, DetectedEventArgs> _pinchGestureEventHandler;
         private DetectedCallbackDelegate _pinchGestureCallbackDelegate;
 
-
+        /// <summary>
+        /// This signal is emitted when the specified pinch is detected on the attached view.
+        /// </summary>
+        /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
+        [EditorBrowsable(EditorBrowsableState.Never)]
         public event DaliEventHandler<object, DetectedEventArgs> Detected
         {
             add
@@ -159,32 +185,43 @@ namespace Tizen.NUI
         }
 
 
-        public static PinchGestureDetector GetPinchGestureDetectorFromPtr(global::System.IntPtr cPtr)
+        internal static PinchGestureDetector GetPinchGestureDetectorFromPtr(global::System.IntPtr cPtr)
         {
             PinchGestureDetector ret = new PinchGestureDetector(cPtr, false);
             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
             return ret;
         }
 
-
+        /// <summary>
+        /// Creates an initialized PinchGestureDetector.
+        /// </summary>
+        /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
+        [EditorBrowsable(EditorBrowsableState.Never)]
         public PinchGestureDetector() : this(NDalicPINVOKE.PinchGestureDetector_New(), true)
         {
             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
 
         }
-        public new static PinchGestureDetector DownCast(BaseHandle handle)
+
+        internal new static PinchGestureDetector DownCast(BaseHandle handle)
         {
             PinchGestureDetector ret =  Registry.GetManagedBaseHandleFromNativePtr(handle) as PinchGestureDetector;
             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
             return ret;
         }
 
+        /// <summary>
+        /// The copy constructor.
+        /// </summary>
+        /// <param name="handle">A reference to the copied handle</param>
+        /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
+        [EditorBrowsable(EditorBrowsableState.Never)]
         public PinchGestureDetector(PinchGestureDetector handle) : this(NDalicPINVOKE.new_PinchGestureDetector__SWIG_1(PinchGestureDetector.getCPtr(handle)), true)
         {
             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
         }
 
-        public PinchGestureDetector Assign(PinchGestureDetector rhs)
+        internal PinchGestureDetector Assign(PinchGestureDetector rhs)
         {
             PinchGestureDetector ret = new PinchGestureDetector(NDalicPINVOKE.PinchGestureDetector_Assign(swigCPtr, PinchGestureDetector.getCPtr(rhs)), false);
             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
index d334486..d8f381d 100755 (executable)
@@ -1423,7 +1423,9 @@ namespace Tizen.NUI
         /// Retrieves a Size value.
         /// </summary>
         /// <param name="vectorValue"> On return, a size value.</param>
-        internal bool Get(Size vectorValue)
+        /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
+        [EditorBrowsable(EditorBrowsableState.Never)]
+        public bool Get(Size vectorValue)
         {
             bool ret = NDalicPINVOKE.Property_Value_Get__SWIG_6(swigCPtr, Size.getCPtr(vectorValue));
             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
@@ -1723,6 +1725,51 @@ namespace Tizen.NUI
             return ret;
         }
 
+        /// <summary>
+        /// Retrieves a vector value.
+        /// </summary>
+        /// <param name="vectorValue">On return, a vector value.</param>
+        /// <returns>Returns true if the value is successfully retrieved, false if the type is not convertible.</returns>
+        /// <since_tizen> 5 </since_tizen>
+        /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
+        [EditorBrowsable(EditorBrowsableState.Never)]
+        public bool Get(RelativeVector2 vectorValue)
+        {
+            bool ret = NDalicPINVOKE.Property_Value_Get__SWIG_5(swigCPtr, RelativeVector2.getCPtr(vectorValue));
+            if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
+            return ret;
+        }
+
+        /// <summary>
+        /// Retrieves a vector value.
+        /// </summary>
+        /// <param name="vectorValue">On return, a vector value.</param>
+        /// <returns>Returns true if the value is successfully retrieved, false if the type is not convertible.</returns>
+        /// <since_tizen> 5 </since_tizen>
+        /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
+        [EditorBrowsable(EditorBrowsableState.Never)]
+        public bool Get(RelativeVector3 vectorValue)
+        {
+            bool ret = NDalicPINVOKE.Property_Value_Get__SWIG_6(swigCPtr, RelativeVector3.getCPtr(vectorValue));
+            if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
+            return ret;
+        }
+
+        /// <summary>
+        /// Retrieves a vector value.
+        /// </summary>
+        /// <param name="vectorValue">On return, a vector value.</param>
+        /// <returns>Returns true if the value is successfully retrieved, false if the type is not convertible.</returns>
+        /// <since_tizen> 5 </since_tizen>
+        /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
+        [EditorBrowsable(EditorBrowsableState.Never)]
+        public bool Get(RelativeVector4 vectorValue)
+        {
+            bool ret = NDalicPINVOKE.Property_Value_Get__SWIG_7(swigCPtr, RelativeVector4.getCPtr(vectorValue));
+            if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
+            return ret;
+        }
+
         internal bool Get(Matrix3 matrixValue)
         {
             bool ret = NDalicPINVOKE.Property_Value_Get__SWIG_8(swigCPtr, Matrix3.getCPtr(matrixValue));
@@ -1872,13 +1919,11 @@ namespace Tizen.NUI
                 {
                     KeyInt = (int)value;
                 }
-                if (value is string)
+                else if (value is string)
                 {
                     KeyString = value.ToString();
                 }
-
-
-                if (value.GetType().Equals(typeof(int)) || value.GetType().Equals(typeof(Int32)))
+                else if (value.GetType().Equals(typeof(int)) || value.GetType().Equals(typeof(Int32)))
                 {
                     KeyInt = (int)value;
                 }
@@ -1886,7 +1931,6 @@ namespace Tizen.NUI
                 {
                     KeyString = value.ToString();
                 }
-                KeyInt = (int)value;
             }
         }
 
similarity index 61%
rename from src/Tizen.NUI/src/internal/TapGestureDetector.cs
rename to src/Tizen.NUI/src/public/TapGestureDetector.cs
index e5248e5..f4c85d5 100755 (executable)
@@ -1,5 +1,5 @@
 /*
- * Copyright(c) 2017 Samsung Electronics Co., Ltd.
+ * Copyright(c) 2018 Samsung Electronics Co., Ltd.
  *
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
  * limitations under the License.
  *
  */
+using System;
+using System.Runtime.InteropServices;
+using Tizen.NUI.BaseComponents;
+using System.ComponentModel;
 
 namespace Tizen.NUI
 {
 
-    using System;
-    using System.Runtime.InteropServices;
-    using Tizen.NUI.BaseComponents;
-
-    internal class TapGestureDetector : GestureDetector
+    /// <summary>
+    /// This class emits a signal when a tap gesture occurs that meets the requirements set by the application.<br />
+    /// A TapGesture is a discrete gesture, which means it does not have any state information attached.<br />
+    /// </summary>
+    /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
+    [EditorBrowsable(EditorBrowsableState.Never)]
+    public class TapGestureDetector : GestureDetector
     {
         private global::System.Runtime.InteropServices.HandleRef swigCPtr;
 
@@ -36,6 +42,12 @@ namespace Tizen.NUI
             return (obj == null) ? new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero) : obj.swigCPtr;
         }
 
+        /// <summary>
+        /// Dispose.
+        /// </summary>
+        /// <param name="type">The dispose type</param>
+        /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
+        [EditorBrowsable(EditorBrowsableState.Never)]
         protected override void Dispose(DisposeTypes type)
         {
             if (disposed)
@@ -68,14 +80,23 @@ namespace Tizen.NUI
             base.Dispose(type);
         }
 
-
-        /// <since_tizen> 3 </since_tizen>
+        /// <summary>
+        /// Event arguments that passed via the TapGestureEvent signal.
+        /// </summary>
+        /// <since_tizen> 5 </since_tizen>
+        /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
+        [EditorBrowsable(EditorBrowsableState.Never)]
         public class DetectedEventArgs : EventArgs
         {
             private View _view;
             private TapGesture _tapGesture;
 
-            /// <since_tizen> 3 </since_tizen>
+            /// <summary>
+            /// The attached view.
+            /// </summary>
+            /// <since_tizen> 5 </since_tizen>
+            /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
+            [EditorBrowsable(EditorBrowsableState.Never)]
             public View View
             {
                 get
@@ -88,7 +109,12 @@ namespace Tizen.NUI
                 }
             }
 
-            /// <since_tizen> 3 </since_tizen>
+            /// <summary>
+            /// The TapGesture.
+            /// </summary>
+            /// <since_tizen> 5 </since_tizen>
+            /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
+            [EditorBrowsable(EditorBrowsableState.Never)]
             public TapGesture TapGesture
             {
                 get
@@ -107,7 +133,11 @@ namespace Tizen.NUI
         private DaliEventHandler<object, DetectedEventArgs> _tapGestureEventHandler;
         private DetectedCallbackDelegate _tapGestureCallbackDelegate;
 
-
+        /// <summary>
+        /// This signal is emitted when the specified tap is detected on the attached view.
+        /// </summary>
+        /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
+        [EditorBrowsable(EditorBrowsableState.Never)]
         public event DaliEventHandler<object, DetectedEventArgs> Detected
         {
             add
@@ -155,56 +185,93 @@ namespace Tizen.NUI
 
         }
 
-
-        public static TapGestureDetector GetTapGestureDetectorFromPtr(global::System.IntPtr cPtr)
+        internal static TapGestureDetector GetTapGestureDetectorFromPtr(global::System.IntPtr cPtr)
         {
             TapGestureDetector ret = new TapGestureDetector(cPtr, false);
             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
             return ret;
         }
 
-
+        /// <summary>
+        /// Creates an initialized TapGestureDetector.
+        /// </summary>
+        /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
+        [EditorBrowsable(EditorBrowsableState.Never)]
         public TapGestureDetector() : this(NDalicPINVOKE.TapGestureDetector_New__SWIG_0(), true)
         {
             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
 
         }
+
+        /// <summary>
+        /// Creates an initialized TapGestureDetector with the specified parameters.
+        /// </summary>
+        /// <param name="tapsRequired">The minimum & maximum number of taps required</param>
+        /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
+        [EditorBrowsable(EditorBrowsableState.Never)]
         public TapGestureDetector(uint tapsRequired) : this(NDalicPINVOKE.TapGestureDetector_New__SWIG_1(tapsRequired), true)
         {
             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
 
         }
-        public new static TapGestureDetector DownCast(BaseHandle handle)
+
+        internal new static TapGestureDetector DownCast(BaseHandle handle)
         {
             TapGestureDetector ret =  Registry.GetManagedBaseHandleFromNativePtr(handle) as TapGestureDetector;
             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
             return ret;
         }
 
+        /// <summary>
+        /// The copy constructor.
+        /// </summary>
+        /// <param name="handle">A reference to the copied handle</param>
+        /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
+        [EditorBrowsable(EditorBrowsableState.Never)]
         public TapGestureDetector(TapGestureDetector handle) : this(NDalicPINVOKE.new_TapGestureDetector__SWIG_1(TapGestureDetector.getCPtr(handle)), true)
         {
             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
         }
 
-        public TapGestureDetector Assign(TapGestureDetector rhs)
+        internal TapGestureDetector Assign(TapGestureDetector rhs)
         {
             TapGestureDetector ret = new TapGestureDetector(NDalicPINVOKE.TapGestureDetector_Assign(swigCPtr, TapGestureDetector.getCPtr(rhs)), false);
             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
             return ret;
         }
 
+        /// <summary>
+        /// Sets the minimum number of taps required. The tap count is the number of times a user should "tap" the screen.<br />
+        /// The default is 1.<br />
+        /// </summary>
+        /// <param name="minimumTaps">The minimum taps required</param>
+        /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
+        [EditorBrowsable(EditorBrowsableState.Never)]
         public void SetMinimumTapsRequired(uint minimumTaps)
         {
             NDalicPINVOKE.TapGestureDetector_SetMinimumTapsRequired(swigCPtr, minimumTaps);
             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
         }
 
+        /// <summary>
+        /// Sets the maximum number of taps required. The tap count is the number of times a user should "tap" the screen.<br />
+        /// The default is 1.<br />
+        /// </summary>
+        /// <param name="maximumTaps">The maximum taps required</param>
+        /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
+        [EditorBrowsable(EditorBrowsableState.Never)]
         public void SetMaximumTapsRequired(uint maximumTaps)
         {
             NDalicPINVOKE.TapGestureDetector_SetMaximumTapsRequired(swigCPtr, maximumTaps);
             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
         }
 
+        /// <summary>
+        /// Retrieves the minimum number of taps required.
+        /// </summary>
+        /// <returns>The minimum taps required</returns>
+        /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
+        [EditorBrowsable(EditorBrowsableState.Never)]
         public uint GetMinimumTapsRequired()
         {
             uint ret = NDalicPINVOKE.TapGestureDetector_GetMinimumTapsRequired(swigCPtr);
@@ -212,6 +279,12 @@ namespace Tizen.NUI
             return ret;
         }
 
+        /// <summary>
+        /// Retrieves the maximum number of taps required.
+        /// </summary>
+        /// <returns>The maximum taps required</returns>
+        /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
+        [EditorBrowsable(EditorBrowsableState.Never)]
         public uint GetMaximumTapsRequired()
         {
             uint ret = NDalicPINVOKE.TapGestureDetector_GetMaximumTapsRequired(swigCPtr);
index 59eef13..73f0e3c 100755 (executable)
@@ -38,7 +38,6 @@ namespace Tizen.NUI.UIComponents
             {
                 Tizen.NUI.Object.SetProperty(slider.swigCPtr, Slider.Property.LOWER_BOUND, new Tizen.NUI.PropertyValue((float)newValue));
             }
-            Console.WriteLine("Slider LowerBoundProperty changed: oldValue: " + oldValue + ", newValue: " + newValue);
         },
         defaultValueCreator:(bindable) =>
         {
@@ -56,7 +55,6 @@ namespace Tizen.NUI.UIComponents
             {
                 Tizen.NUI.Object.SetProperty(slider.swigCPtr, Slider.Property.UPPER_BOUND, new Tizen.NUI.PropertyValue((float)newValue));
             }
-            Console.WriteLine("Slider UpperBoundProperty changed: oldValue: " + oldValue + ", newValue: " + newValue);
         },
         defaultValueCreator:(bindable) =>
         {
@@ -70,7 +68,6 @@ namespace Tizen.NUI.UIComponents
         public static readonly BindableProperty ValueProperty = BindableProperty.Create("Value", typeof(float), typeof(Slider), default(float), BindingMode.TwoWay, propertyChanged: (bindable, oldValue, newValue) =>
         {
             var slider = (Slider)bindable;
-            Console.WriteLine("Slider ValueProperty Changed: oldValue: " + oldValue + ", newValue: " + newValue);
             if (newValue != null)
             {
                 Tizen.NUI.Object.SetProperty(slider.swigCPtr, Slider.Property.VALUE, new Tizen.NUI.PropertyValue((float)newValue));
@@ -92,7 +89,6 @@ namespace Tizen.NUI.UIComponents
             {
                 Tizen.NUI.Object.SetProperty(slider.swigCPtr, Slider.Property.TRACK_VISUAL, new Tizen.NUI.PropertyValue((PropertyMap)newValue));
             }
-            Console.WriteLine("Slider TrackVisualProperty changed: oldValue: " + oldValue + ", newValue: " + newValue);
         },
         defaultValueCreator:(bindable) =>
         {
@@ -110,7 +106,6 @@ namespace Tizen.NUI.UIComponents
             {
                 Tizen.NUI.Object.SetProperty(slider.swigCPtr, Slider.Property.HANDLE_VISUAL, new Tizen.NUI.PropertyValue((PropertyMap)newValue));
             }
-            Console.WriteLine("Slider HandleVisualProperty changed: oldValue: " + oldValue + ", newValue: " + newValue);
         },
         defaultValueCreator:(bindable) =>
         {
@@ -128,7 +123,6 @@ namespace Tizen.NUI.UIComponents
             {
                 Tizen.NUI.Object.SetProperty(slider.swigCPtr, Slider.Property.PROGRESS_VISUAL, new Tizen.NUI.PropertyValue((PropertyMap)newValue));
             }
-            Console.WriteLine("Slider ProgressVisualProperty changed: oldValue: " + oldValue + ", newValue: " + newValue);
         },
         defaultValueCreator:(bindable) =>
         {
@@ -146,7 +140,6 @@ namespace Tizen.NUI.UIComponents
             {
                 Tizen.NUI.Object.SetProperty(slider.swigCPtr, Slider.Property.POPUP_VISUAL, new Tizen.NUI.PropertyValue((PropertyMap)newValue));
             }
-            Console.WriteLine("Slider PopupVisualProperty changed: oldValue: " + oldValue + ", newValue: " + newValue);
         },
         defaultValueCreator:(bindable) =>
         {
@@ -164,7 +157,6 @@ namespace Tizen.NUI.UIComponents
             {
                 Tizen.NUI.Object.SetProperty(slider.swigCPtr, Slider.Property.POPUP_ARROW_VISUAL, new Tizen.NUI.PropertyValue((PropertyMap)newValue));
             }
-            Console.WriteLine("Slider PopupArrowVisualProperty changed: oldValue: " + oldValue + ", newValue: " + newValue);
         },
         defaultValueCreator:(bindable) =>
         {
@@ -182,7 +174,6 @@ namespace Tizen.NUI.UIComponents
             {
                 Tizen.NUI.Object.SetProperty(slider.swigCPtr, Slider.Property.DISABLED_COLOR, new Tizen.NUI.PropertyValue((Vector4)newValue));
             }
-            Console.WriteLine("Slider DisabledColorProperty changed: oldValue: " + oldValue + ", newValue: " + newValue);
         },
         defaultValueCreator:(bindable) =>
         {
@@ -200,7 +191,6 @@ namespace Tizen.NUI.UIComponents
             {
                 Tizen.NUI.Object.SetProperty(slider.swigCPtr, Slider.Property.VALUE_PRECISION, new Tizen.NUI.PropertyValue((int)newValue));
             }
-            Console.WriteLine("Slider ValuePrecisionProperty changed: oldValue: " + oldValue + ", newValue: " + newValue);
         },
         defaultValueCreator:(bindable) =>
         {
@@ -218,7 +208,6 @@ namespace Tizen.NUI.UIComponents
             {
                 Tizen.NUI.Object.SetProperty(slider.swigCPtr, Slider.Property.SHOW_POPUP, new Tizen.NUI.PropertyValue((bool)newValue));
             }
-            Console.WriteLine("Slider ShowPopupProperty changed: oldValue: " + oldValue + ", newValue: " + newValue);
         },
         defaultValueCreator:(bindable) =>
         {
@@ -236,7 +225,6 @@ namespace Tizen.NUI.UIComponents
             {
                 Tizen.NUI.Object.SetProperty(slider.swigCPtr, Slider.Property.SHOW_VALUE, new Tizen.NUI.PropertyValue((bool)newValue));
             }
-            Console.WriteLine("Slider ShowValueProperty changed: oldValue: " + oldValue + ", newValue: " + newValue);
         },
         defaultValueCreator:(bindable) =>
         {
@@ -254,7 +242,6 @@ namespace Tizen.NUI.UIComponents
             {
                 Tizen.NUI.Object.SetProperty(slider.swigCPtr, Slider.Property.MARKS, new Tizen.NUI.PropertyValue((PropertyArray)newValue));
             }
-            Console.WriteLine("Slider MarksPropertyProperty changed: oldValue: " + oldValue + ", newValue: " + newValue);
         },
         defaultValueCreator:(bindable) =>
         {
@@ -272,7 +259,6 @@ namespace Tizen.NUI.UIComponents
             {
                 Tizen.NUI.Object.SetProperty(slider.swigCPtr, Slider.Property.MARK_TOLERANCE, new Tizen.NUI.PropertyValue((float)newValue));
             }
-            Console.WriteLine("Slider MarkToleranceProperty changed: oldValue: " + oldValue + ", newValue: " + newValue);
         },
         defaultValueCreator:(bindable) =>
         {
@@ -290,7 +276,6 @@ namespace Tizen.NUI.UIComponents
             {
                 Tizen.NUI.Object.SetProperty(slider.swigCPtr, Slider.Property.SNAP_TO_MARKS, new Tizen.NUI.PropertyValue((bool)newValue));
             }
-            Console.WriteLine("Slider SnapToMarksPropertyProperty changed: oldValue: " + oldValue + ", newValue: " + newValue);
         },
         defaultValueCreator:(bindable) =>
         {
index 5d24e1b..09f565c 100755 (executable)
@@ -102,7 +102,9 @@ namespace Tizen.NUI.Binding
         /// </summary>
         /// <param name="property">The BindableProperty for which to get the value.</param>
         /// <returns>The value that is contained the BindableProperty</returns>
-        internal object GetValue(BindableProperty property)
+        /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
+        [EditorBrowsable(EditorBrowsableState.Never)]
+        public object GetValue(BindableProperty property)
         {
             if (property == null)
                 throw new ArgumentNullException("property");
@@ -166,7 +168,9 @@ namespace Tizen.NUI.Binding
         /// </summary>
         /// <param name="property">The BindableProperty on which to assign a value.</param>
         /// <param name="value">The value to set.</param>
-        internal void SetValue(BindableProperty property, object value)
+        /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
+        [EditorBrowsable(EditorBrowsableState.Never)]
+        public void SetValue(BindableProperty property, object value)
         {
             if (true == isCreateByXaml)
             {
@@ -202,7 +206,9 @@ namespace Tizen.NUI.Binding
         /// </summary>
         /// <param name="propertyKey">The BindablePropertyKey on which to assign a value.</param>
         /// <param name="value">The value to set.</param>
-        internal void SetValue(BindablePropertyKey propertyKey, object value)
+        /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
+        [EditorBrowsable(EditorBrowsableState.Never)]
+        public void SetValue(BindablePropertyKey propertyKey, object value)
         {
             if (propertyKey == null)
                 throw new ArgumentNullException("propertyKey");