Custom style created for buttons
[apps/native/gear-racing-controller.git] / inc / view / view_base.h
index 5afdbc8..d4a5e5b 100644 (file)
 
 #include "gear-racing-controller.h"
 
-Evas_Object *view_base_create_button(Evas_Object *parent, char *part, char *text, Evas_Smart_Cb callback, void *data);
-Evas_Object *view_base_create_layout(Evas_Object *parent);
+typedef void (* t_view_cb)(void);
+
+typedef enum _e_horizontal_align {
+       HORIZONTAL_ALIGN_LEFT,
+       HORIZONTAL_ALIGN_RIGHT,
+       HORIZONTAL_ALIGN_CENTER,
+} e_horizontal_align;
+
+typedef enum _e_veritcal_align {
+       VERTICAL_ALIGN_TOP,
+       VERTICAL_ALIGN_BOTTOM,
+       VERTICAL_ALIGN_CENTER
+} e_vertical_align;
+
+typedef struct _s_view_base {
+       Evas_Object *layout;
+       t_view_cb show_cb;
+       t_view_cb hide_cb;
+       t_view_cb update_cb;
+} s_view_base;
+
+void view_base_init(Evas_Object *parent);
+
+void view_base_get_resource(const char *edj_file_in, char *edj_path_out);
+Evas_Object *view_base_create_button(Evas_Object *parent, char *part, char *text, char *image_path, char *style, Evas_Smart_Cb callback, void *data);
+Evas_Object *view_base_create_layout(Evas_Object *parent, char *edj_file, char *group);
+void view_base_set_position(Evas_Object *image, int pos_X, int pos_Y,
+               e_horizontal_align horizontal_align, e_vertical_align vertical_align);
+void view_base_set_angle(Evas_Object *image, float angle, float rotation_center_x, float rotation_center_y);
+void view_base_show(s_view_base *view);
+void view_base_hide(s_view_base *view);
+void view_base_update(s_view_base *view);
 
 #endif /* VIEW_VIEW_BASE_H_ */