summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/bin/ecore_evas/ecore_evas_convert.c2
-rw-r--r--src/bin/edje/edje_player.c2
-rw-r--r--src/bin/edje/meson.build2
-rw-r--r--src/bin/efl_mono_msbuild_gen/main.cc15
-rw-r--r--src/bin/efreet/efreet_desktop_cache_create.c21
-rw-r--r--src/bin/elementary/meson.build2
-rw-r--r--src/bin/elementary/test.c8
-rw-r--r--src/bin/elementary/test_efl_anim_alpha.c45
-rw-r--r--src/bin/elementary/test_efl_anim_group_parallel.c77
-rw-r--r--src/bin/elementary/test_efl_anim_group_sequential.c82
-rw-r--r--src/bin/elementary/test_efl_anim_interpolator.c99
-rw-r--r--src/bin/elementary/test_efl_anim_pause.c68
-rw-r--r--src/bin/elementary/test_efl_anim_repeat.c106
-rw-r--r--src/bin/elementary/test_efl_anim_rotate.c85
-rw-r--r--src/bin/elementary/test_efl_anim_scale.c84
-rw-r--r--src/bin/elementary/test_efl_anim_start_delay.c55
-rw-r--r--src/bin/elementary/test_efl_anim_translate.c65
-rw-r--r--src/bin/elementary/test_efl_ui_text.c198
-rw-r--r--src/bin/elementary/test_event_animation.c396
-rw-r--r--src/bin/elementary/test_events.c2
-rw-r--r--src/bin/elementary/test_gfx_filters.c7
-rw-r--r--src/bin/elementary/test_label.c24
-rw-r--r--src/bin/elementary/test_photocam.c4
-rw-r--r--src/bin/elementary/test_ui_collection.c6
-rw-r--r--src/bin/elementary/test_ui_relative_container.c (renamed from src/bin/elementary/test_ui_relative_layout.c)56
-rw-r--r--src/bin/elementary/test_ui_spotlight.c27
-rw-r--r--src/bin/eolian/headers.c2
-rw-r--r--src/bin/eolian/sources.c10
-rw-r--r--src/bin/eolian_cxx/eolian_cxx.cc15
-rw-r--r--src/bin/eolian_mono/eolian/mono/alias_definition.hh103
-rw-r--r--src/bin/eolian_mono/eolian/mono/async_function_definition.hh21
-rw-r--r--src/bin/eolian_mono/eolian/mono/blacklist.hh21
-rw-r--r--src/bin/eolian_mono/eolian/mono/culture_info.hh61
-rw-r--r--src/bin/eolian_mono/eolian/mono/documentation.hh35
-rw-r--r--src/bin/eolian_mono/eolian/mono/enum_definition.hh31
-rw-r--r--src/bin/eolian_mono/eolian/mono/events.hh55
-rw-r--r--src/bin/eolian_mono/eolian/mono/function_declaration.hh15
-rw-r--r--src/bin/eolian_mono/eolian/mono/function_definition.hh28
-rw-r--r--src/bin/eolian_mono/eolian/mono/function_helpers.hh20
-rw-r--r--src/bin/eolian_mono/eolian/mono/function_pointer.hh48
-rw-r--r--src/bin/eolian_mono/eolian/mono/function_registration.hh17
-rw-r--r--src/bin/eolian_mono/eolian/mono/generation_contexts.hh17
-rw-r--r--src/bin/eolian_mono/eolian/mono/helpers.hh15
-rw-r--r--src/bin/eolian_mono/eolian/mono/klass.hh81
-rw-r--r--src/bin/eolian_mono/eolian/mono/logging.hh15
-rw-r--r--src/bin/eolian_mono/eolian/mono/marshall_annotation.hh19
-rw-r--r--src/bin/eolian_mono/eolian/mono/marshall_type.hh15
-rw-r--r--src/bin/eolian_mono/eolian/mono/marshall_type_impl.hh15
-rw-r--r--src/bin/eolian_mono/eolian/mono/name_helpers.hh62
-rw-r--r--src/bin/eolian_mono/eolian/mono/parameter.hh21
-rw-r--r--src/bin/eolian_mono/eolian/mono/part_definition.hh17
-rw-r--r--src/bin/eolian_mono/eolian/mono/struct_definition.hh152
-rw-r--r--src/bin/eolian_mono/eolian/mono/struct_fields.hh20
-rw-r--r--src/bin/eolian_mono/eolian/mono/type.hh15
-rw-r--r--src/bin/eolian_mono/eolian/mono/type_impl.hh15
-rw-r--r--src/bin/eolian_mono/eolian/mono/using_decl.hh15
-rw-r--r--src/bin/eolian_mono/eolian/mono/utils.hh17
-rw-r--r--src/bin/eolian_mono/eolian/mono/variable_definition.hh15
-rw-r--r--src/bin/eolian_mono/eolian_mono.cc37
-rw-r--r--src/bindings/cxx/ecore_cxx/Ecore.hh15
-rw-r--r--src/bindings/cxx/ecore_cxx/Ecore_Manual.hh15
-rw-r--r--src/bindings/cxx/eet_cxx/Eet.hh15
-rw-r--r--src/bindings/cxx/eet_cxx/eet_composite.hh15
-rw-r--r--src/bindings/cxx/eet_cxx/eet_register.hh15
-rw-r--r--src/bindings/cxx/eet_cxx/eet_type.hh15
-rw-r--r--src/bindings/cxx/eina_cxx/Eina.hh15
-rw-r--r--src/bindings/cxx/eina_cxx/eina_accessor.hh15
-rw-r--r--src/bindings/cxx/eina_cxx/eina_aligned_union.hh15
-rw-r--r--src/bindings/cxx/eina_cxx/eina_array.hh15
-rw-r--r--src/bindings/cxx/eina_cxx/eina_clone_allocators.hh15
-rw-r--r--src/bindings/cxx/eina_cxx/eina_copy_traits.hh15
-rw-r--r--src/bindings/cxx/eina_cxx/eina_deleter.hh15
-rw-r--r--src/bindings/cxx/eina_cxx/eina_eo_concrete_fwd.hh15
-rw-r--r--src/bindings/cxx/eina_cxx/eina_error.hh15
-rw-r--r--src/bindings/cxx/eina_cxx/eina_fold.hh15
-rw-r--r--src/bindings/cxx/eina_cxx/eina_function.hh15
-rw-r--r--src/bindings/cxx/eina_cxx/eina_future.hh15
-rw-r--r--src/bindings/cxx/eina_cxx/eina_inarray.hh15
-rw-r--r--src/bindings/cxx/eina_cxx/eina_inlist.hh15
-rw-r--r--src/bindings/cxx/eina_cxx/eina_integer_sequence.hh15
-rw-r--r--src/bindings/cxx/eina_cxx/eina_iterator.hh15
-rw-r--r--src/bindings/cxx/eina_cxx/eina_list.hh15
-rw-r--r--src/bindings/cxx/eina_cxx/eina_lists_auxiliary.hh15
-rw-r--r--src/bindings/cxx/eina_cxx/eina_log.hh15
-rw-r--r--src/bindings/cxx/eina_cxx/eina_logical.hh15
-rw-r--r--src/bindings/cxx/eina_cxx/eina_optional.hh15
-rw-r--r--src/bindings/cxx/eina_cxx/eina_pp.hh15
-rw-r--r--src/bindings/cxx/eina_cxx/eina_ptrarray.hh15
-rw-r--r--src/bindings/cxx/eina_cxx/eina_ptrlist.hh15
-rw-r--r--src/bindings/cxx/eina_cxx/eina_range_types.hh15
-rw-r--r--src/bindings/cxx/eina_cxx/eina_ref.hh15
-rw-r--r--src/bindings/cxx/eina_cxx/eina_strbuf.hh15
-rw-r--r--src/bindings/cxx/eina_cxx/eina_string_view.hh15
-rw-r--r--src/bindings/cxx/eina_cxx/eina_stringshare.hh15
-rw-r--r--src/bindings/cxx/eina_cxx/eina_thread.hh15
-rw-r--r--src/bindings/cxx/eina_cxx/eina_throw.hh15
-rw-r--r--src/bindings/cxx/eina_cxx/eina_tuple.hh15
-rw-r--r--src/bindings/cxx/eina_cxx/eina_tuple_c.hh15
-rw-r--r--src/bindings/cxx/eina_cxx/eina_tuple_unwrap.hh15
-rw-r--r--src/bindings/cxx/eina_cxx/eina_type_traits.hh15
-rw-r--r--src/bindings/cxx/eina_cxx/eina_value.hh15
-rw-r--r--src/bindings/cxx/eina_cxx/eina_variant.hh15
-rw-r--r--src/bindings/cxx/eina_cxx/eina_workarounds.hh15
-rw-r--r--src/bindings/cxx/eldbus_cxx/Eldbus.hh15
-rw-r--r--src/bindings/cxx/eldbus_cxx/Eldbus_Model.hh15
-rw-r--r--src/bindings/cxx/eldbus_cxx/eldbus_basic.hh15
-rw-r--r--src/bindings/cxx/eldbus_cxx/eldbus_error.hh15
-rw-r--r--src/bindings/cxx/eldbus_cxx/eldbus_freedesktop.hh15
-rw-r--r--src/bindings/cxx/eldbus_cxx/eldbus_integer_sequence.hh15
-rw-r--r--src/bindings/cxx/eldbus_cxx/eldbus_message.hh15
-rw-r--r--src/bindings/cxx/eldbus_cxx/eldbus_message_arguments.hh15
-rw-r--r--src/bindings/cxx/eldbus_cxx/eldbus_proxy_call.hh15
-rw-r--r--src/bindings/cxx/eldbus_cxx/eldbus_raw_tuple.hh15
-rw-r--r--src/bindings/cxx/eldbus_cxx/eldbus_service.hh15
-rw-r--r--src/bindings/cxx/eldbus_cxx/eldbus_signature_traits.hh15
-rw-r--r--src/bindings/cxx/eo_cxx/Eo.hh15
-rw-r--r--src/bindings/cxx/eo_cxx/efl_object_impl.hh15
-rw-r--r--src/bindings/cxx/eo_cxx/eo_concrete.hh15
-rw-r--r--src/bindings/cxx/eo_cxx/eo_cxx_interop.hh15
-rw-r--r--src/bindings/cxx/eo_cxx/eo_event.hh15
-rw-r--r--src/bindings/cxx/eo_cxx/eo_init.hh15
-rw-r--r--src/bindings/cxx/eo_cxx/eo_ops.hh15
-rw-r--r--src/bindings/cxx/eo_cxx/eo_private.hh15
-rw-r--r--src/bindings/cxx/eo_cxx/eo_wref.hh15
-rw-r--r--src/bindings/meson.build5
-rw-r--r--src/bindings/mono/efl_mono.dll.config.in15
-rw-r--r--src/bindings/mono/efl_mono/AssemblyInfo.cs.in3
-rw-r--r--src/bindings/mono/efl_mono/GenericModel.cs6
-rw-r--r--src/bindings/mono/efl_mono/ItemFactory.cs7
-rw-r--r--src/bindings/mono/efl_mono/UserModel.cs19
-rw-r--r--src/bindings/mono/efl_mono/efl_all.cs78
-rw-r--r--src/bindings/mono/efl_mono/efl_csharp_application.cs116
-rw-r--r--src/bindings/mono/efl_mono/efl_libs.cs.in15
-rw-r--r--src/bindings/mono/efl_mono/efl_libs.csv.in15
-rw-r--r--src/bindings/mono/efl_mono/meson.build23
-rw-r--r--src/bindings/mono/efl_sharp.csproj.in44
-rw-r--r--src/bindings/mono/eina_mono/eina_accessor.cs16
-rw-r--r--src/bindings/mono/eina_mono/eina_array.cs19
-rw-r--r--src/bindings/mono/eina_mono/eina_binbuf.cs15
-rw-r--r--src/bindings/mono/eina_mono/eina_common.cs21
-rw-r--r--src/bindings/mono/eina_mono/eina_config.cs15
-rw-r--r--src/bindings/mono/eina_mono/eina_container_common.cs116
-rw-r--r--src/bindings/mono/eina_mono/eina_environment.cs53
-rw-r--r--src/bindings/mono/eina_mono/eina_error.cs145
-rw-r--r--src/bindings/mono/eina_mono/eina_hash.cs63
-rw-r--r--src/bindings/mono/eina_mono/eina_inarray.cs15
-rw-r--r--src/bindings/mono/eina_mono/eina_inlist.cs15
-rw-r--r--src/bindings/mono/eina_mono/eina_iterator.cs15
-rw-r--r--src/bindings/mono/eina_mono/eina_list.cs15
-rw-r--r--src/bindings/mono/eina_mono/eina_log.cs19
-rw-r--r--src/bindings/mono/eina_mono/eina_promises.cs19
-rw-r--r--src/bindings/mono/eina_mono/eina_slice.cs105
-rw-r--r--src/bindings/mono/eina_mono/eina_strbuf.cs20
-rw-r--r--src/bindings/mono/eina_mono/eina_stringshare.cs28
-rw-r--r--src/bindings/mono/eina_mono/eina_value.cs605
-rw-r--r--src/bindings/mono/eina_mono/meson.build3
-rw-r--r--src/bindings/mono/eldbus_mono/eldbus_common.cs406
-rw-r--r--src/bindings/mono/eldbus_mono/eldbus_config.cs15
-rw-r--r--src/bindings/mono/eldbus_mono/eldbus_connection.cs17
-rw-r--r--src/bindings/mono/eldbus_mono/eldbus_message.cs17
-rw-r--r--src/bindings/mono/eldbus_mono/eldbus_object.cs18
-rw-r--r--src/bindings/mono/eldbus_mono/eldbus_pending.cs17
-rw-r--r--src/bindings/mono/eldbus_mono/eldbus_proxy.cs34
-rw-r--r--src/bindings/mono/eldbus_mono/eldbus_service.cs17
-rw-r--r--src/bindings/mono/eo_mono/EoWrapper.cs203
-rw-r--r--src/bindings/mono/eo_mono/FunctionWrapper.cs139
-rw-r--r--src/bindings/mono/eo_mono/FunctionWrapper_Unix.cs36
-rw-r--r--src/bindings/mono/eo_mono/FunctionWrapper_Windows.cs26
-rw-r--r--src/bindings/mono/eo_mono/NativeModule.cs60
-rw-r--r--src/bindings/mono/eo_mono/NativeModule_Unix.cs28
-rw-r--r--src/bindings/mono/eo_mono/NativeModule_Windows.cs26
-rw-r--r--src/bindings/mono/eo_mono/WrapperSupervisor.cs34
-rw-r--r--src/bindings/mono/eo_mono/iwrapper.cs477
-rw-r--r--src/bindings/mono/eo_mono/workaround.cs262
-rw-r--r--src/bindings/mono/meson.build117
-rw-r--r--src/examples/ecore/ecore_evas_ews_example.c2
-rw-r--r--src/examples/ecore/efl_exe.c2
-rw-r--r--src/examples/ecore/efl_mono_loop_timer_example.cs15
-rw-r--r--src/examples/ecore/efl_thread.c6
-rw-r--r--src/examples/efl_mono/EoInherit01.cs15
-rw-r--r--src/examples/efl_mono/FunctionPointer01.cs15
-rw-r--r--src/examples/efl_mono/example_numberwrapper.c15
-rw-r--r--src/examples/eina/EinaArray01.cs15
-rw-r--r--src/examples/eina/EinaBinbuf01.cs15
-rw-r--r--src/examples/eina/EinaError01.cs15
-rw-r--r--src/examples/eina/EinaHash01.cs15
-rw-r--r--src/examples/eina_cxx/eina_cxx_list_01.cc15
-rw-r--r--src/examples/eina_cxx/eina_cxx_thread_01.cc15
-rw-r--r--src/examples/elementary/.gitignore4
-rw-r--r--src/examples/elementary/bg_cxx_example_01.cc15
-rw-r--r--src/examples/elementary/bg_cxx_example_02.cc15
-rw-r--r--src/examples/elementary/box_cxx_example_02.cc15
-rw-r--r--src/examples/elementary/button_cxx_example_00.cc15
-rw-r--r--src/examples/elementary/button_cxx_example_01.cc15
-rw-r--r--src/examples/elementary/calendar_cxx_example_01.cc15
-rw-r--r--src/examples/elementary/calendar_cxx_example_02.cc15
-rw-r--r--src/examples/elementary/calendar_cxx_example_03.cc15
-rw-r--r--src/examples/elementary/calendar_cxx_example_04.cc15
-rw-r--r--src/examples/elementary/calendar_cxx_example_05.cc15
-rw-r--r--src/examples/elementary/clock_cxx_example.cc15
-rw-r--r--src/examples/elementary/efl_canvas_layout_text.c3
-rw-r--r--src/examples/elementary/efl_ui_collection_view_example_1.c2
-rw-r--r--src/examples/elementary/efl_ui_grid_view_example_1.c477
-rw-r--r--src/examples/elementary/efl_ui_list_example_1.c10
-rw-r--r--src/examples/elementary/efl_ui_list_view_example_3.c4
-rw-r--r--src/examples/elementary/efl_ui_relative_container_example_01.c (renamed from src/examples/elementary/efl_ui_relative_layout_example_01.c)18
-rw-r--r--src/examples/elementary/efl_ui_relative_container_example_02.c (renamed from src/examples/elementary/efl_ui_relative_layout_example_02.c)14
-rw-r--r--src/examples/elementary/efl_ui_slider_mono.cs15
-rw-r--r--src/examples/elementary/efl_ui_unit_converter.cs15
-rw-r--r--src/examples/elementary/icon_cxx_example_01.cc15
-rw-r--r--src/examples/elementary/layout_property_bind.c46
-rw-r--r--src/examples/elementary/menu_cxx_example_01.cc15
-rw-r--r--src/examples/elementary/meson.build3
-rw-r--r--src/examples/elementary/popup_cxx_example.cc15
-rw-r--r--src/examples/elementary/radio_cxx_example_01.cc15
-rw-r--r--src/examples/elementary/slider_cxx_example.cc15
-rw-r--r--src/examples/elementary/spinner_cxx_example.cc15
-rw-r--r--src/examples/elementary/table_cxx_example_01.cc15
-rw-r--r--src/examples/elementary/table_cxx_example_02.cc15
-rw-r--r--src/examples/elementary/toolbar_cxx_example_01.cc15
-rw-r--r--src/examples/eolian_cxx/colourable_cxx.cc15
-rw-r--r--src/examples/eolian_cxx/colourablesquare_cxx.cc15
-rw-r--r--src/examples/eolian_cxx/eolian_cxx_callbacks_01.cc15
-rw-r--r--src/examples/eolian_cxx/eolian_cxx_simple_01.cc15
-rw-r--r--src/examples/eolian_cxx/eolian_cxx_simple_01_cxx_impl.cc15
-rw-r--r--src/examples/evas/efl-canvas-animation.c179
-rw-r--r--src/examples/evas/efl-canvas-vg-simple.c652
-rw-r--r--src/examples/evas/evas-vg-json.c12
-rw-r--r--src/examples/evas/evas_cxx_rectangle.cc15
-rw-r--r--src/examples/evas/meson.build2
-rw-r--r--src/generic/evas/gst/main_0_10.c281
-rw-r--r--src/generic/evas/gst/meson.build10
-rw-r--r--src/lib/ecore/Ecore.h4
-rw-r--r--src/lib/ecore/Ecore_Common.h12
-rw-r--r--src/lib/ecore/Efl_Core.h4
-rw-r--r--src/lib/ecore/ecore.c4
-rw-r--r--src/lib/ecore/ecore_app.c6
-rw-r--r--src/lib/ecore/ecore_events.c150
-rw-r--r--src/lib/ecore/ecore_exe_posix.c4
-rw-r--r--src/lib/ecore/ecore_exe_ps3.c20
-rw-r--r--src/lib/ecore/ecore_getopt.c4
-rw-r--r--src/lib/ecore/ecore_pipe.c8
-rw-r--r--src/lib/ecore/ecore_private.h17
-rw-r--r--src/lib/ecore/ecore_time.c6
-rw-r--r--src/lib/ecore/ecore_timer.c74
-rw-r--r--src/lib/ecore/efl_accelerate_interpolator.c16
-rw-r--r--src/lib/ecore/efl_accelerate_interpolator.eo14
-rw-r--r--src/lib/ecore/efl_boolean_model.c10
-rw-r--r--src/lib/ecore/efl_boolean_model.eo6
-rw-r--r--src/lib/ecore/efl_bounce_interpolator.c40
-rw-r--r--src/lib/ecore/efl_bounce_interpolator.eo24
-rw-r--r--src/lib/ecore/efl_composite_model.c2
-rw-r--r--src/lib/ecore/efl_core_command_line.eo2
-rw-r--r--src/lib/ecore/efl_core_env.eo2
-rw-r--r--src/lib/ecore/efl_cubic_bezier_interpolator.c50
-rw-r--r--src/lib/ecore/efl_cubic_bezier_interpolator.eo26
-rw-r--r--src/lib/ecore/efl_decelerate_interpolator.c16
-rw-r--r--src/lib/ecore/efl_decelerate_interpolator.eo14
-rw-r--r--src/lib/ecore/efl_divisor_interpolator.c39
-rw-r--r--src/lib/ecore/efl_divisor_interpolator.eo20
-rw-r--r--src/lib/ecore/efl_exe.c5
-rw-r--r--src/lib/ecore/efl_linear_interpolator.eo3
-rw-r--r--src/lib/ecore/efl_loop.c22
-rw-r--r--src/lib/ecore/efl_loop_message_handler.c12
-rw-r--r--src/lib/ecore/efl_loop_timer.eo4
-rw-r--r--src/lib/ecore/efl_sinusoidal_interpolator.c16
-rw-r--r--src/lib/ecore/efl_sinusoidal_interpolator.eo13
-rw-r--r--src/lib/ecore/efl_spring_interpolator.c44
-rw-r--r--src/lib/ecore/efl_spring_interpolator.eo24
-rw-r--r--src/lib/ecore/meson.build6
-rw-r--r--src/lib/ecore_con/ecore_con_url_curl.c4
-rw-r--r--src/lib/ecore_con/efl_net_control_manager.eo2
-rw-r--r--src/lib/ecore_con/efl_net_dialer_http.eo6
-rw-r--r--src/lib/ecore_con/efl_net_dialer_websocket.eo2
-rw-r--r--src/lib/ecore_con/efl_net_ssl_conn-openssl.c8
-rw-r--r--src/lib/ecore_drm2/ecore_drm2_device.c2
-rw-r--r--src/lib/ecore_drm2/ecore_drm2_outputs.c4
-rw-r--r--src/lib/ecore_evas/ecore_evas.c4
-rw-r--r--src/lib/ecore_evas/ecore_evas_drm.h1
-rw-r--r--src/lib/ecore_evas/ecore_evas_util.c1
-rw-r--r--src/lib/ecore_file/Ecore_File.h8
-rw-r--r--src/lib/ecore_file/ecore_file_private.h4
-rw-r--r--src/lib/ecore_input_evas/ecore_input_evas_private.h4
-rw-r--r--src/lib/ecore_win32/ecore_win32_event.c55
-rw-r--r--src/lib/ecore_wl2/Ecore_Wl2.h165
-rw-r--r--src/lib/ecore_wl2/ecore_wl2.c4
-rw-r--r--src/lib/ecore_wl2/ecore_wl2_display.c44
-rw-r--r--src/lib/ecore_wl2/ecore_wl2_internal.h60
-rw-r--r--src/lib/ecore_wl2/ecore_wl2_private.h6
-rw-r--r--src/lib/ecore_wl2/ecore_wl2_window.c56
-rw-r--r--src/lib/ecore_x/Ecore_X.h25
-rw-r--r--src/lib/ecore_x/Ecore_X_Atoms.h2
-rw-r--r--src/lib/ecore_x/ecore_x.c32
-rw-r--r--src/lib/ecore_x/ecore_x_atoms_decl.h4
-rw-r--r--src/lib/ecore_x/ecore_x_events.c182
-rw-r--r--src/lib/ecore_x/ecore_x_gesture.c90
-rw-r--r--src/lib/ecore_x/ecore_x_private.h13
-rw-r--r--src/lib/ecore_x/ecore_x_xi2.c179
-rw-r--r--src/lib/ecore_x/meson.build4
-rw-r--r--src/lib/ector/ector_buffer.eo10
-rw-r--r--src/lib/ector/ector_renderer.eo2
-rw-r--r--src/lib/ector/ector_surface.eo6
-rw-r--r--src/lib/ector/gl/ector_gl_surface.eo2
-rw-r--r--src/lib/ector/software/ector_renderer_software_shape.c4
-rw-r--r--src/lib/ector/software/ector_software_buffer.c11
-rw-r--r--src/lib/ector/software/ector_software_buffer_base.eo1
-rw-r--r--src/lib/ector/software/ector_software_rasterizer.c44
-rw-r--r--src/lib/ector/software/ector_software_surface.c9
-rw-r--r--src/lib/ector/software/ector_software_surface.eo2
-rw-r--r--src/lib/edje/Efl_Layout.h3
-rw-r--r--src/lib/edje/edje_box_layout.c5
-rw-r--r--src/lib/edje/edje_cache.c37
-rw-r--r--src/lib/edje/edje_calc.c62
-rw-r--r--src/lib/edje/edje_callbacks.c3
-rw-r--r--src/lib/edje/edje_entry.c44
-rw-r--r--src/lib/edje/edje_legacy.c254
-rw-r--r--src/lib/edje/edje_load.c50
-rw-r--r--src/lib/edje/edje_part_invalid.c15
-rw-r--r--src/lib/edje/edje_part_text.c207
-rw-r--r--src/lib/edje/edje_private.h47
-rw-r--r--src/lib/edje/edje_program.c19
-rw-r--r--src/lib/edje/edje_smart.c8
-rw-r--r--src/lib/edje/edje_text.c30
-rw-r--r--src/lib/edje/edje_textblock.c238
-rw-r--r--src/lib/edje/edje_textblock_styles.c10
-rw-r--r--src/lib/edje/edje_util.c27
-rw-r--r--src/lib/edje/efl_canvas_layout.eo2
-rw-r--r--src/lib/edje/efl_canvas_layout_eo.legacy.c4
-rw-r--r--src/lib/edje/efl_canvas_layout_part_invalid.eo16
-rw-r--r--src/lib/edje/efl_canvas_layout_part_text.eo19
-rw-r--r--src/lib/efl/Efl.h23
-rw-r--r--src/lib/efl/interfaces/efl_cached_item.eo17
-rw-r--r--src/lib/efl/interfaces/efl_common_internal.h169
-rw-r--r--src/lib/efl/interfaces/efl_gfx_arrangement.eo15
-rw-r--r--src/lib/efl/interfaces/efl_gfx_frame_controller.eo19
-rw-r--r--src/lib/efl/interfaces/efl_gfx_hint.eo16
-rw-r--r--src/lib/efl/interfaces/efl_gfx_image.eo4
-rw-r--r--src/lib/efl/interfaces/efl_gfx_stack.eo8
-rw-r--r--src/lib/efl/interfaces/efl_gfx_types.eot11
-rw-r--r--src/lib/efl/interfaces/efl_gfx_view.eo5
-rw-r--r--src/lib/efl/interfaces/efl_interfaces_main.c5
-rw-r--r--src/lib/efl/interfaces/efl_interpolator.eo21
-rw-r--r--src/lib/efl/interfaces/efl_observable.eo2
-rw-r--r--src/lib/efl/interfaces/efl_text.eo4
-rw-r--r--src/lib/efl/interfaces/efl_text_annotate.eo137
-rw-r--r--src/lib/efl/interfaces/efl_text_cursor.eo246
-rw-r--r--src/lib/efl/interfaces/efl_text_font.eo30
-rw-r--r--src/lib/efl/interfaces/efl_text_format.eo6
-rw-r--r--src/lib/efl/interfaces/efl_text_markup_interactive.eo25
-rw-r--r--src/lib/efl/interfaces/efl_text_types.eot5
-rw-r--r--src/lib/efl/interfaces/efl_ui_factory.eo21
-rw-r--r--src/lib/efl/interfaces/efl_ui_scrollable.eo104
-rw-r--r--src/lib/efl/interfaces/efl_ui_view_factory.eo2
-rw-r--r--src/lib/efl/interfaces/meson.build12
-rw-r--r--src/lib/efl_mono/efl_custom_exports_mono.c26
-rw-r--r--src/lib/efreet/efreet_cache.c2
-rw-r--r--src/lib/efreet/efreet_desktop.c12
-rw-r--r--src/lib/efreet/efreet_desktop_command.c15
-rw-r--r--src/lib/eina/eina_config.h.in150
-rw-r--r--src/lib/eina/eina_counter.c4
-rw-r--r--src/lib/eina/eina_evlog.c6
-rw-r--r--src/lib/eina/eina_file.c88
-rw-r--r--src/lib/eina/eina_file.h17
-rw-r--r--src/lib/eina/eina_file_common.c4
-rw-r--r--src/lib/eina/eina_inline_cpu.x26
-rw-r--r--src/lib/eina/eina_inline_mempool.x14
-rw-r--r--src/lib/eina/eina_list.c12
-rw-r--r--src/lib/eina/eina_matrix.c14
-rw-r--r--src/lib/eina/eina_mempool.c3
-rw-r--r--src/lib/eina/eina_mempool.h23
-rw-r--r--src/lib/eina/eina_module.c8
-rw-r--r--src/lib/eina/eina_prefix.c4
-rw-r--r--src/lib/eina/eina_rectangle.h21
-rw-r--r--src/lib/eina/eina_thread_queue.c103
-rw-r--r--src/lib/eina/eina_value.c2
-rw-r--r--src/lib/eina/eina_vector.h1
-rw-r--r--src/lib/eio/efl_io_manager.eo2
-rw-r--r--src/lib/eldbus/eldbus_model_arguments.eo2
-rw-r--r--src/lib/eldbus/eldbus_model_proxy.c20
-rw-r--r--src/lib/eldbus/eldbus_types.eot4
-rw-r--r--src/lib/elementary/Efl_Ui.h17
-rw-r--r--src/lib/elementary/efl_access_action.eo2
-rw-r--r--src/lib/elementary/efl_access_object.eo4
-rw-r--r--src/lib/elementary/efl_access_text.eo6
-rw-r--r--src/lib/elementary/efl_page_indicator_icon.c191
-rw-r--r--src/lib/elementary/efl_text_interactive.eo11
-rw-r--r--src/lib/elementary/efl_ui.eot18
-rw-r--r--src/lib/elementary/efl_ui_alert_popup.c38
-rw-r--r--src/lib/elementary/efl_ui_alert_popup.eo3
-rw-r--r--src/lib/elementary/efl_ui_alert_popup_part_title.eo (renamed from src/lib/elementary/efl_ui_alert_popup_part.eo)2
-rw-r--r--src/lib/elementary/efl_ui_animation_view.c31
-rw-r--r--src/lib/elementary/efl_ui_animation_view.eo19
-rw-r--r--src/lib/elementary/efl_ui_caching_factory.c4
-rw-r--r--src/lib/elementary/efl_ui_caching_factory.eo7
-rw-r--r--src/lib/elementary/efl_ui_check.c3
-rw-r--r--src/lib/elementary/efl_ui_collection.c6
-rw-r--r--src/lib/elementary/efl_ui_collection.eo16
-rw-r--r--src/lib/elementary/efl_ui_collection_view.c149
-rw-r--r--src/lib/elementary/efl_ui_collection_view.eo12
-rw-r--r--src/lib/elementary/efl_ui_focus_manager.eo4
-rw-r--r--src/lib/elementary/efl_ui_format.eo2
-rw-r--r--src/lib/elementary/efl_ui_grid.eo2
-rw-r--r--src/lib/elementary/efl_ui_grid_view.eo4
-rw-r--r--src/lib/elementary/efl_ui_internal_text_interactive.c323
-rw-r--r--src/lib/elementary/efl_ui_internal_text_interactive.eo1
-rw-r--r--src/lib/elementary/efl_ui_internal_text_scroller.c18
-rw-r--r--src/lib/elementary/efl_ui_item.c3
-rw-r--r--src/lib/elementary/efl_ui_layout.c20
-rw-r--r--src/lib/elementary/efl_ui_list.eo2
-rw-r--r--src/lib/elementary/efl_ui_list_view.eo4
-rw-r--r--src/lib/elementary/efl_ui_multi_selectable.eo36
-rw-r--r--src/lib/elementary/efl_ui_multi_selectable_async.eo63
-rw-r--r--src/lib/elementary/efl_ui_multi_selectable_index_range.eo53
-rw-r--r--src/lib/elementary/efl_ui_multi_selectable_object_range.eo46
-rw-r--r--src/lib/elementary/efl_ui_pager.c27
-rw-r--r--src/lib/elementary/efl_ui_pager.eo10
-rw-r--r--src/lib/elementary/efl_ui_position_manager_grid.c1
-rw-r--r--src/lib/elementary/efl_ui_position_manager_list.c31
-rw-r--r--src/lib/elementary/efl_ui_radio_box.eo2
-rw-r--r--src/lib/elementary/efl_ui_relative_container.c (renamed from src/lib/elementary/efl_ui_relative_layout.c)198
-rw-r--r--src/lib/elementary/efl_ui_relative_container.eo94
-rw-r--r--src/lib/elementary/efl_ui_relative_container_private.h (renamed from src/lib/elementary/efl_ui_relative_layout_private.h)68
-rw-r--r--src/lib/elementary/efl_ui_relative_layout.eo73
-rw-r--r--src/lib/elementary/efl_ui_scroll_manager.eo12
-rw-r--r--src/lib/elementary/efl_ui_select_model.c24
-rw-r--r--src/lib/elementary/efl_ui_select_model.eo16
-rw-r--r--src/lib/elementary/efl_ui_selection_manager.c5
-rw-r--r--src/lib/elementary/efl_ui_slider.c48
-rw-r--r--src/lib/elementary/efl_ui_spotlight_container.c167
-rw-r--r--src/lib/elementary/efl_ui_spotlight_container.eo31
-rw-r--r--src/lib/elementary/efl_ui_spotlight_indicator_icon.c54
-rw-r--r--src/lib/elementary/efl_ui_spotlight_indicator_icon.eo1
-rw-r--r--src/lib/elementary/efl_ui_spotlight_manager.eo11
-rw-r--r--src/lib/elementary/efl_ui_spotlight_manager_plain.c39
-rw-r--r--src/lib/elementary/efl_ui_spotlight_manager_plain.eo2
-rw-r--r--src/lib/elementary/efl_ui_spotlight_manager_scroll.c58
-rw-r--r--src/lib/elementary/efl_ui_spotlight_manager_scroll.eo2
-rw-r--r--src/lib/elementary/efl_ui_spotlight_manager_stack.c210
-rw-r--r--src/lib/elementary/efl_ui_spotlight_manager_stack.eo2
-rw-r--r--src/lib/elementary/efl_ui_stack.c27
-rw-r--r--src/lib/elementary/efl_ui_stack.eo10
-rw-r--r--src/lib/elementary/efl_ui_table.c2
-rw-r--r--src/lib/elementary/efl_ui_table_static.eo8
-rw-r--r--src/lib/elementary/efl_ui_text.c354
-rw-r--r--src/lib/elementary/efl_ui_text.eo127
-rw-r--r--src/lib/elementary/efl_ui_view_model.c3
-rw-r--r--src/lib/elementary/efl_ui_view_model.eo4
-rw-r--r--src/lib/elementary/efl_ui_widget.c19
-rw-r--r--src/lib/elementary/efl_ui_win.c4
-rw-r--r--src/lib/elementary/efl_ui_win.eo2
-rw-r--r--src/lib/elementary/elc_hoversel.c9
-rw-r--r--src/lib/elementary/elc_naviframe.c4
-rw-r--r--src/lib/elementary/elm_code_file.c11
-rw-r--r--src/lib/elementary/elm_code_widget.c1
-rw-r--r--src/lib/elementary/elm_config.c27
-rw-r--r--src/lib/elementary/elm_entry.c1
-rw-r--r--src/lib/elementary/elm_general.eot1
-rw-r--r--src/lib/elementary/elm_gengrid.c1
-rw-r--r--src/lib/elementary/elm_genlist.c175
-rw-r--r--src/lib/elementary/elm_interface_scrollable.c61
-rw-r--r--src/lib/elementary/elm_interface_scrollable.eo3
-rw-r--r--src/lib/elementary/elm_label.c18
-rw-r--r--src/lib/elementary/elm_label_eo.c2
-rw-r--r--src/lib/elementary/elm_list.c3
-rw-r--r--src/lib/elementary/elm_map.c3
-rw-r--r--src/lib/elementary/elm_panel.c1
-rw-r--r--src/lib/elementary/elm_priv.h4
-rw-r--r--src/lib/elementary/elm_scroller.c1
-rw-r--r--src/lib/elementary/elm_slider.c58
-rw-r--r--src/lib/elementary/elm_toolbar.c1
-rw-r--r--src/lib/elementary/elm_widget_genlist.h3
-rw-r--r--src/lib/elementary/elm_widget_layout.h1
-rw-r--r--src/lib/elementary/meson.build15
-rw-r--r--src/lib/embryo/embryo_amx.c4
-rw-r--r--src/lib/embryo/embryo_str.c4
-rw-r--r--src/lib/embryo/embryo_time.c4
-rw-r--r--src/lib/emile/emile_image.c14
-rw-r--r--src/lib/emotion/emotion_modules.c3
-rw-r--r--src/lib/emotion/emotion_smart.c1
-rw-r--r--src/lib/eo/Eo.h50
-rw-r--r--src/lib/eo/eo.c3
-rw-r--r--src/lib/eo/eo_base_class.c489
-rw-r--r--src/lib/eolian/database_validate.c18
-rw-r--r--src/lib/eolian/eo_parser.c8
-rw-r--r--src/lib/eolian/eolian_aux.c1
-rw-r--r--src/lib/eolian/eolian_database.c1
-rw-r--r--src/lib/eolian_cxx/Eolian_Cxx.hh15
-rw-r--r--src/lib/eolian_cxx/grammar/address_of.hpp15
-rw-r--r--src/lib/eolian_cxx/grammar/alternative.hpp15
-rw-r--r--src/lib/eolian_cxx/grammar/attribute_conditional.hpp15
-rw-r--r--src/lib/eolian_cxx/grammar/attribute_reorder.hpp15
-rw-r--r--src/lib/eolian_cxx/grammar/attribute_replace.hpp15
-rw-r--r--src/lib/eolian_cxx/grammar/attributes.hpp15
-rw-r--r--src/lib/eolian_cxx/grammar/base_class_definition.hpp15
-rw-r--r--src/lib/eolian_cxx/grammar/blacklist.hpp15
-rw-r--r--src/lib/eolian_cxx/grammar/c_type.hpp15
-rw-r--r--src/lib/eolian_cxx/grammar/case.hpp15
-rw-r--r--src/lib/eolian_cxx/grammar/class_declaration.hpp15
-rw-r--r--src/lib/eolian_cxx/grammar/class_definition.hpp15
-rw-r--r--src/lib/eolian_cxx/grammar/class_implementation.hpp15
-rw-r--r--src/lib/eolian_cxx/grammar/container.hpp15
-rw-r--r--src/lib/eolian_cxx/grammar/context.hpp15
-rw-r--r--src/lib/eolian_cxx/grammar/converting_argument.hpp15
-rw-r--r--src/lib/eolian_cxx/grammar/eps.hpp15
-rw-r--r--src/lib/eolian_cxx/grammar/function_declaration.hpp15
-rw-r--r--src/lib/eolian_cxx/grammar/function_definition.hpp15
-rw-r--r--src/lib/eolian_cxx/grammar/generator.hpp15
-rw-r--r--src/lib/eolian_cxx/grammar/header.hpp15
-rw-r--r--src/lib/eolian_cxx/grammar/header_guards.hpp15
-rw-r--r--src/lib/eolian_cxx/grammar/header_include_directive.hpp15
-rw-r--r--src/lib/eolian_cxx/grammar/html_escaped_string.hpp15
-rw-r--r--src/lib/eolian_cxx/grammar/ignore_warning.hpp15
-rw-r--r--src/lib/eolian_cxx/grammar/impl_header.hpp15
-rw-r--r--src/lib/eolian_cxx/grammar/implementation_include_directive.hpp15
-rw-r--r--src/lib/eolian_cxx/grammar/indentation.hpp26
-rw-r--r--src/lib/eolian_cxx/grammar/integral.hpp15
-rw-r--r--src/lib/eolian_cxx/grammar/keyword.hpp15
-rw-r--r--src/lib/eolian_cxx/grammar/klass_def.hpp100
-rw-r--r--src/lib/eolian_cxx/grammar/kleene.hpp15
-rw-r--r--src/lib/eolian_cxx/grammar/list.hpp15
-rw-r--r--src/lib/eolian_cxx/grammar/meta.hpp15
-rw-r--r--src/lib/eolian_cxx/grammar/namespace.hpp15
-rw-r--r--src/lib/eolian_cxx/grammar/parameter.hpp15
-rw-r--r--src/lib/eolian_cxx/grammar/part_declaration.hpp15
-rw-r--r--src/lib/eolian_cxx/grammar/part_implementation.hpp15
-rw-r--r--src/lib/eolian_cxx/grammar/qualifier_def.hpp15
-rw-r--r--src/lib/eolian_cxx/grammar/sequence.hpp15
-rw-r--r--src/lib/eolian_cxx/grammar/string.hpp17
-rw-r--r--src/lib/eolian_cxx/grammar/type.hpp15
-rw-r--r--src/lib/eolian_cxx/grammar/type_function_declaration.hpp15
-rw-r--r--src/lib/eolian_cxx/grammar/type_impl.hpp15
-rw-r--r--src/lib/eolian_cxx/grammar/type_traits.hpp17
-rw-r--r--src/lib/eolian_cxx/grammar/types_definition.hpp15
-rw-r--r--src/lib/escape/Escape.h83
-rw-r--r--src/lib/escape/escape_libgen.c90
-rw-r--r--src/lib/escape/escape_libgen.h33
-rw-r--r--src/lib/escape/escape_mman.c67
-rw-r--r--src/lib/escape/escape_unistd.c184
-rw-r--r--src/lib/escape/escape_unistd.h108
-rw-r--r--src/lib/escape/sys/mman.h180
-rw-r--r--src/lib/evas/Efl_Canvas.h18
-rw-r--r--src/lib/evas/Evas.h3
-rw-r--r--src/lib/evas/Evas_Common.h31
-rw-r--r--src/lib/evas/Evas_Eo.h36
-rw-r--r--src/lib/evas/Evas_Internal.h170
-rw-r--r--src/lib/evas/canvas/efl_canvas_animation.c51
-rw-r--r--src/lib/evas/canvas/efl_canvas_animation.eo91
-rw-r--r--src/lib/evas/canvas/efl_canvas_animation_alpha.eo15
-rw-r--r--src/lib/evas/canvas/efl_canvas_animation_group.c20
-rw-r--r--src/lib/evas/canvas/efl_canvas_animation_group.eo24
-rw-r--r--src/lib/evas/canvas/efl_canvas_animation_group_parallel.c14
-rw-r--r--src/lib/evas/canvas/efl_canvas_animation_group_parallel.eo9
-rw-r--r--src/lib/evas/canvas/efl_canvas_animation_group_sequential.c14
-rw-r--r--src/lib/evas/canvas/efl_canvas_animation_group_sequential.eo10
-rw-r--r--src/lib/evas/canvas/efl_canvas_animation_player.c444
-rw-r--r--src/lib/evas/canvas/efl_canvas_animation_player.eo62
-rw-r--r--src/lib/evas/canvas/efl_canvas_animation_player_private.h53
-rw-r--r--src/lib/evas/canvas/efl_canvas_animation_private.h4
-rw-r--r--src/lib/evas/canvas/efl_canvas_animation_rotate.c44
-rw-r--r--src/lib/evas/canvas/efl_canvas_animation_rotate.eo44
-rw-r--r--src/lib/evas/canvas/efl_canvas_animation_rotate_private.h9
-rw-r--r--src/lib/evas/canvas/efl_canvas_animation_scale.c134
-rw-r--r--src/lib/evas/canvas/efl_canvas_animation_scale.eo49
-rw-r--r--src/lib/evas/canvas/efl_canvas_animation_scale_private.h18
-rw-r--r--src/lib/evas/canvas/efl_canvas_animation_translate.c75
-rw-r--r--src/lib/evas/canvas/efl_canvas_animation_translate.eo32
-rw-r--r--src/lib/evas/canvas/efl_canvas_animation_translate_private.h10
-rw-r--r--src/lib/evas/canvas/efl_canvas_animation_types.eot9
-rw-r--r--src/lib/evas/canvas/efl_canvas_image.c22
-rw-r--r--src/lib/evas/canvas/efl_canvas_image.eo1
-rw-r--r--src/lib/evas/canvas/efl_canvas_object.eo6
-rw-r--r--src/lib/evas/canvas/efl_canvas_object_animation.c214
-rw-r--r--src/lib/evas/canvas/efl_canvas_object_animation.eo60
-rw-r--r--src/lib/evas/canvas/efl_canvas_pointer.eo (renamed from src/lib/efl/interfaces/efl_canvas_pointer.eo)0
-rw-r--r--src/lib/evas/canvas/efl_canvas_scene.eo (renamed from src/lib/efl/interfaces/efl_canvas_scene.eo)0
-rw-r--r--src/lib/evas/canvas/efl_canvas_text.eo551
-rw-r--r--src/lib/evas/canvas/efl_canvas_text_eo.legacy.c18
-rw-r--r--src/lib/evas/canvas/efl_canvas_text_eo.legacy.h2
-rw-r--r--src/lib/evas/canvas/efl_canvas_text_internal.h315
-rw-r--r--src/lib/evas/canvas/efl_canvas_vg_container.c20
-rw-r--r--src/lib/evas/canvas/efl_canvas_vg_gradient_linear.c4
-rw-r--r--src/lib/evas/canvas/efl_canvas_vg_gradient_radial.c4
-rw-r--r--src/lib/evas/canvas/efl_canvas_vg_node.c2
-rw-r--r--src/lib/evas/canvas/efl_canvas_vg_object.c60
-rw-r--r--src/lib/evas/canvas/efl_canvas_vg_object.eo1
-rw-r--r--src/lib/evas/canvas/efl_input_device.c (renamed from src/lib/efl/interfaces/efl_input_device.c)108
-rw-r--r--src/lib/evas/canvas/efl_input_device.eo (renamed from src/lib/efl/interfaces/efl_input_device.eo)0
-rw-r--r--src/lib/evas/canvas/efl_input_event.c4
-rw-r--r--src/lib/evas/canvas/efl_input_focus.c5
-rw-r--r--src/lib/evas/canvas/efl_input_hold.c3
-rw-r--r--src/lib/evas/canvas/efl_input_key.c3
-rw-r--r--src/lib/evas/canvas/efl_input_pointer.c3
-rw-r--r--src/lib/evas/canvas/efl_input_types.eot (renamed from src/lib/efl/interfaces/efl_input_types.eot)0
-rw-r--r--src/lib/evas/canvas/efl_text_attribute_factory.c133
-rw-r--r--src/lib/evas/canvas/efl_text_attribute_factory.eo37
-rw-r--r--src/lib/evas/canvas/efl_text_cursor.c478
-rw-r--r--src/lib/evas/canvas/efl_text_cursor.eo235
-rw-r--r--src/lib/evas/canvas/evas_callbacks.c19
-rw-r--r--src/lib/evas/canvas/evas_device.c100
-rw-r--r--src/lib/evas/canvas/evas_events.c11
-rw-r--r--src/lib/evas/canvas/evas_events_legacy.c3
-rw-r--r--src/lib/evas/canvas/evas_focus.c2
-rw-r--r--src/lib/evas/canvas/evas_font_dir.c49
-rw-r--r--src/lib/evas/canvas/evas_image_private.h5
-rw-r--r--src/lib/evas/canvas/evas_key_grab.c3
-rw-r--r--src/lib/evas/canvas/evas_main.c6
-rw-r--r--src/lib/evas/canvas/evas_object_main.c106
-rw-r--r--src/lib/evas/canvas/evas_object_text.c82
-rw-r--r--src/lib/evas/canvas/evas_object_textblock.c2021
-rw-r--r--src/lib/evas/canvas/evas_object_textgrid.c46
-rw-r--r--src/lib/evas/canvas/evas_text_eo.c6
-rw-r--r--src/lib/evas/canvas/evas_textblock_legacy.h2
-rw-r--r--src/lib/evas/canvas/evas_textgrid_eo.c16
-rw-r--r--src/lib/evas/canvas/evas_textgrid_eo.h2
-rw-r--r--src/lib/evas/canvas/evas_textgrid_eo.legacy.h2
-rw-r--r--src/lib/evas/canvas/evas_vg_private.h7
-rw-r--r--src/lib/evas/canvas/meson.build17
-rw-r--r--src/lib/evas/common/evas_common_generic_cache.c2
-rw-r--r--src/lib/evas/common/evas_font.h56
-rw-r--r--src/lib/evas/common/evas_font_load.c6
-rw-r--r--src/lib/evas/common/evas_font_main.c296
-rw-r--r--src/lib/evas/common/evas_font_query.c54
-rw-r--r--src/lib/evas/common/evas_map_image.c8
-rw-r--r--src/lib/evas/common/evas_text_utils.c6
-rw-r--r--src/lib/evas/file/evas_module.c25
-rw-r--r--src/lib/evas/filters/evas_filter.c22
-rw-r--r--src/lib/evas/filters/evas_filter_parser.c39
-rw-r--r--src/lib/evas/gesture/efl_canvas_gesture_manager.c9
-rw-r--r--src/lib/evas/gesture/efl_canvas_gesture_manager.eo2
-rw-r--r--src/lib/evas/gesture/efl_canvas_gesture_private.h2
-rw-r--r--src/lib/evas/gesture/efl_canvas_gesture_touch.c9
-rw-r--r--src/lib/evas/gesture/efl_canvas_gesture_touch.eo5
-rw-r--r--src/lib/evas/gesture/efl_canvas_gesture_zoom.eo2
-rw-r--r--src/lib/evas/include/evas_common_private.h9
-rw-r--r--src/lib/evas/include/evas_filter.h12
-rw-r--r--src/lib/evas/include/evas_private.h22
-rw-r--r--src/lib/evas/meson.build166
-rw-r--r--src/lib/evas/software_generic/filters/meson.build1
-rw-r--r--src/lib/evas/vg/evas_vg_cache.c177
-rw-r--r--src/lib/evas_goal/empty.c0
-rw-r--r--src/lib/evas_goal/meson.build179
-rw-r--r--src/modules/ecore_evas/engines/wayland/ecore_evas_wayland_common.c119
-rw-r--r--src/modules/ecore_evas/engines/wayland/ecore_evas_wayland_shm.c6
-rw-r--r--src/modules/ecore_imf/meson.build5
-rw-r--r--src/modules/ecore_wl2/engines/dmabuf/ecore_wl2_surface_module_dmabuf.c1
-rw-r--r--src/modules/eina/mp/chained_pool/eina_chained_mempool.c74
-rw-r--r--src/modules/eina/mp/one_big/eina_one_big.c3
-rw-r--r--src/modules/eina/mp/pass_through/eina_pass_through.c1
-rw-r--r--src/modules/emotion/gstreamer/emotion_alloc.c90
-rw-r--r--src/modules/emotion/gstreamer/emotion_convert.c251
-rw-r--r--src/modules/emotion/gstreamer/emotion_fakeeos.c70
-rw-r--r--src/modules/emotion/gstreamer/emotion_gstreamer.c2018
-rw-r--r--src/modules/emotion/gstreamer/emotion_gstreamer.h352
-rw-r--r--src/modules/emotion/gstreamer/emotion_sink.c1461
-rw-r--r--src/modules/emotion/gstreamer/meson.build18
-rw-r--r--src/modules/emotion/meson.build1
-rw-r--r--src/modules/evas/engines/gl_common/evas_gl_common.h4
-rw-r--r--src/modules/evas/engines/gl_common/evas_gl_context.c93
-rw-r--r--src/modules/evas/engines/gl_common/evas_gl_shader.c7
-rw-r--r--src/modules/evas/engines/gl_common/shader/evas_gl_shaders.x7
-rw-r--r--src/modules/evas/engines/gl_common/shader/fragment.glsl8
-rw-r--r--src/modules/evas/engines/gl_drm/evas_outbuf.c2
-rw-r--r--src/modules/evas/engines/gl_generic/evas_engine.c5
-rw-r--r--src/modules/evas/engines/gl_generic/filters/gl_engine_filter.h1
-rw-r--r--src/modules/evas/engines/gl_generic/filters/gl_filter_inverse_color.c53
-rw-r--r--src/modules/evas/engines/gl_generic/meson.build1
-rw-r--r--src/modules/evas/engines/software_generic/evas_engine.c6
-rw-r--r--src/modules/evas/engines/software_generic/filters/evas_engine_filter.h1
-rw-r--r--src/modules/evas/engines/software_generic/filters/evas_filter_inverse_color.c57
-rw-r--r--src/modules/evas/engines/wayland_common/Evas_Engine_Wayland.h8
-rw-r--r--src/modules/evas/engines/wayland_egl/evas_wl_main.c2
-rw-r--r--src/modules/evas/image_loaders/meson.build23
-rw-r--r--src/modules/evas/image_savers/meson.build23
-rw-r--r--src/modules/evas/meson.build4
-rw-r--r--src/modules/evas/model_loaders/meson.build17
-rw-r--r--src/modules/evas/model_savers/meson.build17
-rw-r--r--src/modules/evas/vg_loaders/json/evas_vg_load_json.c30
-rw-r--r--src/modules/evas/vg_loaders/meson.build27
-rw-r--r--src/modules/evas/vg_savers/eet/evas_vg_save_eet.c2
-rw-r--r--src/modules/evas/vg_savers/meson.build18
-rw-r--r--src/scripts/pyolian/eolian.py57
-rwxr-xr-xsrc/scripts/pyolian/test_eolian.py13
-rw-r--r--src/static_libs/buildsystem/buildsystem_meson.c4
-rw-r--r--src/static_libs/vg_common/vg_common_json.c61
-rw-r--r--src/static_libs/vg_common/vg_common_svg.c24
-rw-r--r--src/tests/ecore/ecore_suite.c3
-rw-r--r--src/tests/ecore/ecore_test_ecore.c7
-rw-r--r--src/tests/ecore/ecore_test_ecore_file.c47
-rw-r--r--src/tests/ecore/ecore_test_timer.c130
-rw-r--r--src/tests/ecore/efl_app_test_loop_timer.c184
-rw-r--r--src/tests/ecore_audio_cxx/cxx_compile_test.cc15
-rw-r--r--src/tests/ecore_cxx/cxx_compile_test.cc15
-rw-r--r--src/tests/ecore_cxx/ecore_cxx_suite.cc15
-rw-r--r--src/tests/ecore_cxx/ecore_cxx_test_safe_call.cc15
-rw-r--r--src/tests/ecore_wl2/ecore_wl2_suite.c1
-rw-r--r--src/tests/ecore_wl2/ecore_wl2_suite.h1
-rw-r--r--src/tests/ecore_wl2/ecore_wl2_test_display.c14
-rw-r--r--src/tests/ecore_wl2/ecore_wl2_test_surface.c56
-rw-r--r--src/tests/ecore_wl2/ecore_wl2_test_window.c322
-rw-r--r--src/tests/ecore_wl2/meson.build3
-rw-r--r--src/tests/edje/edje_test_text.c9
-rw-r--r--src/tests/edje_cxx/cxx_compile_test.cc15
-rw-r--r--src/tests/eet_cxx/eet_cxx_suite.cc15
-rw-r--r--src/tests/eet_cxx/eet_cxx_test_descriptors.cc15
-rw-r--r--src/tests/efl/efl_test_composite_model.c126
-rw-r--r--src/tests/efl/efl_test_container_model.c1
-rw-r--r--src/tests/efl_mono/BasicDirection.cs16
-rw-r--r--src/tests/efl_mono/Eina.cs398
-rw-r--r--src/tests/efl_mono/EinaTestData.cs64
-rw-r--r--src/tests/efl_mono/Eldbus.cs17
-rw-r--r--src/tests/efl_mono/Eo.cs99
-rw-r--r--src/tests/efl_mono/EoConstruction.cs15
-rw-r--r--src/tests/efl_mono/EoPromises.cs23
-rw-r--r--src/tests/efl_mono/Errors.cs28
-rw-r--r--src/tests/efl_mono/Events.cs37
-rw-r--r--src/tests/efl_mono/FunctionPointerMarshalling.cs18
-rw-r--r--src/tests/efl_mono/FunctionPointers.cs22
-rw-r--r--src/tests/efl_mono/Hash.cs3
-rw-r--r--src/tests/efl_mono/Inheritance.cs31
-rw-r--r--src/tests/efl_mono/Main.cs35
-rw-r--r--src/tests/efl_mono/Model.cs15
-rw-r--r--src/tests/efl_mono/Parts.cs37
-rw-r--r--src/tests/efl_mono/Promises.cs39
-rw-r--r--src/tests/efl_mono/Strbuf.cs21
-rw-r--r--src/tests/efl_mono/Strings.cs46
-rw-r--r--src/tests/efl_mono/StructHelpers.cs15
-rw-r--r--src/tests/efl_mono/Structs.cs68
-rw-r--r--src/tests/efl_mono/TestUtils.cs15
-rw-r--r--src/tests/efl_mono/Value.cs115
-rw-r--r--src/tests/efl_mono/ValueEolian.cs34
-rw-r--r--src/tests/efl_mono/dummy_child.c15
-rw-r--r--src/tests/efl_mono/dummy_constructible_object.c15
-rw-r--r--src/tests/efl_mono/dummy_event_manager.c15
-rw-r--r--src/tests/efl_mono/dummy_inherit_helper.c15
-rw-r--r--src/tests/efl_mono/dummy_interfaces.c15
-rw-r--r--src/tests/efl_mono/dummy_numberwrapper.c15
-rw-r--r--src/tests/efl_mono/dummy_part_holder.c15
-rw-r--r--src/tests/efl_mono/dummy_test_object.c27
-rw-r--r--src/tests/efl_mono/efl_sharp_test_suite.csproj.in36
-rw-r--r--src/tests/efl_mono/eolian_mono_suite.cc61
-rw-r--r--src/tests/efl_mono/libefl_mono_native_test.h15
-rw-r--r--src/tests/efl_mono/meson.build157
-rw-r--r--src/tests/eina/eina_test_log.c4
-rw-r--r--src/tests/eina/eina_test_matrix.c14
-rw-r--r--src/tests/eina/eina_test_slstr.c2
-rw-r--r--src/tests/eina_cxx/eina_cxx_suite.cc15
-rw-r--r--src/tests/eina_cxx/eina_cxx_test_accessor.cc15
-rw-r--r--src/tests/eina_cxx/eina_cxx_test_error.cc15
-rw-r--r--src/tests/eina_cxx/eina_cxx_test_inarray.cc15
-rw-r--r--src/tests/eina_cxx/eina_cxx_test_inlist.cc15
-rw-r--r--src/tests/eina_cxx/eina_cxx_test_iterator.cc15
-rw-r--r--src/tests/eina_cxx/eina_cxx_test_log.cc15
-rw-r--r--src/tests/eina_cxx/eina_cxx_test_optional.cc15
-rw-r--r--src/tests/eina_cxx/eina_cxx_test_ptrarray.cc15
-rw-r--r--src/tests/eina_cxx/eina_cxx_test_ptrlist.cc15
-rw-r--r--src/tests/eina_cxx/eina_cxx_test_stringshare.cc15
-rw-r--r--src/tests/eina_cxx/eina_cxx_test_thread.cc15
-rw-r--r--src/tests/eina_cxx/eina_cxx_test_value.cc15
-rw-r--r--src/tests/eldbus_cxx/eldbus_cxx_suite.cc15
-rw-r--r--src/tests/eldbus_cxx/eldbus_cxx_test_eldbus_client.cc15
-rw-r--r--src/tests/eldbus_cxx/eldbus_cxx_test_eldbus_connect.cc15
-rw-r--r--src/tests/elementary/efl_ui_suite.c2
-rw-r--r--src/tests/elementary/efl_ui_suite.h2
-rw-r--r--src/tests/elementary/efl_ui_test_config.c1
-rw-r--r--src/tests/elementary/efl_ui_test_layout.c36
-rw-r--r--src/tests/elementary/efl_ui_test_relative_container.c (renamed from src/tests/elementary/efl_ui_test_relative_layout.c)58
-rw-r--r--src/tests/elementary/efl_ui_test_select_model.c4
-rw-r--r--src/tests/elementary/efl_ui_test_spotlight.c111
-rw-r--r--src/tests/elementary/elm_cxx_suite.cc15
-rw-r--r--src/tests/elementary/elm_test_check.c68
-rw-r--r--src/tests/elementary/elm_test_genlist.c194
-rw-r--r--src/tests/elementary/elm_test_layout.c62
-rw-r--r--src/tests/elementary/meson.build2
-rw-r--r--src/tests/elementary/spec/efl_test_basics.c73
-rw-r--r--src/tests/elementary/spec/efl_test_multi_selectable.c84
-rw-r--r--src/tests/elementary/spec/efl_test_pack.c2
-rw-r--r--src/tests/elementary/spec/efl_test_pack_linear.c142
-rw-r--r--src/tests/elementary/spec/efl_ui_spec_suite.c52
-rw-r--r--src/tests/elementary/spec/efl_ui_spec_suite.h2
-rwxr-xr-xsrc/tests/elementary/spec/generator.py2
-rw-r--r--src/tests/elementary/spec/meson.build3
-rw-r--r--src/tests/elementary/suite_helpers.c97
-rw-r--r--src/tests/elementary/suite_helpers.h10
-rw-r--r--src/tests/elementary_cxx/cxx_compile_test.cc15
-rw-r--r--src/tests/elementary_cxx/cxx_dummy_compile_test.cc15
-rw-r--r--src/tests/eo_cxx/eo_cxx_suite.cc15
-rw-r--r--src/tests/eolian/data/function_as_argument_ref.h2
-rw-r--r--src/tests/eolian/data/struct_ref.h2
-rw-r--r--src/tests/eolian/data/typedef_ref.h2
-rw-r--r--src/tests/eolian_cxx/complex_cxx.cc15
-rw-r--r--src/tests/eolian_cxx/eolian_cxx_suite.cc15
-rw-r--r--src/tests/eolian_cxx/eolian_cxx_test_address_of.cc15
-rw-r--r--src/tests/eolian_cxx/eolian_cxx_test_binding.cc141
-rw-r--r--src/tests/eolian_cxx/eolian_cxx_test_cyclic.cc15
-rw-r--r--src/tests/eolian_cxx/eolian_cxx_test_documentation.cc15
-rw-r--r--src/tests/eolian_cxx/eolian_cxx_test_generate.cc15
-rw-r--r--src/tests/eolian_cxx/eolian_cxx_test_inheritance.cc15
-rw-r--r--src/tests/eolian_cxx/eolian_cxx_test_parse.cc15
-rw-r--r--src/tests/eolian_cxx/eolian_cxx_test_wrapper.cc15
-rw-r--r--src/tests/eolian_cxx/name_name_cxx.cc15
-rw-r--r--src/tests/eolian_cxx/property_holder.eo42
-rw-r--r--src/tests/eolian_js/test_object.eo2
-rw-r--r--src/tests/evas/efl_canvas_animation.c91
-rw-r--r--src/tests/evas/evas_suite.c1
-rw-r--r--src/tests/evas/evas_suite.h1
-rw-r--r--src/tests/evas/evas_test_mesh.c124
-rw-r--r--src/tests/evas/evas_test_object.c158
-rw-r--r--src/tests/evas/evas_test_textblock.c424
-rw-r--r--src/tests/evas/fonts/NotoColorEmoji.ttfbin7297112 -> 0 bytes
-rw-r--r--src/tests/evas/fonts/NotoEmoji-Regular.ttfbin418804 -> 0 bytes
-rw-r--r--src/tests/evas/meson.build1
-rw-r--r--src/tests/evas_cxx/cxx_compile_test.cc15
812 files changed, 21290 insertions, 15542 deletions
diff --git a/src/bin/ecore_evas/ecore_evas_convert.c b/src/bin/ecore_evas/ecore_evas_convert.c
index 4ec1cab..8b4f19a 100644
--- a/src/bin/ecore_evas/ecore_evas_convert.c
+++ b/src/bin/ecore_evas/ecore_evas_convert.c
@@ -8,7 +8,7 @@
8#include <Ecore_Getopt.h> 8#include <Ecore_Getopt.h>
9#include <Ecore_Evas.h> 9#include <Ecore_Evas.h>
10 10
11#if defined(_WIN32) || defined(EXOTIC_NO_SIGNAL) 11#if defined(_WIN32)
12# define NO_SIGNAL 12# define NO_SIGNAL
13#else 13#else
14# include <signal.h> 14# include <signal.h>
diff --git a/src/bin/edje/edje_player.c b/src/bin/edje/edje_player.c
index d3ae0c9..cacfdf2 100644
--- a/src/bin/edje/edje_player.c
+++ b/src/bin/edje/edje_player.c
@@ -842,7 +842,7 @@ _edje_circul(void *data, Evas_Object *obj EINA_UNUSED, void *event_info)
842 char *group = data; 842 char *group = data;
843 843
844 part_name = eina_list_data_get(eina_list_last(parts)); 844 part_name = eina_list_data_get(eina_list_last(parts));
845 strncat(buf, part_name, sizeof(buf) - 1); 845 strncpy(buf, part_name, sizeof(buf) - 1);
846 part_name[sizeof(buf) - 1] = 0; 846 part_name[sizeof(buf) - 1] = 0;
847 EINA_LIST_FOREACH(parts, l, part_name) 847 EINA_LIST_FOREACH(parts, l, part_name)
848 { 848 {
diff --git a/src/bin/edje/meson.build b/src/bin/edje/meson.build
index f33193d..0fff2cd 100644
--- a/src/bin/edje/meson.build
+++ b/src/bin/edje/meson.build
@@ -42,7 +42,7 @@ else
42 env = find_program('env', native: true) 42 env = find_program('env', native: true)
43 edje_cc_exe = [env, 'EFL_RUN_IN_TREE=1', edje_cc.full_path()] 43 edje_cc_exe = [env, 'EFL_RUN_IN_TREE=1', edje_cc.full_path()]
44 endif 44 endif
45 edje_depends = [edje_cc, epp, evas_engine_buffer_mod] 45 edje_depends = [edje_cc, epp, evas_engine_buffer_mod, embryo_cc]
46endif 46endif
47 47
48edje_decc_src = [ 48edje_decc_src = [
diff --git a/src/bin/efl_mono_msbuild_gen/main.cc b/src/bin/efl_mono_msbuild_gen/main.cc
index bf3d4db..d7ab599 100644
--- a/src/bin/efl_mono_msbuild_gen/main.cc
+++ b/src/bin/efl_mono_msbuild_gen/main.cc
@@ -1,3 +1,18 @@
1/*
2 * Copyright 2019 by its authors. See AUTHORS.
3 *
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
7 *
8 * http://www.apache.org/licenses/LICENSE-2.0
9 *
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
15 */
1 16
2#include <iostream> 17#include <iostream>
3#include <fstream> 18#include <fstream>
diff --git a/src/bin/efreet/efreet_desktop_cache_create.c b/src/bin/efreet/efreet_desktop_cache_create.c
index ec7553d..8988168 100644
--- a/src/bin/efreet/efreet_desktop_cache_create.c
+++ b/src/bin/efreet/efreet_desktop_cache_create.c
@@ -70,13 +70,22 @@ cache_add(Eet_File *ef, const char *path, const char *file_id, int priority EINA
70 *changed = 1; 70 *changed = 1;
71 INF(" NEW"); 71 INF(" NEW");
72 } 72 }
73 else if (ecore_file_mod_time(desk->orig_path) != desk->load_time) 73 else
74 { 74 {
75 efreet_desktop_free(desk); 75 struct stat st;
76 *changed = 1; 76 if (!stat(desk->orig_path, &st))
77 desk = efreet_desktop_uncached_new(path); 77 {
78 if (desk) INF(" CHANGED"); 78 time_t modtime = st.st_mtime;
79 else INF(" NO UNCACHED"); 79 if (modtime < st.st_ctime) modtime = st.st_ctime;
80 if (modtime != desk->load_time)
81 {
82 efreet_desktop_free(desk);
83 *changed = 1;
84 desk = efreet_desktop_uncached_new(path);
85 if (desk) INF(" CHANGED");
86 else INF(" NO UNCACHED");
87 }
88 }
80 } 89 }
81 if (!desk) return 1; 90 if (!desk) return 1;
82 if (file_id && old_file_ids && !eina_hash_find(old_file_ids->hash, file_id)) 91 if (file_id && old_file_ids && !eina_hash_find(old_file_ids->hash, file_id))
diff --git a/src/bin/elementary/meson.build b/src/bin/elementary/meson.build
index 502573c..342e184 100644
--- a/src/bin/elementary/meson.build
+++ b/src/bin/elementary/meson.build
@@ -155,7 +155,7 @@ elementary_test_src = [
155 'test_win_indicator.c', 155 'test_win_indicator.c',
156 'test_gesture_framework.c', 156 'test_gesture_framework.c',
157 'test_ui_tab_pager.c', 157 'test_ui_tab_pager.c',
158 'test_ui_relative_layout.c', 158 'test_ui_relative_container.c',
159 'test_ui_collection.c', 159 'test_ui_collection.c',
160 'test_ui_collection_view.c', 160 'test_ui_collection_view.c',
161 'test_ui_items.c', 161 'test_ui_items.c',
diff --git a/src/bin/elementary/test.c b/src/bin/elementary/test.c
index bcdb484..1d91bf5 100644
--- a/src/bin/elementary/test.c
+++ b/src/bin/elementary/test.c
@@ -243,7 +243,6 @@ void test_label_wrap(void *data, Evas_Object *obj, void *event_info);
243void test_label_ellipsis(void *data, Evas_Object *obj, void *event_info); 243void test_label_ellipsis(void *data, Evas_Object *obj, void *event_info);
244void test_label_colors(void *data, Evas_Object *obj, void *event_info); 244void test_label_colors(void *data, Evas_Object *obj, void *event_info);
245void test_label_emoji(void *data, Evas_Object *obj, void *event_info); 245void test_label_emoji(void *data, Evas_Object *obj, void *event_info);
246void test_label_variation_sequence(void *data, Evas_Object *obj, void *event_info);
247void test_conformant(void *data, Evas_Object *obj, void *event_info); 246void test_conformant(void *data, Evas_Object *obj, void *event_info);
248void test_conformant2(void *data, Evas_Object *obj, void *event_info); 247void test_conformant2(void *data, Evas_Object *obj, void *event_info);
249void test_conformant_indicator(void *data, Evas_Object *obj, void *event_info); 248void test_conformant_indicator(void *data, Evas_Object *obj, void *event_info);
@@ -367,7 +366,6 @@ void test_code_diff_inline(void *data, Evas_Object *obj, void *event_info);
367void test_efl_ui_text(void *data, Evas_Object *obj, void *event_info); 366void test_efl_ui_text(void *data, Evas_Object *obj, void *event_info);
368void test_efl_ui_text_inputfield(void *data, Evas_Object *obj, void *event_info); 367void test_efl_ui_text_inputfield(void *data, Evas_Object *obj, void *event_info);
369void test_efl_ui_text_label(void *data, Evas_Object *obj, void *event_info); 368void test_efl_ui_text_label(void *data, Evas_Object *obj, void *event_info);
370void test_ui_text_item_factory(void *data, Evas_Object *obj, void *event_info);
371void test_evas_mask(void *data, Edje_Object *obj, void *event_info); 369void test_evas_mask(void *data, Edje_Object *obj, void *event_info);
372void test_gfx_filters(void *data, Evas_Object *obj, void *event_info); 370void test_gfx_filters(void *data, Evas_Object *obj, void *event_info);
373void test_evas_snapshot(void *data, Evas_Object *obj, void *event_info); 371void test_evas_snapshot(void *data, Evas_Object *obj, void *event_info);
@@ -398,7 +396,7 @@ void test_ui_spotlight_stack(void *data, Evas_Object *obj, void *event_info);
398void test_ui_spotlight_plain(void *data, Evas_Object *obj, void *event_info); 396void test_ui_spotlight_plain(void *data, Evas_Object *obj, void *event_info);
399void test_ui_spotlight_scroll(void *data, Evas_Object *obj, void *event_info); 397void test_ui_spotlight_scroll(void *data, Evas_Object *obj, void *event_info);
400 398
401void test_ui_relative_layout(void *data, Evas_Object *obj, void *event_info); 399void test_ui_relative_container(void *data, Evas_Object *obj, void *event_info);
402void test_efl_ui_radio(void *data, Evas_Object *obj, void *event_info); 400void test_efl_ui_radio(void *data, Evas_Object *obj, void *event_info);
403void test_efl_ui_collection_list(void *data, Evas_Object *obj, void *event_info); 401void test_efl_ui_collection_list(void *data, Evas_Object *obj, void *event_info);
404void test_efl_ui_collection_grid(void *data, Evas_Object *obj, void *event_info); 402void test_efl_ui_collection_grid(void *data, Evas_Object *obj, void *event_info);
@@ -909,7 +907,7 @@ add_tests:
909 ADD_TEST_EO(NULL, "Containers", "Efl.Ui.Table", test_ui_table); 907 ADD_TEST_EO(NULL, "Containers", "Efl.Ui.Table", test_ui_table);
910 ADD_TEST_EO(NULL, "Containers", "Efl.Ui.Table (Linear API)", test_ui_table_linear); 908 ADD_TEST_EO(NULL, "Containers", "Efl.Ui.Table (Linear API)", test_ui_table_linear);
911 ADD_TEST_EO(NULL, "Containers", "Efl.Ui.Table_Static", test_ui_table_static); 909 ADD_TEST_EO(NULL, "Containers", "Efl.Ui.Table_Static", test_ui_table_static);
912 ADD_TEST_EO(NULL, "Containers", "Efl.Ui.Relative_Layout", test_ui_relative_layout); 910 ADD_TEST_EO(NULL, "Containers", "Efl.Ui.Relative_Container", test_ui_relative_container);
913 ADD_TEST_EO(NULL, "Containers", "Efl.Ui.Collection List", test_efl_ui_collection_list); 911 ADD_TEST_EO(NULL, "Containers", "Efl.Ui.Collection List", test_efl_ui_collection_list);
914 ADD_TEST_EO(NULL, "Containers", "Efl.Ui.Collection Grid", test_efl_ui_collection_grid); 912 ADD_TEST_EO(NULL, "Containers", "Efl.Ui.Collection Grid", test_efl_ui_collection_grid);
915 ADD_TEST_EO(NULL, "Containers", "Efl.Ui.Collection_View", test_efl_ui_collection_view); 913 ADD_TEST_EO(NULL, "Containers", "Efl.Ui.Collection_View", test_efl_ui_collection_view);
@@ -942,7 +940,6 @@ add_tests:
942 ADD_TEST_EO(NULL, "Entries", "Efl.Ui.Text", test_efl_ui_text); 940 ADD_TEST_EO(NULL, "Entries", "Efl.Ui.Text", test_efl_ui_text);
943 ADD_TEST_EO(NULL, "Entries", "Efl.Ui.Text Input Field", test_efl_ui_text_inputfield); 941 ADD_TEST_EO(NULL, "Entries", "Efl.Ui.Text Input Field", test_efl_ui_text_inputfield);
944 ADD_TEST_EO(NULL, "Entries", "Efl.Ui.Text Label", test_efl_ui_text_label); 942 ADD_TEST_EO(NULL, "Entries", "Efl.Ui.Text Label", test_efl_ui_text_label);
945 ADD_TEST_EO(NULL, "Entries", "Ui.Text Item Factory", test_ui_text_item_factory);
946 ADD_TEST_EO(NULL, "Entries", "Efl.Ui.Tags", test_ui_tags); 943 ADD_TEST_EO(NULL, "Entries", "Efl.Ui.Tags", test_ui_tags);
947 944
948 //------------------------------// 945 //------------------------------//
@@ -1211,7 +1208,6 @@ add_tests:
1211 ADD_TEST(NULL, "Text", "Label Ellipsis", test_label_ellipsis); 1208 ADD_TEST(NULL, "Text", "Label Ellipsis", test_label_ellipsis);
1212 ADD_TEST(NULL, "Text", "Label Colors", test_label_colors); 1209 ADD_TEST(NULL, "Text", "Label Colors", test_label_colors);
1213 ADD_TEST(NULL, "Text", "Label Emoji", test_label_emoji); 1210 ADD_TEST(NULL, "Text", "Label Emoji", test_label_emoji);
1214 ADD_TEST(NULL, "Text", "Label Variation Sequnece", test_label_variation_sequence);
1215 ADD_TEST_EO(NULL, "Text", "Efl.Ui.Textpath", test_ui_textpath); 1211 ADD_TEST_EO(NULL, "Text", "Efl.Ui.Textpath", test_ui_textpath);
1216 1212
1217 //------------------------------// 1213 //------------------------------//
diff --git a/src/bin/elementary/test_efl_anim_alpha.c b/src/bin/elementary/test_efl_anim_alpha.c
index d75733f..b364319 100644
--- a/src/bin/elementary/test_efl_anim_alpha.c
+++ b/src/bin/elementary/test_efl_anim_alpha.c
@@ -7,31 +7,38 @@ typedef struct _App_Data
7{ 7{
8 Efl_Canvas_Animation *show_anim; 8 Efl_Canvas_Animation *show_anim;
9 Efl_Canvas_Animation *hide_anim; 9 Efl_Canvas_Animation *hide_anim;
10 Efl_Canvas_Animation_Player *anim_obj; 10 Elm_Button *button;
11 11
12 Eina_Bool is_btn_visible; 12 Eina_Bool is_btn_visible;
13} App_Data; 13} App_Data;
14 14
15static void 15static void
16_anim_started_cb(void *data EINA_UNUSED, const Efl_Event *event EINA_UNUSED) 16_anim_changed_cb(void *data EINA_UNUSED, const Efl_Event *event EINA_UNUSED)
17{ 17{
18 printf("Animation has been started!\n"); 18 Eo *anim = event->info;
19}
20 19
21static void 20 if (anim)
22_anim_ended_cb(void *data EINA_UNUSED, const Efl_Event *event EINA_UNUSED) 21 {
23{ 22 printf("Animation has been started!\n");
24 printf("Animation has been ended!\n"); 23 }
24 else
25 {
26 printf("Animation has been ended!\n");
27 }
25} 28}
26 29
27static void 30static void
28_anim_running_cb(void *data EINA_UNUSED, const Efl_Event *event) 31_anim_running_cb(void *data EINA_UNUSED, const Efl_Event *event)
29{ 32{
30 Efl_Canvas_Animation_Player_Event_Running *event_running = event->info; 33 double *progress = event->info;
31 double progress = event_running->progress; 34 printf("Animation is running! Current progress(%lf)\n", *progress);
32 printf("Animation is running! Current progress(%lf)\n", progress);
33} 35}
34 36
37EFL_CALLBACKS_ARRAY_DEFINE(animation_stats_cb,
38 {EFL_CANVAS_OBJECT_ANIMATION_EVENT_ANIMATION_CHANGED, _anim_changed_cb },
39 {EFL_CANVAS_OBJECT_ANIMATION_EVENT_ANIMATION_PROGRESS_UPDATED, _anim_running_cb },
40)
41
35static void 42static void
36_btn_clicked_cb(void *data, Evas_Object *obj, void *event_info EINA_UNUSED) 43_btn_clicked_cb(void *data, Evas_Object *obj, void *event_info EINA_UNUSED)
37{ 44{
@@ -42,18 +49,17 @@ _btn_clicked_cb(void *data, Evas_Object *obj, void *event_info EINA_UNUSED)
42 if (ad->is_btn_visible) 49 if (ad->is_btn_visible)
43 { 50 {
44 //Create Animation Object from Animation 51 //Create Animation Object from Animation
45 efl_animation_player_animation_set(ad->anim_obj, ad->show_anim); 52 efl_canvas_object_animation_start(ad->button, ad->show_anim, 1.0, 0.0);
46 efl_text_set(obj, "Start Alpha Animation from 1.0 to 0.0"); 53 efl_text_set(obj, "Start Alpha Animation from 1.0 to 0.0");
47 } 54 }
48 else 55 else
49 { 56 {
50 //Create Animation Object from Animation 57 //Create Animation Object from Animation
51 efl_animation_player_animation_set(ad->anim_obj, ad->hide_anim); 58 efl_canvas_object_animation_start(ad->button, ad->hide_anim, 1.0, 0.0);
52 efl_text_set(obj, "Start Alpha Animation from 0.0 to 1.0"); 59 efl_text_set(obj, "Start Alpha Animation from 0.0 to 1.0");
53 } 60 }
54 61
55 //Let Animation Object start animation 62 //Let Animation Object start animation
56 efl_player_playing_set(ad->anim_obj, EINA_TRUE);
57} 63}
58 64
59static void 65static void
@@ -81,6 +87,7 @@ test_efl_anim_alpha(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void *
81 evas_object_resize(btn, 200, 200); 87 evas_object_resize(btn, 200, 200);
82 evas_object_move(btn, 100, 50); 88 evas_object_move(btn, 100, 50);
83 evas_object_show(btn); 89 evas_object_show(btn);
90 efl_event_callback_array_add(btn, animation_stats_cb(), ad);
84 91
85 //Show Animation 92 //Show Animation
86 Efl_Canvas_Animation *show_anim = efl_add(EFL_CANVAS_ANIMATION_ALPHA_CLASS, win); 93 Efl_Canvas_Animation *show_anim = efl_add(EFL_CANVAS_ANIMATION_ALPHA_CLASS, win);
@@ -97,16 +104,8 @@ test_efl_anim_alpha(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void *
97 //Initialize App Data 104 //Initialize App Data
98 ad->show_anim = show_anim; 105 ad->show_anim = show_anim;
99 ad->hide_anim = hide_anim; 106 ad->hide_anim = hide_anim;
100 ad->anim_obj = efl_add(EFL_CANVAS_ANIMATION_PLAYER_CLASS, win,
101 efl_animation_player_target_set(efl_added, btn));
102
103 //Register callback called when animation starts
104 efl_event_callback_add(ad->anim_obj, EFL_ANIMATION_PLAYER_EVENT_STARTED, _anim_started_cb, NULL);
105 //Register callback called when animation ends
106 efl_event_callback_add(ad->anim_obj, EFL_ANIMATION_PLAYER_EVENT_ENDED, _anim_ended_cb, ad);
107 //Register callback called while animation is executed
108 efl_event_callback_add(ad->anim_obj, EFL_ANIMATION_PLAYER_EVENT_RUNNING, _anim_running_cb, NULL);
109 ad->is_btn_visible = EINA_TRUE; 107 ad->is_btn_visible = EINA_TRUE;
108 ad->button = btn;
110 109
111 //Button to start animation 110 //Button to start animation
112 Evas_Object *btn2 = elm_button_add(win); 111 Evas_Object *btn2 = elm_button_add(win);
diff --git a/src/bin/elementary/test_efl_anim_group_parallel.c b/src/bin/elementary/test_efl_anim_group_parallel.c
index 6283e22..728c54e 100644
--- a/src/bin/elementary/test_efl_anim_group_parallel.c
+++ b/src/bin/elementary/test_efl_anim_group_parallel.c
@@ -5,34 +5,39 @@
5 5
6typedef struct _App_Data 6typedef struct _App_Data
7{ 7{
8 Efl_Canvas_Animation *parallel_show_anim;
9 Efl_Canvas_Animation *parallel_hide_anim; 8 Efl_Canvas_Animation *parallel_hide_anim;
10 Efl_Canvas_Animation_Player *anim_obj; 9 Elm_Button *button;
11 10
12 Eina_Bool is_btn_visible; 11 Eina_Bool is_btn_visible;
13} App_Data; 12} App_Data;
14 13
15static void 14static void
16_anim_started_cb(void *data EINA_UNUSED, const Efl_Event *event EINA_UNUSED) 15_anim_changed_cb(void *data EINA_UNUSED, const Efl_Event *event EINA_UNUSED)
17{ 16{
18 printf("Animation has been started!\n"); 17 Eo *anim = event->info;
19}
20
21static void
22_anim_ended_cb(void *data EINA_UNUSED, const Efl_Event *event EINA_UNUSED)
23{
24 printf("Animation has been ended!\n");
25 18
19 if (anim)
20 {
21 printf("Animation has been started!\n");
22 }
23 else
24 {
25 printf("Animation has been ended!\n");
26 }
26} 27}
27 28
28static void 29static void
29_anim_running_cb(void *data EINA_UNUSED, const Efl_Event *event) 30_anim_running_cb(void *data EINA_UNUSED, const Efl_Event *event)
30{ 31{
31 Efl_Canvas_Animation_Player_Event_Running *event_running = event->info; 32 double *progress = event->info;
32 double progress = event_running->progress; 33 printf("Animation is running! Current progress(%lf)\n", *progress);
33 printf("Animation is running! Current progress(%lf)\n", progress);
34} 34}
35 35
36EFL_CALLBACKS_ARRAY_DEFINE(animation_stats_cb,
37 {EFL_CANVAS_OBJECT_ANIMATION_EVENT_ANIMATION_CHANGED, _anim_changed_cb },
38 {EFL_CANVAS_OBJECT_ANIMATION_EVENT_ANIMATION_PROGRESS_UPDATED, _anim_running_cb },
39)
40
36static void 41static void
37_btn_clicked_cb(void *data, Evas_Object *obj, void *event_info EINA_UNUSED) 42_btn_clicked_cb(void *data, Evas_Object *obj, void *event_info EINA_UNUSED)
38{ 43{
@@ -43,18 +48,16 @@ _btn_clicked_cb(void *data, Evas_Object *obj, void *event_info EINA_UNUSED)
43 if (ad->is_btn_visible) 48 if (ad->is_btn_visible)
44 { 49 {
45 //Create Animation Object from Animation 50 //Create Animation Object from Animation
46 efl_animation_player_animation_set(ad->anim_obj, ad->parallel_show_anim); 51 efl_canvas_object_animation_start(ad->button, ad->parallel_hide_anim, -1.0, 0.0);
47 efl_text_set(obj, "Start Parallel Group Animation to hide button"); 52 efl_text_set(obj, "Start Parallel Group Animation to hide button");
48 } 53 }
49 else 54 else
50 { 55 {
51 //Create Animation Object from Animation 56 //Create Animation Object from Animation
52 efl_animation_player_animation_set(ad->anim_obj, ad->parallel_hide_anim); 57 efl_canvas_object_animation_start(ad->button, ad->parallel_hide_anim, 1.0, 0.0);
53 efl_text_set(obj, "Start Parallel Group Animation to show button"); 58 efl_text_set(obj, "Start Parallel Group Animation to show button");
54 } 59 }
55 60
56 //Let Animation Object start animation
57 efl_player_playing_set(ad->anim_obj, EINA_TRUE);
58} 61}
59 62
60static void 63static void
@@ -82,30 +85,7 @@ test_efl_anim_group_parallel(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSE
82 evas_object_resize(btn, 150, 150); 85 evas_object_resize(btn, 150, 150);
83 evas_object_move(btn, 125, 100); 86 evas_object_move(btn, 125, 100);
84 evas_object_show(btn); 87 evas_object_show(btn);
85 88 efl_event_callback_array_add(btn, animation_stats_cb(), ad);
86
87 //Show Animation
88 Efl_Canvas_Animation *show_anim = efl_add(EFL_CANVAS_ANIMATION_ALPHA_CLASS, win);
89 efl_animation_alpha_set(show_anim, 0.0, 1.0);
90
91 //Rotate from 45 to 0 degrees Animation
92 Efl_Canvas_Animation *ccw_45_degrees_anim = efl_add(EFL_CANVAS_ANIMATION_ROTATE_CLASS, win);
93 efl_animation_rotate_set(ccw_45_degrees_anim, 45.0, 0.0, NULL, 0.5, 0.5);
94
95 //Scale Animation to zoom out
96 Efl_Canvas_Animation *scale_half_anim = efl_add(EFL_CANVAS_ANIMATION_SCALE_CLASS, win);
97 efl_animation_scale_set(scale_half_anim, 2.0, 2.0, 1.0, 1.0, NULL, 0.5, 0.5);
98
99 //Show Parallel Group Animation
100 Efl_Canvas_Animation *parallel_show_anim = efl_add(EFL_CANVAS_ANIMATION_GROUP_PARALLEL_CLASS, win);
101 efl_animation_duration_set(parallel_show_anim, 1.0);
102 efl_animation_final_state_keep_set(parallel_show_anim, EINA_TRUE);
103
104 //Add animations to group animation
105 efl_animation_group_animation_add(parallel_show_anim, show_anim);
106 efl_animation_group_animation_add(parallel_show_anim, ccw_45_degrees_anim);
107 efl_animation_group_animation_add(parallel_show_anim, scale_half_anim);
108
109 89
110 //Hide Animation 90 //Hide Animation
111 Efl_Canvas_Animation *hide_anim = efl_add(EFL_CANVAS_ANIMATION_ALPHA_CLASS, win); 91 Efl_Canvas_Animation *hide_anim = efl_add(EFL_CANVAS_ANIMATION_ALPHA_CLASS, win);
@@ -113,11 +93,11 @@ test_efl_anim_group_parallel(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSE
113 93
114 //Rotate from 0 to 45 degrees Animation 94 //Rotate from 0 to 45 degrees Animation
115 Efl_Canvas_Animation *cw_45_degrees_anim = efl_add(EFL_CANVAS_ANIMATION_ROTATE_CLASS, win); 95 Efl_Canvas_Animation *cw_45_degrees_anim = efl_add(EFL_CANVAS_ANIMATION_ROTATE_CLASS, win);
116 efl_animation_rotate_set(cw_45_degrees_anim, 0.0, 45.0, NULL, 0.5, 0.5); 96 efl_animation_rotate_set(cw_45_degrees_anim, 0.0, 45.0, NULL, EINA_VECTOR2(0.5, 0.5));
117 97
118 //Scale Animation to zoom in 98 //Scale Animation to zoom in
119 Efl_Canvas_Animation *scale_double_anim = efl_add(EFL_CANVAS_ANIMATION_SCALE_CLASS, win); 99 Efl_Canvas_Animation *scale_double_anim = efl_add(EFL_CANVAS_ANIMATION_SCALE_CLASS, win);
120 efl_animation_scale_set(scale_double_anim, 1.0, 1.0, 2.0, 2.0, NULL, 0.5, 0.5); 100 efl_animation_scale_set(scale_double_anim, EINA_VECTOR2(1.0, 1.0), EINA_VECTOR2(2.0, 2.0), NULL, EINA_VECTOR2(0.5, 0.5));
121 101
122 //Hide Parallel Group Animation 102 //Hide Parallel Group Animation
123 Efl_Canvas_Animation *parallel_hide_anim = efl_add(EFL_CANVAS_ANIMATION_GROUP_PARALLEL_CLASS, win); 103 Efl_Canvas_Animation *parallel_hide_anim = efl_add(EFL_CANVAS_ANIMATION_GROUP_PARALLEL_CLASS, win);
@@ -131,17 +111,8 @@ test_efl_anim_group_parallel(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSE
131 111
132 112
133 //Initialize App Data 113 //Initialize App Data
134 ad->parallel_show_anim = parallel_show_anim;
135 ad->parallel_hide_anim = parallel_hide_anim; 114 ad->parallel_hide_anim = parallel_hide_anim;
136 ad->anim_obj = efl_add(EFL_CANVAS_ANIMATION_PLAYER_CLASS, win, 115 ad->button = btn;
137 efl_animation_player_target_set(efl_added, btn));
138
139 //Register callback called when animation starts
140 efl_event_callback_add(ad->anim_obj, EFL_ANIMATION_PLAYER_EVENT_STARTED, _anim_started_cb, NULL);
141 //Register callback called when animation ends
142 efl_event_callback_add(ad->anim_obj, EFL_ANIMATION_PLAYER_EVENT_ENDED, _anim_ended_cb, NULL);
143 //Register callback called while animation is executed
144 efl_event_callback_add(ad->anim_obj, EFL_ANIMATION_PLAYER_EVENT_RUNNING, _anim_running_cb, NULL);
145 116
146 ad->is_btn_visible = EINA_TRUE; 117 ad->is_btn_visible = EINA_TRUE;
147 118
diff --git a/src/bin/elementary/test_efl_anim_group_sequential.c b/src/bin/elementary/test_efl_anim_group_sequential.c
index 3488149..60b3a83 100644
--- a/src/bin/elementary/test_efl_anim_group_sequential.c
+++ b/src/bin/elementary/test_efl_anim_group_sequential.c
@@ -5,33 +5,39 @@
5 5
6typedef struct _App_Data 6typedef struct _App_Data
7{ 7{
8 Efl_Canvas_Animation *sequential_show_anim;
9 Efl_Canvas_Animation *sequential_hide_anim; 8 Efl_Canvas_Animation *sequential_hide_anim;
10 Efl_Canvas_Animation_Player *anim_obj; 9 Elm_Button *button;
11 10
12 Eina_Bool is_btn_visible; 11 Eina_Bool is_btn_visible;
13} App_Data; 12} App_Data;
14 13
15static void 14static void
16_anim_started_cb(void *data EINA_UNUSED, const Efl_Event *event EINA_UNUSED) 15_anim_changed_cb(void *data EINA_UNUSED, const Efl_Event *event EINA_UNUSED)
17{ 16{
18 printf("Animation has been started!\n"); 17 Eo *anim = event->info;
19}
20 18
21static void 19 if (anim)
22_anim_ended_cb(void *data EINA_UNUSED, const Efl_Event *event EINA_UNUSED) 20 {
23{ 21 printf("Animation has been started!\n");
24 printf("Animation has been ended!\n"); 22 }
23 else
24 {
25 printf("Animation has been ended!\n");
26 }
25} 27}
26 28
27static void 29static void
28_anim_running_cb(void *data EINA_UNUSED, const Efl_Event *event) 30_anim_running_cb(void *data EINA_UNUSED, const Efl_Event *event)
29{ 31{
30 Efl_Canvas_Animation_Player_Event_Running *event_running = event->info; 32 double *progress = event->info;
31 double progress = event_running->progress; 33 printf("Animation is running! Current progress(%lf)\n", *progress);
32 printf("Animation is running! Current progress(%lf)\n", progress);
33} 34}
34 35
36EFL_CALLBACKS_ARRAY_DEFINE(animation_stats_cb,
37 {EFL_CANVAS_OBJECT_ANIMATION_EVENT_ANIMATION_CHANGED, _anim_changed_cb },
38 {EFL_CANVAS_OBJECT_ANIMATION_EVENT_ANIMATION_PROGRESS_UPDATED, _anim_running_cb },
39)
40
35static void 41static void
36_btn_clicked_cb(void *data, Evas_Object *obj, void *event_info EINA_UNUSED) 42_btn_clicked_cb(void *data, Evas_Object *obj, void *event_info EINA_UNUSED)
37{ 43{
@@ -42,18 +48,15 @@ _btn_clicked_cb(void *data, Evas_Object *obj, void *event_info EINA_UNUSED)
42 if (ad->is_btn_visible) 48 if (ad->is_btn_visible)
43 { 49 {
44 //Create Animation Object from Animation 50 //Create Animation Object from Animation
45 efl_animation_player_animation_set(ad->anim_obj, ad->sequential_show_anim); 51 efl_canvas_object_animation_start(ad->button, ad->sequential_hide_anim, -1.0, 0.0);
46 efl_text_set(obj, "Start Sequential Group Animation to hide button"); 52 efl_text_set(obj, "Start Sequential Group Animation to hide button");
47 } 53 }
48 else 54 else
49 { 55 {
50 //Create Animation Object from Animation 56 //Create Animation Object from Animation
51 efl_animation_player_animation_set(ad->anim_obj, ad->sequential_hide_anim); 57 efl_canvas_object_animation_start(ad->button, ad->sequential_hide_anim, 1.0, 0.0);
52 efl_text_set(obj, "Start Sequential Group Animation to show button"); 58 efl_text_set(obj, "Start Sequential Group Animation to show button");
53 } 59 }
54
55 //Let Animation Object start animation
56 efl_player_playing_set(ad->anim_obj, EINA_TRUE);
57} 60}
58 61
59static void 62static void
@@ -81,16 +84,17 @@ test_efl_anim_group_sequential(void *data EINA_UNUSED, Evas_Object *obj EINA_UNU
81 evas_object_resize(btn, 150, 150); 84 evas_object_resize(btn, 150, 150);
82 evas_object_move(btn, 125, 100); 85 evas_object_move(btn, 125, 100);
83 evas_object_show(btn); 86 evas_object_show(btn);
87 efl_event_callback_array_add(btn, animation_stats_cb(), ad);
84 88
85 89
86 /* Animations to hide button */ 90 /* Animations to hide button */
87 //Rotate from 0 to 45 degrees Animation 91 //Rotate from 0 to 45 degrees Animation
88 Efl_Canvas_Animation *cw_45_degrees_anim = efl_add(EFL_CANVAS_ANIMATION_ROTATE_CLASS, win); 92 Efl_Canvas_Animation *cw_45_degrees_anim = efl_add(EFL_CANVAS_ANIMATION_ROTATE_CLASS, win);
89 efl_animation_rotate_set(cw_45_degrees_anim, 0.0, 45.0, NULL, 0.5, 0.5); 93 efl_animation_rotate_set(cw_45_degrees_anim, 0.0, 45.0, NULL, EINA_VECTOR2(0.5, 0.5));
90 94
91 //Scale Animation to zoom in 95 //Scale Animation to zoom in
92 Efl_Canvas_Animation *scale_double_anim = efl_add(EFL_CANVAS_ANIMATION_SCALE_CLASS, win); 96 Efl_Canvas_Animation *scale_double_anim = efl_add(EFL_CANVAS_ANIMATION_SCALE_CLASS, win);
93 efl_animation_scale_set(scale_double_anim, 1.0, 1.0, 2.0, 2.0, NULL, 0.5, 0.5); 97 efl_animation_scale_set(scale_double_anim, EINA_VECTOR2(1.0, 1.0), EINA_VECTOR2(2.0, 2.0), NULL, EINA_VECTOR2(0.5, 0.5));
94 98
95 //Hide Animation 99 //Hide Animation
96 Efl_Canvas_Animation *hide_anim = efl_add(EFL_CANVAS_ANIMATION_ALPHA_CLASS, win); 100 Efl_Canvas_Animation *hide_anim = efl_add(EFL_CANVAS_ANIMATION_ALPHA_CLASS, win);
@@ -106,47 +110,9 @@ test_efl_anim_group_sequential(void *data EINA_UNUSED, Evas_Object *obj EINA_UNU
106 efl_animation_group_animation_add(sequential_hide_anim, scale_double_anim); 110 efl_animation_group_animation_add(sequential_hide_anim, scale_double_anim);
107 efl_animation_group_animation_add(sequential_hide_anim, hide_anim); 111 efl_animation_group_animation_add(sequential_hide_anim, hide_anim);
108 112
109
110 /* Animations to show button */
111 //Show Animation
112 Efl_Canvas_Animation *show_anim = efl_add(EFL_CANVAS_ANIMATION_ALPHA_CLASS, win);
113 efl_animation_alpha_set(show_anim, 0.0, 1.0);
114 efl_animation_duration_set(show_anim, 1.0);
115
116 //Scale Animation to zoom out
117 Efl_Canvas_Animation *scale_half_anim = efl_add(EFL_CANVAS_ANIMATION_SCALE_CLASS, win);
118 efl_animation_scale_set(scale_half_anim, 2.0, 2.0, 1.0, 1.0, NULL, 0.5, 0.5);
119 efl_animation_duration_set(scale_half_anim, 1.0);
120
121 //Rotate from 45 to 0 degrees Animation
122 Efl_Canvas_Animation *ccw_45_degrees_anim = efl_add(EFL_CANVAS_ANIMATION_ROTATE_CLASS, win);
123 efl_animation_rotate_set(ccw_45_degrees_anim, 45.0, 0.0, NULL, 0.5, 0.5);
124 efl_animation_duration_set(ccw_45_degrees_anim, 1.0);
125
126 //Show Sequential Group Animation
127 Efl_Canvas_Animation *sequential_show_anim = efl_add(EFL_CANVAS_ANIMATION_GROUP_SEQUENTIAL_CLASS, win);
128 efl_animation_final_state_keep_set(sequential_show_anim, EINA_TRUE);
129 //efl_animation_duration_set() is called for each animation not to set the same duration
130
131 //Add animations to group animation
132 //First, parallel_hide_anim is added with duration 0 to set the initial state
133 efl_animation_group_animation_add(sequential_show_anim, show_anim);
134 efl_animation_group_animation_add(sequential_show_anim, scale_half_anim);
135 efl_animation_group_animation_add(sequential_show_anim, ccw_45_degrees_anim);
136
137
138 //Initialize App Data 113 //Initialize App Data
139 ad->sequential_show_anim = sequential_show_anim;
140 ad->sequential_hide_anim = sequential_hide_anim; 114 ad->sequential_hide_anim = sequential_hide_anim;
141 ad->anim_obj = efl_add(EFL_CANVAS_ANIMATION_PLAYER_CLASS, win, 115 ad->button = btn;
142 efl_animation_player_target_set(efl_added, btn));
143
144 //Register callback called when animation starts
145 efl_event_callback_add(ad->anim_obj, EFL_ANIMATION_PLAYER_EVENT_STARTED, _anim_started_cb, NULL);
146 //Register callback called when animation ends
147 efl_event_callback_add(ad->anim_obj, EFL_ANIMATION_PLAYER_EVENT_ENDED, _anim_ended_cb, NULL);
148 //Register callback called while animation is executed
149 efl_event_callback_add(ad->anim_obj, EFL_ANIMATION_PLAYER_EVENT_RUNNING, _anim_running_cb, NULL);
150 116
151 ad->is_btn_visible = EINA_TRUE; 117 ad->is_btn_visible = EINA_TRUE;
152 118
diff --git a/src/bin/elementary/test_efl_anim_interpolator.c b/src/bin/elementary/test_efl_anim_interpolator.c
index be177d7..c5a828f 100644
--- a/src/bin/elementary/test_efl_anim_interpolator.c
+++ b/src/bin/elementary/test_efl_anim_interpolator.c
@@ -13,7 +13,7 @@
13typedef struct _App_Data 13typedef struct _App_Data
14{ 14{
15 Efl_Canvas_Animation *anim[INTERP_NUM]; 15 Efl_Canvas_Animation *anim[INTERP_NUM];
16 Efl_Canvas_Animation_Player *anim_obj[INTERP_NUM]; 16 Efl_Ui_Button *btns[INTERP_NUM];
17 17
18 Evas_Object *btn[INTERP_NUM]; 18 Evas_Object *btn[INTERP_NUM];
19 Evas_Object *start_all_btn; 19 Evas_Object *start_all_btn;
@@ -33,78 +33,84 @@ _interpolator_create(int index, Evas_Object *win)
33 else if (index == 1) 33 else if (index == 1)
34 { 34 {
35 interp = efl_add(EFL_SINUSOIDAL_INTERPOLATOR_CLASS, win); 35 interp = efl_add(EFL_SINUSOIDAL_INTERPOLATOR_CLASS, win);
36 efl_sinusoidal_interpolator_factor_set(interp, 1.0); 36 efl_sinusoidal_interpolator_slope_set(interp, 1.0);
37 } 37 }
38 else if (index == 2) 38 else if (index == 2)
39 { 39 {
40 interp = efl_add(EFL_DECELERATE_INTERPOLATOR_CLASS, win); 40 interp = efl_add(EFL_DECELERATE_INTERPOLATOR_CLASS, win);
41 efl_decelerate_interpolator_factor_set(interp, 1.0); 41 efl_decelerate_interpolator_slope_set(interp, 1.0);
42 } 42 }
43 else if (index == 3) 43 else if (index == 3)
44 { 44 {
45 interp = efl_add(EFL_ACCELERATE_INTERPOLATOR_CLASS, win); 45 interp = efl_add(EFL_ACCELERATE_INTERPOLATOR_CLASS, win);
46 efl_accelerate_interpolator_factor_set(interp, 1.0); 46 efl_accelerate_interpolator_slope_set(interp, 1.0);
47 } 47 }
48 else if (index == 4) 48 else if (index == 4)
49 { 49 {
50 interp = efl_add(EFL_DIVISOR_INTERPOLATOR_CLASS, win); 50 interp = efl_add(EFL_DIVISOR_INTERPOLATOR_CLASS, win);
51 efl_divisor_interpolator_factors_set(interp, 1.0, 1.0); 51 efl_divisor_interpolator_divisor_set(interp, 1.0);
52 efl_divisor_interpolator_power_set(interp, 1);
52 } 53 }
53 else if (index == 5) 54 else if (index == 5)
54 { 55 {
55 interp = efl_add(EFL_BOUNCE_INTERPOLATOR_CLASS, win); 56 interp = efl_add(EFL_BOUNCE_INTERPOLATOR_CLASS, win);
56 efl_bounce_interpolator_factors_set(interp, 1.0, 1.0); 57 efl_bounce_interpolator_rigidness_set(interp, 1.0);
58 efl_bounce_interpolator_bounces_set(interp, 1);
57 } 59 }
58 else if (index == 6) 60 else if (index == 6)
59 { 61 {
60 interp = efl_add(EFL_SPRING_INTERPOLATOR_CLASS, win); 62 interp = efl_add(EFL_SPRING_INTERPOLATOR_CLASS, win);
61 efl_spring_interpolator_factors_set(interp, 1.0, 1.0); 63 efl_spring_interpolator_decay_set(interp, 1.0);
64 efl_spring_interpolator_oscillations_set(interp, 1);
62 } 65 }
63 66
64 return interp; 67 return interp;
65} 68}
66 69
67static void 70static void
68_anim_started_cb(void *data, const Efl_Event *event EINA_UNUSED) 71_anim_changed_cb(void *data EINA_UNUSED, const Efl_Event *event EINA_UNUSED)
69{ 72{
73 Eo *anim = event->info;
70 App_Data *ad = data; 74 App_Data *ad = data;
71 75
72 printf("Animation has been started!\n"); 76 if (anim)
73 77 {
74 ad->running_anim_cnt++; 78 printf("Animation has been started!\n");
75} 79 ad->running_anim_cnt++;
76 80 }
77static void 81 else
78_anim_ended_cb(void *data, const Efl_Event *event) 82 {
79{ 83 int i;
80 App_Data *ad = data;
81 int i;
82
83 printf("Animation has been ended!\n");
84 84
85 ad->running_anim_cnt--; 85 printf("Animation has been ended!\n");
86 ad->running_anim_cnt--;
86 87
87 for (i = 0; i < INTERP_NUM; i++) 88 for (i = 0; i < INTERP_NUM; i++)
88 {
89 if (ad->anim_obj[i] == event->object)
90 { 89 {
91 elm_object_disabled_set(ad->btn[i], EINA_FALSE); 90 if (ad->btns[i] == event->object)
92 break; 91 {
92 elm_object_disabled_set(ad->btn[i], EINA_FALSE);
93 break;
94 }
93 } 95 }
94 }
95 96
96 if (ad->running_anim_cnt == 0) 97 if (ad->running_anim_cnt == 0)
97 elm_object_disabled_set(ad->start_all_btn, EINA_FALSE); 98 elm_object_disabled_set(ad->start_all_btn, EINA_FALSE);
99 }
98} 100}
99 101
100static void 102static void
101_anim_running_cb(void *data EINA_UNUSED, const Efl_Event *event) 103_anim_running_cb(void *data EINA_UNUSED, const Efl_Event *event)
102{ 104{
103 Efl_Canvas_Animation_Player_Event_Running *event_running = event->info; 105 double *progress = event->info;
104 double progress = event_running->progress; 106 printf("Animation is running! Current progress(%lf)\n", *progress);
105 printf("Animation is running! Current progress(%lf)\n", progress);
106} 107}
107 108
109EFL_CALLBACKS_ARRAY_DEFINE(animation_stats_cb,
110 {EFL_CANVAS_OBJECT_ANIMATION_EVENT_ANIMATION_CHANGED, _anim_changed_cb },
111 {EFL_CANVAS_OBJECT_ANIMATION_EVENT_ANIMATION_PROGRESS_UPDATED, _anim_running_cb },
112)
113
108static void 114static void
109_anim_start(void *data, Evas_Object *obj, void *event_info EINA_UNUSED) 115_anim_start(void *data, Evas_Object *obj, void *event_info EINA_UNUSED)
110{ 116{
@@ -113,7 +119,7 @@ _anim_start(void *data, Evas_Object *obj, void *event_info EINA_UNUSED)
113 int index = (uintptr_t)evas_object_data_get(obj, "index"); 119 int index = (uintptr_t)evas_object_data_get(obj, "index");
114 120
115 //Let Animation Object start animation 121 //Let Animation Object start animation
116 efl_player_playing_set(ad->anim_obj[index], EINA_TRUE); 122 efl_canvas_object_animation_start(ad->btns[index], ad->anim[index], 1.0, 0.0);
117 123
118 elm_object_disabled_set(obj, EINA_TRUE); 124 elm_object_disabled_set(obj, EINA_TRUE);
119 elm_object_disabled_set(ad->start_all_btn, EINA_TRUE); 125 elm_object_disabled_set(ad->start_all_btn, EINA_TRUE);
@@ -128,7 +134,7 @@ _anim_start_all(void *data, Evas_Object *obj, void *event_info EINA_UNUSED)
128 for (i = 0; i < INTERP_NUM; i++) 134 for (i = 0; i < INTERP_NUM; i++)
129 { 135 {
130 //Let Animation Object start animation 136 //Let Animation Object start animation
131 efl_player_playing_set(ad->anim_obj[i], EINA_TRUE); 137 efl_canvas_object_animation_start(ad->btns[i], ad->anim[i], 1.0, 0.0);
132 elm_object_disabled_set(ad->btn[i], EINA_TRUE); 138 elm_object_disabled_set(ad->btn[i], EINA_TRUE);
133 } 139 }
134 140
@@ -144,9 +150,7 @@ _win_del_cb(void *data, Evas_Object *obj EINA_UNUSED, void *event_info EINA_UNUS
144 for (i = 0; i < INTERP_NUM; i++) 150 for (i = 0; i < INTERP_NUM; i++)
145 { 151 {
146 //Unregister callback called when window deletes 152 //Unregister callback called when window deletes
147 efl_event_callback_del(ad->anim_obj[i], 153 efl_event_callback_array_del(ad->btns[i], animation_stats_cb(), ad);
148 EFL_ANIMATION_PLAYER_EVENT_ENDED,
149 _anim_ended_cb, ad);
150 } 154 }
151 155
152 free(ad); 156 free(ad);
@@ -199,7 +203,7 @@ test_efl_anim_interpolator(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED,
199 203
200 Efl_Canvas_Animation *anim = 204 Efl_Canvas_Animation *anim =
201 efl_add(EFL_CANVAS_ANIMATION_TRANSLATE_CLASS, win); 205 efl_add(EFL_CANVAS_ANIMATION_TRANSLATE_CLASS, win);
202 efl_animation_translate_set(anim, 0, 0, (WIN_W - BTN_W), 0); 206 efl_animation_translate_set(anim, EINA_POSITION2D(0, 0), EINA_POSITION2D((WIN_W - BTN_W), 0));
203 efl_animation_duration_set(anim, 2.0); 207 efl_animation_duration_set(anim, 2.0);
204 efl_animation_final_state_keep_set(anim, EINA_FALSE); 208 efl_animation_final_state_keep_set(anim, EINA_FALSE);
205 209
@@ -208,23 +212,8 @@ test_efl_anim_interpolator(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED,
208 ad->anim[i] = anim; 212 ad->anim[i] = anim;
209 213
210 //Create Animation Object from Animation 214 //Create Animation Object from Animation
211 Efl_Canvas_Animation_Player *anim_obj = 215 ad->btns[i] = btn;
212 efl_add(EFL_CANVAS_ANIMATION_PLAYER_CLASS, win, 216 efl_event_callback_array_add(btn, animation_stats_cb(), ad);
213 efl_animation_player_animation_set(efl_added, anim),
214 efl_animation_player_target_set(efl_added, btn));
215 ad->anim_obj[i] = anim_obj;
216
217 //Register callback called when animation starts
218 efl_event_callback_add(anim_obj, EFL_ANIMATION_PLAYER_EVENT_STARTED,
219 _anim_started_cb, ad);
220
221 //Register callback called when animation ends
222 efl_event_callback_add(anim_obj, EFL_ANIMATION_PLAYER_EVENT_ENDED,
223 _anim_ended_cb, ad);
224
225 //Register callback called while animation is executed
226 efl_event_callback_add(anim_obj, EFL_ANIMATION_PLAYER_EVENT_RUNNING,
227 _anim_running_cb, NULL);
228 } 217 }
229 218
230 ad->running_anim_cnt = 0; 219 ad->running_anim_cnt = 0;
diff --git a/src/bin/elementary/test_efl_anim_pause.c b/src/bin/elementary/test_efl_anim_pause.c
index 3730db3..92d4b3e 100644
--- a/src/bin/elementary/test_efl_anim_pause.c
+++ b/src/bin/elementary/test_efl_anim_pause.c
@@ -7,7 +7,7 @@ typedef struct _App_Data
7{ 7{
8 Efl_Canvas_Animation *show_anim; 8 Efl_Canvas_Animation *show_anim;
9 Efl_Canvas_Animation *hide_anim; 9 Efl_Canvas_Animation *hide_anim;
10 Efl_Canvas_Animation_Player *anim_obj; 10 Elm_Button *button;
11 11
12 Evas_Object *pause_btn; 12 Evas_Object *pause_btn;
13 13
@@ -16,60 +16,54 @@ typedef struct _App_Data
16} App_Data; 16} App_Data;
17 17
18static void 18static void
19_anim_started_cb(void *data, const Efl_Event *event EINA_UNUSED) 19_anim_changed_cb(void *data, const Efl_Event *event EINA_UNUSED)
20{ 20{
21 Eo *anim = event->info;
21 App_Data *ad = data; 22 App_Data *ad = data;
22 23
23 printf("Animation has been started!\n"); 24 if (anim)
24 25 {
25 elm_object_disabled_set(ad->pause_btn, EINA_FALSE); 26 printf("Animation has been started!\n");
26} 27 elm_object_disabled_set(ad->pause_btn, EINA_FALSE);
27 28 }
28static void 29 else
29_anim_ended_cb(void *data, const Efl_Event *event EINA_UNUSED) 30 {
30{ 31 printf("Animation has been ended!\n");
31 App_Data *ad = data; 32 elm_object_disabled_set(ad->pause_btn, EINA_TRUE);
32 33 }
33 printf("Animation has been ended!\n");
34
35 elm_object_disabled_set(ad->pause_btn, EINA_TRUE);
36} 34}
37 35
38static void 36static void
39_anim_running_cb(void *data EINA_UNUSED, const Efl_Event *event) 37_anim_running_cb(void *data EINA_UNUSED, const Efl_Event *event)
40{ 38{
41 Efl_Canvas_Animation_Player_Event_Running *event_running = event->info; 39 double *progress = event->info;
42 double progress = event_running->progress; 40 printf("Animation is running! Current progress(%lf)\n", *progress);
43 printf("Animation is running! Current progress(%lf)\n", progress);
44} 41}
45 42
43EFL_CALLBACKS_ARRAY_DEFINE(animation_stats_cb,
44 {EFL_CANVAS_OBJECT_ANIMATION_EVENT_ANIMATION_CHANGED, _anim_changed_cb },
45 {EFL_CANVAS_OBJECT_ANIMATION_EVENT_ANIMATION_PROGRESS_UPDATED, _anim_running_cb },
46)
47
46static void 48static void
47_start_btn_clicked_cb(void *data, Evas_Object *obj, void *event_info EINA_UNUSED) 49_start_btn_clicked_cb(void *data, Evas_Object *obj, void *event_info EINA_UNUSED)
48{ 50{
49 App_Data *ad = data; 51 App_Data *ad = data;
50 52
51 if (ad->anim_obj)
52 {
53 ad->is_anim_paused = EINA_FALSE;
54 elm_object_text_set(ad->pause_btn, "Pause Animation");
55 }
56
57 ad->is_btn_visible = !(ad->is_btn_visible); 53 ad->is_btn_visible = !(ad->is_btn_visible);
58 54
59 if (ad->is_btn_visible) 55 if (ad->is_btn_visible)
60 { 56 {
61 //Create Animation Object from Animation 57 //Create Animation Object from Animation
62 efl_animation_player_animation_set(ad->anim_obj, ad->show_anim); 58 efl_canvas_object_animation_start(ad->button, ad->show_anim, 1.0, 0.0);
63 efl_text_set(obj, "Start Alpha Animation from 1.0 to 0.0"); 59 efl_text_set(obj, "Start Alpha Animation from 1.0 to 0.0");
64 } 60 }
65 else 61 else
66 { 62 {
67 //Create Animation Object from Animation 63 //Create Animation Object from Animation
68 efl_animation_player_animation_set(ad->anim_obj, ad->hide_anim); 64 efl_canvas_object_animation_start(ad->button, ad->hide_anim, 1.0, 0.0);
69 efl_text_set(obj, "Start Alpha Animation from 0.0 to 1.0"); 65 efl_text_set(obj, "Start Alpha Animation from 0.0 to 1.0");
70 } 66 }
71 //Let Animation Object start animation
72 efl_player_playing_set(ad->anim_obj, EINA_TRUE);
73} 67}
74 68
75static void 69static void
@@ -82,13 +76,13 @@ _pause_btn_clicked_cb(void *data, Evas_Object *obj, void *event_info EINA_UNUSED
82 if (ad->is_anim_paused) 76 if (ad->is_anim_paused)
83 { 77 {
84 //Pause animation 78 //Pause animation
85 efl_player_paused_set(ad->anim_obj, EINA_TRUE); 79 efl_canvas_object_animation_pause_set(ad->button, EINA_TRUE);
86 elm_object_text_set(obj, "Resume Animation"); 80 elm_object_text_set(obj, "Resume Animation");
87 } 81 }
88 else 82 else
89 { 83 {
90 //Resume animation 84 //Resume animation
91 efl_player_paused_set(ad->anim_obj, EINA_FALSE); 85 efl_canvas_object_animation_pause_set(ad->button, EINA_FALSE);
92 elm_object_text_set(obj, "Pause Animation"); 86 elm_object_text_set(obj, "Pause Animation");
93 } 87 }
94} 88}
@@ -118,6 +112,7 @@ test_efl_anim_pause(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void *
118 evas_object_resize(btn, 200, 200); 112 evas_object_resize(btn, 200, 200);
119 evas_object_move(btn, 100, 50); 113 evas_object_move(btn, 100, 50);
120 evas_object_show(btn); 114 evas_object_show(btn);
115 efl_event_callback_array_add(btn, animation_stats_cb(), ad);
121 116
122 //Show Animation 117 //Show Animation
123 Efl_Canvas_Animation *show_anim = efl_add(EFL_CANVAS_ANIMATION_ALPHA_CLASS, win); 118 Efl_Canvas_Animation *show_anim = efl_add(EFL_CANVAS_ANIMATION_ALPHA_CLASS, win);
@@ -152,25 +147,14 @@ test_efl_anim_pause(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void *
152 //Pause button becomes enabled only if the animation is started 147 //Pause button becomes enabled only if the animation is started
153 elm_object_disabled_set(pause_btn, EINA_TRUE); 148 elm_object_disabled_set(pause_btn, EINA_TRUE);
154 149
155
156 //Initialize App Data 150 //Initialize App Data
157 ad->show_anim = show_anim; 151 ad->show_anim = show_anim;
158 ad->hide_anim = hide_anim; 152 ad->hide_anim = hide_anim;
159 ad->anim_obj = efl_add(EFL_CANVAS_ANIMATION_PLAYER_CLASS, win, 153 ad->button = btn;
160 efl_animation_player_target_set(efl_added, btn));
161
162 //Register callback called when animation starts
163 efl_event_callback_add(ad->anim_obj, EFL_ANIMATION_PLAYER_EVENT_STARTED, _anim_started_cb, ad);
164 //Register callback called when animation ends
165 efl_event_callback_add(ad->anim_obj, EFL_ANIMATION_PLAYER_EVENT_ENDED, _anim_ended_cb, ad);
166 //Register callback called while animation is executed
167 efl_event_callback_add(ad->anim_obj, EFL_ANIMATION_PLAYER_EVENT_RUNNING, _anim_running_cb, NULL);
168
169 ad->pause_btn = pause_btn; 154 ad->pause_btn = pause_btn;
170 ad->is_btn_visible = EINA_TRUE; 155 ad->is_btn_visible = EINA_TRUE;
171 ad->is_anim_paused = EINA_FALSE; 156 ad->is_anim_paused = EINA_FALSE;
172 157
173
174 evas_object_resize(win, 400, 450); 158 evas_object_resize(win, 400, 450);
175 evas_object_show(win); 159 evas_object_show(win);
176} 160}
diff --git a/src/bin/elementary/test_efl_anim_repeat.c b/src/bin/elementary/test_efl_anim_repeat.c
index 55bf98c..b3dddcd 100644
--- a/src/bin/elementary/test_efl_anim_repeat.c
+++ b/src/bin/elementary/test_efl_anim_repeat.c
@@ -7,10 +7,10 @@ typedef struct _App_Data
7{ 7{
8 Efl_Canvas_Animation *show_anim; 8 Efl_Canvas_Animation *show_anim;
9 Efl_Canvas_Animation *hide_anim; 9 Efl_Canvas_Animation *hide_anim;
10 Efl_Canvas_Animation_Player *anim_obj; 10 Elm_Button *button;
11 11
12 Evas_Object *start_btn; 12 Evas_Object *start_btn;
13 Evas_Object *repeat_count_spin; 13 Evas_Object *play_count_spin;
14 Evas_Object *repeat_mode_spin; 14 Evas_Object *repeat_mode_spin;
15 15
16 Eina_Bool is_btn_visible; 16 Eina_Bool is_btn_visible;
@@ -27,46 +27,50 @@ _anim_repeat_mode_get(Evas_Object *spinner)
27 return EFL_CANVAS_ANIMATION_REPEAT_MODE_REVERSE; 27 return EFL_CANVAS_ANIMATION_REPEAT_MODE_REVERSE;
28} 28}
29 29
30static void
31_anim_started_cb(void *data EINA_UNUSED, const Efl_Event *event EINA_UNUSED)
32{
33 printf("Animation has been started!\n");
34}
35 30
36static void 31static void
37_anim_ended_cb(void *data, const Efl_Event *event EINA_UNUSED) 32_anim_changed_cb(void *data, const Efl_Event *event EINA_UNUSED)
38{ 33{
34 Eo *anim = event->info;
39 App_Data *ad = data; 35 App_Data *ad = data;
40 36
41 printf("Animation has been ended!\n"); 37 if (anim)
42 38 {
43 Efl_Canvas_Animation_Repeat_Mode repeat_mode = _anim_repeat_mode_get(ad->repeat_mode_spin); 39 printf("Animation has been started!\n");
44 if (repeat_mode == EFL_CANVAS_ANIMATION_REPEAT_MODE_REVERSE) 40 }
41 else
45 { 42 {
46 int repeat_count = elm_spinner_value_get(ad->repeat_count_spin); 43 printf("Animation has been ended!\n");
47 if (repeat_count % 2 == 1) 44 Efl_Canvas_Animation_Repeat_Mode repeat_mode = _anim_repeat_mode_get(ad->repeat_mode_spin);
45 if (repeat_mode == EFL_CANVAS_ANIMATION_REPEAT_MODE_REVERSE)
48 { 46 {
49 ad->is_btn_visible = !(ad->is_btn_visible); 47 int play_count = elm_spinner_value_get(ad->play_count_spin);
50 48 if (play_count % 2 == 0)
51 if (ad->is_btn_visible) 49 {
52 elm_object_text_set(ad->start_btn, "Start Alpha Animation from 1.0 to 0.0"); 50 ad->is_btn_visible = !(ad->is_btn_visible);
53 else 51 if (ad->is_btn_visible)
54 elm_object_text_set(ad->start_btn, "Start Alpha Animation from 0.0 to 1.0"); 52 elm_object_text_set(ad->start_btn, "Start Alpha Animation from 1.0 to 0.0");
53 else
54 elm_object_text_set(ad->start_btn, "Start Alpha Animation from 0.0 to 1.0");
55 }
55 } 56 }
57 elm_object_disabled_set(ad->play_count_spin, EINA_FALSE);
58 elm_object_disabled_set(ad->repeat_mode_spin, EINA_FALSE);
56 } 59 }
57
58 elm_object_disabled_set(ad->repeat_count_spin, EINA_FALSE);
59 elm_object_disabled_set(ad->repeat_mode_spin, EINA_FALSE);
60} 60}
61 61
62static void 62static void
63_anim_running_cb(void *data EINA_UNUSED, const Efl_Event *event) 63_anim_running_cb(void *data EINA_UNUSED, const Efl_Event *event)
64{ 64{
65 Efl_Canvas_Animation_Player_Event_Running *event_running = event->info; 65 double *progress = event->info;
66 double progress = event_running->progress; 66 printf("Animation is running! Current progress(%lf)\n", *progress);
67 printf("Animation is running! Current progress(%lf)\n", progress);
68} 67}
69 68
69EFL_CALLBACKS_ARRAY_DEFINE(animation_stats_cb,
70 {EFL_CANVAS_OBJECT_ANIMATION_EVENT_ANIMATION_CHANGED, _anim_changed_cb },
71 {EFL_CANVAS_OBJECT_ANIMATION_EVENT_ANIMATION_PROGRESS_UPDATED, _anim_running_cb },
72)
73
70static void 74static void
71_start_btn_clicked_cb(void *data, Evas_Object *obj, void *event_info EINA_UNUSED) 75_start_btn_clicked_cb(void *data, Evas_Object *obj, void *event_info EINA_UNUSED)
72{ 76{
@@ -74,39 +78,36 @@ _start_btn_clicked_cb(void *data, Evas_Object *obj, void *event_info EINA_UNUSED
74 78
75 ad->is_btn_visible = !(ad->is_btn_visible); 79 ad->is_btn_visible = !(ad->is_btn_visible);
76 80
77 int repeat_count = elm_spinner_value_get(ad->repeat_count_spin); 81 int play_count = elm_spinner_value_get(ad->play_count_spin);
78 elm_object_disabled_set(ad->repeat_count_spin, EINA_TRUE); 82 elm_object_disabled_set(ad->play_count_spin, EINA_TRUE);
79 83
80 Efl_Canvas_Animation_Repeat_Mode repeat_mode = _anim_repeat_mode_get(ad->repeat_mode_spin); 84 Efl_Canvas_Animation_Repeat_Mode repeat_mode = _anim_repeat_mode_get(ad->repeat_mode_spin);
81 elm_object_disabled_set(ad->repeat_mode_spin, EINA_TRUE); 85 elm_object_disabled_set(ad->repeat_mode_spin, EINA_TRUE);
82 86
83 if (ad->is_btn_visible) 87 if (ad->is_btn_visible)
84 { 88 {
85 //Set animation repeat count 89 //Set animation play count
86 efl_animation_repeat_count_set(ad->show_anim, repeat_count); 90 efl_animation_play_count_set(ad->show_anim, play_count);
87 91
88 //Set animation repeat mode 92 //Set animation repeat mode
89 efl_animation_repeat_mode_set(ad->show_anim, repeat_mode); 93 efl_animation_repeat_mode_set(ad->show_anim, repeat_mode);
90 94
91 //Create Animation Object from Animation 95 //Create Animation Object from Animation
92 efl_animation_player_animation_set(ad->anim_obj, ad->show_anim); 96 efl_canvas_object_animation_start(ad->button, ad->show_anim, 1.0, 0.0);
93 efl_text_set(obj, "Start Alpha Animation from 1.0 to 0.0"); 97 efl_text_set(obj, "Start Alpha Animation from 1.0 to 0.0");
94 } 98 }
95 else 99 else
96 { 100 {
97 //Set animation repeat count 101 //Set animation repeat count
98 efl_animation_repeat_count_set(ad->hide_anim, repeat_count); 102 efl_animation_play_count_set(ad->hide_anim, play_count);
99 103
100 //Set animation repeat mode 104 //Set animation repeat mode
101 efl_animation_repeat_mode_set(ad->hide_anim, repeat_mode); 105 efl_animation_repeat_mode_set(ad->hide_anim, repeat_mode);
102 106
103 //Create Animation Object from Animation 107 //Create Animation Object from Animation
104 efl_animation_player_animation_set(ad->anim_obj, ad->hide_anim); 108 efl_canvas_object_animation_start(ad->button, ad->hide_anim, 1.0, 0.0);
105 efl_text_set(obj, "Start Alpha Animation from 0.0 to 1.0"); 109 efl_text_set(obj, "Start Alpha Animation from 0.0 to 1.0");
106 } 110 }
107
108 //Let Animation Object start animation
109 efl_player_playing_set(ad->anim_obj, EINA_TRUE);
110} 111}
111 112
112static void 113static void
@@ -133,6 +134,7 @@ test_efl_anim_repeat(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void
133 evas_object_resize(btn, 200, 200); 134 evas_object_resize(btn, 200, 200);
134 evas_object_move(btn, 100, 50); 135 evas_object_move(btn, 100, 50);
135 evas_object_show(btn); 136 evas_object_show(btn);
137 efl_event_callback_array_add(btn, animation_stats_cb(), ad);
136 138
137 //Show Animation 139 //Show Animation
138 Efl_Canvas_Animation *show_anim = efl_add(EFL_CANVAS_ANIMATION_ALPHA_CLASS, win); 140 Efl_Canvas_Animation *show_anim = efl_add(EFL_CANVAS_ANIMATION_ALPHA_CLASS, win);
@@ -156,15 +158,15 @@ test_efl_anim_repeat(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void
156 evas_object_move(start_btn, 100, 300); 158 evas_object_move(start_btn, 100, 300);
157 evas_object_show(start_btn); 159 evas_object_show(start_btn);
158 160
159 //Spinner to set animation repeat count 161 //Spinner to set animation play count
160 Evas_Object *repeat_count_spin = elm_spinner_add(win); 162 Evas_Object *play_count_spin = elm_spinner_add(win);
161 elm_spinner_label_format_set(repeat_count_spin, "Repeat Count: %d"); 163 elm_spinner_label_format_set(play_count_spin, "Play Count (0 is infinite): %d");
162 elm_spinner_editable_set(repeat_count_spin, EINA_FALSE); 164 elm_spinner_editable_set(play_count_spin, EINA_FALSE);
163 elm_spinner_min_max_set(repeat_count_spin, 0, 3); 165 elm_spinner_min_max_set(play_count_spin, 0, 3);
164 elm_spinner_value_set(repeat_count_spin, 0); 166 elm_spinner_value_set(play_count_spin, 1);
165 evas_object_resize(repeat_count_spin, 200, 50); 167 evas_object_resize(play_count_spin, 200, 50);
166 evas_object_move(repeat_count_spin, 100, 350); 168 evas_object_move(play_count_spin, 100, 350);
167 evas_object_show(repeat_count_spin); 169 evas_object_show(play_count_spin);
168 170
169 //Spinner to set animation repeat mode 171 //Spinner to set animation repeat mode
170 Evas_Object *repeat_mode_spin = elm_spinner_add(win); 172 Evas_Object *repeat_mode_spin = elm_spinner_add(win);
@@ -178,24 +180,14 @@ test_efl_anim_repeat(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void
178 evas_object_move(repeat_mode_spin, 100, 400); 180 evas_object_move(repeat_mode_spin, 100, 400);
179 evas_object_show(repeat_mode_spin); 181 evas_object_show(repeat_mode_spin);
180 182
181
182 //Initialize App Data 183 //Initialize App Data
183 ad->show_anim = show_anim; 184 ad->show_anim = show_anim;
184 ad->hide_anim = hide_anim; 185 ad->hide_anim = hide_anim;
185 ad->anim_obj = efl_add(EFL_CANVAS_ANIMATION_PLAYER_CLASS, win,
186 efl_animation_player_target_set(efl_added, btn));
187 //Register callback called when animation starts
188 efl_event_callback_add(ad->anim_obj, EFL_ANIMATION_PLAYER_EVENT_STARTED, _anim_started_cb, NULL);
189 //Register callback called when animation ends
190 efl_event_callback_add(ad->anim_obj, EFL_ANIMATION_PLAYER_EVENT_ENDED, _anim_ended_cb, ad);
191 //Register callback called while animation is executed
192 efl_event_callback_add(ad->anim_obj, EFL_ANIMATION_PLAYER_EVENT_RUNNING, _anim_running_cb, NULL);
193
194 ad->start_btn = start_btn; 186 ad->start_btn = start_btn;
195 ad->repeat_count_spin = repeat_count_spin; 187 ad->play_count_spin = play_count_spin;
196 ad->repeat_mode_spin = repeat_mode_spin; 188 ad->repeat_mode_spin = repeat_mode_spin;
197 ad->is_btn_visible = EINA_TRUE; 189 ad->is_btn_visible = EINA_TRUE;
198 190 ad->button = btn;
199 191
200 evas_object_resize(win, 400, 500); 192 evas_object_resize(win, 400, 500);
201 evas_object_show(win); 193 evas_object_show(win);
diff --git a/src/bin/elementary/test_efl_anim_rotate.c b/src/bin/elementary/test_efl_anim_rotate.c
index 10df8ca..437d015 100644
--- a/src/bin/elementary/test_efl_anim_rotate.c
+++ b/src/bin/elementary/test_efl_anim_rotate.c
@@ -7,31 +7,38 @@ typedef struct _App_Data
7{ 7{
8 Efl_Canvas_Animation *cw_45_degrees_anim; 8 Efl_Canvas_Animation *cw_45_degrees_anim;
9 Efl_Canvas_Animation *ccw_45_degrees_anim; 9 Efl_Canvas_Animation *ccw_45_degrees_anim;
10 Efl_Canvas_Animation_Player *anim_obj; 10 Elm_Button *button;
11 11
12 Eina_Bool is_btn_rotated; 12 Eina_Bool is_btn_rotated;
13} App_Data; 13} App_Data;
14 14
15static void 15static void
16_anim_started_cb(void *data EINA_UNUSED, const Efl_Event *event EINA_UNUSED) 16_anim_changed_cb(void *data EINA_UNUSED, const Efl_Event *event EINA_UNUSED)
17{ 17{
18 printf("Animation has been started!\n"); 18 Eo *anim = event->info;
19}
20 19
21static void 20 if (anim)
22_anim_ended_cb(void *data EINA_UNUSED, const Efl_Event *event EINA_UNUSED) 21 {
23{ 22 printf("Animation has been started!\n");
24 printf("Animation has been ended!\n"); 23 }
24 else
25 {
26 printf("Animation has been ended!\n");
27 }
25} 28}
26 29
27static void 30static void
28_anim_running_cb(void *data EINA_UNUSED, const Efl_Event *event) 31_anim_running_cb(void *data EINA_UNUSED, const Efl_Event *event)
29{ 32{
30 Efl_Canvas_Animation_Player_Event_Running *event_running = event->info; 33 double *progress = event->info;
31 double progress = event_running->progress; 34 printf("Animation is running! Current progress(%lf)\n", *progress);
32 printf("Animation is running! Current progress(%lf)\n", progress);
33} 35}
34 36
37EFL_CALLBACKS_ARRAY_DEFINE(animation_stats_cb,
38 {EFL_CANVAS_OBJECT_ANIMATION_EVENT_ANIMATION_CHANGED, _anim_changed_cb },
39 {EFL_CANVAS_OBJECT_ANIMATION_EVENT_ANIMATION_PROGRESS_UPDATED, _anim_running_cb },
40)
41
35static void 42static void
36_btn_clicked_cb(void *data, Evas_Object *obj, void *event_info EINA_UNUSED) 43_btn_clicked_cb(void *data, Evas_Object *obj, void *event_info EINA_UNUSED)
37{ 44{
@@ -42,18 +49,15 @@ _btn_clicked_cb(void *data, Evas_Object *obj, void *event_info EINA_UNUSED)
42 if (ad->is_btn_rotated) 49 if (ad->is_btn_rotated)
43 { 50 {
44 //Create Animation Object from Animation 51 //Create Animation Object from Animation
45 efl_animation_player_animation_set(ad->anim_obj, ad->cw_45_degrees_anim); 52 efl_canvas_object_animation_start(ad->button, ad->cw_45_degrees_anim, 1.0, 0.0);
46 efl_text_set(obj, "Start Rotate Animation from 45 to 0 degrees"); 53 efl_text_set(obj, "Start Rotate Animation from 45 to 0 degrees");
47 } 54 }
48 else 55 else
49 { 56 {
50 //Create Animation Object from Animation 57 //Create Animation Object from Animation
51 efl_animation_player_animation_set(ad->anim_obj, ad->ccw_45_degrees_anim); 58 efl_canvas_object_animation_start(ad->button, ad->ccw_45_degrees_anim, 1.0, 0.0);
52 efl_text_set(obj, "Start Rotate Animation from 0 to 45 degrees"); 59 efl_text_set(obj, "Start Rotate Animation from 0 to 45 degrees");
53 } 60 }
54
55 //Let Animation Object start animation
56 efl_player_playing_set(ad->anim_obj, EINA_TRUE);
57} 61}
58 62
59static void 63static void
@@ -81,32 +85,24 @@ test_efl_anim_rotate(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void
81 evas_object_resize(btn, 150, 150); 85 evas_object_resize(btn, 150, 150);
82 evas_object_move(btn, 125, 100); 86 evas_object_move(btn, 125, 100);
83 evas_object_show(btn); 87 evas_object_show(btn);
88 efl_event_callback_array_add(btn, animation_stats_cb(), ad);
84 89
85 //Rotate from 0 to 45 degrees Animation 90 //Rotate from 0 to 45 degrees Animation
86 Efl_Canvas_Animation *cw_45_degrees_anim = efl_add(EFL_CANVAS_ANIMATION_ROTATE_CLASS, win); 91 Efl_Canvas_Animation *cw_45_degrees_anim = efl_add(EFL_CANVAS_ANIMATION_ROTATE_CLASS, win);
87 efl_animation_rotate_set(cw_45_degrees_anim, 0.0, 45.0,NULL, 0.5, 0.5); 92 efl_animation_rotate_set(cw_45_degrees_anim, 0.0, 45.0, NULL, EINA_VECTOR2(0.5, 0.5));
88 efl_animation_duration_set(cw_45_degrees_anim, 1.0); 93 efl_animation_duration_set(cw_45_degrees_anim, 1.0);
89 efl_animation_final_state_keep_set(cw_45_degrees_anim, EINA_TRUE); 94 efl_animation_final_state_keep_set(cw_45_degrees_anim, EINA_TRUE);
90 95
91 //Rotate from 45 to 0 degrees Animation 96 //Rotate from 45 to 0 degrees Animation
92 Efl_Canvas_Animation *ccw_45_degrees_anim = efl_add(EFL_CANVAS_ANIMATION_ROTATE_CLASS, win); 97 Efl_Canvas_Animation *ccw_45_degrees_anim = efl_add(EFL_CANVAS_ANIMATION_ROTATE_CLASS, win);
93 efl_animation_rotate_set(ccw_45_degrees_anim, 45.0, 0.0, NULL, 0.5, 0.5); 98 efl_animation_rotate_set(ccw_45_degrees_anim, 45.0, 0.0, NULL, EINA_VECTOR2(0.5, 0.5));
94 efl_animation_duration_set(ccw_45_degrees_anim, 1.0); 99 efl_animation_duration_set(ccw_45_degrees_anim, 1.0);
95 efl_animation_final_state_keep_set(ccw_45_degrees_anim, EINA_TRUE); 100 efl_animation_final_state_keep_set(ccw_45_degrees_anim, EINA_TRUE);
96 101
97 //Initialize App Data 102 //Initialize App Data
98 ad->cw_45_degrees_anim = cw_45_degrees_anim; 103 ad->cw_45_degrees_anim = cw_45_degrees_anim;
99 ad->ccw_45_degrees_anim = ccw_45_degrees_anim; 104 ad->ccw_45_degrees_anim = ccw_45_degrees_anim;
100 105 ad->button = btn;
101 ad->anim_obj = efl_add(EFL_CANVAS_ANIMATION_PLAYER_CLASS, win,
102 efl_animation_player_target_set(efl_added, btn));
103 //Register callback called when animation starts
104 efl_event_callback_add(ad->anim_obj, EFL_ANIMATION_PLAYER_EVENT_STARTED, _anim_started_cb, NULL);
105 //Register callback called when animation ends
106 efl_event_callback_add(ad->anim_obj, EFL_ANIMATION_PLAYER_EVENT_ENDED, _anim_ended_cb, NULL);
107 //Register callback called while animation is executed
108 efl_event_callback_add(ad->anim_obj, EFL_ANIMATION_PLAYER_EVENT_RUNNING, _anim_running_cb, NULL);
109
110 ad->is_btn_rotated = EINA_FALSE; 106 ad->is_btn_rotated = EINA_FALSE;
111 107
112 //Button to start animation 108 //Button to start animation
@@ -140,6 +136,7 @@ test_efl_anim_rotate_relative(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUS
140 evas_object_resize(btn, 150, 150); 136 evas_object_resize(btn, 150, 150);
141 evas_object_move(btn, 125, 100); 137 evas_object_move(btn, 125, 100);
142 evas_object_show(btn); 138 evas_object_show(btn);
139 efl_event_callback_array_add(btn, animation_stats_cb(), ad);
143 140
144 //Pivot to be center of the rotation 141 //Pivot to be center of the rotation
145 Evas_Object *pivot = elm_button_add(win); 142 Evas_Object *pivot = elm_button_add(win);
@@ -151,31 +148,21 @@ test_efl_anim_rotate_relative(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUS
151 148
152 //Rotate from 0 to 45 degrees Animation 149 //Rotate from 0 to 45 degrees Animation
153 Efl_Canvas_Animation *cw_45_degrees_anim = efl_add(EFL_CANVAS_ANIMATION_ROTATE_CLASS, win); 150 Efl_Canvas_Animation *cw_45_degrees_anim = efl_add(EFL_CANVAS_ANIMATION_ROTATE_CLASS, win);
154 efl_animation_rotate_set(cw_45_degrees_anim, 0.0, 45.0, pivot, 0.5, 0.5); 151 efl_animation_rotate_set(cw_45_degrees_anim, 0.0, 45.0, pivot, EINA_VECTOR2(0.5, 0.5));
155 efl_animation_duration_set(cw_45_degrees_anim, 1.0); 152 efl_animation_duration_set(cw_45_degrees_anim, 1.0);
156 efl_animation_final_state_keep_set(cw_45_degrees_anim, EINA_TRUE); 153 efl_animation_final_state_keep_set(cw_45_degrees_anim, EINA_TRUE);
157 154
158 //Rotate from 45 to 0 degrees Animation 155 //Rotate from 45 to 0 degrees Animation
159 Efl_Canvas_Animation *ccw_45_degrees_anim = efl_add(EFL_CANVAS_ANIMATION_ROTATE_CLASS, win); 156 Efl_Canvas_Animation *ccw_45_degrees_anim = efl_add(EFL_CANVAS_ANIMATION_ROTATE_CLASS, win);
160 efl_animation_rotate_set(ccw_45_degrees_anim, 45.0, 0.0, pivot, 0.5, 0.5); 157 efl_animation_rotate_set(ccw_45_degrees_anim, 45.0, 0.0, pivot, EINA_VECTOR2(0.5, 0.5));
161 efl_animation_duration_set(ccw_45_degrees_anim, 1.0); 158 efl_animation_duration_set(ccw_45_degrees_anim, 1.0);
162 efl_animation_final_state_keep_set(ccw_45_degrees_anim, EINA_TRUE); 159 efl_animation_final_state_keep_set(ccw_45_degrees_anim, EINA_TRUE);
163 160
164 //Initialize App Data 161 //Initialize App Data
165 ad->cw_45_degrees_anim = cw_45_degrees_anim; 162 ad->cw_45_degrees_anim = cw_45_degrees_anim;
166 ad->ccw_45_degrees_anim = ccw_45_degrees_anim; 163 ad->ccw_45_degrees_anim = ccw_45_degrees_anim;
167 ad->anim_obj = efl_add(EFL_CANVAS_ANIMATION_PLAYER_CLASS, win,
168 efl_animation_player_target_set(efl_added, btn));
169
170 //Register callback called when animation starts
171 efl_event_callback_add(ad->anim_obj, EFL_ANIMATION_PLAYER_EVENT_STARTED, _anim_started_cb, NULL);
172
173 //Register callback called when animation ends
174 efl_event_callback_add(ad->anim_obj, EFL_ANIMATION_PLAYER_EVENT_ENDED, _anim_ended_cb, NULL);
175
176 //Register callback called while animation is executed
177 efl_event_callback_add(ad->anim_obj, EFL_ANIMATION_PLAYER_EVENT_RUNNING, _anim_running_cb, NULL);
178 ad->is_btn_rotated = EINA_FALSE; 164 ad->is_btn_rotated = EINA_FALSE;
165 ad->button = btn;
179 166
180 //Button to start animation 167 //Button to start animation
181 Evas_Object *btn2 = elm_button_add(win); 168 Evas_Object *btn2 = elm_button_add(win);
@@ -208,6 +195,7 @@ test_efl_anim_rotate_absolute(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUS
208 evas_object_resize(btn, 150, 150); 195 evas_object_resize(btn, 150, 150);
209 evas_object_move(btn, 125, 100); 196 evas_object_move(btn, 125, 100);
210 evas_object_show(btn); 197 evas_object_show(btn);
198 efl_event_callback_array_add(btn, animation_stats_cb(), ad);
211 199
212 //Absolute coordinate (0, 0) to be center of the rotation 200 //Absolute coordinate (0, 0) to be center of the rotation
213 Evas_Object *abs_center = elm_button_add(win); 201 Evas_Object *abs_center = elm_button_add(win);
@@ -219,30 +207,21 @@ test_efl_anim_rotate_absolute(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUS
219 207
220 //Rotate from 0 to 45 degrees Animation 208 //Rotate from 0 to 45 degrees Animation
221 Efl_Canvas_Animation *cw_45_degrees_anim = efl_add(EFL_CANVAS_ANIMATION_ROTATE_CLASS, win); 209 Efl_Canvas_Animation *cw_45_degrees_anim = efl_add(EFL_CANVAS_ANIMATION_ROTATE_CLASS, win);
222 efl_animation_rotate_absolute_set(cw_45_degrees_anim, 0.0, 45.0, 0, 0); 210 efl_animation_rotate_absolute_set(cw_45_degrees_anim, 0.0, 45.0, EINA_POSITION2D(0, 0));
223 efl_animation_duration_set(cw_45_degrees_anim, 1.0); 211 efl_animation_duration_set(cw_45_degrees_anim, 1.0);
224 efl_animation_final_state_keep_set(cw_45_degrees_anim, EINA_TRUE); 212 efl_animation_final_state_keep_set(cw_45_degrees_anim, EINA_TRUE);
225 213
226 //Rotate from 45 to 0 degrees Animation 214 //Rotate from 45 to 0 degrees Animation
227 Efl_Canvas_Animation *ccw_45_degrees_anim = efl_add(EFL_CANVAS_ANIMATION_ROTATE_CLASS, win); 215 Efl_Canvas_Animation *ccw_45_degrees_anim = efl_add(EFL_CANVAS_ANIMATION_ROTATE_CLASS, win);
228 efl_animation_rotate_absolute_set(ccw_45_degrees_anim, 45.0, 0.0, 0, 0); 216 efl_animation_rotate_absolute_set(ccw_45_degrees_anim, 45.0, 0.0, EINA_POSITION2D(0, 0));
229 efl_animation_duration_set(ccw_45_degrees_anim, 1.0); 217 efl_animation_duration_set(ccw_45_degrees_anim, 1.0);
230 efl_animation_final_state_keep_set(ccw_45_degrees_anim, EINA_TRUE); 218 efl_animation_final_state_keep_set(ccw_45_degrees_anim, EINA_TRUE);
231 219
232 //Initialize App Data 220 //Initialize App Data
233 ad->cw_45_degrees_anim = cw_45_degrees_anim; 221 ad->cw_45_degrees_anim = cw_45_degrees_anim;
234 ad->ccw_45_degrees_anim = ccw_45_degrees_anim; 222 ad->ccw_45_degrees_anim = ccw_45_degrees_anim;
235 ad->anim_obj = efl_add(EFL_CANVAS_ANIMATION_PLAYER_CLASS, win,
236 efl_animation_player_target_set(efl_added, btn));
237
238 //Register callback called when animation starts
239 efl_event_callback_add(ad->anim_obj, EFL_ANIMATION_PLAYER_EVENT_STARTED, _anim_started_cb, NULL);
240 //Register callback called when animation ends
241 efl_event_callback_add(ad->anim_obj, EFL_ANIMATION_PLAYER_EVENT_ENDED, _anim_ended_cb, NULL);
242 //Register callback called while animation is executed
243 efl_event_callback_add(ad->anim_obj, EFL_ANIMATION_PLAYER_EVENT_RUNNING, _anim_running_cb, NULL);
244
245 ad->is_btn_rotated = EINA_FALSE; 223 ad->is_btn_rotated = EINA_FALSE;
224 ad->button = btn;
246 225
247 //Button to start animation 226 //Button to start animation
248 Evas_Object *btn2 = elm_button_add(win); 227 Evas_Object *btn2 = elm_button_add(win);
diff --git a/src/bin/elementary/test_efl_anim_scale.c b/src/bin/elementary/test_efl_anim_scale.c
index 5e5f9ab..93ac1f7 100644
--- a/src/bin/elementary/test_efl_anim_scale.c
+++ b/src/bin/elementary/test_efl_anim_scale.c
@@ -7,31 +7,38 @@ typedef struct _App_Data
7{ 7{
8 Efl_Canvas_Animation *scale_double_anim; 8 Efl_Canvas_Animation *scale_double_anim;
9 Efl_Canvas_Animation *scale_half_anim; 9 Efl_Canvas_Animation *scale_half_anim;
10 Efl_Canvas_Animation_Player *anim_obj; 10 Elm_Button *button;
11 11
12 Eina_Bool is_btn_scaled; 12 Eina_Bool is_btn_scaled;
13} App_Data; 13} App_Data;
14 14
15static void 15static void
16_anim_started_cb(void *data EINA_UNUSED, const Efl_Event *event EINA_UNUSED) 16_anim_changed_cb(void *data EINA_UNUSED, const Efl_Event *event EINA_UNUSED)
17{ 17{
18 printf("Animation has been started!\n"); 18 Eo *anim = event->info;
19}
20 19
21static void 20 if (anim)
22_anim_ended_cb(void *data EINA_UNUSED, const Efl_Event *event EINA_UNUSED) 21 {
23{ 22 printf("Animation has been started!\n");
24 printf("Animation has been ended!\n"); 23 }
24 else
25 {
26 printf("Animation has been ended!\n");
27 }
25} 28}
26 29
27static void 30static void
28_anim_running_cb(void *data EINA_UNUSED, const Efl_Event *event) 31_anim_running_cb(void *data EINA_UNUSED, const Efl_Event *event)
29{ 32{
30 Efl_Canvas_Animation_Player_Event_Running *event_running = event->info; 33 double *progress = event->info;
31 double progress = event_running->progress; 34 printf("Animation is running! Current progress(%lf)\n", *progress);
32 printf("Animation is running! Current progress(%lf)\n", progress);
33} 35}
34 36
37EFL_CALLBACKS_ARRAY_DEFINE(animation_stats_cb,
38 {EFL_CANVAS_OBJECT_ANIMATION_EVENT_ANIMATION_CHANGED, _anim_changed_cb },
39 {EFL_CANVAS_OBJECT_ANIMATION_EVENT_ANIMATION_PROGRESS_UPDATED, _anim_running_cb },
40)
41
35static void 42static void
36_btn_clicked_cb(void *data, Evas_Object *obj, void *event_info EINA_UNUSED) 43_btn_clicked_cb(void *data, Evas_Object *obj, void *event_info EINA_UNUSED)
37{ 44{
@@ -42,18 +49,15 @@ _btn_clicked_cb(void *data, Evas_Object *obj, void *event_info EINA_UNUSED)
42 if (ad->is_btn_scaled) 49 if (ad->is_btn_scaled)
43 { 50 {
44 //Create Animation Object from Animation 51 //Create Animation Object from Animation
45 efl_animation_player_animation_set(ad->anim_obj, ad->scale_double_anim); 52 efl_canvas_object_animation_start(ad->button, ad->scale_double_anim, 1.0, 0.0);
46 efl_text_set(obj, "Start Scale Animation to zoom out"); 53 efl_text_set(obj, "Start Scale Animation to zoom out");
47 } 54 }
48 else 55 else
49 { 56 {
50 //Create Animation Object from Animation 57 //Create Animation Object from Animation
51 efl_animation_player_animation_set(ad->anim_obj, ad->scale_half_anim); 58 efl_canvas_object_animation_start(ad->button, ad->scale_half_anim, 1.0, 0.0);
52 efl_text_set(obj, "Start Scale Animation to zoom in"); 59 efl_text_set(obj, "Start Scale Animation to zoom in");
53 } 60 }
54
55 //Let Animation Object start animation
56 efl_player_playing_set(ad->anim_obj, EINA_TRUE);
57} 61}
58 62
59static void 63static void
@@ -81,35 +85,25 @@ test_efl_anim_scale(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void *
81 evas_object_resize(btn, 150, 150); 85 evas_object_resize(btn, 150, 150);
82 evas_object_move(btn, 125, 100); 86 evas_object_move(btn, 125, 100);
83 evas_object_show(btn); 87 evas_object_show(btn);
88 efl_event_callback_array_add(btn, animation_stats_cb(), ad);
84 89
85 //Scale Animation to zoom in 90 //Scale Animation to zoom in
86 Efl_Canvas_Animation *scale_double_anim = efl_add(EFL_CANVAS_ANIMATION_SCALE_CLASS, win); 91 Efl_Canvas_Animation *scale_double_anim = efl_add(EFL_CANVAS_ANIMATION_SCALE_CLASS, win);
87 efl_animation_scale_set(scale_double_anim, 1.0, 1.0, 2.0, 2.0, NULL, 0.5, 0.5); 92 efl_animation_scale_set(scale_double_anim, EINA_VECTOR2(1.0, 1.0), EINA_VECTOR2(2.0, 2.0), NULL, EINA_VECTOR2(0.5, 0.5));
88 efl_animation_duration_set(scale_double_anim, 1.0); 93 efl_animation_duration_set(scale_double_anim, 1.0);
89 efl_animation_final_state_keep_set(scale_double_anim, EINA_TRUE); 94 efl_animation_final_state_keep_set(scale_double_anim, EINA_TRUE);
90 95
91 //Scale Animation to zoom out 96 //Scale Animation to zoom out
92 Efl_Canvas_Animation *scale_half_anim = efl_add(EFL_CANVAS_ANIMATION_SCALE_CLASS, win); 97 Efl_Canvas_Animation *scale_half_anim = efl_add(EFL_CANVAS_ANIMATION_SCALE_CLASS, win);
93 efl_animation_scale_set(scale_half_anim, 2.0, 2.0, 1.0, 1.0, NULL, 0.5, 0.5); 98 efl_animation_scale_set(scale_half_anim, EINA_VECTOR2(2.0, 2.0), EINA_VECTOR2(1.0, 1.0), NULL, EINA_VECTOR2(0.5, 0.5));
94 efl_animation_duration_set(scale_half_anim, 1.0); 99 efl_animation_duration_set(scale_half_anim, 1.0);
95 efl_animation_final_state_keep_set(scale_half_anim, EINA_TRUE); 100 efl_animation_final_state_keep_set(scale_half_anim, EINA_TRUE);
96 101
97 //Initialize App Data 102 //Initialize App Data
98 ad->scale_double_anim = scale_double_anim; 103 ad->scale_double_anim = scale_double_anim;
99 ad->scale_half_anim = scale_half_anim; 104 ad->scale_half_anim = scale_half_anim;
100 ad->anim_obj = efl_add(EFL_CANVAS_ANIMATION_PLAYER_CLASS, win,
101 efl_animation_player_target_set(efl_added, btn));
102
103 //Register callback called when animation starts
104 efl_event_callback_add(ad->anim_obj, EFL_ANIMATION_PLAYER_EVENT_STARTED, _anim_started_cb, NULL);
105
106 //Register callback called when animation ends
107 efl_event_callback_add(ad->anim_obj, EFL_ANIMATION_PLAYER_EVENT_ENDED, _anim_ended_cb, ad);
108
109 //Register callback called while animation is executed
110 efl_event_callback_add(ad->anim_obj, EFL_ANIMATION_PLAYER_EVENT_RUNNING, _anim_running_cb, NULL);
111
112 ad->is_btn_scaled = EINA_FALSE; 105 ad->is_btn_scaled = EINA_FALSE;
106 ad->button = btn;
113 107
114 //Button to start animation 108 //Button to start animation
115 Evas_Object *btn2 = elm_button_add(win); 109 Evas_Object *btn2 = elm_button_add(win);
@@ -142,6 +136,7 @@ test_efl_anim_scale_relative(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSE
142 evas_object_resize(btn, 150, 150); 136 evas_object_resize(btn, 150, 150);
143 evas_object_move(btn, 125, 100); 137 evas_object_move(btn, 125, 100);
144 evas_object_show(btn); 138 evas_object_show(btn);
139 efl_event_callback_array_add(btn, animation_stats_cb(), ad);
145 140
146 //Pivot to be center of the scaling 141 //Pivot to be center of the scaling
147 Evas_Object *pivot = elm_button_add(win); 142 Evas_Object *pivot = elm_button_add(win);
@@ -153,28 +148,20 @@ test_efl_anim_scale_relative(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSE
153 148
154 //Scale Animation to zoom in 149 //Scale Animation to zoom in
155 Efl_Canvas_Animation *scale_double_anim = efl_add(EFL_CANVAS_ANIMATION_SCALE_CLASS, win); 150 Efl_Canvas_Animation *scale_double_anim = efl_add(EFL_CANVAS_ANIMATION_SCALE_CLASS, win);
156 efl_animation_scale_set(scale_double_anim, 1.0, 1.0, 2.0, 2.0, pivot, 0.5, 0.5); 151 efl_animation_scale_set(scale_double_anim, EINA_VECTOR2(1.0, 1.0), EINA_VECTOR2(2.0, 2.0), pivot, EINA_VECTOR2(0.5, 0.5));
157 efl_animation_duration_set(scale_double_anim, 1.0); 152 efl_animation_duration_set(scale_double_anim, 1.0);
158 efl_animation_final_state_keep_set(scale_double_anim, EINA_TRUE); 153 efl_animation_final_state_keep_set(scale_double_anim, EINA_TRUE);
159 154
160 //Scale Animation to zoom out 155 //Scale Animation to zoom out
161 Efl_Canvas_Animation *scale_half_anim = efl_add(EFL_CANVAS_ANIMATION_SCALE_CLASS, win); 156 Efl_Canvas_Animation *scale_half_anim = efl_add(EFL_CANVAS_ANIMATION_SCALE_CLASS, win);
162 efl_animation_scale_set(scale_half_anim, 2.0, 2.0, 1.0, 1.0, pivot, 0.5, 0.5); 157 efl_animation_scale_set(scale_half_anim, EINA_VECTOR2(2.0, 2.0), EINA_VECTOR2(1.0, 1.0), pivot, EINA_VECTOR2(0.5, 0.5));
163 efl_animation_duration_set(scale_half_anim, 1.0); 158 efl_animation_duration_set(scale_half_anim, 1.0);
164 efl_animation_final_state_keep_set(scale_half_anim, EINA_TRUE); 159 efl_animation_final_state_keep_set(scale_half_anim, EINA_TRUE);
165 160
166 //Initialize App Data 161 //Initialize App Data
167 ad->scale_double_anim = scale_double_anim; 162 ad->scale_double_anim = scale_double_anim;
168 ad->scale_half_anim = scale_half_anim; 163 ad->scale_half_anim = scale_half_anim;
169 ad->anim_obj = efl_add(EFL_CANVAS_ANIMATION_PLAYER_CLASS, win, 164 ad->button = btn;
170 efl_animation_player_target_set(efl_added, btn));
171 //Register callback called when animation starts
172 efl_event_callback_add(ad->anim_obj, EFL_ANIMATION_PLAYER_EVENT_STARTED, _anim_started_cb, NULL);
173 //Register callback called when animation ends
174 efl_event_callback_add(ad->anim_obj, EFL_ANIMATION_PLAYER_EVENT_ENDED, _anim_ended_cb, ad);
175 //Register callback called while animation is executed
176 efl_event_callback_add(ad->anim_obj, EFL_ANIMATION_PLAYER_EVENT_RUNNING, _anim_running_cb, NULL);
177
178 ad->is_btn_scaled = EINA_FALSE; 165 ad->is_btn_scaled = EINA_FALSE;
179 166
180 //Button to start animation 167 //Button to start animation
@@ -208,6 +195,7 @@ test_efl_anim_scale_absolute(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSE
208 evas_object_resize(btn, 150, 150); 195 evas_object_resize(btn, 150, 150);
209 evas_object_move(btn, 125, 100); 196 evas_object_move(btn, 125, 100);
210 evas_object_show(btn); 197 evas_object_show(btn);
198 efl_event_callback_array_add(btn, animation_stats_cb(), ad);
211 199
212 //Absolute coordinate (0, 0) to be center of the scaling 200 //Absolute coordinate (0, 0) to be center of the scaling
213 Evas_Object *abs_center = elm_button_add(win); 201 Evas_Object *abs_center = elm_button_add(win);
@@ -219,28 +207,20 @@ test_efl_anim_scale_absolute(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSE
219 207
220 //Scale Animation to zoom in 208 //Scale Animation to zoom in
221 Efl_Canvas_Animation *scale_double_anim = efl_add(EFL_CANVAS_ANIMATION_SCALE_CLASS, win); 209 Efl_Canvas_Animation *scale_double_anim = efl_add(EFL_CANVAS_ANIMATION_SCALE_CLASS, win);
222 efl_animation_scale_absolute_set(scale_double_anim, 1.0, 1.0, 2.0, 2.0, 0, 0); 210 efl_animation_scale_absolute_set(scale_double_anim, EINA_VECTOR2(1.0, 1.0), EINA_VECTOR2(2.0, 2.0), EINA_POSITION2D(0, 0));
223 efl_animation_duration_set(scale_double_anim, 1.0); 211 efl_animation_duration_set(scale_double_anim, 1.0);
224 efl_animation_final_state_keep_set(scale_double_anim, EINA_TRUE); 212 efl_animation_final_state_keep_set(scale_double_anim, EINA_TRUE);
225 213
226 //Scale Animation to zoom out 214 //Scale Animation to zoom out
227 Efl_Canvas_Animation *scale_half_anim = efl_add(EFL_CANVAS_ANIMATION_SCALE_CLASS, win); 215 Efl_Canvas_Animation *scale_half_anim = efl_add(EFL_CANVAS_ANIMATION_SCALE_CLASS, win);
228 efl_animation_scale_absolute_set(scale_half_anim, 2.0, 2.0, 1.0, 1.0, 0, 0); 216 efl_animation_scale_absolute_set(scale_half_anim, EINA_VECTOR2(2.0, 2.0), EINA_VECTOR2(1.0, 1.0), EINA_POSITION2D(0, 0));
229 efl_animation_duration_set(scale_half_anim, 1.0); 217 efl_animation_duration_set(scale_half_anim, 1.0);
230 efl_animation_final_state_keep_set(scale_half_anim, EINA_TRUE); 218 efl_animation_final_state_keep_set(scale_half_anim, EINA_TRUE);
231 219
232 //Initialize App Data 220 //Initialize App Data
233 ad->scale_double_anim = scale_double_anim; 221 ad->scale_double_anim = scale_double_anim;
234 ad->scale_half_anim = scale_half_anim; 222 ad->scale_half_anim = scale_half_anim;
235 ad->anim_obj = efl_add(EFL_CANVAS_ANIMATION_PLAYER_CLASS, win, 223 ad->button = btn;
236 efl_animation_player_target_set(efl_added, btn));
237 //Register callback called when animation starts
238 efl_event_callback_add(ad->anim_obj, EFL_ANIMATION_PLAYER_EVENT_STARTED, _anim_started_cb, NULL);
239 //Register callback called when animation ends
240 efl_event_callback_add(ad->anim_obj, EFL_ANIMATION_PLAYER_EVENT_ENDED, _anim_ended_cb, ad);
241 //Register callback called while animation is executed
242 efl_event_callback_add(ad->anim_obj, EFL_ANIMATION_PLAYER_EVENT_RUNNING, _anim_running_cb, NULL);
243
244 ad->is_btn_scaled = EINA_FALSE; 224 ad->is_btn_scaled = EINA_FALSE;
245 225
246 //Button to start animation 226 //Button to start animation
diff --git a/src/bin/elementary/test_efl_anim_start_delay.c b/src/bin/elementary/test_efl_anim_start_delay.c
index e3c7b25..6ef663b 100644
--- a/src/bin/elementary/test_efl_anim_start_delay.c
+++ b/src/bin/elementary/test_efl_anim_start_delay.c
@@ -7,7 +7,7 @@ typedef struct _App_Data
7{ 7{
8 Efl_Canvas_Animation *show_anim; 8 Efl_Canvas_Animation *show_anim;
9 Efl_Canvas_Animation *hide_anim; 9 Efl_Canvas_Animation *hide_anim;
10 Efl_Canvas_Animation_Player *anim_obj; 10 Elm_Button *button;
11 11
12 Evas_Object *start_delay_spin; 12 Evas_Object *start_delay_spin;
13 13
@@ -15,29 +15,35 @@ typedef struct _App_Data
15} App_Data; 15} App_Data;
16 16
17static void 17static void
18_anim_started_cb(void *data EINA_UNUSED, const Efl_Event *event EINA_UNUSED) 18_anim_changed_cb(void *data, const Efl_Event *event EINA_UNUSED)
19{
20 printf("Animation has been started!\n");
21}
22
23static void
24_anim_ended_cb(void *data, const Efl_Event *event EINA_UNUSED)
25{ 19{
20 Eo *anim = event->info;
26 App_Data *ad = data; 21 App_Data *ad = data;
27 22
28 printf("Animation has been ended!\n"); 23 if (anim)
29 24 {
30 elm_object_disabled_set(ad->start_delay_spin, EINA_FALSE); 25 printf("Animation has been started!\n");
26 elm_object_disabled_set(ad->start_delay_spin, EINA_FALSE);
27 }
28 else
29 {
30 printf("Animation has been ended!\n");
31 elm_object_disabled_set(ad->start_delay_spin, EINA_TRUE);
32 }
31} 33}
32 34
33static void 35static void
34_anim_running_cb(void *data EINA_UNUSED, const Efl_Event *event) 36_anim_running_cb(void *data EINA_UNUSED, const Efl_Event *event)
35{ 37{
36 Efl_Canvas_Animation_Player_Event_Running *event_running = event->info; 38 double *progress = event->info;
37 double progress = event_running->progress; 39 printf("Animation is running! Current progress(%lf)\n", *progress);
38 printf("Animation is running! Current progress(%lf)\n", progress);
39} 40}
40 41
42EFL_CALLBACKS_ARRAY_DEFINE(animation_stats_cb,
43 {EFL_CANVAS_OBJECT_ANIMATION_EVENT_ANIMATION_CHANGED, _anim_changed_cb },
44 {EFL_CANVAS_OBJECT_ANIMATION_EVENT_ANIMATION_PROGRESS_UPDATED, _anim_running_cb },
45)
46
41static void 47static void
42_start_btn_clicked_cb(void *data, Evas_Object *obj, void *event_info EINA_UNUSED) 48_start_btn_clicked_cb(void *data, Evas_Object *obj, void *event_info EINA_UNUSED)
43{ 49{
@@ -54,7 +60,7 @@ _start_btn_clicked_cb(void *data, Evas_Object *obj, void *event_info EINA_UNUSED
54 efl_animation_start_delay_set(ad->show_anim, start_delay); 60 efl_animation_start_delay_set(ad->show_anim, start_delay);
55 61
56 //Create Animation Object from Animation 62 //Create Animation Object from Animation
57 efl_animation_player_animation_set(ad->anim_obj, ad->show_anim); 63 efl_canvas_object_animation_start(ad->button, ad->show_anim, 1.0, 0.0);
58 efl_text_set(obj, "Start Alpha Animation from 1.0 to 0.0"); 64 efl_text_set(obj, "Start Alpha Animation from 1.0 to 0.0");
59 } 65 }
60 else 66 else
@@ -63,12 +69,9 @@ _start_btn_clicked_cb(void *data, Evas_Object *obj, void *event_info EINA_UNUSED
63 efl_animation_start_delay_set(ad->hide_anim, start_delay); 69 efl_animation_start_delay_set(ad->hide_anim, start_delay);
64 70
65 //Create Animation Object from Animation 71 //Create Animation Object from Animation
66 efl_animation_player_animation_set(ad->anim_obj, ad->hide_anim); 72 efl_canvas_object_animation_start(ad->button, ad->hide_anim, 1.0, 0.0);
67 efl_text_set(obj, "Start Alpha Animation from 0.0 to 1.0"); 73 efl_text_set(obj, "Start Alpha Animation from 0.0 to 1.0");
68 } 74 }
69
70 //Let Animation Object start animation
71 efl_player_playing_set(ad->anim_obj, EINA_TRUE);
72} 75}
73 76
74static void 77static void
@@ -96,6 +99,7 @@ test_efl_anim_start_delay(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED,
96 evas_object_resize(btn, 200, 200); 99 evas_object_resize(btn, 200, 200);
97 evas_object_move(btn, 100, 50); 100 evas_object_move(btn, 100, 50);
98 evas_object_show(btn); 101 evas_object_show(btn);
102 efl_event_callback_array_add(btn, animation_stats_cb(), ad);
99 103
100 //Show Animation 104 //Show Animation
101 Efl_Canvas_Animation *show_anim = efl_add(EFL_CANVAS_ANIMATION_ALPHA_CLASS, win); 105 Efl_Canvas_Animation *show_anim = efl_add(EFL_CANVAS_ANIMATION_ALPHA_CLASS, win);
@@ -130,23 +134,12 @@ test_efl_anim_start_delay(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED,
130 evas_object_move(start_delay_spin, 100, 350); 134 evas_object_move(start_delay_spin, 100, 350);
131 evas_object_show(start_delay_spin); 135 evas_object_show(start_delay_spin);
132 136
133
134 //Initialize App Data 137 //Initialize App Data
135 ad->show_anim = show_anim; 138 ad->show_anim = show_anim;
136 ad->hide_anim = hide_anim; 139 ad->hide_anim = hide_anim;
137 ad->anim_obj = efl_add(EFL_CANVAS_ANIMATION_PLAYER_CLASS, win,
138 efl_animation_player_target_set(efl_added, btn));
139
140 //Register callback called when animation starts
141 efl_event_callback_add(ad->anim_obj, EFL_ANIMATION_PLAYER_EVENT_STARTED, _anim_started_cb, NULL);
142 //Register callback called when animation ends
143 efl_event_callback_add(ad->anim_obj, EFL_ANIMATION_PLAYER_EVENT_ENDED, _anim_ended_cb, ad);
144 //Register callback called while animation is executed
145 efl_event_callback_add(ad->anim_obj, EFL_ANIMATION_PLAYER_EVENT_RUNNING, _anim_running_cb, NULL);
146
147 ad->start_delay_spin = start_delay_spin; 140 ad->start_delay_spin = start_delay_spin;
148 ad->is_btn_visible = EINA_TRUE; 141 ad->is_btn_visible = EINA_TRUE;
149 142 ad->button = btn;
150 143
151 evas_object_resize(win, 400, 450); 144 evas_object_resize(win, 400, 450);
152 evas_object_show(win); 145 evas_object_show(win);
diff --git a/src/bin/elementary/test_efl_anim_translate.c b/src/bin/elementary/test_efl_anim_translate.c
index 9f30cc3..7617be8 100644
--- a/src/bin/elementary/test_efl_anim_translate.c
+++ b/src/bin/elementary/test_efl_anim_translate.c
@@ -7,31 +7,38 @@ typedef struct _App_Data
7{ 7{
8 Efl_Canvas_Animation *translate_rb_anim; 8 Efl_Canvas_Animation *translate_rb_anim;
9 Efl_Canvas_Animation *translate_lt_anim; 9 Efl_Canvas_Animation *translate_lt_anim;
10 Efl_Canvas_Animation_Player *anim_obj; 10 Elm_Button *button;
11 11
12 Eina_Bool is_btn_translated; 12 Eina_Bool is_btn_translated;
13} App_Data; 13} App_Data;
14 14
15static void 15static void
16_anim_started_cb(void *data EINA_UNUSED, const Efl_Event *event EINA_UNUSED) 16_anim_changed_cb(void *data EINA_UNUSED, const Efl_Event *event EINA_UNUSED)
17{ 17{
18 printf("Animation has been started!\n"); 18 Eo *anim = event->info;
19}
20 19
21static void 20 if (anim)
22_anim_ended_cb(void *data EINA_UNUSED, const Efl_Event *event EINA_UNUSED) 21 {
23{ 22 printf("Animation has been started!\n");
24 printf("Animation has been ended!\n"); 23 }
24 else
25 {
26 printf("Animation has been ended!\n");
27 }
25} 28}
26 29
27static void 30static void
28_anim_running_cb(void *data EINA_UNUSED, const Efl_Event *event) 31_anim_running_cb(void *data EINA_UNUSED, const Efl_Event *event)
29{ 32{
30 Efl_Canvas_Animation_Player_Event_Running *event_running = event->info; 33 double *progress = event->info;
31 double progress = event_running->progress; 34 printf("Animation is running! Current progress(%lf)\n", *progress);
32 printf("Animation is running! Current progress(%lf)\n", progress);
33} 35}
34 36
37EFL_CALLBACKS_ARRAY_DEFINE(animation_stats_cb,
38 {EFL_CANVAS_OBJECT_ANIMATION_EVENT_ANIMATION_CHANGED, _anim_changed_cb },
39 {EFL_CANVAS_OBJECT_ANIMATION_EVENT_ANIMATION_PROGRESS_UPDATED, _anim_running_cb },
40)
41
35static void 42static void
36_btn_clicked_cb(void *data, Evas_Object *obj, void *event_info EINA_UNUSED) 43_btn_clicked_cb(void *data, Evas_Object *obj, void *event_info EINA_UNUSED)
37{ 44{
@@ -42,18 +49,15 @@ _btn_clicked_cb(void *data, Evas_Object *obj, void *event_info EINA_UNUSED)
42 if (ad->is_btn_translated) 49 if (ad->is_btn_translated)
43 { 50 {
44 //Create Animation Object from Animation 51 //Create Animation Object from Animation
45 efl_animation_player_animation_set(ad->anim_obj, ad->translate_rb_anim); 52 efl_canvas_object_animation_start(ad->button, ad->translate_rb_anim, 1.0, 0.0);
46 efl_text_set(obj, "Start Translate Animation to left top"); 53 efl_text_set(obj, "Start Translate Animation to left top");
47 } 54 }
48 else 55 else
49 { 56 {
50 //Create Animation Object from Animation 57 //Create Animation Object from Animation
51 efl_animation_player_animation_set(ad->anim_obj, ad->translate_lt_anim); 58 efl_canvas_object_animation_start(ad->button, ad->translate_lt_anim, 1.0, 0.0);
52 efl_text_set(obj, "Start Translate Animation to right bottom"); 59 efl_text_set(obj, "Start Translate Animation to right bottom");
53 } 60 }
54
55 //Let Animation Object start animation
56 efl_player_playing_set(ad->anim_obj, EINA_TRUE);
57} 61}
58 62
59static void 63static void
@@ -81,31 +85,24 @@ test_efl_anim_translate(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED, vo
81 evas_object_resize(btn, 150, 150); 85 evas_object_resize(btn, 150, 150);
82 evas_object_move(btn, 125, 100); 86 evas_object_move(btn, 125, 100);
83 evas_object_show(btn); 87 evas_object_show(btn);
88 efl_event_callback_array_add(btn, animation_stats_cb(), ad);
84 89
85 //Translate Animation to right bottom relatively 90 //Translate Animation to right bottom relatively
86 Efl_Canvas_Animation *translate_rb_anim = efl_add(EFL_CANVAS_ANIMATION_TRANSLATE_CLASS, win); 91 Efl_Canvas_Animation *translate_rb_anim = efl_add(EFL_CANVAS_ANIMATION_TRANSLATE_CLASS, win);
87 efl_animation_translate_set(translate_rb_anim, 0, 0, 100, 100); 92 efl_animation_translate_set(translate_rb_anim, EINA_POSITION2D(0, 0), EINA_POSITION2D(100, 100));
88 efl_animation_duration_set(translate_rb_anim, 1.0); 93 efl_animation_duration_set(translate_rb_anim, 1.0);
89 efl_animation_final_state_keep_set(translate_rb_anim, EINA_TRUE); 94 efl_animation_final_state_keep_set(translate_rb_anim, EINA_TRUE);
90 95
91 //Translate Animation to left top relatively 96 //Translate Animation to left top relatively
92 Efl_Canvas_Animation *translate_lt_anim = efl_add(EFL_CANVAS_ANIMATION_TRANSLATE_CLASS, win); 97 Efl_Canvas_Animation *translate_lt_anim = efl_add(EFL_CANVAS_ANIMATION_TRANSLATE_CLASS, win);
93 efl_animation_translate_set(translate_lt_anim, 100, 100, 0, 0); 98 efl_animation_translate_set(translate_lt_anim, EINA_POSITION2D(100, 100), EINA_POSITION2D(0, 0));
94 efl_animation_duration_set(translate_lt_anim, 1.0); 99 efl_animation_duration_set(translate_lt_anim, 1.0);
95 efl_animation_final_state_keep_set(translate_lt_anim, EINA_TRUE); 100 efl_animation_final_state_keep_set(translate_lt_anim, EINA_TRUE);
96 101
97 //Initialize App Data 102 //Initialize App Data
98 ad->translate_rb_anim = translate_rb_anim; 103 ad->translate_rb_anim = translate_rb_anim;
99 ad->translate_lt_anim = translate_lt_anim; 104 ad->translate_lt_anim = translate_lt_anim;
100 ad->anim_obj = efl_add(EFL_CANVAS_ANIMATION_PLAYER_CLASS, win, 105 ad->button = btn;
101 efl_animation_player_target_set(efl_added, btn));
102 //Register callback called when animation starts
103 efl_event_callback_add(ad->anim_obj, EFL_ANIMATION_PLAYER_EVENT_STARTED, _anim_started_cb, NULL);
104 //Register callback called when animation ends
105 efl_event_callback_add(ad->anim_obj, EFL_ANIMATION_PLAYER_EVENT_ENDED, _anim_ended_cb, NULL);
106 //Register callback called while animation is executed
107 efl_event_callback_add(ad->anim_obj, EFL_ANIMATION_PLAYER_EVENT_RUNNING, _anim_running_cb, NULL);
108
109 ad->is_btn_translated = EINA_FALSE; 106 ad->is_btn_translated = EINA_FALSE;
110 107
111 //Button to start animation 108 //Button to start animation
@@ -139,6 +136,7 @@ test_efl_anim_translate_absolute(void *data EINA_UNUSED, Evas_Object *obj EINA_U
139 evas_object_resize(btn, 150, 150); 136 evas_object_resize(btn, 150, 150);
140 evas_object_move(btn, 125, 100); 137 evas_object_move(btn, 125, 100);
141 evas_object_show(btn); 138 evas_object_show(btn);
139 efl_event_callback_array_add(btn, animation_stats_cb(), ad);
142 140
143 //Absolute coordinate (0, 0) for absolute translation 141 //Absolute coordinate (0, 0) for absolute translation
144 Evas_Object *abs_center = elm_button_add(win); 142 Evas_Object *abs_center = elm_button_add(win);
@@ -150,13 +148,13 @@ test_efl_anim_translate_absolute(void *data EINA_UNUSED, Evas_Object *obj EINA_U
150 148
151 //Translate Animation to right bottom absolutely 149 //Translate Animation to right bottom absolutely
152 Efl_Canvas_Animation *translate_rb_anim = efl_add(EFL_CANVAS_ANIMATION_TRANSLATE_CLASS, win); 150 Efl_Canvas_Animation *translate_rb_anim = efl_add(EFL_CANVAS_ANIMATION_TRANSLATE_CLASS, win);
153 efl_animation_translate_absolute_set(translate_rb_anim, 0, 0, 100, 100); 151 efl_animation_translate_absolute_set(translate_rb_anim, EINA_POSITION2D(0, 0), EINA_POSITION2D(100, 100));
154 efl_animation_duration_set(translate_rb_anim, 1.0); 152 efl_animation_duration_set(translate_rb_anim, 1.0);
155 efl_animation_final_state_keep_set(translate_rb_anim, EINA_TRUE); 153 efl_animation_final_state_keep_set(translate_rb_anim, EINA_TRUE);
156 154
157 //Translate Animation to left top absolutely 155 //Translate Animation to left top absolutely
158 Efl_Canvas_Animation *translate_lt_anim = efl_add(EFL_CANVAS_ANIMATION_TRANSLATE_CLASS, win); 156 Efl_Canvas_Animation *translate_lt_anim = efl_add(EFL_CANVAS_ANIMATION_TRANSLATE_CLASS, win);
159 efl_animation_translate_absolute_set(translate_lt_anim, 100, 100, 0, 0); 157 efl_animation_translate_absolute_set(translate_lt_anim, EINA_POSITION2D(100, 100), EINA_POSITION2D(0, 0));
160 efl_animation_duration_set(translate_lt_anim, 1.0); 158 efl_animation_duration_set(translate_lt_anim, 1.0);
161 efl_animation_final_state_keep_set(translate_lt_anim, EINA_TRUE); 159 efl_animation_final_state_keep_set(translate_lt_anim, EINA_TRUE);
162 160
@@ -164,14 +162,7 @@ test_efl_anim_translate_absolute(void *data EINA_UNUSED, Evas_Object *obj EINA_U
164 ad->translate_rb_anim = translate_rb_anim; 162 ad->translate_rb_anim = translate_rb_anim;
165 ad->translate_lt_anim = translate_lt_anim; 163 ad->translate_lt_anim = translate_lt_anim;
166 ad->is_btn_translated = EINA_FALSE; 164 ad->is_btn_translated = EINA_FALSE;
167 ad->anim_obj = efl_add(EFL_CANVAS_ANIMATION_PLAYER_CLASS, win, 165 ad->button = btn;
168 efl_animation_player_target_set(efl_added, btn));
169 //Register callback called when animation starts
170 efl_event_callback_add(ad->anim_obj, EFL_ANIMATION_PLAYER_EVENT_STARTED, _anim_started_cb, NULL);
171 //Register callback called when animation ends
172 efl_event_callback_add(ad->anim_obj, EFL_ANIMATION_PLAYER_EVENT_ENDED, _anim_ended_cb, NULL);
173 //Register callback called while animation is executed
174 efl_event_callback_add(ad->anim_obj, EFL_ANIMATION_PLAYER_EVENT_RUNNING, _anim_running_cb, NULL);
175 166
176 //Button to start animation 167 //Button to start animation
177 Evas_Object *btn2 = elm_button_add(win); 168 Evas_Object *btn2 = elm_button_add(win);
diff --git a/src/bin/elementary/test_efl_ui_text.c b/src/bin/elementary/test_efl_ui_text.c
index e7e909b..24870b5 100644
--- a/src/bin/elementary/test_efl_ui_text.c
+++ b/src/bin/elementary/test_efl_ui_text.c
@@ -5,21 +5,22 @@
5#include <Efl_Ui.h> 5#include <Efl_Ui.h>
6#include <Elementary.h> 6#include <Elementary.h>
7#include "elm_priv.h" //FIXME remove this once efl.ui.text doesn't need elm_general.h 7#include "elm_priv.h" //FIXME remove this once efl.ui.text doesn't need elm_general.h
8
8static void 9static void
9_apply_style(Eo *obj, size_t start_pos, size_t end_pos, const char *style) 10_apply_style(Eo *obj, size_t start_pos, size_t end_pos, const char *style)
10{ 11{
11 Efl_Text_Cursor_Cursor *start, *end; 12 Efl_Text_Cursor *start, *end;
12 13
13 start = efl_text_cursor_new(obj); 14 start = efl_ui_text_cursor_create(obj);
14 end = efl_text_cursor_new(obj); 15 end = efl_ui_text_cursor_create(obj);
15 16
16 efl_text_cursor_position_set(obj, start, start_pos); 17 efl_text_cursor_position_set(start, start_pos);
17 efl_text_cursor_position_set(obj, end, end_pos); 18 efl_text_cursor_position_set(end, end_pos);
18 19
19 efl_text_annotation_insert(obj, start, end, style); 20 efl_text_attribute_factory_attribute_insert(start, end, style);
20 21
21 efl_text_cursor_free(obj, start); 22 efl_del(start);
22 efl_text_cursor_free(obj, end); 23 efl_del(end);
23} 24}
24 25
25static Eo * 26static Eo *
@@ -66,7 +67,8 @@ test_efl_ui_text_label(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED, voi
66 67
67 en = _create_label(win, bx); 68 en = _create_label(win, bx);
68 efl_text_markup_set(en, "You can also <b>ENTER</b> markup!"); 69 efl_text_markup_set(en, "You can also <b>ENTER</b> markup!");
69 efl_text_font_set(en, "Sans", 14); 70 efl_text_font_family_set(en, "Sans");
71 efl_text_font_size_set(en, 14);
70 efl_text_wrap_set(en, EFL_TEXT_FORMAT_WRAP_WORD); 72 efl_text_wrap_set(en, EFL_TEXT_FORMAT_WRAP_WORD);
71 efl_text_multiline_set(en, EINA_TRUE); 73 efl_text_multiline_set(en, EINA_TRUE);
72 74
@@ -75,7 +77,8 @@ test_efl_ui_text_label(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED, voi
75 "You can use the text -> markup helper\nto make coding easier."); 77 "You can use the text -> markup helper\nto make coding easier.");
76 efl_text_markup_set(en, markup); 78 efl_text_markup_set(en, markup);
77 free(markup); 79 free(markup);
78 efl_text_font_set(en, "Sans", 14); 80 efl_text_font_family_set(en, "Sans");
81 efl_text_font_size_set(en, 14);
79 efl_text_wrap_set(en, EFL_TEXT_FORMAT_WRAP_WORD); 82 efl_text_wrap_set(en, EFL_TEXT_FORMAT_WRAP_WORD);
80 efl_text_multiline_set(en, EINA_TRUE); 83 efl_text_multiline_set(en, EINA_TRUE);
81 84
@@ -84,7 +87,8 @@ test_efl_ui_text_label(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED, voi
84 "You can use markup -&gt; text helpers<ps>to make coding easier."); 87 "You can use markup -&gt; text helpers<ps>to make coding easier.");
85 efl_text_set(en, markup); 88 efl_text_set(en, markup);
86 free(markup); 89 free(markup);
87 efl_text_font_set(en, "Sans", 14); 90 efl_text_font_family_set(en, "Sans");
91 efl_text_font_size_set(en, 14);
88 efl_text_wrap_set(en, EFL_TEXT_FORMAT_WRAP_WORD); 92 efl_text_wrap_set(en, EFL_TEXT_FORMAT_WRAP_WORD);
89 efl_text_multiline_set(en, EINA_TRUE); 93 efl_text_multiline_set(en, EINA_TRUE);
90} 94}
@@ -98,15 +102,15 @@ typedef struct
98static void 102static void
99_on_bt3_clicked(void *data, const Efl_Event *event EINA_UNUSED) 103_on_bt3_clicked(void *data, const Efl_Event *event EINA_UNUSED)
100{ 104{
101 Efl_Text_Cursor_Cursor *sel_start, *sel_end; 105 Efl_Text_Cursor *sel_start, *sel_end;
102 Eo *en = data; 106 Eo *en = data;
103 107
104 efl_text_interactive_selection_cursors_get(data, &sel_start, &sel_end); 108 efl_text_interactive_selection_cursors_get(en, &sel_start, &sel_end);
105 const char *s = efl_canvas_text_range_text_get(data, sel_start, sel_end); 109 const char *s = efl_text_cursor_range_text_get(sel_start, sel_end);
106 110
107 printf("SELECTION REGION: %d - %d\n", 111 printf("SELECTION REGION: %d - %d\n",
108 efl_text_cursor_position_get(en, sel_start), 112 efl_text_cursor_position_get( sel_start),
109 efl_text_cursor_position_get(en, sel_end)); 113 efl_text_cursor_position_get(sel_end));
110 printf("SELECTION:\n"); 114 printf("SELECTION:\n");
111 if (s) printf("%s\n", s); 115 if (s) printf("%s\n", s);
112} 116}
@@ -160,7 +164,8 @@ test_efl_ui_text(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void *eve
160 efl_text_interactive_editable_set(en, EINA_TRUE); 164 efl_text_interactive_editable_set(en, EINA_TRUE);
161 efl_ui_text_scrollable_set(en, EINA_TRUE); 165 efl_ui_text_scrollable_set(en, EINA_TRUE);
162 166
163 efl_text_font_set(en, "Sans", 12); 167 efl_text_font_family_set(en, "Sans");
168 efl_text_font_size_set(en, 12);
164 efl_text_font_width_set(en, EFL_TEXT_FONT_WIDTH_ULTRACONDENSED); 169 efl_text_font_width_set(en, EFL_TEXT_FONT_WIDTH_ULTRACONDENSED);
165 efl_text_normal_color_set(en, 255, 255, 255, 255); 170 efl_text_normal_color_set(en, 255, 255, 255, 255);
166 171
@@ -235,162 +240,3 @@ test_efl_ui_text_inputfield(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED
235 efl_gfx_entity_size_set(win, EINA_SIZE2D(300, 200)); 240 efl_gfx_entity_size_set(win, EINA_SIZE2D(300, 200));
236 241
237} 242}
238
239#define IMAGES_SZ 5
240
241static const char *images[IMAGES_SZ] = {
242 "sky", "logo", "dog", "eet_rock", "eet_plant" };
243
244static void
245_on_factory_bt_image_clicked(void *data, const Efl_Event *event EINA_UNUSED)
246{
247 Evas_Object *en = data;
248 static int image_idx = 0;
249
250 image_idx = (image_idx + 1) % IMAGES_SZ;
251 efl_text_cursor_item_insert(en,
252 efl_text_cursor_get(en, EFL_TEXT_CURSOR_GET_TYPE_MAIN),
253 images[image_idx], "size=32x32");
254 printf("Inserted image: key = %s\n", images[image_idx]);
255}
256
257static void
258_on_factory_bt_emoticon_clicked(void *data, const Efl_Event *event EINA_UNUSED)
259{
260 Evas_Object *en = data;
261 efl_text_cursor_item_insert(en, efl_text_cursor_get(en, EFL_TEXT_CURSOR_GET_TYPE_MAIN),
262 "emoticon/evil-laugh", "size=32x32");
263}
264
265static struct
266{
267 const char *name;
268 Eo *item_factory;
269} factories[3];
270
271static void
272_on_factory_bt_factory_clicked(void *data, const Efl_Event *event EINA_UNUSED)
273{
274 Evas_Object *en = data;
275 static int item_factory_idx = 0;
276
277 item_factory_idx = (item_factory_idx + 1) % 3;
278 efl_ui_text_item_factory_set(en, factories[item_factory_idx].item_factory);
279 printf("Factory set to: %s\n", factories[item_factory_idx].name);
280}
281
282#define FACTORY_NONE 0
283#define FACTORY_IMAGE 1
284#define FACTORY_EMOTICON 2
285
286void
287test_ui_text_item_factory(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void *event_info EINA_UNUSED)
288{
289 Evas_Object *win, *bx, *bx2, *bt, *en;
290 Efl_Text_Cursor_Cursor *main_cur, *cur;
291 char buf[128];
292 Eina_File *f;
293
294 win = efl_add(EFL_UI_WIN_CLASS, efl_main_loop_get(),
295 efl_text_set(efl_added, "Efl Ui Text Item Factory"),
296 efl_ui_win_autodel_set(efl_added, EINA_TRUE));
297
298 bx = efl_add(EFL_UI_BOX_CLASS, win);
299 efl_content_set(win, bx);