1 class Elm.Widget_Item(Eo.Base, Elm_Interface_Atspi_Accessible,
2 Elm_Interface_Atspi_Component)
4 eo_prefix: elm_wdg_item;
5 legacy_prefix: elm_object_item;
7 @property tooltip_window_mode {
8 [[Control size restriction state of an object's tooltip
10 This function returns whether a tooltip is allowed to expand beyond
11 its parent window's canvas.
12 It will instead be limited only by the size of the display.]]
16 return: bool; [[$false on failure, $true on success]]
19 disable: bool; [[If $true, size restrictions are disabled]]
22 @property tooltip_style {
23 [[Control a different style for this item tooltip.
25 Note: before you set a style you should define a tooltip with
26 @.tooltip_content_cb_set or
29 See: elm_object_tooltip_style_set() for more details.]]
35 style: const (char)*; [[the theme style used/to use (default, transparent, ...)]]
39 [[Control the type of mouse pointer/cursor decoration to be shown,
40 when the mouse pointer is over the given item
42 This function works analogously as elm_object_cursor_set(), but
43 here the cursor's changing area is restricted to the item's
44 area, and not the whole widget's. Note that that item cursors
45 have precedence over widget cursors, so that a mouse over an
46 item with custom cursor set will always show that cursor.
48 If this function is called twice for an object, a previously set
49 cursor will be unset on the second call.]]
55 cursor: const (char) *; [[the cursor type's name]]
58 @property cursor_style {
59 [[Conrol a different $style for a given custom cursor set for an item.
61 This function only makes sense when one is using custom mouse
62 cursor decorations defined in a theme file, which can have,
63 given a cursor name/type, alternate styles on it. It
64 works analogously as elm_object_cursor_style_set(), but here
65 applies only to item objects.
67 Warning: Before you set a cursor style you should have defined a
68 custom cursor previously on the item, with @.cursor.set]]
74 style: const (char) *; [[the theme style to use/in use (e.g. $"default", $"transparent", etc)]]
77 @property cursor_engine_only {
78 [[Control if the (custom)cursor for a given item should be
79 searched in its theme, also, or should only rely on the
82 Note: This call is of use only if you've set a custom cursor
83 for items, with @.cursor.set.
85 Note: By default, cursors will only be looked for between those
86 provided by the rendering engine.]]
92 engine_only: bool; [[Use $true to have cursors looked for only on those provided by the rendering engine, $false to have them searched on the widget's theme, as well.]]
95 @property part_content {
96 [[Control a content of an object item
98 This sets a new object to an item as a content object. If any object was
99 already set as a content object in the same part, previous object will be
100 deleted automatically.]]
106 part: const (char) * @nullable; [[The content part name (NULL for the default content)]]
109 content: Evas.Object *; [[The content of the object item]]
112 @property part_text {
113 [[Control a label of an object item
115 Note: Elementary object items may have many labels]]
121 part: const (char) * @nullable; [[The text part name (NULL for the default label)]]
124 label: const (char) *; [[Text of the label]]
127 @property part_text_custom @protected {
129 [[Get additional text part content]]
133 [[Save additional text part content]]
137 part: const (char) *;
140 label: const (char) *;
144 [[Control the object item focused
152 focused: bool; [[The focused state]]
156 [[Control the style of an object item
164 style: const (char) *; [[The style of object item]]
168 [[Control the disabled state of an widget item.
170 Elementary object item can be disabled, in which state they won't
171 receive input and, in general, will be themed differently from
172 their normal state, usually greyed out. Useful for contexts
173 where you don't want your users to interact with some of the
174 parts of you interface.
176 This sets the state for the widget item, either disabling it or
183 disable: bool; [[$true, if the widget item is disabled, $false if it's enabled (or on errors)]]
187 [[Get highlight order
190 return: const(list<Evas.Object *>) *;
193 [[Set highlight order
197 @in objs: own(list<Evas.Object *> *); [[Order of objects to pass highlight]]
201 [[Get the widget object's handle which contains a given item
203 Note: This returns the widget object itself that an item belongs to.
204 Note: Every elm_object_item supports this API]]
205 return: Evas.Object*; [[The widget object]]
208 [[Delete the given item.]]
210 pre_notify_del @protected {
211 [[notify deletion of widget item]]
215 [[Set the text to be shown in a given object item's tooltips.
217 Setup the text as tooltip to object. The item can have only one tooltip,
218 so any previous tooltip data - set with this function or
219 @.tooltip_content_cb_set - is removed.
221 See: elm_object_tooltip_text_set() for more details.]]
223 text: const (char) *; [[The text to set in the content.]]
226 tooltip_translatable_text_set @protected {
227 [[Set widget item tooltip as a text string]]
230 text: const (char) *;
234 [[Unset tooltip from item.
236 Remove tooltip from item. The callback provided as del_cb to
237 @.tooltip_content_cb_set will be called to notify
238 it is not used anymore.
240 See: elm_object_tooltip_unset() for more details.
241 See: @.tooltip_content_cb_set]]
244 [[Unset any custom mouse pointer/cursor decoration set to be
245 shown, when the mouse pointer is over the given
246 item, thus making it show the default cursor again.
248 Use this call to undo any custom settings on this item's cursor
249 decoration, bringing it back to defaults (no custom style set).
251 See: elm_object_cursor_unset()
255 [[Unset a content of an object item
257 Note: Elementary object items may have many contents]]
259 part: const (char) *; [[The content part name to unset (NULL for the default content)]]
261 return: Evas.Object*;
263 part_text_custom_update @protected {
264 [[Update additional text part content]]
267 signal_callback_add {
268 [[Add a callback for a signal emitted by object item edje.
270 This function connects a callback function to a signal emitted by the
271 edje object of the object item.
272 Globs can occur in either the emission or source name.
276 emission: const (char) *; [[The signal's name.]]
277 source: const (char) *; [[The signal's source.]]
278 func: Elm_Object_Item_Signal_Cb; [[The callback function to be executed when the signal is emitted.]]
279 data: void *; [[A pointer to data to pass to the callback function.]]
282 signal_callback_del {
283 [[Remove a signal-triggered callback from a object item edje object.
285 This function removes the last callback, previously attached to
286 a signal emitted by an underlying Edje object of $it, whose
287 parameters $emission, $source and $func match exactly with
288 those passed to a previous call to
289 @.signal_callback_add. The data pointer that was passed
290 to this call will be returned.
292 See: @.signal_callback_add
296 emission: const (char) *; [[The signal's name.]]
297 source: const (char) *; [[The signal's source.]]
298 func: Elm_Object_Item_Signal_Cb; [[The callback function to be executed when the signal is emitted.]]
300 return: void*; [[The data pointer of the signal callback or $NULL, on errors.]]
303 [[Send a signal to the edje object of the widget item.
305 This function sends a signal to the edje object of the obj item. An
306 edje program can respond to a signal by specifying matching
307 'signal' and 'source' fields.]]
309 emission: const (char) *; [[The signal's name.]]
310 source: const (char) *; [[The signal's source.]]
314 [[Set the text to read out when in accessibility mode]]
316 txt: const (char) *; [[The text that describes the widget to people with poor or no vision]]
319 access_object_get @const {
320 [[Get an accessible object of the object item.
323 return: Evas.Object*; [[Accessible object of the object item or NULL for any error]]
325 domain_translatable_part_text_set {
326 [[Set the text for an object item's part, marking it as translatable.
328 The string to set as $text must be the original one. Do not pass the
329 return of $gettext() here. Elementary will translate the string
330 internally and set it on the object item using
331 @.part_text.set, also storing the original string so that it
332 can be automatically translated when the language is changed with
333 elm_language_set(). The $domain will be stored along to find the
334 translation in the correct catalog. It can be NULL, in which case it will use
335 whatever domain was set by the application with $textdomain(). This is
336 useful in case you are building a library on top of Elementary that will have
337 its own translatable strings, that should not be mixed with those of programs
342 part: const (char) *; [[The name of the part to set]]
343 domain: const (char) *; [[The translation domain to use]]
344 label: const (char) *; [[The original, non-translated text to set]]
347 translatable_part_text_get @const {
348 [[Get the original string set as translatable for an object item.
350 When setting translated strings, the function @.part_text.get
351 will return the translation returned by $gettext(). To get the original
352 string use this function.
356 part: const (char) *; [[The name of the part that was set]]
358 return: const (char)*; [[The original, untranslated string]]
360 translate @protected {
364 domain_part_text_translatable_set {
365 [[Mark the part text to be translatable or not.
367 Once you mark the part text to be translatable, the text will be translated
368 internally regardless of @.part_text.set and
369 @.domain_translatable_part_text_set. In other case, if you
370 set the Elementary policy that all text will be translatable in default, you
371 can set the part text to not be translated by calling this API.
373 See: @.domain_translatable_part_text_set
379 part: const (char) *; [[The part name of the translatable text]]
380 domain: const (char) *; [[The translation domain to use]]
381 translatable: bool; [[$true, the part text will be translated internally. $false, otherwise.]]
385 [[This returns track object of the item.
387 Note: This gets a rectangle object that represents the object item's internal
388 object. If you want to check the geometry, visibility of the item, you
389 can call the evas apis such as evas_object_geometry_get(),
390 evas_object_visible_get() to the track object. Note that all of the
391 widget items may/may not have the internal object so this api may
392 return $NULL if the widget item doesn't have it. Additionally, the
393 widget item is managed/controlled by the widget, the widget item could
394 be changed(moved, resized even deleted) anytime by it's own widget's
395 decision. So please dont' change the track object as well as don't
396 keep the track object in your side as possible but get the track object
397 at the moment you need to refer. Otherwise, you need to add some
398 callbacks to the track object to track it's attributes changes.
400 Warning: After use the track object, please call the
401 @.untrack() paired to elm_object_item_track
402 definitely to free the track object properly. Don't delete the
409 return: Evas.Object*; [[The track object]]
412 [[This retrieve the track object of the item.
414 Note: This retrieves the track object that was returned from
423 [[Get the track object reference count.
425 Note: This gets the reference count for the track object. Whenever you call
426 the @.track, the reference count will be increased by
427 one. Likely the reference count will be decreased again when you call
428 the @.untrack. Unless the reference count reaches to
429 zero, the track object won't be deleted. So please be sure to call
430 @.untrack() paired to the elm_object_item_track call
439 track_cancel @protected {
440 [[Query track_cancel]]
444 [[Set the function to be called when an item from the widget is
447 Note: Every elm_object_item supports this API]]
449 del_cb: Evas_Smart_Cb @nullable; [[The function called]]
452 tooltip_content_cb_set {
453 [[Set the content to be shown in the tooltip item.
455 Setup the tooltip to item. The item can have only one tooltip,
456 so any previous tooltip data is removed. $func(with $data) will
457 be called every time that need show the tooltip and it should
458 return a valid Evas_Object. This object is then managed fully by
459 tooltip system and is deleted when the tooltip is gone.
461 See: elm_object_tooltip_content_cb_set() for more details.]]
463 func: Elm_Tooltip_Item_Content_Cb @nullable; [[the function used to create the tooltip contents.]]
464 data: const (void) * @optional; [[what to provide to $func as callback data/context.]]
465 del_cb: Evas_Smart_Cb @optional; [[called when data is not needed anymore, either when another callback replaces $func, the tooltip is unset with @.tooltip_unset or the owner $item dies. This callback receives as the first parameter the given $data, and $event_info is the item.]]
470 [[Register object item as an accessible object.
473 return: Evas.Object*; [[Accessible object of the object item or NULL for any error]]
476 [[Unregister accessible object of the object item.
481 [[Unset highlight order
492 focus_next_object_get @const {
493 [[Get the next object with specific focus direction.
497 dir: Elm.Focus_Direction; [[Focus direction]]
499 return: Evas.Object *; [[Focus next object]]
501 focus_next_object_set {
502 [[Set the next object with specific focus direction.
506 next: Evas.Object * @nullable; [[Focus next object]]
507 dir: Elm.Focus_Direction; [[Focus direction]]
510 focus_next_item_get @const {
511 [[Get the next object item with specific focus direction.
515 dir: Elm.Focus_Direction; [[Focus direction]]
517 return: Elm_Object_Item *; [[Focus next object item]]
519 focus_next_item_set {
520 [[Set the next object item with specific focus direction.
524 next_item: Elm_Object_Item * @nullable; [[Focus next object item]]
525 dir: Elm.Focus_Direction; [[Focus direction]]
532 //TIZEN_ONLY(20150713) : add widget_item name setter
533 Elm_Interface_Atspi_Accessible.name.get;
534 Elm_Interface_Atspi_Accessible.name.set;
536 Elm_Interface_Atspi_Accessible.state_set.get;
537 Elm_Interface_Atspi_Accessible.parent.get;
538 //TIZEN_ONLY(20150709) : atspi relations api
539 Elm_Interface_Atspi_Accessible.relationship_append;
540 Elm_Interface_Atspi_Accessible.relationship_remove;
542 Elm_Interface_Atspi_Component.extents.get;
543 Elm_Interface_Atspi_Component.extents.set;
544 Elm_Interface_Atspi_Component.alpha.get;
545 Elm_Interface_Atspi_Component.layer.get;
546 Elm_Interface_Atspi_Component.focus_grab;