1 #ifndef EFL_UI_FOCUS_GRAPH_H
2 #define EFL_UI_FOCUS_GRAPH_H
3 
4 #include <stdio.h>
5 #include <stdlib.h>
6 #include <Eina.h>
7 
8 typedef struct _Opaque_Graph_Memeber Opaque_Graph_Member;
9 
10 
11 typedef struct {
12   Eina_List *relation;
13   int lvl;
14   unsigned int distance;
15 } Efl_Ui_Focus_Graph_Calc_Direction_Result;
16 
17 typedef struct {
18   Efl_Ui_Focus_Graph_Calc_Direction_Result right, left, top, bottom;
19 } Efl_Ui_Focus_Graph_Calc_Result;
20 
21 typedef struct {
22    size_t offset_focusable; //offset to the focusable
23 } Efl_Ui_Focus_Graph_Context;
24 
25 void efl_ui_focus_graph_calc(Efl_Ui_Focus_Graph_Context *context, Eina_Iterator *nodes, Opaque_Graph_Member *member, Efl_Ui_Focus_Graph_Calc_Result *result);
26 
27 #endif
28