summaryrefslogtreecommitdiff
path: root/src/lib
diff options
context:
space:
mode:
Diffstat (limited to 'src/lib')
-rw-r--r--src/lib/ecore/Ecore_Common.h2
-rw-r--r--src/lib/ecore/Ecore_Eo.h1
-rw-r--r--src/lib/ecore/Ecore_Legacy.h4
-rw-r--r--src/lib/ecore/ecore.c6
-rw-r--r--src/lib/ecore/ecore_exe.c2
-rw-r--r--src/lib/ecore/ecore_exe.eo87
-rw-r--r--src/lib/ecore/ecore_exe_eo.c57
-rw-r--r--src/lib/ecore/ecore_exe_eo.h121
-rw-r--r--src/lib/ecore/ecore_exe_eo.legacy.h71
-rw-r--r--src/lib/ecore/ecore_private.h2
-rw-r--r--src/lib/ecore/ecore_timer.c1
-rw-r--r--src/lib/ecore/efl_app.eo2
-rw-r--r--src/lib/ecore/efl_composite_model.c140
-rw-r--r--src/lib/ecore/efl_composite_model.eo1
-rw-r--r--src/lib/ecore/efl_container_model.c291
-rw-r--r--src/lib/ecore/efl_container_model.eo16
-rw-r--r--src/lib/ecore/efl_container_model_item.c164
-rw-r--r--src/lib/ecore/efl_container_model_item.eo34
-rw-r--r--src/lib/ecore/efl_container_model_private.h33
-rw-r--r--src/lib/ecore/efl_core_env.c2
-rw-r--r--src/lib/ecore/efl_core_proc_env.c2
-rw-r--r--src/lib/ecore/efl_exe.c6
-rw-r--r--src/lib/ecore/efl_io_file.c30
-rw-r--r--src/lib/ecore/efl_io_file.eo1
-rw-r--r--src/lib/ecore/efl_loop.eo2
-rw-r--r--src/lib/ecore/efl_loop_consumer.eo2
-rw-r--r--src/lib/ecore/efl_loop_timer.eo1
-rw-r--r--src/lib/ecore/efl_loop_timer_eo.legacy.c36
-rw-r--r--src/lib/ecore/efl_loop_timer_eo.legacy.h86
-rw-r--r--src/lib/ecore/efl_task.eo2
-rw-r--r--src/lib/ecore/meson.build24
-rw-r--r--src/lib/ecore_con/Ecore_Con_Eet_Eo.h6
-rw-r--r--src/lib/ecore_con/Ecore_Con_Eet_Legacy.h6
-rw-r--r--src/lib/ecore_con/ecore_con_eet.c6
-rw-r--r--src/lib/ecore_con/ecore_con_eet_base.eo95
-rw-r--r--src/lib/ecore_con/ecore_con_eet_base_eo.c90
-rw-r--r--src/lib/ecore_con/ecore_con_eet_base_eo.h142
-rw-r--r--src/lib/ecore_con/ecore_con_eet_base_eo.legacy.c6
-rw-r--r--src/lib/ecore_con/ecore_con_eet_base_eo.legacy.h43
-rw-r--r--src/lib/ecore_con/ecore_con_eet_client_obj.eo10
-rw-r--r--src/lib/ecore_con/ecore_con_eet_client_obj_eo.c39
-rw-r--r--src/lib/ecore_con/ecore_con_eet_client_obj_eo.h24
-rw-r--r--src/lib/ecore_con/ecore_con_eet_client_obj_eo.legacy.h17
-rw-r--r--src/lib/ecore_con/ecore_con_eet_server_obj.eo10
-rw-r--r--src/lib/ecore_con/ecore_con_eet_server_obj_eo.c39
-rw-r--r--src/lib/ecore_con/ecore_con_eet_server_obj_eo.h24
-rw-r--r--src/lib/ecore_con/ecore_con_eet_server_obj_eo.legacy.h17
-rw-r--r--src/lib/ecore_con/ecore_con_url.c2
-rw-r--r--src/lib/ecore_con/meson.build40
-rw-r--r--src/lib/ecore_file/ecore_file_download.c10
-rw-r--r--src/lib/edje/Edje_Eo.h2
-rw-r--r--src/lib/edje/Edje_Legacy.h6
-rw-r--r--src/lib/edje/edje_box_layout.c2
-rw-r--r--src/lib/edje/edje_calc.c101
-rw-r--r--src/lib/edje/edje_data.c3
-rw-r--r--src/lib/edje/edje_edit.c42
-rw-r--r--src/lib/edje/edje_edit.eo16
-rw-r--r--src/lib/edje/edje_edit_eo.c43
-rw-r--r--src/lib/edje/edje_edit_eo.h28
-rw-r--r--src/lib/edje/edje_edit_eo.legacy.h17
-rw-r--r--src/lib/edje/edje_legacy.c5
-rw-r--r--src/lib/edje/edje_load.c43
-rw-r--r--src/lib/edje/edje_part_box.c8
-rw-r--r--src/lib/edje/edje_part_external.c14
-rw-r--r--src/lib/edje/edje_part_invalid.c1
-rw-r--r--src/lib/edje/edje_part_swallow.c2
-rw-r--r--src/lib/edje/edje_part_table.c8
-rw-r--r--src/lib/edje/edje_private.h8
-rw-r--r--src/lib/edje/edje_smart.c49
-rw-r--r--src/lib/edje/edje_text.c2
-rw-r--r--src/lib/edje/edje_util.c12
-rw-r--r--src/lib/edje/efl_canvas_layout.eo21
-rw-r--r--src/lib/edje/efl_canvas_layout_eo.legacy.c36
-rw-r--r--src/lib/edje/efl_canvas_layout_eo.legacy.h115
-rw-r--r--src/lib/edje/efl_canvas_layout_part_box.eo1
-rw-r--r--src/lib/edje/efl_canvas_layout_part_external.eo3
-rw-r--r--src/lib/edje/efl_canvas_layout_part_invalid.eo1
-rw-r--r--src/lib/edje/efl_canvas_layout_part_table.eo1
-rw-r--r--src/lib/edje/efl_layout_calc.eo3
-rw-r--r--src/lib/edje/efl_layout_group.eo1
-rw-r--r--src/lib/edje/efl_layout_group_eo.legacy.c6
-rw-r--r--src/lib/edje/efl_layout_group_eo.legacy.h48
-rw-r--r--src/lib/edje/meson.build18
-rw-r--r--src/lib/efl/Efl.h6
-rw-r--r--src/lib/efl/Efl_MVVM_Common.h2
-rw-r--r--src/lib/efl/interfaces/efl_canvas_scene.eo12
-rw-r--r--src/lib/efl/interfaces/efl_container.eo7
-rw-r--r--src/lib/efl/interfaces/efl_content.eo3
-rw-r--r--src/lib/efl/interfaces/efl_file.c208
-rw-r--r--src/lib/efl/interfaces/efl_file.eo143
-rw-r--r--src/lib/efl/interfaces/efl_file.h10
-rw-r--r--src/lib/efl/interfaces/efl_file_save.eo12
-rw-r--r--src/lib/efl/interfaces/efl_gfx_entity.eo3
-rw-r--r--src/lib/efl/interfaces/efl_gfx_image.eo8
-rw-r--r--src/lib/efl/interfaces/efl_gfx_image_load_controller.eo2
-rw-r--r--src/lib/efl/interfaces/efl_gfx_stack.eo10
-rw-r--r--src/lib/efl/interfaces/efl_gfx_types.eot28
-rw-r--r--src/lib/efl/interfaces/efl_mvvm_common.c8
-rw-r--r--src/lib/efl/interfaces/efl_text_annotate.eo10
-rw-r--r--src/lib/efl/interfaces/efl_text_cursor.eo33
-rw-r--r--src/lib/efl/interfaces/efl_text_format.eo1
-rw-r--r--src/lib/efl/interfaces/efl_ui_menu.eo1
-rw-r--r--src/lib/efl/interfaces/efl_ui_multi_selectable.eo1
-rw-r--r--src/lib/efl/interfaces/efl_ui_property_bind.eo3
-rw-r--r--src/lib/efl/interfaces/efl_ui_scrollable_interactive.eo13
-rw-r--r--src/lib/efl/interfaces/efl_ui_scrollbar.eo2
-rw-r--r--src/lib/efl/interfaces/efl_ui_zoom.eo1
-rw-r--r--src/lib/efl/interfaces/meson.build14
-rw-r--r--src/lib/efl_mono/efl_custom_exports_mono.c57
-rw-r--r--src/lib/eina/eina_convert.c210
-rw-r--r--src/lib/eina/eina_file_win32.c8
-rw-r--r--src/lib/eina/eina_main.c19
-rw-r--r--src/lib/eina/eina_util.h4
-rw-r--r--src/lib/eina/eina_vpath.c2
-rw-r--r--src/lib/eina/eina_vpath.h3
-rw-r--r--src/lib/eina/eina_vpath_xdg.c4
-rw-r--r--src/lib/eina/meson.build3
-rw-r--r--src/lib/eio/efl_io_model.c2
-rw-r--r--src/lib/eio/eio_dir.c2
-rw-r--r--src/lib/elementary/Efl_Ui.h13
-rw-r--r--src/lib/elementary/Elementary.h7
-rw-r--r--src/lib/elementary/efl_access_object.eo8
-rw-r--r--src/lib/elementary/efl_access_text.eo1
-rw-r--r--src/lib/elementary/efl_page_transition_scroll.c38
-rw-r--r--src/lib/elementary/efl_ui.eot23
-rw-r--r--src/lib/elementary/efl_ui_animation_view.c50
-rw-r--r--src/lib/elementary/efl_ui_animation_view.eo5
-rw-r--r--src/lib/elementary/efl_ui_bg.c76
-rw-r--r--src/lib/elementary/efl_ui_bg.eo6
-rw-r--r--src/lib/elementary/efl_ui_bg_eo.legacy.h17
-rw-r--r--src/lib/elementary/efl_ui_bg_legacy.eo14
-rw-r--r--src/lib/elementary/efl_ui_bg_legacy_eo.c35
-rw-r--r--src/lib/elementary/efl_ui_bg_legacy_eo.h32
-rw-r--r--src/lib/elementary/efl_ui_bg_legacy_eo.legacy.h17
-rw-r--r--src/lib/elementary/efl_ui_box.c8
-rw-r--r--src/lib/elementary/efl_ui_box.eo1
-rw-r--r--src/lib/elementary/efl_ui_box_layout.c344
-rw-r--r--src/lib/elementary/efl_ui_box_private.h2
-rw-r--r--src/lib/elementary/efl_ui_button.c14
-rw-r--r--src/lib/elementary/efl_ui_button.eo5
-rw-r--r--src/lib/elementary/efl_ui_button_eo.legacy.h17
-rw-r--r--src/lib/elementary/efl_ui_button_legacy.eo15
-rw-r--r--src/lib/elementary/efl_ui_button_legacy_eo.c47
-rw-r--r--src/lib/elementary/efl_ui_button_legacy_eo.h30
-rw-r--r--src/lib/elementary/efl_ui_button_legacy_eo.legacy.h17
-rw-r--r--src/lib/elementary/efl_ui_caching_factory.c5
-rw-r--r--src/lib/elementary/efl_ui_calendar.c10
-rw-r--r--src/lib/elementary/efl_ui_calendar.eo4
-rw-r--r--src/lib/elementary/efl_ui_check.c28
-rw-r--r--src/lib/elementary/efl_ui_check.eo3
-rw-r--r--src/lib/elementary/efl_ui_check_eo.legacy.c12
-rw-r--r--src/lib/elementary/efl_ui_check_eo.legacy.h38
-rw-r--r--src/lib/elementary/efl_ui_check_legacy.eo18
-rw-r--r--src/lib/elementary/efl_ui_check_legacy_eo.c47
-rw-r--r--src/lib/elementary/efl_ui_check_legacy_eo.h32
-rw-r--r--src/lib/elementary/efl_ui_check_legacy_eo.legacy.h17
-rw-r--r--src/lib/elementary/efl_ui_clock.c27
-rw-r--r--src/lib/elementary/efl_ui_clock.eo3
-rw-r--r--src/lib/elementary/efl_ui_container_layout.c158
-rw-r--r--src/lib/elementary/efl_ui_container_layout.h42
-rw-r--r--src/lib/elementary/efl_ui_datepicker.c8
-rw-r--r--src/lib/elementary/efl_ui_datepicker.eo2
-rw-r--r--src/lib/elementary/efl_ui_dnd_container.eo2
-rw-r--r--src/lib/elementary/efl_ui_flip.c24
-rw-r--r--src/lib/elementary/efl_ui_flip.eo7
-rw-r--r--src/lib/elementary/efl_ui_flip_eo.legacy.c30
-rw-r--r--src/lib/elementary/efl_ui_flip_eo.legacy.h140
-rw-r--r--src/lib/elementary/efl_ui_flip_legacy.eo9
-rw-r--r--src/lib/elementary/efl_ui_flip_legacy.h70
-rw-r--r--src/lib/elementary/efl_ui_flip_legacy_eo.c35
-rw-r--r--src/lib/elementary/efl_ui_flip_legacy_eo.h26
-rw-r--r--src/lib/elementary/efl_ui_flip_legacy_eo.legacy.h17
-rw-r--r--src/lib/elementary/efl_ui_focus_parent_provider_gen.c4
-rw-r--r--src/lib/elementary/efl_ui_focus_parent_provider_gen.eo27
-rw-r--r--src/lib/elementary/efl_ui_focus_parent_provider_gen_eo.c60
-rw-r--r--src/lib/elementary/efl_ui_focus_parent_provider_gen_eo.h78
-rw-r--r--src/lib/elementary/efl_ui_frame.c9
-rw-r--r--src/lib/elementary/efl_ui_frame.eo3
-rw-r--r--src/lib/elementary/efl_ui_frame_eo.legacy.c30
-rw-r--r--src/lib/elementary/efl_ui_frame_eo.legacy.h78
-rw-r--r--src/lib/elementary/efl_ui_frame_legacy.eo14
-rw-r--r--src/lib/elementary/efl_ui_frame_legacy.h2
-rw-r--r--src/lib/elementary/efl_ui_frame_legacy_eo.c35
-rw-r--r--src/lib/elementary/efl_ui_frame_legacy_eo.h31
-rw-r--r--src/lib/elementary/efl_ui_frame_legacy_eo.legacy.h17
-rw-r--r--src/lib/elementary/efl_ui_grid.c16
-rw-r--r--src/lib/elementary/efl_ui_grid.eo2
-rw-r--r--src/lib/elementary/efl_ui_grid_default_item.c4
-rw-r--r--src/lib/elementary/efl_ui_grid_default_item.eo4
-rw-r--r--src/lib/elementary/efl_ui_image.c325
-rw-r--r--src/lib/elementary/efl_ui_image.eo12
-rw-r--r--src/lib/elementary/efl_ui_image_factory.c5
-rw-r--r--src/lib/elementary/efl_ui_image_legacy.eo9
-rw-r--r--src/lib/elementary/efl_ui_image_legacy_eo.c35
-rw-r--r--src/lib/elementary/efl_ui_image_legacy_eo.h26
-rw-r--r--src/lib/elementary/efl_ui_image_legacy_eo.legacy.h17
-rw-r--r--src/lib/elementary/efl_ui_image_zoomable.c148
-rw-r--r--src/lib/elementary/efl_ui_image_zoomable.eo8
-rw-r--r--src/lib/elementary/efl_ui_image_zoomable_eo.legacy.c12
-rw-r--r--src/lib/elementary/efl_ui_image_zoomable_eo.legacy.h45
-rw-r--r--src/lib/elementary/efl_ui_image_zoomable_legacy.eo9
-rw-r--r--src/lib/elementary/efl_ui_image_zoomable_legacy_eo.c35
-rw-r--r--src/lib/elementary/efl_ui_image_zoomable_legacy_eo.h26
-rw-r--r--src/lib/elementary/efl_ui_image_zoomable_legacy_eo.legacy.h17
-rw-r--r--src/lib/elementary/efl_ui_image_zoomable_pan.eo1
-rw-r--r--src/lib/elementary/efl_ui_internal_text_interactive.c18
-rw-r--r--src/lib/elementary/efl_ui_item.c8
-rw-r--r--src/lib/elementary/efl_ui_item.eo2
-rw-r--r--src/lib/elementary/efl_ui_layout.c357
-rw-r--r--src/lib/elementary/efl_ui_layout.eo80
-rw-r--r--src/lib/elementary/efl_ui_layout_base.eo95
-rw-r--r--src/lib/elementary/efl_ui_layout_factory.c5
-rw-r--r--src/lib/elementary/efl_ui_layout_legacy.eo8
-rw-r--r--src/lib/elementary/efl_ui_layout_legacy_eo.c35
-rw-r--r--src/lib/elementary/efl_ui_layout_legacy_eo.h26
-rw-r--r--src/lib/elementary/efl_ui_layout_legacy_eo.legacy.h17
-rw-r--r--src/lib/elementary/efl_ui_layout_pack.c22
-rw-r--r--src/lib/elementary/efl_ui_layout_part_box.eo1
-rw-r--r--src/lib/elementary/efl_ui_layout_part_table.eo1
-rw-r--r--src/lib/elementary/efl_ui_list.c20
-rw-r--r--src/lib/elementary/efl_ui_list.eo2
-rw-r--r--src/lib/elementary/efl_ui_list_default_item.c4
-rw-r--r--src/lib/elementary/efl_ui_list_empty_item.c4
-rw-r--r--src/lib/elementary/efl_ui_list_view.eo4
-rw-r--r--src/lib/elementary/efl_ui_navigation_bar.c8
-rw-r--r--src/lib/elementary/efl_ui_navigation_bar.eo2
-rw-r--r--src/lib/elementary/efl_ui_navigation_layout.c10
-rw-r--r--src/lib/elementary/efl_ui_navigation_layout.eo2
-rw-r--r--src/lib/elementary/efl_ui_nstate.c6
-rw-r--r--src/lib/elementary/efl_ui_nstate.eo2
-rw-r--r--src/lib/elementary/efl_ui_pager.c28
-rw-r--r--src/lib/elementary/efl_ui_pager.eo2
-rw-r--r--src/lib/elementary/efl_ui_pan.c4
-rw-r--r--src/lib/elementary/efl_ui_panel.c25
-rw-r--r--src/lib/elementary/efl_ui_panel.eo6
-rw-r--r--src/lib/elementary/efl_ui_panes.c15
-rw-r--r--src/lib/elementary/efl_ui_panes.eo5
-rw-r--r--src/lib/elementary/efl_ui_panes_eo.legacy.c12
-rw-r--r--src/lib/elementary/efl_ui_panes_eo.legacy.h49
-rw-r--r--src/lib/elementary/efl_ui_panes_legacy.eo9
-rw-r--r--src/lib/elementary/efl_ui_panes_legacy_eo.c35
-rw-r--r--src/lib/elementary/efl_ui_panes_legacy_eo.h26
-rw-r--r--src/lib/elementary/efl_ui_panes_legacy_eo.legacy.h17
-rw-r--r--src/lib/elementary/efl_ui_popup.c28
-rw-r--r--src/lib/elementary/efl_ui_popup.eo2
-rw-r--r--src/lib/elementary/efl_ui_popup_part_backwall.eo2
-rw-r--r--src/lib/elementary/efl_ui_progressbar.c27
-rw-r--r--src/lib/elementary/efl_ui_progressbar.eo2
-rw-r--r--src/lib/elementary/efl_ui_progressbar_legacy.eo12
-rw-r--r--src/lib/elementary/efl_ui_progressbar_legacy_eo.c47
-rw-r--r--src/lib/elementary/efl_ui_progressbar_legacy_eo.h26
-rw-r--r--src/lib/elementary/efl_ui_progressbar_legacy_eo.legacy.h17
-rw-r--r--src/lib/elementary/efl_ui_radio.c23
-rw-r--r--src/lib/elementary/efl_ui_radio.eo3
-rw-r--r--src/lib/elementary/efl_ui_radio_eo.legacy.c30
-rw-r--r--src/lib/elementary/efl_ui_radio_eo.legacy.h85
-rw-r--r--src/lib/elementary/efl_ui_radio_legacy.eo12
-rw-r--r--src/lib/elementary/efl_ui_radio_legacy_eo.c47
-rw-r--r--src/lib/elementary/efl_ui_radio_legacy_eo.h26
-rw-r--r--src/lib/elementary/efl_ui_radio_legacy_eo.legacy.h17
-rw-r--r--src/lib/elementary/efl_ui_relative_layout.eo2
-rw-r--r--src/lib/elementary/efl_ui_scroll_manager.c13
-rw-r--r--src/lib/elementary/efl_ui_scroll_manager.eo1
-rw-r--r--src/lib/elementary/efl_ui_scroller.c171
-rw-r--r--src/lib/elementary/efl_ui_scroller.eo7
-rw-r--r--src/lib/elementary/efl_ui_selection_manager.c4
-rw-r--r--src/lib/elementary/efl_ui_slider.c22
-rw-r--r--src/lib/elementary/efl_ui_slider.eo5
-rw-r--r--src/lib/elementary/efl_ui_slider_interval.eo3
-rw-r--r--src/lib/elementary/efl_ui_spin.c10
-rw-r--r--src/lib/elementary/efl_ui_spin.eo4
-rw-r--r--src/lib/elementary/efl_ui_spin_button.c21
-rw-r--r--src/lib/elementary/efl_ui_spin_button.eo2
-rw-r--r--src/lib/elementary/efl_ui_stack.c617
-rw-r--r--src/lib/elementary/efl_ui_stack.eo2
-rw-r--r--src/lib/elementary/efl_ui_stack_private.h17
-rw-r--r--src/lib/elementary/efl_ui_tab_bar.c13
-rw-r--r--src/lib/elementary/efl_ui_tab_bar.eo4
-rw-r--r--src/lib/elementary/efl_ui_tab_page.c9
-rw-r--r--src/lib/elementary/efl_ui_tab_page.eo2
-rw-r--r--src/lib/elementary/efl_ui_table.c73
-rw-r--r--src/lib/elementary/efl_ui_table.eo17
-rw-r--r--src/lib/elementary/efl_ui_table_layout.c375
-rw-r--r--src/lib/elementary/efl_ui_table_private.h7
-rw-r--r--src/lib/elementary/efl_ui_tags.c10
-rw-r--r--src/lib/elementary/efl_ui_tags.eo4
-rw-r--r--src/lib/elementary/efl_ui_text.c125
-rw-r--r--src/lib/elementary/efl_ui_text.eo8
-rw-r--r--src/lib/elementary/efl_ui_text_factory_emoticons.c2
-rw-r--r--src/lib/elementary/efl_ui_text_factory_images.c16
-rw-r--r--src/lib/elementary/efl_ui_textpath.c20
-rw-r--r--src/lib/elementary/efl_ui_textpath.eo3
-rw-r--r--src/lib/elementary/efl_ui_textpath_eo.legacy.c30
-rw-r--r--src/lib/elementary/efl_ui_textpath_eo.legacy.h85
-rw-r--r--src/lib/elementary/efl_ui_textpath_legacy.eo9
-rw-r--r--src/lib/elementary/efl_ui_textpath_legacy_eo.c35
-rw-r--r--src/lib/elementary/efl_ui_textpath_legacy_eo.h26
-rw-r--r--src/lib/elementary/efl_ui_textpath_legacy_eo.legacy.h17
-rw-r--r--src/lib/elementary/efl_ui_timepicker.c8
-rw-r--r--src/lib/elementary/efl_ui_timepicker.eo2
-rw-r--r--src/lib/elementary/efl_ui_video.c35
-rw-r--r--src/lib/elementary/efl_ui_video.eo7
-rw-r--r--src/lib/elementary/efl_ui_video_eo.legacy.c24
-rw-r--r--src/lib/elementary/efl_ui_video_eo.legacy.h70
-rw-r--r--src/lib/elementary/efl_ui_video_legacy.eo9
-rw-r--r--src/lib/elementary/efl_ui_video_legacy.h2
-rw-r--r--src/lib/elementary/efl_ui_video_legacy_eo.c35
-rw-r--r--src/lib/elementary/efl_ui_video_legacy_eo.h26
-rw-r--r--src/lib/elementary/efl_ui_video_legacy_eo.legacy.h17
-rw-r--r--src/lib/elementary/efl_ui_widget.c708
-rw-r--r--src/lib/elementary/efl_ui_widget.eo289
-rw-r--r--src/lib/elementary/efl_ui_widget_common.c174
-rw-r--r--src/lib/elementary/efl_ui_widget_common.h35
-rw-r--r--src/lib/elementary/efl_ui_widget_eo.legacy.c90
-rw-r--r--src/lib/elementary/efl_ui_widget_eo.legacy.h334
-rw-r--r--src/lib/elementary/efl_ui_widget_factory.c6
-rw-r--r--src/lib/elementary/efl_ui_widget_part_bg.eo4
-rw-r--r--src/lib/elementary/efl_ui_win.c1042
-rw-r--r--src/lib/elementary/efl_ui_win.eo246
-rw-r--r--src/lib/elementary/efl_ui_win_inlined.c6
-rw-r--r--src/lib/elementary/efl_ui_win_inlined_legacy.eo9
-rw-r--r--src/lib/elementary/efl_ui_win_inlined_legacy_eo.c35
-rw-r--r--src/lib/elementary/efl_ui_win_inlined_legacy_eo.h26
-rw-r--r--src/lib/elementary/efl_ui_win_inlined_legacy_eo.legacy.h17
-rw-r--r--src/lib/elementary/efl_ui_win_legacy.eo9
-rw-r--r--src/lib/elementary/efl_ui_win_legacy_eo.c35
-rw-r--r--src/lib/elementary/efl_ui_win_legacy_eo.h26
-rw-r--r--src/lib/elementary/efl_ui_win_legacy_eo.legacy.h17
-rw-r--r--src/lib/elementary/efl_ui_win_part.eo4
-rw-r--r--src/lib/elementary/efl_ui_win_socket.c6
-rw-r--r--src/lib/elementary/efl_ui_win_socket_legacy.eo9
-rw-r--r--src/lib/elementary/efl_ui_win_socket_legacy_eo.c35
-rw-r--r--src/lib/elementary/efl_ui_win_socket_legacy_eo.h26
-rw-r--r--src/lib/elementary/efl_ui_win_socket_legacy_eo.legacy.h17
-rw-r--r--src/lib/elementary/elc_combobox.c16
-rw-r--r--src/lib/elementary/elc_ctxpopup.c34
-rw-r--r--src/lib/elementary/elc_ctxpopup_legacy.h4
-rw-r--r--src/lib/elementary/elc_fileselector.c22
-rw-r--r--src/lib/elementary/elc_fileselector_button.c16
-rw-r--r--src/lib/elementary/elc_fileselector_button_legacy.h2
-rw-r--r--src/lib/elementary/elc_fileselector_entry.c30
-rw-r--r--src/lib/elementary/elc_fileselector_entry_legacy.h2
-rw-r--r--src/lib/elementary/elc_fileselector_legacy.h4
-rw-r--r--src/lib/elementary/elc_hoversel.c28
-rw-r--r--src/lib/elementary/elc_hoversel_legacy.h4
-rw-r--r--src/lib/elementary/elc_multibuttonentry.c24
-rw-r--r--src/lib/elementary/elc_multibuttonentry.h3
-rw-r--r--src/lib/elementary/elc_multibuttonentry_eo.h4
-rw-r--r--src/lib/elementary/elc_multibuttonentry_legacy.h4
-rw-r--r--src/lib/elementary/elc_naviframe.c12
-rw-r--r--src/lib/elementary/elc_naviframe_legacy.h4
-rw-r--r--src/lib/elementary/elc_player.c8
-rw-r--r--src/lib/elementary/elc_popup.c18
-rw-r--r--src/lib/elementary/elc_popup_legacy.h2
-rw-r--r--src/lib/elementary/elm_access.c6
-rw-r--r--src/lib/elementary/elm_access.eo15
-rw-r--r--src/lib/elementary/elm_access_eo.c51
-rw-r--r--src/lib/elementary/elm_access_eo.h24
-rw-r--r--src/lib/elementary/elm_access_eo.legacy.h17
-rw-r--r--src/lib/elementary/elm_actionslider.c12
-rw-r--r--src/lib/elementary/elm_actionslider.eo80
-rw-r--r--src/lib/elementary/elm_actionslider_eo.c82
-rw-r--r--src/lib/elementary/elm_actionslider_eo.h134
-rw-r--r--src/lib/elementary/elm_actionslider_eo.legacy.c42
-rw-r--r--src/lib/elementary/elm_actionslider_eo.legacy.h113
-rw-r--r--src/lib/elementary/elm_actionslider_legacy.h2
-rw-r--r--src/lib/elementary/elm_atspi_app_object.eo1
-rw-r--r--src/lib/elementary/elm_atspi_app_object.h3
-rw-r--r--src/lib/elementary/elm_atspi_bridge.c212
-rw-r--r--src/lib/elementary/elm_atspi_bridge.eo1
-rw-r--r--src/lib/elementary/elm_atspi_bridge.h3
-rw-r--r--src/lib/elementary/elm_bg_eo.h1
-rw-r--r--src/lib/elementary/elm_bg_legacy.h2
-rw-r--r--src/lib/elementary/elm_box.c12
-rw-r--r--src/lib/elementary/elm_box.eo258
-rw-r--r--src/lib/elementary/elm_box_eo.c199
-rw-r--r--src/lib/elementary/elm_box_eo.h305
-rw-r--r--src/lib/elementary/elm_box_eo.legacy.c102
-rw-r--r--src/lib/elementary/elm_box_eo.legacy.h280
-rw-r--r--src/lib/elementary/elm_box_legacy.h2
-rw-r--r--src/lib/elementary/elm_bubble.c4
-rw-r--r--src/lib/elementary/elm_bubble.eo44
-rw-r--r--src/lib/elementary/elm_bubble_eo.c55
-rw-r--r--src/lib/elementary/elm_bubble_eo.h74
-rw-r--r--src/lib/elementary/elm_bubble_eo.legacy.c12
-rw-r--r--src/lib/elementary/elm_bubble_eo.legacy.h67
-rw-r--r--src/lib/elementary/elm_bubble_legacy.h2
-rw-r--r--src/lib/elementary/elm_button.h3
-rw-r--r--src/lib/elementary/elm_button_legacy.h2
-rw-r--r--src/lib/elementary/elm_calendar.c14
-rw-r--r--src/lib/elementary/elm_calendar.eo426
-rw-r--r--src/lib/elementary/elm_calendar_eo.c212
-rw-r--r--src/lib/elementary/elm_calendar_eo.h574
-rw-r--r--src/lib/elementary/elm_calendar_eo.legacy.c132
-rw-r--r--src/lib/elementary/elm_calendar_eo.legacy.h524
-rw-r--r--src/lib/elementary/elm_calendar_item.eo17
-rw-r--r--src/lib/elementary/elm_calendar_item_eo.c85
-rw-r--r--src/lib/elementary/elm_calendar_item_eo.h45
-rw-r--r--src/lib/elementary/elm_calendar_item_eo.legacy.h19
-rw-r--r--src/lib/elementary/elm_calendar_legacy.h2
-rw-r--r--src/lib/elementary/elm_check.h1
-rw-r--r--src/lib/elementary/elm_check_legacy.h4
-rw-r--r--src/lib/elementary/elm_clock.c8
-rw-r--r--src/lib/elementary/elm_clock.eo172
-rw-r--r--src/lib/elementary/elm_clock_eo.c249
-rw-r--r--src/lib/elementary/elm_clock_eo.h305
-rw-r--r--src/lib/elementary/elm_clock_eo.legacy.c84
-rw-r--r--src/lib/elementary/elm_clock_eo.legacy.h281
-rw-r--r--src/lib/elementary/elm_clock_legacy.h2
-rw-r--r--src/lib/elementary/elm_code_diff_widget.c10
-rw-r--r--src/lib/elementary/elm_code_widget.c89
-rw-r--r--src/lib/elementary/elm_code_widget.eo24
-rw-r--r--src/lib/elementary/elm_code_widget_eo.legacy.c270
-rw-r--r--src/lib/elementary/elm_code_widget_eo.legacy.h550
-rw-r--r--src/lib/elementary/elm_code_widget_legacy.eo5
-rw-r--r--src/lib/elementary/elm_code_widget_legacy.h2
-rw-r--r--src/lib/elementary/elm_code_widget_legacy_eo.c27
-rw-r--r--src/lib/elementary/elm_code_widget_legacy_eo.h24
-rw-r--r--src/lib/elementary/elm_code_widget_legacy_eo.legacy.h17
-rw-r--r--src/lib/elementary/elm_code_widget_selection.c18
-rw-r--r--src/lib/elementary/elm_code_widget_text.c12
-rw-r--r--src/lib/elementary/elm_code_widget_undo.c4
-rw-r--r--src/lib/elementary/elm_color_class.c2
-rw-r--r--src/lib/elementary/elm_color_item.eo53
-rw-r--r--src/lib/elementary/elm_color_item_eo.c137
-rw-r--r--src/lib/elementary/elm_color_item_eo.h75
-rw-r--r--src/lib/elementary/elm_color_item_eo.legacy.c24
-rw-r--r--src/lib/elementary/elm_color_item_eo.legacy.h68
-rw-r--r--src/lib/elementary/elm_colorselector.c16
-rw-r--r--src/lib/elementary/elm_colorselector.eo126
-rw-r--r--src/lib/elementary/elm_colorselector_eo.c151
-rw-r--r--src/lib/elementary/elm_colorselector_eo.h203
-rw-r--r--src/lib/elementary/elm_colorselector_eo.legacy.c60
-rw-r--r--src/lib/elementary/elm_colorselector_eo.legacy.h161
-rw-r--r--src/lib/elementary/elm_colorselector_legacy.h2
-rw-r--r--src/lib/elementary/elm_conform.c14
-rw-r--r--src/lib/elementary/elm_conformant.eo19
-rw-r--r--src/lib/elementary/elm_conformant_eo.c51
-rw-r--r--src/lib/elementary/elm_conformant_eo.h56
-rw-r--r--src/lib/elementary/elm_conformant_eo.legacy.h17
-rw-r--r--src/lib/elementary/elm_ctxpopup.eo249
-rw-r--r--src/lib/elementary/elm_ctxpopup_eo.c229
-rw-r--r--src/lib/elementary/elm_ctxpopup_eo.h340
-rw-r--r--src/lib/elementary/elm_ctxpopup_eo.legacy.c114
-rw-r--r--src/lib/elementary/elm_ctxpopup_eo.legacy.h316
-rw-r--r--src/lib/elementary/elm_ctxpopup_item.eo76
-rw-r--r--src/lib/elementary/elm_ctxpopup_item_eo.c142
-rw-r--r--src/lib/elementary/elm_ctxpopup_item_eo.h97
-rw-r--r--src/lib/elementary/elm_ctxpopup_item_eo.legacy.c30
-rw-r--r--src/lib/elementary/elm_ctxpopup_item_eo.legacy.h90
-rw-r--r--src/lib/elementary/elm_dayselector.c10
-rw-r--r--src/lib/elementary/elm_dayselector.eo163
-rw-r--r--src/lib/elementary/elm_dayselector_eo.c131
-rw-r--r--src/lib/elementary/elm_dayselector_eo.h194
-rw-r--r--src/lib/elementary/elm_dayselector_eo.legacy.c60
-rw-r--r--src/lib/elementary/elm_dayselector_eo.legacy.h182
-rw-r--r--src/lib/elementary/elm_dayselector_item.eo8
-rw-r--r--src/lib/elementary/elm_dayselector_item_eo.c35
-rw-r--r--src/lib/elementary/elm_dayselector_item_eo.h24
-rw-r--r--src/lib/elementary/elm_dayselector_item_eo.legacy.h17
-rw-r--r--src/lib/elementary/elm_dayselector_legacy.h2
-rw-r--r--src/lib/elementary/elm_dbus_menu.c2
-rw-r--r--src/lib/elementary/elm_diskselector.c15
-rw-r--r--src/lib/elementary/elm_diskselector.eo213
-rw-r--r--src/lib/elementary/elm_diskselector_eo.c227
-rw-r--r--src/lib/elementary/elm_diskselector_eo.h232
-rw-r--r--src/lib/elementary/elm_diskselector_eo.legacy.c72
-rw-r--r--src/lib/elementary/elm_diskselector_eo.legacy.h223
-rw-r--r--src/lib/elementary/elm_diskselector_item.eo90
-rw-r--r--src/lib/elementary/elm_diskselector_item_eo.c109
-rw-r--r--src/lib/elementary/elm_diskselector_item_eo.h103
-rw-r--r--src/lib/elementary/elm_diskselector_item_eo.legacy.c24
-rw-r--r--src/lib/elementary/elm_diskselector_item_eo.legacy.h96
-rw-r--r--src/lib/elementary/elm_diskselector_legacy.h4
-rw-r--r--src/lib/elementary/elm_entry.c134
-rw-r--r--src/lib/elementary/elm_entry.eo927
-rw-r--r--src/lib/elementary/elm_entry_eo.c1190
-rw-r--r--src/lib/elementary/elm_entry_eo.h1448
-rw-r--r--src/lib/elementary/elm_entry_eo.legacy.c582
-rw-r--r--src/lib/elementary/elm_entry_eo.legacy.h1252
-rw-r--r--src/lib/elementary/elm_entry_legacy.h2
-rw-r--r--src/lib/elementary/elm_fileselector.eo65
-rw-r--r--src/lib/elementary/elm_fileselector_button.eo30
-rw-r--r--src/lib/elementary/elm_fileselector_button_eo.c149
-rw-r--r--src/lib/elementary/elm_fileselector_button_eo.h32
-rw-r--r--src/lib/elementary/elm_fileselector_button_eo.legacy.h17
-rw-r--r--src/lib/elementary/elm_fileselector_entry.eo28
-rw-r--r--src/lib/elementary/elm_fileselector_entry_eo.c91
-rw-r--r--src/lib/elementary/elm_fileselector_entry_eo.h56
-rw-r--r--src/lib/elementary/elm_fileselector_entry_eo.legacy.h17
-rw-r--r--src/lib/elementary/elm_fileselector_eo.c207
-rw-r--r--src/lib/elementary/elm_fileselector_eo.h87
-rw-r--r--src/lib/elementary/elm_fileselector_eo.legacy.c12
-rw-r--r--src/lib/elementary/elm_fileselector_eo.legacy.h47
-rw-r--r--src/lib/elementary/elm_flip.h3
-rw-r--r--src/lib/elementary/elm_flipselector.c16
-rw-r--r--src/lib/elementary/elm_flipselector.eo175
-rw-r--r--src/lib/elementary/elm_flipselector_eo.c159
-rw-r--r--src/lib/elementary/elm_flipselector_eo.h212
-rw-r--r--src/lib/elementary/elm_flipselector_eo.legacy.c60
-rw-r--r--src/lib/elementary/elm_flipselector_eo.legacy.h189
-rw-r--r--src/lib/elementary/elm_flipselector_item.eo55
-rw-r--r--src/lib/elementary/elm_flipselector_item_eo.c105
-rw-r--r--src/lib/elementary/elm_flipselector_item_eo.h87
-rw-r--r--src/lib/elementary/elm_flipselector_item_eo.legacy.c24
-rw-r--r--src/lib/elementary/elm_flipselector_item_eo.legacy.h80
-rw-r--r--src/lib/elementary/elm_flipselector_legacy.h4
-rw-r--r--src/lib/elementary/elm_focus_legacy.c20
-rw-r--r--src/lib/elementary/elm_frame.h3
-rw-r--r--src/lib/elementary/elm_general.h92
-rw-r--r--src/lib/elementary/elm_gengrid.c55
-rw-r--r--src/lib/elementary/elm_gengrid.eo553
-rw-r--r--src/lib/elementary/elm_gengrid_eo.c517
-rw-r--r--src/lib/elementary/elm_gengrid_eo.h782
-rw-r--r--src/lib/elementary/elm_gengrid_eo.legacy.c228
-rw-r--r--src/lib/elementary/elm_gengrid_eo.legacy.h627
-rw-r--r--src/lib/elementary/elm_gengrid_item.eo236
-rw-r--r--src/lib/elementary/elm_gengrid_item_eo.c243
-rw-r--r--src/lib/elementary/elm_gengrid_item_eo.h315
-rw-r--r--src/lib/elementary/elm_gengrid_item_eo.legacy.c102
-rw-r--r--src/lib/elementary/elm_gengrid_item_eo.legacy.h308
-rw-r--r--src/lib/elementary/elm_gengrid_legacy.h4
-rw-r--r--src/lib/elementary/elm_gengrid_pan.eo18
-rw-r--r--src/lib/elementary/elm_gengrid_pan_eo.c67
-rw-r--r--src/lib/elementary/elm_gengrid_pan_eo.h24
-rw-r--r--src/lib/elementary/elm_gengrid_pan_eo.legacy.h17
-rw-r--r--src/lib/elementary/elm_genlist.c70
-rw-r--r--src/lib/elementary/elm_genlist.eo598
-rw-r--r--src/lib/elementary/elm_genlist_eo.c686
-rw-r--r--src/lib/elementary/elm_genlist_eo.h1014
-rw-r--r--src/lib/elementary/elm_genlist_eo.legacy.c258
-rw-r--r--src/lib/elementary/elm_genlist_eo.legacy.h704
-rw-r--r--src/lib/elementary/elm_genlist_item.eo437
-rw-r--r--src/lib/elementary/elm_genlist_item_eo.c409
-rw-r--r--src/lib/elementary/elm_genlist_item_eo.h496
-rw-r--r--src/lib/elementary/elm_genlist_item_eo.legacy.c180
-rw-r--r--src/lib/elementary/elm_genlist_item_eo.legacy.h489
-rw-r--r--src/lib/elementary/elm_genlist_legacy.h4
-rw-r--r--src/lib/elementary/elm_genlist_pan.eo24
-rw-r--r--src/lib/elementary/elm_genlist_pan_eo.c67
-rw-r--r--src/lib/elementary/elm_genlist_pan_eo.h24
-rw-r--r--src/lib/elementary/elm_genlist_pan_eo.legacy.h17
-rw-r--r--src/lib/elementary/elm_gesture_layer.c14
-rw-r--r--src/lib/elementary/elm_gesture_layer.eo167
-rw-r--r--src/lib/elementary/elm_gesture_layer_eo.c208
-rw-r--r--src/lib/elementary/elm_gesture_layer_eo.h229
-rw-r--r--src/lib/elementary/elm_gesture_layer_eo.legacy.c72
-rw-r--r--src/lib/elementary/elm_gesture_layer_eo.legacy.h222
-rw-r--r--src/lib/elementary/elm_gesture_layer_legacy.h2
-rw-r--r--src/lib/elementary/elm_glview.c2
-rw-r--r--src/lib/elementary/elm_glview.eo234
-rw-r--r--src/lib/elementary/elm_glview_eo.c105
-rw-r--r--src/lib/elementary/elm_glview_eo.h294
-rw-r--r--src/lib/elementary/elm_glview_eo.legacy.c36
-rw-r--r--src/lib/elementary/elm_glview_eo.legacy.h216
-rw-r--r--src/lib/elementary/elm_glview_legacy.h2
-rw-r--r--src/lib/elementary/elm_grid.c10
-rw-r--r--src/lib/elementary/elm_grid.eo63
-rw-r--r--src/lib/elementary/elm_grid_eo.c75
-rw-r--r--src/lib/elementary/elm_grid_eo.h96
-rw-r--r--src/lib/elementary/elm_grid_eo.legacy.c36
-rw-r--r--src/lib/elementary/elm_grid_eo.legacy.h89
-rw-r--r--src/lib/elementary/elm_grid_legacy.h2
-rw-r--r--src/lib/elementary/elm_hover.c10
-rw-r--r--src/lib/elementary/elm_hover.eo80
-rw-r--r--src/lib/elementary/elm_hover_eo.c105
-rw-r--r--src/lib/elementary/elm_hover_eo.h112
-rw-r--r--src/lib/elementary/elm_hover_eo.legacy.c24
-rw-r--r--src/lib/elementary/elm_hover_eo.legacy.h88
-rw-r--r--src/lib/elementary/elm_hover_legacy.h2
-rw-r--r--src/lib/elementary/elm_hoversel.eo113
-rw-r--r--src/lib/elementary/elm_hoversel_eo.c198
-rw-r--r--src/lib/elementary/elm_hoversel_eo.h206
-rw-r--r--src/lib/elementary/elm_hoversel_eo.legacy.c72
-rw-r--r--src/lib/elementary/elm_hoversel_eo.legacy.h165
-rw-r--r--src/lib/elementary/elm_hoversel_item.eo33
-rw-r--r--src/lib/elementary/elm_hoversel_item_eo.c83
-rw-r--r--src/lib/elementary/elm_hoversel_item_eo.h58
-rw-r--r--src/lib/elementary/elm_hoversel_item_eo.legacy.c12
-rw-r--r--src/lib/elementary/elm_hoversel_item_eo.legacy.h51
-rw-r--r--src/lib/elementary/elm_icon.c40
-rw-r--r--src/lib/elementary/elm_icon.eo19
-rw-r--r--src/lib/elementary/elm_icon_eo.c47
-rw-r--r--src/lib/elementary/elm_icon_eo.h40
-rw-r--r--src/lib/elementary/elm_icon_eo.legacy.h17
-rw-r--r--src/lib/elementary/elm_icon_legacy.h2
-rw-r--r--src/lib/elementary/elm_image.h3
-rw-r--r--src/lib/elementary/elm_index.c12
-rw-r--r--src/lib/elementary/elm_index.eo211
-rw-r--r--src/lib/elementary/elm_index_eo.c327
-rw-r--r--src/lib/elementary/elm_index_eo.h382
-rw-r--r--src/lib/elementary/elm_index_eo.legacy.c126
-rw-r--r--src/lib/elementary/elm_index_eo.legacy.h341
-rw-r--r--src/lib/elementary/elm_index_item.eo50
-rw-r--r--src/lib/elementary/elm_index_item_eo.c109
-rw-r--r--src/lib/elementary/elm_index_item_eo.h71
-rw-r--r--src/lib/elementary/elm_index_item_eo.legacy.c18
-rw-r--r--src/lib/elementary/elm_index_item_eo.legacy.h64
-rw-r--r--src/lib/elementary/elm_index_legacy.h4
-rw-r--r--src/lib/elementary/elm_interface_fileselector.c5
-rw-r--r--src/lib/elementary/elm_interface_fileselector.eo173
-rw-r--r--src/lib/elementary/elm_interface_fileselector.h5
-rw-r--r--src/lib/elementary/elm_interface_fileselector_eo.c236
-rw-r--r--src/lib/elementary/elm_interface_fileselector_eo.h326
-rw-r--r--src/lib/elementary/elm_interface_fileselector_eo.legacy.h73
-rw-r--r--src/lib/elementary/elm_interface_scrollable.c3
-rw-r--r--src/lib/elementary/elm_interface_scrollable.h5
-rw-r--r--src/lib/elementary/elm_inwin.c4
-rw-r--r--src/lib/elementary/elm_inwin.eo28
-rw-r--r--src/lib/elementary/elm_inwin_eo.c58
-rw-r--r--src/lib/elementary/elm_inwin_eo.h40
-rw-r--r--src/lib/elementary/elm_inwin_eo.legacy.c6
-rw-r--r--src/lib/elementary/elm_inwin_eo.legacy.h33
-rw-r--r--src/lib/elementary/elm_inwin_legacy.h2
-rw-r--r--src/lib/elementary/elm_label.c10
-rw-r--r--src/lib/elementary/elm_label.eo133
-rw-r--r--src/lib/elementary/elm_label_eo.c219
-rw-r--r--src/lib/elementary/elm_label_eo.h258
-rw-r--r--src/lib/elementary/elm_label_eo.legacy.c78
-rw-r--r--src/lib/elementary/elm_label_eo.legacy.h243
-rw-r--r--src/lib/elementary/elm_label_legacy.h2
-rw-r--r--src/lib/elementary/elm_layout.h3
-rw-r--r--src/lib/elementary/elm_list.c46
-rw-r--r--src/lib/elementary/elm_list.eo439
-rw-r--r--src/lib/elementary/elm_list_eo.c368
-rw-r--r--src/lib/elementary/elm_list_eo.h640
-rw-r--r--src/lib/elementary/elm_list_eo.legacy.c150
-rw-r--r--src/lib/elementary/elm_list_eo.legacy.h547
-rw-r--r--src/lib/elementary/elm_list_item.eo123
-rw-r--r--src/lib/elementary/elm_list_item_eo.c195
-rw-r--r--src/lib/elementary/elm_list_item_eo.h148
-rw-r--r--src/lib/elementary/elm_list_item_eo.legacy.c54
-rw-r--r--src/lib/elementary/elm_list_item_eo.legacy.h141
-rw-r--r--src/lib/elementary/elm_list_legacy.h4
-rw-r--r--src/lib/elementary/elm_main.c88
-rw-r--r--src/lib/elementary/elm_map.c61
-rw-r--r--src/lib/elementary/elm_map.eo532
-rw-r--r--src/lib/elementary/elm_map_eo.c365
-rw-r--r--src/lib/elementary/elm_map_eo.h731
-rw-r--r--src/lib/elementary/elm_map_eo.legacy.c192
-rw-r--r--src/lib/elementary/elm_map_eo.legacy.h616
-rw-r--r--src/lib/elementary/elm_map_legacy.h2
-rw-r--r--src/lib/elementary/elm_map_pan.eo34
-rw-r--r--src/lib/elementary/elm_map_pan_eo.c67
-rw-r--r--src/lib/elementary/elm_map_pan_eo.h24
-rw-r--r--src/lib/elementary/elm_map_pan_eo.legacy.h17
-rw-r--r--src/lib/elementary/elm_mapbuf.c13
-rw-r--r--src/lib/elementary/elm_mapbuf.eo128
-rw-r--r--src/lib/elementary/elm_mapbuf_eo.c230
-rw-r--r--src/lib/elementary/elm_mapbuf_eo.h188
-rw-r--r--src/lib/elementary/elm_mapbuf_eo.legacy.c60
-rw-r--r--src/lib/elementary/elm_mapbuf_eo.legacy.h181
-rw-r--r--src/lib/elementary/elm_mapbuf_legacy.h2
-rw-r--r--src/lib/elementary/elm_menu.c20
-rw-r--r--src/lib/elementary/elm_menu.eo106
-rw-r--r--src/lib/elementary/elm_menu_eo.c132
-rw-r--r--src/lib/elementary/elm_menu_eo.h158
-rw-r--r--src/lib/elementary/elm_menu_eo.legacy.c54
-rw-r--r--src/lib/elementary/elm_menu_eo.legacy.h127
-rw-r--r--src/lib/elementary/elm_menu_item.eo121
-rw-r--r--src/lib/elementary/elm_menu_item_eo.c205
-rw-r--r--src/lib/elementary/elm_menu_item_eo.h175
-rw-r--r--src/lib/elementary/elm_menu_item_eo.legacy.c66
-rw-r--r--src/lib/elementary/elm_menu_item_eo.legacy.h168
-rw-r--r--src/lib/elementary/elm_menu_legacy.h4
-rw-r--r--src/lib/elementary/elm_multibuttonentry.eo199
-rw-r--r--src/lib/elementary/elm_multibuttonentry_eo.c224
-rw-r--r--src/lib/elementary/elm_multibuttonentry_eo.h346
-rw-r--r--src/lib/elementary/elm_multibuttonentry_eo.legacy.c108
-rw-r--r--src/lib/elementary/elm_multibuttonentry_eo.legacy.h269
-rw-r--r--src/lib/elementary/elm_multibuttonentry_item.eo38
-rw-r--r--src/lib/elementary/elm_multibuttonentry_item_eo.c121
-rw-r--r--src/lib/elementary/elm_multibuttonentry_item_eo.h67
-rw-r--r--src/lib/elementary/elm_multibuttonentry_item_eo.legacy.c24
-rw-r--r--src/lib/elementary/elm_multibuttonentry_item_eo.legacy.h60
-rw-r--r--src/lib/elementary/elm_naviframe.eo162
-rw-r--r--src/lib/elementary/elm_naviframe_eo.c233
-rw-r--r--src/lib/elementary/elm_naviframe_eo.h289
-rw-r--r--src/lib/elementary/elm_naviframe_eo.legacy.c84
-rw-r--r--src/lib/elementary/elm_naviframe_eo.legacy.h246
-rw-r--r--src/lib/elementary/elm_naviframe_item.eo78
-rw-r--r--src/lib/elementary/elm_naviframe_item_eo.c102
-rw-r--r--src/lib/elementary/elm_naviframe_item_eo.h99
-rw-r--r--src/lib/elementary/elm_naviframe_item_eo.legacy.c30
-rw-r--r--src/lib/elementary/elm_naviframe_item_eo.legacy.h92
-rw-r--r--src/lib/elementary/elm_notify.c12
-rw-r--r--src/lib/elementary/elm_notify.eo98
-rw-r--r--src/lib/elementary/elm_notify_eo.c179
-rw-r--r--src/lib/elementary/elm_notify_eo.h145
-rw-r--r--src/lib/elementary/elm_notify_eo.legacy.c42
-rw-r--r--src/lib/elementary/elm_notify_eo.legacy.h114
-rw-r--r--src/lib/elementary/elm_notify_legacy.h2
-rw-r--r--src/lib/elementary/elm_object_item.h2
-rw-r--r--src/lib/elementary/elm_pan.eo58
-rw-r--r--src/lib/elementary/elm_pan_eo.c76
-rw-r--r--src/lib/elementary/elm_pan_eo.h87
-rw-r--r--src/lib/elementary/elm_pan_eo.legacy.c30
-rw-r--r--src/lib/elementary/elm_pan_eo.legacy.h72
-rw-r--r--src/lib/elementary/elm_panel.c27
-rw-r--r--src/lib/elementary/elm_panel.eo94
-rw-r--r--src/lib/elementary/elm_panel_eo.c210
-rw-r--r--src/lib/elementary/elm_panel_eo.h140
-rw-r--r--src/lib/elementary/elm_panel_eo.legacy.c54
-rw-r--r--src/lib/elementary/elm_panel_eo.legacy.h125
-rw-r--r--src/lib/elementary/elm_panel_legacy.h2
-rw-r--r--src/lib/elementary/elm_panes.h4
-rw-r--r--src/lib/elementary/elm_panes_legacy.h2
-rw-r--r--src/lib/elementary/elm_photo.c86
-rw-r--r--src/lib/elementary/elm_photo.eo15
-rw-r--r--src/lib/elementary/elm_photo_eo.c79
-rw-r--r--src/lib/elementary/elm_photo_eo.h24
-rw-r--r--src/lib/elementary/elm_photo_eo.legacy.h17
-rw-r--r--src/lib/elementary/elm_photo_legacy.h2
-rw-r--r--src/lib/elementary/elm_photocam.h3
-rw-r--r--src/lib/elementary/elm_photocam_legacy.h20
-rw-r--r--src/lib/elementary/elm_player.eo28
-rw-r--r--src/lib/elementary/elm_player_eo.c73
-rw-r--r--src/lib/elementary/elm_player_eo.h112
-rw-r--r--src/lib/elementary/elm_player_eo.legacy.h17
-rw-r--r--src/lib/elementary/elm_plug.c8
-rw-r--r--src/lib/elementary/elm_plug.eo43
-rw-r--r--src/lib/elementary/elm_plug_eo.c59
-rw-r--r--src/lib/elementary/elm_plug_eo.h73
-rw-r--r--src/lib/elementary/elm_plug_eo.legacy.c12
-rw-r--r--src/lib/elementary/elm_plug_eo.legacy.h49
-rw-r--r--src/lib/elementary/elm_plug_legacy.h2
-rw-r--r--src/lib/elementary/elm_popup.eo190
-rw-r--r--src/lib/elementary/elm_popup_eo.c243
-rw-r--r--src/lib/elementary/elm_popup_eo.h288
-rw-r--r--src/lib/elementary/elm_popup_eo.legacy.c84
-rw-r--r--src/lib/elementary/elm_popup_eo.legacy.h239
-rw-r--r--src/lib/elementary/elm_popup_item.eo15
-rw-r--r--src/lib/elementary/elm_popup_item_eo.c67
-rw-r--r--src/lib/elementary/elm_popup_item_eo.h24
-rw-r--r--src/lib/elementary/elm_popup_item_eo.legacy.h17
-rw-r--r--src/lib/elementary/elm_prefs.c4
-rw-r--r--src/lib/elementary/elm_prefs.eo227
-rw-r--r--src/lib/elementary/elm_prefs_eo.c159
-rw-r--r--src/lib/elementary/elm_prefs_eo.h381
-rw-r--r--src/lib/elementary/elm_prefs_eo.legacy.c96
-rw-r--r--src/lib/elementary/elm_prefs_eo.legacy.h329
-rw-r--r--src/lib/elementary/elm_prefs_legacy.h2
-rw-r--r--src/lib/elementary/elm_priv.h100
-rw-r--r--src/lib/elementary/elm_progressbar.h3
-rw-r--r--src/lib/elementary/elm_radio.h4
-rw-r--r--src/lib/elementary/elm_radio_legacy.h2
-rw-r--r--src/lib/elementary/elm_route.c8
-rw-r--r--src/lib/elementary/elm_route.eo47
-rw-r--r--src/lib/elementary/elm_route_eo.c56
-rw-r--r--src/lib/elementary/elm_route_eo.h60
-rw-r--r--src/lib/elementary/elm_route_eo.legacy.c18
-rw-r--r--src/lib/elementary/elm_route_eo.legacy.h53
-rw-r--r--src/lib/elementary/elm_route_legacy.h2
-rw-r--r--src/lib/elementary/elm_scroller.c18
-rw-r--r--src/lib/elementary/elm_scroller.eo78
-rw-r--r--src/lib/elementary/elm_scroller_eo.c150
-rw-r--r--src/lib/elementary/elm_scroller_eo.h183
-rw-r--r--src/lib/elementary/elm_scroller_eo.legacy.c18
-rw-r--r--src/lib/elementary/elm_scroller_eo.legacy.h56
-rw-r--r--src/lib/elementary/elm_scroller_legacy.h2
-rw-r--r--src/lib/elementary/elm_segment_control.c25
-rw-r--r--src/lib/elementary/elm_segment_control.eo147
-rw-r--r--src/lib/elementary/elm_segment_control_eo.c95
-rw-r--r--src/lib/elementary/elm_segment_control_eo.h186
-rw-r--r--src/lib/elementary/elm_segment_control_eo.legacy.c48
-rw-r--r--src/lib/elementary/elm_segment_control_eo.legacy.h170
-rw-r--r--src/lib/elementary/elm_segment_control_item.eo47
-rw-r--r--src/lib/elementary/elm_segment_control_item_eo.c84
-rw-r--r--src/lib/elementary/elm_segment_control_item_eo.h72
-rw-r--r--src/lib/elementary/elm_segment_control_item_eo.legacy.c18
-rw-r--r--src/lib/elementary/elm_segment_control_item_eo.legacy.h65
-rw-r--r--src/lib/elementary/elm_segment_control_legacy.h4
-rw-r--r--src/lib/elementary/elm_separator.c10
-rw-r--r--src/lib/elementary/elm_separator.eo24
-rw-r--r--src/lib/elementary/elm_separator_eo.c83
-rw-r--r--src/lib/elementary/elm_separator_eo.h45
-rw-r--r--src/lib/elementary/elm_separator_eo.legacy.c12
-rw-r--r--src/lib/elementary/elm_separator_eo.legacy.h38
-rw-r--r--src/lib/elementary/elm_separator_legacy.h2
-rw-r--r--src/lib/elementary/elm_slider.c20
-rw-r--r--src/lib/elementary/elm_slider.eo25
-rw-r--r--src/lib/elementary/elm_slider.h4
-rw-r--r--src/lib/elementary/elm_slider_eo.c87
-rw-r--r--src/lib/elementary/elm_slider_eo.h24
-rw-r--r--src/lib/elementary/elm_slider_eo.legacy.h17
-rw-r--r--src/lib/elementary/elm_slider_part_indicator.eo20
-rw-r--r--src/lib/elementary/elm_slider_part_indicator_eo.c53
-rw-r--r--src/lib/elementary/elm_slider_part_indicator_eo.h45
-rw-r--r--src/lib/elementary/elm_slider_part_indicator_eo.legacy.h19
-rw-r--r--src/lib/elementary/elm_slideshow.c8
-rw-r--r--src/lib/elementary/elm_slideshow.eo316
-rw-r--r--src/lib/elementary/elm_slideshow_eo.c321
-rw-r--r--src/lib/elementary/elm_slideshow_eo.h408
-rw-r--r--src/lib/elementary/elm_slideshow_eo.legacy.c138
-rw-r--r--src/lib/elementary/elm_slideshow_eo.legacy.h382
-rw-r--r--src/lib/elementary/elm_slideshow_item.eo36
-rw-r--r--src/lib/elementary/elm_slideshow_item_eo.c51
-rw-r--r--src/lib/elementary/elm_slideshow_item_eo.h57
-rw-r--r--src/lib/elementary/elm_slideshow_item_eo.legacy.c12
-rw-r--r--src/lib/elementary/elm_slideshow_item_eo.legacy.h50
-rw-r--r--src/lib/elementary/elm_slideshow_legacy.h4
-rw-r--r--src/lib/elementary/elm_spinner.c16
-rw-r--r--src/lib/elementary/elm_spinner.eo195
-rw-r--r--src/lib/elementary/elm_spinner.h3
-rw-r--r--src/lib/elementary/elm_spinner_eo.c335
-rw-r--r--src/lib/elementary/elm_spinner_eo.h350
-rw-r--r--src/lib/elementary/elm_spinner_eo.legacy.c78
-rw-r--r--src/lib/elementary/elm_spinner_eo.legacy.h295
-rw-r--r--src/lib/elementary/elm_spinner_legacy.h2
-rw-r--r--src/lib/elementary/elm_store.c2
-rw-r--r--src/lib/elementary/elm_sys_notify.c10
-rw-r--r--src/lib/elementary/elm_sys_notify.eo96
-rw-r--r--src/lib/elementary/elm_sys_notify.h4
-rw-r--r--src/lib/elementary/elm_sys_notify_dbus.c10
-rw-r--r--src/lib/elementary/elm_sys_notify_dbus.eo15
-rw-r--r--src/lib/elementary/elm_sys_notify_dbus_eo.c51
-rw-r--r--src/lib/elementary/elm_sys_notify_dbus_eo.h24
-rw-r--r--src/lib/elementary/elm_sys_notify_dbus_eo.legacy.h17
-rw-r--r--src/lib/elementary/elm_sys_notify_eo.c76
-rw-r--r--src/lib/elementary/elm_sys_notify_eo.h124
-rw-r--r--src/lib/elementary/elm_sys_notify_eo.legacy.c12
-rw-r--r--src/lib/elementary/elm_sys_notify_eo.legacy.h117
-rw-r--r--src/lib/elementary/elm_sys_notify_interface.c2
-rw-r--r--src/lib/elementary/elm_sys_notify_interface.eo68
-rw-r--r--src/lib/elementary/elm_sys_notify_interface_eo.c39
-rw-r--r--src/lib/elementary/elm_sys_notify_interface_eo.h91
-rw-r--r--src/lib/elementary/elm_sys_notify_interface_eo.legacy.c18
-rw-r--r--src/lib/elementary/elm_sys_notify_interface_eo.legacy.h84
-rw-r--r--src/lib/elementary/elm_systray.c4
-rw-r--r--src/lib/elementary/elm_systray.eo125
-rw-r--r--src/lib/elementary/elm_systray.h2
-rw-r--r--src/lib/elementary/elm_systray_eo.c250
-rw-r--r--src/lib/elementary/elm_systray_eo.h236
-rw-r--r--src/lib/elementary/elm_systray_eo.legacy.c102
-rw-r--r--src/lib/elementary/elm_systray_eo.legacy.h229
-rw-r--r--src/lib/elementary/elm_table.c10
-rw-r--r--src/lib/elementary/elm_table.eo128
-rw-r--r--src/lib/elementary/elm_table_eo.c145
-rw-r--r--src/lib/elementary/elm_table_eo.h185
-rw-r--r--src/lib/elementary/elm_table_eo.legacy.c60
-rw-r--r--src/lib/elementary/elm_table_eo.legacy.h146
-rw-r--r--src/lib/elementary/elm_table_legacy.h2
-rw-r--r--src/lib/elementary/elm_textpath.h4
-rw-r--r--src/lib/elementary/elm_textpath_legacy.h2
-rw-r--r--src/lib/elementary/elm_theme.c19
-rw-r--r--src/lib/elementary/elm_thumb.c104
-rw-r--r--src/lib/elementary/elm_thumb.eo22
-rw-r--r--src/lib/elementary/elm_thumb_eo.c85
-rw-r--r--src/lib/elementary/elm_thumb_eo.h64
-rw-r--r--src/lib/elementary/elm_thumb_eo.legacy.h17
-rw-r--r--src/lib/elementary/elm_thumb_legacy.h2
-rw-r--r--src/lib/elementary/elm_toolbar.c35
-rw-r--r--src/lib/elementary/elm_toolbar.eo379
-rw-r--r--src/lib/elementary/elm_toolbar.h3
-rw-r--r--src/lib/elementary/elm_toolbar_eo.c377
-rw-r--r--src/lib/elementary/elm_toolbar_eo.h546
-rw-r--r--src/lib/elementary/elm_toolbar_eo.legacy.c150
-rw-r--r--src/lib/elementary/elm_toolbar_eo.legacy.h525
-rw-r--r--src/lib/elementary/elm_toolbar_item.eo329
-rw-r--r--src/lib/elementary/elm_toolbar_item_eo.c328
-rw-r--r--src/lib/elementary/elm_toolbar_item_eo.h410
-rw-r--r--src/lib/elementary/elm_toolbar_item_eo.legacy.c144
-rw-r--r--src/lib/elementary/elm_toolbar_item_eo.legacy.h401
-rw-r--r--src/lib/elementary/elm_toolbar_legacy.h4
-rw-r--r--src/lib/elementary/elm_view_form.c8
-rw-r--r--src/lib/elementary/elm_view_form.eo31
-rw-r--r--src/lib/elementary/elm_view_form.h2
-rw-r--r--src/lib/elementary/elm_view_form_eo.c45
-rw-r--r--src/lib/elementary/elm_view_form_eo.h49
-rw-r--r--src/lib/elementary/elm_view_form_eo.legacy.h19
-rw-r--r--src/lib/elementary/elm_view_list.c7
-rw-r--r--src/lib/elementary/elm_view_list.eo65
-rw-r--r--src/lib/elementary/elm_view_list.h2
-rw-r--r--src/lib/elementary/elm_view_list_eo.c62
-rw-r--r--src/lib/elementary/elm_view_list_eo.h97
-rw-r--r--src/lib/elementary/elm_view_list_eo.legacy.h22
-rw-r--r--src/lib/elementary/elm_web.eo450
-rw-r--r--src/lib/elementary/elm_web.h9
-rw-r--r--src/lib/elementary/elm_web2.c2
-rw-r--r--src/lib/elementary/elm_web_eo.c293
-rw-r--r--src/lib/elementary/elm_web_eo.h603
-rw-r--r--src/lib/elementary/elm_web_eo.legacy.c246
-rw-r--r--src/lib/elementary/elm_web_eo.legacy.h594
-rw-r--r--src/lib/elementary/elm_web_legacy.h2
-rw-r--r--src/lib/elementary/elm_widget.h17
-rw-r--r--src/lib/elementary/elm_widget_clock.h2
-rw-r--r--src/lib/elementary/elm_widget_colorselector.h4
-rw-r--r--src/lib/elementary/elm_widget_dayselector.h4
-rw-r--r--src/lib/elementary/elm_widget_entry.h2
-rw-r--r--src/lib/elementary/elm_widget_gengrid.h2
-rw-r--r--src/lib/elementary/elm_widget_glview.h2
-rw-r--r--src/lib/elementary/elm_widget_hover.h2
-rw-r--r--src/lib/elementary/elm_widget_index.h4
-rw-r--r--src/lib/elementary/elm_widget_item.eo547
-rw-r--r--src/lib/elementary/elm_widget_item_container_eo.c33
-rw-r--r--src/lib/elementary/elm_widget_item_container_eo.h31
-rw-r--r--src/lib/elementary/elm_widget_item_container_eo.legacy.h18
-rw-r--r--src/lib/elementary/elm_widget_item_eo.c558
-rw-r--r--src/lib/elementary/elm_widget_item_eo.h883
-rw-r--r--src/lib/elementary/elm_widget_item_eo.legacy.c282
-rw-r--r--src/lib/elementary/elm_widget_item_eo.legacy.h799
-rw-r--r--src/lib/elementary/elm_widget_item_static_focus.c6
-rw-r--r--src/lib/elementary/elm_widget_item_static_focus.eo9
-rw-r--r--src/lib/elementary/elm_widget_item_static_focus_eo.c43
-rw-r--r--src/lib/elementary/elm_widget_item_static_focus_eo.h26
-rw-r--r--src/lib/elementary/elm_widget_item_static_focus_eo.legacy.h17
-rw-r--r--src/lib/elementary/elm_widget_label.h2
-rw-r--r--src/lib/elementary/elm_widget_layout.h5
-rw-r--r--src/lib/elementary/elm_widget_list.h4
-rw-r--r--src/lib/elementary/elm_widget_menu.h6
-rw-r--r--src/lib/elementary/elm_widget_notify.h2
-rw-r--r--src/lib/elementary/elm_widget_panel.h2
-rw-r--r--src/lib/elementary/elm_widget_player.h2
-rw-r--r--src/lib/elementary/elm_widget_plug.h2
-rw-r--r--src/lib/elementary/elm_widget_popup.h6
-rw-r--r--src/lib/elementary/elm_widget_route.h2
-rw-r--r--src/lib/elementary/elm_widget_thumb.h1
-rw-r--r--src/lib/elementary/elm_win.h6
-rw-r--r--src/lib/elementary/elm_win_eo.h8
-rw-r--r--src/lib/elementary/elm_win_legacy.h852
-rw-r--r--src/lib/elementary/els_cursor.c12
-rw-r--r--src/lib/elementary/els_tooltip.c4
-rw-r--r--src/lib/elementary/elu_ews_wm.c2
-rw-r--r--src/lib/elementary/meson.build222
-rw-r--r--src/lib/emotion/Emotion_Legacy.h2
-rw-r--r--src/lib/emotion/efl_canvas_video.eo6
-rw-r--r--src/lib/emotion/efl_canvas_video_eo.legacy.c12
-rw-r--r--src/lib/emotion/efl_canvas_video_eo.legacy.h60
-rw-r--r--src/lib/emotion/emotion_smart.c44
-rw-r--r--src/lib/emotion/meson.build13
-rw-r--r--src/lib/eo/Eo.h2
-rw-r--r--src/lib/eo/efl_class.eo2
-rw-r--r--src/lib/eo/efl_object.eo12
-rw-r--r--src/lib/eo/eo_base_class.c2
-rw-r--r--src/lib/eolian/Eolian.h2
-rw-r--r--src/lib/eolian/database_type.c5
-rw-r--r--src/lib/eolian/database_validate.c36
-rw-r--r--src/lib/eolian/eo_lexer.c2
-rw-r--r--src/lib/eolian/eo_lexer.h2
-rw-r--r--src/lib/eolian/eo_parser.c5
-rw-r--r--src/lib/eolian_cxx/grammar/klass_def.hpp131
-rw-r--r--src/lib/evas/Evas_Internal.h38
-rw-r--r--src/lib/evas/Evas_Legacy.h120
-rw-r--r--src/lib/evas/Evas_Loader.h23
-rw-r--r--src/lib/evas/canvas/efl_canvas_event_grabber.c7
-rw-r--r--src/lib/evas/canvas/efl_canvas_event_grabber.eo3
-rw-r--r--src/lib/evas/canvas/efl_canvas_event_grabber_eo.legacy.c12
-rw-r--r--src/lib/evas/canvas/efl_canvas_event_grabber_eo.legacy.h44
-rw-r--r--src/lib/evas/canvas/efl_canvas_group.eo20
-rw-r--r--src/lib/evas/canvas/efl_canvas_group_eo.legacy.c30
-rw-r--r--src/lib/evas/canvas/efl_canvas_group_eo.legacy.h104
-rw-r--r--src/lib/evas/canvas/efl_canvas_image.c65
-rw-r--r--src/lib/evas/canvas/efl_canvas_image.eo3
-rw-r--r--src/lib/evas/canvas/efl_canvas_image_internal.eo1
-rw-r--r--src/lib/evas/canvas/efl_canvas_object.eo115
-rw-r--r--src/lib/evas/canvas/efl_canvas_object_eo.legacy.c114
-rw-r--r--src/lib/evas/canvas/efl_canvas_object_eo.legacy.h410
-rw-r--r--src/lib/evas/canvas/efl_canvas_proxy.c4
-rw-r--r--src/lib/evas/canvas/efl_canvas_scene3d.c4
-rw-r--r--src/lib/evas/canvas/efl_canvas_text.eo9
-rw-r--r--src/lib/evas/canvas/efl_canvas_text_eo.legacy.c66
-rw-r--r--src/lib/evas/canvas/efl_canvas_text_eo.legacy.h228
-rw-r--r--src/lib/evas/canvas/efl_canvas_vg_container.c1
-rw-r--r--src/lib/evas/canvas/efl_canvas_vg_container.eo1
-rw-r--r--src/lib/evas/canvas/efl_canvas_vg_container_eo.legacy.c12
-rw-r--r--src/lib/evas/canvas/efl_canvas_vg_container_eo.legacy.h40
-rw-r--r--src/lib/evas/canvas/efl_canvas_vg_gradient.eo1
-rw-r--r--src/lib/evas/canvas/efl_canvas_vg_gradient_linear.eo1
-rw-r--r--src/lib/evas/canvas/efl_canvas_vg_gradient_radial.eo1
-rw-r--r--src/lib/evas/canvas/efl_canvas_vg_node.c1
-rw-r--r--src/lib/evas/canvas/efl_canvas_vg_node.eo2
-rw-r--r--src/lib/evas/canvas/efl_canvas_vg_node_eo.legacy.c30
-rw-r--r--src/lib/evas/canvas/efl_canvas_vg_node_eo.legacy.h83
-rw-r--r--src/lib/evas/canvas/efl_canvas_vg_object.c168
-rw-r--r--src/lib/evas/canvas/efl_canvas_vg_object.eo9
-rw-r--r--src/lib/evas/canvas/efl_canvas_vg_object_eo.legacy.c48
-rw-r--r--src/lib/evas/canvas/efl_canvas_vg_object_eo.legacy.h135
-rw-r--r--src/lib/evas/canvas/efl_canvas_vg_shape.c1
-rw-r--r--src/lib/evas/canvas/efl_canvas_vg_shape.eo1
-rw-r--r--src/lib/evas/canvas/efl_canvas_vg_shape_eo.legacy.c36
-rw-r--r--src/lib/evas/canvas/efl_canvas_vg_shape_eo.legacy.h80
-rw-r--r--src/lib/evas/canvas/efl_input_event.c2
-rw-r--r--src/lib/evas/canvas/evas_box.eo669
-rw-r--r--src/lib/evas/canvas/evas_box_eo.c248
-rw-r--r--src/lib/evas/canvas/evas_box_eo.h818
-rw-r--r--src/lib/evas/canvas/evas_box_eo.hh460
-rw-r--r--src/lib/evas/canvas/evas_box_eo.impl.hh478
-rw-r--r--src/lib/evas/canvas/evas_box_eo.legacy.c162
-rw-r--r--src/lib/evas/canvas/evas_box_eo.legacy.h646
-rw-r--r--src/lib/evas/canvas/evas_callbacks.c7
-rw-r--r--src/lib/evas/canvas/evas_canvas.eo978
-rw-r--r--src/lib/evas/canvas/evas_canvas3d_camera.eo2
-rw-r--r--src/lib/evas/canvas/evas_canvas3d_light.eo2
-rw-r--r--src/lib/evas/canvas/evas_canvas3d_material.eo2
-rw-r--r--src/lib/evas/canvas/evas_canvas3d_mesh.c49
-rw-r--r--src/lib/evas/canvas/evas_canvas3d_mesh.eo5
-rw-r--r--src/lib/evas/canvas/evas_canvas3d_scene.eo2
-rw-r--r--src/lib/evas/canvas/evas_canvas3d_texture.c22
-rw-r--r--src/lib/evas/canvas/evas_canvas3d_texture.eo4
-rw-r--r--src/lib/evas/canvas/evas_canvas_eo.c501
-rw-r--r--src/lib/evas/canvas/evas_canvas_eo.h1068
-rw-r--r--src/lib/evas/canvas/evas_canvas_eo.hh413
-rw-r--r--src/lib/evas/canvas/evas_canvas_eo.impl.hh756
-rw-r--r--src/lib/evas/canvas/evas_canvas_eo.legacy.c384
-rw-r--r--src/lib/evas/canvas/evas_canvas_eo.legacy.h1023
-rw-r--r--src/lib/evas/canvas/evas_clip.c39
-rw-r--r--src/lib/evas/canvas/evas_events.c46
-rw-r--r--src/lib/evas/canvas/evas_grid.eo123
-rw-r--r--src/lib/evas/canvas/evas_grid_eo.c95
-rw-r--r--src/lib/evas/canvas/evas_grid_eo.h185
-rw-r--r--src/lib/evas/canvas/evas_grid_eo.hh366
-rw-r--r--src/lib/evas/canvas/evas_grid_eo.impl.hh164
-rw-r--r--src/lib/evas/canvas/evas_grid_eo.legacy.c60
-rw-r--r--src/lib/evas/canvas/evas_grid_eo.legacy.h178
-rw-r--r--src/lib/evas/canvas/evas_image.eo8
-rw-r--r--src/lib/evas/canvas/evas_image_eo.c35
-rw-r--r--src/lib/evas/canvas/evas_image_eo.h24
-rw-r--r--src/lib/evas/canvas/evas_image_eo.hh463
-rw-r--r--src/lib/evas/canvas/evas_image_eo.impl.hh14
-rw-r--r--src/lib/evas/canvas/evas_image_eo.legacy.h17
-rw-r--r--src/lib/evas/canvas/evas_image_legacy.c99
-rw-r--r--src/lib/evas/canvas/evas_image_private.h11
-rw-r--r--src/lib/evas/canvas/evas_line.eo31
-rw-r--r--src/lib/evas/canvas/evas_line_eo.c47
-rw-r--r--src/lib/evas/canvas/evas_line_eo.h53
-rw-r--r--src/lib/evas/canvas/evas_line_eo.hh337
-rw-r--r--src/lib/evas/canvas/evas_line_eo.impl.hh62
-rw-r--r--src/lib/evas/canvas/evas_line_eo.legacy.c12
-rw-r--r--src/lib/evas/canvas/evas_line_eo.legacy.h46
-rw-r--r--src/lib/evas/canvas/evas_main.c105
-rw-r--r--src/lib/evas/canvas/evas_object_box.c2
-rw-r--r--src/lib/evas/canvas/evas_object_grid.c2
-rw-r--r--src/lib/evas/canvas/evas_object_image.c85
-rw-r--r--src/lib/evas/canvas/evas_object_inform.c14
-rw-r--r--src/lib/evas/canvas/evas_object_intercept.c4
-rw-r--r--src/lib/evas/canvas/evas_object_line.c2
-rw-r--r--src/lib/evas/canvas/evas_object_main.c349
-rw-r--r--src/lib/evas/canvas/evas_object_smart.c22
-rw-r--r--src/lib/evas/canvas/evas_object_table.c2
-rw-r--r--src/lib/evas/canvas/evas_object_text.c2
-rw-r--r--src/lib/evas/canvas/evas_object_textblock.c21
-rw-r--r--src/lib/evas/canvas/evas_object_textgrid.c2
-rw-r--r--src/lib/evas/canvas/evas_table.eo211
-rw-r--r--src/lib/evas/canvas/evas_table_eo.c142
-rw-r--r--src/lib/evas/canvas/evas_table_eo.h338
-rw-r--r--src/lib/evas/canvas/evas_table_eo.hh380
-rw-r--r--src/lib/evas/canvas/evas_table_eo.impl.hh260
-rw-r--r--src/lib/evas/canvas/evas_table_eo.legacy.c96
-rw-r--r--src/lib/evas/canvas/evas_table_eo.legacy.h321
-rw-r--r--src/lib/evas/canvas/evas_text.eo287
-rw-r--r--src/lib/evas/canvas/evas_text_eo.c296
-rw-r--r--src/lib/evas/canvas/evas_text_eo.h462
-rw-r--r--src/lib/evas/canvas/evas_text_eo.hh437
-rw-r--r--src/lib/evas/canvas/evas_text_eo.impl.hh466
-rw-r--r--src/lib/evas/canvas/evas_text_eo.legacy.c156
-rw-r--r--src/lib/evas/canvas/evas_text_eo.legacy.h455
-rw-r--r--src/lib/evas/canvas/evas_textblock_legacy.h2
-rw-r--r--src/lib/evas/canvas/evas_textgrid.eo208
-rw-r--r--src/lib/evas/canvas/evas_textgrid_eo.c119
-rw-r--r--src/lib/evas/canvas/evas_textgrid_eo.h259
-rw-r--r--src/lib/evas/canvas/evas_textgrid_eo.hh366
-rw-r--r--src/lib/evas/canvas/evas_textgrid_eo.impl.hh182
-rw-r--r--src/lib/evas/canvas/evas_textgrid_eo.legacy.c60
-rw-r--r--src/lib/evas/canvas/evas_textgrid_eo.legacy.h252
-rw-r--r--src/lib/evas/canvas/evas_vg_private.h4
-rw-r--r--src/lib/evas/canvas/meson.build48
-rw-r--r--src/lib/evas/common/evas_map_image_aa.c25
-rw-r--r--src/lib/evas/include/evas_common_private.h2
-rw-r--r--src/lib/evas/include/evas_private.h34
-rw-r--r--src/lib/evas/vg/evas_vg_cache.c33
-rw-r--r--src/lib/evil/meson.build5
1071 files changed, 81992 insertions, 21535 deletions
diff --git a/src/lib/ecore/Ecore_Common.h b/src/lib/ecore/Ecore_Common.h
index 060ffe82f2..6b0d94974b 100644
--- a/src/lib/ecore/Ecore_Common.h
+++ b/src/lib/ecore/Ecore_Common.h
@@ -1032,7 +1032,7 @@ enum _Ecore_Exe_Win32_Priority
1032}; 1032};
1033typedef enum _Ecore_Exe_Win32_Priority Ecore_Exe_Win32_Priority; 1033typedef enum _Ecore_Exe_Win32_Priority Ecore_Exe_Win32_Priority;
1034 1034
1035#include "ecore_exe.eo.legacy.h" 1035#include "ecore_exe_eo.legacy.h"
1036 1036
1037#define _ECORE_EXE_EO_CLASS_TYPE 1037#define _ECORE_EXE_EO_CLASS_TYPE
1038 1038
diff --git a/src/lib/ecore/Ecore_Eo.h b/src/lib/ecore/Ecore_Eo.h
index 3615219c38..6e872d9d2c 100644
--- a/src/lib/ecore/Ecore_Eo.h
+++ b/src/lib/ecore/Ecore_Eo.h
@@ -116,7 +116,6 @@ EAPI Eo *efl_main_loop_get(void);
116#include "efl_loop_model.eo.h" 116#include "efl_loop_model.eo.h"
117#include "efl_generic_model.eo.h" 117#include "efl_generic_model.eo.h"
118#include "efl_container_model.eo.h" 118#include "efl_container_model.eo.h"
119#include "efl_container_model_item.eo.h"
120#include "efl_composite_model.eo.h" 119#include "efl_composite_model.eo.h"
121#include "efl_boolean_model.eo.h" 120#include "efl_boolean_model.eo.h"
122#include "efl_select_model.eo.h" 121#include "efl_select_model.eo.h"
diff --git a/src/lib/ecore/Ecore_Legacy.h b/src/lib/ecore/Ecore_Legacy.h
index 94c4250d51..9c951f5a93 100644
--- a/src/lib/ecore/Ecore_Legacy.h
+++ b/src/lib/ecore/Ecore_Legacy.h
@@ -295,7 +295,7 @@ EAPI Eina_Bool ecore_timer_freeze_get(Ecore_Timer *timer);
295 */ 295 */
296EAPI void ecore_timer_thaw(Ecore_Timer *timer); 296EAPI void ecore_timer_thaw(Ecore_Timer *timer);
297 297
298#include "efl_loop_timer.eo.legacy.h" 298#include "efl_loop_timer_eo.legacy.h"
299 299
300/** 300/**
301 * @} 301 * @}
@@ -392,7 +392,7 @@ EAPI void *ecore_idle_exiter_del(Ecore_Idle_Exiter *idle_exiter);
392 * @{ 392 * @{
393 */ 393 */
394 394
395#include "ecore_exe.eo.legacy.h" 395#include "ecore_exe_eo.legacy.h"
396 396
397/** 397/**
398 * @} 398 * @}
diff --git a/src/lib/ecore/ecore.c b/src/lib/ecore/ecore.c
index d28de1a955..af81e0751c 100644
--- a/src/lib/ecore/ecore.c
+++ b/src/lib/ecore/ecore.c
@@ -106,8 +106,6 @@ static Eina_Condition _thread_cond;
106static Eina_Lock _thread_feedback_mutex; 106static Eina_Lock _thread_feedback_mutex;
107static Eina_Condition _thread_feedback_cond; 107static Eina_Condition _thread_feedback_cond;
108 108
109Eina_Lock _environ_lock;
110
111static Eina_Lock _thread_id_lock; 109static Eina_Lock _thread_id_lock;
112static int _thread_id = -1; 110static int _thread_id = -1;
113static int _thread_id_max = 0; 111static int _thread_id_max = 0;
@@ -266,8 +264,6 @@ ecore_init(void)
266 goto shutdown_log_dom; 264 goto shutdown_log_dom;
267 } 265 }
268 266
269 eina_lock_new(&_environ_lock);
270
271 efl_object_init(); 267 efl_object_init();
272 268
273 if (getenv("ECORE_FPS_DEBUG")) _ecore_fps_debug = 1; 269 if (getenv("ECORE_FPS_DEBUG")) _ecore_fps_debug = 1;
@@ -471,8 +467,6 @@ ecore_shutdown(void)
471 467
472 efl_object_shutdown(); 468 efl_object_shutdown();
473 469
474 eina_lock_free(&_environ_lock);
475
476 eina_evlog("<RUN", NULL, 0.0, NULL); 470 eina_evlog("<RUN", NULL, 0.0, NULL);
477 eina_shutdown(); 471 eina_shutdown();
478#ifdef _WIN32 472#ifdef _WIN32
diff --git a/src/lib/ecore/ecore_exe.c b/src/lib/ecore/ecore_exe.c
index 674ca51dc6..9bd1dece31 100644
--- a/src/lib/ecore/ecore_exe.c
+++ b/src/lib/ecore/ecore_exe.c
@@ -414,4 +414,4 @@ _ecore_exe_event_add_free(void *data EINA_UNUSED,
414 free(e); 414 free(e);
415} 415}
416 416
417#include "ecore_exe.eo.c" 417#include "ecore_exe_eo.c"
diff --git a/src/lib/ecore/ecore_exe.eo b/src/lib/ecore/ecore_exe.eo
deleted file mode 100644
index 899d8a0443..0000000000
--- a/src/lib/ecore/ecore_exe.eo
+++ /dev/null
@@ -1,87 +0,0 @@
1/* FIXME: The structures are not namespaced correctly. */
2
3struct Ecore.Exe.Event_Data.Line
4{
5 [[A structure which stores information on lines data from a child process.]]
6 line: ptr(char); [[The bytes of a line of buffered data]]
7 size: int; [[The size of the line buffer in bytes]]
8}
9
10/**
11 * @struct _Ecore_Exe_Event_Data
12 * @brief A structure that stores information of data from a child process event.
13 */
14struct Ecore.Exe.Event_Data
15{
16 [[Ecore exe event data structure]]
17 exe: Efl.Object; [[The handle to the process. FIXME: should actually be Ecore.Exe, workaround cyclic]]
18 data: void_ptr; [[The raw binary data from the child process received]]
19 size: int; [[The size of this data in bytes]]
20 lines: ptr(Ecore.Exe.Event_Data.Line); [[An array of line data if line buffered. The last one has its line member set to $NULL]]
21}
22
23enum Ecore.Exe_Flags
24{
25 [[Flags for executing a child with its stdin and/or stdout piped back.]]
26 legacy: ECORE_EXE;
27
28 none = 0, [[No exe flags at all]]
29 pipe_read = 1, [[Exe Pipe Read mask]]
30 pipe_write = 2, [[Exe Pipe Write mask]]
31 pipe_error = 4, [[Exe Pipe error mask]]
32 pipe_read_line_buffered = 8, [[Reads are buffered until a newline and split 1 line per Ecore_Exe_Event_Data_Line]]
33 pipe_error_line_buffered = 16, [[Errors are buffered until a newline and split 1 line per Ecore_Exe_Event_Data_Line]]
34 pipe_auto = 32, [[stdout and stderr are buffered automatically]]
35 respawn = 64, [[FIXME: Exe is restarted if it dies]]
36 use_sh = 128, [[Use /bin/sh to run the command.]]
37 not_leader = 256, [[Do not use setsid() to set the executed process as its own session leader]]
38 term_with_parent = 512, [[Makes child receive SIGTERM when parent dies.]]
39 isolate_io = 1024, [[Try and isolate stdin/out and err of the process so it isn't shared with the parent.]]
40}
41
42class Ecore.Exe extends Efl.Object implements Efl.Control
43{
44 [[Ecore.Exe is responsible for managing portable process spawning.
45
46 With this module you are able to spawn, pause and quit spawned processes.
47 Interaction between your process and those spawned is possible using pipes or signals.
48 ]]
49
50 legacy_prefix: ecore_exe;
51 eo_prefix: ecore_obj_exe;
52 event_prefix: ecore_exe;
53 methods {
54 @property command {
55 [[Controls the command that's executed. FIXME: May need a split/rename.]]
56 set {
57 legacy: null;
58 }
59 get {
60 legacy: null;
61 }
62 values {
63 exe_cmd: string; [[The command to execute.]]
64 flags: Ecore.Exe_Flags; [[The execution flags.]]
65 }
66 }
67 }
68 implements {
69 Efl.Object.destructor;
70 Efl.Object.finalize;
71 Efl.Control.suspend { set; }
72 }
73 constructors {
74 .command;
75 }
76 events {
77 data,get: Ecore.Exe.Event_Data; [[Data received event from the child process]]
78 data,error: Ecore.Exe.Event_Data; [[Error received event from the child process]]
79 }
80}
81
82/* FIXME: Notes:
83 Should run_priority be a class function?
84 Instead of having quit, interrupt, bla bla bla, just have an enum and one function? As it's essentially a signal send.
85
86 Rename the events.
87*/
diff --git a/src/lib/ecore/ecore_exe_eo.c b/src/lib/ecore/ecore_exe_eo.c
new file mode 100644
index 0000000000..6a1775a678
--- /dev/null
+++ b/src/lib/ecore/ecore_exe_eo.c
@@ -0,0 +1,57 @@
1EWAPI const Efl_Event_Description _ECORE_EXE_EVENT_DATA_GET =
2 EFL_EVENT_DESCRIPTION("data,get");
3EWAPI const Efl_Event_Description _ECORE_EXE_EVENT_DATA_ERROR =
4 EFL_EVENT_DESCRIPTION("data,error");
5
6void _ecore_exe_command_set(Eo *obj, Ecore_Exe_Data *pd, const char *exe_cmd, Ecore_Exe_Flags flags);
7
8EOAPI EFL_VOID_FUNC_BODYV(ecore_obj_exe_command_set, EFL_FUNC_CALL(exe_cmd, flags), const char *exe_cmd, Ecore_Exe_Flags flags);
9
10void _ecore_exe_command_get(const Eo *obj, Ecore_Exe_Data *pd, const char **exe_cmd, Ecore_Exe_Flags *flags);
11
12EOAPI EFL_VOID_FUNC_BODYV_CONST(ecore_obj_exe_command_get, EFL_FUNC_CALL(exe_cmd, flags), const char **exe_cmd, Ecore_Exe_Flags *flags);
13
14void _ecore_exe_efl_object_destructor(Eo *obj, Ecore_Exe_Data *pd);
15
16
17Efl_Object *_ecore_exe_efl_object_finalize(Eo *obj, Ecore_Exe_Data *pd);
18
19
20void _ecore_exe_efl_control_suspend_set(Eo *obj, Ecore_Exe_Data *pd, Eina_Bool suspend);
21
22
23static Eina_Bool
24_ecore_exe_class_initializer(Efl_Class *klass)
25{
26 const Efl_Object_Ops *opsp = NULL;
27
28 const Efl_Object_Property_Reflection_Ops *ropsp = NULL;
29
30#ifndef ECORE_EXE_EXTRA_OPS
31#define ECORE_EXE_EXTRA_OPS
32#endif
33
34 EFL_OPS_DEFINE(ops,
35 EFL_OBJECT_OP_FUNC(ecore_obj_exe_command_set, _ecore_exe_command_set),
36 EFL_OBJECT_OP_FUNC(ecore_obj_exe_command_get, _ecore_exe_command_get),
37 EFL_OBJECT_OP_FUNC(efl_destructor, _ecore_exe_efl_object_destructor),
38 EFL_OBJECT_OP_FUNC(efl_finalize, _ecore_exe_efl_object_finalize),
39 EFL_OBJECT_OP_FUNC(efl_control_suspend_set, _ecore_exe_efl_control_suspend_set),
40 ECORE_EXE_EXTRA_OPS
41 );
42 opsp = &ops;
43
44 return efl_class_functions_set(klass, opsp, ropsp);
45}
46
47static const Efl_Class_Description _ecore_exe_class_desc = {
48 EO_VERSION,
49 "Ecore.Exe",
50 EFL_CLASS_TYPE_REGULAR,
51 sizeof(Ecore_Exe_Data),
52 _ecore_exe_class_initializer,
53 NULL,
54 NULL
55};
56
57EFL_DEFINE_CLASS(ecore_exe_class_get, &_ecore_exe_class_desc, EFL_OBJECT_CLASS, EFL_CONTROL_INTERFACE, NULL);
diff --git a/src/lib/ecore/ecore_exe_eo.h b/src/lib/ecore/ecore_exe_eo.h
new file mode 100644
index 0000000000..fa8ecb026a
--- /dev/null
+++ b/src/lib/ecore/ecore_exe_eo.h
@@ -0,0 +1,121 @@
1#ifndef _ECORE_EXE_EO_H_
2#define _ECORE_EXE_EO_H_
3
4#ifndef _ECORE_EXE_EO_CLASS_TYPE
5#define _ECORE_EXE_EO_CLASS_TYPE
6
7typedef Eo Ecore_Exe;
8
9#endif
10
11#ifndef _ECORE_EXE_EO_TYPES
12#define _ECORE_EXE_EO_TYPES
13
14/** A structure which stores information on lines data from a child process.
15 *
16 * @ingroup Ecore_Exe_Event_Data
17 */
18typedef struct _Ecore_Exe_Event_Data_Line
19{
20 char *line; /**< The bytes of a line of buffered data */
21 int size; /**< The size of the line buffer in bytes */
22} Ecore_Exe_Event_Data_Line;
23
24/** Ecore exe event data structure
25 *
26 * @ingroup Ecore_Exe
27 */
28typedef struct _Ecore_Exe_Event_Data
29{
30 Efl_Object *exe; /**< The handle to the process. FIXME: should actually be
31 * Ecore.Exe, workaround cyclic */
32 void *data; /**< The raw binary data from the child process received */
33 int size; /**< The size of this data in bytes */
34 Ecore_Exe_Event_Data_Line *lines; /**< An array of line data if line buffered.
35 * The last one has its line member set to
36 * @c NULL */
37} Ecore_Exe_Event_Data;
38
39/** Flags for executing a child with its stdin and/or stdout piped back.
40 *
41 * @ingroup Ecore
42 */
43typedef enum
44{
45 ECORE_EXE_NONE = 0, /**< No exe flags at all */
46 ECORE_EXE_PIPE_READ = 1, /**< Exe Pipe Read mask */
47 ECORE_EXE_PIPE_WRITE = 2, /**< Exe Pipe Write mask */
48 ECORE_EXE_PIPE_ERROR = 4, /**< Exe Pipe error mask */
49 ECORE_EXE_PIPE_READ_LINE_BUFFERED = 8, /**< Reads are buffered until a newline
50 * and split 1 line per
51 * Ecore_Exe_Event_Data_Line */
52 ECORE_EXE_PIPE_ERROR_LINE_BUFFERED = 16, /**< Errors are buffered until a
53 * newline and split 1 line per
54 * Ecore_Exe_Event_Data_Line */
55 ECORE_EXE_PIPE_AUTO = 32, /**< stdout and stderr are buffered automatically */
56 ECORE_EXE_RESPAWN = 64, /**< FIXME: Exe is restarted if it dies */
57 ECORE_EXE_USE_SH = 128, /**< Use /bin/sh to run the command. */
58 ECORE_EXE_NOT_LEADER = 256, /**< Do not use setsid() to set the executed
59 * process as its own session leader */
60 ECORE_EXE_TERM_WITH_PARENT = 512, /**< Makes child receive SIGTERM when parent
61 * dies. */
62 ECORE_EXE_ISOLATE_IO = 1024 /**< Try and isolate stdin/out and err of the
63 * process so it isn't shared with the parent. */
64} Ecore_Exe_Flags;
65
66
67#endif
68/**
69 * @brief Ecore.Exe is responsible for managing portable process spawning.
70 *
71 * With this module you are able to spawn, pause and quit spawned processes.
72 * Interaction between your process and those spawned is possible using pipes
73 * or signals.
74 *
75 * @ingroup Ecore_Exe
76 */
77#define ECORE_EXE_CLASS ecore_exe_class_get()
78
79EWAPI const Efl_Class *ecore_exe_class_get(void);
80
81/**
82 * @brief Controls the command that's executed. FIXME: May need a split/rename.
83 *
84 * @param[in] obj The object.
85 * @param[in] exe_cmd The command to execute.
86 * @param[in] flags The execution flags.
87 *
88 * @ingroup Ecore_Exe
89 */
90EOAPI void ecore_obj_exe_command_set(Eo *obj, const char *exe_cmd, Ecore_Exe_Flags flags);
91
92/**
93 * @brief Controls the command that's executed. FIXME: May need a split/rename.
94 *
95 * @param[in] obj The object.
96 * @param[out] exe_cmd The command to execute.
97 * @param[out] flags The execution flags.
98 *
99 * @ingroup Ecore_Exe
100 */
101EOAPI void ecore_obj_exe_command_get(const Eo *obj, const char **exe_cmd, Ecore_Exe_Flags *flags);
102
103EWAPI extern const Efl_Event_Description _ECORE_EXE_EVENT_DATA_GET;
104
105/** Data received event from the child process
106 * @return Ecore_Exe_Event_Data
107 *
108 * @ingroup Ecore_Exe
109 */
110#define ECORE_EXE_EVENT_DATA_GET (&(_ECORE_EXE_EVENT_DATA_GET))
111
112EWAPI extern const Efl_Event_Description _ECORE_EXE_EVENT_DATA_ERROR;
113
114/** Error received event from the child process
115 * @return Ecore_Exe_Event_Data
116 *
117 * @ingroup Ecore_Exe
118 */
119#define ECORE_EXE_EVENT_DATA_ERROR (&(_ECORE_EXE_EVENT_DATA_ERROR))
120
121#endif
diff --git a/src/lib/ecore/ecore_exe_eo.legacy.h b/src/lib/ecore/ecore_exe_eo.legacy.h
new file mode 100644
index 0000000000..e4dfca8619
--- /dev/null
+++ b/src/lib/ecore/ecore_exe_eo.legacy.h
@@ -0,0 +1,71 @@
1#ifndef _ECORE_EXE_EO_LEGACY_H_
2#define _ECORE_EXE_EO_LEGACY_H_
3
4#ifndef _ECORE_EXE_EO_CLASS_TYPE
5#define _ECORE_EXE_EO_CLASS_TYPE
6
7typedef Eo Ecore_Exe;
8
9#endif
10
11#ifndef _ECORE_EXE_EO_TYPES
12#define _ECORE_EXE_EO_TYPES
13
14/** A structure which stores information on lines data from a child process.
15 *
16 * @ingroup Ecore_Exe_Event_Data
17 */
18typedef struct _Ecore_Exe_Event_Data_Line
19{
20 char *line; /**< The bytes of a line of buffered data */
21 int size; /**< The size of the line buffer in bytes */
22} Ecore_Exe_Event_Data_Line;
23
24/** Ecore exe event data structure
25 *
26 * @ingroup Ecore_Exe
27 */
28typedef struct _Ecore_Exe_Event_Data
29{
30 Efl_Object *exe; /**< The handle to the process. FIXME: should actually be
31 * Ecore.Exe, workaround cyclic */
32 void *data; /**< The raw binary data from the child process received */
33 int size; /**< The size of this data in bytes */
34 Ecore_Exe_Event_Data_Line *lines; /**< An array of line data if line buffered.
35 * The last one has its line member set to
36 * @c NULL */
37} Ecore_Exe_Event_Data;
38
39/** Flags for executing a child with its stdin and/or stdout piped back.
40 *
41 * @ingroup Ecore
42 */
43typedef enum
44{
45 ECORE_EXE_NONE = 0, /**< No exe flags at all */
46 ECORE_EXE_PIPE_READ = 1, /**< Exe Pipe Read mask */
47 ECORE_EXE_PIPE_WRITE = 2, /**< Exe Pipe Write mask */
48 ECORE_EXE_PIPE_ERROR = 4, /**< Exe Pipe error mask */
49 ECORE_EXE_PIPE_READ_LINE_BUFFERED = 8, /**< Reads are buffered until a newline
50 * and split 1 line per
51 * Ecore_Exe_Event_Data_Line */
52 ECORE_EXE_PIPE_ERROR_LINE_BUFFERED = 16, /**< Errors are buffered until a
53 * newline and split 1 line per
54 * Ecore_Exe_Event_Data_Line */
55 ECORE_EXE_PIPE_AUTO = 32, /**< stdout and stderr are buffered automatically */
56 ECORE_EXE_RESPAWN = 64, /**< FIXME: Exe is restarted if it dies */
57 ECORE_EXE_USE_SH = 128, /**< Use /bin/sh to run the command. */
58 ECORE_EXE_NOT_LEADER = 256, /**< Do not use setsid() to set the executed
59 * process as its own session leader */
60 ECORE_EXE_TERM_WITH_PARENT = 512, /**< Makes child receive SIGTERM when parent
61 * dies. */
62 ECORE_EXE_ISOLATE_IO = 1024 /**< Try and isolate stdin/out and err of the
63 * process so it isn't shared with the parent. */
64} Ecore_Exe_Flags;
65
66
67#endif
68
69
70
71#endif
diff --git a/src/lib/ecore/ecore_private.h b/src/lib/ecore/ecore_private.h
index 7311aefa35..2022526182 100644
--- a/src/lib/ecore/ecore_private.h
+++ b/src/lib/ecore/ecore_private.h
@@ -5,7 +5,7 @@
5 5
6#include "ecore_internal.h" 6#include "ecore_internal.h"
7 7
8#include "ecore_exe.eo.h" 8#include "ecore_exe_eo.h"
9#include "ecore_event_message.eo.h" 9#include "ecore_event_message.eo.h"
10#include "ecore_event_message_handler.eo.h" 10#include "ecore_event_message_handler.eo.h"
11 11
diff --git a/src/lib/ecore/ecore_timer.c b/src/lib/ecore/ecore_timer.c
index 1beae5d0a4..cf9be54239 100644
--- a/src/lib/ecore/ecore_timer.c
+++ b/src/lib/ecore/ecore_timer.c
@@ -670,3 +670,4 @@ _efl_loop_timer_set(Efl_Loop_Timer_Data *timer, double at, double in)
670} 670}
671 671
672#include "efl_loop_timer.eo.c" 672#include "efl_loop_timer.eo.c"
673#include "efl_loop_timer_eo.legacy.c"
diff --git a/src/lib/ecore/efl_app.eo b/src/lib/ecore/efl_app.eo
index 5d5cddd551..d7117ba093 100644
--- a/src/lib/ecore/efl_app.eo
+++ b/src/lib/ecore/efl_app.eo
@@ -1,6 +1,6 @@
1import efl_types; 1import efl_types;
2 2
3abstract @beta Efl.App extends Efl.Loop implements Efl.Core.Command_Line 3abstract Efl.App extends Efl.Loop implements Efl.Core.Command_Line
4{ 4{
5 [[Object representing the application itself]] 5 [[Object representing the application itself]]
6 data: null; 6 data: null;
diff --git a/src/lib/ecore/efl_composite_model.c b/src/lib/ecore/efl_composite_model.c
index 8c511c651e..668b382dfb 100644
--- a/src/lib/ecore/efl_composite_model.c
+++ b/src/lib/ecore/efl_composite_model.c
@@ -16,14 +16,36 @@ typedef struct _Efl_Composite_Model_Data Efl_Composite_Model_Data;
16 16
17struct _Efl_Composite_Model_Data 17struct _Efl_Composite_Model_Data
18{ 18{
19 EINA_RBTREE;
20
21 Efl_Composite_Model *self;
19 Efl_Model *source; 22 Efl_Model *source;
23 Eina_Rbtree *indexed;
20 24
21 unsigned int index; 25 unsigned int index;
22 26
23 Eina_Bool need_index : 1; 27 Eina_Bool need_index : 1;
24 Eina_Bool set_index : 1; 28 Eina_Bool set_index : 1;
29 Eina_Bool inserted : 1;
25}; 30};
26 31
32static Eina_Rbtree_Direction
33_children_indexed_cmp(const Efl_Composite_Model_Data *left,
34 const Efl_Composite_Model_Data *right,
35 void *data EINA_UNUSED)
36{
37 if (left->index < right->index)
38 return EINA_RBTREE_LEFT;
39 return EINA_RBTREE_RIGHT;
40}
41
42static int
43_children_indexed_key(const Efl_Composite_Model_Data *node,
44 const int *key, int length EINA_UNUSED, void *data EINA_UNUSED)
45{
46 return node->index - *key;
47}
48
27static void 49static void
28_efl_composite_model_efl_object_destructor(Eo *obj, Efl_Composite_Model_Data *pd) 50_efl_composite_model_efl_object_destructor(Eo *obj, Efl_Composite_Model_Data *pd)
29{ 51{
@@ -41,15 +63,68 @@ _efl_composite_model_efl_object_destructor(Eo *obj, Efl_Composite_Model_Data *pd
41 efl_destructor(efl_super(obj, EFL_COMPOSITE_MODEL_CLASS)); 63 efl_destructor(efl_super(obj, EFL_COMPOSITE_MODEL_CLASS));
42} 64}
43 65
66static void
67_efl_composite_model_efl_object_invalidate(Eo *obj, Efl_Composite_Model_Data *pd)
68{
69 if (pd->inserted)
70 {
71 Eo *parent;
72
73 parent = efl_parent_get(obj);
74 if (efl_isa(parent, EFL_COMPOSITE_MODEL_CLASS))
75 {
76 Efl_Composite_Model_Data *ppd;
77
78 ppd = efl_data_scope_get(parent, EFL_COMPOSITE_MODEL_CLASS);
79 ppd->indexed = eina_rbtree_inline_remove(ppd->indexed, EINA_RBTREE_GET(pd),
80 EINA_RBTREE_CMP_NODE_CB(_children_indexed_cmp), NULL);
81 pd->inserted = EINA_FALSE;
82 }
83 else
84 {
85 ERR("Unexpected parent change during the life of object: %s this might lead to crash.", efl_debug_name_get(obj));
86 }
87 }
88
89 efl_invalidate(efl_super(obj, EFL_COMPOSITE_MODEL_CLASS));
90}
91
44static Efl_Object * 92static Efl_Object *
45_efl_composite_model_efl_object_finalize(Eo *obj, Efl_Composite_Model_Data *pd) 93_efl_composite_model_efl_object_finalize(Eo *obj, Efl_Composite_Model_Data *pd)
46{ 94{
95 Eo *parent;
96
47 if (pd->source == NULL) 97 if (pd->source == NULL)
48 { 98 {
49 ERR("Source of the composite model wasn't defined at construction time."); 99 ERR("Source of the composite model wasn't defined at construction time.");
50 return NULL; 100 return NULL;
51 } 101 }
52 102
103 pd->self = obj;
104
105 parent = efl_parent_get(obj);
106 if (efl_isa(parent, EFL_COMPOSITE_MODEL_CLASS) && !pd->inserted)
107 {
108 Efl_Composite_Model_Data *ppd = efl_data_scope_get(parent, EFL_COMPOSITE_MODEL_CLASS);
109 Efl_Composite_Model_Data *lookup;
110
111 lookup = (void*) eina_rbtree_inline_lookup(ppd->indexed, &pd->index, sizeof (int),
112 EINA_RBTREE_CMP_KEY_CB(_children_indexed_key), NULL);
113 if (lookup)
114 {
115 // There is already an object at this index, we should not
116 // build anything different than what exist. Returning existing one.
117 return lookup->self;
118 }
119 else
120 {
121 ppd->indexed = eina_rbtree_inline_insert(ppd->indexed, EINA_RBTREE_GET(pd),
122 EINA_RBTREE_CMP_NODE_CB(_children_indexed_cmp), NULL);
123
124 pd->inserted = EINA_TRUE;
125 }
126 }
127
53 return obj; 128 return obj;
54} 129}
55 130
@@ -175,6 +250,7 @@ struct _Efl_Composite_Model_Slice_Request
175 const Efl_Class *self; 250 const Efl_Class *self;
176 Eo *parent; 251 Eo *parent;
177 unsigned int start; 252 unsigned int start;
253 unsigned int dummy_need;
178}; 254};
179 255
180static Eina_Value 256static Eina_Value
@@ -203,6 +279,25 @@ _efl_composite_model_then(Eo *o EINA_UNUSED, void *data, const Eina_Value v)
203 efl_unref(composite); 279 efl_unref(composite);
204 } 280 }
205 281
282 while (req->dummy_need)
283 {
284 Eo *dummy, *dummy_proxy;
285
286 // Create a dummy object and its proxy
287 dummy = efl_add(EFL_GENERIC_MODEL_CLASS, req->parent);
288 dummy_proxy = efl_add_ref(req->self, req->parent,
289 efl_ui_view_model_set(efl_added, dummy),
290 efl_composite_model_index_set(efl_added, req->start + i),
291 efl_loop_model_volatile_make(efl_added));
292 efl_parent_set(dummy, dummy_proxy);
293
294 eina_value_array_append(&r, dummy_proxy);
295 efl_unref(dummy_proxy);
296
297 req->dummy_need--;
298 i++;
299 }
300
206 return r; 301 return r;
207} 302}
208 303
@@ -223,8 +318,47 @@ _efl_composite_model_efl_model_children_slice_get(Eo *obj,
223{ 318{
224 Efl_Composite_Model_Slice_Request *req; 319 Efl_Composite_Model_Slice_Request *req;
225 Eina_Future *f; 320 Eina_Future *f;
321 unsigned int source_count, self_count;
322 unsigned int req_count;
323
324 source_count = efl_model_children_count_get(pd->source);
325 self_count = efl_model_children_count_get(obj);
326
327 if (start + count > source_count &&
328 start + count > self_count)
329 return efl_loop_future_rejected(obj, EFL_MODEL_ERROR_INCORRECT_VALUE);
330
331 if (start > source_count)
332 {
333 Eina_Value r = EINA_VALUE_EMPTY;
334 unsigned int i = 0;
335
336 eina_value_array_setup(&r, EINA_VALUE_TYPE_OBJECT, 4);
337
338 while (count)
339 {
340 Eo *dummy, *dummy_proxy;
341
342 // Create a dummy object and its proxy
343 dummy = efl_add(EFL_GENERIC_MODEL_CLASS, obj);
344 dummy_proxy = efl_add_ref(efl_class_get(obj), obj,
345 efl_ui_view_model_set(efl_added, dummy),
346 efl_composite_model_index_set(efl_added, start + i),
347 efl_loop_model_volatile_make(efl_added));
348 efl_parent_set(dummy, dummy_proxy);
349
350 eina_value_array_append(&r, dummy_proxy);
351 efl_unref(dummy_proxy);
352
353 count--;
354 i++;
355 }
356
357 return efl_loop_future_resolved(obj, r);
358 }
226 359
227 f = efl_model_children_slice_get(pd->source, start, count); 360 req_count = start + count > source_count ? source_count - start : count;
361 f = efl_model_children_slice_get(pd->source, start, req_count);
228 if (!f) return NULL; 362 if (!f) return NULL;
229 363
230 req = malloc(sizeof (Efl_Composite_Model_Slice_Request)); 364 req = malloc(sizeof (Efl_Composite_Model_Slice_Request));
@@ -233,6 +367,10 @@ _efl_composite_model_efl_model_children_slice_get(Eo *obj,
233 req->self = efl_class_get(obj); 367 req->self = efl_class_get(obj);
234 req->parent = efl_ref(obj); 368 req->parent = efl_ref(obj);
235 req->start = start; 369 req->start = start;
370 if (start + count < source_count)
371 req->dummy_need = 0;
372 else
373 req->dummy_need = count - (source_count - start);
236 374
237 return efl_future_then(obj, f, .success_type = EINA_VALUE_TYPE_ARRAY, 375 return efl_future_then(obj, f, .success_type = EINA_VALUE_TYPE_ARRAY,
238 .success = _efl_composite_model_then, 376 .success = _efl_composite_model_then,
diff --git a/src/lib/ecore/efl_composite_model.eo b/src/lib/ecore/efl_composite_model.eo
index 18a60bcd49..34a77fa9dc 100644
--- a/src/lib/ecore/efl_composite_model.eo
+++ b/src/lib/ecore/efl_composite_model.eo
@@ -21,6 +21,7 @@ class @beta Efl.Composite_Model extends Efl.Loop_Model implements Efl.Ui.View
21 } 21 }
22 implements { 22 implements {
23 Efl.Object.destructor; 23 Efl.Object.destructor;
24 Efl.Object.invalidate;
24 Efl.Object.finalize; 25 Efl.Object.finalize;
25 Efl.Ui.View.model { set; get; } 26 Efl.Ui.View.model { set; get; }
26 Efl.Model.property { set; get; } 27 Efl.Model.property { set; get; }
diff --git a/src/lib/ecore/efl_container_model.c b/src/lib/ecore/efl_container_model.c
index 0b6ae9aab1..08c1b65d7b 100644
--- a/src/lib/ecore/efl_container_model.c
+++ b/src/lib/ecore/efl_container_model.c
@@ -8,59 +8,44 @@
8#include <Ecore.h> 8#include <Ecore.h>
9 9
10#include "ecore_internal.h" 10#include "ecore_internal.h"
11#include "efl_composite_model_private.h"
11 12
12#include "efl_container_model_private.h" 13typedef struct _Efl_Container_Property_Data Efl_Container_Property_Data;
14typedef struct _Efl_Container_Model_Data Efl_Container_Model_Data;
13 15
14#define MY_CLASS EFL_CONTAINER_MODEL_CLASS 16struct _Efl_Container_Property_Data
15
16void *
17_value_copy_alloc(void *v, const Eina_Value_Type *type)
18{ 17{
19 if (!v) 18 Eina_Stringshare *name;
20 return v;
21 19
22 if (type == EINA_VALUE_TYPE_STRINGSHARE) 20 const Eina_Value_Type *type;
23 return (void*) eina_stringshare_ref(v); 21 Eina_Array *values;
24 else if (type == EINA_VALUE_TYPE_STRING) 22};
25 return (void*) strdup(v);
26 else
27 {
28 void *ret = malloc(type->value_size);
29 memcpy(ret, v, type->value_size);
30 return ret;
31 }
32}
33 23
34void 24struct _Efl_Container_Model_Data
35_value_free(void *v, const Eina_Value_Type *type)
36{ 25{
37 if (!v) 26 Efl_Container_Model_Data *parent;
38 return;
39 27
40 if (type == EINA_VALUE_TYPE_STRINGSHARE) 28 Eina_Hash *properties; // All properties value for children
41 return eina_stringshare_del(v); 29 unsigned int children_count;
42 else 30};
43 free(v);
44}
45 31
46static void 32static void
47_values_free(Eina_Array *values, const Eina_Value_Type *type) 33_property_values_free(Eina_Array *values)
48{ 34{
49 unsigned int i; 35 Eina_Value *v;
50 void *v; 36
51 Eina_Array_Iterator it; 37 while ((v = eina_array_pop(values)))
52 EINA_ARRAY_ITER_NEXT(values, i, v, it) 38 eina_value_free(v);
53 {
54 _value_free(v, type);
55 }
56 eina_array_free(values); 39 eina_array_free(values);
57} 40}
58 41
59static void 42static void
60_property_data_free_cb(void *data) 43_property_data_free_cb(void *data)
61{ 44{
62 Child_Property_Data *cpd = data; 45 Efl_Container_Property_Data *cpd = data;
63 _values_free(cpd->values, cpd->type); 46
47 eina_stringshare_del(cpd->name);
48 _property_values_free(cpd->values);
64 free(cpd); 49 free(cpd);
65} 50}
66 51
@@ -68,33 +53,38 @@ static Efl_Object *
68_efl_container_model_efl_object_constructor(Eo *obj, 53_efl_container_model_efl_object_constructor(Eo *obj,
69 Efl_Container_Model_Data *sd) 54 Efl_Container_Model_Data *sd)
70{ 55{
71 obj = efl_constructor(efl_super(obj, MY_CLASS)); 56 Eo *parent;
72 if (!obj) 57
73 return NULL; 58 obj = efl_constructor(efl_super(obj, EFL_CONTAINER_MODEL_CLASS));
59 if (!obj) return NULL;
60
61 parent = efl_parent_get(obj);
62 if (efl_isa(parent, EFL_CONTAINER_MODEL_CLASS))
63 sd->parent = efl_data_scope_get(parent, EFL_CONTAINER_MODEL_CLASS);
74 64
75 sd->obj = obj;
76 sd->properties = eina_hash_stringshared_new(_property_data_free_cb); 65 sd->properties = eina_hash_stringshared_new(_property_data_free_cb);
77 66
78 return obj; 67 return obj;
79} 68}
80 69
70static Efl_Object *
71_efl_container_model_efl_object_finalize(Eo *obj, Efl_Container_Model_Data *sd EINA_UNUSED)
72{
73 if (!efl_ui_view_model_get(obj))
74 {
75 // Add a dummy object as source if there isn't any to allow using this class without source.
76 efl_ui_view_model_set(obj, efl_add(EFL_GENERIC_MODEL_CLASS, obj));
77 }
78 return efl_finalize(efl_super(obj, EFL_CONTAINER_MODEL_CLASS));
79}
80
81static void 81static void
82_efl_container_model_efl_object_destructor(Eo *obj, 82_efl_container_model_efl_object_destructor(Eo *obj,
83 Efl_Container_Model_Data *sd) 83 Efl_Container_Model_Data *sd)
84{ 84{
85 Eina_Stringshare *key;
86 Eina_Iterator *it;
87
88 eina_list_free(sd->childrens);
89
90 it = eina_hash_iterator_key_new(sd->properties);
91 EINA_ITERATOR_FOREACH(it, key)
92 eina_stringshare_del(key);
93 eina_iterator_free(it);
94
95 eina_hash_free(sd->properties); 85 eina_hash_free(sd->properties);
96 86
97 efl_destructor(efl_super(obj, MY_CLASS)); 87 efl_destructor(efl_super(obj, EFL_CONTAINER_MODEL_CLASS));
98} 88}
99 89
100static const Eina_Value_Type * 90static const Eina_Value_Type *
@@ -102,7 +92,7 @@ _efl_container_model_child_property_value_type_get(Eo *obj EINA_UNUSED,
102 Efl_Container_Model_Data *sd, 92 Efl_Container_Model_Data *sd,
103 const char *property) 93 const char *property)
104{ 94{
105 Child_Property_Data *cpd; 95 Efl_Container_Property_Data *cpd;
106 Eina_Stringshare *key; 96 Eina_Stringshare *key;
107 97
108 key = eina_stringshare_add(property); 98 key = eina_stringshare_add(property);
@@ -113,22 +103,6 @@ _efl_container_model_child_property_value_type_get(Eo *obj EINA_UNUSED,
113 return cpd->type; 103 return cpd->type;
114} 104}
115 105
116static Eina_Iterator *
117_efl_container_model_child_property_values_get(Eo *obj EINA_UNUSED,
118 Efl_Container_Model_Data *sd,
119 const char *property)
120{
121 Child_Property_Data *cpd;
122 Eina_Stringshare *key;
123
124 key = eina_stringshare_add(property);
125 cpd = eina_hash_find(sd->properties, key);
126 eina_stringshare_del(key);
127
128 if (!cpd) return NULL;
129 return eina_array_iterator_new(cpd->values);
130}
131
132static Eina_Bool 106static Eina_Bool
133_efl_container_model_child_property_add(Eo *obj, 107_efl_container_model_child_property_add(Eo *obj,
134 Efl_Container_Model_Data *sd, 108 Efl_Container_Model_Data *sd,
@@ -137,9 +111,9 @@ _efl_container_model_child_property_add(Eo *obj,
137 Eina_Iterator *values) 111 Eina_Iterator *values)
138{ 112{
139 Eina_Array *arr = NULL; 113 Eina_Array *arr = NULL;
140 void *data = NULL; 114 void *original;
141 Child_Property_Data *cpd = NULL; 115 Efl_Container_Property_Data *cpd = NULL;
142 unsigned int i, in_count, children_count; 116 unsigned int i;
143 Eina_Error err = EFL_MODEL_ERROR_INCORRECT_VALUE; 117 Eina_Error err = EFL_MODEL_ERROR_INCORRECT_VALUE;
144 118
145 name = eina_stringshare_add(name); 119 name = eina_stringshare_add(name);
@@ -154,15 +128,24 @@ _efl_container_model_child_property_add(Eo *obj,
154 arr = eina_array_new(4); 128 arr = eina_array_new(4);
155 if (!arr) goto on_error; 129 if (!arr) goto on_error;
156 130
157 EINA_ITERATOR_FOREACH(values, data) 131 EINA_ITERATOR_FOREACH(values, original)
158 { 132 {
159 void *new_data = _value_copy_alloc(data, type); 133 Eina_Value *copy = eina_value_new(type);
160 if ((data && !new_data) || !eina_array_push(arr, new_data)) 134 Eina_Bool r;
135
136 if (type == EINA_VALUE_TYPE_STRINGSHARE ||
137 type == EINA_VALUE_TYPE_STRING)
138 r = eina_value_set(copy, original);
139 else
140 r = eina_value_pset(copy, original);
141
142 if (!r)
161 { 143 {
162 if (new_data) 144 eina_value_free(copy);
163 _value_free(new_data, type); 145 copy = eina_value_error_new(EINA_ERROR_VALUE_FAILED);
164 goto on_error;
165 } 146 }
147
148 eina_array_push(arr, copy);
166 } 149 }
167 eina_iterator_free(values); 150 eina_iterator_free(values);
168 151
@@ -171,10 +154,11 @@ _efl_container_model_child_property_add(Eo *obj,
171 cpd = eina_hash_find(sd->properties, name); 154 cpd = eina_hash_find(sd->properties, name);
172 if (!cpd) 155 if (!cpd)
173 { 156 {
174 cpd = calloc(1, sizeof(Child_Property_Data)); 157 cpd = calloc(1, sizeof(Efl_Container_Property_Data));
175 if (!cpd) 158 if (!cpd)
176 goto on_error; 159 goto on_error;
177 160
161 cpd->name = eina_stringshare_ref(name);
178 cpd->type = type; 162 cpd->type = type;
179 cpd->values = arr; 163 cpd->values = arr;
180 164
@@ -183,100 +167,147 @@ _efl_container_model_child_property_add(Eo *obj,
183 } 167 }
184 else 168 else
185 { 169 {
186 eina_stringshare_del(name); 170 _property_values_free(cpd->values);
187 _values_free(cpd->values, cpd->type);
188 171
189 cpd->type = type; 172 cpd->type = type;
190 cpd->values = arr; 173 cpd->values = arr;
191 } 174 }
192 175
193 in_count = eina_array_count(arr); 176 for (i = sd->children_count; i < eina_array_count(arr); ++i)
194 children_count = eina_list_count(sd->childrens);
195
196 for (i = children_count; i < in_count; ++i)
197 { 177 {
198 Efl_Model_Children_Event cevt = { 0 }; 178 Efl_Model_Children_Event cevt = { 0 };
199 Efl_Model *child;
200
201 child = efl_add(EFL_CONTAINER_MODEL_ITEM_CLASS, obj,
202 efl_container_model_item_define(efl_added, sd, i));
203 sd->childrens = eina_list_append(sd->childrens, child);
204 179
205 cevt.index = i; 180 cevt.index = i;
206 181
207 efl_event_callback_call(obj, EFL_MODEL_EVENT_CHILD_ADDED, &cevt); 182 efl_event_callback_call(obj, EFL_MODEL_EVENT_CHILD_ADDED, &cevt);
208 } 183 }
209 184
210 if (in_count > children_count) 185 if (eina_array_count(arr) > sd->children_count)
211 efl_event_callback_call(obj, EFL_MODEL_EVENT_CHILDREN_COUNT_CHANGED, NULL); 186 {
187 sd->children_count = eina_array_count(arr);
188 efl_event_callback_call(obj, EFL_MODEL_EVENT_CHILDREN_COUNT_CHANGED, NULL);
189 }
212 190
191 eina_stringshare_del(name);
213 return EINA_TRUE; 192 return EINA_TRUE;
214 193
215 on_error: 194 on_error:
216 eina_stringshare_del(name); 195 eina_stringshare_del(name);
196
217 if (cpd) free(cpd); 197 if (cpd) free(cpd);
218 if (arr) 198 if (arr) _property_values_free(arr);
219 _values_free(arr, type);
220 eina_error_set(err); 199 eina_error_set(err);
221 return EINA_FALSE; 200 return EINA_FALSE;
222} 201}
223 202
224static Eina_Iterator * 203static Eina_Iterator *
225_efl_container_model_efl_model_properties_get(const Eo *obj EINA_UNUSED, Efl_Container_Model_Data *sd) 204_efl_container_model_efl_model_properties_get(const Eo *obj EINA_UNUSED,
205 Efl_Container_Model_Data *sd)
226{ 206{
227 return eina_hash_iterator_key_new(sd->properties); 207 EFL_COMPOSITE_MODEL_PROPERTIES_SUPER(props,
208 obj, EFL_CONTAINER_MODEL_CLASS,
209 eina_hash_iterator_key_new(sd->parent->properties));
210 return props;
228} 211}
229 212
230static Eina_Future * 213static Eina_Future *
231_efl_container_model_efl_model_property_set(Eo *obj, 214_efl_container_model_efl_model_property_set(Eo *obj,
232 Efl_Container_Model_Data *pd EINA_UNUSED, 215 Efl_Container_Model_Data *pd,
233 const char *property EINA_UNUSED, 216 const char *property,
234 Eina_Value *value EINA_UNUSED) 217 Eina_Value *value)
235{ 218{
236 return efl_loop_future_rejected(obj, 219 if (pd->parent)
237 EFL_MODEL_ERROR_NOT_FOUND); 220 {
221 Efl_Container_Property_Data *cpd;
222 Eina_Stringshare *name;
223 unsigned int index;
224 Eina_Value r = EINA_VALUE_EMPTY;
225
226 name = eina_stringshare_add(property);
227 cpd = eina_hash_find(pd->parent->properties, name);
228 eina_stringshare_del(name);
229
230 // Check if this is a property of this object
231 if (!cpd) goto not_mine;
232 // Check if we can get the expected type for this property
233 if (!cpd->values)
234 return efl_loop_future_rejected(obj, EFL_MODEL_ERROR_INCORRECT_VALUE);
235
236 index = efl_composite_model_index_get(obj);
237
238 // Try converting the type before touching any data inside the Model
239 if (eina_value_type_get(value) != cpd->type)
240 {
241 eina_value_setup(&r, cpd->type);
242
243 if (!eina_value_convert(value, &r))
244 return efl_loop_future_rejected(obj, EFL_MODEL_ERROR_INCORRECT_VALUE);
245 }
246 else
247 {
248 eina_value_copy(&r, value);
249 }
250
251 // Expand the array to have enough space for this value if it wasn't already the case
252 while (index >= eina_array_count(cpd->values))
253 eina_array_push(cpd->values, eina_value_error_new(EFL_MODEL_ERROR_INCORRECT_VALUE));
254
255 // Clean the previous value and introduce the new one
256 eina_value_free(eina_array_data_get(cpd->values, index));
257 // Same type as the expected type, we can just replace the value
258 eina_array_data_set(cpd->values, index, eina_value_dup(&r));
259
260 eina_value_free(value);
261 return efl_loop_future_resolved(obj, r);
262 }
263
264 not_mine:
265 return efl_model_property_set(efl_super(obj, EFL_CONTAINER_MODEL_CLASS), property, value);
238} 266}
239 267
240static Eina_Value * 268static Eina_Value *
241_efl_container_model_efl_model_property_get(const Eo *obj EINA_UNUSED, 269_efl_container_model_efl_model_property_get(const Eo *obj,
242 Efl_Container_Model_Data *pd EINA_UNUSED, 270 Efl_Container_Model_Data *pd,
243 const char *property EINA_UNUSED) 271 const char *property)
244{ 272{
245 return eina_value_error_new(EFL_MODEL_ERROR_NOT_FOUND); 273 if (pd->parent)
246} 274 {
275 Efl_Container_Property_Data *cpd;
276 Eina_Stringshare *name;
277 Eina_Value *copy;
278 unsigned int index;
247 279
248static Eina_Future * 280 name = eina_stringshare_add(property);
249_efl_container_model_efl_model_children_slice_get(Eo *obj, 281 cpd = eina_hash_find(pd->parent->properties, name);
250 Efl_Container_Model_Data *sd, 282 eina_stringshare_del(name);
251 unsigned int start, 283
252 unsigned int count) 284 // Check if this is a property of this object
253{ 285 if (!cpd) goto not_mine;
254 Eina_Value v; 286 // Check if we can get the expected type for this property
287 if (!cpd->values) return eina_value_error_new(EFL_MODEL_ERROR_INCORRECT_VALUE);
288
289 index = efl_composite_model_index_get(obj);
290
291 if (index >= eina_array_count(cpd->values))
292 return eina_value_error_new(EFL_MODEL_ERROR_INCORRECT_VALUE);
255 293
256 v = efl_model_list_value_get(sd->childrens, start, count); 294 copy = eina_value_dup(eina_array_data_get(cpd->values, index));
257 return efl_loop_future_resolved(obj, v); 295
296 return copy;
297 }
298
299 not_mine:
300 return efl_model_property_get(efl_super(obj, EFL_CONTAINER_MODEL_CLASS), property);
258} 301}
259 302
260static unsigned int 303static unsigned int
261_efl_container_model_efl_model_children_count_get(const Eo *obj EINA_UNUSED, Efl_Container_Model_Data *sd) 304_efl_container_model_efl_model_children_count_get(const Eo *obj EINA_UNUSED, Efl_Container_Model_Data *sd)
262{ 305{
263 return eina_list_count(sd->childrens); 306 unsigned int pcount;
264}
265 307
266static Eo * 308 pcount = efl_model_children_count_get(efl_super(obj, EFL_CONTAINER_MODEL_CLASS));
267_efl_container_model_efl_model_child_add(Eo *obj EINA_UNUSED, Efl_Container_Model_Data *sd EINA_UNUSED)
268{
269 EINA_LOG_WARN("child_add not supported by Efl.Model.Container");
270 eina_error_set(EFL_MODEL_ERROR_NOT_SUPPORTED);
271 309
272 return NULL; 310 return pcount > sd->children_count ? pcount : sd->children_count;
273}
274
275static void
276_efl_container_model_efl_model_child_del(Eo *obj EINA_UNUSED, Efl_Container_Model_Data *sd EINA_UNUSED, Eo *child EINA_UNUSED)
277{
278 EINA_LOG_WARN("child_del not supported by Efl.Model.Container");
279 eina_error_set(EFL_MODEL_ERROR_NOT_SUPPORTED);
280} 311}
281 312
282#include "efl_container_model.eo.c" 313#include "efl_container_model.eo.c"
diff --git a/src/lib/ecore/efl_container_model.eo b/src/lib/ecore/efl_container_model.eo
index 9ee441587f..0c49805816 100644
--- a/src/lib/ecore/efl_container_model.eo
+++ b/src/lib/ecore/efl_container_model.eo
@@ -1,12 +1,12 @@
1import eina_types; 1import eina_types;
2 2
3class @beta Efl.Container_Model extends Efl.Loop_Model 3class @beta Efl.Container_Model extends Efl.Composite_Model
4{ 4{
5 [[ 5 [[
6 Class used to create data models from Eina containers. 6 Class used to create data models from Eina containers.
7 7
8 Each container supplied represents a series of property values, each item 8 Each container supplied represents a series of property values, each item
9 being the property value for a child object (@Efl.Container_Model_Item). 9 being the property value for a child object.
10 10
11 The data in the given containers are copied and stored internally. 11 The data in the given containers are copied and stored internally.
12 12
@@ -21,14 +21,6 @@ class @beta Efl.Container_Model extends Efl.Loop_Model
21 } 21 }
22 return: ptr(const(Eina.Value_Type)); [[Property type]] 22 return: ptr(const(Eina.Value_Type)); [[Property type]]
23 } 23 }
24 child_property_values_get {
25 [[Gets the values for the given property.]]
26 params {
27 name: string; [[Property name]]
28 }
29 return: iterator<void_ptr> @owned @warn_unused;
30 [[The currently wrapped values]]
31 }
32 child_property_add { 24 child_property_add {
33 [[Adds the given property to child objects and supply the values. 25 [[Adds the given property to child objects and supply the values.
34 26
@@ -48,12 +40,10 @@ class @beta Efl.Container_Model extends Efl.Loop_Model
48 } 40 }
49 implements { 41 implements {
50 Efl.Object.constructor; 42 Efl.Object.constructor;
43 Efl.Object.finalize;
51 Efl.Object.destructor; 44 Efl.Object.destructor;
52 Efl.Model.properties { get; } 45 Efl.Model.properties { get; }
53 Efl.Model.property { set; get; } 46 Efl.Model.property { set; get; }
54 Efl.Model.child_add;
55 Efl.Model.child_del;
56 Efl.Model.children_slice_get;
57 Efl.Model.children_count { get; } 47 Efl.Model.children_count { get; }
58 } 48 }
59} 49}
diff --git a/src/lib/ecore/efl_container_model_item.c b/src/lib/ecore/efl_container_model_item.c
deleted file mode 100644
index 7457da991a..0000000000
--- a/src/lib/ecore/efl_container_model_item.c
+++ /dev/null
@@ -1,164 +0,0 @@
1#ifdef HAVE_CONFIG_H
2# include <config.h>
3#endif
4
5#include <Efl.h>
6#include <Ecore.h>
7
8#include "efl_container_model_private.h"
9
10#define MY_CLASS EFL_CONTAINER_MODEL_ITEM_CLASS
11
12static void
13_efl_container_model_item_define(Eo *obj EINA_UNUSED, Efl_Container_Model_Item_Data *sd, void *parent_data, unsigned int index)
14{
15 sd->parent_data = parent_data;
16 sd->index = index;
17}
18
19EOLIAN static void
20_efl_container_model_item_efl_object_invalidate(Eo *obj, Efl_Container_Model_Item_Data *sd)
21{
22 efl_invalidate(efl_super(obj, MY_CLASS));
23
24 sd->parent_data = NULL;
25 sd->index = 0;
26}
27
28static Eina_Iterator *
29_efl_container_model_item_efl_model_properties_get(const Eo *obj EINA_UNUSED, Efl_Container_Model_Item_Data *sd)
30{
31 // FIXME: Not to sure here, shouldn't we extend a child of the parent actually ?
32 return efl_model_properties_get(sd->parent_data->obj);
33}
34
35static Efl_Object *
36_efl_container_model_item_efl_object_finalize(Eo *obj, Efl_Container_Model_Item_Data *pd)
37{
38 if (!pd->parent_data)
39 return NULL;
40
41 return obj;
42}
43
44static Eina_Future *
45_efl_container_model_item_efl_model_property_set(Eo *obj,
46 Efl_Container_Model_Item_Data *sd,
47 const char *property, Eina_Value *value)
48{
49 Eina_Stringshare *name;
50 Child_Property_Data *cpd;
51 Eina_Value v = EINA_VALUE_EMPTY;
52 void *data, *new_data;
53
54
55 name = eina_stringshare_add(property);
56 cpd = eina_hash_find(sd->parent_data->properties, name);
57 eina_stringshare_del(name);
58
59 if (!cpd || !cpd->values ||
60 sd->index >= eina_array_count_get(cpd->values))
61 return efl_loop_future_rejected(obj,
62 EFL_MODEL_ERROR_NOT_FOUND);
63
64 eina_value_setup(&v,cpd->type);
65 if (!eina_value_convert(value, &v))
66 return efl_loop_future_rejected(obj,
67 EFL_MODEL_ERROR_INCORRECT_VALUE);
68
69 // FIXME: This is trying to optimize and avoid the use of Eina_Value,
70 // but this put restriction on the type that can be stored in this container.
71 data = calloc(1, cpd->type->value_size);
72 if (!data || !eina_value_pget(&v, data))
73 goto on_error;
74
75 new_data = _value_copy_alloc(data, cpd->type);
76
77 _value_free(eina_array_data_get(cpd->values, sd->index), cpd->type);
78
79 eina_array_data_set(cpd->values, sd->index, new_data);
80
81 free(data);
82
83 return efl_loop_future_resolved(obj, v);
84
85 on_error:
86 eina_value_flush(&v);
87 free(data);
88
89 return efl_loop_future_rejected(obj,
90 EFL_MODEL_ERROR_UNKNOWN);
91}
92
93static Eina_Value *
94_efl_container_model_item_efl_model_property_get(const Eo *obj EINA_UNUSED,
95 Efl_Container_Model_Item_Data *sd,
96 const char *property)
97{
98 Eina_Stringshare *name;
99 Child_Property_Data *cpd;
100 Eina_Value *value;
101 void *data;
102 Eina_Bool r = EINA_FALSE;
103
104 name = eina_stringshare_add(property);
105 cpd = eina_hash_find(sd->parent_data->properties, name);
106 eina_stringshare_del(name);
107
108 if (!cpd || !cpd->values ||
109 sd->index >= eina_array_count_get(cpd->values))
110 return eina_value_error_new(EFL_MODEL_ERROR_NOT_FOUND);
111
112 data = eina_array_data_get(cpd->values, sd->index);
113
114 value = eina_value_new(cpd->type);
115 if (cpd->type == EINA_VALUE_TYPE_STRINGSHARE ||
116 cpd->type == EINA_VALUE_TYPE_STRING)
117 r = eina_value_set(value, data);
118 else
119 r = eina_value_pset(value, data);
120
121 if (!r)
122 {
123 eina_value_free(value);
124 value = eina_value_error_new(EFL_MODEL_ERROR_UNKNOWN);
125 }
126 return value;
127}
128
129EOLIAN static Eina_Future *
130_efl_container_model_item_efl_model_children_slice_get(Eo *obj,
131 Efl_Container_Model_Item_Data *sd EINA_UNUSED,
132 unsigned int start EINA_UNUSED,
133 unsigned int count EINA_UNUSED)
134{
135 return efl_loop_future_resolved(obj, EINA_VALUE_EMPTY);
136}
137
138EOLIAN static unsigned int
139_efl_container_model_item_efl_model_children_count_get(const Eo *obj EINA_UNUSED,
140 Efl_Container_Model_Item_Data *sd EINA_UNUSED)
141{
142 return 0;
143}
144
145EOLIAN static Eo *
146_efl_container_model_item_efl_model_child_add(Eo *obj EINA_UNUSED,
147 Efl_Container_Model_Item_Data *sd EINA_UNUSED)
148{
149 EINA_LOG_WARN("child_add not supported by Efl.Model.Container.Item");
150 eina_error_set(EFL_MODEL_ERROR_NOT_SUPPORTED);
151
152 return NULL;
153}
154
155EOLIAN static void
156_efl_container_model_item_efl_model_child_del(Eo *obj EINA_UNUSED,
157 Efl_Container_Model_Item_Data *sd EINA_UNUSED,
158 Eo *child EINA_UNUSED)
159{
160 EINA_LOG_WARN("child_del not supported by Efl.Model.Container.Item");
161 eina_error_set(EFL_MODEL_ERROR_NOT_SUPPORTED);
162}
163
164#include "efl_container_model_item.eo.c"
diff --git a/src/lib/ecore/efl_container_model_item.eo b/src/lib/ecore/efl_container_model_item.eo
deleted file mode 100644
index 7fe818600e..0000000000
--- a/src/lib/ecore/efl_container_model_item.eo
+++ /dev/null
@@ -1,34 +0,0 @@
1class @beta Efl.Container_Model_Item extends Efl.Object implements Efl.Model
2{
3 [[
4 Used as a child of @Efl.Container_Model.
5
6 Provides the @Efl.Model API for elements of @Efl.Container_Model.
7 Should not be used in another context, so do not manually create objects
8 of this class.
9 ]]
10 methods {
11 define {
12 [[Defines @Efl.Container_Model_Item internal data.]]
13 params {
14 parent_data: void_ptr; [[Pointer to the private data of the
15 @Efl.Container_Model parent object.]]
16 index: uint; [[Index of this item within the @Efl.Container_Model
17 children.]]
18 }
19 }
20 }
21 implements {
22 Efl.Object.finalize;
23 Efl.Model.properties { get; }
24 Efl.Model.property { set; get; }
25 Efl.Model.child_add;
26 Efl.Model.child_del;
27 Efl.Model.children_slice_get;
28 Efl.Model.children_count { get; }
29 Efl.Object.invalidate;
30 }
31 constructors {
32 .define;
33 }
34}
diff --git a/src/lib/ecore/efl_container_model_private.h b/src/lib/ecore/efl_container_model_private.h
deleted file mode 100644
index 6a9e743221..0000000000
--- a/src/lib/ecore/efl_container_model_private.h
+++ /dev/null
@@ -1,33 +0,0 @@
1#ifndef EFL_CONTAINER_MODEL_PRIVATE_H__
2#define EFL_CONTAINER_MODEL_PRIVATE_H__
3
4typedef struct _Child_Property_Data Child_Property_Data;
5struct _Child_Property_Data
6{
7 const Eina_Value_Type *type;
8 Eina_Array *values;
9};
10
11typedef struct _Efl_Container_Model_Data Efl_Container_Model_Data;
12struct _Efl_Container_Model_Data
13{
14 Eo *obj;
15
16 Eina_Hash *properties;
17
18 Eina_List *childrens;
19};
20
21
22typedef struct _Efl_Container_Model_Item_Data Efl_Container_Model_Item_Data;
23struct _Efl_Container_Model_Item_Data
24{
25 Efl_Container_Model_Data *parent_data;
26 unsigned int index;
27};
28
29void *_value_copy_alloc(void *v, const Eina_Value_Type *type);
30
31void _value_free(void *v, const Eina_Value_Type *type);
32
33#endif
diff --git a/src/lib/ecore/efl_core_env.c b/src/lib/ecore/efl_core_env.c
index e0ee5a25e3..1a4de58c91 100644
--- a/src/lib/ecore/efl_core_env.c
+++ b/src/lib/ecore/efl_core_env.c
@@ -9,8 +9,6 @@
9 9
10#define MY_CLASS EFL_CORE_ENV_CLASS 10#define MY_CLASS EFL_CORE_ENV_CLASS
11 11
12extern char **environ;
13
14typedef struct { 12typedef struct {
15 Eina_Hash *env; 13 Eina_Hash *env;
16} Efl_Core_Env_Data; 14} Efl_Core_Env_Data;
diff --git a/src/lib/ecore/efl_core_proc_env.c b/src/lib/ecore/efl_core_proc_env.c
index 98f0731f07..10ad1f9845 100644
--- a/src/lib/ecore/efl_core_proc_env.c
+++ b/src/lib/ecore/efl_core_proc_env.c
@@ -10,6 +10,8 @@
10 10
11#define MY_CLASS EFL_CORE_PROC_ENV_CLASS 11#define MY_CLASS EFL_CORE_PROC_ENV_CLASS
12 12
13extern char **environ;
14
13static Efl_Core_Env *env = NULL; 15static Efl_Core_Env *env = NULL;
14 16
15typedef struct { 17typedef struct {
diff --git a/src/lib/ecore/efl_exe.c b/src/lib/ecore/efl_exe.c
index 3a0bd0f587..721c597800 100644
--- a/src/lib/ecore/efl_exe.c
+++ b/src/lib/ecore/efl_exe.c
@@ -576,11 +576,11 @@ _efl_exe_efl_task_run(Eo *obj, Efl_Exe_Data *pd)
576 Eina_Iterator *itr; 576 Eina_Iterator *itr;
577 const char *key; 577 const char *key;
578 578
579 #ifdef HAVE_CLEARENV 579# ifdef HAVE_CLEARENV
580 clearenv(); 580 clearenv();
581 #else 581# else
582 environ = NULL; 582 environ = NULL;
583 #endif 583# endif
584 itr = efl_core_env_content_get(pd->env); 584 itr = efl_core_env_content_get(pd->env);
585 585
586 EINA_ITERATOR_FOREACH(itr, key) 586 EINA_ITERATOR_FOREACH(itr, key)
diff --git a/src/lib/ecore/efl_io_file.c b/src/lib/ecore/efl_io_file.c
index c8716d2935..041db19e95 100644
--- a/src/lib/ecore/efl_io_file.c
+++ b/src/lib/ecore/efl_io_file.c
@@ -29,7 +29,6 @@
29 29
30typedef struct _Efl_Io_File_Data 30typedef struct _Efl_Io_File_Data
31{ 31{
32 const char *path;
33 uint32_t flags; 32 uint32_t flags;
34 uint32_t mode; 33 uint32_t mode;
35 uint64_t last_position; 34 uint64_t last_position;
@@ -123,7 +122,7 @@ _efl_io_file_efl_object_constructor(Eo *o, Efl_Io_File_Data *pd)
123} 122}
124 123
125EOLIAN static void 124EOLIAN static void
126_efl_io_file_efl_object_destructor(Eo *o, Efl_Io_File_Data *pd) 125_efl_io_file_efl_object_destructor(Eo *o, Efl_Io_File_Data *pd EINA_UNUSED)
127{ 126{
128 if (efl_io_closer_close_on_invalidate_get(o) && 127 if (efl_io_closer_close_on_invalidate_get(o) &&
129 (!efl_io_closer_closed_get(o))) 128 (!efl_io_closer_closed_get(o)))
@@ -134,8 +133,6 @@ _efl_io_file_efl_object_destructor(Eo *o, Efl_Io_File_Data *pd)
134 } 133 }
135 134
136 efl_destructor(efl_super(o, MY_CLASS)); 135 efl_destructor(efl_super(o, MY_CLASS));
137
138 eina_stringshare_del(pd->path);
139} 136}
140 137
141EOLIAN static Efl_Object * 138EOLIAN static Efl_Object *
@@ -144,17 +141,18 @@ _efl_io_file_efl_object_finalize(Eo *o, Efl_Io_File_Data *pd)
144 int fd = efl_loop_fd_file_get(o); 141 int fd = efl_loop_fd_file_get(o);
145 if (fd < 0) 142 if (fd < 0)
146 { 143 {
147 EINA_SAFETY_ON_NULL_RETURN_VAL(pd->path, NULL); 144 const char *path = efl_file_get(o);
145 EINA_SAFETY_ON_NULL_RETURN_VAL(path, NULL);
148 146
149 if (pd->mode) 147 if (pd->mode)
150 fd = open(pd->path, pd->flags, pd->mode); 148 fd = open(path, pd->flags, pd->mode);
151 else 149 else
152 fd = open(pd->path, pd->flags); 150 fd = open(path, pd->flags);
153 151
154 if (fd < 0) 152 if (fd < 0)
155 { 153 {
156 eina_error_set(errno); 154 eina_error_set(errno);
157 ERR("Could not open file '%s': %s", pd->path, strerror(errno)); 155 ERR("Could not open file '%s': %s", path, strerror(errno));
158 return NULL; 156 return NULL;
159 } 157 }
160 158
@@ -164,22 +162,6 @@ _efl_io_file_efl_object_finalize(Eo *o, Efl_Io_File_Data *pd)
164 return efl_finalize(efl_super(o, MY_CLASS)); 162 return efl_finalize(efl_super(o, MY_CLASS));
165} 163}
166 164
167EOLIAN static Eina_Bool
168_efl_io_file_efl_file_file_set(Eo *o, Efl_Io_File_Data *pd, const char *file, const char *key EINA_UNUSED)
169{
170 EINA_SAFETY_ON_TRUE_RETURN_VAL(efl_finalized_get(o), EINA_FALSE);
171
172 eina_stringshare_replace(&pd->path, file);
173 return EINA_TRUE;
174}
175
176EOLIAN static void
177_efl_io_file_efl_file_file_get(const Eo *o EINA_UNUSED, Efl_Io_File_Data *pd, const char **file, const char **key)
178{
179 if (file) *file = pd->path;
180 if (key) *key = NULL;
181}
182
183EOLIAN static Eina_Error 165EOLIAN static Eina_Error
184_efl_io_file_efl_io_reader_read(Eo *o, Efl_Io_File_Data *pd, Eina_Rw_Slice *rw_slice) 166_efl_io_file_efl_io_reader_read(Eo *o, Efl_Io_File_Data *pd, Eina_Rw_Slice *rw_slice)
185{ 167{
diff --git a/src/lib/ecore/efl_io_file.eo b/src/lib/ecore/efl_io_file.eo
index c663b723c5..269d46ec37 100644
--- a/src/lib/ecore/efl_io_file.eo
+++ b/src/lib/ecore/efl_io_file.eo
@@ -51,7 +51,6 @@ class @beta Efl.Io.File extends Efl.Loop_Fd implements Efl.File, Efl.Io.Reader_F
51 Efl.Object.destructor; 51 Efl.Object.destructor;
52 Efl.Object.finalize; 52 Efl.Object.finalize;
53 Efl.Loop_Fd.fd_file { set; } 53 Efl.Loop_Fd.fd_file { set; }
54 Efl.File.file { get; set; }
55 Efl.Io.Reader.read; 54 Efl.Io.Reader.read;
56 Efl.Io.Writer.write; 55 Efl.Io.Writer.write;
57 Efl.Io.Closer.close; 56 Efl.Io.Closer.close;
diff --git a/src/lib/ecore/efl_loop.eo b/src/lib/ecore/efl_loop.eo
index e8cadb5fde..95f94da771 100644
--- a/src/lib/ecore/efl_loop.eo
+++ b/src/lib/ecore/efl_loop.eo
@@ -4,7 +4,7 @@ struct Efl.Loop_Arguments {
4 initialization: bool; [[Set to $true when the program should initialize its internal state. This happen once per process instance.]] 4 initialization: bool; [[Set to $true when the program should initialize its internal state. This happen once per process instance.]]
5} 5}
6 6
7abstract @beta Efl.Loop extends Efl.Task 7abstract Efl.Loop extends Efl.Task
8{ 8{
9 [[The Efl Main Loop 9 [[The Efl Main Loop
10 10
diff --git a/src/lib/ecore/efl_loop_consumer.eo b/src/lib/ecore/efl_loop_consumer.eo
index 2f9122075c..f03a4d6d86 100644
--- a/src/lib/ecore/efl_loop_consumer.eo
+++ b/src/lib/ecore/efl_loop_consumer.eo
@@ -1,4 +1,4 @@
1abstract @beta Efl.Loop_Consumer extends Efl.Object 1abstract Efl.Loop_Consumer extends Efl.Object
2{ 2{
3 [[An @Efl.Loop_Consumer is a class which requires one of the parents to provide 3 [[An @Efl.Loop_Consumer is a class which requires one of the parents to provide
4 an @Efl.Loop interface when performing @Efl.Object.provider_find. It will enforce this by 4 an @Efl.Loop interface when performing @Efl.Object.provider_find. It will enforce this by
diff --git a/src/lib/ecore/efl_loop_timer.eo b/src/lib/ecore/efl_loop_timer.eo
index f788d067ee..97812a976d 100644
--- a/src/lib/ecore/efl_loop_timer.eo
+++ b/src/lib/ecore/efl_loop_timer.eo
@@ -9,7 +9,6 @@ class @beta Efl.Loop_Timer extends Efl.Loop_Consumer
9 9
10 The @Efl.Object.event_freeze and @Efl.Object.event_thaw calls are used to pause and unpause the timer. 10 The @Efl.Object.event_freeze and @Efl.Object.event_thaw calls are used to pause and unpause the timer.
11 ]] 11 ]]
12 legacy_prefix: ecore_timer;
13 methods { 12 methods {
14 @property interval { 13 @property interval {
15 [[Interval the timer ticks on.]] 14 [[Interval the timer ticks on.]]
diff --git a/src/lib/ecore/efl_loop_timer_eo.legacy.c b/src/lib/ecore/efl_loop_timer_eo.legacy.c
new file mode 100644
index 0000000000..a479bdb6f5
--- /dev/null
+++ b/src/lib/ecore/efl_loop_timer_eo.legacy.c
@@ -0,0 +1,36 @@
1
2EAPI void
3ecore_timer_interval_set(Efl_Loop_Timer *obj, double in)
4{
5 efl_loop_timer_interval_set(obj, in);
6}
7
8EAPI double
9ecore_timer_interval_get(const Efl_Loop_Timer *obj)
10{
11 return efl_loop_timer_interval_get(obj);
12}
13
14EAPI double
15ecore_timer_pending_get(const Efl_Loop_Timer *obj)
16{
17 return efl_loop_timer_pending_get(obj);
18}
19
20EAPI void
21ecore_timer_reset(Efl_Loop_Timer *obj)
22{
23 efl_loop_timer_reset(obj);
24}
25
26EAPI void
27ecore_timer_loop_reset(Efl_Loop_Timer *obj)
28{
29 efl_loop_timer_loop_reset(obj);
30}
31
32EAPI void
33ecore_timer_delay(Efl_Loop_Timer *obj, double add)
34{
35 efl_loop_timer_delay(obj, add);
36}
diff --git a/src/lib/ecore/efl_loop_timer_eo.legacy.h b/src/lib/ecore/efl_loop_timer_eo.legacy.h
new file mode 100644
index 0000000000..43c372a5d7
--- /dev/null
+++ b/src/lib/ecore/efl_loop_timer_eo.legacy.h
@@ -0,0 +1,86 @@
1#ifndef _EFL_LOOP_TIMER_EO_LEGACY_H_
2#define _EFL_LOOP_TIMER_EO_LEGACY_H_
3
4#ifndef _EFL_LOOP_TIMER_EO_CLASS_TYPE
5#define _EFL_LOOP_TIMER_EO_CLASS_TYPE
6
7typedef Eo Efl_Loop_Timer;
8
9#endif
10
11#ifndef _EFL_LOOP_TIMER_EO_TYPES
12#define _EFL_LOOP_TIMER_EO_TYPES
13
14
15#endif
16
17/**
18 * @brief Interval the timer ticks on.
19 *
20 * If set during a timer call this will affect the next interval.
21 *
22 * @param[in] obj The object.
23 * @param[in] in The new interval in seconds
24 *
25 * @ingroup Ecore_Timer_Group
26 */
27EAPI void ecore_timer_interval_set(Efl_Loop_Timer *obj, double in);
28
29/**
30 * @brief Interval the timer ticks on.
31 *
32 * @param[in] obj The object.
33 *
34 * @return The new interval in seconds
35 *
36 * @ingroup Ecore_Timer_Group
37 */
38EAPI double ecore_timer_interval_get(const Efl_Loop_Timer *obj);
39
40/**
41 * @brief Pending time regarding a timer.
42 *
43 * @param[in] obj The object.
44 *
45 * @return Pending time
46 *
47 * @ingroup Ecore_Timer_Group
48 */
49EAPI double ecore_timer_pending_get(const Efl_Loop_Timer *obj);
50
51/**
52 * @brief Resets a timer to its full interval. This effectively makes the timer
53 * start ticking off from zero now.
54 *
55 * This is equal to delaying the timer by the already passed time, since the
56 * timer started ticking
57 *
58 * @param[in] obj The object.
59 *
60 * @since 1.2
61 *
62 * @ingroup Ecore_Timer_Group
63 */
64EAPI void ecore_timer_reset(Efl_Loop_Timer *obj);
65
66/** This effectively resets a timer but based on the time when this iteration
67 * of the main loop started.
68 *
69 * @since 1.18
70 *
71 * @ingroup Ecore_Timer_Group
72 */
73EAPI void ecore_timer_loop_reset(Efl_Loop_Timer *obj);
74
75/**
76 * @brief Adds a delay to the next occurrence of a timer. This doesn't affect
77 * the timer interval.
78 *
79 * @param[in] obj The object.
80 * @param[in] add The amount of time by which to delay the timer in seconds
81 *
82 * @ingroup Ecore_Timer_Group
83 */
84EAPI void ecore_timer_delay(Efl_Loop_Timer *obj, double add);
85
86#endif
diff --git a/src/lib/ecore/efl_task.eo b/src/lib/ecore/efl_task.eo
index 6745411218..d30b0d005f 100644
--- a/src/lib/ecore/efl_task.eo
+++ b/src/lib/ecore/efl_task.eo
@@ -15,7 +15,7 @@ enum Efl.Task_Flags {
15 no_exit_code_error = 4, 15 no_exit_code_error = 4,
16} 16}
17 17
18abstract @beta Efl.Task extends Efl.Loop_Consumer 18abstract Efl.Task extends Efl.Loop_Consumer
19{ 19{
20 [[ ]] 20 [[ ]]
21 methods { 21 methods {
diff --git a/src/lib/ecore/meson.build b/src/lib/ecore/meson.build
index 2e44804481..a40c45a5e3 100644
--- a/src/lib/ecore/meson.build
+++ b/src/lib/ecore/meson.build
@@ -2,10 +2,8 @@ ecore_deps = [intl]
2ecore_pub_deps = [eina, eo, efl] 2ecore_pub_deps = [eina, eo, efl]
3 3
4pub_legacy_eo_files = [ 4pub_legacy_eo_files = [
5 'ecore_exe.eo',
6 'ecore_event_message.eo', 5 'ecore_event_message.eo',
7 'ecore_event_message_handler.eo', 6 'ecore_event_message_handler.eo',
8 'efl_loop_timer.eo'
9] 7]
10 8
11pub_eo_file_target = [] 9pub_eo_file_target = []
@@ -21,16 +19,6 @@ foreach eo_file : pub_legacy_eo_files
21 '-o', 'c:' + join_paths(meson.current_build_dir(), eo_file + '.c'), 19 '-o', 'c:' + join_paths(meson.current_build_dir(), eo_file + '.c'),
22 '-o', 'd:' + join_paths(meson.current_build_dir(), eo_file + '.d'), 20 '-o', 'd:' + join_paths(meson.current_build_dir(), eo_file + '.d'),
23 '-gchd', '@INPUT@']) 21 '-gchd', '@INPUT@'])
24 pub_eo_file_target += custom_target('eolian_gen_legacy_' + eo_file,
25 input : eo_file,
26 output : [eo_file + '.legacy.h'],
27 depfile : eo_file + '.legacy.d',
28 install : true,
29 install_dir : dir_package_include,
30 command : eolian_gen + [ '-I', meson.current_source_dir(), eolian_include_directories,
31 '-o', 'l:' + join_paths(meson.current_build_dir(), eo_file + '.legacy.h'),
32 '-o', 'd:' + join_paths(meson.current_build_dir(), eo_file + '.legacy.d'),
33 '-gld', '@INPUT@'])
34endforeach 22endforeach
35 23
36pub_eo_files = [ 24pub_eo_files = [
@@ -70,7 +58,6 @@ pub_eo_files = [
70 'efl_loop_model.eo', 58 'efl_loop_model.eo',
71 'efl_generic_model.eo', 59 'efl_generic_model.eo',
72 'efl_container_model.eo', 60 'efl_container_model.eo',
73 'efl_container_model_item.eo',
74 'efl_boolean_model.eo', 61 'efl_boolean_model.eo',
75 'efl_select_model.eo', 62 'efl_select_model.eo',
76 'efl_composite_model.eo', 63 'efl_composite_model.eo',
@@ -78,6 +65,7 @@ pub_eo_files = [
78 'efl_core_env.eo', 65 'efl_core_env.eo',
79 'efl_core_proc_env.eo', 66 'efl_core_proc_env.eo',
80 'efl_core_command_line.eo', 67 'efl_core_command_line.eo',
68 'efl_loop_timer.eo',
81] 69]
82 70
83foreach eo_file : pub_eo_files 71foreach eo_file : pub_eo_files
@@ -94,9 +82,6 @@ foreach eo_file : pub_eo_files
94 '-gchd', '@INPUT@']) 82 '-gchd', '@INPUT@'])
95endforeach 83endforeach
96 84
97# special handling, because this is already eo API and legacy API
98pub_eo_files += ['efl_loop_timer.eo']
99
100pub_eo_types_files = [] 85pub_eo_types_files = []
101 86
102eolian_include_directories += ['-I', meson.current_source_dir()] 87eolian_include_directories += ['-I', meson.current_source_dir()]
@@ -108,7 +93,10 @@ ecore_header_src = [
108 'Ecore_Eo.h', 93 'Ecore_Eo.h',
109 'Efl_Core.h', 94 'Efl_Core.h',
110 'efl_general.h', 95 'efl_general.h',
111 'Ecore_Getopt.h' 96 'Ecore_Getopt.h',
97 'ecore_exe_eo.h',
98 'ecore_exe_eo.legacy.h',
99 'efl_loop_timer_eo.legacy.h',
112] 100]
113 101
114ecore_src = [ 102ecore_src = [
@@ -150,8 +138,6 @@ ecore_src = [
150 'efl_loop_model.c', 138 'efl_loop_model.c',
151 'efl_generic_model.c', 139 'efl_generic_model.c',
152 'efl_container_model.c', 140 'efl_container_model.c',
153 'efl_container_model_item.c',
154 'efl_container_model_private.h',
155 'efl_composite_model.c', 141 'efl_composite_model.c',
156 'efl_boolean_model.c', 142 'efl_boolean_model.c',
157 'efl_select_model.c', 143 'efl_select_model.c',
diff --git a/src/lib/ecore_con/Ecore_Con_Eet_Eo.h b/src/lib/ecore_con/Ecore_Con_Eet_Eo.h
index 52b1a4b9ed..ae751987d3 100644
--- a/src/lib/ecore_con/Ecore_Con_Eet_Eo.h
+++ b/src/lib/ecore_con/Ecore_Con_Eet_Eo.h
@@ -1,3 +1,3 @@
1#include "ecore_con_eet_base.eo.h" 1#include "ecore_con_eet_base_eo.h"
2#include "ecore_con_eet_server_obj.eo.h" 2#include "ecore_con_eet_server_obj_eo.h"
3#include "ecore_con_eet_client_obj.eo.h" 3#include "ecore_con_eet_client_obj_eo.h"
diff --git a/src/lib/ecore_con/Ecore_Con_Eet_Legacy.h b/src/lib/ecore_con/Ecore_Con_Eet_Legacy.h
index 34047283c6..6bd6bf58d6 100644
--- a/src/lib/ecore_con/Ecore_Con_Eet_Legacy.h
+++ b/src/lib/ecore_con/Ecore_Con_Eet_Legacy.h
@@ -1,3 +1,3 @@
1#include "ecore_con_eet_base.eo.legacy.h" 1#include "ecore_con_eet_base_eo.legacy.h"
2#include "ecore_con_eet_client_obj.eo.legacy.h" 2#include "ecore_con_eet_client_obj_eo.legacy.h"
3#include "ecore_con_eet_server_obj.eo.legacy.h" 3#include "ecore_con_eet_server_obj_eo.legacy.h"
diff --git a/src/lib/ecore_con/ecore_con_eet.c b/src/lib/ecore_con/ecore_con_eet.c
index fd7c547caa..bd7aed5ec5 100644
--- a/src/lib/ecore_con/ecore_con_eet.c
+++ b/src/lib/ecore_con/ecore_con_eet.c
@@ -955,6 +955,6 @@ ecore_con_eet_raw_send(Ecore_Con_Reply *reply, const char *protocol_name, const
955 eina_binbuf_free(buf); 955 eina_binbuf_free(buf);
956} 956}
957 957
958#include "ecore_con_eet_base.eo.c" 958#include "ecore_con_eet_base_eo.c"
959#include "ecore_con_eet_server_obj.eo.c" 959#include "ecore_con_eet_server_obj_eo.c"
960#include "ecore_con_eet_client_obj.eo.c" 960#include "ecore_con_eet_client_obj_eo.c"
diff --git a/src/lib/ecore_con/ecore_con_eet_base.eo b/src/lib/ecore_con/ecore_con_eet_base.eo
deleted file mode 100644
index 26717efa04..0000000000
--- a/src/lib/ecore_con/ecore_con_eet_base.eo
+++ /dev/null
@@ -1,95 +0,0 @@
1struct @extern Ecore_Con_Server; [[Ecore connection server structure]]
2type @extern Ecore_Con_Eet_Data_Cb: __undefined_type; [[Ecore connection eet data callback type]] /* FIXME: function pointers not supported. */
3type @extern Ecore_Con_Eet_Raw_Data_Cb: __undefined_type; [[Ecore connection eet raw data callback type]]/* FIXME: function pointers not supported. */
4
5struct @extern Eet.Data.Descriptor; [[Eet data descriptor data structure]]
6struct Ecore.Con.Reply; [[Ecore connection reply data structure]]
7
8class Ecore.Con.Eet.Base extends Efl.Object {
9 [[Ecore Connection Eet Base class.
10
11 This class provides Eet data serialization features to Ecore Connection objects.]]
12
13 methods {
14 @property server {
15 [[The server object to which we send and receive.]]
16 set {
17 }
18 get {
19 }
20 values {
21 data: ptr(Ecore_Con_Server); [[Server object]]
22 }
23 }
24 @property data_callback {
25 [[A callback function which should be called when data is
26 received by ecore_con_eet_object.]]
27 set {
28 }
29 values {
30 name: string; [[The name of the eet stream.]]
31 func: Ecore_Con_Eet_Data_Cb; [[The callback function.]]
32 data: const(void_ptr); [[The data (if any) that should be
33 passed to callback function.]]
34 }
35 }
36 @property raw_data_callback {
37 [[A callback function which should be calledn when raw data
38 is received by ecore_con_eet_object.]]
39 set {
40 }
41 values {
42 name: string; [[The name of the eet stream.]]
43 func: Ecore_Con_Eet_Raw_Data_Cb; [[The callback function.]]
44 data: const(void_ptr); [[The data (if any) that should be
45 passed to callback function.]]
46 }
47 }
48 data_callback_del {
49 [[Function to delete the @.data_callback.]]
50 params {
51 name: string; [[The name of the eet stream.]]
52 }
53 }
54 raw_data_callback_del {
55 [[Function to delete the @.raw_data_callback.]]
56 params {
57 name: string; [[The name of the eet stream.]]
58 }
59 }
60 register {
61 [[Function to register a \@ref Eet.Data.Descriptor to the
62 ecore_con_eet object.]]
63 legacy: ecore_con_eet;
64 params {
65 name: string; [[The name of the eet stream.]]
66 edd: ptr(Eet.Data.Descriptor); [[The Eet.Data.Descriptor that
67 is to be registered.]]
68 }
69 }
70 send {
71 [[Function to send data.]]
72 params {
73 reply: ptr(Ecore.Con.Reply); [[Contains the ecore_con_eet object
74 to which the data has to be sent.]]
75 name: string; [[The name of the eet stream.]]
76 value: void_ptr; [[Actual data]]
77 }
78 }
79 raw_send {
80 [[Function to send raw data.]]
81 params {
82 reply: ptr(Ecore.Con.Reply); [[Contains the ecore_con_eet object
83 to which the data has to be sent.]]
84 protocol_name: string; [[The name of the eet stream.]]
85 section: string; [[Name of section in the eet descriptor.]]
86 section_data: ptr(Eina.Binbuf);
87 }
88 }
89 }
90 implements {
91 Efl.Object.constructor;
92 Efl.Object.destructor;
93 Efl.Object.finalize;
94 }
95}
diff --git a/src/lib/ecore_con/ecore_con_eet_base_eo.c b/src/lib/ecore_con/ecore_con_eet_base_eo.c
new file mode 100644
index 0000000000..7e1e6913c1
--- /dev/null
+++ b/src/lib/ecore_con/ecore_con_eet_base_eo.c
@@ -0,0 +1,90 @@
1
2void _ecore_con_eet_base_server_set(Eo *obj, Ecore_Con_Eet_Base_Data *pd, Ecore_Con_Server *data);
3
4EOAPI EFL_VOID_FUNC_BODYV(ecore_con_eet_base_server_set, EFL_FUNC_CALL(data), Ecore_Con_Server *data);
<