[ACR-564] deprecate unused API
[platform/core/csapi/tizenfx.git] / src / ElmSharp.Wearable / ElmSharp.Wearable / RotarySelectorItem.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 using System.Text;
20
21 namespace ElmSharp.Wearable
22 {
23     /// <summary>
24     /// An instance to the Rotary Selector item is added. An item can be selected by the Rotary event or user item click.
25     /// </summary>
26     /// <since_tizen> preview </since_tizen>
27     [Obsolete("This has been deprecated in API12")]
28     public class RotarySelectorItem
29     {
30         const string MainTextPartName = "selector,main_text";
31         const string SubTextPartName = "selector,sub_text";
32         const string IconPartName = "item,icon";
33         const string BgPartName = "item,bg_image";
34         const string SelectorIconPartName = "selector,icon";
35
36         string _mainText;
37         string _subText;
38
39         Color _mainTextColor;
40         Color _subTextColor;
41
42         Image _normalIconImage;
43         Image _pressedIconImage;
44         Image _disabledIconImage;
45         Image _selectedIconImage;
46
47         Image _normalBgImage;
48         Image _pressedBgImage;
49         Image _disabledBgImage;
50         Image _selectedBgImage;
51
52         Color _normalBgColor;
53         Color _pressedBgColor;
54         Color _disabledBgColor;
55         Color _selectedBgColor;
56
57         Image _selectorIconImage;
58
59         IntPtr _handle;
60
61         /// <summary>
62         /// Sets or gets the handle of a rotary selector item object.
63         /// </summary>
64         /// <since_tizen> preview </since_tizen>
65         [Obsolete("This has been deprecated in API12")]
66         public IntPtr Handle
67         {
68             set
69             {
70                 if (_handle == value) return;
71                 _handle = value;
72
73                 if (_handle == null) return;
74
75                 setPart(ref _mainText, MainTextPartName);
76                 setPart(ref _subText, SubTextPartName);
77                 setPart(ref _mainTextColor, MainTextPartName, ItemState.Normal);
78                 setPart(ref _subTextColor, SubTextPartName, ItemState.Normal);
79
80                 setPart(ref _normalIconImage, IconPartName, ItemState.Normal);
81                 setPart(ref _pressedIconImage, IconPartName, ItemState.Pressed);
82                 setPart(ref _disabledIconImage, IconPartName, ItemState.Disabled);
83                 setPart(ref _selectedIconImage, IconPartName, ItemState.Selected);
84
85                 setPart(ref _normalBgImage, BgPartName, ItemState.Normal);
86                 setPart(ref _pressedBgImage, BgPartName, ItemState.Pressed);
87                 setPart(ref _disabledBgImage, BgPartName, ItemState.Disabled);
88                 setPart(ref _selectedBgImage, BgPartName, ItemState.Selected);
89
90                 setPart(ref _normalBgColor, BgPartName, ItemState.Normal);
91                 setPart(ref _pressedBgColor, BgPartName, ItemState.Pressed);
92                 setPart(ref _disabledBgColor, BgPartName, ItemState.Disabled);
93                 setPart(ref _selectedBgColor, BgPartName, ItemState.Selected);
94
95                 setPart(ref _selectorIconImage, SelectorIconPartName, ItemState.Normal);
96             }
97
98             get
99             {
100                 return _handle;
101             }
102         }
103
104         void setPart(ref Image prop, string partName, ItemState state)
105         {
106             if (prop != null)
107             {
108                 Interop.Eext.eext_rotary_selector_item_part_content_set(Handle, partName, (int)state, prop);
109             }
110         }
111         void setPart(ref Color prop, string partName, ItemState state)
112         {
113             if (prop != default(Color))
114             {
115                 Interop.Eext.eext_rotary_selector_item_part_color_set(Handle, partName, (int)state, prop.R, prop.G, prop.B, prop.A);
116             }
117         }
118
119         void setPart(ref string prop, string partName)
120         {
121             if (prop != null)
122             {
123                 Interop.Eext.eext_rotary_selector_item_part_text_set(Handle, partName, prop);
124             }
125         }
126
127         void setPart(ref Image prop, string partName, ItemState state, Image img)
128         {
129             if (prop == img) return;
130             prop = img;
131             if (Handle != null)
132             {
133                 Interop.Eext.eext_rotary_selector_item_part_content_set(Handle, partName, (int)state, img);
134             }
135         }
136
137         void setPart(ref Color prop, string partName, ItemState state, Color color)
138         {
139             if (prop == color) return;
140             prop = color;
141             if (Handle != null)
142             {
143                 Interop.Eext.eext_rotary_selector_item_part_color_set(Handle, partName, (int)state, color.R, color.G, color.B, color.A);
144             }
145         }
146
147         void setPart(ref string prop, string partName, string txt)
148         {
149             if (prop == txt) return;
150             prop = txt;
151             if (Handle != null)
152             {
153                 Interop.Eext.eext_rotary_selector_item_part_text_set(Handle, partName, txt);
154             }
155         }
156
157         /// <summary>
158         /// Sets or gets the main text of a rotary selector item object.
159         /// </summary>
160         /// <since_tizen> preview </since_tizen>
161         [Obsolete("This has been deprecated in API12")]
162         public string MainText { set => setPart(ref _mainText, MainTextPartName, value); get => _mainText; }
163
164         /// <summary>
165         /// Sets or gets the subtext of a rotary selector item object.
166         /// </summary>
167         /// <since_tizen> preview </since_tizen>
168         [Obsolete("This has been deprecated in API12")]
169         public string SubText { set => setPart(ref _subText, SubTextPartName, value); get => _subText; }
170
171         /// <summary>
172         /// Sets or gets the subtext color of a rotary selector item object.
173         /// </summary>
174         /// <since_tizen> preview </since_tizen>
175         [Obsolete("This has been deprecated in API12")]
176         public Color MainTextColor { set => setPart(ref _mainTextColor, MainTextPartName, ItemState.Normal, value); get => _mainTextColor; }
177
178         /// <summary>
179         /// Sets or gets the subtext color of a rotary selector item object.
180         /// </summary>
181         /// <since_tizen> preview </since_tizen>
182         [Obsolete("This has been deprecated in API12")]
183         public Color SubTextColor { set => setPart(ref _subTextColor, SubTextPartName, ItemState.Normal, value); get => _subTextColor; }
184
185         /// <summary>
186         /// Sets or gets the normal icon image of a rotary selector item object.
187         /// </summary>
188         /// <since_tizen> preview </since_tizen>
189         [Obsolete("This has been deprecated in API12")]
190         public Image NormalIconImage { set => setPart(ref _normalIconImage, IconPartName, ItemState.Normal, value); get => _normalIconImage; }
191
192         /// <summary>
193         /// Sets or gets the pressed icon image of a rotary selector item object.
194         /// </summary>
195         /// <since_tizen> preview </since_tizen>
196         [Obsolete("This has been deprecated in API12")]
197         public Image PressedIconImage { set => setPart(ref _pressedIconImage, IconPartName, ItemState.Pressed, value); get => _pressedIconImage; }
198
199         /// <summary>
200         /// Sets or gets the disabled icon image of a rotary selector item object.
201         /// </summary>
202         /// <since_tizen> preview </since_tizen>
203         [Obsolete("This has been deprecated in API12")]
204         public Image DisabledIconImage { set => setPart(ref _disabledIconImage, IconPartName, ItemState.Disabled, value); get => _disabledIconImage; }
205
206         /// <summary>
207         /// Sets or gets the selected icon image of a rotary selector item object.
208         /// </summary>
209         /// <since_tizen> preview </since_tizen>
210         [Obsolete("This has been deprecated in API12")]
211         public Image SelectedIconImage { set => setPart(ref _selectedIconImage, IconPartName, ItemState.Selected, value); get => _selectedIconImage; }
212
213         /// <summary>
214         /// Sets or gets the normal background image of a rotary selector item object.
215         /// </summary>
216         /// <since_tizen> preview </since_tizen>
217         [Obsolete("This has been deprecated in API12")]
218         public Image NormalBackgroundImage { set => setPart(ref _normalBgImage, BgPartName, ItemState.Normal, value); get => _normalBgImage; }
219
220         /// <summary>
221         /// Sets or gets the pressed background image of a rotary selector item object.
222         /// </summary>
223         /// <since_tizen> preview </since_tizen>
224         [Obsolete("This has been deprecated in API12")]
225         public Image PressedBackgroundImage { set => setPart(ref _pressedBgImage, BgPartName, ItemState.Pressed, value); get => _pressedBgImage; }
226
227         /// <summary>
228         /// Sets or gets the disabled background image of a rotary selector item object.
229         /// </summary>
230         /// <since_tizen> preview </since_tizen>
231         [Obsolete("This has been deprecated in API12")]
232         public Image DisabledBackgroundImage { set => setPart(ref _disabledBgImage, BgPartName, ItemState.Disabled, value); get => _disabledBgImage; }
233
234         /// <summary>
235         /// Sets or gets the selected background image of a rotary selector item object.
236         /// </summary>
237         /// <since_tizen> preview </since_tizen>
238         [Obsolete("This has been deprecated in API12")]
239         public Image SelectedBackgroundImage { set => setPart(ref _selectedBgImage, BgPartName, ItemState.Selected, value); get => _selectedBgImage; }
240
241         /// <summary>
242         /// Sets or gets the normal background color of a rotary selector item object.
243         /// </summary>
244         /// <since_tizen> preview </since_tizen>
245         [Obsolete("This has been deprecated in API12")]
246         public Color NormalBackgroundColor { set => setPart(ref _normalBgColor, BgPartName, ItemState.Normal, value); get => _normalBgColor; }
247
248         /// <summary>
249         /// Sets or gets the pressed background color of a rotary selector item object.
250         /// </summary>
251         /// <since_tizen> preview </since_tizen>
252         [Obsolete("This has been deprecated in API12")]
253         public Color PressedBackgroundColor { set => setPart(ref _pressedBgColor, BgPartName, ItemState.Pressed, value); get => _pressedBgColor; }
254
255         /// <summary>
256         /// Sets or gets the disabled background color of a rotary selector item object.
257         /// </summary>
258         /// <since_tizen> preview </since_tizen>
259         [Obsolete("This has been deprecated in API12")]
260         public Color DisabledBackgroundColor { set => setPart(ref _disabledBgColor, BgPartName, ItemState.Disabled, value); get => _disabledBgColor; }
261
262         /// <summary>
263         /// Sets or gets the selected background color of a rotary selector item object.
264         /// </summary>
265         /// <since_tizen> preview </since_tizen>
266         [Obsolete("This has been deprecated in API12")]
267         public Color SelectedBackgroundColor { set => setPart(ref _selectedBgColor, BgPartName, ItemState.Selected, value); get => _selectedBgColor; }
268
269         /// <summary>
270         /// Sets or gets the selector icon image of a rotary selector item object.
271         /// </summary>
272         /// <since_tizen> preview </since_tizen>
273         [Obsolete("This has been deprecated in API12")]
274         public Image SelectorIconImage { set => setPart(ref _selectorIconImage, SelectorIconPartName, ItemState.Normal, value); get => _selectorIconImage; }
275
276         internal enum ItemState
277         {
278             Normal,
279             Pressed,
280             Disabled,
281             Selected
282         }
283     }
284 }