2 * Copyright(c) 2018 Samsung Electronics Co., Ltd.
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
8 * http://www.apache.org/licenses/LICENSE-2.0
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
18 using System.Runtime.InteropServices;
19 using System.ComponentModel;
20 using Tizen.NUI.BaseComponents;
21 using Tizen.NUI.Binding;
22 using Tizen.NUI.Binding.Internals;
24 namespace Tizen.NUI.UIComponents
27 /// The slider is a control to enable sliding an indicator between two values.
29 /// <since_tizen> 3 </since_tizen>
30 /// This will be deprecated
31 [Obsolete("Deprecated in API6; Will be removed in API9. Please use Tizen.NUI.Components")]
32 [EditorBrowsable(EditorBrowsableState.Never)]
33 public class Slider : View
35 /// This will be deprecated
36 [Obsolete("Deprecated in API6; Will be removed in API9. Please use Tizen.NUI.Components")]
37 [EditorBrowsable(EditorBrowsableState.Never)]
38 public static readonly BindableProperty LowerBoundProperty = BindableProperty.Create("LowerBound", typeof(float), typeof(Slider), 0.0f, propertyChanged: (bindable, oldValue, newValue) =>
40 var slider = (Slider)bindable;
43 Tizen.NUI.Object.SetProperty(slider.swigCPtr, Slider.Property.LOWER_BOUND, new Tizen.NUI.PropertyValue((float)newValue));
46 defaultValueCreator:(bindable) =>
48 var slider = (Slider)bindable;
50 Tizen.NUI.Object.GetProperty(slider.swigCPtr, Slider.Property.LOWER_BOUND).Get(out temp);
53 /// This will be deprecated
54 [Obsolete("Deprecated in API6; Will be removed in API9. Please use Tizen.NUI.Components")]
55 [EditorBrowsable(EditorBrowsableState.Never)]
56 public static readonly BindableProperty UpperBoundProperty = BindableProperty.Create("UpperBound", typeof(float), typeof(Slider), 1.0f, propertyChanged: (bindable, oldValue, newValue) =>
58 var slider = (Slider)bindable;
61 Tizen.NUI.Object.SetProperty(slider.swigCPtr, Slider.Property.UPPER_BOUND, new Tizen.NUI.PropertyValue((float)newValue));
64 defaultValueCreator:(bindable) =>
66 var slider = (Slider)bindable;
68 Tizen.NUI.Object.GetProperty(slider.swigCPtr, Slider.Property.UPPER_BOUND).Get(out temp);
71 /// This will be deprecated
72 [Obsolete("Deprecated in API6; Will be removed in API9. Please use Tizen.NUI.Components")]
73 [EditorBrowsable(EditorBrowsableState.Never)]
74 public static readonly BindableProperty ValueProperty = BindableProperty.Create("Value", typeof(float), typeof(Slider), default(float), BindingMode.TwoWay, propertyChanged: (bindable, oldValue, newValue) =>
76 var slider = (Slider)bindable;
79 Tizen.NUI.Object.SetProperty(slider.swigCPtr, Slider.Property.VALUE, new Tizen.NUI.PropertyValue((float)newValue));
82 defaultValueCreator:(bindable) =>
84 var slider = (Slider)bindable;
86 Tizen.NUI.Object.GetProperty(slider.swigCPtr, Slider.Property.VALUE).Get(out temp);
89 /// This will be deprecated
90 [Obsolete("Deprecated in API6; Will be removed in API9. Please use Tizen.NUI.Components")]
91 [EditorBrowsable(EditorBrowsableState.Never)]
92 public static readonly BindableProperty TrackVisualProperty = BindableProperty.Create("TrackVisual", typeof(PropertyMap), typeof(Slider), new PropertyMap(), propertyChanged: (bindable, oldValue, newValue) =>
94 var slider = (Slider)bindable;
97 Tizen.NUI.Object.SetProperty(slider.swigCPtr, Slider.Property.TRACK_VISUAL, new Tizen.NUI.PropertyValue((PropertyMap)newValue));
100 defaultValueCreator:(bindable) =>
102 var slider = (Slider)bindable;
103 PropertyMap temp = new PropertyMap();
104 Tizen.NUI.Object.GetProperty(slider.swigCPtr, Slider.Property.TRACK_VISUAL).Get(temp);
107 /// This will be deprecated
108 [Obsolete("Deprecated in API6; Will be removed in API9. Please use Tizen.NUI.Components")]
109 [EditorBrowsable(EditorBrowsableState.Never)]
110 public static readonly BindableProperty HandleVisualProperty = BindableProperty.Create("HandleVisual", typeof(PropertyMap), typeof(Slider), new PropertyMap(), propertyChanged: (bindable, oldValue, newValue) =>
112 var slider = (Slider)bindable;
113 if (newValue != null)
115 Tizen.NUI.Object.SetProperty(slider.swigCPtr, Slider.Property.HANDLE_VISUAL, new Tizen.NUI.PropertyValue((PropertyMap)newValue));
118 defaultValueCreator:(bindable) =>
120 var slider = (Slider)bindable;
121 PropertyMap temp = new PropertyMap();
122 Tizen.NUI.Object.GetProperty(slider.swigCPtr, Slider.Property.HANDLE_VISUAL).Get(temp);
125 /// This will be deprecated
126 [Obsolete("Deprecated in API6; Will be removed in API9. Please use Tizen.NUI.Components")]
127 [EditorBrowsable(EditorBrowsableState.Never)]
128 public static readonly BindableProperty ProgressVisualProperty = BindableProperty.Create("ProgressVisual", typeof(PropertyMap), typeof(Slider), new PropertyMap(), propertyChanged: (bindable, oldValue, newValue) =>
130 var slider = (Slider)bindable;
131 if (newValue != null)
133 Tizen.NUI.Object.SetProperty(slider.swigCPtr, Slider.Property.PROGRESS_VISUAL, new Tizen.NUI.PropertyValue((PropertyMap)newValue));
136 defaultValueCreator:(bindable) =>
138 var slider = (Slider)bindable;
139 PropertyMap temp = new PropertyMap();
140 Tizen.NUI.Object.GetProperty(slider.swigCPtr, Slider.Property.PROGRESS_VISUAL).Get(temp);
143 /// This will be deprecated
144 [Obsolete("Deprecated in API6; Will be removed in API9. Please use Tizen.NUI.Components")]
145 [EditorBrowsable(EditorBrowsableState.Never)]
146 public static readonly BindableProperty PopupVisualProperty = BindableProperty.Create("PopupVisual", typeof(PropertyMap), typeof(Slider), new PropertyMap(), propertyChanged: (bindable, oldValue, newValue) =>
148 var slider = (Slider)bindable;
149 if (newValue != null)
151 Tizen.NUI.Object.SetProperty(slider.swigCPtr, Slider.Property.POPUP_VISUAL, new Tizen.NUI.PropertyValue((PropertyMap)newValue));
154 defaultValueCreator:(bindable) =>
156 var slider = (Slider)bindable;
157 PropertyMap temp = new PropertyMap();
158 Tizen.NUI.Object.GetProperty(slider.swigCPtr, Slider.Property.POPUP_VISUAL).Get(temp);
161 /// This will be deprecated
162 [Obsolete("Deprecated in API6; Will be removed in API9. Please use Tizen.NUI.Components")]
163 [EditorBrowsable(EditorBrowsableState.Never)]
164 public static readonly BindableProperty PopupArrowVisualProperty = BindableProperty.Create("PopupArrowVisual", typeof(PropertyMap), typeof(Slider), new PropertyMap(), propertyChanged: (bindable, oldValue, newValue) =>
166 var slider = (Slider)bindable;
167 if (newValue != null)
169 Tizen.NUI.Object.SetProperty(slider.swigCPtr, Slider.Property.POPUP_ARROW_VISUAL, new Tizen.NUI.PropertyValue((PropertyMap)newValue));
172 defaultValueCreator:(bindable) =>
174 var slider = (Slider)bindable;
175 PropertyMap temp = new PropertyMap();
176 Tizen.NUI.Object.GetProperty(slider.swigCPtr, Slider.Property.POPUP_ARROW_VISUAL).Get(temp);
179 /// This will be deprecated
180 [Obsolete("Deprecated in API6; Will be removed in API9. Please use Tizen.NUI.Components")]
181 [EditorBrowsable(EditorBrowsableState.Never)]
182 public static readonly BindableProperty DisabledColorProperty = BindableProperty.Create("DisabledColor", typeof(Vector4), typeof(Slider), Vector4.Zero, propertyChanged: (bindable, oldValue, newValue) =>
184 var slider = (Slider)bindable;
185 if (newValue != null)
187 Tizen.NUI.Object.SetProperty(slider.swigCPtr, Slider.Property.DISABLED_COLOR, new Tizen.NUI.PropertyValue((Vector4)newValue));
190 defaultValueCreator:(bindable) =>
192 var slider = (Slider)bindable;
193 Vector4 temp = new Vector4(0.0f, 0.0f, 0.0f, 0.0f);
194 Tizen.NUI.Object.GetProperty(slider.swigCPtr, Slider.Property.DISABLED_COLOR).Get(temp);
197 /// This will be deprecated
198 [Obsolete("Deprecated in API6; Will be removed in API9. Please use Tizen.NUI.Components")]
199 [EditorBrowsable(EditorBrowsableState.Never)]
200 public static readonly BindableProperty ValuePrecisionProperty = BindableProperty.Create("ValuePrecision", typeof(int), typeof(Slider), default(int), propertyChanged: (bindable, oldValue, newValue) =>
202 var slider = (Slider)bindable;
203 if (newValue != null)
205 Tizen.NUI.Object.SetProperty(slider.swigCPtr, Slider.Property.VALUE_PRECISION, new Tizen.NUI.PropertyValue((int)newValue));
208 defaultValueCreator:(bindable) =>
210 var slider = (Slider)bindable;
212 Tizen.NUI.Object.GetProperty(slider.swigCPtr, Slider.Property.VALUE_PRECISION).Get(out temp);
215 /// This will be deprecated
216 [Obsolete("Deprecated in API6; Will be removed in API9. Please use Tizen.NUI.Components")]
217 [EditorBrowsable(EditorBrowsableState.Never)]
218 public static readonly BindableProperty ShowPopupProperty = BindableProperty.Create("ShowPopup", typeof(bool), typeof(Slider), false, propertyChanged: (bindable, oldValue, newValue) =>
220 var slider = (Slider)bindable;
221 if (newValue != null)
223 Tizen.NUI.Object.SetProperty(slider.swigCPtr, Slider.Property.SHOW_POPUP, new Tizen.NUI.PropertyValue((bool)newValue));
226 defaultValueCreator:(bindable) =>
228 var slider = (Slider)bindable;
230 Tizen.NUI.Object.GetProperty(slider.swigCPtr, Slider.Property.SHOW_POPUP).Get(out temp);
233 /// This will be deprecated
234 [Obsolete("Deprecated in API6; Will be removed in API9. Please use Tizen.NUI.Components")]
235 [EditorBrowsable(EditorBrowsableState.Never)]
236 public static readonly BindableProperty ShowValueProperty = BindableProperty.Create("ShowValue", typeof(bool), typeof(Slider), false, propertyChanged: (bindable, oldValue, newValue) =>
238 var slider = (Slider)bindable;
239 if (newValue != null)
241 Tizen.NUI.Object.SetProperty(slider.swigCPtr, Slider.Property.SHOW_VALUE, new Tizen.NUI.PropertyValue((bool)newValue));
244 defaultValueCreator:(bindable) =>
246 var slider = (Slider)bindable;
248 Tizen.NUI.Object.GetProperty(slider.swigCPtr, Slider.Property.SHOW_VALUE).Get(out temp);
251 /// This will be deprecated
252 [Obsolete("Deprecated in API6; Will be removed in API9. Please use Tizen.NUI.Components")]
253 [EditorBrowsable(EditorBrowsableState.Never)]
254 public static readonly BindableProperty MarksProperty = BindableProperty.Create("Marks", typeof(PropertyArray), typeof(Slider), new PropertyArray(), propertyChanged: (bindable, oldValue, newValue) =>
256 var slider = (Slider)bindable;
257 if (newValue != null)
259 Tizen.NUI.Object.SetProperty(slider.swigCPtr, Slider.Property.MARKS, new Tizen.NUI.PropertyValue((PropertyArray)newValue));
262 defaultValueCreator:(bindable) =>
264 var slider = (Slider)bindable;
265 Tizen.NUI.PropertyArray temp = new Tizen.NUI.PropertyArray();
266 Tizen.NUI.Object.GetProperty(slider.swigCPtr, Slider.Property.MARKS).Get(temp);
269 /// This will be deprecated
270 [Obsolete("Deprecated in API6; Will be removed in API9. Please use Tizen.NUI.Components")]
271 [EditorBrowsable(EditorBrowsableState.Never)]
272 public static readonly BindableProperty MarkToleranceProperty = BindableProperty.Create("MarkTolerance", typeof(float), typeof(Slider), default(float), propertyChanged: (bindable, oldValue, newValue) =>
274 var slider = (Slider)bindable;
275 if (newValue != null)
277 Tizen.NUI.Object.SetProperty(slider.swigCPtr, Slider.Property.MARK_TOLERANCE, new Tizen.NUI.PropertyValue((float)newValue));
280 defaultValueCreator:(bindable) =>
282 var slider = (Slider)bindable;
284 Tizen.NUI.Object.GetProperty(slider.swigCPtr, Slider.Property.MARK_TOLERANCE).Get(out temp);
287 /// This will be deprecated
288 [Obsolete("Deprecated in API6; Will be removed in API9. Please use Tizen.NUI.Components")]
289 [EditorBrowsable(EditorBrowsableState.Never)]
290 public static readonly BindableProperty SnapToMarksProperty = BindableProperty.Create("SnapToMarks", typeof(bool), typeof(Slider), false, propertyChanged: (bindable, oldValue, newValue) =>
292 var slider = (Slider)bindable;
293 if (newValue != null)
295 Tizen.NUI.Object.SetProperty(slider.swigCPtr, Slider.Property.SNAP_TO_MARKS, new Tizen.NUI.PropertyValue((bool)newValue));
298 defaultValueCreator:(bindable) =>
300 var slider = (Slider)bindable;
302 Tizen.NUI.Object.GetProperty(slider.swigCPtr, Slider.Property.SNAP_TO_MARKS).Get(out temp);
306 private global::System.Runtime.InteropServices.HandleRef swigCPtr;
307 private EventHandlerWithReturnType<object, ValueChangedEventArgs, bool> _sliderValueChangedEventHandler;
308 private ValueChangedCallbackDelegate _sliderValueChangedCallbackDelegate;
309 private EventHandlerWithReturnType<object, SlidingFinishedEventArgs, bool> _sliderSlidingFinishedEventHandler;
310 private SlidingFinishedCallbackDelegate _sliderSlidingFinishedCallbackDelegate;
311 private EventHandlerWithReturnType<object, MarkReachedEventArgs, bool> _sliderMarkReachedEventHandler;
312 private MarkReachedCallbackDelegate _sliderMarkReachedCallbackDelegate;
315 /// Creates the slider control.
317 /// <since_tizen> 3 </since_tizen>
318 /// This will be deprecated
319 [Obsolete("Deprecated in API6; Will be removed in API9. Please use Tizen.NUI.Components")]
320 [EditorBrowsable(EditorBrowsableState.Never)]
321 public Slider() : this(Interop.Slider.Slider_New(), true)
323 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
326 internal Slider(global::System.IntPtr cPtr, bool cMemoryOwn) : base(Interop.Slider.Slider_SWIGUpcast(cPtr), cMemoryOwn)
328 swigCPtr = new global::System.Runtime.InteropServices.HandleRef(this, cPtr);
331 internal Slider(Slider handle) : this(Interop.Slider.new_Slider__SWIG_1(Slider.getCPtr(handle)), true)
333 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
336 [UnmanagedFunctionPointer(CallingConvention.StdCall)]
337 private delegate bool ValueChangedCallbackDelegate(IntPtr slider, float slideValue);
338 [UnmanagedFunctionPointer(CallingConvention.StdCall)]
339 private delegate bool SlidingFinishedCallbackDelegate(IntPtr slider, float slideValue);
340 [UnmanagedFunctionPointer(CallingConvention.StdCall)]
341 private delegate bool MarkReachedCallbackDelegate(IntPtr slider, int slideValue);
344 /// An event emitted when the slider value changes.
346 /// <since_tizen> 3 </since_tizen>
347 /// This will be deprecated
348 [Obsolete("Deprecated in API6; Will be removed in API9. Please use Tizen.NUI.Components")]
349 [EditorBrowsable(EditorBrowsableState.Never)]
350 public event EventHandlerWithReturnType<object, ValueChangedEventArgs, bool> ValueChanged
354 if (_sliderValueChangedEventHandler == null)
356 _sliderValueChangedCallbackDelegate = (OnValueChanged);
357 ValueChangedSignal().Connect(_sliderValueChangedCallbackDelegate);
359 _sliderValueChangedEventHandler += value;
363 _sliderValueChangedEventHandler -= value;
364 if (_sliderValueChangedEventHandler == null && ValueChangedSignal().Empty() == false)
366 ValueChangedSignal().Disconnect(_sliderValueChangedCallbackDelegate);
372 /// An event emitted when the sliding is finished.
374 /// <since_tizen> 3 </since_tizen>
375 /// This will be deprecated
376 [Obsolete("Deprecated in API6; Will be removed in API9. Please use Tizen.NUI.Components")]
377 [EditorBrowsable(EditorBrowsableState.Never)]
378 public event EventHandlerWithReturnType<object, SlidingFinishedEventArgs, bool> SlidingFinished
382 if (_sliderSlidingFinishedEventHandler == null)
384 _sliderSlidingFinishedCallbackDelegate = (OnSlidingFinished);
385 SlidingFinishedSignal().Connect(_sliderSlidingFinishedCallbackDelegate);
387 _sliderSlidingFinishedEventHandler += value;
391 _sliderSlidingFinishedEventHandler -= value;
392 if (_sliderSlidingFinishedEventHandler == null && SlidingFinishedSignal().Empty() == false)
394 SlidingFinishedSignal().Disconnect(_sliderSlidingFinishedCallbackDelegate);
400 /// An event emitted when the slider handle reaches a mark.
402 /// <since_tizen> 3 </since_tizen>
403 /// This will be deprecated
404 [Obsolete("Deprecated in API6; Will be removed in API9. Please use Tizen.NUI.Components")]
405 [EditorBrowsable(EditorBrowsableState.Never)]
406 public event EventHandlerWithReturnType<object, MarkReachedEventArgs, bool> MarkReached
410 if (_sliderMarkReachedEventHandler == null)
412 _sliderMarkReachedCallbackDelegate = (OnMarkReached);
413 MarkReachedSignal().Connect(_sliderMarkReachedCallbackDelegate);
415 _sliderMarkReachedEventHandler += value;
419 _sliderMarkReachedEventHandler -= value;
420 if (_sliderMarkReachedEventHandler == null && MarkReachedSignal().Empty() == false)
422 MarkReachedSignal().Disconnect(_sliderMarkReachedCallbackDelegate);
428 /// The lower bound property.
430 /// <since_tizen> 3 </since_tizen>
431 /// This will be deprecated
432 [Obsolete("Deprecated in API6; Will be removed in API9. Please use Tizen.NUI.Components")]
433 [EditorBrowsable(EditorBrowsableState.Never)]
434 public float LowerBound
438 return (float)GetValue(LowerBoundProperty);
442 SetValue(LowerBoundProperty, value);
447 /// The upper bound property.
449 /// <since_tizen> 3 </since_tizen>
450 /// This will be deprecated
451 [Obsolete("Deprecated in API6; Will be removed in API9. Please use Tizen.NUI.Components")]
452 [EditorBrowsable(EditorBrowsableState.Never)]
453 public float UpperBound
457 return (float)GetValue(UpperBoundProperty);
461 SetValue(UpperBoundProperty, value);
466 /// The value property.
468 /// <since_tizen> 3 </since_tizen>
469 /// This will be deprecated
470 [Obsolete("Deprecated in API6; Will be removed in API9. Please use Tizen.NUI.Components")]
471 [EditorBrowsable(EditorBrowsableState.Never)]
476 return (float)GetValue(ValueProperty);
480 SetValueAndForceSendChangeSignal(ValueProperty, value);
485 /// The track visual property.
487 /// <since_tizen> 3 </since_tizen>
488 /// This will be deprecated
489 [Obsolete("Deprecated in API6; Will be removed in API9. Please use Tizen.NUI.Components")]
490 [EditorBrowsable(EditorBrowsableState.Never)]
491 public PropertyMap TrackVisual
495 return (PropertyMap)GetValue(TrackVisualProperty);
499 SetValue(TrackVisualProperty, value);
504 /// The handle visual property.
506 /// <since_tizen> 3 </since_tizen>
507 /// This will be deprecated
508 [Obsolete("Deprecated in API6; Will be removed in API9. Please use Tizen.NUI.Components")]
509 [EditorBrowsable(EditorBrowsableState.Never)]
510 public PropertyMap HandleVisual
514 return (PropertyMap)GetValue(HandleVisualProperty);
518 SetValue(HandleVisualProperty, value);
523 /// The progress visual property.
525 /// <since_tizen> 3 </since_tizen>
526 /// This will be deprecated
527 [Obsolete("Deprecated in API6; Will be removed in API9. Please use Tizen.NUI.Components")]
528 [EditorBrowsable(EditorBrowsableState.Never)]
529 public PropertyMap ProgressVisual
533 return (PropertyMap)GetValue(ProgressVisualProperty);
537 SetValue(ProgressVisualProperty, value);
542 /// The popup visual property.
544 /// <since_tizen> 3 </since_tizen>
545 /// This will be deprecated
546 [Obsolete("Deprecated in API6; Will be removed in API9. Please use Tizen.NUI.Components")]
547 [EditorBrowsable(EditorBrowsableState.Never)]
548 public PropertyMap PopupVisual
552 return (PropertyMap)GetValue(PopupVisualProperty);
556 SetValue(PopupVisualProperty, value);
561 /// The popup arrow visual property.
563 /// <since_tizen> 3 </since_tizen>
564 /// This will be deprecated
565 [Obsolete("Deprecated in API6; Will be removed in API9. Please use Tizen.NUI.Components")]
566 [EditorBrowsable(EditorBrowsableState.Never)]
567 public PropertyMap PopupArrowVisual
571 return (PropertyMap)GetValue(PopupArrowVisualProperty);
575 SetValue(PopupArrowVisualProperty, value);
580 /// The disable color property.
582 /// <since_tizen> 3 </since_tizen>
583 /// This will be deprecated
584 [Obsolete("Deprecated in API6; Will be removed in API9. Please use Tizen.NUI.Components")]
585 [EditorBrowsable(EditorBrowsableState.Never)]
586 public Vector4 DisabledColor
590 return (Vector4)GetValue(DisabledColorProperty);
594 SetValue(DisabledColorProperty, value);
599 /// The value precision property.
601 /// <since_tizen> 3 </since_tizen>
602 /// This will be deprecated
603 [Obsolete("Deprecated in API6; Will be removed in API9. Please use Tizen.NUI.Components")]
604 [EditorBrowsable(EditorBrowsableState.Never)]
605 public int ValuePrecision
609 return (int)GetValue(ValuePrecisionProperty);
613 SetValue(ValuePrecisionProperty, value);
618 /// The show popup property.
620 /// <since_tizen> 3 </since_tizen>
621 /// This will be deprecated
622 [Obsolete("Deprecated in API6; Will be removed in API9. Please use Tizen.NUI.Components")]
623 [EditorBrowsable(EditorBrowsableState.Never)]
624 public bool ShowPopup
628 return (bool)GetValue(ShowPopupProperty);
632 SetValue(ShowPopupProperty, value);
637 /// The show value property.
639 /// <since_tizen> 3 </since_tizen>
640 /// This will be deprecated
641 [Obsolete("Deprecated in API6; Will be removed in API9. Please use Tizen.NUI.Components")]
642 [EditorBrowsable(EditorBrowsableState.Never)]
643 public bool ShowValue
647 return (bool)GetValue(ShowValueProperty);
651 SetValue(ShowValueProperty, value);
656 /// The marks property.
658 /// <since_tizen> 3 </since_tizen>
659 /// This will be deprecated
660 [Obsolete("Deprecated in API6; Will be removed in API9. Please use Tizen.NUI.Components")]
661 [EditorBrowsable(EditorBrowsableState.Never)]
662 public Tizen.NUI.PropertyArray Marks
666 return (PropertyArray)GetValue(MarksProperty);
670 SetValue(MarksProperty, value);
675 /// The snap to marks property.
677 /// <since_tizen> 3 </since_tizen>
678 /// This will be deprecated
679 [Obsolete("Deprecated in API6; Will be removed in API9. Please use Tizen.NUI.Components")]
680 [EditorBrowsable(EditorBrowsableState.Never)]
681 public bool SnapToMarks
685 return (bool)GetValue(SnapToMarksProperty);
689 SetValue(SnapToMarksProperty, value);
694 /// The mark tolerance property.
696 /// <since_tizen> 3 </since_tizen>
697 /// This will be deprecated
698 [Obsolete("Deprecated in API6; Will be removed in API9. Please use Tizen.NUI.Components")]
699 [EditorBrowsable(EditorBrowsableState.Never)]
700 public float MarkTolerance
704 return (float)GetValue(MarkToleranceProperty);
708 SetValue(MarkToleranceProperty, value);
712 /// Only used by the IL of xaml, will never changed to not hidden.
713 [EditorBrowsable(EditorBrowsableState.Never)]
714 public override bool IsCreateByXaml
718 return base.IsCreateByXaml;
722 base.IsCreateByXaml = value;
726 this.ValueChanged += (obj, e) => {
727 this.Value = e.SlideValue;
735 /// Downcasts an object handle to the slider.<br />
736 /// If the handle points to a slider, then the downcast produces a valid handle.<br />
737 /// If not, then the returned handle is left uninitialized.<br />
739 /// <param name="handle">The handle to an object.</param>
740 /// <returns>The handle to a slider or an uninitialized handle.</returns>
741 /// <since_tizen> 3 </since_tizen>
742 /// This will be deprecated
743 [Obsolete("Deprecated in API6; Will be removed in API9. Please use Tizen.NUI.Components")]
744 [EditorBrowsable(EditorBrowsableState.Never)]
745 public static Slider DownCast(BaseHandle handle)
747 Slider ret = Registry.GetManagedBaseHandleFromNativePtr(handle) as Slider;
748 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
752 internal static global::System.Runtime.InteropServices.HandleRef getCPtr(Slider obj)
754 return (obj == null) ? new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero) : obj.swigCPtr;
758 /// Gets the slider from the pointer.
760 /// <param name="cPtr">The pointer of the slider.</param>
761 /// <returns>The object of the slider type.</returns>
762 internal static Slider GetSliderFromPtr(global::System.IntPtr cPtr)
764 Slider ret = Registry.GetManagedBaseHandleFromNativePtr(cPtr) as Slider;
767 ret = Registry.GetManagedBaseHandleFromRefObject(cPtr) as Slider;
770 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
774 internal Slider Assign(Slider handle)
776 Slider ret = new Slider(Interop.Slider.Slider_Assign(swigCPtr, Slider.getCPtr(handle)), false);
777 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
781 internal SliderValueChangedSignal ValueChangedSignal()
783 SliderValueChangedSignal ret = new SliderValueChangedSignal(Interop.Slider.Slider_ValueChangedSignal(swigCPtr), false);
784 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
788 internal SliderValueChangedSignal SlidingFinishedSignal()
790 SliderValueChangedSignal ret = new SliderValueChangedSignal(Interop.Slider.Slider_SlidingFinishedSignal(swigCPtr), false);
791 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
795 internal SliderMarkReachedSignal MarkReachedSignal()
797 SliderMarkReachedSignal ret = new SliderMarkReachedSignal(Interop.Slider.Slider_MarkReachedSignal(swigCPtr), false);
798 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
805 /// <since_tizen> 3 </since_tizen>
806 /// This will be deprecated
807 [Obsolete("Deprecated in API6; Will be removed in API9. Please use Tizen.NUI.Components")]
808 [EditorBrowsable(EditorBrowsableState.Never)]
809 protected override void Dispose(DisposeTypes type)
816 //Release your own unmanaged resources here.
817 //You should not access any managed member here except static instance.
818 //because the execution order of Finalizes is non-deterministic.
821 if (_sliderValueChangedCallbackDelegate != null)
823 ValueChangedSignal().Disconnect(_sliderValueChangedCallbackDelegate);
826 if (_sliderSlidingFinishedCallbackDelegate != null)
828 SlidingFinishedSignal().Disconnect(_sliderSlidingFinishedCallbackDelegate);
831 if (_sliderMarkReachedCallbackDelegate != null)
833 MarkReachedSignal().Disconnect(_sliderMarkReachedCallbackDelegate);
837 if (swigCPtr.Handle != global::System.IntPtr.Zero)
842 Interop.Slider.delete_Slider(swigCPtr);
844 swigCPtr = new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero);
850 // Callback for Slider ValueChanged signal
851 private bool OnValueChanged(IntPtr slider, float slideValue)
853 ValueChangedEventArgs e = new ValueChangedEventArgs();
855 // Populate all members of "e" (ValueChangedEventArgs) with real page
856 e.Slider = Slider.GetSliderFromPtr(slider);
857 e.SlideValue = slideValue;
859 if (_sliderValueChangedEventHandler != null)
861 //here we send all page to user event handlers
862 return _sliderValueChangedEventHandler(this, e);
867 // Callback for Slider SlidingFinished signal
868 private bool OnSlidingFinished(IntPtr slider, float slideValue)
870 SlidingFinishedEventArgs e = new SlidingFinishedEventArgs();
872 // Populate all members of "e" (SlidingFinishedEventArgs) with real page
873 e.Slider = Slider.GetSliderFromPtr(slider);
874 e.SlideValue = slideValue;
876 if (_sliderSlidingFinishedEventHandler != null)
878 //here we send all page to user event handlers
879 return _sliderSlidingFinishedEventHandler(this, e);
884 // Callback for Slider MarkReached signal
885 private bool OnMarkReached(IntPtr slider, int slideValue)
887 MarkReachedEventArgs e = new MarkReachedEventArgs();
889 // Populate all members of "e" (MarkReachedEventArgs) with real page
890 e.Slider = Slider.GetSliderFromPtr(slider);
891 e.SlideValue = slideValue;
893 if (_sliderMarkReachedEventHandler != null)
895 //here we send all page to user event handlers
896 return _sliderMarkReachedEventHandler(this, e);
902 /// The ValueChanged event arguments.
904 /// <since_tizen> 3 </since_tizen>
905 /// This will be deprecated
906 [Obsolete("Deprecated in API6; Will be removed in API9. Please use Tizen.NUI.Components")]
907 [EditorBrowsable(EditorBrowsableState.Never)]
908 public class ValueChangedEventArgs : EventArgs
910 private Slider _slider;
911 private float _slideValue;
916 /// <since_tizen> 3 </since_tizen>
917 /// This will be deprecated
918 [Obsolete("Deprecated in API6; Will be removed in API9. Please use Tizen.NUI.Components")]
919 [EditorBrowsable(EditorBrowsableState.Never)]
933 /// The slider value.
935 /// <since_tizen> 3 </since_tizen>
936 /// This will be deprecated
937 [Obsolete("Deprecated in API6; Will be removed in API9. Please use Tizen.NUI.Components")]
938 [EditorBrowsable(EditorBrowsableState.Never)]
939 public float SlideValue
953 /// The SlidingFinished event arguments.
955 /// <since_tizen> 3 </since_tizen>
956 /// This will be deprecated
957 [Obsolete("Deprecated in API6; Will be removed in API9. Please use Tizen.NUI.Components")]
958 [EditorBrowsable(EditorBrowsableState.Never)]
959 public class SlidingFinishedEventArgs : EventArgs
961 private Slider _slider;
962 private float _slideValue;
967 /// <since_tizen> 3 </since_tizen>
968 /// This will be deprecated
969 [Obsolete("Deprecated in API6; Will be removed in API9. Please use Tizen.NUI.Components")]
970 [EditorBrowsable(EditorBrowsableState.Never)]
984 /// The slider value.
986 /// <since_tizen> 3 </since_tizen>
987 /// This will be deprecated
988 [Obsolete("Deprecated in API6; Will be removed in API9. Please use Tizen.NUI.Components")]
989 [EditorBrowsable(EditorBrowsableState.Never)]
990 public float SlideValue
1004 /// The MarkReached event arguments.
1006 /// <since_tizen> 3 </since_tizen>
1007 /// This will be deprecated
1008 [Obsolete("Deprecated in API6; Will be removed in API9. Please use Tizen.NUI.Components")]
1009 [EditorBrowsable(EditorBrowsableState.Never)]
1010 public class MarkReachedEventArgs : EventArgs
1012 private Slider _slider;
1013 private int _slideValue;
1018 /// <since_tizen> 3 </since_tizen>
1019 /// This will be deprecated
1020 [Obsolete("Deprecated in API6; Will be removed in API9. Please use Tizen.NUI.Components")]
1021 [EditorBrowsable(EditorBrowsableState.Never)]
1022 public Slider Slider
1035 /// The slider value.
1037 /// <since_tizen> 3 </since_tizen>
1038 /// This will be deprecated
1039 [Obsolete("Deprecated in API6; Will be removed in API9. Please use Tizen.NUI.Components")]
1040 [EditorBrowsable(EditorBrowsableState.Never)]
1041 public int SlideValue
1049 _slideValue = value;
1054 internal new class Property
1056 internal static readonly int LOWER_BOUND = Interop.Slider.Slider_Property_LOWER_BOUND_get();
1057 internal static readonly int UPPER_BOUND = Interop.Slider.Slider_Property_UPPER_BOUND_get();
1058 internal static readonly int VALUE = Interop.Slider.Slider_Property_VALUE_get();
1059 internal static readonly int TRACK_VISUAL = Interop.Slider.Slider_Property_TRACK_VISUAL_get();
1060 internal static readonly int HANDLE_VISUAL = Interop.Slider.Slider_Property_HANDLE_VISUAL_get();
1061 internal static readonly int PROGRESS_VISUAL = Interop.Slider.Slider_Property_PROGRESS_VISUAL_get();
1062 internal static readonly int POPUP_VISUAL = Interop.Slider.Slider_Property_POPUP_VISUAL_get();
1063 internal static readonly int POPUP_ARROW_VISUAL = Interop.Slider.Slider_Property_POPUP_ARROW_VISUAL_get();
1064 internal static readonly int DISABLED_COLOR = Interop.Slider.Slider_Property_DISABLED_COLOR_get();
1065 internal static readonly int VALUE_PRECISION = Interop.Slider.Slider_Property_VALUE_PRECISION_get();
1066 internal static readonly int SHOW_POPUP = Interop.Slider.Slider_Property_SHOW_POPUP_get();
1067 internal static readonly int SHOW_VALUE = Interop.Slider.Slider_Property_SHOW_VALUE_get();
1068 internal static readonly int MARKS = Interop.Slider.Slider_Property_MARKS_get();
1069 internal static readonly int SNAP_TO_MARKS = Interop.Slider.Slider_Property_SNAP_TO_MARKS_get();
1070 internal static readonly int MARK_TOLERANCE = Interop.Slider.Slider_Property_MARK_TOLERANCE_get();