ecore_evas_callbacks.c
#include <Ecore.h>
#include <
Ecore_Evas.h
>
static
void
_destroy(Ecore_Evas *ee
EINA_UNUSED
)
{
printf(
"destroy\n"
);
ecore_main_loop_quit
();
}
static
void
_delete(Ecore_Evas *ee
EINA_UNUSED
)
{
printf(
"delete\n"
);
ecore_main_loop_quit
();
}
static
void
_focus_in(Ecore_Evas *ee
EINA_UNUSED
)
{
printf(
"focus_in\n"
);
}
static
void
_focus_out(Ecore_Evas *ee
EINA_UNUSED
)
{
printf(
"focus_out\n"
);
}
static
void
_hide(Ecore_Evas *ee
EINA_UNUSED
)
{
printf(
"hide\n"
);
}
static
void
_mouse_in(Ecore_Evas *ee
EINA_UNUSED
)
{
printf(
"mouse_in\n"
);
}
static
void
_show(Ecore_Evas *ee
EINA_UNUSED
)
{
printf(
"show\n"
);
}
static
void
_mouse_out(Ecore_Evas *ee
EINA_UNUSED
)
{
printf(
"mouse_out\n"
);
}
static
void
_move(Ecore_Evas *ee
EINA_UNUSED
)
{
printf(
"move\n"
);
}
static
void
_post_render(Ecore_Evas *ee
EINA_UNUSED
)
{
printf(
"post_render\n"
);
}
static
void
_pre_free(Ecore_Evas *ee
EINA_UNUSED
)
{
printf(
"pre_free\n"
);
}
static
void
_pre_render(Ecore_Evas *ee
EINA_UNUSED
)
{
printf(
"pre_render\n"
);
}
static
void
_resize(Ecore_Evas *ee
EINA_UNUSED
)
{
printf(
"resize\n"
);
}
int
main(
void
)
{
Ecore_Evas *ee;
Evas_Object
*bg;
ecore_evas_init
();
ee =
ecore_evas_new
(NULL, 0, 0, 200, 100, NULL);
ecore_evas_title_set
(ee,
"Ecore Evas Callbacks Example"
);
ecore_evas_show
(ee);
bg =
evas_object_rectangle_add
(
ecore_evas_get
(ee));
evas_object_color_set
(bg, 255, 128, 0, 255);
evas_object_resize
(bg, 9999, 9999);
evas_object_show
(bg);
//callbacks
ecore_evas_callback_delete_request_set
(ee, _delete);
ecore_evas_callback_destroy_set
(ee, _destroy);
ecore_evas_callback_focus_in_set
(ee, _focus_in);
ecore_evas_callback_focus_out_set
(ee, _focus_out);
ecore_evas_callback_hide_set
(ee, _hide);
ecore_evas_callback_mouse_in_set
(ee, _mouse_in);
ecore_evas_callback_mouse_out_set
(ee, _mouse_out);
ecore_evas_callback_move_set
(ee, _move);
ecore_evas_callback_post_render_set
(ee, _post_render);
ecore_evas_callback_pre_free_set
(ee, _pre_free);
ecore_evas_callback_pre_render_set
(ee, _pre_render);
ecore_evas_callback_resize_set
(ee, _resize);
ecore_evas_callback_show_set
(ee, _show);
ecore_main_loop_begin
();
ecore_evas_free
(ee);
ecore_evas_shutdown
();
return
0;
}