forked from enlightenment/efl
ephysics: delete all worlds on exit
sure, it won't work until externals init / shutdown mess is fixed. SVN revision: 77458
This commit is contained in:
parent
6181303ab5
commit
7b7bef6087
|
@ -72,7 +72,7 @@ _win_del(void *data __UNUSED__, Evas_Object *obj __UNUSED__, void *event_info __
|
|||
}
|
||||
|
||||
static void
|
||||
_subwin_del(void *data, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__)
|
||||
_subwin_del_cb(void *data, Evas *e __UNUSED__, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__)
|
||||
{
|
||||
test_data_del(data);
|
||||
ephysics_shutdown();
|
||||
|
@ -157,8 +157,8 @@ test_win_add(Test_Data *test_data, const char *title, Eina_Bool autodel)
|
|||
evas_object_show(win);
|
||||
test_data->win = win;
|
||||
if (autodel)
|
||||
evas_object_smart_callback_add(win, "delete,request", _subwin_del,
|
||||
test_data);
|
||||
evas_object_event_callback_add(win, EVAS_CALLBACK_DEL,
|
||||
_subwin_del_cb, test_data);
|
||||
|
||||
ly = elm_layout_add(win);
|
||||
elm_win_resize_object_add(win, ly);
|
||||
|
@ -196,6 +196,7 @@ _main_win_add(char *autorun)
|
|||
win = elm_win_add(NULL, "main", ELM_WIN_BASIC);
|
||||
elm_win_title_set(win, "EPhysics Tests");
|
||||
evas_object_smart_callback_add(win, "delete,request", _win_del, NULL);
|
||||
elm_win_autodel_set(win, EINA_TRUE);
|
||||
evas_object_resize(win, 460, 560);
|
||||
evas_object_show(win);
|
||||
|
||||
|
|
|
@ -137,7 +137,7 @@ _world_populate(Camera_Data *camera_data)
|
|||
}
|
||||
|
||||
static void
|
||||
_win_del(void *data, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__)
|
||||
_win_del(void *data, Evas *e __UNUSED__, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__)
|
||||
{
|
||||
Camera_Data *camera_data = data;
|
||||
|
||||
|
@ -196,7 +196,7 @@ test_camera(void *data __UNUSED__, Evas_Object *obj __UNUSED__, void *event_info
|
|||
}
|
||||
|
||||
test_win_add((Test_Data *)camera_data, "Camera", EINA_FALSE);
|
||||
evas_object_smart_callback_add(camera_data->base.win, "delete,request",
|
||||
evas_object_event_callback_add(camera_data->base.win, EVAS_CALLBACK_DEL,
|
||||
_win_del, camera_data);
|
||||
|
||||
elm_layout_signal_callback_add(camera_data->base.layout, "restart",
|
||||
|
|
|
@ -161,7 +161,7 @@ _restart(void *data, Evas_Object *obj __UNUSED__, const char *emission __UNUSED_
|
|||
}
|
||||
|
||||
static void
|
||||
_win_del(void *data, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__)
|
||||
_win_del(void *data, Evas *e __UNUSED__, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__)
|
||||
{
|
||||
Track_Data *track_data = data;
|
||||
|
||||
|
@ -192,8 +192,8 @@ test_camera_track(void *data __UNUSED__, Evas_Object *obj __UNUSED__, void *even
|
|||
}
|
||||
|
||||
test_win_add((Test_Data *) track_data, "Camera Track", EINA_FALSE);
|
||||
evas_object_smart_callback_add(track_data->base.win,
|
||||
"delete,request", _win_del, track_data);
|
||||
evas_object_event_callback_add(track_data->base.win, EVAS_CALLBACK_DEL,
|
||||
_win_del, track_data);
|
||||
|
||||
elm_layout_signal_callback_add(track_data->base.layout, "restart",
|
||||
"test-theme", _restart, track_data);
|
||||
|
|
|
@ -127,7 +127,7 @@ _restart(void *data, Evas_Object *obj __UNUSED__, const char *emission __UNUSED_
|
|||
}
|
||||
|
||||
static void
|
||||
_win_del(void *data, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__)
|
||||
_win_del(void *data, Evas *e __UNUSED__, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__)
|
||||
{
|
||||
Collision_Data *collision_data = data;
|
||||
|
||||
|
@ -159,8 +159,8 @@ test_collision(void *data __UNUSED__, Evas_Object *obj __UNUSED__, void *event_i
|
|||
test_win_add((Test_Data *)collision_data, "Collision Detection", EINA_FALSE);
|
||||
elm_object_signal_emit(collision_data->base.layout, "borders,show",
|
||||
"ephysics_test");
|
||||
evas_object_smart_callback_add(collision_data->base.win,
|
||||
"delete,request", _win_del, collision_data);
|
||||
evas_object_event_callback_add(collision_data->base.win, EVAS_CALLBACK_DEL,
|
||||
_win_del, collision_data);
|
||||
elm_layout_signal_callback_add(collision_data->base.layout, "restart",
|
||||
"test-theme", _restart, collision_data);
|
||||
|
||||
|
|
|
@ -72,7 +72,7 @@ _restart(void *data, Evas_Object *obj __UNUSED__, const char *emission __UNUSED_
|
|||
}
|
||||
|
||||
static void
|
||||
_win_del(void *data, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__)
|
||||
_win_del(void *data, Evas *e __UNUSED__, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__)
|
||||
{
|
||||
Speed_Data *speed_data = data;
|
||||
|
||||
|
@ -106,8 +106,8 @@ test_collision_speed(void *data __UNUSED__, Evas_Object *obj __UNUSED__, void *e
|
|||
EINA_FALSE);
|
||||
elm_object_signal_emit(speed_data->base.layout, "borders,show",
|
||||
"ephysics_test");
|
||||
evas_object_smart_callback_add(speed_data->base.win,
|
||||
"delete,request", _win_del, speed_data);
|
||||
evas_object_event_callback_add(speed_data->base.win, EVAS_CALLBACK_DEL,
|
||||
_win_del, speed_data);
|
||||
elm_layout_signal_callback_add(speed_data->base.layout, "restart",
|
||||
"test-theme", _restart, speed_data);
|
||||
|
||||
|
|
|
@ -135,7 +135,7 @@ _restart(void *data, Evas_Object *obj __UNUSED__, const char *emission __UNUSED_
|
|||
}
|
||||
|
||||
static void
|
||||
_win_del(void *data, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__)
|
||||
_win_del(void *data, Evas *e __UNUSED__, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__)
|
||||
{
|
||||
Collision_Data *collision_data = data;
|
||||
|
||||
|
@ -165,8 +165,8 @@ test_delete(void *data __UNUSED__, Evas_Object *obj __UNUSED__, void *event_info
|
|||
}
|
||||
|
||||
test_win_add((Test_Data *)collision_data, "Delete Body", EINA_FALSE);
|
||||
evas_object_smart_callback_add(collision_data->base.win,
|
||||
"delete,request", _win_del, collision_data);
|
||||
evas_object_event_callback_add(collision_data->base.win, EVAS_CALLBACK_DEL,
|
||||
_win_del, collision_data);
|
||||
elm_object_signal_emit(collision_data->base.layout, "borders,show",
|
||||
"ephysics_test");
|
||||
elm_layout_signal_callback_add(collision_data->base.layout, "restart",
|
||||
|
|
|
@ -58,7 +58,7 @@ _world_populate(Test_Data *test_data)
|
|||
}
|
||||
|
||||
static void
|
||||
_win_del(void *data, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__)
|
||||
_win_del(void *data, Evas *e __UNUSED__, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__)
|
||||
{
|
||||
Test_Data *test_data = data;
|
||||
Ecore_Timer *timer = test_data->data;
|
||||
|
@ -96,8 +96,8 @@ test_growing_balls(void *data __UNUSED__, Evas_Object *obj __UNUSED__, void *eve
|
|||
|
||||
test_data = test_data_new();
|
||||
test_win_add(test_data, "Growing Balls", EINA_FALSE);
|
||||
evas_object_smart_callback_add(test_data->win, "delete,request", _win_del,
|
||||
test_data);
|
||||
evas_object_event_callback_add(test_data->win, EVAS_CALLBACK_DEL,
|
||||
_win_del, test_data);
|
||||
|
||||
elm_object_signal_emit(test_data->layout, "borders,show", "ephysics_test");
|
||||
elm_layout_signal_callback_add(test_data->layout, "restart", "test-theme",
|
||||
|
|
|
@ -138,7 +138,7 @@ _restart(void *data, Evas_Object *obj __UNUSED__, const char *emission __UNUSED_
|
|||
}
|
||||
|
||||
static void
|
||||
_win_del(void *data, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__)
|
||||
_win_del(void *data, Evas *e __UNUSED__, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__)
|
||||
{
|
||||
Velocity_Data *velocity_data = data;
|
||||
|
||||
|
@ -148,6 +148,7 @@ _win_del(void *data, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__)
|
|||
free(velocity_data);
|
||||
ephysics_shutdown();
|
||||
}
|
||||
|
||||
void
|
||||
test_velocity(void *data __UNUSED__, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__)
|
||||
{
|
||||
|
@ -167,8 +168,8 @@ test_velocity(void *data __UNUSED__, Evas_Object *obj __UNUSED__, void *event_in
|
|||
}
|
||||
|
||||
test_win_add((Test_Data *)velocity_data, "Velocity Getters", EINA_FALSE);
|
||||
evas_object_smart_callback_add(velocity_data->base.win,
|
||||
"delete,request", _win_del, velocity_data);
|
||||
evas_object_event_callback_add(velocity_data->base.win, EVAS_CALLBACK_DEL,
|
||||
_win_del, velocity_data);
|
||||
elm_layout_signal_callback_add(velocity_data->base.layout, "restart",
|
||||
"test-theme", _restart, velocity_data);
|
||||
|
||||
|
|
|
@ -12,7 +12,7 @@ struct _Old_Rate {
|
|||
};
|
||||
|
||||
static void
|
||||
_del_cb(void *data, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__)
|
||||
_win_del(void *data, Evas *e __UNUSED__, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__)
|
||||
{
|
||||
free(data);
|
||||
}
|
||||
|
@ -175,8 +175,8 @@ test_win_resize(void *data __UNUSED__, Evas_Object *obj __UNUSED__, void *event_
|
|||
evas_object_size_hint_weight_set(test_data->layout, EVAS_HINT_EXPAND,
|
||||
EVAS_HINT_EXPAND);
|
||||
elm_win_aspect_set(test_data->win, (double) WIDTH / HEIGHT);
|
||||
evas_object_smart_callback_add(test_data->win, "delete,request", _del_cb,
|
||||
test_data->data);
|
||||
evas_object_event_callback_add(test_data->win, EVAS_CALLBACK_DEL,
|
||||
_win_del, test_data->data);
|
||||
|
||||
world = ephysics_world_new();
|
||||
ephysics_world_render_geometry_set(world, 50, 40, WIDTH - 100, FLOOR_Y - 40);
|
||||
|
|
Loading…
Reference in New Issue