Define the structure of the menu application:
typedef struct _Menu { Evas_Object* layout; // The "edje" layout Evas_Object *nf; // The Naviframe to handle the views Tbarmenu *menu; // The main menu Tbarmenu *sidemenu; // The side menu Mainview *main_view; // The main view Calview *cal_view; // The calendar view Dateview *date_view; // The date and time view Setview *settings_view; //The settings view Eina_Bool sdmenu_up; // A bool variable to keep the side menu status } Menu;
This structure contains some specific variables for the views and the menus.
Define the main view by using the structure mainview
, it is composed of a
box
(the main container), an image img, and a label lb_main
.
typedef struct _Mainview { Evas_Object *box; //The main container of the view Evas_Object *img; //An image Evas_Object *lb_day; //A label } Mainview;
The date view is very similar, it contains a box
, a datetime
widget
and a label lb_date
.
typedef struct _Dateview { Evas_Object *box; //The main container of the view Evas_Object *datetime; //A datetime widget Evas_Object *lb_date; //A label } Dateview;
The last view is the calendar, it contains a box
, a calendar
and a
label lb_cal
.
typedef struct _Calview { Evas_Object *box; //The main container of the view Evas_Object *calendar; //A calendar widget Evas_Object *lb_cal; //A label widget } Calview;
The last members of the application structure are the 2 menus. The main menu
is fixed and visible, and the side menu is hidden on application starts. These
menus are represented by the Tbarmenu
structure.
typedef struct _Tbarmenu { Evas_Object *tb; //The toolbar Elm_Object_Item *submenu; //The submenu item } Tbarmenu;
The whole code__ : structure_menu.h
next__: Defining the Application Theme