[NUI] Add SlidingStarted event to Slider (#1883)
authorjaeunchoi <35285222+jaeunchoi@users.noreply.github.com>
Thu, 20 Aug 2020 02:12:36 +0000 (11:12 +0900)
committerGitHub <noreply@github.com>
Thu, 20 Aug 2020 02:12:36 +0000 (11:12 +0900)
src/Tizen.NUI.Components/Controls/Slider.Internal.cs
src/Tizen.NUI.Components/Controls/Slider.cs
test/Tizen.NUI.Samples/Tizen.NUI.Samples/Samples/SliderSample.cs

index ae6859b..619eef3 100755 (executable)
@@ -45,6 +45,7 @@ namespace Tizen.NUI.Components
         private EventHandler<ValueChangedArgs> valueChangedHandler;
         private EventHandler<SlidingFinishedArgs> slidingFinishedHandler;
         private EventHandler<SliderValueChangedEventArgs> sliderValueChangedHandler;
+        private EventHandler<SliderSlidingStartedEventArgs> sliderSlidingStartedHandler;
         private EventHandler<SliderSlidingFinishedEventArgs> sliderSlidingFinishedHandler;
         private EventHandler<StateChangedArgs> stateChangedHandler;
 
@@ -181,6 +182,12 @@ namespace Tizen.NUI.Components
                 {
                     currentSlidedOffset = slidedTrackImage.SizeHeight;
                 }
+                if (null != sliderSlidingStartedHandler)
+                {
+                    SliderSlidingStartedEventArgs args = new SliderSlidingStartedEventArgs();
+                    args.CurrentValue = curValue;
+                    sliderSlidingStartedHandler(this, args);
+                }
                 UpdateState(isFocused, true);
             }
 
index 1973c10..c65ea0b 100755 (executable)
@@ -38,6 +38,19 @@ namespace Tizen.NUI.Components
     /// Slider sliding finished event data.
     /// </summary>
     /// <since_tizen> 8 </since_tizen>
+    public class SliderSlidingStartedEventArgs : EventArgs
+    {
+        /// <summary>
+        /// Current Slider value
+        /// </summary>
+        /// <since_tizen> 8 </since_tizen>
+        public float CurrentValue { get; set; }
+    }
+
+    /// <summary>
+    /// Slider sliding finished event data.
+    /// </summary>
+    /// <since_tizen> 8 </since_tizen>
     public class SliderSlidingFinishedEventArgs : EventArgs
     {
         /// <summary>
@@ -184,6 +197,22 @@ namespace Tizen.NUI.Components
         /// The sliding finished event handler.
         /// </summary>
         /// <since_tizen> 8 </since_tizen>
+        public event EventHandler<SliderSlidingStartedEventArgs> SlidingStarted
+        {
+            add
+            {
+                sliderSlidingStartedHandler += value;
+            }
+            remove
+            {
+                sliderSlidingStartedHandler -= value;
+            }
+        }
+
+        /// <summary>
+        /// The sliding finished event handler.
+        /// </summary>
+        /// <since_tizen> 8 </since_tizen>
         public event EventHandler<SliderSlidingFinishedEventArgs> SlidingFinished
         {
             add
index 3a4221a..584f5df 100755 (executable)
@@ -250,6 +250,7 @@ namespace Tizen.NUI.Samples
             source.MaxValue = MAX_VALUE;
             source.StateChangedEvent += OnStateChanged;
             source.ValueChanged += OnValueChanged;
+            source.SlidingStarted += OnSlidingStarted;
             source.SlidingFinished += OnSlidingFinished;
             source.Size = new Size(w, h);
             source.CurrentValue = curValue;
@@ -267,6 +268,7 @@ namespace Tizen.NUI.Samples
             source.MaxValue = MAX_VALUE;
             source.StateChangedEvent += OnStateChanged;
             source.ValueChanged += OnValueChanged;
+            source.SlidingStarted += OnSlidingStarted;
             source.SlidingFinished += OnSlidingFinished;
             source.Size = new Size(w, h);
             source.CurrentValue = curValue;
@@ -289,6 +291,22 @@ namespace Tizen.NUI.Samples
             }
         }
 
+        private void OnSlidingStarted(object sender, SliderSlidingStartedEventArgs args)
+        {
+            Slider source = sender as Slider;
+            if (source != null)
+            {
+                if (source == slider_style[0] || source == slider_style[1] || source == slider_style[2] || source == slider_style[3])
+                {
+                    inforText[1].Text = "Started currentValue = " + args.CurrentValue;
+                }
+                else
+                {
+                    inforText[0].Text = "Started currentValue = " + args.CurrentValue;
+                }
+            }
+        }
+
         private void OnSlidingFinished(object sender, SliderSlidingFinishedEventArgs args)
         {
             Slider source = sender as Slider;