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.ComponentModel;
23 /// It inherits <see cref="GenItem"/>.
24 /// An instance to the gengrid item is added.
25 /// It contains the Update() method to update a gengrid item which is given.
27 /// <since_tizen> preview </since_tizen>
28 public class GenGridItem : GenItem
30 internal GenGridItem(object data, GenItemClass itemClass) : base(data, itemClass)
35 /// Gets or sets whether a given gengrid item is selected.
36 /// If one gengrid item is selected, any other previously selected items get unselected in favor of this new one.
39 /// If true, it is selected.
40 /// If false, it is unselected.
42 /// <since_tizen> preview </since_tizen>
43 public override bool IsSelected
47 return Interop.Elementary.elm_gengrid_item_selected_get(Handle);
51 Interop.Elementary.elm_gengrid_item_selected_set(Handle, value);
56 /// Sets or gets the cursor to be shown when the mouse is over the gengrid item.
58 /// <since_tizen> preview </since_tizen>
59 [EditorBrowsable(EditorBrowsableState.Never)]
60 public override string Cursor
64 return Interop.Elementary.elm_gengrid_item_cursor_get(Handle);
68 if (!string.IsNullOrEmpty(value))
70 Interop.Elementary.elm_gengrid_item_cursor_set(Handle, value);
74 Interop.Elementary.elm_gengrid_item_cursor_unset(Handle);
80 /// Sets or gets the style for this item cursor.
82 /// <since_tizen> preview </since_tizen>
83 [EditorBrowsable(EditorBrowsableState.Never)]
84 public override string CursorStyle
88 return Interop.Elementary.elm_gengrid_item_cursor_style_get(Handle);
92 Interop.Elementary.elm_gengrid_item_cursor_style_set(Handle, value);
97 /// Sets or gets the cursor engine only usage for this item cursor.
99 /// <since_tizen> preview </since_tizen>
100 [EditorBrowsable(EditorBrowsableState.Never)]
101 public override bool IsUseEngineCursor
105 return Interop.Elementary.elm_gengrid_item_cursor_engine_only_get(Handle);
109 Interop.Elementary.elm_gengrid_item_cursor_engine_only_set(Handle, value);
114 /// Sets or gets, or sets the style of the given gengrid item's tooltip.
116 /// <since_tizen> preview </since_tizen>
117 public override string TooltipStyle
121 return Interop.Elementary.elm_gengrid_item_tooltip_style_get(Handle);
125 Interop.Elementary.elm_gengrid_item_tooltip_style_set(Handle, value);
130 /// Gets the gengrid item's select mode.
132 /// <since_tizen> preview </since_tizen>
133 public override GenItemSelectionMode SelectionMode
137 return (GenItemSelectionMode)Interop.Elementary.elm_gengrid_item_select_mode_get(Handle);
141 Interop.Elementary.elm_gengrid_item_select_mode_set(Handle, (Interop.Elementary.Elm_Object_Select_Mode)value);
146 /// Gets or sets the gengrid item's row position, relative to the whole gengrid's grid area.
148 /// <since_tizen> preview </since_tizen>
154 Interop.Elementary.elm_gengrid_item_pos_get(Handle, out row, out column);
160 /// Gets or sets the gengrid item's column position, relative to the whole gengrid's grid area.
162 /// <since_tizen> preview </since_tizen>
168 Interop.Elementary.elm_gengrid_item_pos_get(Handle, out row, out column);
174 /// Sets the text to be shown in the gengrid item.
176 /// <param name="tooltip">The text to set.</param>
177 /// <since_tizen> preview </since_tizen>
178 public override void SetTooltipText(string tooltip)
180 Interop.Elementary.elm_gengrid_item_tooltip_text_set(Handle, tooltip);
184 /// Unsets the tooltip from item.
186 /// <since_tizen> preview </since_tizen>
187 public override void UnsetTooltip()
189 Interop.Elementary.elm_gengrid_item_tooltip_unset(Handle);
193 /// Updates the content of a given gengrid item.
194 /// This updates an item by calling all the GenItem class functions again to get the content, text, and states.
195 /// Use this when the original item data has changed and you want the changes to reflect.
198 /// <see cref="GenGrid.UpdateRealizedItems"/> to update the contents of all the realized items.
200 /// <since_tizen> preview </since_tizen>
201 public override void Update()
203 Interop.Elementary.elm_gengrid_item_update(Handle);
207 /// Sets the content to be shown in the tooltip item.
209 /// <since_tizen> preview </since_tizen>
210 protected override void UpdateTooltipDelegate()
212 Interop.Elementary.elm_gengrid_item_tooltip_content_cb_set(Handle,
213 TooltipContentDelegate != null ? _tooltipCb : null,