2 * Copyright (c) 2016 Samsung Electronics Co., Ltd All Rights Reserved
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.Collections.Generic;
21 namespace ElmSharp.Wearable
24 /// An instance to the Rotary Selector item is added. An item can be selected by the Rotary event or user item click.
26 /// <since_tizen> preview </since_tizen>
27 [Obsolete("This has been deprecated in API12")]
28 public class RotarySelectorItem
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";
42 Image _normalIconImage;
43 Image _pressedIconImage;
44 Image _disabledIconImage;
45 Image _selectedIconImage;
48 Image _pressedBgImage;
49 Image _disabledBgImage;
50 Image _selectedBgImage;
53 Color _pressedBgColor;
54 Color _disabledBgColor;
55 Color _selectedBgColor;
57 Image _selectorIconImage;
62 /// Sets or gets the handle of a rotary selector item object.
64 /// <since_tizen> preview </since_tizen>
65 [Obsolete("This has been deprecated in API12")]
70 if (_handle == value) return;
73 if (_handle == null) return;
75 setPart(ref _mainText, MainTextPartName);
76 setPart(ref _subText, SubTextPartName);
77 setPart(ref _mainTextColor, MainTextPartName, ItemState.Normal);
78 setPart(ref _subTextColor, SubTextPartName, ItemState.Normal);
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);
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);
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);
95 setPart(ref _selectorIconImage, SelectorIconPartName, ItemState.Normal);
104 void setPart(ref Image prop, string partName, ItemState state)
108 Interop.Eext.eext_rotary_selector_item_part_content_set(Handle, partName, (int)state, prop);
111 void setPart(ref Color prop, string partName, ItemState state)
113 if (prop != default(Color))
115 Interop.Eext.eext_rotary_selector_item_part_color_set(Handle, partName, (int)state, prop.R, prop.G, prop.B, prop.A);
119 void setPart(ref string prop, string partName)
123 Interop.Eext.eext_rotary_selector_item_part_text_set(Handle, partName, prop);
127 void setPart(ref Image prop, string partName, ItemState state, Image img)
129 if (prop == img) return;
133 Interop.Eext.eext_rotary_selector_item_part_content_set(Handle, partName, (int)state, img);
137 void setPart(ref Color prop, string partName, ItemState state, Color color)
139 if (prop == color) return;
143 Interop.Eext.eext_rotary_selector_item_part_color_set(Handle, partName, (int)state, color.R, color.G, color.B, color.A);
147 void setPart(ref string prop, string partName, string txt)
149 if (prop == txt) return;
153 Interop.Eext.eext_rotary_selector_item_part_text_set(Handle, partName, txt);
158 /// Sets or gets the main text of a rotary selector item object.
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; }
165 /// Sets or gets the subtext of a rotary selector item object.
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; }
172 /// Sets or gets the subtext color of a rotary selector item object.
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; }
179 /// Sets or gets the subtext color of a rotary selector item object.
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; }
186 /// Sets or gets the normal icon image of a rotary selector item object.
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; }
193 /// Sets or gets the pressed icon image of a rotary selector item object.
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; }
200 /// Sets or gets the disabled icon image of a rotary selector item object.
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; }
207 /// Sets or gets the selected icon image of a rotary selector item object.
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; }
214 /// Sets or gets the normal background image of a rotary selector item object.
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; }
221 /// Sets or gets the pressed background image of a rotary selector item object.
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; }
228 /// Sets or gets the disabled background image of a rotary selector item object.
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; }
235 /// Sets or gets the selected background image of a rotary selector item object.
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; }
242 /// Sets or gets the normal background color of a rotary selector item object.
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; }
249 /// Sets or gets the pressed background color of a rotary selector item object.
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; }
256 /// Sets or gets the disabled background color of a rotary selector item object.
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; }
263 /// Sets or gets the selected background color of a rotary selector item object.
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; }
270 /// Sets or gets the selector icon image of a rotary selector item object.
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; }
276 internal enum ItemState