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