summaryrefslogtreecommitdiff
path: root/src/lib/elementary/elm_widget_item_eo.legacy.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/lib/elementary/elm_widget_item_eo.legacy.h')
-rw-r--r--src/lib/elementary/elm_widget_item_eo.legacy.h799
1 files changed, 799 insertions, 0 deletions
diff --git a/src/lib/elementary/elm_widget_item_eo.legacy.h b/src/lib/elementary/elm_widget_item_eo.legacy.h
new file mode 100644
index 0000000..d1fc974
--- /dev/null
+++ b/src/lib/elementary/elm_widget_item_eo.legacy.h
@@ -0,0 +1,799 @@
1#ifndef _ELM_WIDGET_ITEM_EO_LEGACY_H_
2#define _ELM_WIDGET_ITEM_EO_LEGACY_H_
3
4#ifndef _ELM_WIDGET_ITEM_EO_CLASS_TYPE
5#define _ELM_WIDGET_ITEM_EO_CLASS_TYPE
6
7typedef Eo Elm_Widget_Item;
8
9#endif
10
11#ifndef _ELM_WIDGET_ITEM_EO_TYPES
12#define _ELM_WIDGET_ITEM_EO_TYPES
13
14
15#endif
16
17/**
18 * @brief Control size restriction state of an object's tooltip
19 *
20 * This function returns whether a tooltip is allowed to expand beyond its
21 * parent window's canvas. It will instead be limited only by the size of the
22 * display.
23 *
24 * @param[in] obj The object.
25 * @param[in] disable If @c true, size restrictions are disabled
26 *
27 * @return @c false on failure, @c true on success
28 *
29 * @ingroup Elm_Object_Item_Group
30 */
31EAPI Eina_Bool elm_object_item_tooltip_window_mode_set(Elm_Widget_Item *obj, Eina_Bool disable);
32
33/**
34 * @brief Control size restriction state of an object's tooltip
35 *
36 * This function returns whether a tooltip is allowed to expand beyond its
37 * parent window's canvas. It will instead be limited only by the size of the
38 * display.
39 *
40 * @param[in] obj The object.
41 *
42 * @return If @c true, size restrictions are disabled
43 *
44 * @ingroup Elm_Object_Item_Group
45 */
46EAPI Eina_Bool elm_object_item_tooltip_window_mode_get(const Elm_Widget_Item *obj);
47
48/**
49 * @brief Control a different style for this item tooltip.
50 *
51 * @note before you set a style you should define a tooltip with
52 * @ref elm_object_item_tooltip_content_cb_set or
53 * @ref elm_object_item_tooltip_text_set
54 *
55 * See: elm_object_tooltip_style_set() for more details.
56 *
57 * @param[in] obj The object.
58 * @param[in] style The theme style used/to use (default, transparent, ...)
59 *
60 * @ingroup Elm_Object_Item_Group
61 */
62EAPI void elm_object_item_tooltip_style_set(Elm_Widget_Item *obj, const char *style);
63
64/**
65 * @brief Control a different style for this item tooltip.
66 *
67 * @note before you set a style you should define a tooltip with
68 * @ref elm_object_item_tooltip_content_cb_set or
69 * @ref elm_object_item_tooltip_text_set
70 *
71 * See: elm_object_tooltip_style_set() for more details.
72 *
73 * @param[in] obj The object.
74 *
75 * @return The theme style used/to use (default, transparent, ...)
76 *
77 * @ingroup Elm_Object_Item_Group
78 */
79EAPI const char *elm_object_item_tooltip_style_get(const Elm_Widget_Item *obj);
80
81/**
82 * @brief Control the type of mouse pointer/cursor decoration to be shown, when
83 * the mouse pointer is over the given item
84 *
85 * This function works analogously as elm_object_cursor_set(), but here the
86 * cursor's changing area is restricted to the item's area, and not the whole
87 * widget's. Note that that item cursors have precedence over widget cursors,
88 * so that a mouse over an item with custom cursor set will always show that
89 * cursor.
90 *
91 * If this function is called twice for an object, a previously set cursor will
92 * be unset on the second call.
93 *
94 * @param[in] obj The object.
95 * @param[in] cursor The cursor type's name
96 *
97 * @ingroup Elm_Object_Item_Group
98 */
99EAPI void elm_object_item_cursor_set(Elm_Widget_Item *obj, const char *cursor);
100
101/**
102 * @brief Control the type of mouse pointer/cursor decoration to be shown, when
103 * the mouse pointer is over the given item
104 *
105 * This function works analogously as elm_object_cursor_set(), but here the
106 * cursor's changing area is restricted to the item's area, and not the whole
107 * widget's. Note that that item cursors have precedence over widget cursors,
108 * so that a mouse over an item with custom cursor set will always show that
109 * cursor.
110 *
111 * If this function is called twice for an object, a previously set cursor will
112 * be unset on the second call.
113 *
114 * @param[in] obj The object.
115 *
116 * @return The cursor type's name
117 *
118 * @ingroup Elm_Object_Item_Group
119 */
120EAPI const char *elm_object_item_cursor_get(const Elm_Widget_Item *obj);
121
122/**
123 * @brief Control a different @c style for a given custom cursor set for an
124 * item.
125 *
126 * This function only makes sense when one is using custom mouse cursor
127 * decorations defined in a theme file, which can have, given a cursor
128 * name/type, alternate styles on it. It works analogously as
129 * elm_object_cursor_style_set(), but here applies only to item objects.
130 *
131 * @warning Before you set a cursor style you should have defined a custom
132 * cursor previously on the item, with @ref elm_object_item_cursor_set
133 *
134 * @param[in] obj The object.
135 * @param[in] style The theme style to use/in use (e.g. $"default",
136 * $"transparent", etc)
137 *
138 * @ingroup Elm_Object_Item_Group
139 */
140EAPI void elm_object_item_cursor_style_set(Elm_Widget_Item *obj, const char *style);
141
142/**
143 * @brief Control a different @c style for a given custom cursor set for an
144 * item.
145 *
146 * This function only makes sense when one is using custom mouse cursor
147 * decorations defined in a theme file, which can have, given a cursor
148 * name/type, alternate styles on it. It works analogously as
149 * elm_object_cursor_style_set(), but here applies only to item objects.
150 *
151 * @warning Before you set a cursor style you should have defined a custom
152 * cursor previously on the item, with @ref elm_object_item_cursor_set
153 *
154 * @param[in] obj The object.
155 *
156 * @return The theme style to use/in use (e.g. $"default", $"transparent", etc)
157 *
158 * @ingroup Elm_Object_Item_Group
159 */
160EAPI const char *elm_object_item_cursor_style_get(const Elm_Widget_Item *obj);
161
162/**
163 * @brief Control if the (custom)cursor for a given item should be searched in
164 * its theme, also, or should only rely on the rendering engine.
165 *
166 * @note This call is of use only if you've set a custom cursor for items, with
167 * @ref elm_object_item_cursor_set.
168 *
169 * @note By default, cursors will only be looked for between those provided by
170 * the rendering engine.
171 *
172 * @param[in] obj The object.
173 * @param[in] engine_only Use @c true to have cursors looked for only on those
174 * provided by the rendering engine, @c false to have them searched on the
175 * widget's theme, as well.
176 *
177 * @ingroup Elm_Object_Item_Group
178 */
179EAPI void elm_object_item_cursor_engine_only_set(Elm_Widget_Item *obj, Eina_Bool engine_only);
180
181/**
182 * @brief Control if the (custom)cursor for a given item should be searched in
183 * its theme, also, or should only rely on the rendering engine.
184 *
185 * @note This call is of use only if you've set a custom cursor for items, with
186 * @ref elm_object_item_cursor_set.
187 *
188 * @note By default, cursors will only be looked for between those provided by
189 * the rendering engine.
190 *
191 * @param[in] obj The object.
192 *
193 * @return Use @c true to have cursors looked for only on those provided by the
194 * rendering engine, @c false to have them searched on the widget's theme, as
195 * well.
196 *
197 * @ingroup Elm_Object_Item_Group
198 */
199EAPI Eina_Bool elm_object_item_cursor_engine_only_get(const Elm_Widget_Item *obj);
200
201/**
202 * @brief Control a content of an object item
203 *
204 * This sets a new object to an item as a content object. If any object was
205 * already set as a content object in the same part, previous object will be
206 * deleted automatically.
207 *
208 * @param[in] obj The object.
209 * @param[in] part The content part name (NULL for the default content)
210 * @param[in] content The content of the object item
211 *
212 * @ingroup Elm_Object_Item_Group
213 */
214EAPI void elm_object_item_part_content_set(Elm_Widget_Item *obj, const char *part, Efl_Canvas_Object *content);
215
216/**
217 * @brief Control a content of an object item
218 *
219 * This sets a new object to an item as a content object. If any object was
220 * already set as a content object in the same part, previous object will be
221 * deleted automatically.
222 *
223 * @param[in] obj The object.
224 * @param[in] part The content part name (NULL for the default content)
225 *
226 * @return The content of the object item
227 *
228 * @ingroup Elm_Object_Item_Group
229 */
230EAPI Efl_Canvas_Object *elm_object_item_part_content_get(const Elm_Widget_Item *obj, const char *part);
231
232/**
233 * @brief Control a label of an object item
234 *
235 * @note Elementary object items may have many labels
236 *
237 * @param[in] obj The object.
238 * @param[in] part The text part name (NULL for the default label)
239 * @param[in] label Text of the label
240 *
241 * @ingroup Elm_Object_Item_Group
242 */
243EAPI void elm_object_item_part_text_set(Elm_Widget_Item *obj, const char *part, const char *label);
244
245/**
246 * @brief Control a label of an object item
247 *
248 * @note Elementary object items may have many labels
249 *
250 * @param[in] obj The object.
251 * @param[in] part The text part name (NULL for the default label)
252 *
253 * @return Text of the label
254 *
255 * @ingroup Elm_Object_Item_Group
256 */
257EAPI const char *elm_object_item_part_text_get(const Elm_Widget_Item *obj, const char *part);
258
259
260
261/**
262 * @brief Control the object item focused
263 *
264 * @param[in] obj The object.
265 * @param[in] focused The focused state
266 *
267 * @since 1.10
268 *
269 * @ingroup Elm_Object_Item_Group
270 */
271EAPI void elm_object_item_focus_set(Elm_Widget_Item *obj, Eina_Bool focused);
272
273/**
274 * @brief Control the object item focused
275 *
276 * @param[in] obj The object.
277 *
278 * @return The focused state
279 *
280 * @since 1.10
281 *
282 * @ingroup Elm_Object_Item_Group
283 */
284EAPI Eina_Bool elm_object_item_focus_get(const Elm_Widget_Item *obj);
285
286/**
287 * @brief Control the style of an object item
288 *
289 * @param[in] obj The object.
290 * @param[in] style The style of object item
291 *
292 * @since 1.9
293 *
294 * @ingroup Elm_Object_Item_Group
295 */
296EAPI void elm_object_item_style_set(Elm_Widget_Item *obj, const char *style);
297
298/**
299 * @brief Control the style of an object item
300 *
301 * @param[in] obj The object.
302 *
303 * @return The style of object item
304 *
305 * @since 1.9
306 *
307 * @ingroup Elm_Object_Item_Group
308 */
309EAPI const char *elm_object_item_style_get(const Elm_Widget_Item *obj);
310
311/**
312 * @brief Control the disabled state of a widget item.
313 *
314 * Elementary object item can be disabled, in which state they won't receive
315 * input and, in general, will be themed differently from their normal state,
316 * usually greyed out. Useful for contexts where you don't want your users to
317 * interact with some of the parts of you interface.
318 *
319 * This sets the state for the widget item, either disabling it or enabling it
320 * back.
321 *
322 * @param[in] obj The object.
323 * @param[in] disable @c true, if the widget item is disabled, @c false if it's
324 * enabled (or on errors)
325 *
326 * @ingroup Elm_Object_Item_Group
327 */
328EAPI void elm_object_item_disabled_set(Elm_Widget_Item *obj, Eina_Bool disable);
329
330/**
331 * @brief Control the disabled state of a widget item.
332 *
333 * Elementary object item can be disabled, in which state they won't receive
334 * input and, in general, will be themed differently from their normal state,
335 * usually greyed out. Useful for contexts where you don't want your users to
336 * interact with some of the parts of you interface.
337 *
338 * This sets the state for the widget item, either disabling it or enabling it
339 * back.
340 *
341 * @param[in] obj The object.
342 *
343 * @return @c true, if the widget item is disabled, @c false if it's enabled
344 * (or on errors)
345 *
346 * @ingroup Elm_Object_Item_Group
347 */
348EAPI Eina_Bool elm_object_item_disabled_get(const Elm_Widget_Item *obj);
349
350/**
351 * @brief Get highlight order
352 *
353 * @param[in] obj The object.
354 *
355 * @return List of evas canvas objects
356 *
357 * @since 1.8
358 *
359 * @ingroup Elm_Object_Item_Group
360 */
361EAPI const Eina_List *elm_object_item_access_order_get(Elm_Widget_Item *obj);
362
363/**
364 * @brief Set highlight order
365 *
366 * @param[in] obj The object.
367 * @param[in] objs Order of objects to pass highlight
368 *
369 * @since 1.8
370 *
371 * @ingroup Elm_Object_Item_Group
372 */
373EAPI void elm_object_item_access_order_set(Elm_Widget_Item *obj, Eina_List *objs);
374
375/**
376 * @brief Get the widget object's handle which contains a given item
377 *
378 * @note This returns the widget object itself that an item belongs to. Note:
379 * Every elm_object_item supports this API
380 *
381 * @param[in] obj The object.
382 *
383 * @return The widget object
384 *
385 * @ingroup Elm_Object_Item_Group
386 */
387EAPI Efl_Canvas_Object *elm_object_item_widget_get(const Elm_Widget_Item *obj);
388
389
390/**
391 * @brief Set the text to be shown in a given object item's tooltips.
392 *
393 * Setup the text as tooltip to object. The item can have only one tooltip, so
394 * any previous tooltip data - set with this function or
395 * @ref elm_object_item_tooltip_content_cb_set - is removed.
396 *
397 * See: elm_object_tooltip_text_set() for more details.
398 *
399 * @param[in] obj The object.
400 * @param[in] text The text to set in the content.
401 *
402 * @ingroup Elm_Object_Item_Group
403 */
404EAPI void elm_object_item_tooltip_text_set(Elm_Widget_Item *obj, const char *text);
405
406
407/**
408 * @brief Unset tooltip from item.
409 *
410 * Remove tooltip from item. The callback provided as del_cb to
411 * @ref elm_object_item_tooltip_content_cb_set will be called to notify it is
412 * not used anymore.
413 *
414 * See: elm_object_tooltip_unset() for more details. See:
415 * @ref elm_object_item_tooltip_content_cb_set
416 * @param[in] obj The object.
417 *
418 * @ingroup Elm_Object_Item_Group
419 */
420EAPI void elm_object_item_tooltip_unset(Elm_Widget_Item *obj);
421
422/**
423 * @brief Unset any custom mouse pointer/cursor decoration set to be shown,
424 * when the mouse pointer is over the given item, thus making it show the
425 * default cursor again.
426 *
427 * Use this call to undo any custom settings on this item's cursor decoration,
428 * bringing it back to defaults (no custom style set).
429 *
430 * See: elm_object_cursor_unset() See: @ref elm_object_item_cursor_set
431 * @param[in] obj The object.
432 *
433 * @ingroup Elm_Object_Item_Group
434 */
435EAPI void elm_object_item_cursor_unset(Elm_Widget_Item *obj);
436
437/**
438 * @brief Unset a content of an object item
439 *
440 * @note Elementary object items may have many contents
441 *
442 * @param[in] obj The object.
443 * @param[in] part The content part name to unset (NULL for the default
444 * content)
445 *
446 * @return Content object
447 *
448 * @ingroup Elm_Object_Item_Group
449 */
450EAPI Efl_Canvas_Object *elm_object_item_part_content_unset(Elm_Widget_Item *obj, const char *part);
451
452
453/**
454 * @brief Add a callback for a signal emitted by object item edje.
455 *
456 * This function connects a callback function to a signal emitted by the edje
457 * object of the object item. Globs can occur in either the emission or source
458 * name.
459 *
460 * @param[in] obj The object.
461 * @param[in] emission The signal's name.
462 * @param[in] source The signal's source.
463 * @param[in] func The callback function to be executed when the signal is
464 * emitted.
465 * @param[in] data A pointer to data to pass to the callback function.
466 *
467 * @since 1.8
468 *
469 * @ingroup Elm_Object_Item_Group
470 */
471EAPI void elm_object_item_signal_callback_add(Elm_Widget_Item *obj, const char *emission, const char *source, Elm_Object_Item_Signal_Cb func, void *data);
472
473/**
474 * @brief Remove a signal-triggered callback from a object item edje object.
475 *
476 * This function removes the last callback, previously attached to a signal
477 * emitted by an underlying Edje object of @c it, whose parameters @c emission,
478 * @c source and @c func match exactly with those passed to a previous call to
479 * @ref elm_object_item_signal_callback_add. The data pointer that was passed
480 * to this call will be returned.
481 *
482 * See: @ref elm_object_item_signal_callback_add
483 *
484 * @param[in] obj The object.
485 * @param[in] emission The signal's name.
486 * @param[in] source The signal's source.
487 * @param[in] func The callback function to be executed when the signal is
488 * emitted.
489 *
490 * @return The data pointer of the signal callback or @c NULL, on errors.
491 *
492 * @since 1.8
493 *
494 * @ingroup Elm_Object_Item_Group
495 */
496EAPI void *elm_object_item_signal_callback_del(Elm_Widget_Item *obj, const char *emission, const char *source, Elm_Object_Item_Signal_Cb func);
497
498/**
499 * @brief Send a signal to the edje object of the widget item.
500 *
501 * This function sends a signal to the edje object of the obj item. An edje
502 * program can respond to a signal by specifying matching 'signal' and 'source'
503 * fields. Don't use this unless you want to also handle resetting of part
504 * states to default on every unrealize in case of genlist/gengrid.
505 *
506 * @param[in] obj The object.
507 * @param[in] emission The signal's name.
508 * @param[in] source The signal's source.
509 *
510 * @ingroup Elm_Object_Item_Group
511 */
512EAPI void elm_object_item_signal_emit(Elm_Widget_Item *obj, const char *emission, const char *source);
513
514/**
515 * @brief Set the text to read out when in accessibility mode
516 *
517 * @param[in] obj The object.
518 * @param[in] txt The text that describes the widget to people with poor or no
519 * vision
520 *
521 * @ingroup Elm_Object_Item_Group
522 */
523EAPI void elm_object_item_access_info_set(Elm_Widget_Item *obj, const char *txt);
524
525/**
526 * @brief Get an accessible object of the object item.
527 *
528 * @param[in] obj The object.
529 *
530 * @return Accessible object of the object item or NULL for any error
531 *
532 * @since 1.8
533 *
534 * @ingroup Elm_Object_Item_Group
535 */
536EAPI Efl_Canvas_Object *elm_object_item_access_object_get(const Elm_Widget_Item *obj);
537
538/**
539 * @brief Set the text for an object item's part, marking it as translatable.
540 *
541 * The string to set as @c text must be the original one. Do not pass the
542 * return of @c gettext() here. Elementary will translate the string internally
543 * and set it on the object item using @ref elm_object_item_part_text_set, also
544 * storing the original string so that it can be automatically translated when
545 * the language is changed with elm_language_set(). The @c domain will be
546 * stored along to find the translation in the correct catalog. It can be NULL,
547 * in which case it will use whatever domain was set by the application with
548 * @c textdomain(). This is useful in case you are building a library on top of
549 * Elementary that will have its own translatable strings, that should not be
550 * mixed with those of programs using the library.
551 *
552 * @param[in] obj The object.
553 * @param[in] part The name of the part to set
554 * @param[in] domain The translation domain to use
555 * @param[in] label The original, non-translated text to set
556 *
557 * @since 1.8
558 *
559 * @ingroup Elm_Object_Item_Group
560 */
561EAPI void elm_object_item_domain_translatable_part_text_set(Elm_Widget_Item *obj, const char *part, const char *domain, const char *label);
562
563/**
564 * @brief Get the original string set as translatable for an object item.
565 *
566 * When setting translated strings, the function
567 * @ref elm_object_item_part_text_get will return the translation returned by
568 * @c gettext(). To get the original string use this function.
569 *
570 * @param[in] obj The object.
571 * @param[in] part The name of the part that was set
572 *
573 * @return The original, untranslated string
574 *
575 * @since 1.8
576 *
577 * @ingroup Elm_Object_Item_Group
578 */
579EAPI const char *elm_object_item_translatable_part_text_get(const Elm_Widget_Item *obj, const char *part);
580
581
582/**
583 * @brief Mark the part text to be translatable or not.
584 *
585 * Once you mark the part text to be translatable, the text will be translated
586 * internally regardless of @ref elm_object_item_part_text_set and
587 * @ref elm_object_item_domain_translatable_part_text_set. In other case, if
588 * you set the Elementary policy that all text will be translatable in default,
589 * you can set the part text to not be translated by calling this API.
590 *
591 * See: @ref elm_object_item_domain_translatable_part_text_set See:
592 * @ref elm_object_item_part_text_set See: elm_policy()
593 *
594 * @param[in] obj The object.
595 * @param[in] part The part name of the translatable text
596 * @param[in] domain The translation domain to use
597 * @param[in] translatable @c true, the part text will be translated
598 * internally. @c false, otherwise.
599 *
600 * @since 1.8
601 *
602 * @ingroup Elm_Object_Item_Group
603 */
604EAPI void elm_object_item_domain_part_text_translatable_set(Elm_Widget_Item *obj, const char *part, const char *domain, Eina_Bool translatable);
605
606/**
607 * @brief This returns track object of the item.
608 *
609 * @note This gets a rectangle object that represents the object item's
610 * internal object. If you want to check the geometry, visibility of the item,
611 * you can call the evas apis such as evas_object_geometry_get(),
612 * evas_object_visible_get() to the track object. Note that all of the widget
613 * items may/may not have the internal object so this api may return @c NULL if
614 * the widget item doesn't have it. Additionally, the widget item is
615 * managed/controlled by the widget, the widget item could be changed(moved,
616 * resized even deleted) anytime by it's own widget's decision. So please dont'
617 * change the track object as well as don't keep the track object in your side
618 * as possible but get the track object at the moment you need to refer.
619 * Otherwise, you need to add some callbacks to the track object to track it's
620 * attributes changes.
621 *
622 * @warning After use the track object, please call the
623 * @ref elm_object_item_untrack() paired to elm_object_item_track definitely to
624 * free the track object properly. Don't delete the track object.
625 *
626 * See: @ref elm_object_item_untrack See: @ref elm_object_item_track_get
627 *
628 * @param[in] obj The object.
629 *
630 * @return The track object
631 *
632 * @since 1.8
633 *
634 * @ingroup Elm_Object_Item_Group
635 */
636EAPI Efl_Canvas_Object *elm_object_item_track(Elm_Widget_Item *obj);
637
638/**
639 * @brief This retrieve the track object of the item.
640 *
641 * @note This retrieves the track object that was returned from
642 * @ref elm_object_item_track.
643 *
644 * See: @ref elm_object_item_track See: @ref elm_object_item_track_get
645 *
646 * @param[in] obj The object.
647 *
648 * @since 1.8
649 *
650 * @ingroup Elm_Object_Item_Group
651 */
652EAPI void elm_object_item_untrack(Elm_Widget_Item *obj);
653
654/**
655 * @brief Get the track object reference count.
656 *
657 * @note This gets the reference count for the track object. Whenever you call
658 * the @ref elm_object_item_track, the reference count will be increased by
659 * one. Likely the reference count will be decreased again when you call the
660 * @ref elm_object_item_untrack. Unless the reference count reaches to zero,
661 * the track object won't be deleted. So please be sure to call
662 * @ref elm_object_item_untrack() paired to the elm_object_item_track call
663 * count.
664 *
665 * See: @ref elm_object_item_track See: @ref elm_object_item_track_get
666 *
667 * @param[in] obj The object.
668 *
669 * @return Track object reference count
670 *
671 * @since 1.8
672 *
673 * @ingroup Elm_Object_Item_Group
674 */
675EAPI int elm_object_item_track_get(const Elm_Widget_Item *obj);
676
677
678/**
679 * @brief Set the function to be called when an item from the widget is freed.
680 *
681 * @note Every elm_object_item supports this API
682 *
683 * @param[in] obj The object.
684 * @param[in] del_cb The function called
685 *
686 * @ingroup Elm_Object_Item_Group
687 */
688EAPI void elm_object_item_del_cb_set(Elm_Widget_Item *obj, Evas_Smart_Cb del_cb);
689
690/**
691 * @brief Set the content to be shown in the tooltip item.
692 *
693 * Setup the tooltip to item. The item can have only one tooltip, so any
694 * previous tooltip data is removed. @c func(with @c data) will be called every
695 * time that need show the tooltip and it should return a valid Evas_Object.
696 * This object is then managed fully by tooltip system and is deleted when the
697 * tooltip is gone.
698 *
699 * See: elm_object_tooltip_content_cb_set() for more details.
700 *
701 * @param[in] obj The object.
702 * @param[in] func The function used to create the tooltip contents.
703 * @param[in] data What to provide to @c func as callback data/context.
704 * @param[in] del_cb Called when data is not needed anymore, either when
705 * another callback replaces @c func, the tooltip is unset with
706 * @ref elm_object_item_tooltip_unset or the owner @c item dies. This callback
707 * receives as the first parameter the given @c data, and @c event_info is the
708 * item.
709 *
710 * @ingroup Elm_Object_Item_Group
711 */
712EAPI void elm_object_item_tooltip_content_cb_set(Elm_Widget_Item *obj, Elm_Tooltip_Item_Content_Cb func, const void *data, Evas_Smart_Cb del_cb);
713
714/**
715 * @brief Register object item as an accessible object.
716 *
717 * @param[in] obj The object.
718 *
719 * @return Accessible object of the object item or NULL for any error
720 *
721 * @since 1.8
722 *
723 * @ingroup Elm_Object_Item_Group
724 */
725EAPI Efl_Canvas_Object *elm_object_item_access_register(Elm_Widget_Item *obj);
726
727/** Unregister accessible object of the object item.
728 *
729 * @since 1.8
730 *
731 * @ingroup Elm_Object_Item_Group
732 */
733EAPI void elm_object_item_access_unregister(Elm_Widget_Item *obj);
734
735/** Unset highlight order
736 *
737 * @since 1.8
738 *
739 * @ingroup Elm_Object_Item_Group
740 */
741EAPI void elm_object_item_access_order_unset(Elm_Widget_Item *obj);
742
743
744
745/**
746 * @brief Get the next object with specific focus direction.
747 *
748 * @param[in] obj The object.
749 * @param[in] dir Focus direction
750 *
751 * @return Focus next object
752 *
753 * @since 1.16
754 *
755 * @ingroup Elm_Object_Item_Group
756 */
757EAPI Efl_Canvas_Object *elm_object_item_focus_next_object_get(const Elm_Widget_Item *obj, Elm_Focus_Direction dir);
758
759/**
760 * @brief Set the next object with specific focus direction.
761 *
762 * @param[in] obj The object.
763 * @param[in] next Focus next object
764 * @param[in] dir Focus direction
765 *
766 * @since 1.16
767 *
768 * @ingroup Elm_Object_Item_Group
769 */
770EAPI void elm_object_item_focus_next_object_set(Elm_Widget_Item *obj, Efl_Canvas_Object *next, Elm_Focus_Direction dir);
771
772/**
773 * @brief Get the next object item with specific focus direction.
774 *
775 * @param[in] obj The object.
776 * @param[in] dir Focus direction
777 *
778 * @return Focus next object item
779 *
780 * @since 1.16
781 *
782 * @ingroup Elm_Object_Item_Group
783 */
784EAPI Elm_Widget_Item *elm_object_item_focus_next_item_get(const Elm_Widget_Item *obj, Elm_Focus_Direction dir);
785
786/**
787 * @brief Set the next object item with specific focus direction.
788 *
789 * @param[in] obj The object.
790 * @param[in] next_item Focus next object item
791 * @param[in] dir Focus direction
792 *
793 * @since 1.16
794 *
795 * @ingroup Elm_Object_Item_Group
796 */
797EAPI void elm_object_item_focus_next_item_set(Elm_Widget_Item *obj, Elm_Widget_Item *next_item, Elm_Focus_Direction dir);
798
799#endif