1 #ifndef EFL_UI_TAB_BAR_PRIVATE_H
2 #define EFL_UI_TAB_BAR_PRIVATE_H
3 
4 typedef struct _Efl_Ui_Tab_Bar_Data                   Efl_Ui_Tab_Bar_Data;
5 
6 struct _Efl_Ui_Tab_Bar_Data
7 {
8    Efl_Ui_Box                           *bx;
9    Efl_Ui_Item                          *selected, *fallback_selection;
10    Eina_Bool                             in_value_change;
11    Eina_Bool                             allow_manual_deselection : 1;
12 };
13 
14 #define EFL_UI_TAB_BAR_DATA_GET(o, sd) \
15   Efl_Ui_Tab_Bar_Data *sd = efl_data_scope_get(o, EFL_UI_TAB_BAR_CLASS)
16 
17 #define EFL_UI_TAB_BAR_DATA_GET_OR_RETURN(o, sd, ...) \
18   Efl_Ui_Tab_Bar_Data *sd = efl_data_scope_safe_get(o, EFL_UI_TAB_BAR_CLASS); \
19   if (EINA_UNLIKELY(!sd))                            \
20     {                                                \
21        ERR("No widget data for object %p (%s)",      \
22            o, evas_object_type_get(o));              \
23        return __VA_ARGS__;                           \
24     }
25 
26 
27 #endif
28