From bb128645efa19772a5c1a039df9c46213feb4426 Mon Sep 17 00:00:00 2001 From: David Walter Seikel Date: Sun, 13 Mar 2016 19:59:59 +1000 Subject: Update to new eo_* syntax. --- src/extantz/camera.c | 35 ++++--- src/extantz/ephysics_demo.c | 16 ++-- src/extantz/extantz.c | 12 ++- src/extantz/extantz.h | 3 +- src/extantz/files.c | 76 ++++++++------- src/extantz/scenri.c | 223 ++++++++++++++++++++------------------------ src/extantz/woMan.c | 10 +- src/libraries/winFang.c | 102 ++++++++++---------- src/purkle/purkle.c | 12 +-- 9 files changed, 237 insertions(+), 252 deletions(-) diff --git a/src/extantz/camera.c b/src/extantz/camera.c index ba960d4..bbf8b01 100644 --- a/src/extantz/camera.c +++ b/src/extantz/camera.c @@ -28,22 +28,26 @@ Eina_Bool animateCamera(Scene_Data *scene) { Eina_Quaternion rotate, orient, result, move; Evas_Real x, y, z; + Eo *n = scene->avatar_node; - eo_do(scene->camera_node, evas_canvas3d_node_orientation_get(EVAS_CANVAS3D_SPACE_PARENT, &orient.x, &orient.y, &orient.z, &orient.w)); euler_to_quaternion(&rotate, DEGREE_TO_RADIAN(scene->move->r), DEGREE_TO_RADIAN(scene->move->s), DEGREE_TO_RADIAN(scene->move->p)); eina_quaternion_mul(&result, &orient, &rotate); eina_quaternion_normalized(&result, &result); - eo_do(scene->camera_node, evas_canvas3d_node_orientation_set(result.x, result.y, result.z, result.w)); + if (n) + { + evas_canvas3d_node_orientation_get(n, EVAS_CANVAS3D_SPACE_PARENT, &orient.x, &orient.y, &orient.z, &orient.w); + evas_canvas3d_node_orientation_set(n, result.x, result.y, result.z, result.w); eina_quaternion_set(&move, scene->move->x, scene->move->y, scene->move->z, 0); - eo_do(scene->camera_node, evas_canvas3d_node_position_get(EVAS_CANVAS3D_SPACE_PARENT, &x, &y, &z)); eina_quaternion_mul(&rotate, &result, &move); eina_quaternion_conjugate(&result, &result); eina_quaternion_mul(&move, &rotate, &result); x += move.x; y += move.y; z += move.z; - eo_do(scene->camera_node, evas_canvas3d_node_position_set(x, y, z)); + evas_canvas3d_node_position_get(n, EVAS_CANVAS3D_SPACE_PARENT, &x, &y, &z); + evas_canvas3d_node_position_set(n, x, y, z); + } return EINA_TRUE; } @@ -204,19 +208,20 @@ Eo *cameraAdd(Evas *evas, Scene_Data *scene, Evas_Object *image) Eo *camera; camera = eo_add(EVAS_CANVAS3D_CAMERA_CLASS, evas, - evas_canvas3d_camera_projection_perspective_set(90.0, 1.0, 1.0, 1024.0) - ); - - result = eo_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_constructor(EVAS_CANVAS3D_NODE_TYPE_CAMERA), - evas_canvas3d_node_camera_set(camera), - evas_canvas3d_node_position_set(0.0, 4.0, 8.0), -// evas_canvas3d_node_look_at_set(EVAS_CANVAS3D_SPACE_PARENT, 0.0, 0.0, 20.0, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 1.0, 0.0), - evas_canvas3d_node_orientation_set(0.0, 0.0, 0.0, 1.0) - ); + evas_canvas3d_camera_projection_perspective_set(eoid, 90.0, 1.0, 1.0, 1024.0) + ); + + result = eo_add(EVAS_CANVAS3D_NODE_CLASS, evas, + evas_canvas3d_node_constructor(eoid, EVAS_CANVAS3D_NODE_TYPE_CAMERA), + evas_canvas3d_node_camera_set(eoid, camera), + evas_canvas3d_node_position_set(eoid, 0.0, 4.0, 8.0), +// evas_canvas3d_node_look_at_set(eoid, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 0.0, 20.0, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 1.0, 0.0), + evas_canvas3d_node_orientation_set(eoid, 0.0, 0.0, 0.0, 1.0) + ); // eo_unref(camera); - eo_do(scene->root_node, evas_canvas3d_node_member_add(result)); - eo_do(scene->scene, evas_canvas3d_scene_camera_node_set(result)); + evas_canvas3d_node_member_add(scene->root_node, result); + evas_canvas3d_scene_camera_node_set(scene->scene, result); scene->move = calloc(1, sizeof(cameraMove)); // In this code, we are making our own camera, so grab it's input when we are focused. diff --git a/src/extantz/ephysics_demo.c b/src/extantz/ephysics_demo.c index 2ff589b..e8ca8e2 100644 --- a/src/extantz/ephysics_demo.c +++ b/src/extantz/ephysics_demo.c @@ -33,10 +33,10 @@ EPhysics_World *ephysicsAdd(globals *ourGlobals) sprintf(buf, "%s/%s.edj", prefix_data_get(), EPHYSICS_TEST_THEME); box1 = eo_add(ELM_IMAGE_CLASS, ourGlobals->win, - efl_file_set(buf, "blue-cube"), - efl_gfx_size_set(70, 70), - efl_gfx_position_set(ourGlobals->win_w / 2 - 80, ourGlobals->win_h - 200), - efl_gfx_visible_set(EINA_TRUE) + efl_file_set(eoid, buf, "blue-cube"), + efl_gfx_size_set(eoid, 70, 70), + efl_gfx_position_set(eoid, ourGlobals->win_w / 2 - 80, ourGlobals->win_h - 200), + efl_gfx_visible_set(eoid, EINA_TRUE) ); box_body1 = ephysics_body_box_add(world); @@ -50,10 +50,10 @@ EPhysics_World *ephysicsAdd(globals *ourGlobals) sprintf(buf, "%s/%s.edj", prefix_data_get(), EPHYSICS_TEST_THEME); box2 = eo_add(ELM_IMAGE_CLASS, ourGlobals->win, - efl_file_set(buf, "purple-cube"), - efl_gfx_size_set(70, 70), - efl_gfx_position_set(ourGlobals->win_w / 2 + 10, ourGlobals->win_h - 200), - efl_gfx_visible_set(EINA_TRUE) + efl_file_set(eoid, buf, "purple-cube"), + efl_gfx_size_set(eoid, 70, 70), + efl_gfx_position_set(eoid, ourGlobals->win_w / 2 + 10, ourGlobals->win_h - 200), + efl_gfx_visible_set(eoid, EINA_TRUE) ); box_body2 = ephysics_body_box_add(world); diff --git a/src/extantz/extantz.c b/src/extantz/extantz.c index ed78b24..b5f272e 100644 --- a/src/extantz/extantz.c +++ b/src/extantz/extantz.c @@ -228,11 +228,13 @@ static void _on_resize(void *data, Evas *evas EINA_UNUSED, Evas_Object *obj EINA GLData *gld = &ourGlobals->gld; Evas_Coord h; - eo_do(ourGlobals->win, efl_gfx_size_get(&ourGlobals->win_w, &ourGlobals->win_h)); - eo_do(ourGlobals->tb, - evas_obj_size_hint_min_get(NULL, &h), - efl_gfx_size_set(ourGlobals->win_w, h) - ); + efl_gfx_size_get(ourGlobals->win, &ourGlobals->win_w, &ourGlobals->win_h); + evas_obj_size_hint_min_get(ourGlobals->win, NULL, &h); + + if (10 > h) + h = ourGlobals->win_h; + + efl_gfx_size_set(ourGlobals->win, ourGlobals->win_w, h); // Stop internal windows going under the toolbar. evas_object_resize(ourGlobals->mainWindow->layout, ourGlobals->win_w, h); #if USE_EPHYSICS diff --git a/src/extantz/extantz.h b/src/extantz/extantz.h index 1f62496..ea22879 100644 --- a/src/extantz/extantz.h +++ b/src/extantz/extantz.h @@ -138,11 +138,12 @@ typedef struct typedef struct _Scene_Data { Evas *evas; - Evas_Object *image; // Our Elm image. + Evas_Object *image, *image_e; // Our Elm image, and it's Evas image. Eo *scene; Eo *root_node; Eo *camera_node; Eo *light_node; + Eo *avatar_node; Eo *light; diff --git a/src/extantz/files.c b/src/extantz/files.c index 535e250..216e696 100644 --- a/src/extantz/files.c +++ b/src/extantz/files.c @@ -153,11 +153,9 @@ winFang *filesAdd(globals *ourGlobals, char *path, Eina_Bool multi, Eina_Bool sa wid->data = ourGlobals; wid->on_del = _on_fs_del; me->data = fs; - eo_do(fs, - elm_obj_fileselector_buttons_ok_cancel_set(EINA_FALSE), - elm_interface_fileselector_expandable_set(EINA_TRUE), - elm_interface_fileselector_folder_only_set(EINA_FALSE) - ); + elm_obj_fileselector_buttons_ok_cancel_set(fs, EINA_FALSE); + elm_interface_fileselector_expandable_set(fs, EINA_TRUE); + elm_interface_fileselector_folder_only_set(fs, EINA_FALSE); elm_fileselector_path_set(fs, path); elm_fileselector_is_save_set(fs, save); @@ -177,36 +175,36 @@ winFang *filesAdd(globals *ourGlobals, char *path, Eina_Bool multi, Eina_Bool sa evas_object_smart_callback_add(fs, "activated", my_fileselector_activated, me); hbox = eo_add(ELM_BOX_CLASS, me->win, - elm_obj_box_homogeneous_set(EINA_FALSE), - elm_obj_box_horizontal_set(EINA_TRUE), - evas_obj_size_hint_align_set(EVAS_HINT_FILL, EVAS_HINT_FILL) + elm_obj_box_homogeneous_set(eoid, EINA_FALSE), + elm_obj_box_horizontal_set(eoid, EINA_TRUE), + evas_obj_size_hint_align_set(eoid, EVAS_HINT_FILL, EVAS_HINT_FILL) ); hoversel = eo_add(ELM_HOVERSEL_CLASS, hbox, - elm_obj_hoversel_hover_parent_set(me->win), - eo_key_data_set("fileselector", fs), - elm_obj_hoversel_item_add("name(asc)", NULL, ELM_ICON_NONE, _sort_selected_cb, (const void *) ELM_FILESELECTOR_SORT_BY_FILENAME_ASC), - elm_obj_hoversel_item_add("name(desc)", NULL, ELM_ICON_NONE, _sort_selected_cb, (const void *) ELM_FILESELECTOR_SORT_BY_FILENAME_DESC), - elm_obj_hoversel_item_add("type(asc)", NULL, ELM_ICON_NONE, _sort_selected_cb, (const void *) ELM_FILESELECTOR_SORT_BY_TYPE_ASC), - elm_obj_hoversel_item_add("type(desc)", NULL, ELM_ICON_NONE, _sort_selected_cb, (const void *) ELM_FILESELECTOR_SORT_BY_TYPE_DESC), - elm_obj_hoversel_item_add("size(asc)", NULL, ELM_ICON_NONE, _sort_selected_cb, (const void *) ELM_FILESELECTOR_SORT_BY_SIZE_ASC), - elm_obj_hoversel_item_add("size(desc)", NULL, ELM_ICON_NONE, _sort_selected_cb, (const void *) ELM_FILESELECTOR_SORT_BY_SIZE_DESC), - elm_obj_hoversel_item_add("time(asc)", NULL, ELM_ICON_NONE, _sort_selected_cb, (const void *) ELM_FILESELECTOR_SORT_BY_MODIFIED_ASC), - elm_obj_hoversel_item_add("time(desc)", NULL, ELM_ICON_NONE, _sort_selected_cb, (const void *) ELM_FILESELECTOR_SORT_BY_MODIFIED_DESC), - efl_gfx_visible_set(EINA_TRUE) - ); + elm_obj_hoversel_hover_parent_set(eoid, me->win), + eo_key_data_set(eoid, "fileselector", fs), + elm_obj_hoversel_item_add(eoid, "name(asc)", NULL, ELM_ICON_NONE, _sort_selected_cb, (const void *) ELM_FILESELECTOR_SORT_BY_FILENAME_ASC), + elm_obj_hoversel_item_add(eoid, "name(desc)", NULL, ELM_ICON_NONE, _sort_selected_cb, (const void *) ELM_FILESELECTOR_SORT_BY_FILENAME_DESC), + elm_obj_hoversel_item_add(eoid, "type(asc)", NULL, ELM_ICON_NONE, _sort_selected_cb, (const void *) ELM_FILESELECTOR_SORT_BY_TYPE_ASC), + elm_obj_hoversel_item_add(eoid, "type(desc)", NULL, ELM_ICON_NONE, _sort_selected_cb, (const void *) ELM_FILESELECTOR_SORT_BY_TYPE_DESC), + elm_obj_hoversel_item_add(eoid, "size(asc)", NULL, ELM_ICON_NONE, _sort_selected_cb, (const void *) ELM_FILESELECTOR_SORT_BY_SIZE_ASC), + elm_obj_hoversel_item_add(eoid, "size(desc)", NULL, ELM_ICON_NONE, _sort_selected_cb, (const void *) ELM_FILESELECTOR_SORT_BY_SIZE_DESC), + elm_obj_hoversel_item_add(eoid, "time(asc)", NULL, ELM_ICON_NONE, _sort_selected_cb, (const void *) ELM_FILESELECTOR_SORT_BY_MODIFIED_ASC), + elm_obj_hoversel_item_add(eoid, "time(desc)", NULL, ELM_ICON_NONE, _sort_selected_cb, (const void *) ELM_FILESELECTOR_SORT_BY_MODIFIED_DESC), + efl_gfx_visible_set(eoid, EINA_TRUE) + ); elm_object_text_set(hoversel, "sorting"); elm_box_pack_end(hbox, hoversel); hoversel = eo_add(ELM_HOVERSEL_CLASS, hbox, - elm_obj_hoversel_hover_parent_set(me->win), - eo_key_data_set("fileselector", fs), - elm_obj_hoversel_item_add("tiny", NULL, ELM_ICON_NONE, _tiny_icon_clicked, fs), - elm_obj_hoversel_item_add("small", NULL, ELM_ICON_NONE, _small_icon_clicked, fs), - elm_obj_hoversel_item_add("medium", NULL, ELM_ICON_NONE, _middle_icon_clicked, fs), - elm_obj_hoversel_item_add("big", NULL, ELM_ICON_NONE, _big_icon_clicked, fs), - efl_gfx_visible_set(EINA_TRUE) - ); + elm_obj_hoversel_hover_parent_set(eoid, me->win), + eo_key_data_set(eoid, "fileselector", fs), + elm_obj_hoversel_item_add(eoid, "tiny", NULL, ELM_ICON_NONE, _tiny_icon_clicked, fs), + elm_obj_hoversel_item_add(eoid, "small", NULL, ELM_ICON_NONE, _small_icon_clicked, fs), + elm_obj_hoversel_item_add(eoid, "medium", NULL, ELM_ICON_NONE, _middle_icon_clicked, fs), + elm_obj_hoversel_item_add(eoid, "big", NULL, ELM_ICON_NONE, _big_icon_clicked, fs), + efl_gfx_visible_set(eoid, EINA_TRUE) + ); elm_object_text_set(hoversel, "size"); elm_box_pack_end(hbox, hoversel); // Make sure it starts off as small, works around "hitting grid mode before hitting size not showing anything" bug. @@ -214,17 +212,17 @@ winFang *filesAdd(globals *ourGlobals, char *path, Eina_Bool multi, Eina_Bool sa bt = eo_add(ELM_CHECK_CLASS, hbox, - elm_obj_check_state_set(elm_fileselector_hidden_visible_get(fs)), - efl_gfx_visible_set(EINA_TRUE) - ); + elm_obj_check_state_set(eoid, elm_fileselector_hidden_visible_get(fs)), + efl_gfx_visible_set(eoid, EINA_TRUE) + ); elm_object_text_set(bt, "hidden"); evas_object_smart_callback_add(bt, "changed", _hidden_clicked, fs); elm_box_pack_end(hbox, bt); rdg = rd = eo_add(ELM_RADIO_CLASS, hbox, - elm_obj_radio_state_value_set(ELM_FILESELECTOR_GRID), - efl_gfx_visible_set(EINA_TRUE) - ); + elm_obj_radio_state_value_set(eoid, ELM_FILESELECTOR_GRID), + efl_gfx_visible_set(eoid, EINA_TRUE) + ); elm_object_text_set(rd, "grid"); elm_box_pack_end(hbox, rd); evas_object_smart_callback_add(rd, "changed", _mode_changed_cb, fs); @@ -232,23 +230,23 @@ winFang *filesAdd(globals *ourGlobals, char *path, Eina_Bool multi, Eina_Bool sa _mode_changed_cb(fs, rd, NULL); rd = eo_add(ELM_RADIO_CLASS, hbox, - elm_obj_radio_state_value_set(ELM_FILESELECTOR_LIST), - efl_gfx_visible_set(EINA_TRUE) - ); + elm_obj_radio_state_value_set(eoid, ELM_FILESELECTOR_LIST), + efl_gfx_visible_set(eoid, EINA_TRUE) + ); elm_radio_group_add(rd, rdg); elm_object_text_set(rd, "list"); elm_box_pack_end(hbox, rd); evas_object_smart_callback_add(rd, "changed", _mode_changed_cb, fs); bt = eo_add(ELM_BUTTON_CLASS, me->win, - efl_gfx_visible_set(EINA_TRUE) + efl_gfx_visible_set(eoid, EINA_TRUE) ); elm_object_text_set(bt, "OK"); evas_object_smart_callback_add(bt, "clicked", _OK_clicked, me); elm_box_pack_end(hbox, bt); bt = eo_add(ELM_BUTTON_CLASS, me->win, - efl_gfx_visible_set(EINA_TRUE) + efl_gfx_visible_set(eoid, EINA_TRUE) ); elm_object_text_set(bt, "CANCEL"); evas_object_smart_callback_add(bt, "clicked", _CANCEL_clicked, me); diff --git a/src/extantz/scenri.c b/src/extantz/scenri.c index 4f15109..a487d47 100644 --- a/src/extantz/scenri.c +++ b/src/extantz/scenri.c @@ -100,10 +100,8 @@ static void _animateCube(ExtantzStuffs *stuffs) if (frame >= 20) inc = -1; else if (frame <= 0) inc = 1; - eo_do(stuffs->mesh_node, - evas_canvas3d_node_orientation_angle_axis_set(angle, 1.0, 1.0, 1.0), - evas_canvas3d_node_mesh_frame_set(m, frame) - ); + evas_canvas3d_node_orientation_angle_axis_set(stuffs->mesh_node, angle, 1.0, 1.0, 1.0); + evas_canvas3d_node_mesh_frame_set(stuffs->mesh_node, m, frame); } static void _animateSphere(ExtantzStuffs *stuffs) @@ -112,9 +110,7 @@ static void _animateSphere(ExtantzStuffs *stuffs) earthAngle += 0.3; if (earthAngle > 360.0) earthAngle -= 360.0f; - eo_do(stuffs->mesh_node, - evas_canvas3d_node_orientation_angle_axis_set(earthAngle, 0.0, 1.0, 0.0) - ); + evas_canvas3d_node_orientation_angle_axis_set(stuffs->mesh_node, earthAngle, 0.0, 1.0, 0.0); } static void _animateSonic(ExtantzStuffs *stuffs) @@ -125,9 +121,7 @@ static void _animateSonic(ExtantzStuffs *stuffs) eina_accessor_data_get(stuffs->aMesh, 0, (void **) &m); sonicFrame += 32; if (sonicFrame > 256 * 50) sonicFrame = 0; - eo_do(stuffs->mesh_node, - evas_canvas3d_node_mesh_frame_set(m, sonicFrame) - ); + evas_canvas3d_node_mesh_frame_set(stuffs->mesh_node, m, sonicFrame); } Eina_Bool animateScene(globals *ourGlobals) @@ -206,12 +200,12 @@ static void _on_mouse_down(void *data, Evas *e EINA_UNUSED, Evas_Object *o, void obj_x = ev->canvas.x - x; obj_y = ev->canvas.y - y; - eo_do(scene->scene, evas_canvas3d_scene_size_get(&scene_w, &scene_h)); + evas_canvas3d_scene_size_get(scene->scene, &scene_w, &scene_h); scene_x = obj_x * scene_w / (Evas_Real)w; scene_y = obj_y * scene_h / (Evas_Real)h; - eo_do(scene->scene, pick = evas_canvas3d_scene_pick(scene_x, scene_y, &n, &m, &s, &t)); + pick = evas_canvas3d_scene_pick(scene->scene, scene_x, scene_y, &n, &m, &s, &t); if (pick) { name = evas_object_data_get(n, "Name"); @@ -406,24 +400,21 @@ Scene_Data *scenriAdd(Evas_Object *win) { Scene_Data *scene; Evas_Object *evas; -#if USE_ELM_IMG - Evas_Object *temp; -#endif int w, h; evas = evas_object_evas_get(win); - eo_do(win, efl_gfx_size_get(&w, &h)); + efl_gfx_size_get(win, &w, &h); scene = calloc(1, sizeof(Scene_Data)); scene->evas = evas; eina_clist_init(&(scene->stuffs)); eina_clist_init(&(scene->loading)); - scene->root_node = eo_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_constructor(EVAS_CANVAS3D_NODE_TYPE_NODE)); + scene->root_node = eo_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_constructor(eoid, EVAS_CANVAS3D_NODE_TYPE_NODE)); scene->scene = eo_add(EVAS_CANVAS3D_SCENE_CLASS, evas, - evas_canvas3d_scene_root_node_set(scene->root_node), - evas_canvas3d_scene_size_set(w, h), - evas_canvas3d_scene_background_color_set(0.0, 0.0, 0.0, 0.0) + evas_canvas3d_scene_root_node_set(eoid, scene->root_node), + evas_canvas3d_scene_size_set(eoid, w, h), + evas_canvas3d_scene_background_color_set(eoid, 0.0, 0.0, 0.0, 0.0) ); // Add an image object for 3D scene rendering. @@ -432,10 +423,10 @@ Scene_Data *scenriAdd(Evas_Object *win) // Note that we can't reuse the windows background image, Evas_3D needs both images. #if USE_ELM_IMG scene->image = eo_add(ELM_IMAGE_CLASS, win, - evas_obj_size_hint_weight_set(EVAS_HINT_EXPAND, EVAS_HINT_EXPAND), - elm_obj_image_fill_outside_set(EINA_TRUE), - efl_gfx_visible_set(EINA_TRUE), - temp = elm_obj_image_object_get() + evas_obj_size_hint_weight_set(eoid, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND), + elm_obj_image_fill_outside_set(eoid, EINA_TRUE), + efl_gfx_visible_set(eoid, EINA_TRUE), + scene->image_e = elm_obj_image_object_get(eoid) ); #else scene->image = evas_object_image_filled_add(evas); @@ -446,17 +437,18 @@ Scene_Data *scenriAdd(Evas_Object *win) // Lights! scene->light = eo_add(EVAS_CANVAS3D_LIGHT_CLASS, evas, - evas_canvas3d_light_ambient_set(1.0, 1.0, 1.0, 1.0), - evas_canvas3d_light_diffuse_set(1.0, 1.0, 1.0, 1.0), - evas_canvas3d_light_specular_set(1.0, 1.0, 1.0, 1.0), - evas_canvas3d_light_directional_set(EINA_TRUE) + evas_canvas3d_light_ambient_set(eoid, 1.0, 1.0, 1.0, 1.0), + evas_canvas3d_light_diffuse_set(eoid, 1.0, 1.0, 1.0, 1.0), + evas_canvas3d_light_specular_set(eoid, 1.0, 1.0, 1.0, 1.0), + evas_canvas3d_light_directional_set(eoid, EINA_TRUE) ); - scene->light_node = eo_add(EVAS_CANVAS3D_NODE_CLASS, evas, evas_canvas3d_node_constructor(EVAS_CANVAS3D_NODE_TYPE_LIGHT), - evas_canvas3d_node_light_set(scene->light), - evas_canvas3d_node_position_set(1000.0, 0.0, 1000.0), - evas_canvas3d_node_look_at_set(EVAS_CANVAS3D_SPACE_PARENT, 0.0, 0.0, 0.0, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 1.0, 0.0) + scene->light_node = eo_add(EVAS_CANVAS3D_NODE_CLASS, evas, + evas_canvas3d_node_constructor(eoid, EVAS_CANVAS3D_NODE_TYPE_LIGHT), + evas_canvas3d_node_light_set(eoid, scene->light), + evas_canvas3d_node_position_set(eoid, 1000.0, 0.0, 1000.0), + evas_canvas3d_node_look_at_set(eoid, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 0.0, 0.0, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 1.0, 0.0) ); - eo_do(scene->root_node, evas_canvas3d_node_member_add(scene->light_node)); + evas_canvas3d_node_member_add(scene->root_node, scene->light_node); // Cameras! scene->camera_node = cameraAdd(evas, scene, scene->image); @@ -466,13 +458,13 @@ Scene_Data *scenriAdd(Evas_Object *win) elm_object_tooltip_hide(scene->image); #if USE_ELM_IMG - eo_do(temp, evas_obj_image_scene_set(scene->scene)); + evas_obj_image_scene_set(scene->image_e, scene->scene); // Elm can't seem to be able to tell us WHERE an image was clicked, so use raw Evas callbacks instead. - evas_object_event_callback_add(temp, EVAS_CALLBACK_MOUSE_MOVE, _on_mouse_move, scene); - evas_object_event_callback_add(temp, EVAS_CALLBACK_MOUSE_DOWN, _on_mouse_down, scene); + evas_object_event_callback_add(scene->image_e, EVAS_CALLBACK_MOUSE_MOVE, _on_mouse_move, scene); + evas_object_event_callback_add(scene->image_e, EVAS_CALLBACK_MOUSE_DOWN, _on_mouse_down, scene); #else - eo_do(scene->image, evas_obj_image_scene_set(scene->scene)); + evas_obj_image_scene_set(scene->image, scene->scene); // Elm can't seem to be able to tell us WHERE an image was clicked, so use raw Evas callbacks instead. evas_object_event_callback_add(scene->image, EVAS_CALLBACK_MOUSE_MOVE, _on_mouse_move, scene); @@ -594,11 +586,9 @@ static void _set_vertex_data_from_array(Evas_Canvas3D_Mesh *mesh, int frame, con float *address, *out; int stride, i, j; - eo_do(mesh, - evas_canvas3d_mesh_frame_vertex_data_copy_set(frame, attr, 0, NULL), - address = (float *)evas_canvas3d_mesh_frame_vertex_data_map(frame, attr), - stride = evas_canvas3d_mesh_frame_vertex_stride_get(frame, attr) - ); + evas_canvas3d_mesh_frame_vertex_data_copy_set(mesh, frame, attr, 0, NULL); + address = (float *)evas_canvas3d_mesh_frame_vertex_data_map(mesh, frame, attr); + stride = evas_canvas3d_mesh_frame_vertex_stride_get(mesh, frame, attr); if (stride == 0) stride = sizeof(float) * attr_count; @@ -609,7 +599,7 @@ static void _set_vertex_data_from_array(Evas_Canvas3D_Mesh *mesh, int frame, con out[j] = data[start + (line * i) + j]; } - eo_do(mesh, evas_canvas3d_mesh_frame_vertex_data_unmap(frame, attr)); + evas_canvas3d_mesh_frame_vertex_data_unmap(mesh, frame, attr); } void stuffsSetup(ExtantzStuffs *stuffs, Scene_Data *scene, int fake) @@ -628,13 +618,13 @@ void stuffsSetup(ExtantzStuffs *stuffs, Scene_Data *scene, int fake) if (1 == fake) { t = eo_add(EVAS_CANVAS3D_TEXTURE_CLASS, scene->evas, - evas_canvas3d_texture_data_set(EVAS_COLORSPACE_ARGB8888, 4, 4, &pixels0[0]) - ); + evas_canvas3d_texture_data_set(eoid, EVAS_COLORSPACE_ARGB8888, 4, 4, &pixels0[0]) + ); eina_array_push(stuffs->textures, t); t1 = eo_add(EVAS_CANVAS3D_TEXTURE_CLASS, scene->evas, - evas_canvas3d_texture_data_set(EVAS_COLORSPACE_ARGB8888, 4, 4, &pixels1[0]) - ); + evas_canvas3d_texture_data_set(eoid, EVAS_COLORSPACE_ARGB8888, 4, 4, &pixels1[0]) + ); eina_array_push(stuffs->textures, t1); } @@ -642,10 +632,10 @@ void stuffsSetup(ExtantzStuffs *stuffs, Scene_Data *scene, int fake) { snprintf(buf, sizeof(buf), "%s/%s", prefix_data_get(), m->texture); ti = eo_add(EVAS_CANVAS3D_TEXTURE_CLASS, scene->evas, - evas_canvas3d_texture_file_set(buf, NULL), - evas_canvas3d_texture_filter_set(EVAS_CANVAS3D_TEXTURE_FILTER_LINEAR, EVAS_CANVAS3D_TEXTURE_FILTER_LINEAR), // Only for sphere originally. - evas_canvas3d_texture_filter_set(EVAS_CANVAS3D_TEXTURE_FILTER_NEAREST, EVAS_CANVAS3D_TEXTURE_FILTER_NEAREST), // Only for sonic originally. - evas_canvas3d_texture_wrap_set(EVAS_CANVAS3D_WRAP_MODE_REPEAT, EVAS_CANVAS3D_WRAP_MODE_REPEAT) + evas_canvas3d_texture_file_set(eoid, buf, NULL), + evas_canvas3d_texture_filter_set(eoid, EVAS_CANVAS3D_TEXTURE_FILTER_LINEAR, EVAS_CANVAS3D_TEXTURE_FILTER_LINEAR), // Only for sphere originally. + evas_canvas3d_texture_filter_set(eoid, EVAS_CANVAS3D_TEXTURE_FILTER_NEAREST, EVAS_CANVAS3D_TEXTURE_FILTER_NEAREST), // Only for sonic originally. + evas_canvas3d_texture_wrap_set(eoid, EVAS_CANVAS3D_WRAP_MODE_REPEAT, EVAS_CANVAS3D_WRAP_MODE_REPEAT) ); eina_array_push(stuffs->textures, ti); } @@ -655,34 +645,31 @@ void stuffsSetup(ExtantzStuffs *stuffs, Scene_Data *scene, int fake) { eina_accessor_data_get(stuffs->aTexture, 0, (void **) &t); mi = eo_add(EVAS_CANVAS3D_MATERIAL_CLASS, scene->evas, - evas_canvas3d_material_enable_set(EVAS_CANVAS3D_MATERIAL_ATTRIB_AMBIENT, EINA_TRUE), - evas_canvas3d_material_enable_set(EVAS_CANVAS3D_MATERIAL_ATTRIB_DIFFUSE, EINA_TRUE), - evas_canvas3d_material_enable_set(EVAS_CANVAS3D_MATERIAL_ATTRIB_SPECULAR, EINA_TRUE), - evas_canvas3d_material_enable_set(EVAS_CANVAS3D_MATERIAL_ATTRIB_NORMAL, EINA_TRUE), - - evas_canvas3d_material_color_set(EVAS_CANVAS3D_MATERIAL_ATTRIB_AMBIENT, 0.2, 0.2, 0.2, 1.0), - evas_canvas3d_material_color_set(EVAS_CANVAS3D_MATERIAL_ATTRIB_DIFFUSE, 0.8, 0.8, 0.8, 1.0), - evas_canvas3d_material_color_set(EVAS_CANVAS3D_MATERIAL_ATTRIB_SPECULAR, 1.0, 1.0, 1.0, 1.0), - evas_canvas3d_material_shininess_set(100.0), - evas_canvas3d_material_texture_set(EVAS_CANVAS3D_MATERIAL_ATTRIB_DIFFUSE, t) + evas_canvas3d_material_enable_set(eoid, EVAS_CANVAS3D_MATERIAL_ATTRIB_AMBIENT, EINA_TRUE), + evas_canvas3d_material_enable_set(eoid, EVAS_CANVAS3D_MATERIAL_ATTRIB_DIFFUSE, EINA_TRUE), + evas_canvas3d_material_enable_set(eoid, EVAS_CANVAS3D_MATERIAL_ATTRIB_SPECULAR, EINA_TRUE), + evas_canvas3d_material_enable_set(eoid, EVAS_CANVAS3D_MATERIAL_ATTRIB_NORMAL, EINA_TRUE), + evas_canvas3d_material_color_set(eoid, EVAS_CANVAS3D_MATERIAL_ATTRIB_AMBIENT, 0.2, 0.2, 0.2, 1.0), + evas_canvas3d_material_color_set(eoid, EVAS_CANVAS3D_MATERIAL_ATTRIB_DIFFUSE, 0.8, 0.8, 0.8, 1.0), + evas_canvas3d_material_color_set(eoid, EVAS_CANVAS3D_MATERIAL_ATTRIB_SPECULAR, 1.0, 1.0, 1.0, 1.0), + evas_canvas3d_material_shininess_set(eoid, 100.0), + evas_canvas3d_material_texture_set(eoid, EVAS_CANVAS3D_MATERIAL_ATTRIB_DIFFUSE, t) ); eina_array_push(stuffs->materials, mi); eina_accessor_data_get(stuffs->aTexture, 1, (void **) &t1); eina_accessor_data_get(stuffs->aTexture, 2, (void **) &ti); mj = eo_add(EVAS_CANVAS3D_MATERIAL_CLASS, scene->evas, - evas_canvas3d_material_enable_set(EVAS_CANVAS3D_MATERIAL_ATTRIB_AMBIENT, EINA_TRUE), - evas_canvas3d_material_enable_set(EVAS_CANVAS3D_MATERIAL_ATTRIB_DIFFUSE, EINA_TRUE), - evas_canvas3d_material_enable_set(EVAS_CANVAS3D_MATERIAL_ATTRIB_SPECULAR, EINA_TRUE), - evas_canvas3d_material_enable_set(EVAS_CANVAS3D_MATERIAL_ATTRIB_NORMAL, EINA_TRUE), - - evas_canvas3d_material_color_set(EVAS_CANVAS3D_MATERIAL_ATTRIB_AMBIENT, 0.2, 0.2, 0.2, 1.0), - evas_canvas3d_material_color_set(EVAS_CANVAS3D_MATERIAL_ATTRIB_DIFFUSE, 0.8, 0.8, 0.8, 1.0), - evas_canvas3d_material_color_set(EVAS_CANVAS3D_MATERIAL_ATTRIB_SPECULAR, 1.0, 1.0, 1.0, 1.0), - evas_canvas3d_material_shininess_set(100.0), - - evas_canvas3d_material_texture_set(EVAS_CANVAS3D_MATERIAL_ATTRIB_DIFFUSE, t1), - evas_canvas3d_material_texture_set(EVAS_CANVAS3D_MATERIAL_ATTRIB_NORMAL, ti) + evas_canvas3d_material_enable_set(eoid, EVAS_CANVAS3D_MATERIAL_ATTRIB_AMBIENT, EINA_TRUE), + evas_canvas3d_material_enable_set(eoid, EVAS_CANVAS3D_MATERIAL_ATTRIB_DIFFUSE, EINA_TRUE), + evas_canvas3d_material_enable_set(eoid, EVAS_CANVAS3D_MATERIAL_ATTRIB_SPECULAR, EINA_TRUE), + evas_canvas3d_material_enable_set(eoid, EVAS_CANVAS3D_MATERIAL_ATTRIB_NORMAL, EINA_TRUE), + evas_canvas3d_material_color_set(eoid, EVAS_CANVAS3D_MATERIAL_ATTRIB_AMBIENT, 0.2, 0.2, 0.2, 1.0), + evas_canvas3d_material_color_set(eoid, EVAS_CANVAS3D_MATERIAL_ATTRIB_DIFFUSE, 0.8, 0.8, 0.8, 1.0), + evas_canvas3d_material_color_set(eoid, EVAS_CANVAS3D_MATERIAL_ATTRIB_SPECULAR, 1.0, 1.0, 1.0, 1.0), + evas_canvas3d_material_shininess_set(eoid, 100.0), + evas_canvas3d_material_texture_set(eoid, EVAS_CANVAS3D_MATERIAL_ATTRIB_DIFFUSE, t1), + evas_canvas3d_material_texture_set(eoid, EVAS_CANVAS3D_MATERIAL_ATTRIB_NORMAL, ti) ); eina_array_push(stuffs->materials, mj); } @@ -690,17 +677,16 @@ void stuffsSetup(ExtantzStuffs *stuffs, Scene_Data *scene, int fake) { eina_accessor_data_get(stuffs->aTexture, 0, (void **) &t); mi = eo_add(EVAS_CANVAS3D_MATERIAL_CLASS, scene->evas, - evas_canvas3d_material_texture_set(EVAS_CANVAS3D_MATERIAL_ATTRIB_DIFFUSE, t), - - evas_canvas3d_material_enable_set(EVAS_CANVAS3D_MATERIAL_ATTRIB_AMBIENT, EINA_TRUE), - evas_canvas3d_material_enable_set(EVAS_CANVAS3D_MATERIAL_ATTRIB_DIFFUSE, EINA_TRUE), - evas_canvas3d_material_enable_set(EVAS_CANVAS3D_MATERIAL_ATTRIB_SPECULAR, EINA_TRUE), - evas_canvas3d_material_enable_set(EVAS_CANVAS3D_MATERIAL_ATTRIB_NORMAL, EINA_TRUE), // Not for sphere originally. - - evas_canvas3d_material_color_set(EVAS_CANVAS3D_MATERIAL_ATTRIB_AMBIENT, 0.01, 0.01, 0.01, 1.0), - evas_canvas3d_material_color_set(EVAS_CANVAS3D_MATERIAL_ATTRIB_DIFFUSE, 1.0, 1.0, 1.0, 1.0), - evas_canvas3d_material_color_set(EVAS_CANVAS3D_MATERIAL_ATTRIB_SPECULAR, 1.0, 1.0, 1.0, 1.0), - evas_canvas3d_material_shininess_set(50.0) + evas_canvas3d_material_texture_set(eoid, EVAS_CANVAS3D_MATERIAL_ATTRIB_DIFFUSE, t), + evas_canvas3d_material_enable_set(eoid, EVAS_CANVAS3D_MATERIAL_ATTRIB_AMBIENT, EINA_TRUE), + evas_canvas3d_material_enable_set(eoid, EVAS_CANVAS3D_MATERIAL_ATTRIB_DIFFUSE, EINA_TRUE), + evas_canvas3d_material_enable_set(eoid, EVAS_CANVAS3D_MATERIAL_ATTRIB_SPECULAR, EINA_TRUE), + evas_canvas3d_material_enable_set(eoid, EVAS_CANVAS3D_MATERIAL_ATTRIB_NORMAL, EINA_TRUE), // Not for sphere originally. + + evas_canvas3d_material_color_set(eoid, EVAS_CANVAS3D_MATERIAL_ATTRIB_AMBIENT, 0.01, 0.01, 0.01, 1.0), + evas_canvas3d_material_color_set(eoid, EVAS_CANVAS3D_MATERIAL_ATTRIB_DIFFUSE, 1.0, 1.0, 1.0, 1.0), + evas_canvas3d_material_color_set(eoid, EVAS_CANVAS3D_MATERIAL_ATTRIB_SPECULAR, 1.0, 1.0, 1.0, 1.0), + evas_canvas3d_material_shininess_set(eoid, 50.0) ); eina_array_push(stuffs->materials, mi); } @@ -715,16 +701,16 @@ void stuffsSetup(ExtantzStuffs *stuffs, Scene_Data *scene, int fake) #if 0 Eo *cube = eo_add(EVAS_CANVAS3D_PRIMITIVE_CLASS, scene->evas); - eo_do(cube, evas_canvas3d_primitive_form_set(EVAS_CANVAS3D_MESH_PRIMITIVE_CUBE)); + evas_canvas3d_primitive_form_set(cube, EVAS_CANVAS3D_MESH_PRIMITIVE_CUBE); me = eo_add(EVAS_CANVAS3D_MESH_CLASS, scene->evas, - evas_canvas3d_mesh_from_primitive_set(0, cube), + evas_canvas3d_mesh_from_primitive_set(eoid, 0, cube) ); #else // More or less copied from EFL, so I can create my own primitives. me = eo_add(EVAS_CANVAS3D_MESH_CLASS, scene->evas, - evas_canvas3d_mesh_frame_add(0), - evas_canvas3d_mesh_vertex_count_set(24), - evas_canvas3d_mesh_index_data_set(EVAS_CANVAS3D_INDEX_FORMAT_UNSIGNED_SHORT, 36, &cube_indices[0]) + evas_canvas3d_mesh_frame_add(eoid, 0), + evas_canvas3d_mesh_vertex_count_set(eoid, 24), + evas_canvas3d_mesh_index_data_set(eoid, EVAS_CANVAS3D_INDEX_FORMAT_UNSIGNED_SHORT, 36, &cube_indices[0]) ); _set_vertex_data_from_array(me, 0, cube_vertices, EVAS_CANVAS3D_VERTEX_ATTRIB_POSITION, 0, 3, 15, 24); @@ -735,13 +721,11 @@ void stuffsSetup(ExtantzStuffs *stuffs, Scene_Data *scene, int fake) #endif - eo_do(me, - evas_canvas3d_mesh_vertex_assembly_set(EVAS_CANVAS3D_VERTEX_ASSEMBLY_TRIANGLES), - evas_canvas3d_mesh_shade_mode_set(EVAS_CANVAS3D_SHADE_MODE_NORMAL_MAP), - evas_canvas3d_mesh_frame_material_set(0, mi), - evas_canvas3d_mesh_frame_add(20), - evas_canvas3d_mesh_frame_material_set(20, mj) - ); + evas_canvas3d_mesh_vertex_assembly_set(me, EVAS_CANVAS3D_VERTEX_ASSEMBLY_TRIANGLES); + evas_canvas3d_mesh_shade_mode_set(me, EVAS_CANVAS3D_SHADE_MODE_NORMAL_MAP); + evas_canvas3d_mesh_frame_material_set(me, 0, mi); + evas_canvas3d_mesh_frame_add(me, 20); + evas_canvas3d_mesh_frame_material_set(me, 20, mj); eina_array_push(stuffs->mesh, me); } @@ -752,13 +736,12 @@ void stuffsSetup(ExtantzStuffs *stuffs, Scene_Data *scene, int fake) eina_accessor_data_get(stuffs->aMaterial, 0, (void **) &mi); sphere = eo_add(EVAS_CANVAS3D_PRIMITIVE_CLASS, scene->evas); - eo_do(sphere, evas_canvas3d_primitive_form_set(EVAS_CANVAS3D_MESH_PRIMITIVE_SPHERE)); + evas_canvas3d_primitive_form_set(sphere, EVAS_CANVAS3D_MESH_PRIMITIVE_SPHERE); me = eo_add(EVAS_CANVAS3D_MESH_CLASS, scene->evas, - evas_canvas3d_mesh_from_primitive_set(0, sphere), - evas_canvas3d_mesh_frame_material_set(0, mi), - - evas_canvas3d_mesh_shade_mode_set(EVAS_CANVAS3D_SHADE_MODE_DIFFUSE) + evas_canvas3d_mesh_from_primitive_set(eoid, 0, sphere), + evas_canvas3d_mesh_frame_material_set(eoid, 0, mi), + evas_canvas3d_mesh_shade_mode_set(eoid, EVAS_CANVAS3D_SHADE_MODE_DIFFUSE) ); eina_array_push(stuffs->mesh, me); } @@ -770,15 +753,14 @@ void stuffsSetup(ExtantzStuffs *stuffs, Scene_Data *scene, int fake) // Attempt to create a heightfield. terrain = eo_add(EVAS_CANVAS3D_PRIMITIVE_CLASS, scene->evas); - eo_do(terrain, evas_canvas3d_primitive_form_set(EVAS_CANVAS3D_MESH_PRIMITIVE_SURFACE), - evas_canvas3d_primitive_precision_set(256), - evas_canvas3d_primitive_tex_scale_set(1.0, 1.0), - evas_canvas3d_primitive_surface_set(_SL_RAW_terrain) - ); + evas_canvas3d_primitive_form_set(terrain, EVAS_CANVAS3D_MESH_PRIMITIVE_SURFACE); + evas_canvas3d_primitive_precision_set(terrain, 256); + evas_canvas3d_primitive_tex_scale_set(terrain, 1.0, 1.0); + evas_canvas3d_primitive_surface_set(terrain, _SL_RAW_terrain); me = eo_add(EVAS_CANVAS3D_MESH_CLASS, scene->evas, - evas_canvas3d_mesh_from_primitive_set(0, terrain), - evas_canvas3d_mesh_frame_material_set(0, mi), - evas_canvas3d_mesh_shade_mode_set(EVAS_CANVAS3D_SHADE_MODE_DIFFUSE) + evas_canvas3d_mesh_from_primitive_set(eoid, 0, terrain), + evas_canvas3d_mesh_frame_material_set(eoid, 0, mi), + evas_canvas3d_mesh_shade_mode_set(eoid, EVAS_CANVAS3D_SHADE_MODE_DIFFUSE) ); eina_array_push(stuffs->mesh, me); } @@ -787,23 +769,24 @@ void stuffsSetup(ExtantzStuffs *stuffs, Scene_Data *scene, int fake) eina_accessor_data_get(stuffs->aMaterial, 0, (void **) &mi); snprintf(buf, sizeof(buf), "%s/%s", prefix_data_get(), stuffs->stuffs.details.mesh->fileName); me = eo_add(EVAS_CANVAS3D_MESH_CLASS, scene->evas, - efl_file_set(buf, NULL), - evas_canvas3d_mesh_frame_material_set(0, mi), - evas_canvas3d_mesh_shade_mode_set(EVAS_CANVAS3D_SHADE_MODE_PHONG) + efl_file_set(eoid, buf, NULL), + evas_canvas3d_mesh_frame_material_set(eoid, 0, mi), + evas_canvas3d_mesh_shade_mode_set(eoid, EVAS_CANVAS3D_SHADE_MODE_PHONG) ); eina_array_push(stuffs->mesh, me); } eina_accessor_data_get(stuffs->aMesh, 0, (void **) &me); - stuffs->mesh_node = eo_add(EVAS_CANVAS3D_NODE_CLASS, scene->evas, evas_canvas3d_node_constructor(EVAS_CANVAS3D_NODE_TYPE_MESH), - eo_key_data_set("Name", stuffs->stuffs.name), - evas_canvas3d_node_position_set(stuffs->stuffs.details.mesh->pos.x, stuffs->stuffs.details.mesh->pos.y, stuffs->stuffs.details.mesh->pos.z), - evas_canvas3d_node_orientation_set(stuffs->stuffs.details.mesh->rot.x, stuffs->stuffs.details.mesh->rot.y, stuffs->stuffs.details.mesh->rot.z, stuffs->stuffs.details.mesh->rot.w), - evas_canvas3d_node_scale_set(stuffs->stuffs.details.mesh->size.x, stuffs->stuffs.details.mesh->size.y, stuffs->stuffs.details.mesh->size.z), - evas_canvas3d_node_mesh_add(me) - ); + stuffs->mesh_node = eo_add(EVAS_CANVAS3D_NODE_CLASS, scene->evas, + evas_canvas3d_node_constructor(eoid, EVAS_CANVAS3D_NODE_TYPE_MESH), + eo_key_data_set(eoid, "Name", stuffs->stuffs.name), + evas_canvas3d_node_position_set(eoid, stuffs->stuffs.details.mesh->pos.x, stuffs->stuffs.details.mesh->pos.y, stuffs->stuffs.details.mesh->pos.z), + evas_canvas3d_node_orientation_set(eoid, stuffs->stuffs.details.mesh->rot.x, stuffs->stuffs.details.mesh->rot.y, stuffs->stuffs.details.mesh->rot.z, stuffs->stuffs.details.mesh->rot.w), + evas_canvas3d_node_scale_set(eoid, stuffs->stuffs.details.mesh->size.x, stuffs->stuffs.details.mesh->size.y, stuffs->stuffs.details.mesh->size.z), + evas_canvas3d_node_mesh_add(eoid, me) + ); - eo_do(scene->root_node, evas_canvas3d_node_member_add(stuffs->mesh_node)); + evas_canvas3d_node_member_add(scene->root_node, stuffs->mesh_node); eina_clist_add_head(&(scene->stuffs), &(stuffs->node)); if (1 == fake) diff --git a/src/extantz/woMan.c b/src/extantz/woMan.c index 7ff1c28..a7bb4de 100644 --- a/src/extantz/woMan.c +++ b/src/extantz/woMan.c @@ -257,11 +257,11 @@ winFang *woMan_add(globals *ourGlobals) elm_box_pack_end(me->box, nf); bt = eo_add(ELM_BUTTON_CLASS, me->win, -// evas_obj_text_set("Login"), - evas_obj_size_hint_align_set(EVAS_HINT_FILL, EVAS_HINT_FILL), - evas_obj_size_hint_weight_set(EVAS_HINT_EXPAND, 0.0), - efl_gfx_visible_set(EINA_TRUE) - ); +// evas_obj_text_set(eoid, "Login"), + evas_obj_size_hint_align_set(eoid, EVAS_HINT_FILL, EVAS_HINT_FILL), + evas_obj_size_hint_weight_set(eoid, EVAS_HINT_EXPAND, 0.0), + efl_gfx_visible_set(eoid, EINA_TRUE) + ); elm_object_text_set(bt, "Login"); // No eo interface for this that I can find. // evas_object_smart_callback_add(bt, "clicked", NULL, NULL); elm_box_pack_end(me->box, bt); diff --git a/src/libraries/winFang.c b/src/libraries/winFang.c index 718e710..4e4e51c 100644 --- a/src/libraries/winFang.c +++ b/src/libraries/winFang.c @@ -28,7 +28,8 @@ static void _checkWindowBounds(winFang *win, Evas_Coord x, Evas_Coord y, Evas_Co } if (2 <= i) { - return; +// TODO - Something in the last EFL update broke this check. +// return; } // Check if we are outside the parent window. @@ -115,6 +116,7 @@ static void _onBgMove(void *data, Evas *evas, Evas_Object *obj, void *event_info // Looks like ePhysics wont cooperate about coords and other things, so plan B. evas_object_geometry_get(win->layout, &x, &y, &w, &h); +//printf("_onBgMove() MOVED %f %f %f %f\n", x, y, w, h); _checkWindowBounds(win, x + ev->cur.canvas.x - ev->prev.output.x, y + ev->cur.canvas.y - ev->prev.output.y, w, h); } @@ -217,11 +219,11 @@ winFang *winFangAdd(winFang *parent, int x, int y, int w, int h, char *title, ch // Create the layout, and add the Edje to it. snprintf(buf, sizeof(buf), "%s/winFang.edj", prefix_data_get()); result->layout = eo_add(ELM_LAYOUT_CLASS, obj, - efl_gfx_size_set(w, h), - efl_gfx_position_set(x, y), - evas_obj_name_set(WF_LAYOUT), - efl_file_set(buf, WF_LAYOUT), - efl_gfx_visible_set(EINA_TRUE) + efl_gfx_size_set(eoid, w, h), + efl_gfx_position_set(eoid, x, y), + evas_obj_name_set(eoid, WF_LAYOUT), + efl_file_set(eoid, buf, WF_LAYOUT), + efl_gfx_visible_set(eoid, EINA_TRUE) ); result->e = evas_object_evas_get(result->layout); @@ -231,9 +233,9 @@ winFang *winFangAdd(winFang *parent, int x, int y, int w, int h, char *title, ch else snprintf(buf, sizeof(buf), "%s/sky_03.jpg", prefix_data_get()); result->bg = eo_add(ELM_BG_CLASS, obj, - evas_obj_size_hint_weight_set(EVAS_HINT_EXPAND, EVAS_HINT_EXPAND), - efl_file_set(buf, NULL), - efl_gfx_visible_set(EINA_TRUE) + evas_obj_size_hint_weight_set(eoid, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND), + efl_file_set(eoid, buf, NULL), + efl_gfx_visible_set(eoid, EINA_TRUE) ); elm_win_resize_object_add(result->win, result->bg); @@ -242,7 +244,7 @@ winFang *winFangAdd(winFang *parent, int x, int y, int w, int h, char *title, ch // // RGBA, so this is purple, and semi transparent. // color: 50 0 100 100; // pre multiplied R = (r * a) / 255 // color: 126 0 255 100; // r = (R * 255) / a - eo_do(result->bg, efl_gfx_color_set(50, 0, 100, 100)); + efl_gfx_color_set(result->bg, 50, 0, 100, 100); // This is how fragile things are, internal windows wont show background unless swallowed into the layout, // but Evas_3D is fussy about it's background image, and wont work with a layout swallowed one. elm_object_part_content_set(result->layout, WF_BACKGROUND, result->bg); @@ -260,10 +262,10 @@ winFang *winFangAdd(winFang *parent, int x, int y, int w, int h, char *title, ch // Create our box, the default for where content goes. result->box = eo_add(ELM_BOX_CLASS, result->layout, - elm_obj_box_homogeneous_set(EINA_FALSE), - elm_obj_box_horizontal_set(EINA_FALSE), - evas_obj_size_hint_align_set(EVAS_HINT_FILL, EVAS_HINT_FILL), - evas_obj_size_hint_weight_set(EVAS_HINT_EXPAND, EVAS_HINT_EXPAND) + elm_obj_box_homogeneous_set(eoid, EINA_FALSE), + elm_obj_box_horizontal_set(eoid, EINA_FALSE), + evas_obj_size_hint_align_set(eoid, EVAS_HINT_FILL, EVAS_HINT_FILL), + evas_obj_size_hint_weight_set(eoid, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND) ); elm_object_part_content_set(result->layout, WF_BOX, result->box); @@ -274,12 +276,12 @@ winFang *winFangAdd(winFang *parent, int x, int y, int w, int h, char *title, ch // Something to catch clicks on the background, for moving the window. // Coz Elm is uncooperative with this sort of thing, so we need to stick in a rectangle. obj = eo_add(EVAS_RECTANGLE_CLASS, result->layout, - evas_obj_size_hint_align_set(EVAS_HINT_FILL, EVAS_HINT_FILL), - evas_obj_size_hint_weight_set(EVAS_HINT_EXPAND, EVAS_HINT_EXPAND), - evas_obj_name_set(WF_UNDERLAY), - efl_gfx_color_set(0, 0, 0, 0), - efl_gfx_visible_set(EINA_TRUE) - ); + evas_obj_size_hint_align_set(eoid, EVAS_HINT_FILL, EVAS_HINT_FILL), + evas_obj_size_hint_weight_set(eoid, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND), + evas_obj_name_set(eoid, WF_UNDERLAY), + efl_gfx_color_set(eoid, 0, 0, 0, 0), + efl_gfx_visible_set(eoid, EINA_TRUE) + ); elm_object_part_content_set(result->layout, WF_UNDERLAY, obj); evas_object_event_callback_add(obj, EVAS_CALLBACK_MOUSE_DOWN, _onBgClick, result); @@ -293,21 +295,21 @@ winFang *winFangAdd(winFang *parent, int x, int y, int w, int h, char *title, ch else if (i == 2) {cx += result->w; cy += result->h;} else if (i == 3) cy += result->h; result->hand[i] = eo_add(EVAS_IMAGE_CLASS, result->e, - evas_obj_image_filled_set(EINA_TRUE), - efl_file_set(buf, NULL), - efl_gfx_size_set(31, 31), - efl_gfx_position_set(cx - 15, cy - 15), - efl_gfx_visible_set(EINA_TRUE) + evas_obj_image_filled_set(eoid, EINA_TRUE), + efl_file_set(eoid, buf, NULL), + efl_gfx_size_set(eoid, 31, 31), + efl_gfx_position_set(eoid, cx - 15, cy - 15), + efl_gfx_visible_set(eoid, EINA_TRUE) ); evas_object_event_callback_add(result->hand[i], EVAS_CALLBACK_MOUSE_MOVE, _onHandleMove, result); } // Create our window title. result->title = eo_add(ELM_LABEL_CLASS, result->layout, - evas_obj_size_hint_align_set(EVAS_HINT_FILL, EVAS_HINT_FILL), - evas_obj_size_hint_weight_set(EVAS_HINT_EXPAND, 0.0), - efl_gfx_visible_set(EINA_TRUE) - ); + evas_obj_size_hint_align_set(eoid, EVAS_HINT_FILL, EVAS_HINT_FILL), + evas_obj_size_hint_weight_set(eoid, EVAS_HINT_EXPAND, 0.0), + efl_gfx_visible_set(eoid, EINA_TRUE) + ); elm_object_style_set(result->title, "marker"); elm_object_text_set(result->title, title); elm_object_part_content_set(result->layout, WF_TITLE, result->title); @@ -320,11 +322,11 @@ winFang *winFangAdd(winFang *parent, int x, int y, int w, int h, char *title, ch // Create our grid, where things go if you supply coords. result->grid = eo_add(ELM_GRID_CLASS, result->layout, - evas_obj_size_hint_align_set(EVAS_HINT_FILL, EVAS_HINT_FILL), - evas_obj_size_hint_weight_set(EVAS_HINT_EXPAND, EVAS_HINT_EXPAND), - evas_obj_name_set(WF_GRID), - elm_obj_grid_size_set(result->w, result->h), - efl_gfx_visible_set(EINA_TRUE) + evas_obj_size_hint_align_set(eoid, EVAS_HINT_FILL, EVAS_HINT_FILL), + evas_obj_size_hint_weight_set(eoid, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND), + evas_obj_name_set(eoid, WF_GRID), + elm_obj_grid_size_set(eoid, result->w, result->h), + efl_gfx_visible_set(eoid, EINA_TRUE) ); // This could live inside the box, but then we have to keep track of the size of it's contents. @@ -459,25 +461,21 @@ Widget *widgetAdd(winFang *win, char *type , char *title, int x, int y, int w, i result->win = win; result->obj = eo_add(klass, win->win, - evas_obj_size_hint_weight_set(EVAS_HINT_EXPAND, EVAS_HINT_EXPAND), - evas_obj_size_hint_align_set(EVAS_HINT_FILL, EVAS_HINT_FILL), - efl_gfx_visible_set(EINA_TRUE), - eo_key_data_set("Widget", result) + evas_obj_size_hint_weight_set(eoid, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND), + evas_obj_size_hint_align_set(eoid, EVAS_HINT_FILL, EVAS_HINT_FILL), + efl_gfx_visible_set(eoid, EINA_TRUE), + eo_key_data_set(eoid, "Widget", result) ); if (strcmp(WT_ENTRY, type) == 0) { - eo_do(result->obj, - elm_obj_entry_scrollable_set(EINA_TRUE), - elm_obj_entry_editable_set(EINA_TRUE) - ); + elm_obj_entry_scrollable_set(result->obj, EINA_TRUE); + elm_obj_entry_editable_set(result->obj, EINA_TRUE); } else if (strcmp(WT_TEXTBOX, type) == 0) { - eo_do(result->obj, - elm_obj_entry_scrollable_set(EINA_TRUE), - elm_obj_entry_editable_set(EINA_FALSE) - ); + elm_obj_entry_scrollable_set(result->obj, EINA_TRUE); + elm_obj_entry_editable_set(result->obj, EINA_FALSE); } if (x < 0) @@ -570,12 +568,12 @@ Evas_Object *makeMainMenu(winFang *win) { // A toolbar thingy. return eo_add(ELM_TOOLBAR_CLASS, win->layout, - evas_obj_size_hint_weight_set(EVAS_HINT_EXPAND, 0.0), - evas_obj_size_hint_align_set(EVAS_HINT_FILL, EVAS_HINT_FILL), - elm_obj_toolbar_shrink_mode_set(ELM_TOOLBAR_SHRINK_MENU), - efl_gfx_position_set(0, 0), - elm_obj_toolbar_align_set(0.0) - ); + evas_obj_size_hint_weight_set(eoid, EVAS_HINT_EXPAND, 0.0), + evas_obj_size_hint_align_set(eoid, EVAS_HINT_FILL, EVAS_HINT_FILL), + elm_obj_toolbar_shrink_mode_set(eoid, ELM_TOOLBAR_SHRINK_MENU), + efl_gfx_position_set(eoid, 0, 0), + elm_obj_toolbar_align_set(eoid, 0.0) + ); } //static void _on_menu_focus(void *data EINA_UNUSED, Evas_Object *obj, void *event_info EINA_UNUSED) diff --git a/src/purkle/purkle.c b/src/purkle/purkle.c index 378879f..5502ae5 100644 --- a/src/purkle/purkle.c +++ b/src/purkle/purkle.c @@ -28,13 +28,11 @@ static int append(lua_State *L) pull_lua(L, 1, "$", &text); if (text) { - eo_do(history->obj, - elm_obj_entry_append("
"), - // TODO - Add a time stamp, and log to a file. - elm_obj_entry_append(text), - // TODO - really need a "scroll to the bottom" here, this cursor down wont work if lines get wrapped onto multiple lines. - elm_obj_entry_cursor_down() - ); + elm_obj_entry_append(history->obj, "
"); + // TODO - Add a time stamp, and log to a file. + elm_obj_entry_append(history->obj, text); + // TODO - really need a "scroll to the bottom" here, this cursor down wont work if lines get wrapped onto multiple lines. + elm_obj_entry_cursor_down(history->obj); } return 0; } -- cgit v1.1