[ACR-564] deprecate unused API
[platform/core/csapi/tizenfx.git] / src / ElmSharp / ElmSharp / FlipSelector.cs
1 /*
2  * Copyright (c) 2016 Samsung Electronics Co., Ltd All Rights Reserved
3  *
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
7  *
8  * http://www.apache.org/licenses/LICENSE-2.0
9  *
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.
15  */
16
17 using System;
18 using System.Collections.Generic;
19
20 namespace ElmSharp
21 {
22     /// <summary>
23     /// The FlipSelector is a widget to show a set of text items, one at a time, with the same sheet switching style as the clock widget when one changes the current displaying sheet.
24     /// </summary>
25     /// <since_tizen> preview </since_tizen>
26     [Obsolete("This has been deprecated in API12")]
27     public class FlipSelector : Layout
28     {
29         SmartEvent _selected;
30         SmartEvent _overflowed;
31         SmartEvent _underflowed;
32
33         /// <summary>
34         /// Creates and initializes a new instance of the FlipSelector.
35         /// </summary>
36         /// <param name="parent">Parent EvasObject.</param>
37         /// <since_tizen> preview </since_tizen>
38         [Obsolete("This has been deprecated in API12")]
39         public FlipSelector(EvasObject parent) : base(parent)
40         {
41             _selected = new SmartEvent(this, Handle, "selected");
42             _overflowed = new SmartEvent(this, Handle, "overflowed");
43             _underflowed = new SmartEvent(this, Handle, "underflowed");
44
45             _selected.On += SelectedChanged;
46             _overflowed.On += OverflowedChanged;
47             _underflowed.On += UnderflowedChanged;
48         }
49
50         /// <summary>
51         /// Selected will be triggered when selected.
52         /// </summary>
53         /// <since_tizen> preview </since_tizen>
54         [Obsolete("This has been deprecated in API12")]
55         public event EventHandler Selected;
56         /// <summary>
57         /// Overflowed will be triggered when overflowed.
58         /// </summary>
59         /// <since_tizen> preview </since_tizen>
60         [Obsolete("This has been deprecated in API12")]
61         public event EventHandler Overflowed;
62         /// <summary>
63         /// Underflowed will be triggered when underflowed.
64         /// </summary>
65         /// <since_tizen> preview </since_tizen>
66         [Obsolete("This has been deprecated in API12")]
67         public event EventHandler Underflowed;
68
69         /// <summary>
70         /// Sets or gets the interval on time updates for a user mouse button to hold on the flip selector widget.
71         /// </summary>
72         /// <since_tizen> preview </since_tizen>
73         [Obsolete("This has been deprecated in API12")]
74         public double Interval
75         {
76             get
77             {
78                 return Interop.Elementary.elm_flipselector_first_interval_get(Handle);
79             }
80             set
81             {
82                 Interop.Elementary.elm_flipselector_first_interval_set(Handle, value);
83             }
84         }
85
86
87         /// <summary>
88         /// Gets the currently selected item in the flip selector widget.
89         /// </summary>
90         /// <since_tizen> preview </since_tizen>
91         [Obsolete("This has been deprecated in API12")]
92         public FlipSelectorItem SelectedItem
93         {
94             get
95             {
96                 IntPtr handle = Interop.Elementary.elm_flipselector_selected_item_get(Handle);
97                 return ItemObject.GetItemByHandle(handle) as FlipSelectorItem;
98             }
99         }
100
101         /// <summary>
102         /// Gets the first item in the given flip selector widget's list of items.
103         /// </summary>
104         /// <since_tizen> preview </since_tizen>
105         [Obsolete("This has been deprecated in API12")]
106         public FlipSelectorItem FirstItem
107         {
108             get
109             {
110                 IntPtr handle = Interop.Elementary.elm_flipselector_first_item_get(Handle);
111                 return ItemObject.GetItemByHandle(handle) as FlipSelectorItem;
112             }
113         }
114
115         /// <summary>
116         /// Gets the last item in the given flip selector widget's list of items.
117         /// </summary>
118         /// <since_tizen> preview </since_tizen>
119         [Obsolete("This has been deprecated in API12")]
120         public FlipSelectorItem LastItem
121         {
122             get
123             {
124                 IntPtr handle = Interop.Elementary.elm_flipselector_last_item_get(Handle);
125                 return ItemObject.GetItemByHandle(handle) as FlipSelectorItem;
126             }
127         }
128
129         /// <summary>
130         /// Appends the (text) item to the flip selector widget.
131         /// </summary>
132         /// <param name="text">text value</param>
133         /// <returns>
134         /// A handle to the item added, or null on errors.
135         /// </returns>
136         /// <remarks>
137         /// The widget's list of labels to show will be appended with the given value. If the user wishes so, a callback function pointer can be passed, which will get called when the same item is selected.
138         /// </remarks>
139         /// <since_tizen> preview </since_tizen>
140         [Obsolete("This has been deprecated in API12")]
141         public FlipSelectorItem Append(string text)
142         {
143             FlipSelectorItem item = new FlipSelectorItem(text, this);
144             item.Handle = Interop.Elementary.elm_flipselector_item_append(Handle, text, null, (IntPtr)item.Id);
145             return item;
146         }
147
148         /// <summary>
149         /// Prepends the (text) item to a flip selector widget.
150         /// </summary>
151         /// <param name="text">Prepend text</param>
152         /// <returns>A handle to the item added, or null on errors.</returns>
153         /// <remarks>
154         /// The widget's list of labels to show will be prepended with the given value. If the user wishes so, a callback function pointer can be passed, which will get called when the same item is selected.
155         /// </remarks>
156         /// <since_tizen> preview </since_tizen>
157         [Obsolete("This has been deprecated in API12")]
158         public FlipSelectorItem Prepend(string text)
159         {
160             FlipSelectorItem item = new FlipSelectorItem(text, this);
161             item.Handle = Interop.Elementary.elm_flipselector_item_prepend(Handle, text, null, (IntPtr)item.Id);
162             return item;
163         }
164
165         /// <summary>
166         /// To remove the given item.
167         /// </summary>
168         /// <param name="item">FlipSelector's item.</param>
169         /// <since_tizen> preview </since_tizen>
170         [Obsolete("This has been deprecated in API12")]
171         public void Remove(FlipSelectorItem item)
172         {
173             if (item != null)
174                 item.Delete();
175         }
176
177         /// <summary>
178         /// Programmatically select the next item of the flip selector widget.
179         /// </summary>
180         /// <remarks>
181         /// The selection will be animated. Also, if it reaches the beginning of its list of member items, it will continue with the last one backwards.
182         /// </remarks>
183         /// <since_tizen> preview </since_tizen>
184         [Obsolete("This has been deprecated in API12")]
185         public void Next()
186         {
187             Interop.Elementary.elm_flipselector_flip_next(Handle);
188         }
189
190         /// <summary>
191         /// Programmatically select the previous item of the flip selector widget.
192         /// </summary>
193         /// <since_tizen> preview </since_tizen>
194         [Obsolete("This has been deprecated in API12")]
195         public void Prev()
196         {
197             Interop.Elementary.elm_flipselector_flip_prev(Handle);
198         }
199
200         /// <summary>
201         /// Creates a widget handle.
202         /// </summary>
203         /// <param name="parent">Parent EvasObject.</param>
204         /// <returns>Handle IntPtr.</returns>
205         /// <since_tizen> preview </since_tizen>
206         [Obsolete("This has been deprecated in API12")]
207         protected override IntPtr CreateHandle(EvasObject parent)
208         {
209             return Interop.Elementary.elm_flipselector_add(parent.Handle);
210         }
211
212         void SelectedChanged(object sender, EventArgs e)
213         {
214             SelectedItem?.SendSelected();
215             Selected?.Invoke(this, EventArgs.Empty);
216         }
217
218         void OverflowedChanged(object sender, EventArgs e)
219         {
220             Overflowed?.Invoke(this, e);
221         }
222
223         void UnderflowedChanged(object sender, EventArgs e)
224         {
225             Underflowed?.Invoke(this, e);
226         }
227     }
228 }