From f93abeb98d74b5dea266347e668aa6f88e96d83b Mon Sep 17 00:00:00 2001 From: David Walter Seikel Date: Sun, 4 May 2014 22:35:22 +1000 Subject: Combine eo_add() and eo_do(), plus related cleanups. --- src/extantz/Evas_3D_demo.c | 237 +++++++++++++++++++++------------------------ src/extantz/chat.c | 8 +- src/extantz/extantz.c | 11 +-- src/extantz/files.c | 45 ++++----- src/extantz/woMan.c | 5 +- 5 files changed, 137 insertions(+), 169 deletions(-) diff --git a/src/extantz/Evas_3D_demo.c b/src/extantz/Evas_3D_demo.c index 95b2f2f..f9a5c27 100644 --- a/src/extantz/Evas_3D_demo.c +++ b/src/extantz/Evas_3D_demo.c @@ -333,27 +333,24 @@ Eina_Bool _animate_scene(globals *ourGlobals) static void _camera_setup(globals *ourGlobals, Scene_Data *scene) { - scene->camera = eo_add(EVAS_3D_CAMERA_CLASS, ourGlobals->evas); - eo_do(scene->camera, + scene->camera = eo_add(EVAS_3D_CAMERA_CLASS, ourGlobals->evas, evas_3d_camera_projection_perspective_set(60.0, 1.0, 1.0, 500.0) ); scene->camera_node = evas_3d_node_add(ourGlobals->evas, EVAS_3D_NODE_TYPE_CAMERA); eo_do(scene->camera_node, - evas_3d_node_camera_set(scene->camera) - ); - eo_do(scene->root_node, evas_3d_node_member_add(scene->camera_node)); - eo_do(scene->camera_node, + evas_3d_node_camera_set(scene->camera), evas_3d_node_position_set(50.0, 0.0, 20.0), evas_3d_node_look_at_set(EVAS_3D_SPACE_PARENT, 0.0, 0.0, 20.0, EVAS_3D_SPACE_PARENT, 0.0, 0.0, 1.0) ); + + eo_do(scene->root_node, evas_3d_node_member_add(scene->camera_node)); } static void _light_setup(globals *ourGlobals, Scene_Data *scene) { - scene->light = eo_add(EVAS_3D_LIGHT_CLASS, ourGlobals->evas); - eo_do(scene->light, + scene->light = eo_add(EVAS_3D_LIGHT_CLASS, ourGlobals->evas, evas_3d_light_ambient_set(1.0, 1.0, 1.0, 1.0), evas_3d_light_diffuse_set(1.0, 1.0, 1.0, 1.0), evas_3d_light_specular_set(1.0, 1.0, 1.0, 1.0), @@ -362,15 +359,13 @@ _light_setup(globals *ourGlobals, Scene_Data *scene) scene->light_node = evas_3d_node_add(ourGlobals->evas, EVAS_3D_NODE_TYPE_LIGHT); eo_do(scene->light_node, - evas_3d_node_light_set(scene->light) - ); - eo_do(scene->root_node, - evas_3d_node_member_add(scene->light_node) - ); - eo_do(scene->light_node, + evas_3d_node_light_set(scene->light), evas_3d_node_position_set(1000.0, 0.0, 1000.0), evas_3d_node_look_at_set(EVAS_3D_SPACE_PARENT, 0.0, 0.0, 0.0, EVAS_3D_SPACE_PARENT, 0.0, 1.0, 0.0) ); + + eo_do(scene->root_node, evas_3d_node_member_add(scene->light_node)); + } static void _cube_setup(globals *ourGlobals, Scene_Data *scene) @@ -378,10 +373,20 @@ static void _cube_setup(globals *ourGlobals, Scene_Data *scene) char buf[PATH_MAX]; // Setup cube materials. - scene->material0 = eo_add(EVAS_3D_MATERIAL_CLASS, ourGlobals->evas); - scene->material1 = eo_add(EVAS_3D_MATERIAL_CLASS, ourGlobals->evas); + scene->texture0 = eo_add(EVAS_3D_TEXTURE_CLASS, ourGlobals->evas, + evas_3d_texture_data_set(EVAS_3D_COLOR_FORMAT_RGBA, EVAS_3D_PIXEL_FORMAT_8888, 4, 4, &pixels0[0]) + ); + + scene->texture1 = eo_add(EVAS_3D_TEXTURE_CLASS, ourGlobals->evas, + evas_3d_texture_data_set(EVAS_3D_COLOR_FORMAT_RGBA, EVAS_3D_PIXEL_FORMAT_8888, 4, 4, &pixels1[0]) + ); + + snprintf(buf, sizeof(buf), "%s/normal_lego.png", elm_app_data_dir_get()); + scene->texture_normal = eo_add(EVAS_3D_TEXTURE_CLASS, ourGlobals->evas, + evas_3d_texture_file_set(buf, NULL) + ); - eo_do(scene->material0, + scene->material0 = eo_add(EVAS_3D_MATERIAL_CLASS, ourGlobals->evas, evas_3d_material_enable_set(EVAS_3D_MATERIAL_AMBIENT, EINA_TRUE), evas_3d_material_enable_set(EVAS_3D_MATERIAL_DIFFUSE, EINA_TRUE), evas_3d_material_enable_set(EVAS_3D_MATERIAL_SPECULAR, EINA_TRUE), @@ -390,10 +395,11 @@ static void _cube_setup(globals *ourGlobals, Scene_Data *scene) evas_3d_material_color_set(EVAS_3D_MATERIAL_AMBIENT, 0.2, 0.2, 0.2, 1.0), evas_3d_material_color_set(EVAS_3D_MATERIAL_DIFFUSE, 0.8, 0.8, 0.8, 1.0), evas_3d_material_color_set(EVAS_3D_MATERIAL_SPECULAR, 1.0, 1.0, 1.0, 1.0), - evas_3d_material_shininess_set(100.0) - ); + evas_3d_material_shininess_set(100.0), + evas_3d_material_texture_set(EVAS_3D_MATERIAL_DIFFUSE, scene->texture0) + ); - eo_do(scene->material1, + scene->material1 = eo_add(EVAS_3D_MATERIAL_CLASS, ourGlobals->evas, evas_3d_material_enable_set(EVAS_3D_MATERIAL_AMBIENT, EINA_TRUE), evas_3d_material_enable_set(EVAS_3D_MATERIAL_DIFFUSE, EINA_TRUE), evas_3d_material_enable_set(EVAS_3D_MATERIAL_SPECULAR, EINA_TRUE), @@ -402,29 +408,14 @@ static void _cube_setup(globals *ourGlobals, Scene_Data *scene) evas_3d_material_color_set(EVAS_3D_MATERIAL_AMBIENT, 0.2, 0.2, 0.2, 1.0), evas_3d_material_color_set(EVAS_3D_MATERIAL_DIFFUSE, 0.8, 0.8, 0.8, 1.0), evas_3d_material_color_set(EVAS_3D_MATERIAL_SPECULAR, 1.0, 1.0, 1.0, 1.0), - evas_3d_material_shininess_set(100.0) - ); + evas_3d_material_shininess_set(100.0), - scene->texture0 = eo_add(EVAS_3D_TEXTURE_CLASS, ourGlobals->evas); - scene->texture1 = eo_add(EVAS_3D_TEXTURE_CLASS, ourGlobals->evas); - scene->texture_normal = eo_add(EVAS_3D_TEXTURE_CLASS, ourGlobals->evas); - - eo_do(scene->texture0, - evas_3d_texture_data_set(EVAS_3D_COLOR_FORMAT_RGBA, EVAS_3D_PIXEL_FORMAT_8888, 4, 4, &pixels0[0]) + evas_3d_material_texture_set(EVAS_3D_MATERIAL_DIFFUSE, scene->texture1), + evas_3d_material_texture_set(EVAS_3D_MATERIAL_NORMAL, scene->texture_normal) ); - eo_do(scene->texture1, - evas_3d_texture_data_set(EVAS_3D_COLOR_FORMAT_RGBA, EVAS_3D_PIXEL_FORMAT_8888, 4, 4, &pixels1[0]) - ); - snprintf(buf, sizeof(buf), "%s/normal_lego.png", elm_app_data_dir_get()); - eo_do(scene->texture_normal, evas_3d_texture_file_set(buf, NULL)); - - eo_do(scene->material0, evas_3d_material_texture_set(EVAS_3D_MATERIAL_DIFFUSE, scene->texture0)); - eo_do(scene->material1, evas_3d_material_texture_set(EVAS_3D_MATERIAL_DIFFUSE, scene->texture1)); - eo_do(scene->material1, evas_3d_material_texture_set(EVAS_3D_MATERIAL_NORMAL, scene->texture_normal)); // Setup CUBE mesh. - scene->mesh = eo_add(EVAS_3D_MESH_CLASS, ourGlobals->evas); - eo_do(scene->mesh, + scene->mesh = eo_add(EVAS_3D_MESH_CLASS, ourGlobals->evas, evas_3d_mesh_vertex_count_set(24), evas_3d_mesh_frame_add(0), @@ -443,13 +434,15 @@ static void _cube_setup(globals *ourGlobals, Scene_Data *scene) evas_3d_mesh_frame_add(20), evas_3d_mesh_frame_material_set(20, scene->material1) ); + scene->mesh_node = evas_3d_node_add(ourGlobals->evas, EVAS_3D_NODE_TYPE_MESH); - eo_do(scene->root_node, evas_3d_node_member_add(scene->mesh_node)); eo_do(scene->mesh_node, eo_key_data_set("Name", "cube", NULL), evas_3d_node_position_set(40.0, 3.5, 23.0), evas_3d_node_mesh_add(scene->mesh) ); + + eo_do(scene->root_node, evas_3d_node_member_add(scene->mesh_node)); } static void _sonic_setup(globals *ourGlobals, Scene_Data *scene) @@ -457,26 +450,14 @@ static void _sonic_setup(globals *ourGlobals, Scene_Data *scene) char buf[PATH_MAX]; // Setup an MD2 mesh. - scene->mesh2 = eo_add(EVAS_3D_MESH_CLASS, ourGlobals->evas); - snprintf(buf, sizeof(buf), "%s/sonic.md2", elm_app_data_dir_get()); - eo_do(scene->mesh2, - evas_3d_mesh_file_set(EVAS_3D_MESH_FILE_TYPE_MD2, buf, NULL) - ); - - scene->material2 = eo_add(EVAS_3D_MATERIAL_CLASS, ourGlobals->evas); - eo_do(scene->mesh2, - evas_3d_mesh_frame_material_set(0, scene->material2) - ); - - scene->texture2 = eo_add(EVAS_3D_TEXTURE_CLASS, ourGlobals->evas); snprintf(buf, sizeof(buf), "%s/sonic.png", elm_app_data_dir_get()); - eo_do(scene->texture2, + scene->texture2 = eo_add(EVAS_3D_TEXTURE_CLASS, ourGlobals->evas, evas_3d_texture_file_set(buf, NULL), evas_3d_texture_filter_set(EVAS_3D_TEXTURE_FILTER_NEAREST, EVAS_3D_TEXTURE_FILTER_NEAREST), evas_3d_texture_wrap_set(EVAS_3D_WRAP_MODE_REPEAT, EVAS_3D_WRAP_MODE_REPEAT) ); - eo_do(scene->material2, + scene->material2 = eo_add(EVAS_3D_MATERIAL_CLASS, ourGlobals->evas, evas_3d_material_texture_set(EVAS_3D_MATERIAL_DIFFUSE, scene->texture2), evas_3d_material_enable_set(EVAS_3D_MATERIAL_AMBIENT, EINA_TRUE), @@ -490,18 +471,20 @@ static void _sonic_setup(globals *ourGlobals, Scene_Data *scene) evas_3d_material_shininess_set(50.0) ); - scene->mesh2_node = evas_3d_node_add(ourGlobals->evas, EVAS_3D_NODE_TYPE_MESH); - eo_do(scene->root_node, - evas_3d_node_member_add(scene->mesh2_node) + snprintf(buf, sizeof(buf), "%s/sonic.md2", elm_app_data_dir_get()); + scene->mesh2 = eo_add(EVAS_3D_MESH_CLASS, ourGlobals->evas, + evas_3d_mesh_file_set(EVAS_3D_MESH_FILE_TYPE_MD2, buf, NULL), + evas_3d_mesh_frame_material_set(0, scene->material2), + evas_3d_mesh_shade_mode_set(EVAS_3D_SHADE_MODE_PHONG) ); + + scene->mesh2_node = evas_3d_node_add(ourGlobals->evas, EVAS_3D_NODE_TYPE_MESH); eo_do(scene->mesh2_node, eo_key_data_set("Name", "sonic", NULL), evas_3d_node_mesh_add(scene->mesh2) ); - eo_do(scene->mesh2, - evas_3d_mesh_shade_mode_set(EVAS_3D_SHADE_MODE_PHONG) - ); + eo_do(scene->root_node, evas_3d_node_member_add(scene->mesh2_node)); } static void _earth_setup(globals *ourGlobals, Scene_Data *scene) @@ -509,81 +492,76 @@ static void _earth_setup(globals *ourGlobals, Scene_Data *scene) char buf[PATH_MAX]; // Setup earth material. - scene->material3 = eo_add(EVAS_3D_MATERIAL_CLASS, ourGlobals->evas); - - scene->texture_diffuse = eo_add(EVAS_3D_TEXTURE_CLASS, ourGlobals->evas); snprintf(buf, sizeof(buf), "%s/EarthDiffuse.png", elm_app_data_dir_get()); - eo_do(scene->texture_diffuse, - evas_3d_texture_file_set(buf, NULL), - evas_3d_texture_filter_set(EVAS_3D_TEXTURE_FILTER_LINEAR, EVAS_3D_TEXTURE_FILTER_LINEAR)); - eo_do(scene->material3, - evas_3d_material_texture_set(EVAS_3D_MATERIAL_DIFFUSE, scene->texture_diffuse), + scene->texture_diffuse = eo_add(EVAS_3D_TEXTURE_CLASS, ourGlobals->evas, + evas_3d_texture_file_set(buf, NULL), + evas_3d_texture_filter_set(EVAS_3D_TEXTURE_FILTER_LINEAR, EVAS_3D_TEXTURE_FILTER_LINEAR) + ); - evas_3d_material_enable_set(EVAS_3D_MATERIAL_AMBIENT, EINA_TRUE), - evas_3d_material_enable_set(EVAS_3D_MATERIAL_DIFFUSE, EINA_TRUE), - evas_3d_material_enable_set(EVAS_3D_MATERIAL_SPECULAR, EINA_TRUE), + scene->material3 = eo_add(EVAS_3D_MATERIAL_CLASS, ourGlobals->evas, + evas_3d_material_texture_set(EVAS_3D_MATERIAL_DIFFUSE, scene->texture_diffuse), - evas_3d_material_color_set(EVAS_3D_MATERIAL_AMBIENT, 0.01, 0.01, 0.01, 1.0), - evas_3d_material_color_set(EVAS_3D_MATERIAL_DIFFUSE, 1.0, 1.0, 1.0, 1.0), - evas_3d_material_color_set(EVAS_3D_MATERIAL_SPECULAR, 1.0, 1.0, 1.0, 1.0), - evas_3d_material_shininess_set(50.0)); + evas_3d_material_enable_set(EVAS_3D_MATERIAL_AMBIENT, EINA_TRUE), + evas_3d_material_enable_set(EVAS_3D_MATERIAL_DIFFUSE, EINA_TRUE), + evas_3d_material_enable_set(EVAS_3D_MATERIAL_SPECULAR, EINA_TRUE), + + evas_3d_material_color_set(EVAS_3D_MATERIAL_AMBIENT, 0.01, 0.01, 0.01, 1.0), + evas_3d_material_color_set(EVAS_3D_MATERIAL_DIFFUSE, 1.0, 1.0, 1.0, 1.0), + evas_3d_material_color_set(EVAS_3D_MATERIAL_SPECULAR, 1.0, 1.0, 1.0, 1.0), + evas_3d_material_shininess_set(50.0) + ); // Setup earth mesh. _sphere_init(100); - scene->mesh3 = eo_add(EVAS_3D_MESH_CLASS, ourGlobals->evas); - eo_do(scene->mesh3, - evas_3d_mesh_vertex_count_set(vertex_count), - evas_3d_mesh_frame_add(0), - evas_3d_mesh_frame_vertex_data_set(0, EVAS_3D_VERTEX_POSITION, sizeof(vertex), &sphere_vertices[0].position), - evas_3d_mesh_frame_vertex_data_set(0, EVAS_3D_VERTEX_NORMAL, sizeof(vertex), &sphere_vertices[0].normal), - evas_3d_mesh_frame_vertex_data_set(0, EVAS_3D_VERTEX_TANGENT, sizeof(vertex), &sphere_vertices[0].tangent), - evas_3d_mesh_frame_vertex_data_set(0, EVAS_3D_VERTEX_COLOR, sizeof(vertex), &sphere_vertices[0].color), - evas_3d_mesh_frame_vertex_data_set(0, EVAS_3D_VERTEX_TEXCOORD, sizeof(vertex), &sphere_vertices[0].texcoord), - - evas_3d_mesh_index_data_set(EVAS_3D_INDEX_FORMAT_UNSIGNED_SHORT, index_count, &sphere_indices[0]), - evas_3d_mesh_vertex_assembly_set(EVAS_3D_VERTEX_ASSEMBLY_TRIANGLES), - evas_3d_mesh_frame_material_set(0, scene->material3) - ); + scene->mesh3 = eo_add(EVAS_3D_MESH_CLASS, ourGlobals->evas, + evas_3d_mesh_vertex_count_set(vertex_count), + evas_3d_mesh_frame_add(0), + evas_3d_mesh_frame_vertex_data_set(0, EVAS_3D_VERTEX_POSITION, sizeof(vertex), &sphere_vertices[0].position), + evas_3d_mesh_frame_vertex_data_set(0, EVAS_3D_VERTEX_NORMAL, sizeof(vertex), &sphere_vertices[0].normal), + evas_3d_mesh_frame_vertex_data_set(0, EVAS_3D_VERTEX_TANGENT, sizeof(vertex), &sphere_vertices[0].tangent), + evas_3d_mesh_frame_vertex_data_set(0, EVAS_3D_VERTEX_COLOR, sizeof(vertex), &sphere_vertices[0].color), + evas_3d_mesh_frame_vertex_data_set(0, EVAS_3D_VERTEX_TEXCOORD, sizeof(vertex), &sphere_vertices[0].texcoord), + + evas_3d_mesh_index_data_set(EVAS_3D_INDEX_FORMAT_UNSIGNED_SHORT, index_count, &sphere_indices[0]), + evas_3d_mesh_vertex_assembly_set(EVAS_3D_VERTEX_ASSEMBLY_TRIANGLES), + evas_3d_mesh_frame_material_set(0, scene->material3), + + evas_3d_mesh_shade_mode_set(EVAS_3D_SHADE_MODE_DIFFUSE) + ); scene->mesh3_node = evas_3d_node_add(ourGlobals->evas, EVAS_3D_NODE_TYPE_MESH); - eo_do(scene->root_node, - evas_3d_node_member_add(scene->mesh3_node) - ); eo_do(scene->mesh3_node, eo_key_data_set("Name", "earth", NULL), evas_3d_node_position_set(40.0, -3.5, 23.0), evas_3d_node_mesh_add(scene->mesh3) - ); + ); - eo_do(scene->mesh3, - evas_3d_mesh_shade_mode_set(EVAS_3D_SHADE_MODE_DIFFUSE) - ); + eo_do(scene->root_node, evas_3d_node_member_add(scene->mesh3_node)); } static void _scene_setup(globals *ourGlobals, Scene_Data *scene) { - scene->scene = eo_add(EVAS_3D_SCENE_CLASS, ourGlobals->evas); - eo_do(scene->scene, - evas_3d_scene_size_set(512, 512), - evas_3d_scene_background_color_set(0.0, 0.0, 0.0, 0.0) - ); - // TODO - I have no idea how this should work. // It seems the people that wrote the examples don't know either. lol // scene->root_node = eo_add(EVAS_3D_NODE_CLASS, ourGlobals->evas, EVAS_3D_NODE_TYPE_NODE); scene->root_node = evas_3d_node_add(ourGlobals->evas, EVAS_3D_NODE_TYPE_NODE); + scene->scene = eo_add(EVAS_3D_SCENE_CLASS, ourGlobals->evas, + evas_3d_scene_root_node_set(scene->root_node), + evas_3d_scene_size_set(512, 512), + evas_3d_scene_background_color_set(0.0, 0.0, 0.0, 0.0) + ); + _camera_setup(ourGlobals, scene); - _light_setup(ourGlobals, scene); - _cube_setup(ourGlobals, scene); - _sonic_setup(ourGlobals, scene); - _earth_setup(ourGlobals, scene); + _light_setup(ourGlobals, scene); + _cube_setup(ourGlobals, scene); + _sonic_setup(ourGlobals, scene); + _earth_setup(ourGlobals, scene); eo_do(scene->scene, - evas_3d_scene_root_node_set(scene->root_node), evas_3d_scene_camera_node_set(scene->camera_node) ); } @@ -685,28 +663,29 @@ void Evas_3D_Demo_add(globals *ourGlobals) ourGlobals->scene = &ourScene; _scene_setup(ourGlobals, &ourScene); - // Add an image object for 3D scene rendering. - obj = eo_add(ELM_OBJ_IMAGE_CLASS, ourGlobals->win); - ourScene.image = obj; - eo_do(obj, - evas_obj_size_hint_weight_set(EVAS_HINT_EXPAND, EVAS_HINT_EXPAND), - elm_obj_image_fill_outside_set(EINA_TRUE), - evas_obj_visibility_set(EINA_TRUE), - temp = elm_obj_image_object_get() - ); - eo_do(temp, - evas_obj_image_scene_set(ourScene.scene) - ); - elm_object_tooltip_text_set(obj, ""); - elm_object_tooltip_hide(obj); - // Elm can't seem to be able to tell us WHERE an image was clicked, so use raw Evas calbacks instead. - evas_object_event_callback_add(temp, EVAS_CALLBACK_MOUSE_MOVE, _on_mouse_move, &ourScene); - evas_object_event_callback_add(temp, EVAS_CALLBACK_MOUSE_DOWN, _on_mouse_down, &ourScene); - cameraAdd(ourGlobals, obj); - elm_win_resize_object_add(ourGlobals->win, obj); -// elm_box_pack_end(ourGlobals->gld.bx, obj); - - ourGlobals->gld.move = calloc(1, sizeof(cameraMove)); + // Add an image object for 3D scene rendering. + obj = eo_add(ELM_OBJ_IMAGE_CLASS, ourGlobals->win, + evas_obj_size_hint_weight_set(EVAS_HINT_EXPAND, EVAS_HINT_EXPAND), + elm_obj_image_fill_outside_set(EINA_TRUE), + evas_obj_visibility_set(EINA_TRUE), + temp = elm_obj_image_object_get() + ); + ourScene.image = obj; + + eo_do(temp, + evas_obj_image_scene_set(ourScene.scene) + ); + elm_object_tooltip_text_set(obj, ""); + elm_object_tooltip_hide(obj); + // Elm can't seem to be able to tell us WHERE an image was clicked, so use raw Evas calbacks instead. + evas_object_event_callback_add(temp, EVAS_CALLBACK_MOUSE_MOVE, _on_mouse_move, &ourScene); + evas_object_event_callback_add(temp, EVAS_CALLBACK_MOUSE_DOWN, _on_mouse_down, &ourScene); + + cameraAdd(ourGlobals, obj); + elm_win_resize_object_add(ourGlobals->win, obj); +// elm_box_pack_end(ourGlobals->gld.bx, obj); + + ourGlobals->gld.move = calloc(1, sizeof(cameraMove)); } void Evas_3D_Demo_fini(globals *ourGlobals) diff --git a/src/extantz/chat.c b/src/extantz/chat.c index d71e8bb..d5e492e 100644 --- a/src/extantz/chat.c +++ b/src/extantz/chat.c @@ -18,22 +18,20 @@ fangWin *chat_add(globals *ourGlobals) me = fang_win_add(ourGlobals); - bx = eo_add(ELM_OBJ_BOX_CLASS, me->win); - eo_do(bx, + bx = eo_add(ELM_OBJ_BOX_CLASS, me->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) ); elm_win_resize_object_add(me->win, bx); - en = eo_add(ELM_OBJ_ENTRY_CLASS, me->win); - elm_object_text_set(en, "History is shown here"); - eo_do(en, + en = eo_add(ELM_OBJ_ENTRY_CLASS, me->win, elm_obj_entry_scrollable_set(EINA_TRUE), elm_obj_entry_editable_set(EINA_FALSE), evas_obj_size_hint_weight_set(EVAS_HINT_EXPAND, EVAS_HINT_EXPAND), evas_obj_size_hint_align_set(EVAS_HINT_FILL, EVAS_HINT_FILL), evas_obj_visibility_set(EINA_TRUE) ); + elm_object_text_set(en, "History is shown here"); elm_box_pack_end(bx, en); eo_unref(en); diff --git a/src/extantz/extantz.c b/src/extantz/extantz.c index 4ef9ecc..ef493b8 100644 --- a/src/extantz/extantz.c +++ b/src/extantz/extantz.c @@ -279,9 +279,7 @@ static void makeMainMenu(globals *ourGlobals) Elm_Object_Item *tb_it; // A toolbar thingy. - tb = eo_add(ELM_OBJ_TOOLBAR_CLASS, ourGlobals->win); - ourGlobals->tb = tb; - eo_do(tb, + tb = eo_add(ELM_OBJ_TOOLBAR_CLASS, ourGlobals->win, 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), @@ -289,6 +287,7 @@ static void makeMainMenu(globals *ourGlobals) evas_obj_position_set(0, 0), elm_obj_toolbar_align_set(0.0) ); + ourGlobals->tb = tb; // Menus. menu = _toolbar_menu_add(ourGlobals->win, tb, "file"); @@ -398,9 +397,8 @@ EAPI_MAIN int elm_main(int argc, char **argv) ourGlobals.win_h = ourGlobals.scr_h - 30; // Add a background image object. - obj = eo_add(ELM_OBJ_IMAGE_CLASS, ourGlobals.win); snprintf(buf, sizeof(buf), "%s/sky_03.jpg", elm_app_data_dir_get()); - eo_do(obj, + obj = eo_add(ELM_OBJ_IMAGE_CLASS, ourGlobals.win, evas_obj_size_hint_weight_set(EVAS_HINT_EXPAND, EVAS_HINT_EXPAND), elm_obj_image_fill_outside_set(EINA_TRUE), elm_obj_image_file_set(buf, NULL), @@ -409,8 +407,7 @@ EAPI_MAIN int elm_main(int argc, char **argv) elm_win_resize_object_add(ourGlobals.win, obj); eo_unref(obj); - ourGlobals.bx = eo_add(ELM_OBJ_BOX_CLASS, ourGlobals.win); - eo_do(ourGlobals.bx, + ourGlobals.bx = eo_add(ELM_OBJ_BOX_CLASS, ourGlobals.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), evas_obj_visibility_set(EINA_TRUE) diff --git a/src/extantz/files.c b/src/extantz/files.c index 024e2df..06cd257 100644 --- a/src/extantz/files.c +++ b/src/extantz/files.c @@ -148,8 +148,7 @@ fangWin *filesAdd(globals *ourGlobals, char *path, Eina_Bool multi, Eina_Bool sa me = fang_win_add(ourGlobals); - bx = eo_add(ELM_OBJ_BOX_CLASS, me->win); - eo_do(bx, + bx = eo_add(ELM_OBJ_BOX_CLASS, me->win, elm_obj_box_homogeneous_set(EINA_FALSE), evas_obj_size_hint_weight_set(EVAS_HINT_EXPAND, EVAS_HINT_EXPAND), evas_obj_size_hint_align_set(EVAS_HINT_FILL, EVAS_HINT_FILL) @@ -189,16 +188,13 @@ fangWin *filesAdd(globals *ourGlobals, char *path, Eina_Bool multi, Eina_Bool sa // Call back for double click or Enter pressed on file. evas_object_smart_callback_add(fs, "activated", my_fileselector_activated, me); - vbox = eo_add(ELM_OBJ_BOX_CLASS, me->win); - eo_do(vbox, + vbox = eo_add(ELM_OBJ_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) ); - hoversel = eo_add(ELM_OBJ_HOVERSEL_CLASS, vbox); - elm_object_text_set(hoversel, "sorting"); - eo_do(hoversel, + hoversel = eo_add(ELM_OBJ_HOVERSEL_CLASS, vbox, elm_obj_hoversel_hover_parent_set(me->win), eo_key_data_set("fileselector", fs, NULL), elm_obj_hoversel_item_add("name(asc)", NULL, ELM_ICON_NONE, _sort_selected_cb, (const void *) ELM_FILESELECTOR_SORT_BY_FILENAME_ASC), @@ -211,12 +207,11 @@ fangWin *filesAdd(globals *ourGlobals, char *path, Eina_Bool multi, Eina_Bool sa elm_obj_hoversel_item_add("time(desc)", NULL, ELM_ICON_NONE, _sort_selected_cb, (const void *) ELM_FILESELECTOR_SORT_BY_MODIFIED_DESC), evas_obj_visibility_set(EINA_TRUE) ); + elm_object_text_set(hoversel, "sorting"); elm_box_pack_end(vbox, hoversel); eo_unref(hoversel); - hoversel = eo_add(ELM_OBJ_HOVERSEL_CLASS, vbox); - elm_object_text_set(hoversel, "size"); - eo_do(hoversel, + hoversel = eo_add(ELM_OBJ_HOVERSEL_CLASS, vbox, elm_obj_hoversel_hover_parent_set(me->win), eo_key_data_set("fileselector", fs, NULL), elm_obj_hoversel_item_add("tiny", NULL, ELM_ICON_NONE, _tiny_icon_clicked, fs), @@ -225,57 +220,57 @@ fangWin *filesAdd(globals *ourGlobals, char *path, Eina_Bool multi, Eina_Bool sa elm_obj_hoversel_item_add("big", NULL, ELM_ICON_NONE, _big_icon_clicked, fs), evas_obj_visibility_set(EINA_TRUE) ); + elm_object_text_set(hoversel, "size"); elm_box_pack_end(vbox, hoversel); // Make sure it starts off as small, works around "hitting grid mode before hitting size not showing anything" bug. _small_icon_clicked(fs, hoversel, NULL); eo_unref(hoversel); - bt = eo_add(ELM_OBJ_CHECK_CLASS, vbox); - elm_object_text_set(bt, "hidden"); - eo_do(bt, - elm_obj_check_state_set(elm_fileselector_hidden_visible_get(fs)), + bt = eo_add(ELM_OBJ_CHECK_CLASS, vbox, + elm_obj_check_state_set(elm_fileselector_hidden_visible_get(fs)), evas_obj_visibility_set(EINA_TRUE) ); + elm_object_text_set(bt, "hidden"); evas_object_smart_callback_add(bt, "changed", _hidden_clicked, fs); elm_box_pack_end(vbox, bt); eo_unref(bt); - rdg = rd = eo_add(ELM_OBJ_RADIO_CLASS, vbox); - elm_object_text_set(rd, "grid"); - eo_do(rd, + rdg = rd = eo_add(ELM_OBJ_RADIO_CLASS, vbox, elm_obj_radio_state_value_set(ELM_FILESELECTOR_GRID), evas_obj_visibility_set(EINA_TRUE) ); + elm_object_text_set(rd, "grid"); elm_box_pack_end(vbox, rd); evas_object_smart_callback_add(rd, "changed", _mode_changed_cb, fs); // Make it start in grid mode. It defaults to list mode, so this swaps it over. _mode_changed_cb(fs, rd, NULL); eo_unref(rd); - rd = eo_add(ELM_OBJ_RADIO_CLASS, vbox); - elm_radio_group_add(rd, rdg); - elm_object_text_set(rd, "list"); - eo_do(rd, + rd = eo_add(ELM_OBJ_RADIO_CLASS, vbox, elm_obj_radio_state_value_set(ELM_FILESELECTOR_LIST), evas_obj_visibility_set(EINA_TRUE) ); + elm_radio_group_add(rd, rdg); + elm_object_text_set(rd, "list"); elm_box_pack_end(vbox, rd); evas_object_smart_callback_add(rd, "changed", _mode_changed_cb, fs); eo_unref(rd); // No need to unref this, it's taken care of already. //eo_unref(rdg); - bt = eo_add(ELM_OBJ_BUTTON_CLASS, me->win); + bt = eo_add(ELM_OBJ_BUTTON_CLASS, me->win, + evas_obj_visibility_set(EINA_TRUE) + ); elm_object_text_set(bt, "OK"); - eo_do(bt, evas_obj_visibility_set(EINA_TRUE)); evas_object_smart_callback_add(bt, "clicked", _OK_clicked, me); elm_box_pack_end(vbox, bt); eo_unref(bt); - bt = eo_add(ELM_OBJ_BUTTON_CLASS, me->win); + bt = eo_add(ELM_OBJ_BUTTON_CLASS, me->win, + evas_obj_visibility_set(EINA_TRUE) + ); elm_object_text_set(bt, "CANCEL"); - eo_do(bt, evas_obj_visibility_set(EINA_TRUE)); evas_object_smart_callback_add(bt, "clicked", _CANCEL_clicked, me); elm_box_pack_end(vbox, bt); eo_unref(bt); diff --git a/src/extantz/woMan.c b/src/extantz/woMan.c index ffb063c..0a3456b 100644 --- a/src/extantz/woMan.c +++ b/src/extantz/woMan.c @@ -274,14 +274,13 @@ fangWin *woMan_add(globals *ourGlobals) tab = gridList; tab_it = elm_naviframe_item_push(nf, NULL, NULL, NULL, tab, NULL); elm_naviframe_item_title_enabled_set(tab_it, EINA_FALSE, EINA_TRUE); elm_toolbar_item_append(tb, NULL, "Grids", _promote, tab_it); elm_box_pack_end(bx, nf); - bt = eo_add(ELM_OBJ_BUTTON_CLASS, me->win); - elm_object_text_set(bt, "Login"); // No eo interface for this that I can find. - eo_do(bt, + bt = eo_add(ELM_OBJ_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), evas_obj_visibility_set(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(bx, bt); eo_unref(bt); -- cgit v1.1